:root{color:#f8fafc;background:#0f172a;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-weight:400;line-height:1.5}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;margin:0}button{font:inherit}#root{min-height:100vh}.table-page{background:radial-gradient(circle at 50% 35%,#fbbf241f,#0000 20%),radial-gradient(circle at top,#14532d,#0f172a 60%);flex-direction:column;gap:16px;min-height:100vh;padding:24px;display:flex}.floating-panel{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);position:relative;overflow:hidden}.floating-panel:before{content:"";pointer-events:none;background:linear-gradient(#ffffff0f,#0000 28%);position:absolute;inset:0}.has-layered-motion{isolation:isolate}.table-felt{background:radial-gradient(circle at 50% 34%,#facc151f,#0000 20%),radial-gradient(circle,#16653447,#0f172ae6 72%),linear-gradient(145deg,#036944f5,#0f172aeb)}.table-page h1,.coach-panel h2,.table-center h2{margin:0}.panel{background:#0f172ab8;border:1px solid #94a3b859;border-radius:16px;box-shadow:0 10px 30px #0f172a40}.table-center{position:relative}.table-felt:before{content:"";pointer-events:none;border:1px solid #facc1524;border-radius:20px;position:absolute;inset:10px}.status-bar{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;padding:14px 18px;display:grid}.status-card{background:linear-gradient(#1e293beb,#0f172ae0);border:1px solid #94a3b838;border-radius:14px;flex-direction:column;gap:6px;padding:12px 14px;display:flex}.status-label,.center-kicker,.center-label,.center-focus-label,.coach-label{color:#93c5fd;font-size:.85rem}.status-value{color:#f8fafc;font-size:1rem}.table-layout{flex:1;grid-template-columns:minmax(180px,.88fr) minmax(0,1.65fr) minmax(180px,.88fr);grid-template-areas:".north coach""west center east""west log east""south south action";align-items:stretch;gap:16px;display:grid}.table-layout>:first-child{grid-area:west}.table-layout>:nth-child(2){grid-area:north}.table-layout>:nth-child(3){grid-area:east}.table-center{grid-area:center}.coach-panel{grid-area:coach}.game-log{grid-area:log}.player-hand{grid-area:south}.action-panel{grid-area:action}.opponent-view,.player-hand,.coach-panel,.table-center,.action-panel{padding:16px}.opponent-view,.player-hand{position:relative}.opponent-view,.player-hand,.coach-panel,.game-log,.table-center,.action-panel{animation:.22s ease-out panelFadeUp}.player-header,.player-meta,.discard-river-header{flex-wrap:wrap;justify-content:space-between;gap:8px;display:flex}.player-meta{color:#cbd5e1;margin-top:8px;font-size:.95rem}.player-hand.is-active,.opponent-view.is-active,.table-center{border-color:#facc15b3;box-shadow:0 14px 34px #facc152e}.player-hand.is-active,.opponent-view.is-active{position:relative;transform:translateY(-2px)}.player-hand.is-active:after,.opponent-view.is-active:after{content:"当前操作";color:#fde68a;letter-spacing:.04em;background:#facc152e;border-radius:999px;padding:4px 10px;font-size:.8rem;position:absolute;top:12px;right:14px}.phase-prompt,.center-prompt,.center-kicker,.center-focus-label{margin:12px 0 0}.center-stage{justify-content:space-between;align-items:center;gap:12px;display:flex}.center-focus-strip{background:linear-gradient(135deg,#1e40af47,#0f172ab3);border:1px solid #93c5fd47;border-radius:14px;flex-direction:column;gap:4px;margin-top:14px;padding:14px 16px;display:flex}.table-center.is-claiming .center-focus-strip{background:linear-gradient(135deg,#78350f80,#451a03b8);border-color:#fbbf2473}.table-center.is-finished .center-focus-strip{background:linear-gradient(135deg,#064e3b8c,#0f172ab8)}.linked-preview-card{background:linear-gradient(135deg,#0f172ae0,#1e293bb3);border:1px solid #94a3b838;border-radius:16px;justify-content:space-between;align-items:center;gap:12px;margin-top:14px;padding:14px 16px;display:flex}.linked-preview-card.is-selected{border-color:#facc157a;box-shadow:0 12px 24px #f59e0b24}.linked-preview-card.is-recommended{border-color:#60a5fa70;box-shadow:0 12px 24px #3b82f624}.linked-preview-card.is-last-discard{border-color:#34d39966;box-shadow:0 12px 24px #10b9811f}.linked-preview-copy{color:#e2e8f0;margin:6px 0 0}.linked-preview-tile{background:linear-gradient(#fffffffa,#e2e8f0eb);border-radius:16px;width:60px;min-height:78px;padding:6px;box-shadow:0 10px 18px #0f172a47}.table-compass{background:linear-gradient(#16653433,#0f172a1a),radial-gradient(circle,#1e293beb,#0f172ae0);border:1px solid #94a3b838;border-radius:24px;grid-template-columns:minmax(84px,1fr) minmax(180px,1.45fr) minmax(84px,1fr);grid-template-areas:".north.""west pot east"".south.""river river river";align-items:center;gap:12px;margin-top:16px;padding:18px;display:grid}.compass-seat{color:#e2e8f0;background:#0f172ae0;border:1px solid #94a3b838;border-radius:999px;justify-self:center;padding:8px 12px;font-size:.86rem}.compass-seat.north{grid-area:north}.compass-seat.west{grid-area:west}.compass-seat.east{grid-area:east}.compass-seat.south{grid-area:south}.center-pot{grid-area:pot;place-items:center;display:grid}.center-pot-ring{text-align:center;background:radial-gradient(circle at 35% 35%,#1e40af57,#0f172af2);border:2px solid #facc1580;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;gap:4px;min-width:160px;min-height:160px;padding:18px;display:flex;position:relative}.center-pot-ring strong{color:#fef3c7;font-size:1.35rem}.center-pot-subtle{color:#cbd5e1;font-size:.82rem}.center-last-tile{background:linear-gradient(#fffffffa,#e2e8f0eb);border-radius:14px;width:56px;min-height:74px;margin-top:8px;padding:6px;transition:transform .18s,box-shadow .18s;box-shadow:0 10px 18px #0f172a59}.center-last-tile.is-spotlight{border:1px solid #facc15bf;animation:2.1s ease-in-out infinite spotlightPulse;box-shadow:0 0 0 3px #facc1529,0 14px 28px #0f172a61}.center-last-tile.seat-from-1{transform:translate(-4px)rotate(-4deg)}.center-last-tile.seat-from-2{transform:translateY(-4px)}.center-last-tile.seat-from-3{transform:translate(4px)rotate(4deg)}.table-river-layout{grid-area:river;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.table-river-seat{background:#0f172a7a;border:1px solid #94a3b82e;border-radius:16px;padding:10px 12px;animation:2.8s ease-in-out infinite riverGlow}.table-river-seat header,.opponent-wall-header{color:#cbd5e1;justify-content:space-between;gap:8px;font-size:.84rem;display:flex}.table-river-row,.opponent-wall-row{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}.table-river-empty{color:#94a3b8;font-size:.82rem}.table-river-tile{background:linear-gradient(#f8fafcf5,#e2e8f0e6);border-radius:10px;width:34px;min-height:46px;padding:4px;transition:transform .16s,box-shadow .16s;animation:.22s ease-out both riverTileSlideIn;position:relative}.table-river-tile.is-latest-discard{transform:translateY(-2px)scale(1.02);box-shadow:0 12px 24px #facc153d}.table-river-seat.seat-1 .table-river-tile.is-latest-discard{transform:translate(-2px)translateY(-2px)scale(1.02)rotate(-4deg)}.table-river-seat.seat-2 .table-river-tile.is-latest-discard{transform:translateY(-4px)scale(1.03)}.table-river-seat.seat-3 .table-river-tile.is-latest-discard{transform:translate(2px)translateY(-2px)scale(1.02)rotate(4deg)}.table-river-chip{color:#111827;background:#facc15eb;border-radius:999px;padding:1px 5px;font-size:.56rem;font-weight:800;position:absolute;bottom:-7px;right:-4px}.table-river-layout.has-layered-motion .table-river-tile:hover{transform:translateY(-2px);box-shadow:0 10px 20px #0f172a3d}.center-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:16px;display:grid}.center-grid div{background:#1e293bb8;border-radius:12px;flex-direction:column;gap:4px;padding:12px;display:flex}.opponent-wall,.discard-river{background:#02061761;border:1px solid #94a3b82e;border-radius:14px;margin-top:14px;padding:12px}.opponent-wall.has-depth-stack{position:relative;overflow:hidden}.opponent-wall.has-depth-stack:after{content:"";pointer-events:none;background:radial-gradient(circle,#0f172a52,#0000 72%);border-radius:999px;height:18px;position:absolute;inset:auto 10px 8px}.seat-ring-west{transform:rotate(-5deg)translate(6px)}.seat-ring-east{transform:rotate(5deg)translate(-6px)}.seat-ring-north{transform:translateY(2px)scale(.985)}.opponent-wall.stacked-sideways .opponent-wall-row{gap:3px}.opponent-wall.stacked-horizontal .opponent-wall-row{gap:4px}.opponent-wall .opponent-wall-row.is-depth-row{opacity:.44}.opponent-wall.stacked-sideways .opponent-wall-row.is-depth-row{transform:translate(6px)translateY(2px)}.opponent-wall.stacked-horizontal .opponent-wall-row.is-depth-row{transform:translateY(4px)}.opponent-view.seat-west .opponent-wall-row,.opponent-view.seat-east .opponent-wall-row,.opponent-view.seat-north .opponent-wall-row{align-items:center}.opponent-view.seat-west .opponent-wall-row,.opponent-view.seat-east .opponent-wall-row{flex-direction:column;width:24px;margin-inline:auto}.opponent-view.seat-west .opponent-tile-back,.opponent-view.seat-east .opponent-tile-back{width:28px;height:16px}.seat-shadow-west{box-shadow:inset 10px 0 18px #0f172a29}.seat-shadow-east{box-shadow:inset -10px 0 18px #0f172a29}.seat-shadow-north{box-shadow:inset 0 -10px 18px #0f172a29}.opponent-view.seat-west .opponent-wall-row .opponent-tile-back:nth-child(odd),.opponent-view.seat-east .opponent-wall-row .opponent-tile-back:nth-child(odd){transform:translate(-2px)}.opponent-view.seat-west .opponent-wall-row .opponent-tile-back:nth-child(2n),.opponent-view.seat-east .opponent-wall-row .opponent-tile-back:nth-child(2n){transform:translate(2px)}.opponent-view.seat-north .opponent-wall-row .opponent-tile-back:nth-child(3n+2){transform:translateY(-2px)}.opponent-view.seat-west .opponent-tile-back{animation:.18s ease-out dealSlideHorizontal}.opponent-view.seat-east .opponent-tile-back{animation:.18s ease-out dealSlideHorizontalReverse}.opponent-view.seat-north .opponent-tile-back{animation:.18s ease-out dealSlideVertical}.opponent-view.seat-west .discard-grid,.opponent-view.seat-east .discard-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.opponent-view.seat-west .discard-grid .discard-tile,.opponent-view.seat-east .discard-grid .discard-tile{min-height:34px}.opponent-view.seat-west .discard-grid .discard-tile{transform:rotate(-90deg)}.opponent-view.seat-east .discard-grid .discard-tile{transform:rotate(90deg)}.opponent-view.seat-north .discard-grid .discard-tile{transform:rotate(180deg)}.opponent-view.seat-west .player-header,.opponent-view.seat-east .player-header,.opponent-view.seat-north .player-header{align-items:center}.opponent-view.seat-west .player-header:after,.opponent-view.seat-east .player-header:after,.opponent-view.seat-north .player-header:after{color:#93c5fd;font-size:.78rem}.opponent-view.seat-west .player-header:after{content:"左侧牌墙"}.opponent-view.seat-north .player-header:after{content:"对家横牌"}.opponent-view.seat-east .player-header:after{content:"右侧牌墙"}.discard-river-header{color:#cbd5e1;font-size:.9rem}.discard-river-empty{color:#94a3b8;margin:12px 0 0}.discard-grid{grid-template-columns:repeat(auto-fit,minmax(34px,1fr));gap:8px;margin-top:12px;display:grid}.discard-tile{color:#0f172a;background:linear-gradient(#f8fafcf2,#e2e8f0e0);border-radius:10px;place-items:center;min-height:48px;padding:4px;display:grid;box-shadow:inset 0 -2px #94a3b859}.opponent-tile-back{background:linear-gradient(#1e40aff2,#0f172afa);border:1px solid #bfdbfe38;border-radius:8px;width:14px;height:42px;box-shadow:inset 0 0 0 1px #ffffff0f}.opponent-tile-back.is-depth-tile{filter:saturate(.78)brightness(.88);opacity:.72}.setup-actions,.action-list{flex-wrap:wrap;gap:10px;margin-top:14px;display:flex}.action-console{background:linear-gradient(#0f172ae6,#1e293bd1);border-color:#facc1547}.action-console-header,.result-summary-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.action-console-kicker{color:#fbbf24;letter-spacing:.08em;text-transform:uppercase;margin:0 0 4px;font-size:.78rem}.action-console-badge{color:#dbeafe;background:#1e40af3d;border-color:#93c5fd61}.result-summary-card{background:linear-gradient(135deg,#16653447,#0f172ae6);border-color:#facc153d;border-radius:18px;margin-top:16px;padding:14px 16px}.setup-hint,.action-panel-hint{color:#cbd5e1;margin:10px 0 0;font-size:.92rem}.selection-pill{color:#fde68a;background:#facc1524;border:1px solid #facc154d;border-radius:999px;align-items:center;padding:8px 12px;font-weight:700;display:inline-flex}.dingque-actions .action-button{min-width:96px}.tile-row{flex-wrap:wrap;gap:10px;margin-top:14px;display:flex}.tile-row.is-fanned{scrollbar-width:thin;flex-wrap:nowrap;align-items:flex-end;padding:6px 2px 10px;overflow-x:auto}.tile-row.is-fanned .tile-button{margin-left:-6px}.tile-row.is-fanned .tile-button:first-child{margin-left:0}.tile-row.is-fanned .tile-button:nth-child(odd){transform:translateY(4px)}.tile-row.is-fanned .tile-button:nth-child(2n){transform:translateY(-1px)}.tile-row.has-layered-motion .tile-button{animation:.18s ease-out handRiseIn}.player-hand .tile-button.is-interactive:hover,.player-hand .tile-button.is-interactive:focus-visible{transform:translateY(-6px)}@keyframes hoverFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-2px)}}@keyframes riverGlow{0%,to{box-shadow:inset 0 0 0 1px #94a3b814}50%{box-shadow:inset 0 0 0 1px #facc151f}}@keyframes dealSlideVertical{0%{transform:translateY(-4px)}to{transform:translateY(0)}}@keyframes dealSlideHorizontal{0%{transform:translate(-4px)}to{transform:translate(0)}}@keyframes dealSlideHorizontalReverse{0%{transform:translate(4px)}to{transform:translate(0)}}@keyframes handRiseIn{0%{opacity:.7;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes panelFadeUp{0%{opacity:.7;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes tilePulse{0%,to{transform:translateY(0);box-shadow:0 12px 24px #facc153d}50%{transform:translateY(-3px);box-shadow:0 18px 32px #facc1557}}@keyframes riverTileSlideIn{0%{opacity:.72;transform:translateY(8px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes spotlightPulse{0%,to{transform:translateY(0)scale(1)}50%{transform:translateY(-2px)scale(1.03)}}@keyframes focusRing{0%{box-shadow:0 0 #60a5fa57}to{box-shadow:0 0 0 12px #60a5fa00}}.tile-button,.action-button{cursor:pointer;border:1px solid #f8fafc47;border-radius:12px;min-width:58px;padding:12px 10px;transition:transform .16s,box-shadow .16s,border-color .16s,background .16s,opacity .16s}.tile-button{color:#0f172a;background:linear-gradient(#fffdf5,#e7edf4);flex-direction:column;justify-content:center;align-items:center;gap:2px;min-height:92px;display:flex;position:relative;box-shadow:inset 0 -4px #94a3b857,0 10px 18px #0f172a33}.tile-main{font-size:1.65rem;font-weight:800;line-height:1}.tile-main.is-compact{font-size:1rem}.tile-glyph{color:#b91c1c;font-size:.92rem;line-height:1}.tile-glyph.is-compact{font-size:.7rem}.tile-subtitle{color:#334155;font-size:.72rem;line-height:1}.tile-corner{color:#64748b;font-size:.65rem;position:absolute}.tile-corner-top{top:6px;left:8px}.tile-corner-bottom{bottom:6px;right:8px}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.tile-tag{color:#f8fafc;background:#0f172adb;border-radius:999px;padding:2px 8px;font-size:.72rem}.tile-button.is-interactive:hover,.tile-button.is-interactive:focus-visible,.action-button:hover,.action-button:focus-visible{transform:translateY(-2px);box-shadow:0 10px 24px #0f172a47}.tile-row.is-fanned .tile-button.is-interactive:hover,.tile-row.is-fanned .tile-button.is-interactive:focus-visible{transform:translateY(-8px)}.tile-button.is-interactive:active,.action-button:active{transform:translateY(1px)scale(.98)}.tile-button.is-selected,.tile-button.is-recommended,.action-button.primary{color:#111827;background:linear-gradient(#fde68a,#f59e0b);border-color:#facc15e6}.tile-button.is-selected{box-shadow:0 14px 28px #f59e0b42}.tile-button.is-recommended{animation:1.8s ease-in-out infinite tilePulse;box-shadow:0 12px 24px #facc1547}.tile-button.is-focused{border-color:#60a5faf2;animation:.7s ease-out focusRing;box-shadow:0 0 0 3px #60a5fa47}.tile-button.is-armed{border-color:#fbbf24fa;box-shadow:0 0 0 3px #fbbf2438,0 18px 30px #f59e0b38}.tile-button.is-armed:after{content:"出";color:#111827;background:linear-gradient(#facc15,#f59e0b);border-radius:999px;place-items:center;width:24px;height:24px;font-size:.78rem;font-weight:900;display:grid;position:absolute;top:-8px;right:-6px;box-shadow:0 8px 16px #f59e0b47}.tile-button.is-linked-preview{transform:translateY(-4px)}.tile-row.is-fanned .tile-button.is-linked-preview{z-index:2}.action-button{color:#f8fafc;background:#1e293bf2;flex-direction:column;align-items:flex-start;gap:4px;min-width:88px;display:flex}.action-button.is-actionable{position:relative;overflow:hidden}.action-button.is-actionable:after{content:"";pointer-events:none;background:radial-gradient(circle,#ffffff2e,#0000 72%);height:70%;position:absolute;inset:auto -20% -35% 45%}.action-button.secondary{background:linear-gradient(#1e293bf2,#0f172afa);border-color:#60a5fa57}.action-button.ghost{color:#cbd5e1;background:#0f172aa6;border-color:#94a3b83d}.action-button.prominent,.action-button.is-ready{box-shadow:0 14px 28px #facc152e}.action-button.is-pending:disabled{opacity:.72;background:#334155e6}.action-button-kicker,.action-button-hint{color:inherit;opacity:.82;font-size:.72rem}.action-button-label{font-weight:800}.tile-button:disabled,.action-button:disabled{cursor:not-allowed;opacity:.5;box-shadow:none;transform:none}.coach-panel{flex-direction:column;gap:8px;display:flex}.coach-panel p{margin:0}.coach-summary{color:#fef3c7;font-size:1.2rem;font-weight:700}.game-log{padding:16px}.game-log h2,.game-log p,.game-log ol{margin:0}.game-log-list{color:#e2e8f0;flex-direction:column;gap:8px;margin-top:12px;padding-left:20px;display:flex}.game-log-list li.is-latest-event{color:#fef3c7;font-weight:700}@media (width<=1200px) and (orientation:landscape){.table-page{gap:10px;padding:12px;overflow:hidden}.table-page h1{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.status-bar{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#0f172a8a;border-radius:18px;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;padding:10px 12px}.status-card{background:linear-gradient(#0f172ae6,#0f172ab8);border-radius:12px;gap:4px;min-height:0;padding:9px 10px}.status-label,.center-kicker,.center-label,.center-focus-label,.coach-label,.action-console-kicker,.action-button-kicker,.action-button-hint,.center-pot-subtle,.table-river-empty,.discard-river-header,.player-meta,.setup-hint,.action-panel-hint,.game-log-list{font-size:.74rem}.status-value,.coach-summary,.center-pot-ring strong{font-size:1rem}.table-layout{grid-template:"north north north"minmax(108px,auto)"west center east"minmax(0,1fr)"south south south"/minmax(92px,.54fr) minmax(0,1.55fr) minmax(92px,.54fr);gap:10px;min-height:calc(100vh - 112px)}.coach-panel,.game-log,.action-panel{z-index:4;background:linear-gradient(#0f172aeb,#0f172abd);border-radius:18px;width:min(260px,34vw);padding:12px 13px;position:absolute;box-shadow:0 18px 32px #02061757}.coach-panel{grid-area:unset;top:78px;right:12px}.game-log{grid-area:unset;max-height:calc(100vh - 356px);top:230px;right:12px;overflow:auto}.action-panel{grid-area:unset;bottom:148px;right:12px}.opponent-view,.table-center,.player-hand{border-radius:20px;padding:12px}.opponent-view{background:linear-gradient(#0f172acc,#0f172a94);flex-direction:column;gap:8px;min-height:0;display:flex}.opponent-view .player-meta,.opponent-wall-header,.discard-river-header,.opponent-view .discard-river-empty{font-size:.7rem}.opponent-view .player-header strong{font-size:.96rem}.opponent-wall,.discard-river{border-radius:12px;margin-top:0;padding:9px}.discard-grid{gap:5px}.discard-tile{border-radius:8px;min-height:34px;padding:2px}.table-center{border-radius:24px;flex-direction:column;justify-content:space-between;min-height:0;padding:14px;display:flex}.center-stage,.center-focus-strip,.linked-preview-card,.table-compass,.center-grid,.result-summary-card{margin-top:10px}.table-compass{border-radius:18px;grid-template-columns:minmax(68px,.8fr) minmax(132px,1fr) minmax(68px,.8fr);gap:8px;padding:12px}.compass-seat{padding:6px 8px;font-size:.74rem}.center-pot-ring{min-width:124px;min-height:124px;padding:12px}.center-last-tile{width:44px;min-height:60px}.table-river-layout{gap:8px}.table-river-seat{border-radius:12px;padding:8px}.table-river-tile{border-radius:8px;width:28px;min-height:38px;padding:2px}.center-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.center-grid div{border-radius:10px;padding:9px}.result-summary-card{border-radius:16px;padding:12px}.result-settlement ul{margin:8px 0 0;padding-left:18px}.player-hand{background:linear-gradient(#0f172aeb,#0f172ab3),radial-gradient(circle at 50% 0,#facc152e,#0000 48%);padding:12px 14px 14px;box-shadow:0 -10px 30px #0206174d}.player-hand .player-header{align-items:center}.player-hand .phase-prompt{color:#fef3c7;margin:8px 0 0;font-size:.96rem;font-weight:700}.setup-actions,.action-list{gap:8px;margin-top:10px}.tile-row{margin-top:10px}.tile-row.is-fanned{padding:8px 4px 6px}.tile-row.is-fanned .tile-button{margin-left:-12px}.tile-button{border-radius:14px;min-width:66px;min-height:100px;padding:10px 6px}.tile-main{font-size:1.82rem}.tile-glyph{font-size:1rem}.tile-button.is-selected,.tile-button.is-recommended,.tile-button.is-armed{transform:translateY(-8px)}.tile-row.is-fanned .tile-button.is-linked-preview{z-index:3}.action-button{border-radius:12px;flex:116px;min-width:0;padding:10px 9px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media (width<=960px){.table-page{gap:12px;padding:14px}.status-bar,.table-layout,.center-grid,.table-river-layout{grid-template-columns:1fr}.table-layout{grid-template-areas:"center""north""west""east""south""action""coach""log"}.opponent-view,.player-hand,.action-panel,.coach-panel,.game-log,.table-center{border-radius:18px;padding:14px}.seat-ring-west,.seat-ring-east,.seat-ring-north{transform:none}.table-compass{grid-template-columns:1fr;grid-template-areas:"pot""north""west""east""south""river";padding:14px}.compass-seat{text-align:center;justify-self:stretch}.linked-preview-card{align-items:flex-start}.linked-preview-tile{width:54px;min-height:72px}.tile-row{gap:8px}.tile-row.is-fanned{gap:0;margin-inline:-4px;padding-inline:4px}.tile-button{min-width:60px;min-height:78px;padding:10px 6px}.action-button{flex:120px;min-width:0}.action-console-header,.result-summary-header{align-items:flex-start}.result-summary-card{padding:12px 14px}}
