*{margin:0;padding:0;box-sizing:border-box}html,body{width:100%;height:100%;overflow:hidden;background:#010103}canvas{display:block;width:100%;height:100%;touch-action:none}.mono{font:10px/1 JetBrains Mono,monospace;letter-spacing:.08em;text-transform:uppercase}#nav{position:fixed;bottom:16px;right:16px;z-index:10;display:flex;gap:12px;align-items:center}#nav a,#nav span,#nav button{color:#ffffff38;font:10px/1 JetBrains Mono,monospace;text-decoration:none;letter-spacing:.05em;text-transform:uppercase;transition:color .4s;background:none;border:none;cursor:pointer;padding:0}#nav a:hover,#nav button:hover{color:#ffffff8c}#nav a.nav-current{color:#fff6;pointer-events:none}.nav-sep{color:#ffffff14!important}#mode-label{position:fixed;top:16px;left:16px;z-index:10;color:#ffffff2e;transition:color .8s}#mode-label b{font-weight:400;color:#ffffff6b}#stat{position:fixed;bottom:16px;left:16px;z-index:10;color:#ffffff38}#stat span{margin-right:14px}#loading{position:fixed;inset:0;display:flex;flex-direction:column;gap:12px;align-items:center;justify-content:center;background:#010103;z-index:100;transition:opacity 1.2s}#loading span{color:#ffffff2e;font:11px/1 JetBrains Mono,monospace;letter-spacing:.15em;text-transform:uppercase}#loading small{color:#ffffff1a;font:10px/1.6 JetBrains Mono,monospace;letter-spacing:.05em;max-width:420px;text-align:center}#loading.hidden{opacity:0;pointer-events:none}#help{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;background:#030306db;z-index:80;opacity:0;pointer-events:none;transition:opacity .3s}#help.visible{opacity:1;pointer-events:auto}#help .c{color:#ffffff80;font:12px/1.9 JetBrains Mono,monospace;letter-spacing:.03em;max-width:420px}#help h3{color:#ffffffb3;font-size:11px;letter-spacing:.1em;text-transform:uppercase;margin-bottom:12px;font-weight:400}#help .k{color:#ffffffbf}#flash{position:fixed;inset:0;background:#ffffff14;z-index:50;pointer-events:none;opacity:0;transition:opacity .15s}#flash.active{opacity:1}#deck{position:fixed;top:16px;right:16px;z-index:20;width:300px;max-height:calc(100vh - 80px);overflow-y:auto;background:#06060ab8;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border:1px solid rgba(255,255,255,.07);border-radius:6px;padding:14px 14px 10px;transform:translate(340px);opacity:0;transition:transform .45s cubic-bezier(.2,.8,.2,1),opacity .4s;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.12) transparent}#deck.open{transform:translate(0);opacity:1}#deck h4{color:#ffffff59;font:10px/1 JetBrains Mono,monospace;letter-spacing:.12em;text-transform:uppercase;font-weight:400;margin:12px 0 8px}#deck h4:first-child{margin-top:0}.phases{display:grid;grid-template-columns:repeat(4,1fr);gap:4px}.phases button,.row select,#deck .act{color:#ffffff73;background:#ffffff0a;border:1px solid rgba(255,255,255,.06);border-radius:3px;font:9px/1 JetBrains Mono,monospace;letter-spacing:.06em;text-transform:uppercase;padding:7px 4px;cursor:pointer;transition:all .25s}.phases button:hover,#deck .act:hover{color:#ffffffe6;background:#ffffff17}.phases button.on{color:#fff;background:#ffffff24;border-color:#ffffff40}.row{display:grid;grid-template-columns:88px 1fr 44px;align-items:center;gap:8px;margin:4px 0}.row label{color:#fff6;font:9px/1 JetBrains Mono,monospace;letter-spacing:.05em;text-transform:uppercase}.row output{color:#ffffff8c;font:9px/1 JetBrains Mono,monospace;text-align:right}.row select{padding:5px 4px;width:100%;grid-column:2 / 4}input[type=range]{-webkit-appearance:none;appearance:none;width:100%;height:14px;background:transparent;cursor:pointer}input[type=range]::-webkit-slider-runnable-track{height:2px;background:#ffffff24}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:10px;height:10px;border-radius:50%;background:#ffffffbf;margin-top:-4px}input[type=range]::-moz-range-track{height:2px;background:#ffffff24}input[type=range]::-moz-range-thumb{width:10px;height:10px;border:none;border-radius:50%;background:#ffffffbf}.acts{display:flex;gap:4px;margin-top:10px}.acts .act{flex:1}#deck .note{color:#ffffff38;font:9px/1.6 JetBrains Mono,monospace;letter-spacing:.04em;margin-top:10px}
