:root{font-family:system-ui,sans-serif;color:#f7f4ed;background:#101727;font-synthesis:none}*{box-sizing:border-box}body{margin:0;background:radial-gradient(circle at 85% 10%,#293551 0,transparent 30%),#101727}button,input,select{font:inherit}button{border:1px solid #475370;background:#26344d;color:#fff;border-radius:12px;padding:13px 19px;font-weight:700;cursor:pointer}button:hover:not(:disabled){filter:brightness(1.12)}button:disabled{opacity:.4;cursor:not-allowed}.primary{background:#f9cc68;color:#202434;border-color:#f9cc68}.danger{background:#d65c58;border-color:#d65c58}.wide{width:100%;margin-top:20px}.shell{max-width:1120px;margin:auto;padding:0 24px}header{height:82px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #344057}.brand{font-size:22px;font-weight:900;letter-spacing:.03em;color:#fff;text-decoration:none}.brand span{color:#f9cc68}.brand small{font-size:10px;margin-left:5px;color:#a8b2c6}.tag,.muted,.hint{color:#a8b2c6}.tag{font-size:13px}main{min-height:calc(100vh - 150px)}.welcome{position:relative;padding:100px 0 120px;max-width:900px}.eyebrow{color:#f9cc68;font-size:13px;font-weight:700;letter-spacing:.12em}.welcome h1,.room-heading h1{font-size:clamp(38px,6vw,70px);line-height:1.2;margin:18px 0}.welcome h1 em{color:#f9cc68;font-style:normal}.welcome p{color:#bac3d3;line-height:1.8}.entry{margin-top:35px;max-width:400px;display:grid;gap:10px}.entry label,.bid-controls label{font-size:14px;font-weight:700}input,select{width:100%;border:1px solid #4a5870;border-radius:12px;background:#172237;color:#fff;padding:14px;outline:none}input:focus,select:focus{border-color:#f9cc68}.hero-dice{position:absolute;right:6%;top:135px;font-size:150px;color:#f9cc68;transform:rotate(-12deg);text-shadow:0 15px 45px #0006}.hero-dice span{display:inline-block;color:#f7f4ed;transform:rotate(25deg);font-size:120px}.room-heading{display:flex;justify-content:space-between;align-items:center;padding:36px 0 22px}.room-heading h1{font-size:34px;margin:8px 0}.connection{font-size:12px;color:#a8b2c6;white-space:nowrap}.connection i{display:inline-block;background:#e07171;width:8px;height:8px;border-radius:50%;margin-right:7px}.connection i.on{background:#83d7ac}.layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:18px}.maincol,aside{display:grid;gap:18px;align-content:start}.card{background:#1b263b;border:1px solid #35435b;border-radius:18px;padding:24px;box-shadow:0 10px 30px #0002}.card-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}.card-title h2,.card h2{font-size:18px;margin:0}.card-title span{font-size:12px;color:#f9cc68}.player-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.player{display:flex;gap:12px;align-items:center;background:#222f46;border-radius:12px;padding:14px;min-width:0}.avatar{display:grid;place-items:center;border-radius:12px;width:44px;height:44px;background:#f9cc68;color:#202434;font-weight:900;flex-shrink:0}.player:nth-child(2) .avatar{background:#92b4e5}.player strong,.player small{display:block;overflow:hidden;text-overflow:ellipsis}.player small{color:#a8b2c6;font-size:12px;margin-top:4px}.copy{display:flex;gap:8px}.copy input{min-width:0}.hint{font-size:13px;line-height:1.7}.dice{display:flex;flex-wrap:wrap;gap:8px;min-height:58px;align-items:center}.die{display:inline-block;color:#f7e9c9;font-size:58px;line-height:1;animation:pop .35s ease-out}@keyframes pop{0%{opacity:0;transform:rotate(-35deg) scale(.6)}to{opacity:1;transform:none}}.actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}.actions button{flex:1}.bid-controls{display:flex;gap:12px}.bid-controls label{flex:1}.bid-controls select{display:block;margin-top:8px}.history{list-style:none;padding:0;margin:0}.history li{display:flex;justify-content:space-between;padding:10px 0;border-bottom:1px solid #35435b;font-size:14px}.history li span{color:#a8b2c6}.placeholder{text-align:center;border-style:dashed;color:#a8b2c6}.placeholder h2{font-size:15px;color:#d6dce7}.placeholder p{font-size:12px}.camera{font-size:36px;color:#74849f;margin-bottom:12px}.result h2{font-size:28px;margin-top:12px}.result h3{font-size:14px;margin-top:24px}.error{position:fixed;bottom:20px;left:50%;transform:translate(-50%);background:#aa4747;padding:14px 22px;border-radius:12px;max-width:90%;z-index:5}footer{color:#748198;font-size:12px;padding:40px 0;text-align:center}@media(max-width:720px){.shell{padding:0 16px}header{height:68px}.tag{font-size:11px}.welcome{padding:70px 0}.welcome h1{font-size:52px}.hero-dice{position:static;font-size:90px;margin:25px 0 0;text-align:right}.hero-dice span{font-size:75px}.room-heading h1{font-size:27px}.layout{grid-template-columns:1fr}.card{padding:19px}.player{padding:10px}.avatar{width:36px;height:36px}.die{font-size:49px}aside{grid-template-columns:1fr 1fr}.placeholder{grid-column:1/-1}.actions button{padding:12px 9px;font-size:14px}}
