:root{--ground:#241430;--tray:#33203e;--cell:#3d2849;--line:#4f3a5c;--ink:#fbeee6;--muted:#c4adc8;--accent:#ff5d8f;--accent-ink:#2a0f1c;--gold:#ffd23f;--g0:#ff4f7b;--g1:#ffd23f;--g2:#3ddc97;--g3:#4cc9f0;--g4:#b388ff;--g5:#ff8c42;--display:"Bowlby One SC", Impact, "Arial Black", sans-serif;--body:"Figtree", system-ui, -apple-system, "Segoe UI", sans-serif;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px)}*{box-sizing:border-box}[hidden]{display:none!important}html,body{background:var(--ground);color:var(--ink);margin:0}body{font-family:var(--body);-webkit-tap-highlight-color:transparent;padding-block:18px 36px;padding-inline:16px;font-size:15px}.wrap{flex-direction:column;gap:14px;max-width:460px;margin:0 auto;display:flex}.game{flex-direction:column;gap:14px;display:flex}.banner{background:var(--cell);color:var(--muted);border-radius:12px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;padding:10px 14px;font-size:.85rem;display:flex}.banner button{flex-shrink:0;padding:7px 12px;font-size:.8rem}header{justify-content:space-between;align-items:flex-end;gap:12px;display:flex}.head-right{align-items:center;gap:8px;display:flex}h1{font-family:var(--display);margin:0;font-size:2rem;font-weight:400;line-height:1}h1 em{color:var(--accent);font-style:normal}.sub{color:var(--muted);font-variant-numeric:tabular-nums;margin-top:6px;font-size:.85rem}.chip{letter-spacing:.09em;text-transform:uppercase;border:1px solid var(--line);color:var(--muted);white-space:nowrap;border-radius:999px;padding:6px 10px;font-size:.7rem;font-weight:700}.chip.ranked{background:var(--accent);color:var(--accent-ink);border-color:#0000}.hud{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.stat{background:var(--tray);border-radius:12px;min-width:0;padding:8px 12px}.stat span{letter-spacing:.09em;text-transform:uppercase;color:var(--muted);font-size:.66rem;font-weight:700;display:block}.stat b{font-family:var(--display);font-variant-numeric:tabular-nums;font-size:1.45rem;font-weight:400;line-height:1.15;display:block}.stat.low b{color:var(--accent)}.board{aspect-ratio:1;touch-action:none;-webkit-user-select:none;user-select:none;background:repeating-conic-gradient(var(--cell) 0 25%, var(--tray) 0 50%) 0 0 / 25% 25%;cursor:pointer;border-radius:16px;width:100%;position:relative;overflow:hidden}.tile{width:12.5%;height:12.5%;transition:transform .18s cubic-bezier(.3,.7,.4,1);position:absolute;top:0;left:0}.tile.fall{transition-duration:.26s;transition-timing-function:cubic-bezier(.5,0,.75,1.25)}.gem{transition:transform .18s,opacity .18s;position:absolute;inset:7%}.gem svg{filter:drop-shadow(0 2px #00000047);width:100%;height:100%;display:block;overflow:visible}.tile.sel .gem{transform:scale(1.18)}.tile.sel:after{content:"";border:2px solid var(--ink);opacity:.85;border-radius:10px;position:absolute;inset:6%}.tile.pop .gem{opacity:0;transition-duration:.2s;transform:scale(1.35)}.board.shake{animation:.25s shake}@keyframes shake{25%{transform:translate(-5px)}75%{transform:translate(5px)}}.status{min-height:1.4em;color:var(--muted);font-weight:600}.status.hot{color:var(--gold)}.card{background:var(--tray);border-radius:16px;flex-direction:column;gap:12px;padding:16px;display:flex}.card h2{letter-spacing:.09em;text-transform:uppercase;color:var(--muted);margin:0;font-size:.72rem}.card-head{justify-content:space-between;align-items:center;display:flex}.big{font-family:var(--display);font-variant-numeric:tabular-nums;font-size:2.6rem;line-height:1}.card p{margin:0;line-height:1.45}.standing{color:var(--gold);font-weight:700}.standing:empty{display:none}.muted{color:var(--muted)}.small{font-size:.85rem}pre.share{background:var(--ground);white-space:pre-wrap;-webkit-user-select:text;user-select:text;border-radius:10px;margin:0;padding:12px;font:14px/1.5 ui-monospace,SFMono-Regular,Menlo,monospace;overflow-x:auto}.row{flex-wrap:wrap;gap:8px;display:flex}.name-row{flex-direction:column;gap:6px;display:flex}.name-row label{color:var(--muted);font-size:.8rem;font-weight:600}.name-row input{min-width:0;font:inherit;color:var(--ink);background:var(--ground);border:1px solid var(--line);border-radius:10px;flex:1;padding:10px 12px}button{font:inherit;cursor:pointer;background:var(--cell);color:var(--ink);border:0;border-radius:10px;padding:11px 16px;font-weight:700}button.primary{background:var(--accent);color:var(--accent-ink)}button.link{color:var(--muted);background:0 0;padding:4px 0;font-size:.85rem;font-weight:600;text-decoration:underline}.icon-btn{border-radius:999px;padding:6px 10px;font-size:.75rem}button:focus-visible,input:focus-visible{outline:3px solid var(--ink);outline-offset:2px}.lb{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.lb li{border-top:1px solid var(--line);font-variant-numeric:tabular-nums;grid-template-columns:2.2em 1fr auto;align-items:baseline;gap:8px;padding:8px 4px;display:grid}.lb li:first-child{border-top:0}.lb li .rk{color:var(--muted);font-weight:700}.lb li .nm{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.lb li .sc{font-weight:700}.lb li.you{background:var(--cell);border-radius:8px}.lb li.you .nm:after{content:" (you)";color:var(--accent);font-weight:700}.archive{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.archive li{border-top:1px solid var(--line);font-variant-numeric:tabular-nums;cursor:pointer;border-radius:8px;grid-template-columns:2.6em 1fr auto;align-items:baseline;gap:8px;padding:8px 4px;display:grid}.archive li:first-child{border-top:0}.archive li:hover,.archive li.current{background:var(--cell)}.archive li.current .no{color:var(--accent)}.archive li .no{color:var(--muted);font-weight:700}.archive li .date{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.archive li .meta{color:var(--muted);text-align:right;white-space:nowrap;font-size:.8rem}.rules{color:var(--muted);flex-direction:column;gap:6px;font-size:.86rem;line-height:1.5;display:flex}.rules p{max-width:62ch;margin:0}.rules strong{color:var(--ink)}.legend span{white-space:nowrap;margin-right:6px}@media (prefers-reduced-motion:reduce){.tile,.gem{transition:none!important}.board.shake{animation:none}}
