:root{font-family:Inter,ui-sans-serif,system-ui,sans-serif;color:#ede9de;background:#101a19;color-scheme:dark}*{box-sizing:border-box}body{margin:0}main{max-width:860px;padding:32px 24px;margin:auto}header,footer{display:flex;justify-content:space-between;gap:12px;align-items:center}.brand{font-size:11px;font-weight:800;letter-spacing:.16em;color:#b6c5b8}.badge{font-size:10px;letter-spacing:.08em;border:1px solid #526257;padding:6px 8px;border-radius:6px}h1{font-size:clamp(30px,6vw,48px);letter-spacing:-.045em;margin:30px 0 4px}.intro{color:#b5c4bc;margin:0 0 22px}.stakes{font-size:12px;color:#cfb477;margin-bottom:16px}.table{border:1px solid #446655;border-radius:26px;background:radial-gradient(ellipse at center,#244f40,#18372e);padding:28px 24px;box-shadow:0 15px 50px #0003}.seat h2{font-size:14px;font-weight:500;display:flex;gap:10px;align-items:center;margin:0 0 12px}.seat h2 span{color:#cdbb8b;font-variant-numeric:tabular-nums}.cards{display:flex;gap:7px;min-height:76px}.card{width:54px;height:76px;flex:0 1 54px;background:#f2eee2;border-radius:7px;color:#17251f;display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:24px;font-weight:750;box-shadow:0 3px 8px #0003;border:1px solid #e1dfd0}.card.red{color:#af3c38}.card.down{background:repeating-linear-gradient(45deg,#243e37,#243e37 4px,#305246 4px,#305246 8px);border:2px solid #94aa99;color:#becdbd;font-size:20px}.card.private{border-bottom:4px solid #c3a561}.center{text-align:center;display:flex;flex-direction:column;gap:3px;padding:22px 0;color:#bed0c4;font-size:12px}.center strong{font-size:36px;color:#f3ddb0}.center #status{min-height:18px;color:#e8e8d8}.card small{font-size:17px}.hint{font-size:11px;color:#b6c8b9;margin:9px 0 0}nav{display:flex;gap:9px;flex-wrap:wrap;padding:18px 0 0}button{font:inherit;font-size:14px;font-weight:650;border:1px solid #718773;background:#e2c88b;color:#142b21;border-radius:9px;padding:14px 21px;cursor:pointer;min-height:48px}button.secondary{background:#1e3028;color:#e4e9dc}button:disabled{opacity:.5;cursor:wait}button:focus-visible,summary:focus-visible{outline:3px solid #f6dc8e;outline-offset:4px}details{border-top:1px solid #35433b;padding:15px 0;color:#aebeb1;font-size:13px;line-height:1.65}summary{cursor:pointer;color:#dae1d5}#error{color:#ffc7b7;min-height:18px;font-size:13px}footer{border-top:1px solid #35433b;padding-top:20px;margin-top:12px;font-size:11px;color:#93a899}#log{margin:10px 0;padding-left:20px}@media(max-width:500px){main{padding:20px 16px}.table{padding:22px 12px;border-radius:18px}.cards{gap:4px;min-height:60px}.card{height:60px;font-size:20px;min-width:0}.card small{font-size:15px}header{align-items:start}.badge{max-width:100px;text-align:center}button{padding:13px 17px}.center{padding:22px 0}footer{font-size:10px}}

[hidden]{display:none!important}a{color:inherit}#welcome{padding:16px 0;color:#b5c4bc;font-size:14px}#startForm{display:flex;flex-wrap:wrap;gap:10px;align-items:center}input{font:inherit;padding:12px;border-radius:8px;border:1px solid #718773;background:#172a23;color:#fff;max-width:100%}footer.release-footer{display:block;margin-bottom:0}
/* Friends tables: append after the existing Stud styles. */
.table-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:18px 0}.table-toolbar h2{font-size:18px}.seats{display:grid;grid-template-columns:1fr 1fr;gap:16px}.seat{min-width:0;padding:14px;border:1px solid #69816e66;border-radius:14px;background:#10291d40}.seat.own-seat{border-color:#d1b16e}.seat h2{flex-wrap:wrap;line-height:1.4}.seat h2 span{font-size:12px}.empty-seat{display:flex;align-items:center;justify-content:center;min-height:120px;border-style:dashed;color:#bdcbbd;font-size:13px}.cards{gap:4px;min-height:62px}.card{height:62px;font-size:20px;min-width:0}.card small{font-size:15px}#invitePanel{padding:16px;margin-bottom:18px;border:1px solid #526d58;border-radius:12px;font-size:13px}.invite-controls{display:flex;gap:10px;margin-top:8px}.invite-controls input{flex:1;min-width:0}#copyStatus{margin-bottom:0;color:#cfc192}#connection{font-size:13px;color:#e2c88b}#myMatches{margin-top:26px}#myMatches h2{font-size:18px}#matches{list-style:none;padding:0;display:grid;gap:8px}#matches button{text-align:left;width:100%}#matchesStatus{font-size:13px}#inviteNotice{color:#f3ddb0}input:focus-visible,a:focus-visible{outline:3px solid #f6dc8e;outline-offset:4px}@media(max-width:680px){.seats{grid-template-columns:1fr}.seat{padding:12px}.cards{gap:6px}.card{height:70px}.table-toolbar{align-items:flex-start;flex-direction:column}.invite-controls{flex-wrap:wrap}.invite-controls input{flex-basis:100%}}
