:root{color-scheme:dark;font-family:Trebuchet MS,Segoe UI,system-ui,sans-serif;color:#f3f5fc;background:#0c1322;font-synthesis:none}*{box-sizing:border-box}body{margin:0;min-width:280px;min-height:100svh;overflow-x:hidden;background:radial-gradient(circle at 50% 0%,#1d2f52,#0c1322 70%)}button,a,canvas{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer;color:inherit;border:0}button:disabled{cursor:default;opacity:.45}button:focus-visible,a:focus-visible,canvas:focus-visible{outline:2px solid #f7c95c;outline-offset:3px}[hidden]{display:none!important}#app{max-width:430px;margin:0 auto;padding:max(12px,env(safe-area-inset-top)) 14px max(12px,env(safe-area-inset-bottom))}.masthead{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:10px}.brand{display:flex;align-items:center;gap:10px}.brand-mark{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:#172746;border:1px solid #f7c95c66;color:#f7c95c;font-size:20px}h1{font-size:22px;font-weight:700;margin:2px 0 0;letter-spacing:-.4px}h2{font-size:20px;font-weight:700;margin:2px 0 0}.eyebrow{display:block;font-size:9px;letter-spacing:1.8px;font-weight:700;color:#93a8cf;text-transform:uppercase}.masthead-actions{display:flex;align-items:center;gap:6px}.text-button{background:#172746;border:1px solid #3c568666;border-radius:999px;color:#e4ecff;font-size:12px;font-weight:600;padding:7px 11px}.icon-button{background:#172746;border:1px solid #3c568666;width:36px;height:36px;border-radius:50%;font-size:13px;font-weight:700}.stage-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.best-badge{font-size:11px;font-weight:700;letter-spacing:.8px;color:#f7c95c;background:#182744;border:1px solid #f7c95c44;padding:5px 10px;border-radius:999px}.scorebar{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:10px}.score-stat{background:#13203a;border:1px solid #324a7855;border-radius:12px;padding:7px 10px;text-align:center}.stat-label{display:block;font-size:9px;letter-spacing:1.4px;color:#8ea5cf}.score-stat strong{display:block;font-size:16px;margin-top:2px;font-variant-numeric:tabular-nums;color:#fff}#balls-left{color:#f7c95c}.board-shell{position:relative;aspect-ratio:360 / 520;width:100%;max-height:64svh;margin:0 auto;border-radius:18px;overflow:hidden;border:1px solid #45629688;box-shadow:0 16px 40px #0008;background:#0f1b33}@supports (width: min(100%,44svh)){.board-shell{width:min(100%,44.3svh)}}#board{width:100%;height:100%;display:block;touch-action:none;-webkit-user-select:none;user-select:none;cursor:crosshair}.overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:#090f1cd6;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);padding:16px;display:flex;align-items:center;justify-content:center}.dialog{width:100%;max-height:100%;overflow-y:auto;background:#162442;border:1px solid #5978b566;border-radius:16px;padding:20px 16px;text-align:center;box-shadow:0 16px 36px #000b}.dialog h2{font-size:24px;margin:6px 0 8px}.dialog p{font-size:13px;line-height:1.5;color:#bfd0ef;margin:8px 0 14px}.result-score{font-size:38px;font-weight:800;color:#f7c95c;font-variant-numeric:tabular-nums;margin:4px 0}.dialog-actions{display:flex;flex-direction:column;gap:8px}.primary-button,.reward-button,.secondary-button{width:100%;border-radius:10px;padding:12px 10px;font-size:13px;font-weight:700}.primary-button{background:#f7c95c;color:#101b30}.reward-button{background:#2b9e66;color:#fff}.secondary-button{background:#1f335c;border:1px solid #4e6ca455;color:#e4ecff}.stage-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:7px;margin:10px 0 14px}.stage-grid button{background:#1d3058;border:1px solid #48669e55;border-radius:10px;padding:8px 6px;text-align:left;color:#f0f5ff;font-size:12px;font-weight:700}.stage-grid button.current{border-color:#f7c95c}.stage-grid button span{display:block;font-size:10px;font-weight:400;color:#a6bce4;margin-top:2px}.guidance{min-height:36px;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 2px 0;font-size:12px;color:#b7c8e8}.drop-summary{white-space:nowrap;color:#f7c95c;font-weight:700;font-variant-numeric:tabular-nums}footer{display:flex;justify-content:space-between;align-items:center;font-size:10px;color:#7d94bc;padding-top:8px}a{color:#b4c8ee;text-underline-offset:3px}
