:root{color:#17211b;background:#f4f0e8;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:16px}*{box-sizing:border-box}body{min-width:320px;margin:0;overflow:hidden}button,input,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}.entryScreen{background:linear-gradient(140deg,#194c432e,#0000 50%),#f4f0e8;place-items:center;min-height:100vh;padding:24px;display:grid}.entryPanel{background:#fffdf8;border:1px solid #d8d0c1;border-radius:8px;gap:16px;width:min(420px,100%);padding:24px;display:grid;box-shadow:0 18px 40px #241f161f}.entryPanel h1{margin:0 0 4px;font-size:34px}label{gap:6px;font-weight:650;display:grid}input,select{background:#fff;border:1px solid #c8bead;border-radius:6px;min-height:clamp(34px,4.8vh,42px);padding:0 10px}.roomSettings,.colorPicker{gap:10px;display:grid}.colorPicker>span{font-weight:650}.colorOptions{flex-wrap:wrap;gap:8px;display:flex}.colorSwatch{border:3px solid var(--die-border,#17211b);background:var(--die-bg,#fffdf8);border-radius:8px;width:34px;height:34px;box-shadow:inset 0 0 0 2px #ffffff57}.colorSwatch.selected{outline-offset:2px;outline:3px solid #194c4347}.colorSwatch.locked{filter:grayscale(.9)}.appShell{grid-template-rows:auto auto minmax(0,1fr);height:100vh;display:grid;overflow:hidden}.topBar{background:#fffdf8;border-bottom:1px solid #d7cebf;justify-content:space-between;align-items:center;gap:clamp(10px,1.2vw,16px);min-height:58px;padding:10px clamp(12px,1.4vw,18px);display:flex}.topBar>div:first-child{min-width:0}.roomCode{text-overflow:ellipsis;white-space:nowrap;font-size:18px;font-weight:800;overflow:hidden}.statusLine{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.statusLine,.muted{color:#786f62;font-size:14px}.topActions,.mediaState{flex-shrink:0;gap:8px;display:flex}.topActions .iconButton{position:relative}.unreadBadge{color:#fff;background:#c33f2f;border-radius:999px;place-items:center;min-width:18px;height:18px;padding:0 4px;font-size:11px;font-weight:950;display:grid;position:absolute;top:-5px;right:-5px}.settingsControl{position:relative}.settingsPanel{z-index:36;background:#fffdf8;border:1px solid #c8bead;border-radius:8px;gap:12px;width:min(292px,100vw - 24px);padding:12px;display:grid;position:absolute;top:50px;right:0;box-shadow:0 18px 42px #241f162e}.settingsPanelHeader{border-bottom:1px solid #d7cebf;justify-content:space-between;align-items:center;padding-bottom:8px;display:flex}.settingsPanelHeader strong{color:#17211b;font-size:15px;font-weight:950}.settingsGroup{gap:7px;display:grid}.settingsLabel{color:#6d6355;text-transform:uppercase;font-size:12px;font-weight:900}.segmentedControl{background:#f4f0e8;border-radius:8px;grid-template-columns:1fr 1fr;gap:4px;padding:4px;display:grid}.segmentedControl button,.settingsRow{color:#194c43;background:0 0;border:0;border-radius:6px;justify-content:center;align-items:center;gap:7px;min-height:36px;padding:0 10px;font-size:13px;font-weight:900;display:inline-flex}.segmentedControl button.selected{color:#fffdf8;background:#194c43;box-shadow:0 8px 20px #194c432e}.settingsRow{color:#17211b;background:#f4f0e8;justify-content:flex-start}.settingsRow svg,.segmentedControl svg{width:16px;height:16px}.toggleLine{grid-template-columns:auto 1fr;align-items:center;gap:9px;font-size:14px}.toggleLine input{min-height:auto}.soundSlider{gap:8px;font-size:14px}.soundSlider input{min-height:auto;padding:0}.errorBar,.formError,.notice{color:#7e2b1b;background:#f9dfd7;padding:10px 14px}.lobbyLayout,.gameLayout{gap:clamp(10px,1.2vw,18px);height:100%;min-height:0;padding:clamp(10px,1.2vw,18px);display:grid;overflow:hidden}.lobbyLayout{grid-template-columns:minmax(0,1fr)}.gameLayout{--rail-width:clamp(168px, 15vw, 220px);grid-template-columns:var(--rail-width) minmax(560px, 1fr) var(--rail-width);align-items:stretch}.gameLayout.revealMode{grid-template-columns:minmax(0,1fr)}.gameLayout.revealMode .tableArea{grid-column:1}.playerGrid,.playerRing{grid-template-columns:repeat(auto-fit,minmax(clamp(118px,14vw,180px),1fr));justify-content:center;gap:clamp(7px,.8vw,12px);min-height:0;display:grid}.playerGrid.playerCount-2,.playerRing.playerCount-2{grid-template-columns:repeat(2,minmax(220px,360px))}.playerGrid.playerCount-3,.playerRing.playerCount-3{grid-template-columns:repeat(3,minmax(190px,320px))}.playerGrid.playerCount-4,.playerRing.playerCount-4{grid-template-columns:repeat(4,minmax(160px,280px))}.playerGrid.playerCount-5,.playerRing.playerCount-5{grid-template-columns:repeat(6,minmax(72px,150px))}.playerGrid.playerCount-5>.playerTile,.playerRing.playerCount-5>.playerTile{grid-column:span 2}.playerGrid.playerCount-5>.playerTile:nth-child(4),.playerRing.playerCount-5>.playerTile:nth-child(4){grid-column:2/span 2}.playerGrid.playerCount-6,.playerRing.playerCount-6{grid-template-columns:repeat(3,minmax(180px,300px))}.playerGrid.playerCount-7,.playerRing.playerCount-7{grid-template-columns:repeat(8,minmax(62px,140px))}.playerGrid.playerCount-7>.playerTile,.playerRing.playerCount-7>.playerTile{grid-column:span 2}.playerGrid.playerCount-7>.playerTile:nth-child(5),.playerRing.playerCount-7>.playerTile:nth-child(5){grid-column:2/span 2}.playerGrid.playerCount-8,.playerRing.playerCount-8{grid-template-columns:repeat(4,minmax(160px,280px))}.playerRing.circularSeats{display:contents}.playerRing.circularSeats>.playerTile{z-index:1;width:var(--seat-width);height:var(--seat-height);align-self:var(--seat-align,center);justify-self:var(--seat-justify,center)}.playerTile{border:2px solid var(--die-border,#d7cebf);background:#1c2724;border-radius:8px;height:clamp(118px,17vh,188px);min-height:0;position:relative;overflow:hidden}.playerTile.active{border-color:#c33f2f;box-shadow:0 0 0 3px #c33f2f29}.playerTile.ready{border-color:#2f9b68;box-shadow:0 0 0 4px #2f9b6838}.playerTile.self{border-color:#194c43;box-shadow:0 0 0 3px #194c432e}.playerTile.threatened{border-color:#c33f2f;box-shadow:0 0 0 4px #c33f2f38}.playerTile.losing:after{content:"-1";color:#fff;background:#7e2b1bb8;place-items:center;font-size:48px;font-weight:950;animation:.9s both minusDie;display:grid;position:absolute;inset:0}.playerTile video{object-fit:cover;background:#17211b;width:100%;height:100%;min-height:68px}.playerMeta{color:#fff;text-shadow:0 1px 2px #000000a3;background:linear-gradient(#0000,#000000db);justify-content:space-between;align-items:center;gap:8px;height:30px;padding:5px 7px;display:flex;position:absolute;bottom:0;left:0;right:0}.playerMeta strong{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.mediaState{color:#fff;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0000007a;border:1px solid #ffffff2e;border-radius:999px;align-items:center;gap:2px;min-height:22px;padding:3px 5px;display:inline-flex;position:absolute;top:6px;right:6px}.tileVolume{visibility:hidden;opacity:0;pointer-events:none;background:#00000075;border-radius:7px;align-items:center;gap:5px;width:min(112px,100% - 16px);padding:4px;transition:opacity .14s,transform .14s,visibility 0s linear .14s;display:flex;position:absolute;bottom:36px;right:8px;transform:translateY(4px)}.playerTile:hover>.tileVolume,.playerTile:focus-within>.tileVolume{visibility:visible;opacity:1;pointer-events:auto;transition-delay:0s;transform:translateY(0)}.tileVolume button{color:#194c43;background:#ffffffeb;border:0;border-radius:5px;flex:none;place-items:center;width:24px;height:24px;padding:0;display:grid}.tileVolume input{width:100%;min-height:0;padding:0}.playerBadges{pointer-events:none;flex-wrap:wrap;align-items:flex-start;gap:4px;display:flex;position:absolute;top:6px;left:6px;right:6px}.playerTile:has(.mediaState) .playerBadges{right:52px}.selfBadge,.seatBadge,.botBadge,.readyBadge{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid #ffffff38;border-radius:999px;align-items:center;min-height:20px;padding:3px 6px;font-size:10px;font-weight:950;line-height:1;display:inline-flex;box-shadow:0 6px 14px #0000002e}.selfBadge{color:#194c43;background:#fffffff0}.seatBadge{color:#6f3429;background:#f4f0e8e6}.botBadge{color:#fffdf8;background:#202c28d1}.readyBadge{color:#fff;background:#2f9b68}.diceSlots{justify-content:flex-end;gap:3px;min-width:48px;display:flex}.diceSlot{border:1px solid var(--die-border,#ffffffdb);background:#fffdf8;border-radius:3px;flex:none;width:8px;height:8px;box-shadow:0 1px #0000002e}.diceSlot.filled{border-color:var(--die-border,#fffdf8);background:var(--die-bg,#fffdf8)}.diceSlot.lost{border-color:var(--die-border,#fffdf8);opacity:.92;background:#fffdf8}.playerGrid.seatShuffle .playerTile{animation:.85s cubic-bezier(.16,1,.3,1) both seatShuffle}.playerGrid.seatShuffle .playerTile:nth-child(2n){animation-delay:70ms}.playerGrid.seatShuffle .playerTile:nth-child(3n){animation-delay:.13s}.tableArea{background:radial-gradient(circle at 50% 40%,#194c4329,#0000 38%),linear-gradient(135deg,#e5efe9d1,#f4f0e8c7);border:1px solid #194c432e;border-radius:8px;grid-column:2;place-items:center;gap:clamp(6px,.8vw,12px);height:100%;min-height:0;padding:clamp(10px,1.2vw,18px);display:grid;position:relative;overflow:hidden;box-shadow:inset 0 0 0 1px #fffdf8b8}.tableArea.seatedTable{--seat-width:clamp(150px, 12vw, 190px);--seat-height:clamp(96px, 13vh, 132px);grid-template-columns:var(--seat-width) minmax(410px, 1fr) var(--seat-width);grid-template-rows:var(--seat-height) minmax(0, 1fr) var(--seat-height);isolation:isolate;min-height:0}.tableArea.seatedTable:before{content:"";z-index:0;background:#fffdf847;border:1px solid #194c433d;border-radius:50%;position:absolute;inset:clamp(82px,16vh,128px) clamp(88px,16%,160px);box-shadow:inset 0 0 0 12px #194c430f}.tableArea.revealTable{grid-template-rows:auto minmax(0,1fr);place-items:stretch stretch;display:grid}.gameLayout.duelMode .playerRing{grid-template-columns:repeat(2,minmax(240px,1fr))}.gameLayout.duelMode .playerTile{height:clamp(128px,21vh,184px);min-height:0}.gameLayout.duelMode .playerTile video{height:100%}.gameLayout.revealMode .playerRing{grid-template-columns:repeat(8,minmax(0,1fr))}.gameLayout.revealMode .playerTile{height:clamp(56px,9vh,78px)}.gameLayout.revealMode .playerTile video{height:100%;min-height:0}.gameLayout.revealMode .playerMeta{background:linear-gradient(#0000,#000000b8);height:auto;min-height:22px;padding:3px 5px;font-size:11px;position:absolute;bottom:0;left:0;right:0}.gameLayout.revealMode .playerMeta strong,.gameLayout.revealMode .playerMeta span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.gameLayout.revealMode .tileVolume{display:none}.duelBanner{color:#7e2b1b;background:#f9dfd7;border-left:5px solid #c33f2f;border-radius:8px;justify-content:space-between;align-items:center;gap:12px;padding:clamp(7px,.9vh,10px) 12px;display:flex}.duelBanner strong{font-size:clamp(15px,1.4vw,18px)}.duelBanner span{font-weight:750}.centerBoard,.sidePanel{background:#fffdf8;border:1px solid #d7cebf;border-radius:8px;align-content:start;gap:clamp(6px,.8vh,10px);min-height:0;padding:clamp(8px,1vw,12px);display:grid}.centerBoard{z-index:2;scrollbar-width:thin;justify-self:center;width:min(100%,1060px);position:relative;overflow:hidden;box-shadow:0 16px 36px #241f1614}.seatedTable .centerBoard{grid-area:2/2;align-self:center;width:min(100%,660px);max-height:100%;overflow:auto}.seatedTable .centerBoard:has(.bidControls){gap:5px;padding:7px 9px;overflow:hidden}.centerBoard.revealMode{grid-template-rows:auto auto minmax(0,1fr) auto;align-content:stretch;overflow:hidden}.seatedTable .centerBoard.revealMode{align-self:stretch;width:min(100%,920px);height:100%;max-height:620px;overflow:hidden}.centerBoard.revealMode h2{display:none}.centerBoard.revealMode .roundBadge{padding:3px 7px;font-size:12px}.sidePanel{overflow:hidden}.sidePanel.menuDrawer{z-index:34;opacity:0;pointer-events:none;width:clamp(300px,30vw,380px);max-width:calc(100vw - 24px);transition:transform .18s,opacity .18s;position:fixed;top:72px;bottom:clamp(10px,1.2vw,18px);right:clamp(10px,1.2vw,18px);transform:translate(calc(100% + 28px));box-shadow:0 24px 70px #17211b3d}.sidePanel.menuDrawer.open{opacity:1;pointer-events:auto;transform:translate(0)}.gameLayout>.sidePanel{grid-template-rows:auto minmax(0,1fr) auto}.lobbyLayout>.sidePanel{scrollbar-width:thin;overflow:auto}.lobbyColorControls{background:#f8f4ec;border:1px solid #d7cebf;border-radius:8px;gap:10px;padding:10px;display:grid}.lobbyControlHeader{justify-content:space-between;align-items:baseline;gap:10px;display:flex}.lobbyControlHeader span{color:#17211b;font-weight:900}.lobbyControlHeader small{color:#786f62;text-align:right;font-size:12px;font-weight:800}.lobbyColorOptions{grid-template-columns:repeat(8,minmax(0,1fr));display:grid}.lobbyColorControls .colorSwatch{aspect-ratio:1;width:100%;height:auto;min-height:30px}.lobbyColorControls .secondaryButton{width:100%}.lobbyColorControls .muted{margin:0;font-size:13px;font-weight:750}.centerBoard h2,.sidePanel h2,.logChat h3{margin:0}.drawerHeader,.centerHeader{align-items:center;gap:clamp(6px,.8vw,10px);display:grid}.drawerHeader{border-bottom:1px solid #d7cebf;grid-template-columns:minmax(0,1fr) auto;padding-bottom:8px}.drawerHeader strong{color:#17211b;font-size:16px;font-weight:900}.drawerCloseButton{min-height:34px;padding:0 10px}.drawerCloseButton svg{width:16px;height:16px}.centerHeader{grid-template-columns:minmax(150px,auto) minmax(0,1fr)}.turnTitle{align-content:center;gap:3px;min-width:0;display:grid}.centerBoard h2{font-size:clamp(20px,2vw,26px);line-height:1.08}.roundBadge{color:#194c43;overflow-wrap:anywhere;background:#e5efe9;border-radius:6px;width:fit-content;max-width:100%;padding:4px 7px;font-size:clamp(10px,.95vw,13px);font-weight:700;line-height:1.15}.roundBadge.maputo{color:#9e2f20;background:#f9dfd7;box-shadow:0 0 0 3px #c33f2f24}.maputoNotice{color:#7e2b1b;background:#f9dfd7;border-left:5px solid #c33f2f;border-radius:8px;align-items:center;gap:10px;padding:9px 11px;font-weight:800;display:flex}.maputoNotice strong{font-size:18px}.currentBid{background:#efe6d7;border-radius:8px;grid-template-columns:1fr auto;align-items:center;gap:2px 12px;padding:clamp(7px,.9vw,10px);font-weight:800;display:grid}.currentBid span,.currentBid em,.infoStrip span{color:#6d6355;font-size:clamp(11px,1vw,13px);font-style:normal;font-weight:650}.infoStrip span{overflow-wrap:anywhere;min-width:0;font-size:clamp(9px,16cqw,13px);line-height:1.12}.currentBid strong{color:#194c43;grid-row:span 2;font-size:clamp(22px,2.1vw,28px)}.infoStrip{grid-template-columns:repeat(5,minmax(0,1fr));gap:clamp(5px,.6vw,7px);min-width:0;display:grid}.infoStrip div{background:#f4f0e8;border-radius:8px;gap:2px;min-width:0;min-height:42px;padding:clamp(5px,.7vw,7px);display:grid;container-type:inline-size}.infoStrip strong{overflow-wrap:anywhere;color:#17211b;min-width:0;font-size:clamp(12px,24cqw,17px);line-height:1.1}.infoStrip .timerDanger{background:#f9dfd7}.infoStrip .timerDanger strong{color:#c33f2f}.bidStage{align-items:stretch;gap:clamp(6px,.7vw,8px);display:grid}.bidStage.withControls{grid-template-columns:clamp(150px,18vw,210px) minmax(0,1fr)}.bidStage.withControls .currentBid{align-content:center;min-height:100%}.seatedTable .bidStage.withControls{grid-template-columns:minmax(0,1fr)}.seatedTable .bidStage.withControls .currentBid{min-height:0}.seatedTable .centerBoard:has(.bidControls) .centerHeader{gap:5px}.seatedTable .centerBoard:has(.bidControls) .infoStrip{gap:4px}.seatedTable .centerBoard:has(.bidControls) .infoStrip div{min-height:34px;padding:3px 5px}.seatedTable .centerBoard:has(.bidControls) .infoStrip span{font-size:9px;line-height:1.05}.seatedTable .centerBoard:has(.bidControls) .infoStrip strong{font-size:clamp(11px,22cqw,14px)}.seatedTable .centerBoard:has(.bidControls) .diceDock{min-height:34px;padding:3px 6px}.seatedTable .centerBoard:has(.bidControls) .diceDockLabel{font-size:12px}.seatedTable .centerBoard:has(.bidControls) .die{--die-size:30px;--pip-size:4px}.seatedTable .centerBoard:has(.bidControls) .currentBid{min-height:0;padding:5px 7px}:is(.seatedTable .centerBoard:has(.bidControls) .currentBid span,.seatedTable .centerBoard:has(.bidControls) .currentBid em){font-size:10px}.seatedTable .centerBoard:has(.bidControls) .currentBid strong{font-size:20px}.seatedTable .centerBoard:has(.bidControls) .bidStage{gap:5px}.seatedTable .centerBoard:has(.bidControls) .bidHistory.empty{display:none}.bidHistory{background:#f4f0e8;border-radius:8px;gap:clamp(6px,.7vw,8px);min-height:38px;padding:clamp(5px,.7vw,7px);display:flex;overflow-x:auto}.bidHistory.empty{color:#786f62;align-items:center;font-weight:700}.bidHistory.empty strong{color:#194c43;margin-left:auto}.bidHistoryItem{background:#fffdf8;border-left:4px solid #194c43;border-radius:8px;gap:1px;min-width:clamp(88px,9vw,108px);padding:5px 7px;display:grid}.bidHistoryItem.currentTurn{background:#f9dfd7;border-left-color:#c33f2f}.bidHistoryItem span,.bidHistoryItem em,.dudoCard span{color:#6d6355;font-size:12px;font-style:normal;font-weight:800}.bidHistoryItem strong{color:#194c43;font-size:clamp(15px,1.5vw,18px)}.bidWithTooltip{cursor:help;position:relative}.bidWithTooltip:hover:after,.bidWithTooltip:focus-visible:after{content:attr(data-tooltip);z-index:20;color:#fffdf8;background:#17211b;border-radius:7px;width:max-content;max-width:220px;padding:7px 9px;font-size:13px;font-weight:850;line-height:1.25;position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%);box-shadow:0 8px 24px #17211b3d}.diceDock{background:#e5efe9;border-radius:8px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:10px;min-height:clamp(38px,5.8vh,50px);padding:5px 8px;display:grid}.diceDockLabel{color:#194c43;white-space:nowrap;font-size:13px;font-weight:900}.diceHand{flex-wrap:wrap;align-items:center;gap:clamp(5px,.6vw,8px);min-width:0;display:flex}.die{--die-size:clamp(34px, 4.8vmin, 46px);--pip-size:clamp(4px, .62vmin, 6px);width:var(--die-size);height:var(--die-size);background:var(--die-bg,#fff);border:2px solid var(--die-border,#17211b);color:var(--die-ink,#17211b);border-radius:8px;flex:none;place-items:center;font-size:clamp(18px,2.5vh,24px);font-weight:900;line-height:1;display:grid}.dice-emerald{--die-bg:#e5efe9;--die-border:#194c43;--die-ink:#123b34}.dice-ruby{--die-bg:#f9dfd7;--die-border:#c33f2f;--die-ink:#7e2b1b}.dice-sapphire{--die-bg:#dfeafa;--die-border:#2c5caa;--die-ink:#173a73}.dice-amber{--die-bg:#ffefc2;--die-border:#b7791f;--die-ink:#6a4312}.dice-violet{--die-bg:#eadffc;--die-border:#7550b8;--die-ink:#43296f}.dice-teal{--die-bg:#d9f3f0;--die-border:#128174;--die-ink:#07524a}.dice-rose{--die-bg:#ffe1ec;--die-border:#c83f72;--die-ink:#7b1f42}.dice-slate{--die-bg:#2f3836;--die-border:#111816;--die-ink:#fffdf8}.die-small{--die-size:30px;--pip-size:4px;width:var(--die-size);height:var(--die-size);border-radius:7px}.die-tiny{--die-size:22px;--pip-size:3px;width:var(--die-size);height:var(--die-size);border-radius:6px}.pipGrid{gap:max(2px, calc(var(--die-size) * .04));grid-template-rows:repeat(3,1fr);grid-template-columns:repeat(3,1fr);width:72%;height:72%;display:grid}.pipGrid span{visibility:hidden;width:var(--pip-size);height:var(--pip-size);background:currentColor;border-radius:50%;place-self:center}.face-1 span:nth-child(5),.face-2 span:first-child,.face-2 span:nth-child(9),.face-3 span:first-child,.face-3 span:nth-child(5),.face-3 span:nth-child(9),.face-4 span:first-child,.face-4 span:nth-child(3),.face-4 span:nth-child(7),.face-4 span:nth-child(9),.face-5 span:first-child,.face-5 span:nth-child(3),.face-5 span:nth-child(5),.face-5 span:nth-child(7),.face-5 span:nth-child(9),.face-6 span:first-child,.face-6 span:nth-child(3),.face-6 span:nth-child(4),.face-6 span:nth-child(6),.face-6 span:nth-child(7),.face-6 span:nth-child(9){visibility:visible}.bidVisual{align-items:center;gap:6px;display:inline-flex}.bidVisual.compact{gap:4px}.bidVisualX{color:#786f62;font-size:.78em}.bidControls{--bid-square:clamp(40px, 5.8vh, 48px);background:#fffaf0;border:1px solid #d7cebf;border-radius:8px;grid-template-columns:minmax(150px,190px) minmax(0,1fr);align-items:end;gap:clamp(6px,.7vw,8px) clamp(10px,1.1vw,14px);width:100%;min-width:0;padding:clamp(8px,.9vw,10px);display:grid;box-shadow:0 12px 28px #241f161a}.seatedTable .centerBoard:has(.bidControls) .bidControls{--bid-square:clamp(34px, 5vh, 38px);grid-template-columns:minmax(128px,144px) minmax(0,1fr);gap:5px 8px;padding:6px}.bidControlsHeader{grid-area:1/1/auto/-1;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:clamp(7px,.8vw,10px);display:grid}.seatedTable .centerBoard:has(.bidControls) .bidControlsHeader{gap:5px}.bidHint{color:#5f564a;text-overflow:ellipsis;white-space:nowrap;font-size:clamp(12px,1.1vw,14px);line-height:1.35;overflow:hidden}.bidPreview{color:#5f564a;justify-items:end;gap:2px;min-width:min(220px,100%);font-size:12px;display:grid}.bidPreview strong{color:#17211b;text-align:right;font-size:clamp(15px,1.4vw,19px);line-height:1.1}.bidStepperGroup,.bidFaceGroup{gap:6px;min-width:0;display:grid}:is(.seatedTable .centerBoard:has(.bidControls) .bidStepperGroup,.seatedTable .centerBoard:has(.bidControls) .bidFaceGroup){gap:4px}.bidStepperGroup{grid-area:2/1}.bidFaceGroup{grid-area:2/2}.bidControlLabel{color:#473f34;font-size:13px;font-weight:850}.seatedTable .centerBoard:has(.bidControls) .bidControlLabel{font-size:12px}.quantityStepper{grid-template-columns:var(--bid-square) minmax(66px, 86px) var(--bid-square);justify-content:start;align-items:center;gap:6px;display:grid}.seatedTable .centerBoard:has(.bidControls) .quantityStepper{grid-template-columns:var(--bid-square) minmax(50px, 58px) var(--bid-square);gap:5px}.stepperButton,.faceButton{width:var(--bid-square);height:var(--bid-square);color:#17211b;background:#fffdf8;border:2px solid #d7cebf;border-radius:7px;place-items:center;min-height:0;font-weight:900;display:grid}.stepperButton{font-size:25px;line-height:1}.quantityInput{width:100%;min-height:var(--bid-square);text-align:center;padding:0 8px;font-size:clamp(22px,3vh,28px);font-weight:900}.seatedTable .centerBoard:has(.bidControls) .quantityInput{padding:0 4px;font-size:19px}.faceButtons{grid-template-columns:repeat(6, var(--bid-square));justify-content:start;gap:6px;display:grid}.seatedTable .centerBoard:has(.bidControls) .faceButtons{gap:5px}.faceButton{aspect-ratio:1;padding:0;font-size:clamp(18px,2.5vh,22px)}.faceButton .die{--die-size:calc(var(--bid-square) - 8px);--pip-size:max(4px, calc(var(--bid-square) * .12));width:var(--die-size);height:var(--die-size);font-size:calc(var(--bid-square) * .52);border-radius:8px}.faceButton.selected{color:#194c43;background:#e5efe9;border-color:#194c43;box-shadow:inset 0 0 0 2px #194c4324}.stepperButton:hover:not(:disabled),.faceButton:hover:not(:disabled){background:#f1f7f3;border-color:#194c43}.stepperButton:focus-visible,.faceButton:focus-visible,.bidActionButton:focus-visible{outline-offset:2px;outline:3px solid #194c4342}.faceButton:disabled:not(.selected){opacity:.35}.bidActionRow{grid-area:3/1/auto/-1;grid-template-columns:1fr 1fr;gap:8px;display:grid}.seatedTable .centerBoard:has(.bidControls) .bidActionRow{gap:6px}.bidActionButton{min-height:var(--bid-square);padding:0 clamp(8px,1vw,12px);font-size:clamp(13px,1.15vw,16px);line-height:1.15}.seatedTable .centerBoard:has(.bidControls) .bidActionButton{padding:0 8px;font-size:13px}.dudoActionButton{background:#b93427}.primaryButton,.dangerButton,.secondaryButton,.iconButton{border:0;border-radius:6px;justify-content:center;align-items:center;gap:8px;min-height:clamp(36px,5vh,42px);padding:0 clamp(10px,1vw,14px);font-weight:800;display:inline-flex}.primaryButton{color:#fff;background:#194c43}.dangerButton{color:#fff;background:#c33f2f}.secondaryButton{color:#17211b;background:#efe6d7}.iconButton{color:#194c43;background:#e5efe9;width:clamp(36px,5vh,42px);padding:0}.iconButton.active{color:#fff;background:#194c43}.iconButton svg,.primaryButton svg{width:18px;height:18px}.logChat{grid-template-rows:auto minmax(72px,1fr) auto minmax(72px,1fr) auto auto;gap:clamp(7px,1vh,10px);min-height:0;display:grid}.logList,.chatList{background:#f4f0e8;border-radius:8px;align-content:start;gap:6px;min-height:0;max-height:none;padding:clamp(7px,.9vw,10px);font-size:clamp(12px,1vw,14px);display:grid;overflow:auto}.chatInput{grid-template-columns:1fr auto;gap:8px;min-width:0;display:grid}.reactionRow{gap:6px;min-width:0;display:flex;overflow-x:auto}.reactionButton{background:#efe6d7;border:0;border-radius:6px;place-items:center;width:34px;height:34px;font-size:18px;display:grid}.revealBox{scrollbar-width:thin;background:#e5efe9;border-radius:8px;gap:clamp(7px,1vh,14px);min-height:0;padding:clamp(8px,1vw,14px);display:grid;overflow:auto}.centerBoard.revealMode .revealBox{align-content:start;height:100%;min-height:0}.dudoCard{grid-template-columns:1.4fr .8fr 1fr;gap:clamp(6px,.8vw,10px);display:grid}.dudoCard div{background:#fffdf8;border-radius:8px;gap:3px;padding:clamp(6px,.8vw,10px);display:grid}.dudoCard strong{color:#17211b;font-size:clamp(14px,1.3vw,17px)}.revealHeader{grid-template-columns:1fr auto;align-items:center;gap:clamp(8px,1vw,16px);display:grid}.revealHeader strong{color:#194c43;margin-top:4px;font-size:clamp(26px,3vw,36px);display:block}.revealHeader p{color:#4f5c54;margin:4px 0 0;font-weight:700}.eyebrow{color:#194c43;text-transform:uppercase;align-items:center;gap:6px;font-size:13px;font-weight:900;display:inline-flex}.bigCounter{background:#fffdf8;border:4px solid #194c43;border-radius:8px;place-items:center;width:clamp(86px,12vh,128px);height:clamp(86px,12vh,128px);display:grid;box-shadow:0 12px 30px #194c432e}.bigCounter span{color:#194c43;font-size:clamp(44px,7vh,64px);font-weight:950;line-height:.9;animation:.42s counterPulse}.bigCounter small{color:#6d6355;margin-top:-18px;font-weight:800}.bigCounter.done{border-color:#c33f2f}.countNarration{color:#17211b;background:#fffdf8;border-radius:8px;align-items:center;gap:6px;min-height:32px;padding:7px 9px;font-weight:800;display:flex}.revealPause{color:#194c43;background:#fffdf8;border-radius:8px;place-items:center;min-height:40px;padding:9px 12px;font-weight:900;animation:.96s ease-in-out infinite suspensePulse;display:grid}.revealPlayers{grid-template-columns:repeat(auto-fit,minmax(126px,1fr));align-content:start;gap:clamp(6px,.8vw,10px);display:grid}.revealPlayer{background:#fffdf8b8;border-radius:8px;grid-template-columns:1fr;align-items:start;gap:4px;padding:6px;display:grid}.revealPlayerName{color:#17211b;text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:900;overflow:hidden}.revealDice{flex-wrap:nowrap;gap:4px;display:flex}.revealDie{color:#8a8174;opacity:.62;background:#f4f0e8;border:2px dashed #b8ad9c;border-radius:8px;place-items:center;width:clamp(20px,2.8vh,23px);height:clamp(20px,2.8vh,23px);font-weight:900;display:grid;transform:translateY(4px)scale(.92)}.revealDie.shown{color:#17211b;opacity:1;background:0 0;border-style:solid;animation:.26s dieReveal;transform:translateY(0)scale(1)}.revealDie.counts{color:#194c43;background:#e5efe9;border-color:#194c43;box-shadow:0 0 0 3px #194c431f}.revealDie.decider{border-color:#c33f2f;box-shadow:0 0 0 3px #c33f2f29}.revealDie.decider:not(.shown){color:#c33f2f;animation:.76s ease-in-out infinite suspensePulse}.revealDie.decider.shown{animation:.52s deciderReveal}.revealDie.paco{color:#7e2b1b;background:#f9dfd7;border-color:#c33f2f}.revealDie .die{border-width:0}.revealOutcome{background:#fffdf8;border-radius:8px;gap:clamp(8px,1vw,12px);padding:clamp(8px,1vw,12px);display:grid}@media (width>=900px){.centerBoard.revealMode .revealBox{overflow:hidden}.centerBoard.revealMode .revealBox:has(.revealOutcome){grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-auto-rows:minmax(0,auto);align-content:start}.centerBoard.revealMode .revealBox:has(.revealOutcome) .dudoCard{grid-area:1/1;align-self:stretch}.centerBoard.revealMode .revealBox:has(.revealOutcome) .revealHeader{grid-area:1/2}.centerBoard.revealMode .revealBox:has(.revealOutcome) .revealHeader strong{font-size:clamp(22px,2.4vw,30px)}.centerBoard.revealMode .revealBox:has(.revealOutcome) .bigCounter{width:clamp(76px,10vh,96px);height:clamp(76px,10vh,96px)}.centerBoard.revealMode .revealBox:has(.revealOutcome) .bigCounter span{font-size:clamp(36px,5.8vh,48px)}.centerBoard.revealMode .revealBox:has(.revealOutcome) .revealPlayers{grid-area:2/1/auto/-1}.centerBoard.revealMode .revealBox:has(.revealOutcome) .revealOutcome{grid-area:3/1/auto/-1}.centerBoard.revealMode .revealOutcome{grid-template-columns:minmax(220px,.72fr) minmax(0,1fr);align-items:stretch}.centerBoard.revealMode .revealResultText{grid-area:1/1/span 2;align-content:center}.centerBoard.revealMode .faceSummary{grid-area:1/2}.centerBoard.revealMode .probabilityPanel{grid-area:2/2}.centerBoard.revealMode .revealBox:has(.revealOutcome) .probabilityPanel div{padding:6px 7px}:is(.centerBoard.revealMode .revealBox:has(.revealOutcome) .probabilityPanel span,.centerBoard.revealMode .revealBox:has(.revealOutcome) .probabilityPanel small){font-size:11px;line-height:1.15}.centerBoard.revealMode .revealBox:has(.revealOutcome) .probabilityPanel strong{font-size:clamp(16px,1.5vw,19px)}}.faceSummary{grid-template-columns:repeat(6,minmax(0,1fr));gap:6px;display:grid}.faceSummary div{background:#f4f0e8;border-radius:8px;justify-content:center;align-items:center;gap:5px;min-height:34px;display:flex}.faceSummary div.target{background:#e5efe9;box-shadow:inset 0 0 0 2px #194c4326}.revealResultText{gap:2px;display:grid}.revealResultText strong{font-size:clamp(16px,1.5vw,20px)}.revealOutcome.bidMet .revealResultText strong{color:#194c43}.revealOutcome.bidMissed .revealResultText strong{color:#c33f2f}.probabilityPanel{grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(6px,.8vw,10px);display:grid}.probabilityPanel div{background:#f4f0e8;border-radius:8px;gap:3px;padding:clamp(7px,.9vw,10px);display:grid}.probabilityPanel span,.probabilityPanel small{color:#6d6355;font-size:12px;font-weight:750}.probabilityPanel strong{color:#17211b;font-size:clamp(17px,1.7vw,22px);font-weight:950}.gameSideRail{scrollbar-width:thin;grid-column:3;align-content:start;min-height:0;display:grid;overflow:auto}.standings{background:#fffdf8;border:1px solid #d7cebf;border-radius:8px;gap:7px;padding:9px;display:grid;box-shadow:0 16px 36px #241f1614}.standingsHeader{border-bottom:1px solid #d7cebf;justify-content:space-between;align-items:center;gap:8px;min-height:28px;padding:0 2px 6px;display:flex}.standingsHeader span{color:#194c43;text-transform:uppercase;font-size:12px;font-weight:950}.standingsHeader strong{color:#194c43;text-align:center;background:#e5efe9;border-radius:999px;min-width:36px;padding:3px 7px;font-size:12px}.standingRow{border:1px solid var(--die-border,#d7cebf);background:var(--die-bg,#f4f0e8);min-height:42px;color:var(--die-ink,#17211b);border-left-width:5px;border-radius:7px;grid-template-columns:30px minmax(0,1fr) auto;align-items:center;gap:8px;padding:6px 8px 6px 6px;display:grid}.standingRow strong{text-overflow:ellipsis;white-space:nowrap;color:inherit;font-size:13px;font-weight:950;overflow:hidden}.standingRow em{color:inherit;opacity:.74;white-space:nowrap;font-size:11px;font-style:normal;font-weight:900}.standingPlace{background:var(--die-border,#194c43);color:#fffdf8;border-radius:6px;place-items:center;width:24px;height:24px;font-size:12px;font-weight:950;display:grid}.standingRow.eliminated{filter:grayscale(.72);opacity:.64}.directorOverlay{z-index:25;pointer-events:none;background:#17211b2e;place-items:center;padding:24px;animation:.18s overlayFade;display:grid;position:fixed;inset:0}.directorOverlay.turn,.directorOverlay.bid{background:0 0}.directorCard{color:#17211b;text-align:center;background:#fffdf8f5;border:1px solid #fffdf8bf;border-radius:8px;justify-items:center;gap:8px;min-width:min(420px,100vw - 48px);padding:22px;animation:.22s directorIn;display:grid;box-shadow:0 26px 70px #17211b42}.directorCard strong{font-size:34px;line-height:1}.directorCard span{color:#5f564a;font-weight:800}.directorOverlay.dudo .directorCard,.directorOverlay.result .directorCard{color:#fff;background:#17211b}.directorOverlay.dudo .directorCard span,.directorOverlay.result .directorCard span{color:#f4f0e8}.roundCup{transform-origin:50% 90%;background:#194c43;border-radius:8px 8px 18px 18px;justify-content:center;align-items:end;gap:5px;width:92px;height:72px;padding:10px 12px;animation:.24s both cupEntrance,.62s ease-in-out .24s 2 cupShake;display:flex;position:relative}.roundCup:after{content:"";background:#ffffff3d;border-radius:8px;height:8px;position:absolute;inset:10px 10px auto}.cupDice{color:#17211b;background:#fffdf8;border-radius:6px;place-items:center;width:24px;height:24px;font-size:13px;font-weight:950;animation:.62s ease-in-out .24s both cupDiceTumble;display:grid}.cupDice:nth-child(2){animation-delay:.3s}.cupDice:nth-child(3){animation-delay:.36s}.bidChipScene{color:#fff;background:#c33f2f;border:8px double #fffdf8;border-radius:50%;place-items:center;width:112px;height:112px;font-size:26px;font-weight:950;animation:.36s chipPop;display:grid}.winnerOverlay{z-index:40;background:#17211bbd;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.winnerCard{background:#fffdf8;border:1px solid #fffdf8b8;border-radius:8px;gap:18px;width:min(920px,100%);padding:26px;animation:.26s winnerIn;display:grid;box-shadow:0 30px 80px #00000052}.winnerKicker{color:#c33f2f;text-transform:uppercase;font-weight:950}.winnerCard h2{color:#194c43;margin:0;font-size:46px;line-height:1}.winnerStats{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.winnerStats div,.postMatchStats div{background:#f4f0e8;border-radius:8px;gap:4px;min-height:82px;padding:10px;display:grid}.winnerStats span,.postMatchStats span,.postMatchStats em{color:#6d6355;font-size:13px;font-style:normal;font-weight:800}.winnerStats strong,.postMatchStats strong{color:#17211b;font-size:22px}.postMatchStats{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.postMatchPanel{gap:10px;display:grid}.postMatchIntro,.metricExplainer{background:#f4f0e8;border-radius:8px;gap:4px;padding:10px;display:grid}.postMatchIntro strong{color:#17211b;font-size:17px}.postMatchIntro span,.metricExplainer span,.postMatchStats small{color:#6d6355;font-size:12px;font-weight:750;line-height:1.25}.metricExplainer{grid-template-columns:repeat(3,minmax(0,1fr))}.luckTable{background:#f4f0e8;border-radius:8px;gap:6px;padding:8px;display:grid}.luckHeader,.luckRow{grid-template-columns:minmax(110px,1.2fr) minmax(64px,.7fr) minmax(74px,.7fr) minmax(64px,.6fr) minmax(72px,.6fr) minmax(96px,.8fr);align-items:center;gap:8px;display:grid}.luckHeader{color:#6d6355;text-transform:uppercase;padding:0 7px;font-size:11px;font-weight:950}.luckRow{background:#fffdf8;border-radius:7px;min-height:30px;padding:5px 7px}.luckHeader span,.luckRow span,.luckRow strong,.luckRow em,.luckRow small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.luckRow span{font-weight:900}.luckRow em,.luckRow small{color:#6d6355;font-size:12px;font-style:normal;font-weight:800}.roundLedger{grid-template-columns:repeat(auto-fit,minmax(132px,1fr));gap:6px;display:grid}.roundLedgerItem{background:#f4f0e8;border-radius:8px;gap:4px;padding:7px;display:grid}.roundLedgerItem span,.roundLedgerItem em,.roundLedgerItem small{color:#6d6355;font-size:12px;font-style:normal;font-weight:850}.roundLedgerItem strong{color:#17211b}.swingTrack{background:#17211b1f;border-radius:999px;height:6px;overflow:hidden}.swingTrack i{width:var(--swing);border-radius:inherit;background:#194c43;height:100%;display:block}.roundLedgerItem.cold .swingTrack i{background:#c33f2f}.winnerActions{flex-wrap:wrap;gap:10px;display:flex}@keyframes dieReveal{0%{opacity:0;transform:translateY(8px)scale(.82)rotate(-4deg)}to{opacity:1;transform:translateY(0)scale(1)rotate(0)}}@keyframes deciderReveal{0%{opacity:0;transform:translateY(8px)scale(.78)rotate(-5deg)}62%{opacity:1;transform:translateY(-2px)scale(1.16)rotate(3deg)}to{opacity:1;transform:translateY(0)scale(1)rotate(0)}}@keyframes suspensePulse{0%,to{transform:scale(1);box-shadow:0 0 #c33f2f33}50%{transform:scale(1.04);box-shadow:0 0 0 6px #c33f2f14}}@keyframes overlayFade{0%{opacity:0}to{opacity:1}}@keyframes directorIn{0%{opacity:0;transform:translateY(14px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes cupShake{0%,to{transform:rotate(0)translate(0)}25%{transform:rotate(-7deg)translate(-3px)}50%{transform:rotate(5deg)translate(3px)}75%{transform:rotate(-4deg)translate(-2px)}}@keyframes cupEntrance{0%{opacity:0;transform:translateY(-18px)scale(.9)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes cupDiceTumble{0%{transform:translateY(-8px)rotate(-12deg)}38%{transform:translateY(4px)rotate(10deg)}70%{transform:translateY(-3px)rotate(-6deg)}to{transform:translateY(0)rotate(0)}}@keyframes chipPop{0%{opacity:0;transform:translateY(18px)scale(.65)rotate(-10deg)}70%{opacity:1;transform:translateY(-4px)scale(1.08)rotate(4deg)}to{transform:translateY(0)scale(1)rotate(0)}}@keyframes seatShuffle{0%{transform:translate(0)rotate(0)scale(1)}30%{transform:translate(-16px)rotate(-2deg)scale(.98)}62%{transform:translate(18px)rotate(2deg)scale(1.02)}to{transform:translate(0)rotate(0)scale(1)}}@keyframes minusDie{0%{opacity:0;transform:scale(.7)}35%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(1.08)}}@keyframes winnerIn{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}@keyframes counterPulse{0%{transform:scale(.82)}65%{transform:scale(1.08)}to{transform:scale(1)}}.hostControls{gap:clamp(6px,.8vh,8px);min-height:0;display:grid;overflow:auto}[data-theme=dark].appShell,[data-theme=dark].entryScreen{color:#f4f0e8;background:#101513}[data-theme=dark].entryScreen{background:#101513}[data-theme=dark] .entryPanel,[data-theme=dark] .topBar,[data-theme=dark] .centerBoard,[data-theme=dark] .sidePanel,[data-theme=dark] .lobbyColorControls,[data-theme=dark] .settingsPanel,[data-theme=dark] .winnerCard,[data-theme=dark] .directorCard{color:#f4f0e8;background:#18211e;border-color:#33413c}[data-theme=dark] input,[data-theme=dark] select,[data-theme=dark] .currentBid,[data-theme=dark] .bidControls,[data-theme=dark] .bidHistoryItem,[data-theme=dark] .dudoCard div,[data-theme=dark] .revealOutcome,[data-theme=dark] .countNarration,[data-theme=dark] .revealPause,[data-theme=dark] .luckRow,[data-theme=dark] .reactionButton{color:#f4f0e8;background:#202c28;border-color:#33413c}[data-theme=dark] .winnerStats div,[data-theme=dark] .postMatchStats div,[data-theme=dark] .postMatchIntro,[data-theme=dark] .metricExplainer,[data-theme=dark] .luckRow,[data-theme=dark] .tableArea,[data-theme=dark] .infoStrip div,[data-theme=dark] .bidHistory,[data-theme=dark] .diceDock,[data-theme=dark] .segmentedControl,[data-theme=dark] .settingsRow,[data-theme=dark] .logList,[data-theme=dark] .chatList,[data-theme=dark] .revealBox,[data-theme=dark] .probabilityPanel div,[data-theme=dark] .standings,[data-theme=dark] .faceSummary div,[data-theme=dark] .luckTable,[data-theme=dark] .roundLedgerItem{background:#121a17}[data-theme=dark] .roomCode,[data-theme=dark] .drawerHeader strong,[data-theme=dark] .settingsPanelHeader strong,[data-theme=dark] .lobbyControlHeader span,[data-theme=dark] .centerBoard h2,[data-theme=dark] .infoStrip strong,[data-theme=dark] .currentBid strong,[data-theme=dark] .bidPreview strong,[data-theme=dark] .bidHistoryItem strong,[data-theme=dark] .dudoCard strong,[data-theme=dark] .revealPlayerName,[data-theme=dark] .postMatchIntro strong,[data-theme=dark] .probabilityPanel strong,[data-theme=dark] .standingsHeader strong,[data-theme=dark] .luckRow span,[data-theme=dark] .luckRow strong,[data-theme=dark] .roundLedgerItem strong{color:#f4f0e8}[data-theme=dark] .statusLine,[data-theme=dark] .muted,[data-theme=dark] .lobbyControlHeader small,[data-theme=dark] .settingsLabel,[data-theme=dark] .currentBid span,[data-theme=dark] .currentBid em,[data-theme=dark] .infoStrip span,[data-theme=dark] .bidHistoryItem span,[data-theme=dark] .bidHistoryItem em,[data-theme=dark] .postMatchIntro span,[data-theme=dark] .metricExplainer span,[data-theme=dark] .postMatchStats small,[data-theme=dark] .luckHeader,[data-theme=dark] .probabilityPanel span,[data-theme=dark] .probabilityPanel small,[data-theme=dark] .standingsHeader span,[data-theme=dark] .luckRow em,[data-theme=dark] .luckRow small,[data-theme=dark] .roundLedgerItem span,[data-theme=dark] .roundLedgerItem em,[data-theme=dark] .roundLedgerItem small{color:#c1b9aa}[data-theme=dark] .settingsPanelHeader,[data-theme=dark] .standingsHeader{border-color:#33413c}[data-theme=dark] .settingsRow,[data-theme=dark] .segmentedControl button{color:#f4f0e8}[data-theme=dark] .segmentedControl button.selected{color:#194c43;background:#e5efe9}@media (height<=760px){.tableArea.seatedTable{--seat-width:clamp(150px, 12.5vw, 180px);--seat-height:clamp(104px, 15.5vh, 124px)}.centerBoard{gap:6px;padding:8px 10px}.centerBoard h2{font-size:19px}.infoStrip div{min-height:42px;padding:5px 6px}.currentBid{padding:7px 9px}.currentBid strong{font-size:24px}.bidHistory{min-height:36px;padding:4px 6px}.diceDock{min-height:38px;padding:4px 7px}.bidControls{--bid-square:40px;gap:6px;padding:7px}.bidControlsHeader{gap:5px}.quantityStepper{grid-template-columns:var(--bid-square) minmax(60px, 78px) var(--bid-square);gap:6px}.quantityInput{font-size:21px}}@media (width<=1180px){.gameLayout{grid-template-rows:minmax(min(720px,100vh - 132px),1fr) auto;grid-template-columns:minmax(0,1fr);overflow:auto}.gameLayout.revealMode{grid-template-rows:minmax(0,1fr)}.tableArea{grid-column:1}.gameSideRail{grid-column:1;overflow:visible}}@media (width<=760px){.topActions{gap:6px}.topActions .iconButton{width:36px;min-height:36px}.tableArea.seatedTable{--seat-width:auto;--seat-height:clamp(108px, 29vw, 132px)}.lobbyLayout,.gameLayout{grid-template-columns:1fr}.gameLayout{overflow:auto}.tableArea{grid-column:1;height:auto;min-height:0;overflow:visible}.tableArea.seatedTable{grid-template:"players""center"/minmax(0,1fr);align-content:start;place-items:stretch stretch;gap:8px;display:grid}.tableArea.seatedTable:before{display:none}.seatedTable .centerBoard{grid-area:center;width:100%;max-height:none;overflow:visible}.seatedTable .playerRing.circularSeats{grid-area:players;grid-template-columns:none;grid-auto-columns:clamp(158px,43vw,196px);grid-auto-flow:column;grid-template-rows:var(--seat-height);height:calc(var(--seat-height) + 8px);overscroll-behavior-x:contain;pointer-events:auto;scroll-snap-type:x proximity;scrollbar-width:none;align-self:start;align-items:stretch;gap:8px;padding-bottom:4px;display:grid;position:relative;inset:auto;overflow:auto hidden}.seatedTable .playerRing.circularSeats::-webkit-scrollbar{display:none}.seatedTable .playerRing.circularSeats>.playerTile{width:auto;height:var(--seat-height);scroll-snap-align:start;place-self:stretch stretch;position:relative;top:auto;left:auto;transform:none;grid-area:auto!important}.gameSideRail{grid-column:1;overflow:visible}.centerHeader{grid-template-columns:minmax(0,1fr)}.centerBoard h2{font-size:18px}.roundBadge{font-size:11px}.bidControlsHeader,.bidStage.withControls{grid-template-columns:1fr}.bidControls{--bid-square:clamp(37px, 10.4vw, 43px);grid-template-columns:minmax(132px,auto) minmax(0,1fr)}.bidPreview{justify-items:start}.bidStepperGroup{grid-area:2/1}.bidActionRow{grid-area:4/1/auto/-1;align-self:end}.bidFaceGroup{grid-area:3/1/auto/-1}.faceButtons{grid-template-columns:repeat(6, var(--bid-square))}.bidActionRow{grid-template-columns:1fr 1fr}.infoStrip{grid-template-columns:repeat(5,minmax(0,1fr))}.winnerStats{grid-template-columns:1fr}.postMatchStats,.metricExplainer,.luckRow{grid-template-columns:1fr 1fr}.luckHeader{display:none}.luckRow span{grid-column:1/-1}.gameLayout.duelMode .playerRing{grid-template-columns:repeat(2,minmax(0,1fr))}.gameLayout.duelMode .playerTile{height:var(--seat-height);min-height:0}.gameLayout.duelMode .playerTile video{height:100%;min-height:0}.gameLayout.duelMode .playerMeta{height:32px;padding:6px;font-size:12px}.duelBanner,.winnerActions{flex-direction:column;align-items:stretch}.directorCard strong,.winnerCard h2{font-size:30px}.revealHeader,.revealPlayer,.dudoCard,.probabilityPanel{grid-template-columns:1fr}.bigCounter{width:100%;height:96px}.centerBoard.revealMode .revealBox{gap:6px;padding:8px;overflow:auto}.centerBoard.revealMode .revealBox:has(.revealOutcome){gap:4px;padding:6px}.centerBoard.revealMode .dudoCard{grid-template-columns:minmax(0,1.1fr) minmax(66px,.7fr) minmax(76px,.8fr);gap:5px}.centerBoard.revealMode .dudoCard div{min-width:0;padding:5px 6px}.centerBoard.revealMode .dudoCard strong{overflow-wrap:anywhere;font-size:13px;line-height:1.15}.centerBoard.revealMode .revealHeader{grid-template-columns:minmax(0,1fr) 82px;gap:6px}.centerBoard.revealMode .revealBox:has(.revealOutcome) .revealHeader{grid-template-columns:minmax(0,1fr) 64px}.centerBoard.revealMode .revealHeader strong{margin-top:2px;font-size:24px}.centerBoard.revealMode .revealBox:has(.revealOutcome) .revealHeader strong{font-size:20px}.centerBoard.revealMode .revealHeader p{margin-top:2px;font-size:12px;line-height:1.2}.centerBoard.revealMode .revealBox:has(.revealOutcome) .revealHeader p{display:none}.centerBoard.revealMode .bigCounter{width:82px;height:82px}.centerBoard.revealMode .revealBox:has(.revealOutcome) .bigCounter{border-width:3px;width:64px;height:64px}.centerBoard.revealMode .bigCounter span{font-size:38px}.centerBoard.revealMode .revealBox:has(.revealOutcome) .bigCounter span{font-size:30px}.centerBoard.revealMode .bigCounter small{margin-top:-12px;font-size:11px}.centerBoard.revealMode .revealBox:has(.revealOutcome) .bigCounter small{margin-top:-8px;font-size:10px}.centerBoard.revealMode .countNarration{min-height:28px;padding:5px 7px;font-size:12px}.centerBoard.revealMode .revealPlayers{grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}.centerBoard.revealMode .revealPlayer{padding:4px}.centerBoard.revealMode .revealPlayerName{font-size:11px}.centerBoard.revealMode .revealDice{gap:2px}.centerBoard.revealMode .revealDie{border-width:1px;border-radius:5px;width:16px;height:16px}.centerBoard.revealMode .revealDie .die{--die-size:16px;--pip-size:2px;border-radius:5px;font-size:11px}.centerBoard.revealMode .revealOutcome{gap:6px;padding:7px}.centerBoard.revealMode .revealBox:has(.revealOutcome) .revealOutcome{gap:5px;padding:6px}.centerBoard.revealMode .revealBox:has(.revealOutcome) .revealResultText strong{font-size:15px}.centerBoard.revealMode .revealBox:has(.revealOutcome) .faceSummary div{min-height:28px}.centerBoard.revealMode .probabilityPanel{grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}.centerBoard.revealMode .probabilityPanel div{padding:5px}.centerBoard.revealMode .probabilityPanel span,.centerBoard.revealMode .probabilityPanel small{font-size:10px;line-height:1.12}.centerBoard.revealMode .probabilityPanel strong{font-size:15px}.centerBoard.revealMode .revealBox:has(.revealOutcome) .probabilityPanel small{display:none}}@media (width<=760px) and (height<=680px){.topBar{min-height:50px;padding:7px 10px}.roomCode{font-size:16px}.statusLine{font-size:12px}.gameLayout{padding:8px}.tableArea{gap:5px;padding:8px}.duelBanner{display:none}.centerBoard{gap:4px;padding:6px 8px}.centerHeader{gap:5px}.centerBoard h2{font-size:17px}.roundBadge,.infoStrip span,.currentBid span,.currentBid em{font-size:10px}.infoStrip{gap:4px}.infoStrip div{min-height:34px;padding:3px 4px}.infoStrip strong{font-size:13px}.diceDock{min-height:32px;padding:3px 6px}.diceDockLabel{font-size:12px}.die{--die-size:30px;--pip-size:4px;width:30px;height:30px;font-size:16px}.currentBid{min-height:38px;padding:5px 7px}.currentBid strong{font-size:20px}.bidControls{--bid-square:34px;gap:5px;padding:6px}.bidHint{display:none}.bidControlsHeader{min-height:22px}.bidControlLabel{font-size:12px}.quantityStepper{grid-template-columns:var(--bid-square) minmax(52px, 62px) var(--bid-square);gap:5px}.quantityInput{font-size:19px}.faceButtons{gap:5px}.bidActionButton{padding:0 6px;font-size:12px}.bidHistory{min-height:30px;padding:3px 5px}.bidHistoryItem{min-width:82px;padding:3px 6px}}
