/* Quiet, evidence-first workspace: the layout layer over css/styles.css.
   This file declares NO tokens. Its :root and [data-theme="dark"] blocks used
   to re-declare the palette at the same specificity as styles.css and, loaded
   later, won in the light theme — including over the print palette. Every
   colour here reads a token from the single layer at the top of styles.css. */
body {background:var(--desk);color:var(--ink);font-family:var(--font-sans)}
button,input,select {font-family:inherit}
button { -webkit-tap-highlight-color:transparent }
button:focus-visible,a:focus-visible,input:focus-visible,summary:focus-visible,[tabindex]:focus-visible {outline:2px solid var(--teal);outline-offset:3px}
/* The shell (sidebar, top bar, drawer, dialogs) is styled in css/styles.css
   only ("SHELL"). This file loads later and used to override it at equal
   specificity, media queries included, which made the 768px layout dead. */
/* The page header, buttons, cards and sub-tabs are the shared PAGE KIT in
   css/styles.css since stage C: restyled here, they beat styles.css at equal
   specificity (this file loads later) and drifted from the design. */
.studio-eyebrow {font:9px var(--font-mono);letter-spacing:.12em;color:var(--ink-3)}
/* The retired Overview's rules (.studio-metrics, -histogram, -recent-row, -next…)
   went with it in stage A3: Home is styled in css/styles.css ("HOME"). */
.studio-small-label {font:8px var(--font-mono);letter-spacing:.07em;color:var(--ink-3)}
/* The Library page (rail, header, chips, table, grid, cards) is styled in
   css/styles.css ("LIBRARY") since stage B1, and one creative's readout is
   the Run page ("RUN PAGE") since stage B2: the readout dialog's rules
   (.studio-inspector, its specimen column and toolbar, the #explorerDetails
   card overrides) went with the dialog. */
@media(prefers-reduced-motion:reduce) {*,*::before,*::after {animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* The "what changed" creator handle is now the way into that creator's scope,
   so it has to read and behave as a control without changing the row's shape. */
button.brief-folder {background:none;border:0;padding:0;margin:0;font:inherit;font-family:var(--font-mono);font-size:11.5px;color:var(--acc);text-align:left;cursor:pointer;text-decoration:underline;text-decoration-color:color-mix(in srgb,var(--acc) 35%,transparent);text-underline-offset:2px}
button.brief-folder:hover {text-decoration-color:var(--acc)}
button.brief-folder:focus-visible {outline:2px solid var(--acc);outline-offset:2px;border-radius:3px}

/* The invariant is that a number, its interval and its population travel
   together. At phone width the statistic wrapped mid-unit and ran into the
   sentence after it, so `g` could read as the end of the previous clause. */
.fx-inline {white-space:nowrap;display:inline-block}
/* A LIST of effects is not one unit: it wraps like prose. As one unbreakable
   box, "No variation within either tier: …" ran ~1280px wide and gave the
   Analysis tab a horizontal scrollbar at every width above 640px. */
.fx-inline.fx-list {white-space:normal}
.finding-row .fx-inline {margin-inline:2px}
@media(max-width:640px) {
  .fx-inline {display:block;margin:5px 0 0;white-space:normal}
  .finding-row strong + .fx-inline {margin-top:6px}
}

/* The sign-in screens (#authOverlay: sign in, pending, fail-closed) are
   styled in css/styles.css "AUTH" since stage C3 — this file loads later and
   used to restyle them at equal specificity. */
.linklike {background:none;border:0;padding:0;font:inherit;color:var(--acc);cursor:pointer;text-decoration:underline;text-underline-offset:2px}
.linklike:hover {filter:brightness(1.1)}
.linklike:focus-visible {outline:2px solid var(--acc);outline-offset:2px;border-radius:3px}
