/* ═══ THE CASE DOSSIER — the workspace: chrome, folder rail, panels, forms ═══ */

.deskpage main{padding-bottom:3rem}
.deskwrap{display:grid;grid-template-columns:264px minmax(0,1fr);gap:2rem;align-items:start}
@media (max-width:960px){.deskwrap{grid-template-columns:1fr}}

/* the folder rail — the case file's own index */
.rail{
  position:sticky;top:84px;
  background:linear-gradient(177deg,#E9DCBE,var(--manila-2));color:var(--ink);
  border-radius:4px;padding:1.4rem 1.2rem;
  box-shadow:0 12px 28px rgba(0,0,0,.45),0 1px 0 rgba(255,255,255,.3) inset}
.rail .railhead{font:700 .64rem/1 var(--mono);letter-spacing:.18em;text-transform:uppercase;color:var(--stamp-ink);
  border-bottom:2px solid var(--ink);padding-bottom:.5rem;margin-bottom:1rem}
.railstep{
  display:grid;grid-template-columns:auto 1fr;gap:.7rem;align-items:center;width:100%;text-align:left;
  background:transparent;border:0;cursor:pointer;padding:.55rem .5rem;border-radius:3px;
  font:700 .74rem/1.4 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-soft)}
.railstep i{font-style:normal;font-size:.72rem;color:var(--graphite)}
.railstep:hover{background:rgba(28,26,23,.07)}
.railstep.now{color:var(--stamp-ink);background:linear-gradient(177deg,var(--bone),var(--bone-2));
  outline:2px solid var(--stamp);outline-offset:-2px;transform:rotate(-1.4deg);
  box-shadow:0 5px 12px rgba(0,0,0,.3)}
.railstep.now i{color:var(--stamp-ink)}
.railmeta{margin-top:1.2rem;padding-top:1rem;border-top:1px dashed rgba(28,26,23,.35);
  display:grid;gap:.45rem;font:400 .72rem/1.6 var(--mono);color:var(--ink-soft)}
.railmeta b{color:var(--ink)}
.railhonest{margin-top:1rem;font:italic .68rem/1.6 var(--mono);color:var(--graphite)}

/* the working panel — one bone sheet at a time */
.panels{min-width:0}
.panel{
  background:linear-gradient(178deg,var(--bone),var(--bone-2));color:var(--ink);
  border-radius:3px;padding:clamp(1.6rem,3vw,2.4rem);
  box-shadow:0 14px 34px rgba(0,0,0,.45),0 1px 0 rgba(255,255,255,.25) inset;
  position:relative}
.panel[hidden]{display:none}
.panelhead{display:flex;flex-wrap:wrap;gap:.8rem 1.4rem;align-items:center;justify-content:space-between;margin-bottom:1.2rem}
.panelhead .typehead{margin-bottom:0}

/* forms — typed sheets */
.tin{
  font:400 .95rem/1.7 var(--mono);color:var(--ink);
  background:#F7F1E1;border:1.5px solid rgba(28,26,23,.5);border-radius:2px;padding:.6rem .75rem}
.tin:focus-visible{outline:2px solid var(--stamp);outline-offset:1px}
.tarea{
  width:100%;resize:vertical;line-height:2;
  background:
    repeating-linear-gradient(180deg,transparent 0 27px,rgba(107,103,94,.14) 27px 28px),
    #F7F1E1}
.trow{display:flex;flex-wrap:wrap;gap:.9rem;align-items:center;margin-top:1rem}
.trow label{
  display:grid;gap:.35rem;font:700 .62rem/1 var(--mono);letter-spacing:.14em;
  text-transform:uppercase;color:var(--graphite)}
.grow{flex:1 1 320px}
.fgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:1rem;margin-top:1rem}
.fgrid label{display:grid;gap:.4rem;font:700 .62rem/1 var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--graphite)}

/* typed output */
.tout,.ev-note{margin-top:1.3rem;border-top:2px solid var(--ink);padding-top:1rem;min-height:1rem}
.tline{font:400 .93rem/1.95 var(--mono);color:var(--ink)}
.tline b{color:var(--stamp-ink);letter-spacing:.06em}
.tline.t-honest{color:var(--graphite);font-style:italic;border-top:1px dashed rgba(107,103,94,.4);padding-top:.6rem;margin-top:.6rem}
.tline.t-warn{color:var(--stamp-ink);font-weight:700}
.honesty{font:italic .8rem/1.6 var(--mono);color:var(--graphite)}

/* ── Stage 03: the six file drawers ── */
.drawers{display:grid;grid-template-columns:repeat(6,1fr);gap:.55rem;margin:.9rem 0 .6rem}
.drawer{appearance:none;border:1.5px solid #6B675E;background:#EDE6D6;border-radius:.45rem .45rem .3rem .3rem;padding:.55rem .3rem .5rem;display:flex;flex-direction:column;align-items:center;gap:.28rem;cursor:pointer;font:inherit;color:#1C1A17;position:relative;box-shadow:0 1px 0 rgba(28,26,23,.25);transition:transform .16s ease,box-shadow .16s ease}
.drawer::before{content:"";position:absolute;top:-7px;left:12%;right:12%;height:7px;background:inherit;border:1.5px solid #6B675E;border-bottom:none;border-radius:.4rem .4rem 0 0;transition:top .16s ease}
.drawer:hover{transform:translateY(-3px);box-shadow:0 4px 10px rgba(20,18,16,.3)}
.drawer:hover::before{top:-10px}
.drawer.is-on{background:#D9C7A0;border-color:#1C1A17;box-shadow:0 3px 8px rgba(20,18,16,.35)}
.drawer.is-on::before{border-color:#1C1A17}
.d-ico{font-size:1.25rem;line-height:1}
.d-name{font-weight:700;font-size:.72rem;line-height:1.15;text-align:center}
.d-sub{font-size:.6rem;color:#6B675E;text-align:center;line-height:1.2}
.drawer.is-on .d-sub{color:#1C1A17}
@media (max-width:760px){.drawers{grid-template-columns:repeat(3,1fr)}.drawer::before{display:none}}

/* ── stage 2–4 upgrades: armed removal · element map ── */
.evx.armed{background:#9C2F20;color:#EDE6D6;border-color:#9C2F20;min-width:4.2rem}
.t-have{color:#2E5B2E;font-weight:600}
.t-gap{color:#9C2F20}

/* ── the document viewer: a sheet to read, not a dump ── */
.docview{margin:.8rem 0}
.dv-head{display:flex;justify-content:space-between;align-items:center;gap:.6rem;margin-bottom:.45rem}
.dv-head b{font-size:.85rem;letter-spacing:.04em;text-transform:uppercase}
.dv-head .stamp{font-size:.6rem;padding:.2rem .45rem}
.dv-paper{background:#EDE6D6;border:1.5px solid #1C1A17;border-radius:.35rem;padding:1rem 1.1rem;box-shadow:0 2px 10px rgba(20,18,16,.35)}
.dv-line{font:400 .84rem/1.75 var(--mono,ui-monospace,monospace);color:#1C1A17;margin:0;white-space:pre-wrap;word-break:break-word}
.dv-key{font-weight:700}
.dv-more{font:italic 700 .8rem/1.6 var(--mono,ui-monospace,monospace);color:#9C2F20;border-top:1px dashed #6B675E;margin-top:.6rem;padding-top:.5rem}
.dv-full{margin:.5rem 0 0}
.dv-full summary{cursor:pointer;font-size:.8rem;font-weight:700;color:#1C1A17}
.dv-full pre{white-space:pre-wrap;word-break:break-word;font:400 .78rem/1.7 var(--mono,ui-monospace,monospace);background:#EDE6D6;border:1px solid #6B675E;border-radius:.3rem;padding:.8rem 1rem;margin:.5rem 0 0;max-height:22rem;overflow:auto}

/* ── reduced motion (2026-09-10) ─────────────────────────────────────────────────
   P6 has required this since 2026-08-28; this file shipped without it because
   nothing could fail. scripts/check-reduced-motion.mjs now refuses any animating
   stylesheet that carries no guard. Vestibular need, not a preference. */
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{
    animation-duration:.01ms !important;
    animation-iteration-count:1 !important;
    transition-duration:.01ms !important;
    scroll-behavior:auto !important;
  }
}
