:root{--gold: #e8cd7a;--gold-deep: #c9a227;--gold-soft: #f6e7b4;--gold-dark: #a5801a;--ink: #1b1408;--cream: #f4f1e8;--sand: #e6d8c2;--muted: #b6a48d;--muted-2: #9c8971;--muted-3: #7d6a55;--wood: #5a3822;--wood-2: #7a4a28;--red: #b83b32;--red-soft: #f0b3ac;--green: #a8c79a;--line: rgba(201, 162, 39, .16);--line-strong: rgba(201, 162, 39, .35);--line-hover: rgba(232, 205, 122, .55);--panel: linear-gradient(180deg, rgba(90, 56, 34, .3), rgba(26, 16, 9, .82));--panel-flat: rgba(24, 15, 8, .86);--backdrop: radial-gradient(120% 90% at 50% -10%, #2c1b11 0%, #1a1008 52%, #120b06 100%);--font-display: "Playfair Display", Georgia, serif;--font-body: "Manrope", system-ui, sans-serif;--font-mono: "IBM Plex Mono", ui-monospace, monospace}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{margin:0;padding:0;background:#120b06}body{color:var(--cream);font-family:var(--font-body);-webkit-font-smoothing:antialiased}#root{min-height:100vh;min-height:100dvh;background:var(--backdrop);display:flex;flex-direction:column}input,button{font-family:inherit;color:inherit}input[type=range]{accent-color:var(--gold-deep)}a{color:var(--gold);text-decoration:none}a:hover{color:var(--gold-soft)}@keyframes dealIn{0%{opacity:0;transform:translate(var(--dx, 0px),var(--dy, -60px)) scale(.55) rotate(var(--dr, -8deg))}to{opacity:1;transform:translate(0) scale(1) rotate(0)}}@keyframes popIn{0%{opacity:0;transform:scale(.6)}to{opacity:1;transform:scale(1)}}@keyframes fadeUp{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@keyframes bannerIn{0%{opacity:0;transform:translate(-50%,-50%) scale(.7)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}@keyframes glowRing{0%,to{box-shadow:0 0 #e8cd7a73}50%{box-shadow:0 0 0 8px #e8cd7a00}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.kicker{font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--muted-2)}.display{font-family:var(--font-display);font-weight:500;margin:0}.mono{font-family:var(--font-mono)}.pill{display:inline-flex;align-items:center;gap:6px;padding:7px 12px;border-radius:999px;border:1px solid rgba(201,162,39,.22);background:transparent;font-size:11px;color:var(--muted-2);cursor:pointer;white-space:nowrap;min-height:34px}.pill:hover:not(:disabled){color:var(--cream);border-color:var(--line-hover)}.pill[aria-pressed=true],.pill.is-on{color:var(--gold);border-color:var(--line-strong)}.pill:disabled{opacity:.4;cursor:not-allowed}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 18px;min-height:44px;border-radius:12px;border:1px solid rgba(201,162,39,.26);background:transparent;color:var(--sand);font-size:14px;font-weight:600;cursor:pointer;transition:filter .2s ease,background .2s ease,border-color .2s ease}.btn:hover:not(:disabled){background:#c9a22724;border-color:var(--line-hover)}.btn:disabled{opacity:.4;cursor:not-allowed}.btn-primary{background:linear-gradient(180deg,var(--gold),var(--gold-deep));border-color:#e8cd7ae6;color:var(--ink);font-weight:700;letter-spacing:.02em}.btn-primary:hover:not(:disabled){filter:brightness(1.08);background:linear-gradient(180deg,var(--gold),var(--gold-deep))}.btn-ghost{border:none;background:transparent;color:var(--muted);font-weight:500;padding:8px 12px;min-height:36px;border-radius:8px}.btn-ghost:hover:not(:disabled){color:var(--cream);background:#ffffff0d}.field{display:flex;flex-direction:column;gap:8px}.field input{padding:13px 14px;border-radius:12px;border:1px solid rgba(201,162,39,.2);background:#00000040;color:var(--cream);font-size:15px;outline:none;min-width:0}.field input:focus{border-color:var(--line-hover)}.form-error{color:var(--red-soft);font-size:13px;line-height:1.5}.avatar{border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;flex:0 0 auto;color:var(--cream)}.avatar-hero{background:linear-gradient(160deg,var(--gold),var(--gold-dark));color:var(--ink)}.screen{flex:1;display:flex;flex-direction:column;min-height:0;animation:fadeUp .4s ease both}.topbar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 26px;border-bottom:1px solid var(--line);flex-wrap:wrap}.wordmark{display:flex;align-items:baseline;gap:12px}.wordmark-name{font-family:var(--font-display);font-size:26px;font-weight:600;letter-spacing:.01em;color:var(--gold)}.wordmark-sub{font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--muted-2)}.topbar-right{display:flex;align-items:center;gap:10px}.balance{display:flex;flex-direction:column;align-items:flex-end;line-height:1.15}.balance-value{font-family:var(--font-mono);font-size:17px;font-weight:500;color:var(--cream)}.topbar-divider{width:1px;height:30px;background:#c9a22733}.cashier-btn{padding:9px 16px;border-radius:999px;border:1px solid var(--line-strong);background:transparent;font-size:13px;font-weight:600;color:var(--gold);cursor:pointer;min-height:40px}.cashier-btn:hover{background:#c9a2271f}.auth{flex:1;display:flex;align-items:center;justify-content:center;padding:28px 20px;animation:fadeUp .35s ease both}.auth-card{width:100%;max-width:420px;border:1px solid rgba(201,162,39,.24);border-radius:20px;background:var(--panel);padding:30px;box-shadow:0 40px 90px -40px #000000e6}.auth-brand{font-family:var(--font-display);font-size:34px;font-weight:600;color:var(--gold);margin:0 0 4px}.auth-sub{font-size:13px;color:var(--muted);margin:0 0 26px;text-wrap:pretty}.auth-form{display:flex;flex-direction:column;gap:16px}.auth-switch{margin-top:18px;text-align:center}.auth-note{margin:22px 0 0;font-size:11px;color:var(--muted-3);line-height:1.6;text-wrap:pretty}.lobby-body{flex:1;display:flex;gap:26px;padding:40px 26px 48px;max-width:900px;width:100%;margin:0 auto;flex-wrap:wrap;align-items:flex-start}.lobby-col{flex:1 1 100%;min-width:300px}.lobby-title{font-family:var(--font-display);font-size:34px;font-weight:500;margin:0 0 6px}.lobby-lede{font-size:14px;color:var(--muted);margin:0 0 22px;max-width:46ch;text-wrap:pretty}.table-list{display:flex;flex-direction:column;gap:12px;list-style:none;margin:0;padding:0}.table-row{display:grid;grid-template-columns:1fr auto;gap:14px;align-items:center;width:100%;text-align:left;padding:16px 18px;border:1px solid var(--line);border-radius:14px;background:linear-gradient(180deg,#5a382247,#20140b80);cursor:pointer;color:inherit;font:inherit}.table-row:hover{border-color:var(--line-hover);background:linear-gradient(180deg,#5a38226b,#20140b8c)}.table-row-main{display:flex;flex-direction:column;gap:8px;min-width:0}.table-row-head{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.table-name{font-family:var(--font-display);font-size:20px;font-weight:600}.tag{font-size:10px;letter-spacing:.16em;text-transform:uppercase;padding:3px 8px;border-radius:4px;background:#c9a22729;color:var(--gold)}.tag-live{background:#a8c79a29;color:var(--green)}.table-facts{display:flex;gap:18px;flex-wrap:wrap;font-family:var(--font-mono);font-size:12px;color:var(--muted)}.table-facts span{white-space:nowrap}.table-row-side{display:flex;flex-direction:column;align-items:flex-end;gap:8px}.seats-label{font-family:var(--font-mono);font-size:15px;color:var(--cream)}.seat-dots{display:flex;gap:4px}.seat-dot{width:7px;height:7px;border-radius:50%;background:#ffffff29}.seat-dot.is-taken{background:var(--gold)}.lobby-foot{margin-top:22px;font-size:11px;color:var(--muted-3);line-height:1.6}.empty-note{font-size:13px;color:var(--muted-3);line-height:1.7;padding:18px;border:1px dashed rgba(201,162,39,.2);border-radius:14px}.sheet{flex:1;display:flex;align-items:center;justify-content:center;padding:28px 20px;animation:fadeUp .35s ease both}.sheet-card{width:100%;max-width:620px;border:1px solid rgba(201,162,39,.24);border-radius:20px;background:var(--panel);padding:30px;box-shadow:0 40px 90px -40px #000000e6}.sheet-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:26px}.sheet-title{font-family:var(--font-display);font-size:30px;font-weight:600;margin:6px 0 0}.sheet-meta{font-family:var(--font-mono);font-size:13px;color:var(--muted);margin-top:6px}.sheet-label{font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--muted-2);margin-bottom:10px}.name-row{display:flex;align-items:center;gap:12px;padding:12px 14px;border:1px solid rgba(201,162,39,.2);border-radius:12px;background:#00000040;margin-bottom:24px}.name-row .avatar{width:34px;height:34px;font-size:13px}.name-row-value{font-size:16px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.seat-choice{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:24px}.seat-chip{padding:10px 14px;border-radius:999px;border:1px solid rgba(201,162,39,.22);background:transparent;font-family:var(--font-mono);font-size:12px;color:var(--sand);cursor:pointer;min-height:42px}.seat-chip:hover:not(:disabled){background:#c9a22729}.seat-chip.is-on{border-color:var(--gold);color:var(--gold);background:#e8cd7a24}.seat-chip:disabled{opacity:.35;cursor:not-allowed}.amount-row{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:10px}.amount-value{font-family:var(--font-mono);font-size:22px;color:var(--gold)}.range{width:100%;height:30px;margin:0 0 8px}.scale-row{display:flex;justify-content:space-between;font-family:var(--font-mono);font-size:11px;color:var(--muted-3);margin-bottom:22px}.preset-row{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:26px}.preset{padding:10px 14px;border-radius:999px;border:1px solid rgba(201,162,39,.22);background:transparent;font-family:var(--font-mono);font-size:12px;color:var(--sand);cursor:pointer;min-height:42px}.preset:hover{background:#c9a22729}.preset.is-on{border-color:var(--gold);color:var(--gold);background:#e8cd7a24}.sit-btn{width:100%;border-radius:999px;min-height:52px;font-size:15px}.sheet-foot{margin-top:16px;display:flex;justify-content:space-between;gap:12px;font-size:11px;color:var(--muted-3);flex-wrap:wrap}.table-screen{flex:1;display:flex;flex-direction:column;height:100vh;height:100dvh;max-height:100dvh;overflow:hidden}.table-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 16px;border-bottom:1px solid rgba(201,162,39,.14);background:#180f0899;flex:0 0 auto}.table-bar-left{display:flex;align-items:center;gap:14px;min-width:0}.table-bar-id{min-width:0}.table-bar-name{font-family:var(--font-display);font-size:17px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.table-bar-meta{font-family:var(--font-mono);font-size:11px;color:var(--muted-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.table-bar-right{display:flex;align-items:center;gap:8px}.stack-chip{font-family:var(--font-mono);font-size:14px;color:var(--cream);padding:7px 12px;border-radius:999px;background:#c9a2271a;border:1px solid rgba(201,162,39,.22);white-space:nowrap}.conn-chip{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--red-soft);padding:6px 10px;border-radius:999px;border:1px solid rgba(184,59,50,.5);white-space:nowrap}.table-body{flex:1;display:flex;align-items:stretch;min-height:0}.table-main{flex:1;display:flex;flex-direction:column;min-width:0}.stage-wrap{flex:1;display:flex;align-items:center;justify-content:center;padding:6px 0;min-height:0}.stage-box{position:relative;flex:0 0 auto}.stage{position:absolute;left:0;top:0;transform-origin:top left}.felt-rail{position:absolute;border-radius:50%;background:linear-gradient(180deg,#4a3320,#241708);box-shadow:0 50px 90px -40px #000000f2,inset 0 2px #e8cd7a47}.felt{width:100%;height:100%;border-radius:50%;border:2px solid rgba(232,205,122,.5);background:radial-gradient(62% 82% at 50% 38%,#5a3822,#442819 58%,#31200f);box-shadow:inset 0 0 90px #0000008c;position:relative;overflow:hidden}.felt-logo{position:absolute;left:50%;top:30%;transform:translate(-50%,-50%);text-align:center;opacity:.3;pointer-events:none;width:100%}.felt-logo-name{font-family:var(--font-display);letter-spacing:.04em;color:var(--gold)}.felt-logo-sub{letter-spacing:.5em;text-transform:uppercase;color:var(--sand);margin-top:4px}.center-cluster{position:absolute;left:50%;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;pointer-events:none}.board-row{display:flex;align-items:center}.pot{display:flex;align-items:center;gap:10px;padding:7px 16px;border-radius:999px;background:#140c069e;border:1px solid rgba(232,205,122,.34);transition:opacity .3s ease}.pot-kicker{font-size:9px;letter-spacing:.2em;text-transform:uppercase;color:var(--sand);opacity:.7}.pot-value{font-family:var(--font-mono);font-weight:600;color:var(--gold-soft)}.pot-chips{display:flex;align-items:center}.street-label{font-size:10px;letter-spacing:.32em;text-transform:uppercase;color:#cbe0d580}.chip{border-radius:50%;border:2px dashed rgba(255,255,255,.5);flex:0 0 auto}.chip-a{background:radial-gradient(circle at 35% 30%,#f3f0e6,#7a4a28 62%)}.chip-b{background:radial-gradient(circle at 35% 30%,#f3f0e6,#b83b32 62%)}.card{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;flex:0 0 auto;box-shadow:0 8px 18px -8px #000000d9;background:linear-gradient(170deg,#fffdf6,#ece5d4);border:1px solid rgba(0,0,0,.25);animation:dealIn .42s cubic-bezier(.2,.8,.25,1) both}.card-rank{font-family:var(--font-display);font-weight:700;line-height:1}.card-suit{line-height:1}.card-red{color:var(--red)}.card-black{color:#1b1c18}.card-back{background:repeating-linear-gradient(45deg,#7b1d21 0 6px,#5d1418 6px 12px);border:2px solid var(--gold)}.card-slot{border:1px dashed rgba(232,205,122,.18);background:#0000001f;box-shadow:none;animation:none;flex:0 0 auto}.pod{position:absolute;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;transition:opacity .3s ease}.pod-inner{position:relative;display:flex;align-items:center;gap:6px}.pod-cards{display:flex;gap:4px}.plate{position:relative;display:flex;align-items:center;border-radius:999px;background:var(--panel-flat);border:1px solid rgba(201,162,39,.22);box-shadow:0 10px 20px -12px #000c}.plate.is-acting{background:linear-gradient(180deg,#e8cd7a38,#20140be6);border-color:var(--gold);box-shadow:0 0 26px -6px #e8cd7a80;animation:glowRing 1.6s ease-in-out infinite}.plate-id{display:flex;flex-direction:column;min-width:0;line-height:1.25}.plate-name{font-size:12px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:88px}.plate-stack{font-family:var(--font-mono);font-size:12px;color:var(--gold)}.timer-ring{position:absolute;inset:-3px;border-radius:999px;pointer-events:none;opacity:.6;mask:radial-gradient(farthest-side,transparent calc(100% - 3px),#000 0);-webkit-mask:radial-gradient(farthest-side,transparent calc(100% - 3px),#000 0)}.dealer-button{position:absolute;right:-12px;top:-10px;width:22px;height:22px;border-radius:50%;background:linear-gradient(180deg,#fffdf6,#d8cdae);color:var(--ink);font-size:11px;font-weight:700;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 10px #0009}.pod-status{margin-top:3px;padding:2px 9px;border-radius:6px;font-size:10px;letter-spacing:.14em;text-transform:uppercase;background:#0000008c;color:var(--sand);white-space:nowrap}.pod-status.is-winner{background:var(--gold);color:var(--ink)}.pod-bet{position:absolute;transform:translate(-50%,-50%);display:flex;align-items:center;gap:6px;padding:4px 10px 4px 6px;border-radius:999px;background:#180f08cc;border:1px solid rgba(201,162,39,.3);transition:left .45s ease,top .45s ease,opacity .45s ease}.pod-bet-value{font-family:var(--font-mono);font-size:12px;color:var(--gold-soft)}.seat-open{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;border-radius:999px;border:1px dashed rgba(232,205,122,.4);background:#0000004d;color:var(--muted);cursor:pointer;padding:10px 16px;min-height:44px;font-size:12px}.seat-open:hover:not(:disabled){border-color:var(--gold);color:var(--gold);background:#e8cd7a1a}.seat-open:disabled{cursor:default;opacity:.55}.seat-open-sub{font-size:9px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted-3)}.hero-wrap{position:absolute;transform:translate(-50%,-100%);display:flex;flex-direction:column;align-items:center;z-index:8;transition:opacity .3s ease}.hero-stack-plate{position:relative;display:flex;align-items:center;gap:10px;padding:8px 14px 8px 9px;border-radius:999px;background:#180f08e0;border:1px solid rgba(201,162,39,.3);box-shadow:0 12px 26px -14px #000000e6}.hero-stack-plate.is-acting{background:linear-gradient(180deg,#e8cd7a42,#20140beb);border-color:var(--gold);box-shadow:0 0 34px -6px #e8cd7a99}.hero-name{font-size:13px;font-weight:700;white-space:nowrap}.hero-stack{font-family:var(--font-mono);font-size:13px;color:var(--gold)}.hero-cards{display:flex;align-items:flex-end}.hero-bet{position:absolute;display:flex;align-items:center;gap:7px;padding:5px 12px 5px 7px;border-radius:999px;background:#180f08d1;border:1px solid rgba(201,162,39,.34);transition:top .45s ease,opacity .45s ease;z-index:7}.hero-bet-value{font-family:var(--font-mono);font-size:13px;color:var(--gold-soft)}.banner{position:absolute;left:50%;transform:translate(-50%,-50%);padding:14px 30px;border-radius:14px;background:linear-gradient(180deg,var(--gold-soft),var(--gold-deep));text-align:center;box-shadow:0 30px 70px -26px #000000e6;z-index:14;animation:bannerIn .25s ease both;max-width:90%}.banner-kicker{font-size:10px;letter-spacing:.28em;text-transform:uppercase;color:var(--ink);opacity:.65}.banner-text{font-family:var(--font-display);font-size:26px;font-weight:700;color:var(--ink);text-wrap:balance}.banner-sub{font-family:var(--font-mono);font-size:12px;color:var(--ink);opacity:.72;margin-top:2px}.dock{flex:0 0 auto;border-top:1px solid var(--line);background:linear-gradient(180deg,#20140b8c,#160d07eb);padding:12px 16px 16px;padding-bottom:max(16px,env(safe-area-inset-bottom))}.dock-inner{max-width:900px;margin:0 auto;display:flex;flex-direction:column;gap:12px}.dock-top{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.dock-tools{display:flex;align-items:center;gap:10px}.dock-hint{font-size:12px;color:var(--muted);font-family:var(--font-mono)}.dock-error{font-size:12px;color:var(--red-soft);font-family:var(--font-mono)}.raise-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:10px 12px;border-radius:12px;background:#5a382224;border:1px solid var(--line)}.raise-slider{display:flex;align-items:center;gap:10px;flex:1;min-width:220px}.raise-slider input[type=range]{flex:1;height:34px;min-width:120px}.raise-label{font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted-2);white-space:nowrap}.raise-value{font-family:var(--font-mono);font-size:17px;color:var(--gold-soft);min-width:74px;text-align:right}.raise-presets{display:flex;gap:8px;flex-wrap:wrap}.raise-preset{padding:9px 13px;border-radius:10px;border:1px solid rgba(201,162,39,.26);background:transparent;font-family:var(--font-mono);font-size:12px;color:var(--gold);cursor:pointer;min-height:40px}.raise-preset:hover:not(:disabled){background:#c9a22729}.raise-preset:disabled{opacity:.4;cursor:not-allowed}.action-row{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.action-btn{padding:15px 10px;border-radius:12px;text-align:center;cursor:pointer;font-size:15px;font-weight:700;letter-spacing:.02em;min-height:56px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;transition:opacity .2s ease,filter .2s ease}.action-btn:disabled{opacity:.38;cursor:not-allowed}.action-btn:hover:not(:disabled){filter:brightness(1.1)}.action-sub{font-family:var(--font-mono);font-size:11px;font-weight:500;opacity:.8}.action-fold{background:#b83b3229;border:1px solid rgba(184,59,50,.6);color:var(--red-soft)}.action-call{background:#7a4a2857;border:1px solid rgba(201,162,39,.5);color:#f2e6cf}.action-raise{background:linear-gradient(180deg,var(--gold),var(--gold-deep));border:1px solid rgba(232,205,122,.9);color:var(--ink)}.rail{width:320px;flex:0 0 320px;display:flex;flex-direction:column;border-left:1px solid var(--line);background:#180f0899}.rail-head{padding:18px 18px 14px;border-bottom:1px solid rgba(201,162,39,.14)}.rail-head-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.rail-title{font-family:var(--font-display);font-size:19px}.stat-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.stat{padding:12px;border-radius:12px;background:#5a38222e;border:1px solid rgba(201,162,39,.12)}.stat-label{font-size:9px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted-2);margin-bottom:5px}.stat-value{font-family:var(--font-mono);font-size:16px;font-weight:500;color:var(--cream)}.stat-value.is-up{color:var(--green)}.stat-value.is-down{color:var(--red-soft)}.rail-body{flex:1;overflow:auto;padding:16px 18px 24px}.rail-empty{font-size:12px;color:var(--muted-3);line-height:1.6}.hand-list{display:flex;flex-direction:column;gap:8px;list-style:none;margin:0;padding:0}.hand-item{padding:11px 12px;border-radius:10px;border:1px solid rgba(201,162,39,.12);background:#00000038}.hand-item:hover{border-color:#e8cd7a66}.hand-item-toggle{width:100%;text-align:left;padding:0;border:none;background:transparent;cursor:pointer;color:inherit;font:inherit}.hand-item-head{display:flex;justify-content:space-between;align-items:center;gap:8px}.hand-item-title{font-size:12px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hand-item-amount{font-family:var(--font-mono);font-size:12px;color:var(--muted);white-space:nowrap}.hand-item-amount.is-up{color:var(--green)}.mini-board{display:flex;align-items:center;gap:6px;margin-top:8px;flex-wrap:wrap}.mini-card{padding:3px 6px;border-radius:4px;background:#fffdf6eb;font-family:var(--font-mono);font-size:11px;font-weight:600}.hand-item-detail{margin-top:9px;font-size:11px;color:var(--muted);line-height:1.6}.id-row{display:flex;align-items:center;gap:8px;margin-top:8px}.id-label{font-size:9px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted-3)}.id-value{font-family:var(--font-mono);font-size:11px;color:var(--muted-2);letter-spacing:.02em}.copy-btn{padding:3px 9px;border-radius:999px;border:1px solid rgba(201,162,39,.22);background:transparent;color:var(--sand);font-size:10px;cursor:pointer;line-height:1.6}.copy-btn:hover{border-color:var(--line-hover);color:var(--cream)}.page{flex:1;display:flex;flex-direction:column;min-height:0}.page-body{flex:1;width:100%;max-width:900px;margin:0 auto;padding:36px 26px 48px;overflow:auto}.page-title{font-family:var(--font-display);font-size:32px;font-weight:500;margin:0 0 6px}.page-lede{font-size:14px;color:var(--muted);margin:0 0 24px;max-width:56ch;text-wrap:pretty}.panel{border:1px solid var(--line);border-radius:16px;background:linear-gradient(180deg,#5a382238,#1a100999);padding:22px;margin-bottom:18px}.panel h2{font-family:var(--font-display);font-size:20px;font-weight:600;margin:0 0 14px}.panel-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px;margin-bottom:16px}.net-up{color:var(--green);font-family:var(--font-mono)}.net-down{color:var(--red-soft);font-family:var(--font-mono)}.backdrop{position:fixed;inset:0;z-index:50;background:#0a0603c7;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;padding:20px;animation:fadeUp .2s ease both}.dialog{width:100%;max-width:560px;max-height:84vh;overflow:auto;border:1px solid rgba(201,162,39,.3);border-radius:18px;background:linear-gradient(180deg,#5a382266,#140c06f5);padding:26px;box-shadow:0 40px 90px -40px #000000f2}.dialog h3{font-family:var(--font-display);font-size:24px;font-weight:600;margin:0 0 12px}.dialog p{font-size:13px;color:var(--muted);line-height:1.7;text-wrap:pretty}.dialog-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}.log{font-family:var(--font-mono);font-size:12px;color:var(--sand);line-height:1.8;margin-top:14px;max-height:40vh;overflow:auto}.log-line{white-space:pre-wrap}@media(max-width:899px){.topbar{padding:14px 16px}.lobby-body{padding:26px 16px 36px}.lobby-title{font-size:28px}.rail{position:fixed;inset:0;z-index:40;width:auto;flex:none;border-left:none;background:#140c06f7;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.sheet-card,.auth-card{padding:22px}.sheet-title{font-size:24px}.action-btn{font-size:14px;min-height:54px}.banner{max-width:82%;padding:12px 18px}.banner-text{font-size:18px}}@media(max-width:560px){.stack-chip{display:none}}
