@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-ext-wght-normal-BOeWTOD4.woff2) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-wght-normal-DqGufNeO.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-ext-wght-normal-DlzME5K_.woff2) format("woff2-variations");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-wght-normal-CkhJZR-_.woff2) format("woff2-variations");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-vietnamese-wght-normal-CBcvBZtf.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-ext-wght-normal-DO1Apj_S.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-wght-normal-Dx4kXJAl.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--bg: #0a0a0a;--panel: #101010;--ink: #eaeaea;--muted: #8b8b85;--accent: #ff2a2a;--verdict-green: #4af626;--line: #eaeaea;--strip: clamp(136px, 27vh, 300px);--hud-h: 96px;--font-body: "Inter Variable", -apple-system, "Segoe UI", Roboto, sans-serif;--font-mono: "JetBrains Mono", ui-monospace, "SF Mono", Menlo, Consolas, "Courier New", monospace;--font-weight-body: 400;--font-scale: 1}:root[data-theme=light]{--bg: #f4f4f0;--panel: #f4f4f0;--line: #111111;--ink: #111111;--muted: #6e6b64;--accent: #e61919}*{box-sizing:border-box;margin:0;padding:0}html,body,#root{height:100%}body{background:var(--bg);color:var(--ink);font-family:var(--font-body);font-weight:var(--font-weight-body);font-size:calc(15px * var(--font-scale));line-height:1.45;font-variant-numeric:tabular-nums;overflow:hidden;touch-action:none}#dealt .frame,.timeline,.tcard,button,.ghost{-webkit-user-select:none;user-select:none}button{font-family:var(--font-mono);font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink);background:var(--bg);border:1px solid var(--line);padding:6px 14px;cursor:pointer;transition:background .15s,color .15s}button:hover{background:var(--ink);color:var(--bg);border-color:var(--ink)}button:active{transform:translateY(1px)}button.primary:hover{background:var(--ink);color:var(--bg);border-color:var(--ink)}button.primary{background:var(--accent);border-color:var(--accent);color:#fff;font-weight:700;padding:9px 22px}button.primary.ok{background:var(--ink);border-color:var(--ink);color:var(--bg)}button.primary.ok:hover{background:var(--bg);color:var(--ink);border-color:var(--ink)}#app{display:flex;flex-direction:column;height:100%;width:100%}.timeline{width:100%;height:var(--strip);border-top:1px solid var(--line)}#stage{flex:1;position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:0;min-height:0;padding:var(--hud-h) 12px 18px}#hud{position:absolute;top:10px;left:12px;right:12px;display:flex;justify-content:space-between;align-items:flex-start;gap:14px;z-index:5}.hud-col{display:flex;flex-direction:column;gap:10px;min-width:0}.hud-right{align-items:flex-end}.hud-row{display:flex;align-items:center;gap:12px;min-height:36px}.hud-right .hud-row,.hud-left .hud-row{flex-wrap:wrap}#hud button,#themeToggle{width:98px;height:34px;padding:0;font-size:11px;background:var(--bg);border:1px solid var(--line);color:var(--ink)}#hud button:hover{background:var(--ink);color:var(--bg)}#hud #homeBtn{width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center}#menu{position:fixed;top:0;right:0;bottom:0;left:0;z-index:25;display:flex;align-items:center;justify-content:center;background:var(--bg)}#menu .bgimgs{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;grid-template-columns:repeat(4,1fr);grid-template-rows:repeat(2,1fr);gap:1px;background:var(--line)}body.portrait #menu .bgimgs{grid-template-columns:repeat(2,1fr);grid-template-rows:repeat(4,1fr)}#menu .bgimgs img{width:100%;height:100%;object-fit:cover;filter:brightness(.45);opacity:0;transition:opacity .4s ease}#menu .bgimgs img.loaded{opacity:1}:root[data-theme=light] #menu .bgimgs img{filter:brightness(.85)}#menu .strip{position:absolute;left:25%;top:0;bottom:0;transform:translate(-50%);width:min(240px,80vw);background:var(--bg);border-left:1px solid var(--line);border-right:1px solid var(--line);overflow:hidden}body.portrait #menu .strip{left:50%}#menu .menuview,#menu .contactview{position:absolute;top:0;right:0;bottom:0;left:0;padding:0 24px;display:flex;flex-direction:column;gap:18px;align-items:center;justify-content:center;text-align:center;transition:transform .42s cubic-bezier(.22,1,.36,1),opacity .3s ease}#menu .menuview{transform:translateY(0);opacity:1}#menu .contactview,#menu .strip.showcontact .menuview{transform:translateY(-26px);opacity:0;pointer-events:none}#menu .strip.showcontact .contactview{transform:translateY(0);opacity:1;pointer-events:auto}#menu h1{font-family:var(--font-body);font-weight:900;text-transform:uppercase;font-size:44px;line-height:.9;letter-spacing:-.04em}#menu h1 .wordmark-art{font-size:76px}#menu .row{display:flex;flex-direction:column;gap:14px;align-items:center}#menu .row button{width:112px;height:40px;font-size:12px;background:var(--bg);border:1px solid var(--line);color:var(--ink)}#menu .row button:hover{background:var(--ink);color:var(--bg)}#menu .copyright{position:absolute;bottom:14px;left:0;right:0;display:flex;flex-direction:column;align-items:center;gap:4px;text-align:center;font-family:var(--font-mono);font-size:8px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);white-space:nowrap}#menu .copyright a,#menu .copyright .contactlink{color:var(--ink);text-decoration:none;font:inherit;letter-spacing:inherit;text-transform:inherit;background:none;border:0;padding:0;cursor:pointer}#menu .copyright a:hover,#menu .copyright .contactlink:hover{text-decoration:underline}#menu .contactview .backbtn{position:absolute;top:14px;left:14px;width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;background:var(--bg);border:1px solid var(--line);color:var(--ink);font-family:var(--font-mono);font-size:16px;line-height:1;cursor:pointer}#menu .contactview .backbtn:hover{background:var(--ink);color:var(--bg)}#menu .credits{display:flex;flex-direction:column;gap:24px;align-items:center}#menu .person{display:flex;flex-direction:column;gap:7px;align-items:center}#menu .pname{font-family:var(--font-body);font-weight:900;text-transform:uppercase;font-size:21px;line-height:1;letter-spacing:-.01em;color:var(--ink)}#menu .plinks{font-family:var(--font-mono);font-size:10px;text-transform:uppercase;letter-spacing:.12em;color:var(--muted)}#menu .plinks a,#menu .plinks .maillink{color:var(--ink);text-decoration:none;font:inherit;letter-spacing:inherit;text-transform:inherit;background:none;border:0;padding:0;cursor:pointer}#menu .plinks a:hover,#menu .plinks .maillink:hover{text-decoration:underline}#menu>#themeToggle{position:absolute;top:10px;right:12px;z-index:2}#themeToggle{position:relative;display:flex}#themeToggle>button{width:32px;height:32px;padding:0;border:none;background:transparent;display:inline-flex;align-items:center;justify-content:center;position:relative;z-index:1;cursor:pointer;color:var(--ink)}#themeToggle>button:hover{background:transparent;color:var(--ink)}#themeToggle>button[aria-checked=true],#themeToggle>button[aria-checked=true]:hover{color:var(--bg)}#themeToggle .knob{position:absolute;left:0;top:0;width:32px;height:32px;background:var(--line);transition:transform .25s cubic-bezier(.4,0,.2,1)}#themeToggle[data-pref=light] .knob{transform:translate(0)}#themeToggle[data-pref=system] .knob{transform:translate(32px)}#themeToggle[data-pref=dark] .knob{transform:translate(64px)}#modeLabel{font-family:var(--font-mono);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.12em;color:var(--muted);border:1px solid var(--muted);padding:3px 7px;white-space:nowrap}#lives{display:flex;gap:8px;align-items:center;transition:opacity .4s ease}#lives circle{fill:var(--ink)}#scorebox{color:var(--muted);display:flex;align-items:center;gap:8px;font-family:var(--font-mono);font-size:15px;letter-spacing:.06em;transition:opacity .4s ease}#scorebox b{color:var(--ink);font-weight:700}#scorebox .div{opacity:.5}.notice{color:var(--muted);text-align:center;display:flex;flex-direction:column;gap:14px;align-items:center;font-family:var(--font-mono);font-size:12px;text-transform:uppercase;letter-spacing:.08em}.deckwrap{position:absolute;inset:var(--hud-h) 0 0 0;z-index:20;pointer-events:none;overflow:hidden;transform-origin:50% 46%}.dcardback{position:absolute;left:50%;top:46%;width:66px;height:92px;margin:-46px 0 0 -33px;background:var(--panel);border:2px solid var(--ink);box-shadow:3px 3px #00000047;transition:transform .5s cubic-bezier(.2,.7,.2,1),opacity .4s ease}.dcardart{position:absolute;top:4px;right:4px;bottom:4px;left:4px;display:block;width:calc(100% - 8px);height:calc(100% - 8px)}.deckwrap[data-phase=line] .dcardback,.deckwrap[data-phase=collapse] .dcardback,.deckwrap[data-phase=expand] .dcardback{transition-delay:0s}.deckwrap[data-phase=line] .dcardback{transform:translate(var(--gx, 0px),var(--gy, 0px)) rotate(0);transition-duration:1s;transition-delay:calc(var(--i) * .11s)}.deckwrap[data-phase=start] .dcardback{transform:translate(66vw,-14px) rotate(13deg)}.deckwrap[data-phase=collapse] .dcardback{transform:translate(0) rotate(var(--r));transition-delay:calc((14 - var(--i)) * 11ms)}.deckwrap[data-phase=expand] .dcardback{transform:translate(0) scale(2.9) rotate(0);opacity:0;transition:transform .44s cubic-bezier(.2,.7,.2,1),opacity .44s ease}#dealt{display:flex;flex-direction:column;align-items:center;gap:6px;max-width:min(94%,720px);text-align:center}#dealt{opacity:0;transition:opacity .42s ease}#dealt.entered{opacity:1}#dealt .frame{background:var(--dom, #35353d);padding:14px;cursor:grab;touch-action:none;transition:background .35s,opacity .2s}#dealt .frame:active{cursor:grabbing}#dealt .frame img{display:block;pointer-events:none;max-width:min(88vw,780px);max-height:max(110px,min(58vh,calc(100vh - var(--strip) - var(--hud-h) - 132px)));object-fit:contain}#dealt.correct .frame{outline:3px solid var(--line);outline-offset:3px}#dealt.wrong .frame{outline:3px solid var(--accent);outline-offset:3px}#dealt.dragging .frame{opacity:.18}#dealt h2{font-family:var(--font-body);font-weight:800;font-size:20px;line-height:1.15;letter-spacing:-.02em;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}#dealt .byline{max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--muted);font-family:var(--font-mono);font-size:11px;text-transform:uppercase;letter-spacing:.08em}#datechip{box-sizing:border-box;height:26px;display:inline-flex;align-items:center;font-family:var(--font-mono);font-weight:700;font-size:13px;letter-spacing:.1em;background:transparent;border:1px solid transparent;padding:0 14px;visibility:hidden}#dealt.revealed #datechip{visibility:visible}#dealt.correct #datechip{color:var(--verdict-green);border-color:var(--verdict-green)}#dealt.wrong #datechip{color:var(--accent);border-color:var(--accent)}.timeline{position:relative;flex:none;background:var(--bg);overflow:hidden;cursor:grab;z-index:2;touch-action:none}.timeline:before{content:"";position:absolute;pointer-events:none;left:0;right:0;top:50%;height:3px;background:repeating-linear-gradient(90deg,var(--line) 0 3px,transparent 3px 28px)}.era{position:absolute;top:4px;line-height:1;color:var(--muted);font-family:var(--font-mono);font-size:10px;text-transform:uppercase;letter-spacing:.12em;z-index:3;pointer-events:none}.era-old{left:10px}.era-new{right:10px}body.over #app{display:grid;grid-template-columns:1fr;grid-template-rows:auto minmax(0,1fr) auto var(--strip) auto minmax(0,1fr)}body.over #stage{grid-row:1;justify-content:flex-start}body.over #endhead{grid-row:3}body.over .timeline{grid-row:4;border-bottom:1px solid var(--line)}body.over #endbar{grid-row:5}body.over #lives,body.over #scorebox,body.over #dealt{opacity:0;pointer-events:none}body.over #dealt{position:absolute}body.over #endhead,body.over #endbar{animation:endappear .4s ease both .45s}@keyframes endappear{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}#endhead{text-align:center;padding:6px 16px 14px}#endhead h2{font-family:var(--font-body);font-weight:900;text-transform:uppercase;font-size:clamp(20px,4.2vw,34px);line-height:1.05;letter-spacing:-.02em}#endhead .sub{color:var(--muted);font-family:var(--font-mono);font-size:12px;text-transform:uppercase;letter-spacing:.08em;margin-top:8px}#endbar{display:flex;gap:12px;justify-content:center;align-items:center;padding:16px}.slotmark{position:absolute;left:50%;top:50%;display:none;border:2px dashed var(--accent);background:color-mix(in srgb,var(--accent) 8%,transparent)}.slotmark.show{display:block}.slotmark.invite{display:flex;align-items:center;justify-content:center}.slotmark.invite:before{content:"+";font-family:var(--font-mono);font-size:28px;font-weight:700;color:var(--accent)}.tcard{position:absolute;left:50%;top:50%;background:var(--dom, #55555c);padding:5px;cursor:pointer;will-change:transform,opacity}.tcard img{display:block;object-fit:contain;pointer-events:none}.tcard .year{height:20px;line-height:20px;text-align:center;font-family:var(--font-mono);font-size:11px;font-weight:700;letter-spacing:.06em;color:var(--ink-on-dom, #fff);pointer-events:none}.ghost{position:fixed;z-index:30;pointer-events:none;width:132px;padding:5px;background:var(--dom, #55555c);box-shadow:8px 8px #00000080}.ghost img{display:block;width:100%;max-height:140px;object-fit:contain}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40;background:#050505d1;display:flex;align-items:center;justify-content:center}.muted{color:var(--muted)}.dbox{width:min(960px,94vw);max-height:88vh}.dface{background:var(--dom, #55555c);color:var(--ink-on-dom, #ffffff);border:5px solid var(--dom, #55555c);display:flex;flex-direction:row;align-items:center;padding:16px;gap:18px;clip-path:inset(0 0 0 0);transition:transform .45s cubic-bezier(.16,.9,.2,1),clip-path .35s cubic-bezier(.16,.9,.2,1) .35s}.dface.flying{clip-path:inset(0 var(--clip-right, 0px) 0 0)}.dface img.dimg{flex:1 1 58%;min-width:0;max-width:58%;max-height:76vh;object-fit:contain}.dinfo{flex:1 1 42%;min-width:0;display:flex;flex-direction:column;gap:8px;text-align:center}body.portrait .dface{flex-direction:column}body.portrait .dface.flying{clip-path:inset(0 0 var(--clip-bottom, 0px) 0)}body.portrait .dface img{flex:0 0 auto;max-width:100%;max-height:45vh}body.portrait .dinfo{flex:0 0 auto;width:100%}.dface .muted{color:inherit;opacity:.78}.dtitle{font-family:var(--font-body);font-weight:800;font-size:19px;line-height:1.2;letter-spacing:-.02em}.ddate{font-family:var(--font-mono);font-weight:700;font-size:15px;letter-spacing:.1em}.dfield{font-size:13px;color:inherit;opacity:.78;text-align:left}.dfield .dlabel{font-family:var(--font-mono);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;opacity:1;margin-right:6px}.ddesc{font-size:13px;color:inherit;opacity:.78;line-height:1.4;text-align:left}.doutcome{font-family:var(--font-mono);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.08em}#stage,.timeline,#menu .strip{background-image:repeating-linear-gradient(0deg,transparent 0 2px,rgba(255,255,255,.045) 2px 4px)}:root[data-theme=light] #stage,:root[data-theme=light] .timeline,:root[data-theme=light] #menu .strip{background-image:none}
