.duel-page{--duel-ink:#243e33;--duel-muted:#748278;--duel-line:#dfe6dc;color:var(--duel-ink);padding-bottom:4px}.duel-page-heading{justify-content:space-between;align-items:center;gap:20px;margin-bottom:26px;display:flex}.duel-page-heading h1{letter-spacing:.3px;font-size:27px}.duel-page-heading p{color:var(--duel-muted);margin-top:8px;font-size:12px;line-height:1.9}.duel-free{color:#567444;white-space:nowrap;background:#eef4e8;border:1px solid #dce7d5;border-radius:20px;align-items:center;gap:6px;padding:8px 12px;font-size:11px;display:flex}.duel-lobby-grid{grid-template-columns:minmax(380px,1.5fr) minmax(270px,1fr);align-items:start;gap:24px;display:grid}.duel-create{border:1px solid var(--duel-line);background:#fffef9;border-radius:17px;overflow:hidden}.duel-lobby-art{background:radial-gradient(at 50% 40%,#365f4c,#214534 80%);place-items:center;height:180px;display:grid;position:relative;overflow:hidden}.duel-lobby-orbit{border:1px solid #e7efdd15;border-radius:50%;width:320px;height:320px;position:absolute;top:-75px;box-shadow:0 0 0 30px #e7efdd05,0 0 0 60px #e7efdd05}.duel-lobby-tiles{z-index:1;align-items:center;gap:13px;display:flex}.duel-lobby-tiles .duel-tile{border-radius:7px;width:57px;height:79px;box-shadow:0 7px #c1c8ac,0 15px 23px #102c2866}.duel-lobby-tiles .duel-tile:first-child{transform:rotate(-13deg)translateY(8px)}.duel-lobby-tiles .duel-tile:last-child{transform:rotate(13deg)translateY(8px)}.duel-lobby-tiles .duel-tile>b{font-size:29px}.duel-lobby-tiles .duel-tile>em{font-size:19px}.duel-lobby-tiles .duel-honor{font-size:43px!important}.duel-lobby-tiles .duel-pips{gap:5px;width:36px}.duel-lobby-tiles .duel-pips i{width:10px;height:10px}.duel-lobby-art>span{letter-spacing:3.5px;color:#c0cfbda6;font-size:8px;position:absolute;bottom:17px}.duel-create-copy{padding:27px 30px}.duel-kicker{color:#7c8f70;letter-spacing:1px;align-items:center;gap:7px;font-size:10px;display:flex}.duel-create-copy h2{margin-top:13px;font-size:23px;font-weight:600}.duel-create-copy>p{color:var(--duel-muted);margin-top:8px;font-size:11px;line-height:1.9}.duel-modes{gap:9px;margin-top:22px;display:grid}.duel-modes>button{text-align:left;background:#fffefb;border:1px solid #e3e8dd;border-radius:9px;align-items:center;gap:13px;padding:15px;display:flex}.duel-modes>button:hover{background:#f7f9f0;border-color:#abbf99}.duel-modes>button.selected{background:#eef4e5;border-color:#849e6f;box-shadow:0 0 0 1px #849e6f22}.duel-mode-mark{color:#5a7350;background:#f1f2e8;border:1px solid #dce2d1;border-bottom:3px solid #d1d9c2;border-radius:5px;place-items:center;width:34px;height:39px;font-size:22px;font-weight:600;display:grid}.duel-modes>button>span:nth-child(2){flex:1}.duel-modes b{align-items:center;gap:8px;font-size:13px;font-weight:600;display:flex}.duel-modes b em{color:#6c8654;background:#dfeacf;border-radius:3px;padding:2px 5px;font-size:8px;font-style:normal}.duel-modes small{color:#829078;margin-top:5px;font-size:10px;display:block}.duel-radio{color:#fff;border:1px solid #c2cdb6;border-radius:50%;place-items:center;width:17px;height:17px;display:grid}.selected .duel-radio{background:#658150;border-color:#658150}.duel-mode-note{color:#7e8c74!important;min-height:20px!important;margin:12px 0!important;font-size:10px!important;line-height:1.8!important}.duel-primary{color:#fffef5;background:#2b553d;border:1px solid #2b553d;border-radius:7px;justify-content:center;align-items:center;gap:9px;padding:11px 16px;font-size:12px;font-weight:500;line-height:1.5;display:inline-flex}.duel-primary:hover:not(:disabled){background:#1d4430;box-shadow:0 4px 12px #28513d17}.duel-primary:disabled{opacity:.48}.duel-start{justify-content:flex-start;width:100%;margin-top:4px;padding:13px 16px}.duel-start>svg:last-child{margin-left:auto}.duel-lobby-note{color:#849079;align-items:flex-start;gap:8px;margin-top:17px;font-size:10px;line-height:1.8;display:flex}.duel-lobby-note svg{flex-shrink:0;margin-top:2px}.duel-lobby-side{gap:22px;display:grid}.duel-history-card{border:1px solid var(--duel-line);background:#fffef9;border-radius:13px;overflow:hidden}.duel-history-card>header{border-bottom:1px solid #ebeee4;justify-content:space-between;align-items:center;padding:20px;display:flex}.duel-history-card>header>div{align-items:center;gap:9px;display:flex}.duel-history-card h3{font-size:14px;font-weight:600}.duel-history-card>header svg{color:#7e956e}.duel-history-card>header>button{border-radius:5px;place-items:center;width:28px;height:28px;display:grid}.duel-history-card>header>button:hover{background:#edf2e6}.duel-empty{text-align:center;color:#8d9c80;flex-direction:column;align-items:center;gap:13px;padding:34px 20px;display:flex}.duel-empty>span{background:#f2f6eb;border:1px dashed #cfdbbf;border-radius:13px;place-items:center;width:52px;height:52px;margin-bottom:1px;display:grid}.duel-empty>b{color:#5d7350;font-size:13px;font-weight:500}.duel-empty>p{font-size:11px;line-height:1.9}.duel-game-list{max-height:400px;overflow:auto}.duel-game-list>button{text-align:left;border-bottom:1px solid #edf0e7;align-items:center;gap:10px;width:100%;padding:15px 17px;display:flex}.duel-game-list>button:hover{background:#f3f6ed}.duel-game-list>button:last-child{border-bottom:0}.duel-list-icon{color:#6e8c56;background:#eaf1e2;border-radius:8px;flex-shrink:0;place-items:center;width:34px;height:34px;display:grid}.duel-list-icon.finished{color:#a38b4c;background:#f4eedc}.duel-game-list>button>span:nth-child(2){flex:1;min-width:0}.duel-game-list b{flex-wrap:wrap;align-items:center;gap:6px;font-size:12px;font-weight:550;display:flex}.duel-game-list em{color:#789060;border:1px solid #dfe8d3;border-radius:3px;padding:1px 4px;font-size:8px;font-style:normal}.duel-game-list small{color:#89987f;margin-top:4px;font-size:9px;line-height:1.7;display:block}.duel-game-list strong{white-space:nowrap;font-variant-numeric:tabular-nums;font-size:12px}.duel-game-list strong small{margin-left:3px;display:inline}.duel-game-list>button>svg{color:#9bab8d;flex-shrink:0}.duel-explainer{background:#f1f0e5;border:1px solid #e5e3d3;border-radius:12px;padding:24px}.duel-explainer h3{color:#626b4e;margin-top:17px;font-size:22px;font-weight:500}.duel-explainer ul{gap:12px;margin:20px 0;padding:0;list-style:none;display:grid}.duel-explainer li{color:#71805e;gap:8px;font-size:11px;line-height:1.7;display:flex}.duel-explainer li svg{color:#8a9d70;flex-shrink:0;margin-top:1px}.duel-explainer>p{color:#949b81;border-top:1px solid #dddccc;padding-top:16px;font-size:10px;line-height:1.9}.duel-unavailable{background:linen;border-radius:6px;padding:10px 12px;color:#9b6a47!important}.duel-busy{color:#5d7b46;background:#f0f5e8;border:1px solid #d9e5ca;border-radius:8px;margin-bottom:17px;padding:13px 15px}.duel-busy>div{align-items:center;gap:8px;font-size:11px;display:flex}.duel-busy strong{font-weight:500}.duel-busy>div>span{font-variant-numeric:tabular-nums;margin-left:auto;font-size:10px}.duel-busy progress{accent-color:#718d56;width:100%;height:5px;margin:11px 0 7px;display:block}.duel-busy>small{color:#7d916c;font-size:9px;line-height:1.8}.duel-error{color:#945f3c;background:#fff1e6;border:1px solid #edd5c0;border-radius:8px;align-items:flex-start;gap:10px;margin-bottom:16px;padding:13px 15px;font-size:12px;line-height:1.8;display:flex}.duel-error>svg{flex-shrink:0;margin-top:2px}.duel-error button{text-underline-offset:3px;align-items:center;gap:6px;margin-top:8px;padding:0;font-size:11px;text-decoration:underline;display:flex}.duel-game-heading{justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:17px;display:flex}.duel-back{color:#7d8d72;align-items:center;gap:5px;margin-bottom:8px;padding:0;font-size:10px;display:flex}.duel-game-heading h1{align-items:center;gap:12px;font-size:23px;line-height:1.5;display:flex}.duel-state{color:#73915b;letter-spacing:0;background:#e9f0e1;border:1px solid #d7e4c8;border-radius:4px;padding:3px 6px;font-size:9px;font-weight:400}.duel-state.ended{color:#9c8957;background:#f1eedf;border-color:#e5ddc6}.duel-game-tools{color:#839175;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:13px;padding-bottom:3px;font-size:10px;display:flex}.duel-game-tools>span{align-items:center;gap:5px;display:flex}.duel-game-tools button{align-items:center;gap:5px;padding:5px 0;display:flex}.duel-game-tools button:hover,.duel-game-tools button.active{color:#355c3e}.duel-play-layout{grid-template-columns:minmax(0,1fr) 280px;align-items:start;gap:20px;display:grid}.duel-table-column{min-width:0}.duel-table{color:#e8efdc;background:radial-gradient(at 50% 40%,#365e47,#214532 82%);border:5px solid #2c4836;border-radius:14px;padding:16px 18px 12px;position:relative;overflow:hidden;box-shadow:inset 0 0 0 1px #9cae8026,0 4px 14px #253e2512}.duel-table-top{border-bottom:1px solid #ceddc91c;justify-content:space-between;align-items:center;gap:15px;padding:0 1px 13px;display:flex}.duel-table-top>div{color:#c1ceb4;align-items:center;gap:15px;font-size:10px;display:flex}.duel-round-label{letter-spacing:1px;font-weight:500;color:#f0f1d9!important;font-size:15px!important}.duel-round-label>b{font-size:23px;font-weight:550}.duel-table-top span>b{font-variant-numeric:tabular-nums}.duel-wall-count{color:#b9c9ae;font-size:10px}.duel-wall-count b{color:#f0f0d9;margin-left:4px;font-size:21px;font-weight:450}.duel-table-sub{justify-content:space-between;align-items:center;gap:12px;padding:13px 0 15px;display:flex}.duel-dora{align-items:center;gap:4px;display:flex}.duel-dora>span:first-child{color:#b4c5a8;margin-right:6px;font-size:9px}.duel-table-brand{letter-spacing:5px;color:#b6c59b65;white-space:nowrap;font-size:17px}.duel-table-brand>span{letter-spacing:2px;text-align:center;margin-top:2px;font-size:7px;display:block}.duel-river-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}.duel-seat{background:#102e252b;border:1px solid #aac49b27;border-radius:8px;min-width:0;min-height:144px;padding:11px 12px}.duel-seat.is-you{background:#8bb7760c;border-color:#b9d59b7d;box-shadow:0 0 0 1px #c2dba307}.duel-seat-header{align-items:center;gap:7px;margin-bottom:9px;display:flex}.duel-wind{color:#d6e0bd;background:#7a966529;border:1px solid #a1b18b5c;border-radius:5px;flex-shrink:0;place-items:center;width:28px;height:29px;font-size:15px;display:grid}.duel-wind.is-dealer{color:#eddfad;background:#ae995929;border-color:#bdac6e8c}.duel-seat-header>div{flex:1;min-width:0}.duel-seat-header>div>b{color:#e0e8d3;text-overflow:ellipsis;white-space:nowrap;font-size:10px;font-weight:500;display:block;overflow:hidden}.duel-seat-header>div>span{color:#a1b694;align-items:center;gap:5px;margin-top:3px;font-size:8px;display:flex}.duel-seat-header em{color:#f1cfac;background:#c5684b38;border:1px solid #d39b6880;border-radius:3px;padding:0 4px;font-size:8px;font-style:normal}.duel-seat-header>strong{letter-spacing:.4px;color:#eeeecd;font-variant-numeric:tabular-nums;white-space:nowrap;font-size:16px;font-weight:450}.duel-seat-header>strong>small{letter-spacing:0;color:#a5ba95;margin-left:3px;font-size:8px;font-weight:400}.duel-hidden-hand{align-items:center;gap:2px;min-height:12px;margin:0 0 9px;display:flex}.duel-hidden-hand i{opacity:.68;background:linear-gradient(#a8ba8f,#7d9869);border-bottom:2px solid #506a46;border-radius:2px;width:7px;height:12px}.duel-hidden-hand>span{color:#a1b38f;margin-left:5px;font-size:7px}.duel-river{grid-template-columns:repeat(6,max-content);align-content:start;align-items:center;gap:4px 3px;min-height:32px;display:grid}.duel-river-item{justify-content:center;align-items:center;display:inline-flex;position:relative}.duel-river-item.is-riichi:after{content:"";background:#e7b17d;border-radius:2px;height:2px;position:absolute;bottom:-2px;left:2px;right:2px}.duel-river-item.is-called .duel-tile{opacity:.38;box-shadow:none}.duel-river-empty{color:#a4b69a78;grid-column:1/-1;padding:9px 0;font-size:9px}.duel-melds{border-top:1px solid #cbd6b817;flex-wrap:wrap;gap:7px;margin-top:8px;padding-top:8px;display:flex}.duel-melds>div{align-items:center;gap:1px;display:flex}.duel-melds>div>span:last-child:not(.duel-tile){color:#aac099;margin-left:4px;font-size:7px}.duel-melds .duel-tile-small{width:18px;height:25px}.duel-melds .duel-tile-small>b{font-size:10px}.duel-melds .duel-tile-small>em{font-size:7px}.duel-melds .duel-honor{font-size:15px!important}.duel-table-legend{color:#9eb58c;align-items:center;gap:12px;padding-top:12px;font-size:8px;display:flex}.duel-table-legend>span{align-items:center;gap:4px;display:flex}.duel-table-legend>span:last-child{margin-left:auto}.duel-table-legend i{background:#e7b17d;width:9px;height:2px;display:inline-block}.duel-tile{color:#234738;vertical-align:middle;background:linear-gradient(135deg,#fffef3,#f2f0dc);border:1px solid #dce0c9;border-radius:4px;flex-direction:column;flex-shrink:0;justify-content:center;align-items:center;width:34px;height:47px;padding:2px;line-height:1;display:inline-flex;position:relative;box-shadow:0 3px #bcc5a9,0 4px 5px #1430211f}.duel-tile>b{font-family:KaiTi,STKaiti,Microsoft YaHei,serif;font-size:19px;font-weight:650;line-height:1}.duel-tile>em{color:#9b423b;margin-top:2px;font-family:KaiTi,STKaiti,Microsoft YaHei,serif;font-size:13px;font-style:normal;font-weight:600;line-height:1}.duel-tile>b.duel-honor{font-size:26px;font-weight:550}.duel-tile .is-red{color:#ba403a}.duel-tile .is-green{color:#2b7450}.duel-pips{flex-wrap:wrap;place-content:center;gap:3px;width:23px;display:flex}.duel-pips i{background:#365650;border-radius:50%;width:5px;height:5px;box-shadow:inset 0 0 0 1px #183a3840}.duel-pips.pips-1 i{background:#b45147;border:4px solid #476b5e;width:14px;height:14px;box-shadow:0 0 0 1px #dfddbf}.duel-pips.pips-2,.duel-pips.pips-3{gap:5px;width:7px}.duel-pips.pips-3{transform:rotate(-25deg)}.duel-pips.pips-4{gap:6px;width:19px}.duel-pips.pips-5{gap:4px;width:23px}.duel-pips.pips-5 i:nth-child(3){background:#b25245;position:absolute;top:calc(50% - 2.5px);left:calc(50% - 2.5px);box-shadow:0 0 0 3px #f8f5e6}.duel-pips.pips-5 i:nth-child(4){margin-left:7px}.duel-pips.pips-6{gap:3px 6px;width:18px}.duel-pips.is-red i{background:#b5443d}.duel-sticks{flex-wrap:wrap;place-content:center;gap:3px;width:23px;display:flex}.duel-sticks i{background:linear-gradient(90deg,#3e7751,#79a363,#3e7751);border-radius:1px;width:4px;height:8px;box-shadow:inset 0 2px #bdd49d88,inset 0 -2px #153d2b55}.duel-sticks.sticks-2,.duel-sticks.sticks-3{gap:3px;width:6px}.duel-sticks.sticks-4{gap:5px;width:15px}.duel-sticks.sticks-5{gap:4px;width:23px}.duel-sticks.sticks-6{gap:4px 7px;width:17px}.duel-sticks b{color:#397454;font-family:KaiTi,serif;font-size:24px}.duel-sticks.is-red i{background:#ad5147}.duel-tile-small{border-radius:3px;width:23px;height:32px;padding:2px;box-shadow:0 2px #b2bba1,0 3px 3px #11261925}.duel-tile-small>b{font-size:13px}.duel-tile-small>em{margin-top:1px;font-size:9px}.duel-tile-small>b.duel-honor{font-size:19px}.duel-tile-small .duel-pips{gap:2px;width:17px}.duel-tile-small .duel-pips i{width:4px;height:4px}.duel-tile-small .pips-1 i{border-width:3px;width:11px;height:11px}.duel-tile-small .pips-2,.duel-tile-small .pips-3{gap:3px;width:5px}.duel-tile-small .pips-4{gap:4px;width:13px}.duel-tile-small .pips-5{gap:3px}.duel-tile-small .pips-5 i:nth-child(3){top:calc(50% - 2px);left:calc(50% - 2px);box-shadow:0 0 0 2px #f8f5e6}.duel-tile-small .pips-5 i:nth-child(4){margin-left:4px}.duel-tile-small .pips-6{gap:2px 5px;width:13px}.duel-tile-small .duel-sticks{gap:2px;width:17px}.duel-tile-small .duel-sticks i{width:3px;height:6px}.duel-tile-small .sticks-2,.duel-tile-small .sticks-3{gap:2px;width:4px}.duel-tile-small .sticks-4{gap:3px;width:12px}.duel-tile-small .sticks-6{gap:2px 6px;width:12px}.duel-tile-small .duel-sticks b{font-size:18px}.duel-tile-back{color:#f3f1dc;background:#689064;border-radius:2px;place-items:center;font-size:10px;display:grid;position:absolute;inset:2px}.duel-hand-panel{border:1px solid var(--duel-line);background:#fffef9;border-radius:12px;margin-top:13px;padding:18px 18px 16px}.duel-hand-panel>header{justify-content:space-between;align-items:center;gap:10px;margin-bottom:15px;display:flex}.duel-hand-panel>header>div{align-items:center;gap:7px;display:flex}.duel-hand-panel>header b{font-size:12px;font-weight:600}.duel-hand-panel>header>span{color:#8a987e;text-align:right;font-size:10px}.duel-your-wind{color:#6b8554;background:#edf2e4;border:1px solid #d6dfca;border-radius:5px;place-items:center;width:24px;height:24px;font-size:13px;display:grid}.duel-riichi-tag{color:#a27149;background:#f5ebd9;border:1px solid #e5cfaa;border-radius:4px;padding:2px 5px;font-size:8px}.duel-hand{justify-content:center;gap:3px;min-height:60px;margin-bottom:15px;padding-top:6px;display:flex}.duel-hand .duel-tile{width:calc(7.14286% - 4.07143px);max-width:38px;height:51px}.duel-hand .duel-tile:disabled{opacity:1;cursor:default}.duel-hand .duel-tile:disabled:not(.is-selected){filter:saturate(.65);background:linear-gradient(135deg,#f4f3e8,#e9e9d9)}.duel-hand .duel-tile:not(:disabled):hover{border-color:#92ac70;transform:translateY(-5px)}.duel-hand .duel-tile.is-selected{background:#f7fbe9;border-color:#6d8d4d;transform:translateY(-8px);box-shadow:0 3px #7f9d5d,0 6px 9px #4664272a}.duel-hand .duel-tile.is-selected:after{content:"";background:#6a874e;border-radius:50%;width:5px;height:5px;position:absolute;bottom:-12px}.duel-drawn-tile{margin-left:9px}.duel-riichi-available{box-shadow:0 3px #b8a472,0 4px 5px #1430211f;border-color:#b49c5d!important}.duel-action-area{justify-content:space-between;align-items:center;gap:10px;min-height:40px;display:flex}.duel-special-actions{flex-wrap:wrap;align-items:center;gap:7px;display:flex}.duel-action-btn{color:#667e53;background:#f6f7ef;border:1px solid #dce3d2;border-radius:6px;flex-wrap:wrap;justify-content:center;align-items:center;gap:6px;padding:9px 11px;font-size:11px;line-height:1.4;display:flex}.duel-action-btn:hover:not(:disabled),.duel-action-btn.active{background:#e8f0db;border-color:#8ea572}.duel-action-btn small{color:#8b9b77;font-size:9px;font-weight:400;display:block}.duel-action-btn.riichi{color:#9a8047;background:#f7f0df;border-color:#e3d6b5}.duel-action-btn.riichi.active{background:#eee0bb;border-color:#b5a16e}.duel-action-btn.win{color:#fff7e9;background:#ac5a3f;border-color:#ac5a3f;padding-inline:19px;font-size:13px}.duel-discard{white-space:nowrap;min-width:126px;margin-left:auto}.duel-action-confirm{color:#7b8d67;border-top:1px solid #e7ebdd;flex-wrap:wrap;align-items:center;gap:10px;margin-top:15px;padding-top:14px;font-size:11px;display:flex}.duel-action-confirm>div{gap:2px;display:flex}.duel-action-confirm .duel-primary{padding:8px 13px;font-size:11px}.duel-subtle-btn{color:#768b62;background:#f6f8f0;border:1px solid #dce4d2;border-radius:6px;padding:9px 13px;font-size:11px}.duel-hand-panel .duel-busy{margin:15px 0 0}.duel-next{width:100%;margin-top:15px}.duel-ended-note{color:#849373;align-items:center;gap:8px;padding-top:5px;font-size:11px;line-height:1.9;display:flex}.duel-inspector{gap:15px;min-width:0;display:grid}.duel-turn-card,.duel-result-panel,.duel-round-history,.duel-ranking{border:1px solid var(--duel-line);background:#fffef9;border-radius:12px;min-width:0;padding:19px}.duel-turn-card{background:#f1f3e7;border-color:#e2e7d6}.duel-turn-card h2{color:#526943;margin:14px 0 9px;font-size:18px;font-weight:500;line-height:1.6}.duel-turn-card>p{color:#849273;font-size:11px;line-height:1.9}.duel-your-score{border-top:1px solid #dde5cf;justify-content:space-between;align-items:center;gap:10px;margin-top:20px;padding-top:17px;display:flex}.duel-your-score>span{color:#7f9170;font-size:10px}.duel-your-score>strong{letter-spacing:.5px;color:#50703d;font-variant-numeric:tabular-nums;font-size:24px;font-weight:500}.duel-autosave{color:#95a585;align-items:center;gap:5px;margin-top:16px;font-size:8px;line-height:1.8;display:flex}.duel-section-title{color:#708958;align-items:center;gap:7px;margin-bottom:13px;display:flex}.duel-section-title h2{color:#48623b;font-size:13px;font-weight:550}.duel-section-title>span{color:#9caa8e;margin-left:auto;font-size:9px}.duel-round-result{min-width:0}.duel-result-title{color:#7b8e68;justify-content:space-between;align-items:center;gap:8px;font-size:10px;display:flex}.duel-result-title strong{color:#9a7746;background:#f7f0e0;border:1px solid #e5d8ba;border-radius:4px;padding:3px 7px;font-weight:550}.duel-round-result>p{color:#93a080;margin:8px 0 12px;font-size:10px;line-height:1.8}.duel-winner{border-top:1px solid #e9eddf;padding:12px 0}.duel-winner>div:first-child{flex-direction:column;gap:7px;display:flex}.duel-winner b{color:#627f4b;font-size:11px;font-weight:550}.duel-winner b>small{color:#9aa88a;font-size:9px;font-weight:400}.duel-winner strong{color:#9b7843;align-items:center;gap:8px;font-size:12px;font-weight:500;display:flex}.duel-winner em{margin-left:auto;font-size:14px;font-style:normal}.duel-yaku{flex-wrap:wrap;gap:5px;margin-top:10px;display:flex}.duel-yaku>span{color:#7c8c6a;background:#f5f6ec;border:1px solid #e6e8d7;border-radius:4px;align-items:center;gap:4px;padding:3px 5px;font-size:9px;display:flex}.duel-yaku b{color:#a3ad94;font-size:8px;font-weight:400}.duel-winner-hand{flex-wrap:wrap;gap:2px;margin-top:12px;display:flex}.duel-winner-hand .duel-tile{width:18px;height:26px}.duel-winner-hand .duel-tile>b{font-size:10px}.duel-winner-hand .duel-tile>em{font-size:8px}.duel-winner-hand .duel-tile .duel-honor{font-size:16px}.duel-winning-tile{border-color:#bdac79;margin-left:4px}.duel-deltas{border-top:1px solid #e6eadc;gap:0;margin-top:8px;padding-top:7px;display:grid}.duel-deltas>div{align-items:center;gap:8px;padding:6px 0;font-size:10px;display:flex}.duel-deltas span{color:#819571;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.duel-deltas b{font-variant-numeric:tabular-nums;color:#9ca78c;text-align:right;min-width:47px;font-weight:550}.duel-deltas small{color:#a7b097;text-align:right;font-variant-numeric:tabular-nums;min-width:48px;font-size:9px}.duel-page .positive{color:#5e8145}.duel-page .negative{color:#b07155}.duel-history-empty{color:#98a68a;font-size:10px;line-height:1.9}.duel-round-history{padding-bottom:12px}.duel-round-history details{border-top:1px solid #eaeddf}.duel-round-history summary{cursor:pointer;color:#6e865b;align-items:center;gap:8px;padding:11px 0;font-size:11px;list-style:none;display:flex}.duel-round-history summary::-webkit-details-marker{display:none}.duel-round-history summary>span{flex:1}.duel-round-history summary small{color:#9aa98b;margin-left:3px;font-size:8px}.duel-round-history summary b{font-variant-numeric:tabular-nums;font-size:11px;font-weight:500}.duel-round-history summary>svg{color:#9fae8e}.duel-round-history details[open]>summary>svg{transform:rotate(180deg)}.duel-round-history details .duel-round-result{padding-bottom:13px}.duel-ranking>p{color:#8d9c7e;margin-bottom:16px;font-size:11px;line-height:1.9}.duel-rank-row{border-top:1px solid #e8ecdd;align-items:center;gap:10px;padding:13px 4px;display:flex}.duel-rank-row>span{text-align:center;color:#9aa98b;flex-shrink:0;width:23px;font-family:Georgia,serif;font-size:16px;font-style:italic}.duel-rank-row:first-child>span{color:#b49a58}.duel-rank-row>b{color:#778e63;flex:1;font-size:11px;font-weight:500}.duel-rank-row small{color:#9aaa8a;margin-top:4px;font-size:9px;font-weight:400;display:block}.duel-rank-row>strong{color:#667e53;font-variant-numeric:tabular-nums;font-size:15px;font-weight:500}.duel-rank-row.is-you{background:#eef4e5;border:1px solid #dce7cd;border-radius:6px;padding-inline:7px}.duel-download{color:#7a915f;background:#f5f8ed;border:1px solid #dae4cd;border-radius:6px;justify-content:center;align-items:center;gap:7px;margin-top:14px;padding:12px;font-size:11px;text-decoration:none;display:flex}.duel-ranking .duel-next{padding-inline:10px;font-size:11px}.duel-rule-panel{background:#f2f6ea;border:1px solid #dce5d0;border-radius:9px;margin-bottom:17px;padding:16px 19px}.duel-rule-panel>div{color:#6b8553;align-items:center;gap:8px;font-size:12px;display:flex}.duel-rule-panel>div>button{color:#8ea079;place-items:center;margin-left:auto;display:grid}.duel-rule-panel ul{color:#80926d;columns:2;column-gap:30px;margin:12px 0;padding-left:20px;font-size:10px;line-height:1.9}.duel-rule-panel li{break-inside:avoid;margin-bottom:4px}.duel-rule-panel>p{color:#99a88a;font-size:10px}.duel-dialog-backdrop{z-index:110;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#17382a66;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.duel-dialog{background:#fffef7;border:1px solid #e7eddb;border-radius:15px;width:400px;max-width:100%;padding:29px;position:relative;box-shadow:0 20px 80px #12372233}.duel-dialog-close{color:#91a081;place-items:center;display:grid;position:absolute;top:15px;right:15px}.duel-dialog-icon{color:#ad9259;background:#f1eedb;border:1px solid #e4dfc4;border-radius:11px;place-items:center;width:44px;height:44px;margin-bottom:18px;display:grid}.duel-dialog h2{color:#506d40;font-size:21px;font-weight:550}.duel-dialog p{color:#8e9d7d;margin-top:13px;font-size:12px;line-height:2}.duel-dialog>div:last-child{justify-content:flex-end;gap:12px;margin-top:24px;display:flex}.duel-home-entry{text-align:left;background:#f1f5e9;border:1px solid #dce5d2;border-radius:11px;align-items:center;gap:15px;width:100%;margin:20px 0;padding:18px 22px;display:flex}.duel-home-entry>span:first-child{color:#65814f;background:#e0eacf;border-radius:11px;flex-shrink:0;place-items:center;width:42px;height:42px;display:grid}.duel-home-entry>span:nth-child(2){flex:1}.duel-home-entry b{color:#506d3f;font-size:14px;font-weight:550;display:block}.duel-home-entry small{color:#8a9b77;margin-top:6px;font-size:10px;line-height:1.8;display:block}.duel-home-entry>span:last-child{color:#6f8b55;white-space:nowrap;align-items:center;gap:7px;font-size:11px;display:flex}.duel-home-entry:hover{background:#eaf2df;border-color:#c1d2af}.content.duel-content{padding-top:23px}.duel-content>.footer{padding-top:22px}@media (width>=1500px){.duel-play-layout{grid-template-columns:minmax(0,1fr) 310px}.duel-seat{min-height:156px}.duel-river .duel-tile-small{width:26px;height:36px}.duel-river{gap:4px}.duel-hand .duel-tile{max-width:41px;height:55px}}@media (width<=1200px){.duel-play-layout{grid-template-columns:minmax(0,1fr) 245px;gap:14px}.duel-table{padding:13px 12px 10px}.duel-river-grid{gap:9px}.duel-seat{min-height:137px;padding:9px}.duel-seat-header{gap:5px}.duel-seat-header>strong{font-size:14px}.duel-wind{width:25px;height:27px;font-size:14px}.duel-river .duel-tile-small{width:21px;height:30px}.duel-river{gap:4px 2px}.duel-turn-card,.duel-result-panel,.duel-round-history,.duel-ranking{padding:16px}.duel-hand-panel{padding:15px 12px}.duel-hand{gap:2px}.duel-hand .duel-tile{width:calc(7.14286% - 2.85714px);height:44px}.duel-hand .duel-tile>b{font-size:16px}.duel-hand .duel-tile>em{font-size:11px}.duel-hand .duel-honor{font-size:22px!important}.duel-hand .duel-pips{gap:2px;width:18px}.duel-hand .duel-pips i{width:4px;height:4px}.duel-hand .pips-1 i{border-width:3px;width:12px;height:12px}.duel-hand .pips-2,.duel-hand .pips-3{gap:4px;width:5px}.duel-hand .pips-4{gap:5px;width:14px}.duel-hand .pips-6{gap:3px 5px;width:14px}.duel-hand .duel-sticks{gap:2px;width:18px}.duel-hand .duel-sticks i{width:3px;height:7px}.duel-hand .sticks-2,.duel-hand .sticks-3{width:4px}.duel-hand .sticks-4{gap:4px;width:13px}.duel-hand .sticks-6{gap:3px 6px;width:13px}.duel-game-tools>span{display:none}.duel-lobby-grid{grid-template-columns:minmax(340px,1.2fr) minmax(240px,1fr);gap:18px}.duel-create-copy{padding:24px}.duel-game-list>button{gap:7px;padding:13px 12px}.duel-game-list>button>svg{display:none}.duel-game-list strong{font-size:11px}.duel-game-list small{font-size:8px}}@media (width<=1050px){.duel-play-layout{grid-template-columns:minmax(0,1fr)}.duel-inspector{grid-template-columns:1fr 1fr;gap:13px}.duel-turn-card{grid-row:auto}.duel-table{padding:15px 18px 12px}.duel-river .duel-tile-small{width:24px;height:33px}.duel-seat{min-height:145px;padding:11px 13px}.duel-hand .duel-tile{max-width:36px;height:48px}.duel-game-tools>span{display:flex}.duel-lobby-grid{grid-template-columns:minmax(0,1fr)}.duel-lobby-side{grid-template-columns:1fr 1fr;align-items:start;gap:18px}.duel-create{grid-template-columns:190px 1fr;display:grid}.duel-lobby-art{height:100%;min-height:450px}.duel-lobby-tiles{gap:0;transform:rotate(-8deg)}.duel-lobby-tiles .duel-tile{width:49px;height:70px}.duel-lobby-tiles .duel-tile:first-child{transform:rotate(-16deg)translate(14px,12px)}.duel-lobby-tiles .duel-tile:last-child{transform:rotate(14deg)translate(-10px,8px)}.duel-lobby-tiles .duel-tile:nth-child(2){z-index:1;transform:translateY(-10px)}.duel-lobby-orbit{top:55px}.duel-lobby-art>span{letter-spacing:2px;font-size:7px;bottom:30px}.duel-explainer{padding:22px}.duel-explainer h3{font-size:21px}.duel-hand-panel>header>span{font-size:10px}.duel-rule-panel ul{columns:1}}@media (width<=720px){.duel-game-tools>span{display:none}.duel-page-heading h1{font-size:24px}.duel-free{padding:6px 8px;font-size:9px}.duel-page-heading{align-items:flex-start;gap:10px}.duel-page-heading p{font-size:11px}.duel-create{display:block}.duel-lobby-art{height:145px;min-height:0}.duel-lobby-tiles{gap:12px;transform:none}.duel-lobby-tiles .duel-tile:first-child{transform:rotate(-13deg)translateY(8px)}.duel-lobby-tiles .duel-tile:last-child{transform:rotate(13deg)translateY(8px)}.duel-lobby-tiles .duel-tile:nth-child(2){transform:none}.duel-lobby-orbit{top:-90px}.duel-lobby-art>span{bottom:12px}.duel-lobby-side{grid-template-columns:1fr}.duel-game-heading h1{font-size:21px}.duel-table{padding:12px 12px 10px}.duel-seat{min-height:140px;padding:9px}.duel-inspector{grid-template-columns:1fr 1fr}.duel-turn-card h2{font-size:16px}.duel-turn-card>p{font-size:10px}.duel-game-tools{gap:10px;font-size:9px}.duel-hand .duel-tile{max-width:34px}.duel-action-area{align-items:flex-start}.duel-action-btn{padding:9px;font-size:10px}.duel-discard{min-width:111px;padding:10px 12px;font-size:11px}.duel-home-entry{gap:11px;padding:15px}.duel-home-entry b{font-size:12px}.duel-home-entry small{font-size:9px}.duel-home-entry>span:last-child{font-size:10px}.duel-home-entry>span:first-child{width:35px;height:35px}}@media (width<=640px){.content.duel-content{padding:17px 12px 0}.duel-page-heading{margin-bottom:19px;padding:2px 5px 0}.duel-page-heading h1{font-size:22px}.duel-page-heading p{max-width:250px;font-size:10px}.duel-page-heading .eyebrow{font-size:8px}.duel-free{gap:4px;margin-top:20px;padding:5px 6px;font-size:8px}.duel-free svg{width:12px}.duel-create-copy{padding:23px}.duel-modes>button{padding:13px}.duel-create-copy h2{font-size:22px}.duel-lobby-grid{gap:17px}.duel-explainer h3{font-size:22px}.duel-game-heading{gap:8px;margin-bottom:13px;padding:0 3px}.duel-game-tools{gap:10px;font-size:9px}.duel-game-tools button{gap:4px}.duel-game-tools svg{width:13px}.duel-game-heading h1{gap:8px;font-size:20px}.duel-state{padding:2px 5px;font-size:8px}.duel-back{margin-bottom:5px;font-size:9px}.duel-table{border-width:4px;border-radius:11px;padding:10px 9px 9px}.duel-table-top{padding-bottom:10px}.duel-table-top>div{gap:11px;font-size:9px}.duel-round-label{font-size:12px!important}.duel-round-label>b{font-size:20px}.duel-wall-count{font-size:9px}.duel-wall-count b{font-size:19px}.duel-table-sub{padding:10px 0 12px}.duel-dora>span:first-child{margin-right:3px;font-size:8px}.duel-dora .duel-tile-small{width:20px;height:28px}.duel-table-brand{letter-spacing:3px;font-size:14px}.duel-table-brand>span{letter-spacing:1.4px;font-size:6px}.duel-river-grid{gap:8px}.duel-seat{min-height:130px;padding:8px 7px}.duel-seat-header{gap:5px;margin-bottom:8px}.duel-wind{width:22px;height:24px;font-size:12px}.duel-seat-header>div>b{font-size:9px}.duel-seat-header>div>span{font-size:7px}.duel-seat-header>strong{letter-spacing:0;font-size:13px}.duel-seat-header>strong>small{display:none}.duel-hidden-hand{gap:1px;margin-bottom:8px}.duel-hidden-hand i{width:6px;height:10px}.duel-hidden-hand>span{margin-left:3px;font-size:6px}.duel-river{gap:4px 2px}.duel-river .duel-tile-small{width:21px;height:29px}.duel-river .duel-tile-small>b{font-size:12px}.duel-river .duel-tile-small>em{font-size:8px}.duel-river .duel-honor{font-size:17px!important}.duel-river .duel-tile-small .duel-pips{gap:2px;width:15px}.duel-river .duel-tile-small .duel-pips i{width:3px;height:3px}.duel-river .duel-tile-small .pips-1 i{width:10px;height:10px}.duel-river .duel-tile-small .pips-2,.duel-river .duel-tile-small .pips-3{gap:3px;width:4px}.duel-river .duel-tile-small .pips-4{gap:4px;width:11px}.duel-river .duel-tile-small .pips-6{gap:2px 5px;width:11px}.duel-river .duel-tile-small .duel-sticks{gap:2px;width:15px}.duel-river .duel-tile-small .duel-sticks i{width:3px;height:5px}.duel-river .duel-tile-small .sticks-2,.duel-river .duel-tile-small .sticks-3{width:4px}.duel-river .duel-tile-small .sticks-4{gap:3px;width:11px}.duel-river .duel-tile-small .sticks-6{gap:2px 5px;width:11px}.duel-table-legend{gap:8px;padding-top:10px;font-size:7px}.duel-table-legend>span:nth-child(2){display:none}.duel-hand-panel{border-radius:10px;margin-top:10px;padding:13px 9px}.duel-hand-panel>header{gap:5px;margin-bottom:12px}.duel-hand-panel>header b{font-size:11px}.duel-hand-panel>header>span{font-size:8px}.duel-hand-panel>header>div{gap:5px}.duel-your-wind{width:21px;height:22px;font-size:12px}.duel-hand{gap:2px;min-height:52px;margin-bottom:10px}.duel-hand .duel-tile{border-radius:3px;width:calc(7.14286% - 2.64286px);max-width:30px;height:40px;padding:1px}.duel-hand .duel-tile>b{font-size:13px}.duel-hand .duel-tile>em{font-size:9px}.duel-hand .duel-honor{font-size:19px!important}.duel-hand .duel-pips{gap:2px;width:15px}.duel-hand .duel-pips i{width:3px;height:3px}.duel-hand .pips-1 i{border-width:3px;width:10px;height:10px}.duel-hand .pips-2,.duel-hand .pips-3{gap:3px;width:4px}.duel-hand .pips-4{gap:4px;width:11px}.duel-hand .pips-5 i:nth-child(3){top:calc(50% - 1.5px);left:calc(50% - 1.5px);box-shadow:0 0 0 2px #f8f5e6}.duel-hand .pips-5 i:nth-child(4){margin-left:5px}.duel-hand .pips-6{gap:2px 5px;width:11px}.duel-hand .duel-sticks{gap:2px;width:15px}.duel-hand .duel-sticks i{width:3px;height:6px}.duel-hand .sticks-2,.duel-hand .sticks-3{width:4px}.duel-hand .sticks-4{gap:3px;width:11px}.duel-hand .sticks-6{gap:2px 5px;width:11px}.duel-hand .duel-sticks b{font-size:19px}.duel-drawn-tile{margin-left:5px}.duel-action-area{gap:8px}.duel-action-btn{padding:8px 9px;font-size:10px}.duel-action-btn.win{padding-inline:14px;font-size:11px}.duel-discard{min-width:105px;padding:9px 10px;font-size:10px}.duel-special-actions{gap:5px}.duel-action-btn small{font-size:8px}.duel-inspector{grid-template-columns:1fr;gap:12px}.duel-turn-card{grid-template-columns:1fr auto;gap:0 14px;padding:15px 17px;display:grid}.duel-turn-card>.duel-kicker{grid-area:1/1;font-size:8px}.duel-turn-card h2{grid-area:2/1;margin:6px 0;font-size:16px}.duel-turn-card>p{grid-area:3/1;font-size:10px}.duel-turn-card .duel-your-score{border:0;flex-direction:column;grid-area:1/2/4;justify-content:center;gap:6px;margin:0;padding:0;display:flex}.duel-turn-card .duel-your-score>span{font-size:9px}.duel-turn-card .duel-your-score>strong{font-size:23px}.duel-turn-card .duel-autosave{grid-column:1/-1;margin-top:10px;font-size:8px}.duel-result-panel,.duel-round-history,.duel-ranking{padding:17px}.duel-winner>div:first-child{flex-direction:row;justify-content:space-between;align-items:center}.duel-winner strong,.duel-winner b{font-size:11px}.duel-winner b>small{margin-top:4px;font-size:8px;display:block}.duel-winner em{font-size:13px}.duel-rule-panel{padding:14px}.duel-rule-panel ul{font-size:10px}.duel-dialog{padding:25px}.duel-home-entry>span:last-child{font-size:0}.duel-home-entry>span:last-child>svg{width:17px}.duel-home-entry b{font-size:13px}}@media (width<=374px){.duel-seat{padding:7px 5px}.duel-river .duel-tile-small{width:18px;height:26px}.duel-river .duel-tile-small>b{font-size:10px}.duel-river .duel-tile-small>em{font-size:8px}.duel-river .duel-honor{font-size:15px!important}.duel-seat-header>strong{font-size:12px}.duel-wind{width:19px;height:22px;font-size:11px}.duel-river-grid{gap:6px}.duel-game-tools{gap:7px}.duel-game-tools button{font-size:8px}.duel-hand .duel-tile{height:37px}.duel-seat-header>div>b{font-size:8px}.duel-hidden-hand>span{display:none}.duel-page-heading h1{font-size:20px}.duel-free{font-size:7px}.duel-create-copy{padding:20px}}.duel-bird{color:#3e7951;width:22px;height:33px;display:block}.duel-tile-small .duel-bird{width:16px;height:23px}.duel-hand .duel-bird{max-width:100%;height:30px}.duel-pips.pips-5{grid-template-rows:repeat(3,max-content);grid-template-columns:repeat(3,max-content);place-content:center;gap:3px!important;display:grid!important}.duel-pips.pips-5 i:first-child{grid-area:1/1}.duel-pips.pips-5 i:nth-child(2){grid-area:1/3}.duel-pips.pips-5 i:nth-child(3){grid-area:2/2;box-shadow:none!important;margin:0!important;position:static!important}.duel-pips.pips-5 i:nth-child(4){grid-area:3/1;margin:0!important}.duel-pips.pips-5 i:nth-child(5){grid-area:3/3}.duel-tile-small .duel-pips.pips-5{gap:2px!important}.duel-winner-hand .duel-tile-small .duel-bird{width:13px;height:19px}@media (width<=640px){.duel-hand .duel-bird{width:16px;height:26px}.duel-hand .duel-pips.pips-5{gap:2px!important}}.duel-before-rules{background:#f7f8f0;border:1px solid #e4e8d8;border-radius:7px;margin:13px 0 16px;padding:0 11px}.duel-before-rules>summary{color:#7c9069;cursor:pointer;align-items:center;gap:6px;padding:10px 0;font-size:10px;line-height:1.7;list-style:none;display:flex}.duel-before-rules>summary::-webkit-details-marker{display:none}.duel-before-rules>summary>span{flex:1}.duel-before-rules[open]>summary>svg:last-child{transform:rotate(180deg)}.duel-before-rules ul{color:#879779;margin:0 0 12px;padding-left:17px;font-size:10px;line-height:1.9}.duel-before-rules li{margin-top:5px}.duel-winner em>small{text-align:right;color:#a99b7f;margin-bottom:4px;font-size:8px;font-style:normal;display:block}.duel-payment-note{color:#a5ad97;text-align:right;margin-top:7px;font-size:8px;line-height:1.8}.duel-winner strong{align-items:flex-end}.duel-winner em{white-space:nowrap}.duel-dialog .duel-busy{margin-top:15px}.duel-dialog .duel-error{margin-top:14px}.duel-page{scroll-margin-top:15px}:root{color:#243b32;font-synthesis:none;--green:#285440;--green-dark:#1e4334;--muted:#8b958e;--line:#e7ebe4;--cream:#f4f2e9;background:#f7f8f5;font-family:Noto Sans SC,Microsoft YaHei,PingFang SC,sans-serif;font-weight:400}*{box-sizing:border-box}body{margin:0}button,input,textarea,select{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer;color:inherit;background:0 0;border:0}button:disabled{opacity:.45;cursor:not-allowed}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline-offset:3px;outline:3px solid #b9cba4}a{color:inherit}p,h1,h2,h3{margin:0}button,a{transition:background .16s,color .16s,box-shadow .16s,transform .16s}button svg{flex-shrink:0}input,textarea,select{color:inherit}.app-shell{min-height:100vh}.sidebar{border-right:1px solid var(--line);z-index:20;background:#fffefb;flex-direction:column;width:218px;padding:35px 20px 0;display:flex;position:fixed;inset:0 auto 0 0}.brand{text-align:left;align-items:center;gap:12px;padding:0 13px;display:flex}.brand-icon{background:var(--green);border-radius:11px;place-items:center;width:43px;height:49px;display:grid;transform:rotate(-5deg);box-shadow:inset 0 -4px #183b2d}.brand-icon span{text-align:center;width:28px;height:35px;color:var(--green);background:#fbfaf4;border-radius:4px;font-size:24px;font-weight:650;line-height:34px}.brand strong{letter-spacing:2px;font-size:28px;line-height:1.1;display:block}.brand-dot{color:#86a377}.brand small{letter-spacing:3.8px;color:#7a877c;margin-top:4px;font-size:9px;display:block}.workspace-label{letter-spacing:1px;color:#8c978f;justify-content:space-between;align-items:center;margin:34px 13px 17px;font-size:10px;display:flex}.workspace-label span{color:#81947b;border:1px solid #dce6d9;border-radius:5px;padding:0 6px;font-size:12px}.sidebar nav{gap:7px;display:grid}.nav-item{color:#78867b;border-radius:9px;align-items:center;gap:12px;width:100%;padding:13px 15px;font-size:13px;font-weight:500;display:flex;position:relative}.nav-item:hover{background:#f5f7f1}.nav-item.active{color:var(--green);background:#eaf0e5;font-weight:650}.nav-item.active i{background:#6c8a60;border-radius:50%;width:6px;height:6px;margin-left:auto}.nav-item em{background:#eef1e9;border-radius:5px;margin-left:auto;padding:2px 6px;font-size:10px;font-style:normal}.sidebar-note{margin:55px 14px 20px}.tiny-label{letter-spacing:1.5px;color:#a0aa9d;font-size:8px}.sidebar-note p{color:#84917e;margin-top:12px;font-size:13px;line-height:2}.note-line{background:#bdcbb1;width:28px;height:2px;margin-top:18px;display:block}.sidebar-bottom{margin-top:auto;padding-bottom:21px}.profile{border-top:1px solid var(--line);align-items:center;gap:9px;margin-top:18px;padding-top:21px;display:flex}.avatar{color:#6a7757;background:#eae8d7;border:2px solid #fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:35px;height:35px;font-size:16px;font-weight:600;display:flex}.profile b{font-size:11px;font-weight:550;display:block}.profile small{color:#9aa297;margin-top:3px;font-size:8px;display:block}.online-dot{background:#789966;border-radius:50%;flex-shrink:0;width:6px;height:6px;margin-left:auto;display:inline-block}.main{margin-left:218px}.topbar{border-bottom:1px solid var(--line);background:#fffefbb3;justify-content:space-between;align-items:center;gap:16px;height:76px;padding:0 40px;display:flex}.breadcrumb{color:#99a195;align-items:center;gap:11px;font-size:11px;display:flex}.breadcrumb strong{color:#4a5c50;font-weight:500}.topbar-actions{align-items:center;gap:20px;display:flex}.version-badge{color:#87917e;align-items:center;gap:6px;font-size:10px;display:flex}.version-badge span{background:#849975;border-radius:50%;width:5px;height:5px}.icon-button{color:#7f8e80;border-radius:7px;justify-content:center;align-items:center;width:33px;height:33px;display:inline-flex}.icon-button:hover{color:#31543a;background:#ecf0e7}.small.avatar{width:31px;height:31px;font-size:13px}.content{max-width:1500px;margin:auto;padding:37px 40px 0}.page-heading{justify-content:space-between;align-items:center;gap:20px;margin-bottom:28px;display:flex}.eyebrow{letter-spacing:2.3px;color:#91a087;margin-bottom:10px;font-size:9px;font-weight:550}h1{letter-spacing:.6px;font-size:26px;font-weight:650}.page-heading p{color:#919b8d;margin-top:9px;font-size:12px}.date-label{color:#8e9988;align-items:center;gap:7px;font-size:11px;display:flex}.hero{background:#edf1e4;border:1px solid #e4e9da;border-radius:15px;min-height:325px;display:flex;position:relative;overflow:hidden}.hero-copy{z-index:2;flex:1;padding:32px 40px;position:relative}.pill{color:#6c835a;background:#f4f6ed;border:1px solid #d5dfcb;border-radius:20px;align-items:center;gap:6px;padding:5px 11px;font-size:10px;display:inline-flex}.hero h2{letter-spacing:1px;color:#284e39;margin-top:16px;font-size:40px;font-weight:650;line-height:1.45}.hero h2 span{color:#809965}.hero p{color:#85927b;margin-top:12px;font-size:12px;line-height:1.9}.hero-actions{align-items:center;gap:24px;margin-top:24px;display:flex}.btn{white-space:nowrap;border-radius:7px;justify-content:center;align-items:center;gap:9px;padding:12px 18px;font-size:12px;font-weight:550;display:inline-flex}.btn.primary{color:#f9faf4;background:var(--green);box-shadow:0 3px 8px #1e433410}.btn.primary:hover{background:#1d4332;transform:translateY(-1px)}.btn.secondary{color:#62765b;background:#fffefb;border:1px solid #dce3d6}.btn.secondary:hover{background:#f0f4e9}.hero-copy>small{color:#a1aa95;margin-top:13px;font-size:9px;display:block}.text-button{color:#6a815c;white-space:nowrap;align-items:center;gap:8px;padding:4px 0;font-size:11px;display:inline-flex}.text-button:hover{color:#2b543b}.hero-art{width:46%;min-width:300px;position:relative;overflow:hidden}.orbit{border:1px solid #dce5cd;border-radius:50%;width:350px;height:350px;position:absolute;top:37px;left:40px}.orbit-two{width:266px;height:266px;top:78px;left:82px}.art-caption{color:#93a17f;letter-spacing:3px;font-size:10px;position:absolute;top:43px;left:100px;transform:rotate(-8deg)}.art-tile{filter:drop-shadow(8px 17px 9px #31482420);position:absolute;top:123px;left:85px}.art-tile .tile{background:#fffef4;border:1px solid #d2d8bf;border-radius:12px;width:87px;height:124px;box-shadow:inset 0 -9px #d7d9bd,inset 0 2px #fff}.art-tile .tile .honor{font-size:57px;font-weight:500}.art-tile .tile .dots{gap:8px;width:55px}.art-tile .tile .dots i{width:15px;height:15px;box-shadow:inset 0 0 0 3px #ffffff70}.art-tile .tile .bamboo{gap:9px;width:60px}.art-tile .tile .bamboo i{width:8px;height:27px}.art-tile-one{top:136px;left:45px;transform:rotate(-20deg)}.art-tile-two{z-index:2;top:100px;left:133px;transform:rotate(-3deg)}.art-tile-three{top:140px;left:221px;transform:rotate(18deg)}.art-note{color:#68845a;background:#fffef4d9;border:1px solid #fff;border-radius:8px;align-items:center;gap:7px;padding:10px 13px;font-size:10px;display:flex;position:absolute;top:285px;left:136px;transform:rotate(-5deg);box-shadow:0 6px 18px #354c2710}.art-spark{color:#8fa873;font-size:27px;position:absolute}.spark-one{top:84px;left:310px}.spark-two{font-size:38px;font-weight:300;top:270px;left:44px}.steps-row{grid-template-columns:repeat(3,1fr);gap:18px;margin:25px 0 30px;display:grid}.steps-row>div{align-items:center;gap:13px;padding:11px 0;display:flex;position:relative}.step-icon{color:#7f966f;background:#e9ede2;border-radius:10px;flex-shrink:0;place-items:center;width:39px;height:39px;display:grid}.step-icon svg{width:19px}.steps-row b{font-size:12px;font-weight:550}.steps-row p{color:#9aa38f;margin-top:6px;font-size:10px}.step-number{color:#e3e8da;font-size:20px;font-weight:550;position:absolute;top:11px;right:0}.home-grid{grid-template-columns:minmax(0,2.1fr) minmax(225px,1fr);gap:22px;display:grid}.panel{border:1px solid var(--line);background:#fffefb;border-radius:12px}.section-heading{justify-content:space-between;align-items:center;gap:15px;padding:22px 23px;display:flex}.section-heading h3{font-size:15px;font-weight:600}.section-heading p{color:#a0a894;margin-top:6px;font-size:10px}.record-header,.record-row{text-align:left;grid-template-columns:minmax(150px,1fr) 90px 65px 15px;align-items:center;gap:10px;width:100%;padding:13px 22px;display:grid}.record-header{color:#a0a994;background:#f8f9f4;border-top:1px solid #eef0e8;border-bottom:1px solid #eef0e8;font-size:9px}.record-row{border-bottom:1px solid #eef0e8;padding-top:19px;padding-bottom:19px}.record-row:hover{background:#f5f7ee}.record-title{align-items:center;gap:11px;min-width:0;display:flex}.record-title b{white-space:nowrap;text-overflow:ellipsis;max-width:250px;font-size:12px;font-weight:500;display:block;overflow:hidden}.record-title small{color:#a1a996;margin-top:7px;font-size:9px;display:block}.record-icon{color:#8da17c;background:#f0f2e8;border-radius:8px;flex-shrink:0;place-items:center;width:38px;height:42px;display:grid}.tag{white-space:nowrap;color:#7e966a;background:#f0f4e9;border:1px solid #e4e9dc;border-radius:5px;justify-content:center;align-items:center;width:max-content;padding:4px 8px;font-size:9px;font-weight:400;display:inline-flex}.record-count{color:#627154;font-size:14px}.record-count small{color:#a0a895;font-size:9px}.record-row>svg{color:#a8b29b}.record-footer{color:#a0aa96;align-items:center;gap:7px;padding:14px 22px;font-size:9px;display:flex}.coach-card{background:#f0ecdf;border:1px solid #e8e4d5;border-radius:12px;padding:23px 25px;position:relative;overflow:hidden}.coach-label{color:#968b6a;align-items:center;gap:7px;font-size:10px;display:flex}.coach-mark{border:1px solid #beb496;border-radius:4px;padding:1px 4px;font-size:10px}.coach-card h3{color:#656b50;z-index:1;margin-top:19px;font-size:24px;font-weight:500;line-height:1.5;position:relative}.coach-card p{color:#9b9c84;z-index:1;margin-top:10px;font-size:10px;line-height:2;position:relative}.coach-card .text-button{color:#8c8d6a;z-index:1;margin-top:18px;position:relative}.coach-card-decoration{color:#e4dfca;font-family:Georgia,serif;font-size:200px;position:absolute;bottom:-36px;right:10px;transform:rotate(17deg)}.footer{color:#adb4a4;justify-content:space-between;gap:20px;padding:29px 0 22px;font-size:9px;display:flex}.footer i{margin:0 8px;font-style:normal}.error-banner{color:#996944;background:#fff2e7;border:1px solid #e5c5ac;border-radius:8px;justify-content:space-between;gap:20px;margin-bottom:20px;padding:12px;font-size:12px;display:flex}.error-banner button{flex-shrink:0;text-decoration:underline}.loading-state{color:#9aa791;justify-content:center;align-items:center;gap:10px;min-height:140px;font-size:12px;display:flex}.spin{animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.library-toolbar{justify-content:space-between;gap:15px;margin-bottom:23px;display:flex}.segmented{background:#ecefe6;border-radius:8px;gap:3px;padding:4px;display:flex}.segmented button{color:#8b9881;border-radius:6px;padding:8px 17px;font-size:11px}.segmented button.selected{color:#425f37;background:#fffefb;box-shadow:0 2px 4px #223d2810}.search-input{border:1px solid var(--line);color:#9da694;background:#fffefb;border-radius:7px;align-items:center;gap:10px;padding:8px 13px;display:flex}.search-input input{background:0 0;border:none;outline:none;width:160px;font-size:11px}.search-input input::placeholder{color:#a7ae9e}.library-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;display:grid}.game-card{text-align:left;background:#fffefa;border:1px solid #e1e7d9;border-radius:12px;overflow:hidden}.game-card:hover{transform:translateY(-2px);box-shadow:0 8px 24px #334c2910}.game-card-top{color:#8a9a7d;justify-content:space-between;padding:18px 19px;display:flex}.mini-tiles{background:#f1f3e8;border-radius:8px;justify-content:center;gap:6px;margin:0 18px;padding:28px;display:flex}.mini-tiles .tile:first-child{transform:rotate(-8deg)}.mini-tiles .tile:nth-child(3){transform:rotate(8deg)}.game-card h3{margin:20px 20px 8px;font-size:15px;font-weight:550}.game-card>p{color:#99a28f;margin:0 20px 22px;font-size:10px}.game-card-footer{color:#92a083;border-top:1px solid var(--line);justify-content:space-between;padding:14px 20px;font-size:10px;display:flex}.game-card-footer span:last-child{align-items:center;gap:5px;display:flex}.empty-state{text-align:center;background:#fffefb;border:1px dashed #dce3d1;border-radius:14px;grid-column:1/-1;padding:70px 20px}.empty-state>span{color:#91a879;background:#edf1e5;border-radius:16px;place-items:center;width:55px;height:55px;margin:0 auto 18px;display:grid}.empty-state h3{font-size:19px;font-weight:500}.empty-state p{color:#9ba591;margin:10px 0 24px;font-size:12px}.count-label{color:#8fa080;font-size:11px}.saved-list{gap:12px;display:grid}.saved-card{border:1px solid var(--line);background:#fffefa;border-radius:12px;align-items:center;gap:22px;padding:23px;display:flex}.saved-card>div{flex:1}.saved-card h3{font-size:14px;font-weight:550}.saved-card p{color:#9aa48e;margin-top:6px;font-size:11px}.settings-grid{grid-template-columns:1.1fr 1fr;gap:25px;display:grid}.settings-panel{padding:28px}.settings-panel h3{align-items:center;gap:9px;font-size:16px;font-weight:550;display:flex}.settings-panel>p{color:#909d85;margin:15px 0 24px;font-size:11px;line-height:1.9}.settings-panel form>label{color:#7e8e72;gap:8px;margin-bottom:17px;font-size:11px;display:grid}.settings-panel input,.settings-panel select{background:#fcfcf7;border:1px solid #e2e8d9;border-radius:6px;width:100%;padding:12px;font-size:12px}.settings-actions{gap:20px;margin:23px 0;display:flex}.capability-row{border-bottom:1px solid #ecf0e5;justify-content:space-between;align-items:center;padding:20px 0;font-size:12px;display:flex}.capability-row b{color:#a3aa98;font-size:11px;font-weight:400}.green{color:#457954!important}.version-note{margin-top:25px}.version-note p{color:#93a087;margin-top:14px;font-size:11px;line-height:1.9}.review-content{max-width:1700px;padding:26px 28px 0}.review-heading{justify-content:space-between;align-items:center;gap:14px;margin-bottom:20px;display:flex}.back-link{color:#95a18b;align-items:center;gap:6px;margin-bottom:13px;padding:0;font-size:10px;display:flex}.review-heading h1{align-items:center;gap:12px;font-size:21px;display:flex}.review-heading p{color:#94a087;margin-top:9px;font-size:10px}.review-heading p>span{color:#bec7b6;margin:0 8px}.analysis-disclosure{color:#8c9b7b;background:#f0f3e8;border:1px solid #e3e9d7;border-radius:7px;align-items:flex-start;gap:7px;margin-bottom:20px;padding:10px 13px;font-size:10px;line-height:1.7;display:flex}.analysis-disclosure svg{flex-shrink:0;margin-top:1px}.review-layout{grid-template-columns:168px minmax(380px,1fr) 315px;align-items:start;gap:18px;display:grid}.decision-panel{overflow:hidden}.decision-panel-heading{justify-content:space-between;align-items:center;padding:18px 14px;display:flex}.decision-panel h3{font-size:12px;font-weight:600}.decision-panel-heading>span{color:#a0aa93;font-size:9px}.timeline-filter{background:#f2f4eb;border-radius:6px;gap:2px;margin:0 10px 12px;padding:3px;display:flex}.timeline-filter button{color:#94a082;border-radius:4px;flex:1;padding:6px 2px;font-size:9px}.timeline-filter button.selected{color:#63864b;background:#fffefb;box-shadow:0 1px 3px #0000000a}.decision-list{scrollbar-width:thin;scrollbar-color:#d8dfcd transparent;max-height:676px;overflow-y:auto}.decision-item{text-align:left;border-top:1px solid #f0f3ea;border-left:3px solid #0000;width:100%;padding:14px 13px;display:block}.decision-item.selected{background:#edf3e7;border-left-color:#648a53}.decision-item:hover{background:#f2f5eb}.decision-item>div{justify-content:space-between;align-items:center;display:flex}.decision-item strong{font-size:10px;font-weight:550}.decision-item>div>span{color:#9aa68c;font-size:9px}.decision-item section{align-items:center;gap:7px;margin-top:9px;display:flex}.quality{color:#92a47c;font-size:8px}.quality.review{color:#b19762}.quality.close{color:#839796}.decision-item section>svg{color:#a4b498;margin-left:auto}.timeline-note{color:#a3ad97;border-top:1px solid var(--line);align-items:center;gap:4px;padding:14px 9px;font-size:8px;display:flex}.kbd{background:#f5f7ef;border:1px solid #e0e6d6;border-radius:3px;padding:1px 4px}.review-center{gap:18px;display:grid}.board-panel{overflow:hidden}.board-heading{color:#75896a;justify-content:space-between;align-items:center;padding:11px 18px;font-size:11px;display:flex}.board-heading>span{align-items:center;gap:7px;display:flex}.live-dot{background:#819c6b;border-radius:50%;width:5px;height:5px;display:inline-block}.save-button.is-saved svg{fill:#afbc8a;color:#7c915b}.mahjong-table{background:#366552 radial-gradient(#ffffff07 1px,#0000 1px) 0 0/4px 4px;border:5px solid #2f5d49;border-radius:8px;height:305px;margin:0 12px;position:relative;overflow:hidden;box-shadow:inset 0 0 30px #143d2e40}.table-caption{color:#a1b7a17d;letter-spacing:1px;font-size:7px;position:absolute;top:8px;left:10px}.opponent{z-index:2;position:absolute}.opponent-0{min-width:150px;top:25px;left:50%;transform:translate(-50%)}.opponent-1{max-width:90px;top:115px;left:13px}.opponent-2{max-width:90px;top:115px;right:13px}.player-name{color:#c5d5bb;text-align:center;white-space:nowrap;margin-bottom:8px;font-size:8px}.player-name span{color:#a1b899;margin-left:6px;font-size:8px}.river{flex-wrap:wrap;justify-content:center;gap:2px;max-width:152px;display:flex}.river .tile-small{border-radius:3px;width:22px;height:30px;box-shadow:inset 0 -2px #cecfb7}.river .tile-small b{font-size:11px}.river .tile-small em{font-size:10px}.river .tile-small .honor{font-size:16px}.river .tile-small .dots{gap:2px;width:16px}.river .tile-small .dots i{width:4px;height:4px}.river .tile-small .bamboo{gap:2px;width:15px}.river .tile-small .bamboo i{width:3px;height:5px}.own-river{position:absolute;bottom:17px;left:50%;transform:translate(-50%)}.table-center{color:#9fba9b;background:#2c5848;border:1px solid #86a68a44;border-radius:6px;flex-direction:column;justify-content:center;align-items:center;width:100px;height:88px;display:flex;position:absolute;top:118px;left:50%;transform:translate(-50%)}.table-center>span{font-size:9px}.table-center>strong{letter-spacing:7px;color:#9bb99d;margin-top:4px;margin-left:7px;font-size:22px;font-weight:500}.table-center>small{letter-spacing:4px;margin-top:3px;margin-left:4px;font-size:6px}.compass b{color:#a7bca1;font-size:8px;font-weight:400;position:absolute}.compass b:first-child{top:-16px;left:45px}.compass b:nth-child(2){top:35px;left:-17px}.compass b:nth-child(3){top:35px;right:-17px}.compass b:nth-child(4){color:#d6be84;bottom:-16px;left:45px}.dora-display{position:absolute;bottom:15px;left:12px}.dora-display>span{color:#a1b89b;margin-bottom:4px;font-size:7px;display:block}.dora-display>div{gap:2px;display:flex}.hand-zone{background:#f9faf4;padding:16px 13px 6px}.hand-label{color:#819472;justify-content:space-between;margin-bottom:11px;font-size:9px;display:flex}.hand-label i{background:#91a87a;border-radius:50%;width:5px;height:5px;margin-right:5px;display:inline-block}.hand-label small{color:#a1ab96;font-size:9px}.hand-label>span:last-child{color:#a9aa91;font-size:8px}.hand-label b{color:#b29562;font-weight:500}.hand-tiles{justify-content:center;gap:3px;display:flex}.tile{vertical-align:middle;color:#354849;background:#fffef5;border:1px solid #dadfc9;border-radius:4px;flex-direction:column;flex-shrink:0;justify-content:center;align-items:center;width:31px;height:44px;padding:1px 1px 4px;line-height:1;display:inline-flex;box-shadow:inset 0 -3px #dce0c8,0 1px 2px #263d2510}.tile>b{font-family:KaiTi,STKaiti,Microsoft Yahei,serif;font-size:17px;line-height:1}.tile em{color:#b24c3e;margin-top:2px;font-family:KaiTi,STKaiti,serif;font-size:13px;font-style:normal}.tile .honor{font-size:24px;font-weight:600;line-height:1}.red{color:#b64f43!important}.tile .green{color:#4a8158!important}.dots{grid-template-columns:repeat(3,1fr);place-items:center;gap:3px;width:23px;display:grid}.dots i{border-radius:50%;width:6px;height:6px;box-shadow:inset 0 0 0 1.4px #fff7}.dots-1{justify-content:center;display:flex}.dots-1 i{width:15px;height:15px;box-shadow:inset 0 0 0 3px #fff7}.dots-2,.dots-3{flex-direction:column;gap:5px;display:flex}.dots-4{grid-template-columns:repeat(2,1fr);row-gap:10px}.dots-5 i:first-child{grid-area:1/1}.dots-5 i:nth-child(2){grid-area:1/3}.dots-5 i:nth-child(3){grid-area:2/2}.dots-5 i:nth-child(4){grid-area:3/1}.dots-5 i:nth-child(5){grid-area:3/3}.dots-6{grid-template-columns:repeat(2,1fr)}.bamboo{grid-template-columns:repeat(3,1fr);place-items:center;gap:3px;width:21px;display:grid}.bamboo i{background:linear-gradient(#37745a 0 40%,#91ac75 40% 55%,#37745a 55%);border-radius:1px;width:4px;height:8px;box-shadow:0 0 0 .3px #326d52}.bamboo-1,.bamboo-2,.bamboo-3{justify-content:center;display:flex}.bamboo-1 i{width:9px;height:22px;transform:rotate(-10deg)}.bamboo-4{grid-template-columns:repeat(2,1fr)}.tile-small{border-radius:3px;width:25px;height:34px;padding-bottom:3px}.tile-small b{font-size:13px}.tile-small em{font-size:10px}.tile-small .honor{font-size:19px}.tile-small .dots{gap:2px;width:18px}.tile-small .dots i{width:4px;height:4px}.tile-small .dots-1 i{width:12px;height:12px}.tile-small .dots-2,.tile-small .dots-3{gap:4px}.tile-small .bamboo{gap:2px;width:17px}.tile-small .bamboo i{width:3px;height:6px}.tile-small .bamboo-1 i{width:7px;height:18px}.tile-active{background:#fff6d8;border-color:#ba9f62;transform:translateY(-4px);box-shadow:inset 0 -3px #d8c48d,0 0 0 1px #c9af6b}.tile-muted{opacity:.5}.hand-caption{color:#b2b99f;text-align:center;min-height:23px;padding-top:9px;font-size:8px}.playback{border-top:1px solid #eef1e5;align-items:center;gap:7px;padding:4px 10px 9px;display:flex}.playback input{accent-color:#849d6a;flex:1;min-width:0;height:3px}.playback>span{color:#748764;text-align:right;min-width:40px;font-size:9px}.playback em{color:#b5bfa6;font-style:normal}.candidate-panel .section-heading{padding:18px}.candidate-header,.candidate-row{grid-template-columns:1fr .9fr 1.2fr 1fr;align-items:center;gap:8px;padding:10px 18px;display:grid}.candidate-header{color:#a0ad8e;background:#f7f9f1;border-block:1px solid #ecf0e3;font-size:9px}.candidate-row{border-bottom:1px solid #f0f2e9;min-height:56px;font-size:10px}.candidate-row.recommended{background:#f3f7eb}.candidate-row>span:first-child{align-items:center;gap:6px;display:flex}.candidate-row em{color:#b09e74;background:#f6f0df;border-radius:3px;padding:3px 4px;font-size:8px;font-style:normal}.candidate-row>strong{color:#6c8259;font-size:11px;font-weight:500}.candidate-row b{font-size:12px;font-weight:500}.candidate-row small{color:#a5b096;font-size:8px}.ukeire-bar{background:#eaf0de;border-radius:2px;max-width:65px;height:3px;margin-top:6px}.ukeire-bar i{background:#b5c797;border-radius:2px;height:100%;display:block}.recommended-label{color:#7e9d5d;align-items:center;gap:3px;font-size:8px;display:flex}.muted-label{color:#b0b79e;font-size:9px}.candidate-footnote{color:#a9b198;padding:12px 18px;font-size:8px;line-height:1.8}.chat-panel{flex-direction:column;height:812px;max-height:calc(100vh - 35px);display:flex;position:sticky;top:18px;overflow:hidden}.chat-heading{align-items:center;gap:10px;padding:19px 16px 16px;display:flex}.coach-avatar{color:#7b965d;background:#ebf0e1;border-radius:10px;place-items:center;width:34px;height:34px;display:grid}.chat-heading h3{font-size:12px;font-weight:550}.chat-heading p{color:#acb59a;margin-top:4px;font-size:9px}.chat-heading .online-dot{width:5px;height:5px}.context-chip{color:#82966b;background:#f3f6eb;border:1px solid #eaf0de;border-radius:5px;align-items:center;gap:5px;margin:0 15px 14px;padding:9px;font-size:9px;display:flex}.context-chip span{color:#a4b190;margin-left:auto;font-size:8px}.chat-messages{scrollbar-width:thin;scrollbar-color:#e1e7d7 transparent;flex:1;min-height:120px;padding:3px 15px 10px;overflow:auto}.assistant-intro{background:#f6f7f1;border:1px solid #edf0e4;border-radius:9px;padding:14px}.message-label{color:#9cad87;margin-bottom:10px;font-size:8px;display:block}.assistant-intro>p{color:#738565;font-size:11px;line-height:2}.evidence{color:#8d9e7a;gap:6px;margin-top:9px;font-size:10px;line-height:1.9;display:flex}.evidence>span{background:#b3c397;border-radius:50%;flex-shrink:0;width:4px;height:4px;margin-top:8px}.intro-tip{color:#a5ae94;border-top:1px solid #e4ead8;gap:6px;margin-top:14px;padding-top:12px;font-size:8px;line-height:1.8;display:flex}.intro-tip svg{flex-shrink:0;margin-top:2px}.message{word-break:break-word;border-radius:8px;margin-top:16px;padding:12px;font-size:11px;line-height:1.9}.message p{white-space:pre-wrap}.message.user{color:#70875b;background:#eaf1df;border-bottom-right-radius:2px;margin-left:25px}.message.assistant{color:#708365;background:#f6f7f2;border-bottom-left-radius:2px}.chat-bottom{border-top:1px solid #eef1e6;padding:14px}.suggested-questions{gap:6px;margin-bottom:14px;display:grid}.suggested-questions button{color:#90a376;text-align:left;background:#fdfef9;border:1px solid #e5ebdb;border-radius:5px;justify-content:space-between;align-items:center;padding:8px 10px;font-size:9px;display:flex}.suggested-questions button:hover{background:#edf3e2}.suggested-questions svg{color:#b3c09d;width:11px;height:11px}.chat-input{background:#fffefb;border:1px solid #dce5cf;border-radius:7px;align-items:flex-end;gap:6px;padding:9px;display:flex}.chat-input:focus-within{border-color:#a3bb84;box-shadow:0 0 0 3px #bdd0a522}.chat-input textarea{resize:none;background:0 0;border:0;outline:none;flex:1;min-width:0;height:44px;padding:2px;font-size:10px;line-height:1.8}.chat-input textarea::placeholder{color:#b0baa1}.chat-input button{color:#f7fbef;background:#5c8046;border-radius:5px;place-items:center;width:28px;height:28px;display:grid}.chat-footnote{color:#b2bba5;justify-content:space-between;margin-top:10px;font-size:8px;display:flex}.chat-footnote button{color:#9eaf87;align-items:center;gap:4px;font-size:8px;display:flex}.thinking{color:#91a477;align-items:center;gap:7px;margin-top:20px;font-size:10px;display:flex}.chat-error,.form-error{color:#aa6b52;background:#fbf0e8;border:1px solid #ecd9ca;border-radius:6px;margin-top:12px;padding:10px;font-size:11px;line-height:1.7}.modal-backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:100;background:#203e3459;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.import-modal{background:#fffef9;border:1px solid #f4f6ed;border-radius:17px;width:490px;max-height:calc(100vh - 40px);padding:28px;overflow-y:auto;box-shadow:0 30px 100px #12372233}.modal-heading{justify-content:space-between;align-items:center;margin-bottom:18px;display:flex}.modal-icon{color:#829f63;background:#eaf0df;border-radius:12px;place-items:center;width:44px;height:44px;display:grid}.import-modal h2{font-size:23px;font-weight:550}.import-modal>p{color:#9da98d;margin-top:10px;font-size:11px}.import-tabs{border-bottom:1px solid #e5eadc;gap:20px;margin:24px 0 18px;display:flex}.import-tabs button{color:#a6b099;border-bottom:2px solid #0000;align-items:center;gap:7px;padding:10px 2px 13px;font-size:11px;display:flex}.import-tabs button.selected{color:#65824e;border-color:#8ba86e}.dropzone{color:#8ea676;background:#f6f8ef;border:1px dashed #cdd9bd;border-radius:8px;flex-direction:column;justify-content:center;align-items:center;gap:14px;width:100%;height:158px;display:flex}.dropzone:hover{background:#f0f5e7;border-color:#90aa74}.dropzone strong{text-overflow:ellipsis;max-width:100%;font-size:12px;font-weight:500;overflow:hidden}.dropzone span{color:#a9b59a;font-size:10px}.dropzone.has-file{border-style:solid}.player-select{color:#8a9d75;justify-content:space-between;align-items:center;gap:10px;margin-top:20px;font-size:11px;display:flex}.player-select select{background:#fffef9;border:1px solid #e1e8d5;border-radius:5px;padding:9px;font-size:10px}.import-modal .import-note{color:#b1baa3;margin-top:14px;font-size:9px;line-height:1.9}.modal-actions{justify-content:space-between;align-items:center;gap:15px;margin-top:24px;display:flex}.sample-download{color:#a9b59a;border-top:1px solid #edf0e5;justify-content:center;align-items:center;gap:5px;margin-top:22px;padding-top:16px;font-size:9px;text-decoration:none;display:flex}.sample-download:hover{color:#69884d}.link-input{color:#a3b18d;border:1px solid #dde6ce;border-radius:6px;align-items:center;gap:9px;padding:12px;display:flex}.link-input input{background:0 0;border:0;outline:0;flex:1;min-width:0;font-size:11px}.link-input input::placeholder{color:#b0b99f}.feature-notice{color:#a19b7f;background:#f5f4ec;border:1px solid #e9e6d6;border-radius:7px;gap:10px;margin-top:18px;padding:15px;display:flex}.feature-notice>svg{flex-shrink:0;margin-top:2px}.feature-notice b{font-size:11px;font-weight:500}.feature-notice p{color:#aaa78d;margin-top:7px;font-size:10px;line-height:1.9}.import-progress{margin-top:16px}.import-progress>div{color:#7e9962;align-items:center;gap:7px;font-size:11px;display:flex}.import-progress progress{accent-color:#7e9962;width:100%;height:5px;margin:12px 0}.import-progress small{color:#a9b79a;font-size:9px}.toast{color:#f4f8ed;z-index:200;background:#284e3e;border:1px solid #71856a;border-radius:9px;align-items:center;gap:9px;max-width:90vw;padding:14px 21px;font-size:12px;display:flex;position:fixed;bottom:30px;left:50%;transform:translate(-50%);box-shadow:0 10px 40px #1b41232b}.mobile-toggle,.menu-scrim{display:none}@media (width>=1550px){.hero-art{width:43%}.art-tile-one{left:95px}.art-tile-two{left:183px}.art-tile-three{left:271px}.art-note{left:186px}.orbit{left:90px}.orbit-two{left:132px}.spark-one{left:360px}.spark-two{left:94px}.art-caption{left:150px}.hand-tiles .tile{width:35px;height:48px}}@media (width<=1350px){.content{padding-left:28px;padding-right:28px}.topbar{padding:0 28px}.hero-copy{padding-left:30px}.hero h2{font-size:36px}.review-layout{grid-template-columns:145px minmax(350px,1fr) 280px;gap:12px}.review-content{padding:24px 20px 0}.sidebar{width:195px;padding-inline:14px}.main{margin-left:195px}.steps-row p{font-size:9px}.step-number{display:none}.record-header,.record-row{grid-template-columns:minmax(130px,1fr) 70px 42px 12px;padding-inline:17px}.record-title b{max-width:210px}.chat-heading{padding-inline:12px}.chat-heading h3{font-size:11px}.hand-tiles{gap:2px}.hand-tiles .tile{width:24px;height:37px}.hand-tiles .tile>b{font-size:14px}.hand-tiles .tile>em{font-size:11px}.hand-tiles .tile .honor{font-size:21px}.hand-tiles .dots{gap:2px;width:18px}.hand-tiles .dots i{width:4px;height:4px}.hand-tiles .bamboo{gap:2px;width:18px}.hand-tiles .bamboo i{width:3px;height:7px}.candidate-header,.candidate-row{padding-inline:12px}.opponent-1{max-width:76px;left:5px}.opponent-2{max-width:76px;right:5px}.review-heading h1{font-size:19px}}@media (width<=1150px){.review-layout{grid-template-columns:135px minmax(360px,1fr)}.chat-panel{grid-column:1/-1;height:600px;max-height:none;position:static}.decision-panel{position:sticky;top:15px}.hero-art{width:40%;min-width:260px;transform:translate(12px)}.art-tile-one{left:5px}.art-tile-two{left:85px}.art-tile-three{left:165px}.art-tile .tile{width:77px;height:110px}.orbit{left:-10px}.orbit-two{left:30px}.art-note{top:274px;left:72px}.spark-one{left:230px}.spark-two{left:20px}.art-caption{font-size:9px;left:40px}.hero-actions{gap:15px}.hero-copy{padding:27px}.hero h2{font-size:33px}.steps-row{gap:12px}.step-icon{width:33px;height:33px}.steps-row>div{gap:9px}.steps-row b{font-size:11px}.home-grid{grid-template-columns:1.7fr 1fr;gap:16px}.record-header,.record-row{grid-template-columns:minmax(140px,1fr) 60px 12px}.record-header>span:nth-child(3),.record-row>.record-count{display:none}.section-heading{padding:19px 17px}.section-heading .text-button{font-size:10px}.coach-card{padding:20px}.coach-card h3{font-size:23px}.library-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.settings-grid{grid-template-columns:1fr}.date-label{font-size:9px}.review-heading>div>p{max-width:460px;line-height:1.8}}@media (width<=900px){.sidebar{width:172px;padding-inline:12px}.main{margin-left:172px}.brand{gap:9px;padding:0 7px}.brand strong{font-size:25px}.brand-icon{width:38px;height:45px}.nav-item{gap:10px;padding-inline:11px;font-size:12px}.workspace-label{margin-inline:8px;font-size:9px}.profile small{font-size:7px}.profile{gap:6px}.content{padding:28px 22px 0}.hero-copy{padding:25px}.hero-art{opacity:.7;width:240px;min-width:0;position:absolute;top:20px;bottom:0;right:-30px}.hero-copy{max-width:75%}.hero h2{font-size:35px}.hero p{font-size:11px}.hero-actions{flex-wrap:wrap;gap:15px}.hero-actions .btn{padding:11px 13px;font-size:11px}.steps-row{grid-template-columns:1fr;gap:0;margin:20px 0}.steps-row>div{padding:10px 0}.steps-row p{font-size:10px}.steps-row b{font-size:12px}.step-number{font-size:19px;display:block;right:15px}.home-grid{grid-template-columns:1fr}.coach-card{padding:25px}.coach-card h3 br,.coach-card p br{display:none}.coach-card h3{margin-top:15px;font-size:23px}.coach-card-decoration{right:40px}.hero{min-height:350px}.date-label{display:none}.page-heading h1{font-size:23px}.review-layout{grid-template-columns:1fr}.decision-panel{position:static}.decision-list{max-height:125px;display:flex;overflow-x:auto}.decision-item{border-top:0;border-bottom:3px solid #0000;border-left:0;border-right:1px solid #e9eee0;min-width:130px}.decision-item.selected{border-bottom-color:#648a53}.decision-panel-heading{padding:13px 15px}.timeline-filter{width:125px;max-width:200px;margin-top:-39px;position:absolute;right:45px}.timeline-note{display:none}.chat-panel{grid-column:auto}.review-center{min-width:0}.hand-tiles .tile{width:31px;height:44px}.review-heading h1{font-size:17px}.review-heading .btn{padding:9px;font-size:10px}.settings-panel{padding:24px}.footer{font-size:8px}.footer>span:last-child{display:none}}@media (width<=640px){.sidebar{width:218px;transition:transform .2s;transform:translate(-100%)}.sidebar.open{transform:translate(0)}.sidebar .brand{padding:0 13px}.sidebar .brand strong{font-size:28px}.sidebar .nav-item{padding:13px 15px;font-size:13px}.sidebar .profile small{font-size:8px}.menu-scrim{z-index:19;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#243c3155;display:block;position:fixed;inset:0}.main{margin-left:0}.topbar{height:61px;padding:0 17px}.mobile-toggle{margin-left:-5px;display:inline-flex}.breadcrumb{gap:6px}.topbar-actions{gap:13px}.version-badge{font-size:9px}.topbar-actions>.icon-button{display:none}.content{padding:26px 19px 0}.page-heading{margin-bottom:22px}.eyebrow{letter-spacing:1.7px;font-size:8px}.page-heading h1{font-size:23px}.page-heading p{font-size:11px;line-height:1.9}.hero{min-height:380px}.hero-copy{max-width:100%;padding:27px 24px}.hero h2{margin-top:19px;font-size:34px}.hero p{font-size:11px;line-height:2}.hero-art{opacity:.65;width:210px;top:67px;right:-56px}.art-tile .tile{border-radius:8px;width:62px;height:91px}.art-tile .tile .honor{font-size:42px}.art-tile .tile .dots{gap:6px;width:40px}.art-tile .tile .dots i{width:11px;height:11px}.art-tile .tile .bamboo{gap:6px;width:42px}.art-tile .tile .bamboo i{width:6px;height:19px}.art-tile-one{top:98px;left:3px}.art-tile-two{top:68px;left:65px}.art-tile-three{top:110px;left:125px}.art-note,.art-caption,.spark-two{display:none}.spark-one{font-size:20px;top:24px;left:140px}.orbit-one{width:250px;height:250px;top:20px;left:-31px}.orbit-two{width:194px;height:194px;top:48px;left:-3px}.hero-actions{gap:17px;margin-top:24px}.hero-actions .btn{padding:12px;font-size:11px}.hero-actions .text-button{font-size:10px}.hero-copy>small{font-size:8px}.steps-row{margin:18px 0}.steps-row>div{padding:12px 4px}.step-icon{width:36px;height:36px}.steps-row section{margin-left:5px}.home-grid{gap:18px}.record-title b{max-width:176px;font-size:11px}.record-title small{font-size:8px}.record-icon{width:32px;height:36px}.record-header,.record-row{grid-template-columns:minmax(135px,1fr) 62px 12px;gap:5px;padding-inline:14px}.section-heading{padding:19px 15px}.section-heading h3{font-size:14px}.section-heading p,.section-heading .text-button{font-size:9px}.coach-card{padding:24px}.coach-card h3{font-size:23px}.record-footer{padding-inline:15px;font-size:8px}.footer{padding-top:24px;font-size:8px}.library-toolbar{flex-direction:column;gap:13px}.segmented{justify-content:space-between}.segmented button{flex:1;padding:8px 10px;font-size:10px}.search-input input{width:100%}.library-grid{grid-template-columns:1fr;gap:15px}.page-heading>.btn{padding:10px;font-size:10px}.mini-tiles{padding:20px}.game-card h3{font-size:14px}.empty-state{padding:45px 20px}.empty-state h3{font-size:17px}.empty-state p{font-size:10px;line-height:1.9}.saved-card{flex-wrap:wrap;gap:12px;padding:16px}.saved-card h3{font-size:12px}.saved-card p{font-size:9px}.saved-card .btn{padding:9px;font-size:9px}.saved-card>.icon-button{width:22px}.count-label{white-space:nowrap;font-size:9px}.review-content{padding:20px 12px 0}.review-heading{align-items:flex-start;padding:0 4px}.review-heading h1{flex-wrap:wrap;gap:7px;font-size:16px;line-height:1.7}.review-heading .btn{margin-top:24px;padding:8px;font-size:9px}.review-heading p{font-size:9px;line-height:1.8}.review-heading p>span{margin:0 4px}.analysis-disclosure{margin-bottom:12px;padding:9px;font-size:9px}.timeline-filter{right:26px}.decision-item{min-width:125px}.mahjong-table{height:290px;margin-inline:8px}.hand-tiles{gap:2px}.hand-tiles .tile{width:calc(7.14286vw - 5.64286px);max-width:31px;height:38px}.hand-tiles .tile>b{font-size:13px}.hand-tiles .tile>em{font-size:10px}.hand-tiles .tile .honor{font-size:19px}.hand-tiles .dots{gap:2px;width:16px}.hand-tiles .dots i{width:4px;height:4px}.hand-tiles .dots-1 i{width:11px;height:11px}.hand-tiles .bamboo{gap:2px;width:15px}.hand-tiles .bamboo i{width:3px;height:6px}.hand-zone{padding-inline:9px}.opponent-1{max-width:70px;left:3px}.opponent-2{max-width:70px;right:3px}.table-center{width:83px;height:80px;top:118px}.compass b:first-child,.compass b:nth-child(4){left:36px}.player-name{font-size:7px}.player-name span{margin-left:3px;font-size:7px}.river .tile-small{width:20px;height:28px}.candidate-header,.candidate-row{padding-inline:13px}.chat-panel{height:620px}.chat-heading h3{font-size:13px}.chat-heading p{font-size:10px}.assistant-intro>p,.message{font-size:12px}.suggested-questions button{font-size:10px}.chat-input textarea{font-size:12px}.settings-panel{padding:21px}.settings-grid{gap:18px}.settings-panel h3{font-size:14px}.settings-panel p{font-size:10px}.modal-backdrop{padding:14px}.import-modal{max-height:calc(100dvh - 28px);padding:22px}.import-modal h2{font-size:21px}.dropzone{height:140px}.player-select{font-size:10px}.player-select select{max-width:210px;font-size:9px}.toast{white-space:normal;min-width:240px;padding:12px 15px;font-size:11px;bottom:20px}.hand-caption{font-size:7px}.topbar .version-badge{display:none}}.model-panel{overflow:hidden}.model-panel .section-heading{padding:18px}.model-panel h3{align-items:center;gap:7px;font-size:13px;display:flex}.model-panel h3 svg{color:#7c9a63}.model-panel .section-heading p{font-size:10px}.model-invite{padding:0 18px 19px}.model-invite p{color:#869774;margin-bottom:14px;font-size:11px;line-height:1.8}.model-invite .btn{padding:10px 14px;font-size:11px}.model-progress{padding:0 18px 18px}.model-progress>div{color:#7c9763;align-items:center;gap:7px;font-size:11px;display:flex}.model-progress b{margin-left:auto;font-size:10px;font-weight:400}.model-progress progress{accent-color:#82a463;width:100%;height:5px;margin:16px 0 10px}.model-progress p{color:#9eae8b;font-size:9px;line-height:1.8}.model-results{padding:0 18px 16px}.model-best{background:#edf3e4;border:1px solid #e0e9d2;border-radius:7px;align-items:center;gap:12px;padding:12px;display:flex}.model-best>span{color:#79985d;gap:4px;font-size:10px;display:flex}.model-best strong{color:#4f743b;font-size:14px;font-weight:550}.model-best small{color:#99ad83;margin-left:auto;font-size:10px}.model-actions{margin-top:12px}.model-actions>div{color:#839672;border-bottom:1px solid #edf1e6;justify-content:space-between;padding:9px 3px;font-size:11px;display:flex}.model-actions b{font-weight:500}.model-actions em{color:#b29969;background:#f6f0e1;border-radius:3px;margin-left:5px;padding:2px 4px;font-size:8px;font-style:normal}.model-note{color:#9dac8b;margin-top:12px;font-size:9px;line-height:1.8}.model-time{color:#b0bba2;justify-content:space-between;margin-top:10px;font-size:8px;display:flex}.model-time button{align-items:center;gap:4px;font-size:8px;display:flex}.model-error{color:#a2775b;background:#fbefe7;border-radius:5px;margin:0 18px 18px;padding:10px;font-size:10px;line-height:1.8}.model-error button{margin-top:6px;text-decoration:underline;display:block}.assistant-intro>p,.message.assistant{color:#5f7655}.evidence{color:#7a8c68}.candidate-footnote{color:#8c9a7b}.table-caption{color:#c0d2b994}.message-warning{color:#9b8a68;border-top:1px solid #e0e7d4;margin-top:10px;padding-top:8px;font-size:9px;line-height:1.8;display:block}.llm-picker{min-width:0}.llm-picker.compact{flex-shrink:0;margin:0 15px 12px}.llm-picker-label{color:#81976f;justify-content:space-between;align-items:center;margin-bottom:7px;font-size:9px;display:flex}.llm-picker-label>span{align-items:center;gap:5px;display:flex}.llm-picker-label em{color:#8aa06f;background:#edf2e4;border-radius:3px;padding:2px 5px;font-size:8px;font-style:normal}.llm-select-wrap{min-width:0;position:relative}.llm-select-wrap select{appearance:none;color:#5e7c49;text-overflow:ellipsis;cursor:pointer;background:#f7faf1;border:1px solid #dfe8d4;border-radius:6px;width:100%;min-width:0;padding:10px 28px 10px 10px;font-size:10px;display:block}.llm-select-wrap select:disabled{cursor:default;color:#97a58a}.llm-select-wrap>svg{pointer-events:none;color:#a0b08e;position:absolute;top:50%;right:10px;transform:translateY(-50%)}.llm-picker-hint{color:#9aa98a;margin-top:6px;font-size:8px;line-height:1.7}.llm-load-error{color:#a1795f;background:#faf1e8;border:1px solid #ecdfcf;border-radius:5px;margin-top:7px;padding:7px 9px;font-size:9px;line-height:1.8}.llm-load-error button{color:#876640;margin-left:8px;padding:0;text-decoration:underline;display:inline}.settings-llm{border-top:1px solid #e8eedf;margin-top:21px;padding-top:22px}.settings-llm h4{color:#667e55;margin:0 0 15px;font-size:12px;font-weight:550}.settings-panel .llm-select-wrap select{padding:12px 30px 12px 11px;font-size:11px}.llm-catalog{gap:8px;margin-top:16px;display:grid}.llm-catalog-row{background:#fdfef8;border:1px solid #e9eedf;border-radius:7px;justify-content:space-between;align-items:center;gap:12px;min-width:0;padding:11px;display:flex}.llm-catalog-row.is-selected{background:#f1f6e9;border-color:#d6e3c7}.llm-catalog-row>span{min-width:0}.llm-catalog-row strong{color:#647f51;font-size:11px;font-weight:550;display:block}.llm-catalog-row small{color:#a0ae90;overflow-wrap:anywhere;margin-top:5px;font-size:8px;line-height:1.7;display:block}.llm-catalog-row>div{flex-shrink:0;align-items:center;gap:5px;display:flex}.llm-catalog-row em{color:#88a069;background:#e9f0df;border-radius:3px;padding:3px 5px;font-size:8px;font-style:normal}.llm-catalog-row b{color:#91a17e;font-size:9px;font-weight:400}.chat-panel .message-label{overflow-wrap:anywhere;line-height:1.7}.chat-panel .thinking{flex-wrap:wrap;line-height:1.8}.chat-heading,.chat-bottom,.context-chip{flex-shrink:0}@media (width<=640px){.chat-panel{height:740px}.llm-select-wrap select{font-size:11px}.llm-picker-hint{font-size:9px}.llm-catalog-row>div{flex-direction:column;align-items:flex-end;gap:4px}}@media (width<=900px){.decision-panel{position:relative}.decision-panel-heading>span{margin-right:143px}.timeline-filter{width:125px;margin:0;top:8px;right:12px}}@media (width<=640px){.hero-art{opacity:.5;right:-90px}.record-title b{max-width:168px}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.auth-loading{color:#71845e;background:#fafbf5;flex-direction:column;justify-content:center;align-items:center;gap:20px;min-height:100vh;display:flex}.auth-loading p{font-size:13px}.auth-page{background:#fcfcf7;grid-template-columns:minmax(340px,1.1fr) minmax(420px,1fr);min-height:100dvh;display:grid}.auth-story{background:#eaf0df;flex-direction:column;justify-content:space-between;min-height:100dvh;padding:42px 9%;display:flex;position:relative;overflow:hidden}.auth-story:after{content:"见";color:#dae5ca70;pointer-events:none;font-size:340px;font-weight:300;line-height:1;position:absolute;bottom:30px;right:-50px}.auth-story .brand{z-index:1;width:max-content;padding:0;position:relative}.auth-story-body{z-index:1;padding:55px 0;position:relative}.auth-story h1{color:#506b3f;letter-spacing:-1px;margin:24px 0;font-size:clamp(30px,3.1vw,47px);font-weight:500;line-height:1.65}.auth-story-body>p{color:#849574;font-size:14px;line-height:2.1}.auth-promises{color:#78935e;flex-direction:column;gap:16px;margin-top:35px;font-size:12px;display:flex}.auth-promises span{align-items:center;gap:10px;display:flex}.auth-story>small{color:#95a786;z-index:1;font-size:10px;position:relative}.auth-form-panel{justify-content:center;align-items:center;padding:48px 35px;display:flex}.auth-form-card{width:360px;max-width:100%}.auth-form-card h2{margin:17px 0 12px;font-size:29px;font-weight:500}.auth-form-card>p{color:#95a488;font-size:12px}.auth-tabs{border-bottom:1px solid #e2e8d7;gap:24px;margin:32px 0 25px;display:flex}.auth-tabs button{color:#a0ad93;border-bottom:2px solid #0000;padding:12px 2px;font-size:12px}.auth-tabs button.selected{color:#65834e;border-color:#769653}.auth-form-card form,.password-form,.admin-form{gap:17px;display:grid}.auth-form-card label,.password-form label,.admin-form label{color:#70865d;flex-direction:column;gap:9px;font-size:12px;display:flex}.auth-form-card input,.password-form input,.admin-form input,.admin-form select{color:#4f6941;background:#fffefb;border:1px solid #dde5d1;border-radius:7px;outline:none;width:100%;min-width:0;padding:12px;font-size:13px}.auth-form-card input:focus,.password-form input:focus,.admin-form input:focus,.admin-form select:focus{border-color:#93af75;box-shadow:0 0 0 3px #d8e5c74d}.auth-form-card input::placeholder,.password-form input::placeholder,.admin-form input::placeholder{color:#a4b097;font-size:11px}.auth-submit{justify-content:center;width:100%;margin-top:5px;padding:14px}.auth-credit-note{color:#a1ae92;border-top:1px solid #e7ecdf;align-items:flex-start;gap:9px;margin-top:27px;padding-top:21px;display:flex}.auth-credit-note svg{flex-shrink:0;margin-top:2px}.auth-credit-note p{font-size:10px;line-height:1.9}.password-gate{background:#edf2e4;place-items:center;min-height:100dvh;padding:25px;display:grid}.password-gate-card{background:#fffef9;border:1px solid #e1e9d7;border-radius:18px;width:430px;max-width:100%;padding:35px;box-shadow:0 20px 80px #38542712}.password-gate-card h1{margin:22px 0 12px;font-size:24px;font-weight:500}.password-gate-card>p{color:#8c9c7c;margin-bottom:24px;font-size:12px;line-height:1.9}.password-gate-card>.text-button{margin-top:23px}.password-form .btn{width:max-content}.form-success{color:#698c4d;background:#eef5e6;border:1px solid #dce9cc;border-radius:7px;align-items:center;gap:7px;margin:16px 0;padding:12px;font-size:12px;line-height:1.7;display:flex}.account-logout{border-top:1px solid #e5ebdb;margin-top:25px;padding-top:20px}.settings-panel .password-form{margin-top:23px}.settings-panel .password-form .form-success{margin:0}.profile-identity{min-width:0}.profile-identity b{text-overflow:ellipsis;white-space:nowrap;max-width:112px;display:block;overflow:hidden}.credit-badge{color:#849a6c;background:#f0f5e8;border:1px solid #e3ebd6;border-radius:30px;align-items:center;gap:7px;padding:7px 11px;font-size:10px;display:flex}.credit-badge b{color:#617e48;font-size:12px;font-weight:550}.credit-summary{background:#f2f6ea;align-items:center;gap:22px;margin-bottom:25px;padding:27px 30px;display:flex}.credit-icon{color:#87a568;background:#e4edd7;border-radius:16px;place-items:center;width:58px;height:58px;display:grid}.credit-summary>div>span{color:#8da278;font-size:11px;display:block}.credit-summary strong{color:#5b7e41;font-variant-numeric:tabular-nums;margin-top:9px;font-size:38px;font-weight:500;display:block}.credit-summary p{color:#96a484;margin-left:auto;font-size:11px;line-height:2}.table-scroll{max-width:100%;overflow-x:auto}.data-table{border-collapse:collapse;text-align:left;color:#7c8e6a;width:100%;font-size:11px}.data-table th{color:#99a98a;white-space:nowrap;background:#f6f8f0;border-top:1px solid #e8eedf;border-bottom:1px solid #e8eedf;padding:13px 20px;font-weight:500}.data-table td{vertical-align:middle;border-bottom:1px solid #eaf0e1;padding:17px 20px;line-height:1.8}.data-table td strong{color:#607b4d;margin-right:9px;font-weight:550}.data-table td:last-child{min-width:180px}.data-table tbody tr:last-child td{border-bottom:0}.table-time{white-space:nowrap;color:#9baa8a;font-size:10px}.ledger-reference{overflow-wrap:anywhere;color:#a7b197;max-width:270px;margin-top:4px;font-size:9px;display:block}.credit-positive{color:#638f43;font-weight:600}.credit-negative{color:#ad805e}.table-empty{text-align:center;color:#a2af94;padding:40px 20px;font-size:12px}.ledger-panel{overflow:hidden}.admin-tabs{width:max-content;margin-bottom:24px}.admin-panel{margin-top:18px;overflow:hidden}.admin-toolbar{justify-content:space-between;align-items:center;gap:20px;padding:21px;display:flex}.admin-toolbar .btn{padding:10px 14px;font-size:11px}.admin-helper{color:#9aaa89;font-size:11px;line-height:1.8}.table-actions{flex-wrap:wrap;gap:8px 14px;display:flex}.table-actions button{color:#7b965f;text-underline-offset:3px;white-space:nowrap;font-size:10px;text-decoration:underline}.status-pill{color:#809a63;white-space:nowrap;background:#ecf3e1;border-radius:4px;padding:3px 7px;font-size:9px;display:inline-block}.status-pill.warning{color:#ac9068;background:#f6ecdf}.user-table{min-width:650px}.admin-model-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;padding:0 21px 22px;display:grid}.admin-model-card{background:#fcfdf8;border:1px solid #e1e9d5;border-radius:10px;min-width:0;padding:20px}.admin-model-card>div:first-child{justify-content:space-between;align-items:center;gap:10px;display:flex}.admin-model-card h3{color:#617d4c;font-size:14px;font-weight:550}.admin-model-card p{color:#96a585;overflow-wrap:anywhere;margin-top:12px;font-size:11px;line-height:1.8}.admin-model-card>small{overflow-wrap:anywhere;color:#a9b599;margin-top:6px;font-size:10px;line-height:1.8;display:block}.model-admin-meta{color:#94a87c;flex-wrap:wrap;align-items:center;gap:12px;margin:20px 0;font-size:10px;display:flex}.model-admin-meta b{color:#7b975f;font-weight:550}.admin-dialog{background:#fffef9;border:1px solid #ecf1e3;border-radius:15px;width:480px;max-width:100%;max-height:calc(100dvh - 36px);padding:28px;overflow:auto;box-shadow:0 30px 100px #12372233}.admin-dialog.wide{width:640px}.admin-dialog h2{margin-bottom:24px;font-size:22px;font-weight:500;line-height:1.6}.admin-form>p{color:#8d9f79;font-size:12px;line-height:1.9}.admin-form .form-error{margin:0}.admin-form>.btn{width:max-content;margin-top:4px}.model-form{grid-template-columns:1fr 1fr}.form-full{grid-column:1/-1}.admin-form .checkbox-label{flex-direction:row;align-items:center;gap:8px}.admin-form .checkbox-label input{accent-color:#7c9b5d;width:15px;height:15px;box-shadow:none;padding:0}.temporary-password{color:#8ea673;flex-direction:column;align-items:flex-start;gap:18px;display:flex}.temporary-password p{color:#879976;font-size:12px;line-height:1.9}.temporary-password code{letter-spacing:1px;overflow-wrap:anywhere;-webkit-user-select:all;user-select:all;color:#607d49;background:#edf3e3;border:1px dashed #cddbb9;border-radius:7px;max-width:100%;padding:15px;font-size:19px}.chat-credit-status{color:#93a67c;flex-shrink:0;align-items:center;gap:6px;margin:0 15px 12px;font-size:9px;line-height:1.7;display:flex}.chat-credit-status.insufficient{color:#ac865e}.message-billing{color:#a1ae91;margin-top:9px;font-size:9px;display:block}.chat-retry{background:#f5f3e8;border:1px solid #e8e3d1;border-radius:6px;margin-top:12px;padding:12px}.chat-retry p{color:#9a9579;margin-bottom:9px;font-size:10px;line-height:1.8}.chat-retry .text-button{font-size:10px}.chat-panel .chat-input textarea:disabled{opacity:.65}.settings-panel .llm-catalog-row>div{flex-wrap:wrap;justify-content:flex-end}.settings-panel .llm-catalog-row b{font-size:9px}@media (width<=1100px){.auth-story{padding:35px}.auth-story h1{font-size:35px}.auth-page{grid-template-columns:1fr 1fr}.admin-model-grid{grid-template-columns:1fr}.credit-summary p{max-width:200px}.topbar .version-badge{display:none}}@media (width<=720px){.auth-page{display:block}.auth-story{min-height:auto;padding:26px}.auth-story-body{padding:25px 0 4px}.auth-story h1{margin:13px 0;font-size:28px;line-height:1.5}.auth-story-body>p{font-size:12px}.auth-story .pill,.auth-promises,.auth-story>small{display:none}.auth-story:after{font-size:190px;bottom:-15px;right:-10px}.auth-form-panel{padding:35px 26px 45px}.auth-form-card{width:100%;max-width:410px}.auth-form-card h2{font-size:24px}.auth-tabs{margin-top:25px}.password-gate-card{padding:25px}.credit-summary{flex-wrap:wrap;gap:16px;padding:23px}.credit-summary p{width:100%;max-width:none;margin:0}.credit-summary strong{font-size:32px}.admin-toolbar{flex-wrap:wrap;gap:12px;padding:16px}.admin-toolbar .search-input{flex:1;min-width:150px}.admin-helper{font-size:10px}.admin-model-grid{padding:0 16px 17px}.admin-tabs{width:100%}.admin-tabs button{flex:1;font-size:11px}.admin-dialog{padding:22px}.model-form{grid-template-columns:1fr}.form-full{grid-column:auto}.data-table th,.data-table td{padding:13px 15px}.ledger-panel .table-scroll{border-radius:0 0 12px 12px}.credit-badge{gap:5px;padding:6px 9px}.credit-badge span{display:none}.chat-panel{height:780px}.topbar-actions{gap:10px}}
