.mt{--play:#b7791f;--pick:var(--ink);color:var(--on-felt)}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .mt{--play:var(--amber);--pick:#fff}}:root[data-theme=dark] .mt{--play:var(--amber);--pick:#fff}.mt-loading{text-align:center;padding:40px;font-size:1.2rem}.mt-row{flex-wrap:wrap;gap:14px;display:flex}.mt-toolbar{justify-content:space-between;align-items:center;gap:10px;margin-bottom:12px;display:flex}.mt-round{font-family:var(--font-display);white-space:nowrap;font-size:1.1rem;font-weight:800}@media (width>=640px){.mt-round{font-size:1.25rem}}.mt-toolbar-buttons{gap:8px;display:flex}.mt-chip{cursor:pointer;background:var(--wood-dark);color:#fff6e3;white-space:nowrap;border:0;border-radius:12px;min-height:44px;padding:0 14px;font-weight:700}.mt-tray{padding:8px}.mt-grid{grid-template-columns:minmax(0,1fr);grid-template-areas:"status""board""hand";gap:8px;display:grid}.mt-scores{display:none}@media (width>=1000px){.mt-tray{padding:14px}.mt-grid{grid-template:"board status""board scores""hand scores"1fr/minmax(0,1fr) 300px;align-items:start;gap:12px}.mt-scores{grid-area:scores;display:flex}}.mt-status{grid-area:status;justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;display:flex}.mt-status--alert{background:var(--alert-bg);color:var(--alert-ink)}.mt-turn{font-size:1.4rem}.mt-message{margin-top:2px;font-size:1rem}.mt-bone{flex-direction:column;flex-shrink:0;align-items:center;min-width:60px;font-size:.8rem;display:flex}.mt-bone strong{font-size:1.25rem;line-height:1.1}@media (width>=1000px){.mt-turn{font-size:1.7rem}.mt-message{font-size:1.05rem}}.mt-board{border-radius:var(--radius);background:var(--board);flex-direction:column;grid-area:board;gap:6px;padding:8px;display:flex}.mt-engine{color:#d2e6dd;justify-content:space-between;align-items:center;gap:8px;padding:0 4px 2px;font-size:.95rem;display:flex}.mt-engine-tile{align-items:center;gap:8px;display:flex}.mt-train{text-align:left;cursor:pointer;background:var(--board-row);color:#fff;border:3px solid #0000;border-radius:12px;width:100%;padding:7px 10px;transition:background-color .15s,box-shadow .15s;display:block}.mt-train.is-hot{border-color:var(--amber)}.mt-train.is-target{background:var(--board-row-hot);box-shadow:0 0 0 3px #ffc53d59}.mt-train.is-hint{border-style:dashed;border-color:#8ab4ff}.mt-train-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.mt-train-name{align-items:baseline;gap:8px;min-width:0;display:flex;overflow:hidden}.mt-train-name strong{white-space:nowrap;font-size:1.05rem}.mt-train-name span{color:#d2e6dd;white-space:nowrap;text-overflow:ellipsis;font-size:.85rem;overflow:hidden}.mt-train-tags{flex-shrink:0;align-items:center;gap:6px;display:flex}.mt-marker{color:#1c5442;background:#fff;border-radius:999px;align-items:center;gap:4px;padding:2px 8px;font-size:.82rem;font-weight:700;display:inline-flex}.mt-need{white-space:nowrap;background:#ffffff29;border-radius:999px;padding:2px 10px;font-size:.9rem;font-weight:700}.mt-train.is-hot .mt-need{background:var(--amber);color:var(--amber-ink)}.mt-train-tiles{align-items:center;gap:4px;margin-top:6px;display:flex}.mt-more{color:#d2e6dd;padding-right:2px;font-size:.85rem}.mt-empty{color:#d2e6dd;font-size:.9rem;font-style:italic}.mt-slot{border:2px dashed var(--amber);color:var(--amber);border-radius:6px;justify-content:center;align-items:center;font-size:.85rem;font-weight:700;display:inline-flex}.mt-domino{line-height:0;display:inline-flex}.mt-placed{display:inline-flex}.mt-placed.is-new{animation:.28s ease-out mt-place}@keyframes mt-place{0%{opacity:.2;transform:translateY(-10px)scale(1.08)}to{opacity:1;transform:none}}.mt-hand{flex-direction:column;grid-area:hand;gap:12px;padding:12px;display:flex}@media (width>=1000px){.mt-hand{padding:16px 18px}}.mt-hand-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.mt-hand-head h2{font-size:1.2rem}.mt-legend{color:var(--ink-soft);align-items:center;gap:6px;font-size:.85rem;display:inline-flex}.mt-legend-swatch{width:14px;height:14px;box-shadow:inset 0 0 0 3px var(--play);border-radius:4px}.mt-tiles{flex-wrap:wrap;gap:8px;margin:0;padding:8px 0 0;list-style:none;display:flex}@media (width>=640px){.mt-tiles{gap:10px}}.mt-tile{cursor:pointer;background:0 0;border:0;border-radius:7px;padding:0;line-height:0;transition:transform .15s,box-shadow .15s}.mt-tile.is-fit{box-shadow:0 0 0 3px var(--play)}.mt-tile.is-picked{box-shadow:0 0 0 4px var(--pick), 0 10px 20px #00000040;transform:translateY(-8px)}.mt-tile.is-hint{outline:3px dashed var(--hint);outline-offset:5px}.mt-actions{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.mt-actions .token{padding:0 10px;font-size:1.05rem}.mt-keys{color:var(--ink-soft);font-size:.85rem;display:none}@media (width>=1000px){.mt-keys{display:block}}.mt-scores{flex-direction:column;gap:10px;padding:16px 18px}.mt-scores h2{font-size:1.3rem}.mt-scorelist{margin:0;padding:0;list-style:none}.mt-scorelist li{border-top:2px dotted var(--line);justify-content:space-between;align-items:center;gap:10px;padding:10px 0;display:flex}.mt-scorelist li>span:first-child{flex-direction:column;display:flex}.mt-scorelist .muted{font-size:.85rem}.mt-scorelist .is-you strong:after{content:" (you)";font-weight:400}.mt-total{font-family:var(--font-display);align-items:center;gap:6px;font-size:1.4rem;font-weight:800;display:flex}.mt-lead{font-family:var(--font-body);background:var(--amber);color:var(--amber-ink);border-radius:999px;padding:1px 7px;font-size:.72rem}.mt-scrim{z-index:40;background:#0a140f8c;justify-content:center;align-items:flex-end;padding:0;display:flex;position:fixed;inset:0}@media (width>=640px){.mt-scrim{align-items:center;padding:24px}}.mt-dialog{border-radius:20px 20px 0 0;flex-direction:column;gap:14px;width:100%;max-width:560px;max-height:92vh;padding:22px 18px 26px;display:flex;overflow:auto;box-shadow:0 -6px 30px #00000059}@media (width>=640px){.mt-dialog{border-radius:20px;padding:26px 28px}}.mt-dialog h2{font-size:1.7rem}.mt-table{border-collapse:collapse;width:100%;font-size:1.05rem}.mt-table th,.mt-table td{text-align:right;border-bottom:2px dotted var(--line);padding:9px 8px}.mt-table th:first-child,.mt-table td:first-child{text-align:left}.mt-table thead th{color:var(--ink-soft);font-size:.85rem}.mt-table .is-you th,.mt-table .is-you td{font-weight:700}.mt-sheet{overflow-x:auto}.mt-field{border:0;margin:0;padding:0}.mt-field legend{margin-bottom:8px;font-weight:700}.mt-options{flex-wrap:wrap;gap:8px;display:flex}.mt-option{border:2px solid var(--line);cursor:pointer;border-radius:12px;align-items:center;gap:8px;min-height:48px;padding:0 16px;font-weight:700;display:inline-flex}.mt-option:has(input:checked){border-color:var(--ink);background:var(--paper-2)}.mt-option input,.mt-check input{accent-color:#1e5a47;width:22px;height:22px}.mt-check{cursor:pointer;align-items:center;gap:10px;min-height:44px;display:flex}.mt-welcome{max-width:640px;margin:0 auto}.mt-welcome-card{flex-direction:column;gap:14px;padding:26px;display:flex}.mt-welcome-card h2{font-size:2rem}.card-box{--card-red:#c62828;--card-black:#1f1f1f;--card-pick:#1d4ed8;--card-hint:#8ab4ff;width:var(--card-w);height:var(--card-h);border-radius:calc(var(--card-w) * .1);margin:0;padding:0;display:block;position:relative}.card-face{cursor:pointer;background:#fff;border:1px solid #00000059;font-family:Georgia,Times New Roman,serif;font-weight:700;line-height:1;transition:transform .15s,box-shadow .15s;box-shadow:0 1px 2px #0000004d}.card-face.is-red{color:var(--card-red)}.card-face.is-black{color:var(--card-black)}.card-face:focus-visible{z-index:2;outline:3px solid var(--amber);outline-offset:2px}.card-corner{font-size:var(--card-rank);letter-spacing:-.06em;align-items:center;gap:1px;display:flex;position:absolute;top:3px;left:3px}.card-corner-suit{width:calc(var(--card-rank) * .78);height:calc(var(--card-rank) * .78);flex-shrink:0}.card-centre{width:calc(var(--card-w) * .56);height:calc(var(--card-w) * .56);position:absolute;bottom:9%;left:50%;transform:translate(-50%)}.card-centre--court{width:auto;height:auto;font-size:calc(var(--card-w) * .6);bottom:6%}.card-back{border-radius:calc(var(--card-w) * .07);background:repeating-linear-gradient(-45deg,#1e4e8c 0 3px,#2c64ad 3px 6px);position:absolute;inset:3px}.card-slot{color:#ffffff8c;background:#00000024;border:2px dashed #ffffff73;justify-content:center;align-items:center;display:flex}button.card-slot{cursor:pointer}.card-slot-suit{opacity:.35;color:#fff;width:55%;height:55%;position:absolute}.card-slot.is-red .card-slot-suit{color:#ffb4a8;opacity:.5}.card-slot-text{font-family:Georgia,serif;font-weight:700;font-size:calc(var(--card-w) * .36);color:#ffffffbf;position:relative}.card-face.is-picked{box-shadow:0 0 0 2px #fff, 0 0 0 5px var(--card-pick), 0 8px 14px #00000059;z-index:1;transform:translateY(-2px)}.card-face.is-target{box-shadow:0 0 0 4px var(--amber), 0 0 14px 2px #ffc53d99}.card-slot.is-target{border:4px solid var(--amber);background:#ffc53d2e}.card-box.is-hint{outline:3px dashed var(--card-hint);outline-offset:3px}.card-face.is-landed{animation:.18s ease-out card-land}@keyframes card-land{0%{opacity:.4;transform:translateY(-10px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.card-face,.card-face.is-picked{transition:none}.card-face.is-landed{animation:none}}.kl{color:var(--on-felt);outline:none}.kl-loading{text-align:center;padding:40px;font-size:1.2rem}.kl-row{flex-wrap:wrap;gap:14px;display:flex}.kl-toolbar{justify-content:space-between;align-items:center;gap:10px;margin-bottom:12px;display:flex}.kl-count{font-family:var(--font-display);flex-wrap:wrap;align-items:baseline;gap:4px 10px;font-size:1.1rem;font-weight:800;display:flex}.kl-count strong{font-size:1.25rem}.kl-mode{font-family:var(--font-body);color:var(--on-felt-soft);font-size:.9rem;font-weight:400}.kl-toolbar-buttons{gap:8px;display:flex}.kl-chip{cursor:pointer;background:var(--wood-dark);color:#fff6e3;white-space:nowrap;border:0;border-radius:12px;min-height:44px;padding:0 14px;font-weight:700}.kl-tray{flex-direction:column;gap:8px;display:flex}.kl-status{flex-direction:column;gap:10px;padding:12px 14px;display:flex}.kl-message{min-height:3em;font-size:1.05rem}.kl-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.kl-actions .token{min-height:48px;padding:0 10px;font-size:1.05rem}@media (width>=640px){.kl-status{flex-direction:row;justify-content:space-between;align-items:center;gap:16px;padding:12px 18px}.kl-message{flex:auto;min-height:0}.kl-actions{flex:none;grid-template-columns:repeat(2,140px)}}.kl-keys{color:var(--on-felt-soft);padding:0 4px;font-size:.85rem;display:none}@media (width>=1000px){.kl-keys{display:block}}.kl-board{border-radius:var(--radius);background:var(--board);padding:8px 4px 14px}@media (width>=640px){.kl-board{padding:14px 12px 20px}}.kl-top,.kl-tableau{grid-template-columns:repeat(7, var(--card-w));justify-content:center;column-gap:var(--kl-gap);display:grid}.kl-top{margin-bottom:calc(var(--kl-gap) * 2 + 8px)}.kl-stock{grid-column:1}.kl-waste{height:var(--card-h);grid-column:2/span 2;position:relative}.kl-column{min-height:var(--card-h);position:relative}.kl-column .card-face,.kl-waste .card-face{position:absolute;left:0}.card-face.kl-card--down,.card-face.kl-card--under{cursor:default}.kl-stock{cursor:pointer;color:#fff6e3;background:#fff;border:1px solid #00000059;box-shadow:0 2px #00000059}.kl-stock.is-empty{box-shadow:none;background:#00000024;border:2px dashed #ffffff80}.kl-badge{color:#fff;text-align:center;background:#000000b3;border-radius:8px;min-width:22px;padding:2px 4px;font-size:.8rem;font-weight:700;line-height:1.2;position:absolute;bottom:2px;right:2px}.kl-recycle{width:60%;height:60%;margin:0 auto}.kl-stock .card-slot-text{font-family:var(--font-body);text-align:center;font-size:.75rem;display:block}.kl-scrim{z-index:40;background:#0a140f8c;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}@media (width>=640px){.kl-scrim{align-items:center;padding:24px}}.kl-dialog{border-radius:20px 20px 0 0;flex-direction:column;gap:14px;width:100%;max-width:520px;max-height:92vh;padding:22px 18px 26px;display:flex;overflow:auto;box-shadow:0 -6px 30px #00000059}@media (width>=640px){.kl-dialog{border-radius:20px;padding:26px 28px}}.kl-dialog h2{font-size:1.7rem}.kl-field{border:0;margin:0;padding:0}.kl-field legend{margin-bottom:8px;font-weight:700}.kl-options{flex-wrap:wrap;gap:8px;display:flex}.kl-option{border:2px solid var(--line);cursor:pointer;border-radius:12px;align-items:center;gap:8px;min-height:48px;padding:0 16px;font-weight:700;display:inline-flex}.kl-option:has(input:checked){border-color:var(--ink);background:var(--paper-2)}.kl-option input{accent-color:#1e5a47;width:22px;height:22px}.kl-option .muted{font-weight:400}.kl-welcome{max-width:640px;margin:0 auto}.kl-welcome-card{flex-direction:column;gap:14px;padding:26px;display:flex}.kl-welcome-card h2{font-size:2rem}.sd{--sd-cell:#fff;--sd-thin:#c3cad5;--sd-thick:#1f2a44;--sd-given:#1f2a44;--sd-entry:#2056d8;--sd-note:#4a5568;--sd-peer:#eaf0fb;--sd-same:#d2def6;--sd-sel:#ffd970;--sd-bad:#b42318;--sd-bad-bg:#fde4df;--sd-hint:#2563eb;--sd-wave-bg:#ffe7a0;color:var(--on-felt)}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .sd{--sd-cell:#1c2230;--sd-thin:#3a4357;--sd-thick:#c9d2e3;--sd-given:#f1f4fa;--sd-entry:#8ab4ff;--sd-note:#b8c2d6;--sd-peer:#252e44;--sd-same:#34466e;--sd-sel:#6b5414;--sd-bad:#ff9b8a;--sd-bad-bg:#4a2222;--sd-hint:#8ab4ff;--sd-wave-bg:#5c4a12}}:root[data-theme=dark] .sd{--sd-cell:#1c2230;--sd-thin:#3a4357;--sd-thick:#c9d2e3;--sd-given:#f1f4fa;--sd-entry:#8ab4ff;--sd-note:#b8c2d6;--sd-peer:#252e44;--sd-same:#34466e;--sd-sel:#6b5414;--sd-bad:#ff9b8a;--sd-bad-bg:#4a2222;--sd-hint:#8ab4ff;--sd-wave-bg:#5c4a12}.sd-loading{text-align:center;min-height:60vh;padding:40px;font-size:1.2rem}.sd-row{flex-wrap:wrap;gap:14px;display:flex}.sd-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 12px;margin-bottom:12px;display:flex}.sd-title{font-size:1.15rem}@media (width>=640px){.sd-title{font-size:1.35rem}}.sd-toolbar-buttons{gap:8px;display:flex}.sd-chip{cursor:pointer;background:var(--wood-dark);color:#fff6e3;white-space:nowrap;border:0;border-radius:12px;min-height:44px;padding:0 14px;font-weight:700}.sd-tray{padding:4px}@media (width<=420px){.sd-tray{margin-inline:-8px}}@media (width>=640px){.sd-tray{padding:12px}}.sd-layout{grid-template-columns:minmax(0,1fr);grid-template-areas:"status""board""controls";gap:6px;display:grid}@media (width>=640px){.sd-layout{gap:12px;max-width:580px;margin:0 auto}}@media (width>=1000px){.sd-layout{grid-template:"board status""board controls"1fr/minmax(0,1fr) 340px;align-items:start;max-width:980px}}.sd-status{grid-area:status;min-height:2.9em;padding:10px 14px;font-size:1rem}@media (width>=1000px){.sd-status{padding:14px 18px;font-size:1.1rem}}.sd-board-wrap{grid-area:board;container-type:inline-size}.sd-board{aspect-ratio:1;border:2px solid var(--sd-thick);background:var(--sd-cell);-webkit-user-select:none;user-select:none;border-radius:6px;grid-template-rows:repeat(9,minmax(0,1fr));width:100%;display:grid;overflow:hidden}@media (width>=640px){.sd-board{border-width:3px}}.sd-grid-row{grid-template-columns:repeat(9,minmax(0,1fr));display:grid}.sd-cell{cursor:pointer;background:var(--sd-cell);border-right:1px solid var(--sd-thin);border-bottom:1px solid var(--sd-thin);-webkit-tap-highlight-color:transparent;justify-content:center;align-items:center;min-width:0;min-height:0;display:flex;position:relative}.sd-cell:nth-child(9){border-right:0}.sd-grid-row:last-child .sd-cell{border-bottom:0}.sd-cell.box-right{border-right:2px solid var(--sd-thick)}.sd-cell.box-bottom{border-bottom:2px solid var(--sd-thick)}@media (width>=640px){.sd-cell.box-right{border-right-width:3px}.sd-cell.box-bottom{border-bottom-width:3px}}.sd-cell:focus-visible{outline:3px solid var(--sd-hint);outline-offset:-3px;z-index:1;border-radius:0}.sd-cell.is-peer{background:var(--sd-peer)}.sd-cell.is-same{background:var(--sd-same)}.sd-cell.is-conflict{background:var(--sd-bad-bg)}.sd-cell.is-selected{background:var(--sd-sel)}.sd-cell.is-conflict:before{content:"";border:2px dashed var(--sd-bad);pointer-events:none;border-radius:3px;position:absolute;inset:2px}.sd-cell.is-hint:before{content:"";border:3px dashed var(--sd-hint);pointer-events:none;border-radius:4px;position:absolute;inset:2px}.sd-digit{font-family:var(--font-body);color:var(--sd-entry);font-size:7.2cqi;font-weight:700;line-height:1}.sd-cell.is-given .sd-digit{color:var(--sd-given)}.sd-cell.is-wrong .sd-digit{color:var(--sd-bad);text-underline-offset:3px;text-decoration:underline 3px}.sd-notes{color:var(--sd-note);grid-template-rows:repeat(3,1fr);grid-template-columns:repeat(3,1fr);font-size:max(9px,2.9cqi);font-weight:700;line-height:1;display:grid;position:absolute;inset:1px}.sd-notes span{justify-content:center;align-items:center;display:flex}.sd-notes .is-match{color:var(--sd-hint);text-decoration:underline}.sd-board.is-solved .sd-cell{animation:sd-wave .9s ease-in-out var(--sd-wave,0s) backwards}@keyframes sd-wave{0%,to{background:var(--sd-cell)}45%{background:var(--sd-wave-bg)}}.sd-controls{flex-direction:column;grid-area:controls;gap:10px;padding:10px;display:flex}@media (width>=1000px){.sd-controls{gap:14px;padding:16px}}.sd-pad{grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;display:grid}@media (width>=1000px){.sd-pad{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}}.sd-key{cursor:pointer;background:var(--sd-cell);min-height:60px;color:var(--sd-given);border:2px solid var(--sd-thin);box-shadow:0 3px 0 var(--sd-thin);border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:2px;padding:4px 0;transition:transform 80ms,box-shadow 80ms;display:flex;position:relative}@media (width>=1000px){.sd-key{min-height:68px}}.sd-key:active{box-shadow:0 1px 0 var(--sd-thin);transform:translateY(2px)}.sd-key-digit{font-family:var(--font-display);font-size:1.85rem;font-weight:800;line-height:1}.sd-key-left{color:var(--ink-soft);font-size:.78rem;font-weight:700;line-height:1}.sd-key.is-done{opacity:.45}.sd-key--erase{color:var(--ink)}.sd-key-word{font-size:.85rem;font-weight:700}@media (width>=1000px){.sd-key--erase{flex-direction:row;grid-column:span 3;gap:8px;min-height:52px}.sd-key-word{font-size:1rem}}.sd-pad.is-notes .sd-key:not(.sd-key--erase){border-color:var(--amber-deep);border-style:dashed}.sd-pad.is-notes .sd-key-digit{font-size:1.25rem;font-family:var(--font-body);color:var(--sd-note);font-weight:700}.sd-actions{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.sd-actions .token{white-space:nowrap;gap:6px;min-height:52px;padding:0 6px;font-size:1rem}.sd-actions .sd-notes-on{background:var(--amber);color:var(--amber-ink)}.sd-keys{color:var(--ink-soft);font-size:.85rem;display:none}@media (width>=1000px){.sd-keys{display:block}}.sd-scrim{z-index:40;background:#0a140f8c;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}@media (width>=640px){.sd-scrim{align-items:center;padding:24px}}.sd-dialog{border-radius:20px 20px 0 0;flex-direction:column;gap:14px;width:100%;max-width:520px;max-height:92vh;padding:22px 18px 26px;display:flex;overflow:auto;box-shadow:0 -6px 30px #00000059}@media (width>=640px){.sd-dialog{border-radius:20px;padding:26px 28px}}.sd-dialog h2{font-size:1.7rem}.sd-field{border:0;margin:0;padding:0}.sd-field legend{margin-bottom:8px;font-weight:700}.sd-options{flex-wrap:wrap;gap:8px;display:flex}.sd-options--stack{flex-direction:column}.sd-option{border:2px solid var(--line);cursor:pointer;border-radius:12px;align-items:center;gap:10px;min-height:52px;padding:6px 16px;font-weight:700;display:flex}.sd-option:has(input:checked){border-color:var(--ink);background:var(--paper-2)}.sd-option-note{color:var(--ink-soft);font-size:.9rem;font-weight:400;display:block}.sd-option input,.sd-check input{accent-color:#1e5a47;flex-shrink:0;width:22px;height:22px}.sd-check{cursor:pointer;align-items:center;gap:12px;min-height:52px;font-weight:700;display:flex}.sd-streak{font-size:1.1rem}.sd-celebrate{justify-content:center;gap:6px;display:flex}.sd-celebrate span{background:var(--amber);width:28px;height:28px;color:var(--amber-ink);font-family:var(--font-display);animation:sd-hop .7s ease-out var(--sd-wave,0s) both;border-radius:8px;justify-content:center;align-items:center;font-weight:800;display:inline-flex}@keyframes sd-hop{0%{opacity:0;transform:translateY(10px)}60%{opacity:1;transform:translateY(-6px)}to{opacity:1;transform:none}}.sd-welcome{max-width:640px;margin:0 auto}.sd-welcome-card{flex-direction:column;gap:14px;padding:26px;display:flex}.sd-welcome-card h2{font-size:2rem}@media (prefers-reduced-motion:reduce){.sd-board.is-solved .sd-cell,.sd-celebrate span{animation:none}}@media (width<=400px){.sd-actions .token svg{display:none}}.ow{--ow-wood:#8b5a2b;--ow-wood-edge:#4a2a12;--ow-pit:#5e3a1a;--ow-pit-deep:#3f2510;--ow-seed:#f1e6cb;--ow-seed-b:#ddc9a0;--ow-seed-line:#a88d5c;--ow-on-wood:#fff6e3;--ow-gold:var(--amber);color:var(--on-felt)}.ow-loading{text-align:center;padding:40px;font-size:1.2rem}.ow-row{flex-wrap:wrap;gap:14px;display:flex}.ow-toolbar{justify-content:space-between;align-items:center;gap:10px;margin-bottom:12px;display:flex}.ow-score{font-family:var(--font-display);flex-wrap:wrap;align-items:baseline;gap:4px 10px;font-size:1.15rem;font-weight:700;display:flex}.ow-score strong{font-size:1.45rem;font-weight:800}.ow-target{color:var(--on-felt-soft);font-weight:600}@media (width>=640px){.ow-score{font-size:1.3rem}.ow-score strong{font-size:1.7rem}}.ow-chip{cursor:pointer;background:var(--wood-dark);color:#fff6e3;white-space:nowrap;border:0;border-radius:12px;flex-shrink:0;min-height:44px;padding:0 14px;font-weight:700}.ow-tray{flex-direction:column;gap:10px;padding:8px;display:flex}@media (width>=900px){.ow-tray{gap:14px;padding:14px}}.ow-status{min-height:92px;padding:12px 16px}.ow-turn{font-size:1.4rem}.ow-message{margin-top:4px;font-size:1.02rem}@media (width>=900px){.ow-turn{font-size:1.7rem}.ow-message{font-size:1.08rem}}.ow-board{background-color:var(--ow-wood);box-shadow:inset 0 2px 0 #ffffff2e, inset 0 -3px 0 #0003, 0 6px 0 var(--ow-wood-edge), 0 12px 20px #00000059;color:var(--ow-on-wood);background-image:repeating-linear-gradient(90deg,#ffffff0d 0 2px,#0000 2px 10px),repeating-linear-gradient(90deg,#0000000f 0 1px,#0000 1px 31px);border-radius:26px;grid-template-columns:minmax(0,1fr);grid-template-areas:"kofi""rows""you";gap:6px;padding:8px;display:grid}@media (width>=640px){.ow-board{border-radius:60px;grid-template-columns:92px minmax(0,1fr) 92px;grid-template-areas:"kofi rows you";gap:10px;padding:14px}}@media (width>=900px){.ow-board{grid-template-columns:112px minmax(0,1fr) 112px;padding:18px 20px}}.ow-rows{flex-direction:column;grid-area:rows;gap:2px;min-width:0;display:flex}.ow-row-pits{grid-template-columns:repeat(6,minmax(0,1fr));gap:4px;display:grid}@media (width>=640px){.ow-row-pits{gap:8px}}.ow-pit{min-width:0;min-height:44px;color:inherit;font:inherit;background:0 0;border:3px solid #0000;border-radius:16px;flex-direction:column;align-items:center;gap:2px;margin:0;padding:3px 2px 2px;line-height:1;display:flex}.ow-row-pits--top .ow-pit{flex-direction:column-reverse}.ow-pit--yours{cursor:pointer;-webkit-tap-highlight-color:transparent}.ow-pit--yours:focus-visible{outline-offset:1px;outline:3px solid #fff}.ow-pit.is-legal{border-color:var(--ow-gold);background:#ffc53d1f}.ow-pit.is-hint{outline-offset:2px;outline:3px dashed #bcd4ff}.ow-pit.is-hint .ow-hole{box-shadow:inset 0 4px 8px #0000008c,0 0 0 3px #bcd4ff}.ow-hole{aspect-ratio:1;background:radial-gradient(circle at 50% 38%, var(--ow-pit) 0 55%, var(--ow-pit-deep) 100%);border-radius:50%;width:100%;max-width:84px;transition:box-shadow .12s,background-color .12s;display:block;box-shadow:inset 0 4px 8px #0000008c,0 1px #ffffff2e}.ow-hole svg{width:100%;height:100%;padding:8%}.ow-seed{fill:var(--ow-seed);stroke:var(--ow-seed-line);stroke-width:1.5px}.ow-seed--b{fill:var(--ow-seed-b)}.ow-count{font-family:var(--font-display);font-variant-numeric:tabular-nums;text-shadow:0 1px #00000059;font-size:1.35rem;font-weight:800;line-height:1.1}@media (width>=640px){.ow-count{font-size:1.6rem}}.ow-pit.is-active .ow-hole{box-shadow:inset 0 4px 8px #0006, 0 0 0 3px var(--ow-on-wood)}.ow-pit.is-flash .ow-hole{box-shadow:inset 0 4px 8px #0006, 0 0 0 4px var(--ow-gold);animation:.52s ease-in-out ow-flash}.ow-pit.is-flash .ow-count{color:var(--ow-gold)}@keyframes ow-flash{0%,to{filter:none}40%{filter:brightness(1.6)}}.ow-pit.is-last .ow-hole{box-shadow:inset 0 4px 8px #0000008c,0 0 0 2px #fff6e38c}.ow-direction{color:#fff6e3d9;justify-content:space-between;align-items:center;gap:8px;padding:1px 6px;font-size:.82rem;display:flex}.ow-arrow{fill:none;stroke:currentColor;stroke-width:2.4px;stroke-linecap:round;stroke-linejoin:round;opacity:.8}.ow-store{background:radial-gradient(ellipse at 50% 35%, var(--ow-pit) 0 55%, var(--ow-pit-deep) 100%);border-radius:999px;align-items:center;gap:10px;min-width:0;padding:6px 14px;display:flex;box-shadow:inset 0 4px 10px #0000008c,0 1px #ffffff2e}.ow-store--kofi{grid-area:kofi}.ow-store--you{grid-area:you}.ow-store-name{white-space:nowrap;font-size:.95rem;font-weight:700}.ow-store-seeds{flex-wrap:wrap;flex:auto;align-content:center;gap:2px;min-height:20px;display:flex}.ow-store-seeds i{background:var(--ow-seed);width:8px;height:8px;box-shadow:inset 0 0 0 1px var(--ow-seed-line);border-radius:50%}.ow-store-seeds i.ow-seed--b{background:var(--ow-seed-b)}.ow-store-count{font-family:var(--font-display);font-variant-numeric:tabular-nums;font-size:1.6rem;font-weight:800;line-height:1}@media (width>=640px){.ow-store{border-radius:46px;flex-direction:column;justify-content:space-between;padding:14px 8px}.ow-store-seeds{place-content:center}.ow-store-seeds i{width:9px;height:9px}.ow-store-count{font-size:2rem}}.ow-actions{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.ow-actions .token{gap:6px;padding:0 8px;font-size:1.05rem}.ow-keys{color:var(--on-felt-soft);font-size:.88rem;display:none}@media (width>=1000px){.ow-actions{width:100%;max-width:640px;margin:0 auto}.ow-keys{text-align:center;display:block}}.ow-scrim{z-index:40;background:#0a140f8c;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}@media (width>=640px){.ow-scrim{align-items:center;padding:24px}}.ow-dialog{border-radius:20px 20px 0 0;flex-direction:column;gap:14px;width:100%;max-width:520px;max-height:92vh;padding:22px 18px 26px;display:flex;overflow:auto;box-shadow:0 -6px 30px #00000059}@media (width>=640px){.ow-dialog{border-radius:20px;padding:26px 28px}}.ow-dialog h2{font-size:1.7rem}.ow-final{font-family:var(--font-display);gap:24px;font-size:1.2rem;display:flex}.ow-final strong{margin-left:6px;font-size:2rem}.ow-field{border:0;margin:0;padding:0}.ow-field legend{margin-bottom:8px;font-weight:700}.ow-options{flex-wrap:wrap;gap:8px;display:flex}.ow-option{border:2px solid var(--line);cursor:pointer;border-radius:12px;align-items:center;gap:8px;min-height:48px;padding:0 16px;font-weight:700;display:inline-flex}.ow-option:has(input:checked){border-color:var(--ink);background:var(--paper-2)}.ow-option input{accent-color:#1e5a47;width:22px;height:22px}.ow-help{margin-top:8px;font-size:.95rem}.ow-welcome{max-width:640px;margin:0 auto}.ow-welcome-card{flex-direction:column;gap:14px;padding:26px;display:flex}.ow-welcome-card h2{font-size:2rem}@media (prefers-reduced-motion:reduce){.ow-pit.is-flash .ow-hole{animation:none}}.dm{--play:#b7791f;--pick:var(--ink);color:var(--on-felt)}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .dm{--play:var(--amber);--pick:#fff}}:root[data-theme=dark] .dm{--play:var(--amber);--pick:#fff}.dm-loading{text-align:center;padding:40px;font-size:1.2rem}.dm-row{flex-wrap:wrap;gap:14px;display:flex}.dm-toolbar{justify-content:space-between;align-items:center;gap:10px;margin-bottom:12px;display:flex}.dm-round{font-family:var(--font-display);white-space:nowrap;font-size:1.1rem;font-weight:800}.dm-variant{font-weight:600}@media (width>=640px){.dm-round{font-size:1.25rem}}.dm-chip{cursor:pointer;background:var(--wood-dark);color:#fff6e3;white-space:nowrap;border:0;border-radius:12px;min-height:44px;padding:0 14px;font-weight:700}.dm-tray{padding:8px}.dm-grid{grid-template-columns:minmax(0,1fr);grid-template-areas:"status""players""board""hand";gap:8px;display:grid}@media (width>=1000px){.dm-tray{padding:14px}.dm-grid{grid-template:"board status""board players""hand players"1fr/minmax(0,1fr) 300px;align-items:start;gap:12px}}.dm-status{grid-area:status;padding:12px 16px}.dm-status--you{background:var(--alert-bg);color:var(--alert-ink)}.dm-turn{font-size:1.4rem}.dm-message{min-height:1.5em;margin-top:2px;font-size:1.05rem}@media (width>=1000px){.dm-turn{font-size:1.7rem}}.dm-players{grid-area:players}.dm-player-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin:0;padding:0;list-style:none;display:grid}@media (width>=640px) and (width<=999px){.dm-player-list{grid-template-columns:repeat(auto-fit,minmax(130px,1fr))}}@media (width>=1000px){.dm-player-list{grid-template-columns:minmax(0,1fr);gap:8px}}.dm-player{background:var(--paper);color:var(--ink);border:3px solid #0000;border-radius:12px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:2px 8px;padding:8px 10px;display:grid}.dm-player.is-turn{border-color:var(--play)}.dm-player-name{flex-direction:column;min-width:0;display:flex}.dm-player-name strong{white-space:nowrap;text-overflow:ellipsis;font-size:1.05rem;overflow:hidden}.dm-player-name span{color:var(--ink-soft);white-space:nowrap;font-size:.88rem}.dm-player-score{font-variant-numeric:tabular-nums;align-items:baseline;gap:3px;display:flex}.dm-player-score strong{font-family:var(--font-display);font-size:1.45rem;font-weight:800}.dm-player-score span{color:var(--ink-soft);font-size:.85rem}.dm-bar{background:var(--paper-2);border-radius:999px;grid-column:1/-1;height:6px;overflow:hidden}.dm-bar span{background:var(--green);border-radius:inherit;height:100%;transition:width .4s;display:block}.dm-bone{background:var(--paper-2)}.dm-board{border-radius:var(--radius);background:var(--board);color:#fff;grid-area:board;min-height:180px;padding:8px}@media (width>=1000px){.dm-board{min-height:320px;padding:14px}}.dm-line-wrap{flex-direction:column;gap:8px;display:flex}.dm-line{background:var(--board-row);border-radius:12px;flex-wrap:wrap;align-items:center;gap:4px 3px;min-height:60px;margin:0;padding:10px 6px;list-style:none;display:flex}@media (width>=640px){.dm-line{gap:6px 4px;padding:14px 10px}}.dm-placed{border-radius:6px;line-height:0;display:inline-flex}.dm-placed.is-left,.dm-placed.is-right{box-shadow:0 0 0 3px #ffffff8c}.dm-placed.is-new{animation:.3s ease-out dm-place}@keyframes dm-place{0%{opacity:.2;transform:translateY(-10px)scale(1.1)}to{opacity:1;transform:none}}.dm-domino{line-height:0;display:inline-flex}.dm-end{cursor:pointer;background:var(--board-row);color:#fff;min-height:56px;font-family:var(--font-body);border:3px solid #ffffff59;border-radius:14px;align-items:center;gap:10px;padding:6px 14px;font-size:1.05rem;font-weight:700;transition:background-color .15s,box-shadow .15s,opacity .15s;display:inline-flex}.dm-end--left{align-self:flex-start}.dm-end--right{align-self:flex-end}.dm-end-pip{color:#1f2421;width:40px;height:40px;font-family:var(--font-display);background:#fbfaf5;border-radius:10px;justify-content:center;align-items:center;font-size:1.5rem;font-weight:800;display:inline-flex}.dm-arrow{opacity:.8;font-size:.9rem}.dm-end.is-target{background:var(--amber);color:var(--amber-ink);border-color:var(--amber);font-size:1.15rem;box-shadow:0 0 0 4px #ffc53d59,0 6px 14px #0000004d}.dm-end.is-target .dm-end-pip{background:#fff}.dm-end.is-dim{opacity:.55}.dm-end.is-hint{border-style:dashed;border-color:#8ab4ff}.dm-end:focus-visible{outline-offset:3px;outline:3px solid #fff}@media (width<=400px){.dm-end{justify-content:center;width:100%}}.dm-empty{justify-content:center;align-items:center;min-height:160px;display:flex}.dm-end--centre{border-style:dashed;justify-content:center;min-width:min(280px,100%);min-height:96px;font-size:1.15rem}.dm-end--centre:not(.is-target){cursor:default;color:#d2e6dd}.dm-hand{flex-direction:column;grid-area:hand;gap:12px;padding:12px;display:flex}@media (width>=1000px){.dm-hand{padding:16px 18px}}.dm-hand-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.dm-hand-head h2{font-size:1.2rem}.dm-legend{color:var(--ink-soft);align-items:center;gap:6px;font-size:.88rem;display:inline-flex}.dm-legend-swatch{width:14px;height:14px;box-shadow:inset 0 0 0 3px var(--play);border-radius:4px}.dm-tiles{flex-wrap:wrap;gap:10px 8px;margin:0;padding:10px 2px 0;list-style:none;display:flex}@media (width>=640px){.dm-tiles{gap:12px 10px}}.dm-tile{cursor:pointer;background:0 0;border:0;border-radius:7px;padding:0;line-height:0;transition:transform .15s,box-shadow .15s}.dm-tile.is-fit{box-shadow:0 0 0 4px var(--play)}.dm-tile.is-picked{box-shadow:0 0 0 4px var(--pick), 0 10px 20px #00000040;transform:translateY(-8px)}.dm-tile.is-hint{outline:3px dashed var(--hint);outline-offset:5px}.dm-tile:focus-visible{outline:3px solid var(--hint);outline-offset:4px}.dm-actions{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.dm-actions .token{gap:6px;padding:0 8px;font-size:1.05rem}.dm-keys{color:var(--ink-soft);font-size:.85rem;display:none}@media (width>=1000px){.dm-keys{display:block}}.dm-scrim{z-index:40;background:#0a140f8c;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}@media (width>=640px){.dm-scrim{align-items:center;padding:24px}}.dm-dialog{border-radius:20px 20px 0 0;flex-direction:column;gap:14px;width:100%;max-width:560px;max-height:92vh;padding:22px 18px 26px;display:flex;overflow:auto;box-shadow:0 -6px 30px #00000059}@media (width>=640px){.dm-dialog{border-radius:20px;padding:26px 28px}}.dm-dialog h2{font-size:1.7rem}.dm-final{font-size:1.15rem;font-weight:700}.dm-table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%;font-size:1.05rem}.dm-table th,.dm-table td{text-align:right;border-bottom:2px dotted var(--line);padding:9px 6px}.dm-table th:first-child,.dm-table td:first-child{text-align:left}.dm-table thead th{color:var(--ink-soft);font-size:.85rem}.dm-table .is-you th,.dm-table .is-you td{font-weight:700}.dm-field{border:0;margin:0;padding:0}.dm-field legend{margin-bottom:8px;font-weight:700}.dm-help{margin-top:6px;font-size:.95rem}.dm-options{flex-wrap:wrap;gap:8px;display:flex}.dm-option{border:2px solid var(--line);cursor:pointer;border-radius:12px;align-items:center;gap:8px;min-height:48px;padding:0 16px;font-weight:700;display:inline-flex}.dm-option:has(input:checked){border-color:var(--ink);background:var(--paper-2)}.dm-option input{accent-color:#1e5a47;width:22px;height:22px}.dm-welcome{max-width:640px;margin:0 auto}.dm-welcome-card{flex-direction:column;gap:14px;padding:26px;display:flex}.dm-welcome-card h2{font-size:2rem}@media (prefers-reduced-motion:reduce){.dm *,.dm-scrim *{transition:none!important;animation:none!important}.dm-tile.is-picked{transform:none}}.ms{--ms-hidden:#a9b6c6;--ms-hi:#d4dce6;--ms-lo:#7c8ca2;--ms-open:#f4f6f8;--ms-line:#c9d2dd;--ms-edge:#1f2a44;--ms-flag:#c62828;--ms-pole:#1f2a44;--ms-cross:#1f2a44;--ms-mine:#2b2f36;--ms-boom:#ffe2b8;--ms-focus:var(--hint);--ms-1:#1565c0;--ms-2:#2e7d32;--ms-3:#c62828;--ms-4:#283593;--ms-5:#8d5a00;--ms-6:#00796b;--ms-7:#37474f;--ms-8:#616161;color:var(--on-felt)}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .ms{--ms-hidden:#55657c;--ms-hi:#71819a;--ms-lo:#36414f;--ms-open:#1c2230;--ms-line:#333d50;--ms-edge:#c9d2e3;--ms-flag:#ff6b5e;--ms-pole:#e8edf5;--ms-cross:#ffd9c9;--ms-mine:#e8edf5;--ms-boom:#5c3a12;--ms-1:#74b4ff;--ms-2:#7fd38a;--ms-3:#ff8a80;--ms-4:#a6b3ff;--ms-5:#ffb74d;--ms-6:#4dd0c4;--ms-7:#e0e0e0;--ms-8:#bdbdbd}}:root[data-theme=dark] .ms{--ms-hidden:#55657c;--ms-hi:#71819a;--ms-lo:#36414f;--ms-open:#1c2230;--ms-line:#333d50;--ms-edge:#c9d2e3;--ms-flag:#ff6b5e;--ms-pole:#e8edf5;--ms-cross:#ffd9c9;--ms-mine:#e8edf5;--ms-boom:#5c3a12;--ms-1:#74b4ff;--ms-2:#7fd38a;--ms-3:#ff8a80;--ms-4:#a6b3ff;--ms-5:#ffb74d;--ms-6:#4dd0c4;--ms-7:#e0e0e0;--ms-8:#bdbdbd}.ms-loading{text-align:center;min-height:60vh;padding:40px;font-size:1.2rem}.ms-row{flex-wrap:wrap;gap:14px;display:flex}.ms-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 12px;margin-bottom:12px;display:flex}.ms-title{font-size:1.15rem}@media (width>=640px){.ms-title{font-size:1.35rem}}.ms-toolbar-buttons{flex-wrap:wrap;gap:8px;display:flex}.ms-chip{cursor:pointer;background:var(--wood-dark);color:#fff6e3;white-space:nowrap;border:0;border-radius:12px;min-height:44px;padding:0 14px;font-weight:700}.ms-chip[aria-pressed=true]{background:var(--amber);color:var(--amber-ink)}.ms-tray{padding:4px}@media (width<=420px){.ms-tray{margin-inline:-8px}}@media (width>=640px){.ms-tray{padding:12px}}.ms-layout{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"status counter""board board""controls controls""keys keys";gap:6px;display:grid}@media (width>=640px){.ms-layout{gap:10px}}.ms-status{grid-area:status;align-items:center;min-height:2.9em;padding:10px 14px;font-size:1rem;display:flex}@media (width>=1000px){.ms-status{padding:12px 18px;font-size:1.1rem}}.ms-counter{text-align:center;flex-direction:column;grid-area:counter;justify-content:center;align-items:center;min-width:88px;padding:6px 14px;line-height:1.1;display:flex}.ms-counter .ms-flag-icon{display:none}.ms-counter-num{font-family:var(--font-display);font-size:1.7rem;font-weight:800}.ms-counter-word{color:var(--ink-soft);font-size:.85rem;font-weight:700}.ms-counter-extra{color:var(--ink-soft);margin-top:2px;font-size:.8rem}@media (width>=640px){.ms-counter{flex-direction:row;gap:8px;padding:8px 18px}.ms-counter .ms-flag-icon{display:block}.ms-counter-extra{margin:0 0 0 6px}}.ms-board-wrap{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;border-radius:8px;grid-area:board;overflow:auto;container-type:inline-size}.ms-board{--ms-fit:min(56px, calc((100cqi - 6px) / var(--ms-cols)));--ms-min:36px;--ms-size:max(var(--ms-min), var(--ms-fit));border:3px solid var(--ms-edge);background:var(--ms-open);-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;touch-action:manipulation;border-radius:6px;width:max-content;margin-inline:auto;display:grid}@media (width>=701px){.ms-board{--ms-fit:min(56px, calc((100cqi - 6px) / var(--ms-cols)), calc((100svh - 300px) / var(--ms-rows)))}}.ms-board.is-fit{--ms-min:16px}.ms-board.is-flagmode{border-color:var(--amber);box-shadow:0 0 0 3px var(--amber-deep)}.ms-grid-row{display:flex}.ms-cell{width:var(--ms-size);height:var(--ms-size);cursor:pointer;font-family:var(--font-body);font-weight:700;font-size:calc(var(--ms-size) * .62);-webkit-tap-highlight-color:transparent;flex:none;justify-content:center;align-items:center;line-height:1;display:flex;position:relative}.ms-cell.is-hidden,.ms-cell.is-flag,.ms-cell.is-mine{background:var(--ms-hidden);box-shadow:inset 3px 3px 0 var(--ms-hi), inset -3px -3px 0 var(--ms-lo)}@media (hover:hover){.ms-board:not(.is-lost):not(.is-won) .ms-cell.is-hidden:hover{filter:brightness(1.07)}}.ms-cell.is-hidden:active{box-shadow:inset 1px 1px 0 var(--ms-lo)}.ms-cell.is-open{background:var(--ms-open);box-shadow:inset -1px -1px 0 var(--ms-line);cursor:default}.ms-num{pointer-events:none}.ms-n1{color:var(--ms-1)}.ms-n2{color:var(--ms-2)}.ms-n3{color:var(--ms-3)}.ms-n4{color:var(--ms-4)}.ms-n5{color:var(--ms-5)}.ms-n6{color:var(--ms-6)}.ms-n7{color:var(--ms-7)}.ms-n8{color:var(--ms-8)}.ms-flag-icon,.ms-mine-icon{pointer-events:none}.ms-cell .ms-flag-icon,.ms-cell .ms-mine-icon{width:70%;height:70%}.ms-cell.is-mine .ms-mine-icon{animation:.8s ease-out both ms-fade}.ms-cell.is-exploded{background:var(--ms-boom);box-shadow:inset 0 0 0 3px var(--ms-flag)}.ms-cell.is-wrong{opacity:.85}@keyframes ms-fade{0%{opacity:0}to{opacity:1}}.ms-cell:focus{outline:none}.ms-cell:focus-visible{outline:3px solid var(--ms-focus);outline-offset:-3px;z-index:1}.ms-cell.is-hint:after{content:"";border:3px dashed var(--ms-focus);pointer-events:none;border-radius:4px;animation:1.4s ease-in-out infinite ms-pulse;position:absolute;inset:2px}@keyframes ms-pulse{50%{opacity:.45}}.ms-board.is-won{box-shadow:0 0 0 4px var(--amber)}.ms-controls{z-index:3;grid-area:controls;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr) minmax(0,1fr);gap:8px;padding:8px;display:grid;position:sticky;bottom:8px;box-shadow:0 4px 18px #00000040}@media (width>=640px){.ms-controls{justify-self:center;gap:12px;width:100%;max-width:760px;padding:12px}}.ms-controls .token{white-space:nowrap;gap:8px;min-height:60px;padding:0 8px;font-size:1.05rem}.ms-flagmode{font-size:1.1rem}.ms-flagmode.is-on{background:var(--amber);color:var(--amber-ink);outline:3px solid var(--amber-deep);outline-offset:-3px}.ms-flagmode span{flex-direction:column;align-items:flex-start;line-height:1.1;display:flex}.ms-flagmode strong{font-size:1.15rem}.ms-takeback{background:var(--amber);color:var(--amber-ink)}@media (width<=400px){.ms-controls .token:not(.ms-flagmode) svg{display:none}.ms-controls .token{font-size:1rem}}.ms-keys{color:var(--on-felt-soft);text-align:center;grid-area:keys;padding:2px 6px;font-size:.9rem}.ms-keys-kbd{display:none}@media (hover:hover) and (pointer:fine){.ms-keys-kbd{display:inline}}.ms-scrim{z-index:40;background:#0a140f8c;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}@media (width>=640px){.ms-scrim{align-items:center;padding:24px}}.ms-dialog{border-radius:20px 20px 0 0;flex-direction:column;gap:14px;width:100%;max-width:520px;max-height:92vh;padding:22px 18px 26px;display:flex;overflow:auto;box-shadow:0 -6px 30px #00000059}@media (width>=640px){.ms-dialog{border-radius:20px;padding:26px 28px}}.ms-dialog h2{font-size:1.7rem}.ms-link{cursor:pointer;min-height:44px;color:var(--ink);text-underline-offset:3px;background:0 0;border:0;align-self:flex-start;padding:0 4px;font-size:1.05rem;font-weight:700;text-decoration:underline}.ms-field{border:0;margin:0;padding:0}.ms-field legend{margin-bottom:8px;font-weight:700}.ms-options{flex-wrap:wrap;gap:8px;display:flex}.ms-options--stack{flex-direction:column}.ms-option{border:2px solid var(--line);cursor:pointer;border-radius:12px;align-items:center;gap:10px;min-height:52px;padding:6px 16px;font-weight:700;display:flex}.ms-option:has(input:checked){border-color:var(--ink);background:var(--paper-2)}.ms-option-size{color:var(--ink-soft);font-weight:400}.ms-option-note{color:var(--ink-soft);font-size:.9rem;font-weight:400;display:block}.ms-option input{accent-color:#1e5a47;flex-shrink:0;width:22px;height:22px}.ms-celebrate{justify-content:center;gap:6px;display:flex}.ms-celebrate span{width:32px;height:32px;font-family:var(--font-body);animation:ms-hop .7s ease-out var(--ms-wave,0s) both;background:#f4f6f8;border:2px solid #c9d2dd;border-radius:6px;justify-content:center;align-items:center;font-size:1.2rem;font-weight:800;display:inline-flex}.ms-celebrate .ms-n1{color:#1565c0}.ms-celebrate .ms-n2{color:#2e7d32}.ms-celebrate .ms-n3{color:#c62828}.ms-celebrate .ms-n4{color:#283593}.ms-celebrate .ms-n5{color:#8d5a00}@keyframes ms-hop{0%{opacity:0;transform:translateY(10px)}60%{opacity:1;transform:translateY(-6px)}to{opacity:1;transform:none}}.ms-welcome{max-width:640px;margin:0 auto}.ms-welcome-card{flex-direction:column;gap:14px;padding:26px;display:flex}.ms-welcome-card h2{font-size:2rem}@media (prefers-reduced-motion:reduce){.ms-cell.is-mine .ms-mine-icon,.ms-celebrate span,.ms-cell.is-hint:after{animation:none}}.fc{color:var(--on-felt);outline:none}.fc-loading{text-align:center;padding:40px;font-size:1.2rem}.fc-row{flex-wrap:wrap;gap:14px;display:flex}.fc-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 10px;margin-bottom:12px;display:flex}.fc-count{font-family:var(--font-display);flex-wrap:wrap;align-items:baseline;gap:4px 16px;font-size:1.1rem;font-weight:800;display:flex}.fc-count strong{font-size:1.25rem}.fc-toolbar-buttons{gap:8px;display:flex}.fc-chip{cursor:pointer;background:var(--wood-dark);color:#fff6e3;white-space:nowrap;border:0;border-radius:12px;min-height:44px;padding:0 14px;font-weight:700}.fc-tray{flex-direction:column;gap:8px;display:flex}.fc-status{flex-direction:column;gap:10px;padding:12px 14px;display:flex}.fc-message{min-height:3em;font-size:1.05rem}.fc-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.fc-actions .token{min-height:48px;padding:0 10px;font-size:1.05rem}@media (width>=640px){.fc-status{flex-direction:row;justify-content:space-between;align-items:center;gap:16px;padding:12px 18px}.fc-message{flex:auto;min-height:0}.fc-actions{flex:none;grid-template-columns:repeat(2,140px)}}.fc-keys{color:var(--on-felt-soft);padding:0 4px;font-size:.85rem;display:none}@media (width>=1000px){.fc-keys{display:block}}.fc-board{border-radius:var(--radius);background:var(--board);padding:8px 2px 14px}@media (width<=420px){.fc-board{margin:0 -6px}}@media (width>=640px){.fc-board{padding:14px 12px 20px}}.fc-top{justify-content:center;column-gap:var(--fc-gap);margin-bottom:calc(var(--fc-gap) * 2 + 10px);display:flex}.fc-group,.fc-tableau{justify-content:center;column-gap:var(--fc-gap);display:grid}.fc-group{grid-template-columns:repeat(4, var(--card-w))}.fc-tableau{grid-template-columns:repeat(8, var(--card-w))}.fc-column{min-height:var(--card-h);position:relative}.fc-column .card-face{position:absolute;left:0}.fc-slot--cell{background:#00000038;border-style:solid;border-color:#ffffff4d}.fc-slot-label{font-family:var(--font-body);font-weight:700;font-size:clamp(.62rem, calc(var(--card-w) * .22), .95rem);color:#ffffffb3;text-transform:uppercase;letter-spacing:.04em}.card-slot.is-target .fc-slot-label{color:#fff}.fc-scrim{z-index:40;background:#0a140f8c;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}@media (width>=640px){.fc-scrim{align-items:center;padding:24px}}.fc-dialog{border-radius:20px 20px 0 0;flex-direction:column;gap:14px;width:100%;max-width:520px;max-height:92vh;padding:22px 18px 26px;display:flex;overflow:auto;box-shadow:0 -6px 30px #00000059}@media (width>=640px){.fc-dialog{border-radius:20px;padding:26px 28px}}.fc-dialog h2{font-size:1.7rem}.fc-field{flex-direction:column;gap:8px;display:flex}.fc-field label{font-weight:700}.fc-deal-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.fc-input{border:2px solid var(--line);background:var(--paper-2);min-width:0;min-height:52px;color:var(--ink);border-radius:12px;flex:140px;padding:0 14px;font-size:1.25rem;font-weight:700}.fc-input:focus-visible{outline:3px solid var(--amber);outline-offset:2px;border-color:var(--ink)}.fc-input[aria-invalid=true]{border-color:#c62828}.fc-error{color:#c62828;font-weight:700}.fc-welcome{max-width:640px;margin:0 auto}.fc-welcome-card{flex-direction:column;gap:14px;padding:26px;display:flex}.fc-welcome-card h2{font-size:2rem}.sn{--sn-reserve:250px;color:var(--on-felt);flex-direction:column;gap:10px;display:flex}@media (hover:none) and (pointer:coarse){.sn{--sn-reserve:340px}}.sn-loading{text-align:center;min-height:60vh;padding:40px;font-size:1.2rem}.sn-row{flex-wrap:wrap;gap:14px;display:flex}.sn-bar{justify-content:space-between;align-items:stretch;gap:10px;display:flex}.sn-scores{align-items:center;gap:18px;padding:6px 16px;display:flex}.sn-score{white-space:nowrap;align-items:baseline;gap:6px;display:flex}.sn-score-label{color:var(--ink-soft);font-size:.95rem;font-weight:700}.sn-score strong{font-family:var(--font-display);font-size:1.6rem;font-weight:800;line-height:1}.sn-bar-buttons{gap:10px;display:flex}.sn-pause{min-width:128px;padding:0 16px}.sn-settings-btn{padding:0 14px}@media (width<=420px){.sn-scores{gap:12px;padding:4px 12px}.sn-score strong{font-size:1.35rem}.sn-pause{min-width:0}.sn-settings-word{display:none}}@media (hover:none) and (pointer:coarse) and (width<=520px){.sn-pause{display:none}}.sn-tray{flex-direction:column;align-items:center;gap:10px;display:flex}@media (width<=420px){.sn-tray{margin-inline:-8px;padding:6px}}.sn-board{width:min(100%, 600px, max(240px, calc(100dvh - var(--sn-reserve))));touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;box-sizing:content-box;background:#14261e;border:4px solid #9be3a8;border-radius:8px;position:relative;overflow:hidden;box-shadow:0 0 0 2px #0b1712}.sn-board.sn-walls-wrap{border-style:dashed;border-color:#7bd389}.sn-canvas{width:100%;height:100%;display:block}.sn-overlay{cursor:pointer;font:inherit;-webkit-tap-highlight-color:transparent;background:#0a140f4d;border:0;justify-content:center;align-items:flex-start;padding:5% 12px 12px;display:flex;position:absolute;inset:0}.sn-overlay--low{align-items:flex-end;padding:12px 12px 5%}.sn-overlay-card{text-align:center;flex-direction:column;align-items:center;gap:4px;max-width:92%;padding:12px 20px;display:flex;box-shadow:0 8px 24px #00000059}.sn-overlay-title{font-family:var(--font-display);font-size:1.6rem;font-weight:800}.sn-overlay-note{color:var(--ink-soft);font-size:1.05rem;line-height:1.3}.sn-overlay:focus-visible .sn-overlay-card{outline:4px solid var(--amber);outline-offset:3px}.sn-dpad{grid-template-rows:repeat(3,60px);grid-template-columns:repeat(3,72px);grid-template-areas:".up.""left mid right"".down.";gap:6px;display:none}@media (hover:none) and (pointer:coarse){.sn-dpad{display:grid}}.sn-arrow{cursor:pointer;background:var(--paper);color:var(--ink);box-shadow:0 4px 0 var(--line);touch-action:manipulation;-webkit-tap-highlight-color:transparent;border:0;border-radius:16px;justify-content:center;align-items:center;display:flex}.sn-arrow:active{box-shadow:0 1px 0 var(--line);transform:translateY(3px)}.sn-up{grid-area:up}.sn-down{grid-area:down}.sn-left{grid-area:left}.sn-right{grid-area:right}.sn-mid{background:var(--amber);color:var(--amber-ink);box-shadow:0 4px 0 var(--amber-deep);border-radius:50%;grid-area:mid}.sn-info{color:var(--on-felt-soft);text-align:center;padding:0 6px;font-size:.95rem}.sn-kbd-only{display:none}@media (hover:hover) and (pointer:fine){.sn-kbd-only{display:inline}.sn-touch-only{display:none}}.sn-scrim{z-index:40;background:#0a140f8c;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}@media (width>=640px){.sn-scrim{align-items:center;padding:24px}}.sn-dialog{border-radius:20px 20px 0 0;flex-direction:column;gap:14px;width:100%;max-width:520px;max-height:92vh;padding:22px 18px 26px;display:flex;overflow:auto;box-shadow:0 -6px 30px #00000059}@media (width>=640px){.sn-dialog{border-radius:20px;padding:26px 28px}}.sn-dialog h2{font-size:1.7rem}.sn-final{font-size:1.2rem}.sn-final strong{font-family:var(--font-display);margin-left:6px;font-size:2.2rem}.sn-link{cursor:pointer;min-height:44px;color:var(--ink);text-underline-offset:3px;background:0 0;border:0;align-self:flex-start;padding:0 4px;font-size:1.05rem;font-weight:700;text-decoration:underline}.sn-field{border:0;margin:0;padding:0}.sn-field legend{margin-bottom:8px;font-weight:700}.sn-options{flex-direction:column;gap:8px;display:flex}.sn-option{border:2px solid var(--line);cursor:pointer;border-radius:12px;align-items:center;gap:12px;min-height:52px;padding:6px 16px;font-weight:700;display:flex}.sn-option:has(input:checked){border-color:var(--ink);background:var(--paper-2)}.sn-option-note{color:var(--ink-soft);font-size:.9rem;font-weight:400;display:block}.sn-option input{accent-color:#1e5a47;flex-shrink:0;width:22px;height:22px}.sn-note{margin-top:8px}@media (prefers-reduced-motion:reduce){.sn-arrow:active{transform:none}}.bp{--bp-cell:#fff;--bp-given-bg:#e6ebf2;--bp-thin:#c5cfdb;--bp-frame:#1f2a44;--bp-zero:#1f3f66;--bp-zero-ink:#fff;--bp-one:#e8774a;--bp-one-ink:#2a1406;--bp-line:#f1f5fb;--bp-sel:#ffd970;--bp-bad:#b42318;--bp-bad-bg:#fde4df;--bp-hint:#2563eb;--bp-wave-bg:#ffe7a0;color:var(--on-felt)}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .bp{--bp-cell:#1c2230;--bp-given-bg:#2a3346;--bp-thin:#3a4357;--bp-frame:#c9d2e3;--bp-zero:#3d6aa8;--bp-zero-ink:#fff;--bp-one:#f08a5d;--bp-one-ink:#2a1406;--bp-line:#232b3d;--bp-sel:#6b5414;--bp-bad:#ff9b8a;--bp-bad-bg:#4a2222;--bp-hint:#8ab4ff;--bp-wave-bg:#5c4a12}}:root[data-theme=dark] .bp{--bp-cell:#1c2230;--bp-given-bg:#2a3346;--bp-thin:#3a4357;--bp-frame:#c9d2e3;--bp-zero:#3d6aa8;--bp-zero-ink:#fff;--bp-one:#f08a5d;--bp-one-ink:#2a1406;--bp-line:#232b3d;--bp-sel:#6b5414;--bp-bad:#ff9b8a;--bp-bad-bg:#4a2222;--bp-hint:#8ab4ff;--bp-wave-bg:#5c4a12}.bp-loading{text-align:center;min-height:60vh;padding:40px;font-size:1.2rem}.bp-row{flex-wrap:wrap;gap:14px;display:flex}.bp-sr{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.bp-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 12px;margin-bottom:12px;display:flex}.bp-title{font-size:1.15rem}@media (width>=640px){.bp-title{font-size:1.35rem}}.bp-toolbar-buttons{gap:8px;display:flex}.bp-chip{cursor:pointer;background:var(--wood-dark);color:#fff6e3;white-space:nowrap;border:0;border-radius:12px;min-height:44px;padding:0 14px;font-weight:700}.bp-tray{padding:4px}@media (width<=420px){.bp-tray{margin-inline:-8px}}@media (width>=640px){.bp-tray{padding:12px}}.bp-layout{grid-template-columns:minmax(0,1fr);grid-template-areas:"status""board""broken""controls";gap:6px;display:grid}@media (width>=640px){.bp-layout{gap:12px;max-width:580px;margin:0 auto}}@media (width>=1000px){.bp-layout{grid-template:"board status""board broken""board controls"1fr/minmax(0,1fr) 340px;align-items:start;max-width:980px}}.bp-status{grid-area:status;min-height:2.9em;padding:10px 14px;font-size:1rem}@media (width>=1000px){.bp-status{padding:14px 18px;font-size:1.1rem}}.bp-board-wrap{grid-area:board;width:100%;margin:0 auto;container-type:inline-size}.bp-size-6 .bp-board-wrap{max-width:440px}.bp-size-8 .bp-board-wrap{max-width:560px}.bp-board{grid-template-rows:repeat(var(--bp-n), minmax(0, 1fr));aspect-ratio:1;border:2px solid var(--bp-frame);background:var(--bp-cell);-webkit-user-select:none;user-select:none;border-radius:6px;width:100%;display:grid;overflow:hidden}@media (width>=640px){.bp-board{border-width:3px}}.bp-grid-row{grid-template-columns:repeat(var(--bp-n), minmax(0, 1fr));display:grid}.bp-cell{cursor:pointer;background:var(--bp-cell);border-right:1px solid var(--bp-thin);border-bottom:1px solid var(--bp-thin);-webkit-tap-highlight-color:transparent;touch-action:manipulation;justify-content:center;align-items:center;min-width:0;min-height:0;display:flex;position:relative}.bp-cell:last-child{border-right:0}.bp-grid-row:last-child .bp-cell{border-bottom:0}.bp-cell:focus-visible{outline:3px solid var(--bp-hint);outline-offset:-3px;z-index:1}.bp-cell.is-line{background:var(--bp-line)}.bp-cell.is-given{background:var(--bp-given-bg)}.bp-cell.is-conflict{background:var(--bp-bad-bg)}.bp-cell.is-selected{box-shadow:inset 0 0 0 4px var(--bp-sel)}.bp-cell.is-conflict:before{content:"";border:2px dashed var(--bp-bad);pointer-events:none;border-radius:4px;position:absolute;inset:2px}.bp-cell.is-hint:after{content:"";border:3px dashed var(--bp-hint);pointer-events:none;border-radius:50%;position:absolute;inset:3px}.bp-disc{aspect-ratio:1;width:78%;font-family:var(--font-body);font-size:1.4rem;font-weight:700;line-height:1;font-size:calc(46cqi / var(--bp-n,8));border-radius:50%;justify-content:center;align-items:center;display:inline-flex}.bp-disc--0{background:var(--bp-zero);color:var(--bp-zero-ink)}.bp-disc--1{background:var(--bp-one);color:var(--bp-one-ink)}.bp-cell.is-given .bp-disc{box-shadow:0 0 0 2px var(--bp-given-bg), 0 0 0 4px var(--bp-frame);width:70%}.bp-cell.is-entry .bp-disc{box-shadow:0 2px #0000002e}.bp-cell.is-wrong .bp-disc{box-shadow:0 0 0 3px var(--bp-bad);text-underline-offset:2px;text-decoration:underline 2px}.bp-flag{background:var(--bp-bad);color:#fff;pointer-events:none;border-radius:50%;justify-content:center;align-items:center;width:16px;height:16px;font-size:.7rem;font-weight:800;line-height:1;display:flex;position:absolute;top:2px;right:2px}@media (width>=640px){.bp-flag{width:20px;height:20px;font-size:.85rem;top:3px;right:3px}}.bp-broken{border:2px dashed var(--bp-bad);grid-area:broken;align-items:flex-start;gap:12px;padding:10px 14px;display:flex}.bp-broken ul{margin:2px 0 0;padding-left:1.1em}.bp-broken-mark{background:var(--bp-bad);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;font-weight:800;display:flex}.bp-board.is-solved .bp-cell{animation:bp-wave .9s ease-in-out var(--bp-wave,0s) backwards}@keyframes bp-wave{0%,to{background:var(--bp-cell)}45%{background:var(--bp-wave-bg)}}.bp-controls{flex-direction:column;grid-area:controls;gap:10px;padding:10px;display:flex}@media (width>=1000px){.bp-controls{gap:14px;padding:16px}}.bp-pad{grid-template-columns:1fr 1fr 1fr;gap:8px;display:grid}.bp-key{cursor:pointer;background:var(--bp-cell);min-height:72px;color:var(--ink);border:2px solid var(--bp-thin);box-shadow:0 3px 0 var(--bp-thin);border-radius:14px;flex-direction:column;justify-content:center;align-items:center;gap:2px;padding:6px 0;transition:transform 80ms,box-shadow 80ms;display:flex;position:relative}.bp-key:active{box-shadow:0 1px 0 var(--bp-thin);transform:translateY(2px)}.bp-key .bp-disc{width:54px;font-size:1.9rem;font-family:var(--font-display);font-weight:800}.bp-key--0 .bp-disc{background:var(--bp-zero);color:var(--bp-zero-ink)}.bp-key--1 .bp-disc{background:var(--bp-one);color:var(--bp-one-ink)}.bp-key--erase{color:var(--ink)}.bp-key-word{font-size:.95rem;font-weight:700}.bp-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.bp-actions .token{white-space:nowrap;gap:6px;min-height:52px;padding:0 6px;font-size:1.05rem}.bp-rules{color:var(--ink-soft);font-size:.9rem}.bp-keys{color:var(--ink-soft);font-size:.85rem;display:none}@media (width>=1000px){.bp-keys{display:block}}.bp-scrim{z-index:40;background:#0a140f8c;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}@media (width>=640px){.bp-scrim{align-items:center;padding:24px}}.bp-dialog{border-radius:20px 20px 0 0;flex-direction:column;gap:14px;width:100%;max-width:520px;max-height:92vh;padding:22px 18px 26px;display:flex;overflow:auto;box-shadow:0 -6px 30px #00000059}@media (width>=640px){.bp-dialog{border-radius:20px;padding:26px 28px}}.bp-dialog h2{font-size:1.7rem}.bp-field{border:0;margin:0;padding:0}.bp-field legend{margin-bottom:8px;font-weight:700}.bp-options{flex-wrap:wrap;gap:8px;display:flex}.bp-options--stack{flex-direction:column}.bp-option{border:2px solid var(--line);cursor:pointer;border-radius:12px;align-items:center;gap:10px;min-height:52px;padding:6px 16px;font-weight:700;display:flex}.bp-option:has(input:checked){border-color:var(--ink);background:var(--paper-2)}.bp-option-note{color:var(--ink-soft);font-size:.9rem;font-weight:400;display:block}.bp-option input,.bp-check input{accent-color:#1e5a47;flex-shrink:0;width:22px;height:22px}.bp-check{cursor:pointer;align-items:center;gap:12px;min-height:52px;font-weight:700;display:flex}.bp-streak{font-size:1.1rem}.bp-celebrate{justify-content:center;gap:8px;display:flex}.bp-celebrate .bp-disc{width:34px;font-size:1.1rem;font-family:var(--font-display);animation:bp-hop .7s ease-out var(--bp-wave,0s) both;font-weight:800}@keyframes bp-hop{0%{opacity:0;transform:translateY(10px)}60%{opacity:1;transform:translateY(-6px)}to{opacity:1;transform:none}}.bp-welcome{max-width:640px;margin:0 auto}.bp-welcome-card{flex-direction:column;gap:14px;padding:26px;display:flex}.bp-welcome-card h2{font-size:2rem}@media (prefers-reduced-motion:reduce){.bp-board.is-solved .bp-cell,.bp-celebrate .bp-disc{animation:none}.bp-key{transition:none}}.tm{--tm-wood:#7a5a3a;--tm-wood-edge:#4a3420;--tm-slot:#fff6e329;--tm-ink:#2b1d0e;color:var(--on-felt)}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .tm{--tm-wood:#6b4d31;--tm-wood-edge:#3a2817;--tm-slot:#fff6e31f}}:root[data-theme=dark] .tm{--tm-wood:#6b4d31;--tm-wood-edge:#3a2817;--tm-slot:#fff6e31f}.tm-loading{text-align:center;min-height:60vh;padding:40px;font-size:1.2rem}.tm-row{flex-wrap:wrap;gap:14px;display:flex}.tm-welcome{padding:14px}.tm-welcome-card{gap:16px;max-width:560px;margin-inline:auto;padding:22px;display:grid}.tm-welcome-card h2{font-size:1.6rem}.tm-welcome-card p{font-size:1.1rem}.tm-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:stretch;gap:8px 12px;margin-bottom:12px;display:flex}.tm-scores{gap:8px;display:flex}.tm-score{flex-direction:column;justify-content:center;align-items:center;min-width:92px;padding:6px 14px;line-height:1.1;display:flex}.tm-score-label{color:var(--ink-soft);text-transform:uppercase;letter-spacing:.06em;font-size:.9rem;font-weight:700}.tm-score-num{font-family:var(--font-display);font-variant-numeric:tabular-nums;font-size:1.6rem;font-weight:800}.tm-chip{cursor:pointer;background:var(--wood-dark);color:#fff6e3;white-space:nowrap;border:0;border-radius:12px;align-self:center;min-height:48px;padding:0 18px;font-size:1.05rem;font-weight:700}.tm-tray{padding:4px}@media (width<=420px){.tm-tray{margin-inline:-8px}}@media (width>=640px){.tm-tray{padding:12px}}.tm-layout{grid-template-columns:minmax(0,1fr);grid-template-areas:"status""board""pad""controls""keys";gap:8px;display:grid}@media (width>=900px){.tm-layout{grid-template:"board status""board pad""board controls""board keys"1fr/minmax(0,1fr) 320px;align-items:start;gap:12px}}.tm-status{grid-area:status;align-items:center;min-height:3.2em;padding:10px 14px;font-size:1.05rem;display:flex}@media (width>=900px){.tm-status{min-height:5.5em;padding:14px 18px;font-size:1.1rem}}.tm-board-wrap{grid-area:board;justify-content:center;display:flex;container-type:inline-size}.tm-board{--tm-w:min(100cqi, 560px);--tm-gap:max(6px, calc(var(--tm-w) * .022));--tm-cell:calc((var(--tm-w) - (var(--tm-n) + 1) * var(--tm-gap)) / var(--tm-n));width:var(--tm-w);height:var(--tm-w);background:var(--tm-wood);box-shadow:inset 0 2px 0 #ffffff1f, 0 5px 0 var(--tm-wood-edge);touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;cursor:grab;border-radius:14px;flex:none;position:relative}@media (width>=900px){.tm-board{--tm-w:min(100cqi, 560px, max(320px, 100svh - 220px))}}.tm-board:focus-visible{outline:4px solid var(--amber);outline-offset:4px}.tm-board.is-over .tm-tile{filter:saturate(.6)brightness(.92)}.tm-slot,.tm-tile{left:var(--tm-gap);top:var(--tm-gap);width:var(--tm-cell);height:var(--tm-cell);transform:translate(calc(var(--tm-c) * (var(--tm-cell) + var(--tm-gap))), calc(var(--tm-r) * (var(--tm-cell) + var(--tm-gap))));position:absolute}.tm-slot{background:var(--tm-slot);border-radius:10%}.tm-tile{z-index:2;pointer-events:none;transition:transform .12s ease-out}.tm-tile.is-ghost{z-index:1}.tm-face{background:var(--tm-bg);width:100%;height:100%;color:var(--tm-fg);font-family:var(--font-display);letter-spacing:-.02em;font-variant-numeric:tabular-nums;font-weight:800;line-height:1;font-size:calc(var(--tm-cell) * .5);border-radius:10%;justify-content:center;align-items:center;display:flex;box-shadow:inset 0 -4px #00000029,0 2px 3px #00000040}.tm-len2 .tm-face{font-size:calc(var(--tm-cell) * .46)}.tm-len3 .tm-face{font-size:calc(var(--tm-cell) * .37)}.tm-len4 .tm-face{font-size:calc(var(--tm-cell) * .29)}.tm-len5 .tm-face{font-size:calc(var(--tm-cell) * .23)}.tm-v2{--tm-bg:#fff6e3;--tm-fg:#2b1d0e}.tm-v4{--tm-bg:#f5dfb0;--tm-fg:#2b1d0e}.tm-v8{--tm-bg:#f3c77a;--tm-fg:#2b1d0e}.tm-v16{--tm-bg:#efa54b;--tm-fg:#2b1d0e}.tm-v32{--tm-bg:#e8774a;--tm-fg:#2b1d0e}.tm-v64{--tm-bg:#b5442a;--tm-fg:#fff}.tm-v128{--tm-bg:#3fa37f;--tm-fg:#10241c}.tm-v256{--tm-bg:#1e5a47;--tm-fg:#fff}.tm-v512{--tm-bg:#2a6f86;--tm-fg:#fff}.tm-v1024{--tm-bg:#23324d;--tm-fg:#fff}.tm-v2048{--tm-bg:#d4af5a;--tm-fg:#2b1d0e}.tm-v2048 .tm-face{box-shadow:inset 0 -4px #00000029,0 0 0 3px #ffc53d,0 0 14px #ffc53db3}.tm-v4096{--tm-bg:#6b2f5b;--tm-fg:#fff}.tm-v8192{--tm-bg:#2b1d0e;--tm-fg:#ffc53d}.tm-v8192 .tm-face{box-shadow:inset 0 0 0 3px #ffc53d}.tm-tile.is-new .tm-face{animation:.15s ease-out .11s both tm-appear}.tm-tile.is-merged .tm-face{animation:.2s ease-out .1s both tm-pop}@keyframes tm-appear{0%{opacity:0;transform:scale(.4)}to{opacity:1;transform:scale(1)}}@keyframes tm-pop{0%{opacity:0;transform:scale(.8)}50%{opacity:1;transform:scale(1.12)}to{transform:scale(1)}}@media (prefers-reduced-motion:reduce){.tm-tile{transition:none}.tm-tile.is-new .tm-face,.tm-tile.is-merged .tm-face{animation:none}.tm-tile.is-ghost{display:none}.tm-arrow.is-hint{animation:none}}.tm-pad{grid-area:pad;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;width:100%;max-width:560px;margin-inline:auto;display:grid}.tm-arrow{cursor:pointer;background:var(--paper);min-height:64px;color:var(--ink);border:2px solid var(--line);box-shadow:0 5px 0 var(--line);-webkit-tap-highlight-color:transparent;touch-action:manipulation;border-radius:16px;justify-content:center;align-items:center;transition:transform 80ms,box-shadow 80ms;display:flex}.tm-arrow:active{box-shadow:0 2px 0 var(--line);transform:translateY(3px)}.tm-arrow.is-hint{background:var(--amber);color:var(--amber-ink);border-color:var(--amber-deep);box-shadow:0 5px 0 var(--amber-deep);animation:1.4s ease-in-out infinite tm-glow}@keyframes tm-glow{50%{outline-offset:3px;outline:4px solid #ffc53d8c}}@media (width>=900px){.tm-arrow{min-height:72px}}.tm-controls{flex-wrap:wrap;grid-area:controls;justify-content:center;gap:10px;padding:10px;display:flex}.tm-controls .token{flex:130px}.tm-keys{color:var(--on-felt-soft);grid-area:keys;padding:2px 6px;font-size:.95rem}.tm-keys-kbd{display:none}@media (hover:hover) and (pointer:fine){.tm-keys-kbd{display:inline}}.tm-scrim{z-index:40;background:#140c0499;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.tm-dialog{gap:14px;width:min(100%,460px);max-height:calc(100svh - 32px);padding:24px;display:grid;overflow:auto;box-shadow:0 20px 40px #00000073}.tm-dialog h2{font-size:1.6rem}.tm-dialog p{font-size:1.1rem}.tm-link{color:var(--ink);text-underline-offset:4px;cursor:pointer;background:0 0;border:0;justify-self:start;padding:8px 2px;font-weight:700;text-decoration:underline}.tm-celebrate{justify-content:center;display:flex}.tm-tile-mini{--tm-cell:96px;background:var(--tm-bg);width:96px;height:96px;color:var(--tm-fg);font-family:var(--font-display);border-radius:12px;justify-content:center;align-items:center;font-size:1.9rem;font-weight:800;animation:.4s ease-out both tm-pop;display:flex;box-shadow:0 0 0 3px #ffc53d,0 0 18px #ffc53db3}.cb{--cb-board:#3a4556;--cb-board-edge:#232b38;--cb-row:#2f3949;--cb-hole:#232b38;--cb-hole-ring:#4c5970;--cb-text:#e8edf5;--cb-text-soft:#b7c1d1;--cb-current:#ffc53d;--cb-pin-black:#111;--cb-pin-white:#f5f5f5;color:var(--on-felt)}.cb-loading{text-align:center;min-height:60vh;padding:40px;font-size:1.2rem}.cb-btnrow{flex-wrap:wrap;gap:14px;display:flex}.cb-sr{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.cb-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 12px;margin-bottom:12px;display:flex}.cb-title{font-size:1.15rem}@media (width>=640px){.cb-title{font-size:1.35rem}}.cb-toolbar-buttons{gap:8px;display:flex}.cb-chip{cursor:pointer;background:var(--wood-dark);color:#fff6e3;white-space:nowrap;border:0;border-radius:12px;min-height:44px;padding:0 14px;font-weight:700}.cb-tray{padding:4px}@media (width<=420px){.cb-tray{margin-inline:-8px}}@media (width>=640px){.cb-tray{padding:12px}}.cb-layout{grid-template-columns:minmax(0,1fr);grid-template-areas:"board""status""controls";gap:8px;display:grid}@media (width>=640px){.cb-layout{gap:12px;max-width:580px;margin:0 auto}}@media (width>=1000px){.cb-layout{grid-template:"board status""board controls"1fr/minmax(0,1fr) 380px;align-items:start;max-width:980px}}.cb-status{grid-area:status;min-height:2.9em;padding:10px 14px;font-size:1.05rem}@media (width>=1000px){.cb-status{padding:14px 18px;font-size:1.1rem}}.cb-board{background:var(--cb-board);color:var(--cb-text);border:3px solid var(--cb-board-edge);border-radius:16px;flex-direction:column;grid-area:board;gap:8px;padding:10px 8px;display:flex;container-type:inline-size}@media (width>=640px){.cb-board{padding:14px}}.cb-rows,.cb-secret{--cb-peg:clamp(30px, calc((100cqi - 120px) / var(--cb-pegs,4) - 6px), 52px)}.cb-pegs{align-items:center;gap:6px;display:inline-flex;position:relative}.cb-peg{width:var(--cb-peg);height:var(--cb-peg);flex-shrink:0;display:block}.cb-hole{width:var(--cb-peg);height:var(--cb-peg);background:var(--cb-hole);box-shadow:inset 0 2px 4px #00000080, 0 0 0 2px var(--cb-hole-ring);color:var(--cb-text-soft);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:1.1rem;font-weight:800;display:inline-flex}.cb-secret{background:var(--cb-board-edge);border-radius:12px;align-items:center;gap:10px;padding:8px 10px;display:flex}.cb-secret-label{width:64px;color:var(--cb-text-soft);font-size:.85rem;font-weight:700;line-height:1.15}.cb-rows{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.cb-row{background:var(--cb-row);min-height:calc(var(--cb-peg) + 12px);border-radius:12px;align-items:center;gap:8px;padding:6px 8px;display:flex}.cb-row-num{text-align:right;width:22px;color:var(--cb-text-soft);flex-shrink:0;font-weight:700}.cb-row .cb-pegs{flex:none}.cb-row.is-current{outline:3px solid var(--cb-current);outline-offset:-1px;background:#34405a}.cb-row.is-current .cb-row-num{color:var(--cb-current)}.cb-row.is-current .cb-peg,.cb-row.is-current .cb-hole{width:max(var(--cb-peg), 40px);height:max(var(--cb-peg), 40px)}.cb-left{color:var(--cb-text-soft);text-align:right;margin-left:auto;font-size:.9rem;font-weight:700;line-height:1.15}.cb-slot{cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:0;border-radius:50%;justify-content:center;align-items:center;min-width:44px;min-height:44px;padding:0;display:inline-flex}.cb-slot:focus-visible{outline:3px solid var(--cb-current);outline-offset:2px}.cb-slot.is-filled .cb-peg{animation:.18s ease-out cb-drop}@keyframes cb-drop{0%{transform:scale(.6)}to{transform:none}}.cb-clues{flex-shrink:0;margin-left:auto}.cb-clues--pins{grid-template-columns:repeat(2,16px);gap:5px;padding:4px;display:grid}.cb-clues--5{grid-template-columns:repeat(3,16px)}.cb-pin{background:var(--cb-hole);border-radius:50%;width:16px;height:16px;display:inline-block;box-shadow:inset 0 1px 2px #0009}.cb-pin--black{background:var(--cb-pin-black);box-shadow:0 0 0 2px #c9d2e0}.cb-pin--white{background:var(--cb-pin-white);box-shadow:0 0 0 2px #5b6880}.cb-clues--num{gap:6px;display:inline-flex}.cb-num{border-radius:8px;justify-content:center;align-items:center;min-width:30px;height:30px;padding:0 4px;font-size:1.1rem;font-weight:800;line-height:1;display:inline-flex}.cb-num--black{background:var(--cb-pin-black);color:#fff;box-shadow:0 0 0 2px #c9d2e0}.cb-num--white{background:var(--cb-pin-white);color:#111;box-shadow:0 0 0 2px #5b6880}.cb-legend{color:var(--cb-text-soft);flex-wrap:wrap;align-items:center;gap:4px 14px;margin:2px 4px 0;font-size:.85rem;display:flex}.cb-legend-item{white-space:nowrap;align-items:center;gap:6px;display:inline-flex}.cb-legend .cb-pin{width:13px;height:13px}.cb-legend .cb-num{min-width:22px;height:22px;font-size:.8rem}.cb-controls{flex-direction:column;grid-area:controls;gap:12px;padding:12px;display:flex}@media (width>=1000px){.cb-controls{gap:14px;padding:16px}}.cb-palette{grid-template-columns:repeat(6,minmax(0,1fr));gap:6px;display:grid}.cb-palette--8{grid-template-columns:repeat(4,minmax(0,1fr))}@media (width<=340px){.cb-palette--6{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width>=1000px){.cb-palette--6{grid-template-columns:repeat(3,minmax(0,1fr))}}.cb-colour{cursor:pointer;background:var(--paper-2);min-height:72px;color:var(--ink);border:2px solid var(--line);box-shadow:0 3px 0 var(--line);-webkit-tap-highlight-color:transparent;border-radius:14px;flex-direction:column;justify-content:center;align-items:center;gap:3px;padding:6px 0 4px;transition:transform 80ms,box-shadow 80ms;display:flex}.cb-colour:active{box-shadow:0 1px 0 var(--line);transform:translateY(2px)}.cb-colour:focus-visible{outline:3px solid var(--hint);outline-offset:2px}.cb-colour-peg{--cb-peg:46px;position:relative}.cb-colour-name{text-align:center;font-size:.8rem;font-weight:700;line-height:1.1}.cb-colour.is-used{opacity:.4}.cb-colour.is-out .cb-peg{opacity:.45}.cb-out-mark{background:var(--paper);width:22px;height:22px;color:var(--ink);border:2px solid var(--ink);border-radius:50%;justify-content:center;align-items:center;font-size:.75rem;font-weight:800;display:flex;position:absolute;top:-6px;right:-6px}.cb-colour[aria-disabled=true]{cursor:not-allowed}.cb-check{width:100%}.cb-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.cb-actions .token{white-space:nowrap;gap:6px;min-height:52px;padding:0 6px;font-size:1.05rem}.cb-keys{color:var(--ink-soft);font-size:.85rem;display:none}@media (width>=1000px){.cb-keys{display:block}}.cb-over{flex-direction:column;gap:12px;font-size:1.1rem;display:flex}.cb-hint{--cb-pegs:5;background:var(--alert-bg);color:var(--alert-ink);border:2px dashed var(--amber-deep);border-radius:14px;flex-direction:column;gap:10px;padding:12px;display:flex}.cb-hint p{margin:0}.cb-pegs--small{--cb-peg:40px;background:var(--cb-board);border-radius:12px;padding:6px 8px}.cb-hint .token--quiet{min-height:48px;padding:0 16px}.cb-known{border-top:2px solid var(--line);flex-direction:column;gap:8px;padding-top:10px;display:flex}.cb-known-line{flex-wrap:wrap;align-items:center;gap:6px 10px;display:flex}.cb-known-label{min-width:9.5em;font-size:.95rem;font-weight:700}.cb-known-none{color:var(--ink-soft)}.cb-pegs--tiny{--cb-peg:30px;background:var(--cb-board);color:var(--cb-text);border-radius:10px;flex-wrap:wrap;padding:4px 6px}.cb-pegs--tiny .cb-hole{font-size:.85rem}.cb-known-item{align-items:center;gap:2px;display:inline-flex}.cb-times{font-size:.9rem;font-weight:800}.cb-known-count{color:var(--ink-soft);margin:0;font-size:.9rem}.cb-scrim{z-index:40;background:#0a140f8c;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}@media (width>=640px){.cb-scrim{align-items:center;padding:24px}}.cb-dialog{border-radius:20px 20px 0 0;flex-direction:column;gap:14px;width:100%;max-width:520px;max-height:92vh;padding:22px 18px 26px;display:flex;overflow:auto;box-shadow:0 -6px 30px #00000059}@media (width>=640px){.cb-dialog{border-radius:20px;padding:26px 28px}}.cb-dialog h2{font-size:1.7rem}.cb-dialog p{margin:0}.cb-field{border:0;margin:0;padding:0}.cb-field legend{margin-bottom:8px;font-weight:700}.cb-options{flex-wrap:wrap;gap:8px;display:flex}.cb-options--stack{flex-direction:column}.cb-option{border:2px solid var(--line);cursor:pointer;border-radius:12px;align-items:center;gap:10px;min-height:52px;padding:6px 16px;font-weight:700;display:flex}.cb-option:has(input:checked){border-color:var(--ink);background:var(--paper-2)}.cb-option-note{color:var(--ink-soft);font-size:.9rem;font-weight:400;display:block}.cb-option input,.cb-check-opt input{accent-color:#1e5a47;flex-shrink:0;width:22px;height:22px}.cb-check-opt{cursor:pointer;align-items:center;gap:12px;min-height:52px;font-weight:700;display:flex}.cb-streak{font-size:1.1rem}.cb-reveal{--cb-peg:50px;background:var(--cb-board);color:var(--cb-text);border-radius:14px;flex-direction:column;align-items:center;gap:8px;padding:14px;display:flex}.cb-reveal-names{text-align:center;font-size:.95rem;font-weight:700}.cb-reveal-peg{animation:cb-pop .5s ease-out var(--cb-delay,0s) both}@keyframes cb-pop{0%{opacity:0;transform:scale(.4)}70%{opacity:1;transform:scale(1.08)}to{transform:none}}.cb-welcome{max-width:640px;margin:0 auto}.cb-welcome-card{flex-direction:column;gap:14px;padding:26px;display:flex}.cb-welcome-card h2{font-size:2rem}@media (prefers-reduced-motion:reduce){.cb-slot.is-filled .cb-peg,.cb-reveal-peg{animation:none}.cb-colour{transition:none}}.mb{--mb-board:#ead5aa;--mb-board-edge:#9c7a45;--mb-ink:#3b2416;--mb-cream:#fff6e3;--mb-cream-ring:#9c7a45;--mb-dark:#2b1d0e;--mb-dark-mark:#d9b46e;--mb-gold:#e09a12;--mb-glow:#ffc53d;--mb-red:#c0392b;--mb-hint:#2563eb;color:var(--on-felt)}.mb-loading{text-align:center;padding:40px;font-size:1.2rem}.mb-row{flex-wrap:wrap;gap:14px;display:flex}.mb-toolbar{justify-content:space-between;align-items:center;gap:10px;margin-bottom:12px;display:flex}.mb-score{font-family:var(--font-display);flex-wrap:wrap;align-items:baseline;gap:4px 10px;font-size:1.15rem;font-weight:700;display:flex}.mb-score strong{font-size:1.45rem;font-weight:800}.mb-score-note{color:var(--on-felt-soft);font-weight:600}@media (width<=400px){.mb-score-note{display:none}}@media (width>=640px){.mb-score{font-size:1.3rem}.mb-score strong{font-size:1.7rem}}.mb-chip{cursor:pointer;background:var(--wood-dark);color:#fff6e3;white-space:nowrap;border:0;border-radius:12px;flex-shrink:0;min-height:44px;padding:0 14px;font-weight:700}.mb-tray{flex-direction:column;gap:10px;padding:8px;display:flex}@media (width>=900px){.mb-tray{gap:14px;padding:14px}}.mb-status{min-height:112px;padding:12px 16px}.mb-stage{color:var(--ink-soft);text-transform:none;font-size:.95rem;font-weight:700}.mb-turn{font-size:1.4rem}.mb-message{margin-top:4px;font-size:1.02rem}@media (width>=900px){.mb-turn{font-size:1.7rem}.mb-message{font-size:1.08rem}}.mb-play{flex-direction:column;align-items:center;gap:8px;display:flex}.mb-play>*{width:100%;max-width:min(640px,78vh)}@media (width<=480px){.mb-play>*{max-width:none}}.mb-board{aspect-ratio:1;-webkit-user-select:none;user-select:none;position:relative}.mb-svg{width:100%;height:100%;display:block}.mb-wood{fill:var(--mb-board);stroke:var(--mb-board-edge);stroke-width:.1px;filter:drop-shadow(0 .08px #0000004d)}.mb-line{stroke:var(--mb-ink);stroke-width:.06px;stroke-linecap:round}.mb-dot{fill:var(--mb-ink)}.mb-cow{stroke-width:.05px}.mb-cow--you{fill:var(--mb-cream);stroke:var(--mb-ink)}.mb-cow-ring{fill:none;stroke:var(--mb-cream-ring);stroke-width:.06px}.mb-cow--thabo{fill:var(--mb-dark);stroke:#120a04}.mb-cow-diamond{fill:var(--mb-dark-mark)}.mb-anim{filter:drop-shadow(0 .05px .03px #00000073)}.mb-spot{fill:#3b24161f;stroke:#3b241673;stroke-width:.04px;stroke-dasharray:.08 .07}.mb-dest{fill:#e09a1259;stroke:var(--mb-gold);stroke-width:.07px}.mb-movable{fill:none;stroke:var(--mb-gold);stroke-width:.05px;stroke-dasharray:.14 .09;opacity:.9}.mb-selected{fill:none;stroke:var(--mb-gold);stroke-width:.1px}.mb-last{fill:none;stroke:#3b241699;stroke-width:.05px;stroke-dasharray:.12 .08}.mb-trail{fill:none;stroke:#3b241680;stroke-width:.05px;stroke-dasharray:.08 .08}.mb-hint{fill:none;stroke:var(--mb-hint);stroke-width:.09px;stroke-dasharray:.16 .1}.mb-mill{stroke:var(--mb-glow);stroke-width:.36px;stroke-linecap:round;opacity:.9;animation:1.4s ease-in-out infinite alternate mb-glow}@keyframes mb-glow{0%{opacity:.6}to{opacity:1}}.mb-target circle{fill:none;stroke:var(--mb-red);stroke-width:.08px}.mb-target path{stroke:var(--mb-red);stroke-width:.08px;stroke-linecap:round}.mb-target{transform-box:fill-box;transform-origin:50%;animation:1.1s ease-in-out infinite alternate mb-pulse}@keyframes mb-pulse{0%{transform:scale(.94)}to{transform:scale(1.04)}}.mb-anim--drop{animation:.22s ease-out mb-drop}@keyframes mb-drop{0%{opacity:.2;transform:scale(1.35)}to{opacity:1;transform:scale(1)}}.mb-anim--slide{animation:.28s ease-in-out mb-slide}@keyframes mb-slide{0%{transform:translate(var(--dx), var(--dy))}to{transform:translate(0)}}.mb-anim--gone{animation:.32s ease-in forwards mb-gone}@keyframes mb-gone{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.3)}}.mb-point{cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:0;border-radius:50%;width:14.2857%;min-width:44px;height:14.2857%;min-height:44px;margin:0;padding:0;position:absolute;transform:translate(-50%,-50%)}.mb-point:focus-visible{outline:3px solid var(--mb-hint);outline-offset:-3px;box-shadow:inset 0 0 0 3px #fff}@media (hover:hover){.mb-point.is-dest:hover{background:#e09a122e}}.mb-herd{background:#0000002e;border:2px solid #0000;border-radius:14px;grid-template-columns:auto auto 1fr;grid-template-areas:"badge name counts""hand hand hand";align-items:center;gap:4px 10px;padding:8px 12px;display:grid}.mb-herd.is-active{border-color:var(--amber);background:#ffc53d1f}.mb-herd-badge{grid-area:badge;width:30px;height:30px}.mb-herd-name{font-family:var(--font-display);grid-area:name;font-size:1.15rem;font-weight:800}.mb-herd-counts{flex-wrap:wrap;grid-area:counts;justify-content:flex-end;gap:2px 12px;font-size:.98rem;display:flex}.mb-herd-counts strong{font-size:1.1rem}.mb-herd-hand{flex-wrap:wrap;grid-area:hand;gap:4px;display:flex}.mb-herd-hand i{border:2px dashed #fff6e340;border-radius:50%;width:16px;height:16px}.mb-herd--you .mb-herd-hand i.is-in{border:2px solid var(--mb-ink);background:var(--mb-cream);box-shadow:inset 0 0 0 3px var(--mb-cream), inset 0 0 0 5px var(--mb-cream-ring)}.mb-herd--thabo .mb-herd-hand i.is-in{background:var(--mb-dark);box-shadow:inset 0 0 0 4px var(--mb-dark), inset 0 0 0 7px var(--mb-dark-mark);border:2px solid #120a04}@media (width>=640px){.mb-herd{grid-template-columns:auto auto 1fr auto;grid-template-areas:"badge name hand counts"}.mb-herd-hand{justify-content:center}}.mb-actions{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.mb-actions .token{gap:6px;padding:0 8px;font-size:1.05rem}.mb-keys{color:var(--on-felt-soft);font-size:.88rem;display:none}@media (width>=1000px){.mb-actions{width:100%;max-width:640px;margin:0 auto}.mb-keys{text-align:center;display:block}}.mb-scrim{z-index:40;background:#0a140f8c;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}@media (width>=640px){.mb-scrim{align-items:center;padding:24px}}.mb-dialog{border-radius:20px 20px 0 0;flex-direction:column;gap:14px;width:100%;max-width:520px;max-height:92vh;padding:22px 18px 26px;display:flex;overflow:auto;box-shadow:0 -6px 30px #00000059}@media (width>=640px){.mb-dialog{border-radius:20px;padding:26px 28px}}.mb-dialog h2{font-size:1.7rem}.mb-final{font-family:var(--font-display);gap:24px;font-size:1.2rem;display:flex}.mb-final strong{margin-left:6px;font-size:2rem}.mb-field{border:0;margin:0;padding:0}.mb-field legend{margin-bottom:8px;font-weight:700}.mb-options{flex-wrap:wrap;gap:8px;display:flex}.mb-option{border:2px solid var(--line);cursor:pointer;border-radius:12px;align-items:center;gap:8px;min-height:48px;padding:0 16px;font-weight:700;display:inline-flex}.mb-option:has(input:checked){border-color:var(--ink);background:var(--paper-2)}.mb-option input{accent-color:#1e5a47;width:22px;height:22px}.mb-help{margin-top:8px;font-size:.95rem}.mb-welcome{max-width:640px;margin:0 auto}.mb-welcome-card{flex-direction:column;gap:14px;padding:26px;display:flex}.mb-welcome-card h2{font-size:2rem}@media (prefers-reduced-motion:reduce){.mb-anim--drop,.mb-anim--slide,.mb-anim--gone,.mb-mill,.mb-target{animation:none}.mb-anim--gone{opacity:0}}.hr{--play:#b7791f;color:var(--on-felt)}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .hr{--play:var(--amber)}}:root[data-theme=dark] .hr{--play:var(--amber)}.hr-loading{text-align:center;padding:40px;font-size:1.2rem}.hr-row{flex-wrap:wrap;gap:14px;display:flex}.hr-toolbar{justify-content:space-between;align-items:center;gap:10px;margin-bottom:12px;display:flex}.hr-round{font-family:var(--font-display);white-space:nowrap;font-size:1.1rem;font-weight:800}.hr-round-sub{color:var(--on-felt-soft);font-weight:600}@media (width<=400px){.hr-round-sub{display:none}}@media (width>=640px){.hr-round{font-size:1.25rem}}.hr-toolbar-buttons{gap:8px;display:flex}.hr-chip{cursor:pointer;background:var(--wood-dark);color:#fff6e3;white-space:nowrap;border:0;border-radius:12px;min-height:44px;padding:0 14px;font-weight:700}.hr-tray{padding:8px}.hr-grid{grid-template-columns:minmax(0,1fr);grid-template-areas:"table""status""hand";gap:8px;display:grid}.hr-scores{display:none}@media (width>=1000px){.hr-tray{padding:14px}.hr-grid{grid-template:"table status""table scores""hand scores"1fr/minmax(0,1fr) 300px;align-items:start;gap:12px}.hr-scores{grid-area:scores;display:flex}}.hr-table{border-radius:var(--radius);background:var(--board);grid-area:table;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);grid-template-areas:".top.""left centre right"".you.";place-items:center;gap:6px;padding:10px 6px;display:grid}@media (width>=640px){.hr-table{gap:10px;padding:14px}}.hr-plate{color:#fff;text-align:center;background:#00000038;border:3px solid #0000;border-radius:12px;flex-direction:column;align-items:center;gap:1px;min-width:0;max-width:100%;padding:6px 8px;line-height:1.2;transition:border-color .2s,background-color .2s;display:flex}.hr-plate.at-top{flex-direction:row;grid-area:top;gap:10px}.hr-plate.at-left{grid-area:left;justify-self:start}.hr-plate.at-right{grid-area:right;justify-self:end}.hr-plate.is-active{border-color:var(--amber);background:#ffc53d2e}.hr-plate-name{font-size:1.05rem}.hr-plate-sub{color:#d2e6dd;white-space:nowrap;font-size:.85rem}.hr-plate-pts{white-space:nowrap;align-items:center;gap:3px;font-size:1rem;font-weight:700;display:inline-flex}.hr-plate-heart{color:#ff8a80;flex-shrink:0;width:15px;height:15px}.hr-plate-total{color:#d2e6dd;font-size:.82rem;font-weight:400}@media (width>=640px){.hr-plate{padding:8px 14px}.hr-plate-name{font-size:1.15rem}}.hr-you-plate{color:#d2e6dd;flex-wrap:wrap;grid-area:you;justify-content:center;align-items:baseline;gap:12px;font-size:.9rem;display:flex}.hr-you-plate strong{color:#fff;font-size:1rem}.hr-centre{width:calc(var(--card-w) * 2.75);height:calc(var(--card-h) * 2.1);grid-area:centre;position:relative}.hr-centre-note{color:#d2e6dd;text-align:center;justify-content:center;align-items:center;padding:0 8px;font-size:.95rem;display:flex;position:absolute;inset:0}.hr-played{position:absolute}.hr-played.at-bottom{bottom:0;left:50%;transform:translate(-50%)}.hr-played.at-top{top:0;left:50%;transform:translate(-50%)}.hr-played.at-left{top:50%;left:0;transform:translateY(-50%)}.hr-played.at-right{top:50%;right:0;transform:translateY(-50%)}.hr-played .card-box{cursor:default}.hr-played.is-winning .card-box{box-shadow:0 0 0 3px var(--amber), 0 6px 14px #00000059}.hr-centre.is-leaving .card-box{transition:transform var(--slide-ms) ease-in, opacity var(--slide-ms) ease-in;opacity:0}.hr-centre.is-leaving.to-bottom .card-box{transform:translateY(120%)scale(.6)}.hr-centre.is-leaving.to-top .card-box{transform:translateY(-120%)scale(.6)}.hr-centre.is-leaving.to-left .card-box{transform:translate(-140%)scale(.6)}.hr-centre.is-leaving.to-right .card-box{transform:translate(140%)scale(.6)}.hr-broken{color:#ffd9d4;background:#0000004d;border-radius:999px;align-items:center;gap:3px;padding:1px 7px;font-size:.72rem;font-weight:700;display:inline-flex;position:absolute;bottom:-2px;right:-2px}.hr-broken-icon{color:#ff8a80;width:11px;height:11px}.hr-status{grid-area:status;padding:12px 16px}.hr-status--turn{background:var(--alert-bg);color:var(--alert-ink)}.hr-turn{font-size:1.4rem}.hr-prompt{flex-direction:column;gap:2px;margin-top:2px;display:flex}.hr-prompt-main{font-size:1.1rem;font-weight:700}.hr-message{font-size:1rem}@media (width>=1000px){.hr-turn{font-size:1.7rem}}.hr-hand{flex-direction:column;grid-area:hand;gap:10px;padding:12px;display:flex}@media (width>=1000px){.hr-hand{padding:16px 18px}}.hr-hand-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.hr-hand-head h2{font-size:1.2rem}.hr-legend{color:var(--ink-soft);align-items:center;gap:6px;font-size:.9rem;display:inline-flex}.hr-legend-swatch{width:14px;height:14px;box-shadow:inset 0 0 0 3px var(--play);border-radius:4px}.hr-fan-wrap{flex-direction:column;gap:2px;display:flex}.hr-fan{justify-content:center;margin:0;padding:18px 0 0;list-style:none;display:flex}.hr-fan li{flex-shrink:0}.hr-fan li+li{margin-left:calc(-1 * var(--overlap))}.hr-card{box-shadow:-2px 0 4px #0000002e}.hr-card .card-corner{flex-direction:column;align-items:center;gap:2px;left:2px}.hr-card.is-legal{box-shadow:0 0 0 3px var(--play), -2px 2px 6px #00000040;transform:translateY(-12px)}@media (hover:hover){.hr-card.is-legal:hover{transform:translateY(-16px)}}.hr-card.is-dim{cursor:default;filter:grayscale(.55)brightness(.86)}.hr-card.is-picked{transform:translateY(-18px)}.hr-card.is-new{box-shadow:0 0 0 2px var(--amber), -2px 0 4px #0000002e}.hr-new-tag{background:var(--amber);color:var(--amber-ink);font-family:var(--font-body);letter-spacing:0;border-radius:5px;padding:1px 4px;font-size:.62rem;position:absolute;top:3px;right:3px}.hr-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.hr-actions:has(.hr-pass){grid-template-columns:1fr 1fr}.hr-actions .hr-pass{order:-1;grid-column:1/-1}@media (width>=640px){.hr-actions:has(.hr-pass){grid-template-columns:1fr 1fr 2fr}.hr-actions .hr-pass{order:0;grid-column:auto}}.hr-actions .token{padding:0 10px;font-size:1.05rem}.hr-keys{color:var(--ink-soft);font-size:.85rem;display:none}@media (width>=1000px){.hr-keys{display:block}}.hr-scores{flex-direction:column;gap:10px;padding:16px 18px}.hr-scores h2{font-size:1.3rem}.hr-scorelist{margin:0;padding:0;list-style:none}.hr-scorelist li{border-top:2px dotted var(--line);justify-content:space-between;align-items:center;gap:10px;padding:10px 0;display:flex}.hr-scorelist li>span:first-child{flex-direction:column;display:flex}.hr-scorelist .muted{font-size:.85rem}.hr-total{font-family:var(--font-display);align-items:center;gap:6px;font-size:1.4rem;font-weight:800;display:flex}.hr-lead{font-family:var(--font-body);background:var(--amber);color:var(--amber-ink);border-radius:999px;padding:1px 7px;font-size:.72rem}.hr-scrim{z-index:40;background:#0a140f8c;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}@media (width>=640px){.hr-scrim{align-items:center;padding:24px}}.hr-dialog{border-radius:20px 20px 0 0;flex-direction:column;gap:14px;width:100%;max-width:560px;max-height:92vh;padding:22px 18px 26px;display:flex;overflow:auto;box-shadow:0 -6px 30px #00000059}@media (width>=640px){.hr-dialog{border-radius:20px;padding:26px 28px}}.hr-dialog h2{font-size:1.7rem}.hr-moon{background:var(--alert-bg);color:var(--alert-ink);border-radius:12px;padding:10px 14px;font-weight:700}.hr-table-sheet{border-collapse:collapse;width:100%;font-size:1.05rem}.hr-table-sheet th,.hr-table-sheet td{text-align:right;border-bottom:2px dotted var(--line);padding:9px 8px}.hr-table-sheet th:first-child,.hr-table-sheet td:first-child{text-align:left}.hr-table-sheet thead th{color:var(--ink-soft);font-size:.85rem}.hr-table-sheet .is-you th,.hr-table-sheet .is-you td{font-weight:700}.hr-sheet{overflow-x:auto}.hr-field{border:0;margin:0;padding:0}.hr-field legend{margin-bottom:8px;font-weight:700}.hr-options{flex-wrap:wrap;gap:8px;display:flex}.hr-option{border:2px solid var(--line);cursor:pointer;border-radius:12px;align-items:center;gap:8px;min-height:48px;padding:0 16px;font-weight:700;display:inline-flex}.hr-option:has(input:checked){border-color:var(--ink);background:var(--paper-2)}.hr-option input{accent-color:#1e5a47;width:22px;height:22px}.hr-welcome{max-width:640px;margin:0 auto}.hr-welcome-card{flex-direction:column;gap:14px;padding:26px;display:flex}.hr-welcome-card h2{font-size:2rem}@media (prefers-reduced-motion:reduce){.hr-card,.hr-plate,.hr-centre.is-leaving .card-box{transition:none}}.ck{--ck-light:#e8d9b5;--ck-dark:#7a5230;--ck-dark-hot:#94673e;--ck-frame:#4a2a12;--ck-red:#c62828;--ck-red-edge:#8e1b1b;--ck-black:#262626;--ck-black-edge:#000;--ck-gold:#ffd54a;--ck-gold-edge:#7a5a00;--ck-hint:#bcd4ff;color:var(--on-felt)}.ck-loading{text-align:center;padding:40px;font-size:1.2rem}.ck-row{flex-wrap:wrap;gap:14px;display:flex}.ck-toolbar{justify-content:space-between;align-items:center;gap:10px;margin-bottom:12px;display:flex}.ck-score{font-family:var(--font-display);flex-wrap:wrap;align-items:center;gap:4px 10px;font-size:1.15rem;font-weight:700;display:flex}.ck-score>span{align-items:center;gap:6px;display:inline-flex}.ck-score strong{font-size:1.45rem;font-weight:800}@media (width>=640px){.ck-score{font-size:1.3rem}.ck-score strong{font-size:1.7rem}}.ck-chip{cursor:pointer;background:var(--wood-dark);color:#fff6e3;white-space:nowrap;border:0;border-radius:12px;flex-shrink:0;min-height:44px;padding:0 14px;font-weight:700}.ck-tray{padding:8px 2px}@media (width>=400px){.ck-tray{padding:8px}}@media (width>=900px){.ck-tray{padding:14px}}.ck-layout{grid-template-columns:minmax(0,1fr);grid-template-areas:"status""ben""board""you""actions""keys";gap:10px;display:grid}@media (width>=900px){.ck-layout{grid-template:"board status""board ben""board you""board actions""board keys""board."1fr/minmax(0,min(640px,100vh - 230px)) minmax(280px,1fr);align-items:start;gap:14px}}.ck-status{grid-area:status;min-height:96px;margin:0 6px;padding:12px 16px}@media (width>=400px){.ck-status{margin:0}}.ck-turn{font-size:1.4rem}.ck-message{margin-top:4px;font-size:1.05rem}@media (width>=900px){.ck-turn{font-size:1.7rem}.ck-message{font-size:1.1rem}}.ck-board-wrap{grid-area:board;min-width:0}.ck-board{grid-template-columns:repeat(var(--ck-size), minmax(0, 1fr));aspect-ratio:1;background:var(--ck-light);width:100%;box-shadow:0 0 0 0 var(--ck-frame), 0 6px 14px #00000059;border-radius:6px;margin:0 auto;display:grid;overflow:hidden}@media (width>=400px){.ck-board{border:6px solid var(--ck-frame);border-radius:10px}}.ck-sq{aspect-ratio:1;min-width:0;position:relative}.ck-sq--light{background:var(--ck-light)}.ck-sq--dark{background:var(--ck-dark);color:inherit;font:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent;border:0;place-items:center;margin:0;padding:0;display:grid}.ck-sq--dark:focus-visible{outline-offset:-4px;z-index:2;border-radius:4px;outline:3px solid #fff}.ck-piece{width:84%;height:84%;transition:transform .15s,opacity .2s;overflow:visible}.ck-piece-edge{fill:var(--ck-edge)}.ck-piece-top{fill:var(--ck-top);stroke:var(--ck-edge);stroke-width:2.5px}.ck-piece--red{--ck-top:var(--ck-red);--ck-edge:var(--ck-red-edge)}.ck-piece--black{--ck-top:var(--ck-black);--ck-edge:var(--ck-black-edge)}.ck-groove{fill:none;stroke:#fff6;stroke-width:3.5px}.ck-ridge{fill:none;stroke:#9a9a9a;stroke-width:5px;stroke-dasharray:5 4.2}.ck-boss{fill:#4d4d4d;stroke:#8a8a8a;stroke-width:2px}.ck-crown path,.ck-crown rect{fill:var(--ck-gold);stroke:var(--ck-gold-edge);stroke-width:3px;stroke-linejoin:round}.ck-piece.is-ghost{opacity:.35}.ck-sq.is-last{box-shadow:inset 0 0 0 3px #fff6e38c}.ck-sq.is-movable:before{content:"";pointer-events:none;border-radius:50%;position:absolute;inset:3px;box-shadow:0 0 0 3px #ffd54abf}.ck-sq.is-must:before{content:"";box-shadow:0 0 0 4px var(--ck-gold);pointer-events:none;border-radius:50%;animation:1.6s ease-in-out infinite ck-pulse;position:absolute;inset:2px}@keyframes ck-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.45;transform:scale(.92)}}.ck-sq.is-selected{background:var(--ck-dark-hot)}.ck-sq.is-selected .ck-piece{filter:drop-shadow(0 4px 3px #00000073);transform:translateY(-3px)scale(1.04)}.ck-sq.is-selected:before{content:"";pointer-events:none;border-radius:50%;position:absolute;inset:2px;box-shadow:0 0 0 4px #fff}.ck-sq.is-target:after{content:"";box-shadow:0 0 0 4px var(--ck-gold);pointer-events:none;background:#ffd54a73;border-radius:50%;position:absolute;inset:26%}.ck-sq.is-hint{box-shadow:inset 0 0 0 4px var(--ck-hint)}.ck-sq.is-hint:after{content:"";border:3px dashed var(--ck-hint);pointer-events:none;border-radius:6px;position:absolute;inset:6px}.ck-sq.is-active{background:var(--ck-dark-hot)}.ck-sq.is-active .ck-piece{animation:.3s ease-out ck-land}@keyframes ck-land{0%{transform:translateY(-6px)scale(1.08)}to{transform:none}}.ck-taken{min-height:40px;color:var(--on-felt);background:#00000038;border-radius:999px;align-items:center;gap:10px;margin:0 6px;padding:4px 14px;display:flex}@media (width>=400px){.ck-taken{margin:0}}.ck-taken--ben{grid-area:ben}.ck-taken--you{grid-area:you}.ck-taken-name{white-space:nowrap;font-weight:700}.ck-taken-pieces{flex-wrap:wrap;flex:auto;gap:3px;display:flex}.ck-taken-count{font-family:var(--font-display);font-variant-numeric:tabular-nums;font-size:1.4rem;font-weight:800}.ck-mini{border-radius:50%;flex-shrink:0;width:16px;height:16px;display:inline-block;box-shadow:inset 0 0 0 2px #00000059}.ck-mini--red{background:radial-gradient(circle,#c62828 0 30%,#ffffff73 30% 42%,#c62828 42%)}.ck-mini--black{background:radial-gradient(circle,#555 0 28%,#262626 28% 52%,#9a9a9a 52% 64%,#262626 64%);box-shadow:inset 0 0 0 1px #000,0 0 0 1px #fff6}.ck-actions{grid-area:actions;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:0 6px;display:grid}@media (width>=400px){.ck-actions{margin:0}}.ck-actions .token{gap:6px;padding:0 8px;font-size:1.05rem}.ck-keys{color:var(--on-felt-soft);grid-area:keys;font-size:.9rem;display:none}@media (width>=1000px){.ck-keys{display:block}}.ck-scrim{z-index:40;background:#0a140f8c;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}@media (width>=640px){.ck-scrim{align-items:center;padding:24px}}.ck-dialog{border-radius:20px 20px 0 0;flex-direction:column;gap:14px;width:100%;max-width:540px;max-height:92vh;padding:22px 18px 26px;display:flex;overflow:auto;box-shadow:0 -6px 30px #00000059}@media (width>=640px){.ck-dialog{border-radius:20px;padding:26px 28px}}.ck-dialog h2{font-size:1.7rem}.ck-final{font-family:var(--font-display);gap:24px;font-size:1.2rem;display:flex}.ck-final strong{margin-left:6px;font-size:2rem}.ck-field{border:0;margin:0;padding:0}.ck-field legend{margin-bottom:8px;font-weight:700}.ck-options{flex-wrap:wrap;gap:8px;display:flex}.ck-option{border:2px solid var(--line);cursor:pointer;border-radius:12px;align-items:center;gap:8px;min-height:48px;padding:0 16px;font-weight:700;display:inline-flex}.ck-option:has(input:checked){border-color:var(--ink);background:var(--paper-2)}.ck-option input{accent-color:#1e5a47;width:22px;height:22px}.ck-help{margin-top:8px;font-size:.95rem}.ck-welcome{max-width:640px;margin:0 auto}.ck-welcome-card{flex-direction:column;gap:14px;padding:26px;display:flex}.ck-welcome-card h2{font-size:2rem}@media (prefers-reduced-motion:reduce){.ck-sq.is-must:before{box-shadow:0 0 0 4px var(--ck-gold), inset 0 0 0 3px var(--ck-gold);animation:none}.ck-sq.is-active .ck-piece{animation:none}.ck-piece{transition:none}}.sd2{--sd2-reserve:230px;color:var(--on-felt);flex-direction:column;gap:10px;display:flex}@media (hover:none) and (pointer:coarse){.sd2{--sd2-reserve:250px}}.sd2-loading{text-align:center;min-height:60vh;padding:40px;font-size:1.2rem}.sd2-row{flex-wrap:wrap;gap:14px;display:flex}.sd2-bar{justify-content:space-between;align-items:stretch;gap:10px;display:flex}.sd2-scores{align-items:center;gap:18px;padding:6px 16px;display:flex}.sd2-score{white-space:nowrap;align-items:baseline;gap:6px;display:flex}.sd2-score-label{color:var(--ink-soft);font-size:.95rem;font-weight:700}.sd2-score strong{font-family:var(--font-display);font-size:1.6rem;font-weight:800;line-height:1}.sd2-bar-buttons{gap:10px;display:flex}.sd2-pause{min-width:128px;padding:0 16px}.sd2-settings-btn{padding:0 14px}@media (width<=420px){.sd2-scores{gap:12px;padding:4px 12px}.sd2-score strong{font-size:1.35rem}.sd2-pause{min-width:0;padding:0 12px}.sd2-pause-word,.sd2-settings-word{display:none}}.sd2-tray{flex-direction:column;align-items:center;gap:10px;display:flex}@media (width<=420px){.sd2-tray{margin-inline:-8px;padding:6px}}.sd2-board{aspect-ratio:4/5;width:min(100%, 520px, max(220px, calc((100dvh - var(--sd2-reserve)) * .8)));touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;box-sizing:content-box;background:#0d1330;border:4px solid #2a3566;border-radius:10px;position:relative;overflow:hidden;box-shadow:0 0 0 2px #070b1d}.sd2-canvas{width:100%;height:100%;display:block}.sd2-overlay{cursor:pointer;font:inherit;-webkit-tap-highlight-color:transparent;background:#080c2059;border:0;justify-content:center;align-items:center;padding:12px;display:flex;position:absolute;inset:0}.sd2-overlay-card{text-align:center;flex-direction:column;align-items:center;gap:4px;max-width:92%;padding:12px 20px;display:flex;box-shadow:0 8px 24px #00000059}.sd2-overlay-title{font-family:var(--font-display);font-size:1.6rem;font-weight:800}.sd2-overlay-note{color:var(--ink-soft);font-size:1.05rem;line-height:1.3}.sd2-overlay:focus-visible .sd2-overlay-card{outline:4px solid var(--amber);outline-offset:3px}.sd2-status{color:var(--on-felt);flex-wrap:wrap;justify-content:center;align-items:center;gap:6px 22px;font-size:1.05rem;display:flex}.sd2-status strong{font-family:var(--font-display);font-size:1.2rem;font-weight:800}.sd2-lives{align-items:center;gap:5px;display:inline-flex}.sd2-lives-word{margin-right:3px}.sd2-life{color:#ffc53d}.sd2-pad{grid-template-columns:1fr 1fr 1fr;gap:10px;width:100%;max-width:440px;display:none}@media (hover:none) and (pointer:coarse){.sd2-pad{display:grid}}.sd2-btn{cursor:pointer;min-height:68px;font:inherit;background:var(--paper);color:var(--ink);box-shadow:0 4px 0 var(--line);touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent;border:0;border-radius:18px;justify-content:center;align-items:center;gap:4px;padding:0 6px;font-size:1.05rem;font-weight:800;display:flex}.sd2-btn:active{box-shadow:0 1px 0 var(--line);transform:translateY(3px)}.sd2-btn-fire,.sd2-btn-mid{background:var(--amber);color:var(--amber-ink);box-shadow:0 4px 0 var(--amber-deep)}.sd2-btn-fire:active,.sd2-btn-mid:active{box-shadow:0 1px 0 var(--amber-deep)}@media (width<=340px){.sd2-btn-word{display:none}}.sd2-info{color:var(--on-felt-soft);text-align:center;padding:0 6px;font-size:.95rem}.sd2-kbd-only{display:none}@media (hover:hover) and (pointer:fine){.sd2-kbd-only{display:inline}p.sd2-kbd-only{display:block}.sd2-touch-only{display:none}}.sd2-scrim{z-index:40;background:#080c208c;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}@media (width>=640px){.sd2-scrim{align-items:center;padding:24px}}.sd2-dialog{border-radius:20px 20px 0 0;flex-direction:column;gap:14px;width:100%;max-width:520px;max-height:92vh;padding:22px 18px 26px;display:flex;overflow:auto;box-shadow:0 -6px 30px #00000059}@media (width>=640px){.sd2-dialog{border-radius:20px;padding:26px 28px}}.sd2-dialog h2{font-size:1.7rem}.sd2-final{font-size:1.2rem}.sd2-final strong{font-family:var(--font-display);margin-left:6px;font-size:2.2rem}.sd2-link{cursor:pointer;min-height:44px;color:var(--ink);text-underline-offset:3px;background:0 0;border:0;align-self:flex-start;padding:0 4px;font-size:1.05rem;font-weight:700;text-decoration:underline}.sd2-field{border:0;margin:0;padding:0}.sd2-field legend{margin-bottom:8px;font-weight:700}.sd2-options{flex-direction:column;gap:8px;display:flex}.sd2-option{border:2px solid var(--line);cursor:pointer;border-radius:12px;align-items:center;gap:12px;min-height:52px;padding:6px 16px;font-weight:700;display:flex}.sd2-option:has(input:checked){border-color:var(--ink);background:var(--paper-2)}.sd2-option-note{color:var(--ink-soft);font-size:.9rem;font-weight:400;display:block}.sd2-option input{accent-color:#2a3566;flex-shrink:0;width:22px;height:22px}@media (prefers-reduced-motion:reduce){.sd2-btn:active{transform:none}}.bb{--bb-reserve:230px;color:var(--on-felt);flex-direction:column;gap:10px;display:flex}@media (hover:none) and (pointer:coarse){.bb{--bb-reserve:290px}}.bb-loading{text-align:center;min-height:60vh;padding:40px;font-size:1.2rem}.bb-row{flex-wrap:wrap;gap:14px;display:flex}.bb-bar{justify-content:space-between;align-items:stretch;gap:8px;display:flex}.bb-stats{align-items:center;gap:16px;margin:0;padding:6px 14px;display:flex}.bb-stat{flex-direction:column;align-items:flex-start;min-width:0;display:flex}.bb-stat dt{color:var(--ink-soft);font-size:.85rem;font-weight:700;line-height:1.1}.bb-stat dd{font-family:var(--font-display);margin:0;font-size:1.45rem;font-weight:800;line-height:1.1}.bb-lives{align-items:center;gap:4px;height:1.1em;display:inline-flex}.bb-life{background:var(--ink);border-radius:50%;width:12px;height:12px}.bb-bar-buttons{gap:8px;display:flex}.bb-pause{min-width:124px;padding:0 16px}.bb-settings-btn{padding:0 14px}@media (width<=480px){.bb-stats{flex:1;justify-content:space-between;gap:10px;padding:4px 10px}.bb-stat dd{font-size:1.2rem}.bb-stat dt{font-size:.78rem}.bb-life{width:10px;height:10px}.bb-pause{min-width:0;padding:0 12px}.bb-pause-word,.bb-settings-word{display:none}.bb-settings-btn{padding:0 12px}}@media (hover:none) and (pointer:coarse) and (width<=520px){.bb-pause{display:none}}.bb-tray{flex-direction:column;align-items:center;gap:10px;display:flex}@media (width<=420px){.bb-tray{margin-inline:-8px;padding:6px}}.bb-board{aspect-ratio:3/4;width:min(100%, 540px, max(220px, calc((100dvh - var(--bb-reserve)) * .75)));touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;box-sizing:content-box;cursor:default;background:#1e2a44;border:4px solid #c9d4e8;border-radius:8px;position:relative;overflow:hidden;box-shadow:0 0 0 2px #0e1424}.bb-canvas{width:100%;height:100%;display:block}.bb-hint{pointer-events:none;justify-content:center;padding:0 12px;display:flex;position:absolute;top:52%;left:0;right:0}.bb-hint-card{text-align:center;flex-direction:column;align-items:center;gap:2px;max-width:92%;padding:10px 18px;display:flex;box-shadow:0 8px 24px #00000059}.bb-hint-title{font-family:var(--font-display);font-size:1.45rem;font-weight:800}.bb-hint-note{color:var(--ink-soft);font-size:1rem;line-height:1.3}.bb-hint-level{font-size:1rem;font-weight:700}.bb-overlay{cursor:pointer;font:inherit;-webkit-tap-highlight-color:transparent;background:#0a0e1e73;border:0;justify-content:center;align-items:center;padding:12px;display:flex;position:absolute;inset:0}.bb-overlay-card{text-align:center;flex-direction:column;align-items:center;gap:4px;max-width:92%;padding:12px 20px;display:flex;box-shadow:0 8px 24px #00000059}.bb-overlay-title{font-family:var(--font-display);font-size:1.6rem;font-weight:800}.bb-overlay-note{color:var(--ink-soft);font-size:1.05rem;line-height:1.3}.bb-overlay:focus-visible .bb-overlay-card{outline:4px solid var(--amber);outline-offset:3px}.bb-controls{grid-template-columns:1fr 1.1fr 1fr;gap:8px;width:min(100%,540px);display:none}@media (hover:none) and (pointer:coarse){.bb-controls{display:grid}}.bb-ctl{cursor:pointer;min-height:64px;font:inherit;background:var(--paper);color:var(--ink);box-shadow:0 4px 0 var(--line);touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent;border:0;border-radius:16px;justify-content:center;align-items:center;gap:6px;font-size:1.15rem;font-weight:800;display:flex}.bb-ctl:active{box-shadow:0 1px 0 var(--line);transform:translateY(3px)}.bb-ctl-mid{background:var(--paper-2)}.bb-ctl-go{background:var(--amber);color:var(--amber-ink);box-shadow:0 4px 0 var(--amber-deep)}.bb-info{color:var(--on-felt-soft);text-align:center;padding:0 6px;font-size:.95rem}.bb-kbd-only{display:none}@media (hover:hover) and (pointer:fine){.bb-kbd-only{display:inline}.bb-touch-only{display:none}}.bb-scrim{z-index:40;background:#0a0e1e8c;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}@media (width>=640px){.bb-scrim{align-items:center;padding:24px}}.bb-dialog{border-radius:20px 20px 0 0;flex-direction:column;gap:14px;width:100%;max-width:520px;max-height:92vh;padding:22px 18px 26px;display:flex;overflow:auto;box-shadow:0 -6px 30px #00000059}@media (width>=640px){.bb-dialog{border-radius:20px;padding:26px 28px}}.bb-dialog h2{font-size:1.7rem}.bb-final{font-size:1.2rem}.bb-final strong{font-family:var(--font-display);margin-left:6px;font-size:2.2rem}.bb-link{cursor:pointer;min-height:44px;color:var(--ink);text-underline-offset:3px;background:0 0;border:0;align-self:flex-start;padding:0 4px;font-size:1.05rem;font-weight:700;text-decoration:underline}.bb-field{border:0;margin:0;padding:0}.bb-field legend{margin-bottom:8px;font-weight:700}.bb-options{flex-direction:column;gap:8px;display:flex}.bb-option{border:2px solid var(--line);cursor:pointer;border-radius:12px;align-items:center;gap:12px;min-height:52px;padding:6px 16px;font-weight:700;display:flex}.bb-option:has(input:checked){border-color:var(--ink);background:var(--paper-2)}.bb-option-note{color:var(--ink-soft);font-size:.9rem;font-weight:400;display:block}.bb-option input{accent-color:#1e2a44;flex-shrink:0;width:22px;height:22px}@media (prefers-reduced-motion:reduce){.bb-ctl:active{transform:none}}.bd{--bd-reserve:210px;--bd-side:120px;--bd-indigo:#1b1f3a;--bd-label:#c9d4e8;color:var(--on-felt);flex-direction:column;gap:10px;display:flex}@media (hover:none) and (pointer:coarse){.bd{--bd-reserve:300px}}@media (width<=520px){.bd{--bd-side:82px}}.bd-loading{text-align:center;min-height:60vh;padding:40px;font-size:1.2rem}.bd-row{flex-wrap:wrap;gap:14px;display:flex}.bd-welcome{justify-content:center;padding:24px 12px;display:flex}.bd-welcome-card{flex-direction:column;gap:14px;max-width:520px;padding:22px 22px 26px;display:flex}.bd-welcome-card h2{font-size:1.7rem}.bd-bar{justify-content:space-between;align-items:stretch;gap:10px;display:flex}.bd-scores{align-items:center;gap:18px;padding:6px 16px;display:flex}.bd-score{white-space:nowrap;align-items:baseline;gap:6px;display:flex}.bd-score-label{color:var(--ink-soft);font-size:.95rem;font-weight:700}.bd-score strong{font-family:var(--font-display);font-size:1.6rem;font-weight:800;line-height:1}.bd-bar-buttons{gap:10px;display:flex}.bd-pause{min-width:128px;padding:0 16px}.bd-settings-btn{padding:0 14px}@media (width<=420px){.bd-scores{gap:12px;padding:4px 10px}.bd-score strong{font-size:1.3rem}.bd-score-label{font-size:.85rem}.bd-pause{min-width:0;padding:0 14px}.bd-pause-word,.bd-settings-word{display:none}}.bd-tray{flex-direction:column;align-items:center;gap:10px;display:flex}@media (width<=420px){.bd-tray{margin-inline:-8px;padding:6px}}.bd-play{justify-content:center;align-items:flex-start;gap:10px;width:100%;display:flex}.bd-well{width:min(calc(100% - var(--bd-side) - 18px), max(150px, calc((100dvh - var(--bd-reserve)) / 2)), 340px);aspect-ratio:1/2;touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;box-sizing:content-box;background:#121530;border:3px solid #4a5285;border-radius:6px;flex:none;position:relative;overflow:hidden;box-shadow:0 0 0 2px #0b0d20}.bd-canvas{width:100%;height:100%;display:block}.bd-side{flex:0 0 var(--bd-side);width:var(--bd-side);flex-direction:column;gap:8px;display:flex}.bd-box,.bd-stat{background:var(--bd-indigo);color:#fff;border:2px solid #4a5285;border-radius:10px;flex-direction:column;align-items:stretch;gap:4px;padding:6px 8px 8px;display:flex}.bd-label{font-family:var(--font-display);letter-spacing:.06em;text-transform:uppercase;color:var(--bd-label);text-align:center;font-size:.85rem;font-weight:800}.bd-preview{width:100%;display:block}.bd-stat{align-items:center}.bd-stat strong{font-family:var(--font-display);font-size:1.5rem;font-weight:800;line-height:1.1}.bd-hold{font:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation}.bd-hold:focus-visible{outline:4px solid var(--amber);outline-offset:2px}.bd-hold--used{opacity:.75}@media (width<=520px){.bd-box,.bd-stat{padding:4px 5px 6px}.bd-label{font-size:.75rem}.bd-stat strong{font-size:1.3rem}}.bd-overlay{cursor:pointer;font:inherit;-webkit-tap-highlight-color:transparent;background:#0a0c1e59;border:0;justify-content:center;align-items:flex-start;padding:30% 10px 10px;display:flex;position:absolute;inset:0}.bd-overlay-card{text-align:center;flex-direction:column;align-items:center;gap:4px;max-width:100%;padding:12px 16px;display:flex;box-shadow:0 8px 24px #00000059}.bd-overlay-title{font-family:var(--font-display);font-size:1.45rem;font-weight:800;line-height:1.1}.bd-overlay-note{color:var(--ink-soft);font-size:1rem;line-height:1.3}.bd-overlay:focus-visible .bd-overlay-card{outline:4px solid var(--amber);outline-offset:3px}.bd-pad{grid-template-columns:repeat(5,minmax(60px,1fr));gap:6px;width:100%;max-width:520px;display:none}@media (hover:none) and (pointer:coarse){.bd-pad{display:grid}}.bd-btn{cursor:pointer;background:var(--paper);min-height:64px;color:var(--ink);box-shadow:0 4px 0 var(--line);font-family:var(--font-display);touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent;border:0;border-radius:16px;flex-direction:column;justify-content:center;align-items:center;gap:0;padding:4px 0;font-size:.9rem;font-weight:800;line-height:1.1;display:flex}.bd-btn:active{box-shadow:0 1px 0 var(--line);transform:translateY(3px)}.bd-btn--turn{color:#1b1f3a;background:#e3e8ff;box-shadow:0 4px #8f97c7}.bd-btn--turn:active{box-shadow:0 1px #8f97c7}.bd-btn--drop{background:var(--amber);color:var(--amber-ink);box-shadow:0 4px 0 var(--amber-deep)}.bd-btn--drop:active{box-shadow:0 1px 0 var(--amber-deep)}.bd-info{color:var(--on-felt-soft);text-align:center;padding:0 6px;font-size:.95rem}.bd-kbd-only{display:none}@media (hover:hover) and (pointer:fine){.bd-kbd-only{display:inline}.bd-touch-only{display:none}}@media (hover:none) and (pointer:coarse) and (width<=520px){.bd-info{display:none}}.bd-scrim{z-index:40;background:#0a0c1e8c;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}@media (width>=640px){.bd-scrim{align-items:center;padding:24px}}.bd-dialog{border-radius:20px 20px 0 0;flex-direction:column;gap:14px;width:100%;max-width:520px;max-height:92dvh;padding:22px 18px 26px;display:flex;overflow:auto;box-shadow:0 -6px 30px #00000059}@media (width>=640px){.bd-dialog{border-radius:20px;padding:26px 28px}}.bd-dialog h2{font-size:1.7rem}.bd-final{font-size:1.2rem}.bd-final strong{font-family:var(--font-display);margin-left:6px;font-size:2.2rem}.bd-link{cursor:pointer;min-height:44px;color:var(--ink);text-underline-offset:3px;background:0 0;border:0;align-self:flex-start;padding:0 4px;font-size:1.05rem;font-weight:700;text-decoration:underline}.bd-field{border:0;margin:0;padding:0}.bd-field legend{margin-bottom:8px;font-weight:700}.bd-options{flex-wrap:wrap;gap:8px;display:flex}.bd-option{border:2px solid var(--line);cursor:pointer;border-radius:12px;flex:140px;align-items:center;gap:12px;min-height:52px;padding:6px 14px;font-weight:700;display:flex}.bd-option:has(input:checked){border-color:var(--ink);background:var(--paper-2)}.bd-option-note{color:var(--ink-soft);font-size:.9rem;font-weight:400;display:block}.bd-option input{accent-color:#3949ab;flex-shrink:0;width:22px;height:22px}@media (prefers-reduced-motion:reduce){.bd-btn:active{transform:none}}.cd{--cd-cell:#fffdf6;--cd-thin:#cfc6b2;--cd-cage:#2b2b2b;--cd-label:#2b2b2b;--cd-entry:#2056d8;--cd-note:#4a5568;--cd-peer:#f6eedb;--cd-cage-bg:#fbf0cf;--cd-same:#dfe7f8;--cd-sel:#ffe08a;--cd-bad:#b42318;--cd-bad-bg:#fde4df;--cd-hint:#2563eb;--cd-wave-bg:#ffe7a0;--cd-half:1px;color:var(--on-felt)}@media (width>=640px){.cd{--cd-half:1.5px}}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .cd{--cd-cell:#221d17;--cd-thin:#4a4032;--cd-cage:#efe3c8;--cd-label:#f3e9d6;--cd-entry:#8ab4ff;--cd-note:#c9b89c;--cd-peer:#2c251d;--cd-cage-bg:#3a2f1a;--cd-same:#2b3550;--cd-sel:#6b5414;--cd-bad:#ff9b8a;--cd-bad-bg:#4a2222;--cd-hint:#8ab4ff;--cd-wave-bg:#5c4a12}}:root[data-theme=dark] .cd{--cd-cell:#221d17;--cd-thin:#4a4032;--cd-cage:#efe3c8;--cd-label:#f3e9d6;--cd-entry:#8ab4ff;--cd-note:#c9b89c;--cd-peer:#2c251d;--cd-cage-bg:#3a2f1a;--cd-same:#2b3550;--cd-sel:#6b5414;--cd-bad:#ff9b8a;--cd-bad-bg:#4a2222;--cd-hint:#8ab4ff;--cd-wave-bg:#5c4a12}.cd-loading{text-align:center;min-height:60vh;padding:40px;font-size:1.2rem}.cd-row{flex-wrap:wrap;gap:14px;display:flex}.cd-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 12px;margin-bottom:12px;display:flex}.cd-title{font-size:1.15rem}@media (width>=640px){.cd-title{font-size:1.35rem}}.cd-toolbar-buttons{gap:8px;display:flex}.cd-chip{cursor:pointer;background:var(--wood-dark);color:#fff6e3;white-space:nowrap;border:0;border-radius:12px;min-height:44px;padding:0 14px;font-weight:700}.cd-tray{padding:4px}@media (width<=420px){.cd-tray{margin-inline:-8px}}@media (width>=640px){.cd-tray{padding:12px}}.cd-layout{grid-template-columns:minmax(0,1fr);grid-template-areas:"status""board""controls";gap:6px;display:grid}@media (width>=640px){.cd-layout{gap:12px;max-width:580px;margin:0 auto}}@media (width>=1000px){.cd-layout{grid-template:"board status""board controls"1fr/minmax(0,1fr) 340px;align-items:start;max-width:980px}}.cd-status{grid-area:status;min-height:2.9em;padding:10px 14px;font-size:1rem}@media (width>=1000px){.cd-status{padding:14px 18px;font-size:1.1rem}}.cd-board-wrap{grid-area:board;width:100%;margin:0 auto;container-type:inline-size}.cd-size-4 .cd-board-wrap{max-width:480px}.cd-size-5 .cd-board-wrap{max-width:540px}.cd-board{grid-template-rows:repeat(var(--cd-n), minmax(0, 1fr));aspect-ratio:1;border:3px solid var(--cd-cage);background:var(--cd-cell);-webkit-user-select:none;user-select:none;border-radius:6px;width:100%;display:grid;overflow:hidden}@media (width>=640px){.cd-board{border-width:4px}}.cd-grid-row{grid-template-columns:repeat(var(--cd-n), minmax(0, 1fr));display:grid}.cd-cell{cursor:pointer;background:var(--cd-cell);border-right:1px solid var(--cd-thin);border-bottom:1px solid var(--cd-thin);-webkit-tap-highlight-color:transparent;touch-action:manipulation;justify-content:center;align-items:center;min-width:0;min-height:0;display:flex;position:relative}.cd-cell:last-child{border-right:0}.cd-grid-row:last-child .cd-cell{border-bottom:0}.cd-cell.e-r{border-right-color:var(--cd-cage)}.cd-cell.e-b{border-bottom-color:var(--cd-cage)}.cd-cell:after{content:"";pointer-events:none;border:0 solid var(--cd-cage);position:absolute;inset:0}.cd-cell.e-t:after{border-top-width:var(--cd-half)}.cd-cell.e-r:after{border-right-width:var(--cd-half)}.cd-cell.e-b:after{border-bottom-width:var(--cd-half)}.cd-cell.e-l:after{border-left-width:var(--cd-half)}.cd-cell:focus-visible{outline:3px solid var(--cd-hint);outline-offset:-4px;z-index:1}.cd-cell.is-peer{background:var(--cd-peer)}.cd-cell.is-cage{background:var(--cd-cage-bg)}.cd-cell.is-same{background:var(--cd-same)}.cd-cell.is-conflict{background:var(--cd-bad-bg)}.cd-cell.is-selected{background:var(--cd-sel)}.cd-cell.is-conflict:before{content:"";border:2px dashed var(--cd-bad);pointer-events:none;border-radius:4px;position:absolute;inset:4px}.cd-cell.is-hint{box-shadow:inset 0 0 0 4px var(--cd-hint)}.cd-label{z-index:1;background:inherit;font-family:var(--font-body);white-space:nowrap;font-size:12px;font-weight:700;line-height:1;font-size:clamp(12px, calc(17cqi / var(--cd-n)), 19px);color:var(--cd-label);border-radius:3px;padding:1px 2px;position:absolute;top:2px;left:2px}.cd-digit{font-family:var(--font-body);font-size:1.7rem;font-weight:700;line-height:1;font-size:calc(46cqi / var(--cd-n));margin-top:calc(13cqi / var(--cd-n));color:var(--cd-entry)}.cd-cell.is-wrong .cd-digit{color:var(--cd-bad);text-underline-offset:3px;text-decoration:underline 3px}.cd-notes{font-size:11px;font-size:clamp(11px, calc(14cqi / var(--cd-n)), 18px);color:var(--cd-note);grid-template-columns:repeat(3,1fr);grid-auto-rows:1fr;font-weight:700;line-height:1;display:grid;position:absolute;inset:36% 3px 3px}.cd-size-4 .cd-notes{grid-template-columns:repeat(2,1fr)}.cd-notes span{justify-content:center;align-items:center;display:flex}.cd-notes .is-match{color:var(--cd-hint);text-decoration:underline}.cd-board.is-solved .cd-cell{animation:cd-wave .9s ease-in-out var(--cd-wave,0s) backwards}@keyframes cd-wave{0%,to{background:var(--cd-cell)}45%{background:var(--cd-wave-bg)}}.cd-controls{flex-direction:column;grid-area:controls;gap:10px;padding:10px;display:flex}@media (width>=1000px){.cd-controls{gap:14px;padding:16px}}.cd-pad{grid-template-columns:repeat(calc(var(--cd-n) + 1), minmax(0, 1fr));gap:6px;display:grid}@media (width>=1000px){.cd-pad{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.cd-size-4 .cd-pad{grid-template-columns:repeat(4,minmax(0,1fr))}.cd-key--erase{grid-column:1/-1}}.cd-key{cursor:pointer;background:var(--cd-cell);min-height:62px;color:var(--cd-label);border:2px solid var(--cd-thin);box-shadow:0 3px 0 var(--cd-thin);border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:2px;padding:4px 0;transition:transform 80ms,box-shadow 80ms;display:flex;position:relative}@media (width>=1000px){.cd-key{min-height:68px}}.cd-key:active{box-shadow:0 1px 0 var(--cd-thin);transform:translateY(2px)}.cd-key-digit{font-family:var(--font-display);font-size:1.9rem;font-weight:800;line-height:1}.cd-key-left{color:var(--ink-soft);font-size:.78rem;font-weight:700;line-height:1}.cd-key.is-done{opacity:.45}.cd-key--erase{color:var(--ink)}.cd-key-word{font-size:.85rem;font-weight:700}@media (width>=1000px){.cd-key--erase{flex-direction:row;gap:8px;min-height:52px}.cd-key-word{font-size:1rem}}.cd-pad.is-notes .cd-key:not(.cd-key--erase){border-color:var(--amber-deep);border-style:dashed}.cd-pad.is-notes .cd-key-digit{font-size:1.3rem;font-family:var(--font-body);color:var(--cd-note);font-weight:700}.cd-actions{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.cd-actions .token{white-space:nowrap;gap:6px;min-height:52px;padding:0 6px;font-size:1rem}.cd-actions .cd-notes-on{background:var(--amber);color:var(--amber-ink)}.cd-rules{color:var(--ink-soft);font-size:.9rem}.cd-keys{color:var(--ink-soft);font-size:.85rem;display:none}@media (width>=1000px){.cd-keys{display:block}}.cd-scrim{z-index:40;background:#0a140f8c;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}@media (width>=640px){.cd-scrim{align-items:center;padding:24px}}.cd-dialog{border-radius:20px 20px 0 0;flex-direction:column;gap:14px;width:100%;max-width:520px;max-height:92vh;padding:22px 18px 26px;display:flex;overflow:auto;box-shadow:0 -6px 30px #00000059}@media (width>=640px){.cd-dialog{border-radius:20px;padding:26px 28px}}.cd-dialog h2{font-size:1.7rem}.cd-field{border:0;margin:0;padding:0}.cd-field legend{margin-bottom:8px;font-weight:700}.cd-options{flex-wrap:wrap;gap:8px;display:flex}.cd-options--stack{flex-direction:column}.cd-option{border:2px solid var(--line);cursor:pointer;border-radius:12px;align-items:center;gap:10px;min-height:52px;padding:6px 16px;font-weight:700;display:flex}.cd-option:has(input:checked){border-color:var(--ink);background:var(--paper-2)}.cd-option-note{color:var(--ink-soft);font-size:.9rem;font-weight:400;display:block}.cd-option input,.cd-check input{accent-color:#1e5a47;flex-shrink:0;width:22px;height:22px}.cd-check{cursor:pointer;align-items:center;gap:12px;min-height:52px;font-weight:700;display:flex}.cd-streak{font-size:1.1rem}.cd-celebrate{justify-content:center;gap:8px;display:flex}.cd-celebrate span{background:var(--amber);width:34px;height:34px;color:var(--amber-ink);font-family:var(--font-display);animation:cd-hop .7s ease-out var(--cd-wave,0s) both;border-radius:8px;justify-content:center;align-items:center;font-size:1.2rem;font-weight:800;display:inline-flex}@keyframes cd-hop{0%{opacity:0;transform:translateY(10px)}60%{opacity:1;transform:translateY(-6px)}to{opacity:1;transform:none}}.cd-welcome{max-width:640px;margin:0 auto}.cd-welcome-card{flex-direction:column;gap:14px;padding:26px;display:flex}.cd-welcome-card h2{font-size:2rem}@media (prefers-reduced-motion:reduce){.cd-board.is-solved .cd-cell,.cd-celebrate span{animation:none}.cd-key{transition:none}}@media (width<=400px){.cd-actions .token svg{display:none}}.ng{--ng-cell-bg:#fff;--ng-thin:#c5cfdb;--ng-frame:#1f2a44;--ng-ink:#1f2a44;--ng-cross:#8a96a8;--ng-clue-bg:#eef3f8;--ng-clue-ink:#1f2a44;--ng-clue-done:#9aa6b6;--ng-cur:#fff1c2;--ng-sel:#e0a400;--ng-pending:#5b7bb0;--ng-bad:#b42318;--ng-hint:#2563eb;--ng-hint-bg:#dbe8ff;color:var(--on-felt)}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .ng{--ng-cell-bg:#1c2230;--ng-thin:#3a4357;--ng-frame:#c9d2e3;--ng-ink:#e6ecf5;--ng-cross:#7d889c;--ng-clue-bg:#232b3d;--ng-clue-ink:#e6ecf5;--ng-clue-done:#6b768a;--ng-cur:#3a3418;--ng-sel:#ffd34d;--ng-pending:#8fb0e6;--ng-bad:#ff9b8a;--ng-hint:#8ab4ff;--ng-hint-bg:#22324f}}:root[data-theme=dark] .ng{--ng-cell-bg:#1c2230;--ng-thin:#3a4357;--ng-frame:#c9d2e3;--ng-ink:#e6ecf5;--ng-cross:#7d889c;--ng-clue-bg:#232b3d;--ng-clue-ink:#e6ecf5;--ng-clue-done:#6b768a;--ng-cur:#3a3418;--ng-sel:#ffd34d;--ng-pending:#8fb0e6;--ng-bad:#ff9b8a;--ng-hint:#8ab4ff;--ng-hint-bg:#22324f}.ng-loading{text-align:center;min-height:60vh;padding:40px;font-size:1.2rem}.ng-row{flex-wrap:wrap;gap:14px;display:flex}.ng-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 12px;margin-bottom:12px;display:flex}.ng-title{font-size:1.15rem}@media (width>=640px){.ng-title{font-size:1.35rem}}.ng-toolbar-buttons{flex-wrap:wrap;gap:8px;display:flex}.ng-chip{cursor:pointer;background:var(--wood-dark);color:#fff6e3;white-space:nowrap;border:0;border-radius:12px;min-height:44px;padding:0 14px;font-weight:700}.ng-chip[aria-pressed=true]{background:var(--amber);color:var(--amber-ink)}.ng-tray{padding:4px}@media (width<=420px){.ng-tray{margin-inline:-8px}}@media (width>=640px){.ng-tray{padding:12px}}.ng-layout{grid-template-columns:minmax(0,1fr);grid-template-areas:"status""board""controls";gap:6px;display:grid}@media (width>=640px){.ng-layout{gap:12px;max-width:640px;margin:0 auto}}@media (width>=1000px){.ng-layout{grid-template:"board status""board controls"1fr/minmax(0,1fr) 320px;align-items:start;max-width:1060px}}.ng-status{grid-area:status;min-height:2.9em;padding:10px 14px;font-size:1rem}@media (width>=1000px){.ng-status{padding:14px 18px;font-size:1.1rem}}.ng-board-wrap{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;border-radius:10px;grid-area:board;padding:2px;overflow:auto;container-type:inline-size}.ng-board{--ng-max:44px;--ng-min:26px;--ng-fit:min(var(--ng-max), calc((100cqi - 14px) / (var(--ng-n) + var(--ng-rcw))));--ng-cell:max(var(--ng-min), var(--ng-fit));--ng-font:min(20px, calc(var(--ng-cell) * .56));--ng-line:calc(var(--ng-font) * 1.15);grid-template-columns:calc(var(--ng-rcw) * var(--ng-font) * 1.65 + 4px) calc(var(--ng-n) * var(--ng-cell) + 4px);grid-template-rows:calc(var(--ng-cch) * var(--ng-line) + 10px) calc(var(--ng-n) * var(--ng-cell) + 4px);background:var(--ng-clue-bg);-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;width:max-content;font-family:var(--font-body);color:var(--ng-clue-ink);border-radius:10px;grid-template-areas:"corner cols""rows grid";margin-inline:auto;padding:4px;display:grid}.ng-size-5 .ng-board{--ng-max:64px;--ng-min:40px}.ng-size-15 .ng-board{--ng-max:38px;--ng-min:30px}.ng-size-15 .ng-board.is-fit{--ng-min:12px}@media (width>=701px){.ng-board{--ng-fit:min(var(--ng-max), calc((100cqi - 14px) / (var(--ng-n) + var(--ng-rcw))), calc((100svh - 260px) / (var(--ng-n) + var(--ng-cch) * .65)))}}.ng-corner{grid-area:corner;justify-content:center;align-items:center;padding:4px;display:flex}.ng-mini{width:min(100%, calc(var(--ng-cch) * var(--ng-line)));aspect-ratio:1;max-width:72px;fill:var(--ng-ink);background:var(--ng-cell-bg);opacity:.85;border-radius:3px}.ng-corner-done{color:var(--green);font-size:1.6rem;font-weight:800}.ng-colclues{grid-area:cols;align-items:flex-end;padding-left:2px;display:flex}.ng-colclue{width:var(--ng-cell);font-size:var(--ng-font);font-weight:700;line-height:var(--ng-line);border-radius:6px 6px 0 0;flex-direction:column;flex:none;justify-content:flex-end;align-items:center;padding-bottom:4px;display:flex}.ng-rowclues{flex-direction:column;grid-area:rows;padding-top:2px;display:flex}.ng-rowclue{height:var(--ng-cell);justify-content:flex-end;align-items:center;gap:calc(var(--ng-font) * .42);font-size:var(--ng-font);white-space:nowrap;border-radius:6px 0 0 6px;flex:none;padding-right:6px;font-weight:700;display:flex}.ng-colclue.is-cur,.ng-rowclue.is-cur{background:var(--ng-cur)}.ng-colclue.is-done,.ng-rowclue.is-done{color:var(--ng-clue-done);font-weight:400}.ng-colclue.is-hint,.ng-rowclue.is-hint{background:var(--ng-hint-bg);color:var(--ng-hint);box-shadow:inset 0 0 0 2px var(--ng-hint)}.ng-grid{grid-area:grid;grid-template-rows:repeat(var(--ng-n), var(--ng-cell));border:2px solid var(--ng-frame);background:var(--ng-cell-bg);touch-action:none;cursor:pointer;display:grid}.ng-grid-row{grid-template-columns:repeat(var(--ng-n), var(--ng-cell));display:grid}.ng-cell{box-sizing:border-box;background:var(--ng-cell-bg);border-right:1px solid var(--ng-thin);border-bottom:1px solid var(--ng-thin);-webkit-tap-highlight-color:transparent;justify-content:center;align-items:center;display:flex;position:relative}.ng-cell:last-child{border-right:0}.ng-grid-row:last-child .ng-cell{border-bottom:0}.ng-cell.is-five-r{border-right:2px solid var(--ng-frame)}.ng-cell.is-five-b{border-bottom:2px solid var(--ng-frame)}.ng-cell.is-filled{background:var(--ng-ink)}.ng-x{width:62%;height:62%;stroke:var(--ng-cross);stroke-width:1.3px;stroke-linecap:round;fill:none}.ng-cell.is-pending:before{content:"";background:var(--ng-pending);opacity:.35;pointer-events:none;position:absolute;inset:0}.ng-cell.is-cursor{box-shadow:inset 0 0 0 3px var(--ng-sel)}.ng-cell:focus{outline:none}.ng-cell:focus-visible{outline:3px solid var(--ng-hint);outline-offset:-3px;z-index:1}.ng-cell.is-wrong{box-shadow:inset 0 0 0 3px var(--ng-bad)}.ng-cell.is-wrong:after{content:"";border-style:solid;border-width:0 9px 9px 0;border-color:transparent var(--ng-bad) transparent transparent;pointer-events:none;position:absolute;top:0;right:0}.ng-cell.is-hint:after{content:"";border:3px dashed var(--ng-hint);pointer-events:none;border-radius:4px;animation:1.4s ease-in-out infinite ng-pulse;position:absolute;inset:2px}@keyframes ng-pulse{50%{opacity:.45}}.ng-board.is-solved .ng-grid,.ng-board.is-solved .ng-cell{box-shadow:none;background:#fffdf6}.ng-board.is-solved .ng-cell.is-filled{background:var(--ng-ink-solved);animation:ng-ink .7s ease-out var(--ng-wave,0s) backwards}.ng-board.is-solved .ng-x{opacity:0;transition:opacity .6s}.ng-board.is-solved .ng-cell{border-color:#0000}.ng-board.is-solved .ng-grid{cursor:default}@keyframes ng-ink{0%{background:var(--ng-ink)}}.ng-controls{flex-direction:column;grid-area:controls;gap:10px;padding:10px;display:flex}@media (width>=1000px){.ng-controls{gap:14px;padding:16px}}.ng-modes{grid-template-columns:1fr 1fr;gap:8px;display:grid}.ng-mode{cursor:pointer;background:var(--paper-2);min-height:64px;color:var(--ink);font-size:1.2rem;font-weight:800;font-family:var(--font-display);border:3px solid var(--line);box-shadow:0 3px 0 var(--line);border-radius:14px;justify-content:center;align-items:center;gap:10px;display:flex}.ng-mode.is-on{background:var(--amber);color:var(--amber-ink);border-color:var(--amber-deep);box-shadow:0 3px 0 var(--amber-deep)}.ng-mode-icon{border:2px solid;border-radius:4px;justify-content:center;align-items:center;width:28px;height:28px;display:inline-flex}.ng-mode-icon--fill{background:currentColor}.ng-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.ng-actions .token{white-space:nowrap;gap:6px;min-height:52px;padding:0 6px;font-size:1.05rem}.ng-rules{color:var(--ink-soft);font-size:.92rem}.ng-keys{color:var(--ink-soft);font-size:.85rem;display:none}@media (width>=1000px){.ng-keys{display:block}}.ng-scrim{z-index:40;background:#0a140f8c;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}@media (width>=640px){.ng-scrim{align-items:center;padding:24px}}.ng-dialog{border-radius:20px 20px 0 0;flex-direction:column;gap:14px;width:100%;max-width:520px;max-height:92vh;padding:22px 18px 26px;display:flex;overflow:auto;box-shadow:0 -6px 30px #00000059}@media (width>=640px){.ng-dialog{border-radius:20px;padding:26px 28px}}.ng-dialog h2{font-size:1.7rem}.ng-reveal{justify-content:center;display:flex}.ng-art{border-radius:12px;max-width:70vw;height:auto;box-shadow:0 4px 16px #0003}.ng-art rect[style]{animation:ng-pop .5s ease-out var(--ng-wave,0s) backwards}@keyframes ng-pop{0%{opacity:0}}.ng-choices{flex-direction:column;gap:8px;display:flex}.ng-choice{text-align:left;border:2px solid var(--line);background:var(--paper);min-height:60px;color:var(--ink);cursor:pointer;border-radius:12px;flex-direction:column;align-items:flex-start;gap:2px;padding:10px 16px;display:flex}.ng-choice:hover,.ng-choice:focus-visible{border-color:var(--ink);background:var(--paper-2)}.ng-choice-label{font-size:1.1rem;font-weight:800}.ng-option-note{color:var(--ink-soft);font-size:.9rem;font-weight:400;display:block}.ng-check{cursor:pointer;align-items:center;gap:12px;min-height:52px;font-weight:700;display:flex}.ng-check input{accent-color:#1e5a47;flex-shrink:0;width:22px;height:22px}.ng-streak{font-size:1.1rem}.ng-welcome{max-width:640px;margin:0 auto}.ng-welcome-card{flex-direction:column;gap:14px;padding:26px;display:flex}.ng-welcome-card h2{font-size:2rem}@media (prefers-reduced-motion:reduce){.ng-cell.is-hint:after,.ng-board.is-solved .ng-cell.is-filled,.ng-art rect[style]{animation:none}.ng-board.is-solved .ng-x{transition:none}}.sp{color:var(--on-felt);outline:none}.sp-loading{text-align:center;padding:40px;font-size:1.2rem}.sp-row{flex-wrap:wrap;gap:14px;display:flex}.sp-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 10px;margin-bottom:12px;display:flex}.sp-count{font-family:var(--font-display);flex-wrap:wrap;align-items:baseline;gap:4px 16px;font-size:1.1rem;font-weight:800;display:flex}.sp-count strong{font-size:1.25rem}.sp-mode{font-family:var(--font-body);color:var(--on-felt-soft);font-size:.95rem;font-weight:400}.sp-toolbar-buttons{gap:8px;display:flex}.sp-chip{cursor:pointer;background:var(--wood-dark);color:#fff6e3;white-space:nowrap;border:0;border-radius:12px;min-height:44px;padding:0 14px;font-weight:700}.sp-tray{flex-direction:column;gap:8px;display:flex}.sp-status{flex-direction:column;gap:10px;padding:12px 14px;display:flex}.sp-message{min-height:3em;font-size:1.05rem}.sp-actions{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.sp-actions .token{gap:6px;min-height:48px;padding:0 8px;font-size:1.05rem}.sp-actions .token svg{flex-shrink:0}.sp-deal-count{font-weight:400}@media (width>=720px){.sp-status{flex-direction:row;justify-content:space-between;align-items:center;gap:16px;padding:12px 18px}.sp-message{flex:auto;min-height:0}.sp-actions{flex:none;grid-template-columns:repeat(3,130px)}}.sp-keys{color:var(--on-felt-soft);padding:0 4px;font-size:.85rem;display:none}@media (width>=1000px){.sp-keys{display:block}}.sp-board{border-radius:var(--radius);background:var(--board);padding:8px 2px 14px}@media (width<=420px){.sp-board{border-radius:10px;margin:0 -13px;padding-left:0;padding-right:0}}@media (width>=640px){.sp-board{padding:14px 12px 20px}}.sp-top,.sp-tableau{grid-template-columns:repeat(10, var(--card-w));justify-content:center;column-gap:var(--sp-gap);display:grid}.sp-top{margin-bottom:calc(var(--sp-gap) * 2 + 10px)}.sp-stock{grid-column:1}.sp-done{grid-column:3/span 8;grid-template-columns:repeat(8, var(--card-w));column-gap:var(--sp-gap);display:grid}.sp-column{min-height:var(--card-h);border-radius:calc(var(--card-w) * .1);position:relative}.sp-column .card-face{position:absolute;left:0}.card-face.sp-card--down{cursor:default}.sp-stock{cursor:pointer;background:#fff;border:1px solid #00000059;box-shadow:0 2px #00000059}.sp-stock:focus-visible{outline:3px solid var(--amber);outline-offset:2px}.sp-stock.is-empty{box-shadow:none;cursor:default;background:#00000024;border:2px dashed #ffffff73}.sp-badge{color:#fff;min-width:18px;font-size:clamp(.7rem, calc(var(--card-w) * .3), .95rem);text-align:center;background:#000000b8;border-radius:6px;padding:1px 3px;font-weight:700;line-height:1.2;position:absolute;bottom:1px;right:1px}.sp-done-slot{opacity:.6;border-width:1px}.sp-done-card{cursor:default}.sp-slot-label{font-family:var(--font-body);font-weight:700;font-size:clamp(.5rem, calc(var(--card-w) * .2), .9rem);color:#ffffffb3;text-transform:uppercase;letter-spacing:.02em}.card-slot.is-target .sp-slot-label{color:#fff}@media (width<=520px){.sp-slot-label{display:none}}.sp-column.is-cleared{animation:.9s ease-out sp-cleared}@keyframes sp-cleared{0%{box-shadow:0 0 0 3px var(--amber), 0 0 18px 4px #ffc53d99}to{box-shadow:none}}@media (prefers-reduced-motion:reduce){.sp-column.is-cleared{animation:none}}.sp-scrim{z-index:40;background:#0a140f8c;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}@media (width>=640px){.sp-scrim{align-items:center;padding:24px}}.sp-dialog{border-radius:20px 20px 0 0;flex-direction:column;gap:14px;width:100%;max-width:520px;max-height:92vh;padding:22px 18px 26px;display:flex;overflow:auto;box-shadow:0 -6px 30px #00000059}@media (width>=640px){.sp-dialog{border-radius:20px;padding:26px 28px}}.sp-dialog h2{font-size:1.7rem}.sp-field{border:0;margin:0;padding:0}.sp-field legend{margin-bottom:8px;font-weight:700}.sp-options{flex-direction:column;gap:8px;display:flex}.sp-option{border:2px solid var(--line);cursor:pointer;border-radius:12px;align-items:center;gap:10px;min-height:52px;padding:0 16px;font-weight:700;display:flex}.sp-option:has(input:checked){border-color:var(--ink);background:var(--paper-2)}.sp-option input{accent-color:#1e5a47;flex-shrink:0;width:22px;height:22px}.sp-option .muted{font-weight:400}.sp-numfield{flex-direction:column;gap:8px;display:flex}.sp-numfield label{font-weight:700}.sp-deal-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.sp-input{border:2px solid var(--line);background:var(--paper-2);min-width:0;min-height:52px;color:var(--ink);border-radius:12px;flex:140px;padding:0 14px;font-size:1.25rem;font-weight:700}.sp-input:focus-visible{outline:3px solid var(--amber);outline-offset:2px;border-color:var(--ink)}.sp-input[aria-invalid=true]{border-color:#c62828}.sp-error{color:#c62828;font-weight:700}.sp-welcome{max-width:640px;margin:0 auto}.sp-welcome-card{flex-direction:column;gap:14px;padding:26px;display:flex}.sp-welcome-card h2{font-size:2rem}.da{--da-sand:#d9a15b;--da-sand-light:#e6b877;--da-sand-edge:#9c6a2e;--da-hole:#b97e3e;--da-hole-deep:#8f5d27;--da-stone:#55524d;--da-stone-dark:#2f2d2a;--da-shell:#f2e6cc;--da-shell-line:#8c6a30;--da-gold:var(--amber);--da-ink:#3a2410;color:var(--on-felt)}.da-loading{text-align:center;padding:40px;font-size:1.2rem}.da-row{flex-wrap:wrap;gap:14px;display:flex}.da-toolbar{justify-content:space-between;align-items:center;gap:10px;margin-bottom:12px;display:flex}.da-score{font-family:var(--font-display);flex-wrap:wrap;align-items:center;gap:4px 10px;font-size:1.15rem;font-weight:700;display:flex}.da-score>span{align-items:center;gap:6px;display:inline-flex}.da-score strong{font-size:1.45rem;font-weight:800}@media (width>=640px){.da-score{font-size:1.3rem}.da-score strong{font-size:1.7rem}}.da-chip{cursor:pointer;background:var(--wood-dark);color:#fff6e3;white-space:nowrap;border:0;border-radius:12px;flex-shrink:0;min-height:44px;padding:0 14px;font-weight:700}.da-tray{flex-direction:column;gap:8px;max-width:720px;margin:0 auto;padding:6px;display:flex}@media (width>=640px){.da-tray{gap:12px;padding:14px}}.da-status{min-height:96px;padding:12px 16px}.da-turn{font-size:1.35rem}.da-message{margin-top:4px;font-size:1.02rem}@media (width>=900px){.da-turn{font-size:1.6rem}.da-message{font-size:1.08rem}}.da-rack{background:#00000038;border:2px solid #0000;border-radius:14px;align-items:center;gap:10px;min-height:44px;padding:6px 12px;display:flex}.da-rack.is-active{border-color:var(--da-gold)}.da-rack-name{font-family:var(--font-display);min-width:44px;font-size:1.05rem;font-weight:800}.da-rack-hand{flex-wrap:wrap;flex:auto;align-items:center;gap:1px;min-width:0;display:flex}.da-rack-empty{color:var(--on-felt-soft);font-size:.92rem}.da-rack-counts{color:var(--on-felt-soft);white-space:nowrap;flex-direction:column;align-items:flex-end;font-size:.85rem;line-height:1.25;display:flex}.da-rack-counts strong{color:var(--on-felt);font-size:1rem}@media (width>=640px){.da-rack-counts{flex-direction:row;gap:14px;font-size:.95rem}.da-rack-counts strong{font-size:1.15rem}}.da-mini{flex-shrink:0;width:18px;height:18px}@media (width>=640px){.da-mini{width:22px;height:22px}}.da-board{background:radial-gradient(ellipse at 30% 20%, var(--da-sand-light), var(--da-sand) 60%);box-shadow:inset 0 2px 0 #ffffff40, inset 0 -3px 0 #0000001f, 0 5px 0 var(--da-sand-edge), 0 10px 18px #0000004d;border-radius:18px;grid-template-columns:repeat(6,minmax(0,1fr));gap:2px;padding:4px;display:grid}@media (width>=640px){.da-board{border-radius:26px;gap:8px;padding:14px}}.da-hole{aspect-ratio:1;min-width:0;min-height:48px;color:inherit;cursor:pointer;font:inherit;-webkit-tap-highlight-color:transparent;background:0 0;border:3px solid #0000;border-radius:50%;justify-content:center;align-items:center;margin:0;padding:3px;display:flex;position:relative}.da-hole:focus-visible{outline:3px solid var(--da-ink);outline-offset:0}.da-pit{background:radial-gradient(circle at 50% 40%, var(--da-hole) 0 55%, var(--da-hole-deep) 100%);border-radius:50%;justify-content:center;align-items:center;width:100%;height:100%;display:flex;position:relative;box-shadow:inset 0 4px 7px #0006,0 1px #ffffff4d}.da-piece{width:86%;height:86%;overflow:visible}.da-shadow{fill:#000;fill-opacity:.32}.da-stone{fill:var(--da-stone);stroke:var(--da-stone-dark);stroke-width:3px}.da-stone-shine{fill:#fff;fill-opacity:.18}.da-shell{fill:var(--da-shell);stroke:var(--da-shell-line);stroke-width:3px}.da-shell-slit{fill:none;stroke:var(--da-shell-line);stroke-width:4px;stroke-linecap:round}.da-shell-teeth{fill:none;stroke:var(--da-shell-line);stroke-width:2.5px;stroke-linecap:round}.da-hole.is-target .da-pit:after{content:"";background:var(--da-gold);border-radius:50%;width:30%;height:30%;position:absolute;box-shadow:0 0 0 3px #3a24108c}.da-board.is-placing .da-hole.is-target .da-pit:after{opacity:.7;width:16%;height:16%;box-shadow:none}.da-hole.is-movable .da-pit{box-shadow:inset 0 4px 7px #0006,0 0 0 3px #ffc53dbf}.da-hole.is-selected{border-color:var(--da-gold);background:#ffc53d4d}.da-hole.is-selected .da-piece{transform:translateY(-3px)scale(1.06)}.da-hole.is-capture .da-pit:before{content:"";z-index:1;pointer-events:none;border:4px solid var(--da-gold);box-shadow:0 0 0 2px var(--da-ink);border-radius:50%;position:absolute;inset:-2px}.da-hole.is-hint{border-style:dashed;border-color:#bcd4ff}.da-hole.is-hint.is-selected{border-color:var(--da-gold);border-style:solid}.da-hole.is-glow .da-pit{background:radial-gradient(circle at 50% 40%, #ffe08a 0 45%, var(--da-gold) 100%);box-shadow:0 0 0 3px var(--da-ink), 0 0 16px 4px #ffc53dd9}.da-hole.is-last .da-piece{animation:.32s ease-out da-drop}.da-hole.is-last:not(.is-glow) .da-pit{box-shadow:inset 0 4px 7px #0006,0 0 0 3px #ffffffbf}.da-hole.is-from .da-pit{box-shadow:inset 0 4px 7px #0006,0 0 0 2px #ffffff80}.da-hole.is-taken .da-pit{box-shadow:inset 0 4px 7px #0006, 0 0 0 3px var(--red);animation:.9s ease-out da-taken}.da-hole.is-glow .da-piece{animation:1.2s ease-in-out 2 da-glow}@keyframes da-drop{0%{opacity:.4;transform:translateY(-8px)scale(1.12)}to{opacity:1;transform:none}}@keyframes da-taken{0%{background:var(--red-soft)}to{}}@keyframes da-glow{0%,to{filter:none}50%{filter:brightness(1.15)drop-shadow(0 0 4px #fff3c4)}}.da-actions{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:4px;display:grid}.da-actions .token{gap:6px;padding:0 8px;font-size:1.05rem}.da-keys{color:var(--on-felt-soft);font-size:.88rem;display:none}@media (width>=1000px){.da-keys{text-align:center;display:block}}.da-scrim{z-index:40;background:#0a140f8c;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}@media (width>=640px){.da-scrim{align-items:center;padding:24px}}.da-dialog{border-radius:20px 20px 0 0;flex-direction:column;gap:14px;width:100%;max-width:520px;max-height:92vh;padding:22px 18px 26px;display:flex;overflow:auto;box-shadow:0 -6px 30px #00000059}@media (width>=640px){.da-dialog{border-radius:20px;padding:26px 28px}}.da-dialog h2{font-size:1.7rem}.da-final{font-family:var(--font-display);gap:24px;font-size:1.2rem;display:flex}.da-final>span{align-items:center;gap:6px;display:inline-flex}.da-final strong{margin-left:4px;font-size:2rem}.da-field{border:0;margin:0;padding:0}.da-field legend{margin-bottom:8px;font-weight:700}.da-options{flex-wrap:wrap;gap:8px;display:flex}.da-option{border:2px solid var(--line);cursor:pointer;border-radius:12px;align-items:center;gap:8px;min-height:48px;padding:0 16px;font-weight:700;display:inline-flex}.da-option:has(input:checked){border-color:var(--ink);background:var(--paper-2)}.da-option input{accent-color:#1e5a47;width:22px;height:22px}.da-help{margin-top:8px;font-size:.95rem}.da-welcome{max-width:640px;margin:0 auto}.da-welcome-card{flex-direction:column;gap:14px;padding:26px;display:flex}.da-welcome-card h2{font-size:2rem}@media (prefers-reduced-motion:reduce){.da-hole .da-piece,.da-hole .da-pit{transition:none!important;animation:none!important}.da-hole.is-selected .da-piece{transform:none}}@media (width<=420px){.da-score>span[aria-hidden=true]{display:none}.da-score{gap:2px 12px}}.ls{--ls-sand:#dcb57e;--ls-sand-edge:#c8a06a;--ls-frame:#3b24162e;--ls-dot:#2b1d0e;--ls-ink-1:#3b2416;--ls-ink-2:#1f4e8c;--ls-ink-3:#9e2f22;--ls-ink-4:#1e5a47;--ls-ink-5:#6b3fa0;--ls-mirror:#fff6e3;--ls-fixed:#2b1d0e;--ls-sel:#fff6e3;--ls-hint:#1d4ed8;color:var(--on-felt)}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .ls{--ls-sand:#c9a46e;--ls-sand-edge:#a9875a;--ls-sel:#fff6e3}}:root[data-theme=dark] .ls{--ls-sand:#c9a46e;--ls-sand-edge:#a9875a;--ls-sel:#fff6e3}.ls-loading{text-align:center;min-height:60vh;padding:40px;font-size:1.2rem}.ls-row{flex-wrap:wrap;gap:14px;display:flex}.ls-sr{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.ls-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 12px;margin-bottom:12px;display:flex}.ls-title{font-size:1.15rem}@media (width>=640px){.ls-title{font-size:1.35rem}}.ls-toolbar-buttons{flex-wrap:wrap;gap:8px;display:flex}.ls-chip{cursor:pointer;background:var(--wood-dark);color:#fff6e3;white-space:nowrap;border:0;border-radius:12px;min-height:44px;padding:0 14px;font-weight:700}.ls-tray{padding:4px}@media (width<=420px){.ls-tray{margin-inline:-8px}}@media (width>=640px){.ls-tray{padding:12px}}.ls-layout{grid-template-columns:minmax(0,1fr);grid-template-areas:"status""board""controls";gap:8px;display:grid}@media (width>=640px){.ls-layout{gap:12px;max-width:680px;margin:0 auto}}@media (width>=1000px){.ls-layout{grid-template:"board status""board controls"1fr/minmax(0,1fr) 330px;align-items:start;max-width:1060px}}.ls-status{grid-area:status;min-height:2.9em;padding:10px 14px;font-size:1rem}@media (width>=1000px){.ls-status{padding:14px 18px;font-size:1.1rem}}.ls-board-wrap{flex-direction:column;grid-area:board;align-items:center;gap:8px;min-width:0;display:flex}.ls-counter{color:var(--on-felt);text-align:center;flex-wrap:wrap;justify-content:center;align-items:baseline;gap:2px 14px;font-size:1.1rem;display:flex}.ls-counter span{color:var(--on-felt-soft);font-size:1rem}.ls-counter.is-solved strong{color:var(--amber)}.ls-board{width:100%;max-width:min(720px, calc(66vh * var(--ls-ratio,1.4)));-webkit-user-select:none;user-select:none;touch-action:manipulation;-webkit-tap-highlight-color:transparent;border-radius:14px;display:block}.ls-sand{fill:var(--ls-sand);stroke:var(--ls-sand-edge);stroke-width:.12px}.ls-frame{fill:none;stroke:var(--ls-frame);stroke-width:.05px;stroke-dasharray:.2 .25}.ls-dot{fill:var(--ls-dot)}.ls-line{fill:none;stroke-width:.2px;stroke-linecap:round;stroke-linejoin:round}.ls-mirror line{stroke:var(--ls-mirror);stroke-width:.16px;stroke-linecap:round}.ls-mirror line.ls-mirror-edge{stroke:var(--ls-fixed);stroke-width:.3px}.ls-mirror.is-fixed line{stroke:var(--ls-fixed);stroke-width:.17px;stroke-linecap:butt}.ls-mirror.is-fixed circle{fill:var(--ls-fixed)}.ls-hint{fill:none;stroke:var(--ls-hint);stroke-width:.1px;stroke-dasharray:.25 .15;transform-box:fill-box;transform-origin:50%;animation:1.4s ease-in-out infinite ls-pulse}@keyframes ls-pulse{50%{transform:scale(1.12)}}.ls-hit{fill:#0000;stroke:none;cursor:pointer;outline:none}.ls-hit.is-fixed{cursor:default}@media (hover:hover){.ls-hit:not(.is-fixed):hover{fill:#fff6e347}}.ls-hit.is-selected{stroke:var(--ls-sel);stroke-width:.08px;stroke-dasharray:.18 .12}.ls-hit:focus-visible{fill:#fff6e359;stroke:var(--ls-hint);stroke-width:.1px;stroke-dasharray:none}.ls-board.is-solved .ls-hit{cursor:default}.ls-legend{flex-wrap:wrap;justify-content:center;gap:4px 12px;margin:0;padding:0;list-style:none;display:flex}.ls-legend li{background:var(--ls-sand);color:#2b1d0e;border-radius:999px;align-items:center;gap:6px;padding:2px 10px;font-size:.95rem;font-weight:700;display:flex}.ls-legend line{stroke-width:.3px;stroke-linecap:round;fill:none}.ls-controls{flex-direction:column;grid-area:controls;gap:10px;padding:12px;display:flex}@media (width>=1000px){.ls-controls{gap:14px;padding:16px}}.ls-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.ls-actions .token{white-space:nowrap;gap:6px;min-height:56px;padding:0 6px;font-size:1.1rem}.ls-howto{flex-direction:column;gap:6px;font-size:.98rem;display:flex}.ls-howto p{margin:0}.ls-keys{color:var(--ink-soft);margin:0;font-size:.85rem;display:none}@media (width>=1000px){.ls-keys{display:block}}.ls-scrim{z-index:40;background:#0a140f8c;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}@media (width>=640px){.ls-scrim{align-items:center;padding:24px}}.ls-dialog{border-radius:20px 20px 0 0;flex-direction:column;gap:14px;width:100%;max-width:540px;max-height:92vh;padding:22px 18px 26px;display:flex;overflow:auto;box-shadow:0 -6px 30px #00000059}@media (width>=640px){.ls-dialog{border-radius:20px;padding:26px 28px}}.ls-dialog h2{font-size:1.7rem}.ls-dialog p{margin:0}.ls-field{border:0;margin:0;padding:0}.ls-field legend{margin-bottom:8px;font-weight:700}.ls-options{flex-wrap:wrap;gap:8px;display:flex}.ls-options--stack{flex-direction:column}.ls-option{border:2px solid var(--line);cursor:pointer;border-radius:12px;align-items:center;gap:10px;min-height:52px;padding:6px 16px;font-weight:700;display:flex}.ls-option:has(input:checked){border-color:var(--ink);background:var(--paper-2)}.ls-option-note{color:var(--ink-soft);font-size:.9rem;font-weight:400;display:block}.ls-option input{accent-color:#1e5a47;flex-shrink:0;width:22px;height:22px}.ls-streak{font-size:1.1rem}.ls-playback{flex-direction:column;align-items:center;gap:10px;display:flex}.ls-playback svg{width:100%;max-width:420px;max-height:42vh}.ls-line--play{stroke:var(--ls-ink-1);stroke-width:.22px}.ls-mirror-faint{stroke:#3b241659;stroke-width:.12px;stroke-linecap:round}.ls-finger ellipse{fill:#96644659}.ls-finger circle{fill:#3b24168c}.ls-replay{min-height:48px}.ls-welcome{max-width:640px;margin:0 auto}.ls-welcome-card{flex-direction:column;gap:14px;padding:26px;display:flex}.ls-welcome-card h2{font-size:2rem}@media (prefers-reduced-motion:reduce){.ls-hint{animation:none}}.spd{--play:#b7791f;--us:#2f7d5b;--them:#9a4b2b;color:var(--on-felt)}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .spd{--play:var(--amber);--us:#6cc59d;--them:#f0a27f}}:root[data-theme=dark] .spd{--play:var(--amber);--us:#6cc59d;--them:#f0a27f}.spd-loading{text-align:center;padding:40px;font-size:1.2rem}.spd-row{flex-wrap:wrap;gap:14px;display:flex}.spd-toolbar{justify-content:space-between;align-items:center;gap:10px;margin-bottom:12px;display:flex}.spd-round{font-family:var(--font-display);white-space:nowrap;font-size:1.1rem;font-weight:800}.spd-round-sub{color:var(--on-felt-soft);font-weight:600}@media (width<=400px){.spd-round-sub{display:none}}@media (width>=640px){.spd-round{font-size:1.25rem}}.spd-toolbar-buttons{gap:8px;display:flex}.spd-chip{cursor:pointer;background:var(--wood-dark);color:#fff6e3;white-space:nowrap;border:0;border-radius:12px;min-height:44px;padding:0 14px;font-weight:700}.spd-tray{padding:8px}.spd-grid{grid-template-columns:minmax(0,1fr);grid-template-areas:"board""table""status""hand""bid";gap:8px;display:grid}@media (width>=1000px){.spd-tray{padding:14px}.spd-grid{grid-template:"table board""table status""table bid""hand bid"1fr/minmax(0,1fr) 340px;align-items:start;gap:12px}}.spd-board{grid-area:board;grid-template-columns:1fr 1fr;gap:8px;display:grid}.spd-team{background:var(--paper);color:var(--ink);border-left:8px solid var(--us);border-radius:14px;flex-direction:column;gap:1px;min-width:0;padding:8px 12px;display:flex}.spd-team.team-1{border-left-color:var(--them)}.spd-team-name{flex-wrap:wrap;align-items:baseline;gap:6px;font-size:1.05rem;font-weight:800;display:flex}.spd-team-who{color:var(--ink-soft);font-size:.85rem;font-weight:600}.spd-team-score{font-family:var(--font-display);font-size:1.8rem;font-weight:800;line-height:1.1}.spd-team-sub{color:var(--ink-soft);font-size:.88rem}.spd-table{border-radius:var(--radius);background:var(--board);grid-area:table;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);grid-template-areas:".top.""left centre right"".bottom.";place-items:center;gap:6px;padding:10px 6px;display:grid}@media (width>=640px){.spd-table{gap:10px;padding:14px}}.spd-plate{color:#fff;text-align:center;background:#00000038;border:3px solid #0000;border-radius:12px;flex-direction:column;align-items:center;gap:2px;min-width:0;max-width:100%;padding:6px 8px;line-height:1.2;transition:border-color .2s,background-color .2s;display:flex}.spd-plate.at-top{grid-area:top}.spd-plate.at-left{grid-area:left;justify-self:start}.spd-plate.at-right{grid-area:right;justify-self:end}.spd-plate.at-bottom{flex-direction:row;grid-area:bottom;gap:10px}.spd-plate.is-active{border-color:var(--amber);background:#ffc53d2e}.spd-plate-name{align-items:center;gap:5px;font-size:1.05rem;display:inline-flex}.spd-partner{color:#134232;text-transform:uppercase;letter-spacing:.03em;background:#d9f2e6;border-radius:999px;padding:1px 6px;font-size:.68rem;font-weight:700}.spd-plate-line{flex-wrap:wrap;justify-content:center;gap:2px 8px;font-size:.92rem;display:inline-flex}.spd-plate-bid{white-space:nowrap;font-weight:700}.spd-plate-bid.is-nil{color:#ffe08a}.spd-plate-bid.is-failed{color:#ffb4a8;text-decoration:line-through}.spd-plate-won{color:#d2e6dd;white-space:nowrap}@media (width>=640px){.spd-plate{padding:8px 14px}.spd-plate-name{font-size:1.15rem}}@media (width<=420px){.spd-plate.at-left,.spd-plate.at-right{padding:5px 4px}.spd-plate-line{flex-direction:column}}.spd-centre{width:calc(var(--card-w) * 2.75);height:calc(var(--card-h) * 2.1);grid-area:centre;position:relative}.spd-centre-note{color:#d2e6dd;text-align:center;justify-content:center;align-items:center;padding:0 8px;font-size:.95rem;display:flex;position:absolute;inset:0}.spd-played{position:absolute}.spd-played.at-bottom{bottom:0;left:50%;transform:translate(-50%)}.spd-played.at-top{top:0;left:50%;transform:translate(-50%)}.spd-played.at-left{top:50%;left:0;transform:translateY(-50%)}.spd-played.at-right{top:50%;right:0;transform:translateY(-50%)}.spd-played .card-box{cursor:default}.spd-played.is-winning .card-box{box-shadow:0 0 0 3px var(--amber), 0 6px 14px #00000059}.spd-centre.is-leaving .card-box{transition:transform var(--slide-ms) ease-in, opacity var(--slide-ms) ease-in;opacity:0}.spd-centre.is-leaving.to-bottom .card-box{transform:translateY(120%)scale(.6)}.spd-centre.is-leaving.to-top .card-box{transform:translateY(-120%)scale(.6)}.spd-centre.is-leaving.to-left .card-box{transform:translate(-140%)scale(.6)}.spd-centre.is-leaving.to-right .card-box{transform:translate(140%)scale(.6)}.spd-broken{color:#d2e6dd;white-space:nowrap;background:#0000004d;border-radius:999px;align-items:center;gap:3px;padding:1px 7px;font-size:.72rem;font-weight:700;display:inline-flex;position:absolute;bottom:-4px;right:-4px}.spd-broken.is-on{color:#fff;background:#00000073}.spd-broken-icon{color:currentColor;width:11px;height:11px}.spd-status{grid-area:status;padding:12px 16px}.spd-status--turn{background:var(--alert-bg);color:var(--alert-ink)}.spd-turn{font-size:1.4rem}.spd-prompt{flex-direction:column;gap:2px;margin-top:2px;display:flex}.spd-prompt-main{font-size:1.1rem;font-weight:700}.spd-message{font-size:1rem}@media (width>=1000px){.spd-turn{font-size:1.7rem}}.spd-bid{flex-direction:column;grid-area:bid;gap:10px;padding:14px 16px;display:flex}.spd-bid h2{font-size:1.3rem}.spd-bid-partner{font-size:1rem}.spd-bid-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;display:grid}@media (width>=640px) and (width<=999px){.spd-bid-grid{grid-template-columns:repeat(7,minmax(0,1fr))}}.spd-bid-btn{border:2px solid var(--line);cursor:pointer;background:var(--paper-2);min-height:56px;color:var(--ink);font-family:var(--font-display);box-shadow:0 3px 0 var(--line);border-radius:12px;font-size:1.5rem;font-weight:800;position:relative}.spd-bid-btn:active{box-shadow:0 1px 0 var(--line);transform:translateY(2px)}.spd-bid-btn:focus-visible{outline:3px solid var(--amber);outline-offset:2px}.spd-bid-nil{flex-wrap:wrap;grid-column:span 2;justify-content:center;align-items:center;gap:6px;font-size:1.3rem;line-height:1.1;display:flex}.spd-bid-small{font-family:var(--font-body);font-size:.8rem;font-weight:600}.spd-bid-btn.is-suggested{border:3px solid var(--play);background:var(--alert-bg);color:var(--alert-ink)}.spd-bid-btn.is-suggested:after{content:"★";color:var(--play);font-size:.8rem;position:absolute;top:2px;right:5px}.spd-suggest{background:var(--paper-2);border-radius:12px;padding:8px 12px;font-size:1rem}.spd-hand{flex-direction:column;grid-area:hand;gap:10px;padding:12px;display:flex}@media (width>=1000px){.spd-hand{padding:16px 18px}}.spd-hand-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.spd-hand-head h2{font-size:1.2rem}.spd-legend{color:var(--ink-soft);align-items:center;gap:6px;font-size:.9rem;display:inline-flex}.spd-legend-swatch{width:14px;height:14px;box-shadow:inset 0 0 0 3px var(--play);border-radius:4px}.spd-fan-wrap{flex-direction:column;gap:2px;display:flex}.spd-fan{justify-content:center;margin:0;padding:18px 0 0;list-style:none;display:flex}.spd-fan li{flex-shrink:0}.spd-fan li+li{margin-left:calc(-1 * var(--overlap))}.spd-card{box-shadow:-2px 0 4px #0000002e}.spd-card-back{cursor:default}.spd-card .card-corner{flex-direction:column;align-items:center;gap:2px;left:2px}.spd-card.is-legal{box-shadow:0 0 0 3px var(--play), -2px 2px 6px #00000040;transform:translateY(-12px)}@media (hover:hover){.spd-card.is-legal:hover{transform:translateY(-16px)}}.spd-card.is-dim{cursor:default;filter:grayscale(.55)brightness(.86)}.spd-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.spd-actions .token{padding:0 10px;font-size:1.05rem}.spd-keys{color:var(--ink-soft);font-size:.85rem;display:none}@media (width>=1000px){.spd-keys{display:block}}.spd-scrim{z-index:40;background:#0a140f8c;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}@media (width>=640px){.spd-scrim{align-items:center;padding:24px}}.spd-dialog{border-radius:20px 20px 0 0;flex-direction:column;gap:14px;width:100%;max-width:600px;max-height:92vh;padding:22px 18px 26px;display:flex;overflow:auto;box-shadow:0 -6px 30px #00000059}@media (width>=640px){.spd-dialog{border-radius:20px;padding:26px 28px}}.spd-dialog h2{font-size:1.7rem}.spd-final{background:var(--alert-bg);color:var(--alert-ink);border-radius:12px;padding:10px 14px;font-size:1.1rem;font-weight:700}.spd-summary{gap:12px;display:grid}@media (width>=560px){.spd-summary{grid-template-columns:1fr 1fr}}.spd-summary-team{background:var(--paper-2);border-left:6px solid var(--us);border-radius:12px;padding:10px 14px}.spd-summary-team.team-1{border-left-color:var(--them)}.spd-summary-team h3{margin-bottom:4px;font-size:1.15rem}.spd-summary-team ul{margin:0;padding:0;list-style:none}.spd-summary-team li{border-top:2px dotted var(--line);justify-content:space-between;gap:10px;padding:5px 0;font-size:1rem;display:flex}.spd-summary-team li:first-child{border-top:0}.spd-summary-total{font-weight:700}.spd-table-sheet{border-collapse:collapse;width:100%;font-size:1.05rem}.spd-table-sheet th,.spd-table-sheet td{text-align:right;border-bottom:2px dotted var(--line);white-space:nowrap;padding:9px 8px}.spd-table-sheet th:first-child,.spd-table-sheet td:first-child{text-align:left}.spd-table-sheet thead th{color:var(--ink-soft);font-size:.85rem}.spd-sheet{overflow-x:auto}.spd-field{border:0;margin:0;padding:0}.spd-field legend{margin-bottom:8px;font-weight:700}.spd-options{flex-wrap:wrap;gap:8px;display:flex}.spd-option{border:2px solid var(--line);cursor:pointer;border-radius:12px;align-items:center;gap:8px;min-height:48px;padding:0 16px;font-weight:700;display:inline-flex}.spd-option:has(input:checked){border-color:var(--ink);background:var(--paper-2)}.spd-option input{accent-color:#1e5a47;width:22px;height:22px}.spd-welcome{max-width:640px;margin:0 auto}.spd-welcome-card{flex-direction:column;gap:14px;padding:26px;display:flex}.spd-welcome-card h2{font-size:2rem}@media (prefers-reduced-motion:reduce){.spd-card,.spd-plate,.spd-centre.is-leaving .card-box{transition:none}.spd-bid-btn:active{transform:none}}.se{--se-board:#d9b36c;--se-board-2:#e3c283;--se-edge:#7a5230;--se-ink:#5e3a1a;--se-blue:#1e3a8a;--se-blue-hi:#4f6fd1;--se-ivory:#f5ecd7;--se-water:#7fb3c9;--se-gold:#e09a12;--se-hint:#2563eb;color:var(--on-felt)}.se-loading{text-align:center;padding:40px;font-size:1.2rem}.se-row{flex-wrap:wrap;gap:14px;display:flex}.se-toolbar{justify-content:space-between;align-items:center;gap:10px;margin-bottom:12px;display:flex}.se-score{font-family:var(--font-display);flex-wrap:wrap;align-items:baseline;gap:4px 10px;font-size:1.15rem;font-weight:700;display:flex}.se-score strong{font-size:1.45rem;font-weight:800}.se-score-note{color:var(--on-felt-soft);font-weight:600}@media (width<=380px){.se-score-note{display:none}}.se-chip{cursor:pointer;background:var(--wood-dark);color:#fff6e3;white-space:nowrap;border:0;border-radius:12px;flex-shrink:0;min-height:44px;padding:0 14px;font-weight:700}.se-tray{flex-direction:column;gap:10px;padding:8px;display:flex}@media (width>=900px){.se-tray{gap:14px;padding:14px}}.se-status{min-height:104px;padding:12px 16px}.se-turn{font-size:1.4rem}.se-message{margin-top:4px;font-size:1.05rem}@media (width>=900px){.se-turn{font-size:1.7rem}.se-message{font-size:1.1rem}}.se-player{background:#0000002e;border:2px solid #0000;border-radius:14px;align-items:center;gap:10px;padding:6px 12px;display:flex}.se-player.is-active{border-color:var(--amber);background:#ffc53d1f}.se-player-badge{flex-shrink:0;width:34px;height:34px}.se-player-badge svg{width:100%;height:100%}.se-player-name{font-family:var(--font-display);font-size:1.15rem;font-weight:800}.se-player-off{align-items:center;gap:5px;margin-left:auto;font-weight:700;display:flex}.se-player-off i{border:2px dashed #fff6e359;border-radius:50%;width:14px;height:14px}.se-player-off i.is-off{background:var(--amber);border:2px solid #fff6e3}.se-player-off span{margin-left:6px}.se-board{-webkit-user-select:none;user-select:none;aspect-ratio:10/3.2;background:var(--se-board);border:4px solid var(--se-edge);border-radius:10px;grid-template-rows:repeat(3,minmax(0,1fr));grid-template-columns:repeat(10,minmax(0,1fr));width:100%;max-width:960px;margin:0 auto;display:grid;position:relative;box-shadow:0 6px #5e3a1a,0 12px 18px #00000059}.se-cell{grid-row:var(--r);grid-column:var(--c);border:0;border-right:1.5px solid var(--se-edge);border-bottom:1.5px solid var(--se-edge);min-width:0;min-height:44px;color:var(--se-ink);cursor:pointer;font:inherit;-webkit-tap-highlight-color:transparent;background:0 0;margin:0;padding:0;position:relative}.se-cell:nth-child(odd){background:var(--se-board-2)}.se-cell.se-sq-27{background:repeating-linear-gradient(170deg, var(--se-water) 0 6px, #9cc6d6 6px 11px)}.se-cell.se-sq-15,.se-cell.se-sq-26{background:#e8cd92}.se-cell:focus-visible{outline:3px solid var(--se-hint);outline-offset:-4px;z-index:3}.se-mark{pointer-events:none;opacity:.85;flex-direction:column;justify-content:center;align-items:center;line-height:1;display:flex;position:absolute;inset:0}.se-mark-sym{font-family:Georgia,Times New Roman,serif;font-size:clamp(1.1rem,3.4vw,2rem);font-weight:700}.se-mark-name{margin-top:2px;font-size:clamp(.62rem,1.4vw,.85rem);font-weight:700}.se-sq-27 .se-mark{color:#12384a}.se-path{pointer-events:none;z-index:2;position:absolute;inset:0}.se-num{color:#fff6e3;background:#5e3a1ad9;border-radius:6px;padding:0 4px;font-size:.85rem;font-weight:800;line-height:1.35;position:absolute;top:3px;left:4px}.se-arrow{color:#5e3a1a;font-size:1.15rem;font-weight:800;position:absolute;bottom:2px;right:4px}.se-arrow--tall{display:none}.se-cell.is-movable:after,.se-cell.is-selected:after,.se-cell.is-dest:after,.se-cell.is-hint:before,.se-cell.is-last:after,.se-cell.is-trail:after{content:"";pointer-events:none;z-index:2;border-radius:10px;position:absolute;inset:4px}.se-cell.is-movable:after{border:4px solid var(--se-gold);box-shadow:inset 0 0 0 2px #fff6e3}.se-cell.is-selected:after{border:5px solid var(--se-gold)}.se-cell.is-dest:after{background:#ffc53d59;border:4px dashed #8a4b00;animation:1s ease-in-out infinite alternate se-pulse}.se-cell.is-hint:before{border:4px dashed var(--se-hint);z-index:2;inset:1px}.se-cell.is-last:after{border:3px solid #5e3a1ab3}.se-cell.is-trail:after{border:3px dashed #5e3a1a8c}@keyframes se-pulse{0%{opacity:.6}to{opacity:1}}@media (hover:hover){.se-cell:hover{box-shadow:inset 0 0 0 999px #ffffff1f}}.se-pieces{pointer-events:none;z-index:1;position:absolute;inset:0}.se-piece{width:10%;height:33.3333%;left:calc((var(--c) - 1) * 10%);top:calc((var(--r) - 1) * 100% / 3);justify-content:center;align-items:center;transition:left .38s ease-in-out,top .38s ease-in-out;display:flex;position:absolute}.se-piece-svg{width:78%;max-width:64px;height:78%;max-height:64px;overflow:visible}.se-shadow{fill:#00000047}.se-cone{fill:var(--se-blue);stroke:#0c1a45;stroke-width:1.4px}.se-cone-shine{stroke:var(--se-blue-hi);stroke-width:2.4px;stroke-linecap:round;fill:none}.se-spool{fill:var(--se-ivory);stroke:#5e3a1a;stroke-width:1.6px}.se-spool-band{stroke:#b08a55;stroke-width:1.6px}@media (width<=599px){.se-board{aspect-ratio:auto;grid-template-rows:repeat(10,52px);grid-template-columns:repeat(3,minmax(0,1fr))}.se-cell{grid-row:var(--vr);grid-column:var(--vc)}.se-piece{width:33.3333%;height:10%;left:calc((var(--vc) - 1) * 100% / 3);top:calc((var(--vr) - 1) * 10%)}.se-piece-svg{width:46px;height:46px}.se-mark{flex-direction:row;justify-content:flex-start;gap:6px;padding-left:8px}.has-path .se-mark{padding-left:34px}.has-path .se-mark-name{display:none}.se-mark-sym{font-size:1.3rem}.se-mark-name{margin:0;font-size:.8rem}.se-arrow--wide{display:none}.se-arrow--tall{display:inline}}.se-throw{grid-template-columns:auto 1fr;align-items:center;gap:10px 16px;padding:12px 16px;display:grid}.se-sticks{flex-direction:column;grid-row:span 2;gap:6px;width:120px;display:flex}.se-stick{border:1.5px solid #3b2416;border-radius:6px;height:12px;display:block}.se-stick.is-light{background:var(--se-ivory)}.se-stick.is-dark{background:#7a5230;border-radius:6px 6px 9px 9px}.se-sticks.is-idle .se-stick{opacity:.45}.se-sticks.is-rolling .se-stick{opacity:1;animation:.6s ease-out se-tumble;animation-delay:calc(var(--i) * 30ms)}@keyframes se-tumble{0%{transform:translateY(-14px)rotate(-14deg)}35%{background:var(--se-ivory);transform:translateY(4px)rotate(9deg)}60%{background:#7a5230;transform:translateY(-4px)rotate(-5deg)}to{transform:translateY(0)rotate(0)}}.se-result{font-family:var(--font-display);font-size:1.2rem;font-weight:800}.se-main{justify-self:start}.se-choose{color:var(--ink-soft);align-items:center;min-height:64px;font-weight:700;display:flex}@media (width<=480px){.se-throw{text-align:center;grid-template-columns:1fr;justify-items:center}.se-sticks{grid-row:auto;width:160px}.se-main{justify-self:stretch}}.se-actions{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.se-actions .token{gap:6px;padding:0 8px;font-size:1.05rem}.se-actions .token[aria-pressed=true]{border-color:var(--amber);background:var(--alert-bg);color:var(--alert-ink)}.se-about{color:var(--on-felt-soft);text-align:center;font-size:.98rem}.se-link{cursor:pointer;min-height:44px;color:var(--on-felt);font:inherit;text-underline-offset:3px;background:0 0;border:0;padding:0 6px;font-weight:700;text-decoration:underline}.se-keys{color:var(--on-felt-soft);font-size:.88rem;display:none}@media (width>=1000px){.se-actions,.se-throw{width:100%;max-width:760px;margin:0 auto}.se-keys{text-align:center;display:block}}.se-scrim{z-index:40;background:#0a140f8c;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}@media (width>=640px){.se-scrim{align-items:center;padding:24px}}.se-dialog{border-radius:20px 20px 0 0;flex-direction:column;gap:14px;width:100%;max-width:560px;max-height:92vh;padding:22px 18px 26px;display:flex;overflow:auto;box-shadow:0 -6px 30px #00000059}@media (width>=640px){.se-dialog{border-radius:20px;padding:26px 28px}}.se-dialog h2{font-size:1.7rem}.se-final{font-family:var(--font-display);align-items:baseline;gap:20px;font-size:1.2rem;display:flex}.se-final strong{margin-left:6px;font-size:2rem}.se-rules{flex-direction:column;gap:8px;padding-left:20px;display:flex}.se-field{border:0;margin:0;padding:0}.se-field legend{margin-bottom:8px;font-weight:700}.se-options{flex-wrap:wrap;gap:8px;display:flex}.se-option{border:2px solid var(--line);cursor:pointer;border-radius:12px;align-items:center;gap:8px;min-height:48px;padding:0 16px;font-weight:700;display:inline-flex}.se-option:has(input:checked){border-color:var(--ink);background:var(--paper-2)}.se-option input{accent-color:#1e5a47;width:22px;height:22px}.se-help{margin-top:8px;font-size:.95rem}.se-welcome{max-width:640px;margin:0 auto}.se-welcome-card{flex-direction:column;gap:14px;padding:26px;display:flex}.se-welcome-card h2{font-size:2rem}@media (prefers-reduced-motion:reduce){.se-piece{transition:none}.se-sticks.is-rolling .se-stick,.se-cell.is-dest:after{animation:none}}.cr{--play:#b7791f;--peg-you:#c62828;--peg-ben:#1e5bb8;--board-wood:#b9844e;--board-edge:#8a5a33;--board-hole:#4a2e17;--board-lane:#ffffff1f;color:var(--on-felt)}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .cr{--play:var(--amber);--board-wood:#8f6238;--board-edge:#5e3d22;--board-hole:#2a190c;--peg-you:#ef5350;--peg-ben:#5c9cf5}}:root[data-theme=dark] .cr{--play:var(--amber);--board-wood:#8f6238;--board-edge:#5e3d22;--board-hole:#2a190c;--peg-you:#ef5350;--peg-ben:#5c9cf5}.cr-loading{text-align:center;padding:40px;font-size:1.2rem}.cr-row{flex-wrap:wrap;gap:14px;display:flex}.cr-toolbar{justify-content:space-between;align-items:center;gap:10px;margin-bottom:12px;display:flex}.cr-round{font-family:var(--font-display);white-space:nowrap;font-size:1.1rem;font-weight:800}.cr-round-sub{color:var(--on-felt-soft);font-weight:600}@media (width<=400px){.cr-round-sub{display:none}}@media (width>=640px){.cr-round{font-size:1.25rem}}.cr-toolbar-buttons{gap:8px;display:flex}.cr-chip{cursor:pointer;background:var(--wood-dark);color:#fff6e3;white-space:nowrap;border:0;border-radius:12px;min-height:44px;padding:0 14px;font-weight:700}.cr-tray{padding:8px}.cr-grid{grid-template-columns:minmax(0,1fr);grid-template-areas:"board""table""status""hand""log";gap:8px;display:grid}@media (width>=1000px){.cr-tray{padding:14px}.cr-grid{grid-template:"board status""table status""table log"1fr"hand log"/minmax(0,1fr) 320px;align-items:start;gap:12px}.cr-status{align-self:stretch}}.cr-board{border-radius:var(--radius);background:var(--board-wood);background-image:var(--wood-grain);border:2px solid var(--board-edge);color:#2b1d0e;grid-area:board;padding:10px 12px 8px}.cr-scores{flex-wrap:wrap;align-items:center;gap:10px 18px;margin-bottom:4px;display:flex}.cr-score{align-items:baseline;gap:8px;display:inline-flex}.cr-dot{border-radius:50%;align-self:center;width:16px;height:16px;box-shadow:0 1px 2px #00000080}.cr-score--you .cr-dot{background:var(--peg-you)}.cr-score--ben .cr-dot{background:var(--peg-ben)}.cr-score-name{font-size:1.1rem;font-weight:700}.cr-score-num{font-family:var(--font-display);font-variant-numeric:tabular-nums;font-size:2.3rem;font-weight:800;line-height:1}.cr-gain{background:#fff6e3bf;border-radius:999px;padding:1px 8px;font-size:.9rem;font-weight:700}.cr-to{opacity:.8;margin-left:auto;font-size:.9rem;font-weight:700}.cr-track{width:100%;height:auto;display:block}.cr-lane{fill:var(--board-lane)}.cr-hole{fill:var(--board-hole)}.cr-home{fill:none;stroke:var(--board-hole);stroke-width:1px}.cr-bend{fill:none;stroke:var(--board-hole);stroke-width:.8px;stroke-dasharray:1.5 1.5}.cr-peg{stroke:#fff;stroke-width:.8px;transition:transform .6s}.cr-peg--back{opacity:.55;stroke-width:.5px}@media (width>=1000px){.cr-score-num{font-size:2.6rem}}.cr-table{border-radius:var(--radius);background:var(--board);color:#fff;flex-direction:column;grid-area:table;gap:10px;padding:10px;display:flex}@media (width>=640px){.cr-table{padding:14px}}.cr-opp{background:#00000038;border:3px solid #0000;border-radius:12px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;padding:6px 10px;display:flex}.cr-opp.is-active{border-color:var(--amber);background:#ffc53d29}.cr-opp-name{flex-wrap:wrap;align-items:baseline;gap:10px;display:flex}.cr-opp-name strong{font-size:1.15rem}.cr-opp-name span{color:#d2e6dd;font-size:.95rem}.cr-badge{background:var(--amber);border-radius:999px;padding:1px 8px;font-weight:700;color:var(--amber-ink)!important}.cr-backs{--card-w:30px;--card-h:42px;display:flex}.cr-backs .cr-back-sm+.cr-back-sm{margin-left:-14px}.cr-static{cursor:default}.cr-middle{align-items:flex-start;gap:12px;display:flex}.cr-side{flex-direction:column;flex-shrink:0;gap:8px;display:flex}.cr-spot{flex-direction:column;align-items:center;gap:3px;display:flex}.cr-spot-label{color:#d2e6dd;text-align:center;white-space:nowrap;font-size:.85rem;font-weight:700}.cr-crib .cr-crib-n{background:var(--amber);min-width:24px;height:24px;color:var(--amber-ink);font-family:var(--font-body);border-radius:999px;justify-content:center;align-items:center;padding:0 6px;font-size:.9rem;display:flex;position:absolute;bottom:-6px;right:-6px}.cr-side .card-box{--card-w:calc(var(--side-w,52px));--card-h:calc(var(--side-w,52px) * 1.4);--card-rank:18px}@media (width>=640px){.cr-side{--side-w:64px}.cr-side .card-box{--card-rank:22px}}.cr-play{flex-direction:column;flex:1;align-items:center;gap:8px;min-width:0;display:flex}.cr-count{align-items:baseline;gap:10px;display:flex}.cr-count-label{color:#d2e6dd;font-size:1.2rem;font-weight:700}.cr-count-num{font-family:var(--font-display);font-variant-numeric:tabular-nums;color:#fff;font-size:3rem;font-weight:800;line-height:1}.cr-pile{min-height:calc(var(--card-h) + 22px);padding-left:calc(var(--card-w) * .55);justify-content:center;display:flex}.cr-pile-card{margin-left:calc(var(--card-w) * -.55);flex-direction:column;align-items:center;gap:2px;display:flex}.cr-pile-card.by-ben{margin-top:0}.cr-pile-card.by-you{margin-top:14px}.cr-pile-card .card-box{box-shadow:-2px 0 5px #0000004d}.cr-pile-card .card-corner{flex-direction:column;align-items:center;gap:2px;left:2px}.cr-who{color:#d2e6dd;font-size:.72rem;font-weight:700}.cr-pile.is-done{opacity:.6}.cr-pile-note{margin-left:calc(var(--card-w) * -.55);color:#d2e6dd;align-self:center;font-size:1rem}.cr-earlier{color:#d2e6dd;font-size:.85rem}.cr-status{grid-area:status;padding:12px 16px}.cr-status--turn{background:var(--alert-bg);color:var(--alert-ink)}.cr-turn{font-size:1.4rem}.cr-prompt{flex-direction:column;gap:4px;margin-top:2px;display:flex}.cr-prompt-main{font-size:1.15rem;font-weight:700}.cr-message{font-size:1.05rem}.cr-hint-text{border:2px dashed var(--hint);border-radius:10px;margin-top:8px;padding:8px 10px;font-size:1rem}@media (width>=1000px){.cr-turn{font-size:1.7rem}}.cr-hand{flex-direction:column;grid-area:hand;gap:10px;padding:12px;display:flex}@media (width>=1000px){.cr-hand{padding:16px 18px}}.cr-hand-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.cr-hand-head h2{font-size:1.2rem}.cr-legend{color:var(--ink-soft);align-items:center;gap:6px;font-size:.95rem;display:inline-flex}.cr-legend-swatch{width:14px;height:14px;box-shadow:inset 0 0 0 3px var(--play);border-radius:4px}.cr-fan{min-height:calc(var(--card-h) + 18px);justify-content:center;margin:0;padding:18px 0 0;list-style:none;display:flex}.cr-fan li{flex-shrink:0}.cr-fan li+li{margin-left:var(--offset)}.cr-fan-empty{color:var(--ink-soft);align-self:center}.cr-card{box-shadow:-2px 0 4px #0000002e}.cr-card.is-legal{box-shadow:0 0 0 3px var(--play), -2px 2px 6px #00000040;transform:translateY(-12px)}@media (hover:hover){.cr-card.is-legal:hover{transform:translateY(-16px)}}.cr-card.is-dim{cursor:default;filter:grayscale(.55)brightness(.86)}.cr-card.is-picked{transform:translateY(-18px)}.cr-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.cr-actions .cr-main{order:-1;grid-column:1/-1}@media (width>=640px){.cr-actions:has(.cr-main){grid-template-columns:1fr 1fr 2fr}.cr-actions .cr-main{order:0;grid-column:auto}}.cr-actions .token{padding:0 10px;font-size:1.05rem}.cr-actions .cr-main{font-size:1.2rem}.cr-keys{color:var(--ink-soft);font-size:.85rem;display:none}@media (width>=1000px){.cr-keys{display:block}}.cr-log{flex-direction:column;grid-area:log;gap:8px;padding:14px 16px;display:flex}.cr-log h2{font-size:1.2rem}.cr-loglist{margin:0;padding:0;list-style:none}.cr-loglist li{border-top:2px dotted var(--line);justify-content:space-between;gap:10px;padding:7px 0;font-size:.98rem;display:flex}.cr-loglist li.is-you strong{color:var(--peg-you)}.cr-loglist li strong{white-space:nowrap;font-size:1.1rem}.cr-scrim{z-index:40;background:#0a140f8c;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}@media (width>=640px){.cr-scrim{align-items:center;padding:24px}}.cr-dialog{border-radius:20px 20px 0 0;flex-direction:column;gap:12px;width:100%;max-width:560px;max-height:92vh;padding:20px 16px 24px;display:flex;overflow:auto;box-shadow:0 -6px 30px #00000059}.cr-dialog--wide{max-width:640px}@media (width>=640px){.cr-dialog{border-radius:20px;padding:26px 28px}}.cr-dialog h2{font-size:1.7rem}.cr-step{color:var(--ink-soft);font-weight:700}.cr-breakdown{flex-direction:column;gap:10px;display:flex}.cr-cardrow{gap:var(--gap,6px);flex-wrap:nowrap;align-items:flex-start;display:flex}.cr-cardrow>.card-box{flex-shrink:0}.cr-cardrow-starter{border-left:3px dotted var(--line);flex-direction:column;align-items:center;gap:2px;margin-left:8px;padding-left:10px;display:flex}.cr-cardrow-starter .cr-spot-label{color:var(--ink-soft)}.cr-lines{margin:0;padding:0;list-style:none}.cr-lines li{border-bottom:2px dotted var(--line);justify-content:space-between;gap:10px;padding:6px 0;font-size:1.05rem;display:flex}.cr-lines strong{white-space:nowrap}.cr-line-main{flex-wrap:wrap;align-items:center;gap:4px 10px;display:flex}.cr-chips{flex-wrap:wrap;gap:4px;display:inline-flex}.cr-chip-card{background:#fff;border:1px solid #0000004d;border-radius:6px;align-items:center;gap:1px;padding:1px 6px;font-family:Georgia,serif;font-size:1rem;font-weight:700;line-height:1.3;display:inline-flex}.cr-chip-card.is-red{color:#c62828}.cr-chip-card.is-black{color:#1f1f1f}.cr-chip-suit{width:.85em;height:.85em}.cr-aloud{font-size:1.2rem;font-style:italic;font-weight:700}.cr-total{font-size:1.2rem}.cr-small{font-size:.9rem}.cr-standing{font-size:1.1rem}.cr-skunk{background:var(--alert-bg);color:var(--alert-ink);border-radius:12px;padding:10px 14px;font-weight:700}.cr-table-sheet{border-collapse:collapse;width:100%;font-size:1.05rem}.cr-table-sheet th,.cr-table-sheet td{text-align:right;border-bottom:2px dotted var(--line);vertical-align:top;padding:8px}.cr-table-sheet th:first-child{text-align:left}.cr-table-sheet thead th{color:var(--ink-soft);font-size:.9rem}.cr-cell-sub{color:var(--ink-soft);white-space:nowrap;font-size:.8rem;display:block}.cr-sheet{max-height:50vh;overflow-x:auto}.cr-field{border:0;margin:0;padding:0}.cr-field legend{margin-bottom:8px;font-weight:700}.cr-options{flex-wrap:wrap;gap:8px;display:flex}.cr-option{border:2px solid var(--line);cursor:pointer;border-radius:12px;align-items:center;gap:8px;min-height:48px;padding:0 16px;font-weight:700;display:inline-flex}.cr-option:has(input:checked){border-color:var(--ink);background:var(--paper-2)}.cr-option input{accent-color:#1e5a47;width:22px;height:22px}.cr-welcome{max-width:640px;margin:0 auto}.cr-welcome-card{flex-direction:column;gap:14px;padding:26px;display:flex}.cr-welcome-card h2{font-size:2rem}@media (prefers-reduced-motion:reduce){.cr-card,.cr-peg{transition:none}}@media (width<=639px){.cr-board{padding:6px 10px}.cr-scores{flex-wrap:nowrap;gap:12px;margin-bottom:2px}.cr-score{gap:6px}.cr-score-name{font-size:1rem}.cr-score-num{font-size:2rem}.cr-gain{padding:0 6px;font-size:.8rem}.cr-to{display:none}.cr-table{gap:8px;padding:8px}.cr-opp{flex-wrap:nowrap;padding:4px 8px}.cr-opp-name{flex-wrap:nowrap;gap:8px;min-width:0}.cr-opp-name span{white-space:nowrap;font-size:.85rem}.cr-backs{--card-w:24px;--card-h:34px;flex-shrink:0}.cr-backs .cr-back-sm+.cr-back-sm{margin-left:-12px}.cr-side{--side-w:46px;gap:4px}.cr-side .card-box{--card-rank:16px}.cr-spot-label{font-size:.78rem}.cr-count-num{font-size:2.5rem}.cr-status{padding:10px 12px}.cr-turn{font-size:1.25rem}.cr-prompt-main{font-size:1.08rem}.cr-message{font-size:1rem}.cr-hand{gap:8px;padding:10px}.cr-fan{padding-top:14px}}.ba{--ba-wood:#a86b35;--ba-wood-edge:#5e3a1a;--ba-pit:#6e4420;--ba-pit-deep:#4a2c12;--ba-seed:#f1e6cb;--ba-seed-b:#ddc9a0;--ba-seed-line:#a88d5c;--ba-on-wood:#fff6e3;--ba-gold:var(--amber);--ba-hint:#bcd4ff;color:var(--on-felt);flex-direction:column;gap:10px;max-width:720px;margin:0 auto;display:flex}.ba-loading{text-align:center;padding:40px;font-size:1.2rem}.ba-row{flex-wrap:wrap;gap:14px;display:flex}.ba-toolbar{justify-content:space-between;align-items:center;gap:10px;display:flex}.ba-score{font-family:var(--font-display);flex-wrap:wrap;align-items:baseline;gap:4px 10px;font-size:1.15rem;font-weight:700;display:flex}.ba-score strong{font-size:1.45rem;font-weight:800}.ba-target{color:var(--on-felt-soft);font-weight:600}@media (width<=399px){.ba-target{display:none}}@media (width>=640px){.ba-score{font-size:1.3rem}.ba-score strong{font-size:1.7rem}}.ba-chip{cursor:pointer;background:var(--wood-dark);color:#fff6e3;white-space:nowrap;border:0;border-radius:12px;flex-shrink:0;min-height:44px;padding:0 14px;font-weight:700}.ba-status{min-height:128px;padding:12px 16px}.ba-status-top{justify-content:space-between;align-items:center;gap:10px;display:flex}.ba-turn{font-size:1.4rem}.ba-skip{cursor:pointer;border:2px solid var(--line);background:var(--paper-2);min-height:44px;color:var(--ink);border-radius:12px;flex-shrink:0;padding:0 16px;font-size:1rem;font-weight:700}.ba-step{margin-top:4px;font-size:1.02rem;font-weight:700}.ba-step:empty{display:none}.ba-message{margin-top:4px;font-size:1.02rem}.ba-message:empty{display:none}@media (width>=900px){.ba-turn{font-size:1.7rem}.ba-message,.ba-step{font-size:1.08rem}}.ba-board{background-color:var(--ba-wood);box-shadow:inset 0 2px 0 #fff3, inset 0 -3px 0 #0003, 0 6px 0 var(--ba-wood-edge), 0 12px 20px #00000059;color:var(--ba-on-wood);background-image:repeating-linear-gradient(0deg,#0000000f 0 1px,#0000 1px 13px),repeating-linear-gradient(90deg,#ffffff0a 0 2px,#0000 2px 9px);border-radius:16px;flex-direction:column;gap:3px;padding:6px 4px 0;display:flex;position:relative}@media (width>=480px){.ba-board{border-radius:22px;gap:5px;padding:12px 10px 0}}.ba-rowpits{grid-template-columns:repeat(8,minmax(0,1fr));gap:2px;display:grid}@media (width>=480px){.ba-rowpits{gap:6px}}.ba-pit{aspect-ratio:1;background:radial-gradient(circle at 50% 38%, var(--ba-pit) 0 55%, var(--ba-pit-deep) 100%);min-width:38px;min-height:38px;color:inherit;font:inherit;border:3px solid #0000;border-radius:50%;place-items:center;margin:0;padding:0;line-height:1;transition:box-shadow .12s,border-color .12s;display:grid;position:relative;box-shadow:inset 0 4px 8px #0000008c,0 1px #fff3}.ba-pit.is-house{border-radius:9px}.ba-pit--yours{cursor:pointer;-webkit-tap-highlight-color:transparent}.ba-pit--yours:focus-visible{outline-offset:1px;outline:3px solid #fff}.ba-pit.is-legal{border-color:var(--ba-gold)}.ba-pit.is-selected{box-shadow:inset 0 4px 8px #0000008c, 0 0 0 3px var(--ba-gold);border-color:#fff}.ba-pit.is-hint{outline:3px dashed var(--ba-hint);outline-offset:2px}.ba-pit.is-active{box-shadow:inset 0 4px 8px #0006, 0 0 0 3px var(--ba-on-wood)}.ba-pit.is-flash{border-color:var(--ba-gold);box-shadow:inset 0 4px 8px #0006, 0 0 0 4px var(--ba-gold);animation:.9s ease-in-out ba-flash}.ba-pit.is-flash .ba-count{color:var(--ba-gold)}@keyframes ba-flash{0%,to{filter:none}30%,70%{filter:brightness(1.5)}}.ba-pit.is-last:not(.is-legal){border-color:#fff6e373}.ba-seeds{grid-area:1/1;width:100%;height:100%;padding:6%;display:none}.ba-seed{fill:var(--ba-seed);stroke:var(--ba-seed-line);stroke-width:1.5px}.ba-seed--b{fill:var(--ba-seed-b)}.ba-count{font-family:var(--font-display);font-variant-numeric:tabular-nums;text-shadow:0 1px #00000080;grid-area:1/1;font-size:1.25rem;font-weight:800;line-height:1}@media (width>=480px){.ba-seeds{display:block}.ba-count{min-width:24px;text-shadow:none;background:#2b1d0ed9;border-radius:999px;place-self:end;margin:0 -4px -4px 0;padding:2px 5px;font-size:1rem}}@media (width>=640px){.ba-count{min-width:28px;font-size:1.15rem}}.ba-mid,.ba-foot{justify-content:center;align-items:center;min-height:56px;display:flex;position:relative}.ba-mid{border-block:2px solid var(--ba-wood-edge);background:#00000012;margin:2px 0}.ba-foot{min-height:58px}.ba-sides{color:#fff6e3d9;justify-content:space-between;width:100%;padding:0 8px;font-size:.9rem;font-weight:700;display:flex}.ba-foot-text{color:#fff6e3e6;font-size:.95rem;font-weight:700}.ba-hand{align-items:center;gap:8px;font-size:1.05rem;font-weight:700;display:flex}.ba-hand strong{font-family:var(--font-display);font-size:1.4rem}.ba-hand-seed{background:var(--ba-seed);width:14px;height:14px;box-shadow:inset 0 0 0 1.5px var(--ba-seed-line);border-radius:50%;display:inline-block}.ba-chooser{z-index:2;gap:6px;display:flex;position:absolute;top:50%;transform:translate(-50%,-50%)}.ba-dir{cursor:pointer;background:var(--amber);color:#2b1d0e;min-width:60px;min-height:50px;box-shadow:0 4px 0 var(--amber-deep), 0 6px 12px #0000004d;border:0;border-radius:14px;justify-content:center;align-items:center;gap:4px;padding:0 10px;font-size:1rem;font-weight:800;display:inline-flex}.ba-dir:active{box-shadow:0 2px 0 var(--amber-deep);transform:translateY(2px)}.ba-dir:focus-visible{outline-offset:2px;outline:3px solid #fff}.ba-dir.is-hint{outline:3px dashed var(--ba-hint);outline-offset:3px}.ba-arrow{fill:none;stroke:currentColor;stroke-width:2.8px;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.ba-ends{justify-content:space-between;align-items:center;gap:6px;width:100%;padding:0 2px;display:flex}.ba-ends-seeds{font-family:var(--font-display);align-items:center;gap:6px;font-size:1.3rem;font-weight:800;display:inline-flex}.ba-actions{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:8px;display:grid}.ba-actions .token{gap:6px;padding:0 8px;font-size:1.05rem}.ba-keys{color:var(--on-felt-soft);font-size:.88rem;display:none}@media (width>=1000px){.ba-keys{text-align:center;display:block}}.ba-about{padding:12px 16px}.ba-about summary{cursor:pointer;font-family:var(--font-display);align-items:center;min-height:32px;font-size:1.15rem;font-weight:800;display:flex}.ba-about p{margin-top:8px}.ba-about a{color:inherit;font-weight:700}.ba-scrim{z-index:40;background:#0a140f8c;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}@media (width>=640px){.ba-scrim{align-items:center;padding:24px}}.ba-dialog{border-radius:20px 20px 0 0;flex-direction:column;gap:14px;width:100%;max-width:520px;max-height:92vh;padding:22px 18px 26px;display:flex;overflow:auto;box-shadow:0 -6px 30px #00000059}@media (width>=640px){.ba-dialog{border-radius:20px;padding:26px 28px}}.ba-dialog h2{font-size:1.7rem}.ba-final{font-family:var(--font-display);gap:24px;font-size:1.2rem;display:flex}.ba-final strong{margin-left:6px;font-size:2rem}.ba-field{border:0;margin:0;padding:0}.ba-field legend{margin-bottom:8px;font-weight:700}.ba-options{flex-wrap:wrap;gap:8px;display:flex}.ba-option{border:2px solid var(--line);cursor:pointer;border-radius:12px;align-items:center;gap:8px;min-height:48px;padding:0 16px;font-weight:700;display:inline-flex}.ba-option:has(input:checked){border-color:var(--ink);background:var(--paper-2)}.ba-option input{accent-color:#1e5a47;width:22px;height:22px}.ba-help{margin-top:8px;font-size:.95rem}.ba-welcome{width:100%}.ba-welcome-card{flex-direction:column;gap:14px;padding:26px;display:flex}.ba-welcome-card h2{font-size:2rem}@media (prefers-reduced-motion:reduce){.ba-pit,.ba-dir{transition:none}.ba-pit.is-flash{animation:none}}.gr{--play:#b7791f;--meld:#1e5a47;--meld-bg:#1e5a4714;color:var(--on-felt)}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .gr{--play:var(--amber);--meld:#7fd1b0;--meld-bg:#7fd1b014}}:root[data-theme=dark] .gr{--play:var(--amber);--meld:#7fd1b0;--meld-bg:#7fd1b014}.gr-loading{text-align:center;padding:40px;font-size:1.2rem}.gr-row{flex-wrap:wrap;gap:14px;display:flex}.gr-toolbar{justify-content:space-between;align-items:center;gap:10px;margin-bottom:12px;display:flex}.gr-round{font-family:var(--font-display);white-space:nowrap;font-size:1.1rem;font-weight:800}.gr-round-sub{color:var(--on-felt-soft);font-weight:600}@media (width<=400px){.gr-round-sub{display:none}}@media (width>=640px){.gr-round{font-size:1.25rem}}.gr-toolbar-buttons{gap:8px;display:flex}.gr-chip{cursor:pointer;background:var(--wood-dark);color:#fff6e3;white-space:nowrap;border:0;border-radius:12px;min-height:44px;padding:0 14px;font-weight:700}.gr-tray{padding:8px}.gr-grid{grid-template-columns:minmax(0,1fr);grid-template-areas:"table""status""hand";gap:8px;display:grid}.gr-scores{display:none}@media (width>=1000px){.gr-tray{padding:14px}.gr-grid{grid-template:"table status""table scores""hand scores"1fr/minmax(0,1fr) 300px;align-items:start;gap:12px}.gr-scores{grid-area:scores;display:flex}}.gr-table{border-radius:var(--radius);background:var(--board);flex-direction:column;grid-area:table;align-items:center;gap:12px;padding:12px 8px 16px;display:flex}.gr-rosa{color:#fff;background:#00000038;border:3px solid #0000;border-radius:12px;flex-direction:column;align-items:center;gap:6px;width:100%;max-width:520px;padding:8px 10px;transition:border-color .2s;display:flex}.gr-rosa.is-active{border-color:var(--amber);background:#ffc53d24}.gr-rosa-head{flex-wrap:wrap;justify-content:center;align-items:baseline;gap:10px;display:flex}.gr-rosa-head strong{font-size:1.15rem}.gr-rosa-sub{color:#d2e6dd;font-size:.92rem}.gr-backs{--card-w:30px;--card-h:42px;--card-rank:12px;justify-content:center;display:flex}.gr-back{cursor:default;box-shadow:-1px 0 2px #00000040}.gr-back+.gr-back{margin-left:-16px}.gr-known{color:#d2e6dd;flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;font-size:.92rem;display:flex}.gr-piles{justify-content:center;align-items:flex-start;gap:clamp(18px,6vw,48px);display:flex}.gr-pile{flex-direction:column;align-items:center;gap:6px;display:flex}.gr-pile-label{color:#e9f2ec;font-size:1rem;font-weight:700}.gr-stock{overflow:hidden}.gr-stock-count{color:#1f1f1f;min-width:2.2em;font-family:var(--font-body);text-align:center;background:#ffffffeb;border-radius:999px;padding:3px 8px;font-size:1.05rem;font-weight:700;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.gr-stock[disabled],.gr-discard:not(.is-target){cursor:default}.gr-piles .card-face.is-target{box-shadow:0 0 0 4px var(--amber), 0 0 16px 3px #ffc53d8c}.gr-discard-empty{display:block}.gr-upcard{flex-wrap:wrap;justify-content:center;gap:12px;display:flex}.gr-upcard .token{min-height:56px;font-size:1.15rem}.is-hint-btn{outline:3px dashed var(--hint);outline-offset:3px}.gr-status{grid-area:status;padding:12px 16px}.gr-status--turn{background:var(--alert-bg);color:var(--alert-ink)}.gr-turn{font-size:1.4rem}.gr-prompt{flex-direction:column;gap:2px;margin-top:2px;display:flex}.gr-prompt-main{font-size:1.12rem;font-weight:700}.gr-message{font-size:1.02rem}@media (width>=1000px){.gr-turn{font-size:1.7rem}}.gr-hand{flex-direction:column;grid-area:hand;gap:10px;padding:12px;display:flex}@media (width>=1000px){.gr-hand{padding:16px 18px}}.gr-hand-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.gr-dw{align-items:baseline;gap:10px;display:flex}.gr-dw-label{font-size:1.1rem;font-weight:700}.gr-dw-num{font-family:var(--font-display);font-size:2.6rem;font-weight:800;line-height:1}.gr-dw-num.is-low{color:var(--meld)}.gr-sort{border:2px solid var(--line);border-radius:12px;display:inline-flex;overflow:hidden}.gr-sort-btn{min-width:56px;min-height:44px;color:var(--ink);font:inherit;cursor:pointer;background:0 0;border:0;padding:0 12px;font-weight:700}.gr-sort-btn+.gr-sort-btn{border-left:2px solid var(--line)}.gr-sort-btn[aria-pressed=true]{background:var(--ink);color:var(--paper)}.gr-groups{flex-wrap:wrap;align-items:flex-end;gap:10px 14px;display:flex}.gr-group{border:2px solid var(--meld);background:var(--meld-bg);border-radius:12px;flex-direction:column;gap:2px;max-width:100%;padding:4px 6px 6px;display:flex}.gr-group.is-dead{border:2px dashed var(--line);background:0 0}.gr-group.is-all{background:0 0;border:0;padding:0}.gr-group-label{color:var(--meld);padding-left:2px;font-size:.9rem;font-weight:700}.gr-group.is-dead .gr-group-label,.gr-group.is-all .gr-group-label{color:var(--ink-soft)}.gr-fan{margin:0;padding:14px 0 0;list-style:none;display:flex}.gr-fan li{flex-shrink:0}.gr-fan li+li{margin-left:calc(var(--step) - var(--card-w))}.gr-card{box-shadow:-2px 0 4px #0000002e}.gr-card .card-corner{flex-direction:column;align-items:center;gap:2px;left:3px}.gr-card.is-picked{transform:translateY(-14px)}.gr-card.is-new.is-picked .gr-new-tag{display:none}.gr-card.is-taken{box-shadow:0 0 0 2px var(--amber), -2px 0 4px #0000002e;cursor:not-allowed}.gr-card.is-dead{filter:brightness(.94)}.gr-card.is-new{box-shadow:0 0 0 3px var(--amber), -2px 0 4px #0000002e}.gr-new-tag{background:var(--amber);color:var(--amber-ink);font-family:var(--font-body);letter-spacing:0;border-radius:5px;padding:0 5px;font-size:.72rem;position:absolute;top:-15px;left:0}.gr-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.gr-actions .token{padding:0 10px;font-size:1.05rem}.gr-discard-btn,.gr-knock{grid-column:1/-1;min-height:60px}.gr-discard-btn{font-size:1.2rem!important}.gr-knock{background:var(--meld);color:#fff;flex-direction:column;justify-content:center;line-height:1.15;display:flex;box-shadow:0 5px #0f3a2d;font-size:1.4rem!important}.gr-knock.is-gin{background:var(--amber);color:var(--amber-ink);box-shadow:0 5px 0 var(--amber-deep)}.gr-knock-sub{font-size:.92rem;font-weight:600}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .gr-knock:not(.is-gin){background:#1e5a47}}:root[data-theme=dark] .gr-knock:not(.is-gin){background:#1e5a47}@media (width>=640px){.gr-actions{grid-template-columns:2fr 2fr 1fr 1fr}.gr-discard-btn,.gr-knock{grid-column:auto}.gr-actions .gr-discard-btn:only-of-type:not(:has(+.gr-knock)){grid-column:span 2}}.gr-keys{color:var(--ink-soft);font-size:.85rem;display:none}@media (width>=1000px){.gr-keys{display:block}}.gr-scores{flex-direction:column;gap:10px;padding:16px 18px}.gr-scores h2{font-size:1.3rem}.gr-scorelist{margin:0;padding:0;list-style:none}.gr-scorelist li{border-top:2px dotted var(--line);justify-content:space-between;align-items:center;gap:10px;padding:10px 0;display:flex}.gr-scorelist li>span:first-child{flex-direction:column;display:flex}.gr-scorelist .muted{font-size:.85rem}.gr-total{font-family:var(--font-display);font-size:1.6rem;font-weight:800}.gr-mini-row{flex-wrap:wrap;gap:3px;display:inline-flex}.gr-mini{cursor:default}.gr-mini .card-corner{top:2px;left:2px}.gr-mini .card-centre{width:calc(var(--card-w) * .42);height:calc(var(--card-w) * .42);bottom:6%}.gr-mini .card-centre--court{width:auto;height:auto;font-size:calc(var(--card-w) * .45)}.gr-mini.is-laid{box-shadow:0 0 0 3px var(--amber)}.gr-scrim{z-index:40;background:#0a140f8c;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}@media (width>=640px){.gr-scrim{align-items:center;padding:24px}}.gr-dialog{border-radius:20px 20px 0 0;flex-direction:column;gap:14px;width:100%;max-width:600px;max-height:92vh;padding:22px 16px 26px;display:flex;overflow:auto;box-shadow:0 -6px 30px #00000059}@media (width>=640px){.gr-dialog{border-radius:20px;padding:26px 28px}}.gr-dialog h2{font-size:1.7rem}.gr-reveal{background:var(--paper-2);border-radius:12px;flex-direction:column;gap:6px;padding:10px 12px;display:flex}.gr-reveal h3{font-size:1.15rem}.gr-reveal-rows{flex-direction:column;gap:6px;display:flex}.gr-reveal-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.gr-reveal-tag{min-width:5.2em;color:var(--meld);font-weight:700}.gr-reveal-tag.is-dead{color:var(--ink-soft)}.gr-laid{font-weight:700}.gr-explain{background:var(--alert-bg);color:var(--alert-ink);border-radius:12px;padding:10px 14px;font-size:1.08rem;font-weight:700}.gr-sheet{border-collapse:collapse;width:100%;font-size:1.05rem}.gr-sheet th,.gr-sheet td{text-align:right;border-bottom:2px dotted var(--line);padding:9px 8px}.gr-sheet th:first-child,.gr-sheet td:first-child{text-align:left}.gr-sheet thead th{color:var(--ink-soft);font-size:.85rem}.gr-sheet .is-you th,.gr-sheet .is-you td{font-weight:700}.gr-sheet-wrap{overflow-x:auto}.gr-field{border:0;margin:0;padding:0}.gr-field legend{margin-bottom:8px;font-weight:700}.gr-options{flex-wrap:wrap;gap:8px;display:flex}.gr-option{border:2px solid var(--line);cursor:pointer;border-radius:12px;align-items:center;gap:8px;min-height:48px;padding:0 16px;font-weight:700;display:inline-flex}.gr-option:has(input:checked){border-color:var(--ink);background:var(--paper-2)}.gr-option input{accent-color:#1e5a47;width:22px;height:22px}.gr-welcome{max-width:640px;margin:0 auto}.gr-welcome-card{flex-direction:column;gap:14px;padding:26px;display:flex}.gr-welcome-card h2{font-size:2rem}@media (prefers-reduced-motion:reduce){.gr-card,.gr-rosa{transition:none}}.fa{--fa-board:#d8b46a;--fa-board-edge:#8c6a30;--fa-ink:#3b2416;--fa-cream:#fff6e3;--fa-cream-ring:#9c7a45;--fa-dark:#2b1d0e;--fa-dark-mark:#d9b46e;--fa-gold:#b86f00;--fa-glow:#ffc53d;--fa-red:#c0392b;--fa-blue:#1d4ed8;--fa-hint:#7c2d92;color:var(--on-felt)}.fa-loading{text-align:center;padding:40px;font-size:1.2rem}.fa-row{flex-wrap:wrap;gap:14px;display:flex}.fa-toolbar{justify-content:space-between;align-items:center;gap:10px;margin-bottom:12px;display:flex}.fa-score{font-family:var(--font-display);flex-wrap:wrap;align-items:center;gap:6px 10px;margin:0;font-size:1.1rem;font-weight:700;display:flex}.fa-who{border:2px solid #0000;border-radius:999px;align-items:center;gap:6px;padding:4px 10px 4px 6px;display:inline-flex}.fa-who.is-active{border-color:var(--amber);background:#ffc53d24}.fa-who svg{width:26px;height:26px}.fa-who strong{font-size:1.35rem;font-weight:800}@media (width<=400px){.fa-score{gap:4px;font-size:1rem}.fa-who{padding:2px 8px 2px 4px}.fa-who strong{font-size:1.2rem}.fa-who svg{width:22px;height:22px}}@media (width>=640px){.fa-score{font-size:1.25rem}.fa-who strong{font-size:1.6rem}}.fa-chip{cursor:pointer;background:var(--wood-dark);color:#fff6e3;white-space:nowrap;border:0;border-radius:12px;flex-shrink:0;min-height:44px;padding:0 14px;font-weight:700}.fa-tray{flex-direction:column;gap:10px;padding:8px;display:flex}@media (width>=900px){.fa-tray{gap:14px;padding:14px}}.fa-status{min-height:104px;padding:12px 16px}.fa-turn{font-size:1.4rem}.fa-message{margin:4px 0 0;font-size:1.02rem}@media (width>=900px){.fa-turn{font-size:1.7rem}.fa-message{font-size:1.08rem}}.fa-boardwrap{justify-content:center;width:100%;display:flex}.fa-board{-webkit-user-select:none;user-select:none;touch-action:manipulation;position:relative}.fa-board--wide{aspect-ratio:9.6/5.6;width:100%;max-width:max(440px,min(860px,171.429vh - 480px))}.fa-board--upright{aspect-ratio:5.6/9.6;width:min(100%,max(250px,46vh))}.fa-svg{width:100%;height:100%;display:block;overflow:visible}.fa-wood{fill:var(--fa-board);stroke:var(--fa-board-edge);stroke-width:.1px;filter:drop-shadow(0 .08px #0000004d)}.fa-line{stroke:var(--fa-ink);stroke-width:.055px;stroke-linecap:round}.fa-line--diag{stroke-width:.04px}.fa-dot{fill:var(--fa-ink)}.fa-label text{fill:var(--fa-ink);opacity:.75;font-size:.3px;font-weight:700;font-family:var(--font-display,sans-serif);text-anchor:middle;dominant-baseline:central}.fa-piece{stroke-width:.05px}.fa-piece--you{fill:var(--fa-cream);stroke:var(--fa-ink)}.fa-piece-ring{fill:none;stroke:var(--fa-cream-ring);stroke-width:.06px}.fa-piece--hery{fill:var(--fa-dark);stroke:#120a04}.fa-piece-diamond{fill:var(--fa-dark-mark)}.fa-anim{filter:drop-shadow(0 .05px .03px #00000073)}.fa-dest{fill:#fff6e3cc;stroke:#1e5a47;stroke-width:.08px}.fa-dest.is-pending{fill:#fff6e3;stroke-width:.11px}.fa-movable{fill:none;stroke:var(--fa-gold);stroke-width:.06px;stroke-dasharray:.14 .09}.fa-selected{fill:none;stroke:var(--fa-glow);stroke-width:.11px;filter:drop-shadow(0 0 .04px #000)}.fa-last{fill:none;stroke:#3b2416a6;stroke-width:.05px;stroke-dasharray:.12 .08}.fa-trail{fill:none;stroke:#3b24168c;stroke-width:.07px;stroke-dasharray:.12 .1;stroke-linecap:round;stroke-linejoin:round}.fa-visited circle{fill:#3b24162e;stroke:var(--fa-ink);stroke-width:.04px}.fa-visited path{stroke:var(--fa-ink);stroke-width:.05px;stroke-linecap:round}.fa-hint{fill:none;stroke:var(--fa-hint);stroke-width:.1px;stroke-dasharray:.05 .09;stroke-linecap:round}.fa-take{fill:none;stroke-width:.09px}.fa-take--a{stroke:var(--fa-red)}.fa-take--w{stroke:var(--fa-blue);stroke-dasharray:.13 .08}.fa-take{transform-box:fill-box;transform-origin:50%;animation:1.1s ease-in-out infinite alternate fa-pulse}@keyframes fa-pulse{0%{transform:scale(.93)}to{transform:scale(1.05)}}.fa-anim--slide{animation:.3s ease-in-out fa-slide}@keyframes fa-slide{0%{transform:translate(var(--dx), var(--dy))}to{transform:translate(0)}}.fa-anim--gone{animation:.34s ease-in forwards fa-gone}@keyframes fa-gone{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.3)}}.fa-point{cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:0;border-radius:50%;min-width:44px;min-height:44px;margin:0;padding:0;position:absolute;transform:translate(-50%,-50%)}.fa-point:focus-visible{outline-offset:-3px;outline:3px solid #1d4ed8;box-shadow:inset 0 0 0 3px #fff}@media (hover:hover){.fa-point.is-dest:hover{background:#ffc53d40}}.fa-decide{flex-wrap:wrap;justify-content:center;align-items:center;gap:10px;display:flex}.fa-choice{text-align:left;flex:200px;justify-content:flex-start;gap:12px;min-height:60px;font-size:1.1rem}.fa-choice span:last-child{flex-direction:column;line-height:1.15;display:flex}.fa-choice small{opacity:.85;font-size:.9rem;font-weight:600}.fa-cancel{flex:none;min-height:60px}.fa-swatch{background:#fff6e3;border-radius:50%;flex-shrink:0;width:26px;height:26px}.fa-swatch--a{border:4px solid var(--fa-red)}.fa-swatch--w{border:4px dashed var(--fa-blue)}.fa-stop{flex:260px;max-width:420px}.fa-stop.is-hinted{outline-offset:4px;outline:4px dashed #fff6e3}.fa-decide-note{text-align:center;color:var(--on-felt-soft);flex:100%;margin:0;font-size:.98rem}.fa-actions{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.fa-actions .token{gap:6px;padding:0 8px;font-size:1.05rem}.fa-keys{color:var(--on-felt-soft);margin:0;font-size:.88rem;display:none}@media (width>=1000px){.fa-actions,.fa-decide{width:100%;max-width:680px;margin:0 auto}.fa-keys{text-align:center;display:block}}.fa-scrim{z-index:40;background:#0a140f8c;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}@media (width>=640px){.fa-scrim{align-items:center;padding:24px}}.fa-dialog{border-radius:20px 20px 0 0;flex-direction:column;gap:14px;width:100%;max-width:520px;max-height:92vh;padding:22px 18px 26px;display:flex;overflow:auto;box-shadow:0 -6px 30px #00000059}@media (width>=640px){.fa-dialog{border-radius:20px;padding:26px 28px}}.fa-dialog h2{font-size:1.7rem}.fa-final{font-family:var(--font-display);gap:24px;font-size:1.2rem;display:flex}.fa-final strong{margin-left:6px;font-size:2rem}.fa-field{border:0;margin:0;padding:0}.fa-field legend{margin-bottom:8px;font-weight:700}.fa-options{flex-wrap:wrap;gap:8px;display:flex}.fa-option{border:2px solid var(--line);cursor:pointer;border-radius:12px;align-items:center;gap:8px;min-height:48px;padding:0 16px;font-weight:700;display:inline-flex}.fa-option:has(input:checked){border-color:var(--ink);background:var(--paper-2)}.fa-option input{accent-color:#1e5a47;width:22px;height:22px}.fa-help{margin-top:8px;font-size:.95rem}.fa-welcome{max-width:640px;margin:0 auto}.fa-welcome-card{flex-direction:column;gap:14px;padding:26px;display:flex}.fa-welcome-card h2{font-size:2rem}@media (prefers-reduced-motion:reduce){.fa-anim--slide,.fa-anim--gone,.fa-take{animation:none}.fa-anim--gone{opacity:0}}.ws{--ws-tile-top:#f2d39b;--ws-tile-bottom:#ddb070;--ws-tile-edge:#9a6a32;--ws-tile-ink:#3a2410;--ws-slot:#fff6e3;--ws-slot-line:#c8a874;--ws-rack:#24150c;--ws-hint:#2563eb;--ws-good:#2e7d4f;--ws-good-bg:#dff2e5;--ws-shown:#6b5a45;color:var(--on-felt)}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .ws{--ws-slot:#2c251d;--ws-slot-line:#6b5640;--ws-rack:#1a0f08;--ws-hint:#8ab4ff;--ws-good:#7fd6a0;--ws-good-bg:#1f3b2a;--ws-shown:#c9b89c}}:root[data-theme=dark] .ws{--ws-slot:#2c251d;--ws-slot-line:#6b5640;--ws-rack:#1a0f08;--ws-hint:#8ab4ff;--ws-good:#7fd6a0;--ws-good-bg:#1f3b2a;--ws-shown:#c9b89c}.ws-loading{text-align:center;min-height:60vh;padding:40px;font-size:1.2rem}.ws-row{flex-wrap:wrap;gap:14px;display:flex}.ws-sr{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.ws-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 12px;margin-bottom:12px;display:flex}.ws-title{font-size:1.15rem}@media (width>=640px){.ws-title{font-size:1.35rem}}.ws-chip{cursor:pointer;background:var(--wood-dark);color:#fff6e3;white-space:nowrap;border:0;border-radius:12px;min-height:44px;padding:0 14px;font-weight:700}.ws-tray{padding:4px}@media (width<=420px){.ws-tray{margin-inline:-8px}}@media (width>=640px){.ws-tray{padding:14px}}.ws-layout{flex-direction:column;gap:10px;max-width:640px;margin:0 auto;display:flex}@media (width>=640px){.ws-layout{gap:14px}}.ws-status{min-height:2.9em;padding:10px 14px;font-size:1.05rem}@media (width>=640px){.ws-status{padding:14px 18px;font-size:1.15rem}}.ws-progress{justify-content:space-between;align-items:center;gap:10px;padding:0 4px;display:flex}.ws-dots{gap:8px;margin:0;padding:0;list-style:none;display:flex}.ws-dot{border:2px solid var(--on-felt-soft);width:34px;height:34px;color:var(--on-felt);border-radius:50%;justify-content:center;align-items:center;font-size:1rem;font-weight:800;display:inline-flex}.ws-dot.is-current{background:var(--amber);border-color:var(--amber);color:var(--amber-ink)}.ws-dot.is-solved{background:var(--ws-good-bg);border-color:var(--ws-good);color:var(--ws-good)}.ws-dot.is-revealed{color:var(--on-felt-soft);border-style:dashed}.ws-dot.is-current.is-solved,.ws-dot.is-current.is-revealed{box-shadow:0 0 0 3px var(--amber)}.ws-practice-count,.ws-length{color:var(--on-felt-soft);font-weight:700}.ws-length{white-space:nowrap;font-size:1rem}.ws-board{flex-direction:column;gap:14px;padding:6px 0 4px;display:flex;container-type:inline-size}.ws-slots{--gap:4px;--size:min(64px, calc((100cqi - (var(--n) - 1) * var(--gap)) / var(--n)));justify-content:center;gap:var(--gap);display:flex}@container (width>=480px){.ws-slots{--gap:8px}}.ws-slot{width:var(--size);height:calc(var(--size) * 1.12);cursor:pointer;background:var(--ws-slot);color:var(--ink);border:2px dashed var(--ws-slot-line);font-family:var(--font-display);font-weight:800;font-size:calc(var(--size) * .56);-webkit-tap-highlight-color:transparent;border-radius:10px;flex:none;justify-content:center;align-items:center;padding:0;line-height:1;display:inline-flex}.ws-slot.is-filled{color:var(--ws-tile-ink);background:linear-gradient(180deg, var(--ws-tile-top), var(--ws-tile-bottom));box-shadow:inset 0 -3px 0 #00000024, 0 3px 0 var(--ws-tile-edge);border:0}.ws-slot[aria-disabled=true]{cursor:default}.ws-slot.is-locked{box-shadow:inset 0 0 0 3px var(--ws-hint), 0 3px 0 var(--ws-tile-edge);position:relative}.ws-slot.is-locked:after{content:"";background:var(--ws-hint);border-radius:50%;width:7px;height:7px;position:absolute;top:5px;right:5px}.ws-slots.is-solved .ws-slot{color:#123821;animation:ws-hop .6s ease-out var(--ws-wave,0s) both;background:linear-gradient(#bfe8cb,#93d3a8);box-shadow:inset 0 -3px #0000001f,0 3px #2e7d4f}.ws-slots.is-revealed .ws-slot{opacity:.8;box-shadow:inset 0 -3px 0 #00000024, 0 3px 0 var(--ws-tile-edge)}.ws-slots.is-revealed .ws-slot:after{display:none}.ws-slots.is-wrong{animation:.4s ease-in-out ws-shake}@keyframes ws-hop{0%{transform:none}40%{transform:translateY(-10px)}to{transform:none}}@keyframes ws-shake{0%,to{transform:none}25%{transform:translate(-6px)}75%{transform:translate(6px)}}.ws-rack{--gap:8px;--size:min(72px, calc((100cqi - 20px - (var(--n) - 1) * var(--gap)) / var(--n)));justify-content:center;gap:var(--gap);background:var(--ws-rack);border-radius:14px;flex-wrap:wrap;padding:10px;display:flex;box-shadow:inset 0 3px 6px #00000080}@container (width<=559px){.ws-rack{--size:min(72px, calc((100cqi - 20px - (var(--cols) - 1) * var(--gap)) / var(--cols)));max-width:calc(var(--cols) * var(--size) + (var(--cols) - 1) * var(--gap) + 20px);margin:0 auto}}.ws-tile,.ws-socket{width:var(--size);height:var(--size);border-radius:12px;flex:none;justify-content:center;align-items:center;display:inline-flex}.ws-tile{cursor:pointer;color:var(--ws-tile-ink);background:linear-gradient(180deg, var(--ws-tile-top), var(--ws-tile-bottom));box-shadow:inset 0 -4px 0 #00000024, 0 4px 0 var(--ws-tile-edge);font-family:var(--font-display);font-weight:800;font-size:calc(var(--size) * .55);-webkit-tap-highlight-color:transparent;border:0;padding:0;line-height:1;transition:transform 80ms,box-shadow 80ms}.ws-tile:active{box-shadow:inset 0 -4px 0 #00000024, 0 1px 0 var(--ws-tile-edge);transform:translateY(3px)}.ws-socket{background:#ffffff0f;box-shadow:inset 0 2px 4px #00000080}.ws-done{flex-direction:column;align-items:center;gap:12px;padding:4px 0;display:flex}.ws-done-word{font-family:var(--font-display);font-size:1.4rem;font-weight:800}.ws-done-note{font-family:var(--font-body);color:var(--on-felt-soft);font-size:1rem;font-weight:700}.ws-controls{flex-direction:column;gap:10px;padding:10px;display:flex}@media (width>=640px){.ws-controls{padding:14px}}.ws-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}@media (width>=520px){.ws-actions{grid-template-columns:repeat(4,minmax(0,1fr))}}.ws-actions .token{white-space:nowrap;gap:6px;min-height:54px;padding:0 6px;font-size:1.05rem}.ws-extra{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.ws-extra .token{min-height:54px}.ws-link{cursor:pointer;min-height:48px;color:var(--ink-soft);text-underline-offset:3px;background:0 0;border:0;margin-left:auto;padding:0 6px;font-size:1rem;font-weight:700;text-decoration:underline}.ws-keys{color:var(--ink-soft);font-size:.85rem;display:none}@media (width>=1000px){.ws-keys{display:block}}.ws-scrim{z-index:40;background:#0a140f8c;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}@media (width>=640px){.ws-scrim{align-items:center;padding:24px}}.ws-dialog{border-radius:20px 20px 0 0;flex-direction:column;gap:14px;width:100%;max-width:520px;max-height:92vh;padding:22px 18px 26px;display:flex;overflow:auto;box-shadow:0 -6px 30px #00000059}@media (width>=640px){.ws-dialog{border-radius:20px;padding:26px 28px}}.ws-dialog h2{font-size:1.7rem}.ws-found{font-size:1.15rem}.ws-streak{font-size:1.1rem}.ws-field{border:0;margin:0;padding:0}.ws-field legend{margin-bottom:8px;font-weight:700}.ws-options{flex-wrap:wrap;gap:8px;display:flex}.ws-options--stack{flex-direction:column}.ws-option{border:2px solid var(--line);cursor:pointer;border-radius:12px;align-items:center;gap:10px;min-height:52px;padding:6px 16px;font-weight:700;display:flex}.ws-option:has(input:checked){border-color:var(--ink);background:var(--paper-2)}.ws-option-note{color:var(--ink-soft);font-size:.9rem;font-weight:400;display:block}.ws-option input{accent-color:#1e5a47;flex-shrink:0;width:22px;height:22px}.ws-celebrate{justify-content:center;gap:6px;display:flex}.ws-celebrate span{background:linear-gradient(180deg, var(--ws-tile-top), var(--ws-tile-bottom));width:36px;height:36px;color:var(--ws-tile-ink);box-shadow:0 3px 0 var(--ws-tile-edge);font-family:var(--font-display);animation:ws-pop .7s ease-out var(--ws-wave,0s) both;border-radius:8px;justify-content:center;align-items:center;font-size:1.2rem;font-weight:800;display:inline-flex}@keyframes ws-pop{0%{opacity:0;transform:translateY(10px)}60%{opacity:1;transform:translateY(-6px)}to{opacity:1;transform:none}}.ws-welcome{max-width:640px;margin:0 auto}.ws-welcome-card{flex-direction:column;gap:14px;padding:26px;display:flex}.ws-welcome-card h2{font-size:2rem}@media (prefers-reduced-motion:reduce){.ws-slots.is-solved .ws-slot,.ws-slots.is-wrong,.ws-celebrate span{animation:none}.ws-tile{transition:none}}@media (width<=380px){.ws-actions .token svg{display:none}}.wg{--wg-empty:#fff6e3;--wg-empty-line:#c8a874;--wg-typed-line:#6b4a24;--wg-correct:#2e7d4f;--wg-correct-ink:#fff;--wg-present:#e8b33c;--wg-present-ink:#2b1d0e;--wg-absent:#6f6458;--wg-absent-ink:#fff;--wg-hint:#2563eb;--wg-key:#f3e6cc;--wg-key-ink:#2b1d0e;--wg-key-edge:#b99b6c;color:var(--on-felt)}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .wg{--wg-empty:#2c251d;--wg-empty-line:#6b5640;--wg-typed-line:#e6d3b3;--wg-correct:#3f9a65;--wg-present:#e0ac34;--wg-absent:#4f473f;--wg-hint:#8ab4ff;--wg-key:#3a3027;--wg-key-ink:#f3e9d6;--wg-key-edge:#1e1812}}:root[data-theme=dark] .wg{--wg-empty:#2c251d;--wg-empty-line:#6b5640;--wg-typed-line:#e6d3b3;--wg-correct:#3f9a65;--wg-present:#e0ac34;--wg-absent:#4f473f;--wg-hint:#8ab4ff;--wg-key:#3a3027;--wg-key-ink:#f3e9d6;--wg-key-edge:#1e1812}.wg-loading{text-align:center;min-height:60vh;padding:40px;font-size:1.2rem}.wg-row{flex-wrap:wrap;gap:14px;display:flex}.wg-sr{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.wg-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 12px;margin-bottom:12px;display:flex}.wg-title{font-size:1.15rem}@media (width>=640px){.wg-title{font-size:1.35rem}}.wg-chip{cursor:pointer;background:var(--wood-dark);color:#fff6e3;white-space:nowrap;border:0;border-radius:12px;min-height:44px;padding:0 14px;font-weight:700}.wg-tray{padding:4px}@media (width<=420px){.wg-tray{margin-inline:-8px}}@media (width>=640px){.wg-tray{padding:14px}}.wg-layout{flex-direction:column;gap:10px;max-width:560px;margin:0 auto;display:flex}@media (width>=640px){.wg-layout{gap:14px}}.wg-status{min-height:2.9em;padding:10px 14px;font-size:1.05rem}@media (width>=640px){.wg-status{padding:14px 18px;font-size:1.15rem}}.wg-board-wrap{container-type:inline-size}.wg-board{--gap:6px;--size:max(40px, min(62px, calc((100cqi - 4 * var(--gap)) / 5), calc((100dvh - 500px) / 6)));align-items:center;gap:var(--gap);flex-direction:column;margin:0;padding:2px 0;list-style:none;display:flex}.wg-line{gap:var(--gap);display:flex}.wg-tile{width:var(--size);height:var(--size);background:var(--wg-empty);color:var(--ink);border:2px solid var(--wg-empty-line);font-family:var(--font-display);font-weight:800;font-size:calc(var(--size) * .54);border-radius:10px;justify-content:center;align-items:center;line-height:1;display:inline-flex;position:relative}.wg-line.is-empty .wg-tile{opacity:.7}.wg-line.is-current .wg-tile{border-style:dashed}.wg-line .wg-tile.is-typed{border:3px solid var(--wg-typed-line);animation:.12s ease-out wg-pop}.wg-tile.is-cursor{box-shadow:0 0 0 3px var(--amber)}.wg-tile.is-hint{color:var(--wg-hint);border-style:solid;border-color:var(--wg-hint)}.wg-tile.is-hint:after{content:"";background:var(--wg-hint);border-radius:50%;width:7px;height:7px;position:absolute;top:5px;right:5px}.wg-tile.is-correct,.wg-tile.is-present,.wg-tile.is-absent{border:0}.wg-tile.is-correct{background:var(--wg-correct);color:var(--wg-correct-ink)}.wg-tile.is-present{background:var(--wg-present);color:var(--wg-present-ink)}.wg-tile.is-absent{background:var(--wg-absent);color:var(--wg-absent-ink)}.wg-line.is-reveal .wg-tile{animation:wg-turn .45s ease-out calc(var(--wg-i,0) * .14s) both}.wg-line.is-wrong{animation:.4s ease-in-out wg-shake}@keyframes wg-pop{0%{transform:scale(.9)}to{transform:none}}@keyframes wg-turn{0%{transform:rotateX(90deg)}to{transform:none}}@keyframes wg-shake{0%,to{transform:none}25%{transform:translate(-6px)}75%{transform:translate(6px)}}.wg-glyph{background:currentColor;display:block;position:absolute;top:5px;right:5px}.wg-glyph.is-correct{border-radius:1px;width:9px;height:9px}.wg-glyph.is-present{border-radius:50%;width:10px;height:10px}.wg-glyph.is-absent{border-radius:2px;width:11px;height:3px;top:8px}.wg-legend{color:var(--on-felt-soft);flex-wrap:wrap;justify-content:center;gap:6px 16px;margin:0;padding:0;font-size:.95rem;font-weight:700;list-style:none;display:flex}.wg-legend li{align-items:center;gap:6px;display:inline-flex}.wg-legend-tile{border-radius:6px;width:24px;height:24px;display:inline-block;position:relative}.wg-legend-tile .wg-glyph{top:50%;right:50%;transform:translate(50%,-50%)}.wg-legend-tile.is-correct{background:var(--wg-correct);color:var(--wg-correct-ink)}.wg-legend-tile.is-present{background:var(--wg-present);color:var(--wg-present-ink)}.wg-legend-tile.is-absent{background:var(--wg-absent);color:var(--wg-absent-ink)}.wg-tools{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.wg-tools .token{gap:6px;min-height:50px;padding:0 16px}.wg-tools-note{font-weight:400}.wg-left{color:var(--on-felt-soft);font-weight:700}.wg-keyboard{user-select:none;flex-direction:column;gap:7px;padding:8px 2px;display:flex}.wg-keyrow{justify-content:center;gap:5px;display:flex}.wg-keyrow:nth-child(2){padding-inline:4.5%}.wg-key{cursor:pointer;background:var(--wg-key);min-width:0;max-width:54px;min-height:58px;color:var(--wg-key-ink);box-shadow:0 3px 0 var(--wg-key-edge);font-family:var(--font-display);-webkit-tap-highlight-color:transparent;touch-action:manipulation;border:0;border-radius:9px;flex:1 1 0;justify-content:center;align-items:center;gap:4px;padding:0;font-size:1.3rem;font-weight:800;display:inline-flex;position:relative}.wg-key:active{box-shadow:0 1px 0 var(--wg-key-edge);transform:translateY(2px)}.wg-key--wide{max-width:92px;font-size:1.05rem;font-family:var(--font-body);background:var(--amber);color:var(--amber-ink);box-shadow:0 3px 0 var(--amber-deep);flex-grow:1.7}.wg-key.is-correct{background:var(--wg-correct);color:var(--wg-correct-ink)}.wg-key.is-present{background:var(--wg-present);color:var(--wg-present-ink)}.wg-key.is-absent{background:var(--wg-absent);color:var(--wg-absent-ink)}.wg-key .wg-glyph{transform-origin:100% 0;top:4px;right:4px;transform:scale(.75)}.wg-key .wg-glyph.is-absent{top:6px}@media (width>=520px){.wg-keyboard{gap:8px}.wg-keyrow{gap:7px}.wg-key{min-height:62px;font-size:1.4rem}}@media (width<=380px){.wg-keyrow{gap:4px}.wg-key{font-size:1.15rem}.wg-key-text{display:none}}.wg-keys{color:var(--on-felt-soft);text-align:center;font-size:.85rem;display:none}@media (width>=1000px){.wg-keys{display:block}}.wg-done{text-align:center;flex-direction:column;align-items:center;gap:14px;padding:18px;display:flex}.wg-done-word{font-size:1.3rem}.wg-done-word strong{font-family:var(--font-display);letter-spacing:.08em}.wg-done .wg-row{justify-content:center}.wg-scrim{z-index:40;background:#0a140f8c;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}@media (width>=640px){.wg-scrim{align-items:center;padding:24px}}.wg-dialog{border-radius:20px 20px 0 0;flex-direction:column;gap:14px;width:100%;max-width:520px;max-height:92vh;padding:22px 18px 26px;display:flex;overflow:auto;box-shadow:0 -6px 30px #00000059}@media (width>=640px){.wg-dialog{border-radius:20px;padding:26px 28px}}.wg-dialog h2{font-size:1.7rem}.wg-result{font-size:1.15rem}.wg-streak{font-size:1.1rem}.wg-answer{justify-content:center;gap:6px;display:flex}.wg-answer span{background:var(--wg-absent);width:44px;height:44px;color:var(--wg-absent-ink);font-family:var(--font-display);animation:wg-rise .6s ease-out calc(var(--wg-i,0) * 90ms) both;border-radius:8px;justify-content:center;align-items:center;font-size:1.4rem;font-weight:800;display:inline-flex}.wg-answer span.is-correct{background:var(--wg-correct);color:var(--wg-correct-ink)}@keyframes wg-rise{0%{opacity:0;transform:translateY(10px)}60%{opacity:1;transform:translateY(-5px)}to{opacity:1;transform:none}}.wg-summary{flex-direction:column;align-items:center;gap:4px;display:flex}.wg-summary-row{gap:4px;display:flex}.wg-mini{border-radius:5px;width:26px;height:26px;position:relative}.wg-mini .wg-glyph{top:50%;right:50%;transform:translate(50%,-50%)}.wg-mini.is-correct{background:var(--wg-correct);color:var(--wg-correct-ink)}.wg-mini.is-present{background:var(--wg-present);color:var(--wg-present-ink)}.wg-mini.is-absent{background:var(--wg-absent);color:var(--wg-absent-ink)}.wg-field{border:0;margin:0;padding:0}.wg-field legend{margin-bottom:8px;font-weight:700}.wg-options{flex-direction:column;gap:8px;display:flex}.wg-option{border:2px solid var(--line);cursor:pointer;border-radius:12px;align-items:center;gap:10px;min-height:52px;padding:6px 16px;font-weight:700;display:flex}.wg-option:has(input:checked){border-color:var(--ink);background:var(--paper-2)}.wg-option-note{color:var(--ink-soft);font-size:.9rem;font-weight:400;display:block}.wg-option input{accent-color:#1e5a47;flex-shrink:0;width:22px;height:22px}.wg-welcome{max-width:640px;margin:0 auto}.wg-welcome-card{flex-direction:column;gap:14px;padding:26px;display:flex}.wg-welcome-card h2{font-size:2rem}@media (prefers-reduced-motion:reduce){.wg-tile.is-typed,.wg-line.is-reveal .wg-tile,.wg-line.is-wrong,.wg-answer span{animation:none}.wg-key:active{transform:none}}.wsg{--wsg-band-0:#ffd166;--wsg-band-1:#8fd0f5;--wsg-band-2:#a8dd8f;--wsg-band-3:#f7a3c1;--wsg-band-4:#c6b0f2;--wsg-band-5:#ffb07a;--wsg-band-6:#7fdcc8;--wsg-band-7:#e6cf6f;--wsg-band-alpha:.6;--wsg-shown:#8a7a63;--wsg-grid-ink:var(--ink);color:var(--on-felt)}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .wsg{--wsg-band-0:#b8902a;--wsg-band-1:#2f7fb0;--wsg-band-2:#4f8f3a;--wsg-band-3:#a8466c;--wsg-band-4:#6f56b0;--wsg-band-5:#b0602a;--wsg-band-6:#2f9580;--wsg-band-7:#93822a;--wsg-band-alpha:.75;--wsg-shown:#a8977c}}:root[data-theme=dark] .wsg{--wsg-band-0:#b8902a;--wsg-band-1:#2f7fb0;--wsg-band-2:#4f8f3a;--wsg-band-3:#a8466c;--wsg-band-4:#6f56b0;--wsg-band-5:#b0602a;--wsg-band-6:#2f9580;--wsg-band-7:#93822a;--wsg-band-alpha:.75;--wsg-shown:#a8977c}.wsg-loading{text-align:center;min-height:60vh;padding:40px;font-size:1.2rem}.wsg-row{flex-wrap:wrap;gap:14px;display:flex}.wsg-sr{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.wsg-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 12px;margin-bottom:12px;display:flex}.wsg-title{font-size:1.15rem}@media (width>=640px){.wsg-title{font-size:1.35rem}}.wsg-chip{cursor:pointer;background:var(--wood-dark);color:#fff6e3;white-space:nowrap;border:0;border-radius:12px;min-height:44px;padding:0 14px;font-weight:700}.wsg-tray{padding:4px}@media (width<=420px){.wsg-tray{margin-inline:-8px}}@media (width>=640px){.wsg-tray{padding:14px}}.wsg-layout{grid-template-columns:minmax(0,1fr);gap:10px;max-width:640px;margin:0 auto;display:grid}@media (width>=900px){.wsg-layout{grid-template-columns:minmax(0,620px) minmax(260px,320px);justify-content:center;align-items:start;gap:14px;max-width:980px}.wsg-status{grid-column:1/-1}}.wsg-status{min-height:calc(4.35em + 20px);margin:0;padding:10px 14px;font-size:1.05rem;line-height:1.45}@media (width>=900px){.wsg-status{min-height:calc(2.9em + 28px)}}@media (width>=640px){.wsg-status{padding:14px 18px;font-size:1.15rem}}.wsg-board{width:100%;container-type:inline-size}@media (width>=900px){.wsg-board{justify-self:center;max-width:max(440px,100svh - 230px)}}.wsg-grid{aspect-ratio:1;grid-template-rows:repeat(var(--n), minmax(0, 1fr));background:var(--paper);width:100%;color:var(--wsg-grid-ink);box-shadow:inset 0 0 0 2px var(--line);touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent;cursor:pointer;border-radius:12px;display:grid;position:relative}.wsg-grid:focus{outline:none}.wsg-grid.is-keyboard:focus-visible{outline:3px solid var(--amber);outline-offset:3px}.wsg-grid.is-done{cursor:default}.wsg-grid.is-miss{animation:.4s ease-in-out wsg-shake}.wsg-line{z-index:1;grid-template-columns:repeat(var(--n), minmax(0, 1fr));display:grid;position:relative}.wsg-cell{min-width:0;font-family:var(--font-display);font-weight:700;line-height:1;font-size:max(13px, calc(100cqi / var(--n) * .6));justify-content:center;align-items:center;display:flex}.wsg-marks{z-index:0;pointer-events:none;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.wsg-band{stroke-width:.8px;stroke-linecap:round;opacity:var(--wsg-band-alpha)}.wsg-shown{stroke:var(--wsg-shown);stroke-width:.8px;stroke-linecap:round;opacity:.35}.wsg-preview{stroke:var(--amber);stroke-width:.84px;stroke-linecap:round;opacity:.7}.wsg-pending{fill:var(--amber);fill-opacity:.75;stroke:var(--amber-deep);stroke-width:.08px}.wsg-hint-ring{fill:none;stroke:var(--hint);stroke-width:.1px;stroke-dasharray:.22 .1;transform-box:fill-box;transform-origin:50%;animation:1.6s ease-in-out infinite wsg-pulse}.wsg-cursor{fill:none;stroke:var(--ink);stroke-width:.07px}@keyframes wsg-pulse{0%,to{transform:scale(1)}50%{transform:scale(.86)}}@keyframes wsg-shake{0%,to{transform:none}25%{transform:translate(-5px)}75%{transform:translate(5px)}}.wsg-side{flex-direction:column;gap:12px;padding:14px;display:flex}.wsg-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:4px 12px;display:flex}.wsg-theme{margin:0;font-size:1.3rem}.wsg-count{color:var(--ink-soft);margin:0;font-weight:700}.wsg-words{grid-template-columns:repeat(auto-fill,minmax(124px,1fr));gap:4px 10px;margin:0;padding:0;list-style:none;display:grid}@media (width>=900px){.wsg-words{grid-template-columns:repeat(2,minmax(0,1fr))}}.wsg-word{min-height:36px;font-family:var(--font-display);letter-spacing:.03em;border-radius:8px;align-items:center;gap:6px;padding:2px 8px 2px 4px;font-size:1.08rem;font-weight:700;display:flex}.wsg-tick{text-align:center;flex:0 0 1.1em;font-weight:800}.wsg-word.is-found{background:color-mix(in srgb, var(--band) 45%, transparent);color:var(--ink-soft)}.wsg-word.is-found .wsg-word-text{text-decoration:line-through 2px}.wsg-word.is-shown{color:var(--ink-soft);font-style:italic}.wsg-word.is-hinted .wsg-tick{color:var(--hint)}.wsg-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.wsg-actions .token{gap:6px;min-height:54px;padding:0 18px}.wsg-link{cursor:pointer;min-height:48px;color:var(--ink-soft);text-underline-offset:3px;background:0 0;border:0;margin-left:auto;padding:0 6px;font-size:1rem;font-weight:700;text-decoration:underline}.wsg-keys{color:var(--ink-soft);margin:0;font-size:.85rem;display:none}@media (width>=1000px){.wsg-keys{display:block}}.wsg-scrim{z-index:40;background:#0a140f8c;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}@media (width>=640px){.wsg-scrim{align-items:center;padding:24px}}.wsg-dialog{border-radius:20px 20px 0 0;flex-direction:column;gap:14px;width:100%;max-width:520px;max-height:92vh;padding:22px 18px 26px;display:flex;overflow:auto;box-shadow:0 -6px 30px #00000059}@media (width>=640px){.wsg-dialog{border-radius:20px;padding:26px 28px}}.wsg-dialog h2{font-size:1.7rem}.wsg-found{font-size:1.15rem}.wsg-streak{font-size:1.1rem}.wsg-field{border:0;margin:0;padding:0}.wsg-field legend,.wsg-select-label{margin-bottom:8px;font-weight:700;display:block}.wsg-options{flex-direction:column;gap:8px;display:flex}.wsg-option{border:2px solid var(--line);cursor:pointer;border-radius:12px;align-items:center;gap:10px;min-height:52px;padding:6px 16px;font-weight:700;display:flex}.wsg-option:has(input:checked){border-color:var(--ink);background:var(--paper-2)}.wsg-option-note{color:var(--ink-soft);font-size:.9rem;font-weight:400;display:block}.wsg-option input{accent-color:#1e5a47;flex-shrink:0;width:22px;height:22px}.wsg-select select{border:2px solid var(--line);background:var(--paper);width:100%;min-height:52px;color:var(--ink);font:inherit;border-radius:12px;padding:0 12px;font-size:1.05rem}.wsg-celebrate{justify-content:center;gap:6px;display:flex}.wsg-celebrate span{background:var(--wsg-band-0);color:#2b1d0e;width:38px;height:38px;font-family:var(--font-display);animation:wsg-pop .7s ease-out var(--wsg-wave,0s) both;border-radius:8px;justify-content:center;align-items:center;font-size:1.2rem;font-weight:800;display:inline-flex}.wsg-celebrate span:nth-child(2n){background:var(--wsg-band-1)}.wsg-celebrate span:nth-child(3n){background:var(--wsg-band-2)}@keyframes wsg-pop{0%{opacity:0;transform:translateY(10px)}60%{opacity:1;transform:translateY(-6px)}to{opacity:1;transform:none}}.wsg-welcome{max-width:640px;margin:0 auto}.wsg-welcome-card{flex-direction:column;gap:14px;padding:26px;display:flex}.wsg-welcome-card h2{font-size:2rem}@media (prefers-reduced-motion:reduce){.wsg-grid.is-miss,.wsg-hint-ring,.wsg-celebrate span{animation:none}}.wl{--wl-tile-top:#f2d39b;--wl-tile-bottom:#ddb070;--wl-tile-edge:#9a6a32;--wl-tile-ink:#3a2410;--wl-match:#2e7d4f;--wl-match-bg:#dff2e5;--wl-goal-top:#bfe8cb;--wl-goal-bottom:#93d3a8;--wl-goal-ink:#123821;--wl-rung:#fff6e3;--wl-rung-ink:#2b1d0e;--wl-hint:#2563eb;--wl-rack:#24150c;color:var(--on-felt)}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .wl{--wl-match:#7fd6a0;--wl-match-bg:#1f3b2a;--wl-rung:#2c251d;--wl-rung-ink:#f3e9d6;--wl-hint:#8ab4ff;--wl-rack:#1a0f08}}:root[data-theme=dark] .wl{--wl-match:#7fd6a0;--wl-match-bg:#1f3b2a;--wl-rung:#2c251d;--wl-rung-ink:#f3e9d6;--wl-hint:#8ab4ff;--wl-rack:#1a0f08}.wl-loading{text-align:center;min-height:60vh;padding:40px;font-size:1.2rem}.wl-row{flex-wrap:wrap;gap:14px;display:flex}.wl-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 12px;margin-bottom:12px;display:flex}.wl-title{font-size:1.15rem}@media (width>=640px){.wl-title{font-size:1.35rem}}.wl-chip{cursor:pointer;background:var(--wood-dark);color:#fff6e3;white-space:nowrap;border:0;border-radius:12px;min-height:44px;padding:0 14px;font-weight:700}.wl-tray{padding:4px}@media (width<=420px){.wl-tray{margin-inline:-8px}}@media (width>=640px){.wl-tray{padding:14px}}.wl-layout{flex-direction:column;gap:12px;max-width:720px;margin:0 auto;display:flex;container:wl/inline-size}@media (width>=640px){.wl-layout{gap:16px}}.wl-status{min-height:2.9em;padding:10px 14px;font-size:1.05rem}@media (width>=640px){.wl-status{padding:14px 18px;font-size:1.15rem}}.wl-score{flex-wrap:wrap;align-items:center;gap:8px 10px;padding:0 4px;display:flex}.wl-badge{border:2px solid var(--on-felt-soft);min-height:40px;font-family:var(--font-display);border-radius:999px;align-items:baseline;gap:6px;padding:6px 14px;font-size:1.25rem;font-weight:800;display:inline-flex}.wl-badge-label{font-family:var(--font-body);color:var(--on-felt-soft);font-size:.95rem;font-weight:700}.wl-badge.is-over{border-style:dashed}.wl-solved-count{color:var(--on-felt-soft);margin-left:auto;font-weight:700}.wl-board{flex-direction:column;gap:14px;display:flex;container-type:inline-size}.wl-trail{flex-wrap:wrap;gap:6px 4px;margin:0;padding:0 2px;list-style:none;display:flex}.wl-rung{align-items:center;gap:4px;display:inline-flex}.wl-rung+.wl-rung:before{content:"›";color:var(--on-felt-soft);padding-right:2px;font-size:1.3rem;font-weight:800}.wl-rung-label{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.wl-rung-word{background:var(--wl-rung);color:var(--wl-rung-ink);font-family:var(--font-display);letter-spacing:.06em;border-radius:8px;padding:4px 10px;font-size:1.05rem;font-weight:800;display:inline-block}.wl-rung.is-start .wl-rung-word{box-shadow:inset 0 0 0 2px var(--amber-deep)}.wl-rung.is-hinted .wl-rung-word{box-shadow:inset 0 0 0 2px var(--wl-hint);position:relative}.wl-rung.is-hinted .wl-rung-word:after{content:"";background:var(--wl-hint);border-radius:50%;width:6px;height:6px;position:absolute;top:3px;right:3px}.wl-rung.is-current .wl-rung-word{background:var(--amber);color:var(--amber-ink)}.wl-caption{color:var(--on-felt-soft);text-align:center;margin:0 0 6px;font-weight:700}.wl-word{--gap:8px;--size:min(76px, calc((100cqi - (var(--n) - 1) * var(--gap)) / var(--n)));justify-content:center;gap:var(--gap);display:flex}.wl-slot{width:var(--size);height:calc(var(--size) * 1.1);cursor:pointer;color:var(--wl-tile-ink);background:linear-gradient(180deg, var(--wl-tile-top), var(--wl-tile-bottom));box-shadow:inset 0 -4px 0 #00000024, 0 4px 0 var(--wl-tile-edge);font-family:var(--font-display);font-weight:800;font-size:calc(var(--size) * .56);-webkit-tap-highlight-color:transparent;border:0;border-radius:12px;flex:none;justify-content:center;align-items:center;padding:0;line-height:1;display:inline-flex;position:relative}.wl-slot.is-match:after{content:"";background:var(--wl-match);border-radius:3px;height:5px;position:absolute;bottom:7px;left:18%;right:18%}.wl-slot.is-chosen{box-shadow:0 0 0 4px var(--amber), inset 0 -4px 0 #00000024, 0 10px 0 var(--wl-tile-edge);transform:translateY(-6px)}.wl-slot.is-chosen:before{content:"▼";color:var(--amber);font-size:16px;position:absolute;top:-30px;left:50%;transform:translate(-50%)}.wl-slot[aria-disabled=true]{cursor:default}.wl-word.is-solved .wl-slot{background:linear-gradient(180deg, var(--wl-goal-top), var(--wl-goal-bottom));color:var(--wl-goal-ink);animation:wl-hop .6s ease-out var(--wl-wave,0s) both;box-shadow:inset 0 -4px #0000001f,0 4px #2e7d4f}.wl-word.is-solved .wl-slot:after{display:none}.wl-word.is-wrong{animation:.4s ease-in-out wl-shake}.wl-current .wl-caption{margin-bottom:34px}@keyframes wl-hop{0%{transform:none}40%{transform:translateY(-10px)}to{transform:none}}@keyframes wl-shake{0%,to{transform:none}25%{transform:translate(-6px)}75%{transform:translate(6px)}}.wl-goal{border:2px dashed var(--on-felt-soft);background:#0000002e;border-radius:14px;flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;padding:10px 12px;display:flex}.wl-goal .wl-caption{margin:0;font-size:1.05rem}.wl-goal-word{gap:6px;display:inline-flex}.wl-goal-tile{background:linear-gradient(180deg, var(--wl-goal-top), var(--wl-goal-bottom));width:44px;height:46px;color:var(--wl-goal-ink);font-family:var(--font-display);border-radius:9px;justify-content:center;align-items:center;font-size:1.6rem;font-weight:800;display:inline-flex;box-shadow:0 3px #2e7d4f}.wl-keys{background:var(--wl-rack);border-radius:14px;grid-template-columns:repeat(6,minmax(0,1fr));gap:6px;padding:10px;display:grid;box-shadow:inset 0 3px 6px #00000080}.wl-key{cursor:pointer;min-height:52px;color:var(--wl-tile-ink);background:linear-gradient(180deg, var(--wl-tile-top), var(--wl-tile-bottom));box-shadow:inset 0 -3px 0 #00000024, 0 3px 0 var(--wl-tile-edge);font-family:var(--font-display);-webkit-tap-highlight-color:transparent;border:0;border-radius:10px;padding:0;font-size:1.45rem;font-weight:800;line-height:1;transition:transform 80ms,box-shadow 80ms}.wl-key:active{box-shadow:inset 0 -3px 0 #00000024, 0 0 0 var(--wl-tile-edge);transform:translateY(3px)}.wl-key.is-current{opacity:.4;cursor:default}@container wl (width>=500px){.wl-keys{grid-template-columns:repeat(9,minmax(0,1fr));gap:8px}}@container wl (width>=700px){.wl-keys{grid-template-columns:repeat(13,minmax(0,1fr))}}.wl-done{text-align:center;flex-direction:column;align-items:center;gap:12px;padding:16px;display:flex}.wl-done-text{font-family:var(--font-display);font-size:1.3rem;font-weight:800}.wl-done-note{font-family:var(--font-body);color:var(--ink-soft);font-size:1rem;font-weight:700}.wl-controls{flex-direction:column;gap:10px;padding:10px;display:flex}@media (width>=640px){.wl-controls{padding:14px}}.wl-actions{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.wl-actions .token{white-space:nowrap;gap:6px;min-height:54px;padding:0 6px;font-size:1.05rem}.wl-keyhelp{color:var(--ink-soft);margin:0;font-size:.85rem;display:none}@media (width>=1000px){.wl-keyhelp{display:block}}.wl-scrim{z-index:40;background:#0a140f8c;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}@media (width>=640px){.wl-scrim{align-items:center;padding:24px}}.wl-dialog{border-radius:20px 20px 0 0;flex-direction:column;gap:14px;width:100%;max-width:520px;max-height:92vh;padding:22px 18px 26px;display:flex;overflow:auto;box-shadow:0 -6px 30px #00000059}@media (width>=640px){.wl-dialog{border-radius:20px;padding:26px 28px}}.wl-dialog h2{font-size:1.7rem}.wl-found{font-size:1.15rem}.wl-ladder-line{font-family:var(--font-display);letter-spacing:.04em;overflow-wrap:anywhere;font-size:1.05rem;font-weight:800}.wl-streak{font-size:1.1rem}.wl-field{border:0;margin:0;padding:0}.wl-field legend{margin-bottom:8px;font-weight:700}.wl-options{flex-direction:column;gap:8px;display:flex}.wl-option{border:2px solid var(--line);cursor:pointer;border-radius:12px;align-items:center;gap:10px;min-height:52px;padding:6px 16px;font-weight:700;display:flex}.wl-option:has(input:checked){border-color:var(--ink);background:var(--paper-2)}.wl-option-note{color:var(--ink-soft);font-size:.9rem;font-weight:400;display:block}.wl-option input{accent-color:#1e5a47;flex-shrink:0;width:22px;height:22px}.wl-celebrate{justify-content:center;gap:6px;display:flex}.wl-celebrate span{background:linear-gradient(180deg, var(--wl-goal-top), var(--wl-goal-bottom));width:40px;height:40px;color:var(--wl-goal-ink);font-family:var(--font-display);animation:wl-pop .7s ease-out var(--wl-wave,0s) both;border-radius:8px;justify-content:center;align-items:center;font-size:1.3rem;font-weight:800;display:inline-flex;box-shadow:0 3px #2e7d4f}@keyframes wl-pop{0%{opacity:0;transform:translateY(10px)}60%{opacity:1;transform:translateY(-6px)}to{opacity:1;transform:none}}.wl-welcome{max-width:640px;margin:0 auto}.wl-welcome-card{flex-direction:column;gap:14px;padding:26px;display:flex}.wl-welcome-card h2{font-size:2rem}@media (prefers-reduced-motion:reduce){.wl-word.is-solved .wl-slot,.wl-word.is-wrong,.wl-celebrate span{animation:none}.wl-key{transition:none}}@media (width<=380px){.wl-actions .token svg{display:none}.wl-goal-tile{width:38px;height:40px;font-size:1.4rem}}.ww{--ww-tile-top:#f2d39b;--ww-tile-bottom:#ddb070;--ww-tile-edge:#9a6a32;--ww-tile-ink:#3a2410;--ww-centre-top:#ffd66b;--ww-centre-bottom:#f2ad2e;--ww-centre-edge:#a86a0c;--ww-rim:#5a3a22;--ww-face:#3b2416;--ww-spoke:#6e4a2c;--ww-word:#fff6e3;--ww-word-line:#c8a874;--ww-good:#2e7d4f;--ww-good-bg:#dff2e5;--ww-bar:#e9dcc0;--ww-hint:#2563eb;color:var(--on-felt)}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .ww{--ww-word:#2c251d;--ww-word-line:#6b5640;--ww-face:#2a190e;--ww-rim:#4a2f1b;--ww-good:#7fd6a0;--ww-good-bg:#1f3b2a;--ww-bar:#3a3026;--ww-hint:#8ab4ff}}:root[data-theme=dark] .ww{--ww-word:#2c251d;--ww-word-line:#6b5640;--ww-face:#2a190e;--ww-rim:#4a2f1b;--ww-good:#7fd6a0;--ww-good-bg:#1f3b2a;--ww-bar:#3a3026;--ww-hint:#8ab4ff}.ww-loading{text-align:center;min-height:60vh;padding:40px;font-size:1.2rem}.ww-row{flex-wrap:wrap;gap:14px;display:flex}.ww-sr{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.ww-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 12px;margin-bottom:12px;display:flex}.ww-title{font-size:1.15rem}@media (width>=640px){.ww-title{font-size:1.35rem}}.ww-chip{cursor:pointer;background:var(--wood-dark);color:#fff6e3;white-space:nowrap;border:0;border-radius:12px;min-height:44px;padding:0 14px;font-weight:700}.ww-tray{padding:4px}@media (width<=420px){.ww-tray{margin-inline:-8px}}@media (width>=640px){.ww-tray{padding:14px}}.ww-layout{gap:10px;max-width:1040px;margin:0 auto;display:grid}.ww-play{flex-direction:column;gap:12px;min-width:0;display:flex}@media (width>=900px){.ww-layout{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);align-items:start;gap:16px}.ww-status{grid-column:1/-1}}.ww-status{min-height:2.9em;margin:0;padding:10px 14px;font-size:1.05rem}@media (width>=640px){.ww-status{padding:14px 18px;font-size:1.15rem}}.ww-progress{flex-direction:column;gap:8px;padding:12px 14px;display:flex}.ww-progress p{margin:0}.ww-progress-line{flex-wrap:wrap;align-items:center;gap:8px;font-size:1.1rem;display:flex}.ww-progress-line strong{font-family:var(--font-display);font-size:1.4rem}.ww-tier-badge{background:var(--ww-good-bg);color:var(--ww-good);border:2px solid var(--ww-good);border-radius:999px;margin-left:auto;padding:2px 10px;font-weight:800}.ww-bar{background:var(--ww-bar);border-radius:7px;height:14px;margin:4px 0;position:relative}.ww-bar-fill{background:var(--ww-good);border-radius:7px;transition:width .3s;position:absolute;inset:0 auto 0 0}.ww-mark{background:var(--ink-soft);border-radius:2px;width:4px;height:22px;margin-left:-2px;position:absolute;top:-4px}.ww-mark.is-reached{background:var(--amber-deep)}.ww-tiers{color:var(--ink-soft);flex-wrap:wrap;justify-content:space-between;gap:4px 10px;margin:0;padding:0;font-size:.95rem;list-style:none;display:flex}.ww-tiers li.is-reached{color:var(--ww-good);font-weight:700}.ww-extras{color:var(--ink-soft);flex-wrap:wrap;justify-content:space-between;gap:4px 12px;font-size:.95rem;display:flex}.ww-wheel-wrap{justify-content:center;display:flex}.ww-wheel{aspect-ratio:1;width:min(100%,380px);position:relative;container-type:inline-size}.ww-spokes{width:100%;height:100%;position:absolute;inset:0}.ww-rim{fill:var(--ww-rim)}.ww-face{fill:var(--ww-face)}.ww-spoke{stroke:var(--ww-spoke);stroke-width:1.2px;stroke-linecap:round}.ww-tile{aspect-ratio:1;cursor:pointer;width:23%;color:var(--ww-tile-ink);background:radial-gradient(circle at 50% 35%, var(--ww-tile-top), var(--ww-tile-bottom) 75%);box-shadow:inset 0 -4px 0 #00000024, 0 4px 0 var(--ww-tile-edge), 0 6px 10px #0000004d;font-family:var(--font-display);-webkit-tap-highlight-color:transparent;border:0;border-radius:50%;justify-content:center;align-items:center;padding:0;font-size:11cqi;font-weight:800;line-height:1;transition:transform 80ms,opacity .15s;display:inline-flex;position:absolute;transform:translate(-50%,-50%)}.ww-tile.is-centre{background:radial-gradient(circle at 50% 35%, var(--ww-centre-top), var(--ww-centre-bottom) 75%);width:27%;box-shadow:inset 0 -4px 0 #00000024, 0 4px 0 var(--ww-centre-edge), 0 0 0 4px #ffffff40, 0 6px 12px #00000059;font-size:13cqi;top:50%;left:50%}.ww-tile:active:not([aria-disabled=true]){transform:translate(-50%,calc(3px - 50%))}.ww-tile.is-used{opacity:.4;box-shadow:inset 0 0 0 3px var(--ww-tile-ink);cursor:default}.ww-tile[aria-disabled=true]{cursor:default}.ww-tile:focus-visible{outline:4px solid var(--amber);outline-offset:3px}.ww-word{background:var(--ww-word);border:2px dashed var(--ww-word-line);min-height:64px;color:var(--ink);border-radius:14px;justify-content:center;align-items:center;gap:10px;padding:6px 10px;display:flex}.ww-word-text{font-family:var(--font-display);letter-spacing:.08em;overflow-wrap:anywhere;text-align:center;font-size:clamp(1.5rem,7vw,2.2rem);font-weight:800}.ww-word-text:only-child{font-family:var(--font-body);letter-spacing:0;color:var(--ink-soft);font-size:1.05rem;font-weight:400}.ww-back{border:2px solid var(--line);background:var(--paper-2);width:52px;height:48px;color:var(--ink);cursor:pointer;border-radius:12px;flex:none;justify-content:center;align-items:center;display:inline-flex}.ww-word.is-wrong{animation:.4s ease-in-out ww-shake}@keyframes ww-shake{0%,to{transform:none}25%{transform:translate(-6px)}75%{transform:translate(6px)}}.ww-hint{flex-wrap:wrap;align-items:center;gap:8px;margin:0;padding:10px 14px;display:flex}.ww-hint-label{color:var(--ww-hint);font-weight:800}.ww-hint-word{flex-wrap:wrap;gap:4px;display:inline-flex}.ww-hint-word span{border:2px dashed var(--ww-word-line);width:30px;height:34px;font-family:var(--font-display);border-radius:6px;justify-content:center;align-items:center;font-size:1.15rem;font-weight:800;display:inline-flex}.ww-hint-word span.is-shown{border:2px solid var(--ww-hint);color:var(--ww-hint)}.ww-controls{flex-direction:column;gap:10px;display:flex}.ww-enter{width:100%;min-height:60px;font-size:1.3rem}.ww-actions{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.ww-actions .token{white-space:nowrap;gap:6px;min-height:54px;padding:0 6px;font-size:1.05rem}.ww-keys{color:var(--on-felt-soft);margin:0;font-size:.85rem;display:none}@media (width>=1000px){.ww-keys{display:block}}@media (width<=380px){.ww-actions .token svg{display:none}}.ww-found{flex-direction:column;gap:10px;padding:14px;display:flex}.ww-found h3{font-size:1.3rem}.ww-found p{margin:0}.ww-group h4{margin:0 0 6px;font-size:1rem}.ww-group ul{flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none;display:flex}.ww-chipword{background:var(--paper-2);border:2px solid var(--line);letter-spacing:.04em;border-radius:8px;padding:5px 10px;font-size:1.05rem;font-weight:700}.ww-chipword.is-bonus{border-style:dotted;border-color:var(--ink-soft);font-style:italic}.ww-chipword.is-nine{background:var(--amber);color:var(--amber-ink);border-color:var(--amber-deep)}.ww-chipword.is-missed{opacity:.55;background:0 0;font-weight:400}.ww-chipword.is-new{border-color:var(--ww-good);box-shadow:0 0 0 2px var(--ww-good);animation:.5s ease-out both ww-pop}.ww-note{font-size:.95rem}.ww-link{cursor:pointer;min-height:48px;color:var(--ink-soft);text-underline-offset:3px;background:0 0;border:0;align-self:flex-end;padding:0 6px;font-size:1rem;font-weight:700;text-decoration:underline}.ww-scrim{z-index:40;background:#0a140f8c;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}@media (width>=640px){.ww-scrim{align-items:center;padding:24px}}.ww-dialog{border-radius:20px 20px 0 0;flex-direction:column;gap:14px;width:100%;max-width:520px;max-height:92vh;padding:22px 18px 26px;display:flex;overflow:auto;box-shadow:0 -6px 30px #00000059}.ww-dialog p{margin:0}@media (width>=640px){.ww-dialog{border-radius:20px;padding:26px 28px}}.ww-dialog h2{font-size:1.7rem}.ww-result,.ww-streak{font-size:1.1rem}.ww-field{border:0;margin:0;padding:0}.ww-field legend{margin-bottom:8px;font-weight:700}.ww-options{flex-direction:column;gap:8px;display:flex}.ww-option{border:2px solid var(--line);cursor:pointer;border-radius:12px;align-items:center;gap:10px;min-height:52px;padding:6px 16px;font-weight:700;display:flex}.ww-option:has(input:checked){border-color:var(--ink);background:var(--paper-2)}.ww-option-note{color:var(--ink-soft);font-size:.9rem;font-weight:400;display:block}.ww-option input{accent-color:#1e5a47;flex-shrink:0;width:22px;height:22px}.ww-celebrate{flex-wrap:wrap;justify-content:center;gap:4px;display:flex}.ww-celebrate span{background:radial-gradient(circle at 50% 35%, var(--ww-tile-top), var(--ww-tile-bottom) 75%);width:32px;height:32px;color:var(--ww-tile-ink);box-shadow:0 3px 0 var(--ww-tile-edge);font-family:var(--font-display);animation:ww-pop .7s ease-out var(--ww-wave,0s) both;border-radius:50%;justify-content:center;align-items:center;font-size:1.05rem;font-weight:800;display:inline-flex}@keyframes ww-pop{0%{opacity:0;transform:translateY(8px)}60%{opacity:1;transform:translateY(-4px)}to{opacity:1;transform:none}}.ww-welcome{max-width:640px;margin:0 auto}.ww-welcome-card{flex-direction:column;gap:14px;padding:26px;display:flex}.ww-welcome-card h2{font-size:2rem}@media (prefers-reduced-motion:reduce){.ww-word.is-wrong,.ww-celebrate span,.ww-chipword.is-new{animation:none}.ww-tile,.ww-bar-fill{transition:none}}.hm{--hm-tile-top:#f2d39b;--hm-tile-bottom:#ddb070;--hm-tile-edge:#9a6a32;--hm-tile-ink:#3a2410;--hm-cell:#fff6e3;--hm-cell-line:#c8a874;--hm-petal:#f39ab9;--hm-petal-edge:#c9577f;--hm-table:#c9b28a;--hm-good:#2e7d4f;--hm-good-bg:#dff2e5;--hm-bad:#8a4b3b;--hm-bad-bg:#efe4dc;--hm-hint:#2563eb;--hm-missed:#8a6a44;color:var(--on-felt)}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .hm{--hm-cell:#2c251d;--hm-cell-line:#6b5640;--hm-table:#5a4a36;--hm-good:#7fd6a0;--hm-good-bg:#1f3b2a;--hm-bad:#e0b4a6;--hm-bad-bg:#3a2b26;--hm-hint:#8ab4ff;--hm-missed:#d8b88a}}:root[data-theme=dark] .hm{--hm-cell:#2c251d;--hm-cell-line:#6b5640;--hm-table:#5a4a36;--hm-good:#7fd6a0;--hm-good-bg:#1f3b2a;--hm-bad:#e0b4a6;--hm-bad-bg:#3a2b26;--hm-hint:#8ab4ff;--hm-missed:#d8b88a}.hm-loading{text-align:center;min-height:60vh;padding:40px;font-size:1.2rem}.hm-row{flex-wrap:wrap;gap:14px;display:flex}.hm-sr{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.hm-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 12px;margin-bottom:12px;display:flex}.hm-title{font-size:1.15rem}@media (width>=640px){.hm-title{font-size:1.35rem}}.hm-chip{cursor:pointer;background:var(--wood-dark);color:#fff6e3;white-space:nowrap;border:0;border-radius:12px;min-height:44px;padding:0 14px;font-weight:700}.hm-tray{padding:4px}@media (width<=420px){.hm-tray{margin-inline:-8px}}@media (width>=640px){.hm-tray{padding:14px}}.hm-layout{flex-direction:column;gap:10px;max-width:660px;margin:0 auto;display:flex;container-type:inline-size}@media (width>=640px){.hm-layout{gap:14px}}.hm-status{min-height:2.9em;padding:10px 14px;font-size:1.05rem}@media (width>=640px){.hm-status{padding:14px 18px;font-size:1.15rem}}.hm-progress{justify-content:space-between;align-items:center;gap:10px;padding:0 4px;display:flex}.hm-dots{gap:8px;margin:0;padding:0;list-style:none;display:flex}.hm-dot{border:2px solid var(--on-felt-soft);width:34px;height:34px;color:var(--on-felt);border-radius:50%;justify-content:center;align-items:center;font-size:1rem;font-weight:800;display:inline-flex}.hm-dot.is-current{background:var(--amber);border-color:var(--amber);color:var(--amber-ink)}.hm-dot.is-won{background:var(--hm-good-bg);border-color:var(--hm-good);color:var(--hm-good)}.hm-dot.is-lost{color:var(--on-felt-soft);border-style:dashed}.hm-dot.is-current.is-won,.hm-dot.is-current.is-lost{box-shadow:0 0 0 3px var(--amber)}.hm-practice-count,.hm-length{color:var(--on-felt-soft);font-weight:700}.hm-length{white-space:nowrap;font-size:1rem}.hm-stage{align-items:center;gap:12px;padding:10px 14px;display:flex}@media (width>=640px){.hm-stage{gap:24px;padding:14px 24px}}.hm-flower-box{flex:none;width:112px}@container (width>=480px){.hm-flower-box{width:168px}}.hm-flower{width:100%;height:auto;display:block;overflow:visible}.hm-petal{fill:var(--hm-petal);stroke:var(--hm-petal-edge);stroke-width:1.5px}.hm-petal--fallen{opacity:.8}.hm-table{fill:var(--hm-table)}.hm-falling{transform-box:view-box;animation:.9s ease-in both hm-fall}@keyframes hm-fall{0%{opacity:0;transform:translate(-10px,-120px)rotate(-30deg)}20%{opacity:1}60%{transform:translate(8px,-40px)rotate(12deg)}to{opacity:1;transform:none}}.hm-flower-box.is-won .hm-flower{transform-origin:50% 95%;animation:1s ease-in-out hm-nod}@keyframes hm-nod{0%,to{transform:none}30%{transform:rotate(-4deg)}70%{transform:rotate(4deg)}}.hm-sparkles{animation:1.6s ease-in-out infinite alternate hm-twinkle}@keyframes hm-twinkle{0%{opacity:.4}to{opacity:1}}.hm-info{min-width:0;color:var(--ink);flex-direction:column;gap:8px;display:flex}.hm-clue{font-family:var(--font-display);font-size:1.25rem;font-weight:800;line-height:1.2}@container (width>=480px){.hm-clue{font-size:1.6rem}}.hm-clue-label{font-family:var(--font-body);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-soft);font-size:.85rem;font-weight:700;display:block}.hm-lives{align-items:center;gap:6px;font-size:1.05rem;font-weight:700;display:flex}.hm-lives svg{flex:none}.hm-wrong{font-size:1rem}.hm-wrong strong{letter-spacing:.12em;color:var(--hm-bad);text-decoration:line-through 2px}.hm-wrong-label{color:var(--ink-soft)}.hm-none{color:var(--ink-soft);font-style:italic}.hm-word{--gap:5px;--size:min(58px, calc((100cqi - (var(--n) - 1) * var(--gap)) / var(--n)));justify-content:center;gap:var(--gap);padding:4px 0;display:flex}@container (width>=480px){.hm-word{--gap:8px}}.hm-cell{width:var(--size);height:calc(var(--size) * 1.15);background:var(--hm-cell);color:var(--ink);border:2px dashed var(--hm-cell-line);font-family:var(--font-display);font-weight:800;font-size:calc(var(--size) * .58);border-radius:10px;flex:none;justify-content:center;align-items:center;line-height:1;display:inline-flex}.hm-cell.is-shown{color:var(--hm-tile-ink);background:linear-gradient(180deg, var(--hm-tile-top), var(--hm-tile-bottom));box-shadow:inset 0 -3px 0 #00000024, 0 3px 0 var(--hm-tile-edge);border:0}.hm-cell.is-hinted{box-shadow:inset 0 0 0 3px var(--hm-hint), 0 3px 0 var(--hm-tile-edge);position:relative}.hm-cell.is-hinted:after{content:"";background:var(--hm-hint);border-radius:50%;width:6px;height:6px;position:absolute;top:4px;right:4px}.hm-word.is-won .hm-cell{color:#123821;animation:hm-hop .6s ease-out var(--hm-wave,0s) both;background:linear-gradient(#bfe8cb,#93d3a8);box-shadow:inset 0 -3px #0000001f,0 3px #2e7d4f}.hm-word.is-won .hm-cell:after{display:none}.hm-cell.is-missed{background:var(--hm-cell);color:var(--hm-missed);border:2px solid var(--hm-cell-line);box-shadow:none;text-underline-offset:4px;text-decoration:underline 3px}@keyframes hm-hop{0%{transform:none}40%{transform:translateY(-10px)}to{transform:none}}.hm-keys{--cols:7;--gap:3px;--pad:4px;--key:min(64px, calc((100cqi - 2 * var(--pad) - (var(--cols) - 1) * var(--gap)) / var(--cols)));justify-content:center;gap:var(--gap);padding:var(--pad);background:#24150c;border-radius:14px;flex-wrap:wrap;display:flex;box-shadow:inset 0 3px 6px #00000080}@container (width>=400px){.hm-keys{--gap:6px;--pad:8px}}@container (width>=520px){.hm-keys{--cols:9;--gap:8px;--pad:10px}}.hm-key{width:var(--key);min-width:44px;height:max(48px, calc(var(--key) * .95));cursor:pointer;color:var(--hm-tile-ink);background:linear-gradient(180deg, var(--hm-tile-top), var(--hm-tile-bottom));box-shadow:inset 0 -4px 0 #00000024, 0 3px 0 var(--hm-tile-edge);font-family:var(--font-display);-webkit-tap-highlight-color:transparent;border:0;border-radius:10px;flex:none;justify-content:center;align-items:center;padding:0;font-size:1.45rem;font-weight:800;line-height:1;transition:transform 80ms,box-shadow 80ms;display:inline-flex;position:relative}.hm-key:active:not([aria-disabled=true]){box-shadow:inset 0 -4px 0 #00000024, 0 1px 0 var(--hm-tile-edge);transform:translateY(2px)}.hm-key[aria-disabled=true]{cursor:default}.hm-key-mark{font-family:var(--font-body);font-size:.85rem;font-weight:800;position:absolute;top:2px;right:5px}.hm-key.is-right{background:var(--hm-good-bg);color:var(--hm-good);box-shadow:inset 0 0 0 2px var(--hm-good)}.hm-key.is-hinted{box-shadow:inset 0 0 0 3px var(--hm-hint)}.hm-key.is-wrong{background:var(--hm-bad-bg);color:var(--hm-bad);box-shadow:none;opacity:.85}.hm-key.is-wrong .hm-key-letter{text-decoration:line-through 3px}.hm-done{color:var(--ink);text-align:center;flex-direction:column;align-items:center;gap:10px;padding:14px;display:flex}.hm-done-word{font-family:var(--font-display);font-size:1.4rem;font-weight:800}.hm-done-note{color:var(--ink-soft);margin-top:-6px;font-weight:700}.hm-controls{flex-wrap:wrap;align-items:center;gap:8px 14px;padding:10px;display:flex}@media (width>=640px){.hm-controls{padding:14px}}.hm-controls .token{white-space:nowrap;gap:6px;min-height:54px;font-size:1.05rem}.hm-note{color:var(--ink-soft);flex:200px;font-size:.95rem}.hm-keyhelp{color:var(--ink-soft);flex-basis:100%;font-size:.85rem;display:none}@media (width>=1000px){.hm-keyhelp{display:block}}.hm-scrim{z-index:40;background:#0a140f8c;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}@media (width>=640px){.hm-scrim{align-items:center;padding:24px}}.hm-dialog{border-radius:20px 20px 0 0;flex-direction:column;gap:14px;width:100%;max-width:520px;max-height:92vh;padding:22px 18px 26px;display:flex;overflow:auto;box-shadow:0 -6px 30px #00000059}@media (width>=640px){.hm-dialog{border-radius:20px;padding:26px 28px}}.hm-dialog h2{font-size:1.7rem}.hm-score{font-size:1.2rem}.hm-results{flex-direction:column;gap:6px;margin:0;padding:0;font-size:1.1rem;list-style:none;display:flex}.hm-results li{flex-wrap:wrap;align-items:baseline;gap:6px;display:flex}.hm-results-mark{width:1.2em;font-weight:800;display:inline-block}.hm-results .is-won .hm-results-mark{color:var(--hm-good)}.hm-streak{font-size:1.1rem}.hm-field{border:0;margin:0;padding:0}.hm-field legend{margin-bottom:8px;font-weight:700}.hm-options{flex-direction:column;gap:8px;display:flex}.hm-option{border:2px solid var(--line);cursor:pointer;border-radius:12px;align-items:center;gap:10px;min-height:52px;padding:6px 16px;font-weight:700;display:flex}.hm-option:has(input:checked){border-color:var(--ink);background:var(--paper-2)}.hm-option-note{color:var(--ink-soft);font-size:.9rem;font-weight:400;display:block}.hm-option input{accent-color:#1e5a47;flex-shrink:0;width:22px;height:22px}.hm-welcome{max-width:660px;margin:0 auto}.hm-welcome-card{flex-direction:column;gap:14px;padding:26px;display:flex}.hm-welcome-card h2{font-size:2rem}@media (prefers-reduced-motion:reduce){.hm-falling,.hm-flower-box.is-won .hm-flower,.hm-sparkles,.hm-word.is-won .hm-cell{animation:none}.hm-key{transition:none}}.mm{--mm-face:#fffbf2;--mm-face-line:#c8a874;--mm-back:#1e5a47;--mm-back-2:#24705a;--mm-back-line:#f3e6cc;--mm-found:#2e7d4f;--mm-hint:#2563eb;color:var(--on-felt)}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .mm{--mm-face-line:#8a6d45;--mm-back:#1a4d3d;--mm-back-2:#215f4c;--mm-back-line:#d9c9a8;--mm-found:#3f9a65;--mm-hint:#8ab4ff}}:root[data-theme=dark] .mm{--mm-face-line:#8a6d45;--mm-back:#1a4d3d;--mm-back-2:#215f4c;--mm-back-line:#d9c9a8;--mm-found:#3f9a65;--mm-hint:#8ab4ff}.mm-loading{text-align:center;min-height:60vh;padding:40px;font-size:1.2rem}.mm-row{flex-wrap:wrap;gap:14px;display:flex}.mm-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 12px;margin-bottom:12px;display:flex}.mm-title{font-size:1.15rem}@media (width>=640px){.mm-title{font-size:1.35rem}}.mm-chip{cursor:pointer;background:var(--wood-dark);color:#fff6e3;white-space:nowrap;border:0;border-radius:12px;min-height:44px;padding:0 14px;font-weight:700}.mm-tray{padding:6px}@media (width<=420px){.mm-tray{margin-inline:-8px}}@media (width>=640px){.mm-tray{padding:14px}}.mm-layout{flex-direction:column;gap:10px;max-width:1000px;margin:0 auto;display:flex}@media (width>=640px){.mm-layout{gap:14px}}.mm-status{width:100%;max-width:720px;min-height:2.9em;margin:0 auto;padding:10px 14px;font-size:1.05rem}@media (width>=640px){.mm-status{padding:14px 18px;font-size:1.15rem}}.mm-board-wrap{width:100%}.mm-board{justify-content:center;gap:var(--mm-gap,8px);grid-template-columns:repeat(var(--mm-cols,4), var(--mm-size,minmax(0, 1fr)));margin:0 auto;padding:0;list-style:none;display:grid}.mm-board>li{display:block}.mm-card{aspect-ratio:1;cursor:pointer;perspective:800px;-webkit-tap-highlight-color:transparent;touch-action:manipulation;background:0 0;border:0;border-radius:14px;width:100%;padding:0;display:block;position:relative}.mm-card:focus-visible{outline:4px solid var(--amber);outline-offset:3px}.mm-inner{transform-style:preserve-3d;transition:transform .32s ease-out;display:block;position:absolute;inset:0}.mm-card.is-up .mm-inner{transform:rotateY(180deg)}.mm-back,.mm-face{-webkit-backface-visibility:hidden;backface-visibility:hidden;border-radius:14px;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.mm-back{background:radial-gradient(circle at 50% 50%, var(--mm-back-line) 0 13%, transparent 14%), radial-gradient(circle at 50% 50%, var(--mm-back) 0 20%, transparent 21%), repeating-linear-gradient(45deg, var(--mm-back-2) 0 7px, var(--mm-back) 7px 14px);border:4px solid var(--mm-back-line);box-shadow:0 4px 0 #0000004d, inset 0 0 0 3px var(--mm-back)}.mm-card:hover .mm-back{filter:brightness(1.08)}.mm-face{background:var(--mm-face);border:3px solid var(--mm-face-line);transform:rotateY(180deg);box-shadow:0 4px #00000040}.mm-pic{width:80%;height:80%;display:block}.mm-pic svg{width:100%;height:100%;display:block}.mm-card.is-matched{cursor:default}.mm-card.is-matched .mm-face{border:4px solid var(--mm-found)}.mm-check{background:var(--mm-found);color:#fff;border-radius:50%;width:26%;min-width:20px;height:26%;min-height:20px;position:absolute;top:5%;right:5%;box-shadow:0 0 0 2px #fff}.mm-check svg{display:block}.mm-card.is-fresh .mm-face{animation:.7s ease-out mm-glow}@keyframes mm-glow{0%{box-shadow:0 0 #2e7d4fb3}to{box-shadow:0 0 0 14px #2e7d4f00}}.mm-card.is-miss .mm-face{border-style:dashed}.mm-card.is-glimpse .mm-face{border:4px solid var(--mm-hint);box-shadow:0 0 0 4px var(--mm-hint)}.mm-tools{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;width:100%;max-width:720px;margin:0 auto;display:flex}.mm-tools .token{gap:6px;min-height:52px;padding:0 18px}.mm-tools-note{font-weight:400}.mm-count{color:var(--on-felt-soft);gap:16px;font-size:1.1rem;display:flex}.mm-count strong{color:var(--on-felt);font-size:1.25rem}.mm-done{text-align:center;flex-direction:column;align-items:center;gap:14px;width:100%;max-width:720px;margin:0 auto;padding:18px;display:flex}.mm-done-text{font-size:1.25rem}.mm-done .mm-row{justify-content:center}.mm-scrim{z-index:40;background:#0a140f8c;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}@media (width>=640px){.mm-scrim{align-items:center;padding:24px}}.mm-dialog{border-radius:20px 20px 0 0;flex-direction:column;gap:14px;width:100%;max-width:520px;max-height:92vh;padding:22px 18px 26px;display:flex;overflow:auto;box-shadow:0 -6px 30px #00000059}@media (width>=640px){.mm-dialog{border-radius:20px;padding:26px 28px}}.mm-dialog h2{font-size:1.7rem}.mm-result{font-size:1.15rem}.mm-streak{font-size:1.1rem}.mm-field{border:0;margin:0;padding:0}.mm-field legend{margin-bottom:8px;font-weight:700}.mm-options{flex-direction:column;gap:8px;display:flex}.mm-options--row{flex-flow:wrap}.mm-options--row .mm-option{flex:120px}.mm-option{border:2px solid var(--line);cursor:pointer;border-radius:12px;align-items:center;gap:10px;min-height:52px;padding:6px 16px;font-weight:700;display:flex}.mm-option:has(input:checked){border-color:var(--ink);background:var(--paper-2)}.mm-option-note{color:var(--ink-soft);font-size:.9rem;font-weight:400;display:block}.mm-option input{accent-color:#1e5a47;flex-shrink:0;width:22px;height:22px}.mm-welcome{max-width:640px;margin:0 auto}.mm-welcome-card{flex-direction:column;gap:14px;padding:26px;display:flex}.mm-welcome-card h2{font-size:2rem}@media (prefers-reduced-motion:reduce){.mm-inner{transition:none}.mm-card.is-fresh .mm-face{animation:none}}.page[data-astro-cid-z2nrcivh]{gap:40px;padding-top:18px}.play-area[data-astro-cid-z2nrcivh]{flex-direction:column;gap:12px;display:flex}.play-head[data-astro-cid-z2nrcivh]{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:12px;display:flex}.play-title[data-astro-cid-z2nrcivh]{flex-direction:column;gap:2px;min-width:0;display:flex}.play-head[data-astro-cid-z2nrcivh] h1[data-astro-cid-z2nrcivh]{font-size:clamp(1.8rem,4vw,2.6rem)}.play-sub[data-astro-cid-z2nrcivh]{color:var(--on-felt-soft);font-size:.95rem;font-weight:700}.play-links[data-astro-cid-z2nrcivh]{flex-wrap:wrap;align-items:center;gap:8px 18px;font-weight:700;display:flex}.focus-btn[data-astro-cid-z2nrcivh]{background:var(--on-felt);min-height:44px;color:var(--felt);font:inherit;cursor:pointer;border:0;border-radius:999px;align-items:center;gap:8px;padding:0 16px;font-weight:800;display:inline-flex}.focus-btn[data-astro-cid-z2nrcivh][hidden]{display:none}.focus-btn[data-astro-cid-z2nrcivh]:hover{filter:brightness(.95)}.focus-btn[data-astro-cid-z2nrcivh] .icon-exit[data-astro-cid-z2nrcivh],.sound-btn[data-astro-cid-z2nrcivh] .icon-off[data-astro-cid-z2nrcivh],.sound-btn[data-astro-cid-z2nrcivh][aria-pressed=false] .icon-on[data-astro-cid-z2nrcivh]{display:none}.sound-btn[data-astro-cid-z2nrcivh][aria-pressed=false] .icon-off[data-astro-cid-z2nrcivh]{display:inline}.sound-btn[data-astro-cid-z2nrcivh][aria-pressed=false]{color:var(--on-felt);box-shadow:inset 0 0 0 2px var(--on-felt-soft);background:0 0}html.focus-mode .focus-btn[data-astro-cid-z2nrcivh] .icon-enter[data-astro-cid-z2nrcivh]{display:none}html.focus-mode .focus-btn[data-astro-cid-z2nrcivh] .icon-exit[data-astro-cid-z2nrcivh]{display:inline}html.focus-mode .site-header,html.focus-mode .site-footer,html.focus-mode .page>:not(.play-area){display:none!important}html.focus-mode .page[data-astro-cid-z2nrcivh]{max-width:1400px;padding-top:10px;padding-bottom:16px}html.focus-mode .play-head[data-astro-cid-z2nrcivh]{flex-wrap:nowrap;align-items:center}html.focus-mode .play-links[data-astro-cid-z2nrcivh]{flex-wrap:nowrap;gap:8px}@media (width<=599px){html.focus-mode .focus-btn[data-astro-cid-z2nrcivh]{padding:0 12px}html.focus-mode .focus-btn[data-astro-cid-z2nrcivh] span[data-astro-cid-z2nrcivh]{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}}html.focus-mode .play-head[data-astro-cid-z2nrcivh] h1[data-astro-cid-z2nrcivh]{font-size:clamp(1.3rem,3vw,1.8rem)}html.focus-mode .play-sub[data-astro-cid-z2nrcivh],html.focus-mode .play-links[data-astro-cid-z2nrcivh] a[data-astro-cid-z2nrcivh]{display:none}html.focus-mode .focus-btn[data-astro-cid-z2nrcivh]{position:sticky;top:8px}html.focus-mode .play-area[data-astro-cid-z2nrcivh]{min-height:calc(100dvh - 26px)}html.focus-mode body{background:var(--felt)}.play-stage[data-astro-cid-z2nrcivh]{min-width:0}.play-area[data-astro-cid-z2nrcivh] [aria-busy=true]{min-height:70vh}.about-grid[data-astro-cid-z2nrcivh]{gap:16px;display:grid}@media (width>=900px){.about-grid[data-astro-cid-z2nrcivh]{grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);align-items:start}}.quick-steps[data-astro-cid-z2nrcivh]{padding-left:1.3em}.facts[data-astro-cid-z2nrcivh]{gap:12px;margin:0;display:grid}.facts[data-astro-cid-z2nrcivh] div[data-astro-cid-z2nrcivh]{border-top:2px dotted var(--line);padding-top:10px}.facts[data-astro-cid-z2nrcivh] dt[data-astro-cid-z2nrcivh]{color:var(--ink-soft);font-size:.9rem;font-weight:700}.facts[data-astro-cid-z2nrcivh] dd[data-astro-cid-z2nrcivh]{margin:0}.faq[data-astro-cid-z2nrcivh]{flex-direction:column;gap:10px;display:flex}.faq[data-astro-cid-z2nrcivh] h2[data-astro-cid-z2nrcivh]{margin-bottom:4px;font-size:1.7rem}.faq[data-astro-cid-z2nrcivh] details[data-astro-cid-z2nrcivh]{padding:16px 20px}.faq[data-astro-cid-z2nrcivh] summary[data-astro-cid-z2nrcivh]{cursor:pointer;font-family:var(--font-display);min-height:28px;font-size:1.2rem;font-weight:800}.faq[data-astro-cid-z2nrcivh] details[data-astro-cid-z2nrcivh] p[data-astro-cid-z2nrcivh]{margin-top:10px}.cat-intro[data-astro-cid-z2nrcivh] h1[data-astro-cid-z2nrcivh]{margin-bottom:12px;font-size:clamp(2.2rem,5vw,3.4rem)}.cat-intro[data-astro-cid-z2nrcivh] p[data-astro-cid-z2nrcivh]:last-child{margin-bottom:0}.guide-links[data-astro-cid-z2nrcivh]{columns:2;padding-left:1.2em}@media (width>=900px){.guide-links[data-astro-cid-z2nrcivh]{columns:3}}
