.auth-bar[data-astro-cid-tu64aqtf]{z-index:1000;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;position:fixed;top:14px;right:14px}.bar-pill[data-astro-cid-tu64aqtf]{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#333;background:#fffffff5;border:1px solid #00000014;border-radius:30px;align-items:center;gap:10px;padding:6px 14px;font-size:.85rem;display:flex;box-shadow:0 4px 16px #0000000f}.avatar-dot[data-astro-cid-tu64aqtf]{background:#4ba264;border-radius:50%;width:9px;height:9px}.score-badge[data-astro-cid-tu64aqtf]{color:#c06b3e;font-weight:600}.btn-primary[data-astro-cid-tu64aqtf]{color:#fff;cursor:pointer;background:#5a7467;border:none;border-radius:20px;padding:4px 12px;font-size:.78rem;transition:background .2s}.btn-primary[data-astro-cid-tu64aqtf]:hover{background:#475c51}.btn-text[data-astro-cid-tu64aqtf]{color:#888;cursor:pointer;background:0 0;border:none;font-size:.78rem}.btn-text[data-astro-cid-tu64aqtf]:hover{color:#333}.guest-tip[data-astro-cid-tu64aqtf]{color:#777}.auth-modal[data-astro-cid-tu64aqtf]{z-index:2000;background:#00000073;justify-content:center;align-items:center;width:100vw;height:100vh;display:flex;position:fixed;top:0;left:0}.auth-card[data-astro-cid-tu64aqtf]{background:#fff;border-radius:16px;width:90%;max-width:330px;padding:24px;box-shadow:0 16px 40px #00000026}.modal-header[data-astro-cid-tu64aqtf]{justify-content:space-between;align-items:center;margin-bottom:18px;display:flex}.modal-header[data-astro-cid-tu64aqtf] h3[data-astro-cid-tu64aqtf]{margin:0;font-size:1.1rem;font-weight:600}.btn-close[data-astro-cid-tu64aqtf]{color:#999;cursor:pointer;background:0 0;border:none;font-size:1.4rem}.form-body[data-astro-cid-tu64aqtf]{flex-direction:column;gap:12px;display:flex}.input-group[data-astro-cid-tu64aqtf]{color:#666;flex-direction:column;gap:4px;font-size:.8rem;display:flex}.input-group[data-astro-cid-tu64aqtf] input[data-astro-cid-tu64aqtf]{border:1px solid #ddd;border-radius:8px;outline:none;padding:9px 12px;font-size:.9rem}.input-group[data-astro-cid-tu64aqtf] input[data-astro-cid-tu64aqtf]:focus{border-color:#5a7467}.error-msg[data-astro-cid-tu64aqtf]{color:#d05343;font-size:.8rem}.btn-submit[data-astro-cid-tu64aqtf]{color:#fff;cursor:pointer;background:#5a7467;border:none;border-radius:8px;margin-top:6px;padding:10px;font-size:.9rem;font-weight:500}.btn-submit[data-astro-cid-tu64aqtf]:hover{background:#475c51}.toggle-mode[data-astro-cid-tu64aqtf]{color:#888;justify-content:center;align-items:center;margin-top:4px;font-size:.8rem;display:flex}.btn-link[data-astro-cid-tu64aqtf]{color:#5a7467;cursor:pointer;background:0 0;border:none;font-weight:500}.gs-root{flex-direction:column;align-items:center;gap:12px;width:100%;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Microsoft YaHei,sans-serif;display:flex}.gs-root.gs-has-auth{padding-top:42px}.gs-topbar{justify-content:space-between;align-items:center;gap:10px;width:100%;max-width:520px;display:flex}.gs-back{color:#4a5560;-webkit-backdrop-filter:blur(10px);background:#ffffffb8;border:1px solid #00000012;border-radius:99px;align-items:center;gap:6px;padding:6px 13px;font-size:.78rem;font-weight:600;text-decoration:none;transition:transform .18s,background .18s;display:inline-flex;box-shadow:0 2px 10px #0000000d}.gs-back:hover{background:#fffffff2;transform:translate(-2px)}.gs-hud{flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;width:100%;max-width:520px;display:flex}.gs-chip{-webkit-backdrop-filter:blur(10px);color:#78857a;background:#ffffffb8;border:1px solid #00000012;border-radius:99px;align-items:baseline;gap:6px;padding:5px 13px;font-size:.72rem;display:inline-flex;box-shadow:0 2px 10px #0000000a}.gs-chip b{color:#37423b;font-variant-numeric:tabular-nums;font-size:.92rem;font-weight:700}.gs-subtitle{color:#7d8a82;text-align:center;margin:0;font-size:.82rem}.gs-btn{background:var(--gs-accent,#5a7467);color:#fff;cursor:pointer;border:none;border-radius:99px;padding:6px 15px;font-family:inherit;font-size:.78rem;font-weight:600;transition:filter .18s,transform .1s}.gs-btn:hover{filter:brightness(1.08)}.gs-btn:active{transform:translateY(1px)}.gs-btn-ghost{color:#4a5560;background:#ffffffd1;border:1px solid #00000017}.gs-btn-ghost:hover{background:#fff}.gs-overlay{z-index:3000;-webkit-backdrop-filter:blur(3px);background:#181c1a6b;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.gs-overlay[hidden]{display:none!important}.gs-card{text-align:center;background:#fbfbf9;border-radius:18px;flex-direction:column;align-items:center;gap:12px;width:100%;max-width:340px;padding:26px 24px;animation:.22s ease-out gs-pop;display:flex;box-shadow:0 22px 60px #00000038}.gs-card-wide{max-width:420px}@keyframes gs-pop{0%{opacity:0;transform:scale(.94)translateY(8px)}to{opacity:1;transform:scale(1)translateY(0)}}.gs-result-icon{font-size:2.4rem;line-height:1}.gs-result-title{color:#333b36;margin:0;font-size:1.28rem;font-weight:700}.gs-result-lines{color:#7d8a82;white-space:pre-line;margin:0;font-size:.84rem;line-height:1.65}.gs-stars{gap:6px;display:flex}.gs-stars[hidden]{display:none!important}.gs-star{color:#dad5cc;font-size:1.7rem;transition:color .25s,transform .25s}.gs-star.on{color:#e0a94a;transform:scale(1.12)}.gs-card-actions{flex-wrap:wrap;justify-content:center;gap:10px;margin-top:4px;display:flex}.gs-card-actions .gs-btn{padding:9px 20px;font-size:.84rem}.gs-level-grid{grid-template-columns:repeat(5,1fr);gap:8px;width:100%;margin:4px 0;display:grid}.gs-level-btn{aspect-ratio:1;color:#333b36;cursor:pointer;background:#ffffffe6;border:1px solid #00000014;border-radius:11px;flex-direction:column;justify-content:center;align-items:center;gap:2px;font-family:inherit;font-size:.92rem;font-weight:700;transition:background .18s,transform .1s;display:flex}.gs-level-btn:hover:not(:disabled){background:#fff;transform:translateY(-1px)}.gs-level-btn:disabled{opacity:.4;cursor:not-allowed}.gs-level-btn.current{background:var(--gs-accent,#5a7467);color:#fff;border-color:#0000}.gs-level-btn .gs-level-stars{letter-spacing:-1px;color:#e0a94a;font-size:.52rem;line-height:1}.gs-toast{z-index:4000;color:#fff;pointer-events:none;text-align:center;background:#262c28eb;border-radius:99px;max-width:88vw;padding:9px 20px;font-size:.8rem;font-weight:600;position:fixed;bottom:28px;left:50%;transform:translate(-50%);box-shadow:0 10px 30px #00000047}.gs-toast[hidden]{display:none!important}@media (width<=420px){.gs-level-grid{grid-template-columns:repeat(4,1fr)}.gs-card{padding:22px 18px}}:root{--bg:#efe9e2;--card-bg:#faf7f2;--board-bg:#dcd4c9;--cell-empty:#ece5dc;--text:#45423e;--sub:#8b857d;--btn:#879284;--btn-hover:#727d6f;--gap:12px}.wrapper{flex-direction:column;gap:14px;width:100%;max-width:440px;display:flex}header{justify-content:space-between;align-items:center;gap:12px;display:flex}.title-area h1{letter-spacing:2px;font-size:2.4rem;font-weight:300;line-height:1}.title-area p{color:var(--sub);margin-top:6px;font-size:.8rem}.scores-area{gap:8px;display:flex}.score-card{background:var(--card-bg);text-align:center;border-radius:10px;min-width:72px;padding:7px 14px;box-shadow:0 4px 12px #00000008}.score-label{text-transform:uppercase;letter-spacing:1px;color:var(--sub);font-size:.62rem}.score-val{font-variant-numeric:tabular-nums;margin-top:2px;font-size:1.1rem;font-weight:600}.tool-bar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.meta{color:var(--sub);gap:14px;font-size:.8rem;display:flex}.meta b{color:var(--text);font-variant-numeric:tabular-nums}.tools{gap:8px;display:flex}button{background:var(--btn);color:#fff;cursor:pointer;border:none;border-radius:8px;padding:7px 15px;font-family:inherit;font-size:.8rem;font-weight:500;transition:background .2s,opacity .2s}button:hover:not(:disabled){background:var(--btn-hover)}button.ghost{color:var(--text);background:#e6dfd6}button.ghost:hover:not(:disabled){background:#dbd2c7}.board-wrap{background:var(--board-bg);padding:var(--gap);aspect-ratio:1;gap:var(--gap);touch-action:none;border-radius:14px;grid-template-rows:repeat(4,1fr);grid-template-columns:repeat(4,1fr);width:100%;display:grid;position:relative;box-shadow:inset 0 2px 6px #0000000f}.grid-cell{background:var(--cell-empty);border-radius:8px;width:100%;height:100%}.tile-container{inset:var(--gap);pointer-events:none;position:absolute}.tile{width:calc((100% - (var(--gap) * 3)) / 4);height:calc((100% - (var(--gap) * 3)) / 4);will-change:transform;transition:transform .12s ease-in-out;position:absolute;top:0;left:0}.tile-inner{font-variant-numeric:tabular-nums;border-radius:8px;justify-content:center;align-items:center;width:100%;height:100%;font-size:1.6rem;font-weight:600;display:flex}.tile-appear{animation:.15s ease-out tile-appear}.tile-pop{animation:.17s ease-out tile-pop}@keyframes tile-appear{0%{opacity:0;transform:scale(.4)}to{opacity:1;transform:scale(1)}}@keyframes tile-pop{0%{transform:scale(1)}55%{transform:scale(1.16)}to{transform:scale(1)}}.tile-2{color:#5c5852;background:#f6f3ee}.tile-4{color:#5c5852;background:#efe9de}.tile-8{color:#faf7f2;background:#dfceb9}.tile-16{color:#faf7f2;background:#d1b89d}.tile-32{color:#faf7f2;background:#c89d82}.tile-64{color:#faf7f2;background:#c3836b}.tile-128{color:#faf7f2;background:#8e9b89;font-size:1.4rem}.tile-256{color:#faf7f2;background:#7c8b76;font-size:1.4rem}.tile-512{color:#faf7f2;background:#788995;font-size:1.4rem}.tile-1024{color:#faf7f2;background:#697a87;font-size:1.2rem}.tile-2048{color:#faf7f2;background:#b9995a;font-size:1.2rem}.tile-4096{color:#fff7e8;background:#a87f45;font-size:1.1rem}.tile-8192{color:#fff7e8;background:#8a5f32;font-size:1.1rem}.pause-veil{color:#fff;letter-spacing:2px;-webkit-backdrop-filter:blur(2px);z-index:5;background:#45423e99;border-radius:14px;flex-direction:column;justify-content:center;align-items:center;gap:6px;font-size:1.05rem;font-weight:700;display:flex;position:absolute;inset:0}.gs-root .cbmfs-wrap{--cm-accent:var(--gs-accent,#6b5b95);--cm-accent-soft:#e7e2f3;--cm-panel:#efedf5;--cm-card:#f8f7fb;--cm-text:#33313d;--cm-sub:#7b7789;--cm-line:#3c375021;--cm-hp:#c4666e;--cm-gold:#c9a227;width:100%;max-width:var(--cm-max,520px);color:var(--cm-text);flex-direction:column;align-items:center;gap:12px;display:flex}body:has(.cbmfs-wrap){--cm-max:520px;color:#33313d;background:#e9e7f0;justify-content:flex-start;padding:16px 14px 32px}body:has(.cbmfs-wrap) .gs-topbar,body:has(.cbmfs-wrap) .gs-hud{max-width:var(--cm-max,520px)}.gs-root .cbmfs-wrap header{text-align:center;display:block}.gs-root .cbmfs-wrap header h1{letter-spacing:3px;color:var(--cm-text);font-size:1.7rem;font-weight:300}.gs-root .cbmfs-wrap header p{color:var(--cm-sub);margin-top:4px;font-size:.8rem}.gs-root .cbmfs-wrap .game-card{width:100%;max-width:var(--cm-max,520px);background:var(--cm-card);color:var(--cm-text);border-radius:16px;flex-direction:column;align-items:stretch;gap:12px;margin:0;padding:16px;display:flex;box-shadow:0 10px 32px #322d4614}.gs-root .cbmfs-wrap .hidden,.gs-root .cbmfs-wrap [hidden]{display:none!important}.gs-root .cbmfs-wrap .tab-group{background:var(--cm-panel);border:1px solid #0000;border-radius:10px;align-self:center;gap:2px;padding:3px;display:inline-flex}.gs-root .cbmfs-wrap .tab{color:var(--cm-sub);cursor:pointer;background:0 0;border:none;border-radius:8px;padding:7px 20px;font-family:inherit;font-size:.82rem;font-weight:600}.gs-root .cbmfs-wrap .tab.active{color:var(--cm-text);background:#fff;box-shadow:0 1px 4px #3c375a1a}.gs-root .cbmfs-wrap .btn{background:var(--cm-accent);color:#fff;cursor:pointer;border:1px solid #0000;border-radius:10px;padding:9px 18px;font-family:inherit;font-size:.82rem;font-weight:600;transition:filter .15s,transform .1s}.gs-root .cbmfs-wrap .btn:hover:not(:disabled){filter:brightness(1.08)}.gs-root .cbmfs-wrap .btn:active:not(:disabled){transform:translateY(1px)}.gs-root .cbmfs-wrap .btn:disabled{opacity:.4;cursor:not-allowed}.gs-root .cbmfs-wrap .btn.sub{background:var(--cm-panel);color:var(--cm-text);border-color:var(--cm-line)}.gs-root .cbmfs-wrap .btn.small{padding:7px 12px;font-size:.76rem}.gs-root .cbmfs-wrap .lobby{flex-direction:column;gap:12px;display:flex}.gs-root .cbmfs-wrap .room-inputs{flex-wrap:wrap;gap:8px;display:flex}.gs-root .cbmfs-wrap .room-inputs input{border:1px solid var(--cm-line);min-width:0;color:var(--cm-text);background:#fff;border-radius:10px;flex:130px;padding:9px 12px;font-family:inherit;font-size:.84rem}.gs-root .cbmfs-wrap .room-inputs input:focus{outline:2px solid var(--cm-accent-soft);outline-offset:0}.gs-root .cbmfs-wrap .room-status{color:var(--cm-sub);font-size:.78rem;line-height:1.6}.gs-root .cbmfs-wrap .field-row{color:var(--cm-sub);flex-wrap:wrap;align-items:center;gap:8px;font-size:.78rem;display:flex}.gs-root .cbmfs-wrap .seat-btn{border:1px solid var(--cm-line);width:36px;height:34px;color:var(--cm-text);cursor:pointer;background:#fff;border-radius:9px;font-family:inherit;font-size:.84rem;font-weight:700}.gs-root .cbmfs-wrap .seat-btn.active{background:var(--cm-accent);color:#fff;border-color:#0000}.gs-root .cbmfs-wrap .seat-list{flex-direction:column;gap:6px;display:flex}.gs-root .cbmfs-wrap .seat-item{background:var(--cm-panel);border-radius:10px;align-items:center;gap:9px;padding:9px 12px;font-size:.82rem;display:flex}.gs-root .cbmfs-wrap .seat-item .seat-no{width:22px;height:22px;color:var(--cm-sub);background:#fff;border-radius:50%;flex:none;justify-content:center;align-items:center;font-size:.72rem;font-weight:700;display:flex}.gs-root .cbmfs-wrap .seat-item .seat-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.gs-root .cbmfs-wrap .seat-item .seat-tag{color:var(--cm-sub);background:#fff;border-radius:99px;flex:none;padding:2px 8px;font-size:.66rem}.gs-root .cbmfs-wrap .seat-item .seat-tag.bot{background:var(--cm-accent-soft);color:var(--cm-accent)}.gs-root .cbmfs-wrap .seat-item .seat-tag.me{background:var(--cm-accent);color:#fff}.gs-root .cbmfs-wrap .lobby-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.gs-root .cbmfs-wrap .board{flex-direction:column;gap:10px;display:flex}.gs-root .cbmfs-wrap .controls{flex-direction:column;gap:10px;min-width:0;display:flex}.gs-root .cbmfs-wrap .board-top{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.gs-root .cbmfs-wrap .round-label{letter-spacing:1px;color:var(--cm-text);font-size:1.05rem;font-weight:700}.gs-root .cbmfs-wrap .room-badge{color:var(--cm-sub);background:var(--cm-panel);border-radius:99px;padding:4px 11px;font-size:.72rem}.gs-root .cbmfs-wrap .pile-info{color:var(--cm-sub);flex-wrap:wrap;align-items:center;gap:8px;font-size:.76rem;display:flex}.gs-root .cbmfs-wrap .pile-info>span{background:var(--cm-panel);border-radius:99px;align-items:baseline;gap:4px;padding:4px 11px;display:inline-flex}.gs-root .cbmfs-wrap .pile-info b{color:var(--cm-text);font-variant-numeric:tabular-nums;font-size:.86rem}.gs-root .cbmfs-wrap #secret-mine{color:var(--cm-accent);font-weight:600}.gs-root .cbmfs-wrap #secret-mine:empty{display:none}.gs-root .cbmfs-wrap .rule-hint{background:var(--cm-panel);color:var(--cm-sub);border-radius:9px;padding:8px 11px;font-size:.73rem;line-height:1.55}.gs-root .cbmfs-wrap .card-row{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;display:grid}.gs-root .cbmfs-wrap .card-chip{border:1px solid var(--cm-line);color:var(--cm-text);cursor:pointer;background:#fff;border-radius:10px;flex-direction:column;align-items:center;gap:2px;padding:7px 4px 5px;font-family:inherit;transition:transform .12s,box-shadow .12s,background .15s;display:flex}.gs-root .cbmfs-wrap .card-chip:hover{transform:translateY(-2px);box-shadow:0 5px 14px #3c375a24}.gs-root .cbmfs-wrap .card-chip:has(.cc-count.full){background:var(--cm-accent-soft);border-color:#0000}.gs-root .cbmfs-wrap .card-chip .cc-icon{font-size:1.05rem;line-height:1}.gs-root .cbmfs-wrap .card-chip .cc-name{text-align:center;color:var(--cm-text);font-size:.66rem;line-height:1.2}.gs-root .cbmfs-wrap .card-chip .cc-count{color:var(--cm-sub);font-variant-numeric:tabular-nums;font-size:.68rem;font-weight:700}.gs-root .cbmfs-wrap .card-chip .cc-count.full{color:var(--cm-accent)}.gs-root .cbmfs-wrap .players{flex-direction:column;gap:8px;display:flex}.gs-root .cbmfs-wrap .p-row{box-sizing:border-box;background:var(--cm-panel);min-width:0;max-width:100%;color:var(--cm-text);border:2px solid #0000;border-radius:12px;align-items:center;gap:10px;padding:9px 11px;font-size:.82rem;transition:border-color .2s,background .2s;display:flex}.gs-root .cbmfs-wrap .p-row.turn{border-color:var(--cm-accent);background:#fff}.gs-root .cbmfs-wrap .p-row.dead{opacity:.5}.gs-root .cbmfs-wrap .p-side{flex-direction:column;flex:0 0 60px;align-items:center;gap:2px;display:flex}.gs-root .cbmfs-wrap .p-avatar{font-size:1.6rem;line-height:1}.gs-root .cbmfs-wrap .p-score{font-size:.74rem;font-weight:700}.gs-root .cbmfs-wrap .p-score small{color:var(--cm-sub);font-size:.62rem;font-weight:400}.gs-root .cbmfs-wrap .p-hp{color:var(--cm-hp);letter-spacing:-1px;white-space:nowrap;font-size:.6rem;font-weight:600;line-height:1.35}.gs-root .cbmfs-wrap .p-hp+.p-hp{color:var(--cm-sub);letter-spacing:0;font-weight:500}.gs-root .cbmfs-wrap .p-body{flex-direction:column;flex:1;gap:5px;min-width:0;display:flex;overflow:hidden}.gs-root .cbmfs-wrap .p-head{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.gs-root .cbmfs-wrap .p-name{font-size:.82rem;font-weight:600}.gs-root .cbmfs-wrap .p-tag{color:var(--cm-sub);background:#fff;border-radius:99px;flex:none;padding:1px 7px;font-size:.62rem}.gs-root .cbmfs-wrap .p-tag.bot{background:var(--cm-accent-soft);color:var(--cm-accent)}.gs-root .cbmfs-wrap .p-tag.me{background:var(--cm-accent);color:#fff}.gs-root .cbmfs-wrap .p-tag.host{background:var(--cm-gold);color:#fff}.gs-root .cbmfs-wrap .p-hand{flex-wrap:wrap;gap:4px;display:flex}.gs-root .cbmfs-wrap .hcard{border:1px solid var(--cm-line);background:#fff;border-radius:7px;flex-direction:column;justify-content:center;align-items:center;gap:2px;width:50px;min-height:46px;padding:4px 2px;display:flex}.gs-root .cbmfs-wrap .hcard .hc-icon{font-size:1rem;line-height:1}.gs-root .cbmfs-wrap .hcard .hc-name{color:var(--cm-sub);text-align:center;font-size:.58rem;line-height:1.15}.gs-root .cbmfs-wrap .hcard.back{background:repeating-linear-gradient(135deg,#cfc9e0 0 4px,#c2bbd6 4px 8px);border-color:#b9b1cf}.gs-root .cbmfs-wrap .hcard.empty{background:0 0;border-style:dashed}.gs-root .cbmfs-wrap .turn-banner{background:var(--cm-accent-soft);text-align:center;color:var(--cm-accent);border-radius:9px;padding:7px 10px;font-size:.84rem;font-weight:700}.gs-root .cbmfs-wrap .turn-banner:empty{display:none}.gs-root .cbmfs-wrap .action-bar{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;display:grid}.gs-root .cbmfs-wrap .cast-btn{border:1px solid var(--cm-line);color:var(--cm-text);text-align:center;cursor:pointer;background:#fff;border-radius:9px;flex-direction:column;justify-content:center;align-items:center;gap:2px;padding:8px 4px;font-family:inherit;font-size:.72rem;font-weight:600;line-height:1.2;transition:background .15s,border-color .15s,transform .1s;display:flex}.gs-root .cbmfs-wrap .cast-btn:hover:not(:disabled){border-color:var(--cm-accent);background:var(--cm-accent-soft)}.gs-root .cbmfs-wrap .cast-btn:active:not(:disabled){transform:translateY(1px)}.gs-root .cbmfs-wrap .cast-btn:disabled{opacity:.34;cursor:not-allowed}.gs-root .cbmfs-wrap .end-row{justify-content:center;display:flex}.gs-root .cbmfs-wrap .end-row .btn{min-width:180px}.gs-root .cbmfs-wrap .log{background:var(--cm-panel);max-height:min(132px,22vh);color:var(--cm-sub);border-radius:9px;flex-direction:column;gap:3px;padding:8px 11px;font-size:.72rem;line-height:1.55;display:flex;overflow-y:auto}.gs-root .cbmfs-wrap .log .lg.ok{color:#4c7a5a}.gs-root .cbmfs-wrap .log .lg.fail{color:#a8545c}.gs-root .cbmfs-wrap .log .lg.end{color:var(--cm-accent);font-weight:600}.gs-root .cbmfs-wrap .round-overlay{z-index:2500;-webkit-backdrop-filter:blur(3px);background:#2824376b;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.gs-root .cbmfs-wrap .round-card{background:var(--cm-card);text-align:center;border-radius:18px;flex-direction:column;gap:10px;width:100%;max-width:340px;padding:24px 22px;display:flex;box-shadow:0 20px 56px #0000003d}.gs-root .cbmfs-wrap .round-card h3{color:var(--cm-text);font-size:1.1rem;font-weight:700}.gs-root .cbmfs-wrap .round-card p{color:var(--cm-sub);white-space:pre-line;font-size:.82rem;line-height:1.7}.gs-root .cbmfs-wrap .effect-pop{z-index:4000;color:#fff;background:#282437f0;border-radius:12px;max-width:88vw;padding:11px 16px;font-size:.78rem;line-height:1.6;position:fixed;bottom:24px;left:50%;transform:translate(-50%);box-shadow:0 12px 32px #0000004d}.gs-root .cbmfs-wrap .effect-pop b{color:#d9cfff}@media (width<=400px){.gs-root .cbmfs-wrap .game-card{padding:13px}.gs-root .cbmfs-wrap .card-row{grid-template-columns:repeat(3,minmax(0,1fr))}.gs-root .cbmfs-wrap .p-avatar{font-size:1.35rem}.gs-root .cbmfs-wrap .hcard{width:46px}}@media (width>=620px) and (width<=1023px) and (height>=621px){body:has(.cbmfs-wrap){--cm-max:620px}.gs-root .cbmfs-wrap .card-row{grid-template-columns:repeat(8,minmax(0,1fr))}.gs-root .cbmfs-wrap .log{max-height:min(160px,20vh)}}@media (width>=1024px),(width>=640px) and (orientation:landscape) and (height<=620px){body:has(.cbmfs-wrap){--cm-max:980px}.gs-root .cbmfs-wrap .board{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:10px 18px;display:grid}.gs-root .cbmfs-wrap .board-top{grid-column:1/-1}.gs-root .cbmfs-wrap .controls{grid-column:1;gap:10px}.gs-root .cbmfs-wrap .players{grid-column:2;align-self:start}.gs-root .cbmfs-wrap .log{grid-column:1/-1;max-height:min(160px,22vh)}.gs-root .cbmfs-wrap .seat-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}}@media (height<=768px){body:has(.cbmfs-wrap){padding:10px 14px 16px}.gs-root .cbmfs-wrap{gap:8px}.gs-root .cbmfs-wrap header{margin-bottom:0}.gs-root .cbmfs-wrap header h1{letter-spacing:1.5px;font-size:1.25rem}.gs-root .cbmfs-wrap header p{margin-top:2px;font-size:.74rem}.gs-root .cbmfs-wrap .game-card{gap:7px;padding:10px}.gs-root .cbmfs-wrap .board{gap:7px 14px}.gs-root .cbmfs-wrap .controls{gap:7px}.gs-root .cbmfs-wrap .rule-hint{padding:5px 9px;font-size:.66rem}.gs-root .cbmfs-wrap .card-chip{padding:4px 3px 3px}.gs-root .cbmfs-wrap .p-row{gap:7px;padding:6px 9px}.gs-root .cbmfs-wrap .hcard{min-height:36px;padding:2px}.gs-root .cbmfs-wrap .cast-btn{padding:5px 3px;font-size:.66rem}.gs-root .cbmfs-wrap .turn-banner{padding:4px 8px;font-size:.72rem}.gs-root .cbmfs-wrap .end-row .btn{min-width:130px}.gs-root .cbmfs-wrap .log{max-height:min(84px,13vh)}}@media (height<=620px){body:has(.cbmfs-wrap){padding:8px 14px 14px}.gs-root .cbmfs-wrap header h1{letter-spacing:1px;font-size:1.1rem}.gs-root .cbmfs-wrap header p{margin-top:1px;font-size:.68rem}body:has(.cbmfs-wrap) .gs-subtitle{font-size:.68rem}.gs-root .cbmfs-wrap .game-card{gap:6px;padding:9px}.gs-root .cbmfs-wrap .board{gap:6px 14px}.gs-root .cbmfs-wrap .controls{gap:6px}.gs-root .cbmfs-wrap .rule-hint{padding:4px 8px;font-size:.64rem}.gs-root .cbmfs-wrap .card-chip{padding:3px 2px}.gs-root .cbmfs-wrap .card-chip .cc-icon{font-size:.95rem}.gs-root .cbmfs-wrap .card-chip .cc-name{font-size:.56rem}.gs-root .cbmfs-wrap .p-row{gap:6px;padding:5px 8px}.gs-root .cbmfs-wrap .p-avatar{font-size:1.2rem}.gs-root .cbmfs-wrap .hcard{width:42px;min-height:34px}.gs-root .cbmfs-wrap .hcard .hc-name{font-size:.5rem}.gs-root .cbmfs-wrap .p-hand{flex-wrap:nowrap;min-width:0;overflow-x:auto}.gs-root .cbmfs-wrap .cast-btn{padding:4px 2px;font-size:.62rem}.gs-root .cbmfs-wrap .turn-banner{padding:4px 8px;font-size:.7rem}.gs-root .cbmfs-wrap .log{max-height:min(64px,12vh);padding:5px 9px;font-size:.66rem}}@media (height<=480px){body:has(.cbmfs-wrap){padding:6px 14px 10px}.gs-root .cbmfs-wrap{gap:5px}.gs-root .cbmfs-wrap header h1{letter-spacing:1px;font-size:.95rem}.gs-root .cbmfs-wrap header p{display:none}.gs-root .cbmfs-wrap .game-card{gap:5px;padding:7px}.gs-root .cbmfs-wrap .board{gap:5px 12px}.gs-root .cbmfs-wrap .controls{gap:5px}.gs-root .cbmfs-wrap .rule-hint{padding:3px 7px;font-size:.6rem}.gs-root .cbmfs-wrap .p-row{gap:5px;padding:4px 7px}.gs-root .cbmfs-wrap .hcard{width:38px;min-height:30px}.gs-root .cbmfs-wrap .cast-btn{padding:3px 2px;font-size:.58rem}.gs-root .cbmfs-wrap .turn-banner{padding:3px 7px;font-size:.66rem}.gs-root .cbmfs-wrap .log{max-height:min(44px,9vh);font-size:.62rem}}.ddz-wrap{flex-direction:column;align-items:center;gap:12px;width:100%;max-width:640px;display:flex}.ddz-lobby{background:#ffffffb8;border:1px solid #00000012;border-radius:16px;flex-direction:column;gap:12px;width:100%;padding:16px;display:flex}.ddz-lobby[hidden]{display:none}.seat-btn{color:#37423b;cursor:pointer;white-space:nowrap;background:#fff;border:1px solid #00000017;border-radius:9px;padding:7px 14px;font-family:inherit;font-size:.8rem;font-weight:700}.ddz-board{flex-direction:column;gap:11px;width:100%;display:flex}.bottom-row{justify-content:center;align-items:center;gap:9px;display:flex}.bottom-label{color:#9aa69e;font-size:.72rem}.bottom-cards{gap:5px;display:flex}.ddz-wrap .card{color:#2c3430;cursor:pointer;-webkit-user-select:none;user-select:none;background:#fff;border:1px solid #00000024;border-radius:7px;flex-direction:column;justify-content:center;align-items:center;width:42px;height:60px;font-size:.92rem;font-weight:700;transition:transform .13s;display:flex;position:relative;box-shadow:0 2px 6px #0000001a}.ddz-wrap .card.red{color:#c93a32}.ddz-wrap .card.small{width:34px;height:48px;font-size:.8rem}.ddz-wrap .card.back{cursor:default;background:repeating-linear-gradient(45deg,#8c6a3f,#8c6a3f 4px,#a07b4c 4px 8px);border-color:#0000}.ddz-wrap .card.picked{border-color:#8c6a3f;transform:translateY(-13px);box-shadow:0 6px 14px #8c6a3f66}.ddz-wrap .card.dim{opacity:.45}.players{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.p-card{color:#37423b;background:#ffffffc7;border:1px solid #0000000f;border-radius:10px;flex-direction:column;flex:150px;gap:3px;padding:8px 11px;font-size:.78rem;display:flex}.p-card.turn{background:#8c6a3f14;border-color:#8c6a3f}.p-card .pc-name{font-weight:700}.p-card .pc-meta{color:#78857a;font-size:.7rem}.p-card .pc-role{color:#c08a3e;font-size:.68rem;font-weight:800}.last-play{text-align:center;color:#6b7670;min-height:22px;font-size:.78rem}.hand{flex-wrap:wrap;justify-content:center;gap:4px;min-height:62px;padding-top:14px;display:flex}.bid-actions{flex-wrap:wrap;justify-content:center;align-items:center;gap:7px;display:flex}.bid-label{color:#78857a;font-size:.75rem}.ddz-log{color:#8b968f;background:#fff9;border:1px solid #0000000d;border-radius:10px;max-height:96px;padding:9px 12px;font-size:.72rem;line-height:1.75;overflow-y:auto}.ddz-overlay{z-index:3000;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#181c1a73;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.gl-lobby{flex-direction:column;align-items:center;gap:12px;width:100%;display:flex}.gl-lobby[hidden],.gl-lobby [hidden]{display:none!important}.gl-tabs{background:#ffffffbf;border:1px solid #00000012;border-radius:99px;gap:4px;padding:4px;display:inline-flex}.gl-tab{color:#6b7670;cursor:pointer;background:0 0;border:none;border-radius:99px;padding:6px 22px;font-family:inherit;font-size:.82rem;font-weight:600;transition:background .16s,color .16s}.gl-tab.active{background:var(--gs-accent,#5a7467);color:#fff}.gl-panel{box-sizing:border-box;background:#ffffffb8;border:1px solid #00000012;border-radius:16px;flex-direction:column;gap:12px;width:100%;padding:16px;display:flex}.gl-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.gl-label{color:#78857a;font-size:.78rem}.gl-seat-group{flex-wrap:wrap;gap:6px;display:flex}.gl-seat{color:#37423b;cursor:pointer;background:#fff;border:1px solid #00000017;border-radius:9px;padding:7px 14px;font-family:inherit;font-size:.8rem;font-weight:700;transition:background .16s,color .16s}.gl-seat.active{background:var(--gs-accent,#5a7467);color:#fff;border-color:#0000}.gl-room{flex-wrap:wrap;gap:7px;display:flex}.gl-input{border:1px solid #0000001a;border-radius:9px;outline:none;flex:130px;min-width:0;padding:7px 11px;font-family:inherit;font-size:.84rem}.gl-input:focus{border-color:var(--gs-accent,#5a7467)}.gl-status{color:#78857a;font-size:.76rem;line-height:1.6}.gl-roster{flex-direction:column;gap:6px;display:flex}.gl-roster-row{color:#37423b;background:#fffc;border:1px solid #0000000f;border-radius:10px;align-items:center;gap:9px;padding:7px 11px;font-size:.82rem;display:flex}.gl-roster-row.me{border-color:var(--gs-accent,#5a7467)}.gl-roster-row .gl-tag{color:#9aa69e;margin-left:auto;font-size:.7rem}.gl-actions{justify-content:flex-end;gap:8px;display:flex}.gl-btn{background:var(--gs-accent,#5a7467);color:#fff;cursor:pointer;border:none;border-radius:99px;padding:7px 17px;font-family:inherit;font-size:.8rem;font-weight:600;transition:filter .18s}.gl-btn:hover{filter:brightness(1.08)}.gl-btn:disabled{opacity:.45;cursor:not-allowed;filter:none}.gl-btn.sub{color:#4a5560;background:#ffffffe6;border:1px solid #0000001a}.gl-btn.small{padding:6px 13px;font-size:.76rem}.dy-wrap{flex-direction:column;align-items:center;gap:13px;width:100%;max-width:780px;display:flex}.dy-wrap [hidden]{display:none!important}.dy-area{flex-direction:column;align-items:center;gap:11px;width:100%;display:flex}.dy-topbar{flex-wrap:wrap;justify-content:center;align-items:center;gap:7px;display:flex}.dy-badge{color:#5c6a62;background:#ffffffe0;border:1px solid #00000012;border-radius:99px;padding:4px 12px;font-size:.72rem}.dy-mini{color:#4a5560;cursor:pointer;background:#fffffff2;border:1px solid #0000001a;border-radius:99px;padding:4px 12px;font-family:inherit;font-size:.72rem;font-weight:600}.dy-status{color:#333b36;text-align:center;background:#ffffffeb;border-radius:12px;flex-direction:column;align-items:center;gap:2px;min-height:22px;padding:7px 18px;font-size:.86rem;font-weight:700;display:flex;box-shadow:0 2px 10px #0000001f}.dy-status .sub{color:#8b968f;font-size:.72rem;font-weight:500}.dy-card{box-sizing:border-box;border:1px solid #00000024;border-radius:6px;flex-direction:column;flex:none;justify-content:center;align-items:center;gap:1px;width:34px;height:46px;padding:0;font-family:inherit;display:flex;position:relative;box-shadow:0 1px 3px #00000029}.dy-card .v{font-size:.9rem;font-weight:800;line-height:1}.dy-card .d{font-size:.6rem;line-height:1}.dy-card.c0{color:#f2f4f3;background:#3e4448}.dy-card.c1{color:#fff;background:#c9706a}.dy-card.c2{color:#fff;background:#6a8fc9}.dy-card.c3{color:#fff;background:#9b7bc0}.dy-hand{flex-wrap:wrap;justify-content:center;gap:6px;min-height:46px;display:flex}.dy-hand .dy-card{cursor:pointer;transition:transform .12s,box-shadow .12s}.dy-hand .dy-card:hover{transform:translateY(-3px)}.dy-hand .dy-card.sel{transform:translateY(-9px);box-shadow:0 0 0 2px #2f6d8e,0 5px 12px #0000003d}.dy-hand .dy-card.sel:after{content:"";border:2px solid #2f6d8e;border-radius:9px;position:absolute;inset:-4px}.dy-card.mini{border-radius:5px;width:25px;height:34px}.dy-card.mini .v{font-size:.7rem}.dy-card.mini .d{font-size:.48rem}.dy-card.new{box-shadow:0 0 0 2px #1f4e6b,0 0 10px #1f4e6b80}.dy-pots{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;width:100%;display:grid}.dy-pot{box-sizing:border-box;background:#fffffff0;border:1px solid #00000014;border-radius:13px;flex-direction:column;gap:5px;padding:9px 8px 10px;transition:box-shadow .14s,transform .14s;display:flex;box-shadow:0 6px 18px #0000001a}.dy-pot.p0{border-top:4px solid #c9706a}.dy-pot.p1{border-top:4px solid #6a8fc9}.dy-pot.p2{border-top:4px solid #9b7bc0}.dy-pot.can{cursor:pointer;box-shadow:0 0 0 2px #2f6d8e,0 8px 22px #00000029}.dy-pot.can:hover{transform:translateY(-2px)}.dy-pot-head{justify-content:space-between;align-items:baseline;gap:4px;display:flex}.dy-pot-name{color:#5c6a62;font-size:.7rem;font-weight:700}.dy-pot-cap{color:#8b968f;font-variant-numeric:tabular-nums;font-size:.68rem;font-weight:700}.dy-pot-cap.full{color:#c0392b}.dy-pot-bar{background:#e7ebe9;border-radius:99px;height:4px;overflow:hidden}.dy-pot-bar i{background:#a7b1ab;border-radius:99px;height:100%;transition:width .2s;display:block}.dy-pot.p0 .dy-pot-bar i{background:#c9706a}.dy-pot.p1 .dy-pot-bar i{background:#6a8fc9}.dy-pot.p2 .dy-pot-bar i{background:#9b7bc0}.dy-pot-cards{flex-wrap:wrap;align-content:flex-start;gap:3px;min-height:34px;display:flex}.dy-pot-empty{color:#b4bdb7;align-self:center;font-size:.64rem}.dy-pot-warn{color:#c0392b;text-align:center;font-size:.62rem;font-weight:700;line-height:1.35}.dy-players{flex-wrap:wrap;justify-content:center;gap:6px;width:100%;display:flex}.dy-pl{color:#37423b;white-space:nowrap;background:#ffffffe6;border:1px solid #00000012;border-radius:99px;align-items:center;gap:6px;padding:5px 11px;font-size:.72rem;display:flex}.dy-pl.turn{font-weight:700;box-shadow:0 0 0 2px #2f6d8e}.dy-pl.me{border-color:#2f6d8e}.dy-pl .n{font-weight:700}.dy-pl .c{color:#8b968f;font-variant-numeric:tabular-nums}.dy-pl .pen{color:#c0392b;font-variant-numeric:tabular-nums;font-weight:700}.dy-pl .pen.zero{color:#8b968f}.dy-pl .dots{gap:2px;display:inline-flex}.dy-pl .dots i{border-radius:50%;width:7px;height:7px;display:inline-block}.dy-pl .dots i.k1{background:#c9706a}.dy-pl .dots i.k2{background:#6a8fc9}.dy-pl .dots i.k3{background:#9b7bc0}.dy-eaten{flex-direction:column;align-items:center;gap:4px;display:flex}.dy-eaten .cap{color:#ffffffeb;text-shadow:0 1px 3px #00000080;font-size:.72rem}.dy-eaten .row{flex-wrap:wrap;justify-content:center;gap:4px;display:flex}.dy-hint{color:#ffffffe6;text-shadow:0 1px 3px #00000080;text-align:center;min-height:18px;font-size:.72rem;line-height:1.6}.dy-actions{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.dy-btn{background:var(--gs-accent,#5a7467);color:#fff;cursor:pointer;border:none;border-radius:99px;padding:7px 17px;font-family:inherit;font-size:.8rem;font-weight:600;transition:filter .18s}.dy-btn:hover{filter:brightness(1.08)}.dy-btn.sub{color:#4a5560;background:#ffffffe6;border:1px solid #0000001a}.dy-overlay{z-index:3000;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#181c1a73;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.dy-overlay .ov-card{background:#fbfbf9;border-radius:18px;flex-direction:column;gap:10px;width:100%;max-width:400px;max-height:86vh;padding:24px 22px;display:flex;overflow-y:auto;box-shadow:0 22px 60px #00000038}.dy-overlay .ov-icon{text-align:center;font-size:2.2rem}.dy-overlay .ov-title{color:#333b36;text-align:center;margin:0;font-size:1.16rem;font-weight:700}.dy-overlay .ov-rows{flex-direction:column;gap:7px;display:flex}.dy-overlay .ov-row{color:#37423b;background:#f2f4f3;border-radius:10px;align-items:center;gap:8px;padding:7px 10px;font-size:.8rem;display:flex}.dy-overlay .ov-row.win{background:#e4efe7;box-shadow:inset 0 0 0 1px #8fbf9f}.dy-overlay .ov-row .who{font-weight:700}.dy-overlay .ov-row .sc{color:#c0392b;font-variant-numeric:tabular-nums;margin-left:auto;font-weight:800}.dy-overlay .ov-row.win .sc{color:#2f7d4f}.dy-overlay .ov-row .cards{flex-wrap:wrap;gap:3px;display:flex}@media (width<=560px){.dy-pot{padding:7px 6px 8px}.dy-pot-name{font-size:.64rem}.dy-card{width:30px;height:41px}.dy-card.mini{width:22px;height:30px}}.fzbq-wrap{flex-direction:column;align-items:center;gap:14px;width:100%;max-width:620px;display:flex}.fzbq-wrap [hidden]{display:none!important}.fzbq-area{flex-direction:column;align-items:center;gap:10px;width:100%;display:flex}.fzbq-topbar{flex-wrap:wrap;justify-content:center;align-items:center;gap:7px;display:flex}.fzbq-badge{color:#5c6a62;background:#ffffffe0;border:1px solid #00000012;border-radius:99px;padding:4px 12px;font-size:.72rem}.fzbq-mini{color:#4a5560;cursor:pointer;background:#fffffff2;border:1px solid #0000001a;border-radius:99px;padding:4px 12px;font-family:inherit;font-size:.72rem;font-weight:600}.fzbq-mini.active{background:var(--gs-accent,#8c6a3f);color:#fff;border-color:#0000}.fzbq-status{color:#333b36;text-align:center;background:#ffffffeb;border-radius:12px;flex-direction:column;align-items:center;gap:2px;min-height:22px;padding:7px 18px;font-size:.86rem;font-weight:700;display:flex;box-shadow:0 2px 10px #0000001f}.fzbq-status .sub{color:#8b968f;font-size:.72rem;font-weight:500}.fzbq-config{background:#ffffffeb;border-radius:12px;flex-wrap:wrap;justify-content:center;align-items:center;gap:8px 14px;padding:9px 14px;display:flex;box-shadow:0 2px 10px #0000001a}.fzbq-config .fzbq-cfg-label{color:#78857a;font-size:.74rem}.fzbq-config .fzbq-cfg-group{gap:5px;display:flex}.fzbq-board{box-sizing:border-box;background:#ffffffeb;border:1px solid #00000014;border-radius:18px;grid-template-rows:auto auto;grid-template-columns:auto minmax(0,1fr) auto;gap:clamp(4px,1.2vw,9px);width:100%;padding:clamp(6px,1.6vw,12px);display:grid;box-shadow:0 10px 30px #00000024}.fzbq-row{grid-template-columns:repeat(6,minmax(0,1fr));gap:clamp(3px,.9vw,7px);display:grid}.fzbq-row.top{grid-area:1/2}.fzbq-row.bottom{grid-area:2/2}.fzbq-pit{aspect-ratio:1;cursor:default;background:#f4f1ea;border:1px solid #0000001a;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;gap:3px;margin:0;padding:0;font-family:inherit;transition:background .15s,box-shadow .15s,transform .12s;display:flex;position:relative}.fzbq-pit.mine{background:#f0e3d2;border-color:#8c6a3f47}.fzbq-pit.theirs{background:#e4e8ec;border-color:#4a7ba738}.fzbq-pit:disabled{opacity:1}.fzbq-pit.can{cursor:pointer}.fzbq-pit.can:hover{transform:translateY(-2px);box-shadow:0 6px 14px #00000029}.fzbq-pit.can:active{transform:translateY(0)}.fzbq-pit.can:after{content:"";border:2px solid #8c6a3f8c;border-radius:50%;animation:1.6s ease-in-out infinite fzbq-breathe;position:absolute;inset:-3px}@keyframes fzbq-breathe{0%,to{opacity:.35}50%{opacity:.9}}.fzbq-num{color:#37423b;font-size:clamp(.78rem,2.4vw,1.05rem);font-weight:700;line-height:1}.fzbq-pit.mine .fzbq-num{color:#6b4e2a}.fzbq-pit.theirs .fzbq-num{color:#2f5375}.fzbq-dots{flex-wrap:wrap;justify-content:center;gap:3px;width:62%;display:flex}.fzbq-dots i{border-radius:50%;width:clamp(3px,.7vw,4px);height:clamp(3px,.7vw,4px)}.fzbq-pit.mine .fzbq-dots i{background:#b07b44}.fzbq-pit.theirs .fzbq-dots i{background:#4a7ba7}.fzbq-pit.from{box-shadow:inset 0 0 0 2px #262c2859}.fzbq-pit.land{box-shadow:0 0 0 2px #262c288c}.fzbq-pit.land.pulse{animation:.7s ease-out fzbq-pulse}@keyframes fzbq-pulse{0%{transform:scale(1);box-shadow:0 0 0 2px #262c288c,0 0 #8c6a3f80}to{transform:scale(1);box-shadow:0 0 0 2px #262c288c,0 0 0 14px #8c6a3f00}}.fzbq-store{background:#efebe3;border:1px solid #00000017;border-radius:999px;flex-direction:column;grid-row:1/span 2;justify-content:center;align-items:center;gap:3px;width:clamp(38px,10vw,58px);display:flex;position:relative;overflow:hidden}.fzbq-store.mine{background:#f0e3d2;border-color:#8c6a3f4d;grid-column:3}.fzbq-store.theirs{background:#e4e8ec;border-color:#4a7ba73d;grid-column:1}.fzbq-store .fzbq-fill{background:#8c6a3f47;transition:height .3s;position:absolute;bottom:0;left:0;right:0}.fzbq-store.theirs .fzbq-fill{background:#4a7ba73d}.fzbq-store .fzbq-num{z-index:1;font-size:clamp(.9rem,2.8vw,1.3rem);position:relative}.fzbq-store.mine .fzbq-num{color:#6b4e2a}.fzbq-store.theirs .fzbq-num{color:#2f5375}.fzbq-store .fzbq-who{z-index:1;color:#8b968f;text-align:center;text-overflow:ellipsis;white-space:nowrap;font-size:.58rem;line-height:1.2;position:absolute;top:7px;left:3px;right:3px;overflow:hidden}.fzbq-store.land{box-shadow:0 0 0 2px #262c2880}.fzbq-store.land.pulse{animation:.7s ease-out fzbq-pulse}.fzbq-actions{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.fzbq-btn{color:#fff;cursor:pointer;background:#8c6a3f;border:none;border-radius:99px;padding:7px 17px;font-family:inherit;font-size:.8rem;font-weight:600;transition:filter .18s}.fzbq-btn:hover{filter:brightness(1.08)}.fzbq-btn:disabled{opacity:.45;cursor:not-allowed;filter:none}.fzbq-btn.sub{color:#4a5560;background:#ffffffe6;border:1px solid #0000001a}.fzbq-overlay{z-index:3000;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#181c1a73;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.fzbq-overlay .ov-card{text-align:center;background:#fbfbf9;border-radius:18px;flex-direction:column;align-items:center;gap:12px;width:100%;max-width:340px;padding:26px 24px;display:flex;box-shadow:0 22px 60px #00000038}.fzbq-overlay .ov-icon{font-size:2.4rem}.fzbq-overlay .ov-title{color:#333b36;margin:0;font-size:1.24rem;font-weight:700}.fzbq-overlay .ov-lines{color:#7d8a82;white-space:pre-line;font-size:.84rem;line-height:1.75}@media (width<=420px){.fzbq-board{border-radius:14px}.fzbq-pit{gap:2px}.fzbq-dots{width:82%}}.gjxq-wrap{flex-direction:column;align-items:center;gap:11px;width:100%;max-width:520px;display:flex}.gjxq-lobby{background:#ffffffb8;border:1px solid #00000012;border-radius:14px;flex-direction:column;gap:9px;width:100%;padding:13px 15px;display:flex}.gjxq-status{color:#4c5b3c;font-size:.86rem;font-weight:600}.players{justify-content:space-between;gap:8px;width:100%;display:flex}.player{flex:1 1 0;align-items:center;gap:7px;min-width:0;display:flex}.player.right{justify-content:flex-end}.player .who{color:#6b7670;white-space:nowrap;font-size:.74rem;font-weight:700}.player .who.turn{color:#4c5b3c}.player .caps{color:#3a4238;flex-wrap:wrap;gap:2px;max-width:130px;font-size:1rem;line-height:1;display:flex}.player.right .caps{justify-content:flex-end}.player .king{border-radius:4px;flex:none;justify-content:center;align-items:center;width:20px;height:20px;font-size:.9rem;display:flex}.player .king.w{color:#fff;background:#91ab78}.player .king.b{color:#012;background:#f1f1db}.gjxq-board{aspect-ratio:1;touch-action:manipulation;background:#f1f1db;border-radius:12px;width:100%;max-width:440px;position:relative;box-shadow:0 10px 28px #465a3229,inset 0 0 0 1px #5a6e4633}.gjxq-board svg{width:100%;height:100%;position:absolute;inset:0}.gjxq-piece-text{-webkit-user-select:none;user-select:none;pointer-events:none;font-family:Segoe UI Symbol,"Noto Sans Symbols 2",serif}.gjxq-coord{fill:#4a5a38;-webkit-user-select:none;user-select:none;font-size:2px}.gjxq-log{color:#8b968f;background:#fff9;border:1px solid #0000000d;border-radius:10px;width:100%;max-height:84px;padding:9px 12px;font-size:.72rem;line-height:1.75;overflow-y:auto}.jzq-wrap{flex-direction:column;align-items:center;gap:14px;width:100%;max-width:560px;display:flex}.jzq-wrap [hidden]{display:none!important}.jzq-area{flex-direction:column;align-items:center;gap:10px;width:100%;display:flex}.jzq-topbar{flex-wrap:wrap;justify-content:center;align-items:center;gap:7px;display:flex}.jzq-badge{color:#5c6a62;background:#ffffffe0;border:1px solid #00000012;border-radius:99px;padding:4px 12px;font-size:.72rem}.jzq-mini{color:#4a5560;cursor:pointer;background:#fffffff2;border:1px solid #0000001a;border-radius:99px;padding:4px 12px;font-family:inherit;font-size:.72rem;font-weight:600}.jzq-status{color:#333b36;text-align:center;background:#ffffffe6;border-radius:12px;flex-direction:column;align-items:center;gap:2px;min-height:22px;padding:7px 18px;font-size:.86rem;font-weight:700;display:flex;box-shadow:0 2px 10px #0000001f}.jzq-status .sub{color:#8b968f;font-size:.72rem;font-weight:500}.jzq-board{aspect-ratio:1;box-sizing:border-box;background:#262e2a57;border:1px solid #ffffff47;border-radius:16px;grid-template-rows:repeat(3,1fr);grid-template-columns:repeat(3,1fr);gap:7px;width:min(92vw,480px);padding:9px;display:grid;box-shadow:0 10px 30px #0000002e}.jzq-sub{box-sizing:border-box;background:#fffffff0;border:1px solid #00000012;border-radius:9px;grid-template-rows:repeat(3,1fr);grid-template-columns:repeat(3,1fr);gap:2px;padding:3px;transition:background .2s,border-color .2s,box-shadow .2s;display:grid;position:relative}.jzq-sub.own-red{background:#f0d2ca;border-color:#c8553d8c}.jzq-sub.own-blue{background:#cfdfec;border-color:#4a7ba794}.jzq-sub.limit{box-shadow:0 0 0 2px #5b7b9aa6}.jzq-line{pointer-events:none;background:currentColor;border-radius:2px;position:absolute}.jzq-sub.own-red .jzq-line{color:#8e2f1c}.jzq-sub.own-blue .jzq-line{color:#244f73}.jzq-cell{cursor:default;background:#0000000d;border:none;border-radius:4px;margin:0;padding:0;font-family:inherit;transition:background .12s,transform .12s;position:relative}.jzq-cell.can{cursor:pointer;background:#5b7b9a33}.jzq-cell.can:hover{background:#5b7b9a61;transform:scale(1.06)}.jzq-cell:disabled{opacity:1}.jzq-cell.red{background:#c8553d}.jzq-cell.blue{background:#4a7ba7}.jzq-cell.last{box-shadow:inset 0 0 0 2px #262c2899}.jzq-cell.can:after{content:"";background:#5b7b9a99;border-radius:50%;position:absolute;inset:37%}.jzq-cell.red:after,.jzq-cell.blue:after{display:none}.jzq-score{color:#4a5560;background:#ffffffe0;border-radius:99px;justify-content:center;gap:14px;padding:5px 16px;font-size:.76rem;display:flex}.jzq-score b{font-weight:700}.jzq-score .s-red{color:#c8553d}.jzq-score .s-blue{color:#4a7ba7}.jzq-actions{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.jzq-btn{color:#fff;cursor:pointer;background:#5b7b9a;border:none;border-radius:99px;padding:7px 17px;font-family:inherit;font-size:.8rem;font-weight:600;transition:filter .18s}.jzq-btn:hover{filter:brightness(1.08)}.jzq-btn:disabled{opacity:.45;cursor:not-allowed;filter:none}.jzq-btn.sub{color:#4a5560;background:#ffffffe6;border:1px solid #0000001a}.jzq-overlay{z-index:3000;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#181c1a73;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.jzq-overlay .ov-card{text-align:center;background:#fbfbf9;border-radius:18px;flex-direction:column;align-items:center;gap:12px;width:100%;max-width:340px;padding:26px 24px;display:flex;box-shadow:0 22px 60px #00000038}.jzq-overlay .ov-icon{font-size:2.4rem}.jzq-overlay .ov-title{color:#333b36;margin:0;font-size:1.24rem;font-weight:700}.jzq-overlay .ov-lines{color:#7d8a82;white-space:pre-line;font-size:.84rem;line-height:1.75}@media (width<=420px){.jzq-board{gap:4px;width:min(94vw,380px);padding:6px}.jzq-sub{gap:1px;padding:2px}}:root{--bg:#eaf0ec;--card-bg:#faf9f6;--slot-tray:#d2ddd6;--text:#37423b;--sub:#7d8a82;--btn:#6a8e7f;--btn-hover:#557568}.level-bar{width:100%;color:var(--sub);justify-content:space-between;align-items:center;gap:10px;font-size:.82rem;display:flex}.level-bar b{color:var(--text)}.field-area{touch-action:manipulation;background:#dee8e2;border-radius:12px;width:100%;min-height:180px;position:relative;overflow:hidden;box-shadow:inset 0 2px 6px #0000000f}.tile{cursor:pointer;will-change:left, top;background:#fff;border:1px solid #d1ddd5;border-radius:10px;justify-content:center;align-items:center;transition:filter .18s,box-shadow .18s,transform 80ms;display:flex;position:absolute;box-shadow:0 3px 5px #00000017}.tile:not(.blocked):hover{box-shadow:0 5px 12px #00000029}.tile:not(.blocked):active{transform:scale(.94)}.tile.blocked{filter:brightness(.66)grayscale(.28);cursor:not-allowed}.tray-box{background:var(--slot-tray);border-radius:12px;justify-content:center;gap:6px;width:100%;padding:8px;display:flex}.tray-slot{aspect-ratio:1;background:#ffffff6b;border-radius:8px;flex:1 1 0;justify-content:center;align-items:center;max-width:52px;font-size:1.35rem;transition:background .18s;display:flex}.tray-slot.filled{background:#fff;box-shadow:0 2px 4px #00000012}.tray-slot.danger{background:#f0c4b8}.tool-bar{justify-content:space-between;align-items:center;gap:10px;width:100%;display:flex}.tool-bar .tip{color:var(--sub);font-size:.78rem}.actions{gap:8px;display:flex}button.btn{background:var(--btn);color:#fff;cursor:pointer;border:none;border-radius:8px;padding:7px 14px;font-size:.82rem;transition:background .2s}:root{--bg:#eae6df;--card-bg:#faf8f5;--board-bg:#dcd5c9;--text:#37332d;--sub:#7f776c;--btn:#667664}.stats-bar{justify-content:space-between;gap:8px;width:100%;font-size:.88rem;font-weight:600;display:flex}.goal-bar{background:#e4ded4;border-radius:99px;width:100%;height:8px;overflow:hidden}.goal-fill{background:linear-gradient(90deg,#d9a443,#5c8769);border-radius:99px;width:0%;height:100%;transition:width .3s}.board-grid{aspect-ratio:1;background:var(--board-bg);border-radius:12px;grid-template-columns:repeat(8,1fr);gap:4px;width:100%;padding:8px;display:grid;box-shadow:inset 0 2px 6px #00000014}.gem{cursor:pointer;border-radius:8px;justify-content:center;align-items:center;width:100%;height:100%;font-size:1.4rem;transition:transform .15s;display:flex}.gem.selected{outline:3px solid #2b2d2b;transform:scale(.9)}.gem.clearing{opacity:.35;transform:scale(.4)}.g-1{background:#d05a4c}.g-2{background:#527a9c}.g-3{background:#d9a443}.g-4{background:#5c8769}.g-5{background:#887296}.g-6{background:#b5795a}.footer-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;width:100%;display:flex}.footer-row .tip{color:var(--sub);font-size:.76rem}:root{--bg:#e4e7eb;--card-bg:#fff;--board-bg:#cfd5dc;--cell-covered:#bac3cd;--cell-covered-hover:#afb9c4;--cell-open:#eaeff4;--text:#2a3037;--sub:#75818e;--accent:#3a6987;--danger:#c85040}.top-panel{justify-content:space-between;align-items:center;gap:8px;width:100%;display:flex}.counter-badge{text-align:center;font-variant-numeric:tabular-nums;background:#f0f3f6;border-radius:8px;min-width:62px;padding:6px 14px;font-size:1rem;font-weight:600}.board-scroll{justify-content:center;width:100%;padding:2px;display:flex;overflow-x:auto}.board-container{background:var(--board-bg);touch-action:manipulation;border-radius:10px;gap:3px;margin:0 auto;padding:8px;display:grid;box-shadow:inset 0 1px 3px #0000001a}.cell{cursor:pointer;background:var(--cell-covered);border-radius:5px;justify-content:center;align-items:center;font-weight:600;line-height:1;transition:background .1s;display:flex}.cell:hover{background:var(--cell-covered-hover)}.cell.revealed{background:var(--cell-open);cursor:default}.cell.revealed:hover{background:var(--cell-open)}.cell.flagged{color:var(--accent)}.cell.mine{background:var(--danger);color:#fff}.cell.wrong-flag{color:#7a2a20;background:#e6b3ac}.c-1{color:#35628a}.c-2{color:#437c5e}.c-3{color:#c05b48}.c-4{color:#7b4b87}.c-5{color:#b57f3a}.c-6{color:#357f8a}.c-7{color:#333}.c-8{color:#8a8a8a}.mobile-flag-toggle{color:var(--sub);flex-wrap:wrap;justify-content:center;align-items:center;gap:10px;font-size:.82rem;display:flex}.switch-btn{cursor:pointer;color:var(--text);background:#eaeff4;border:none;border-radius:20px;padding:6px 14px;font-family:inherit;font-size:.82rem;font-weight:500}.switch-btn.active{background:var(--accent);color:#fff}button.btn{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:8px;padding:6px 15px;font-family:inherit;font-size:.82rem}button.btn.ghost{color:var(--text);background:#eaeff4}:root{--bg:#e7ece9;--card-bg:#f4f8f6;--board-felt:#6e877b;--cell-hover:#637c70;--stone-black:#2a302d;--stone-white:#faf9f5;--text:#303b35;--sub:#7a8981;--btn:#5a7467;--btn-hover:#475c51}.game-card{background:var(--card-bg);border-radius:16px;flex-direction:column;align-items:center;gap:14px;width:100%;max-width:480px;padding:20px;display:flex;box-shadow:0 10px 32px #0000000a}.scoreboard{justify-content:space-around;align-items:center;width:100%;display:flex}.score-card{background:#00000008;border-radius:10px;align-items:center;gap:10px;padding:8px 16px;transition:all .2s;display:flex}.score-card.active{outline:2px solid var(--board-felt);background:#6e877b26}.stone-circle{border-radius:50%;width:22px;height:22px}.stone-circle.b{background:var(--stone-black)}.stone-circle.w{background:var(--stone-white);border:1px solid #ccc}.count{font-size:1.3rem;font-weight:600}.mode-switch-group{background:#dee5e1;border-radius:8px;gap:2px;padding:3px;display:flex}.mode-tab{cursor:pointer;color:var(--sub);background:0 0;border:none;border-radius:6px;padding:6px 12px;font-family:inherit;font-size:.8rem}.mode-tab.active{color:var(--text);background:#fff;font-weight:600;box-shadow:0 2px 4px #0000000d}.multiplayer-box{background:#dee5e1;border-radius:10px;flex-direction:column;gap:8px;width:100%;padding:10px 14px;font-size:.82rem;display:none}.room-inputs{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.room-inputs input{background:#fff;border:1px solid #cad4cf;border-radius:6px;outline:none;width:120px;padding:6px 10px;font-family:inherit;font-size:.85rem}.board-grid{background:var(--board-felt);aspect-ratio:1;border-radius:12px;grid-template-rows:repeat(8,1fr);grid-template-columns:repeat(8,1fr);gap:4px;width:100%;padding:8px;display:grid;box-shadow:inset 0 2px 8px #00000026}.grid-cell{cursor:pointer;background:#ffffff14;border-radius:6px;justify-content:center;align-items:center;display:flex;position:relative}.grid-cell:hover{background:var(--cell-hover)}.grid-cell.no-move{cursor:default}.grid-cell.no-move:hover{background:#ffffff14}.stone{border-radius:50%;width:84%;height:84%;transition:transform .2s}.stone.black{background:var(--stone-black);box-shadow:0 2px 5px #0000004d}.stone.white{background:var(--stone-white);box-shadow:0 2px 5px #00000026}.hint-dot{background:#fff6;border-radius:50%;width:10px;height:10px}.tool-bar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;width:100%;display:flex}button.btn{background:var(--btn);color:#fff;cursor:pointer;border:none;border-radius:8px;padding:7px 14px;font-family:inherit;font-size:.82rem;transition:background .2s}button.btn:hover{background:var(--btn-hover)}button.btn.small{padding:5px 10px;font-size:.76rem}button.btn.sub{color:var(--text);background:#ccd7d0}:root{--bg:#e7ebe4;--card-bg:#f5f7f3;--board:#d8dfd4;--snake-head:#4a5d4e;--snake-body:#6d8272;--food:#c47c65;--text:#374239;--sub:#78857a;--btn:#627566;--btn-hover:#4f5e52}.container{flex-direction:column;gap:12px;width:100%;max-width:460px;display:flex}.status-bar{background:var(--card-bg);border-radius:12px;justify-content:space-between;align-items:center;gap:8px;padding:10px 16px;display:flex;box-shadow:0 4px 16px #00000008}.score-item{flex-direction:column;display:flex}.score-item span{text-transform:uppercase;letter-spacing:.5px;color:var(--sub);font-size:.66rem}.score-item b{font-variant-numeric:tabular-nums;font-size:1.15rem;font-weight:600}.tiers{flex-wrap:wrap;justify-content:center;gap:7px;display:flex}.tier-btn{background:var(--card-bg);color:var(--text);border:1px solid #00000012;border-radius:99px;padding:6px 15px;font-size:.78rem;font-weight:600}.tier-btn:hover{background:#ebefe8}.tier-btn.active{background:var(--btn);color:#fff;border-color:#0000}.canvas-box{background:var(--board);aspect-ratio:1;touch-action:none;border-radius:14px;position:relative;overflow:hidden;box-shadow:inset 0 2px 8px #0000000a}canvas{width:100%;height:100%;display:block}.pause-veil{color:#fff;letter-spacing:2px;-webkit-backdrop-filter:blur(2px);background:#3742399e;flex-direction:column;justify-content:center;align-items:center;gap:6px;font-size:1.05rem;font-weight:700;display:flex;position:absolute;inset:0}.pause-veil[hidden]{display:none!important}.pause-veil span{letter-spacing:0;color:#ffffffc7;font-size:.72rem;font-weight:400}.d-pad{grid-template-columns:repeat(3,1fr);gap:9px;max-width:230px;margin:2px auto 0;display:grid}.pad-btn{background:var(--card-bg);color:var(--text);touch-action:manipulation;cursor:pointer;border:1px solid #0000000f;border-radius:10px;justify-content:center;align-items:center;padding:13px 0;font-family:inherit;font-size:1.05rem;font-weight:700;display:flex}.pad-btn:active{background:#e2e8de}.center-slot{visibility:hidden}.hint{color:var(--sub);text-align:center;font-size:.72rem;line-height:1.7}:root{--bg:#273a33;--felt:#30473e;--card-bg:#faf7f0;--card-back:#455c52;--card-border:#dcd5c5;--red:#c54438;--black:#292b2a;--slot-border:#ffffff26;--text-light:#e7efe9;--btn:#526e62;--btn-hover:#40574d}*{box-sizing:border-box;-webkit-user-select:none;user-select:none;margin:0;padding:0}body{background-color:var(--bg);color:var(--text-light);flex-direction:column;align-items:center;min-height:100vh;padding:14px 8px 28px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;display:flex}header{text-align:center}header h1{letter-spacing:2px;font-size:1.75rem;font-weight:300}header p{color:#9bb0a5;margin-top:2px;font-size:.78rem}.game-board{background:var(--felt);border:1px solid #ffffff0f;border-radius:16px;flex-direction:column;gap:18px;width:100%;max-width:680px;padding:16px;display:flex;box-shadow:0 16px 40px #0000004d}.top-row{justify-content:space-between;gap:8px;display:flex}.stock-waste-group,.foundation-group{gap:8px;display:flex}.card-slot{border:1.5px dashed var(--slot-border);border-radius:8px;width:64px;height:90px;position:relative}.tableau-row{grid-template-columns:repeat(7,1fr);gap:8px;min-height:380px;display:grid}.tableau-col{min-height:90px;position:relative}.card{background:var(--card-bg);border:1px solid var(--card-border);cursor:pointer;border-radius:8px;flex-direction:column;justify-content:space-between;width:64px;height:90px;padding:4px 6px;font-size:.85rem;font-weight:700;transition:transform .1s;display:flex;position:absolute;top:0;left:0;box-shadow:0 3px 8px #0000002e}.card.back{background:var(--card-back);background-image:repeating-linear-gradient(45deg,#ffffff0a 0 4px,#0000 4px 8px);border:1px solid #ffffff26}.card.red{color:var(--red)}.card.black{color:var(--black)}.card-center-suit{align-self:center;font-size:1.3rem;line-height:1}.card.selected{outline:2.5px solid #eac875;transform:translateY(-4px);z-index:100!important}.actions-bar{color:#9bb0a5;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;width:100%;max-width:680px;margin-top:10px;font-size:.8rem;display:flex}.actions-bar .stats{flex-wrap:wrap;gap:12px;display:flex}.actions-bar b{color:#e7efe9}.btn-group{gap:8px;display:flex}button{background:var(--btn);color:#fff;cursor:pointer;border:none;border-radius:8px;padding:7px 15px;font-family:inherit;font-size:.8rem;transition:background .2s}button:hover{background:var(--btn-hover)}button:disabled{opacity:.45;cursor:not-allowed}button.ghost{background:#3d554b}@media (width<=540px){.card-slot,.card{width:42px;height:60px;padding:2px 4px;font-size:.7rem}.card-center-suit{font-size:.9rem}.game-board{padding:10px}.tableau-row{gap:4px}}.uno-wrap{flex-direction:column;align-items:center;gap:12px;width:100%;max-width:620px;display:flex}.tab{color:#6b7670;cursor:pointer;background:0 0;border:none;border-radius:99px;padding:6px 20px;font-family:inherit;font-size:.82rem;font-weight:600;transition:background .18s,color .18s}.uno-lobby{background:#ffffffb8;border:1px solid #00000012;border-radius:16px;flex-direction:column;gap:12px;width:100%;padding:16px;display:flex}.lobby-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.lobby-label{color:#78857a;font-size:.78rem}.seat-group{flex-wrap:wrap;gap:5px;display:flex}.seat-btn{color:#37423b;cursor:pointer;background:#fff;border:1px solid #00000017;border-radius:9px;width:32px;height:32px;font-family:inherit;font-size:.82rem;font-weight:700}.seat-btn.active{color:#fff;background:#d6533c;border-color:#0000}.roster{flex-direction:column;gap:6px;display:flex}.roster-row{color:#37423b;background:#fffc;border:1px solid #0000000f;border-radius:10px;align-items:center;gap:9px;padding:7px 11px;font-size:.82rem;display:flex}.roster-row.me{border-color:#d6533c}.roster-row .rr-avatar{font-size:1rem}.roster-row .rr-tag{color:#9aa69e;margin-left:auto;font-size:.7rem}.lobby-actions{justify-content:flex-end;gap:8px;display:flex}.btn.warn{background:#e0a94a}.uno-board{flex-direction:column;gap:11px;width:100%;display:flex}.board-top{flex-wrap:wrap;justify-content:center;gap:7px;display:flex}.pile-row{justify-content:center;align-items:flex-end;gap:20px;display:flex}.pile{flex-direction:column;align-items:center;gap:5px;display:flex}.pile-label{color:#9aa69e;font-size:.7rem}.pile-sub{color:#6b7670;font-size:.72rem;font-weight:600}.pile-card{color:#fff;border-radius:9px;justify-content:center;align-items:center;width:54px;height:78px;font-size:1.5rem;font-weight:800;display:flex;box-shadow:0 3px 10px #00000024}.pile-card.back{color:#c9d3cc;background:#37423b;font-size:1rem}.uno-card{color:#fff;cursor:pointer;-webkit-user-select:none;user-select:none;border:2px solid #0000;border-radius:8px;justify-content:center;align-items:center;width:48px;height:70px;font-size:1.25rem;font-weight:800;transition:transform .14s;display:flex;box-shadow:0 2px 7px #00000029}.uno-card:hover{transform:translateY(-5px)}.uno-card.playable{border-color:#fff;outline:2px solid #e0a94a}.uno-card.dim{opacity:.5;cursor:default}.uno-card.dim:hover{transform:none}.uno-card.small{width:40px;height:58px;font-size:1rem}.players{flex-direction:column;gap:6px;display:flex}.p-row{color:#37423b;background:#ffffffc7;border:1px solid #0000000f;border-radius:10px;align-items:center;gap:9px;padding:7px 12px;font-size:.82rem;display:flex}.p-row.turn{background:#d6533c12;border-color:#d6533c}.p-row.done{opacity:.55}.p-row .p-avatar{font-size:1.05rem}.p-row .p-name{font-weight:600}.p-row .p-cnt{color:#78857a;margin-left:auto;font-size:.76rem}.p-row .p-rank{color:#c08a3e;font-size:.72rem;font-weight:700}.p-row .p-uno{color:#d6533c;font-size:.68rem;font-weight:800}.hand-area{flex-direction:column;align-items:center;gap:6px;display:flex}.hand-label{color:#9aa69e;font-size:.72rem}.hand{flex-wrap:wrap;justify-content:center;gap:6px;min-height:72px;display:flex}.color-picker{flex-wrap:wrap;justify-content:center;align-items:center;gap:7px;display:flex}.cp-label{color:#78857a;font-size:.75rem}.cp-btn{cursor:pointer;background:#fff;border:1px solid #0000001a;border-radius:9px;padding:6px 12px;font-family:inherit;font-size:.78rem;font-weight:600}.uno-log{color:#8b968f;background:#fff9;border:1px solid #0000000d;border-radius:10px;max-height:108px;padding:9px 12px;font-size:.72rem;line-height:1.75;overflow-y:auto}.uno-overlay{z-index:3000;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#181c1a73;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.overlay-card{text-align:center;background:#fbfbf9;border-radius:18px;flex-direction:column;align-items:center;gap:12px;width:100%;max-width:340px;padding:26px 24px;display:flex;box-shadow:0 22px 60px #00000038}.ov-icon{font-size:2.4rem}.ov-title{color:#333b36;margin:0;font-size:1.24rem;font-weight:700}.ov-lines{color:#7d8a82;white-space:pre-line;font-size:.84rem;line-height:1.75}.xq-wrap{flex-direction:column;align-items:center;gap:11px;width:100%;max-width:520px;display:flex}.tab-group{background:#ffffffbf;border:1px solid #00000012;border-radius:99px;gap:4px;padding:4px;display:inline-flex}.tab{color:#6b7670;cursor:pointer;background:0 0;border:none;border-radius:99px;padding:6px 18px;font-family:inherit;font-size:.82rem;font-weight:600}.tab.active{color:#fff;background:#8b3a2e}.xq-lobby{background:#ffffffb8;border:1px solid #00000012;border-radius:14px;flex-direction:column;gap:9px;width:100%;padding:13px 15px;display:flex}.room-inputs{flex-wrap:wrap;gap:7px;display:flex}.room-inputs input{border:1px solid #0000001a;border-radius:9px;outline:none;flex:130px;min-width:0;padding:7px 11px;font-family:inherit;font-size:.84rem}.room-status{color:#78857a;font-size:.76rem;line-height:1.6}.btn{color:#fff;cursor:pointer;background:#8b3a2e;border:none;border-radius:99px;padding:7px 17px;font-family:inherit;font-size:.8rem;font-weight:600;transition:filter .18s}.btn:hover{filter:brightness(1.08)}.btn:disabled{opacity:.42;cursor:not-allowed;filter:none}.btn.sub{color:#4a5560;background:#ffffffe6;border:1px solid #0000001a}.btn.small{padding:6px 13px;font-size:.76rem}.hidden{display:none!important}.status-row{flex-wrap:wrap;justify-content:center;align-items:center;gap:9px;display:flex}.badge{color:#78857a;background:#ffffffbf;border:1px solid #00000012;border-radius:99px;padding:4px 11px;font-size:.72rem}.xq-status{color:#6b4a3a;font-size:.86rem;font-weight:600}.xq-board{aspect-ratio:92/102;touch-action:manipulation;background:linear-gradient(#f6e7ce,#f1ddbc);border-radius:12px;width:100%;max-width:460px;position:relative;box-shadow:inset 0 0 0 1px #78502838,0 10px 28px #5a3c1e24}.xq-grid{width:100%;height:100%;position:absolute;inset:0}.xq-grid line{stroke:#9a6b3f;stroke-width:.45px}.xq-river{fill:#b08a5e;letter-spacing:1px;font-size:6px;font-weight:700}.xq-layer{position:absolute;inset:0}.xq-piece{aspect-ratio:1;cursor:default;-webkit-user-select:none;user-select:none;border:1.5px solid;border-radius:50%;justify-content:center;align-items:center;width:10.4%;font-size:clamp(.7rem,3.4vw,1.05rem);font-weight:800;transition:box-shadow .14s;display:flex;position:absolute;transform:translate(-50%,-50%)}.xq-piece.red{color:#a3231b;background:radial-gradient(circle at 34% 30%,#fff7ec,#f0d9bc);border-color:#b5544a;box-shadow:0 2px 5px #783c2847,inset 0 0 0 1px #ffffffb3}.xq-piece.black{color:#23282b;background:radial-gradient(circle at 34% 30%,#fdfcf8,#e4dccb);border-color:#5a5f5b;box-shadow:0 2px 5px #28322d47,inset 0 0 0 1px #ffffffb3}.xq-piece.mine{cursor:pointer}.xq-piece.mine:hover{box-shadow:0 0 0 2px #c8783c59,0 3px 9px #783c284d}.xq-piece.sel{box-shadow:0 0 0 3px #c8783c99,0 3px 9px #783c2859}.xq-piece.last{outline-offset:2px;outline:2px dashed #be783cbf}.xq-piece.face{transform:translate(-50%,-50%)rotate(180deg)}.xq-dot{aspect-ratio:1;cursor:pointer;background:#4682508c;border-radius:50%;width:3.4%;position:absolute;transform:translate(-50%,-50%)}.xq-ring{aspect-ratio:1;cursor:pointer;border:2.5px solid #c84632bf;border-radius:50%;width:10.4%;position:absolute;transform:translate(-50%,-50%)}.actions{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.replay-step{color:#78857a;align-self:center;font-size:.76rem}.xq-log{color:#8b968f;background:#fff9;border:1px solid #0000000d;border-radius:10px;width:100%;max-height:84px;padding:9px 12px;font-size:.72rem;line-height:1.75;overflow-y:auto}.zfj-wrap{flex-direction:column;align-items:center;gap:14px;width:100%;max-width:760px;display:flex}.zfj-wrap [hidden]{display:none!important}.zfj-area{flex-direction:column;align-items:center;gap:12px;width:100%;display:flex}.zfj-topbar{flex-wrap:wrap;justify-content:center;align-items:center;gap:7px;display:flex}.zfj-badge{color:#5c6a62;background:#ffffffe0;border:1px solid #00000012;border-radius:99px;padding:4px 12px;font-size:.72rem}.zfj-mini{color:#4a5560;cursor:pointer;background:#fffffff2;border:1px solid #0000001a;border-radius:99px;padding:4px 12px;font-family:inherit;font-size:.72rem;font-weight:600}.zfj-mini.active{background:var(--gs-accent,#2f6d8e);color:#fff;border-color:#0000}.zfj-mini:disabled{opacity:.45;cursor:not-allowed}.zfj-status{color:#333b36;text-align:center;background:#ffffffeb;border-radius:12px;flex-direction:column;align-items:center;gap:2px;min-height:22px;padding:7px 18px;font-size:.86rem;font-weight:700;display:flex;box-shadow:0 2px 10px #0000001f}.zfj-status .sub{color:#8b968f;font-size:.72rem;font-weight:500}.zfj-legend{flex-wrap:wrap;justify-content:center;gap:6px 14px;display:flex}.zfj-legend span{color:#ffffffeb;text-shadow:0 1px 3px #00000080;align-items:center;gap:5px;font-size:.7rem;display:inline-flex}.zfj-legend i{border-radius:3px;width:11px;height:11px;display:inline-block}.zfj-boards{grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(10px,2.4vw,20px);width:100%;display:grid}.zfj-boards.solo{grid-template-columns:minmax(0,1fr);max-width:430px;margin:0 auto}.zfj-board-box{box-sizing:border-box;background:#fffffff0;border:1px solid #00000014;border-radius:16px;flex-direction:column;gap:6px;padding:clamp(7px,1.6vw,12px);display:flex;box-shadow:0 10px 30px #00000024}.zfj-board-box .zfj-cap{color:#5c6a62;text-align:center;font-size:.76rem;font-weight:700}.zfj-board-box.live .zfj-cap{color:#2f6d8e}.zfj-grid{grid-template-rows:auto repeat(10,minmax(0,1fr));grid-template-columns:auto repeat(10,minmax(0,1fr));gap:2px;display:grid}.zfj-axis{color:#a7b1ab;justify-content:center;align-items:center;font-size:.52rem;font-weight:600;line-height:1;display:flex}.zfj-axis.corner{font-size:0}.zfj-cell{aspect-ratio:1;cursor:default;background:#f1f4f5;border:1px solid #00000012;border-radius:3px;margin:0;padding:0;font-family:inherit;transition:background .12s,transform 80ms;position:relative}.zfj-cell:disabled{opacity:1}.zfj-cell.own{background:#a6d3b4;border-color:#2f6d8e2e}.zfj-cell.own.nose{background:#e9a493}.zfj-cell.sel{z-index:1;box-shadow:0 0 0 2px #2f6d8e}.zfj-cell.miss,.zfj-cell.miss.own{background:#dce1e6}.zfj-cell.miss:after{content:"";background:#aeb8bf;border-radius:50%;position:absolute;inset:38%}.zfj-cell.hit,.zfj-cell.hit.own{background:#4caf62}.zfj-cell.nose-hit,.zfj-cell.nose-hit.own,.zfj-cell.sunk,.zfj-cell.sunk.own{background:#e24b3a}.zfj-cell.last{z-index:1;box-shadow:0 0 0 2px #1f4e6b}.zfj-cell.can{cursor:pointer}.zfj-cell.can:hover{background:#e4eef4;transform:scale(1.08)}.zfj-cell.can.pickable:hover{background:#cde7d6}.zfj-layout-bar,.zfj-actions{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.zfj-btn{background:var(--gs-accent,#2f6d8e);color:#fff;cursor:pointer;border:none;border-radius:99px;padding:7px 17px;font-family:inherit;font-size:.8rem;font-weight:600;transition:filter .18s}.zfj-btn:hover{filter:brightness(1.08)}.zfj-btn:disabled{opacity:.45;cursor:not-allowed;filter:none}.zfj-btn.sub{color:#4a5560;background:#ffffffe6;border:1px solid #0000001a}.zfj-hint{color:#ffffffe6;text-shadow:0 1px 3px #00000080;text-align:center;font-size:.72rem;line-height:1.6}.zfj-overlay{z-index:3000;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#181c1a73;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.zfj-overlay .ov-card{text-align:center;background:#fbfbf9;border-radius:18px;flex-direction:column;align-items:center;gap:12px;width:100%;max-width:340px;padding:26px 24px;display:flex;box-shadow:0 22px 60px #00000038}.zfj-overlay .ov-icon{font-size:2.4rem}.zfj-overlay .ov-title{color:#333b36;margin:0;font-size:1.24rem;font-weight:700}.zfj-overlay .ov-lines{color:#7d8a82;white-space:pre-line;font-size:.84rem;line-height:1.75}@media (width<=640px){.zfj-boards{grid-template-columns:minmax(0,1fr)}.zfj-boards:not(.solo) .zfj-board-box.mine{max-width:62%;margin:0 auto}.zfj-board-box .zfj-cap{font-size:.72rem}}
