:root{color:#f6f0df;background:#15110d;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;--page-pad: 14px;--panel-gap: 10px;--button-height: 50px;--card-art-w: 96px;--card-art-h: 124px;--dice-min-height: 190px;--placeholder-height: 150px}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:radial-gradient(circle at 50% 0%,rgba(255,205,84,.22),transparent 30%),linear-gradient(160deg,#1b1916,#241811 45%,#10100f)}button{border:0;font:inherit}.shell{position:relative;width:min(100%,520px);min-height:100vh;margin:0 auto;padding:max(var(--page-pad),env(safe-area-inset-top)) var(--page-pad) max(18px,env(safe-area-inset-bottom))}.topbar{display:grid;grid-template-columns:44px 1fr 64px;gap:var(--panel-gap);align-items:center;margin-bottom:12px}.brand{color:#ffcf4a;font-size:26px;font-weight:950;line-height:1;text-shadow:0 3px 0 #9f3a12}.subline,.eyebrow{color:#f6f0df9e;font-size:11px;font-weight:800;text-transform:uppercase}.iconButton,.target{display:grid;min-height:44px;place-items:center;border-radius:8px;background:#ffffff17;color:#fff7df;font-weight:900}.scoreRail{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:12px}.player{display:grid;grid-template-columns:34px 1fr auto;gap:8px;align-items:center;min-height:52px;padding:8px;border:1px solid rgba(255,255,255,.08);border-radius:8px;background:#ffffff0f}.player.active{border-color:#ffcf4a;background:#ffcf4a21}.avatar{display:grid;width:34px;height:34px;place-items:center;border-radius:50%;background:#f6f0df;color:#22180d;font-weight:950}.playerMeta{min-width:0}.player strong,.player span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.player strong{font-size:14px}.player span{color:#f6f0df8c;font-size:11px}.player b{color:#ffcf4a}.table{padding:var(--panel-gap);border:1px solid rgba(255,255,255,.1);border-radius:10px;background:linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px),linear-gradient(rgba(255,255,255,.04) 1px,transparent 1px),#20251b;background-size:28px 28px;box-shadow:0 24px 70px #00000059}.cardPanel{display:grid;grid-template-columns:var(--card-art-w) 1fr;gap:12px;min-height:138px;padding:10px;border-radius:8px;background:#00000038}.cardArt{width:var(--card-art-w);height:var(--card-art-h);object-fit:cover;border-radius:8px;box-shadow:0 12px 30px #0006}.cardCopy h1,.statusPanel h2,.modalBox h2{margin:4px 0 6px;font-size:24px;line-height:1.04}.cardCopy p{margin:0;color:#f6f0dfc7;font-size:13px;line-height:1.35}.statusPanel{display:grid;grid-template-columns:1fr 112px;gap:10px;align-items:center;margin-top:10px;padding:10px;border-radius:8px;background:#0003}.tempScore{display:grid;min-height:70px;place-items:center;border-radius:8px;background:#f6f0df;color:#1d1711}.tempScore span{font-size:11px;font-weight:900;text-transform:uppercase}.tempScore strong{font-size:28px;line-height:1}.straightTracker{display:grid;grid-template-columns:repeat(6,1fr);gap:6px;margin-top:10px}.straightTracker span{display:grid;min-height:34px;place-items:center;border:1px solid rgba(255,255,255,.14);border-radius:8px;background:#0000002e;color:#f6f0df73;font-weight:950}.straightTracker .filled{background:#ffcf4a;color:#1a1209}.targetPicker{margin-top:10px;padding:10px;border-radius:8px;background:#ffffff14}.targetPicker div{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:8px}.targetPicker button{min-height:46px;border-radius:8px;background:#f6f0df;color:#18120c;font-weight:900}.targetPicker b{display:block;color:#7a2d19;font-size:12px}.gameMessage{margin-top:10px;padding:10px 12px;border:1px solid rgba(255,207,74,.22);border-radius:8px;background:#ffcf4a1c;color:#fff3c2;font-size:13px;font-weight:850;line-height:1.3}.diceZone{display:grid;grid-template-columns:repeat(3,minmax(74px,1fr));gap:10px;align-items:center;min-height:var(--dice-min-height);margin-top:12px}.dicePlaceholder{display:grid;grid-column:1 / -1;min-height:var(--placeholder-height);place-items:center;padding:18px;border:1px dashed rgba(255,255,255,.18);border-radius:10px;color:#f6f0dfb8;text-align:center}.die{display:grid;aspect-ratio:1;place-items:center;border:2px solid transparent;border-radius:12px;background:#f8f1df;box-shadow:inset 0 -8px #00000014,0 12px 18px #0000004d}.die.scoring{border-color:#ffcf4a}.die.selected{transform:translateY(-8px);border-color:#4be38b;box-shadow:inset 0 -8px #00000014,0 18px 26px #4be38b38}.pipGrid{display:grid;width:52px;height:52px;gap:5px;grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(3,1fr)}.pipGrid i{display:block;border-radius:50%;background:#23170d}.v1 i:nth-child(1){grid-area:2 / 2}.v2 i:nth-child(1){grid-area:1 / 1}.v2 i:nth-child(2){grid-area:3 / 3}.v3 i:nth-child(1){grid-area:1 / 1}.v3 i:nth-child(2){grid-area:2 / 2}.v3 i:nth-child(3){grid-area:3 / 3}.v4 i:nth-child(1){grid-area:1 / 1}.v4 i:nth-child(2){grid-area:1 / 3}.v4 i:nth-child(3){grid-area:3 / 1}.v4 i:nth-child(4){grid-area:3 / 3}.v5 i:nth-child(1){grid-area:1 / 1}.v5 i:nth-child(2){grid-area:1 / 3}.v5 i:nth-child(3){grid-area:2 / 2}.v5 i:nth-child(4){grid-area:3 / 1}.v5 i:nth-child(5){grid-area:3 / 3}.v6 i:nth-child(1){grid-area:1 / 1}.v6 i:nth-child(2){grid-area:1 / 3}.v6 i:nth-child(3){grid-area:2 / 1}.v6 i:nth-child(4){grid-area:2 / 3}.v6 i:nth-child(5){grid-area:3 / 1}.v6 i:nth-child(6){grid-area:3 / 3}.keptLine,.selectionHint{display:flex;justify-content:space-between;gap:10px;margin-top:10px;padding:10px;border-radius:8px;background:#0003}.keptLine span{color:#f6f0df9e;font-size:12px;font-weight:800}.selectionHint{color:#4be38b;font-weight:950}.actions{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px;margin-top:12px}.actions button,.modalBox button{min-height:var(--button-height);border-radius:8px;color:#1c130b;font-weight:950}.primary{background:#ffcf4a}.secondary{background:#f6f0df}.bank{background:#4be38b}.danger{background:#ff6b4a}button:disabled{cursor:not-allowed;opacity:.42}.logPanel{display:grid;gap:6px;margin-top:12px;color:#f6f0df9e;font-size:12px;max-height:118px;overflow:auto;-webkit-overflow-scrolling:touch}.logPanel div{padding:8px 10px;border-radius:8px;background:#ffffff0d}.modal{position:fixed;inset:0;display:grid;place-items:center;padding:20px;background:#0000009e}.modalBox{width:min(100%,360px);padding:22px;border-radius:12px;background:#22180f;box-shadow:0 30px 90px #00000080}.modalBox p{color:#f6f0dfb8}@media(min-width:700px){.shell{width:min(100%,940px)}.scoreRail{grid-template-columns:repeat(4,1fr)}.table{display:grid;grid-template-columns:320px 1fr;gap:12px}.cardPanel{grid-row:span 5;grid-template-columns:1fr;align-content:start}.cardArt{width:180px;height:232px;justify-self:center}}@media(max-width:380px),(max-height:720px){:root{--page-pad: 10px;--panel-gap: 8px;--button-height: 48px;--card-art-w: 78px;--card-art-h: 102px;--dice-min-height: 150px;--placeholder-height: 116px}.topbar{grid-template-columns:40px 1fr 58px;margin-bottom:8px}.brand{font-size:23px}.iconButton,.target{min-height:40px}.scoreRail{gap:6px;margin-bottom:8px}.player{grid-template-columns:30px 1fr auto;min-height:44px;padding:6px}.avatar{width:30px;height:30px}.player strong{font-size:13px}.player span{font-size:10px}.cardPanel{min-height:118px;gap:10px}.cardCopy h1,.statusPanel h2,.modalBox h2{font-size:21px}.cardCopy p{font-size:12px;line-height:1.3}.statusPanel{grid-template-columns:1fr 96px;margin-top:8px;padding:8px}.tempScore{min-height:58px}.tempScore strong{font-size:24px}.diceZone{gap:8px;margin-top:8px}.gameMessage{margin-top:8px;padding:8px 10px;font-size:12px}.pipGrid{width:42px;height:42px;gap:4px}.keptLine,.selectionHint,.logPanel div{padding:8px}.actions{position:sticky;bottom:max(8px,env(safe-area-inset-bottom));z-index:3;margin-top:8px;padding-top:2px;background:linear-gradient(180deg,transparent,rgba(32,37,27,.92) 18%)}.logPanel{max-height:78px;margin-top:8px}}@media(max-width:340px){.actions,.targetPicker div{grid-template-columns:1fr}}
