.table-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.table-options button{text-align:left;display:flex;flex-direction:column;gap:7px;min-width:0}.table-options strong{font-size:13px;color:#e3c893}.table-options span{font-size:12px}.table-options small{font-size:10px;color:#99b09f}.table-hud button{padding:4px 8px;font-size:10px;line-height:1.2}@media(max-width:480px){.table-options{grid-template-columns:1fr}.table-hud button{font-size:9px}}:root{font-family:Inter,PingFang SC,Microsoft YaHei,sans-serif;color:#eae7d9;background:#07130f;font-synthesis:none;--gold:#d9b76f;--muted:#90a397;--border:#ffffff12;--green:#244f3c}*{box-sizing:border-box}body{margin:0;width:100%;height:100dvh;overflow:hidden}button,input,select{font:inherit}button{cursor:pointer;border:1px solid #ffffff22;background:#152820;color:#eae7d9;border-radius:8px;padding:9px 13px;transition:background .15s,border-color .15s}button:hover{background:#274435;border-color:#d9b76f70}button:disabled{cursor:not-allowed;opacity:.36}button:focus-visible{outline:2px solid var(--gold);outline-offset:2px}.primary{background:#d9b76f;color:#17231b;border-color:#e6c884;font-weight:800}.primary:hover{background:#efcf86}.danger{color:#e7a29a;border-color:#90433980}.link{border:0;background:transparent;color:var(--gold)}.game{height:100dvh;display:grid;grid-template-rows:72px minmax(0,1fr) 192px 29px;padding:0 25px;max-width:1800px;margin:auto}header{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--border);gap:15px}.brand{display:flex;gap:12px;align-items:center}.brand>span{font-size:32px;color:var(--gold)}.brand strong{font-family:"Noto Serif SC",serif;font-size:22px;letter-spacing:2px}.brand small{display:block;font-size:9px;letter-spacing:2px;color:var(--muted);margin-top:2px}.bankroll{display:grid;grid-template-columns:auto auto;align-items:baseline;gap:4px 8px}.bankroll strong{color:var(--gold);font-size:24px;font-variant-numeric:tabular-nums}.bankroll small{font-size:11px;color:var(--muted)}.progress{height:3px;background:#ffffff12;grid-column:1/3;border-radius:4px}.progress i{display:block;height:100%;background:var(--gold);min-width:1px}nav{display:flex;gap:8px}nav button{font-size:12px;padding:7px 12px}.mobile-log{display:none}main{display:grid;grid-template-columns:minmax(0,1fr) 270px;gap:20px;min-height:0;padding:16px 0 12px}.table-scene{position:relative;min-height:0;overflow:hidden;border-radius:18px;background:radial-gradient(ellipse at center,#152d20 0,#0e1e16 55%,#0a1612 85%);border:1px solid #ffffff0e}.table-hud{position:absolute;z-index:3;top:12px;left:20px;right:20px;display:flex;justify-content:space-between;color:#a5b9a9;font-size:11px;letter-spacing:.5px}.felt{position:absolute;top:11%;left:7%;width:86%;height:79%;border-radius:48%;background:radial-gradient(ellipse,#286346 0,#1d5139 55%,#143825);box-shadow:0 0 0 10px #2d3022,0 0 0 12px #7c6b4250,0 14px 50px #000a,inset 0 3px 20px #091e14;transform:perspective(1200px) rotateX(6deg)}.felt:after{content:"SUPERPOWER HOLD’EM";position:absolute;left:0;right:0;bottom:23%;text-align:center;font-family:serif;color:#ddc99424;font-size:18px;letter-spacing:8px}.felt-line{position:absolute;inset:8%;border:1px solid #aec8b622;border-radius:48%}.seat{position:absolute;z-index:4;width:175px;text-align:center;transform:translate(-50%,-50%);background:linear-gradient(#112c21ee,#0b1b15f5);border:1px solid #a6c9b32c;border-radius:12px;padding:8px 10px;box-shadow:0 6px 20px #0005}.seat-0{left:50%;top:84%;width:244px;display:grid;grid-template-columns:93px 1fr;column-gap:10px;text-align:left;padding:9px 12px}.seat-0 .seat-top{grid-column:1/3}.seat-0 .seat-cards{grid-column:1;grid-row:2/6;justify-content:flex-start;align-self:center}.seat-0 .card{width:41px;height:60px}.seat-0 .stack{grid-row:2;grid-column:2}.seat-0 .limbs{grid-row:3;grid-column:2;flex-wrap:wrap}.seat-0 .seat-rule{grid-row:4;grid-column:2}.seat-0 .npc-powers{grid-column:2;grid-row:5}.seat-1{left:16%;top:47%}.seat-2{left:50%;top:19%}.seat-3{left:84%;top:47%}.seat.active{border:1px solid var(--gold);box-shadow:0 0 0 3px #d9b76f15,0 0 24px #d9b76f22}.seat.folded:not(.seat-0){opacity:.65}.seat.eliminated{opacity:.4}.seat-top{display:flex;align-items:center;justify-content:space-between;gap:6px;margin-bottom:5px;font-size:12px}.status{font-size:9px;color:var(--muted)}.active .status{color:var(--gold)}.dealer{width:17px;height:17px;border-radius:50%;display:inline-grid;place-items:center;background:#e5dfca;color:#203126;font-size:10px;font-weight:800}.seat-cards{display:flex;justify-content:center;gap:5px}.card{width:49px;height:69px;flex-shrink:0;position:relative;border-radius:6px;background:linear-gradient(135deg,#fffdf3,#eae9d8);color:#152a22;border:1px solid #ffffff70;box-shadow:0 4px 8px #0004;text-align:left;transition:transform .15s}.card>span{position:absolute;left:5px;top:4px;font-family:Georgia,serif;font-size:18px;font-weight:700;line-height:1}.card>span i{display:block;font-size:14px;font-style:normal;text-align:center}.card>b{position:absolute;bottom:7px;right:6px;font-size:29px;font-family:Georgia,serif}.card.red{color:#b24438}.card.small{width:32px;height:43px}.card.small>span{font-size:12px;left:3px;top:3px}.card.small>span i{font-size:10px}.card.small>b{font-size:17px;bottom:4px;right:3px}.card.back{color:#d9b76f;background:repeating-linear-gradient(45deg,#244d39,#244d39 3px,#1b3d2d 3px 6px);border:3px solid #c8b888}.card.back>span{left:0;right:0;top:50%;transform:translateY(-50%);text-align:center;font-size:22px}.card.empty{border:1px dashed #d6e5d536;background:#0d241466;box-shadow:none;color:#9bc5a24d}.card.empty span{position:absolute;left:0;right:0;top:50%;transform:translateY(-50%);text-align:center}.card.locked{outline:2px solid #c98e5b}.card em{position:absolute;bottom:2px;left:3px;font-style:normal;font-size:8px;color:#9b4c26}.community{position:absolute;z-index:3;left:50%;top:49%;transform:translate(-50%,-50%);text-align:center;min-width:282px}.board-cards{display:flex;gap:7px;justify-content:center}.table-caption{margin-bottom:12px;font-size:11px;color:#c7d1be;letter-spacing:1px}.table-caption span{color:var(--gold)}.pot{margin-top:12px;display:flex;justify-content:center;align-items:center;gap:9px}.pot>span{font-size:10px;color:#b6cbb7}.pot>b{font-size:23px;font-family:Georgia,serif;color:#eee0b6}.chips{display:flex;align-items:center;gap:2px}.chips i,.chip{display:inline-block;width:15px;height:15px;border-radius:50%;border:3px dashed #ecc886;background:#896429;box-shadow:0 2px #644717}.chips i:nth-child(2){background:#5a9480;border-color:#c4edcc}.chips i:nth-child(3){background:#8a3d36;border-color:#edb4a4}.stack{font-size:14px;font-weight:700;margin-top:5px;white-space:nowrap}.stack .chip{height:10px;width:10px;border-width:2px;margin-right:5px}.stack small{font-size:9px;font-weight:400;color:#91ab96;display:block;margin-top:2px}.limbs{display:flex;gap:3px;justify-content:center;margin-top:6px}.limbs span{font-size:8px;line-height:14px;color:#83a08a;border:1px solid #53765c4d;border-radius:3px;padding:0 3px}.limbs span.hurt{color:#e2b38a;border-color:#bd704250;background:#8d482a38}.seat-rule{font-size:8px;color:#819c88;margin-top:4px}.npc-powers{display:flex;gap:3px;justify-content:center;flex-wrap:wrap;margin-top:4px}.npc-powers span{font-size:8px;color:#ddc58c}.spent{opacity:.5}.hand-name{color:var(--gold);font-size:10px;margin-top:3px}.roulette{margin-top:9px;color:#bbceb9;font-size:9px;animation:reveal .4s ease-out}.roulette.hit{color:#e2b38a}.slots{display:flex;gap:5px;justify-content:center;margin-bottom:4px}.slots i{width:7px;height:7px;border-radius:50%;background:#617b67}.slots i.mark{background:#d6b574;box-shadow:0 0 5px #c49854}.settled-banner{position:absolute;z-index:6;bottom:7px;left:12px;right:12px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 12px;border-radius:8px;background:#08160df5;border:1px solid #ba9b5155}.settled-banner span{font-size:10px;color:#d6caa9;max-height:30px;overflow:auto}.settled-banner button{font-size:11px;white-space:nowrap;padding:8px}aside{min-height:0;display:flex;flex-direction:column;border:1px solid var(--border);border-radius:12px;background:#0b1b13;overflow:hidden}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 14px;border-bottom:1px solid var(--border);font-size:12px}.section-heading small{font-size:9px;color:var(--muted)}.event-list{min-height:0;overflow-y:auto;flex:1;padding:5px 13px;scrollbar-width:thin;scrollbar-color:#456d52 transparent}.event{display:flex;gap:8px;border-bottom:1px solid #ffffff08;padding:8px 0}.event>span{font-size:9px;color:#54775e;padding-top:3px}.event p{margin:0;font-size:11px;line-height:1.6;color:#a3b8a7}.event.power p{color:#dac391}.event.roulette p{color:#d0ab8c}.event.result p{color:#d0dab7}.empty-log{padding:20px;font-size:12px;color:var(--muted);line-height:1.9}.controls{display:grid;grid-template-columns:minmax(320px,1fr) 1.2fr;gap:20px;min-height:0;padding-bottom:8px}.decision,.ability-bar{border:1px solid var(--border);border-radius:12px;background:#0f2118;min-height:0;overflow:hidden}.decision{padding:12px 16px}.decision-title{height:24px;font-size:11px;color:#d6ceb5;white-space:nowrap;overflow:auto}.bet-buttons{display:flex;gap:7px;margin-bottom:9px}.bet-buttons button{flex:1;font-size:13px}.raise-row{display:flex;gap:6px;align-items:center}.raise-row label{font-size:9px;color:var(--muted);display:flex;gap:5px;align-items:center;flex:1;min-width:0;white-space:nowrap}input,select{min-width:0;border:1px solid #496b50;background:#09190f;color:#e7dfc8;border-radius:6px;padding:8px;width:100%;outline-color:var(--gold)}.raise-row input{font-variant-numeric:tabular-nums;font-size:13px}.raise-row button{font-size:11px;padding:8px 9px;white-space:nowrap}.action-foot{font-size:9px;color:#779780;margin-top:8px}.ability-bar{display:flex;flex-direction:column}.ability-list{display:flex;gap:7px;padding:10px 13px;overflow:auto;flex:1;min-height:0;align-items:flex-start;scrollbar-width:thin}.power-tile{padding:9px 11px;min-width:106px;text-align:left;border-color:#8a77404a;background:linear-gradient(135deg,#243425,#17281b)}.power-tile>span{display:block;color:var(--gold);font-size:15px;margin-bottom:4px}.power-tile strong{display:block;font-size:12px}.power-tile small{font-size:9px;display:block;color:#92a58c;margin-top:4px}.ability-note{font-size:9px;color:#74917b;padding:0 14px 8px}.subtle{font-size:11px;color:var(--muted);line-height:1.6}footer{display:flex;justify-content:space-between;font-size:9px;color:#647f6d;gap:12px;align-items:center;white-space:nowrap;overflow:hidden}.overlay{position:fixed;inset:0;z-index:20;display:flex;align-items:center;justify-content:center;background:#030e09c9;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);padding:22px}.modal{position:relative;max-height:calc(100dvh - 44px);overflow:auto;width:620px;max-width:100%;border:1px solid #9b85515c;border-radius:18px;background:linear-gradient(140deg,#172c1e,#081910);box-shadow:0 30px 120px #000a;padding:28px 32px;scrollbar-width:thin}.choice-modal{text-align:center;width:790px}.eyebrow{font-size:10px;color:var(--gold);letter-spacing:2px}.modal h1{font-family:"Noto Serif SC",serif;font-size:43px;color:#efdbaf;margin:12px 0}.modal p{color:#a7b9a5;font-size:12px;line-height:1.8}.choices{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:22px 0}.choices button{text-align:left;min-height:98px;padding:12px 14px;background:linear-gradient(135deg,#29402b,#12241a);border-color:#c0a36835}.choices button>span{color:var(--gold);display:block;font-size:16px}.choices button strong{display:block;color:#eee0bd;font-size:14px;margin:5px 0}.choices button small{display:block;color:#99ac92;font-size:10px;line-height:1.5}.choices button:hover{border-color:var(--gold);transform:translateY(-1px)}.intro-foot{font-size:10px;line-height:1.8;color:#829a81}.panel-overlay{z-index:30}.detail-modal{width:720px;padding-top:55px}.modal h2{font-family:"Noto Serif SC",serif;font-size:20px;color:#e3c893;margin:18px 0 10px}.close{position:absolute;right:18px;top:14px;font-size:11px}.help-powers{display:grid;grid-template-columns:1fr 1fr;gap:0 15px}.help-powers p{margin:5px 0;font-size:11px}.help-powers strong{color:#d8c498}.modal details{font-size:12px;color:#c5bb9d}.modal summary{cursor:pointer}.ending{text-align:center}.ending>b{display:block;font-size:36px;color:var(--gold);margin:22px 0}.ending b small{font-size:12px}.ending button{margin:8px 5px}.target-cards{display:flex;gap:14px;justify-content:center;margin:20px 0}.target-cards button{display:flex;flex-direction:column;gap:8px;align-items:center}.target-cards button.selected{border-color:var(--gold);background:#4d4a2c}.target-cards button>span{font-size:10px}.target-cards .card{width:65px;height:90px}.editor-label{display:flex;gap:15px;align-items:center;justify-content:space-between;font-size:12px;color:#b6c4aa;margin:10px 0}.editor-label select{max-width:190px}.power-modal{width:420px;padding-top:48px}.power-modal>.modal-body>button{width:100%}.toast{position:fixed;z-index:45;bottom:35px;left:50%;transform:translate(-50%);max-width:90%;padding:10px 16px;border-radius:8px;background:#4a3421;border:1px solid #e0b16b;color:#efd8b1;font-size:12px;pointer-events:none}.no-cards{font-size:11px;color:var(--muted);padding:12px}@keyframes reveal{0%{opacity:.1;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}@media(max-width:1100px){.game{padding:0 14px;grid-template-rows:64px minmax(0,1fr) 192px 24px}main{grid-template-columns:minmax(0,1fr) 218px;gap:12px}.seat{width:143px;padding:7px}.seat-0{width:218px}.seat-1{left:14%}.seat-3{left:86%}.community{min-width:245px}.community .card{width:42px;height:59px}.board-cards{gap:5px}.controls{gap:12px;grid-template-columns:1fr 1fr}.raise-row label{font-size:0}.raise-row button{padding:8px}.bankroll strong{font-size:20px}.bankroll small{font-size:9px}.decision{padding:11px}.event p{font-size:10px}.seat-rule{font-size:7px}}@media(max-width:850px){main{grid-template-columns:1fr}aside{display:none}.mobile-log{display:block}.seat-1{left:15%}.seat-3{left:85%}.brand strong{font-size:18px}.bankroll small{display:none}.bankroll{grid-template-columns:1fr}.progress{grid-column:1}.controls{grid-template-columns:1fr 1fr}}@media(max-width:600px){.game{padding:0 7px;grid-template-rows:54px minmax(0,1fr) 212px 20px}header{gap:5px}.brand{gap:5px}.brand>span{font-size:24px}.brand strong{font-size:15px;letter-spacing:0}.brand small{font-size:6px;letter-spacing:1px}.bankroll strong{font-size:15px}.bankroll{gap:3px}.bankroll .progress{width:75px}nav{gap:4px}nav button{font-size:10px;padding:6px}.table-hud{top:9px;left:10px;right:10px;font-size:9px}main{padding:8px 0;gap:0}.table-scene{border-radius:12px}.seat{width:105px;padding:5px;border-radius:8px}.seat-top{font-size:10px;gap:2px;margin-bottom:3px}.seat-top .status{font-size:7px}.seat-1{left:15%;top:44%}.seat-2{top:20%;left:50%}.seat-3{left:85%;top:44%}.seat-0{left:50%;top:84%;width:221px;grid-template-columns:93px 1fr}.seat-0 .card{width:40px;height:57px}.seat:not(.seat-0) .seat-cards{gap:3px}.seat:not(.seat-0) .card{width:24px;height:33px}.seat:not(.seat-0) .card>span{font-size:10px}.seat:not(.seat-0) .card i{font-size:8px}.seat:not(.seat-0) .card b{font-size:13px;right:2px;bottom:2px}.stack{font-size:11px;margin-top:3px}.stack small{font-size:7px}.limbs{gap:2px;margin-top:4px}.limbs span{font-size:6px;padding:0 2px;line-height:11px}.npc-powers span{font-size:7px}.seat-rule{font-size:6px}.community{top:53%;min-width:198px}.community .card{width:34px;height:49px}.community .card>span{font-size:14px;left:3px;top:3px}.community .card>span i{font-size:11px}.community .card>b{font-size:19px;right:4px;bottom:6px}.board-cards{gap:4px}.table-caption{font-size:8px;margin-bottom:7px}.pot{margin-top:6px;gap:6px}.pot>b{font-size:18px}.pot>span{font-size:8px}.chips i{height:11px;width:11px;border-width:2px}.roulette{font-size:7px;margin-top:5px}.slots i{height:5px;width:5px}.felt{left:5%;width:90%;top:13%;height:76%;box-shadow:0 0 0 6px #2d3022,0 0 0 7px #7c6b4250,0 10px 25px #0009}.felt:after{font-size:8px;letter-spacing:3px;bottom:24%}.controls{display:grid;grid-template-columns:1fr;grid-template-rows:119px 82px;gap:5px;padding-bottom:6px}.decision{padding:7px 10px}.decision-title{height:18px;font-size:9px}.bet-buttons{margin-bottom:5px;gap:5px}.bet-buttons button{font-size:11px;padding:6px}.raise-row{gap:5px}.raise-row input{font-size:12px;padding:5px}.raise-row button{font-size:10px;padding:6px 9px}.action-foot{font-size:7px;margin-top:4px}.ability-bar{display:grid;grid-template-columns:95px minmax(0,1fr);grid-template-rows:minmax(0,1fr);align-items:center}.ability-bar .section-heading{padding:9px;border:0;display:block}.ability-bar .section-heading strong{font-size:11px}.ability-bar .section-heading small{font-size:7px;display:block;margin-top:4px}.ability-list{padding:5px 8px;align-self:stretch;gap:5px}.power-tile{min-width:88px;padding:7px 9px}.power-tile>span{font-size:11px;margin:0}.power-tile strong{font-size:10px;margin-top:3px}.power-tile small{font-size:7px;margin-top:3px}.ability-note{display:none}footer{font-size:7px}footer span:last-child{display:none}.overlay{padding:12px}.modal{padding:20px 17px;max-height:calc(100dvh - 24px);border-radius:13px}.choice-modal h1{font-size:31px}.eyebrow{font-size:8px;letter-spacing:1px}.choices{gap:6px;margin:14px 0}.choices button{padding:9px;min-height:94px}.choices button strong{font-size:12px}.choices button small{font-size:9px}.intro-foot{font-size:8px}.choice-modal p{font-size:10px}.detail-modal,.power-modal{padding-top:48px}.help-powers{grid-template-columns:1fr}.settled-banner{bottom:4px;left:5px;right:5px;padding:5px;gap:5px}.settled-banner span{font-size:8px;max-height:25px}.settled-banner button{font-size:9px;padding:6px}.toast{bottom:24px;font-size:10px}}@media(max-width:600px){.seat-1,.seat-2,.seat-3{top:24%;width:98px}.seat-1{left:16%}.seat-2{left:50%}.seat-3{left:84%}.community{top:54%;min-width:0}.seat-0{top:84%}}@media(max-height:690px)and (min-width:601px){.game{grid-template-rows:56px minmax(0,1fr) 167px 20px}.seat{padding:5px;transform:translate(-50%,-50%) scale(.85)}.seat-2{top:21%}.community{transform:translate(-50%,-50%) scale(.9)}.decision{padding:8px}.ability-note{font-size:8px}.power-tile{padding:6px 10px}.decision-title{height:20px}.section-heading{padding:8px 12px}.seat-0{top:84%}}
