.drive-workspace { padding-top:10px; max-width:1440px!important; }
.drive-workspace .drive-toolbar { display:grid; grid-template-columns:minmax(240px,1fr) auto; align-items:center; gap:8px 18px; margin-bottom:8px; }
.drive-eyebrow { display:block; margin-bottom:4px; font-size:.65rem; letter-spacing:.15em; font-weight:750; color:var(--green); }
.drive-workspace .drive-title { display:inline; font-size:1.65rem; letter-spacing:-.04em; margin:0 10px 0 0; }
.drive-heading p { display:inline; font-size:.82rem; color:var(--ink-soft); margin:0; }
.drive-sections { display:flex; gap:3px; padding:3px; background:var(--green-bg); border-radius:11px; }
.drive-sections a { padding:7px 15px; border-radius:8px; font-weight:650; font-size:.8rem; text-decoration:none; color:var(--ink-soft); }
.drive-sections a[aria-current=page] { background:var(--white); color:var(--green); box-shadow:var(--shadow); }
.drive-workspace .drive-toolbar-actions { grid-column:1/-1; display:flex; flex-wrap:wrap; gap:6px; border-top:1px solid var(--border-soft); padding-top:8px; }
.drive-workspace #upload-form { margin-left:auto; }
.drive-workspace .drive-toolbar-actions .btn { min-height:34px; padding:7px 11px; border-radius:10px; }
.drive-context-row { display:grid; grid-template-columns:minmax(180px,1fr) minmax(320px,1.2fr); gap:6px 18px; align-items:center; padding:7px 0 8px; }
.drive-workspace .drive-breadcrumbs { grid-column:1; grid-row:1; font-size:.76rem!important; margin:0!important; }
.drive-utility-row { grid-column:2; grid-row:1; display:flex; justify-content:flex-end; align-items:center; gap:12px; margin:0; font-size:.74rem; color:var(--ink-soft); }
.drive-utility-row nav { display:flex; flex-wrap:wrap; gap:16px; flex-shrink:0; }
.drive-utility-row a { color:var(--ink-soft); text-decoration:none; }
.drive-utility-row a:hover { text-decoration:underline; }
.drive-help { max-width:360px; }
.drive-help summary { cursor:pointer; }
.drive-help p { margin:8px 0; line-height:1.6; }
.drive-drop-hint { grid-column:1; grid-row:2; font-size:.72rem; color:var(--ink-soft); margin:0; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.drive-workspace .drive-quota-bar { grid-column:2; grid-row:2; width:100%; max-width:380px; margin:0 0 0 auto; }
.drive-workspace .drive-quota-bar>div:last-child { font-size:.67rem!important; }
.drive-workspace .drive-empty { text-align:center; padding:46px 20px; border:1px dashed var(--border); background:var(--white); box-shadow:none; border-radius:20px; }
.drive-empty h2 { font-size:1.25rem; letter-spacing:-.02em; margin:12px 0 8px; }
.drive-empty p { color:var(--ink-soft); font-size:.88rem; }
.drive-empty .drive-empty-hint { margin-top:5px; font-size:.8rem; }
.drive-empty .btn { margin-top:20px; }
.drive-workspace .drive-selection-toolbar { min-height:38px; padding:5px 10px; gap:8px!important; margin:4px 0 8px!important; background:var(--white); border:1px solid var(--border-soft); border-radius:10px; font-size:.75rem; transition:background .2s,border-color .2s; }
.drive-workspace .drive-selection-toolbar[data-active="false"] button { display:none; }
.drive-workspace .drive-selection-toolbar[data-active="true"] { background:var(--green-bg); border-color:color-mix(in srgb,var(--green) 25%,var(--border-soft)); }
.drive-workspace .drive-selection-toolbar .btn { min-height:30px; padding:5px 10px; }
.drive-workspace .drive-grid { grid-template-columns:repeat(auto-fill,minmax(155px,1fr))!important; gap:8px!important; }
.drive-workspace .drive-card { min-height:126px; padding:10px 10px 7px!important; border-radius:var(--radius)!important; }
.drive-workspace .drive-select-label { margin-bottom:2px!important; font-size:.7rem; }
.drive-workspace .drive-preview-trigger { padding:2px 0!important; }
.drive-workspace .drive-card:not(.drive-photo-card) .drive-preview-trigger>div:first-child { width:42px!important; height:42px!important; border-radius:var(--radius)!important; }
.drive-workspace a:focus-visible,.drive-workspace button:focus-visible,.drive-workspace summary:focus-visible { outline:2px solid var(--green); outline-offset:3px; }
@media(max-width:700px) { .drive-workspace { padding-top:6px; } .drive-workspace .drive-toolbar { grid-template-columns:1fr; gap:8px; } .drive-heading p { display:block; margin-top:3px; } .drive-sections { justify-self:start; } .drive-workspace #upload-form { margin-left:0; } .drive-context-row { grid-template-columns:1fr; } .drive-workspace .drive-breadcrumbs,.drive-utility-row,.drive-drop-hint,.drive-workspace .drive-quota-bar { grid-column:1; grid-row:auto; } .drive-utility-row { justify-content:flex-start; flex-wrap:wrap; } .drive-workspace .drive-quota-bar { max-width:none; margin-left:0; } .drive-workspace .drive-title { font-size:1.45rem; } .drive-workspace .drive-grid { grid-template-columns:repeat(auto-fill,minmax(135px,1fr))!important; } }

/* Follow the same catalogue tokens as the site; --green-dark is a navigation
   surface, not foreground text, and must not be used as a dark-theme label. */
.drive-workspace{padding:18px 22px 30px;border:1px solid var(--border-soft);border-radius:var(--radius-lg);background:var(--white);color:var(--ink);box-shadow:none}
.drive-workspace .drive-toolbar-actions .btn{min-height:38px;padding:8px 13px;border-radius:var(--radius);font-weight:650}
.drive-workspace .drive-toolbar-actions .btn-ghost{border:1px solid var(--border);background:var(--white);color:var(--ink)}
.drive-workspace .drive-toolbar-actions .btn-ghost:hover{border-color:var(--green);background:var(--white)}
.drive-workspace .drive-toolbar-actions .btn-primary,.drive-empty-add{border:1px solid var(--appearance-accent,var(--green));box-shadow:none}
.drive-workspace .drive-empty{min-height:240px;display:grid;place-items:center;padding:46px 20px;border:1px dashed var(--border);background:var(--white);box-shadow:none;border-radius:var(--radius-lg)}
.drive-empty .btn{margin:0;min-height:48px;padding:11px 22px;font-weight:650}
.drive-workspace #oo-menu button,.drive-workspace .drive-actions button{color:var(--ink)}
.drive-workspace .drive-photo-card .drive-actions button{color:#fff}
@media(max-width:700px){.drive-workspace{padding:14px 10px 24px}}

/* Compact catalogue layout; all colours continue to come from the active theme. */
.drive-workspace{max-width:none!important;padding:10px 14px 18px}
.drive-workspace .drive-toolbar{grid-template-columns:minmax(0,1fr) auto;margin-bottom:4px}
.drive-workspace .drive-heading p,.drive-workspace .drive-eyebrow{display:none}
.drive-workspace .drive-title{font-size:1.35rem}
.drive-workspace .drive-toolbar-actions{grid-column:2;grid-row:1;border:0;padding:0;align-items:center}
.drive-workspace .drive-toolbar-actions .btn{min-height:32px;padding:5px 9px}
.drive-workspace .drive-context-row{padding:3px 0 6px}
.drive-workspace .drive-drop-hint{display:none}
.drive-workspace .drive-quota-bar{grid-row:2}
.drive-workspace .drive-grid{grid-template-columns:repeat(auto-fill,minmax(145px,1fr))!important;gap:7px!important}
.drive-workspace .drive-card{min-height:108px;padding:7px!important}
@media(max-width:900px){.drive-workspace .drive-toolbar{grid-template-columns:1fr}.drive-workspace .drive-toolbar-actions{grid-column:1;grid-row:2;justify-content:flex-start}.drive-context-row{grid-template-columns:1fr}.drive-workspace .drive-breadcrumbs,.drive-utility-row,.drive-workspace .drive-quota-bar{grid-column:1;grid-row:auto}.drive-utility-row{justify-content:flex-start;flex-wrap:wrap}.drive-workspace .drive-quota-bar{max-width:none;margin-left:0}}

/* Document list: every row stays readable with the active site's theme. */
.drive-workspace .drive-grid.drive-list{display:flex!important;flex-direction:column;gap:0!important;border:1px solid var(--border-soft);border-radius:var(--radius);overflow:hidden;background:var(--white)}
.drive-workspace .drive-row{display:flex;align-items:center;gap:8px;min-height:52px!important;padding:5px 10px!important;border:0!important;border-bottom:1px solid var(--border-soft)!important;border-radius:0!important;background:var(--white)!important;box-shadow:none!important;cursor:default!important;overflow:visible!important}
.drive-workspace .drive-row:last-child{border-bottom:0!important}
.drive-workspace .drive-row:hover,.drive-workspace .drive-row:focus-within{background:var(--green-bg)!important}
.drive-workspace .drive-select-label,.drive-workspace .drive-select-spacer{display:flex;align-items:center;justify-content:center;flex:0 0 24px;margin:0!important;padding:0!important}
.drive-workspace .drive-file-select{width:16px;height:16px;margin:0;accent-color:var(--green)}
.drive-workspace .drive-row-main{display:flex;align-items:center;gap:10px;flex:1 1 auto;min-width:0;min-height:40px;padding:0!important;border:0;background:transparent;color:var(--ink);font:inherit;text-align:left;text-decoration:none;cursor:pointer}
.drive-workspace .drive-row-main:hover strong{text-decoration:underline;text-decoration-color:var(--green)}
.drive-workspace .drive-row-icon{display:flex;align-items:center;justify-content:center;flex:0 0 30px;width:30px;height:30px;overflow:hidden;border-radius:6px;background:var(--green-bg);color:var(--green)}
.drive-workspace .drive-row-icon svg{width:19px!important;height:19px!important;max-width:19px;max-height:19px}
.drive-workspace .drive-row-icon img{width:30px;height:30px;object-fit:cover}
.drive-workspace .drive-row-text{display:flex;flex-direction:column;gap:1px;min-width:0}
.drive-workspace .drive-row-text strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.82rem;line-height:1.25}
.drive-workspace .drive-row-text small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--ink-soft);font-size:.68rem;line-height:1.2}
.drive-workspace .drive-actions{position:static!important;display:flex!important;align-items:center;flex:0 0 auto;gap:2px!important;padding:0!important;background:transparent!important;box-shadow:none!important}
.drive-workspace .drive-actions button,.drive-workspace .drive-actions a{display:inline-flex;align-items:center;justify-content:center;min-height:30px;padding:4px 7px!important;border:1px solid transparent!important;border-radius:7px!important;background:transparent!important;color:var(--ink-soft)!important;font:inherit;font-size:.72rem!important;line-height:1.1;text-decoration:none;white-space:nowrap;cursor:pointer}
.drive-workspace .drive-actions button:hover,.drive-workspace .drive-actions a:hover{border-color:var(--border)!important;background:var(--white)!important;color:var(--ink)!important}
.drive-workspace .drive-actions .drive-delete{color:var(--danger,#b42318)!important}
.drive-workspace .photo-tag-badge{position:static;flex:0 0 auto;margin:0 2px;font-size:.65rem}
.drive-workspace .drive-help{max-width:none;white-space:nowrap}
.drive-workspace .drive-help[open]{position:relative}
.drive-workspace .drive-help p{position:absolute;right:0;top:100%;z-index:5;width:min(320px,80vw);margin:4px 0;padding:10px;border:1px solid var(--border);border-radius:var(--radius);background:var(--white);box-shadow:var(--shadow);white-space:normal}
@media(max-width:700px){.drive-workspace .drive-row{flex-wrap:wrap;gap:2px 6px}.drive-workspace .drive-row-main{min-width:calc(100% - 40px)}.drive-workspace .drive-actions{flex-basis:100%;justify-content:flex-end;flex-wrap:wrap;padding-left:30px!important}.drive-workspace .drive-actions button,.drive-workspace .drive-actions a{font-size:.68rem!important;min-height:32px}.drive-workspace .drive-utility-row nav{gap:8px}.drive-workspace .drive-help p{left:0;right:auto}}

/* Stable columns keep file names left-aligned and actions flush right. */
.drive-workspace .drive-row{display:grid;grid-template-columns:24px minmax(0,1fr) auto auto;column-gap:10px}
.drive-workspace .drive-row>.drive-select-label,.drive-workspace .drive-row>.drive-select-spacer{grid-column:1}
.drive-workspace .drive-row>.drive-row-main{grid-column:2;width:100%;text-align:left}
.drive-workspace .drive-row>.photo-tag-badge{grid-column:3}
.drive-workspace .drive-row>.drive-actions{grid-column:4;justify-self:end;justify-content:flex-end;margin-left:auto}
@media(max-width:700px){.drive-workspace .drive-row{grid-template-columns:24px minmax(0,1fr);row-gap:2px}.drive-workspace .drive-row>.drive-row-main{grid-column:2;min-width:0}.drive-workspace .drive-row>.photo-tag-badge{grid-column:2;justify-self:start}.drive-workspace .drive-row>.drive-actions{grid-column:2;justify-self:end;max-width:100%;margin-left:0;padding-left:0!important}}

/* The action rail has the same right edge on every document row. */
.drive-workspace .drive-grid.drive-list{width:100%}
.drive-workspace .drive-row{display:grid!important;grid-template-columns:24px minmax(0,1fr) auto 148px;width:100%;box-sizing:border-box;justify-self:stretch}
.drive-workspace .drive-row>.drive-actions{grid-column:4;display:flex!important;width:148px;justify-content:flex-end!important;justify-self:end;margin:0!important}
.drive-workspace .drive-actions button,.drive-workspace .drive-actions a{flex:0 0 34px;width:34px;height:34px;min-height:34px;padding:6px!important;color:var(--ink)!important}
.drive-workspace .drive-actions svg{display:block;width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.drive-workspace .drive-actions .drive-delete{color:var(--danger,#b42318)!important}
@media(max-width:700px){.drive-workspace .drive-row{grid-template-columns:24px minmax(0,1fr);row-gap:1px}.drive-workspace .drive-row>.drive-actions{grid-column:2;justify-self:end;width:148px;max-width:100%;padding-left:0!important}}
