.technical-drive { min-width: 0; }
.technical-drive button:focus-visible { outline: 2px solid var(--mobile-blue,#2463eb); outline-offset: 2px; }
@media(max-width:767px) {
 .technical-drive > .flex { gap: 8px; }
 .technical-drive > .flex.flex-col { padding: 12px; }
 .technical-drive > .flex.flex-col > div:first-child { flex-wrap: wrap; overflow: visible; row-gap: 4px; }
 .technical-drive h3 { font-size: 14px; line-height: 1.45; overflow-wrap: anywhere; }
 .technical-drive button { min-height: 44px; }
 .technical-drive .grid > .group:has(img) { padding: 10px; }
 .technical-drive .grid > .group:has(img) > div:first-child { flex-wrap: wrap; }
 .technical-drive .grid > .group:has(img) img { height: auto; aspect-ratio: 4/3; object-fit: contain; max-height: 220px; background: var(--mobile-soft,#f3f5f8); }
}

.dark .technical-drive .bg-white { background:var(--mobile-surface,#151f2e); color:var(--mobile-ink,#edf2f9); }
.dark .technical-drive :is(h3,.text-slate-900) { color:var(--mobile-ink,#edf2f9); }
@media(max-width:767px) {
 .technical-drive .grid > .group:has(img) { display:grid; grid-template-columns:88px minmax(0,1fr); gap:8px; align-items:start; }
 .technical-drive .grid > .group:has(img) > div:first-child { grid-column:2; grid-row:1; margin:0; }
 .technical-drive .grid > .group:has(img) > div:first-child > div:first-child { display:none; }
 .technical-drive .grid > .group:has(img) > div:has(>img) { grid-column:1; grid-row:1 / span 3; margin:0; }
 .technical-drive .grid > .group:has(img) img { aspect-ratio:1; width:88px; height:88px; object-fit:contain; }
 .technical-drive .grid > .group:has(img) > div:last-child { grid-column:2; grid-row:2; border:0; padding:0; }
 .technical-drive .grid > .group:has(img) > p { grid-column:2; }
}

/* Folder names stay fully readable; actions occupy their own row. */
.technical-drive .technical-folder-card { display:grid; grid-template-columns:36px minmax(0,1fr); align-items:start; gap:10px; box-shadow:none; min-height:112px; }
.technical-drive .technical-folder-card > div:last-child { grid-column:1 / -1; justify-content:flex-end; }
.technical-drive .technical-folder-card > div:last-child button { min-width:44px; min-height:44px; opacity:1; }
.technical-drive .technical-folder-name { display:block; overflow:visible; -webkit-line-clamp:unset; font-size:14px; line-height:1.5; font-weight:600; overflow-wrap:anywhere; }
.technical-drive .grid:has(>.technical-folder-card) { grid-template-columns:repeat(auto-fill,minmax(min(100%,230px),1fr)); }

/* Importing an existing file and authoring a text document are separate actions. */
.technical-drive .technical-drive-toolbar { display:block; padding:16px; box-shadow:none; }
.technical-drive .technical-drive-breadcrumbs { flex-wrap:wrap; overflow:visible; margin-bottom:12px; line-height:1.5; }
.technical-drive .technical-drive-breadcrumbs button { min-height:44px; white-space:normal; text-align:left; overflow-wrap:anywhere; }
.technical-drive-actions { color:var(--mobile-ink,#172334); display:flex; align-items:flex-start; flex-wrap:wrap; gap:14px 24px; }
.technical-drive-actions button,.technical-drive-actions summary { display:flex; align-items:center; gap:8px; min-height:46px; padding:10px 14px; border-radius:10px; font-size:14px; font-weight:600; }
.technical-drive-actions button:disabled { opacity:.5; }
.technical-drive-import>button { background:#2463eb; color:white; }
.technical-drive-import p { margin-top:7px; font-size:12px; line-height:1.5; color:var(--mobile-muted,#657184); }
.technical-drive-create { display:flex; flex-wrap:wrap; gap:10px; }
.technical-drive-create>button { background:var(--mobile-surface,#fff); border:1px solid var(--mobile-line,#e5e9ef); color:var(--mobile-blue,#2463eb); }
.technical-drive-organize { margin-left:auto; }
.technical-drive-organize summary { cursor:pointer; list-style:none; font-weight:500; color:var(--mobile-muted,#657184); }
.technical-drive-organize>button { border:1px solid var(--mobile-line,#e5e9ef); margin-top:8px; }
.technical-drive-actions :is(button,summary):focus-visible { outline:2px solid var(--mobile-blue,#2463eb); outline-offset:3px; }
@media(max-width:767px) { .technical-drive .technical-drive-toolbar { padding:12px; }.technical-drive-actions { display:block; }.technical-drive-import>button { width:100%; justify-content:center; }.technical-drive-create { margin-top:16px; display:grid; grid-template-columns:1fr; }.technical-drive-create>button { justify-content:flex-start; min-height:48px; }.technical-drive-organize { margin-top:10px; }.technical-drive-actions p { max-width:100%; } }
.technical-drive form :is(label,input,textarea) { color:var(--mobile-ink,#172334); }
.technical-drive form :is(input,textarea) { background:var(--mobile-surface,#fff); border-color:var(--mobile-line,#e5e9ef); }
.technical-drive form button { min-height:44px; }
.technical-drive .technical-text-error { padding:10px 0; font-size:14px; color:var(--detail-danger,#b42318); }
.technical-drive { --mobile-ink:#172334; --mobile-muted:#657184; --mobile-line:#e5e9ef; --mobile-surface:#fff; --mobile-soft:#f3f5f8; --mobile-blue:#2463eb; --mobile-blue-soft:#edf3ff; --detail-danger:#b42318; }
.dark .technical-drive { --mobile-ink:#edf2f9; --mobile-muted:#a2aec0; --mobile-line:#2b3748; --mobile-surface:#151f2e; --mobile-soft:#0d1623; --mobile-blue:#8bb4ff; --mobile-blue-soft:#1d304e; --detail-danger:#ffb1a7; }
