*,:before,:after{box-sizing:border-box}:root{--black:#08030b;--ground:#0b0410;--panel:#120618;--sec:#1f0a20;--line:#2c1226;--wine:#8e1642;--rose:#e8517e;--coral:#ff7a4d;--gold:#f0b44a;--cream:#f6ecef;--muted:#9e8390;--dim:#6e5964;--green:#6fcf97;--ui:-apple-system, "SF Pro Text", BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--disp:"SF Pro Display", -apple-system, BlinkMacSystemFont, "Helvetica Neue", sans-serif;--mono:ui-monospace, SFMono-Regular, Menlo, monospace;--hot:linear-gradient(158deg, #4a0c2b 0%, #b2214f 44%, #f0603f 80%, #f0b44a 100%);--cold:linear-gradient(158deg, #12040f 0%, #3a0a22 46%, #7a1238 100%);--money:linear-gradient(158deg, #a8690b 0%, #f0b44a 44%, #ffd98c 100%);--safe-b:env(safe-area-inset-bottom,0px)}html,body{height:100%}body{background:var(--ground);color:var(--cream);font:15px/1.55 var(--ui);-webkit-font-smoothing:antialiased;overscroll-behavior-y:none;margin:0}button{font:inherit;color:inherit;cursor:pointer}button:disabled{cursor:default}input{font:inherit}.screen{flex-direction:column;display:flex;position:fixed;inset:0;overflow:hidden}.screen.scroll{min-height:100%;position:absolute;overflow-y:auto}.flood{z-index:0;background:var(--hot);position:absolute;inset:0}.flood.cold{background:var(--cold)}.flood.money{background:var(--money)}.veil{z-index:0;background:radial-gradient(78% 58% at 18% 26%,#00000038,#0000 72%);position:absolute;inset:0}.lift{z-index:2;position:relative}.topbar{background:var(--black);padding:13px 20px;padding-top:calc(13px + env(safe-area-inset-top,0px));justify-content:space-between;align-items:center;display:flex}.topbar b,.topbar i{font:800 9.5px/1 var(--disp);letter-spacing:.19em;text-transform:uppercase;font-style:normal}.topbar b{color:#fff}.topbar i{color:var(--gold)}.topbar.pale{background:#00000024}.topbar.pale b{color:#3a1c02}.topbar.pale i{color:#7a4b08}.body{flex-direction:column;flex:1;justify-content:center;min-height:0;padding:0 22px;display:flex}.foot{padding:0 22px calc(20px + var(--safe-b))}.act{font:800 clamp(26px, 8vw, 34px)/1.06 var(--disp);letter-spacing:-.032em;color:#fff;text-shadow:0 3px 24px #28001461}.act.sm{font-size:clamp(21px,6.4vw,27px)}.act.dark{color:#2e1503;text-shadow:none}.note{font:800 9.5px/1.5 var(--disp);letter-spacing:.16em;text-transform:uppercase;color:#ffffffa8;margin-top:17px}.note.dark{color:#2e1503b3}.said{font:600 13px/1.6 var(--ui);color:#ffffffb8;margin:0 0 18px}.said.dark{color:#2e1503d1}.btn{text-align:center;width:100%;font:800 10.5px/1 var(--disp);letter-spacing:.2em;text-transform:uppercase;background:0 0;border:0;border-radius:8px;padding:16px;transition:transform .12s,opacity .12s;display:block}.btn:active:not(:disabled){transform:scale(.985)}.btn:disabled{opacity:.45}.btn.dark{background:var(--black);color:#fff}.btn.ghost{color:#fffc;box-shadow:inset 0 0 0 1px #ffffff57}.btn.hot{background:linear-gradient(90deg, var(--rose), var(--coral));color:#fff}.btn.gold{background:linear-gradient(90deg, var(--gold), #ff9a3c);color:#331a00}.btn.flat{color:#8c7480;background:#1c0a1a}.btn.danger{color:var(--rose);background:#3a1220}.btn+.btn{margin-top:9px}.clock{justify-content:space-between;align-items:flex-end;margin-bottom:15px;display:flex}.clock .t{font:800 52px/.86 var(--disp);letter-spacing:-.045em;color:#fff;font-variant-numeric:tabular-nums}.clock .n{font:800 9.5px/1 var(--disp);letter-spacing:.16em;text-transform:uppercase;color:#ffffff9e;padding-bottom:5px}.ecg{width:100%;height:32px;display:block}.pips{justify-content:center;gap:5px;margin-top:15px;display:flex}.pips i{background:#ffffff42;border-radius:2px;width:22px;height:4px}.pips i.spent{background:#ffffffb8}.deckback{background:repeating-linear-gradient(45deg,#2a1019,#2a1019 9px,#3a1526 9px 18px);border-radius:14px;justify-content:center;align-items:center;width:126px;height:176px;margin:0 auto 26px;animation:3.6s ease-in-out infinite alternate float;display:flex;box-shadow:inset 0 0 0 1px #ff688542,0 20px 40px -18px #000}@keyframes float{to{transform:translateY(-7px)}}@media (prefers-reduced-motion:reduce){.deckback{animation:none}.btn{transition:none}}.dhead{background:var(--panel);padding:26px 20px 16px;padding-top:calc(26px + env(safe-area-inset-top,0px));flex:none}.dhead h3{font:800 25px/1.05 var(--disp);letter-spacing:-.03em;color:#fff;text-transform:uppercase;margin:0}.dhead .row{justify-content:space-between;align-items:center;gap:12px;display:flex}.dhead .of{font:800 12px/1 var(--disp);color:var(--coral)}.dhead p{color:var(--muted);margin:11px 0 0;font-size:12px;line-height:1.55}.dhead p.tag{font:800 9px/1.6 var(--disp);letter-spacing:.17em;text-transform:uppercase;color:var(--gold)}.dsec{background:var(--sec);z-index:3;font:800 9px/1 var(--disp);letter-spacing:.19em;text-transform:uppercase;color:#c8a6ba;padding:9px 20px;position:sticky;top:0}.dlist{-webkit-overflow-scrolling:touch;flex:1;overflow-y:auto}.drow{justify-content:space-between;align-items:center;gap:12px;min-height:47px;padding:11px 20px;display:flex}.drow span{font:600 13.5px/1.25 var(--ui);color:#eadce3}.drow small{font:400 11px/1.35 var(--ui);color:var(--dim);margin-top:3px;display:block}.dfill{flex:1}.dfoot{padding:16px 20px calc(20px + var(--safe-b));background:var(--panel);flex:none}.seg{flex:none;gap:3px;display:flex}.seg button{font:800 8.5px/1 var(--disp);letter-spacing:.12em;text-transform:uppercase;color:#7c6572;background:#1c0a1a;border:0;border-radius:3px;padding:9px 11px}.seg button.yes{background:var(--coral);color:#2a0a00}.seg button.no{color:var(--rose);background:#3a1220}.prog{gap:3px;margin-top:14px;display:flex}.prog i{background:var(--line);border-radius:1px;flex:1;height:5px}.prog i.on{background:linear-gradient(90deg, var(--rose), var(--coral))}.tog{background:var(--line);border:0;border-radius:12px;flex:none;width:42px;height:24px;padding:0;position:relative}.tog i{background:var(--dim);border-radius:50%;width:18px;height:18px;transition:left .16s;position:absolute;top:3px;left:3px}.tog.on{background:linear-gradient(90deg, var(--rose), var(--coral))}.tog.on i{background:#fff;left:21px}.chz{flex-wrap:wrap;gap:6px;display:flex}.chz button{font:700 12px/1 var(--ui);background:var(--panel);box-shadow:inset 0 0 0 1px var(--line);color:var(--muted);border:0;border-radius:7px;padding:11px 13px}.chz button.on{background:linear-gradient(90deg, var(--rose), var(--coral));color:#fff;box-shadow:none}.fld{padding:0 20px 18px}.fld label{font:800 9px/1 var(--disp);letter-spacing:.18em;text-transform:uppercase;color:var(--gold);margin:0 0 10px;display:block}.inp{background:var(--panel);width:100%;height:48px;box-shadow:inset 0 0 0 1px var(--line);font:700 16px/1 var(--ui);color:#fff;border:0;border-radius:8px;padding:0 14px}.inp:focus{box-shadow:inset 0 0 0 2px var(--coral);outline:0}.hint{color:var(--dim);margin:12px 0 0;font-size:11.5px;line-height:1.5}.err{color:#ffc2cf;font:600 12.5px/1.45 var(--ui);background:#3a1220;border-radius:8px;margin:0 20px 14px;padding:11px 13px}.lp{text-align:left;align-items:flex-start}.lp img{filter:drop-shadow(0 6px 30px #00000080);width:74px;height:74px;margin-bottom:26px;display:block}.lp h1{font:800 clamp(38px, 13vw, 48px)/.94 var(--disp);letter-spacing:-.045em;color:#fff;margin:0}.lp p{font:600 13.5px/1.55 var(--ui);color:#fffc;margin:18px 0 0}.gate{text-align:center;flex-direction:column;flex:1;justify-content:center;padding:0 22px;display:flex}.gate h3{font:800 23px/1.1 var(--disp);letter-spacing:-.03em;color:#fff;text-transform:uppercase;margin:0 0 8px}.gate p{color:var(--muted);margin:0 0 30px;font-size:12.5px}.codeboxes{justify-content:center;gap:6px;display:flex;position:relative}.codeboxes i{background:var(--panel);max-width:52px;height:54px;box-shadow:inset 0 0 0 1px var(--line);font:800 24px/54px var(--disp);color:#fff;text-align:center;letter-spacing:-.02em;border-radius:7px;flex:1;font-style:normal}.codeboxes i.cur{box-shadow:inset 0 0 0 2px var(--coral)}.codeboxes i.e{color:var(--line)}.codeboxes input{opacity:0;letter-spacing:2em;background:0 0;border:0;width:100%;height:100%;position:absolute;inset:0}.codehero{background:var(--panel);text-align:center;padding:26px 20px 20px;padding-top:calc(26px + env(safe-area-inset-top,0px));flex:none}.codehero b{font:800 clamp(32px, 11vw, 40px)/1 var(--disp);letter-spacing:.04em;background:linear-gradient(90deg, var(--rose), var(--gold));color:#0000;-webkit-background-clip:text;background-clip:text;display:block}.codehero p{font:800 9px/1 var(--disp);letter-spacing:.17em;text-transform:uppercase;color:var(--dim);margin:10px 0 0}.pr{align-items:center;gap:11px;height:52px;padding:0 20px;display:flex}.pr u{width:30px;height:30px;font:800 12px/30px var(--disp);color:#fff;text-align:center;background:linear-gradient(150deg,#4a0c2b,#8e1642);border-radius:8px;flex:none;text-decoration:none}.pr span{font:600 13.5px/1 var(--ui);color:#eadce3;flex:1}.pr em{font:800 8.5px/1 var(--disp);letter-spacing:.13em;text-transform:uppercase;color:var(--green);background:#12301f;border-radius:3px;padding:6px 8px;font-style:normal}.pr em.wait{color:var(--gold);background:#31210a}.pr em.host{background:var(--line);color:#c8a6ba}.kit{grid-template-columns:1fr 1fr;gap:7px;padding:16px 20px;display:grid}.kit button{font:700 12px/1.2 var(--ui);background:var(--panel);min-height:60px;box-shadow:inset 0 0 0 1px var(--line);color:#8c7480;text-align:left;border:0;border-radius:8px;align-items:flex-end;padding:10px;display:flex}.kit button.on{color:#fff;box-shadow:none;background:linear-gradient(150deg,#4a0c2b,#8e1642)}.vopt{text-align:left;background:#0000004d;border:0;border-radius:9px;width:100%;margin-bottom:8px;padding:13px 14px;display:block;position:relative;overflow:hidden}.vopt .bar{background:#ffffff21;transition:width .3s;position:absolute;top:0;bottom:0;left:0}.vopt p{font:700 13px/1.35 var(--ui);color:#fff;margin:0;position:relative}.vopt b{font:800 9px/1 var(--disp);letter-spacing:.15em;text-transform:uppercase;color:#ffffffb8;margin-top:7px;display:block;position:relative}.vopt.lead .bar{background:#ffffff42}.vopt.mine{box-shadow:inset 0 0 0 2px #fff}.wt{flex-direction:column;flex:1;justify-content:center;padding:0 26px;display:flex}.wt h3{font:800 clamp(22px, 7vw, 27px)/1.1 var(--disp);letter-spacing:-.035em;color:#fff;margin:0 0 14px}.wt p{font:600 14px/1.6 var(--ui);color:var(--muted);margin:0}.wt small{font:800 9px/1.6 var(--disp);letter-spacing:.17em;text-transform:uppercase;color:var(--dim);margin-top:26px;display:block}.pulsedot{background:var(--coral);width:7px;height:7px;box-shadow:0 0 14px var(--coral);border-radius:50%;margin-bottom:24px;animation:2.2s ease-in-out infinite beat}@keyframes beat{50%{opacity:.35}}.hrow{border-bottom:1px solid #ffffff0b;gap:12px;padding:13px 20px;display:flex}.hrow .tm{font:600 10.5px/1.5 var(--mono);color:var(--dim);flex:none;width:40px}.hrow .bd{flex:1;min-width:0}.hrow .who{font:800 8.5px/1 var(--disp);letter-spacing:.15em;text-transform:uppercase;color:var(--gold);margin-bottom:5px}.hrow p{font:600 12.5px/1.4 var(--ui);color:#c4b0b9;margin:0}.hrow em{font:800 8px/1 var(--disp);letter-spacing:.13em;text-transform:uppercase;border-radius:3px;flex:none;height:16px;padding:4px 6px;font-style:normal}.hrow em.took{color:var(--green);background:#12301f}.hrow em.refused{color:var(--rose);background:#3a1220}.hrow em.forced{color:var(--gold);background:#31210a}.hrow em.stopped,.hrow em.skipped{background:var(--line);color:#c8a6ba}.tabs{padding:8px 12px calc(8px + var(--safe-b));background:var(--black);flex:none;gap:3px;display:flex}.tabs button{color:var(--dim);font:800 8.5px/1 var(--disp);letter-spacing:.13em;text-transform:uppercase;background:0 0;border:0;border-radius:6px;flex:1;padding:10px 4px}.tabs button.on{background:var(--panel);color:#fff}.room{background:var(--black);grid-template-rows:1fr 62px;grid-template-columns:1fr minmax(200px,26%);gap:3px;padding:3px;display:grid;position:fixed;inset:0}.room-main{background:linear-gradient(150deg,#8e1642,#e8517e 48%,#ff7a4d);flex-direction:column;min-width:0;padding:3vh 3vw;display:flex}.room-main.idle{background:var(--panel)}.room-tag{font:800 clamp(9px,1.1vw,12px)/1 var(--disp);letter-spacing:.2em;text-transform:uppercase;color:#ffffffbf}.room-act{font:800 clamp(20px, 3.4vw, 44px)/1.1 var(--disp);letter-spacing:-.03em;color:#fff;flex:1;align-items:center;display:flex}.room-clock{font:800 clamp(30px, 5vw, 64px)/.85 var(--disp);letter-spacing:-.045em;color:#fff;font-variant-numeric:tabular-nums}.room-side{flex-direction:column;gap:3px;min-width:0;display:flex}.room-gold{background:linear-gradient(160deg, var(--gold), #f08a3c);flex:1;padding:2vh 1.4vw;overflow:hidden}.room-gold h5{font:800 clamp(8px,.9vw,11px)/1 var(--disp);letter-spacing:.18em;text-transform:uppercase;color:#4a2606;margin:0 0 11px}.rmk{justify-content:space-between;align-items:baseline;gap:8px;margin-bottom:9px;display:flex}.rmk p{font:600 clamp(10px,1.05vw,14px)/1.35 var(--ui);color:#4a2606;flex:1;margin:0}.rmk b{font:800 clamp(11px,1.2vw,16px)/1 var(--disp);color:#2e1503;flex:none}.room-plum{background:var(--sec);height:34%;padding:2vh 1.4vw;overflow:hidden}.room-plum h5{font:800 clamp(8px,.9vw,11px)/1 var(--disp);letter-spacing:.18em;text-transform:uppercase;color:#c8a6ba;margin:0 0 10px}.rpl{font:600 clamp(10px,1.1vw,14px)/1.5 var(--ui);color:var(--muted);align-items:center;gap:7px;display:flex}.rpl u{background:#452038;border-radius:1px;flex:none;width:5px;height:5px}.rpl.now{color:#fff}.rpl.now u{background:var(--coral)}.room-bar{background:var(--panel);grid-column:1/-1;align-items:center;gap:clamp(14px,2.4vw,34px);padding:0 20px;display:flex}.room-bar div{align-items:baseline;gap:7px;display:flex}.room-bar b{font:800 clamp(16px,2vw,26px)/1 var(--disp);color:#fff;letter-spacing:-.03em}.room-bar i{font:800 clamp(7px,.8vw,10px)/1 var(--disp);letter-spacing:.16em;text-transform:uppercase;color:#7c6572;font-style:normal}.room-bar .mark{align-items:center;gap:8px;margin-left:auto;display:flex}.room-bar .mark img{width:18px;height:18px;display:block}.room-bar .mark b{letter-spacing:.2em;color:var(--muted);font-size:clamp(8px,.9vw,11px)}.centred{text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:14px;padding:0 26px;display:flex}.centred p{color:var(--muted);margin:0;font-size:13.5px}.spin{border:2px solid var(--line);border-top-color:var(--coral);border-radius:50%;width:26px;height:26px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}
