@layer tokens{:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--color-bg:#f4f3ed;--color-surface:#fffefa;--color-ink:#20352c;--color-muted:#5b6b62;--color-line:#dddfd5;--color-brand:#143c30;--color-accent:#d4e5b1;--radius:18px;--space:8px;font-synthesis:none;text-rendering:optimizelegibility;font-family:system-ui,-apple-system,Segoe UI,sans-serif;line-height:1.55}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--color-bg:#13251e;--color-surface:#1e3429;--color-ink:#eef4e8;--color-muted:#bed0c1;--color-line:#3b5646;--color-brand:#285b40;--color-accent:#cde4ab}:root{--color-bg:#eeeae1;--color-surface:#fffcf5;--color-ink:#243b34;--color-muted:#626c62;--color-line:#d9d4c5;--color-brand:#174d3d;--color-accent:#ead19b;--radius:16px}:root[data-theme=dark]{--color-bg:#101d1b;--color-surface:#1b2c28;--color-ink:#f3efe4;--color-muted:#b7c4ba;--color-line:#3a4d43;--color-brand:#316d53;--color-accent:#ead19b}}@layer base{*{box-sizing:border-box}body{color:var(--color-ink);background:var(--color-bg);min-width:280px;margin:0}a{color:inherit;text-underline-offset:4px}button,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}:focus-visible{outline-offset:4px;outline:3px solid #a65a12}h1,h2,h3,p{margin:0}h1{letter-spacing:-.04em;overflow-wrap:anywhere;font-size:clamp(2rem,3vw,3rem);line-height:1.2}h2{font-size:1.4rem;line-height:1.3}h3{font-size:1.15rem}p{overflow-wrap:anywhere;max-width:65ch}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important}}}@layer components{.play-entry,.create-game,.join-game,.live-lobby,.live-controls{gap:14px;min-width:0;display:grid}.play-entry{max-width:540px;margin-bottom:24px}.play-entry form,.create-game form,.join-game form{gap:8px;min-width:0;display:grid}.play-entry input,.create-game input:not([type=checkbox]),.create-game select,.join-game input,.bid-controls input,.bid-controls select{border:1px solid var(--color-line);background:var(--color-surface);width:100%;min-width:0;min-height:44px;color:var(--color-ink);border-radius:8px;padding:8px 10px}.checkbox-line{align-items:center;gap:10px;min-height:44px;display:flex}.checkbox-line input{flex:none;width:20px;height:20px}.play-welcome{margin-bottom:20px}.play-side{align-content:start;gap:20px;min-width:0;display:grid}.play-error{color:#79241f;background:#fff0ed;border:1px solid #ba6661;border-radius:8px;margin:16px 0;padding:12px 16px}.game-page{min-width:0}.game-topline{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:20px;display:flex}.game-topline a,.game-topline button{align-items:center;min-height:44px;display:inline-flex}.game-actions{flex-wrap:wrap;gap:10px;display:flex}.lobby-seats{gap:8px;margin:0;padding:0;list-style:none;display:grid}.lobby-seats li{border:1px solid var(--color-line);border-radius:8px;justify-content:space-between;gap:12px;padding:12px;display:flex}.lobby-seat-main{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.lobby-ready{color:#198754;font-size:1.4rem;font-weight:800}.live-table{color:#fff;background:radial-gradient(circle,#327a50,#16452f);border:7px solid #234932;border-radius:28px;grid-template:".top.""left trick right"minmax(180px,1fr)".self."/minmax(75px,1fr) minmax(0,2fr) minmax(75px,1fr);place-items:center;gap:12px;min-height:380px;padding:20px;display:grid}.live-seat{text-align:center;overflow-wrap:anywhere;border-radius:10px;justify-items:center;gap:3px;min-width:0;max-width:100%;padding:7px;font-size:.85rem;display:grid}.live-seat--turn{outline:2px solid #f2d57b}.live-seat-0{grid-area:self}.live-seat-1{grid-area:left}.live-seat-2{grid-area:top}.live-seat-3{grid-area:right}.live-trick{text-align:center;flex-wrap:wrap;grid-area:trick;justify-content:center;gap:8px;display:flex}.live-card{color:#22352c;background:#fffefa;border:1px solid #aaa;border-radius:8px;flex:none;place-items:center;width:62px;height:88px;font:700 1.25rem Georgia,serif;display:grid;box-shadow:0 4px 12px #10271940}.live-card:disabled{opacity:.6;cursor:not-allowed}.live-card--playable{opacity:1;border:3px solid #c9a43d;transform:translateY(-3px)}.live-controls{margin-top:16px}.game-status{flex-wrap:wrap;justify-content:space-between;gap:8px;display:flex}.bid-controls{flex-wrap:wrap;gap:8px;display:flex}.live-hand{overscroll-behavior-inline:contain;gap:10px;min-width:0;margin:0;padding:6px 4px 14px;list-style:none;display:flex;overflow-x:auto}.live-hand li{flex:none}.leave-confirm{flex-wrap:wrap;align-items:center;gap:12px;margin-top:16px;display:flex}.settings-panel,.store-note{gap:14px;margin-bottom:18px;display:grid}.settings-panel{max-width:540px}.settings-panel form{gap:10px;display:grid}.settings-panel select{border:1px solid var(--color-line);background:var(--color-surface);min-height:44px;color:var(--color-ink);border-radius:8px;padding:8px}.store-catalog{gap:28px;display:grid}.rules-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:16px;display:grid}.rules-grid .panel{align-content:start;gap:12px;display:grid}.rules-grid p,.rules-grid ul{margin:0}.rules-grid ul{gap:8px;padding-left:20px;display:grid}.privacy-policy{gap:16px;max-width:900px;display:grid}.privacy-policy .panel{gap:12px;display:grid}.privacy-policy ul{gap:8px;margin:0;padding-left:20px;display:grid}:root[data-theme=dark] .panel{background:var(--color-surface)}:root[data-theme=dark] .skin-card{background:#294737}@media (width<=640px){.sidebar nav a:nth-child(3),.sidebar nav a:nth-child(6),.sidebar nav a:nth-child(7){display:none}.live-table{border-width:4px;grid-template-columns:minmax(52px,1fr) minmax(0,2fr) minmax(52px,1fr);gap:4px;min-height:320px;padding:9px}.live-seat{padding:3px;font-size:.7rem}.live-trick .live-card{width:42px;height:60px;font-size:1rem}.live-hand .live-card{width:66px;height:94px}.game-actions>*,.leave-confirm>*{flex:140px}}.app-shell{grid-template-columns:clamp(220px,17vw,260px) minmax(0,1fr);min-height:100dvh;display:grid}.sidebar{border-right:1px solid var(--color-line);flex-direction:column;gap:36px;min-width:0;padding:32px 20px;display:flex}.brand{align-items:center;gap:12px;font-size:1.4rem;font-weight:750;line-height:1.2;text-decoration:none;display:flex}.brand-symbol{background:var(--color-brand);color:var(--color-accent);border-radius:12px;place-items:center;width:44px;height:48px;font-size:2rem;display:grid}.brand-subtitle{letter-spacing:.16em;margin-top:6px;font-size:.6rem;display:block}nav{gap:8px;display:grid}nav a{border-radius:10px;align-items:center;gap:12px;min-height:48px;padding:10px 14px;font-weight:600;text-decoration:none;display:flex}.nav-icon{text-align:center;flex:none;width:22px;font-size:1.25rem;line-height:1}nav a:hover{background:#e5e9dd}nav a.active{background:var(--color-brand);color:var(--color-surface)}.sidebar-note{align-items:center;gap:8px;margin-top:auto;font-size:.75rem;display:flex}.workspace{min-width:0}.topbar{border-bottom:1px solid var(--color-line);justify-content:space-between;gap:12px;padding:22px 40px;font-size:.8rem;display:flex}.content{width:100%;min-width:0;max-width:1280px;margin:auto;padding:clamp(24px,3vw,48px)}.page-heading{gap:12px;margin-bottom:32px;display:grid}.eyebrow{text-transform:uppercase;letter-spacing:.14em;font-size:.7rem;font-weight:700}.muted{color:var(--color-muted)}.hero{background:var(--color-brand);color:var(--color-surface);border-radius:var(--radius);grid-template-columns:1fr 210px;align-items:center;gap:24px;padding:36px;display:grid;overflow:hidden}.hero h2{letter-spacing:-.03em;margin:20px 0 16px;font-size:clamp(2rem,3.5vw,3.2rem)}.hero p{color:#e0e7dc;margin-bottom:24px}.badge{letter-spacing:.04em;border:1px solid;border-radius:6px;padding:4px 9px;font-size:.65rem;display:inline-block}.button{background:var(--color-brand);min-height:48px;color:var(--color-surface);border:0;border-radius:9px;justify-content:center;align-items:center;gap:14px;padding:11px 18px;font-weight:600;text-decoration:none;display:inline-flex}.button:hover{filter:brightness(1.12)}.button:disabled{opacity:.55;cursor:wait}.hero .button{background:var(--color-accent);color:var(--color-brand)}.card-art{height:220px;position:relative}.card-art span{width:126px;height:178px;color:var(--color-brand);background:#f7f5e9;border:1px solid #d9d9ca;border-radius:12px;padding:15px;font:40px/1.15 Georgia,serif;display:block;position:absolute;transform:rotate(-14deg);box-shadow:0 16px 30px #0003}.card-art span+span{color:#a34237;top:24px;left:70px;transform:rotate(12deg)}.section-heading{flex-wrap:wrap;justify-content:space-between;gap:12px;margin:32px 0 16px;display:flex}.section-heading span{font-size:.85rem}.tile-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.panel{background:var(--color-surface);border:1px solid var(--color-line);border-radius:var(--radius);min-width:0;padding:24px}.tile{gap:10px;text-decoration:none;display:grid}.tile:hover{border-color:var(--color-brand)}.tile p{color:var(--color-muted);font-size:.9rem}.tile-symbol{font-size:2rem}.tile>span:last-child{margin-top:8px;font-size:.8rem;font-weight:650}.empty-state{text-align:center;justify-items:center;gap:16px;padding:64px 24px;display:grid}.empty-state a{margin-top:20px;display:inline-block}.empty-symbol{font-size:3rem}.skip-link{background:var(--color-surface);z-index:10;padding:12px;position:fixed;top:-100px;left:16px}.room-browser{align-content:start;gap:20px;min-width:0;display:grid}.play-layout{grid-template-columns:minmax(0,1fr) minmax(230px,280px);align-items:start;gap:24px;display:grid}.room-controls{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:12px;display:grid}.room-controls label{gap:8px;min-width:0;display:grid}.room-controls select{font:inherit;width:100%;min-height:48px;color:var(--color-ink);background:var(--color-surface);border:1px solid var(--color-line);border-radius:9px;padding:8px 12px}.room-list{overflow-wrap:anywhere;grid-template-columns:repeat(auto-fit,minmax(min(100%,270px),1fr));gap:16px;margin:0;padding:0;list-style:none;display:grid}.room-card{align-content:start;gap:18px;display:grid}.room-card-heading{flex-wrap:wrap;justify-content:space-between;align-items:start;gap:8px;display:flex}.room-card-heading h3{overflow-wrap:anywhere;min-width:0}.room-kind,.room-bet{min-height:28px;color:var(--color-brand);background:#edf2e4;border-radius:999px;align-items:center;padding:2px 10px;font-size:.8rem;font-weight:700;display:inline-flex}.room-bet{justify-self:start}.room-occupancy{gap:8px;font-size:.9rem;display:grid}.room-occupancy progress{width:100%;height:9px;accent-color:var(--color-brand)}.profile-panel{grid-template-columns:minmax(0,1fr);justify-items:start;gap:16px;display:grid}.profile-panel form{grid-template-columns:minmax(0,1fr);gap:10px;width:min(100%,360px);min-width:0;max-width:100%;display:grid}.profile-panel input{font:inherit;max-width:100%;min-height:44px;padding:8px 12px}.profile-layout{grid-template-columns:repeat(auto-fit,minmax(min(100%,360px),1fr));align-items:start;gap:20px;display:grid}.skin-gallery{gap:16px;width:100%;display:grid}.skin-grid,.friend-list{grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:12px;width:100%;margin:0;padding:0;list-style:none;display:grid}.skin-card{overflow-wrap:anywhere;justify-items:start;gap:12px;min-width:0;display:grid}.skin-preview{border:4px solid;border-radius:9px;place-items:center;width:82px;height:112px;font:28px Georgia,serif;display:grid}.friend-list li{overflow-wrap:anywhere}.skip-link:focus{top:16px}@media (width<=1199px){.tile-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hero{grid-template-columns:1fr}.card-art{display:none}}@media (width<=1050px){.app-shell{display:block}.sidebar{border-right:0;border-bottom:1px solid var(--color-line);flex-flow:wrap;justify-content:space-between;align-items:center;gap:12px 24px;padding:16px 24px}nav{flex-wrap:wrap;display:flex}nav a{min-height:48px;padding-inline:12px}.sidebar-note{display:none}.topbar{padding:12px 24px}.play-layout{grid-template-columns:minmax(0,1fr) minmax(200px,260px)}}@media (width<=850px){.play-layout{grid-template-columns:minmax(0,1fr)}.app-shell--table .sidebar,.app-shell--table .topbar{display:none}.app-shell--table .content{padding-top:12px;padding-bottom:24px}}@media (width<=640px){.sidebar{padding:max(12px, env(safe-area-inset-top)) 16px 12px;min-height:72px}.brand{font-size:1.15rem}.brand-symbol{width:40px;height:44px}.sidebar nav{z-index:20;padding:8px max(8px, env(safe-area-inset-right)) calc(8px + env(safe-area-inset-bottom)) max(8px, env(safe-area-inset-left));background:var(--color-surface);border-top:1px solid var(--color-line);grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;display:grid;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -4px 20px #20352c14}nav a{text-align:center;overflow-wrap:anywhere;align-content:center;justify-items:center;gap:3px;min-width:0;min-height:56px;padding:4px 2px;font-size:.75rem;display:grid}nav a span:last-child{min-width:0;max-width:100%}.nav-icon{font-size:1.4rem}.topbar{display:none}.content{padding:24px 16px calc(108px + env(safe-area-inset-bottom))}.page-heading{margin-bottom:24px}.hero{padding:24px}.tile-grid,.room-controls{grid-template-columns:1fr}.room-controls .button{width:100%}.room-list{grid-template-columns:1fr;gap:12px}.room-card{padding:20px}.empty-state{padding:36px 16px}}@media (width<=380px){.brand-subtitle{font-size:.55rem}nav a{font-size:.69rem}}@media (height<=480px) and (width<=850px){.sidebar nav{padding-top:4px;padding-bottom:calc(4px + env(safe-area-inset-bottom))}.sidebar nav a{min-height:48px}}.game-table-layout{grid-template-columns:minmax(0,1fr) minmax(240px,290px);align-items:start;gap:20px;display:grid}.game-table-main{min-width:0}.table-summary{background:var(--color-surface);border:1px solid var(--color-line);border-radius:10px;margin-bottom:12px;padding:10px 14px}.party-history{gap:12px;min-width:0;display:grid;position:sticky;top:16px}.penalty-total{font-weight:700}.party-history-details summary,.tie-reveals summary{cursor:pointer;min-height:44px;padding-block:10px;font-weight:650}.party-log{gap:12px;max-height:60vh;margin:12px 0 0;padding:0;list-style:none;display:grid;overflow-y:auto}.party-log li{border:1px solid var(--color-line);border-radius:10px;padding:12px}.party-log h3{margin-bottom:8px}.deal-result{gap:4px;font-size:.85rem;display:grid}.tie-reveals{border:1px solid var(--color-line);border-radius:12px;padding:8px 14px}.tie-reveals ol{padding-left:20px}.tie-reveals li{margin-block:8px}.tie-winner{font-weight:700}.trick-ownership,.autoplay-banner{border:1px solid #b79b48;border-radius:10px;padding:12px}.autoplay-banner{color:#542a16;background:#f4d6c2}.match-result{border:2px solid #b79b48;gap:10px;margin-bottom:16px;display:grid}.seat-bid{color:#ffe69b;font-weight:650}.hand-backs{justify-content:center;margin:4px 0;display:flex}.hand-backs i{color:#e5d8a3;background:#244f3f;border:1px solid #dacb8b;border-radius:3px;width:16px;height:23px;margin-left:-5px;padding-top:3px;font-size:9px;font-style:normal}.hand-backs i:first-child{margin-left:0}.seat-team{color:#f5df98;font-size:.75rem}.trick-play{justify-items:center;gap:5px;max-width:85px;margin:0;display:grid}.trick-play figcaption{overflow-wrap:anywhere;font-size:.65rem}.live-card.live-card--red{color:var(--skin-face-accent,#a52e36)}.google-sign-in{gap:8px;min-width:0;margin-bottom:20px;display:grid}.google-sign-in p{font-size:.85rem}.google-unavailable{color:#626963;cursor:not-allowed;background:#e1e3e1;border:1px solid #949995;border-radius:6px;justify-content:center;align-items:center;gap:12px;width:min(100%,260px);min-height:44px;padding:10px;display:inline-flex}.google-mark{font-size:1.3rem;font-weight:800}.google-conflict{gap:10px;max-width:540px;display:grid}@media (width<=1000px){.game-table-layout{grid-template-columns:minmax(0,1fr)}.party-history{position:static}.party-log{max-height:320px}}@media (width<=640px){.trick-play{max-width:55px}.game-table-main .live-controls{padding:14px}.game-table-layout{gap:14px}}.seat-timer{color:#ffe69b;justify-items:center;gap:3px;display:grid}.seat-timer progress{accent-color:#f2d57b;width:64px;height:6px}.club-menu{flex-wrap:wrap;gap:6px;margin-bottom:24px;display:flex}.club-menu a,.club-menu button{border:1px solid var(--color-line);background:var(--color-surface);min-height:40px;color:var(--color-ink);font:inherit;border-radius:10px;padding:8px 12px;font-size:.85rem;text-decoration:none}.club-menu button:disabled{opacity:.55}.play-entry{grid-template-columns:1fr 1fr;align-items:center;gap:8px 24px;max-width:none}.play-entry>h2,.play-entry>p{grid-column:1}.play-entry>form{grid-column:1;grid-template-columns:minmax(0,1fr) auto}.play-entry>form label{grid-column:1/-1}.play-entry>.google-sign-in{border-left:1px solid var(--color-line);grid-area:1/2/4;margin:0;padding-left:24px}.play-layout{grid-template-columns:minmax(240px,.75fr) minmax(0,1.5fr);align-items:start}.create-game>summary{cursor:pointer;padding-block:10px;font-size:1.2rem;font-weight:700}.create-game>p{margin-block:12px}.create-game fieldset,.join-game fieldset{border:0;gap:8px;min-width:0;margin:0;padding:0;display:grid}.create-game fieldset:disabled,.join-game fieldset:disabled{opacity:.55}.rule-section>summary{cursor:pointer;padding-block:6px}.rule-section summary h2{margin-left:12px;font-size:1.1rem;display:inline}.rule-section>p{margin-block:16px}.rules-grid{grid-template-columns:1fr;gap:12px}.rule-section{padding:18px 24px}.app-shell--table{display:block}.app-shell--table .sidebar,.app-shell--table .topbar{display:none}.app-shell--table .content{max-width:1600px;padding:12px 20px}.game-topline{margin-bottom:4px}.game-page .page-heading{gap:2px;margin-bottom:8px}.game-page .page-heading h1{font-size:1.35rem}.game-page .page-heading .eyebrow{display:none}.game-page .page-heading p{font-size:.8rem}.game-table-layout{grid-template-columns:minmax(0,1fr) 260px;gap:14px}.table-summary{margin-bottom:6px;padding:5px 12px;font-size:.8rem}.live-table{border-width:4px;grid-template:".top.""left trick right"minmax(85px,1fr)".self.""controls controls controls"/minmax(90px,1fr) minmax(0,3fr) minmax(90px,1fr);gap:6px 12px;height:calc(100dvh - 178px);min-height:500px;padding:12px 18px 8px}.live-seat{gap:1px;padding:4px 8px;font-size:.75rem}.live-seat-0{font-size:.7rem}.live-seat-0>span{display:none}.live-seat-0>.seat-team{display:inline}.live-seat-0 .seat-bid,.live-seat-0 .seat-timer{display:grid}.live-table .live-controls{border-top:1px solid #ffffff25;grid-area:controls;align-self:end;gap:7px;width:100%;min-width:0;margin:0;padding:8px 0 0}.live-controls .game-status{justify-content:center;gap:16px;font-size:.85rem}.live-controls .game-actions,.live-controls .bid-controls{justify-content:center;gap:6px}.live-controls .button{min-height:38px;padding:6px 12px;font-size:.8rem}.hand-heading{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.live-hand{grid-template-columns:repeat(var(--hand-count,9), minmax(0, 1fr));justify-self:center;gap:5px;width:min(100%,640px);padding:6px 4px;display:grid;overflow:visible}.live-hand li{min-width:0}.live-hand .live-card{width:100%;min-width:0;height:clamp(66px,11dvh,96px);padding:5px 2px;font-size:clamp(.9rem,1.6vw,1.35rem);transition:transform .15s}.live-hand .live-card:disabled{opacity:.85}.live-hand .live-card--playable:hover{transform:translateY(-8px)}.live-controls>.muted{color:#d6e8da;text-align:center;font-size:.7rem}.live-controls .trick-ownership{text-align:center;color:#ffe69b;border:0;padding:0;font-size:.75rem}.live-controls .autoplay-banner{padding:5px 10px;font-size:.75rem}.party-history{gap:8px;max-height:calc(100dvh - 140px);padding:18px;overflow-y:auto}.party-history h2{font-size:1.05rem}.party-history .tie-reveals{padding:0 8px;font-size:.8rem}.party-history .bidding-result{border-block:1px solid var(--color-line);padding-block:8px;font-size:.85rem}@media (width<=800px){.game-table-layout{grid-template-columns:minmax(0,1fr)}.party-history{max-height:none;position:static}.app-shell--table .content{padding:8px}.live-table{grid-template-columns:minmax(70px,1fr) minmax(0,2fr) minmax(70px,1fr);gap:6px;height:calc(100dvh - 165px);min-height:510px;padding:10px 8px 8px}.live-seat{padding:4px;font-size:.65rem}.live-trick{gap:4px}.live-trick .live-card{width:38px;height:55px;font-size:1rem}.trick-play{max-width:42px}.trick-play figcaption{font-size:.55rem}.live-hand{gap:3px}.live-hand .live-card{font-size:1rem}.play-layout{grid-template-columns:1fr}.play-side{grid-row:1}.play-entry{grid-template-columns:1fr;display:grid}.play-entry>.google-sign-in{border:0;order:2;grid-area:auto/1;padding:0}.club-menu{gap:4px}.club-menu a,.club-menu button{padding:6px 8px;font-size:.75rem}}.join-game>summary{cursor:pointer;min-height:44px;padding-block:8px;font-weight:650}.join-game form{margin-top:12px}@media (width<=800px){.live-table{height:calc(100dvh - 190px);min-height:440px}.hand-backs{max-width:100%}.hand-backs i{flex-shrink:1;width:12px;min-width:0}.live-seat{width:100%}}.app-shell{display:block}.site-header{background:var(--color-surface);border-bottom:1px solid var(--color-line);flex-wrap:wrap;align-items:center;gap:12px 20px;padding:12px 24px;display:flex}.site-header .brand{flex:none;font-size:1.15rem}.site-header .brand-symbol{width:36px;height:40px}.site-header nav{flex-wrap:wrap;flex:1;gap:4px;display:flex}.site-header nav a,.site-header nav button{min-height:40px;color:var(--color-ink);font:inherit;background:0 0;border:0;border-radius:8px;padding:8px 10px;font-size:.8rem;text-decoration:none}.site-header .nav-icon{display:none}.site-header nav a:hover,.site-header nav a:focus-visible{color:#122f22;background:#dce8d7}.site-header nav a.active{color:#fff;background:#194933}.site-header nav button:disabled{color:var(--color-muted);cursor:not-allowed}.header-profile{border:1px solid var(--color-line);overflow-wrap:anywhere;border-radius:10px;align-items:center;gap:8px;max-width:240px;margin-left:auto;padding:6px 12px;font-weight:700;text-decoration:none;display:flex}.header-profile small{font-size:.7rem;font-weight:500;display:block}.header-profile:hover,.header-profile:focus-visible{color:#122f22;background:#dce8d7}.rules-grid{grid-template-columns:repeat(3,minmax(0,1fr));align-items:start}.rule-section{min-width:0}.rule-section summary h2{font-size:1rem}.button{color:#fff;background:#174c34;border:1px solid #103b27;font-weight:700}.button:hover:not(:disabled){color:#fff;filter:none;background:#0c3422}.button:disabled{cursor:not-allowed;opacity:.5}:root[data-theme=dark] .site-header nav a:hover,:root[data-theme=dark] .site-header nav a:focus-visible,:root[data-theme=dark] .header-profile:hover{color:#fff;background:#47664e}:root[data-theme=dark] .site-header nav a.active{color:#172d20;background:#cde99b}:root[data-theme=dark] .button{color:#152b1c;background:#d3eca0;border-color:#e5f4c4}:root[data-theme=dark] .button:hover:not(:disabled){color:#102216;background:#ebffc0}.match-history{align-content:start;gap:16px;display:grid}.historical-matches,.historical-deals{gap:12px;margin:0;padding:0;list-style:none;display:grid}.match-open{text-align:left;background:var(--color-surface);width:100%;color:var(--color-ink);border:1px solid var(--color-line);border-radius:12px;gap:12px;padding:16px;display:grid}.match-open:hover{border-color:var(--color-ink)}.match-summary{overflow-wrap:anywhere;gap:6px;font-size:.85rem;display:grid}.match-dialog{border:1px solid var(--color-line);background:var(--color-surface);width:min(680px,100% - 24px);max-height:calc(100dvh - 40px);color:var(--color-ink);border-radius:18px;padding:24px}.match-dialog::backdrop{background:#06150dc0}.dialog-heading{justify-content:space-between;align-items:center;gap:16px;margin-bottom:20px;display:flex}.match-dialog .historical-deals{margin-top:20px}.historical-deals li{border:1px solid var(--color-line);border-radius:10px;padding:14px}.app-shell--table .site-header{min-height:52px;padding:6px 20px}.app-shell--table .site-header nav,.app-shell--table .brand-subtitle{display:none}.app-shell--table .live-table{height:calc(100dvh - 242px);min-height:440px}.hand-card-label{gap:2px;display:flex}.live-hand li{transition:transform .16s;position:relative}@media (width<=1050px){.site-header nav{flex-basis:100%;order:3}.rules-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=640px){.site-header{gap:10px;padding:10px 12px}.site-header nav{flex-wrap:nowrap;min-width:0;padding-bottom:4px;overflow-x:auto}.site-header nav a,.site-header nav button{white-space:nowrap;flex:none}.header-profile{max-width:165px;font-size:.8rem}.rules-grid{grid-template-columns:minmax(0,1fr)}.app-shell--table .site-header{padding:6px 8px}.app-shell--table .live-table{height:calc(100dvh - 250px);min-height:425px}.live-hand{touch-action:pan-y;min-height:125px;padding-top:24px;padding-bottom:8px}.live-hand--overlap{width:min(100%, calc(64px + (var(--hand-count) - 1) * 32px));gap:0;display:flex}.live-hand--overlap li{flex:32px;width:32px;min-width:0}.live-hand--overlap li:last-child{flex:0 0 64px}.live-hand--overlap .live-card{place-items:start;width:64px;height:92px;padding:6px 4px}.hand-card-label{flex-direction:column;align-items:center;min-width:20px;font-size:.95rem;line-height:1.2}.live-hand--preview li{transform-origin:bottom;transform:scale(.94)}.live-hand--preview li.hand-card--selected{z-index:20;transform:translateY(-14px)scale(1.16)}.live-hand--preview .hand-card--selected .live-card{transform:none;box-shadow:0 6px 18px #081c0cc0}.dialog-heading h2{font-size:1.2rem}}.hand-touch-hint{display:none}@media (pointer:coarse){.hand-touch-hint{display:inline}.hand-mouse-hint{display:none}}.site-header{z-index:8;position:sticky;top:0;box-shadow:0 2px 10px #142c2012}#main,#page-title{scroll-margin-top:170px}.play-layout>.room-browser{grid-column:1/-1}.play-layout>.play-side{grid-row:auto}.room-browser{display:block}.room-browser>summary{cursor:pointer;padding-block:10px;font-size:1.2rem;font-weight:700}.room-browser-content{gap:16px;padding-top:16px;display:grid}.room-browser .room-controls{grid-template-columns:minmax(190px,1fr) minmax(210px,1.2fr) minmax(120px,.6fr) auto}.room-visibility{gap:8px;min-width:0;display:grid}.room-visibility button{min-height:48px;color:var(--color-ink);background:var(--color-bg);border:1px solid var(--color-line);font:inherit;cursor:pointer;border-radius:9px;gap:4px;padding:4px;display:flex}.room-visibility button span{border-radius:6px;flex:1;padding:5px 8px}.room-visibility [data-active=true]{background:var(--color-brand);color:#fff}.room-pagination{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.room-pagination p{margin:0;font-size:.9rem}@media (width<=1100px){.room-browser .room-controls{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=640px){.room-browser .room-controls{grid-template-columns:minmax(0,1fr)}.room-pagination p{flex:1 0 100%;order:-1}}.room-filter-chips{border:0;min-width:0;margin:0;padding:0}.room-filter-chips legend{margin-bottom:8px;font-weight:600}.room-filter-chips p{margin:0 0 8px;font-size:.85rem}.room-chip-options{flex-wrap:wrap;gap:8px;display:flex}.room-filter-chip{cursor:pointer;position:relative}.room-filter-chip input{opacity:0;width:1px;height:1px;position:absolute}.room-filter-chip span{border:1px solid var(--color-line);background:var(--color-surface);border-radius:999px;min-height:44px;padding:9px 14px;display:block}.room-filter-chip input:checked+span{background:var(--color-brand);border-color:var(--color-brand);color:#fff}.room-filter-chip input:focus-visible+span{outline:3px solid var(--color-brand);outline-offset:3px}.ad-rail{display:none}@media (width>=1600px){.workspace--ad-preview{grid-template-columns:minmax(140px,1fr) minmax(0,1280px) minmax(140px,1fr);align-items:start;gap:16px;padding:0 16px;display:grid}.workspace--ad-preview .content{grid-area:1/2}.ad-rail{border:1px dashed var(--color-line);border-radius:var(--radius);min-height:240px;color:var(--color-muted);text-align:center;place-items:start center;margin-top:24px;padding:16px;font-size:.75rem;display:grid;position:sticky;top:16px}.ad-rail--left{grid-area:1/1}.ad-rail--right{grid-area:1/3}}.friends-page{gap:32px;max-width:980px;display:grid}.friend-section{gap:16px;min-width:0;display:grid}.friend-section h2,.friend-section h3,.friend-section p{margin:0}.friend-section-heading{gap:4px;display:grid}.friend-search-field{gap:6px;max-width:460px;display:grid}.friend-search-field label{font-weight:700}.friend-search-field input{border:1px solid var(--color-line);background:var(--color-surface);width:100%;min-height:44px;color:var(--color-ink);font:inherit;caret-color:var(--color-brand);border-radius:10px;padding:9px 12px}.friend-search-field input:focus-visible{outline:2px solid var(--color-brand);outline-offset:2px}.friend-action-list{border-top:1px solid var(--color-line);gap:0;margin:0;padding:0;list-style:none;display:grid}.friend-action-list li{border-bottom:1px solid var(--color-line);justify-content:space-between;align-items:center;gap:16px;min-width:0;padding:12px 0;display:flex}.friend-player-details{overflow-wrap:anywhere;gap:2px;min-width:0;display:grid}.friend-player-details strong{font-size:1.05rem}.friend-status{color:var(--color-muted);flex:none;font-size:.9rem;font-weight:700}.friend-request-columns{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;display:grid}.friend-request-columns>div{align-content:start;gap:10px;min-width:0;display:grid}.friend-request-actions{flex-wrap:wrap;gap:8px;display:flex}.friend-request-actions .button{padding:8px 12px}.button-secondary{color:var(--color-ink);border:1px solid var(--color-line);background:0 0}.friends-notification{align-items:center;margin-left:6px;display:inline-flex}.friends-notification-dot{width:8px;height:8px;box-shadow:0 0 0 2px var(--color-surface);background:#c73d37;border-radius:50%;display:block}.friends-notification-label{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (width<=700px){.friend-request-columns{grid-template-columns:1fr}.friend-action-list li{flex-direction:column;align-items:flex-start;gap:8px}}body{background-image:radial-gradient(at top,#a18a5520,#0000 65%)}.site-header{color:#f6f0df;background:#122d26;border-bottom:1px solid #b49b5a70;box-shadow:0 4px 20px #07171126}.site-header .brand-symbol{color:#19382c;background:#e5c88b;border-radius:7px;transform:rotate(-6deg);box-shadow:3px 3px #ffffff20}.site-header .brand-subtitle{color:#c6cabc}.site-header nav a,.site-header nav button{color:#e8e6db}.site-header nav button:disabled{color:#aebcaf}.site-header nav a.active,:root[data-theme=dark] .site-header nav a.active{color:#18372b;background:#e7ce94}.header-profile{background:#ffffff08;border-color:#6d806750}.header-profile .muted{color:#ccd3c5}.content{max-width:1380px}.panel{box-shadow:0 5px 18px #142c2008}.button{background:linear-gradient(#276248,#184b37);border-color:#153c2c;border-radius:10px;transition:background .15s,box-shadow .15s;box-shadow:inset 0 1px #ffffff20,0 3px 6px #102c1e18}.club-intro{isolation:isolate;color:#fff7e5;background:repeating-linear-gradient(45deg,#ffffff02 0 1px,#0000 1px 5px),radial-gradient(at 70% 0,#37694d,#12392e 75%);border:1px solid #a38d5860;border-radius:22px;grid-template-columns:minmax(0,1fr) 240px;align-items:center;gap:20px;margin-bottom:24px;padding:30px 36px 0;display:grid;position:relative;overflow:hidden;box-shadow:inset 0 0 0 5px #ffffff04,0 12px 26px #0a2a2114}.club-intro .page-heading{gap:12px;margin:0}.club-intro h1{letter-spacing:-.035em;font-family:Georgia,Times New Roman,serif;font-size:clamp(2rem,3.5vw,3.5rem);font-weight:500}.club-intro .eyebrow{color:#e7cc91}.club-intro p{color:#d4ded1;max-width:48ch}.club-intro-footer{color:#e2d4ad;border-top:1px solid #ddc78e30;flex-wrap:wrap;grid-column:1/-1;justify-content:space-between;gap:12px;padding:14px 0;font-size:.8rem;display:flex}.club-intro-footer>span{align-items:center;gap:10px;display:flex}.club-intro-footer a{align-items:center;min-height:28px;display:inline-flex}.club-deck{pointer-events:none;height:180px;position:relative}.club-deck-card{color:#233a32;background:#fffaf0;border:1px solid #dfd8c5;border-radius:9px;width:104px;height:146px;padding:10px;font-family:Georgia,serif;position:absolute;top:10px;left:50px;box-shadow:0 8px 20px #0005}.club-deck-card small{font-size:22px;line-height:1;display:block}.club-deck-card b{text-align:center;font-size:58px;line-height:1;display:block}.club-deck-card--back{color:#dbc593;background:repeating-linear-gradient(45deg,#d1b47028 0 1px,#0000 1px 6px),#193f35;border:5px solid #ede0bc;place-items:center;font-size:44px;display:grid;top:18px;left:12px;transform:rotate(-22deg)}.club-deck-card--ace{transform:rotate(-5deg)}.club-deck-card--heart{color:#ae3840;top:25px;left:105px;transform:rotate(16deg)}.play-entry{border-top:3px solid #b69b60}.play-entry>p{color:var(--color-muted);font-size:.9rem}.create-game>summary,.join-game>summary,.room-browser>summary{color:var(--color-ink)}.room-card{background-image:linear-gradient(145deg,#b5984c0a,#0000 60%);border-top:3px solid #689179}.room-card:hover{border-color:#a18b55;box-shadow:0 8px 20px #142c2010}.room-kind,.room-bet{color:#354432;background:#eae0c4}.live-table{background:repeating-linear-gradient(35deg,#ffffff02 0 1px,#0000 1px 4px),radial-gradient(at 50% 35%,#347359,#174c3b 65%,#123b30);border:8px solid #302d25;border-radius:90px;box-shadow:inset 0 0 0 2px #c5ad6d65,inset 0 0 45px #021d2680,0 12px 28px #061d2426}.live-seat{background:#0a2827c9;border:1px solid #acc9af35;border-radius:14px;min-width:75px;padding:8px 12px;box-shadow:0 4px 12px #061c2230}.live-seat--turn{outline-offset:3px;background:#223f32;outline:2px solid #f0cd78;box-shadow:0 0 22px #efca6a30}.seat-avatar{color:#203d30;background:linear-gradient(145deg,#e3d1a2,#b3975b);border:1px solid #c7b17b;border-radius:50%;place-items:center;width:30px;height:30px;margin-bottom:3px;font:700 16px Georgia,serif;display:grid}.live-seat-0 .seat-avatar{display:none}.live-trick>span{color:#d1dfce;border:1px dashed #cbd9bf45;border-radius:50%;padding:24px 14px;font-size:.8rem}.live-card{background:var(--skin-face-background,linear-gradient(145deg, #fffef9, #eee7d7));color:var(--skin-face-ink,#22352c);border-color:var(--skin-face-frame,#c7bea7);position:relative;box-shadow:0 4px #c2bba8,0 7px 12px #06192355}.live-hand .live-card{place-items:start;padding:7px}.hand-card-label{flex-direction:column;align-items:center;gap:0;font-size:.95rem;line-height:1}.card-center-suit{pointer-events:none;place-items:center;font-size:clamp(1.6rem,3vw,2.3rem);display:grid;position:absolute;inset:0}.card-bottom-index{pointer-events:none;font-size:.7rem;line-height:1;position:absolute;bottom:5px;right:5px;transform:rotate(180deg)}.live-card--playable{border:2px solid #f0cf7a;box-shadow:0 3px #a28b50,0 0 14px #f1d48435}.live-card:focus-visible{outline:3px solid #fff0b8}.live-table .live-controls{background:linear-gradient(#0000,#061f2226);border-top-color:#decf9b35;border-radius:0 0 64px 64px}.live-controls .game-status{color:#f3e3b6}.live-controls .button,:root[data-theme=dark] .live-controls .button{color:#23382b;background:linear-gradient(#f0dba3,#d8ba76);border-color:#b99c5d;min-height:44px}.live-controls .button:hover:not(:disabled){color:#23382b;background:#f6e4b5}.hand-backs i{background:repeating-linear-gradient(45deg, var(--skin-back-foreground,#d2bb7d35) 0 1px, transparent 1px 4px), var(--skin-back-background,#173d38);border-color:var(--skin-back-accent,#dacb8b);color:var(--skin-back-accent,#e5d8a3);box-shadow:1px 2px 3px #0003}.party-history{border-top:3px solid #b69b60}@media (width<=800px){.club-intro{grid-template-columns:minmax(0,1fr) 155px;gap:14px;padding:24px 22px 0}.club-deck{transform-origin:0;height:160px;transform:scale(.75)}.live-table{border-width:5px;border-radius:36px}.live-seat{border-radius:10px;min-width:0;padding:6px 4px}.seat-avatar{width:24px;height:24px;font-size:13px}.live-table .live-controls{border-radius:0 0 24px 24px}.card-center-suit{font-size:1.65rem}}@media (width<=480px){.club-intro{grid-template-columns:minmax(0,1fr);padding:24px 20px 0}.club-deck{display:none}.club-intro h1{font-size:2.15rem}.club-intro .page-heading{gap:10px}.club-intro-footer{font-size:.75rem}.live-hand:not(.live-hand--overlap) .card-center-suit{padding-top:14px;font-size:1.3rem}.card-bottom-index{font-size:.6rem}}.game-topline-actions button{border:1px solid var(--color-line);background:var(--color-surface);color:var(--color-ink);border-radius:10px;padding:8px 14px}.live-hand .live-card:disabled{opacity:1;background:#e5e1d6;box-shadow:0 3px #b9b3a2,0 5px 8px #06192340}.header-actions{justify-content:flex-end;align-items:center;gap:12px;min-width:0;max-width:100%;margin-left:auto;display:flex}.header-actions .header-profile{min-width:0;margin-left:0}.header-preferences{flex:none;align-items:center;gap:6px;display:flex}.header-theme-toggle,.header-language{color:#f6f0df;min-height:40px;font:inherit;background:#ffffff08;border:1px solid #6d806780;border-radius:9px}.header-theme-toggle{place-items:center;width:40px;padding:0;font-size:1.4rem;display:grid}.header-language{cursor:pointer;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;width:60px;padding:6px;font-size:.8rem;font-weight:700}.header-language option{color:#f6f0df;background:#122d26}.header-theme-toggle:hover,.header-language:hover{background:#ffffff18;border-color:#e5c88b}.header-theme-toggle:focus-visible,.header-language:focus-visible{outline-color:#e5c88b}@media (width<=640px){.site-header .brand{gap:8px;font-size:1rem}.site-header .brand-subtitle{display:none}.site-header .brand-symbol{width:30px;height:34px}.header-actions{gap:8px}.header-actions .header-profile{max-width:110px;padding:6px 8px}.header-profile>span:last-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.header-preferences{gap:4px}.header-theme-toggle{width:36px}.header-language{width:54px}}.live-table .live-hand{--hand-card-width:clamp(56px, 6vw, 76px);width:min(100%, calc(var(--hand-card-width) * var(--hand-count) + (var(--hand-count) - 1) * 6px + 8px));justify-content:center;align-items:end;gap:0;max-width:100%;min-height:0;margin:0;padding:20px 4px 8px;display:flex;overflow:visible}.live-table .live-hand li{flex:1 1 0;width:0;min-width:0}.live-table .live-hand li:last-child{flex:0 0 var(--hand-card-width)}.live-table .live-hand .live-card{width:var(--hand-card-width);min-width:var(--hand-card-width);max-width:var(--hand-card-width);height:calc(var(--hand-card-width) * 1.44);padding:6px 4px}.app-shell--table .live-table{grid-template-rows:auto minmax(100px,1fr) auto auto;height:auto;min-height:max(500px,100dvh - 242px);padding-bottom:16px}.live-controls .game-status{flex-wrap:wrap;justify-content:center;align-items:center;gap:8px 14px;min-height:34px;display:flex}.live-controls .game-status .trick-ownership{border:2px solid;border-radius:9px;margin:0;padding:5px 12px;font-size:.85rem;font-weight:700;line-height:1.3}.live-controls .game-status .trick-ownership--ours{color:#c9ffda;background:#123c2d;border-color:#8ce0a9}.live-controls .game-status .trick-ownership--opponents{color:#ffe0dc;background:#512a2a;border-color:#ff8c8c}.turn-timer{white-space:nowrap;font-variant-numeric:tabular-nums;color:#f3e3b6;font-size:.8rem}.autoplay-controls{justify-items:center;gap:6px;min-width:0;display:grid}.live-controls .autoplay-banner{text-align:center;width:fit-content;max-width:100%;margin:0}.live-controls .resume-control{white-space:normal;justify-self:center;width:fit-content;max-width:min(100%,290px);padding-inline:18px}@media (width<=800px){.app-shell--table .live-table{min-height:max(510px,100dvh - 250px)}.live-table .live-hand{--hand-card-width:clamp(56px, 16vw, 64px)}.live-controls .game-status{gap:8px}.live-controls .game-status .trick-ownership{padding:5px 8px;font-size:.75rem}.turn-timer{font-size:.75rem}}.quick-play-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:16px;margin-bottom:24px;display:grid}.quick-play-card{border-top:3px solid #b69b60;align-content:start;justify-items:start;gap:12px;display:grid}.quick-play-card p{font-size:.85rem}.profile-cosmetics{grid-column:1/-1;gap:20px;display:grid}.profile-cosmetics .skin-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,210px),1fr))}.profile-cosmetics .skin-card{align-content:start;align-items:start;gap:8px;padding:14px}.profile-cosmetics .skin-card p{font-size:.8rem}.profile-cosmetics .skin-card .button{width:100%;min-height:40px;padding:6px 10px;font-size:.8rem}.store-access-note,.achievement-summary{margin-bottom:20px}.leaderboard-list,.achievement-grid{gap:14px;margin:0;padding:0;list-style:none;display:grid}.leaderboard-player{grid-template-columns:36px minmax(0,1fr) auto;align-items:center;gap:16px;display:grid}.leaderboard-player h2{overflow-wrap:anywhere;font-size:1rem}.leaderboard-player p{font-size:.8rem}.leaderboard-place{color:var(--color-muted);text-align:center;font-size:1.2rem}.achievement-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,250px),1fr))}.achievement-card{align-content:start;gap:12px;display:grid}.achievement-card>span{color:#aa7d2a;font-size:2rem}.achievement-card h2{font-size:1.1rem}.achievement-card progress{width:100%;accent-color:var(--color-brand)}.platform-rules{margin-bottom:32px}.platform-rules>h2,.game-rules-heading{margin-bottom:18px}.platform-rules summary h3{font-size:1rem;display:inline}.game-topline-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.live-table{grid-template-rows:auto auto minmax(100px,1fr) auto auto;grid-template-areas:"status status status"".top.""left trick right"".self.""controls controls controls"}.live-table .table-match-status{color:#fff7e7;border-color:#d7bc7866;border:1px solid var(--color-line);background:#092a27dc;background:var(--color-surface);text-align:center;border-radius:12px;flex-wrap:wrap;grid-area:status;justify-content:center;justify-self:center;align-items:center;gap:4px 18px;min-width:0;max-width:100%;margin:0;padding:8px 14px;font-size:clamp(.95rem,1.25vw,1.2rem);font-weight:650;display:flex}.table-trump strong{color:#f0c875;font-size:clamp(1.35rem,2vw,1.9rem);line-height:1}.live-table .live-hand{--hand-card-width:clamp(72px, min(8vw, 12dvh), 108px)}.live-trick{max-width:100%}.live-trick .trick-play{max-width:none}.live-trick .live-card{width:clamp(68px,min(7vw,12dvh),104px);height:calc(1.44*clamp(68px,min(7vw,12dvh),104px));font-size:clamp(1.2rem,2vw,1.7rem)}.live-table .hand-backs i{width:22px;height:31px;margin-left:-6px}.live-table .hand-backs i:first-child{margin-left:0}.app-shell--table .live-table{grid-template-rows:auto auto minmax(100px,1fr) auto auto;min-height:min(500px,100dvh - 240px)}.game-page:fullscreen{background:var(--color-bg);width:100vw;height:100dvh;color:var(--color-ink);padding:12px clamp(8px,2vw,24px);overflow-y:auto}.game-page:fullscreen .live-table{min-height:max(500px,100dvh - 190px)}.leave-confirm-backdrop{z-index:1000;background:#061923b8;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.leave-confirm{width:min(100%,440px);max-height:calc(100dvh - 32px);overflow-y:auto;box-shadow:0 18px 60px #0008}@media (width<=800px){.live-trick{grid-template-rows:repeat(2,minmax(0,auto));grid-auto-columns:max-content;grid-auto-flow:column;place-content:center;gap:6px;display:grid}.live-trick .live-card{width:clamp(52px,14vw,72px);height:calc(1.44*clamp(52px,14vw,72px))}.live-table .hand-backs i{width:19px;height:27px;margin-left:-6px}.live-table .live-hand{--hand-card-width:clamp(56px, 16vw, 64px)}}.game-table-main,.live-table{box-sizing:border-box;width:100%;max-width:100%}.live-table{grid-template-rows:auto minmax(100px,1fr) auto auto;grid-template-areas:".top.""left trick right"".self.""controls controls controls";position:relative}.live-table .table-match-status{z-index:2;color:#f7f1df;text-align:left;background:#092a27e8;border:1px solid #d7bc7866;border-radius:10px;justify-items:start;gap:2px;width:max-content;max-width:min(220px,100% - 28px);margin:0;padding:7px 10px;font-size:.7rem;font-weight:500;line-height:1.25;display:grid;position:absolute;top:12px;left:14px;box-shadow:0 4px 14px #061c2238}.table-trump{font-size:.8rem;font-weight:700}.table-trump strong{color:#ffd978;font-size:clamp(1.25rem,2vw,1.7rem)}.table-score{color:#fff8e8}.table-score strong{color:#fff}.table-penalties{color:#cfdbd2;flex-wrap:wrap;gap:1px 8px;font-size:.62rem;display:flex}.live-seat-1 .hand-backs,.live-seat-3 .hand-backs{max-width:100%;overflow:hidden}.live-seat-1 .hand-backs i,.live-seat-3 .hand-backs i{width:14px;height:21px;margin-left:-5px;padding-top:2px}.live-seat-1 .hand-backs i:first-child,.live-seat-3 .hand-backs i:first-child{margin-left:0}@media (width<=800px){.live-table .table-match-status{max-width:min(145px,100% - 16px);padding:6px 8px;font-size:.62rem;top:8px;left:8px}.table-trump{font-size:.7rem}.table-trump strong{font-size:1.2rem}.table-penalties{gap:0;font-size:.56rem;display:grid}}@media (width<=480px){.live-table .table-match-status{max-width:112px}.table-penalties span:nth-child(2){display:none}}.table-header-toggle{display:none}@media (width<=800px),(height<=600px) and (width<=1000px){.app-shell--table .table-header-toggle{color:#f6f0df;min-height:32px;font:inherit;background:#ffffff0d;border:1px solid #b49b5a70;border-radius:8px;justify-content:center;align-items:center;margin-left:auto;padding:4px 9px;font-size:.72rem;display:inline-flex}.app-shell--table .site-header--collapsed{justify-content:flex-end;gap:0;min-height:0;padding:3px 8px}.app-shell--table .site-header--collapsed>.brand,.app-shell--table .site-header--collapsed>nav,.app-shell--table .site-header--collapsed>.header-actions,.game-topline-actions .fullscreen-toggle{display:none}.app-shell--table .content{padding:5px}.app-shell--table .live-table{min-height:max(420px,100dvh - 150px);padding-inline:6px}.live-seat-2{justify-self:center;width:min(150px,42vw)}.live-table .hand-backs{max-width:100%;overflow:visible}.live-table .hand-backs i{flex:0 0 26px;width:26px;height:37px;margin-left:-19px;padding:0}.live-table .hand-backs i:first-child{margin-left:0}.live-trick{grid-template-rows:repeat(2,minmax(0,auto));grid-template-columns:repeat(2,max-content);grid-auto-flow:row;grid-auto-columns:unset}}@media (width<=480px){.game-topline{gap:6px}.live-table{grid-template-columns:minmax(56px,.85fr) minmax(0,2.3fr) minmax(56px,.85fr);gap:4px}.live-seat-1,.live-seat-3{width:100%}.live-seat-2{width:min(132px,44vw)}.live-table .hand-backs i{flex-basis:22px;width:22px;height:32px;margin-left:-17px}}.game-table-layout--history-collapsed{grid-template-columns:minmax(0,1fr) 48px}.party-history{position:relative}.party-history-toggle{z-index:2;color:#f5df98;background:#173d38;border:1px solid #b69b60;border-radius:8px;place-items:center;width:32px;min-height:32px;padding:0;font-size:1.4rem;line-height:1;display:grid;position:absolute;top:10px;right:10px}.party-history--collapsed{border-top-width:1px;min-height:180px;padding:0}.party-history--collapsed .party-history-toggle{top:8px;right:7px}.party-history--collapsed .party-history-content{display:none}.live-table .table-match-status{width:auto;max-width:calc(100% - 32px);box-shadow:none;background:0 0;border:0;border-radius:0;padding:0;top:14px;left:16px}.table-trump{color:#fff7e7;text-shadow:0 2px 5px #061c22cc}@media (width<=1000px){.game-table-layout--history-collapsed{grid-template-columns:minmax(0,1fr)}.party-history-toggle{display:none}.party-history--collapsed{min-height:0;padding:var(--panel-padding,20px);border-top-width:3px}.party-history--collapsed .party-history-content{display:contents}}.friend-profile{gap:2rem;display:grid}.friend-presence{color:var(--color-muted);font-size:.95rem}.friend-statistics{flex-wrap:wrap;gap:1.5rem 3rem;margin:0;display:flex}.friend-statistics dt{color:var(--color-muted)}.friend-statistics dd{font-variant-numeric:tabular-nums;margin:.25rem 0 0;font-weight:700}.friend-face-preview{width:100px;height:148px}.friend-skin{border-top:1px solid var(--color-line);min-width:0;padding-top:1rem}.friend-skin .button{white-space:normal}.friend-achievements{padding:0;list-style:none}.friend-achievements li{border-bottom:1px solid var(--color-line);padding:1rem 0}.friend-achievements h3,.friend-achievements p{margin:.25rem 0}.quick-play-card--ranked{background:var(--color-surface);border-top-color:var(--color-brand)}.quick-play-card--bots{background:color-mix(in srgb, var(--color-surface) 92%, var(--color-accent))}.quick-play-card h2{margin:0 0 12px;font-size:1.2rem}.leaderboard-player--self{background:color-mix(in srgb, var(--color-surface) 85%, var(--color-brand));outline:2px solid var(--color-ink);outline-offset:2px}.leaderboard-self-label{font-size:.85em}.personal-rank{margin-bottom:24px}.live-team-points{font-variant-numeric:tabular-nums;font-size:.8rem;line-height:1.5}.room-rating-notice{font-weight:600}.match-history{grid-column:1/-1}.historical-matches{grid-template-columns:1fr;margin-top:16px}.historical-matches>li,.historical-matches .match-open{height:100%}.match-history [hidden]{display:none}@media (width>=680px){.historical-matches{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width>=1100px){.historical-matches{grid-template-columns:repeat(3,minmax(0,1fr))}}.live-card.live-card--illustrated,.live-table .live-hand .live-card.live-card--illustrated{background:var(--skin-face-background,#fffef9);border-radius:7px;padding:0;overflow:hidden}.live-card--illustrated>.card-face{position:absolute;inset:0}.card-face{border-radius:inherit;pointer-events:none;-webkit-user-select:none;user-select:none;width:100%;height:100%;display:block}.deck-paper{fill:var(--deck-paper)}.deck-border{fill:none;stroke:var(--deck-frame);stroke-width:.6px}.deck-index{fill:currentColor;letter-spacing:-.7px;font:700 14px Georgia,Times New Roman,serif}.deck-portrait-frame{fill:none;stroke:var(--deck-frame);stroke-width:.65px}.deck-corner-flourish,.deck-ace-wreath,.deck-ace-flourish{fill:none;stroke:var(--deck-frame);stroke-width:.9px}.deck-corner-flourish,.deck-ace-wreath{opacity:0}.deck-suit-engraving{stroke:var(--deck-paper)}[data-deck=vintage] .deck-index{font-family:Palatino Linotype,Book Antiqua,Georgia,serif;font-weight:700}[data-deck=vintage] .deck-corner-flourish{opacity:.8;stroke-width:.5px}[data-deck=vintage] .deck-ace-wreath{opacity:.9}[data-deck=vintage] .deck-court-art{mix-blend-mode:multiply}[data-deck=botanical] .deck-index{font-style:italic}[data-deck=botanical] .deck-ace-wreath{opacity:1;stroke-width:1.4px}[data-deck=botanical] .deck-border{stroke-dasharray:1 2}[data-deck=botanical] .deck-court-art{mix-blend-mode:multiply}[data-deck=neon] .deck-index{font-family:Trebuchet MS,sans-serif;font-size:13px;font-weight:700}[data-deck=neon] .deck-border{stroke-width:1px}[data-deck=neon] .deck-corner-flourish{opacity:1;stroke:#56dce9}[data-deck=neon] .deck-ace-flourish{stroke:currentColor;stroke-width:2px}[data-deck=royal] .deck-index{font-family:Bodoni MT,Georgia,serif;font-weight:400}[data-deck=royal] .deck-border{stroke-width:1px}[data-deck=royal] .deck-corner-flourish,[data-deck=royal] .deck-ace-wreath{opacity:1}.skin-face-fan{align-items:center;width:min(100%,176px);min-height:130px;padding:8px 8px 12px;display:flex;overflow:hidden}.skin-face-fan .mini-deck-card{border-radius:6px;flex:0 0 68px;width:68px;height:98px;display:block;box-shadow:0 4px 8px #0003}.skin-face-fan .mini-deck-card+.mini-deck-card{margin-left:-24px}.skin-face-fan .mini-deck-card:first-child{transform:rotate(-9deg)translateY(5px)}.skin-face-fan .mini-deck-card:last-child{transform:rotate(9deg)translateY(5px)}.deck-dialog{border:1px solid var(--color-line,#c8b77a);background:var(--color-surface,#f9f6ed);width:min(1160px,100vw - 28px);max-width:none;max-height:calc(100dvh - 28px);color:var(--color-ink,#223c33);border-radius:20px;margin:auto;padding:24px;overflow:auto;box-shadow:0 24px 100px #0008}.deck-dialog::backdrop{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#061914cc}.deck-dialog-heading{justify-content:space-between;align-items:center;gap:16px;display:flex}.deck-dialog-heading h2{margin:4px 0}.deck-eyebrow{letter-spacing:.08em;text-transform:uppercase;margin:0;font-size:.75rem}.deck-dialog>p{max-width:760px;font-size:.9rem}.deck-suit-filters{flex-wrap:wrap;gap:8px;margin:20px 0;display:flex}.deck-suit-filters button{border:1px solid var(--color-line,#b6b198);min-height:44px;color:inherit;cursor:pointer;font:inherit;background:0 0;border-radius:30px;padding:8px 14px}.deck-suit-filters button[aria-pressed=true]{color:#fff9e5;background:#234f40;border-color:#234f40}.deck-suit-filters button:focus-visible{outline-offset:3px;outline:3px solid #b88a29}.deck-preview-rows{gap:22px;display:grid}.deck-preview-rows h3{margin:0 0 12px;font-size:.95rem}.deck-preview-grid{grid-template-columns:repeat(9,minmax(0,1fr));gap:10px;margin:0;padding:0;list-style:none;display:grid}.deck-preview-card{aspect-ratio:100/144;border-radius:7px;width:100%;overflow:hidden;box-shadow:0 3px #0002,0 6px 14px #0002}@media (width<=820px){.deck-preview-grid{grid-template-columns:repeat(5,minmax(0,1fr))}}@media (width<=520px){.deck-dialog{border-radius:14px;padding:16px}.deck-dialog-heading{align-items:start}.deck-dialog-heading h2{font-size:1.2rem}.deck-preview-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.deck-suit-filters{gap:6px}.deck-suit-filters button{padding:8px 10px;font-size:.85rem}}.card-back-art{border-radius:inherit;width:100%;height:100%;display:block}.skin-back-preview{border-radius:7px;width:94px;height:135px;box-shadow:0 4px 10px #0003}.hand-backs i:has(.card-back-art){padding:0;overflow:hidden}.live-trick .live-card--illustrated{width:76px;height:110px}@media (width<=640px){.live-trick .live-card--illustrated{width:52px;height:75px}.live-trick .trick-play{max-width:56px}}}.inbox-trigger{min-width:44px;min-height:44px;color:inherit;background:0 0;border:1px solid;border-radius:8px;justify-content:center;align-items:center;display:inline-flex;position:relative}.inbox-count{color:#122d26;background:#ead19b;border-radius:10px;min-width:20px;padding:1px 4px;font-size:12px;font-weight:700;position:absolute;top:-6px;right:-6px}.social-dialog{border:1px solid var(--color-line);width:min(560px,100vw - 24px);max-height:85dvh;color:var(--color-ink);background:var(--color-surface);border-radius:12px;padding:20px;overflow:auto}.social-dialog::backdrop{background:#07171199}.social-dialog>header,.invitation-stack>header{justify-content:space-between;align-items:center;gap:12px;display:flex}.social-dialog>header h2{margin:0}.social-dialog>header button,.invitation-stack>header button{min-width:44px;min-height:44px;font-size:24px}.inbox-list{margin:0;padding:0;list-style:none}.inbox-list>li{border-bottom:1px solid var(--color-line);overflow-wrap:anywhere;padding:14px 0}.inbox-list>li:last-child{border-bottom:0}.inbox-list p{margin:6px 0 10px}.inbox-list time{color:var(--color-muted);margin-top:8px;font-size:12px;display:block}.social-actions{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.social-actions button{min-height:44px}.invitation-stack{z-index:80;border:1px solid var(--color-line);background:var(--color-surface);width:min(400px,100vw - 24px);color:var(--color-ink);border-radius:12px;padding:12px 16px;position:fixed;bottom:16px;right:16px}.invitation-stack>.inbox-list{overscroll-behavior:contain;max-height:40dvh;overflow:auto}.notification-toast{z-index:81;top:calc(64px + env(safe-area-inset-top));border:1px solid var(--color-line);background:var(--color-surface);max-width:min(400px,100vw - 24px);color:var(--color-ink);border-radius:12px;padding:8px;display:flex;position:fixed;right:16px}.notification-toast button{text-align:left;min-height:44px}.room-visibility{border:1px solid var(--color-line);border-radius:8px;padding:10px 14px}@media (width<=600px){.invitation-stack,.notification-toast{right:12px}.invitation-stack{bottom:12px}.social-dialog{padding:16px}}@media (width<=800px){.site-header--collapsed .header-actions:has(.inbox-trigger){display:flex}.site-header--collapsed .header-actions>:not(.inbox-trigger){display:none}}
