:root{--ink: #e8e4d9;--ink-dim: #9aa0a6;--panel: #262b32;--panel-hi: #333a43;--bg: #1b1f24;--line: #4a525c;--paper: #d9d2bd;--paper-ink: #2b2620;--ok: #6f9e5a;--stop: #c4562f;--escalate: #c99a2e;--accent: #5f9ea0;--px: 4px;--touch: 44px;--font: "Courier New", ui-monospace, monospace;color-scheme:dark}*{box-sizing:border-box}html,body{margin:0;height:100%;background:var(--bg);color:var(--ink);font-family:var(--font);-webkit-font-smoothing:none;font-smooth:never;touch-action:manipulation;-webkit-text-size-adjust:100%;overscroll-behavior:none}img,canvas{image-rendering:pixelated;image-rendering:crisp-edges}#app{min-height:100%;min-height:100dvh;display:flex;flex-direction:column;padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left)}h1,h2,h3{margin:0 0 .5em;letter-spacing:.06em;text-transform:uppercase}h1{font-size:clamp(1.4rem,6vw,2.4rem)}h2{font-size:clamp(1.05rem,4.2vw,1.4rem)}p{margin:0 0 .75em;line-height:1.5}.dim{color:var(--ink-dim)}.panel{background:var(--panel);border:var(--px) solid var(--line);box-shadow:var(--px) var(--px) 0 #000a;padding:calc(var(--px) * 3)}.paper{background:var(--paper);color:var(--paper-ink);border:var(--px) solid #b3aa92;box-shadow:var(--px) var(--px) 0 #0006;padding:calc(var(--px) * 3)}button{font:inherit;color:var(--ink);background:var(--panel-hi);border:var(--px) solid var(--line);box-shadow:var(--px) var(--px) 0 #000a;padding:0 calc(var(--px) * 3);min-height:var(--touch);min-width:var(--touch);text-transform:uppercase;letter-spacing:.08em;cursor:pointer;-webkit-tap-highlight-color:transparent}button:active:not(:disabled){transform:translate(var(--px),var(--px));box-shadow:none}button:disabled{opacity:.45;cursor:not-allowed}button:focus-visible{outline:var(--px) solid var(--accent);outline-offset:var(--px)}@media(hover:hover){button:hover:not(:disabled){background-color:var(--line)}}.btn-ok{background:var(--ok);color:#10160e}.btn-stop{background:var(--stop);color:#1a0c06}input[type=text],input[type=password]{font:inherit;min-height:var(--touch);width:100%;padding:0 calc(var(--px) * 2);color:var(--paper-ink);background:var(--paper);border:var(--px) solid var(--line)}.screen{flex:1;display:flex;flex-direction:column;gap:calc(var(--px) * 3);padding:calc(var(--px) * 3);max-width:900px;width:100%;margin:0 auto}.stack{display:flex;flex-direction:column;gap:calc(var(--px) * 3)}.spacer{flex:1}@media(prefers-reduced-motion:reduce){*{animation-duration:.01ms!important;transition-duration:.01ms!important}}.start-screen{position:relative;isolation:isolate;min-height:100%}.map-layer{position:absolute;inset:0;z-index:0;overflow:hidden;pointer-events:none;container-type:size}.map-stage{position:absolute;top:0;left:50%;translate:-50% 0;width:100%;height:100%}.map-stage-art{background-image:var(--start-art);background-size:cover;background-position:center top;image-rendering:pixelated}@supports (width: 1cqw){.map-stage{width:max(100cqw,calc(100cqh * 1536 / 2752));height:auto;aspect-ratio:1536 / 2752}.map-stage-art{background-size:100% 100%}}.map-figure{position:absolute;left:52%;top:63%;translate:-50% -100%;display:block;height:clamp(75px,11%,200px);aspect-ratio:1 / 1}@media(min-aspect-ratio:1 / 1){.map-figure{left:30%;top:25%;height:9.5%}}.start-screen:before{content:"";position:absolute;inset:0;background:linear-gradient(to bottom,#10131899,#10131840 20%,#10131826 45%,#101318cc 74%,#101318f2);pointer-events:none;z-index:1}.start-screen>*:not(.map-layer){position:relative;z-index:3}.start-player{display:flex;flex-direction:column;gap:calc(var(--px) * 2);background:#161b22cc;border:var(--px) solid var(--line);box-shadow:var(--px) var(--px) 0 #000a;padding:calc(var(--px) * 2)}.player-row{display:flex;align-items:center;gap:calc(var(--px) * 3);min-width:0}.player-badge{display:flex;align-items:center;gap:calc(var(--px) * 3);flex:1;min-width:0;padding:0;background:none;border:none;box-shadow:none;color:inherit;text-transform:none;letter-spacing:0;text-align:left;line-height:normal;min-height:56px}.avatar{flex:none;overflow:hidden;width:56px;height:56px;display:block;background:var(--paper);border:var(--px) solid var(--line);box-shadow:inset 0 calc(var(--px) * 1.5) 0 var(--cord, var(--line));image-rendering:pixelated}.player-name{flex:1;min-width:0;display:flex;flex-direction:column;gap:calc(var(--px) / 2)}.player-name strong{font-size:1.1rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.player-signout{flex:none;align-self:center;padding:0 0 1px;background:none;border:none;border-bottom:var(--px) solid currentColor;box-shadow:none;min-height:var(--touch);font-size:.7rem;letter-spacing:.08em;text-transform:uppercase;color:var(--accent)}.player-status{display:flex;align-items:baseline;gap:calc(var(--px) * 2);border-top:var(--px) solid var(--line);padding-top:calc(var(--px) * 2)}.start-week{display:flex;min-width:0;margin:0;font-size:.75rem;white-space:nowrap}.week-title{min-width:0;overflow:hidden;text-overflow:ellipsis}.week-count{flex:none}.week-count:before{content:"·";margin:0 .45em}.player-score{display:flex;align-items:baseline;gap:calc(var(--px) * 2);margin-left:auto;flex:none}.player-score strong{font-size:1.3rem;font-variant-numeric:tabular-nums;color:var(--accent)}.menu-screen:before{content:none}.start-title h1{margin:0;text-shadow:calc(var(--px) / 2) calc(var(--px) / 2) 0 #000}.start-title p{margin:var(--px) 0 0}.start-actions{display:flex;align-items:stretch;gap:calc(var(--px) * 2);width:100%;max-width:380px;margin-inline:auto}.start-actions .btn-start{flex:3;min-height:52px;font-size:.95rem}.start-actions .btn-board{flex:2;min-height:52px;font-size:.78rem;padding:0 calc(var(--px) * 2)}.btn-start{min-height:56px;font-size:1rem}.name-screen{justify-content:center}.name-screen:before{background:linear-gradient(to bottom,#101318cc,#101318b3 45%,#101318e6)}.name-form{background:#161b22e8}.name-form .doc-label{display:block;margin-bottom:var(--px)}.name-hint{margin:0;font-size:.75rem}.welcome-back{margin:0;font-size:clamp(1rem,4.4vw,1.25rem)}.welcome-line{margin:0;font-size:clamp(.82rem,3.4vw,.95rem)}.welcome-line strong{color:var(--accent)}.welcome-record{display:flex;flex-wrap:wrap;gap:calc(var(--px) * 2) calc(var(--px) * 5);margin:0;padding:calc(var(--px) * 2) 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.welcome-record div{display:flex;flex-direction:column;gap:calc(var(--px) / 2)}.welcome-record dd{margin:0;font-size:clamp(.9rem,3.6vw,1.05rem);font-variant-numeric:tabular-nums}.start-week-pick{display:flex;min-width:0}.week-select{min-width:0;max-width:100%;min-height:44px;padding:0 calc(var(--px) * 2) 0 var(--px);font:inherit;font-size:.75rem;color:inherit;background:transparent;border:var(--px) solid var(--line);border-radius:0;appearance:none;text-overflow:ellipsis}.week-select:focus-visible{outline:var(--px) solid var(--ok);outline-offset:var(--px)}.week-select option{color:#1a1a1a;background:#e8e4d8}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.csprite{position:relative;display:block;height:100%;width:auto;margin-inline:auto}.csprite-full,.csprite-bust{aspect-ratio:1 / 1}.csprite-layer{position:absolute;inset:0;display:block;width:100%;height:100%;image-rendering:pixelated}.csprite-blend{isolation:isolate}.csprite-blend-art{filter:grayscale(1);mix-blend-mode:hard-light}.csprite-tinted{-webkit-mask-image:var(--mask);mask-image:var(--mask);-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.lanyard-chip{display:block;height:100%;width:auto;margin-inline:auto}.badge-screen{justify-content:flex-start}.badge-screen:before{background:linear-gradient(to bottom,#101318e0,#101318cc 40%,#101318f2)}.badge-eyebrow{margin:0;text-align:center;color:var(--ink-dim)}.badge{display:flex;flex-direction:column;align-items:center;flex:none}.badge-cord{width:calc(var(--px) * 3);height:calc(var(--px) * 8);position:relative}.badge-clip{position:absolute;bottom:calc(var(--px) * -1);left:50%;translate:-50% 0;width:calc(var(--px) * 5);height:calc(var(--px) * 2);background:#b9c0c8;border:1px solid #6d757e}.badge-card{position:relative;overflow:hidden;width:100%;max-width:340px;background:var(--paper);color:var(--paper-ink);border:var(--px) solid #b3aa92;box-shadow:var(--px) var(--px) 0 #0009}.badge-issuer{margin:0;padding:calc(var(--px) * 1.5) calc(var(--px) * 2);background:var(--panel);color:var(--ink);font-size:.62rem;letter-spacing:.16em;text-transform:uppercase}.badge-body{display:flex;gap:calc(var(--px) * 3);padding:calc(var(--px) * 2.5)}.badge-photo{flex:none;height:clamp(88px,19vh,128px);aspect-ratio:1 / 1;background:#c9c1a8;border:var(--px) solid #b3aa92;padding:var(--px)}.badge-fields{flex:1;min-width:0;margin:0;display:flex;flex-direction:column;justify-content:center;gap:1px}.badge-fields dt{color:#7a7261;margin:0}.badge-fields dt:not(:first-child){margin-top:calc(var(--px) * 2)}.badge-fields dd{margin:0;font-size:.85rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.badge-fields dd.badge-name{font-size:1.15rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.badge-serial{font-variant-numeric:tabular-nums}.badge-clearance{margin:0;padding:calc(var(--px) * 1.5) calc(var(--px) * 2);background:var(--escalate);color:#1e1606;font-size:.66rem;letter-spacing:.14em;text-transform:uppercase;text-align:center}.badge-sheen{position:absolute;inset:0;pointer-events:none;opacity:0;background:linear-gradient(112deg,transparent 42%,#ffffffd9 50%,transparent 58%)}.badge.is-issuing .badge-sheen{opacity:1;animation:badge-laminate .48s steps(12) both}.badge.is-issuing{animation:badge-to-tray .38s .48s ease-in both}@keyframes badge-laminate{0%{transform:translate(-130%)}to{transform:translate(130%)}}@keyframes badge-to-tray{to{transform:translateY(calc(var(--px) * 5));opacity:0}}.badge-desk{display:flex;flex-direction:column;gap:calc(var(--px) * 2);background:#161b22e8}.slot-tabs{display:grid;grid-template-columns:repeat(5,1fr);gap:var(--px)}.slot-tab{padding:0 2px;font-size:.6rem;letter-spacing:.04em;background:var(--panel)}.slot-tab.is-active{background:var(--accent);color:#0c1a1a;border-color:var(--ink)}.slot-options{display:grid;grid-template-columns:repeat(5,1fr);gap:calc(var(--px) * 1.5)}.slot-option{height:74px;min-height:74px;padding:var(--px);background:var(--panel-hi);display:grid;place-items:center}.slot-option.is-chosen{background:var(--paper);border-color:var(--paper-ink)}.tints{display:grid;grid-template-columns:repeat(5,1fr);gap:var(--px)}.tint{min-width:0;padding:calc(var(--px) / 2);background:var(--panel);display:grid;place-items:stretch}.tint.is-chosen{background:var(--paper);border-color:var(--paper-ink)}.chip-fill{display:block;width:100%;height:100%;min-height:calc(var(--touch) - var(--px) * 3);border:1px solid #00000059}.slot-caption{margin:0;min-height:2.6em;font-size:.75rem;line-height:1.3;color:var(--ink-dim)}.badge-actions{display:flex;flex-direction:column;gap:calc(var(--px) * 2)}@media(max-width:340px){.slot-options{grid-template-columns:repeat(4,1fr)}.slot-option{height:68px;min-height:68px}}.csprite-fit{position:absolute;display:block;image-rendering:pixelated}.csprite-clipped{-webkit-mask-image:var(--clip);mask-image:var(--clip);-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.station{display:flex;flex-direction:column;flex:1;min-height:0;image-rendering:pixelated;max-width:max(282px,calc(100dvh * 1536 / 2752));margin-inline:auto;width:100%}.station-top,.station-glass,.station-base{position:relative;width:100%;background-repeat:no-repeat;background-size:100% 100%}.station-top{flex:none;aspect-ratio:1536 / 504}.station-base{flex:none;aspect-ratio:1536 / 642}.station-glass{flex:1;min-height:96px}.station-badge{position:absolute;left:5.6%;top:20.44%;width:17.9%;height:52.38%;display:grid;place-items:center;text-align:center;color:#2b3138;font-size:clamp(.6rem,3.4vw,.95rem);font-weight:700;line-height:1.1}.station-readout{position:absolute;left:61.52%;top:29.56%;width:32.16%;height:29.56%;display:flex;align-items:center;justify-content:flex-end;gap:.4em;padding:0 5%;color:#9dffc2;text-shadow:0 0 6px #4dff9633;font-size:clamp(.8rem,4vw,1.15rem);font-weight:700;font-variant-numeric:tabular-nums;letter-spacing:.04em;white-space:nowrap;overflow:hidden}.station-readout .readout-label{color:#63b98a;font-size:.62em;font-weight:400;letter-spacing:.12em;text-transform:uppercase}.station-readout.is-urgent{color:#ff8a5c}.glass-content{position:absolute;inset:3% 7% 4%;display:flex;flex-direction:column;gap:calc(var(--px) * 2);overflow-y:auto;overscroll-behavior:contain;color:#1d2329}.station-tray{position:absolute;left:2.6%;top:1.71%;width:70.9%;height:16.04%;display:flex;align-items:center;justify-content:center;text-align:center;color:#d6dde3;font-size:clamp(.5rem,2.4vw,.72rem);line-height:1.2;overflow:hidden;white-space:nowrap;text-shadow:0 1px 2px #000000b3}.station-btn{position:absolute;top:37.54%;width:39.58%;height:51.71%;padding:0;border:none;box-shadow:none;background-color:transparent;background-repeat:no-repeat;background-size:100% 100%;image-rendering:pixelated;-webkit-tap-highlight-color:transparent;min-height:0;min-width:0;cursor:pointer}.station-btn-stop{left:6.31%;background-image:url(/assets/ui/btn-stop.png)}.station-btn-pass{left:54.1%;background-image:url(/assets/ui/btn-pass.png)}.station-btn-stop:not(:disabled):active{background-image:url(/assets/ui/btn-stop-pressed.png)}.station-btn-pass:not(:disabled):active{background-image:url(/assets/ui/btn-pass-pressed.png)}.station-btn:disabled{cursor:default}.station-btn:disabled:after,.station-btn.is-inert:after{content:"";position:absolute;inset:0;background:#dcddd5b3}@media(prefers-reduced-motion:reduce){.station-btn{transition:none}}.screen-station{padding:0;gap:0;max-width:none}.glass-heading{margin:0;font-size:clamp(.95rem,4.2vw,1.2rem);color:#1d2329}.glass-hint{align-self:center;margin:0;padding:calc(var(--px) / 2) calc(var(--px) * 2);background:#f4f6f2e6;border:1px solid #b9c0c6;text-align:center;font-size:clamp(.68rem,3vw,.8rem);line-height:1.35;color:#2b333b}.glass-content .whys-option{background:#f2f4f1;color:#1d2329;border-color:#9aa3a9;box-shadow:var(--px) var(--px) 0 #0003}.glass-content .whys-option:disabled{opacity:.55}.sort-tray{display:flex;align-items:center;justify-content:center;gap:calc(var(--px) * 1.5);width:100%;min-width:0}.sort-tray>span,.station-tray>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.sort-tray .is-clean{color:#7ee0a8}.sort-tray .sort-progress{margin:0;flex:none;width:34%}.glass-content .sort-deck{min-height:0}.glass-content .sort-card{max-height:none;min-height:0}.glass-content .doc-image{max-height:15vh}.glass-content .paper{flex:none}.gmenu-station{position:absolute;left:27.34%;top:22.82%;width:29.95%;height:47.62%;display:flex;align-items:center;justify-content:center}.title-screen{justify-content:center;text-align:center}.title-screen h1{color:var(--stop);text-shadow:var(--px) var(--px) 0 #000}.desk{display:grid;grid-template-columns:1fr;gap:calc(var(--px) * 3)}@media(min-width:720px){.desk{grid-template-columns:1fr 1fr}}.doc-label{font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;margin-bottom:calc(var(--px))}.doc-image{width:100%;max-height:22vh;object-fit:contain;background:#0003;margin-top:calc(var(--px) * 2)}.glass-content .bench{flex:1;min-height:0;display:flex;flex-direction:column;gap:calc(var(--px) * 2)}.glass-content .paper.bench-paperwork{flex:0 1 auto;max-height:min(40%,calc(100% - 130px));min-height:min(4rem,8vh);padding:calc(var(--px) * 2);display:flex;overflow:hidden}.bench-sheet{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;-webkit-mask-image:linear-gradient(to bottom,#000 calc(100% - 10px),transparent);mask-image:linear-gradient(to bottom,#000 calc(100% - 10px),transparent)}.bench-paperwork .bench-rule{font-size:clamp(.62rem,2.5vw,.75rem);line-height:1.45;margin:0}.bench-paperwork .doc-label{font-size:.56rem}.bench-label-item{margin-top:calc(var(--px) * 2)}.bench-tray{flex:1 1 auto;min-height:0;display:flex;flex-direction:column;gap:calc(var(--px) * 2)}.bench-tray.is-single{gap:0}@media(max-height:520px){.bench-tray{flex-direction:row;align-items:stretch}.glass-content .paper.bench-paperwork{max-height:40%}}.specimen{margin:0;min-width:0;flex:1 1 0;min-height:min-content;display:flex;flex-direction:column;justify-content:flex-start;min-height:0;gap:var(--px)}.specimen-frame{width:100%;min-height:0;padding:0;border:none;box-shadow:none;display:grid;place-items:center;overflow:hidden;cursor:zoom-in;background:transparent;position:relative;min-height:44px;flex:1 1 auto;height:auto;max-height:150px}.specimen-frame:active:not(:disabled){transform:none;filter:brightness(.94)}.specimen-frame img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;image-rendering:pixelated}@media(hover:hover){.specimen-frame:hover:not(:disabled){background:#ffffff14}}.specimen-cap{font-size:clamp(.68rem,4.4vh,.86rem);font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-dim);text-align:center}.loupe{position:fixed;inset:0;z-index:20;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:calc(var(--px) * 3);padding:calc(var(--px) * 4);background:#101318f2;animation:loupe-in .12s ease-out both}@keyframes loupe-in{0%{opacity:0}}.loupe-pane{max-width:100%;overflow-x:auto;overscroll-behavior:contain}.loupe-img{display:block;height:40vh;width:auto;max-width:none;object-fit:contain;image-rendering:pixelated;background:#c9c1a8;border:var(--px) solid #b3aa92}.loupe-cap{margin:0;font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-dim)}.loupe-close{min-height:var(--touch)}.doc-text{font-size:clamp(.85rem,3.6vw,1rem);line-height:1.5}.actions{position:sticky;bottom:0;display:grid;grid-auto-flow:column;grid-auto-columns:1fr;gap:calc(var(--px) * 2);padding:calc(var(--px) * 2) 0 calc(var(--px) * 2);background:linear-gradient(to top,var(--bg) 70%,transparent)}.actions button{flex-direction:column;font-size:clamp(.7rem,3.2vw,.95rem);min-height:56px}.whys-option{display:block;width:100%;text-align:left;text-transform:none;letter-spacing:0;padding:calc(var(--px) * 3);min-height:var(--touch);line-height:1.4}.whys-option.is-correct{background:var(--ok);color:#10160e}.whys-option.is-wrong{background:var(--stop);color:#1a0c06}.verdict{font-size:clamp(1.2rem,5vw,1.8rem);text-transform:uppercase;letter-spacing:.1em}.verdict-catch{color:var(--ok)}.verdict-miss,.verdict-false_stop{color:var(--stop)}.verdict-clean_pass{color:var(--escalate)}.points-delta{font-size:clamp(1.4rem,6vw,2rem)}.points-delta.is-negative{color:var(--stop)}.points-delta.is-positive{color:var(--ok)}.stamp{display:inline-block;border:calc(var(--px) * 1.5) solid currentColor;padding:calc(var(--px)) calc(var(--px) * 2);letter-spacing:.2em;transform:rotate(-8deg);animation:stamp-slam .32s steps(4,end) 1}@keyframes stamp-slam{0%{transform:rotate(-8deg) scale(2.4);opacity:0}to{transform:rotate(-8deg) scale(1);opacity:1}}.domino-canvas{width:100%;aspect-ratio:16 / 9;max-height:40vh;border:var(--px) solid var(--line);background:#10141a}.domino-track{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:calc(var(--px))}.domino-track li{display:flex;justify-content:space-between;gap:calc(var(--px) * 2);padding:calc(var(--px) * 1.5) calc(var(--px) * 2);border-left:var(--px) solid var(--line);color:var(--ink-dim);opacity:.35;font-size:clamp(.75rem,3.2vw,.9rem)}.domino-track li.is-reached{opacity:1;color:var(--ink);border-left-color:var(--stop);background:#0004}.domino-stage-cost{color:var(--stop);white-space:nowrap}.domino-counter{display:flex;align-items:baseline;justify-content:space-between;padding:calc(var(--px) * 2);border:var(--px) solid var(--line)}.domino-counter-value{font-size:clamp(1.6rem,8vw,2.6rem);color:var(--stop)}.domino-counter.is-final{border-color:var(--stop);animation:final-flash .4s steps(2,end) 3}@keyframes final-flash{50%{background:var(--stop)}}.domino-outcome{font-size:clamp(.95rem,4vw,1.15rem);color:var(--stop)}.log-head{display:flex;flex-direction:column;gap:var(--px);padding-bottom:calc(var(--px) * 2);border-bottom:2px solid var(--line)}.log-issuer{margin:0;font-size:.58rem;letter-spacing:.22em;text-transform:uppercase;color:var(--ink-dim)}.log-titles{display:flex;align-items:baseline;justify-content:space-between;gap:calc(var(--px) * 2)}.log-titles h1{margin:0}.log-count{margin:0;font-size:.66rem;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-dim);white-space:nowrap}.log-empty{margin:calc(var(--px) * 4) 0;color:var(--ink-dim);line-height:1.5}.stamplog{list-style:none;margin:calc(var(--px) * 2) 0 0;padding:0;display:flex;flex-direction:column}.logline{display:grid;grid-template-columns:auto auto minmax(0,1fr) auto;align-items:center;gap:calc(var(--px) * 2);padding:calc(var(--px) * 2) 0;border-bottom:var(--px) solid #ffffff14}.logline:last-child{border-bottom:none}.logline-stamp{display:block;width:clamp(40px,12vw,48px);color:var(--ok);transform:rotate(var(--tilt, 0deg))}.logline-stamp svg{display:block;width:100%;height:auto}.logline-rank{fill:currentColor;font-family:var(--font);font-size:22px;font-weight:700;letter-spacing:-.06em}.logline-pass{display:block;width:clamp(38px,11vw,46px);aspect-ratio:1 / 1;background:#c9c1a8;border:var(--px) solid #b3aa92;overflow:hidden}.logline-nopass{display:block;width:100%;height:100%;background:repeating-linear-gradient(45deg,#b3aa92 0 3px,#c9c1a8 3px 6px)}.logline-who{min-width:0;display:flex;flex-direction:column;gap:1px}.logline-name{font-size:clamp(.85rem,3.6vw,.98rem);font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.logline-meta{font-size:.62rem;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-dim);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.logline-score{display:flex;flex-direction:column;align-items:flex-end;font-size:clamp(.95rem,4vw,1.1rem);font-weight:700;font-variant-numeric:tabular-nums;white-space:nowrap}.logline.is-you{background:color-mix(in srgb,var(--accent) 14%,transparent);box-shadow:inset calc(var(--px) * .75) 0 0 var(--accent);padding-inline:calc(var(--px) * 1.5)}@media(prefers-reduced-motion:no-preference){.logline-stamp{animation:stamp-down .16s ease-out backwards;animation-delay:var(--land, 0ms)}}@keyframes stamp-down{0%{opacity:0;transform:rotate(var(--tilt, 0deg)) scale(1.7)}to{opacity:.92;transform:rotate(var(--tilt, 0deg)) scale(1)}}.hud{display:flex;justify-content:space-between;align-items:center;gap:calc(var(--px) * 2);font-size:clamp(.7rem,3vw,.85rem);text-transform:uppercase;letter-spacing:.08em;color:var(--ink-dim)}.hud strong{color:var(--ink)}.error-bar{background:var(--stop);color:#1a0c06;padding:calc(var(--px) * 2)}.sort-clock{font-variant-numeric:tabular-nums;color:var(--stop);font-weight:700}.sort-progress{display:flex;gap:var(--px);margin:calc(var(--px) * 2) 0}.sort-pip{flex:1;height:var(--px);background:var(--line)}.sort-pip.is-done{background:var(--accent)}.sort-deck{position:relative;flex:1;min-height:232px;display:grid;place-items:stretch}.sort-card{--dx: 0px;--dy: 0px;--lean: 0;--fling-ms: .22s;grid-area:1 / 1;position:relative;width:100%;height:100%;min-height:200px;max-height:360px;align-self:center;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:calc(var(--px) * 2);padding:calc(var(--px) * 4);text-align:center;background:var(--paper);color:var(--paper-ink);border:var(--px) solid #b3aa92;box-shadow:calc(var(--px) * 1.5) calc(var(--px) * 1.5) 0 #0006;touch-action:none;cursor:grab;user-select:none;transform:translate(var(--dx),var(--dy)) rotate(calc(var(--lean) * 6deg));transition:transform .16s ease-out}.sort-card.is-dragging{transition:none;cursor:grabbing}.sort-card.depth-1,.sort-card.depth-2{pointer-events:none}.sort-card.depth-1{transform:translateY(calc(var(--px) * 2)) scale(.96);filter:brightness(.9)}.sort-card.depth-2{transform:translateY(calc(var(--px) * 4)) scale(.92);filter:brightness(.8)}.sort-card.is-flung{transition:transform var(--fling-ms) ease-in,opacity var(--fling-ms) ease-in;transform:translate(calc(var(--x) * 140%)) rotate(calc(var(--lean) * 18deg));opacity:0;pointer-events:none}.sort-part-image{flex:1;width:100%;min-height:0;max-height:calc(var(--px) * 56);object-fit:contain;image-rendering:pixelated}.sort-label{font-size:1rem;line-height:1.4;overflow-wrap:anywhere}.sort-stamp{position:absolute;top:calc(var(--px) * 5);left:50%;font-size:.75rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;white-space:nowrap;padding:var(--px) calc(var(--px) * 2);border:var(--px) solid currentColor;pointer-events:none}.sort-stamp-good{color:#3f6b2c;transform:translate(-50%) rotate(6deg);opacity:max(0,var(--lean))}.sort-stamp-bad{color:#8f3418;transform:translate(-50%) rotate(-6deg);opacity:max(0,calc(var(--lean) * -1))}.sort-empty{grid-area:1 / 1}.sort-tally{font-size:.85rem;color:var(--ink-dim)}.sort-tally.is-clean{color:var(--ok)}.sort-pip{background:#4a545e}.sort-pip.is-done{background:#7ee0a8}@media(prefers-reduced-motion:reduce){.sort-card,.sort-card.is-flung{transition-duration:1ms}}.screen-station{position:relative}.hurt-flash{position:absolute;inset:0;z-index:20;pointer-events:none;background:#c8281e;opacity:0}.screen-station.is-hurt{animation:station-hurt .38s steps(2,end)}.screen-station.is-hurt .hurt-flash{animation:hurt-flash .38s ease-out}@keyframes station-hurt{0%,to{transform:translate(0)}15%{transform:translate(calc(var(--px) * -3),calc(var(--px) * 1))}30%{transform:translate(calc(var(--px) * 3),calc(var(--px) * -1))}45%{transform:translate(calc(var(--px) * -2),calc(var(--px) * -1))}60%{transform:translate(calc(var(--px) * 2),calc(var(--px) * 1))}80%{transform:translate(calc(var(--px) * -1))}}@keyframes hurt-flash{0%{opacity:.45}to{opacity:0}}.home{max-width:none;padding:0;gap:0;position:relative}.home-hero,.home-beat,.home-foot{width:100%;max-width:46rem;margin:0 auto;padding:clamp(2.5rem,9vw,5.5rem) clamp(1.25rem,5vw,2rem)}.rail-lamp{--lamp: var(--line);display:block;width:14px;height:14px;flex:none;background:#1a1e23;box-shadow:inset 0 0 0 2px #0d1013;transition:background-color .18s steps(3),box-shadow .18s steps(3)}.lamp-stop{--lamp: var(--stop)}.lamp-escalate{--lamp: var(--escalate)}.lamp-ok{--lamp: var(--ok)}.rail-lamp.is-blank{background:none;box-shadow:none}.rail-lamp.is-lit{background:var(--lamp);box-shadow:inset 0 0 0 2px #0d1013,0 0 10px color-mix(in srgb,var(--lamp) 60%,transparent)}.home-hero{padding-top:clamp(2.5rem,8vh,4.5rem)}.home-eyebrow{margin:0 0 clamp(1.5rem,5vw,2.5rem);font-size:.72rem;letter-spacing:.28em;text-transform:uppercase;color:var(--ink-dim)}.hero-body{display:flex;align-items:flex-start;gap:clamp(1.25rem,4vw,2.5rem)}.hero-andon{position:relative;flex:none;display:flex;flex-direction:column;gap:6px;padding:8px 7px;background:#20252b;border:2px solid var(--line);box-shadow:var(--px) var(--px) 0 #0008}.tower-lamp{display:block;width:20px;height:20px;background:#14181d;box-shadow:inset 0 0 0 2px #0d1013}.tower-mast{position:absolute;left:50%;top:100%;translate:-50% 0;width:4px;height:clamp(1.5rem,5vw,2.75rem);background:var(--line)}.hero-andon .lamp-stop{animation:lamp-test 2.6s steps(1) .2s both}.hero-andon .lamp-escalate{animation:lamp-blip .7s steps(1) .7s both}.hero-andon .lamp-ok{animation:lamp-blip .7s steps(1) 1.2s both}@keyframes lamp-blip{0%{background:#14181d}40%,99%{background:var(--lamp);box-shadow:inset 0 0 0 2px #0d1013,0 0 12px color-mix(in srgb,var(--lamp) 55%,transparent)}to{background:#14181d}}@keyframes lamp-test{0%,8%{background:var(--stop)}9%,68%{background:#14181d}69%,to{background:var(--stop);box-shadow:inset 0 0 0 2px #0d1013,0 0 14px #c4562f99}}.hero-words{min-width:0}.hero-title{margin:0 0 clamp(1rem,3vw,1.5rem);line-height:.86;text-transform:uppercase;font-size:clamp(.85rem,2.4vw,1.1rem);letter-spacing:.3em;color:var(--ink-dim);font-weight:400}.hero-title-strong{display:block;margin-top:.35em;font-size:clamp(2.6rem,12vw,5.5rem);letter-spacing:-.03em;color:var(--ink);font-weight:700}.hero-lede{margin:0 0 .75em;max-width:48ch;font-size:clamp(.92rem,2.6vw,1.08rem);line-height:1.55;color:var(--ink)}.hero-sub{margin:0 0 clamp(1.5rem,5vw,2.25rem);font-size:clamp(.8rem,2.2vw,.92rem);color:var(--ink-dim)}.hero-actions{display:flex;flex-wrap:wrap;gap:calc(var(--px) * 3)}.btn-play{padding:0 calc(var(--px) * 6);font-size:clamp(.85rem,2.6vw,1rem)}.btn-quiet{background:transparent;border-color:var(--line);box-shadow:none;color:var(--ink-dim)}@media(hover:hover){.btn-quiet:hover:not(:disabled){background:var(--panel);color:var(--ink)}}.home-beat{border-top:1px solid var(--line);scroll-margin-top:calc(var(--px) * 4)}.beat-head{display:flex;align-items:center;gap:calc(var(--px) * 2);margin:0 0 clamp(.75rem,2vw,1rem)}.beat-eyebrow{font-size:.7rem;letter-spacing:.24em;text-transform:uppercase;color:var(--ink-dim)}.beat-title{margin:0 0 clamp(1.25rem,4vw,2rem);max-width:26ch;font-size:clamp(1.25rem,4.5vw,2rem);line-height:1.2;letter-spacing:-.01em;text-transform:none;color:var(--ink)}.beat-body{margin:0 0 clamp(1.25rem,4vw,1.75rem);max-width:40ch;color:var(--ink-dim);line-height:1.6}.cycle{list-style:none;counter-reset:step;margin:0;padding:0;display:grid;gap:1px;background:var(--line);border:1px solid var(--line)}.cycle li{counter-increment:step;position:relative;background:var(--bg);padding:clamp(1rem,3vw,1.4rem) clamp(1rem,3vw,1.5rem) clamp(1rem,3vw,1.4rem) clamp(3.25rem,9vw,4.25rem)}.cycle li:before{content:counter(step,decimal-leading-zero);position:absolute;left:clamp(1rem,3vw,1.5rem);top:clamp(1rem,3vw,1.4rem);font-size:.8rem;letter-spacing:.1em;color:var(--line)}.cycle li:last-child:before{color:var(--stop)}.cycle h3{margin:0 0 .35em;font-size:clamp(.9rem,2.6vw,1.05rem);letter-spacing:.1em}.cycle p{margin:0;font-size:clamp(.82rem,2.4vw,.95rem);line-height:1.5;color:var(--ink-dim)}@media(min-width:720px){.cycle{grid-template-columns:1fr 1fr}}.docket{background:var(--paper);color:var(--paper-ink);border:var(--px) solid #b3aa92;box-shadow:var(--px) var(--px) 0 #0006;padding:clamp(1rem,3vw,1.5rem)}.docket-head{display:flex;justify-content:space-between;gap:1rem;padding-bottom:.5rem;border-bottom:2px solid #00000033;font-size:.68rem;letter-spacing:.18em;text-transform:uppercase;opacity:.65}.docket-row{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;padding:clamp(.6rem,2vw,.9rem) 0;border-bottom:1px solid #00000022}.docket-where{font-size:clamp(.85rem,2.4vw,1rem)}.docket-cost{flex:none;font-size:clamp(.8rem,2vw,.9rem);opacity:.6}.docket-cost em{font-style:normal;font-weight:700;font-size:clamp(1.5rem,6vw,2.6rem);letter-spacing:-.04em;opacity:1;font-variant-numeric:tabular-nums}.docket-row.is-worst .docket-cost em{color:var(--stop)}.docket-foot{margin:clamp(.75rem,2vw,1rem) 0 0;font-size:clamp(.75rem,2.2vw,.85rem);line-height:1.5;opacity:.72}.places{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:calc(var(--px) * 2)}.places li{padding:calc(var(--px) * 1.5) calc(var(--px) * 3);border:1px solid var(--line);font-size:clamp(.75rem,2.2vw,.85rem);color:var(--ink-dim)}.home-foot{border-top:1px solid var(--line);display:flex;flex-direction:column;align-items:flex-start;gap:clamp(1.25rem,4vw,1.75rem);padding-bottom:clamp(3rem,10vh,6rem)}.home-foot p{margin:0;max-width:42ch;font-size:.8rem;line-height:1.6}@media(prefers-reduced-motion:reduce){.hero-andon .tower-lamp{animation:none}.hero-andon .lamp-stop{background:var(--stop);box-shadow:inset 0 0 0 2px #0d1013,0 0 14px #c4562f99}.rail-lamp{transition:none}}.gmenu{position:relative}.gmenu-trigger{display:inline-flex;align-items:center;gap:calc(var(--px) * 2);min-height:var(--touch);padding:0 calc(var(--px) * 3);text-transform:uppercase;letter-spacing:.1em}.gmenu-word{font-size:clamp(.6rem,3vw,.8rem)}.andon{display:flex;flex:none;flex-direction:column;gap:3px}.andon-lamp{width:18px;height:3px;background:var(--line);box-shadow:0 0 0 1px #101318;transition:background-color .12s steps(2),box-shadow .12s steps(2)}.gmenu-trigger.is-open .andon-lamp:nth-child(1){background:var(--stop);box-shadow:0 0 0 1px #101318,0 0 6px #c4562f88}.gmenu-trigger.is-open .andon-lamp:nth-child(2){background:var(--escalate);box-shadow:0 0 0 1px #101318,0 0 6px #c99a2e88}.gmenu-trigger.is-open .andon-lamp:nth-child(3){background:var(--ok);box-shadow:0 0 0 1px #101318,0 0 6px #6f9e5a88}.gmenu-scrim{position:fixed;inset:0;z-index:19;background:#10131866}.gmenu-panel{position:absolute;top:calc(100% + var(--px));left:0;min-width:max(14rem,100%);max-width:min(20rem,calc(100vw - var(--px) * 6));z-index:20;display:flex;flex-direction:column;background:var(--panel);border:var(--px) solid var(--line);box-shadow:var(--px) var(--px) 0 #000a;animation:gmenu-drop .14s steps(3) both;transform-origin:top center}@keyframes gmenu-drop{0%{transform:translateY(calc(var(--px) * -3));opacity:0}}.gmenu-item{display:flex;align-items:center;gap:calc(var(--px) * 2);width:100%;min-height:var(--touch);padding:calc(var(--px) * 2) calc(var(--px) * 3);background:transparent;border:none;box-shadow:none;text-align:left;text-transform:none;letter-spacing:0;color:var(--ink)}.gmenu-item-text{display:flex;flex-direction:column;gap:2px;min-width:0}.gmenu-item+.gmenu-item{border-top:1px solid var(--line)}.gmenu-item:active:not(:disabled){transform:none;background:var(--panel-hi)}@media(hover:hover){.gmenu-item:hover:not(:disabled){background:var(--panel-hi)}}.gmenu-item-label{font-size:clamp(.78rem,3.4vw,.9rem);letter-spacing:.04em;white-space:nowrap}.gmenu-item-hint{font-size:clamp(.62rem,2.8vw,.72rem);color:var(--ink-dim);letter-spacing:0}.gmenu-item.is-danger .gmenu-item-label{color:var(--stop)}.gmenu-item.is-primary .gmenu-item-label{color:var(--ok)}.gmenu-item.is-primary,.gmenu-item.is-danger{border-top:var(--px) solid var(--line)}.gmenu-item.is-primary+.gmenu-item,.gmenu-item.is-danger+.gmenu-item{border-top-width:var(--px)}.gmenu-confirm{padding:calc(var(--px) * 3);display:flex;flex-direction:column;gap:calc(var(--px) * 2)}.gmenu-confirm h2{margin:0;font-size:clamp(.9rem,4vw,1.05rem)}.gmenu-confirm p{margin:0;font-size:clamp(.68rem,3vw,.8rem);line-height:1.4;color:var(--ink-dim)}.gmenu-confirm-actions{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;gap:calc(var(--px) * 2)}.gmenu-corner{align-self:flex-end;z-index:21}.gmenu-corner .gmenu-trigger{background:#161b22e6;border:var(--px) solid var(--line);box-shadow:var(--px) var(--px) 0 #000a}.gmenu-corner .gmenu-panel{left:auto;right:0}.home .gmenu-corner{position:fixed;top:max(calc(var(--px) * 3),env(safe-area-inset-top));right:max(calc(var(--px) * 3),env(safe-area-inset-right))}.home .gmenu-corner{transition:opacity .16s steps(3),translate .16s steps(3)}.home .gmenu-corner.is-away{opacity:0;translate:0 calc(var(--px) * -4);pointer-events:none}.start-head{display:flex;justify-content:flex-end}.start-screen>.start-head{z-index:5}@media(prefers-reduced-motion:reduce){.home .gmenu-corner{transition:none}}.gmenu-station .gmenu-trigger{width:auto;max-width:100%;height:var(--touch);min-height:var(--touch);justify-content:center;gap:calc(var(--px) * 1.5);padding:0 calc(var(--px) * 2.5);color:#2b3138;background:linear-gradient(#eceee8,#cdd0c8);border:2px solid #a8ada4;box-shadow:0 0 0 2px #1b1e21,inset 1px 1px #ffffffe0,inset -1px -1px #00000026,3px 3px #1b1e2159;-webkit-tap-highlight-color:transparent}.gmenu-station .andon-lamp{background:#6c757d}.gmenu-station .gmenu-word{font-size:.55rem;letter-spacing:.06em}.gmenu-station .andon{gap:2px}.gmenu-station .andon-lamp{width:13px}.gmenu-station .gmenu-trigger:active{background:linear-gradient(#c2c5bd,#d9dbd5);box-shadow:0 0 0 2px #1b1e21,inset 1px 1px #0003,1px 1px #1b1e2140;transform:translate(2px,2px)}.gmenu-station .gmenu-trigger.is-open{background:linear-gradient(#c2c5bd,#d9dbd5);box-shadow:0 0 0 2px #1b1e21,inset 1px 1px #0003,1px 1px #1b1e2140}@media(hover:hover){.gmenu-station .gmenu-trigger:hover{background:linear-gradient(#f4f6f0,#d7dad2)}}@media(prefers-reduced-motion:reduce){.gmenu-panel{animation:none}.andon-lamp{transition:none}}.admin{max-width:800px}.admin-gate{justify-content:center;align-items:center;max-width:none}.admin-login{width:100%;max-width:26rem;display:flex;flex-direction:column;gap:calc(var(--px) * 3);background:var(--panel);border:var(--px) solid var(--line);box-shadow:var(--px) var(--px) 0 #000a;padding:calc(var(--px) * 4)}.admin-login h1{margin:0;font-size:clamp(1.1rem,5vw,1.6rem)}.admin-login p{margin:0;font-size:.8rem;line-height:1.5}.admin-login-note{border-top:1px solid var(--line);padding-top:calc(var(--px) * 3)}.admin-head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:calc(var(--px) * 2)}.admin-head h1{margin:0}.admin-editor{font-family:var(--font);font-size:.85rem;line-height:1.45;width:100%;min-height:45vh;padding:calc(var(--px) * 2);color:var(--paper-ink);background:var(--paper);border:var(--px) solid var(--line);resize:vertical;white-space:pre;overflow-wrap:normal;overflow-x:auto}.admin-actions{display:flex;flex-wrap:wrap;gap:calc(var(--px) * 2)}.admin-ok{background:var(--ok);color:#10160e;padding:calc(var(--px) * 2)}.admin-line{margin:0;white-space:pre-wrap;word-break:break-word;font-size:.8rem}.admin-section{background:var(--panel);border:var(--px) solid var(--line);box-shadow:var(--px) var(--px) 0 #000a;padding:calc(var(--px) * 3);display:flex;flex-direction:column;gap:calc(var(--px) * 3)}.admin-section h2{margin:0;font-size:clamp(.9rem,3.6vw,1.05rem)}.admin-hint{margin:calc(var(--px) * -2) 0 0;font-size:.8rem;line-height:1.4}.admin-field{display:block}.admin-field .doc-label{margin-bottom:calc(var(--px) / 2)}.admin-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:calc(var(--px) * 3)}.admin-bar{display:flex;flex-wrap:wrap;gap:calc(var(--px) * 2);align-items:center}.admin-bar .admin-select{flex:1;min-width:200px}.admin-select,.admin-text{font:inherit;width:100%;padding:calc(var(--px) / 2) calc(var(--px) * 2);color:var(--paper-ink);background:var(--paper);border:var(--px) solid var(--line)}.admin-select{min-height:var(--touch)}.admin-text{min-height:calc(var(--touch) * 1.6);line-height:1.45;resize:vertical}.admin-choices{display:flex;flex-wrap:wrap;gap:calc(var(--px) * 2)}.admin-choices button,.admin-row-head button{text-transform:uppercase}.is-picked{background:var(--ok);color:#10160e}.is-bad{background:var(--stop);color:#1a0c06}.is-good{background:var(--panel-hi)}.admin-row{display:flex;flex-direction:column;gap:calc(var(--px) * 2);padding:calc(var(--px) * 2);border:1px solid var(--line)}.admin-row-head{display:flex;flex-wrap:wrap;align-items:flex-start;gap:calc(var(--px) * 2)}.admin-row-head input[type=text]:not(.admin-id),.admin-row-head .admin-text{flex:1;min-width:160px;width:auto}input[type=text].admin-id{width:5ch;flex:none;text-align:center;padding:0 calc(var(--px) / 2)}.admin-schedule{border-color:var(--accent)}.admin-live-note{font-size:.75rem;align-self:center}.admin-orphans{background:#33241f;border:var(--px) solid var(--escalate);padding:calc(var(--px) * 2)}.admin-orphans .admin-line{margin-top:calc(var(--px) / 2);line-height:1.4}.admin-picklist{display:flex;flex-direction:column;max-height:40vh;overflow-y:auto;border:1px solid var(--line)}.admin-pick{display:flex;align-items:center;gap:calc(var(--px) * 2);padding:calc(var(--px) / 2) calc(var(--px) * 2);min-height:var(--touch);cursor:pointer}.admin-pick:nth-child(odd){background:#00000026}.admin-pick input{width:18px;height:18px;flex:none;accent-color:var(--ok)}.admin-pick-id{font-size:.78rem;flex:none}.admin-pick-title{font-size:.78rem;color:var(--ink-dim);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-divider{margin:calc(var(--px) * 2) 0 0;font-size:clamp(.9rem,3.6vw,1.05rem);color:var(--ink-dim);border-bottom:1px solid var(--line);padding-bottom:calc(var(--px) * 2)}.admin-who{display:flex;align-items:center;gap:calc(var(--px) * 2);font-size:.78rem}.admin-image{display:flex;flex-direction:column;gap:calc(var(--px) / 2)}.admin-image-body{display:flex;gap:calc(var(--px) * 3);align-items:flex-start}.admin-image-controls{flex:1;min-width:0;display:flex;flex-direction:column;gap:calc(var(--px) * 2)}.admin-thumb{position:relative;flex:none;width:96px;height:96px;display:grid;place-items:center;background:var(--paper);border:var(--px) solid var(--line);overflow:hidden}.admin-thumb img{max-width:100%;max-height:100%}.admin-thumb.is-broken{background:#3a2320;border-color:var(--stop)}.admin-thumb-warn{position:absolute;inset:auto 0 0;padding:calc(var(--px) / 2);background:var(--stop);color:#1a0c06;font-size:.65rem;text-align:center;text-transform:uppercase;letter-spacing:.08em}.admin-upload{display:inline-grid;place-items:center;min-height:var(--touch);padding:0 calc(var(--px) * 3);color:var(--ink);background:var(--panel-hi);border:var(--px) solid var(--line);box-shadow:var(--px) var(--px) 0 #000a;text-transform:uppercase;letter-spacing:.08em;cursor:pointer}.admin-upload input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.admin-upload{position:relative}.admin-upload:focus-within{outline:var(--px) solid var(--accent);outline-offset:var(--px)}.admin-upload.is-busy{opacity:.45;cursor:not-allowed}.admin-upload:active{transform:translate(var(--px),var(--px));box-shadow:none}.admin-issues{background:#33241f;border:var(--px) solid var(--stop);padding:calc(var(--px) * 2);display:flex;flex-direction:column;gap:calc(var(--px) / 2)}.admin-orphans{display:flex;flex-direction:column;gap:var(--px)}.admin-orphan{display:flex;align-items:center;gap:calc(var(--px) * 2);padding:var(--px);border:var(--px) solid var(--line);background:var(--panel)}.admin-orphan .admin-thumb{width:48px;height:48px}.admin-orphan-name{flex:1;min-width:0;display:flex;flex-direction:column;gap:calc(var(--px) / 2);overflow-wrap:anywhere}.admin-choose{display:flex;flex-direction:column;gap:calc(var(--px) * 2);padding:calc(var(--px) * 2);border:var(--px) solid var(--line);background:var(--panel)}.admin-choose-actions{display:flex;flex-wrap:wrap;gap:var(--px)}.admin-choose-actions button{flex:1 1 14rem;min-height:44px}.admin-editing{align-items:center}.admin-editing-what{flex:1;min-width:0;overflow-wrap:anywhere}.admin-field input[readonly]{color:var(--ink-dim);cursor:default}.admin-transfer{display:flex;flex-direction:column;gap:calc(var(--px) * 2)}.transfer-drop{display:flex;flex-direction:column;gap:calc(var(--px) * 2);padding:calc(var(--px) * 4);border:calc(var(--px) / 2) dashed var(--line);background:var(--panel);text-align:center}.transfer-drop.is-over{border-color:var(--accent);border-style:solid;background:var(--panel-hi)}.transfer-drop.is-busy{opacity:.6}.transfer-lede{margin:0;font-size:clamp(.85rem,3.4vw,1rem)}.transfer-note{margin:0;font-size:.75rem;line-height:1.5}.transfer-drop .admin-actions{justify-content:center}.transfer-drop .admin-actions button{min-height:var(--touch)}.transfer-input{display:none}
