/* ============================================================================
   MoviEdit — Benchmark / Full Eval pages
   Loaded after styles.css. Everything page-specific lives here, under the
   bm- prefix. Shared tokens are read with fallbacks, so these pages keep
   rendering if the main stylesheet renames or drops a token.
   ========================================================================== */

.ev-page{
  --e-ink:var(--ink,#0b0a09);
  --e-ink-1:var(--ink-1,#100e0c);
  --e-ink-2:var(--ink-2,#15120f);
  --e-ink-3:var(--ink-3,#1c1815);
  --e-line:var(--line,#292420);
  --e-line-2:var(--line-2,#39322b);
  --e-fg:var(--fg,#f3efe6);
  --e-fg-dim:var(--fg-dim,#a79f92);
  --e-fg-faint:var(--fg-faint,#6d665b);
  --e-amber:var(--amber,#eda24e);
  --e-amber-ink:var(--amber-ink,#1b1305);
  --e-teal:var(--teal,#5f948c);
  --e-r:var(--r,3px);
  --e-ease:var(--ease,cubic-bezier(.22,.61,.36,1));
  --e-pad:var(--pad-x,clamp(20px,5vw,64px));
  /* chart roles (validated: amber vs focus-blue, dark surface, all pairs) */
  --c-ours:#eda24e;
  --c-focus:#3987e5;
  --c-other:#5c554c;
  --c-grid:#2a2521;
}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.ev-page code{font-family:ui-monospace,"JetBrains Mono",SFMono-Regular,Menlo,monospace;font-size:.84em;color:var(--e-fg);background:var(--e-ink-2);border:1px solid var(--e-line);border-radius:2px;padding:1px 6px;overflow-wrap:anywhere}
.bm-mono{font-family:ui-monospace,"JetBrains Mono",SFMono-Regular,Menlo,monospace;font-size:.8em}

/* ---- hero ---------------------------------------------------------------- */
.bm-hero{position:relative;z-index:2;padding-top:clamp(112px,15vh,160px);padding-bottom:clamp(44px,6vw,80px)}
.bm-hero__head{max-width:960px;margin:0 auto;text-align:center;padding-inline:var(--e-pad)}
.bm-hero__head .kicker{margin-bottom:22px}
.bm-hero__lead{color:var(--e-fg);font-weight:500}
.bm-hero__head .kicker::after{content:"";width:14px;height:1px;background:currentColor;opacity:.6}

/* scrolling wall of shot strips */
.bm-wall{position:relative;margin-top:clamp(40px,5vw,72px);display:flex;flex-direction:column;gap:10px;overflow:hidden;
  -webkit-mask-image:linear-gradient(to right,transparent,#000 12%,#000 88%,transparent);mask-image:linear-gradient(to right,transparent,#000 12%,#000 88%,transparent)}
.bm-wall__row{display:flex;gap:10px;width:max-content;animation:bm-marquee var(--dur,120s) linear infinite}
.bm-wall__row--rev{animation-direction:reverse}
.bm-wall:hover .bm-wall__row{animation-play-state:paused}
.bm-wall__item{flex:0 0 auto;height:clamp(62px,7.2vw,96px);aspect-ratio:calc(var(--n) * 320) / 182;border-radius:2px;border:1px solid var(--e-line);
  background-size:100% 100%;background-color:var(--e-ink-1);opacity:.78;transition:opacity .3s}
.bm-wall__item:hover{opacity:1}
@keyframes bm-marquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@media (prefers-reduced-motion:reduce){.bm-wall__row{animation:none}}

.bm-stats{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));margin-top:clamp(36px,4.5vw,64px);border-top:1px solid var(--e-line);border-bottom:1px solid var(--e-line)}
.bm-stats>div{padding:22px 18px;border-left:1px solid var(--e-line)}
.bm-stats>div:first-child{border-left:0}
.bm-stats dt{font-size:.68rem;letter-spacing:.14em;text-transform:uppercase;color:var(--e-fg-faint)}
.bm-stats dd{margin-top:8px;font-size:clamp(1.6rem,2.6vw,2.3rem);font-weight:600;letter-spacing:-.02em;line-height:1.05}
.bm-stats__sep{color:var(--e-fg-faint);font-weight:400;margin:0 .22em}
.bm-stats dd small{display:block;margin-top:6px;font-size:.74rem;font-weight:400;letter-spacing:.02em;color:var(--e-fg-dim)}

/* ---- categories ladder ---------------------------------------------------- */
.bm-ladder{position:relative}
.bm-ladder__axis{display:flex;align-items:center;gap:14px;margin-bottom:16px;font-size:.68rem;letter-spacing:.14em;text-transform:uppercase;color:var(--e-fg-faint)}
.bm-ladder__axis i{flex:1;height:1px;background:linear-gradient(to right,var(--e-line-2),var(--e-amber));position:relative;}
.bm-ladder__axis i::after{content:"";position:absolute;right:-1px;top:-3px;border-style:solid;border-width:3.5px 0 3.5px 7px;border-color:transparent transparent transparent var(--e-amber)}
.bm-cats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.bm-cat{position:relative;display:flex;flex-direction:column;border:1px solid var(--e-line);border-radius:var(--e-r);background:var(--e-ink-1);overflow:hidden;transition:border-color .2s}
.bm-cat:hover{border-color:var(--e-line-2)}
.bm-cat__video{display:block;width:100%;aspect-ratio:960/544;object-fit:cover;background-color:#000;background-size:calc(var(--n) * 100%) 100%;background-position:0 0;background-repeat:no-repeat;border-bottom:1px solid var(--e-line)}
.bm-cat__body{padding:14px 16px 16px;display:flex;flex-direction:column;gap:6px;flex:1}
.bm-cat__top{display:flex;align-items:baseline;justify-content:space-between;gap:10px}
.bm-cat__code{color:var(--e-amber);font-weight:600;font-size:.86rem;letter-spacing:.04em}
.bm-cat__count{font-size:.72rem;color:var(--e-fg-faint);letter-spacing:.04em}
.bm-cat__name{font-weight:600;font-size:1.02rem;line-height:1.25;letter-spacing:-.01em}
.bm-cat__focus{font-size:.86rem;color:var(--e-fg-dim);line-height:1.45}
.bm-cat--other .bm-cat__code{color:var(--e-teal)}

/* ---- scenarios: modes + unit chart ---------------------------------------- */
.bm-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:clamp(32px,5vw,80px);align-items:start}
.bm-split .section__head{margin-bottom:0}
.bm-modes{display:grid;gap:12px;margin-top:30px}
.bm-mode{border:1px solid var(--e-line);border-radius:var(--e-r);background:var(--e-ink-1);padding:16px 18px;display:grid;grid-template-columns:64px 1fr;gap:2px 16px}
.bm-mode__tag{grid-row:span 2;font-weight:600;color:var(--e-amber);font-size:.9rem;letter-spacing:.04em}
.bm-mode__name{font-weight:600}
.bm-mode__desc{color:var(--e-fg-dim);font-size:.92rem}
.bm-units{border:1px solid var(--e-line);border-radius:var(--e-r);background:var(--e-ink-1);padding:clamp(16px,2vw,26px)}
.bm-units__cap{font-size:.8rem;color:var(--e-fg-faint)}
.bm-units__legend{display:flex;flex-wrap:wrap;gap:6px;margin-top:14px}
.bm-ulg{display:inline-flex;align-items:center;gap:8px;padding:6px 10px;border:1px solid var(--e-line-2);border-radius:100px;font-size:.78rem;color:var(--e-fg-dim);transition:border-color .2s,color .2s,background .2s}
.bm-ulg i{width:9px;height:9px;border-radius:2px;background:var(--sw)}
.bm-ulg b{font-weight:500;color:var(--e-fg-faint)}
.bm-ulg:hover,.bm-ulg[aria-pressed="true"]{border-color:var(--e-fg-dim);color:var(--e-fg);background:var(--e-ink-2)}
.bm-units__grid{display:grid;grid-template-columns:repeat(16,minmax(0,1fr));gap:4px;margin-top:18px}
.bm-unit{aspect-ratio:1;border-radius:3px;background:var(--sw);opacity:.9;transition:opacity .2s,transform .15s var(--e-ease),box-shadow .15s;cursor:pointer;border:0;padding:0}
.bm-unit:hover,.bm-unit:focus-visible{transform:scale(1.25);opacity:1;box-shadow:0 0 0 2px var(--e-ink-1),0 0 0 3px var(--e-fg);outline:none;position:relative;z-index:1}
.bm-units.is-dim .bm-unit{opacity:.14}
.bm-units.is-dim .bm-unit.is-hl{opacity:1}
.bm-units__groups{display:flex;justify-content:space-between;margin-top:10px;font-size:.72rem;color:var(--e-fg-faint);letter-spacing:.04em}
.bm-units__read{margin-top:14px;min-height:3.1em;font-size:.95rem;line-height:1.45;color:var(--e-fg-dim);border-top:1px solid var(--e-line);padding-top:12px}
.bm-units__read b{color:var(--e-fg);font-weight:600}
.bm-units__read .bm-mono{color:var(--e-fg-faint)}

/* ---- metric dimensions ----------------------------------------------------- */
.bm-dims{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.bm-dim{border:1px solid var(--e-line);border-radius:var(--e-r);background:var(--e-ink-1);padding:20px 20px 22px;display:flex;flex-direction:column;gap:10px;transition:border-color .2s}
.bm-dim:hover{border-color:var(--e-line-2)}
.bm-dim__n{font-size:.74rem;color:var(--e-amber);letter-spacing:.08em;display:flex;align-items:center;gap:8px}
.bm-dim__only{font-size:.62rem;letter-spacing:.1em;text-transform:uppercase;color:var(--e-fg-dim);border:1px solid var(--e-line-2);border-radius:100px;padding:2px 8px}
.bm-dim__name{font-size:1.14rem;font-weight:600;letter-spacing:-.01em;line-height:1.2}
.bm-dim__q{color:var(--e-fg);font-size:.95rem;line-height:1.4}
.bm-dim__m{display:flex;flex-wrap:wrap;gap:5px}
.bm-dim__m span{font-size:.72rem;letter-spacing:.03em;padding:3px 8px;border-radius:2px;background:var(--e-ink-3);border:1px solid var(--e-line);color:var(--e-fg-dim)}
.bm-dim__how{color:var(--e-fg-faint);font-size:.84rem;line-height:1.45;margin-top:auto}
.bm-dim--key{border-color:rgba(237,162,78,.45);background:linear-gradient(180deg,rgba(237,162,78,.07),transparent 70%),var(--e-ink-1)}
.bm-dim--key:hover{border-color:var(--e-amber)}
.bm-formula{display:flex;flex-wrap:wrap;align-items:center;gap:5px}
.bm-formula span{font-size:.72rem;padding:3px 7px;border-radius:2px;border:1px solid rgba(237,162,78,.35);color:var(--e-fg)}
.bm-formula b{color:var(--e-amber);font-weight:600}


/* ---- browse ---------------------------------------------------------------- */
.bm-browsehead{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:32px;align-items:end;margin-bottom:clamp(26px,3vw,40px)}
.bm-browsehead .section__head{margin-bottom:0;max-width:720px}

.bm-filters{display:flex;flex-direction:column;gap:10px;position:sticky;top:72px;z-index:20;padding:12px 0;background:linear-gradient(var(--e-ink) 82%,transparent)}
.bm-chiprow{display:flex;flex-wrap:wrap;gap:6px}
.bm-chip{font-size:.8rem;padding:6px 12px;border-radius:100px;border:1px solid var(--e-line-2);color:var(--e-fg-dim);background:var(--e-ink-1);transition:border-color .2s,color .2s,background .2s;white-space:nowrap}
.bm-chip:hover{color:var(--e-fg);border-color:var(--e-fg-dim)}
.bm-chip[aria-pressed="true"]{background:var(--e-amber);border-color:var(--e-amber);color:var(--e-amber-ink);font-weight:600}
.bm-chip small{opacity:.7;margin-left:5px;font-size:.92em}
.bm-filters__end{display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:space-between}
.bm-search input{width:min(360px,70vw);background:var(--e-ink-1);border:1px solid var(--e-line-2);border-radius:var(--e-r);color:var(--e-fg);font:inherit;font-size:.9rem;padding:9px 12px;transition:border-color .2s}
.bm-search input:focus{outline:none;border-color:var(--e-amber)}
.bm-search input::placeholder{color:var(--e-fg-faint)}
.bm-view{margin-top:0}
.bm-count{margin:6px 0 18px;font-size:.8rem;color:var(--e-fg-faint);letter-spacing:.02em}

.bm-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px}
.bm-card{border:1px solid var(--e-line);border-radius:var(--e-r);background:var(--e-ink-1);overflow:hidden;display:flex;flex-direction:column;transition:border-color .2s}
.bm-card:hover{border-color:var(--e-line-2)}
.bm-grid[hidden],.bm-card[hidden],.bm-ptable tr[hidden]{display:none}
.bm-card__media{position:relative;display:block;width:100%;padding:0;cursor:pointer;background:#000}
.bm-strip{display:block;aspect-ratio:320/182;background-size:calc(var(--n) * 100%) 100%;background-position:0 0;background-repeat:no-repeat}
.bm-card__ticks{position:absolute;left:8px;right:8px;bottom:7px;display:flex;gap:3px;opacity:0;transition:opacity .2s}
.bm-card__ticks i{flex:1;height:2px;border-radius:2px;background:rgba(255,255,255,.35)}
.bm-card__ticks i.on{background:var(--e-amber)}
.bm-card__media:hover .bm-card__ticks,.bm-card__media:focus-visible .bm-card__ticks{opacity:1}
.bm-card__play{position:absolute;right:10px;top:10px;width:34px;height:34px;border-radius:50%;background:rgba(11,10,9,.55);border:1px solid rgba(255,255,255,.18);backdrop-filter:blur(6px);opacity:0;transition:opacity .2s}
.bm-card__play::after{content:"";position:absolute;left:13px;top:10px;border-style:solid;border-width:7px 0 7px 11px;border-color:transparent transparent transparent var(--e-fg)}
.bm-card__media:hover .bm-card__play{opacity:1}
.bm-card__media:focus-visible{outline:2px solid var(--e-amber);outline-offset:-2px}
.bm-card__body{padding:12px 14px 14px;display:flex;flex-direction:column;gap:10px}
.bm-card__meta{display:flex;align-items:center;gap:10px;font-size:.74rem;color:var(--e-fg-faint);letter-spacing:.02em}
.bm-card__id{font-family:ui-monospace,"JetBrains Mono",SFMono-Regular,Menlo,monospace;color:var(--e-fg);font-size:.8rem}
.bm-card__dl{margin-left:auto;border:1px solid var(--e-line-2);border-radius:2px;padding:1px 7px;color:var(--e-fg-dim);transition:color .2s,border-color .2s}
.bm-card__dl:hover{color:var(--e-amber);border-color:var(--e-amber)}
.bm-prompts{list-style:none;display:flex;flex-direction:column;gap:12px}
.bm-prompts li{display:flex;flex-direction:column;align-items:flex-start;gap:5px}
.bm-task{font-size:.6rem;letter-spacing:.1em;text-transform:uppercase;color:var(--e-fg-faint);white-space:nowrap;border:1px solid var(--e-line-2);border-radius:2px;padding:1px 6px}
.bm-task[data-scope="global"]{color:var(--e-teal);border-color:rgba(95,148,140,.45)}
.bm-prompt{font-size:.9rem;line-height:1.4;color:var(--e-fg)}
.bm-prompt mark{background:rgba(237,162,78,.28);color:inherit;border-radius:2px}
.bm-ref{display:flex;flex-direction:column;gap:5px;margin-top:4px;width:100%}
.bm-ref__lbl{font-size:.64rem;letter-spacing:.08em;text-transform:uppercase;color:var(--e-fg-faint)}
.bm-ref__pair{display:flex;align-items:center;gap:7px;width:100%}
.bm-ref__pair img{display:block;width:100%;height:auto;aspect-ratio:320/182;object-fit:cover;border-radius:2px;border:1px solid var(--e-line-2)}
.bm-ref__pair img.is-edit{border-color:var(--e-amber)}
.bm-ref__pair>a,.bm-ref__pair>img,.bm-ref__seek{flex:1;min-width:0;padding:0}
.bm-ref__pair a:hover img.is-edit,.bm-ref__pair:hover img.is-edit{box-shadow:0 0 0 1px var(--e-amber)}
.bm-ref__pair i{flex:0 0 auto;font-style:normal;color:var(--e-amber);font-weight:600;font-size:.9rem}
.bm-ref__seek{cursor:pointer}
.bm-ref__seek:hover img{border-color:var(--e-fg-dim)}
.bm-prompts--lg .bm-ref{max-width:420px}
.bm-more{display:flex;justify-content:center;margin-top:26px}
.bm-more[hidden]{display:none}

.bm-tablewrap{overflow-x:auto;-webkit-overflow-scrolling:touch}
.bm-tablewrap[hidden]{display:none}
/* themed horizontal scrollbar for wide tables */
.bm-tablewrap{scrollbar-width:thin;scrollbar-color:var(--e-line-2) transparent;padding-bottom:10px}
.bm-tablewrap::-webkit-scrollbar{height:16px}
.bm-tablewrap::-webkit-scrollbar-track{background:var(--e-ink-2);border-radius:100px}
.bm-tablewrap::-webkit-scrollbar-thumb{background:var(--e-line-2);border-radius:100px;border:4px solid var(--e-ink-2)}
.bm-tablewrap::-webkit-scrollbar-thumb:hover{background:var(--e-fg-faint)}
.bm-tablewrap::-webkit-scrollbar-thumb:active{background:var(--e-amber)}
.bm-ptable{width:100%;border-collapse:collapse;font-size:.88rem}
.bm-ptable th{position:sticky;top:0;text-align:left;font-size:.66rem;letter-spacing:.12em;text-transform:uppercase;color:var(--e-fg-faint);font-weight:500;padding:10px 12px;border-bottom:1px solid var(--e-line-2);background:var(--e-ink)}
.bm-ptable td{padding:10px 12px;border-bottom:1px solid var(--e-line);vertical-align:top;color:var(--e-fg-dim)}
.bm-ptable td:nth-child(4){color:var(--e-fg);min-width:320px}
.bm-ptable td:first-child,.bm-ptable td:last-child{white-space:nowrap}
.bm-ptable a{color:var(--e-fg-dim);text-decoration:underline;text-decoration-color:var(--e-line-2);text-underline-offset:3px}
.bm-ptable a:hover{color:var(--e-amber)}
.bm-ptable tbody tr:hover td{background:var(--e-ink-1)}

/* browse: V2V / IV2V setting — references only in IV2V */
.bm-bmode{display:flex;flex-direction:column;align-items:flex-end;gap:8px}
.bm-bmode .toggle{margin-top:0}
.bm-bmode__lbl{font-size:.66rem;letter-spacing:.14em;text-transform:uppercase;color:var(--e-fg-faint)}
html:not(.bm-iv2v) .bm-ref{display:none}
html:not(.bm-iv2v) .bm-ptable th:nth-child(n+6),html:not(.bm-iv2v) .bm-ptable td:nth-child(n+6){display:none}
[data-bmode-show][hidden]{display:none}
.bm-data__lbl{font-size:.66rem;letter-spacing:.14em;text-transform:uppercase;color:var(--e-fg-faint)}
.bm-data{margin-top:clamp(36px,4vw,56px)}
.bm-data__head{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 14px;margin-bottom:12px}
.bm-data__lbl{font-size:.66rem;letter-spacing:.14em;text-transform:uppercase;color:var(--e-fg-faint)}
.bm-data__tag{font-size:.95rem;font-weight:500;color:var(--e-fg)}
.bm-file{border:1px solid var(--e-line-2);border-radius:var(--e-r);background:var(--e-ink-1);overflow:hidden;box-shadow:0 30px 80px -50px rgba(0,0,0,.9)}
.bm-file[hidden]{display:none}
.bm-file__bar{display:flex;align-items:center;gap:12px;padding:12px 16px;background:var(--e-ink-2);border-bottom:1px solid var(--e-line)}
.bm-file__icon{flex:0 0 auto;white-space:nowrap;font-family:ui-monospace,"JetBrains Mono",SFMono-Regular,Menlo,monospace;font-size:.8rem;font-weight:700;color:var(--e-amber-ink);background:var(--e-amber);border-radius:2px;padding:2px 6px;letter-spacing:.04em}
.bm-file__name{display:inline-flex;align-items:center;gap:10px;font-family:ui-monospace,"JetBrains Mono",SFMono-Regular,Menlo,monospace;font-size:1rem;font-weight:600;color:var(--e-fg);transition:color .2s}
.bm-file__name span{text-decoration:underline;text-decoration-color:var(--e-line-2);text-underline-offset:4px;transition:text-decoration-color .2s}
.bm-file__dl{width:30px;height:30px;padding:6px;border:1px solid var(--e-line-2);border-radius:var(--e-r);color:var(--e-amber);background:var(--e-ink-1);transition:background .2s,border-color .2s,color .2s,transform .15s var(--e-ease)}
.bm-file__name:hover{color:var(--e-amber)}
.bm-file__name:hover span{text-decoration-color:var(--e-amber)}
.bm-file__name:hover .bm-file__dl{background:var(--e-amber);border-color:var(--e-amber);color:var(--e-amber-ink);transform:translateY(1px)}
.bm-file__meta{margin-left:auto;font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;color:var(--e-fg-faint)}
.bm-file pre{margin:0;font-family:ui-monospace,"JetBrains Mono",SFMono-Regular,Menlo,monospace;font-size:.8rem;line-height:1.7;white-space:pre-wrap;overflow-wrap:anywhere;color:var(--e-fg-dim)}
.bm-file__row{padding:16px 18px;border-bottom:1px dashed var(--e-line)}
.bm-file__tree{padding:14px 18px 16px;color:var(--e-fg-faint)}
.bm-file .j-k{color:var(--e-fg)}
.bm-file .j-s{color:#c9b48f}
.bm-file .j-n{color:var(--e-amber)}
.bm-file .j-new .j-k{color:var(--e-amber)}
.bm-file .t-dir{color:var(--e-fg-dim)}
.bm-file .t-hl{color:var(--e-amber)}
.bm-file .t-c{color:var(--e-fg-faint)}
@media (max-width:900px){.bm-bmode{align-items:flex-start}}

/* ---- player dialog --------------------------------------------------------- */
.bm-player{overflow:auto;margin:auto;border:1px solid var(--e-line-2);border-radius:var(--e-r);background:var(--e-ink-1);color:var(--e-fg);padding:0;width:min(1040px,94vw);max-height:92vh;box-shadow:0 40px 120px -30px rgba(0,0,0,.9)}
.bm-player::backdrop{background:rgba(5,4,3,.78);backdrop-filter:blur(6px)}
.bm-player__inner{display:flex;flex-direction:column}
.bm-player__bar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px 10px 16px;border-bottom:1px solid var(--e-line);background:var(--e-ink-2)}
.bm-player__title{font-size:.8rem;color:var(--e-fg-dim);letter-spacing:.02em}
.bm-player__title b{color:var(--e-fg);font-weight:600;margin-right:8px}
.bm-player__close{width:34px;height:34px;display:grid;place-items:center;border-radius:var(--e-r);color:var(--e-fg-dim);transition:color .2s,background .2s}
.bm-player__close:hover{color:var(--e-fg);background:var(--e-ink-3)}
.bm-player__close svg{width:18px;height:18px}
.bm-player__video{width:100%;aspect-ratio:960/544;background:#000}
.bm-player__shots{display:flex;gap:3px;padding:10px 12px 0}
.bm-shotbtn{flex:1;min-width:0;position:relative;border-radius:2px;overflow:hidden;border:1px solid var(--e-line);padding:0;transition:border-color .2s,opacity .2s;opacity:.6}
.bm-shotbtn{cursor:default}
.bm-shotbtn.is-on{border-color:var(--e-amber);opacity:1}
.bm-shotbtn span{display:block;aspect-ratio:320/182;background-size:calc(var(--n) * 100%) 100%}
.bm-shotbtn em{position:absolute;left:5px;bottom:3px;font-style:normal;font-size:.6rem;letter-spacing:.06em;color:var(--e-fg);text-shadow:0 1px 4px #000}
.bm-prompts--lg{padding:14px 16px 18px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 24px}
@media (max-width:760px){.bm-prompts--lg{grid-template-columns:1fr}}
.bm-prompts--lg .bm-prompt{font-size:1rem;color:var(--e-amber);font-weight:500}

/* ---- results --------------------------------------------------------------- */
.bm-reshead{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:20px 40px;margin-bottom:clamp(26px,3vw,40px)}
.bm-reshead .section__head{margin-bottom:0}
.bm-task-toggle{margin-top:0}
.bm-charts{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px}
.bm-chart{border:1px solid var(--e-line);border-radius:var(--e-r);background:var(--e-ink-1);padding:clamp(18px,2vw,28px);display:flex;flex-direction:column;min-width:0}
.bm-chart__head{display:flex;flex-direction:column;gap:4px;margin-bottom:20px}
.bm-chart__title{font-weight:600;font-size:1.08rem;letter-spacing:-.01em}
.bm-chart__sub{font-size:.8rem;color:var(--e-fg-faint)}
.bm-chart__foot{margin-top:14px;font-size:.76rem;color:var(--e-fg-faint);line-height:1.5}

/* bar chart (HTML) */
.bm-bars{display:flex;flex-direction:column;gap:4px;flex:1;justify-content:center}
.bm-bargroup{font-size:.66rem;letter-spacing:.14em;text-transform:uppercase;color:var(--e-fg-faint);margin:14px 0 4px}
.bm-bargroup:first-child{margin-top:0}
.bm-bar{display:grid;grid-template-columns:minmax(118px,32%) 1fr;align-items:center;gap:14px;padding:8px 0;cursor:default;border-radius:2px;position:relative}
.bm-bar__name{font-size:.88rem;color:var(--e-fg-dim);text-align:right;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.bm-bar__name small{display:block;font-size:.66rem;letter-spacing:.06em;color:var(--e-fg-faint);text-transform:uppercase;margin-top:2px}
.bm-bar__track{position:relative;height:22px;display:flex;align-items:center;margin-right:52px}
.bm-bar__track::before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(to right,var(--c-grid) 0 1px,transparent 1px 20%);pointer-events:none}
.bm-bar__fill{position:relative;height:18px;border-radius:0 4px 4px 0;background:var(--c-other);width:0;transition:width .8s var(--e-ease),background .2s}
.bm-bar__val{position:absolute;top:50%;transform:translateY(-50%);transition:left .8s var(--e-ease);font-size:.84rem;color:var(--e-fg-dim);font-variant-numeric:tabular-nums;white-space:nowrap}
.bm-bar.is-ours .bm-bar__fill{background:var(--c-ours)}
.bm-bar.is-ours .bm-bar__name{color:var(--e-fg);font-weight:600}
.bm-bar.is-ours .bm-bar__val{color:var(--e-fg);font-weight:600}
.bm-bar.is-focus .bm-bar__fill{background:var(--c-focus)}
.bm-bar:hover .bm-bar__fill{filter:brightness(1.18)}
.bm-bar:hover .bm-bar__name{color:var(--e-fg)}
.bm-axis{display:grid;grid-template-columns:minmax(118px,32%) 1fr;gap:14px;margin-top:6px}
.bm-axis__ticks{margin-right:52px;display:flex;justify-content:space-between;font-size:.68rem;color:var(--e-fg-faint);font-variant-numeric:tabular-nums}

/* radar (SVG) */
.bm-radar{position:relative;width:100%;max-width:620px;margin:-8px auto 0}
.bm-radar svg{display:block;width:100%;height:auto;overflow:visible}
.bm-radar .r-grid{fill:none;stroke:var(--c-grid);stroke-width:1}
.bm-radar .r-spoke{stroke:var(--c-grid);stroke-width:1}
.bm-radar .r-ring-lbl{fill:var(--e-fg-faint);font-size:10px;font-variant-numeric:tabular-nums}
.bm-radar .r-lbl{fill:var(--e-fg-dim);font-size:13.5px;font-weight:500;cursor:default;transition:fill .2s}
.bm-radar .r-lbl.is-key{fill:var(--e-fg);font-weight:600}
.bm-radar .r-axis-hit{fill:transparent;cursor:pointer}
.bm-radar .r-axis-hit:hover+.r-lbl,.bm-radar .r-lbl.is-hover{fill:var(--e-amber)}
.bm-radar .r-shape{fill:none;stroke-width:1.25;stroke:var(--c-other);stroke-linejoin:round;transition:stroke .25s,stroke-width .25s,opacity .25s;cursor:pointer}
.bm-radar .r-shape.is-open{stroke-dasharray:3 3;opacity:.8}
.bm-radar .r-shape.is-focus{stroke:var(--c-focus);stroke-width:2;stroke-dasharray:none;opacity:1}
.bm-radar .r-shape.is-ours{stroke:var(--c-ours);stroke-width:2.2;fill:rgba(237,162,78,.1)}
.bm-radar .r-dot{stroke:var(--e-ink-1);stroke-width:2}
.bm-radar .r-hl{stroke:var(--e-fg-faint);stroke-width:1;stroke-dasharray:2 3;opacity:0;transition:opacity .2s}
.bm-radar .r-hl.on{opacity:1}
.bm-tip{position:absolute;z-index:5;pointer-events:none;background:rgba(21,18,15,.96);border:1px solid var(--e-line-2);border-radius:var(--e-r);padding:10px 12px;font-size:.78rem;min-width:190px;box-shadow:0 14px 40px -12px rgba(0,0,0,.8);opacity:0;transform:translateY(4px);transition:opacity .15s,transform .15s}
.bm-tip.on{opacity:1;transform:none}
.bm-tip__h{font-weight:600;color:var(--e-fg);margin-bottom:6px;font-size:.82rem}
.bm-tip__r{display:grid;grid-template-columns:10px 1fr auto;gap:8px;align-items:center;color:var(--e-fg-dim);line-height:1.6}
.bm-tip__r i{width:10px;height:2px;border-radius:2px;background:var(--c-other)}
.bm-tip__r.is-ours{color:var(--e-fg);font-weight:600}
.bm-tip__r.is-ours i{background:var(--c-ours);height:3px}
.bm-tip__r.is-focus{color:var(--e-fg)}
.bm-tip__r.is-focus i{background:var(--c-focus);height:3px}
.bm-tip__r b{font-weight:500;font-variant-numeric:tabular-nums}
.bm-tip__n{margin-top:6px;color:var(--e-fg-faint);font-size:.7rem}

.bm-legend{display:flex;flex-wrap:wrap;justify-content:center;gap:6px;margin-top:16px}
.bm-lg{display:inline-flex;align-items:center;gap:8px;font-size:.8rem;padding:5px 11px;border:1px solid var(--e-line-2);border-radius:100px;color:var(--e-fg-dim);transition:border-color .2s,color .2s,background .2s}
.bm-lg i{width:14px;height:2px;border-radius:2px;background:var(--c-other)}
.bm-lg.is-open i{background:repeating-linear-gradient(to right,var(--c-other) 0 3px,transparent 3px 6px)}
.bm-lg:hover{color:var(--e-fg);border-color:var(--e-fg-dim)}
.bm-lg.is-ours{color:var(--e-fg);font-weight:600;cursor:default;border-color:rgba(237,162,78,.5)}
.bm-lg.is-ours i{background:var(--c-ours);height:3px}
.bm-lg[aria-pressed="true"]{color:var(--e-fg);border-color:var(--c-focus);background:rgba(57,135,229,.1)}
.bm-lg[aria-pressed="true"] i{background:var(--c-focus);height:3px}

/* full results table */
.bm-full{margin-top:16px;border:1px solid var(--e-line);border-radius:var(--e-r);background:var(--e-ink-1);padding:clamp(18px,2vw,28px)}
.bm-full__head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px 20px;margin-bottom:16px}
.bm-full__title{font-size:1.08rem;font-weight:600;letter-spacing:-.01em}
.bm-full__legend{font-size:.76rem;color:var(--e-fg-faint)}
.bm-full__legend b{color:var(--e-fg)}
.bm-full__legend u{color:var(--e-fg-dim);text-decoration-color:var(--e-fg-faint);text-underline-offset:3px}
.bm-rtable{border-collapse:separate;border-spacing:0;font-size:.84rem;min-width:100%;font-variant-numeric:tabular-nums}
.bm-rtable th,.bm-rtable td{padding:9px 10px;text-align:center;white-space:nowrap;border-bottom:1px solid var(--e-line)}
.bm-rtable thead th{font-weight:500;color:var(--e-fg-faint);font-size:.7rem;letter-spacing:.04em}
.bm-rtable thead tr:first-child th{font-size:.66rem;letter-spacing:.1em;text-transform:uppercase;color:var(--e-fg-dim);border-bottom:1px solid var(--e-line-2);white-space:normal;line-height:1.25;vertical-align:bottom}
.bm-rtable thead th.is-key{color:var(--e-amber)}
.bm-rtable .dimstart{border-left:1px solid var(--e-line)}
.bm-rtable th.rowh,.bm-rtable td.rowh{position:sticky;left:0;z-index:2;text-align:left;background:var(--e-ink-1);padding-right:18px}
.bm-rtable td{color:var(--e-fg-dim)}
.bm-rtable td.best{color:var(--e-fg);font-weight:700}
.bm-rtable td.second{text-decoration:underline;text-decoration-color:var(--e-fg-faint);text-underline-offset:3px;color:var(--e-fg)}
.bm-rtable td.key{background:rgba(237,162,78,.04)}
.bm-rtable tr.grp td{font-size:.64rem;letter-spacing:.14em;text-transform:uppercase;color:var(--e-fg-faint);text-align:left;padding-top:16px;border-bottom-color:var(--e-line-2)}
.bm-rtable tr.grp td.rowh{background:var(--e-ink-1)}
.bm-rtable tr.is-ours td{background:rgba(237,162,78,.06)}
.bm-rtable tr.is-ours td.rowh{color:var(--e-fg);font-weight:600;box-shadow:inset 3px 0 0 var(--c-ours);background:#1a150f}
.bm-rtable tbody tr:not(.grp):hover td{background:var(--e-ink-2)}
.bm-rtable tbody tr.is-ours:hover td.rowh{background:#1f1911}

/* ---- responsive ------------------------------------------------------------ */
@media (max-width:1100px){
  .bm-dims{grid-template-columns:repeat(2,minmax(0,1fr))}
  .bm-charts{grid-template-columns:1fr}
  .bm-stats{grid-template-columns:repeat(3,minmax(0,1fr))}
  .bm-stats>div:nth-child(4){border-left:0}
  .bm-stats>div:nth-child(n+4){border-top:1px solid var(--e-line)}
  .bm-ladder__axis i{max-width:none}
}
@media (max-width:900px){
  .bm-split{grid-template-columns:1fr}
  .bm-browsehead{grid-template-columns:1fr}
}
@media (max-width:620px){
  .bm-cats{grid-template-columns:repeat(2,minmax(0,1fr))}
  .bm-cat__focus{display:none}
  .bm-dims{grid-template-columns:1fr}
  .bm-stats{grid-template-columns:repeat(2,minmax(0,1fr))}
  .bm-stats>div:nth-child(odd){border-left:0}
  .bm-stats>div:nth-child(4){border-left:1px solid var(--e-line)}
  .bm-stats>div:nth-child(n+3){border-top:1px solid var(--e-line)}
  .bm-units__grid{grid-template-columns:repeat(12,minmax(0,1fr))}
  .bm-grid{grid-template-columns:1fr}
  .bm-filters{position:static}
  .bm-chiprow{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;margin-inline:calc(-1 * var(--e-pad));padding-inline:var(--e-pad)}
  .bm-chiprow::-webkit-scrollbar{display:none}
  .bm-bar{grid-template-columns:112px 1fr;gap:10px}
  .bm-bar__name{font-size:.8rem}
  .bm-axis{grid-template-columns:112px 1fr;gap:10px}
  .bm-radar .r-lbl{font-size:16px}
  .bm-mode{grid-template-columns:1fr}
  .bm-mode__tag{grid-row:auto}
}

/* ==========================================================================
   FULL EVAL RESULTS (fe-)
   ========================================================================== */
.fe-head{position:relative;z-index:2;padding-top:clamp(104px,13vh,136px);padding-bottom:clamp(22px,2.6vw,34px);display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:24px 48px}
.fe-head__text{max-width:720px}
.fe-title{font-size:clamp(1.9rem,3.8vw,3.1rem);font-weight:600;line-height:1.05;letter-spacing:-.028em;margin-top:18px}
.fe-sub{margin:16px 0 0;text-align:left;max-width:60ch}
.fe-head__side{display:flex;flex-direction:column;align-items:flex-end;gap:16px}
.fe-stats{display:flex;gap:0;border:1px solid var(--e-line);border-radius:var(--e-r)}
.fe-stats>div{padding:10px 18px;border-left:1px solid var(--e-line)}
.fe-stats>div:first-child{border-left:0}
.fe-stats dt{font-size:.62rem;letter-spacing:.14em;text-transform:uppercase;color:var(--e-fg-faint)}
.fe-stats dd{margin-top:4px;font-size:1.3rem;font-weight:600;letter-spacing:-.01em}
.fe-setting{margin-top:0}

.fe-explorer{position:relative;z-index:2;display:grid;grid-template-columns:minmax(260px,320px) minmax(0,1fr);gap:clamp(16px,1.8vw,26px);align-items:start;padding-bottom:clamp(40px,5vw,72px)}

/* scenario list */
.fe-side{position:sticky;top:84px;display:flex;flex-direction:column;border:1px solid var(--e-line);border-radius:var(--e-r);background:var(--e-ink-1);max-height:calc(100vh - 100px);overflow:hidden}
.fe-side__filters{padding:12px;border-bottom:1px solid var(--e-line);display:flex;flex-direction:column;gap:8px}
.fe-search input{width:100%}
.fe-selects{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.fe-selects select{width:100%;appearance:none;background:var(--e-ink-2) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath d='M3 4.5 6 7.5 9 4.5' stroke='%23a79f92' stroke-width='1.4' fill='none' stroke-linecap='round'/%3E%3C/svg%3E") no-repeat right 8px center/12px;border:1px solid var(--e-line-2);border-radius:var(--e-r);color:var(--e-fg);font:inherit;font-size:.8rem;padding:7px 26px 7px 9px;cursor:pointer}
.fe-selects select:focus{outline:none;border-color:var(--e-amber)}
.fe-side__count{font-size:.72rem;color:var(--e-fg-faint);letter-spacing:.02em}
.fe-side__scroll{overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--e-line-2) transparent}
.fe-side__scroll::-webkit-scrollbar{width:10px}
.fe-side__scroll::-webkit-scrollbar-thumb{background:var(--e-line-2);border-radius:100px;border:3px solid var(--e-ink-1)}
.fe-list{list-style:none;margin:0;padding:6px}
.fe-item[hidden]{display:none}
.fe-item__btn{display:grid;grid-template-columns:72px minmax(0,1fr);gap:10px;width:100%;text-align:left;padding:7px;border-radius:var(--e-r);border:1px solid transparent;transition:background .15s,border-color .15s}
.fe-item__btn:hover{background:var(--e-ink-2)}
.fe-item.is-active .fe-item__btn{background:var(--e-ink-3);border-color:rgba(237,162,78,.5)}
.fe-item__thumb{display:block;aspect-ratio:16/9;border-radius:2px;background-size:calc(var(--n) * 100%) 100%;background-position:0 0;background-color:#000}
.fe-item__txt{display:flex;flex-direction:column;gap:3px;min-width:0}
.fe-item__meta{display:flex;align-items:baseline;gap:8px;font-size:.66rem;letter-spacing:.04em;color:var(--e-fg-faint)}
.fe-item__id{font-family:ui-monospace,"JetBrains Mono",SFMono-Regular,Menlo,monospace;color:var(--e-fg-dim)}
.fe-item__task{text-transform:uppercase;letter-spacing:.08em;font-size:.6rem}
.fe-item__instr{font-size:.8rem;line-height:1.3;color:var(--e-fg);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.fe-item.is-active .fe-item__id{color:var(--e-amber)}

/* viewer */
.fe-viewer{min-width:0;display:flex;flex-direction:column;gap:12px}
.fe-scn{display:flex;align-items:center;gap:14px}
.fe-scn__nav{display:flex;gap:6px;flex:0 0 auto}
.fe-scn__nav .railbtn{width:38px;height:38px}
.fe-scn__text{min-width:0}
.fe-scn__meta{font-size:.72rem;letter-spacing:.04em;color:var(--e-fg-faint);display:flex;flex-wrap:wrap;gap:4px 10px;align-items:center}
.fe-scn__meta .bm-mono{color:var(--e-fg-dim)}
.fe-scn__instr{margin-top:3px;font-size:clamp(1.02rem,1.3vw,1.2rem);font-weight:600;color:var(--e-amber);letter-spacing:-.01em;line-height:1.3}

.fe-stage{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.fe-big{position:relative;margin:0;border:1px solid var(--e-line);border-radius:var(--e-r);overflow:hidden;background:#000;aspect-ratio:960/544}
.fe-big--focus{border-color:rgba(237,162,78,.55)}
.fe-big video,.fe-tile__media video{display:block;width:100%;height:100%;object-fit:cover;background:#000}
.fe-label{position:absolute;left:10px;top:9px;z-index:2;font-size:.76rem;font-weight:600;letter-spacing:.01em;color:var(--e-fg);text-shadow:0 1px 5px rgba(0,0,0,.9),0 0 2px rgba(0,0,0,.6);display:flex;align-items:center;gap:7px;pointer-events:none}
.fe-label--edit{color:var(--e-amber)}
.fe-label small{font-weight:500;font-size:.64rem;letter-spacing:.1em;text-transform:uppercase;color:var(--e-fg-dim)}
.fe-badge{position:absolute;right:8px;top:8px;z-index:2;font-size:.6rem;letter-spacing:.08em;text-transform:uppercase;padding:3px 7px;border-radius:2px;background:rgba(11,10,9,.72);border:1px solid rgba(255,255,255,.14);color:var(--e-fg-dim);backdrop-filter:blur(6px);pointer-events:none}
.fe-badge.is-held{color:var(--e-amber);border-color:rgba(237,162,78,.5)}
.fe-empty{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:12px;text-align:center;color:var(--e-fg-faint);font-size:.78rem;line-height:1.35;background:repeating-linear-gradient(135deg,var(--e-ink-1) 0 10px,var(--e-ink-2) 10px 20px)}
.fe-empty svg{width:22px;height:22px;opacity:.8}
.fe-refimg{display:block;width:100%;height:100%;object-fit:cover}

/* transport */
.fe-transport{display:flex;align-items:center;gap:14px;padding:8px 12px;border:1px solid var(--e-line);border-radius:var(--e-r);background:var(--e-ink-1)}
.fe-play{flex:0 0 auto;width:38px;height:38px;display:grid;place-items:center;border-radius:50%;background:var(--e-amber);color:var(--e-amber-ink);transition:transform .12s,background .2s}
.fe-play:hover{background:var(--amber-hi,#f6b667)}
.fe-play:active{transform:scale(.94)}
.fe-play svg{width:18px;height:18px}
.fe-play .i-pause{display:none}
.fe-play[aria-pressed="true"] .i-play{display:none}
.fe-play[aria-pressed="true"] .i-pause{display:block}
.fe-timeline{position:relative;flex:1;height:28px;cursor:pointer;touch-action:none}
.fe-timeline:focus-visible{outline:2px solid var(--e-amber);outline-offset:3px;border-radius:2px}
.fe-timeline__shots{position:absolute;left:0;right:0;top:9px;height:10px;display:flex;gap:2px}
.fe-timeline__shots span{height:100%;background:var(--e-ink-3);border-radius:2px;position:relative}
.fe-timeline__shots span::after{content:attr(data-n);position:absolute;left:4px;top:-1px;font-size:.52rem;line-height:12px;color:var(--e-fg-faint);letter-spacing:.04em}
.fe-timeline__fill{position:absolute;left:0;top:9px;height:10px;width:0;background:rgba(237,162,78,.28);border-radius:2px;pointer-events:none}
.fe-timeline__head{position:absolute;top:3px;width:2px;height:22px;margin-left:-1px;left:0;background:var(--e-amber);border-radius:2px;box-shadow:0 0 10px rgba(237,162,78,.6);pointer-events:none}
.fe-timeline__ref{position:absolute;top:1px;width:10px;height:10px;margin-left:-5px;background:var(--e-fg);transform:rotate(45deg);border-radius:1px;box-shadow:0 0 0 2px var(--e-ink-1);cursor:pointer}
.fe-timeline__ref[hidden]{display:none}
.fe-clock{flex:0 0 auto;font-family:ui-monospace,"JetBrains Mono",SFMono-Regular,Menlo,monospace;font-size:.78rem;color:var(--e-fg-dim);min-width:118px;text-align:right;font-variant-numeric:tabular-nums}

/* model grid */
.fe-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(172px,1fr));gap:10px}
.fe-tile{position:relative;border:1px solid var(--e-line);border-radius:var(--e-r);background:var(--e-ink-1);overflow:hidden;transition:border-color .2s,transform .15s var(--e-ease)}
.fe-tile:hover{border-color:var(--e-line-2)}
.fe-tile.is-focus{border-color:var(--e-amber);box-shadow:0 0 0 1px var(--e-amber)}
.fe-tile__pick{display:block;width:100%;padding:0;cursor:pointer}
.fe-tile__media{position:relative;aspect-ratio:960/544;background:#000}
.fe-tile__cap{display:grid;grid-template-columns:1fr auto;grid-template-rows:auto auto;column-gap:8px;row-gap:1px;padding:7px 9px 8px}
.fe-tile__name{grid-column:1/-1;font-size:.8rem;font-weight:600;color:var(--e-fg);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.fe-tile__grp{grid-column:1;grid-row:2;align-self:center;font-size:.56rem;letter-spacing:.1em;text-transform:uppercase;color:var(--e-fg-faint);white-space:nowrap}
.fe-tile.is-ours .fe-tile__name{color:var(--e-amber)}
.fe-tile__dl{grid-column:2;grid-row:2;justify-self:end;align-self:center;font-size:.62rem;letter-spacing:.04em;color:var(--e-fg-faint);border:1px solid var(--e-line-2);border-radius:2px;padding:0 5px;transition:color .2s,border-color .2s}
.fe-tile__dl:hover{color:var(--e-amber);border-color:var(--e-amber)}
.fe-tile--ref .fe-tile__name{color:var(--e-fg-dim)}
.fe-hint{font-size:.74rem;color:var(--e-fg-faint)}
.fe-datasec{padding-top:0}
.fe-data{margin-top:0}

@media (max-width:980px){
  .fe-explorer{grid-template-columns:1fr}
  .fe-side{position:static;max-height:360px}
  .fe-head__side{align-items:flex-start}
}
@media (max-width:620px){
  .fe-stage{grid-template-columns:1fr}
  .fe-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .fe-clock{min-width:0;font-size:.7rem}
  .fe-hint{display:none}
}
