:root{color:#11110f;font-synthesis:none;text-rendering:optimizelegibility;--paper:#eee8d9;--ink:#11110f;--muted:#706b60;--line:#bcb4a4;--panel:#f8f4e8;--green:#155d3a;--red:#b33527;--yellow:#e5b82f;--blue:#2857a5;--depth-sm:2px 2px 0 var(--ink);--depth-md:4px 4px 0 var(--ink);background:#eee8d9;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{background:var(--paper);min-height:100%}body{min-width:320px;min-height:100vh;margin:0}button,input{font:inherit}button{color:inherit}button:focus-visible,input:focus-visible{outline-offset:2px;outline:3px solid #111}button:disabled{opacity:.42;cursor:not-allowed}button{border:1px solid var(--ink);cursor:pointer;min-height:44px;box-shadow:var(--depth-sm);background:0 0;border-radius:0;padding:0 16px}button:hover:not(:disabled){color:#fff;background:#111}button.primary{background:var(--ink);color:#fff}button.primary:hover:not(:disabled){background:var(--green)}button.full{width:100%}button.compact{min-height:36px;padding:0 12px}.settings-launcher{right:max(14px, env(safe-area-inset-right));bottom:max(14px, env(safe-area-inset-bottom));z-index:80;background:var(--paper);white-space:nowrap;letter-spacing:.08em;min-height:38px;padding:0 11px;font-size:10px;font-weight:900;position:fixed;box-shadow:4px 4px #11110f29}.settings-backdrop{z-index:100;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#11110f6b;place-items:end;display:grid;position:fixed;inset:0}.settings-sheet{background:var(--panel);border:1px solid var(--ink);border-bottom:0;border-right:0;width:min(520px,100%);max-height:min(720px,100vh - 24px);padding:24px;overflow-y:auto;box-shadow:-16px -16px 60px #11110f2e}.settings-heading{justify-content:space-between;align-items:flex-start;gap:20px;padding-bottom:18px;display:flex}.settings-heading h2{letter-spacing:-.05em;margin:0;font-size:clamp(32px,5vw,50px);line-height:.92}.setting-row{border-top:1px solid var(--line);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:20px;min-height:92px;padding:14px 0;display:grid}.setting-row>div{gap:6px;display:grid}.setting-row small{max-width:340px;line-height:1.35}.setting-toggle{letter-spacing:.08em;min-width:66px;font-size:11px;font-weight:900}.setting-toggle.active{background:var(--green);color:#fff}.volume-row{align-items:center}.volume-control{justify-items:end;gap:7px;width:min(210px,36vw);display:grid}.volume-control span{letter-spacing:.06em;font-size:11px;font-weight:900}.volume-control input[type=range]{width:100%;height:20px;min-height:20px;accent-color:var(--green);cursor:pointer;background:0 0;border:0;padding:0}input{border:1px solid var(--ink);width:100%;min-height:48px;color:var(--ink);background:#fffdf7;border-radius:0;padding:0 13px}.eyebrow{letter-spacing:.14em;text-transform:uppercase;margin:0 0 10px;font-size:11px;font-weight:800}small,.muted{color:var(--muted)}.loader{border:2px solid var(--line);border-top-color:var(--ink);border-radius:50%;width:26px;height:26px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.boot-screen,.centered{place-content:center;justify-items:center;gap:16px;min-height:100vh;display:grid}.boot-error,.error-strip{background:var(--red);color:#fff;text-align:center;padding:10px 16px;font-size:13px}.auth-shell{grid-template-columns:1.2fr .8fr;min-height:100vh;display:grid}.brand-block{border-right:1px solid var(--ink);background:linear-gradient(#0000000a 1px, transparent 1px), linear-gradient(90deg, #0000000a 1px, transparent 1px), var(--yellow);background-size:28px 28px;flex-direction:column;justify-content:flex-end;min-height:100vh;padding:clamp(32px,7vw,100px);display:flex}.brand-block h1{letter-spacing:-.075em;margin:10px 0 28px;font-size:clamp(70px,12vw,190px);font-weight:900;line-height:.78}.brand-block>p:last-child{max-width:560px;margin:0;font-size:clamp(18px,2vw,28px);line-height:1.12}.auth-card{align-self:center;padding:clamp(28px,6vw,80px)}.auth-tabs{grid-template-columns:1fr 1fr;margin-bottom:34px;display:grid}.auth-tabs button{border-right:0}.auth-tabs button:last-child{border-right:1px solid var(--ink)}.auth-tabs button.active{background:var(--ink);color:#fff}.auth-card form{gap:18px;display:grid}.auth-card label{text-transform:uppercase;letter-spacing:.08em;gap:7px;font-size:12px;font-weight:800;display:grid}.tag-input{border:1px solid var(--ink);background:#fffdf7;grid-template-columns:44px 1fr;display:grid}.tag-input>span{border-right:1px solid var(--line);place-items:center;font-weight:800;display:grid}.tag-input input{border:0}.password-input{position:relative}.password-input input{padding-right:54px}.password-toggle{width:40px;height:40px;min-height:40px;box-shadow:none;background:0 0;border:0;place-items:center;padding:0;display:grid;position:absolute;top:50%;right:4px;transform:translateY(-50%)}.password-toggle:hover:not(:disabled){color:var(--ink);background:0 0}.password-toggle:focus-visible{outline:2px solid var(--ink);outline-offset:-2px}.password-toggle svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:20px;height:20px}.password-mismatch{color:var(--red);letter-spacing:0;text-transform:none;font-size:11px;font-weight:700}.password-input input[aria-invalid=true]{border-color:var(--red);box-shadow:inset 0 0 0 1px var(--red)}.form-message{border:1px solid var(--line);overflow-wrap:anywhere;padding:12px;font-size:13px}.text-button{border:0;min-height:44px;padding:0;text-decoration:underline}.visitor-counter{background:#ffffff2e;border:1px solid #11110f8c;align-self:flex-start;align-items:center;gap:8px;padding:7px 10px;font-size:12px;display:inline-flex}.visitor-counter strong{font-size:14px}.presence-dot{background:var(--green);border-radius:50%;flex:none;width:8px;height:8px;display:inline-block;box-shadow:0 0 0 3px #155d3a1f}.lobby-shell{max-width:1180px;margin:0 auto;padding:0 24px 80px}.topbar,.match-topbar{border-bottom:1px solid var(--ink);justify-content:space-between;align-items:center;min-height:74px;display:flex}.topbar>div{align-items:center;gap:12px;display:flex}.online-dot{text-transform:uppercase;border:1px solid var(--green);color:var(--green);padding:4px 7px;font-size:10px}.player-chip{text-align:right;min-height:auto;box-shadow:none;border:0;padding:8px 0;display:grid}.player-chip:hover{color:inherit!important;background:0 0!important}.player-chip span{font-weight:800}.player-chip small{font-size:11px}.hero{padding:72px 0 40px}.hero h1{letter-spacing:-.065em;margin:0;font-size:clamp(48px,8vw,105px);line-height:.88}.online-players-panel{border:1px solid var(--ink);box-shadow:var(--depth-md);background:#fff3;margin-bottom:20px}.online-players-heading{justify-content:space-between;align-items:center;gap:20px;min-height:92px;padding:18px 20px;display:flex}.online-players-heading h3{letter-spacing:-.035em;margin:0;font-size:clamp(24px,3vw,38px)}.online-total{justify-items:end;min-width:72px;display:grid}.online-total strong{font-size:34px;line-height:.9}.online-player-list{border-top:1px solid var(--ink);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.online-player{border-bottom:1px solid var(--line);grid-template-columns:auto 1fr auto;align-items:center;gap:10px;min-height:64px;padding:10px 14px;display:grid}.online-player:nth-child(odd){border-right:1px solid var(--line)}.online-player>div{gap:2px;min-width:0;display:grid}.online-player strong,.online-player small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.online-players-panel>.muted{border-top:1px solid var(--ink);margin:0;padding:18px 20px}.game-grid{border:1px solid var(--ink);box-shadow:var(--depth-md);grid-template-columns:1fr 1fr;display:grid}.game-card{flex-direction:column;justify-content:space-between;min-height:440px;padding:28px;display:flex;position:relative;overflow:hidden}.game-card+.game-card{border-left:1px solid var(--ink)}.whot-card{background:#f7f0df}.ludo-card{background:#dce7d5}.ludo-coming-soon{position:relative}.coming-soon-line{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.coming-soon-line .eyebrow{margin:0}.coming-soon-badge{border:1px solid var(--ink);letter-spacing:.08em;align-items:center;min-height:26px;padding:3px 8px;font-size:11px;font-weight:800;display:inline-flex}.ludo-coming-soon .game-actions button:disabled{opacity:1;cursor:default}.game-card h2{letter-spacing:-.07em;margin:0;font-size:clamp(64px,9vw,120px);line-height:.82}.game-card p:not(.eyebrow){max-width:390px;line-height:1.35}.game-actions{flex-wrap:wrap;gap:8px;display:flex}.game-mark{opacity:.08;font-size:230px;font-weight:900;line-height:1;position:absolute;top:-50px;right:-20px}.dice-mark{gap:5px;font-size:52px;line-height:1;display:flex}.queue-strip{border:1px solid var(--ink);box-shadow:var(--depth-md);background:var(--yellow);border-top:0;grid-template-columns:auto 1fr auto;align-items:center;gap:16px;padding:15px;display:grid}.queue-strip div:nth-child(2){display:grid}.queue-strip small{color:#4e431f}.pulse{background:var(--ink);border-radius:50%;width:10px;height:10px;animation:1s ease-in-out infinite alternate pulse}@keyframes pulse{to{opacity:.4;transform:scale(.45)}}.panel{border:1px solid var(--ink);box-shadow:var(--depth-md);background:#ffffff3b;margin-top:20px;padding:22px}.challenge-panel{grid-template-columns:1fr 1.5fr;align-items:end;gap:30px;display:grid}.challenge-panel h3{letter-spacing:-.03em;margin:0;font-size:30px}.challenge-controls{grid-template-columns:auto 1fr auto;display:grid}.segmented{display:flex}.segmented button{border-right:0}.segmented button.active{background:var(--ink);color:#fff}.challenge-input{border-right:0}.notice{border-left:5px solid var(--green);padding:10px 14px}.section-heading{justify-content:space-between;align-items:center;display:flex}.section-heading .eyebrow{margin:0}.list{margin-top:15px;display:grid}.list-row{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:18px;min-height:68px;display:flex}.list-row>div:first-child{gap:3px;display:grid}.list-row small{font-size:12px}.row-actions{gap:6px;display:flex}.recent-tables{padding:0;overflow:hidden}.recent-tables-summary{cursor:pointer;justify-content:space-between;align-items:center;gap:20px;min-height:74px;padding:16px 22px;list-style:none;display:flex}.recent-tables-summary::-webkit-details-marker{display:none}.recent-tables-summary>span:first-child{gap:2px;display:grid}.recent-tables-summary .eyebrow{margin:0}.dropdown-mark{font-size:25px;line-height:1;transition:transform .16s}.recent-tables[open] .dropdown-mark{transform:rotate(45deg)}.recent-tables-content{border-top:1px solid var(--ink);padding:0 22px 18px}.recent-tables-content>.muted{padding-top:16px}.match-shell{max-width:1000px;min-height:100vh;padding:0 18px calc(40px + env(safe-area-inset-bottom));margin:0 auto}.match-topbar{background:var(--paper);z-index:20;position:sticky;top:0}.match-topbar>button{border:0;padding-left:0}.turn-copy{text-align:center;display:grid}.connection{text-transform:uppercase;border:1px solid var(--line);padding:5px 7px;font-size:10px}.connection.online{color:var(--green);border-color:var(--green)}.winner-banner{border:2px solid var(--ink);background:var(--paper);grid-template-columns:112px minmax(0,1fr);align-items:center;gap:24px;margin-top:18px;padding:26px;animation:.36s cubic-bezier(.2,.85,.25,1) result-enter;display:grid;position:relative;overflow:hidden}.winner-banner.is-win{background:var(--yellow)}.winner-banner.is-loss{background:var(--paper)}.result-copy{z-index:2;position:relative}.winner-banner h2{letter-spacing:-.055em;margin:2px 0 10px;font-size:clamp(46px,8vw,78px);line-height:.9}.result-copy>p{margin:0;font-weight:700}.result-money{border:2px solid var(--ink);background:var(--paper);gap:2px;width:fit-content;min-width:min(100%,260px);margin-top:14px;padding:10px 12px;display:grid}.result-money>span{letter-spacing:.12em;font-size:9px;font-weight:900}.result-money>strong{letter-spacing:-.04em;font-size:clamp(26px,6vw,42px);line-height:1}.result-money>small{font-size:11px;font-weight:700;line-height:1.3}.result-money.is-win{background:var(--paper)}.result-money.is-loss{background:var(--ink);color:var(--paper)}.result-money.is-free{background:0 0}.result-signal{isolation:isolate;place-items:center;width:104px;height:104px;display:grid;position:relative}.result-signal b{border:2px solid var(--ink);background:var(--paper);z-index:2;border-radius:50%;place-items:center;width:68px;height:68px;font-size:34px;line-height:1;animation:.52s cubic-bezier(.16,1,.3,1) both result-mark;display:grid}.is-loss .result-signal b{background:var(--ink);color:var(--paper)}.result-ray{background:var(--ink);transform-origin:50% 46px;width:3px;height:22px;animation:.54s cubic-bezier(.16,1,.3,1) both result-ray;position:absolute;top:50%;left:50%}.ray-1{transform:translate(-50%,-46px)rotate(0)}.ray-2{transform:translate(-50%,-46px)rotate(45deg)}.ray-3{transform:translate(-50%,-46px)rotate(90deg)}.ray-4{transform:translate(-50%,-46px)rotate(135deg)}.ray-5{transform:translate(-50%,-46px)rotate(180deg)}.ray-6{transform:translate(-50%,-46px)rotate(225deg)}.ray-7{transform:translate(-50%,-46px)rotate(270deg)}.ray-8{transform:translate(-50%,-46px)rotate(315deg)}.is-loss .result-ray{opacity:.42;height:12px}.match-money-strip{border:1px solid var(--ink);background:var(--yellow);letter-spacing:.06em;flex-wrap:wrap;justify-content:center;align-items:center;gap:10px 22px;min-height:48px;margin-top:14px;padding:9px 12px;font-size:10px;font-weight:800;display:flex}.match-money-strip span{align-items:baseline;gap:5px;display:inline-flex}.match-money-strip strong{letter-spacing:-.015em;font-size:14px}.winner-actions{z-index:2;flex-wrap:wrap;grid-column:2;gap:8px;display:flex;position:relative}.post-game-message{z-index:2;color:var(--ink);grid-column:2;margin-top:-12px;display:block;position:relative}@keyframes result-enter{0%{opacity:0;transform:translateY(12px)scale(.985)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes result-mark{0%{transform:scale(.35)rotate(-8deg)}70%{transform:scale(1.08)rotate(2deg)}to{transform:scale(1)rotate(0)}}@keyframes result-ray{0%{opacity:0;scale:.35}to{opacity:1;scale:1}}.ludo-table{padding-top:18px}.opponent-line{align-items:center;gap:9px;padding:10px 0 18px;display:flex}.token-dot,.board-token{background:var(--red);border:1px solid var(--ink);border-radius:50%;width:13px;height:13px;display:inline-block}.token-dot.mine,.board-token.mine{background:var(--green)}.ludo-board{aspect-ratio:1;border:2px solid var(--ink);background:#f8f1dc;grid-template:repeat(15,1fr)/repeat(15,1fr);display:grid;position:relative;overflow:hidden}.track-cell,.home-lane-cell{border:1px solid var(--line);z-index:4;background:#fffaf0;place-items:center;min-width:0;display:grid;position:relative}.track-cell.safe:after{content:"✦";opacity:.28;font-size:clamp(7px,1.3vw,12px);position:absolute}.cell-tokens{z-index:2;flex-wrap:wrap;justify-content:center;align-items:center;gap:1px;display:flex;position:relative}.board-token,.yard-token{border:1px solid var(--ink);border-radius:50%;width:clamp(8px,1.7vw,14px);height:clamp(8px,1.7vw,14px);display:inline-block;box-shadow:inset 0 -2px #0000002e}.token-red{background:#c84636}.token-green{background:#26734d}.token-yellow{background:#e0b72f}.token-blue{background:#376bb7}.ludo-house{z-index:1;place-items:center;padding:14%;display:grid}.house-red{background:#d76557}.house-green{background:#4c8d69}.house-yellow{background:#e4c34e}.house-blue{background:#5c82bd}.yard{border:1px solid var(--ink);background:#fffaf0;grid-template-columns:1fr 1fr;place-items:center;gap:8%;width:100%;height:100%;padding:14%;display:grid}.yard-token{width:clamp(12px,3vw,24px);height:clamp(12px,3vw,24px)}.home-lane-cell.lane-red{background:#e3978d}.home-lane-cell.lane-green{background:#91b59d}.home-lane-cell.lane-yellow{background:#ead578}.home-lane-cell.lane-blue{background:#9eb6da}.board-center{border:1px solid var(--ink);z-index:3;background:#fffaf0;grid-template:1fr 1fr/1fr 1fr;grid-area:7/7/10/10;display:grid;position:relative}.board-center>div{border:1px solid #11110f29}.center-red{background:#d76557}.center-green{background:#4c8d69}.center-yellow{background:#e4c34e}.center-blue{background:#5c82bd}.board-center>strong{border:1px solid var(--ink);z-index:2;background:#fffaf0;place-items:center;width:48%;height:48%;margin:auto;font-size:clamp(10px,2vw,18px);display:grid;position:absolute;inset:0}.dice-tray{grid-template-columns:auto 1fr;align-items:center;gap:18px;padding:18px 0;display:grid}.dice-tray>div:last-child{gap:4px;display:grid}.dice-pair{gap:5px;display:flex}.dice-pair span{border:2px solid var(--ink);background:#fffaf0;place-items:center;width:58px;height:58px;font-size:30px;font-weight:900;display:grid}.dice-pair span.used{opacity:.28}.dice-pair.throwing span:first-child{animation:.65s cubic-bezier(.2,.75,.15,1) toss-a}.dice-pair.throwing span:last-child{animation:.65s cubic-bezier(.2,.75,.15,1) toss-b}.dice-pair.throwing.hard span{animation-duration:.82s}@keyframes toss-a{0%{transform:translate(0,0)rotate(0)scale(1)}34%{transform:translate(-9px,-42px)rotate(170deg)scale(1.09)}68%{transform:translate(6px,-9px)rotate(315deg)scale(.98)}84%{transform:translate(-2px,-18px)rotate(390deg)scale(1.02)}to{transform:translate(0,0)rotate(360deg)scale(1)}}@keyframes toss-b{0%{transform:translate(0,0)rotate(0)scale(1)}30%{transform:translate(11px,-35px)rotate(-150deg)scale(1.08)}64%{transform:translate(-5px,-8px)rotate(-300deg)scale(.99)}82%{transform:translate(3px,-16px)rotate(-375deg)scale(1.02)}to{transform:translate(0,0)rotate(-360deg)scale(1)}}.roll-actions{grid-template-columns:1fr 1fr;gap:8px;display:grid}.legal-moves{grid-template-columns:repeat(2,1fr);gap:6px;padding:12px 0;display:grid}.legal-moves button{text-align:left;background:#fffaf0}.piece-status{border-top:1px solid var(--ink);grid-template-columns:repeat(4,1fr);margin-top:16px;display:grid}.piece-status>div{border-right:1px solid var(--line);grid-template-columns:auto 1fr;align-content:center;column-gap:7px;min-height:68px;padding:10px;display:grid}.piece-status>div:last-child{border-right:0}.piece-status small{grid-column:1/-1;margin-top:4px}.fairness{border-top:1px solid var(--line);margin-top:10px;padding:12px 0}.fairness summary{cursor:pointer;font-size:12px;font-weight:800}.fairness code{overflow-wrap:anywhere;font-size:10px}.whot-table{--whot-burgundy:#8d1724;--whot-cream:#fffdf7;padding-top:18px}.opponent-hand{text-align:center}.card-backs{justify-content:center;align-items:flex-end;height:74px;margin:8px 0 10px;padding-left:28px;display:flex}.card-backs .whot-card-art{width:48px;transform:rotate(calc((var(--i,0) - 4) * 1deg));margin-left:-30px}.card-backs .whot-card-art:first-child{margin-left:0}.whot-card-art{aspect-ratio:.69;-webkit-user-select:none;user-select:none;border:1px solid #43101861;border-radius:8px;width:100%;font-family:Georgia,Times New Roman,serif;display:block;position:relative;overflow:hidden;box-shadow:0 9px 18px #1b120c29,inset 0 0 0 1px #ffffffa6}.whot-card-art.compact{border-radius:5px}.whot-card-face{color:var(--whot-burgundy);background:radial-gradient(circle at 48% 45%,#fffffffa 0 28%,#0000 29%),linear-gradient(145deg,#fffef9,#f5efe3)}.whot-card-face:after{content:"";pointer-events:none;border:1px solid #8d17241a;border-radius:5px;position:absolute;inset:5px}.whot-corner{z-index:2;color:var(--whot-burgundy);justify-items:center;line-height:.88;display:grid;position:absolute}.whot-corner strong{font:800 clamp(14px,2.4vw,25px)/.9 Georgia,Times New Roman,serif}.whot-corner i{margin-top:3px;font-size:clamp(9px,1.5vw,15px);font-style:normal}.whot-corner-top{top:8px;left:8px}.whot-corner-bottom{bottom:8px;right:8px;transform:rotate(180deg)}.whot-face-symbol{color:var(--whot-burgundy);place-items:center;font-family:Georgia,Times New Roman,serif;font-size:clamp(48px,8vw,90px);line-height:1;display:grid;position:absolute;inset:19% 15%}.whot-face-twenty{align-content:center;gap:4px;transform:rotate(-9deg)}.whot-face-twenty strong{font:800 clamp(34px,6vw,68px)/.82 Georgia,Times New Roman,serif}.whot-face-twenty em{letter-spacing:-.08em;font:900 clamp(13px,2.3vw,27px)/1 Arial,sans-serif}.whot-card-back{color:#fff8ea;background:radial-gradient(circle,#0000 0 23%,#ffffff1a 24% 25%,#0000 26%),linear-gradient(150deg,#a51b2a,#76101c);place-items:center;display:grid}.whot-card-back:before{content:"";border:1px solid #fff8eaa6;border-radius:5px;position:absolute;inset:8%}.whot-back-mark{z-index:1;letter-spacing:-.08em;font:900 clamp(14px,3vw,30px)/1 Arial,sans-serif;position:relative;transform:rotate(-8deg)}.whot-back-stars{z-index:1;letter-spacing:4px;opacity:.75;font-size:clamp(5px,1vw,10px);position:absolute;bottom:13%}.whot-center{grid-template-columns:112px 138px minmax(120px,1fr);place-content:center;align-items:center;gap:20px;min-height:310px;display:grid}.draw-pile{aspect-ratio:.69;background:0 0;border:0;width:112px;min-height:0;padding:0;position:relative}.draw-pile:not(:disabled):hover .whot-card-art{transform:translateY(-3px)}.draw-pile:disabled{opacity:.48}.draw-pile.market-required .whot-card-art{box-shadow:0 0 0 3px var(--yellow), 0 12px 24px #1b120c33, inset 0 0 0 1px #ffffffa6;animation:1.15s ease-in-out infinite alternate market-pulse}@keyframes market-pulse{0%{transform:translateY(0)}to{transform:translateY(-5px)}}.market-badge{z-index:4;border:1px solid var(--ink);background:var(--yellow);width:max-content;max-width:160px;color:var(--ink);letter-spacing:.08em;text-transform:uppercase;padding:6px 8px;font:900 9px/1.1 Inter,ui-sans-serif,sans-serif;position:absolute;bottom:-36px;left:50%;transform:translate(-50%)}.draw-count{color:#fff;border:2px solid var(--paper);background:#11110f;border-radius:999px;place-items:center;min-width:28px;height:28px;padding:0 7px;font:800 11px/1 Arial,sans-serif;display:grid;position:absolute;bottom:-7px;right:-7px}.whot-playing-card{aspect-ratio:.69;background:0 0;border:0;width:138px;padding:0}.empty-play-area{color:#11110f8c;background:#fff3;border:1px dashed #11110f61;border-radius:8px;align-content:center;place-items:center;gap:5px;display:grid}.empty-card-plus{font-size:48px;line-height:.8}.empty-play-area small{text-transform:uppercase;letter-spacing:.08em;font-size:9px}.table-callout{max-width:240px;font-size:24px}.automatic-call-badge{border:1px solid var(--ink);background:var(--yellow);width:max-content;color:var(--ink);letter-spacing:.1em;justify-content:center;align-items:center;margin:7px auto 0;padding:6px 9px;font-size:9px;font-weight:900;line-height:1;display:inline-flex}.automatic-call-badge.mine{background:var(--green);color:#fff;border-color:var(--green);margin:0}.hand-count-status{align-items:center;gap:8px;display:flex}.shape-picker{border:1px solid var(--ink);background:var(--panel);align-items:center;gap:5px;padding:12px;display:flex;overflow-x:auto}.shape-picker strong{white-space:nowrap;margin-right:8px}.your-hand{margin-top:18px}.hand-label{justify-content:space-between;margin-bottom:3px;display:flex}.hand-scroll{scroll-snap-type:x proximity;scrollbar-width:none;align-items:flex-end;padding:26px max(14px,50% - 270px) 28px;display:flex;overflow:auto visible}.hand-scroll::-webkit-scrollbar{display:none}.hand-card{aspect-ratio:.69;scroll-snap-align:center;transform-origin:50% 115%;background:0 0;border:0;flex:0 0 108px;width:108px;height:auto;min-height:0;margin-left:-29px;padding:0;transition:transform .15s,filter .15s;position:relative;overflow:visible}.hand-card:first-child{margin-left:0}.hand-card:nth-child(6n+1){transform:rotate(-4deg)translateY(4px)}.hand-card:nth-child(6n+2){transform:rotate(-2.5deg)translateY(1px)}.hand-card:nth-child(6n+3){transform:rotate(-1deg)}.hand-card:nth-child(6n+4){transform:rotate(1deg)}.hand-card:nth-child(6n+5){transform:rotate(2.5deg)translateY(1px)}.hand-card:nth-child(6n+6){transform:rotate(4deg)translateY(4px)}.hand-card.playable{filter:drop-shadow(0 7px #26734d80);cursor:pointer}.hand-card.playable:hover,.hand-card.playable:focus-visible{z-index:20;filter:drop-shadow(0 10px 11px #11110f33);transform:translateY(-18px)rotate(0)}.hand-card:disabled{opacity:.72}.hand-card:disabled .whot-card-art{filter:saturate(.74)}.forfeit{min-height:36px;color:var(--red);border:0;margin:30px auto 0;text-decoration:underline;display:block}@media (width<=760px){.settings-launcher{right:10px;bottom:max(10px, env(safe-area-inset-bottom))}.settings-sheet{width:100%;max-height:82vh;padding:20px 18px calc(24px + env(safe-area-inset-bottom));border-left:0}.setting-row{grid-template-columns:1fr auto}.auth-shell{grid-template-columns:1fr}.brand-block{border-right:0;border-bottom:1px solid var(--ink);min-height:42vh;padding:30px 22px}.brand-block h1{font-size:82px}.brand-block>p:last-child{font-size:18px}.auth-card{padding:28px 22px 50px}.lobby-shell{padding:0 14px 60px}.hero{padding:48px 0 26px}.online-players-heading{align-items:flex-end}.online-player-list{grid-template-columns:1fr}.online-player:nth-child(odd){border-right:0}.online-player{grid-template-columns:auto minmax(0,1fr) auto}.game-grid{grid-template-columns:1fr}.game-card{min-height:350px;padding:22px}.game-card+.game-card{border-left:0;border-top:1px solid var(--ink)}.game-card h2{font-size:84px}.challenge-panel{grid-template-columns:1fr}.challenge-controls{grid-template-columns:1fr;gap:7px}.segmented{grid-template-columns:1fr 1fr;display:grid}.segmented button,.challenge-input{border-right:1px solid var(--ink)}.queue-strip{grid-template-columns:auto 1fr}.queue-strip>button{grid-column:1/-1}.match-topbar{min-height:62px}.match-topbar>button{font-size:12px}.connection{font-size:8px}.whot-center{grid-template-columns:85px 105px 1fr;gap:10px;min-height:245px}.draw-pile{width:85px}.whot-playing-card{width:105px}.table-callout{font-size:16px}.hand-count-status{gap:5px}.automatic-call-badge{padding:5px 7px;font-size:8px}.shape-picker{margin:10px -18px 0;padding-left:18px}.legal-moves{grid-template-columns:1fr}.piece-status>div{padding:7px;font-size:12px}.dice-pair span{width:50px;height:50px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}.feedback-form{border-top:1px solid var(--ink);gap:10px;margin-top:4px;padding-top:16px;display:grid}.feedback-form-heading{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:14px;display:grid}.feedback-form-heading>div{gap:4px;display:grid}.feedback-form-heading small,.feedback-form-actions small{opacity:.68}.feedback-form select,.feedback-form textarea{border:1px solid var(--ink);background:var(--panel);width:100%;color:var(--ink);font:inherit;border-radius:0}.feedback-form select{width:auto;min-width:118px;min-height:36px;padding:0 9px}.feedback-form textarea{resize:vertical;min-height:96px;padding:10px 11px;line-height:1.45}.feedback-form-actions{justify-content:space-between;align-items:center;gap:12px;display:flex}@media (width<=520px){.feedback-form-heading{grid-template-columns:1fr}.feedback-form select{width:100%}}.soundtrack-now-playing small{display:block}.soundtrack-error{color:var(--red);margin-top:5px}.wallet-panel{gap:18px;display:grid}.wallet-dropdown{padding:0;overflow:hidden}.wallet-summary{cursor:pointer;justify-content:space-between;align-items:center;gap:24px;min-height:82px;padding:14px 18px;list-style:none;display:flex}.wallet-summary::-webkit-details-marker{display:none}.wallet-summary-main{gap:1px;display:grid}.wallet-summary-main .eyebrow{margin:0}.wallet-summary-balance{align-items:baseline;gap:7px;display:flex}.wallet-summary-balance strong{letter-spacing:-.05em;font-size:clamp(28px,4vw,42px);line-height:.9}.wallet-summary-balance span{letter-spacing:.1em;font-size:10px;font-weight:900}.wallet-summary-meta{align-items:center;gap:16px;display:flex}.wallet-summary-action{letter-spacing:.08em;text-transform:uppercase;align-items:center;gap:9px;font-size:11px;font-weight:900;display:inline-flex}.wallet-dropdown[open] .wallet-summary .dropdown-mark{transform:rotate(45deg)}.wallet-dropdown-content{border-top:1px solid var(--ink);gap:18px;padding:20px 22px 22px;display:grid}.wallet-heading{justify-content:space-between;align-items:flex-start;gap:24px;display:flex}.wallet-balance{align-items:baseline;gap:10px;margin:4px 0 2px;display:flex}.wallet-balance strong{letter-spacing:-.055em;font-size:clamp(34px,5vw,56px);line-height:.9}.wallet-balance span,.wallet-locked span{letter-spacing:.1em;font-size:10px;font-weight:900}.wallet-locked{justify-items:end;gap:4px;min-width:140px;display:grid}.wallet-notice,.wallet-message{border:1px solid var(--ink);background:var(--yellow);padding:10px 12px;font-size:12px;line-height:1.4}.wallet-actions-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}.wallet-action-card{border:1px solid var(--ink);background:var(--panel);gap:10px;padding:16px;display:grid}.wallet-action-card label{gap:5px;display:grid}.wallet-action-card label>span{letter-spacing:.06em;text-transform:uppercase;font-size:10px;font-weight:800}.wallet-action-card input,.wallet-action-card select{width:100%}.wallet-history{border-top:1px solid var(--ink)}.wallet-history summary{cursor:pointer;justify-content:space-between;align-items:center;min-height:62px;list-style:none;display:flex}.wallet-history summary::-webkit-details-marker{display:none}.wallet-history summary>span:first-child{display:grid}.wallet-history-list{border-top:1px solid var(--line)}.wallet-history-row{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:18px;min-height:58px;display:flex}.wallet-history-row>div{gap:2px;display:grid}.wallet-credit{font-weight:900}.wallet-debit{opacity:.72;font-weight:900}.wallet-loading{align-items:center;gap:10px;display:flex}.stake-shell{align-content:start;min-height:100dvh}.stake-card{border:1px solid var(--ink);background:var(--panel);gap:18px;width:min(560px,100% - 28px);margin:28px auto;padding:clamp(18px,4vw,28px);display:grid}.stake-balance-row{grid-template-columns:1fr 1fr;gap:10px;display:grid}.stake-balance-row>div{border:1px solid var(--ink);gap:3px;padding:14px;display:grid}.stake-balance-row span,.stake-opponent>span,.stake-manual>span{letter-spacing:.09em;font-size:9px;font-weight:900}.stake-opponent{border:1px solid var(--line);align-content:center;gap:4px;min-height:92px;padding:14px;display:grid}.stake-opponent.has-offer{border-color:var(--ink);background:var(--yellow)}.stake-live-amount{letter-spacing:-.045em;font-size:clamp(28px,7vw,46px);line-height:1}.stake-live-empty{font-size:20px;line-height:1.1}.stake-revision-alert{border:2px solid var(--ink);background:var(--yellow);gap:3px;padding:12px 14px;display:grid}.stake-revision-alert span{font-size:12px}.stake-negotiation-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;display:grid}.stake-negotiation-actions button{min-height:44px}.stake-cancel-table{border-color:var(--red);color:var(--red);background:0 0}.stake-cancelled-card{border:2px solid var(--ink);background:var(--panel);width:min(520px,100% - 28px);padding:24px}.stake-cancelled-card h2{margin:6px 0 12px;font-size:clamp(34px,8vw,56px);line-height:.95}.stake-cancelled-card p{max-width:38ch}.stake-presets{grid-template-columns:repeat(4,1fr);gap:6px;display:grid}.stake-presets button{padding-inline:8px;font-size:11px}.stake-presets button.active{background:var(--yellow);box-shadow:inset 0 -4px 0 var(--ink)}.stake-manual{gap:7px;display:grid}.stake-manual input{min-height:54px;font-size:22px;font-weight:850}.stake-payout-preview{border:2px solid var(--ink);background:var(--yellow);grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 16px;padding:14px;display:grid}.stake-payout-preview>div{gap:3px;display:grid}.stake-payout-preview span{letter-spacing:.1em;font-size:9px;font-weight:900}.stake-payout-preview strong{letter-spacing:-.035em;font-size:clamp(22px,5vw,32px);line-height:1}.stake-payout-preview p{grid-column:1/-1;margin:0;font-size:11px;line-height:1.35}.stake-payout-preview.is-free{background:0 0;grid-template-columns:1fr}.stake-match-offer{background:var(--yellow)}.stake-confirm{min-height:52px}.stake-waiting{border:1px dashed var(--ink);padding:10px 12px;font-size:12px;line-height:1.4}@media (width<=640px){.wallet-heading{align-items:end}.wallet-actions-grid{grid-template-columns:1fr}.wallet-locked{min-width:110px}.stake-presets{grid-template-columns:repeat(2,1fr)}.stake-negotiation-actions,.stake-payout-preview{grid-template-columns:1fr}.stake-payout-preview p{grid-column:1}.match-money-strip{justify-content:flex-start;gap:7px 16px}.wallet-summary{gap:12px;min-height:72px;padding:12px 14px}.wallet-summary-meta>small{display:none}.wallet-summary-action{font-size:10px}.wallet-dropdown-content{padding:16px 14px 18px}}.wallet-payment-email{gap:6px;max-width:520px;display:grid}.wallet-payment-email>span{letter-spacing:.06em;text-transform:uppercase;font-size:10px;font-weight:800}.wallet-payment-email small{line-height:1.35}.challenge-row.is-enterable{cursor:pointer}.challenge-row.is-enterable:focus-visible{outline-offset:3px;outline:2px solid}.challenge-waiting{letter-spacing:.08em;text-transform:uppercase;opacity:.62;font-size:10px;font-weight:900}.wallet-account-status{border:1px solid var(--line);gap:2px;padding:9px 10px;font-size:11px;line-height:1.35;display:grid}.wallet-account-status.verified{border-color:var(--green);background:color-mix(in srgb, var(--green) 8%, var(--panel))}.wallet-account-status.error{border-color:var(--red);color:var(--red)}.wallet-account-status small{opacity:.68}@media (width<=620px){.winner-banner{grid-template-columns:72px minmax(0,1fr);gap:14px;padding:20px 16px}.result-signal{width:70px;height:70px}.result-signal b{width:50px;height:50px;font-size:26px}.result-ray{transform-origin:50% 31px;height:15px}.ray-1{transform:translate(-50%,-31px)rotate(0)}.ray-2{transform:translate(-50%,-31px)rotate(45deg)}.ray-3{transform:translate(-50%,-31px)rotate(90deg)}.ray-4{transform:translate(-50%,-31px)rotate(135deg)}.ray-5{transform:translate(-50%,-31px)rotate(180deg)}.ray-6{transform:translate(-50%,-31px)rotate(225deg)}.ray-7{transform:translate(-50%,-31px)rotate(270deg)}.ray-8{transform:translate(-50%,-31px)rotate(315deg)}.winner-actions,.post-game-message{grid-column:1/-1}.winner-actions>button{flex:140px}}@media (prefers-reduced-motion:reduce){.winner-banner,.result-signal b,.result-ray{animation:none}}.win-ticker{border-bottom:1px solid var(--ink);background:var(--ink);min-height:46px;color:var(--paper);grid-template-columns:auto minmax(0,1fr);align-items:stretch;display:grid;overflow:hidden}.win-ticker-label{background:var(--yellow);color:var(--ink);letter-spacing:.13em;white-space:nowrap;border-right:1px solid #ffffff47;place-items:center;padding:0 14px;font-size:10px;font-weight:900;display:grid}.win-ticker-window{align-items:center;min-width:0;display:flex;overflow:hidden}.win-ticker-track{will-change:transform;align-items:center;width:max-content;display:flex}.win-ticker.is-moving .win-ticker-track{animation:34s linear infinite win-ticker-scroll}.win-ticker.is-moving:hover .win-ticker-track{animation-play-state:paused}.win-ticker-item{white-space:nowrap;border-right:1px solid #ffffff2e;align-items:center;gap:8px;min-height:45px;padding:0 20px;font-size:12px;display:inline-flex}.win-ticker-item strong{color:var(--yellow);font-size:12px}.win-ticker-empty{color:#ffffffad;padding:0 18px;font-size:12px}@keyframes win-ticker-scroll{0%{transform:translate(0)}to{transform:translate(-50%)}}.leaderboard-panel{border:1px solid var(--ink);box-shadow:var(--depth-md);background:#ffffff2e;margin-top:20px;overflow:hidden}.leaderboard-heading{cursor:pointer;justify-content:space-between;align-items:end;gap:24px;min-height:104px;padding:20px 22px;list-style:none;display:flex}.leaderboard-heading::-webkit-details-marker{display:none}.leaderboard-panel[open] .leaderboard-heading{border-bottom:1px solid var(--ink)}.leaderboard-heading h3{letter-spacing:-.045em;margin:0;font-size:clamp(32px,4vw,56px);line-height:.95}.leaderboard-heading>span{border:1px solid var(--ink);letter-spacing:.1em;align-items:center;gap:7px;padding:6px 8px;font-size:10px;font-weight:800;display:inline-flex}.leaderboard-dropdown-mark{font-size:15px;font-style:normal;line-height:.7;transition:transform .16s}.leaderboard-panel[open] .leaderboard-dropdown-mark{transform:rotate(45deg)}.leaderboard-grid{grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.leaderboard-card{min-width:0}.leaderboard-card+.leaderboard-card{border-left:1px solid var(--ink)}.leaderboard-card-title{border-bottom:1px solid var(--line);grid-template-columns:auto 1fr;align-items:center;gap:12px;min-height:82px;padding:15px;display:grid}.leaderboard-card-title>span{border:1px solid var(--ink);padding:4px 6px;font-size:11px;font-weight:900}.leaderboard-card-title>div{gap:2px;min-width:0;display:grid}.leaderboard-card-title strong{font-size:18px}.leaderboard-card-title small{font-size:11px}.leaderboard-list{display:grid}.leaderboard-row{border-top:1px solid var(--line);grid-template-columns:32px minmax(0,1fr) auto;align-items:center;gap:10px;min-height:58px;padding:8px 12px;display:grid}.leaderboard-row:first-child{border-top:0}.leaderboard-row.you{background:color-mix(in srgb, var(--yellow) 34%, transparent)}.leaderboard-rank{opacity:.58;font-size:10px;font-weight:900}.leaderboard-row>div{gap:1px;min-width:0;display:grid}.leaderboard-row>div strong,.leaderboard-row>div small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.leaderboard-row>div small{font-size:10px}.leaderboard-row>b{text-align:right;letter-spacing:-.03em;font-size:18px}.leaderboard-row>b em{letter-spacing:.08em;font-size:9px;font-style:normal}.leaderboard-empty{color:var(--muted);margin:0;padding:20px 15px;font-size:12px}.stake-ai-note{border:1px solid var(--ink);background:color-mix(in srgb, var(--yellow) 24%, var(--paper));gap:3px;padding:12px 14px;display:grid}.stake-ai-note strong{text-transform:uppercase;letter-spacing:.08em;font-size:11px}.stake-ai-note span{font-size:12px;line-height:1.35}@media (width<=760px){.win-ticker{grid-template-columns:74px minmax(0,1fr)}.win-ticker-label{padding:0 8px}.win-ticker-item{padding:0 14px;font-size:11px}.leaderboard-heading{min-height:88px;padding:16px}.leaderboard-heading h3{font-size:34px}.leaderboard-grid{grid-template-columns:1fr}.leaderboard-card+.leaderboard-card{border-left:0;border-top:1px solid var(--ink)}}@media (prefers-reduced-motion:reduce){.win-ticker.is-moving .win-ticker-track{animation:none!important;transform:none!important}}.winner-banner.is-win{grid-template-columns:1fr;padding-top:178px}.winner-banner.is-win .result-copy,.winner-banner.is-win .winner-actions,.winner-banner.is-win .post-game-message{grid-column:1/-1}.winner-celebration{z-index:1;pointer-events:none;position:absolute;inset:0;overflow:hidden}.x-balloons{height:150px;position:absolute;inset:12px 18px auto}.x-balloon{border:2px solid var(--ink);background:var(--paper);width:66px;height:82px;box-shadow:4px 4px 0 var(--ink);transform-origin:50% 100%;border-radius:52% 48% 48% 52%/57% 57% 43% 43%;place-items:center;animation:2.7s ease-in-out infinite alternate x-balloon-float;display:grid;position:absolute}.x-balloon:before{content:"";border-right:2px solid var(--ink);border-bottom:2px solid var(--ink);background:inherit;width:10px;height:10px;position:absolute;bottom:-8px;left:50%;transform:translate(-50%)rotate(45deg)}.x-balloon:after{content:"";background:var(--ink);width:1px;height:34px;position:absolute;top:calc(100% + 7px);left:50%}.x-balloon b{font-size:28px;font-weight:950;line-height:1}.x-balloon-1{background:#ffd9dc;animation-delay:-.35s;top:38px;left:2%}.x-balloon-2{background:var(--paper);animation-delay:-.8s;top:9px;left:16%}.x-balloon-3{background:#dfe9ff;animation-delay:-.2s;top:42px;left:32%}.x-balloon-4{background:var(--yellow);animation-delay:-1.1s;top:2px;left:48%}.x-balloon-5{background:#dcebdc;animation-delay:-.55s;top:34px;right:30%}.x-balloon-6{background:#f0ddff;animation-delay:-.95s;top:11px;right:14%}.x-balloon-7{background:#ffe6c8;animation-delay:-.1s;top:43px;right:1%}.winner-confetti{position:absolute;inset:0}.confetti-piece{border:1px solid var(--ink);background:var(--red);opacity:0;width:9px;height:17px;animation-name:winner-confetti-fall;animation-timing-function:linear;animation-iteration-count:3;position:absolute;top:-22px}.confetti-piece:nth-child(4n+2){background:var(--green);width:13px;height:9px}.confetti-piece:nth-child(4n+3){background:var(--yellow);width:7px;height:20px}.confetti-piece:nth-child(4n+4){background:#dfe9ff;border-radius:50%;width:11px;height:11px}.winner-banner.is-loss{grid-template-columns:minmax(168px,230px) minmax(0,1fr)}.loss-face{aspect-ratio:1;border:4px solid var(--ink);background:var(--paper);border-radius:50%;width:min(210px,100%);animation:.52s cubic-bezier(.16,1,.3,1) both sad-face-enter;position:relative}.loss-eye{background:var(--ink);border-radius:50%;width:18px;height:25px;position:absolute;top:31%}.loss-eye-left{left:28%}.loss-eye-right{right:28%}.loss-mouth{border:5px solid #0000;border-top-color:var(--ink);border-radius:50%;width:46%;height:27%;position:absolute;bottom:18%;left:50%;transform:translate(-50%)}.winner-banner.is-loss .result-copy,.winner-banner.is-loss .winner-actions,.winner-banner.is-loss .post-game-message{grid-column:2}@keyframes x-balloon-float{0%{transform:translateY(5px)rotate(-3deg)}to{transform:translateY(-9px)rotate(3deg)}}@keyframes winner-confetti-fall{0%{opacity:0;transform:translateY(-14px)rotate(0)}8%{opacity:1}to{opacity:0;transform:translate(28px,430px)rotate(540deg)}}@keyframes sad-face-enter{0%{opacity:0;transform:translateY(-12px)scale(.72)}68%{opacity:1;transform:translateY(5px)scale(1.04)}to{opacity:1;transform:translateY(0)scale(1)}}@media (width<=620px){.winner-banner.is-win{padding-top:154px}.x-balloons{height:132px;inset-inline:8px}.x-balloon{width:48px;height:61px;box-shadow:3px 3px 0 var(--ink)}.x-balloon b{font-size:21px}.x-balloon-1{left:0}.x-balloon-2{left:14%}.x-balloon-3{left:29%}.x-balloon-4{left:44%}.x-balloon-5{right:28%}.x-balloon-6{right:13%}.x-balloon-7{right:0}.winner-banner.is-loss{grid-template-columns:1fr}.loss-face{width:min(210px,68vw);margin:4px auto 10px}.winner-banner.is-loss .result-copy,.winner-banner.is-loss .winner-actions,.winner-banner.is-loss .post-game-message{grid-column:1/-1}}@media (prefers-reduced-motion:reduce){.x-balloon,.confetti-piece,.loss-face{animation:none!important}.confetti-piece{display:none}}.room-social{border:1px solid var(--ink);background:var(--panel);box-shadow:var(--depth-md);margin-top:18px}.room-social-heading{border-bottom:1px solid var(--ink);justify-content:space-between;align-items:center;gap:18px;min-height:72px;padding:14px 16px;display:flex}.room-social-heading>div{gap:2px;display:grid}.room-social-heading .eyebrow{margin:0}.room-social-heading>div>strong{letter-spacing:-.025em;font-size:20px}.room-reactions{border-bottom:1px solid var(--line);gap:7px;padding:10px 12px;display:flex;overflow-x:auto}.room-reaction-button{flex:none;place-items:center;width:42px;min-height:40px;padding:0;font-size:20px;display:grid}.room-reaction-feed{border-bottom:1px solid var(--line);align-items:center;gap:8px;min-height:48px;padding:8px 12px;display:flex;overflow-x:auto}.room-reaction-event{border:1px solid var(--ink);flex:none;align-items:center;gap:6px;padding:5px 8px;animation:.22s cubic-bezier(.2,.85,.25,1) room-reaction-pop;display:inline-flex}.room-reaction-event b{font-size:20px;line-height:1}.room-reaction-event small{text-transform:uppercase;letter-spacing:.06em;font-size:9px;font-weight:800}.room-chat-list{max-height:260px;display:grid;overflow-y:auto}.room-chat-empty{color:var(--muted);margin:0;padding:18px 16px;font-size:12px}.room-chat-message{border-bottom:1px solid var(--line);gap:3px;min-width:0;padding:10px 14px;display:grid}.room-chat-message.mine{border-left:4px solid var(--ink);padding-left:10px}.room-chat-message strong{text-transform:uppercase;letter-spacing:.07em;font-size:10px}.room-chat-message span{overflow-wrap:anywhere;min-width:0;font-size:13px;line-height:1.35}.room-chat-compose{border-top:1px solid var(--ink);grid-template-columns:minmax(0,1fr) auto;display:grid}.room-chat-compose input{border:0;border-right:1px solid var(--ink);min-width:0;min-height:48px;color:inherit;background:0 0;border-radius:0;padding:0 14px}.room-chat-compose button{min-width:84px;box-shadow:none}@keyframes room-reaction-pop{0%{opacity:0;transform:scale(.76)translateY(4px)}to{opacity:1;transform:scale(1)translateY(0)}}@media (width<=620px){.room-social{margin-top:14px}.room-social-heading{min-height:64px;padding:12px}.room-chat-list{max-height:210px}.room-reactions{gap:6px}.room-reaction-button{width:40px}}@media (prefers-reduced-motion:reduce){.room-reaction-event{animation:none}}.stake-balance-row>div:first-child{position:relative}.stake-topup-button{width:max-content;min-height:34px;margin-top:8px;padding:6px 10px;font-size:10px}.stake-balance-warning{border:1px solid var(--red);color:var(--red);gap:2px;padding:10px 12px;font-size:12px;display:grid}.stake-topup-form{border:2px solid var(--ink);background:var(--paper);gap:10px;padding:14px;display:grid}.stake-topup-form>div{justify-content:space-between;align-items:center;gap:12px;display:flex}.stake-topup-form>div span{letter-spacing:.09em;font-size:9px;font-weight:900}.stake-topup-form>div strong{font-size:11px}.stake-topup-form input{min-height:46px;font-weight:800}.stake-topup-error{color:var(--red);line-height:1.35}.match-result-overlay{z-index:120;background:#1111112e;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.match-result-overlay .winner-banner{width:min(620px,100vw - 32px);max-height:calc(100dvh - 32px);box-shadow:10px 10px 0 var(--ink);margin:0;overflow:auto}.match-result-overlay .winner-banner h2{text-transform:uppercase}.rematch-request{z-index:3;border:2px solid var(--ink);background:var(--paper);grid-column:1/-1;justify-content:space-between;align-items:center;gap:14px;padding:12px;display:flex;position:relative}.rematch-request>div:first-child{gap:3px;display:grid}.rematch-request>div:last-child{flex:none;gap:8px;display:flex}.rematch-request strong{font-size:15px}.match-result-overlay .post-game-message{margin-top:0}@media (width<=620px){.match-result-overlay{padding:10px}.match-result-overlay .winner-banner{width:calc(100vw - 20px);max-height:calc(100dvh - 20px);box-shadow:5px 5px 0 var(--ink)}.rematch-request{flex-direction:column;align-items:stretch}.rematch-request>div:last-child{grid-template-columns:1fr 1fr;display:grid}}.challenge-controls{align-items:stretch;gap:8px}.challenge-controls>button,.challenge-controls .tag-input,.challenge-controls .segmented{min-width:0}.challenge-controls .segmented button{min-width:84px}.challenge-feedback{border:1px solid var(--ink);background:var(--panel);grid-column:2;grid-template-columns:32px minmax(0,1fr);align-items:center;gap:10px;min-height:58px;padding:10px 12px;display:grid}.challenge-feedback.sent,.challenge-feedback.accepted{background:color-mix(in srgb, var(--green) 10%, var(--panel));border-color:var(--green)}.challenge-feedback.error{border-color:var(--red);color:var(--red)}.challenge-feedback.sending{background:color-mix(in srgb, var(--yellow) 25%, var(--panel))}.challenge-feedback-mark{border:1px solid;border-radius:50%;place-items:center;width:30px;height:30px;font-weight:950;display:grid}.challenge-feedback>div{gap:2px;min-width:0;display:grid}.challenge-feedback strong{text-transform:uppercase;letter-spacing:.06em;font-size:12px}.challenge-feedback small{overflow-wrap:anywhere;line-height:1.35}.challenge-row.just-sent{background:color-mix(in srgb, var(--yellow) 28%, transparent);box-shadow:inset 4px 0 0 var(--green);animation:.42s cubic-bezier(.2,.85,.25,1) challenge-row-confirm}@keyframes challenge-row-confirm{0%{opacity:.3;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}button,input,select,textarea{touch-action:manipulation}@media (width<=760px){.challenge-panel{align-items:stretch;gap:16px}.challenge-controls{gap:8px}.challenge-feedback{grid-column:1/-1}input:not([type=range]),select,textarea{font-size:16px}}.setting-actions{align-items:center;gap:8px;display:flex}.setting-actions .compact{white-space:nowrap}.voice-test-status{color:var(--ink);margin-top:2px;font-weight:700}@media (width<=620px){.voice-setting-row{grid-template-columns:1fr;align-items:stretch}.setting-actions{justify-content:stretch}.setting-actions>button{flex:1 1 0}}.walkthrough-modal-backdrop{z-index:210;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#11110fb8;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.walkthrough-welcome{border:1px solid var(--ink);background:var(--panel);width:min(560px,100%);box-shadow:8px 8px 0 var(--ink);padding:clamp(22px,5vw,34px)}.walkthrough-welcome h2{letter-spacing:-.055em;margin:0 0 10px;font-size:clamp(34px,7vw,62px);line-height:.9}.walkthrough-welcome>p:not(.eyebrow){max-width:480px;color:var(--muted);margin:0;line-height:1.45}.walkthrough-choice-list{border-top:1px solid var(--line);margin:26px 0 24px}.walkthrough-choice{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:18px;min-height:96px;padding:16px 0;display:grid}.walkthrough-choice>div{gap:5px;display:grid}.walkthrough-choice small{line-height:1.4}.walkthrough-start{width:100%}.walkthrough-layer{z-index:220;pointer-events:none;position:fixed;inset:0}.walkthrough-spotlight{z-index:221;border:2px solid var(--yellow);pointer-events:none;transition:top .22s,left .22s,width .22s,height .22s;position:fixed;box-shadow:0 0 0 9999px #11110fc7}.walkthrough-coach-card{z-index:222;left:50%;bottom:max(22px, env(safe-area-inset-bottom));border:1px solid var(--ink);background:var(--panel);width:min(520px,100% - 28px);box-shadow:7px 7px 0 var(--ink);pointer-events:auto;padding:20px;position:fixed;transform:translate(-50%)}.walkthrough-progress{letter-spacing:.1em;justify-content:space-between;gap:16px;font-size:10px;font-weight:900;display:flex}.walkthrough-coach-card h3{letter-spacing:-.04em;margin:10px 0 8px;font-size:clamp(28px,5vw,42px);line-height:.95}.walkthrough-coach-card>p{color:var(--muted);margin:0;line-height:1.45}.walkthrough-actions{justify-content:space-between;gap:12px;margin-top:18px;display:flex}.walkthrough-actions>div{gap:8px;display:flex}.game-rules-coach{border:1px solid var(--ink);background:var(--panel);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:18px;margin-top:14px;padding:14px 16px;display:grid}.game-rules-coach-copy{min-width:0}.game-rules-coach-copy .eyebrow{margin-bottom:5px}.game-rules-coach-copy>strong{letter-spacing:-.025em;font-size:20px;display:block}.game-rules-coach-copy>p{color:var(--muted);max-width:720px;margin:5px 0 0;line-height:1.4}.game-rules-coach-actions{align-items:center;gap:8px;display:flex}.game-rules-coach details{position:relative}.game-rules-coach summary{border:1px solid var(--ink);cursor:pointer;white-space:nowrap;min-height:36px;padding:8px 12px;font-size:11px;font-weight:900;list-style:none}.game-rules-coach summary::-webkit-details-marker{display:none}.game-rules-coach details[open]>ul{z-index:40;border:1px solid var(--ink);background:var(--panel);width:min(370px,100vw - 32px);box-shadow:var(--depth-md);margin:0;padding:10px 14px;list-style:none;position:absolute;top:calc(100% + 8px);right:0}.game-rules-coach li{border-bottom:1px solid var(--line);gap:2px;padding:8px 0;display:grid}.game-rules-coach li:last-child{border-bottom:0}.game-rules-coach li span{color:var(--muted);font-size:12px;line-height:1.35}.rules-coach-off{color:var(--muted);justify-content:flex-end;align-items:center;gap:10px;margin-top:12px;font-size:11px;display:flex}.rules-coach-off button{background:var(--panel)}@media (width<=640px){.walkthrough-modal-backdrop{padding:14px}.walkthrough-welcome{box-shadow:5px 5px 0 var(--ink);padding:20px}.walkthrough-choice{gap:12px;min-height:86px}.walkthrough-coach-card{bottom:max(14px, env(safe-area-inset-bottom));box-shadow:5px 5px 0 var(--ink);padding:16px}.walkthrough-actions{align-items:flex-end}.walkthrough-actions>div{flex-wrap:wrap;justify-content:flex-end}.game-rules-coach{grid-template-columns:1fr;gap:12px;padding:13px}.game-rules-coach-actions{flex-wrap:wrap;justify-content:space-between}.game-rules-coach details[open]>ul{left:0;right:auto}}.stack-mode-toggle{letter-spacing:.06em;background:var(--panel);min-height:30px;padding:0 9px;font-size:9px;font-weight:900}.stack-mode-toggle.active{background:var(--yellow)}.whot-stack-builder{border:2px solid var(--ink);background:color-mix(in srgb, var(--yellow) 24%, var(--panel));grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px 14px;margin:0 0 12px;padding:12px;display:grid}.whot-stack-builder>div:first-child{gap:3px;min-width:0;display:grid}.whot-stack-builder .eyebrow{margin:0}.whot-stack-builder small{line-height:1.35}.whot-stack-order{grid-column:1/-1;gap:6px;padding-bottom:2px;display:flex;overflow-x:auto}.whot-stack-order span{border:1px solid var(--ink);background:var(--paper);flex:none;align-items:center;gap:6px;min-height:34px;padding:0 9px;font-size:11px;font-weight:900;display:inline-flex}.whot-stack-order b{background:var(--ink);width:20px;height:20px;color:var(--paper);border-radius:50%;place-items:center;font-size:9px;display:grid}.hand-card{position:relative}.hand-card.stack-selected{box-shadow:0 0 0 3px var(--yellow), var(--depth-md);transform:translateY(-10px)}.stack-order-badge{z-index:6;border:2px solid var(--ink);background:var(--yellow);width:28px;height:28px;color:var(--ink);box-shadow:2px 2px 0 var(--ink);border-radius:50%;place-items:center;font-size:11px;font-weight:950;display:grid;position:absolute;top:-9px;right:-7px}.room-social.room-social-floating{left:max(14px, env(safe-area-inset-left));bottom:max(14px, env(safe-area-inset-bottom));z-index:92;box-shadow:none;background:0 0;border:0;width:auto;max-width:min(430px,100vw - 28px);margin:0;position:fixed}.room-chat-launcher{border:2px solid var(--ink);background:var(--yellow);width:min(380px,100vw - 28px);min-height:62px;box-shadow:5px 5px 0 var(--ink);text-align:left;grid-template-columns:10px minmax(0,1fr) auto auto;align-items:center;gap:9px;padding:8px 10px;display:grid}.room-chat-launcher:hover:not(:disabled){background:var(--yellow);color:var(--ink);box-shadow:6px 6px 0 var(--ink);transform:translate(-1px,-1px)}.room-chat-launcher.has-unread{animation:1.8s ease-in-out infinite room-chat-nudge}.room-chat-live-dot{background:var(--green);width:9px;height:9px;box-shadow:0 0 0 4px color-mix(in srgb, var(--green) 18%, transparent);border-radius:50%}.room-chat-launcher-copy{gap:2px;min-width:0;display:grid}.room-chat-launcher-copy strong{letter-spacing:.1em;font-size:10px}.room-chat-launcher-copy small{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--ink);opacity:.78;font-size:11px;display:block;overflow:hidden}.room-chat-unread{background:var(--red);color:#fff;border:1px solid var(--ink);border-radius:999px;place-items:center;min-width:25px;height:25px;font-size:10px;display:grid}.room-chat-open-mark{font-size:18px;font-weight:900}.room-social-panel{border:2px solid var(--ink);background:var(--panel);width:min(410px,100vw - 28px);max-height:min(610px,100dvh - 28px);box-shadow:7px 7px 0 var(--ink);grid-template-rows:auto auto auto minmax(120px,1fr) auto;display:grid;overflow:hidden}.room-social-panel .room-social-heading{background:var(--yellow);min-height:68px}.room-social-panel .room-chat-list{min-height:150px;max-height:none;overflow-y:auto}.room-social-panel .room-chat-message:not(.mine){background:color-mix(in srgb, var(--yellow) 12%, var(--panel))}.room-social-panel .room-chat-message.mine{background:color-mix(in srgb, var(--green) 7%, var(--panel))}@keyframes room-chat-nudge{0%,72%,to{transform:translateY(0)}78%{transform:translateY(-3px)rotate(-.5deg)}84%{transform:translateY(0)rotate(.5deg)}90%{transform:translateY(-2px)}}@media (width<=620px){.whot-stack-builder{grid-template-columns:1fr}.whot-stack-builder>button{width:100%}.room-social.room-social-floating{left:max(10px, env(safe-area-inset-left));bottom:max(10px, env(safe-area-inset-bottom));max-width:calc(100vw - 20px)}.room-chat-launcher,.room-social-panel{width:calc(100vw - 20px)}.room-social-panel{max-height:min(68dvh,620px);box-shadow:5px 5px 0 var(--ink)}.room-chat-launcher{min-height:58px;box-shadow:4px 4px 0 var(--ink)}}@media (prefers-reduced-motion:reduce){.room-chat-launcher.has-unread{animation:none}}.presence-dot.online{background:var(--green);box-shadow:0 0 0 3px #155d3a1f}.presence-dot.away{background:#d89a18;box-shadow:0 0 0 3px #d89a1824}.presence-dot.offline{background:#8f8c84;box-shadow:0 0 0 3px #504e481a}.player-directory-heading{align-items:end}.player-directory-heading>div:first-child{gap:3px;display:grid}.player-directory-heading>div:first-child>small{color:var(--muted);font-size:11px}.player-directory-search{gap:5px;width:min(290px,42vw);display:grid}.player-directory-search>span{letter-spacing:.11em;font-size:9px;font-weight:900}.player-directory-search input{border:1px solid var(--ink);background:var(--paper);width:100%;min-height:40px;padding:0 11px}.player-directory-list{overscroll-behavior:contain;max-height:480px;overflow-y:auto}.player-directory-row{cursor:pointer;transition:background .12s,transform .12s}.player-directory-row:hover,.player-directory-row:focus-visible{background:color-mix(in srgb, var(--yellow) 17%, transparent);outline:none}.player-directory-row.online{background:color-mix(in srgb, var(--green) 5%, transparent)}.player-directory-row>div:first-of-type{gap:1px}.player-last-seen{letter-spacing:.035em;text-transform:uppercase;width:fit-content;font-size:9px;font-weight:850}.player-last-seen.online{color:var(--green)}.player-last-seen.away{color:#9b6900}.player-last-seen.offline{color:var(--muted)}.player-directory-actions{justify-content:flex-end;align-items:center;gap:8px;min-width:112px;display:flex!important}.player-mini-record{white-space:nowrap;color:var(--muted);font-size:9px;font-weight:850}.player-profile-backdrop{z-index:240;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#11110fb8;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.player-profile-modal{border:2px solid var(--ink);background:var(--panel);width:min(760px,100%);max-height:min(850px,100dvh - 32px);box-shadow:9px 9px 0 var(--ink);overflow-y:auto}.player-profile-header{border-bottom:1px solid var(--ink);justify-content:space-between;align-items:flex-start;gap:18px;min-height:150px;padding:22px;display:flex}.player-profile-header h2{letter-spacing:-.06em;margin:3px 0 9px;font-size:clamp(42px,7vw,74px);line-height:.88}.player-profile-identity{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.player-profile-identity>span:first-child{font-size:12px;font-weight:800}.player-presence-label{border:1px solid var(--line);text-transform:uppercase;align-items:center;gap:7px;min-height:26px;padding:3px 8px;font-size:10px;font-weight:800;display:inline-flex}.player-presence-label.online{color:var(--green);border-color:var(--green)}.player-presence-label.away{color:#9b6900;border-color:#d89a18}.player-presence-label.offline{color:var(--muted)}.player-profile-primary-stats{border-bottom:1px solid var(--ink);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.player-profile-stat{align-content:end;gap:3px;min-height:110px;padding:16px;display:grid}.player-profile-stat+.player-profile-stat{border-left:1px solid var(--line)}.player-profile-stat>span{letter-spacing:.09em;text-transform:uppercase;color:var(--muted);font-size:9px;font-weight:900}.player-profile-stat>strong{overflow-wrap:anywhere;letter-spacing:-.045em;font-size:clamp(25px,4vw,40px);line-height:.95}.player-profile-stat>small{color:var(--muted);font-size:10px}.player-profile-sections{grid-template-columns:1fr 1fr;display:grid}.player-profile-sections>article{border-bottom:1px solid var(--line);min-width:0}.player-profile-sections>article:nth-child(odd){border-right:1px solid var(--line)}.player-profile-section-title{border-bottom:1px solid var(--line);grid-template-columns:auto 1fr;align-items:center;gap:10px;min-height:70px;padding:13px 15px;display:grid}.player-profile-section-title>span{border:1px solid var(--ink);padding:3px 5px;font-size:9px;font-weight:900}.player-profile-section-title>div{gap:1px;min-width:0;display:grid}.player-profile-section-title small{color:var(--muted);font-size:10px}.player-profile-mini-grid{grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.player-profile-mini-grid.money{grid-template-columns:2fr 1fr}.player-profile-mini-grid .player-profile-stat{min-height:88px;padding:12px}.player-profile-mini-grid .player-profile-stat>strong{font-size:clamp(19px,3vw,27px)}.player-game-breakdown{grid-template-columns:1fr 1fr;display:grid}.player-game-breakdown>div{align-content:end;gap:4px;min-height:88px;padding:14px;display:grid}.player-game-breakdown>div+div{border-left:1px solid var(--line)}.player-game-breakdown strong{letter-spacing:-.035em;font-size:22px}.player-game-breakdown span{color:var(--muted);font-size:10px}.player-profile-footer{min-height:52px;color:var(--muted);text-transform:uppercase;letter-spacing:.05em;justify-content:space-between;align-items:center;gap:16px;padding:12px 16px;font-size:10px;display:flex}.player-profile-loading{justify-content:center;align-items:center;gap:12px;min-height:220px;display:flex}.leaderboard-row.clickable{cursor:pointer}.leaderboard-row.clickable:hover,.leaderboard-row.clickable:focus-visible{background:color-mix(in srgb, var(--yellow) 20%, transparent);outline:none}@media (width<=700px){.player-directory-heading{flex-direction:column;align-items:stretch}.player-directory-search{width:100%}.player-directory-list{grid-template-columns:1fr;max-height:500px}.player-directory-row:nth-child(odd){border-right:0}.player-directory-actions{min-width:auto}.player-mini-record{display:none}.player-profile-backdrop{padding:10px}.player-profile-modal{max-height:calc(100dvh - 20px);box-shadow:5px 5px 0 var(--ink)}.player-profile-header{min-height:130px;padding:17px}.player-profile-primary-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.player-profile-primary-stats .player-profile-stat:nth-child(3){border-left:0;border-top:1px solid var(--line)}.player-profile-primary-stats .player-profile-stat:nth-child(4){border-top:1px solid var(--line)}.player-profile-sections{grid-template-columns:1fr}.player-profile-sections>article:nth-child(odd){border-right:0}}.adsroster-strip{border:1px solid var(--ink);background:#fff3;margin:20px 0 0}.adsroster-heading{border-bottom:1px solid var(--ink);justify-content:space-between;align-items:center;min-height:44px;padding:9px 12px;display:flex}.adsroster-heading p{margin:0}.adsroster-heading small{letter-spacing:.08em;text-transform:uppercase;font-size:9px;font-weight:800}.adsroster-grid{grid-template-columns:repeat(5,minmax(0,1fr));display:grid}.adsroster-card{border-right:1px solid var(--line);min-width:0}.adsroster-card:last-child{border-right:0}.adsroster-card a{min-height:92px;color:inherit;grid-template-columns:42px minmax(0,1fr);align-items:center;gap:9px;padding:11px;text-decoration:none;display:grid}.adsroster-card a:hover{background:#ffffff73}.adsroster-card img{object-fit:cover;border:1px solid var(--line);width:42px;height:42px}.adsroster-card-copy{gap:2px;min-width:0;display:grid}.adsroster-card-copy small{letter-spacing:.08em;font-size:8px;font-weight:900}.adsroster-card-copy strong,.adsroster-card-copy span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.adsroster-card-copy strong{font-size:11px}.adsroster-card-copy span{opacity:.68;font-size:9px}.adsroster-strip.compact{margin-top:26px}.adsroster-strip.compact .adsroster-grid{grid-template-columns:1fr}.adsroster-strip.compact .adsroster-card{border-right:0;border-bottom:1px solid var(--line)}.adsroster-strip.compact .adsroster-card:last-child{border-bottom:0}.adsroster-strip.compact .adsroster-card a{min-height:62px}@media (width<=760px){.adsroster-grid{grid-template-columns:1fr 1fr}.adsroster-card{border-bottom:1px solid var(--line)}.adsroster-card:nth-child(2n){border-right:0}.adsroster-card:last-child{border-bottom:0}}@media (width<=460px){.adsroster-grid{grid-template-columns:1fr}.adsroster-card{border-right:0}}
