.caller .btn{min-height:var(--tap);cursor:pointer;background:0 0}.caller .btn-primary{background:var(--leaf);color:var(--on-leaf);min-width:220px;min-height:56px;font-size:var(--fs-2);border:0}.caller .btn-primary:hover:not(:disabled){background:var(--leaf-strong)}.caller .btn-ghost{color:var(--ink);border:1px solid var(--line-strong)}.caller .btn[aria-pressed=true]{background:var(--paper-2);border-width:2px}.caller .btn-danger{background:var(--error-ink);color:var(--paper);border:0}.caller .btn:disabled{opacity:.55;cursor:not-allowed}.caller kbd{font:600 var(--fs-0) var(--font-text);opacity:.8;border:1px solid;border-radius:4px;padding:1px 6px}.caller .intro p{color:var(--ink-2);margin-top:var(--s-3);max-width:60ch}.caller>.note{margin-top:var(--s-4)}.stage{margin-top:var(--s-5);border:1px solid var(--line);border-radius:var(--r-card);background:var(--paper);color:var(--ink);gap:var(--s-4);padding:var(--s-4) var(--s-5) var(--s-5);display:grid}.stage-top{align-items:center;gap:var(--s-2) var(--s-4);padding-bottom:var(--s-3);border-bottom:1px solid var(--line);flex-wrap:wrap;display:flex}.game-kind{align-items:baseline;gap:var(--s-3);flex-wrap:wrap;min-width:0;display:inline-flex}.game-kind strong{overflow-wrap:anywhere}.game-set{font-size:var(--fs-0);color:var(--ink-2);letter-spacing:.02em}.call-count{font:700 var(--fs-2) var(--font-text);margin-left:auto}.icon-btn{width:var(--tap);height:var(--tap);border:1px solid var(--line-strong);color:var(--ink);cursor:pointer;background:0 0;border-radius:50%;place-items:center;display:inline-grid}.stage-main{gap:var(--s-6);grid-template-columns:minmax(0,.8fr) minmax(0,1.5fr);align-items:center;display:grid}.current{text-align:center;justify-items:center;gap:var(--s-3);display:grid}.ball{aspect-ratio:1;background:var(--sun);color:#13302a;border-radius:50%;align-content:center;place-items:center;width:min(100%,320px);padding:12%;display:grid;box-shadow:inset 0 -12px #0000001f}.ball.is-waiting{background:var(--paper-2);color:var(--ink-2);border:2px dashed var(--line-strong);box-shadow:none}.ball-wait{font:600 var(--fs-1) / 1.3 var(--font-text)}.ball-letter{font:800 clamp(2rem, 6vw, 4rem) / 1 var(--font-display)}.ball-num{font:800 clamp(4.5rem, 12vw, 9rem) / .9 var(--font-text);letter-spacing:-.03em}.ball-word{font:800 clamp(1.5rem, 3.4vw, 2.6rem) / 1.1 var(--font-display);overflow-wrap:anywhere}.ball.is-long .ball-word{font-size:clamp(1.1rem,2.4vw,1.8rem)}.call-phrase{font:700 var(--fs-2) / 1.3 var(--font-text)}.recent-label{font-size:var(--fs-0);color:var(--ink-2)}.recent{justify-content:center;gap:var(--s-2);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.recent li{border-radius:var(--r-pill);border:2px solid var(--line-strong);min-width:56px;height:56px;font:700 var(--fs-1) var(--font-text);place-items:center;padding:0 10px;display:grid}.recent-words li{overflow-wrap:anywhere;height:auto;min-height:44px;padding:6px 14px}.board,.board-row{gap:5px;display:grid}.board-b75 .board-row{grid-template-columns:1.3fr repeat(15,minmax(0,1fr))}.board-b90 .board-row{grid-template-columns:repeat(10,minmax(0,1fr))}.board-list .board-row{flex-wrap:wrap;display:flex}.board-head{font:800 clamp(1.25rem, 2.6vw, 2.2rem) / 1 var(--font-display);color:var(--leaf);place-items:center;display:grid}.cell{border:1px solid var(--line);min-height:32px;color:var(--ink-2);font:500 clamp(.8rem, 1.3vw, 1.2rem) / 1 var(--font-text);border-radius:6px;place-items:center;display:grid}.board-b75 .cell,.board-b90 .cell{aspect-ratio:1}.board-list .cell{font-size:var(--fs-0);overflow-wrap:anywhere;padding:6px 10px;line-height:1.25}.cell.is-called{background:var(--ink);color:var(--paper);border-color:var(--ink);font-weight:800}.cell.is-last{background:var(--sun);color:#13302a;border-color:var(--sun)}.pattern{align-items:center;gap:var(--s-3);margin-top:var(--s-4);flex-wrap:wrap;display:flex}.pattern label{font-weight:700}.pattern select{width:auto;min-width:14rem}.pattern-grid{gap:2px;display:grid}.pattern-grid.n3{grid-template-columns:repeat(3,12px)}.pattern-grid.n4{grid-template-columns:repeat(4,12px)}.pattern-grid.n5{grid-template-columns:repeat(5,12px)}.pattern-grid.n6{grid-template-columns:repeat(6,10px)}.pattern-grid.n7{grid-template-columns:repeat(7,9px)}.pattern-grid i{aspect-ratio:1;border:1px solid var(--line-strong);border-radius:2px}.pattern-grid i.on{background:var(--dauber);border-color:var(--dauber)}.controls{align-items:center;gap:var(--s-2) var(--s-3);padding-top:var(--s-3);border-top:1px solid var(--line);flex-wrap:wrap;display:flex}.controls .spacer{flex:1}.confirm{align-items:center;gap:var(--s-2) var(--s-3);flex-wrap:wrap;display:flex}.win-check{gap:var(--s-3);padding-top:var(--s-3);border-top:1px solid var(--line);display:grid}.win-check h2,.setup h2{font-size:var(--fs-3)}.win-form{align-items:end;gap:var(--s-3);flex-wrap:wrap;display:flex}.win-form .field{min-width:11rem}.win-form input,.setup input[type=text]{letter-spacing:.04em}.win-result{gap:var(--s-2);padding:var(--s-3) var(--s-4);border-radius:var(--r-2);border:2px solid var(--line-strong);display:grid}.win-result.is-win{border-color:var(--leaf)}.win-result.is-win p:first-child{font:800 var(--fs-2) / 1.3 var(--font-text)}.win-result.is-error{background:var(--error-bg);color:var(--error-ink);border-color:#0000}.mini{margin:var(--s-2) 0 0;gap:var(--s-2);justify-items:start;display:grid}.mini-card{border-radius:var(--r-2);border:1px solid var(--line);background:#fff;gap:3px;width:min(100%,340px);padding:6px;display:grid}.mini-card.cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.mini-card.cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.mini-card.cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.mini-card.cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}.mini-card.cols-7{grid-template-columns:repeat(7,minmax(0,1fr))}.mini-card.cols-9{grid-template-columns:repeat(9,minmax(0,1fr));width:min(100%,460px)}.mini-card.words{width:min(100%,560px)}.mini-cell{color:#13302a;min-height:44px;font:600 .9rem / 1.15 var(--font-text);text-align:center;overflow-wrap:anywhere;background:#fff;border:1px solid #c9d6d0;border-radius:4px;place-items:center;padding:4px 2px;display:grid;position:relative}.mini-card.words .mini-cell{min-height:52px;font-size:.75rem}.mini-cell.is-marked{background:#fde3ec;font-weight:800}.mini-cell.is-free{background:#e8f3ed;font-size:.7rem}.mini-cell.is-empty{background:#f0f5f2}.mini-cell.is-win{outline-offset:-3px;outline:3px solid #1d6b46}.mini-cell .tick{color:#a3184f;font-size:.7rem;position:absolute;top:1px;right:3px}.settings{margin-top:var(--s-4)}.settings summary{cursor:pointer;min-height:var(--tap);color:var(--leaf);align-items:center;font-weight:700;display:flex}.settings-body{gap:var(--s-3);padding:var(--s-2) 0 var(--s-3);grid-template-columns:repeat(auto-fit,minmax(14rem,1fr));display:grid}.setup{margin-top:var(--s-7);gap:var(--s-3);max-width:720px;display:grid}.setup h3{font-size:var(--fs-2);margin-top:var(--s-4)}.setup-form{gap:var(--s-3);display:grid}.field-legend{width:100%;margin-bottom:6px;font-weight:700}.setup .saved-list .btn{padding:0 18px}.caller .privacy{margin-top:var(--s-2)}html.is-projecting{overflow:hidden}.stage.projector{--paper:#0f1d1a;--paper-2:#172b26;--ink:#e6f0eb;--ink-2:#a8bfb6;--line:#2a453e;--line-strong:#6f8f84;--leaf:#7ad9a1;--leaf-strong:#a2e8bf;--on-leaf:#0f1d1a;--sun:#ffcb45;--focus:#8db0ff;--dauber:#ff6fa0;--warn-bg:#3a2e0c;--warn-ink:#ffd978;--error-bg:#3d1424;--error-ink:#ffb3cb;color-scheme:dark;z-index:100;padding:var(--s-3) var(--s-5) var(--s-5);border:0;border-radius:0;flex-direction:column;margin:0;display:flex;position:fixed;inset:0;overflow-y:auto}.stage.projector>*{flex-shrink:0}.stage.projector:fullscreen{background:var(--paper)}.projector .stage-main{min-height:calc(100vh - 230px)}.projector .ball{width:min(36vw,60vh)}.projector .ball-letter{font-size:clamp(2.5rem,8vh,6rem)}.projector .ball-num{font-size:var(--fs-call)}.projector .ball-word{font-size:clamp(2rem,6vh,4.5rem)}.projector .ball.is-long .ball-word{font-size:clamp(1.4rem,4vh,3rem)}.projector .cell{font-size:clamp(1rem,2.6vh,1.75rem);font-weight:700}.projector .board-list .cell{font-size:clamp(.9rem,2vh,1.3rem)}.projector .call-phrase{font-size:clamp(1.25rem,3.5vh,2.25rem)}@media (width<=900px){.stage-main,.projector .stage-main{grid-template-columns:1fr;min-height:0}.ball,.projector .ball{width:min(70vw,300px)}.projector .ball-num{font-size:8rem}.board,.board-row{gap:3px}.cell{border-radius:4px}.controls .btn-primary{flex:100%}}@media (width<=480px){.stage{padding:var(--s-3);margin-left:calc(-1 * var(--s-2));margin-right:calc(-1 * var(--s-2))}.stage.projector{padding:var(--s-3);margin:0}.call-count{font-size:var(--fs-1)}.recent li{min-width:50px;height:50px;font-size:var(--fs-0)}.board-b75{grid-template-rows:repeat(16,auto);grid-template-columns:repeat(5,minmax(0,1fr));grid-auto-flow:column;gap:4px}.board-b75 .board-row{display:contents}.board-b75 .board-head{padding-bottom:4px;font-size:1.5rem}.board-b75 .cell{aspect-ratio:auto;height:34px;font-size:var(--fs-1)}.board-b90 .cell{font-size:var(--fs-0)}.controls .btn-ghost{flex:auto;padding:0 14px}.controls .spacer{display:none}.win-form .field{flex:100%}.pattern select{flex:100%;min-width:0}}
