:root{--pk-felt-radius: 46% / 52%;--pk-card-w: 2.55rem;--pk-card-h: 3.6rem;--pk-seat-w: 8.5rem;--x: 50%;--y: 50%;--pk-green: #53fc18;--pk-green-soft: rgba(83, 252, 24, .18);--pk-green-glow: 0 0 18px rgba(83, 252, 24, .45);--pk-amber: #f0a623;--pk-amber-soft: rgba(240, 166, 35, .12)}.pk-body [hidden],body.pk-open-table #pk-lobby{display:none!important}.pk-main{max-width:1280px}.pk-h1{font-family:var(--font-heading);font-size:clamp(1.8rem,4vw,2.6rem);margin:0 0 .35rem;letter-spacing:.02em}.pk-sub{color:var(--text-secondary);margin:0;max-width:58ch;line-height:1.55}.pk-btn{font-family:var(--font-primary);font-weight:600;font-size:.95rem;border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--bg-glass-black);color:var(--text-primary);padding:.7rem 1.25rem;cursor:pointer;transition:background var(--transition-fast),border-color var(--transition-fast),opacity var(--transition-fast)}.pk-btn:hover:not(:disabled){border-color:var(--primary-light)}.pk-btn:disabled{opacity:.32;cursor:not-allowed}.pk-btn--primary{background:linear-gradient(135deg,var(--primary-light),var(--secondary-light));border-color:transparent;color:#0c0612}.pk-btn--quiet{background:transparent;color:var(--text-secondary)}.pk-btn--small{padding:.45rem .8rem;font-size:.85rem}.pk-ghost-btn{align-self:flex-start;border:1px solid var(--border-color);border-radius:var(--radius-md);padding:.6rem 1rem;color:var(--text-secondary);text-decoration:none;font-size:.9rem;white-space:nowrap}.pk-tabs{display:flex;gap:.4rem;flex-wrap:wrap}.pk-tab{border:1px solid var(--border-color);background:transparent;color:var(--text-secondary);border-radius:999px;padding:.45rem 1rem;font-size:.88rem;font-family:var(--font-primary);cursor:pointer}.pk-tab.is-active{color:var(--text-primary);border-color:var(--primary-light);background:#7c3bff29}.pk-empty{color:var(--text-muted);text-align:center;padding:2.5rem 1rem;border:1px dashed var(--border-color);border-radius:var(--radius-lg)}.pk-lobby{display:flex;flex-direction:column;gap:1.5rem}.pk-lobby-head{display:flex;gap:1.5rem;align-items:flex-start;justify-content:space-between;flex-wrap:wrap}.pk-card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(20rem,1fr));gap:1rem}.pk-card{background:var(--bg-panel);backdrop-filter:var(--glass-blur);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:1.25rem;display:flex;flex-direction:column;gap:.8rem;box-shadow:var(--shadow-md)}.pk-card--skeleton{min-height:11rem;justify-content:center;gap:1rem}.pk-card-top{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.pk-card h3{margin:0;font-family:var(--font-heading);font-size:1.15rem}.pk-status{font-size:.72rem;letter-spacing:.09em;text-transform:uppercase;border-radius:999px;padding:.25rem .6rem;border:1px solid var(--border-color);color:var(--text-secondary);white-space:nowrap}.pk-status--running{color:var(--pk-green);border-color:var(--pk-green)}.pk-status--registering{color:var(--primary-light);border-color:var(--primary-light)}.pk-status--finished{color:var(--text-muted)}.pk-status--practice{color:var(--accent-color);border-color:var(--accent-color)}.pk-card-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem 1rem;font-size:.88rem}.pk-fact{display:flex;flex-direction:column;gap:.1rem}.pk-fact span{color:var(--text-muted);font-size:.74rem;text-transform:uppercase;letter-spacing:.07em}.pk-fact strong{font-weight:600}.pk-reqs{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:.35rem}.pk-reqs li{font-size:.78rem;border:1px solid var(--border-color);border-radius:999px;padding:.2rem .6rem;color:var(--text-secondary)}.pk-room{display:flex;flex-direction:column;gap:1.25rem}.pk-back{color:var(--text-secondary);text-decoration:none;font-size:.9rem;display:inline-flex;align-items:center;min-height:32px;padding:4px 2px}.pk-back:hover,.pk-back:focus-visible{color:var(--text-primary)}.pk-sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;border:0}.pk-offline{display:flex;align-items:center;gap:.55rem;margin:0;padding:.6rem .9rem;border:1px solid var(--pk-amber);border-radius:var(--radius-md);background:var(--pk-amber-soft);color:var(--pk-amber);font-size:.9rem}.pk-offline-dot{width:.6rem;height:.6rem;border-radius:50%;background:currentColor;flex:none;animation:pkOfflinePulse 1.4s ease-in-out infinite}@keyframes pkOfflinePulse{0%,to{opacity:1}50%{opacity:.25}}@media(prefers-reduced-motion:reduce){.pk-offline-dot{animation:none}}.pk-room-head{display:flex;gap:1.25rem;align-items:flex-end;justify-content:space-between;flex-wrap:wrap}.pk-room-title h1{font-family:var(--font-heading);font-size:clamp(1.5rem,3.4vw,2.1rem);margin:0 0 .3rem}.pk-clock{display:flex;gap:.5rem;flex-wrap:wrap;background:var(--bg-glass-black);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:.65rem .85rem}.pk-clock-cell{display:flex;flex-direction:column;min-width:4.5rem}.pk-clock-cell--wide{min-width:7.5rem}.pk-clock-label{font-size:.66rem;text-transform:uppercase;letter-spacing:.09em;color:var(--text-muted)}.pk-clock-cell strong{font-family:var(--font-heading);font-size:1.05rem}.pk-clock.is-urgent #pk-clock-time{color:var(--error-color)}.pk-clock.is-break{border-color:var(--secondary-light)}.pk-register{display:flex;gap:1.5rem;flex-wrap:wrap;align-items:center;justify-content:space-between;background:var(--bg-panel);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:1.25rem}.pk-register-body{display:flex;flex-direction:column;gap:.6rem;flex:1 1 20rem}.pk-register-body h2{margin:0;font-family:var(--font-heading);font-size:1.2rem}.pk-register-note{margin:0;color:var(--text-secondary);font-size:.9rem}.pk-register-note.is-error{color:var(--error-color)}.pk-register-actions{display:flex;gap:.6rem;align-items:flex-end;flex-wrap:wrap}.pk-password{display:flex;flex-direction:column;gap:.25rem;font-size:.78rem;color:var(--text-muted)}.pk-password input,.pk-chat-form input,.pk-raise input[type=number]{background:var(--bg-glass-black);border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-primary);font-family:var(--font-primary);padding:.55rem .7rem;min-width:0}.pk-layout{display:grid;grid-template-columns:minmax(0,1fr) 20rem;gap:1.25rem;align-items:start}.pk-felt-wrap{display:flex;flex-direction:column;gap:.85rem;min-width:0}.pk-table-switch{display:flex;align-items:center;gap:.5rem;font-size:.85rem;color:var(--text-secondary)}.pk-table-switch select{background:var(--bg-glass-black);border:1px solid var(--border-color);color:var(--text-primary);border-radius:var(--radius-sm);padding:.35rem .55rem;font-family:var(--font-primary)}.pk-felt{position:relative;aspect-ratio:16 / 10;border-radius:var(--pk-felt-radius);border:1px solid rgba(124,59,255,.35);background:radial-gradient(ellipse at 50% 45%,rgba(124,59,255,.22),transparent 62%),radial-gradient(ellipse at 50% 50%,#1a1030,#0d0819 78%);box-shadow:var(--shadow-lg),inset 0 0 80px #0009}.pk-felt-centre{position:absolute;inset:28% 18%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.6rem;text-align:center;pointer-events:none}.pk-board{display:flex;gap:.35rem;justify-content:center;flex-wrap:nowrap}.pk-pot{font-family:var(--font-heading);font-size:clamp(.95rem,2vw,1.3rem);color:var(--text-primary)}.pk-pot small{display:block;font-size:.62rem;letter-spacing:.1em;color:var(--text-muted);text-transform:uppercase}.pk-felt-msg{color:var(--text-muted);font-size:.9rem}.pk-cardface{width:var(--pk-card-w);height:var(--pk-card-h);border-radius:.32rem;background:#f6f3ef;color:#14100c;display:flex;flex-direction:column;align-items:center;justify-content:center;font-family:var(--font-heading);line-height:1;box-shadow:0 2px 6px #00000080;flex:0 0 auto}.pk-cardface .r{font-size:calc(var(--pk-card-h) * .36)}.pk-cardface .s{font-size:calc(var(--pk-card-h) * .3)}.pk-cardface.is-red{color:#c0293f}.pk-cardface.is-back{background:repeating-linear-gradient(45deg,#2a1750,#2a1750 4px,#3a1f6d 4px 8px);color:transparent;border:1px solid rgba(255,255,255,.12)}.pk-cardface.is-best{outline:2px solid var(--pk-green);outline-offset:1px}.pk-seats{position:absolute;inset:0}.pk-seat{position:absolute;left:var(--x);top:var(--y);transform:translate(-50%,-50%);width:var(--pk-seat-w);display:flex;flex-direction:column;align-items:center;gap:.3rem}.pk-seat-cards{display:flex;gap:.2rem}.pk-seat-cards .pk-cardface{--pk-card-w: 1.9rem;--pk-card-h: 2.7rem}.pk-seat-plate{width:100%;background:#0a0612db;border:1px solid var(--border-color);border-radius:var(--radius-md);padding:.35rem .5rem;text-align:center;font-size:.8rem;line-height:1.25}.pk-seat-name{display:block;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pk-seat-chips{display:block;color:var(--secondary-light);font-family:var(--font-heading)}.pk-seat.is-you .pk-seat-plate{border-color:var(--primary-light)}.pk-seat.is-acting .pk-seat-plate{border-color:var(--pk-green);box-shadow:0 0 0 1px var(--pk-green),var(--pk-green-glow)}.pk-seat.is-folded{opacity:.42}.pk-seat.is-out .pk-seat-name{color:var(--text-muted)}.pk-seat.is-empty .pk-seat-plate{border-style:dashed;color:var(--text-muted)}.pk-seat-tags{display:flex;gap:.2rem;justify-content:center;flex-wrap:wrap}.pk-tag{font-size:.6rem;letter-spacing:.08em;text-transform:uppercase;border-radius:999px;padding:.05rem .35rem;border:1px solid var(--border-color);color:var(--text-muted)}.pk-tag--btn{color:#0c0612;background:#e8c66a;border-color:#e8c66a}.pk-tag--sb,.pk-tag--bb{color:var(--primary-light);border-color:var(--primary-light)}.pk-tag--allin{color:var(--error-color);border-color:var(--error-color)}.pk-seat-bet{font-size:.75rem;font-family:var(--font-heading);color:#e8c66a;background:#0000008c;border-radius:999px;padding:.1rem .45rem;min-height:1.15rem}.pk-seat-bet:empty{visibility:hidden}.pk-actions{background:var(--bg-panel);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:.85rem;display:flex;flex-direction:column;gap:.7rem}.pk-action-timer{height:3px;background:#ffffff14;border-radius:999px;overflow:hidden}.pk-action-timer span{display:block;height:100%;width:100%;background:var(--pk-green)}.pk-action-timer.is-bank span{background:var(--error-color)}.pk-action-row{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.5rem}.pk-btn--fold:hover:not(:disabled){border-color:var(--error-color);color:var(--error-color)}.pk-btn--check:not(:disabled),.pk-btn--call:not(:disabled){border-color:var(--pk-green)}.pk-btn--call:not(:disabled){color:var(--pk-green)}.pk-btn--raise:not(:disabled),.pk-btn--allin:not(:disabled){border-color:var(--accent-color);color:var(--accent-color)}.pk-btn--call,.pk-btn--raise,.pk-btn--allin{font-variant-numeric:tabular-nums}.pk-raise{display:grid;grid-template-columns:minmax(0,1fr) 7.5rem;gap:.5rem;align-items:center}.pk-raise input[type=range]{width:100%;accent-color:var(--primary-light);height:32px;cursor:pointer}.pk-raise input[type=range]::-webkit-slider-thumb{cursor:grab}.pk-raise input[type=range]:active::-webkit-slider-thumb{cursor:grabbing}.pk-raise input[type=number]{text-align:right;font-family:var(--font-heading)}.pk-raise-presets{grid-column:1 / -1}.pk-raise-presets{display:flex;gap:.4rem;flex-wrap:wrap}.pk-seat-controls{display:flex;gap:.5rem;align-items:center;flex-wrap:wrap}.pk-chip-btn{background:transparent;border:1px solid var(--border-color);color:var(--text-secondary);border-radius:999px;padding:.3rem .75rem;min-height:32px;display:inline-flex;align-items:center;justify-content:center;font-size:.8rem;font-family:var(--font-primary);cursor:pointer}.pk-chip-btn.is-on{color:var(--primary-light);border-color:var(--primary-light)}.pk-timebank{font-size:.78rem;color:var(--text-muted);margin-left:auto}.pk-showdown{background:var(--bg-glass-black);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:.6rem .85rem;font-size:.88rem;color:var(--text-secondary)}.pk-showdown strong{color:var(--text-primary)}.pk-side{background:var(--bg-panel);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:.85rem;display:flex;flex-direction:column;gap:.75rem;min-height:24rem;position:sticky;top:1rem}.pk-tabs--side .pk-tab{flex:1 1 auto;text-align:center;padding:.35rem .5rem;font-size:.8rem}.pk-panel{display:flex;flex-direction:column;gap:.6rem;min-height:0}.pk-feed{flex:1 1 auto;overflow-y:auto;max-height:26rem;display:flex;flex-direction:column;gap:.35rem;font-size:.86rem;line-height:1.4}.pk-msg{color:var(--text-secondary);word-break:break-word}.pk-msg b{color:var(--text-primary)}.pk-msg.is-system{color:var(--text-muted);font-style:italic}.pk-msg.is-admin b{color:var(--accent-color)}.pk-chat-form{display:flex;gap:.4rem}.pk-chat-form input{flex:1 1 auto}.pk-chat-note{margin:0;font-size:.78rem;color:var(--text-muted)}.pk-stacks,.pk-prizes{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.3rem;font-size:.86rem}.pk-stacks li,.pk-prizes li{display:flex;justify-content:space-between;gap:.75rem}.pk-stacks li span:last-child,.pk-prizes li span:last-child{font-family:var(--font-heading);color:var(--secondary-light)}.pk-stacks li.is-you{color:var(--primary-light)}.pk-busted{margin-top:.75rem;font-size:.82rem;color:var(--text-muted);display:flex;flex-direction:column;gap:.2rem}.pk-hands{display:flex;flex-direction:column;gap:.6rem;font-size:.82rem;max-height:26rem;overflow-y:auto}.pk-hand{border:1px solid var(--border-color);border-radius:var(--radius-sm);padding:.5rem .6rem;display:flex;flex-direction:column;gap:.3rem}.pk-hand-head{display:flex;justify-content:space-between;color:var(--text-muted);font-size:.75rem}.pk-hand .pk-cardface{--pk-card-w: 1.5rem;--pk-card-h: 2.1rem}.pk-hand-board{display:flex;gap:.15rem}.pk-toolbar{display:flex;align-items:center;justify-content:space-between;gap:.75rem;flex-wrap:wrap}.pk-prefs{display:flex;gap:.4rem;margin-left:auto}body.pk-four-colour .pk-cardface.pk-suit-d{color:#1f6fd0}body.pk-four-colour .pk-cardface.pk-suit-c{color:#17794a}.pk-handname{font-family:var(--font-heading);font-size:.95rem;color:var(--secondary-light);text-align:center;letter-spacing:.01em}.pk-bustout{display:flex;align-items:center;justify-content:space-between;gap:1.25rem;flex-wrap:wrap;background:var(--bg-panel);border:1px solid var(--primary-light);border-radius:var(--radius-lg);padding:1.1rem 1.25rem}.pk-bustout h2{margin:0 0 .2rem;font-family:var(--font-heading);font-size:1.35rem}.pk-bustout p{margin:0;color:var(--text-secondary);font-size:.9rem}.pk-bustout.is-cash{border-color:var(--pk-green)}.pk-bustout.is-cash h2{color:var(--pk-green)}.pk-results{background:var(--bg-panel);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:1.25rem;display:flex;flex-direction:column;gap:1rem}.pk-results h2{margin:0;font-family:var(--font-heading);font-size:1.25rem}.pk-podium{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(11rem,1fr));gap:.75rem}.pk-podium li{border:1px solid var(--border-color);border-radius:var(--radius-md);padding:.85rem;text-align:center;display:flex;flex-direction:column;gap:.2rem}.pk-podium li:first-child{border-color:#e8c66a}.pk-podium .pk-podium-place{font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted)}.pk-podium .pk-podium-name{font-family:var(--font-heading);font-size:1.05rem}.pk-podium .pk-podium-prize{color:var(--secondary-light);font-size:.9rem}.pk-structure-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.4rem .75rem;font-size:.82rem}.pk-structure-summary span{color:var(--text-muted)}.pk-structure-summary strong{font-weight:600}.pk-structure-scroll{max-height:22rem;overflow-y:auto}.pk-structure-table{font-size:.78rem}.pk-structure-table tr.is-now td{color:var(--pk-green);font-weight:600}.pk-structure-table tr.is-past td{color:var(--text-muted)}.pk-structure-table tr.is-break td{border-bottom:1px dashed var(--secondary-light)}.pk-fair{gap:.7rem;font-size:.85rem}.pk-fair-intro{margin:0;color:var(--text-secondary);line-height:1.5}.pk-fair-row{display:flex;flex-direction:column;gap:.25rem}.pk-fair-label{font-size:.68rem;text-transform:uppercase;letter-spacing:.09em;color:var(--text-muted)}.pk-seed{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.72rem;line-height:1.45;word-break:break-all;background:var(--bg-glass-black);border:1px solid var(--border-color);border-radius:var(--radius-sm);padding:.4rem .5rem;color:var(--text-secondary)}.pk-fair-edit{display:flex;gap:.4rem}.pk-fair-edit input{flex:1 1 auto;min-width:0;background:var(--bg-glass-black);border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-primary);font-family:var(--font-primary);padding:.4rem .5rem}.pk-fair-note{margin:0;font-size:.78rem;color:var(--text-muted)}.pk-fair-note.is-error{color:var(--error-color)}.pk-fair-verify{display:flex;flex-direction:column;gap:.25rem}.pk-fair-result{font-size:.8rem;display:flex;flex-direction:column;gap:.3rem}.pk-fair-result.is-good{color:var(--pk-green)}.pk-fair-result.is-bad{color:var(--error-color)}.pk-actions.is-your-turn{position:sticky;bottom:0;z-index:5;border-color:var(--pk-green);box-shadow:var(--shadow-lg);background:var(--bg-panel);backdrop-filter:var(--glass-blur)}@media(max-width:1024px){.pk-layout{grid-template-columns:minmax(0,1fr)}.pk-side{position:static;max-height:none}.pk-feed,.pk-hands{max-height:18rem}}@media(max-width:720px){:root{--pk-seat-w: 6.1rem;--pk-card-w: 1.9rem;--pk-card-h: 2.7rem}.pk-felt{aspect-ratio:4 / 5}.pk-felt-centre{inset:32% 8%}.pk-seat-cards .pk-cardface{--pk-card-w: 1.45rem;--pk-card-h: 2.05rem}.pk-seat-plate{font-size:.7rem;padding:.25rem .35rem}.pk-action-row{grid-template-columns:repeat(3,minmax(0,1fr))}.pk-raise{grid-template-columns:minmax(0,1fr) 5.5rem}.pk-actions.is-your-turn{background:#100a1c}.pk-prefs{margin-left:0}.pk-card-facts{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(prefers-reduced-motion:reduce){.pk-action-timer span{transition:none!important}}
