.files-library { --files-border:rgba(154,169,209,.22); }
.files-library button,.files-library a,.files-library input,.files-library select { font:inherit; }
.files-transfer-box { border:1px solid var(--files-border); border-radius:12px; padding:16px; margin-bottom:20px; }
.files-transfer-box summary { cursor:pointer; font-weight:600; }
.files-toolbar { display:flex; flex-wrap:wrap; align-items:end; gap:12px; }
.files-toolbar label { display:grid; gap:6px; font-size:13px; }
.files-toolbar input,.files-toolbar select { padding:10px; border:1px solid var(--files-border); border-radius:8px; background:var(--surface,#141c30); color:inherit; }
.files-search { flex:1; min-width:180px; }
.files-library button,.files-actions a { padding:8px 12px; border:1px solid var(--files-border); border-radius:8px; color:inherit; background:transparent; cursor:pointer; text-decoration:none; }
.files-library button:focus-visible,.files-library a:focus-visible { outline:2px solid #92aaff; outline-offset:3px; }
.files-layout { display:grid; grid-template-columns:minmax(160px,220px) minmax(0,1fr); gap:20px; }
.files-layout nav { border-right:1px solid var(--files-border); padding-right:14px; }
.files-layout nav button { display:block; text-align:left; width:100%; margin:6px 0; overflow-wrap:anywhere; }
.files-layout nav small { display:block; opacity:.72; margin-top:4px; }
.files-layout nav [aria-pressed=true] { border-color:#97acff; background:rgba(135,156,239,.12); }
.files-layout nav .files-subfolder { padding-left:24px; }
.files-entry { display:flex; justify-content:space-between; gap:16px; padding:18px 0; border-bottom:1px solid var(--files-border); }
.files-entry>div:first-child { min-width:0; }
.files-entry p { margin:6px 0; opacity:.8; font-size:13px; overflow-wrap:anywhere; }
.files-entry small { opacity:.7; }
.files-entry .files-name { padding:0; border:0; text-align:left; font-weight:600; overflow-wrap:anywhere; color:inherit; }
.files-entry .files-name:disabled { opacity:1; cursor:default; }
.files-actions { display:flex; flex-wrap:wrap; align-items:center; justify-content:end; gap:8px; }
.files-reader { grid-column:1/-1; padding:20px; border:1px solid var(--files-border); border-radius:12px; }
.files-reader iframe { width:100%; height:65vh; border:0; background:white; }
.files-reader img,.files-reader video { max-width:100%; max-height:65vh; }
.files-reader pre { white-space:pre-wrap; overflow-wrap:anywhere; max-height:65vh; overflow:auto; }
.files-breadcrumb { display:flex; align-items:center; gap:10px; margin-top:12px; }
@media(max-width:760px) { .files-layout { grid-template-columns:1fr; } .files-layout nav { border-right:0; } .files-entry { flex-direction:column; } .files-actions { justify-content:start; } }

/* Alpha explorer adaptation: same native API, denser navigation and a real reader surface. */
.files-library { --files-border:rgba(151,166,213,.16); --files-muted:#8995b2; --files-accent:#b9a3ff; }
.files-hero { display:flex; align-items:flex-end; justify-content:space-between; gap:24px; padding:4px 0 22px; }
.files-hero h2 { margin:5px 0 7px; font-size:clamp(25px,3vw,34px); letter-spacing:-.035em; }
.files-hero p { max-width:550px; margin:0; color:var(--files-muted); font-size:13px; line-height:1.6; }
.files-kicker { color:var(--files-accent); font-size:10px; font-weight:700; letter-spacing:.12em; text-transform:uppercase; }
.files-refresh { min-height:36px; padding:8px 13px; border:1px solid var(--files-border); border-radius:9px; background:rgba(185,163,255,.08); color:inherit; cursor:pointer; }
.files-refresh:hover { border-color:rgba(185,163,255,.5); background:rgba(185,163,255,.14); }
.files-transfer-box { border-radius:14px; background:linear-gradient(120deg,rgba(136,114,218,.14),rgba(255,255,255,.025)); padding:0; overflow:hidden; }
.files-transfer-box summary { display:flex; align-items:center; gap:12px; padding:15px 17px; list-style:none; }
.files-transfer-box summary::-webkit-details-marker { display:none; }
.files-summary-icon { display:grid; place-items:center; width:29px; height:29px; border-radius:8px; background:rgba(185,163,255,.16); color:var(--files-accent); font-size:20px; }
.files-transfer-box summary span:nth-child(2) { display:grid; gap:3px; flex:1; }
.files-transfer-box summary small { color:var(--files-muted); font-size:11px; font-weight:400; }
.files-summary-chevron { color:var(--files-muted); font-size:18px; }
.files-transfer-box[open] .files-summary-chevron { transform:rotate(180deg); }
.files-transfer-box>[data-transfers] { padding:0 17px 17px; }
.files-toolbar { display:grid; grid-template-columns:minmax(0,210px) minmax(0,1fr) minmax(0,160px) minmax(0,175px); gap:10px; align-items:end; margin:17px 0 12px; }
.files-toolbar label { gap:5px; color:var(--files-muted); font-size:10px; }
.files-toolbar select,.files-toolbar input { min-height:38px; border-radius:9px; background:rgba(6,12,27,.55); border-color:var(--files-border); }
.files-toolbar>* { min-width:0; }
.files-toolbar select,.files-toolbar input { box-sizing:border-box; width:100%; min-width:0; max-width:100%; }
.files-toolbar .files-chat-target { min-width:0; }
.files-search { display:flex!important; align-items:center; gap:9px; padding:0 11px; border:1px solid var(--files-border); border-radius:9px; background:rgba(6,12,27,.55); }
.files-search input { border:0!important; background:transparent!important; padding-left:0!important; }
.files-search>span { color:var(--files-accent); font-size:19px; }
.files-search kbd { color:var(--files-muted); font-size:9px; white-space:nowrap; }
.files-notice { color:#e7c99e; }
.files-layout { grid-template-columns:minmax(190px,235px) minmax(360px,1fr); gap:16px; align-items:stretch; }
.files-sidebar { border:1px solid var(--files-border); border-radius:13px; padding:13px 9px; background:rgba(7,13,29,.38); }
.files-sidebar-head { display:flex; justify-content:space-between; padding:3px 8px 9px; color:var(--files-muted); font-size:10px; letter-spacing:.1em; text-transform:uppercase; }
.files-sidebar-head span { font-variant-numeric:tabular-nums; }
.files-collection-all,.files-collection,.files-subfolder { display:flex!important; align-items:center; gap:9px; width:100%; margin:2px 0!important; padding:10px 9px!important; border:1px solid transparent!important; border-radius:8px!important; text-align:left!important; }
.files-collection-all>span:last-child,.files-collection>span:last-child { display:grid; gap:3px; min-width:0; }
.files-collection-all small,.files-collection small { color:var(--files-muted); font-size:10px; font-weight:400; }
.files-collection-all[aria-pressed=true],.files-collection[aria-pressed=true] { border-color:rgba(185,163,255,.28)!important; background:rgba(145,120,226,.14)!important; color:#d9d0ff; }
.files-folder-icon { display:grid; place-items:center; min-width:23px; color:var(--files-accent); font-size:14px; }
.files-sidebar-subhead { padding:17px 8px 5px; color:var(--files-muted); font-size:9px; letter-spacing:.1em; text-transform:uppercase; }
.files-subfolder { padding:7px 10px 7px 32px!important; color:var(--files-muted)!important; font-size:11px!important; }
.files-results { min-width:0; border:1px solid var(--files-border); border-radius:13px; background:rgba(7,13,29,.24); overflow:hidden; }
.files-breadcrumb { margin:0; padding:13px 16px 0; color:var(--files-muted); font-size:11px; }
.files-breadcrumb button { border:0; padding:0; color:var(--files-accent); background:none; }
.files-section-head { display:flex; align-items:end; justify-content:space-between; gap:15px; padding:15px 16px 9px; }
.files-section-head h3 { margin:0 0 4px; font-size:17px; letter-spacing:-.02em; }
.files-section-head p { margin:0; color:var(--files-muted); font-size:10px; }
.files-view-note { color:var(--files-muted); font-size:10px; }
.files-list { padding:5px 9px; }
.files-entry { align-items:center; gap:12px; padding:12px 9px; border:1px solid transparent; border-radius:9px; }
.files-entry:hover { background:rgba(132,112,207,.08); border-color:var(--files-border); }
.files-entry-icon { display:grid; place-items:center; width:34px; height:38px; flex:0 0 34px; border:1px solid var(--files-border); border-radius:8px; color:#c1c9df; background:rgba(9,17,37,.8); font-size:9px; font-weight:700; }
.files-type-image { color:#91d5ce; }.files-type-pdf { color:#f0a8b9; }.files-type-text { color:#b9a3ff; }
.files-entry-main { min-width:0; flex:1; }
.files-entry p { margin:4px 0 2px; color:var(--files-muted); }
.files-entry small { color:#707d9d; }
.files-name { max-width:100%; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.files-actions { flex:0 0 auto; }
.files-preview { color:var(--files-accent)!important; background:rgba(185,163,255,.08)!important; }
.files-download { display:grid; place-items:center; width:31px; height:31px; padding:0!important; color:var(--files-accent)!important; font-size:18px; }
.files-unavailable { color:#6e7892; font-size:10px; }
.files-more { display:block; margin:10px auto 15px; }
.files-reader { grid-column:1 / -1; padding:0; border-radius:13px; overflow:hidden; background:rgba(7,13,29,.6); }
.files-reader-head { display:flex; align-items:start; justify-content:space-between; gap:15px; padding:18px 20px; border-bottom:1px solid var(--files-border); }
.files-reader-head h2 { margin:5px 0 3px; font-size:20px; overflow-wrap:anywhere; }
.files-reader-head p { margin:0; color:var(--files-muted); font-size:11px; }
.files-close { width:31px; height:31px; padding:0!important; font-size:23px; line-height:1; }
.files-reader>[data-content] { padding:20px; }
.files-reader iframe { width:100%; min-height:65vh; border:1px solid var(--files-border); border-radius:8px; background:#fff; }
.files-reader img,.files-reader video { display:block; max-width:100%; max-height:65vh; margin:auto; border-radius:8px; }
.files-reader pre { max-height:65vh; margin:0; padding:18px; overflow:auto; border:1px solid var(--files-border); border-radius:8px; background:#070d1d; color:#dce3fa; font:12px/1.7 ui-monospace,SFMono-Regular,monospace; white-space:pre-wrap; }
@media(max-width:900px) { .files-toolbar { grid-template-columns:1fr 1fr; }.files-search { grid-column:1/-1; order:-1; } }
@media(max-width:760px) { .files-hero { align-items:start; flex-direction:column; }.files-toolbar { grid-template-columns:1fr; }.files-search { grid-column:auto; }.files-layout { grid-template-columns:1fr; }.files-sidebar { max-height:260px; overflow:auto; }.files-view-note { display:none; }.files-entry { flex-wrap:wrap; }.files-entry-main { min-width:calc(100% - 50px); }.files-actions { margin-left:46px; } }
.files-delete { width:31px; height:31px; padding:0!important; border-color:rgba(245,142,166,.2)!important; color:#f2a7ba!important; background:rgba(245,142,166,.06)!important; font-size:20px; line-height:1; }
.files-delete:hover { border-color:rgba(245,142,166,.55)!important; background:rgba(245,142,166,.14)!important; }
.files-reader { min-height:210px; }
.files-reader [data-content] { min-height:130px; }
.files-upload { min-height:36px; padding:8px 13px; border:1px solid rgba(185,163,255,.38); border-radius:9px; background:rgba(185,163,255,.14); color:#e4ddff; cursor:pointer; font:inherit; }
.files-upload:hover { background:rgba(185,163,255,.22); border-color:rgba(185,163,255,.65); }
.files-transfer-engine { position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0); clip-path:inset(50%); white-space:nowrap; }
.files-hero-actions { display:flex; align-items:center; gap:8px; }
.files-collapse { min-height:36px; padding:8px 12px; border:1px solid var(--files-border); border-radius:9px; background:transparent; color:var(--files-muted); cursor:pointer; }
.files-collapse:hover { color:inherit; border-color:rgba(185,163,255,.4); }
.files-sidebar-collapsed { grid-template-columns:minmax(0,1fr)!important; }
.files-sidebar-collapsed .files-sidebar { display:none; }
.files-editor { display:block; width:100%; min-height:58vh; box-sizing:border-box; resize:vertical; padding:22px; border:1px solid var(--files-border); border-radius:9px; background:#070d1d; color:#e3e8fb; font:13px/1.75 ui-monospace,SFMono-Regular,monospace; tab-size:2; }
.files-editor:focus { outline:2px solid rgba(185,163,255,.55); outline-offset:2px; }
.files-editor-actions { display:flex; justify-content:flex-end; padding-top:12px; }
.files-save { border:1px solid rgba(185,163,255,.4)!important; background:rgba(185,163,255,.15)!important; color:#e5ddff!important; }
.files-reader-tools { display:flex; align-items:center; gap:8px; }
.files-reader-tools>a { padding:7px 10px; border:1px solid var(--files-border); border-radius:8px; color:var(--files-accent); font-size:11px; text-decoration:none; }
@media(max-width:760px) { .files-hero-actions { width:100%; }.files-collapse,.files-refresh { flex:1; }.files-editor { min-height:52vh; padding:15px; font-size:12px; } }
