/* Spoof — homepage chrome, same IDs. White / black / blue. No desk revival. */

:root{
  --blue:#2563EB;
  --navy:#1D4ED8;
  --ink:#0B0D10;
  --bone:#F8FAFC;
  --mist:#F4F6FA;
  --ice:#EFF6FF;
  --line:rgba(15,23,42,.10);
}

*{box-sizing:border-box;margin:0;padding:0}
body{
  background:#FFFFFF;color:var(--ink);
  font-family:Inter,system-ui,sans-serif;font-size:16px;line-height:1.5;
  -webkit-font-smoothing:antialiased;overflow-x:hidden;
}
.mono{font-family:'IBM Plex Mono',ui-monospace,monospace;font-variant-numeric:tabular-nums}
:focus-visible{outline:3px solid var(--blue);outline-offset:3px}
.hide{display:none !important}

.wrap{max-width:1100px;margin:0 auto;padding:28px 24px 96px;position:relative;z-index:2}

/* Hero — same voice as the home scoreboard */
.page-hero{padding:48px 24px 8px;max-width:1100px;margin:0 auto}
.page-hero .eyebrow{
  font-family:'IBM Plex Mono',ui-monospace,monospace;
  font-size:12px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;
  color:var(--blue)
}
.page-hero h1{
  margin-top:16px;font-weight:800;text-transform:none;
  font-size:clamp(40px,6.4vw,72px);line-height:.92;letter-spacing:-.055em;
  max-width:14ch
}
.page-hero .lede{
  margin-top:16px;max-width:42ch;font-size:18px;line-height:1.55;opacity:.62
}
#who{
  display:inline-flex;align-items:center;height:36px;margin-top:20px;
  padding:0 14px;background:var(--ink);color:#FFFFFF;text-decoration:none;
  font-size:13px;font-weight:700;border-radius:12px
}
#who:hover{background:var(--blue)}
#who:empty{display:none}

/* Surface — pack card, not a window chrome */
.desk-stage{margin-top:8px}
.desk{
  background:#FFFFFF;color:var(--ink);
  border:1px solid var(--line);border-radius:20px;
  box-shadow:0 1px 2px rgba(15,23,42,.04), 0 16px 48px rgba(15,23,42,.06);
  overflow:hidden
}
.desk-top{
  display:flex;align-items:baseline;justify-content:space-between;gap:16px;
  padding:18px 22px 0
}
.desk-top .dot{display:none}
.desk-top .name{
  font-family:'IBM Plex Mono',ui-monospace,monospace;
  font-size:12px;font-weight:500;letter-spacing:.12em;text-transform:uppercase;
  color:var(--blue)
}
.desk-top .live{
  font-family:'IBM Plex Mono',ui-monospace,monospace;
  font-size:12px;color:rgba(11,13,16,.48)
}
.desk-body{padding:18px 22px 22px}

/* Drop — clean zone, no decorative tiles */
.drop{
  position:relative;min-height:200px;border:1.5px dashed rgba(15,23,42,.16);
  border-radius:16px;overflow:hidden;cursor:pointer;text-align:center;
  background:var(--mist);display:grid;place-items:center;
  transition:border-color .2s,background .2s
}
.drop:hover,.drop:focus-visible,.drop.armed{
  border-color:var(--blue);border-style:solid;background:var(--ice)
}
.drop.loaded{
  border-style:solid;border-color:var(--blue);text-align:left;padding:16px 18px;
  display:flex;align-items:center;justify-content:space-between;gap:16px;
  min-height:0;background:var(--ice)
}
.drop-copy{position:relative;z-index:2;padding:36px 18px}
.drop b{display:block;font-size:22px;font-weight:800;letter-spacing:-.03em;word-break:break-all}
.drop small{display:block;margin-top:7px;opacity:.5;font-size:14px}
.drop.loaded .drop-copy{display:none}

.swap{
  background:var(--ink);color:#FFFFFF;border:0;
  padding:10px 16px;font:inherit;font-size:14px;font-weight:700;
  cursor:pointer;flex:none;border-radius:12px
}
.swap:hover{background:var(--blue)}
.clip-thumb{
  width:46px;aspect-ratio:9/16;border-radius:8px;flex:none;
  background:linear-gradient(165deg,#2563EB,#0B0D10);
  position:relative;overflow:hidden
}
.clip-thumb video,.clip-thumb img{width:100%;height:100%;object-fit:cover;display:block}
.clip-thumb.is-still{aspect-ratio:1}

/* Options */
.opts{margin-top:22px;display:grid;gap:12px;grid-template-columns:1fr 1fr}
.opt{
  background:var(--mist);border:1px solid var(--line);
  border-radius:16px;padding:16px 16px 14px
}
.opt.wide{grid-column:1/-1}
.opt>label{
  display:block;font-size:13px;font-weight:700;margin-bottom:10px;
  letter-spacing:-.01em;color:var(--ink)
}
.hint{margin-top:10px;font-size:13px;opacity:.55;line-height:1.45}
.mix-warn{
  margin-top:10px;padding:10px 12px;font-size:13px;line-height:1.4;
  background:var(--ice);border:1px solid rgba(37,99,235,.28);color:var(--ink);
  border-radius:12px
}
.mix-label{
  color:var(--blue);font-weight:700;letter-spacing:0;text-transform:none;
  font-size:12px;margin-left:8px;vertical-align:middle
}
.desk.is-image .opt-video{display:none}

.seg{display:flex;flex-wrap:wrap;gap:8px}
.seg button{
  flex:1;min-width:72px;background:#FFFFFF;border:1px solid var(--line);
  color:var(--ink);padding:11px 10px;font:inherit;font-size:14px;font-weight:600;
  cursor:pointer;border-radius:12px
}
.seg button:hover:not([disabled]){border-color:var(--blue);color:var(--blue)}
.seg button[aria-pressed="true"]{
  background:var(--blue);color:#FFFFFF;border-color:var(--blue);font-weight:700
}
.seg button[disabled]{opacity:.32;cursor:not-allowed}

.count-look,.look{
  background:#FFFFFF;border:1px solid var(--line);border-radius:12px;padding:12px 14px 11px
}
.looks{display:grid;gap:12px;max-width:none}
.looks.two{grid-template-columns:1fr}
@media (min-width:701px){.looks.two{grid-template-columns:1fr 1fr}}
.look-head{display:flex;justify-content:space-between;align-items:baseline;gap:10px;margin-bottom:10px}
.look-head label{font-size:13px;font-weight:700}
.look-head output{
  font-family:'IBM Plex Mono',ui-monospace,monospace;
  font-size:15px;font-weight:700;color:var(--blue);min-width:2.2ch;text-align:right
}
.count-look .look-head output{font-size:22px;min-width:2.6ch}

.count-look input[type=range],
.look input[type=range]{
  -webkit-appearance:none;appearance:none;width:100%;height:6px;
  background:#E2E8F0;border:0;border-radius:999px;accent-color:var(--blue);cursor:pointer
}
.count-look input[type=range]::-webkit-slider-runnable-track,
.look input[type=range]::-webkit-slider-runnable-track{
  height:6px;background:#E2E8F0;border-radius:999px
}
.count-look input[type=range]::-webkit-slider-thumb,
.look input[type=range]::-webkit-slider-thumb{
  -webkit-appearance:none;appearance:none;width:18px;height:18px;margin-top:-6px;
  background:#FFFFFF;border:3px solid #2563EB;border-radius:50%;cursor:pointer
}
.count-look input[type=range]::-moz-range-track,
.look input[type=range]::-moz-range-track{
  height:6px;background:#E2E8F0;border:0;border-radius:999px
}
.count-look input[type=range]::-moz-range-thumb,
.look input[type=range]::-moz-range-thumb{
  width:14px;height:14px;background:#FFFFFF;border:3px solid #2563EB;
  border-radius:50%;cursor:pointer
}
.look-ends{
  display:flex;justify-content:space-between;margin-top:8px;
  font-size:11px;color:rgba(11,13,16,.42);font-weight:600
}

.opt.auto-owned{position:relative}
.opt.is-auto-locked{opacity:.42;pointer-events:none;user-select:none}
.opt.is-auto-locked input,.opt.is-auto-locked button{cursor:not-allowed}

/* Best — a card, not a 3D stamp */
.best{
  display:block;width:100%;padding:20px 20px 18px;text-align:left;
  background:#FFFFFF;border:1px solid rgba(37,99,235,.22);color:var(--ink);
  cursor:pointer;font:inherit;border-radius:16px
}
.best:hover,.best:focus-visible{border-color:var(--blue);background:var(--ice)}
.best[aria-pressed="true"]{border-color:var(--blue);background:var(--ice)}
.best-kicker{
  display:block;font-family:'IBM Plex Mono',ui-monospace,monospace;
  font-size:11px;font-weight:500;letter-spacing:.12em;text-transform:uppercase;
  color:var(--blue);margin-bottom:8px
}
.best-word{
  display:block;font-size:clamp(26px,4.4vw,36px);font-weight:800;
  letter-spacing:-.045em;line-height:.96
}
.best-word i{display:none}
.best-line{
  display:block;margin-top:10px;font-size:14px;font-weight:500;
  color:rgba(11,13,16,.62);line-height:1.45;max-width:52ch
}
.best-chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:14px}
.best-chips span{
  background:var(--mist);color:var(--ink);border:1px solid var(--line);
  padding:4px 9px;font-size:11px;font-weight:700;border-radius:999px
}

.speed-toggle{
  display:block;width:100%;padding:12px 14px;text-align:center;
  background:#FFFFFF;border:1px solid var(--line);color:var(--ink);
  font:inherit;font-size:15px;font-weight:700;cursor:pointer;border-radius:12px
}
.speed-toggle:hover{border-color:var(--blue);color:var(--blue)}
.speed-toggle[aria-pressed="true"]{
  background:var(--blue);border-color:var(--blue);color:#FFFFFF
}
#drive-dest.hot .speed-toggle{border-color:var(--blue)}
.drive-picked{
  margin-top:10px;font-size:13px;display:flex;align-items:center;gap:10px;flex-wrap:wrap
}
.drive-picked b{font-weight:800}
.drive-clear{
  background:none;border:0;color:var(--blue);font:inherit;font-size:13px;
  font-weight:700;cursor:pointer;padding:0
}

.go{
  display:flex;align-items:center;justify-content:center;
  margin-top:22px;width:100%;height:52px;padding:0 20px;
  background:var(--blue);color:#FFFFFF;border:0;
  font:inherit;font-size:16px;font-weight:800;letter-spacing:-.02em;
  cursor:pointer;border-radius:12px
}
.go:hover:not([disabled]){background:var(--ink)}
.go[disabled]{background:#E2E8F0;color:rgba(15,23,42,.38);cursor:not-allowed}

/* Results */
.idle{
  margin-top:28px;padding:22px;background:var(--mist);
  border:1px solid var(--line);border-radius:20px
}
.idle-head{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:14px;gap:12px}
.idle-head h2{font-size:15px;font-weight:800;letter-spacing:-.02em}
.idle-head span{font-family:'IBM Plex Mono',ui-monospace,monospace;font-size:12px;color:var(--blue)}
.ghost-sheet{display:grid;grid-template-columns:repeat(5,1fr);gap:8px}
.ghost{
  aspect-ratio:9/16;border-radius:8px;
  background:linear-gradient(165deg,hsl(217 80% 42%),#0B0D10)
}
.ghost:nth-child(2){opacity:.86}
.ghost:nth-child(3){opacity:.72}
.ghost:nth-child(4){opacity:.6}
.ghost:nth-child(5){opacity:.48}

.out{margin-top:28px;display:none}
.out.on{display:block}
.out-stage{
  background:#FFFFFF;color:var(--ink);
  border:1px solid var(--line);border-radius:20px;padding:22px;
  box-shadow:0 1px 2px rgba(15,23,42,.04), 0 16px 48px rgba(15,23,42,.06)
}
.out-head{
  display:flex;justify-content:space-between;align-items:baseline;gap:12px;
  padding-bottom:12px;margin-bottom:16px;border-bottom:1px solid var(--line)
}
.out-head h2{font-size:15px;font-weight:800;letter-spacing:-.02em}
.stage-txt{font-size:13.5px;opacity:.55}
#eta{color:var(--blue);opacity:.95}
#eta:not(:empty)::before{content:' \00b7 ';color:var(--ink);opacity:.35}

.cine{
  position:relative;height:8px;background:var(--mist);border-radius:999px;
  overflow:hidden;margin-bottom:18px
}
.cine i{
  display:block;height:100%;width:8%;
  background:var(--blue);transition:width .4s linear;border-radius:999px
}
.cine.work i{animation:cinefill 2.2s ease-in-out infinite}
@keyframes cinefill{0%{width:12%}50%{width:62%}100%{width:28%}}

.uniq-hint{margin:0 0 12px;font-size:13px;font-weight:600;color:rgba(11,13,16,.55)}

.sheet{display:grid;grid-template-columns:repeat(auto-fill,minmax(108px,1fr));gap:10px}
.cell{
  position:relative;aspect-ratio:9/16;background:var(--mist);
  border:1px solid var(--line);border-radius:10px;overflow:hidden;
  display:grid;place-items:center
}
.cell .n{font-family:'IBM Plex Mono',ui-monospace,monospace;font-size:13px;opacity:.35;color:var(--blue)}
.cell.active{border-color:var(--blue);box-shadow:0 0 0 1px var(--blue)}
.spin{
  position:absolute;top:50%;left:50%;width:22px;height:22px;margin:-11px 0 0 -11px;
  border:2px solid rgba(37,99,235,.2);border-top-color:var(--blue);
  border-radius:50%;animation:spin .85s linear infinite
}
.cell.waiting .spin{animation-duration:1.6s}
.cell.ready .spin,.cell.done .spin{display:none}
@keyframes spin{to{transform:rotate(360deg)}}
.cell.ready,.cell.done{border-color:rgba(37,99,235,.35);cursor:pointer}
.cell video,.cell img{width:100%;height:100%;object-fit:cover;display:block}
.cell .tag{
  position:absolute;left:4px;bottom:4px;z-index:2;
  background:rgba(11,13,16,.86);color:#FFFFFF;
  font-family:'IBM Plex Mono',ui-monospace,monospace;font-size:9px;padding:2px 5px;font-weight:700;
  border-radius:4px
}
.cell .geo,.cell .dev{
  position:absolute;z-index:2;font-weight:800;font-size:8px;letter-spacing:.04em;
  text-transform:uppercase;padding:2px 5px;background:#FFFFFF;color:var(--ink);
  border:1px solid var(--line);border-radius:4px
}
.cell .geo{top:4px;left:4px}
.cell .dev{top:4px;right:4px;color:var(--blue)}
.cell.waiting .geo,.cell.waiting .dev,.cell.active .geo,.cell.active .dev{opacity:0}
.cell.is-still{aspect-ratio:1}
.cell .match-tag{
  position:absolute;left:4px;bottom:18px;z-index:2;
  background:rgba(11,13,16,.86);color:#FFFFFF;
  font-family:'IBM Plex Mono',ui-monospace,monospace;font-size:8px;padding:2px 4px;font-weight:800;
  border-radius:4px
}
.cell .match-tag.flag{border:1px solid #FFFFFF}

.dl{
  display:flex;align-items:center;justify-content:center;height:48px;
  background:var(--blue);color:#FFFFFF;text-align:center;text-decoration:none;
  font-weight:800;border-radius:12px;padding:0 18px
}
.dl:hover{background:var(--ink)}
details{margin-top:18px;border-top:1px solid var(--line);padding-top:13px}
summary{cursor:pointer;font-size:14.5px;font-weight:600;opacity:.78}
.recipes{margin-top:13px;overflow-x:auto}
table{border-collapse:collapse;width:100%;font-family:'IBM Plex Mono',ui-monospace,monospace;font-size:12px}
th,td{text-align:right;padding:7px 9px;border-bottom:1px solid var(--line);white-space:nowrap}
th:first-child,td:first-child{text-align:left}
td.chg{text-align:left;white-space:normal;line-height:1.5;opacity:.8}
#recipes th{text-align:left}
th{font-weight:500;opacity:.55}

.err{
  margin-top:16px;padding:14px 16px;background:var(--ice);
  border:1px solid rgba(37,99,235,.22);border-radius:12px;font-size:15px
}

.batch-queue{margin:0 0 16px;display:grid;gap:8px}
.batch-row{
  display:flex;align-items:center;gap:10px;padding:12px 14px;
  background:var(--mist);border:1px solid var(--line);border-radius:12px
}
.batch-row b{flex:1;min-width:0;font-size:13px;font-weight:800;
             white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.batch-row span{flex:none;font-family:'IBM Plex Mono',ui-monospace,monospace;font-size:11px;color:var(--blue)}
.batch-row.flag{border-color:var(--blue);background:var(--ice)}
.batch-row.fail{border-color:rgba(15,23,42,.28)}
.pack{display:grid;gap:22px}
.clip-group{padding-top:4px}
.clip-head{
  display:flex;align-items:baseline;justify-content:space-between;gap:10px;
  margin-bottom:10px;flex-wrap:wrap
}
.clip-head b{font-size:13px;font-weight:800;letter-spacing:-.01em}
.clip-head i{font-style:normal;font-family:'IBM Plex Mono',ui-monospace,monospace;font-size:11px;opacity:.55}

.match-desk{
  margin-top:16px;padding:16px;
  background:var(--mist);border:1px solid var(--line);border-radius:16px
}
.match-desk h3{
  font-size:12px;font-weight:500;letter-spacing:.12em;text-transform:uppercase;
  color:var(--blue);margin-bottom:10px;
  font-family:'IBM Plex Mono',ui-monospace,monospace
}
.match-sum{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;margin-bottom:10px}
.match-sum .bits{
  font-size:clamp(34px,7vw,52px);font-weight:800;letter-spacing:-.05em;
  line-height:.9;color:var(--blue)
}
.match-sum .of{font-size:13px;opacity:.55;max-width:22ch}
.match-sum .stamp{
  font-size:12px;font-weight:800;letter-spacing:.04em;
  padding:5px 9px;border:1px solid var(--line);color:var(--ink);
  background:#FFFFFF;border-radius:999px
}
.match-sum .stamp.warn,.match-sum .stamp.bad{border-color:var(--blue);color:var(--blue)}
.match-meter{height:6px;background:#FFFFFF;border:1px solid var(--line);overflow:hidden;border-radius:999px}
.match-meter i{display:block;height:100%;background:var(--blue);width:0}
.match-scale{
  margin-top:6px;display:flex;justify-content:space-between;
  font-size:11px;color:rgba(11,13,16,.42);font-weight:600
}
.match-rows{display:grid;gap:6px;margin-top:12px}
.match-row{
  display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;
  padding:10px 12px;background:#FFFFFF;border:1px solid var(--line);
  border-radius:12px;font-size:13px
}
.match-row .fn{flex:1;min-width:8ch;font-weight:700}
.match-row .n{font-family:'IBM Plex Mono',ui-monospace,monospace;font-weight:800;color:var(--blue)}
.match-row .st{font-size:11px;font-weight:700;color:rgba(11,13,16,.5)}
.match-row.flag{border-color:var(--blue);background:var(--ice)}
.match-row.flag .st{color:var(--blue)}

.batch-name-row{
  margin-top:16px;padding:16px;background:var(--mist);
  border:1px solid var(--line);border-radius:16px
}
.batch-name-row label{
  display:block;font-size:12px;font-weight:700;margin-bottom:8px
}
.batch-name-row input{
  width:100%;padding:12px;border:1px solid var(--line);border-radius:12px;
  font:inherit;font-size:15px;font-weight:600;background:#FFFFFF;color:var(--ink)
}
.batch-name-row input:focus{border-color:var(--blue);outline:none;box-shadow:0 0 0 3px rgba(37,99,235,.16)}
.batch-name-row p{margin-top:8px;font-size:13px;opacity:.55}

.speed-warn{
  position:fixed;inset:0;z-index:100;display:grid;place-items:center;
  padding:max(16px,env(safe-area-inset-top)) 16px max(16px,env(safe-area-inset-bottom));
  background:rgba(11,13,16,.56)
}
.speed-warn-card{
  position:relative;width:min(440px,100%);background:#FFFFFF;color:var(--ink);
  border:1px solid var(--line);padding:28px 24px 22px;border-radius:20px;
  box-shadow:0 28px 70px rgba(15,23,42,.16)
}
.speed-warn-x{
  position:absolute;top:10px;right:10px;width:40px;height:40px;
  display:grid;place-items:center;background:#FFFFFF;border:1px solid var(--line);
  color:var(--ink);font:700 18px/1 Inter,system-ui,sans-serif;cursor:pointer;
  border-radius:12px
}
.speed-warn-x:hover{background:var(--ink);color:#FFFFFF;border-color:var(--ink)}
.speed-warn-card h2{
  font-size:24px;font-weight:800;letter-spacing:-.04em;
  line-height:1.05;max-width:16ch;padding-right:40px
}
.speed-warn-card p{margin-top:12px;font-size:15px;line-height:1.5;opacity:.68}
.speed-warn-actions{margin-top:22px;display:flex;flex-wrap:wrap;gap:8px}
.speed-warn-actions button{
  flex:1 1 140px;height:48px;padding:0 16px;font:inherit;font-size:15px;
  font-weight:700;cursor:pointer;border-radius:12px
}
.speed-warn-actions .cancel{background:#FFFFFF;color:var(--ink);border:1.5px solid var(--ink)}
.speed-warn-actions .cancel:hover{border-color:var(--blue);color:var(--blue)}
.speed-warn-actions .ok{background:var(--blue);border:0;color:#FFFFFF}
.speed-warn-actions .ok:hover{background:var(--ink)}

@media (max-width:700px){
  .page-hero{padding:28px 20px 4px}
  .wrap{padding:20px 16px 80px}
  .desk-body{padding:14px 14px 18px}
  .desk-top{padding:14px 14px 0}
  .opts{grid-template-columns:1fr}
  .drop{min-height:180px}
  .drop-copy{padding:28px 14px}
  .drop b{font-size:20px}
  .ghost-sheet{grid-template-columns:repeat(4,1fr)}
  .ghost:nth-child(5){display:none}
  .match-sum .of{max-width:none}
  .batch-row{flex-wrap:wrap}
  .batch-row span{width:100%}
}
@media (prefers-reduced-motion:reduce){
  .spin,.cine.work i{animation:none}
  .go,.swap,.dl,.seg button,.speed-toggle{transition:none}
}
