/* ══════════════════════════════════════════════════════════════════════════════════════════
   files.css — Seeker Files (public/tools/files.js, #view-files, classes sf-…). 6 Oct 2026.

   The layout is the mock-up Ava approved on 06/10 (layout A, "Library"): alerts and the team's
   folders in a side column, a filter bar above the file list, a drawer for one file, plain
   dialogs. Its colours and fonts are the Platform's own tokens (--e-…), so Seeker Files looks like
   the rest of the Platform rather than like the mock-up's stand-alone page.

   ⭐ Every rule starts with #view-files, for the reason given at the top of tools.css: index.html
   already styles .rk .note, .chip, .row and more, and a bare class would pick those up.
   ══════════════════════════════════════════════════════════════════════════════════════════ */
#view-files{
  --sf-ground:var(--e-paper); --sf-surface:#fff; --sf-mist:var(--e-card); --sf-mist2:var(--e-inset);
  --sf-heading:var(--e-ink); --sf-body:var(--e-ink); --sf-muted:var(--e-ink3);
  --sf-rule:var(--e-line); --sf-rule2:#D9D1D0;
  --sf-accent:var(--e-accent); --sf-tint:var(--e-accent-soft);
  --sf-urgent:#7A2E2A; --sf-urgent-tint:#F6E7E4;
  --sf-ok:#2F4A6B; --sf-ok-tint:#EAEFF5;
  --sf-btn:var(--e-ink); --sf-btn-text:#fff;
}
/* The Platform sets border-box on everything (index.html); said again here so this page never depends on it. */
#view-files *,#view-files *::before,#view-files *::after{box-sizing:border-box}
#view-files .sf-tabs{display:flex;gap:4px;flex-wrap:wrap;border-bottom:1px solid var(--sf-rule);margin:14px 0 18px}
#view-files .sf-tabs button{background:none;border:0;padding:10px 14px;font:400 14px var(--e-sans);color:var(--sf-muted);border-bottom:2px solid transparent;margin-bottom:-1px;cursor:pointer}
#view-files .sf-tabs button[aria-selected="true"]{color:var(--sf-heading);font-weight:600;border-bottom-color:var(--sf-accent)}

#view-files .sf-ico{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;flex:none}
#view-files .sf-btn{display:inline-flex;align-items:center;gap:8px;height:36px;padding:0 16px;border-radius:999px;border:1px solid var(--sf-btn);background:var(--sf-btn);color:var(--sf-btn-text);font:500 13px/1 var(--e-sans);white-space:nowrap;cursor:pointer}
#view-files .sf-btn:hover{opacity:.9}
#view-files .sf-btn.out{background:transparent;color:var(--sf-heading);border-color:var(--sf-rule2)}
#view-files .sf-btn.out:hover{background:var(--sf-mist)}
#view-files .sf-btn.sm{height:30px;padding:0 12px;font-size:12px}
#view-files .sf-btn[disabled]{opacity:.45;cursor:not-allowed}
#view-files .sf-link{background:none;border:0;padding:0;color:var(--sf-heading);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px;font:inherit;cursor:pointer;text-align:left}
#view-files .sf-panel{background:var(--sf-surface);border:1px solid var(--sf-rule);border-radius:12px;overflow:hidden}
#view-files .sf-chip{display:inline-block;font:600 10px/1 var(--e-sans);letter-spacing:.08em;text-transform:uppercase;padding:5px 7px;border:1px solid var(--sf-rule2);border-radius:4px;color:var(--sf-muted);white-space:nowrap}
#view-files .sf-chip.ok{background:var(--sf-ok-tint);color:var(--sf-ok);border-color:transparent}
#view-files .sf-chip.draft{background:var(--sf-tint);color:var(--sf-accent);border-color:transparent}
#view-files .sf-chip.old{border-style:dashed}
#view-files .sf-chip.lock{color:var(--sf-muted)}
#view-files .sf-muted{color:var(--sf-muted)}
#view-files .sf-fi{display:inline-grid;place-items:center;width:32px;height:38px;flex:none;border:1px solid var(--sf-rule2);border-radius:3px;background:var(--sf-mist);font:600 9px/1 var(--e-sans);letter-spacing:.08em;color:var(--sf-ok)}
#view-files .sf-fi.folder{background:transparent;border-color:transparent;color:var(--sf-muted)}
#view-files .sf-fi.folder svg{width:24px;height:24px}
#view-files .sf-fn{font:500 15px/1.3 var(--e-serif);color:var(--sf-heading);overflow-wrap:anywhere}
#view-files .sf-fm{font:400 12px/1.35 var(--e-sans);color:var(--sf-muted)}
#view-files .sf-label{font:600 10px/1.4 var(--e-sans);letter-spacing:.16em;text-transform:uppercase;color:var(--sf-muted);margin:0}
#view-files mark.sf-hl{background:var(--sf-tint);color:var(--sf-heading);padding:0 2px}

/* the library: side column + list */
#view-files .sf-lib{display:grid;grid-template-columns:262px minmax(0,1fr);gap:22px;align-items:start}
#view-files .sf-tree{padding:12px 8px;position:sticky;top:12px;max-height:calc(100vh - 140px);overflow:auto}
#view-files .sf-tn{display:flex;align-items:center;gap:8px;width:100%;text-align:left;background:none;border:0;padding:7px 10px;font:400 13.5px/1.2 var(--e-sans);color:var(--sf-body);border-left:2px solid transparent;cursor:pointer;border-radius:0}
#view-files .sf-tn:hover{background:var(--sf-mist)}
#view-files .sf-tn.on{background:var(--sf-mist);color:var(--sf-heading);font-weight:600;border-left-color:var(--sf-accent)}
#view-files .sf-tn .ct{margin-left:auto;font-size:12px;color:var(--sf-muted);font-variant-numeric:tabular-nums}
#view-files .sf-tn .ct.u{color:var(--sf-urgent);font-weight:600}
#view-files .sf-tn svg{width:15px;height:15px;color:var(--sf-muted)}
#view-files .sf-tn.al svg{width:17px;height:17px;color:var(--sf-ok)}
#view-files .sf-alerts{display:grid;gap:2px;padding:0 0 10px;margin:0 0 8px;border-bottom:1px solid var(--sf-rule)}
#view-files .sf-grp{margin:8px 10px 6px}
#view-files .sf-crumbs{display:flex;flex-wrap:wrap;gap:4px 6px;align-items:center;font:400 13px var(--e-sans);color:var(--sf-muted);margin:0 0 8px}
#view-files .sf-crumbs button{background:none;border:0;padding:0;color:var(--sf-muted);text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px;cursor:pointer;font:inherit}
#view-files .sf-head{display:flex;justify-content:space-between;gap:12px 24px;flex-wrap:wrap;align-items:flex-end;margin-bottom:12px}
#view-files .sf-head h2{font:400 30px/1.1 var(--e-didone);color:var(--sf-heading);margin:0}
#view-files .sf-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
#view-files .sf-search{display:flex;align-items:center;gap:8px;border:1px solid var(--sf-rule2);border-radius:999px;padding:0 12px;height:36px;min-width:220px;background:var(--sf-surface)}
#view-files .sf-search input{border:0;background:transparent;outline:0;width:100%;font:400 13.5px var(--e-sans);color:var(--sf-heading)}

#view-files .sf-row{display:grid;grid-template-columns:minmax(0,2.6fr) 120px minmax(0,1.3fr) 96px 80px;gap:14px;align-items:center;padding:10px 16px;border-top:1px solid var(--sf-rule);width:100%;text-align:left;background:none;border-left:0;border-right:0;border-bottom:0;font:inherit;color:inherit}
#view-files .sf-row:first-child{border-top:0}
#view-files .sf-row[data-act]{cursor:pointer}
#view-files .sf-row[data-act]:hover{background:var(--sf-mist)}
#view-files .sf-row.hd{font:600 10px/1 var(--e-sans);letter-spacing:.14em;text-transform:uppercase;color:var(--sf-muted);padding:10px 16px;background:var(--sf-ground)}
#view-files .sf-row .nm{display:flex;gap:12px;align-items:center;min-width:0}
#view-files .sf-row .nm>div{min-width:0}
#view-files .sf-row.dim .sf-fn{color:var(--sf-muted)}
#view-files .sf-row .c{font:400 12.5px/1.35 var(--e-sans);color:var(--sf-muted);min-width:0;overflow-wrap:anywhere}
#view-files .sf-row > span.c:nth-child(2){min-width:max-content}   /* the status label never clips (phones) */
#view-files .sf-row.drop-on{outline:2px dashed var(--sf-accent);outline-offset:-4px}
#view-files .sf-oldbar,#view-files .sf-fnote{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:10px 16px;border-top:1px dashed var(--sf-rule2);font:400 13px var(--e-sans);color:var(--sf-muted);flex-wrap:wrap}
#view-files .sf-empty{padding:30px 20px;text-align:center;color:var(--sf-muted);font:400 14px var(--e-sans)}
#view-files .sf-star{margin-left:auto;background:none;border:0;padding:6px;display:grid;place-items:center;color:var(--sf-muted);flex:none;opacity:0;cursor:pointer}
#view-files .sf-star svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linejoin:round}
#view-files .sf-row:hover .sf-star,#view-files .sf-row:focus-within .sf-star,#view-files .sf-star:focus-visible{opacity:1}
#view-files .sf-star.on{opacity:1;color:var(--sf-accent)}
#view-files .sf-star.on svg{fill:currentColor}
@media (hover:none){#view-files .sf-star{opacity:.55}#view-files .sf-star.on{opacity:1}}

#view-files .sf-filters{display:grid;grid-template-columns:repeat(4,minmax(0,1fr)) auto;gap:10px 14px;align-items:end;padding:12px 16px;margin:0 0 12px;background:var(--sf-surface);border:1px solid var(--sf-rule);border-radius:12px}
#view-files .sf-field{display:grid;gap:5px;min-width:0}
#view-files .sf-field label,#view-files .sf-field .lab{font:600 10px/1.2 var(--e-sans);letter-spacing:.12em;text-transform:uppercase;color:var(--sf-muted)}
#view-files .sf-field input[type=text],#view-files .sf-field input[type=date],#view-files .sf-field select{height:36px;border:1px solid var(--sf-rule2);border-radius:6px;background:var(--sf-surface);padding:0 10px;font:400 13.5px var(--e-sans);color:var(--sf-heading);width:100%}
#view-files .sf-fend{display:flex;gap:6px 12px;align-items:center;min-height:36px;font:400 13px var(--e-sans);color:var(--sf-muted);flex-wrap:wrap}

/* alerts' cards */
#view-files .sf-card{padding:16px 18px}
#view-files .sf-card h3{font:400 21px/1.2 var(--e-didone);margin:0 0 4px;color:var(--sf-heading)}
#view-files .sf-todo{padding:12px 0;border-top:1px solid var(--sf-rule);display:grid;gap:8px}
#view-files .sf-todo:first-of-type{border-top:0}
#view-files .sf-todo .t{display:flex;gap:12px;align-items:flex-start;min-width:0}
#view-files .sf-todo .t>div{min-width:0}
#view-files .sf-todo .why{font:400 13px/1.35 var(--e-sans);color:var(--sf-urgent)}
#view-files .sf-todo .why.soft{color:var(--sf-accent)}
#view-files .sf-todo .btns{display:flex;gap:6px;flex-wrap:wrap;padding-left:44px}

/* the calm line before migration 172, and other notes */
#view-files .sf-note{padding:10px 12px;background:var(--sf-mist);border-radius:8px;font:400 13.5px/1.45 var(--e-sans);color:var(--sf-body)}
#view-files .sf-note.warn{background:var(--sf-urgent-tint);color:var(--sf-urgent)}
#view-files .sf-note.good{background:var(--sf-ok-tint);color:var(--sf-ok)}
#view-files .sf-wait{max-width:640px;margin:40px auto;text-align:center;padding:34px 28px}
#view-files .sf-wait h2{font:400 28px/1.15 var(--e-didone);margin:0 0 8px;color:var(--sf-heading)}
#view-files .sf-wait p{font:400 14.5px/1.5 var(--e-sans);color:var(--sf-muted);margin:0}

/* drop zone over the list, and the upload tray */
#view-files .sf-dropmask{position:fixed;inset:0;z-index:60;background:rgba(27,20,22,.28);display:grid;place-items:center;pointer-events:none}
#view-files .sf-dropmask div{background:var(--sf-surface);border:2px dashed var(--sf-accent);border-radius:14px;padding:28px 34px;font:500 16px var(--e-sans);color:var(--sf-heading)}
#view-files .sf-tray{position:fixed;right:20px;bottom:76px;z-index:61;width:min(380px,calc(100% - 32px));background:var(--sf-surface);border:1px solid var(--sf-rule2);border-radius:12px;box-shadow:0 8px 24px -10px rgba(27,20,22,.3);padding:12px 14px;display:grid;gap:8px;max-height:50vh;overflow:auto}
#view-files .sf-tray .it{display:grid;gap:4px;font:400 12.5px var(--e-sans)}
#view-files .sf-bar{height:5px;background:var(--sf-mist2);border-radius:3px;overflow:hidden}
#view-files .sf-bar i{display:block;height:100%;background:var(--sf-accent);width:0;transition:width .15s}
#view-files .sf-bar.err i{background:var(--sf-urgent)}

/* overlays */
#view-files .sf-scrim{position:fixed;inset:0;background:rgba(27,20,22,.36);z-index:70}
#view-files .sf-drawer{position:fixed;top:0;right:0;bottom:0;width:min(600px,100%);background:var(--sf-ground);z-index:71;border-left:1px solid var(--sf-rule2);display:flex;flex-direction:column}
#view-files .sf-drawer .dh{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;padding:18px 22px 12px;border-bottom:1px solid var(--sf-rule)}
#view-files .sf-drawer .dh h2{font:400 24px/1.15 var(--e-didone);margin:0;overflow-wrap:anywhere;color:var(--sf-heading)}
#view-files .sf-drawer .db{overflow:auto;padding:16px 22px 28px;display:grid;gap:16px;align-content:start;flex:1}
#view-files .sf-x{background:none;border:1px solid var(--sf-rule2);border-radius:50%;width:34px;height:34px;display:grid;place-items:center;flex:none;color:var(--sf-heading);cursor:pointer}
#view-files .sf-x:hover{background:var(--sf-mist)}
#view-files .sf-prev{border:1px solid var(--sf-rule);background:var(--sf-surface);border-radius:8px;min-height:120px;display:grid;place-items:center;overflow:hidden}
#view-files .sf-prev iframe{width:100%;height:62vh;border:0;display:block}
#view-files .sf-prev img{max-width:100%;max-height:62vh;display:block}
#view-files .sf-prev .xl{width:100%;overflow:auto;max-height:52vh;font:400 12.5px var(--e-sans)}
#view-files .sf-prev .xl table{border-collapse:collapse;min-width:100%}
#view-files .sf-prev .xl td,#view-files .sf-prev .xl th{border:1px solid var(--sf-rule);padding:5px 8px;white-space:nowrap}
#view-files .sf-meta{display:grid;grid-template-columns:110px minmax(0,1fr);gap:8px 14px;font:400 13.5px/1.4 var(--e-sans);margin:0}
#view-files .sf-meta dt{color:var(--sf-muted)}
#view-files .sf-meta dd{margin:0;overflow-wrap:anywhere}
#view-files .sf-blk{border:1px solid var(--sf-rule);background:var(--sf-surface);border-radius:10px;padding:12px 14px}
#view-files .sf-blk h3{font:400 18px/1.2 var(--e-didone);margin:0 0 6px;color:var(--sf-heading)}
#view-files .sf-ver{display:flex;justify-content:space-between;gap:10px;padding:7px 0;border-top:1px solid var(--sf-rule);font:400 13px var(--e-sans)}
#view-files .sf-ver:first-of-type{border-top:0}
#view-files details.sf-more{position:relative}
#view-files details.sf-more summary{list-style:none}
#view-files details.sf-more summary::-webkit-details-marker{display:none}
#view-files .sf-morebox{position:absolute;z-index:3;top:36px;left:0;min-width:210px;background:var(--sf-surface);border:1px solid var(--sf-rule2);border-radius:8px;padding:6px;display:grid}
#view-files .sf-morebox .sf-link{text-decoration:none;padding:8px 10px;font:400 13.5px var(--e-sans)}
#view-files .sf-morebox .sf-link:hover{background:var(--sf-mist)}
#view-files .sf-todo .btns .sf-link{font:400 13px var(--e-sans);align-self:center}
#view-files .sf-dlg{position:fixed;z-index:72;left:50%;top:50%;transform:translate(-50%,-50%);width:min(640px,calc(100% - 24px));max-height:calc(100% - 24px);overflow:auto;background:var(--sf-ground);border:1px solid var(--sf-rule2);border-radius:14px}
#view-files .sf-dlg .dh{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;padding:18px 22px 10px}
#view-files .sf-dlg .dh h2{font:400 26px/1.1 var(--e-didone);margin:0;color:var(--sf-heading)}
#view-files .sf-dlg .dbody{padding:4px 22px 20px;display:grid;gap:14px;font:400 14px/1.45 var(--e-sans)}
#view-files .sf-dlg .dfoot{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap;padding:12px 22px;border-top:1px solid var(--sf-rule);background:var(--sf-surface)}
#view-files .sf-opt{display:flex;gap:10px;align-items:flex-start;padding:10px 12px;border:1px solid var(--sf-rule2);border-radius:8px;background:var(--sf-surface);cursor:pointer;font:400 14px/1.35 var(--e-sans);text-align:left;width:100%}
#view-files .sf-opt input{margin-top:3px}
#view-files .sf-opt small{display:block;color:var(--sf-muted);font-size:12.5px}
#view-files .sf-opt.sel{border-color:var(--sf-heading);background:var(--sf-mist)}
#view-files .sf-optlist{display:grid;gap:8px}
#view-files .sf-people{display:flex;flex-wrap:wrap;gap:6px 14px;padding:4px 2px}
#view-files .sf-people label{display:flex;gap:6px;align-items:center;font:400 13.5px var(--e-sans)}
#view-files .sf-two{display:grid;grid-template-columns:1fr 1fr;gap:12px}
#view-files .sf-toast{position:fixed;left:50%;bottom:24px;transform:translateX(-50%);background:var(--sf-btn);color:var(--sf-btn-text);padding:11px 16px;border-radius:999px;font:500 13.5px var(--e-sans);z-index:80;max-width:calc(100% - 32px);display:flex;gap:14px;align-items:center}
#view-files .sf-toast button{background:none;border:0;color:#fff;text-decoration:underline;text-underline-offset:3px;font:600 13.5px var(--e-sans);cursor:pointer;padding:0}
#view-files .sf-newmenu{position:relative}

@media (max-width:980px){
  #view-files .sf-lib{grid-template-columns:1fr}
  #view-files .sf-tree{position:static;max-height:none}
  #view-files .sf-tree.shut .sf-tl{display:none}
  #view-files .sf-filters{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (min-width:981px){#view-files .sf-treebtn{display:none}}
@media (max-width:640px){
  #view-files .sf-row{grid-template-columns:minmax(0,1fr) auto;gap:6px 10px}
  #view-files .sf-row .c.lnk,#view-files .sf-row .c.by,#view-files .sf-row.hd .c{display:none}
  #view-files .sf-row .c.upd{grid-column:1;font-size:12px}
  #view-files .sf-two{grid-template-columns:1fr}
  #view-files .sf-todo .btns{padding-left:0}
  #view-files .sf-search{min-width:0;flex:1 1 100%}
}
