html,body{height:100%;color:#d8f6f2;overscroll-behavior:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent;background:#05070a;height:100dvh;margin:0;font:15px/1.4 ui-monospace,Menlo,Consolas,monospace;overflow:hidden}#scene{touch-action:none;width:100%;height:100%;display:block;position:fixed;inset:0}button,select,input{touch-action:manipulation}#safe-probe{visibility:hidden;pointer-events:none;padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);position:fixed}#ui{pointer-events:none;position:fixed;inset:0}#ui>*{pointer-events:auto}button,select{font:inherit;color:inherit;cursor:pointer;background:#0d1a1d;border:1px solid #1f6f69;border-radius:4px;padding:6px 10px}button:disabled,select:disabled{opacity:.4;cursor:default}button.on{color:#05070a;background:#1f6f69}.panel{white-space:nowrap;background:#041214d1;border:1px solid #1f6f69;border-radius:8px;align-items:center;gap:14px;padding:12px 16px;display:flex;position:fixed;bottom:24px;left:50%;transform:translate(-50%)}.diag{top:calc(env(safe-area-inset-top) + 4px);right:calc(env(safe-area-inset-right) + 4px);color:#9fe8df;pointer-events:none;z-index:50;white-space:pre;background:#041214d9;border:1px solid #1f6f69;margin:0;padding:4px 6px;font:11px/1.3 ui-monospace,Menlo,Consolas,monospace;position:fixed}@font-face{font-family:Michroma;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/fonts/Michroma-Regular.woff2)format("woff2")}@font-face{font-family:Saira Semi Condensed;font-style:normal;font-weight:600;font-display:swap;src:url(/assets/fonts/SairaSemiCondensed-SemiBold.woff2)format("woff2")}@font-face{font-family:Saira Semi Condensed;font-style:normal;font-weight:700;font-display:swap;src:url(/assets/fonts/SairaSemiCondensed-Bold.woff2)format("woff2")}:root{--calm:#3fe0d0;--calm-hi:#c8fff8;--ink:#effffc;--amber:#ffb347;--red:#ff4b3e;--scream:#ff2a1a;--mag:#ff3fa4;--glass:#00080c9e;--disp:"Michroma", ui-monospace, Menlo, Consolas, monospace;--text:"Saira Semi Condensed", ui-monospace, Menlo, Consolas, monospace}.panel.controls{white-space:nowrap;background:0 0;border:0;border-radius:0;padding:0;display:block;position:fixed;inset:0;transform:none}#ui>.panel.controls{pointer-events:none}.panel.controls>*{pointer-events:auto;box-sizing:border-box;position:absolute}.panel.controls button{color:var(--ink);cursor:pointer;background:0 0;border:0;border-radius:50%;padding:0}.panel.controls button:disabled{opacity:.35;cursor:default}.panel.controls button:focus-visible,.panel.controls .dial:focus-visible{outline-offset:3px;outline:1.5px solid #c8fff8b3}.panel.controls .dial:focus:not(:focus-visible){outline:none}.panel.controls .chrome{font-family:var(--disp);background:linear-gradient(#fff 0%,#d9fffa 40%,#6ff0e2 54%,#148c84 100%);color:#0000;filter:drop-shadow(0 0 6px #3fe0d073)drop-shadow(-.7px 0 #ff3fa480);-webkit-background-clip:text;background-clip:text;font-weight:400}.panel.controls .dial{left:var(--dial-x);top:var(--dial-y);width:var(--dial-w);height:var(--dial-h);touch-action:none;cursor:pointer;transition:opacity .25s}.panel.controls .dial.dim{opacity:.35;cursor:default;pointer-events:none}.panel.controls .dial svg{width:100%;height:100%;position:absolute;top:0;left:0;overflow:visible}.panel.controls .dial .lab{font-family:var(--text);font-weight:600}.panel.controls .dial .lab.on{filter:drop-shadow(0 0 5px var(--mag));font-weight:700}.panel.controls .dial .tk{filter:drop-shadow(0 0 3px var(--calm))}.panel.controls .dial .tk.on,.panel.controls .dial .ptr{filter:drop-shadow(0 0 6px var(--mag))}.panel.controls .dial .read{left:0;right:0;bottom:var(--read-b);text-align:center;pointer-events:none;position:absolute}.panel.controls .dial .label{font:600 var(--f-label)/1 var(--text);letter-spacing:.22em;text-transform:uppercase;color:#c8fff8b8}.panel.controls .dial .v{font-size:var(--f-stake);line-height:1}.panel.controls .dial .v small{font:600 var(--f-label)/1 var(--text);letter-spacing:.2em;margin-left:calc(5px * var(--v-s));-webkit-text-fill-color:#dcfffad9}.panel.controls .dial .m{font:600 var(--f-label)/1 var(--text);letter-spacing:.12em;color:#dcfffac7;margin-top:var(--read-gap);white-space:normal}.panel.controls .dial .m span{white-space:nowrap}.panel.controls .roll{left:var(--ring-x);top:var(--ring-y);width:var(--ring-s);height:var(--ring-s);transition:opacity .25s,transform .12s}.panel.controls .roll svg{pointer-events:none;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.panel.controls .roll .core{filter:drop-shadow(0 0 8px #3fe0d0b3)drop-shadow(0 0 4px #ff3fa44d)}.panel.controls .roll.turn .core{filter:drop-shadow(0 0 8px #3fe0d0b3)drop-shadow(0 0 14px #ff3fa4cc)}.panel.controls .roll .t{font-size:var(--f-roll);letter-spacing:.12em;pointer-events:none;place-items:center;line-height:1;display:grid;position:absolute;inset:0}.panel.controls .roll .turn-label{left:var(--turn-dx);top:var(--turn-dy);width:var(--turn-w);text-align:center;white-space:nowrap;font:700 var(--f-label)/1 var(--text);letter-spacing:.3em;color:var(--mag);text-shadow:0 0 8px #ff3fa4cc;pointer-events:none;display:none;position:absolute}.panel.controls .roll .halo{pointer-events:none;display:none;position:absolute;inset:0}.panel.controls .roll.turn .turn-label,.panel.controls .roll.turn .halo{display:block}.panel.controls .roll.turn .halo{animation:1.6s ease-in-out infinite dr-halo}@keyframes dr-halo{0%,to{opacity:.55;transform:scale(.97)}50%{opacity:1;transform:scale(1.03)}}@media (prefers-reduced-motion:reduce){.panel.controls .roll.turn .halo{animation:none}}.panel.controls .roll:active:not(:disabled){transform:scale(.96)}.panel.controls .sound-toggle{left:var(--gear-x);top:var(--gear-y);width:var(--gear-s);height:var(--gear-s)}.panel.controls .sound-toggle svg{pointer-events:none;width:100%;height:100%;display:block;overflow:visible}.panel.controls .sound-toggle .hub{filter:drop-shadow(0 0 3px var(--calm))}.panel.controls .roll:hover:not(:disabled) .ring,.panel.controls .sound-toggle:hover svg,.panel.controls .sound-toggle.on svg,.panel.controls button.fullscreen:hover{filter:brightness(1.3)}#ripples{pointer-events:none;position:fixed;inset:0;overflow:hidden}#ripples .ripple{pointer-events:none;width:128px;height:128px;margin:-64px 0 0 -64px;position:absolute}#ripples .ripple:before{content:"";box-sizing:border-box;border:3px solid var(--mag);opacity:0;filter:drop-shadow(0 0 8px #ff3fa4)drop-shadow(0 0 3px #ff3fa4e6);border-radius:50%;animation:.45s ease-out backwards dr-ripple;position:absolute;inset:0}#ripples .ripple.r1:before,#ripples .ripple.r2:before{filter:drop-shadow(0 0 8px #3fe0d0)drop-shadow(0 0 3px #3fe0d0e6)}#ripples .ripple.r1:before{animation-delay:70ms}#ripples .ripple.r2:before{animation-delay:.14s}#ripples .ripple.r0:after{content:"";opacity:0;background:radial-gradient(circle,#ff3fa4,#ff3fa4b3 45%,#3fe0d01f 70%,#0000 76%);border-radius:50%;width:48px;height:48px;animation:.16s ease-out backwards dr-ripple-touch;position:absolute;top:40px;left:40px}#ripples .ripple.flash:before{filter:none;background:radial-gradient(circle,#ff3fa4cc,#3fe0d038 60%,#0000 74%);border-width:0;animation:.45s ease-out backwards dr-ripple-flash;inset:20px}@keyframes dr-ripple{0%{opacity:1;border-width:3px;border-color:var(--mag);transform:scale(.35)}55%{opacity:.85}to{opacity:0;border-width:1px;border-color:var(--calm);transform:scale(1)}}@keyframes dr-ripple-touch{0%{opacity:1;transform:scale(.8)}45%{opacity:.9}to{opacity:0;transform:scale(1.15)}}@keyframes dr-ripple-flash{0%{opacity:1}40%{opacity:.85}to{opacity:0}}#ui>.card{pointer-events:none}.card{--u:calc(1px * var(--deb-k,1));left:var(--deb-x,16px);top:var(--deb-y,12%);width:var(--deb-w,calc(100% - 32px));height:var(--deb-h,64%);box-sizing:border-box;text-align:center;color:var(--ink);font-family:var(--text);white-space:normal;justify-content:center;align-items:center;display:flex;position:fixed}.card[hidden],.card [hidden]{display:none}.card .debrief{isolation:isolate;box-sizing:border-box;flex-direction:column;align-items:center;max-width:100%;min-height:0;max-height:100%;display:flex;position:relative}.card.measure .debrief{max-height:none}.card .debrief>*{flex-shrink:0;max-width:100%}.card .debrief:before{content:"";z-index:-1;inset:calc(-18 * var(--u)) calc(-60 * var(--u)) calc(-20 * var(--u));pointer-events:none;background:radial-gradient(50% 60%,#00060ab8,#00060a73 60%,#00060a00 100%);position:absolute}.card.dark .debrief:before{inset:calc(-40 * var(--u)) calc(-150 * var(--u));background:radial-gradient(50% 50%,#000,#000 74%,#0000 100%)}.card .who{font:700 max(12px, calc(12 * var(--u)))/1 var(--text);letter-spacing:.4em;text-indent:.4em;color:#e6fffccc;margin-bottom:calc(6 * var(--u))}.card .headline{font-family:var(--disp);font-weight:400;font-size:calc(46 * var(--u));filter:drop-shadow(0 0 calc(6 * var(--u)) #3fe0d073) drop-shadow(calc(-.7 * var(--u)) 0 #ff3fa480);line-height:1.05}.card .headline.long{font-size:max(12px, calc(28 * var(--u)));text-wrap:balance;line-height:1.2}.card .headline.big,.card .headline.long span{color:#0000;-webkit-box-decoration-break:clone;box-decoration-break:clone;background-image:linear-gradient(#fff 0%,#d9fffa 40%,#6ff0e2 54%,#148c84 100%);-webkit-background-clip:text;background-clip:text}.card .headline.red.big,.card .headline.red.long span{background-image:linear-gradient(180deg, #fff0ee 0%, #ffc2bb 40%, var(--red) 56%, #8f130b 100%)}.card .headline.red{filter:drop-shadow(0 0 calc(8 * var(--u)) #ff4b3e8c) drop-shadow(calc(-.7 * var(--u)) 0 #ff3fa499)}.card .headline.amber.big,.card .headline.amber.long span{background-image:linear-gradient(180deg, #fff7ea 0%, #ffe0b0 40%, var(--amber) 55%, #a8570c 100%)}.card .headline.amber{filter:drop-shadow(0 0 calc(7 * var(--u)) #ffb34780) drop-shadow(calc(-.7 * var(--u)) 0 #ff3fa48c)}.card .amount{font-family:var(--disp);font-size:max(12px, calc(22 * var(--u)));color:var(--calm);margin-top:calc(6 * var(--u));text-shadow:calc(-.6 * var(--u)) 0 #ff3fa48c, calc(.6 * var(--u)) 0 #3fe0d0b3, 0 0 calc(9 * var(--u)) #3fe0d073;line-height:1.2}.card .verdict{font:700 max(12px, calc(12 * var(--u)))/1.2 var(--text);letter-spacing:.3em;text-indent:.3em;color:var(--calm);margin-top:calc(10 * var(--u))}.card.bad .verdict{color:var(--red)}.card ul{overscroll-behavior:contain;pointer-events:auto;scrollbar-width:thin;scrollbar-color:#3fe0d080 transparent;min-height:0;padding:0 0 .25em;list-style:none;overflow-y:auto}.card .debrief>ul{flex-shrink:1}.card .debrief>ul.warnings{flex-shrink:.05}.card ul.warnings{margin:calc(8 * var(--u)) 0 0;max-width:min(100%,34em);font:600 max(12px, calc(12 * var(--u)))/1.35 var(--text);letter-spacing:.04em;color:var(--amber);text-shadow:0 0 calc(8 * var(--u)) #ffb34759}.card ul.warnings:empty{display:none}.card ul.details{margin:calc(12 * var(--u)) 0 0;text-align:left;max-width:min(100%,40em);font:600 max(12px, calc(12 * var(--u)))/1.4 var(--text);letter-spacing:.06em;color:#dcfffac7}.card ul.details li+li{margin-top:calc(3 * var(--u))}.card ul.more{-webkit-mask-image:linear-gradient(#000 calc(100% - 1.6em),#0000);mask-image:linear-gradient(#000 calc(100% - 1.6em),#0000)}.card .actions{justify-content:center;gap:calc(14 * var(--u));margin-top:calc(16 * var(--u));flex-wrap:wrap;display:flex}.card .pill{text-align:center;box-sizing:border-box;cursor:pointer;pointer-events:auto;font:700 max(12px, calc(13 * var(--u)))/1 var(--text);letter-spacing:.26em;text-transform:uppercase;white-space:nowrap;color:var(--ink);padding:calc(14 * var(--u)) calc(22 * var(--u) - .13em) calc(14 * var(--u)) calc(22 * var(--u) + .13em);border:max(1.5px, calc(1.5 * var(--u))) solid #3fe0d0cc;box-shadow:0 0 calc(14 * var(--u)) #3fe0d059, inset 0 0 calc(12 * var(--u)) #3fe0d02e;background:#041e2059;border-radius:999px;margin:0;transition:filter .15s,transform .12s;display:inline-block;position:relative}.card .pill:after{content:"";height:max(100%,44px);position:absolute;top:50%;left:0;right:0;transform:translateY(-50%)}.card .pill.primary{border-color:var(--mag);box-shadow:0 0 calc(16 * var(--u)) #ff3fa473, inset 0 0 calc(14 * var(--u)) #ff3fa438}.card .pill.quiet{box-shadow:none;color:#dcfffab3;padding-left:calc(8 * var(--u) + .13em);padding-right:calc(8 * var(--u) - .13em);background:0 0;border-color:#0000}.card .pill.quiet[aria-expanded=true]{color:var(--ink);text-shadow:0 0 calc(8 * var(--u)) #3fe0d099}.card .pill .key{letter-spacing:.325em;color:#dcfffa99;font-size:.8em}.card .pill:focus-visible{outline-offset:3px;outline:1.5px solid #c8fff8b3}.card .pill:focus:not(:focus-visible){outline:none}.card .pill:active{transform:scale(.97)}@media (hover:hover){.card .pill:hover{filter:brightness(1.3)}}.card .pill[hidden]{display:none}.panel.settings{left:auto;right:calc(env(safe-area-inset-right) + 8px);top:auto;bottom:calc(var(--v-clear,96px) + 6px);width:min(320px,70vw);max-height:calc(100% - var(--v-clear,96px) - 6px - var(--v-top,16px));overscroll-behavior:contain;box-sizing:border-box;white-space:normal;color:var(--ink);font-family:var(--text);pointer-events:auto;scrollbar-width:thin;scrollbar-color:#3fe0d080 transparent;background:radial-gradient(78% 76%,#00080cf0 0%,#00080ceb 70%,#00080c80 92%,#00080c1f 100%);border:0;border-radius:22px;flex-direction:column;justify-content:flex-start;align-items:stretch;gap:10px;padding:20px 24px;display:flex;overflow-y:auto;transform:none}.panel.settings[hidden]{display:none}.panel.settings label{cursor:pointer;justify-content:space-between;align-items:center;gap:14px;min-height:30px;display:flex}.panel.settings label.switch{justify-content:flex-start}.panel.settings label>span{font:600 12px/1.25 var(--text);letter-spacing:.22em;text-transform:uppercase;color:#c8fff8b8}.panel.settings label.slider>span,.panel.settings label.speed-line>span{flex:0 0 5.6em}.panel.settings label.switch>span{letter-spacing:.16em}.panel.settings .hint{font:600 12px/1.35 var(--text);letter-spacing:.06em;color:#dcfffa99;margin:2px 0 0}.panel.settings select{appearance:none;cursor:pointer;min-width:0;font:700 12px/1 var(--text);letter-spacing:.2em;text-transform:uppercase;color:var(--ink);background:#041e2059;border:1.5px solid #3fe0d0cc;border-radius:999px;flex:auto;padding:8px 14px;box-shadow:0 0 10px #3fe0d04d,inset 0 0 8px #3fe0d026}.panel.settings select option{color:var(--ink);background:#04181a}.panel.settings input[type=range]{cursor:pointer;appearance:none;min-width:0;height:22px;accent-color:var(--mag);background:0 0;flex:auto;margin:0}.panel.settings input[type=range]::-webkit-slider-runnable-track{background:#3fe0d0bf;border-radius:2px;height:2px;box-shadow:0 0 6px #3fe0d073}.panel.settings input[type=range]::-moz-range-track{background:#3fe0d0bf;border-radius:2px;height:2px;box-shadow:0 0 6px #3fe0d073}.panel.settings input[type=range]::-webkit-slider-thumb{appearance:none;background:var(--mag);border:0;border-radius:50%;width:14px;height:14px;margin-top:-6px;box-shadow:0 0 8px #ff3fa4e6,inset 0 0 2px #fff}.panel.settings input[type=range]::-moz-range-thumb{background:var(--mag);border:0;border-radius:50%;width:14px;height:14px;box-shadow:0 0 8px #ff3fa4e6,inset 0 0 2px #fff}.panel.settings input[type=checkbox]{appearance:none;box-sizing:border-box;cursor:pointer;background:#041e2059;border:1.5px solid #3fe0d0cc;border-radius:50%;flex:none;width:20px;height:20px;margin:0;transition:background .15s,box-shadow .15s}.panel.settings input[type=checkbox]:checked{background:radial-gradient(circle, var(--calm-hi) 0%, var(--calm) 55%, #3fe0d0bf 100%);box-shadow:0 0 10px #3fe0d0b3}.panel.settings input:focus-visible,.panel.settings select:focus-visible{outline-offset:3px;outline:1.5px solid #c8fff8b3}.panel.settings input:focus:not(:focus-visible),.panel.settings select:focus:not(:focus-visible){outline:none}#turn{z-index:40;box-sizing:border-box;color:var(--calm);text-align:center;background:radial-gradient(80% 50% at 50% 48%,#3fe0d014,#3fe0d000 70%),#05070a;flex-direction:column;justify-content:center;align-items:center;gap:28px;padding:24px;display:none;position:fixed;inset:0}#turn p{max-width:16em;font:700 14px/1.6 var(--text);letter-spacing:.26em;text-indent:.26em;text-transform:uppercase;text-wrap:balance;color:var(--ink);text-shadow:-.6px 0 #ff3fa48c,.6px 0 #3fe0d0b3,0 0 9px #3fe0d073;margin:0}#turn svg{filter:drop-shadow(0 0 4px #3fe0d0b3);overflow:visible}body.turn #turn{display:flex}#turn .phone{transform-box:fill-box;transform-origin:50%;animation:2.4s ease-in-out infinite dr-turn}@keyframes dr-turn{0%,25%{transform:rotate(0)}65%,to{transform:rotate(-90deg)}}@media (prefers-reduced-motion:reduce){#turn .phone{animation:none;transform:rotate(-90deg)}}.tip{left:50%;top:calc(env(safe-area-inset-top) + 52px);z-index:45;box-sizing:border-box;max-width:calc(100vw - 32px);font:600 12px/1.3 var(--text);letter-spacing:.1em;color:#dcfffae6;background:var(--glass);border:1.5px solid #3fe0d099;border-radius:999px;align-items:center;gap:4px;padding:0 6px 0 16px;display:flex;position:fixed;transform:translate(-50%);box-shadow:0 0 12px #3fe0d040,inset 0 0 10px #3fe0d01f}.tip[hidden],button.fullscreen[hidden]{display:none}.tip button{min-width:44px;min-height:44px;color:var(--calm);font:700 14px/1 var(--text);text-shadow:0 0 6px #3fe0d0b3;cursor:pointer;background:0 0;border:0;border-radius:50%;flex:none;margin:-8px 0;padding:0}.tip button:focus-visible{outline-offset:-4px;outline:1.5px solid #c8fff8b3}.panel.controls button.fullscreen{left:var(--fs-x);top:var(--gear-y);width:var(--gear-s);height:var(--gear-s)}.panel.controls button.fullscreen svg{pointer-events:none;width:100%;height:100%;display:block;overflow:visible}.panel.controls button.fullscreen .hub{filter:drop-shadow(0 0 3px var(--calm))}
