.mahjong-tile[data-v-90455a4c]{position:relative;display:inline-flex;flex:0 0 auto;width:var(--tile-size);height:calc(var(--tile-size) * 4 / 3);align-items:center;justify-content:center;vertical-align:middle;border:1px solid #dcd8c2;border-radius:max(2px,calc(var(--tile-size) * .11));background:linear-gradient(135deg,#fffef5 15%,#f1eddc 80%);box-shadow:inset 0 1px 1px #fff,0 2px #c5c7ad,0 4px #5c805e,0 5px 4px #09281c30;-webkit-user-select:none;user-select:none}.tile-art[data-v-90455a4c]{width:93%;height:94%;overflow:visible}.mahjong-tile--sideways[data-v-90455a4c]{width:calc(var(--tile-size) * 4 / 3);height:var(--tile-size)}.mahjong-tile--sideways .tile-art[data-v-90455a4c]{position:absolute;top:50%;left:50%;width:calc(var(--tile-size) * .93);height:calc(var(--tile-size) * 4 / 3 * .94);transform:translate(-50%,-50%) rotate(90deg)}.tile-rank[data-v-90455a4c]{position:absolute;z-index:1;top:1px;left:2px;color:#456378;font-size:calc(var(--tile-size) * .19);font-weight:700;line-height:1}.mahjong-tile--bamboo .tile-rank[data-v-90455a4c]{color:#276e50}.mahjong-tile--back[data-v-90455a4c]{padding:2px;background:#e5e4cf}.tile-back-pattern[data-v-90455a4c]{display:grid;width:100%;height:100%;place-items:center;border:1px solid #397b5f;border-radius:inherit;background:repeating-linear-gradient(45deg,#ffffff07 0 1px,transparent 1px 4px),linear-gradient(145deg,#398e6d,#1a634a);box-shadow:inset 0 0 0 1px #9ac5a52b}.tile-back-pattern>span[data-v-90455a4c]{width:55%;height:65%;border:1px solid #b5d8b349;border-radius:3px;box-shadow:inset 0 0 0 2px #154d3924}.seat-badge[data-v-e0dc6882]{display:flex;flex:none;align-items:center;justify-content:center;border:1px solid transparent;border-radius:8px;background:linear-gradient(90deg,#073b3580,#073b3526);color:#fff5dc;text-shadow:0 1px 2px #003c36}.seat-badge[data-active][data-v-e0dc6882]{border-color:#dfbd7299;background:linear-gradient(100deg,#63502cbb,#143e3270);box-shadow:0 0 10px #e9c77719}.seat-letter[data-v-e0dc6882]{display:grid;width:28px;height:28px;flex:none;place-items:center;border:1px solid #cebd82;border-radius:8px;background:linear-gradient(145deg,#eee4be,#b3c5a0);box-shadow:inset 0 0 0 2px #fffae34d,0 2px 4px #00382f66;color:#285841;font-size:14px;font-weight:700;text-shadow:0 1px #ffffff66}.seat-letter[data-tone=selected][data-v-e0dc6882]{background:linear-gradient(145deg,#fff0b5,#caa057)}.seat-letter[data-tone=retired][data-v-e0dc6882]{background:linear-gradient(145deg,#e1cfaa,#b8a282);color:#6d5233}.fm-seat[data-v-c131241d]{display:flex;width:100%;min-width:0;flex-direction:column;align-items:center;gap:5px;color:#f5f3df}.fm-seat-header[data-v-c131241d]{max-width:100%;flex-wrap:wrap;justify-content:center;gap:2px 5px;padding:3px 5px}.fm-seat--won .fm-seat-header[data-v-c131241d]{border-color:#d8c79577}.fm-seat-person[data-v-c131241d]{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:4px;min-width:0}.fm-seat-person h2[data-v-c131241d]{margin:0;font-size:11px;line-height:1.4}.fm-seat-person>span[data-v-c131241d]{display:flex;align-items:center;gap:3px;font-size:9px;color:#c1d4bb}.fm-dealer[data-v-c131241d]{color:#edce82;font-size:10px}.fm-seat-score[data-v-c131241d]{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:center;gap:2px;color:#f7edc9;font-size:12px;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.fm-seat-score small[data-v-c131241d]{font-size:9px;font-weight:400}.fm-seat-score--negative[data-v-c131241d]{color:#f4c5aa}.fm-seat-state[data-v-c131241d]{display:flex;flex-wrap:wrap;justify-content:center;gap:3px;color:#c7dbc0;font-size:9px;line-height:1.5;text-align:center}.fm-seat-state b[data-v-c131241d],.fm-seat-won-label[data-v-c131241d]{color:#f4dca3}.fm-own-hand[data-v-c131241d],.fm-public-hand[data-v-c131241d],.fm-hidden-hand[data-v-c131241d]{display:flex;min-width:0;max-width:100%;flex:none;flex-wrap:wrap;align-items:center;justify-content:center;gap:6px 2px;padding:3px 0 6px}.fm-own-hand[data-v-c131241d]{width:100%;justify-content:safe center}.fm-seat--south .fm-seat-header[data-v-c131241d]{order:4}.fm-melds[data-v-c131241d]{order:2;display:flex;max-width:100%;min-width:0;flex-wrap:wrap;justify-content:center;gap:4px}.fm-meld[data-v-c131241d]{display:flex;min-width:0;flex-direction:column;align-items:center;gap:4px}.fm-meld-tiles[data-v-c131241d]{display:flex;max-width:100%;flex-wrap:wrap;justify-content:center;gap:6px 3px}.fm-meld>small[data-v-c131241d]{color:#d1ddbf;font-size:8px;line-height:1.4}.fm-tile-button[data-v-c131241d]{position:relative;display:grid;width:calc(var(--tile-size) + 2px);min-height:calc(var(--tile-size) * 4 / 3 + 2px);flex:none;place-items:center;padding:0;border:1px solid transparent;border-radius:4px;background:transparent;cursor:pointer;touch-action:manipulation}.fm-tile-button[data-v-c131241d]:disabled{cursor:default}.fm-tile-button[data-v-c131241d]:hover:not(:disabled){border-color:#cbdcba}.fm-tile-button--selected[data-v-c131241d]{border-color:#f5d17e;background:#d0a95424}.fm-tile-button[data-v-c131241d]:focus-visible{outline:2px solid #ffe5a6;outline-offset:2px}.fm-selected-marker[data-v-c131241d]{top:-5px;left:-3px}.fm-drawn-marker[data-v-c131241d]{top:-5px;right:-3px}.fm-public-tile[data-v-c131241d]{position:relative;display:inline-flex;flex:none}.fm-tile-marker[data-v-c131241d]{top:-4px;right:-3px}.fm-source-tile[data-v-c131241d]{margin-top:3px}.fm-revealed[data-v-c131241d]{min-width:0;max-width:100%}.fm-public-note[data-v-c131241d]{margin:2px 0 0;color:#e9d7ac;font-size:9px;line-height:1.5;overflow-wrap:anywhere;text-align:center}.fm-seat--sideways .fm-own-hand[data-v-c131241d],.fm-seat--sideways .fm-public-hand[data-v-c131241d],.fm-seat--sideways .fm-hidden-hand[data-v-c131241d],.fm-seat--sideways .fm-meld-tiles[data-v-c131241d]{flex-direction:column}.fm-seat--sideways .fm-tile-button[data-v-c131241d]{width:calc(var(--tile-size) * 4 / 3 + 2px);min-height:calc(var(--tile-size) + 2px)}.fm-seat--sideways .fm-melds[data-v-c131241d]{flex-direction:column}.fm-seat--sideways .fm-seat-person>span[data-v-c131241d]{display:contents;font-size:0}.fm-seat--sideways .fm-seat-state[data-v-c131241d]{flex-basis:100%;font-size:8px}.fm-seat--sideways .fm-seat-state b[data-v-c131241d]{display:none}.fm-public-note[data-v-c131241d]{font-size:8px}@container (min-width: 80px){.fm-seat--sideways .fm-own-hand[data-v-c131241d],.fm-seat--sideways .fm-public-hand[data-v-c131241d]{display:grid;grid-template-columns:repeat(2,max-content);gap:6px 2px}.fm-seat--sideways .fm-melds[data-v-c131241d]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 4px}}.fm-seat--south[data-v-c131241d]{flex-direction:row;flex-wrap:wrap;justify-content:center;column-gap:12px}.fm-seat--south .fm-melds[data-v-c131241d]{order:-1}.fm-seat--south .fm-own-hand[data-v-c131241d]{width:auto}.fm-seat--south .fm-seat-header[data-v-c131241d]{flex-basis:auto;width:max-content;margin:0 20%}@container landscape-table (min-width: 0px){.fm-seat--north[data-v-c131241d]{flex-direction:row;flex-wrap:wrap;justify-content:center;column-gap:12px}.fm-seat--south .fm-seat-header[data-v-c131241d]{margin:0}}.mahjong-table-shell[data-v-e9e312b6]{position:relative;width:100%;height:100%;min-width:0;min-height:0}.mahjong-table[data-v-e9e312b6]{position:absolute;top:50%;left:50%;isolation:isolate;display:grid;grid-template-columns:54px minmax(0,1fr) 54px;grid-template-rows:minmax(min-content,1fr) auto minmax(min-content,1fr);grid-template-areas:". north ." ". center ." ". south .";align-items:center;gap:8px;padding:10px;container-type:inline-size;border:var(--felt-border);border-radius:var(--felt-radius);background:var(--felt-bg);box-shadow:var(--felt-shadow);transform-origin:center}.mahjong-table[data-v-e9e312b6]:before{position:absolute;z-index:-1;top:5px;right:5px;bottom:5px;left:5px;border:1px solid #c2dfbc26;border-radius:max(8px,calc(var(--felt-radius) - 6px));background:repeating-linear-gradient(45deg,#d9f7dc03 0 1px,transparent 1px 7px);box-shadow:inset 0 0 28px #002f2d38;pointer-events:none;content:""}.table-seat-slot[data-v-e9e312b6]{width:100%;min-width:0;container-type:inline-size}.table-seat-slot--north[data-v-e9e312b6]{grid-area:north;align-self:start}.table-seat-slot--south[data-v-e9e312b6]{grid-area:south;align-self:end;display:grid;gap:12px}.table-actions-slot[data-v-e9e312b6]{display:flex;justify-content:center;min-width:0}.table-seat-slot--west[data-v-e9e312b6]{grid-area:1 / 1 / 4 / 2}.table-seat-slot--east[data-v-e9e312b6]{grid-area:1 / 3 / 4 / 4}.mahjong-table--landscape[data-v-e9e312b6]{grid-template-columns:90px minmax(0,1fr) 90px;container-name:landscape-table}.central-discards[data-v-e9e312b6]{--hub-size: 68px;grid-area:center;align-self:center;justify-self:center;display:grid;width:100%;min-width:0;grid-template-columns:minmax(var(--tile-size),1fr) var(--hub-size) minmax(var(--tile-size),1fr);grid-template-rows:minmax(min-content,1fr) auto minmax(min-content,1fr);grid-template-areas:"north north north" "west hub east" "south south south";align-items:center;gap:9px}.table-discard-slot[data-v-e9e312b6]{width:100%;min-width:0}.table-discard-slot--north[data-v-e9e312b6]{grid-area:north;align-self:end}.table-discard-slot--south[data-v-e9e312b6]{grid-area:south;align-self:start}.table-discard-slot--west[data-v-e9e312b6]{grid-area:west}.table-discard-slot--east[data-v-e9e312b6]{grid-area:east}.wall-center[data-v-e9e312b6]{position:relative;grid-area:hub;place-self:center;display:grid;min-width:0}.wall-hub[data-v-e9e312b6]{position:relative;display:flex;width:var(--hub-size);aspect-ratio:1 / 1;flex-direction:column;align-items:center;justify-content:center;gap:1px;border:2px solid #b99152;border-radius:50%;background:radial-gradient(circle at 38% 28%,#625038,#30271f 70%);box-shadow:inset 0 0 0 4px #342a21,inset 0 0 0 5px #bc985455,0 3px #173d32,0 5px 12px #002b2b66;color:#e4d2a6}.hub-label[data-v-e9e312b6]{font-size:8px;line-height:1.2;letter-spacing:.08em}.hub-count[data-v-e9e312b6]{color:#fff0b9;font-size:23px;font-weight:600;line-height:1;font-variant-numeric:tabular-nums;text-shadow:0 1px 2px #19140c}.hub-direction[data-v-e9e312b6]{position:absolute;color:#c4a36b;font-size:8px;line-height:1}.hub-direction--north[data-v-e9e312b6]{top:5px;left:50%;transform:translate(-50%)}.hub-direction--south[data-v-e9e312b6]{bottom:5px;left:50%;transform:translate(-50%)}.hub-direction--west[data-v-e9e312b6]{left:5px;top:50%;transform:translateY(-50%)}.hub-direction--east[data-v-e9e312b6]{right:5px;top:50%;transform:translateY(-50%)}.table-empty[data-v-e9e312b6]{grid-column:1 / -1;grid-row:1 / 4;display:grid;place-content:center;justify-items:center;padding:20px;color:#e8edcf;text-align:center}.table-dialog[data-v-3fff9027]{width:min(480px,calc(100vw - 24px));max-height:calc(100dvh - 24px);margin:auto;padding:20px;overflow-y:auto;border:1px solid var(--ui-gold-line);border-top:3px solid var(--ui-gold);border-radius:16px;background:var(--ui-surface);color:var(--ui-ink);box-shadow:0 20px 70px #0008}.table-dialog[data-v-3fff9027]::backdrop{background:#061b15b3}.table-dialog>header[data-v-3fff9027]{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.table-dialog h2[data-v-3fff9027]{margin:0;color:var(--ui-gold-ink);font-size:20px;line-height:1.4}.table-dialog-content[data-v-3fff9027]{display:grid;gap:12px}@media(max-height:400px){.table-dialog[data-v-3fff9027]{padding:12px 16px}.table-dialog>header[data-v-3fff9027]{margin-bottom:8px}}.table-screen[data-v-3b4890b6]{position:relative;display:grid;width:100%;height:100dvh;min-height:180px;min-width:0;grid-template-rows:auto minmax(0,1fr) auto;gap:0;background:var(--felt-bg)}.table-screen-toolbar[data-v-3b4890b6]{display:flex;align-items:center;gap:6px;min-height:44px;padding:5px 12px;background:linear-gradient(180deg,#082d27bb,transparent)}.table-screen-quick[data-v-3b4890b6]{display:flex;align-items:center;gap:6px;margin-left:auto}.table-mode[data-v-3b4890b6]{color:#e6d8ae;font-size:12px}.table-screen-controls[data-v-3b4890b6]{display:flex;min-width:0;flex-wrap:wrap;align-items:center;gap:12px}.table-screen-board[data-v-3b4890b6]{min-width:0;min-height:0}.table-screen-status[data-v-3b4890b6]{display:flex;min-width:0;min-height:38px;flex-wrap:wrap;align-items:center;gap:4px 8px;padding:5px 12px;background:linear-gradient(0deg,#052c25cc,transparent);color:#dae4c9;font-size:12px;line-height:1.4}.table-training-options[data-v-3b4890b6]{display:flex;flex-wrap:wrap;gap:6px;padding-bottom:12px;border-bottom:1px solid var(--ui-line)}.table-training-options [aria-pressed=true][data-v-3b4890b6]{border-color:var(--ui-gold);color:var(--ui-gold-ink)}@media(max-height:450px),(max-width:480px){.table-screen-toolbar[data-v-3b4890b6]{min-height:38px;padding:3px 8px}.table-screen-status[data-v-3b4890b6]{padding:3px 8px;font-size:11px}}.table-actions[data-v-9d353a2c]{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:6px;max-width:100%}.table-actions[data-v-9d353a2c] button{min-width:42px;min-height:36px;padding:5px 12px;border:1px solid #c9a85f;border-radius:18px;background:linear-gradient(#f4df9e,#d8b768);box-shadow:0 2px 3px #003f354d;color:#4e3816;font-size:18px;font-weight:700;line-height:1.3;cursor:pointer;touch-action:manipulation}.table-actions[data-v-9d353a2c] button[data-action=win],.table-actions[data-v-9d353a2c] button[data-kind=win]{background:linear-gradient(#ffdfa1,#e9a54d);color:#74300d}.table-actions[data-v-9d353a2c] button[data-action=pass],.table-actions[data-v-9d353a2c] button[data-kind=pass]{border-color:#afccb3;background:#165d51;color:#e5edcf}.table-actions[data-v-9d353a2c] button:hover:not(:disabled){filter:brightness(1.12)}.table-actions[data-v-9d353a2c] button:focus-visible{outline:2px solid #fff3b8;outline-offset:3px}.table-actions[data-v-9d353a2c] button:disabled{opacity:.5;cursor:not-allowed}.table-river[data-v-dc8da66e]{display:flex;width:100%;min-width:0;flex-wrap:wrap;align-items:flex-start;gap:7px 2px;padding:16px 0 5px}.table-river--empty[data-v-dc8da66e]{padding:0}.discard-record[data-v-dc8da66e]{position:relative;display:inline-flex;flex:none}.is-claimed .river-tile[data-v-dc8da66e]{opacity:.45;box-shadow:0 2px #618168}.claimed-marker[data-v-dc8da66e]{position:absolute;z-index:2;top:-2px;right:-2px;display:grid;width:clamp(6px,calc(var(--tile-size) * .28),11px);height:clamp(6px,calc(var(--tile-size) * .28),11px);place-items:center;border-radius:3px;background:#bbccab;color:#285039;font-size:clamp(5px,calc(var(--tile-size) * .2),8px);line-height:1}.no-discards[data-v-dc8da66e]{color:#b2d1c080;font-size:8px;line-height:1.5;white-space:nowrap}.latest-discard-arrow[data-v-dc8da66e]{position:absolute;z-index:3;top:-13px;left:50%;transform:translate(-50%);color:#ffd362;font-size:15px;line-height:1;text-shadow:0 1px 2px #593608;animation:discard-arrow-dc8da66e .8s ease-in-out infinite alternate}.discard-record[data-latest][data-v-dc8da66e]{border-radius:3px;outline:2px solid #f4cd65}@keyframes discard-arrow-dc8da66e{to{transform:translate(-50%,-3px)}}@media(prefers-reduced-motion:reduce){.latest-discard-arrow[data-v-dc8da66e]{animation:none}}.fm-river[data-v-c93fc854]{display:flex;width:100%;min-width:0;flex-direction:column;align-items:center;gap:4px}.fm-river-heading[data-v-c93fc854]{color:#bed3c3;font-size:clamp(8px,.95cqw,11px);line-height:1.5;white-space:nowrap}.fm-river-heading b[data-v-c93fc854]{margin-left:3px;font-weight:400;color:#edf0d8}.fm-river-scroll[data-v-c93fc854]{justify-content:center}.fm-ledger[data-v-394208f2]{min-width:0}.fm-ledger-empty[data-v-394208f2],.fm-ledger-note[data-v-394208f2]{margin:0;color:var(--ui-muted);font-size:12px;line-height:1.8}.fm-ledger-list[data-v-394208f2]{max-height:360px;overflow-y:auto;overscroll-behavior:contain;margin:0;padding:0 4px;border-radius:4px;list-style:none;scrollbar-width:thin;scrollbar-color:var(--ui-line-strong) transparent}.fm-ledger-entry[data-v-394208f2]{display:grid;grid-template-columns:minmax(70px,.75fr) minmax(0,2fr) minmax(36px,auto);align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid var(--ui-line)}.fm-ledger-entry[data-v-394208f2]:last-child{border-bottom:0}.fm-ledger-route[data-v-394208f2]{display:grid;gap:6px;min-width:0}.fm-ledger-route>small[data-v-394208f2]{color:var(--ui-muted);font-size:11px}.fm-ledger-route>span[data-v-394208f2]{display:flex;flex-wrap:wrap;gap:6px;font-size:13px}.fm-ledger-route i[data-v-394208f2]{color:#9caa94;font-style:normal}.fm-ledger-reason[data-v-394208f2]{min-width:0;font-size:12px;line-height:1.65;overflow-wrap:anywhere}.fm-ledger-reason p[data-v-394208f2]{margin:0}.fm-ledger-reason>small[data-v-394208f2]{display:inline-block;margin:4px 8px 0 0;color:var(--ui-muted);font-size:11px}.fm-ledger-amount[data-v-394208f2]{min-width:0;color:var(--ui-green-strong);font-size:18px;font-weight:700;text-align:right;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.fm-ledger-amount small[data-v-394208f2]{margin-left:3px;color:var(--ui-muted);font-size:11px;font-weight:400}.fm-ledger-note[data-v-394208f2]{margin-top:8px;font-size:10px}@media(max-width:420px){.fm-ledger-entry[data-v-394208f2]{grid-template-columns:minmax(60px,.8fr) minmax(0,1.8fr) minmax(32px,auto);gap:8px}}.fm-settlement[data-v-43a8498a]{min-width:0;padding:24px;border:1px solid var(--ui-gold-line);border-radius:var(--ui-radius-lg);background:linear-gradient(180deg,#33260d,var(--ui-surface) 120px);box-shadow:inset 0 4px var(--ui-gold),var(--ui-shadow)}.fm-settlement--archived[data-v-43a8498a]{margin-top:12px;padding:0;border:0;border-radius:0;background:none;box-shadow:none}.fm-settlement-heading[data-v-43a8498a]{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 12px}.fm-result-kicker[data-v-43a8498a]{color:var(--ui-gold);font-size:12px;font-weight:600;letter-spacing:.12em}.fm-settlement-heading h2[data-v-43a8498a]{margin:4px 0 0;font-size:22px;font-weight:700}.fm-result-reason[data-v-43a8498a]{padding:4px 12px;border:1px solid var(--ui-gold-line);border-radius:999px;background:var(--ui-gold-soft);color:var(--ui-gold-ink);font-size:12px}.fm-final-result[data-v-43a8498a]{margin-top:16px;padding:16px;border:1px solid var(--ui-gold-line);border-radius:var(--ui-radius);background:var(--ui-gold-soft)}.fm-final-result p[data-v-43a8498a]{margin:0;color:var(--ui-gold-ink);font-size:13px;line-height:1.7}.fm-winners[data-v-43a8498a]{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0;padding:0;list-style:none}.fm-winners li[data-v-43a8498a]{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:8px 12px;border:1px solid #675938;border-radius:6px;background:#312b0c;font-size:14px}.fm-winners li>b[data-v-43a8498a]{display:grid;width:28px;height:28px;place-items:center;border-radius:50%;background:#6a5a2f;color:#e7ddc2;font-size:12px}.fm-winners strong[data-v-43a8498a]{font-weight:600;font-variant-numeric:tabular-nums}.fm-winners small[data-v-43a8498a]{margin-left:3px;font-size:10px;font-weight:400}.fm-standings[data-v-43a8498a]{width:100%;margin-top:16px;table-layout:fixed;border-collapse:collapse;font-size:13px}.fm-standings caption[data-v-43a8498a]{padding:0 0 8px;color:var(--ui-muted);text-align:left;font-size:12px}.fm-standings th[data-v-43a8498a],.fm-standings td[data-v-43a8498a]{padding:12px 8px;border-bottom:1px solid var(--ui-line);text-align:right;overflow-wrap:anywhere;font-variant-numeric:tabular-nums}.fm-standings thead th[data-v-43a8498a]{background:var(--ui-surface-muted);color:var(--ui-muted);font-size:12px;font-weight:600}.fm-standings th[data-v-43a8498a]:first-child{width:30%;text-align:left}.fm-standings tbody th[data-v-43a8498a]{font-weight:500}.fm-standings tbody th b[data-v-43a8498a]{margin-right:8px;color:#b3cfad}.fm-standings tbody th span[data-v-43a8498a]{font-size:12px}.fm-standing-status[data-v-43a8498a]{color:#adbba3;font-size:11px}.fm-standing-status--won[data-v-43a8498a]{color:#b0dfc1;font-weight:650}.fm-standings td>small[data-v-43a8498a]{display:block;margin-top:3px;color:#a2ae98;font-size:10px}.fm-score-negative[data-v-43a8498a]{color:#d79a86}.fm-score-positive[data-v-43a8498a]{color:#a7debc}.fm-next-dealer[data-v-43a8498a]{display:grid;gap:4px;margin:16px 0 0;color:#abb8a1;font-size:12px;line-height:1.7}.fm-next-dealer strong[data-v-43a8498a]{color:#b9d6bb;font-weight:600}.fm-settlement-actions[data-v-43a8498a]{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin-top:20px}.fm-settlement-actions p[data-v-43a8498a]{flex:1 1 230px;margin:0;color:var(--ui-muted);font-size:13px;line-height:1.7}@media(max-width:520px){.fm-settlement[data-v-43a8498a]{padding:16px 12px}.fm-settlement--archived[data-v-43a8498a]{padding:0}.fm-settlement-heading h2[data-v-43a8498a]{font-size:19px}.fm-standings th[data-v-43a8498a],.fm-standings td[data-v-43a8498a]{padding:10px 5px}.fm-standings tbody th span[data-v-43a8498a]{display:block;margin-top:4px;font-size:10px}.fm-settlement-actions>button[data-v-43a8498a]{width:100%}.fm-final-result[data-v-43a8498a]{padding:12px}}.fm-rules-content[data-v-6cdf263f]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;padding:4px 20px 20px}.fm-rules-content>section[data-v-6cdf263f]{min-width:0;padding:16px;border:1px solid var(--ui-line);border-radius:var(--ui-radius);background:var(--ui-surface-muted)}.fm-rules h3[data-v-6cdf263f]{margin:0 0 8px;color:var(--ui-green-strong);font-size:14px;font-weight:700}.fm-rules p[data-v-6cdf263f]{margin:8px 0 0;color:var(--ui-text);font-size:13px;line-height:1.85;overflow-wrap:anywhere}.fm-rules strong[data-v-6cdf263f]{color:var(--ui-gold-ink);font-weight:700}.fm-rules .fm-score-formula[data-v-6cdf263f]{padding:8px 12px;border:1px solid var(--ui-gold-line);border-radius:var(--ui-radius-sm);background:var(--ui-gold-soft);color:var(--ui-gold-ink);font-family:var(--ui-mono)}@media(max-width:640px){.fm-rules-content[data-v-6cdf263f]{grid-template-columns:minmax(0,1fr);gap:12px;padding-right:16px;padding-left:16px}}.fm-confirm[data-v-04a245ed]{width:min(440px,calc(100vw - 32px));max-height:calc(100dvh - 32px);margin:auto;padding:28px;overflow-y:auto;border:1px solid var(--ui-line);border-top:4px solid var(--ui-danger);border-radius:var(--ui-radius-lg);background:var(--ui-surface);color:var(--ui-ink);box-shadow:0 24px 70px #08271e40}.fm-confirm[open][data-v-04a245ed]{animation:fm-dialog-in-04a245ed .22s cubic-bezier(.2,.8,.3,1.1)}.fm-confirm[data-v-04a245ed]::backdrop{background:#0b211bc4;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.fm-confirm-kicker[data-v-04a245ed]{color:var(--ui-danger);font-size:12px;font-weight:600;letter-spacing:.12em}.fm-confirm h2[data-v-04a245ed]{margin:8px 0 12px;font-size:21px;font-weight:700;line-height:1.4}.fm-confirm p[data-v-04a245ed]{margin:0;color:var(--ui-muted);font-size:14px;line-height:1.85;overflow-wrap:anywhere}.fm-confirm-actions[data-v-04a245ed]{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end;margin-top:24px}.fm-confirm-actions>button[data-v-04a245ed]{flex:1 1 150px}.fm-confirm .fm-confirm-blocked[data-v-04a245ed]{margin-top:12px;color:var(--ui-danger)}@keyframes fm-dialog-in-04a245ed{0%{opacity:0;transform:translateY(10px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@media(prefers-reduced-motion:reduce){.fm-confirm[open][data-v-04a245ed]{animation:none}}.pr-review[data-v-1c9f6bdf]{min-width:0;padding:24px;border:1px solid var(--ui-line);border-radius:var(--ui-radius-lg);background:var(--ui-surface);box-shadow:var(--ui-shadow)}.pr-verdict[data-v-1c9f6bdf]{display:flex;flex-wrap:wrap;align-items:flex-start;gap:12px 16px}.pr-verdict>div[data-v-1c9f6bdf]{flex:1 1 280px;min-width:0}.pr-verdict h2[data-v-1c9f6bdf]{margin:0;color:var(--ui-ink);font-size:17px;font-weight:700;line-height:1.7;overflow-wrap:anywhere}.pr-grade[data-v-1c9f6bdf]{flex:none;padding:6px 14px;border-radius:20px;font-size:14px;font-weight:650}.pr-grade--best[data-v-1c9f6bdf]{background:var(--ui-green);color:var(--ui-on-accent)}.pr-grade--equivalent[data-v-1c9f6bdf]{background:#314029;color:#b9dcbd}.pr-grade--minor[data-v-1c9f6bdf]{background:#4d3f1e;color:#ead2a3}.pr-grade--mistake[data-v-1c9f6bdf]{background:#4b2d21;color:#e3a595}.pr-verdict .pr-uncertain[data-v-1c9f6bdf]{margin:4px 0 0;color:#cbb696;font-size:13px;line-height:1.8}.pr-why[data-v-1c9f6bdf]{margin-top:16px;padding:14px 16px;border-radius:8px;background:#252d1d;color:#bbd4b8;font-size:13px;line-height:1.9;overflow-wrap:anywhere}.pr-why h3[data-v-1c9f6bdf]{margin:0 0 4px;color:var(--ui-ink);font-size:14px;font-weight:700}.pr-cause[data-v-1c9f6bdf]{margin:0;font-weight:600}.pr-lines[data-v-1c9f6bdf]{margin:6px 0 0;padding-left:20px}.pr-lines--tradeoff[data-v-1c9f6bdf]{color:#ead2a3}.pr-table-wrap[data-v-1c9f6bdf]{max-width:100%;margin-top:16px;overflow-x:auto;scrollbar-width:thin}.pr-table[data-v-1c9f6bdf]{width:100%;min-width:640px;border-collapse:collapse;color:#c2d4bf;font-size:12px;font-variant-numeric:tabular-nums}.pr-table--compare[data-v-1c9f6bdf]{min-width:420px;font-size:13px}.pr-table th[data-v-1c9f6bdf],.pr-table td[data-v-1c9f6bdf]{padding:8px 10px;border-bottom:1px solid #32392b;text-align:left;white-space:nowrap}.pr-table thead th[data-v-1c9f6bdf]{background:var(--ui-surface-muted);color:var(--ui-muted);font-size:12px;font-weight:600}.pr-table tbody th[data-v-1c9f6bdf]{font-weight:500}.pr-row--best[data-v-1c9f6bdf]{background:#27311e}.pr-row--chosen th[data-v-1c9f6bdf]{color:#e9c598}.pr-choice[data-v-1c9f6bdf]{display:inline-flex;align-items:center;gap:8px}.pr-choice em[data-v-1c9f6bdf]{padding:1px 6px;border-radius:4px;background:#4d3f1e;color:#ead2a3;font-size:10px;font-style:normal}.pr-choice-tile[data-v-1c9f6bdf]{flex:none}.pr-all[data-v-1c9f6bdf]{margin-top:14px}.pr-all summary[data-v-1c9f6bdf]{cursor:pointer;color:var(--ui-muted);font-size:13px}.pr-note[data-v-1c9f6bdf]{margin:12px 0 0;color:var(--ui-muted);font-size:12px;line-height:1.85}@media(max-width:680px){.pr-review[data-v-1c9f6bdf]{padding:16px 12px}}.mr-review[data-v-2af9b643]{display:grid;gap:14px}.mr-head[data-v-2af9b643]{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:8px 16px}.mr-head>div[data-v-2af9b643]{min-width:0;flex:1 1 320px}.mr-steps[data-v-2af9b643]{display:flex;flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none}.mr-step[data-v-2af9b643]{display:inline-flex;max-width:220px;align-items:center;gap:6px;min-height:34px;padding:4px 10px;border:1px solid var(--ui-line);border-radius:8px;background:var(--ui-paper);color:var(--ui-muted);font-size:12px;cursor:pointer}.mr-step b[data-v-2af9b643]{color:var(--ui-ink);font-variant-numeric:tabular-nums}.mr-step span[data-v-2af9b643]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mr-step em[data-v-2af9b643]{flex:none;padding:0 6px;border-radius:4px;font-style:normal;font-weight:700}.mr-step[data-grade=best] em[data-v-2af9b643]{background:var(--ui-green);color:var(--ui-on-accent)}.mr-step[data-grade=equivalent] em[data-v-2af9b643]{background:#314029;color:#b9dcbd}.mr-step[data-grade=minor] em[data-v-2af9b643]{background:#4d3f1e;color:#ead2a3}.mr-step[data-grade=mistake] em[data-v-2af9b643]{background:#4b2d21;color:#e3a595}.mr-step[data-grade=error] em[data-v-2af9b643]{color:#e3a595}.mr-step[aria-pressed=true][data-v-2af9b643]{border-color:#d9cc92;background:var(--ui-surface);color:var(--ui-ink)}.mr-step[data-v-2af9b643]:focus-visible{outline:3px solid #f1d999;outline-offset:2px}.mr-detail[data-v-2af9b643]{display:grid;min-width:0;gap:12px}.mr-detail-bar[data-v-2af9b643]{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 12px}.mr-detail-bar strong[data-v-2af9b643]{min-width:0;color:var(--ui-ink);font-size:14px;overflow-wrap:anywhere}.mr-detail-actions[data-v-2af9b643],.mr-refine[data-v-2af9b643]{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.mr-detail .ui-chip[data-v-2af9b643]{justify-self:start}.dual-archive[data-v-0c084a96]{display:grid;gap:12px;min-width:0}.dual-archive header[data-v-0c084a96],.dual-tools[data-v-0c084a96]{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px}.dual-archive h3[data-v-0c084a96],.dual-archive p[data-v-0c084a96]{margin:0}.dual-summary[data-v-0c084a96]{display:grid;gap:5px;padding:12px;background:var(--ui-green-soft);border-radius:8px}.dual-summary small[data-v-0c084a96],.dual-id[data-v-0c084a96]{color:var(--ui-muted)}.dual-rounds[data-v-0c084a96]{display:grid;gap:8px;margin:0;padding:0;list-style:none}.dual-rounds li[data-v-0c084a96]{border:1px solid var(--ui-line);border-radius:8px;padding:10px}.dual-rounds summary[data-v-0c084a96]{display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px;cursor:pointer}.dual-rounds summary small[data-v-0c084a96]{margin-left:auto}.dual-rounds details[open][data-v-0c084a96]{display:grid;gap:10px}.dual-id[data-v-0c084a96]{overflow-wrap:anywhere;font-size:11px}.dual-archive table[data-v-0c084a96]{border-collapse:collapse;table-layout:fixed;width:100%;font-size:12px}.dual-archive th[data-v-0c084a96],.dual-archive td[data-v-0c084a96]{text-align:center;padding:6px 2px;border-bottom:1px solid var(--ui-line);overflow-wrap:anywhere}.dual-archive caption[data-v-0c084a96]{text-align:left;margin-bottom:6px}.dual-error[data-v-0c084a96]{color:#f4a79c;overflow-wrap:anywhere}@media(max-width:400px){.dual-archive[data-v-0c084a96]{padding:10px}.dual-tools .ui-button[data-v-0c084a96]{padding:8px;font-size:12px}}.fm-win-preview[data-v-9060b1b0]{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 12px;padding:12px 16px;border:1px solid var(--ui-gold-line);border-radius:var(--ui-radius);background:linear-gradient(180deg,#3e3416,var(--ui-gold-soft));color:var(--ui-gold-ink);font-size:13px;line-height:1.7}.fm-win-preview strong[data-v-9060b1b0]{color:#f3dfbb;font-size:17px}.fm-win-preview small[data-v-9060b1b0]{flex-basis:100%;font-size:12px}.fm-pass-warning[data-v-9060b1b0],.fm-ui-notice[data-v-9060b1b0]{margin:0;color:var(--ui-gold-ink);font-size:12px;line-height:1.7}.fm-record-note[data-v-9060b1b0]{margin-bottom:8px;font-size:12px}.fm-archive-ledger-heading[data-v-9060b1b0]{margin:20px 0 8px;font-size:14px;font-weight:700}.fm-action-notices[data-v-9060b1b0]{display:grid;gap:10px;margin:0;padding:0;list-style:none}.fm-action-notices li[data-v-9060b1b0]{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:10px;border-radius:8px;background:var(--ui-green-soft)}.fm-action-notices b[data-v-9060b1b0]{color:var(--ui-gold-ink)}.fm-welcome h1[data-v-9060b1b0]{color:#ead8a4;font-size:clamp(20px,3vw,36px);font-family:STKaiti,KaiTi,serif;font-weight:500}.fm-welcome>span[data-v-9060b1b0],.fm-welcome p[data-v-9060b1b0]{color:#b8ceac;font-size:12px;letter-spacing:.12em}.ui-setup-form[data-v-9060b1b0]{width:min(390px,100%);padding:20px;text-align:left}.ui-setup-form h2[data-v-9060b1b0]{margin:0 0 8px}@media(max-height:600px){.ui-setup-form[data-v-9060b1b0]{padding:12px 16px}.ui-setup-form .ui-note[data-v-9060b1b0],.ui-setup-form .ui-kicker[data-v-9060b1b0]{display:none}.ui-setup-form h2[data-v-9060b1b0]{font-size:18px}.ui-setup-form .ui-presets[data-v-9060b1b0]{margin:6px 0}.ui-setup-form .ui-presets button[data-v-9060b1b0]{min-height:48px;padding:4px 12px}.ui-setup-form .ui-field-help[data-v-9060b1b0]{margin:4px 0;font-size:11px}}.pd-panel[data-v-243b6201]{display:grid;min-width:0;gap:14px;padding:24px;border:1px solid var(--ui-line);border-radius:var(--ui-radius-lg);background:var(--ui-surface);box-shadow:var(--ui-shadow)}.pd-panel header h2[data-v-243b6201]{margin:0;color:var(--ui-ink);font-size:17px;font-weight:700}.pd-panel header p[data-v-243b6201]{margin:4px 0 0;color:var(--ui-muted);font-size:13px;line-height:1.8}.pd-facts[data-v-243b6201]{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:10px}.pd-facts dl[data-v-243b6201]{margin:0;padding:12px 14px;border-radius:8px;background:var(--ui-surface-muted);font-size:13px;line-height:1.8;overflow-wrap:anywhere}.pd-facts dt[data-v-243b6201]{color:var(--ui-ink);font-weight:700}.pd-facts dd[data-v-243b6201]{margin:0;color:var(--ui-text)}.pd-facts dd span[data-v-243b6201]{display:inline-block;min-width:48px;color:var(--ui-muted)}.pd-form[data-v-243b6201]{display:grid;gap:10px}.pd-form fieldset[data-v-243b6201]{display:grid;min-width:0;gap:10px;margin:0;padding:0;border:0}.pd-form legend[data-v-243b6201]{margin-bottom:8px;color:var(--ui-ink);font-size:13px;font-weight:600}.pd-form>.ui-button[data-v-243b6201]{justify-self:start}.pd-reasons[data-v-243b6201]{display:flex;flex-wrap:wrap;gap:8px}.pd-reason[data-v-243b6201]{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border:1px solid var(--ui-line);border-radius:999px;background:var(--ui-surface-muted);color:var(--ui-text);font-size:13px;cursor:pointer}.pd-reason input[data-v-243b6201]{margin:0;accent-color:var(--ui-green)}.pd-reason--selected[data-v-243b6201]{border-color:var(--ui-green-line);background:var(--ui-green-soft);color:var(--ui-green-strong)}.pd-comment[data-v-243b6201]{width:100%;min-height:76px;resize:vertical;font:inherit;line-height:1.7}.pd-result[data-v-243b6201]{padding:14px 16px;border-radius:8px;background:#f6f0e1;color:#5c4a22;font-size:13px;line-height:1.9;overflow-wrap:anywhere}.pd-result[data-tone=tie][data-v-243b6201]{background:#f1f6ec;color:#3e5f39}.pd-result h3[data-v-243b6201]{margin:0;color:var(--ui-ink);font-size:15px;font-weight:700}.pd-result p[data-v-243b6201]{margin:2px 0 0}.pd-result ul[data-v-243b6201]{margin:6px 0 0;padding-left:20px}.pd-result li[data-status=holds][data-v-243b6201]{color:#2f5d34}.pd-result li[data-status=fails][data-v-243b6201]{color:#8d3a25}.pd-result li[data-status=unverifiable][data-v-243b6201],.pd-quote[data-v-243b6201]{color:var(--ui-muted)}.pd-footer[data-v-243b6201]{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;color:var(--ui-muted);font-size:13px}.pd-footer small[data-v-243b6201]{flex:1 1 100%;color:var(--ui-faint);font-size:12px;line-height:1.7}.pd-notice[data-v-243b6201]{margin:0;color:var(--ui-green);font-size:13px}@media(max-width:680px){.pd-panel[data-v-243b6201]{padding:16px 12px}.pd-form>.ui-button[data-v-243b6201]{justify-self:stretch}}.pt-empty[data-v-92ac3b37]{margin:0;font-size:15px}.table-seat[data-v-26160f8b]{--hand-gap: clamp(1px, .27cqw, 3px);position:relative;display:flex;width:100%;min-width:0;flex-direction:column;align-items:center;gap:5px}.table-seat--south[data-v-26160f8b]{flex-direction:column-reverse}.seat-badge[data-v-26160f8b]{max-width:100%;min-height:24px;flex-wrap:wrap;justify-content:center;gap:2px 4px;padding:3px 4px;cursor:pointer;transition:background .15s,border-color .15s}.table-seat--west .seat-badge[data-v-26160f8b],.table-seat--east .seat-badge[data-v-26160f8b]{align-self:center}.table-seat--west .seat-badge small[data-v-26160f8b],.table-seat--east .seat-badge small[data-v-26160f8b]{flex-basis:100%;text-align:center}.seat-badge[data-v-26160f8b]:disabled{opacity:1;cursor:default}.seat-badge[data-v-26160f8b]:focus-visible{outline:2px solid #f4d28b;outline-offset:3px}.seat-badge[data-v-26160f8b]:hover:not(:disabled){border-color:#dfbd7299;background:#174a3f99}.seat-badge strong[data-v-26160f8b]{font-size:clamp(10px,1.13cqw,13px);font-weight:600}.seat-badge small[data-v-26160f8b]{color:#c7d9c8;font-size:clamp(8px,.95cqw,11px);line-height:1.5}.is-retired .seat-badge small[data-v-26160f8b]{color:#edcf9d}.seat-dealer[data-v-26160f8b]{color:#efcf81;font-size:9px}.seat-rack[data-v-26160f8b]{display:flex;max-width:100%;flex-wrap:wrap;align-items:flex-start;justify-content:center;gap:clamp(2px,.6cqw,8px);padding:2px}.rack-hand[data-v-26160f8b],.rack-melds[data-v-26160f8b],.meld-tiles[data-v-26160f8b]{display:flex;flex:none;flex-wrap:nowrap;align-items:flex-start;justify-content:center}.rack-hand[data-v-26160f8b]{max-width:100%;flex-wrap:wrap;gap:6px var(--hand-gap);padding:2px 2px 6px}.retired-count[data-v-26160f8b]{flex:none;align-self:center;color:#edcf9d;font-size:clamp(8px,.95cqw,11px);line-height:1.5;white-space:nowrap}.rack-melds[data-v-26160f8b]{order:-1;max-width:100%;flex-wrap:wrap;gap:clamp(2px,.5cqw,7px);padding-top:2px}.rack-meld[data-v-26160f8b]{display:flex;min-width:0;flex:none;flex-direction:column;align-items:center;gap:8px}.meld-tiles[data-v-26160f8b]{gap:6px 1px}.rack-meld>small[data-v-26160f8b]{color:#cfddc6;font-size:clamp(8px,.85cqw,10px);line-height:1.3;white-space:nowrap}.table-seat--west .seat-rack[data-v-26160f8b],.table-seat--east .seat-rack[data-v-26160f8b]{max-width:100%;flex-direction:column;align-items:center;gap:3px}.table-seat--west .rack-win[data-v-26160f8b],.table-seat--east .rack-win[data-v-26160f8b]{flex-wrap:wrap;justify-content:center}.table-seat--west .rack-hand[data-v-26160f8b],.table-seat--east .rack-hand[data-v-26160f8b],.table-seat--west .rack-melds[data-v-26160f8b],.table-seat--east .rack-melds[data-v-26160f8b],.table-seat--west .meld-tiles[data-v-26160f8b],.table-seat--east .meld-tiles[data-v-26160f8b]{flex-direction:column;align-items:center}.table-seat--west .rack-hand[data-v-26160f8b],.table-seat--east .rack-hand[data-v-26160f8b]{gap:6px}.hand-record[data-v-26160f8b],.winning-record[data-v-26160f8b]{position:relative;display:inline-flex;flex:none}.win-marker[data-v-26160f8b],.drawn-marker[data-v-26160f8b]{top:-4px;right:-4px}.winning-record[data-v-26160f8b],.is-drawn[data-v-26160f8b]{border-radius:4px;outline:2px solid #dfbd73}.rack-win[data-v-26160f8b]{display:flex;flex:none;flex-wrap:nowrap;align-items:center;gap:4px;padding:4px 0}.win-source[data-v-26160f8b]{color:#edcf9d;font-size:clamp(8px,.95cqw,11px);line-height:1.5;white-space:nowrap}@container (min-width: 80px){.table-seat--west .rack-hand[data-v-26160f8b],.table-seat--east .rack-hand[data-v-26160f8b]{display:grid;grid-template-columns:repeat(2,max-content);gap:6px 2px}.table-seat--west .retired-count[data-v-26160f8b],.table-seat--east .retired-count[data-v-26160f8b]{grid-column:1 / -1}.table-seat--west .rack-melds[data-v-26160f8b],.table-seat--east .rack-melds[data-v-26160f8b]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 4px}}@container landscape-table (min-width: 0px){.table-seat--north[data-v-26160f8b],.table-seat--south[data-v-26160f8b]{flex-direction:row;flex-wrap:wrap;justify-content:center;gap:5px 12px}}.discard-strip[data-v-fe4501da]{display:flex;width:100%;min-width:0;min-height:0;flex-direction:column;align-items:center;gap:4px}.discards-label[data-v-fe4501da]{flex:none;align-self:center;color:#bed3c3;font-size:clamp(8px,.95cqw,11px);line-height:1.5;white-space:nowrap}.discards-label b[data-v-fe4501da]{margin-left:3px;font-weight:400;color:#edf0d8}.discard-grid[data-v-fe4501da]{flex:none;justify-content:center}.new-round-icon[data-v-95913c16]{width:16px;height:16px}.generation-line[data-v-95913c16]{display:flex;align-items:center;gap:10px}.generation-line small[data-v-95913c16]{display:block}.loading-spinner[data-v-95913c16]{width:15px;height:15px;flex:none;border:2px solid #53604b;border-top-color:var(--ui-green);border-radius:50%;animation:spin-95913c16 .8s linear infinite}@keyframes spin-95913c16{to{transform:rotate(360deg)}}.hint-toolbar[data-v-95913c16]{display:flex;flex-wrap:wrap;align-items:center;gap:8px 16px}.hint-toggle[data-v-95913c16]{display:inline-flex;min-height:38px;flex:none;align-items:center;gap:10px;padding:6px 14px 6px 8px;border:1px solid var(--ui-line-strong);border-radius:999px;background:var(--ui-surface);color:var(--ui-text);font-size:13px;font-weight:600;cursor:pointer}.hint-toggle small[data-v-95913c16]{color:var(--ui-faint);font-size:12px;font-weight:400}.hint-toggle[data-v-95913c16]:disabled{opacity:.5;cursor:not-allowed}.hint-toggle-track[data-v-95913c16]{display:flex;width:32px;height:18px;padding:2px;border-radius:12px;background:#535749;transition:background-color .16s ease-out}.hint-toggle-track i[data-v-95913c16]{width:14px;height:14px;border-radius:50%;background:#fff;box-shadow:0 1px 2px #0003;transition:transform .16s ease-out}.hint-toggle[aria-checked=true][data-v-95913c16]{border-color:var(--ui-green-line);background:var(--ui-green-soft);color:var(--ui-green-strong)}.hint-toggle[aria-checked=true] .hint-toggle-track[data-v-95913c16]{background:var(--ui-green)}.hint-toggle[aria-checked=true] .hint-toggle-track i[data-v-95913c16]{transform:translate(14px)}.hint-status[data-v-95913c16]{flex:1 1 220px;margin:0;color:var(--ui-muted);font-size:12px;line-height:1.7}.hint-status.is-error[data-v-95913c16]{color:var(--ui-danger)}.empty-tiles[data-v-95913c16]{display:flex;align-items:center;gap:8px;margin-bottom:16px}.home-empty-title[data-v-95913c16]{margin:10px 0;font-size:20px;font-weight:600}.home-empty-hint[data-v-95913c16]{margin:0;color:#c0d5bb;font-size:13px;line-height:1.8}.guess-panel-heading[data-v-95913c16]{display:flex;align-items:center;justify-content:space-between;gap:10px}.guess-panel-heading>div[data-v-95913c16]{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 14px}.guess-progress[data-v-95913c16]{color:var(--ui-muted);font-size:13px}.target-picker[data-v-95913c16]{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0 22px}.target-picker>button[data-v-95913c16]{display:flex;min-height:40px;align-items:center;gap:8px;padding:4px 14px 4px 5px;border:1px solid var(--ui-line);border-radius:999px;background:var(--ui-surface-muted);color:var(--ui-muted);cursor:pointer}.target-picker>button[data-v-95913c16]:hover:not(:disabled){border-color:var(--ui-green-line)}.target-picker>button.selected[data-v-95913c16]{border-color:var(--ui-green);background:var(--ui-green-soft);color:var(--ui-green-strong);box-shadow:inset 0 0 0 1px var(--ui-green)}.target-picker>button[data-v-95913c16]:disabled{opacity:.5;cursor:not-allowed}.target-letter[data-v-95913c16]{display:grid;width:28px;height:28px;place-items:center;border-radius:50%;background:#3a372b;font-size:12px;font-weight:700}.selected .target-letter[data-v-95913c16]{background:var(--ui-green);color:var(--ui-on-accent)}.target-picker strong[data-v-95913c16]{font-size:13px;font-weight:600}.target-picker small[data-v-95913c16]{color:var(--ui-faint);font-size:12px}.target-saved[data-v-95913c16]{color:var(--ui-green);font-size:12px;font-weight:700}.guess-editor[data-v-95913c16]{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:32px}.guess-draft[data-v-95913c16],.tile-picker[data-v-95913c16]{min-width:0}.draft-heading[data-v-95913c16]{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin-bottom:10px;color:var(--ui-muted);font-size:13px}.draft-heading b[data-v-95913c16]{color:var(--ui-ink)}.draft-heading em[data-v-95913c16]{margin-left:6px;padding:1px 8px;border-radius:999px;background:var(--ui-gold-soft);color:var(--ui-gold-ink);font-size:12px;font-style:normal}.draft-heading>strong[data-v-95913c16]{color:var(--ui-green);font-size:22px;font-weight:700;font-variant-numeric:tabular-nums}.draft-heading>strong small[data-v-95913c16]{color:var(--ui-faint);font-size:13px;font-weight:400}.guess-slots[data-v-95913c16]{display:grid;min-height:84px;grid-template-columns:repeat(auto-fill,var(--tile-size));align-content:center;align-items:center;gap:8px 4px;padding:12px 12px 16px;border:1px solid var(--ui-line);border-radius:var(--ui-radius);background:var(--ui-surface-muted)}.guess-slots.is-complete[data-v-95913c16]{border-color:var(--ui-green);background:var(--ui-green-soft)}.guess-slots.is-invalid[data-v-95913c16]{border-color:var(--ui-danger-line);background:var(--ui-danger-soft)}.empty-guess-slot[data-v-95913c16]{display:grid;width:var(--tile-size);height:calc(var(--tile-size) * 4 / 3);place-items:center;border:1px dashed var(--ui-line-strong);border-radius:3px;color:var(--ui-faint);font-size:11px}.guess-tile-button[data-v-95913c16]{position:relative;display:flex;padding:0;border:0;border-radius:4px;background:none;cursor:pointer}.guess-tile-button[data-v-95913c16]:disabled{opacity:.45;cursor:not-allowed}.remove-mark[data-v-95913c16]{position:absolute;top:-5px;right:-4px;display:grid;width:14px;height:14px;place-items:center;border-radius:50%;background:var(--ui-danger);color:var(--ui-on-accent);font-size:10px;line-height:1}.draft-hint[data-v-95913c16],.picker-hint[data-v-95913c16]{margin:10px 0 0;color:var(--ui-muted);font-size:12px;line-height:1.7}.guess-actions[data-v-95913c16]{display:flex;gap:10px;margin-top:16px}.save-guess-button[data-v-95913c16]{flex:1}.guess-notice[data-v-95913c16]{min-height:20px;margin:10px 0 0;color:var(--ui-green);font-size:12px;line-height:1.7}.guess-notice.is-error[data-v-95913c16]{color:var(--ui-danger)}.tile-picker[data-v-95913c16]{padding-top:4px}.suit-picker[data-v-95913c16]{display:grid;grid-template-columns:22px minmax(0,1fr);align-items:center;gap:8px;margin-bottom:16px}.suit-label[data-v-95913c16]{display:grid;width:22px;height:22px;place-items:center;border-radius:50%;background:var(--ui-green-soft);color:var(--ui-green);font-size:12px;font-weight:700}.suit-tiles[data-v-95913c16]{display:grid;grid-template-columns:repeat(auto-fill,var(--tile-size));gap:10px 6px;padding-bottom:5px}.tile-choice[data-v-95913c16]{position:relative;display:flex;width:100%;padding:0;border:0;border-radius:4px;background:none;cursor:pointer;transition:transform .12s}.tile-choice[data-v-95913c16]:disabled{opacity:.28;cursor:not-allowed}.tile-choice[data-v-95913c16]:hover:not(:disabled){transform:translateY(-3px)}.copy-count[data-v-95913c16]{position:absolute;z-index:1;right:-4px;bottom:-5px;display:grid;width:15px;height:15px;place-items:center;border:1px solid var(--ui-surface);border-radius:50%;background:var(--ui-green);color:var(--ui-on-accent);font-size:9px;font-weight:700;line-height:1}.picker-hint[data-v-95913c16]{margin-left:30px}.training-copy[data-v-95913c16]{display:grid;gap:6px;margin-bottom:12px}.training-copy p[data-v-95913c16]{margin:0;color:var(--ui-muted);font-size:13px;line-height:1.8}@media(max-width:720px){.guess-editor[data-v-95913c16]{grid-template-columns:minmax(0,1fr);gap:20px}.guess-draft[data-v-95913c16]{display:grid;grid-row:2;grid-template-columns:minmax(0,1fr)}.guess-actions[data-v-95913c16]{order:5}.guess-notice[data-v-95913c16]{order:6}.tile-picker[data-v-95913c16]{grid-row:1;padding-top:0}.target-picker[data-v-95913c16]{margin-bottom:20px}.suit-tiles[data-v-95913c16]{gap:8px}.guess-slots[data-v-95913c16]{min-height:76px}.home-caption[data-v-95913c16]>:last-child{display:none}}@media(max-width:640px){.target-picker[data-v-95913c16]{gap:6px}.target-picker>button[data-v-95913c16]{gap:6px;padding-right:10px}.target-letter[data-v-95913c16]{width:24px;height:24px;font-size:11px}.home-empty-title[data-v-95913c16]{font-size:17px}.home-empty-hint[data-v-95913c16]{font-size:12px}}@media(max-width:380px){.suit-tiles[data-v-95913c16]{gap:5px}.copy-count[data-v-95913c16]{width:13px;height:13px;font-size:8px}.target-picker>button[data-v-95913c16]{gap:4px}}@media(prefers-reduced-motion:reduce){.loading-spinner[data-v-95913c16]{animation:none}.tile-choice[data-v-95913c16],.hint-toggle-track[data-v-95913c16],.hint-toggle-track i[data-v-95913c16]{transition:none}}.tn-section[data-v-b82ed0da]{display:grid;gap:12px}.tn-section .ui-card-title small[data-v-b82ed0da]{margin-left:6px;color:var(--ui-faint);font-size:13px;font-weight:400}.tn-table-wrap[data-v-b82ed0da]{max-width:100%;overflow-x:auto;scrollbar-width:thin}.tn-table[data-v-b82ed0da]{width:100%;min-width:480px;border-collapse:collapse;color:#c2d4bf;font-size:13px;font-variant-numeric:tabular-nums}.tn-table th[data-v-b82ed0da],.tn-table td[data-v-b82ed0da]{padding:8px 10px;border-bottom:1px solid #32392b;text-align:left;white-space:nowrap}.tn-table thead th[data-v-b82ed0da]{background:var(--ui-surface-muted);color:var(--ui-muted);font-size:12px;font-weight:600}.tn-table tbody th[data-v-b82ed0da]{color:var(--ui-ink);font-weight:500}.tn-row--phase th[data-v-b82ed0da],.tn-row--phase td[data-v-b82ed0da]{color:var(--ui-muted)}.tn-clear[data-v-b82ed0da]{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.tn-mistakes[data-v-b82ed0da]{display:grid;gap:8px;margin:0;padding:0;list-style:none}.tn-mistake[data-v-b82ed0da]{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 16px;padding:12px 14px;border:1px solid var(--ui-line);border-radius:8px;background:var(--ui-paper)}.tn-mistake>div[data-v-b82ed0da]:first-child{display:grid;min-width:0;flex:1 1 280px;gap:2px}.tn-mistake strong[data-v-b82ed0da]{color:var(--ui-ink);font-size:14px;overflow-wrap:anywhere}.tn-mistake span[data-v-b82ed0da]{color:var(--ui-muted);font-size:12px;line-height:1.7}.tn-mistake-actions[data-v-b82ed0da]{display:flex;gap:8px}.listening-panel[data-v-70906655]{display:grid;justify-items:center;gap:9px;color:#f0e4bf;font-size:13px}.listening-options[data-v-70906655]{display:flex;justify-content:center;flex-wrap:wrap;gap:3px}.listening-option[data-v-70906655]{display:flex;padding:0;border:1px solid transparent;border-radius:4px;background:transparent;cursor:pointer;touch-action:manipulation}.listening-option[aria-pressed=true][data-v-70906655]{border-color:#ffe08a;outline:2px solid #ffe08a;outline-offset:1px}.listening-option[data-v-70906655]:focus-visible{outline:2px solid white;outline-offset:2px}.listening-option[data-v-70906655]:disabled{cursor:default}.listening-hand[data-v-70906655]{display:flex;justify-content:center;flex-wrap:wrap;gap:2px;row-gap:6px}.tr-shell[data-v-c43728b0]{min-width:0}.tr-tabs[data-v-c43728b0]{display:flex;flex-wrap:wrap;gap:8px;padding:12px}.offline-bar[data-v-199cd025]{max-width:1200px;margin:12px auto 0;padding:0 24px;color:var(--ui-muted);font-size:12px;overflow-wrap:anywhere}.offline-bar__summary[data-v-199cd025]{display:flex;min-width:0;flex-wrap:wrap;align-items:center;gap:6px 12px}.offline-bar p[data-v-199cd025]{margin:0}.offline-bar__summary>p[data-v-199cd025]{flex:1 1 180px}.offline-bar__summary .ui-button[data-v-199cd025]{min-height:40px;padding:6px 10px;font-size:12px}.offline-bar__help[data-v-199cd025]{display:grid;gap:8px;margin-top:8px;padding:12px;border:1px solid var(--ui-line);border-radius:var(--ui-radius);background:var(--ui-surface)}.offline-bar__help strong[data-v-199cd025],.offline-bar__update[data-v-199cd025]{color:var(--ui-gold-ink)}.offline-bar__error[data-v-199cd025]{color:var(--ui-danger-strong)}.offline-bar .offline-bar__update[data-v-199cd025]{margin-top:8px}@media(max-width:680px){.offline-bar[data-v-199cd025]{padding:0 12px}}.mj-view-shell[data-v-2c316ea4]{min-width:0;min-height:100dvh}.home-lobby[data-v-2c316ea4]{position:relative;display:flex;min-height:calc(100dvh - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px));flex-direction:column;align-items:center;justify-content:center;gap:clamp(24px,5vh,60px);padding:70px 24px 36px;background:radial-gradient(ellipse at 50% 35%,#19645188,transparent 65%),repeating-linear-gradient(120deg,#ffffff02 0 1px,transparent 1px 5px),#0b2923}.home-config[data-v-2c316ea4]{position:absolute;top:14px;left:16px}.home-brand[data-v-2c316ea4]{text-align:center}.home-brand>span[data-v-2c316ea4]{color:#b0bba0;font-size:11px;letter-spacing:.36em}.home-brand h1[data-v-2c316ea4]{margin:12px 0;color:#f1dfb3;font-family:STKaiti,KaiTi,serif;font-size:clamp(36px,6vw,64px);font-weight:500;letter-spacing:.18em}.home-brand p[data-v-2c316ea4]{margin:0;color:#a0b9aa;font-size:13px;letter-spacing:.12em}.home-entries[data-v-2c316ea4]{display:grid;width:min(780px,100%);grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.home-entry[data-v-2c316ea4]{display:flex;min-width:0;min-height:225px;align-items:center;gap:30px;padding:34px;border:1px solid #b293584f;border-radius:14px;background:linear-gradient(140deg,#31574788,#0a211be6);text-align:left;cursor:pointer;box-shadow:inset 0 1px #f3e1ab22,0 16px 40px #0003;transition:border-color .2s,transform .2s}.home-entry[data-v-2c316ea4]:hover{transform:translateY(-4px);border-color:#dac084}.home-entry--training[data-v-2c316ea4]{background:linear-gradient(140deg,#64512a55,#15291ee6)}.home-entry-tiles[data-v-2c316ea4]{display:flex;flex:none;gap:1px;transform:rotate(-12deg);filter:drop-shadow(3px 8px 5px #0005)}.home-entry-tiles[data-v-2c316ea4]>:nth-child(2){transform:translateY(-10px)}.home-entry-copy[data-v-2c316ea4]{display:grid;gap:12px;flex:1}.home-entry-copy small[data-v-2c316ea4]{color:#a4b7a2;font-size:11px}.home-entry-copy strong[data-v-2c316ea4]{color:#f4e5c1;font-size:28px;letter-spacing:.08em;white-space:nowrap}.home-entry-copy>span[data-v-2c316ea4]{display:flex;justify-content:space-between;color:#bdc7ae;font-size:12px}.home-entry-copy b[data-v-2c316ea4]{color:#e6c879;font-size:20px}@media(max-width:700px){.home-entry[data-v-2c316ea4]{min-height:180px;flex-direction:column;gap:20px;padding:24px 14px}.home-entry-copy[data-v-2c316ea4]{width:100%;gap:8px}.home-entry-copy strong[data-v-2c316ea4]{font-size:23px}.home-entry-copy small[data-v-2c316ea4]{font-size:10px}.home-entries[data-v-2c316ea4]{gap:12px}}@media(max-height:450px){.home-lobby[data-v-2c316ea4]{padding-top:46px;gap:16px}.home-brand h1[data-v-2c316ea4]{margin:0;font-size:30px}.home-brand>span[data-v-2c316ea4],.home-brand p[data-v-2c316ea4]{display:none}.home-entry[data-v-2c316ea4]{min-height:145px;flex-direction:row;padding:18px}}@media(prefers-reduced-motion:reduce){.home-entry[data-v-2c316ea4]{transition:none}}:root{--tile-size: 26px}:root{--ui-font: "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", "Noto Sans SC", system-ui, sans-serif;--ui-mono: ui-monospace, "Cascadia Mono", Consolas, monospace;color-scheme:dark;--ui-paper: #101814;--ui-surface: #18231d;--ui-surface-muted: #1e2b24;--ui-line: #2b3a31;--ui-line-strong: #3b4d42;--ui-ink: #e8eee6;--ui-text: #c5d0c4;--ui-muted: #97a596;--ui-faint: #6f7d70;--ui-green: #5fae80;--ui-green-strong: #8fd0a7;--ui-green-soft: #1d3a2b;--ui-green-line: #2f5a42;--ui-on-accent: #0c1a12;--ui-felt: #087b68;--ui-felt-deep: #075346;--felt-border: 8px solid #754329;--felt-radius: 10px;--felt-bg: radial-gradient(ellipse at 50% 42%, #20a48d55, #003e4455), repeating-linear-gradient(0deg, #ffffff03 0 1px, transparent 1px 3px), #087b68;--felt-shadow: inset 0 0 50px #003e3a88, inset 0 0 0 2px #c1915d88, 0 3px 0 #3e251b;--ui-gold: #d6aa55;--ui-gold-soft: #2e2716;--ui-gold-line: #5c4a24;--ui-gold-ink: #e8cf95;--ui-danger: #e07a5f;--ui-danger-strong: #f1a28c;--ui-danger-soft: #34201a;--ui-danger-line: #6a3a2c;--ui-focus: #7cc79a;--ui-radius-sm: 6px;--ui-radius: 10px;--ui-radius-lg: 16px;--ui-shadow: 0 1px 2px #00000040, 0 10px 28px -20px #000000b3;--ui-gap: 16px;font-family:var(--ui-font);color:var(--ui-ink);background:var(--ui-paper);line-height:1.6;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}*,*:before,*:after{box-sizing:border-box}body{min-width:0;min-height:100vh;margin:0;background:radial-gradient(1100px 520px at 50% -260px,#1b2a21,transparent 70%),var(--ui-paper)}body{padding:env(safe-area-inset-top,0px) env(safe-area-inset-right,0px) env(safe-area-inset-bottom,0px) env(safe-area-inset-left,0px)}button,input,select,textarea{font:inherit;color:inherit}button,a,summary{-webkit-tap-highlight-color:transparent}:focus-visible{outline:3px solid var(--ui-focus);outline-offset:3px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;padding:0;margin:-1px;clip:rect(0,0,0,0);white-space:nowrap;border:0}.ui-page{min-width:0;min-height:calc(100vh - 60px);color:var(--ui-ink)}.ui-workspace{display:flex;width:100%;max-width:1200px;min-width:0;flex-direction:column;gap:var(--ui-gap);margin:0 auto;padding:28px 24px 32px}.ui-workspace>*,.ui-stack>*{min-width:0}.ui-stack{display:flex;min-width:0;flex-direction:column;gap:var(--ui-gap)}.ui-workspace:has(.table-screen){max-width:none;gap:0;padding:0}.table-tool{display:inline-flex;min-height:30px;align-items:center;justify-content:center;gap:5px;padding:4px 10px;border:1px solid #c5a15f77;border-radius:7px;background:linear-gradient(180deg,#665031,#322c21);color:#f5dfaa;font-size:12px;line-height:1.4;text-decoration:none;box-shadow:inset 0 1px #fff2,0 2px 3px #0003;cursor:pointer}.table-tool:hover:not(:disabled){border-color:#f1cd78;color:#fff4d8}.table-tool:disabled{opacity:.5;cursor:not-allowed}.table-tool>span[aria-hidden]{font-size:17px}.table-screen .ui-button,.table-screen .ui-select{min-height:32px;padding:4px 10px;font-size:12px}.table-screen .ui-inline-field{gap:4px;font-size:12px}.table-screen .ui-segmented{flex-wrap:nowrap;padding:2px}.table-screen .ui-segmented>button{min-height:28px;padding:3px 8px;font-size:12px}.table-screen-title{margin-right:auto;color:var(--ui-ink);font-size:13px;font-weight:600}.table-screen-message{min-width:0;flex:1;margin:0;overflow-wrap:anywhere}.table-screen-actions{display:flex;flex-wrap:wrap;align-items:center;gap:4px;margin-left:auto}.mj-view-shell:has(.table-screen) .offline-bar{margin-top:0;padding:0 8px;font-size:10px}.mj-view-shell:has(.table-screen) .offline-bar__summary .ui-button{min-height:24px;padding:2px 6px;font-size:10px}.ui-page-heading{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:12px 20px;padding-bottom:4px}.ui-page-heading>div:first-child{min-width:0;flex:1 1 320px}.ui-eyebrow,.ui-kicker{display:block;margin:0 0 6px;color:var(--ui-gold);font-size:12px;font-weight:600;letter-spacing:.12em}.ui-page-heading h1{margin:0;color:var(--ui-ink);font-size:28px;font-weight:700;line-height:1.3;letter-spacing:.02em}.ui-intro{margin:6px 0 0;color:var(--ui-muted);font-size:14px;line-height:1.7}.ui-badge{display:inline-flex;flex:none;align-items:center;gap:7px;padding:5px 12px;border:1px solid var(--ui-green-line);border-radius:999px;background:var(--ui-green-soft);color:var(--ui-green);font-size:12px;font-weight:500}.ui-badge:before{width:7px;height:7px;border-radius:50%;background:currentColor;content:""}.ui-note{margin:0;color:var(--ui-muted);font-size:13px;line-height:1.8;overflow-wrap:anywhere}.ui-footer{margin:8px 0 0;padding-top:16px;border-top:1px solid var(--ui-line);color:var(--ui-faint);font-size:12px;line-height:1.9;text-align:center;overflow-wrap:anywhere}.ui-footer span{margin:0 6px}.ui-button{display:inline-flex;min-width:0;min-height:40px;align-items:center;justify-content:center;gap:8px;padding:8px 16px;border:1px solid var(--ui-line-strong);border-radius:var(--ui-radius-sm);background:var(--ui-surface);color:var(--ui-text);font-size:13px;font-weight:600;line-height:1.4;text-align:center;cursor:pointer;transition:background-color .14s ease-out,border-color .14s ease-out,color .14s ease-out,transform .1s ease-out}.ui-button:hover:not(:disabled){border-color:var(--ui-green-line);background:var(--ui-green-soft);color:var(--ui-green-strong)}.ui-button:active:not(:disabled){transform:translateY(1px)}.ui-button:disabled{border-color:var(--ui-line);background:var(--ui-surface-muted);color:var(--ui-faint);cursor:not-allowed}.ui-button--primary{border-color:var(--ui-green);background:var(--ui-green);color:var(--ui-on-accent);box-shadow:0 2px #3d7a57}.ui-button--primary:hover:not(:disabled){border-color:var(--ui-green-strong);background:var(--ui-green-strong);color:var(--ui-on-accent)}.ui-button--primary:disabled{box-shadow:none}.ui-button--quiet{border-color:transparent;background:transparent;color:var(--ui-muted)}.ui-button--quiet:hover:not(:disabled){border-color:transparent;background:var(--ui-line);color:var(--ui-ink)}.ui-button--danger{border-color:var(--ui-danger);background:var(--ui-danger);color:var(--ui-on-accent)}.ui-button--danger:hover:not(:disabled){border-color:var(--ui-danger-strong);background:var(--ui-danger-strong);color:var(--ui-on-accent)}.ui-button--gold{border-color:#c79f4e;background:#f1d999;color:#4e3a12;box-shadow:0 2px #c79f4e}.ui-button--gold:hover:not(:disabled){border-color:#a9822f;background:#ead08a;color:#3f2f0e}.ui-button--gold:disabled{box-shadow:none}.ui-button--large{min-height:48px;padding:10px 22px;font-size:15px}.ui-button--block{width:100%}.ui-select,.ui-input{min-width:0;max-width:100%;min-height:40px;padding:8px 12px;border:1px solid var(--ui-line-strong);border-radius:var(--ui-radius-sm);background-color:var(--ui-surface);color:var(--ui-ink);font-size:13px}.ui-select{padding-right:32px;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5 6 6.5l5-5' fill='none' stroke='%2397a596' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-position:right 11px center;background-repeat:no-repeat;background-size:11px 8px;cursor:pointer}.ui-select:disabled,.ui-input:disabled{background-color:var(--ui-surface-muted);color:var(--ui-faint);cursor:not-allowed}.ui-input{width:100%}.ui-input[aria-invalid=true]{border-color:var(--ui-danger);background-color:var(--ui-danger-soft)}.ui-field-label{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:6px 10px;margin-bottom:8px;color:var(--ui-text);font-size:13px;font-weight:600}.ui-field-label span{color:var(--ui-faint);font-size:12px;font-weight:400}.ui-field-help{min-height:22px;margin:8px 0 0;color:var(--ui-muted);font-size:12px;line-height:1.7}.ui-field-help--error{color:var(--ui-danger)}.ui-inline-field{display:inline-flex;flex-wrap:wrap;align-items:center;gap:8px;color:var(--ui-muted);font-size:13px}.ui-card{min-width:0;padding:20px 24px;border:1px solid var(--ui-line);border-radius:var(--ui-radius-lg);background:var(--ui-surface);box-shadow:var(--ui-shadow)}.ui-card--accent{border-color:var(--ui-green-line);box-shadow:inset 4px 0 var(--ui-green),var(--ui-shadow)}.ui-card--muted{background:var(--ui-surface-muted);box-shadow:none}.ui-card-title{margin:0;color:var(--ui-ink);font-size:18px;font-weight:700;line-height:1.5;overflow-wrap:anywhere}.ui-alert{display:flex;min-width:0;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 16px;margin:0;padding:12px 16px;border:1px solid var(--ui-line);border-left-width:4px;border-radius:var(--ui-radius);background:var(--ui-surface-muted);color:var(--ui-text);font-size:13px;line-height:1.75;overflow-wrap:anywhere}.ui-alert>div{min-width:0;flex:1 1 240px}.ui-alert strong,.ui-alert b{color:inherit;font-weight:700}.ui-alert p{margin:4px 0 0}.ui-alert small{display:block;margin-top:2px;font-size:12px;opacity:.9}.ui-alert--info{border-color:var(--ui-green-line);background:var(--ui-green-soft);color:var(--ui-green-strong)}.ui-alert--warn{border-color:var(--ui-gold-line);background:var(--ui-gold-soft);color:var(--ui-gold-ink)}.ui-alert--error{border-color:var(--ui-danger-line);background:var(--ui-danger-soft);color:var(--ui-danger-strong)}.ui-chip{display:inline-flex;flex-wrap:wrap;align-items:center;gap:8px;padding:6px 12px;border:1px solid var(--ui-gold-line);border-radius:var(--ui-radius);background:var(--ui-gold-soft);color:var(--ui-gold-ink);font-size:13px;line-height:1.6}.ui-chip>b,.ui-chip>strong{font-weight:700}.ui-chip>small{font-size:12px;opacity:.85}.ui-chip--dashed{border-style:dashed}.ui-segmented{display:inline-flex;max-width:100%;flex-wrap:wrap;gap:4px;margin:0;padding:4px;border:1px solid var(--ui-line);border-radius:10px;background:var(--ui-paper)}.ui-segmented>button{min-height:34px;padding:6px 16px;border:1px solid transparent;border-radius:7px;background:transparent;color:var(--ui-muted);font-size:13px;font-weight:500;cursor:pointer}.ui-segmented>button:hover:not(:disabled){color:var(--ui-ink)}.ui-segmented>button[aria-pressed=true]{border-color:var(--ui-line);background:var(--ui-surface);color:var(--ui-green-strong);box-shadow:0 1px 3px #0006;font-weight:700}.ui-segmented:disabled>button,.ui-segmented>button:disabled{opacity:.55;cursor:not-allowed}.ui-presets{display:grid;grid-template-columns:repeat(auto-fit,minmax(96px,1fr));gap:10px;margin:0;padding:0;border:0}.ui-presets>legend{margin-bottom:8px;padding:0;color:var(--ui-muted);font-size:12px}.ui-presets>button{display:flex;min-width:0;flex-wrap:wrap;align-items:baseline;justify-content:center;gap:2px 4px;padding:12px 6px;border:1px solid var(--ui-line);border-radius:var(--ui-radius);background:var(--ui-surface-muted);color:var(--ui-muted);cursor:pointer;transition:border-color .14s ease-out,background-color .14s ease-out}.ui-presets>button:hover:not(:disabled){border-color:var(--ui-green-line)}.ui-presets>button[aria-pressed=true]{border-color:var(--ui-green);background:var(--ui-green-soft);color:var(--ui-green-strong);box-shadow:inset 0 0 0 1px var(--ui-green)}.ui-presets>button:disabled{opacity:.55;cursor:not-allowed}.ui-presets strong{font-size:28px;font-weight:700;line-height:1.15;font-variant-numeric:tabular-nums}.ui-presets span{font-size:13px}.ui-presets small{width:100%;margin-top:2px;font-size:12px}.ui-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 20px}.ui-actions{display:flex;max-width:100%;flex-wrap:wrap;align-items:center;gap:8px}.ui-progress{min-width:0;flex:1 1 260px;max-width:440px}.ui-progress>div{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:4px 16px;margin-bottom:8px}.ui-progress strong{color:var(--ui-ink);font-size:20px;font-weight:700;font-variant-numeric:tabular-nums}.ui-progress small,.ui-progress>div>span{color:var(--ui-muted);font-size:13px;font-weight:400}.ui-progress progress{display:block;width:100%;height:6px;overflow:hidden;border:0;border-radius:999px;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:var(--ui-line);color:var(--ui-green)}.ui-progress progress::-webkit-progress-bar{border-radius:999px;background:var(--ui-line)}.ui-progress progress::-webkit-progress-value{border-radius:999px;background:linear-gradient(90deg,var(--ui-green),var(--ui-green-strong))}.ui-progress progress::-moz-progress-bar{border-radius:999px;background:var(--ui-green)}.ui-statusbar{display:flex;min-width:0;flex-wrap:wrap;align-items:center;gap:10px 14px;padding:10px 12px;border:1px solid var(--ui-line);border-radius:var(--ui-radius-lg);background:var(--ui-surface);box-shadow:var(--ui-shadow)}.ui-statusbar-text{min-width:0;flex:1 1 200px;margin:0;padding:8px 12px;border-radius:var(--ui-radius-sm);background:var(--ui-green-soft);color:var(--ui-green-strong);font-size:13px;font-weight:500;line-height:1.6;overflow-wrap:anywhere}.ui-statusbar-text--warn{background:var(--ui-gold-soft);color:var(--ui-gold-ink)}.ui-statusbar-idle{display:inline-flex;flex-wrap:wrap;align-items:center;gap:8px;padding:0 4px;color:var(--ui-muted);font-size:13px}.ui-statusbar-idle>:first-child{color:var(--ui-green);font-weight:600;letter-spacing:.2em}.ui-turn-order{padding:4px 10px;border-radius:999px;background:var(--ui-surface-muted);color:var(--ui-faint);font-size:12px;font-variant-numeric:tabular-nums;letter-spacing:.04em;white-space:nowrap}.ui-legend{display:flex;flex-wrap:wrap;justify-content:space-between;gap:4px 16px;margin:-4px 4px 0;color:var(--ui-muted);font-size:12px;line-height:1.8}.ui-legend b{color:var(--ui-gold)}.ui-legend i{margin:0 6px;color:var(--ui-line-strong);font-style:normal}.ui-tile-mark{position:absolute;z-index:2;display:grid;width:12px;height:12px;place-items:center;border-radius:3px;background:#e9c67a;color:#634819;font-size:8px;line-height:1}@media(max-width:640px){.ui-tile-mark{width:10px;height:10px;border-radius:2px;font-size:7px}}.ui-disclosure{min-width:0;border:1px solid var(--ui-line);border-radius:var(--ui-radius-lg);background:var(--ui-surface)}.ui-disclosure>summary{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 10px;padding:14px 20px;color:var(--ui-ink);font-size:14px;font-weight:700;line-height:1.6;cursor:pointer;list-style:none;border-radius:var(--ui-radius-lg)}.ui-disclosure>summary::-webkit-details-marker{display:none}.ui-disclosure>summary:before{width:7px;height:7px;flex:none;align-self:center;margin-right:4px;border-right:2px solid var(--ui-faint);border-bottom:2px solid var(--ui-faint);transform:rotate(-45deg);transition:transform .16s ease-out;content:""}.ui-disclosure[open]>summary:before{transform:rotate(45deg)}.ui-disclosure>summary:hover{background:var(--ui-surface-muted)}.ui-disclosure>summary>span{color:var(--ui-faint);font-size:12px;font-weight:400}.ui-disclosure-body{min-width:0;padding:0 20px 20px}.ui-records{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:12px}.ui-records>.ui-span-all{grid-column:1 / -1}.ui-log{margin:0;padding:0 4px;list-style:none}.ui-log li{display:grid;grid-template-columns:36px 18px minmax(0,1fr);gap:8px;padding:8px 0;border-bottom:1px solid var(--ui-line);color:var(--ui-text);font-size:13px;line-height:1.7}.ui-log li:last-child{border-bottom:0}.ui-log small{color:var(--ui-faint);font-size:12px;font-variant-numeric:tabular-nums}.ui-log b{color:var(--ui-green)}.ui-log span{min-width:0;overflow-wrap:anywhere}.ui-log--scroll{max-height:340px;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--ui-line-strong) transparent}.ui-section-heading{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:8px 16px}.ui-section-heading h2{margin:0;font-size:22px;font-weight:700;line-height:1.4}.ui-section-heading>span{color:var(--ui-faint);font-size:12px}.ui-setup{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);align-items:stretch;gap:20px}.ui-lobby{display:grid;min-height:420px;grid-template-columns:minmax(0,1fr) minmax(0,2.4fr) minmax(0,1fr);grid-template-areas:". north ." "west center east" ". south .";align-items:center;gap:20px 12px;padding:28px 20px;border:var(--felt-border);border-radius:var(--felt-radius);background:var(--felt-bg);box-shadow:var(--felt-shadow)}.ui-lobby-seat{display:flex;min-width:0;flex-direction:column;align-items:center;gap:8px;color:#d9e3c6;text-align:center}.ui-lobby-seat b{display:grid;width:36px;height:36px;place-items:center;border:1px solid #c4d7b670;border-radius:50%;background:#103e2f88;font-size:14px}.ui-lobby-seat span{font-size:12px;line-height:1.6}.ui-lobby-seat--north{grid-area:north}.ui-lobby-seat--south{grid-area:south}.ui-lobby-seat--west{grid-area:west}.ui-lobby-seat--east{grid-area:east}.ui-lobby-seat--self b{border-color:#ecdfb8;background:#ecdfb8;color:#2f4e36}.ui-lobby-center{grid-area:center;display:grid;min-width:0;justify-items:center;gap:10px;color:#f7f1d6;text-align:center}.ui-lobby-center>div{display:flex;gap:8px;padding-bottom:6px}.ui-lobby-center>strong{font-size:19px;font-weight:600;line-height:1.6}.ui-lobby-center>span{color:#d3e1c4;font-size:13px}.ui-lobby-center>small{color:#b8cfae;font-size:12px;letter-spacing:.06em}.ui-setup-form{display:flex;min-width:0;flex-direction:column;padding:28px}.ui-setup-form h2{margin:0;font-size:24px;font-weight:700;line-height:1.4}.ui-setup-form>p{margin:8px 0 0}.ui-setup-form>.ui-presets{margin:20px 0}.ui-setup-form>.ui-field-help{margin-bottom:16px}.ui-setup-form>.ui-button+.ui-button{margin-top:8px}.ui-setup-start{width:100%;min-height:48px;justify-content:space-between;padding:10px 18px;font-size:15px}.ui-setup-form>.ui-note:last-child{margin-top:16px;font-size:12px}@media(max-width:900px){.ui-setup{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px}.ui-setup-form{padding:24px 20px}.ui-lobby{padding:24px 12px;gap:16px 8px}.ui-lobby-center>strong{font-size:16px}}@media(max-width:680px){.ui-workspace{gap:14px;padding:20px 12px 24px}.ui-page-heading h1{font-size:24px}.ui-intro{font-size:13px}.ui-card{padding:16px}.ui-setup{grid-template-columns:minmax(0,1fr)}.ui-lobby{min-height:280px;padding:16px 10px;border-width:7px;border-radius:18px}.ui-lobby-seat b{width:30px;height:30px;font-size:12px}.ui-lobby-seat span{font-size:11px}.ui-lobby-center>strong{font-size:15px}.ui-progress{flex-basis:100%;max-width:none}.ui-toolbar>.ui-actions{width:100%;justify-content:flex-end}.ui-records{grid-template-columns:minmax(0,1fr)}.ui-disclosure>summary{padding:14px 16px}.ui-disclosure-body{padding:0 16px 16px}.ui-section-heading h2{font-size:19px}}@media(max-width:380px){.ui-workspace{padding-right:8px;padding-left:8px}.ui-setup-form{padding:20px 16px}.ui-button{padding-right:12px;padding-left:12px}}@media(prefers-reduced-motion:reduce){.ui-button,.ui-presets>button,.ui-disclosure>summary:before{transition:none}}
