:root{color-scheme:dark;--ink:#efe6d1;--muted:#a59f89;--dim:#8d9887;--gold:#e3bc79;--line:#ccad702b;--size:clamp(48px,6.1vw,87px);--seat-h:clamp(46px,7.3vh,69px);--seat-w:clamp(120px,14vw,198px);--slot-gap:clamp(7px,1vw,14px);--safe-x:max(19px,env(safe-area-inset-left),env(safe-area-inset-right));--mat-grain:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='170' height='170'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.75' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.47'/%3E%3C/svg%3E");font-family:-apple-system,BlinkMacSystemFont,'PingFang SC','Microsoft YaHei',system-ui,sans-serif;background:#101511;color:var(--ink);font-synthesis:none}
*{box-sizing:border-box}
[hidden]{display:none!important}
body{margin:0;overflow:hidden;overscroll-behavior:none;background:radial-gradient(ellipse at 49% 34%,#29342a 0%,#19211b 38%,#101511 76%);min-height:100svh}
button,input,select{font:inherit}
button{cursor:pointer;color:inherit;-webkit-tap-highlight-color:transparent;touch-action:manipulation}
button:disabled{opacity:.42;cursor:default}
button:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid #f0c679;outline-offset:3px}
button:not(:disabled):active{translate:0 2px}
button,input,select{user-select:auto}
.sr-only{position:absolute!important;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.shell{height:100svh;display:grid;grid-template-rows:auto minmax(0,1fr) auto auto;padding:0 var(--safe-x);max-width:1620px;margin:auto;isolation:isolate}
.top{display:flex;align-items:center;justify-content:space-between;gap:12px;height:clamp(61px,9.4vh,88px);padding:0 clamp(0px,2vw,26px);position:relative;border-bottom:1px solid var(--line)}
.brand{display:flex;align-items:center;gap:12px;flex:none}
.seal{display:grid;place-items:center;width:43px;height:43px;border-radius:12px;border:1px solid #c4a16c70;background:linear-gradient(145deg,#383423,#21261b 62%);color:var(--gold);font:30px/1 Georgia,serif;text-shadow:0 3px 5px #000;box-shadow:inset 0 0 0 3px #151813,inset 0 0 0 4px #b8996338,0 4px 14px #0004}
.brand strong{display:block;font-size:23px;letter-spacing:.16em;line-height:1.1;font-family:'Songti SC','STSong','SimSun',serif;font-weight:800}
.brand span{font:700 8px/1.6 Georgia,serif;color:#b49f76;white-space:nowrap}
.table-id{display:flex;align-items:center;gap:10px;color:#cbc5b2;font-size:12px;letter-spacing:.1em;position:absolute;left:50%;transform:translateX(-50%);white-space:nowrap}
.table-id i,.foot i{width:6px;height:6px;border-radius:50%;background:#86b68a;box-shadow:0 0 10px #8dd68b85;display:inline-block}
.table-id b{height:12px;width:1px;background:var(--line)}
.blinds{color:var(--dim);font-size:11px}.blinds em{font:600 13px Georgia,serif;color:var(--gold);margin-left:3px}
.toolbar{display:flex;align-items:center;gap:9px;justify-content:flex-end;flex:none}
.iconbtn,.door,.outline,.danger,.gold{height:39px;border-radius:9px;border:1px solid #bba47838;background:linear-gradient(#ffffff09,#ffffff01);display:inline-flex;align-items:center;justify-content:center;gap:7px;box-shadow:0 2px 0 #0003;transition:background .16s,translate .14s,border-color .16s;white-space:nowrap}
.iconbtn:hover,.door:hover,.outline:hover{background-color:#c5a47418;border-color:#c5a47475}
.iconbtn{width:39px;color:#cfbd96;font-size:17px}.iconbtn svg,.door svg{width:17px;height:17px;display:block}
.door{padding:0 13px;font-size:12px;color:#e5c891;font-weight:700}
.stage{position:relative;min-height:0;display:grid;place-items:center;margin:0 auto;width:100%;max-width:1270px}
.stage-kicker,.stage-index{position:absolute;top:clamp(13px,3vh,31px);display:flex;align-items:center;gap:9px;color:#aca082;font-size:9px;letter-spacing:.17em;white-space:nowrap;font-weight:650}
.stage-kicker{left:clamp(2px,2vw,26px)}.stage-index{right:clamp(2px,2vw,26px)}.stage-kicker span:first-child{color:var(--gold)}.stage-kicker b,.stage-index b{height:1px;width:14px;background:#b39d6372}
.table{position:relative;width:88%;height:70%;max-height:510px;min-height:150px;transform:translateY(-1%);perspective:850px;isolation:isolate}
.rail,.felt,.stitched{position:absolute;pointer-events:none}
.rail{inset:0;border-radius:50% / 25%;background:var(--mat-grain),linear-gradient(176deg,#493727 0%,#171a14 12%,#2d251c 53%,#191711 83%,#4a3422 100%);border:1px solid #957448;box-shadow:0 5px 0 #130e0a,0 9px 0 #3c2d20,0 12px 0 #201811,0 15px 2px #0c0e0b,0 28px 43px #000b,inset 0 0 0 3px #110f0c,inset 0 0 0 4px #aa8b5b61,inset 0 0 0 9px #201b14,inset 0 0 0 10px #93683c5e}
.felt{inset:clamp(11px,1.75vw,24px);border-radius:50% / 25%;background:var(--mat-grain),radial-gradient(ellipse at 49% 23%,#295345 0%,#1a4437 38%,#12342b 74%,#0a271f 100%);box-shadow:0 0 0 1px #ac8a5280,inset 0 0 18px 5px #071d18,0 4px 5px #070d09}
.stitched{inset:clamp(17px,2.6vw,37px);border-radius:50% / 23%;border:1px dashed #e4cb8a38;box-shadow:0 0 0 1px #0b2d2490,inset 0 0 0 2px #183e33}
.felt-mark{position:absolute;top:18%;left:50%;translate:-50% 0;display:flex;align-items:center;gap:7px;color:#c6ac6e63;white-space:nowrap;font:600 clamp(8px,1.1vw,13px) Georgia,serif;letter-spacing:.22em}
.felt-mark span{font-size:6px;color:#ab9c6690}
.center{position:absolute;left:50%;top:50%;translate:-50% -51%;display:grid;justify-items:center;gap:clamp(6px,1.5vh,13px)}
.street{white-space:nowrap;color:#e5c98e;font-size:clamp(9px,1.15vw,12px);letter-spacing:.14em;line-height:1}
.street span,.table-caption>span:first-child,.table-caption>span:last-child,.rotate-foot span{width:15px;height:1px;background:#bba66a63;display:inline-block;vertical-align:middle}
.board{display:flex;gap:var(--slot-gap);perspective:700px;align-items:center}
.board-slot{width:var(--size);height:calc(var(--size) * 1.405);border-radius:calc(var(--size)*.10);border:1px solid #c7b58637;background:linear-gradient(155deg,#0a292264,#17463954);box-shadow:inset 0 1px 6px #06261e80;display:grid;place-items:center;font:clamp(12px,2vw,24px) Georgia,serif;color:#e2cc8750;position:relative}
.board-slot:has(.card){border-color:transparent}
.card{position:relative;width:var(--size);aspect-ratio:1 / 1.405;border:1px solid #fff1cb;border-radius:calc(var(--size)*.10);display:grid;place-items:center;color:#252720;background:linear-gradient(145deg,#fffaf0 4%,#f3e7cd 72%,#dcc9a4);box-shadow:0 2px 0 #b49f7d,0 5px 9px #0209069e,inset 0 0 0 2px #fff9ebba;user-select:none;transform-style:preserve-3d}
.card.red{color:#a32f3b}
.card .pip{font:700 calc(var(--size)*.63)/1 Georgia,serif;text-shadow:0 1px #fff8;margin-top:5%}
.corner{position:absolute;left:9%;top:8%;display:flex;flex-direction:column;align-items:center;font:700 calc(var(--size)*.28)/.83 Georgia,serif;gap:2px;letter-spacing:-.06em}
.corner small{font-size:.78em;line-height:.9}.corner.bottom{inset:auto 9% 8% auto;rotate:180deg}
.card.back{color:#d5b47a;border-color:#d1aa6a;background:repeating-linear-gradient(45deg,#b88c4e22 0 1px,transparent 1px 5px),repeating-linear-gradient(-45deg,#b88c4e1f 0 1px,transparent 1px 5px),radial-gradient(ellipse,#364537,#172922);box-shadow:0 2px 0 #92744c,0 4px 8px #010805bc,inset 0 0 0 2px #18261e,inset 0 0 0 3px #c7a46f7d;font:700 calc(var(--size)*.48)/1 Georgia,serif;text-shadow:0 2px 4px #000a}
.card.back span{background:#24392c;border:1px solid #ba955b72;width:56%;aspect-ratio:1;border-radius:50%;display:grid;place-items:center}
.deck{--size:clamp(21px,3.7vw,49px);position:absolute;left:50%;top:1%;translate:-50% -33%;z-index:3;rotate:11deg}
.deck-edge{position:absolute;inset:2px -3px -3px 2px;border-radius:6px;background:repeating-linear-gradient(#dfcdab 0 1px,#a08c6d 1px 2px);box-shadow:0 2px 4px #0009}
.pot{min-height:28px;display:flex;align-items:center;gap:7px;padding:3px 13px;border-radius:22px;background:#102c24d1;border:1px solid #d8ba7750;color:#ccbc99;font-size:10px;white-space:nowrap;box-shadow:0 2px 5px #051d1780}
.pot i{height:10px;width:10px;border:2px dashed #e5be7f;border-radius:50%;background:#655332}
.pot strong{color:#f4d491;font:700 16px Georgia,serif;font-variant-numeric:tabular-nums}
.table-caption{position:absolute;bottom:clamp(0px,2.4vh,23px);left:50%;translate:-50% 0;display:flex;align-items:center;gap:8px;color:#9faa96;font-size:11px;letter-spacing:.08em;white-space:nowrap}
.seats,.fx{position:absolute;inset:0;pointer-events:none}.fx{z-index:11;perspective:750px}
.seat{--left:50%;--top:50%;position:absolute;left:var(--left);top:var(--top);translate:-50% -50%;width:var(--seat-w);z-index:4}
.seat[data-pos="0"]{--left:50%;--top:100%}
.seat[data-pos="1"]{--left:14%;--top:93%}
.seat[data-pos="2"]{--left:10%;--top:28%}
.seat[data-pos="3"]{--left:33%;--top:1%}
.seat[data-pos="4"]{--left:67%;--top:1%}
.seat[data-pos="5"]{--left:90%;--top:28%}
.seat.empty{width:auto}
.empty-seat{display:flex;align-items:center;gap:5px;border:1px dashed #cfb27d55;border-radius:30px;padding:6px 12px;color:#c3c6acb8;background:#12291ed9;font-size:10px;white-space:nowrap}
.empty-seat b{font-size:14px;line-height:1}
.plate{height:var(--seat-h);padding:5px 8px 5px 6px;display:flex;align-items:center;gap:8px;position:relative;border-radius:12px;border:1px solid #ad946655;background:linear-gradient(150deg,#263029,#121914 80%);box-shadow:0 5px 11px #06110bb8,inset 0 0 0 2px #f3e5b706;z-index:2}
.avatar{height:calc(var(--seat-h) - 15px);width:calc(var(--seat-h) - 15px);border-radius:9px;border:1px solid #b79b644d;background:radial-gradient(circle,#4b4e36,#222c25);flex:none;padding:1px;display:block}
.avatar use{width:100%;height:100%}
.identity{min-width:0;display:grid;gap:3px;align-content:center;flex:1}.identity div{display:flex;align-items:center;gap:4px;min-width:0}
.identity b{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:clamp(11px,1.22vw,14px);font-weight:700}
.identity em{font:700 clamp(11px,1.5vw,17px)/1 Georgia,serif;color:#f0ca87;font-variant-numeric:tabular-nums}
.badge{padding:1px 3px;font-size:8px;line-height:1.15;border-radius:3px;border:1px solid #a3895755;color:#cbb789;white-space:nowrap;flex:none}
.seat.active .plate{border-color:#e0be7bd9;box-shadow:0 0 17px #d9ba6650,0 4px 10px #05130d,inset 0 0 0 1px #dec38928}
.seat.active .identity b{color:#f5d591}
.seat.folded .plate,.seat.folded .hand{opacity:.50}
.seat.winner .plate{border-color:#f1cf8c;box-shadow:0 0 18px #eed49a78}
.dealer-pin{position:absolute;left:-8px;top:-9px;background:linear-gradient(#fff2cb,#d6b578);color:#342717;z-index:5;border:1px solid #f6dfab;border-radius:50%;width:20px;height:20px;display:grid;place-items:center;font:800 11px Georgia,serif;box-shadow:0 2px 3px #0009}
.hand{--size:clamp(19px,2.75vw,38px);display:flex;position:absolute;right:10px;bottom:calc(100% - 5px);align-items:flex-end;gap:0;z-index:1;perspective:560px}
.hand .card:nth-child(1){rotate:-10deg;translate:3px 2px}.hand .card:nth-child(2){rotate:8deg}
.seat[data-pos="2"] .hand,.seat[data-pos="3"] .hand,.seat[data-pos="4"] .hand,.seat[data-pos="5"] .hand{bottom:auto;top:calc(100% - 6px)}
.seat[data-pos="0"] .hand{--size:clamp(32px,4.35vw,60px);right:12px;z-index:3}
.seat[data-pos="0"] .plate{padding-right:62px}
.last{position:absolute;top:calc(100% + 4px);left:50%;translate:-50% 0;border-radius:6px;background:#15231de8;color:#d7bf8e;border:1px solid #a58e554e;padding:2px 6px;white-space:nowrap;font-size:9px;z-index:6}
.seat[data-pos="2"] .last,.seat[data-pos="3"] .last,.seat[data-pos="4"] .last,.seat[data-pos="5"] .last{top:auto;bottom:calc(100% + 3px)}
.wager{position:absolute;top:-17px;left:8px;display:flex;align-items:center;gap:4px;color:#f4d599;font:700 11px Georgia,serif;text-shadow:0 1px 4px #000;z-index:6}
.seat[data-pos="2"] .wager,.seat[data-pos="3"] .wager,.seat[data-pos="4"] .wager,.seat[data-pos="5"] .wager{top:auto;bottom:-16px}
.chip{--diam:28px;--chip:#a44048;--light:#f8deaf;display:inline-grid;place-items:center;position:relative;width:var(--diam);height:var(--diam);flex:none;border-radius:50%;border:1px solid #cfb88b;background:repeating-conic-gradient(from -13deg,var(--light) 0 13deg,var(--chip) 13deg 45deg);box-shadow:0 2px 0 #261d15,0 3px 0 #a08258,0 5px 5px #0a110b9c,inset 0 0 0 1px #0005;transform-style:preserve-3d}
.chip::before{content:'';position:absolute;inset:17%;border-radius:50%;border:1px dashed #edcc9b9c;background:var(--mat-grain),radial-gradient(circle at 40% 30%,#fff3 0,#0004 75%),var(--chip);box-shadow:0 0 0 1px #241d1580}
.chip b{position:relative;color:#fff0c9;font:700 calc(var(--diam)*.31)/1 Georgia,serif;text-shadow:0 1px 2px #2c2116}
.chip.green{--chip:#31604e}.chip.cream{--chip:#b37d48}.chip.dark{--chip:#3b343c}.wager .chip{--diam:16px}
.tray-icon{position:relative;width:45px;height:37px;flex:none;transform:rotateX(13deg) rotateZ(-14deg);transition:transform .2s}
.tray:hover .tray-icon{transform:rotateX(0) rotateZ(-23deg) translateY(-2px)}
.tray-icon .chip{position:absolute;left:0;top:5px}.tray-icon .chip:nth-child(2){left:3px;top:1px}.tray-icon .chip:nth-child(3){left:16px;top:13px}
.result{position:absolute;left:50%;top:68%;translate:-50% 0;z-index:12;max-width:80%;padding:6px 17px;border:1px solid #d7ae66b5;border-radius:9px;background:linear-gradient(135deg,#3b3424,#19271e);box-shadow:0 6px 18px #0009;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#efcf8d;font-size:clamp(11px,1.5vw,17px);animation:result-in .34s cubic-bezier(.2,.75,.3,1) both}
@keyframes result-in{from{opacity:0;transform:translateY(9px) scale(.96)}to{opacity:1;transform:none}}
.flight{position:absolute;z-index:2;pointer-events:none;will-change:transform;transform-origin:center;backface-visibility:hidden}
.flight.chip{z-index:4}.flight.card{--size:var(--flight-size,34px)}
.dock{position:relative;margin:0 auto;width:min(100%,1190px);display:flex;align-items:center;justify-content:space-between;gap:13px;padding:clamp(7px,1.5vh,15px) clamp(9px,2vw,23px);border:1px solid #bc9e6748;border-radius:15px;background:linear-gradient(145deg,#252d24,#171c17 67%);box-shadow:0 4px 0 #0b110e,0 9px 24px #0005,inset 0 1px #fff1c90a;min-height:72px;z-index:16}
.tray{display:flex;align-items:center;gap:10px;min-width:117px}.tray-label{display:grid;gap:3px;white-space:nowrap}.tray-label span{font-size:10px;letter-spacing:.13em;color:#b4b398}.tray-label strong{color:#f1cb85;font:700 clamp(17px,3vh,25px)/1 Georgia,serif;font-variant-numeric:tabular-nums}
.prompt{flex:1;text-align:center;color:#b5bead;font-size:12px;line-height:1.35}.prompt strong{color:#eed097}.prompt .clock{margin-left:7px;color:#ddb777;font:700 14px Georgia,serif;font-variant-numeric:tabular-nums}
.actions{display:flex;align-items:center;justify-content:flex-end;gap:7px}
.outline,.danger,.gold{padding:0 clamp(11px,1.7vw,23px);height:clamp(36px,5.9vh,52px);font-size:clamp(11px,1.45vw,14px);font-weight:700}
.gold{color:#282013;border-color:#f4d69b;background:linear-gradient(#f6d793 0%,#dfb16b 62%,#c99c59);box-shadow:0 3px 0 #855d32,0 6px 10px #0006,inset 0 1px #fff0c5;transition:filter .15s,translate .15s}
.gold:not(:disabled):hover{filter:brightness(1.13)}.gold span{opacity:.70;font-size:.78em;font-weight:600}
.danger{color:#e2a39c;border-color:#a86a6657;background:#652f2b22}.danger:not(:disabled):hover{background:#963e3839}
.outline{color:#dfd5bd}.soft{color:#c1cbb9;border-color:#98b19a44;background:#65776022}
.foot{height:clamp(30px,5.7vh,53px);display:flex;align-items:center;justify-content:space-between;max-width:1190px;width:100%;margin:0 auto;color:#8f9b89;font-size:10px;letter-spacing:.065em;padding:0 2px max(0px,env(safe-area-inset-bottom))}
.foot i{width:4px;height:4px;margin-right:4px;vertical-align:middle}
.raise-pop{position:absolute;bottom:calc(100% + 10px);right:0;width:min(320px,100%);border:1px solid #c7a96b79;border-radius:14px;background:linear-gradient(150deg,#30382a,#182019 80%);box-shadow:0 10px 30px #000b;padding:12px;z-index:18}
.raise-heading{display:flex;justify-content:space-between;align-items:center}.raise-heading small{display:block;color:#b9b4a0;font-size:10px}.raise-heading strong{font:700 24px Georgia,serif;color:var(--gold)}.raise-heading .iconbtn{width:31px;height:31px}
.raise-pop input{accent-color:var(--gold);width:100%;margin:11px 0 9px;touch-action:pan-x}.raise-steps{display:flex;gap:5px;margin-bottom:8px}.raise-steps button{flex:1;padding:0 5px;height:31px}.confirm-raise{width:100%;height:35px}
dialog{width:min(530px,calc(100vw - 2 * var(--safe-x)));max-height:calc(100svh - max(32px,env(safe-area-inset-bottom)));overflow:auto;padding:20px;border:1px solid #b79c686e;border-radius:17px;color:var(--ink);background:linear-gradient(147deg,#283229,#171e18 70%);box-shadow:0 18px 70px #000a}
dialog::backdrop{background:#080f0bc7;backdrop-filter:blur(5px)}
.dialog-header{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:13px;padding-bottom:11px;border-bottom:1px solid var(--line)}.dialog-header h2{font-size:21px;margin:4px 0 0}.eyebrow{font:700 9px Georgia,serif;letter-spacing:.17em;color:var(--gold)}
.dialog-header .iconbtn{width:33px;height:33px;font-size:22px}.dialog-error,.dialog-note{font-size:12px;line-height:1.6;color:#c2c6b7}.dialog-error{margin-top:8px;color:#ffafa5}
.tabs,.dialog-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.tabs{margin-bottom:11px}.tabs .outline,.dialog-actions button{height:34px}.tabs .selected{background:#c4a36925;border-color:#c7a9728a;color:#efca8d}
.dialog-form{display:grid;gap:10px}.dialog-form label{display:grid;gap:4px;color:#cbc5ad;font-size:11px}
.dialog-form input,.dialog-form select{height:39px;padding:0 10px;border-radius:7px;background:#111913;border:1px solid #a88f5d63;color:#f5ecd8;font-size:16px;min-width:0;width:100%}.dialog-form input::placeholder{color:#8d9787}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.model-config{border-top:1px solid var(--line);padding-top:10px;margin-top:10px}.model-config summary{cursor:pointer;color:#e6ca90;font-size:13px;padding-bottom:8px}
.room-code{color:#f6d797;font:700 26px/1 Georgia,serif;letter-spacing:.16em;margin-right:4px}
.members,.log-list{padding:0;margin:9px 0;list-style:none;display:grid;gap:3px}.members li,.log-list li{display:flex;align-items:center;justify-content:space-between;gap:6px;min-height:30px;padding:4px 7px;background:#ffffff08;border-radius:5px;font-size:12px;color:#dcd5c0}.members small,.log-list small{color:#aeb8a6}.members button{height:24px;padding:0 8px;font-size:10px}.rules-list{margin:0;padding-left:20px;color:#d7d8c9;font-size:13px;line-height:1.7}.rules-list li+li{margin-top:5px}.toast{position:fixed;z-index:40;left:50%;top:calc(12px + env(safe-area-inset-top));translate:-50% 0;max-width:90vw;padding:8px 13px;border:1px solid #d0a4678c;border-radius:8px;background:#282d21;color:#ffe2aa;box-shadow:0 8px 20px #0008;font-size:12px;text-align:center}
.rotate{display:none}
@media (min-width:1000px) and (min-height:700px){.table{width:89%;height:68%}.center{translate:-50% -48%}.stage-kicker,.stage-index{top:5.5%}.deck{top:0}}
@media (max-height:560px) and (orientation:landscape){
  :root{--safe-x:max(13px,env(safe-area-inset-left),env(safe-area-inset-right));--seat-h:clamp(34px,10.3svh,53px);--seat-w:clamp(88px,15vw,142px);--size:clamp(34px,min(6.35vw,15svh),63px);--slot-gap:clamp(5px,1vw,10px)}
  .top{height:43px;padding:0;gap:6px}.brand{gap:7px}.brand strong{font-size:17px}.brand span{font-size:6px}.seal{width:31px;height:31px;font-size:21px;border-radius:8px}
  .table-id{font-size:10px;gap:7px}.blinds{font-size:9px}.blinds em{font-size:11px}
  .toolbar{gap:5px}.iconbtn,.door{height:32px;border-radius:7px}.iconbtn{width:34px}.door{font-size:10px;padding:0 8px}.door svg,.iconbtn svg{width:15px;height:15px}
  .stage-kicker,.stage-index{top:6px;font-size:7px;gap:5px}.stage-kicker b,.stage-index b{width:8px}
  .table{width:88%;height:73%;min-height:105px;transform:translateY(-1%);perspective:660px}
  .rail{box-shadow:0 3px #160e0a,0 6px #34261c,0 9px 14px #000b,inset 0 0 0 2px #110f0c,inset 0 0 0 3px #aa8b5b66,inset 0 0 0 6px #201b14,inset 0 0 0 7px #93683c5e}
  .felt{inset:10px}.stitched{inset:15px}.felt-mark{top:15%;font-size:8px}.deck{--size:clamp(17px,3.55vw,33px)}
  .center{gap:5px;translate:-50% -47%}.street{font-size:9px}.pot{min-height:18px;padding:1px 8px;gap:5px;font-size:8px}.pot strong{font-size:12px}.pot i{width:7px;height:7px;border-width:1px}
  .plate{padding:3px 5px;gap:5px;border-radius:8px}.avatar{width:calc(var(--seat-h) - 10px);height:calc(var(--seat-h) - 10px);border-radius:6px}.identity{gap:2px}.identity b{font-size:10px}.identity em{font-size:12px}.badge{font-size:7px;padding:0 2px}
  .hand{--size:clamp(15px,2.9vw,29px);right:6px}.seat[data-pos="0"] .hand{--size:clamp(23px,4.1vw,42px);right:5px}.seat[data-pos="0"] .plate{padding-right:42px}
  .wager{font-size:9px;top:-11px;left:5px}.seat[data-pos="2"] .wager,.seat[data-pos="3"] .wager,.seat[data-pos="4"] .wager,.seat[data-pos="5"] .wager{bottom:-11px}.wager .chip{--diam:11px}
  .last{font-size:8px;top:calc(100% + 2px);padding:1px 4px}.seat[data-pos="2"] .last,.seat[data-pos="3"] .last,.seat[data-pos="4"] .last,.seat[data-pos="5"] .last{bottom:calc(100% + 2px)}
  .dealer-pin{width:15px;height:15px;font-size:8px;left:-5px;top:-6px}.empty-seat{font-size:8px;padding:3px 7px;gap:3px}.empty-seat b{font-size:11px}
  .table-caption{font-size:8px;bottom:0}.result{top:73%;font-size:10px;padding:3px 10px}
  .dock{min-height:52px;padding:6px 9px;gap:7px;border-radius:11px}.tray{min-width:83px;gap:5px}.tray-icon{width:31px;height:28px}.tray-icon .chip{--diam:21px}.tray-icon .chip:nth-child(3){left:12px;top:9px}.tray-label{gap:2px}.tray-label span{font-size:8px}.tray-label strong{font-size:16px}
  .prompt{font-size:10px}.prompt .clock{font-size:11px}.actions{gap:5px}.actions button{height:36px;padding:0 clamp(8px,1.75vw,17px)}
  .foot{height:calc(17px + env(safe-area-inset-bottom));font-size:8px;padding-bottom:env(safe-area-inset-bottom)}
  dialog{padding:12px 15px;max-height:calc(100svh - 22px)}.dialog-header{margin-bottom:8px;padding-bottom:7px}.dialog-header h2{font-size:17px}
}
@media (max-height:365px) and (orientation:landscape){.stage-kicker,.stage-index,.table-caption,.historybtn,.infobtn{display:none}.top{height:37px}.table{height:74%}.felt-mark{display:none}.foot{height:calc(13px + env(safe-area-inset-bottom))}.last{display:none}}
@media (max-width:620px) and (orientation:landscape){.table-id{position:static;transform:none}.blinds,.table-id b{display:none}.historybtn{display:none}.seat[data-pos="2"]{--left:9%}.seat[data-pos="5"]{--left:91%}}
@media (orientation:portrait) and (max-width:800px){
  .shell,dialog,.toast{display:none!important}
  .rotate{height:100svh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;position:relative;isolation:isolate;padding:calc(24px + env(safe-area-inset-top)) 22px calc(24px + env(safe-area-inset-bottom));background:radial-gradient(ellipse at 50% 43%,#294738,#18281f 45%,#101611 80%)}
  .rotate::before{content:'';position:absolute;inset:0;background:var(--mat-grain);opacity:.34;z-index:-1}
  .rotate-brand{position:absolute;top:calc(24px + env(safe-area-inset-top));display:grid;justify-items:center;gap:7px;color:#d3b77f}.rotate-brand p{font:700 10px Georgia,serif;margin:0}
  .rotate-art{position:relative;width:166px;height:147px;display:grid;place-items:center}
  .phone-glyph{width:57px;height:98px;border:2px solid #dbb776;border-radius:14px;background:linear-gradient(120deg,#284b3d,#182c22);box-shadow:0 0 0 4px #d2a56429,0 12px 24px #0008,inset 0 0 0 4px #18281f;display:grid;place-items:center;color:var(--gold);font:33px Georgia,serif;animation:tilt 4s ease-in-out infinite}
  .phone-glyph::before,.phone-glyph::after{content:'';position:absolute;width:21px;height:2px;background:#ac9765;border-radius:3px;top:8px;left:calc(50% - 10px)}.phone-glyph::after{top:auto;bottom:7px;opacity:.55}
  .rotate-arrow{position:absolute;right:9px;top:22px;color:#e1bf82;font-size:33px;text-shadow:0 2px 4px #0006}
  .rotate h1{font:700 31px/1.3 'Songti SC','SimSun',serif;color:#f5dfb5;letter-spacing:.12em;margin:14px 0 7px}
  .rotate>p{font-size:13px;line-height:1.85;color:#c1c5ad;margin:0}
  .rotate-foot{position:absolute;bottom:calc(25px + env(safe-area-inset-bottom));font-size:10px;color:#b29d72;letter-spacing:.12em}
  @keyframes tilt{0%,20%,100%{rotate:-15deg}47%,76%{rotate:74deg}}
}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}}
.tray{touch-action:none;user-select:none}.tray.usable{cursor:grab}.tray.usable.dragging{cursor:grabbing}.tray:focus-visible{outline:2px solid #f0c679;outline-offset:3px;border-radius:6px}
.drag-chip{position:fixed;z-index:30;translate:-50% -55%;transform:rotateX(22deg) rotateZ(-18deg);pointer-events:none;--diam:34px}
.pot.drop-target{box-shadow:0 0 0 3px #efcb7c71,0 0 17px #d2b57aaa;transition:box-shadow .16s}
