﻿:root{color-scheme:dark;--text:#e4e7da;--muted:#a3b3a9;--mint:#b7cdb9;--line:#354c40}*{box-sizing:border-box}body{margin:0;background:radial-gradient(ellipse at 50% 0,#1b2f27,transparent 65%),#081311;color:var(--text);font:16px/1.6 'Segoe UI',sans-serif}body:before{content:'';position:fixed;inset:0;pointer-events:none;background-image:linear-gradient(#9abe9905 1px,transparent 1px),linear-gradient(90deg,#9abe9905 1px,transparent 1px);background-size:45px 45px}header{max-width:1400px;height:95px;margin:auto;padding:0 48px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between}header a{font:24px Georgia;color:var(--text);text-decoration:none;letter-spacing:5px}header>span{font:11px monospace;letter-spacing:2px;color:var(--muted)}main{max-width:1200px;margin:auto;padding:45px 32px 25px}.intro{text-align:center;margin-bottom:38px}.eyebrow{font:11px/1.5 monospace;letter-spacing:2.2px;color:var(--mint)}h1,h2,h3,p{margin-top:0}h1{font:42px/1.2 Georgia;letter-spacing:.5px;margin-bottom:16px}h2{font:34px/1.25 Georgia;letter-spacing:3px;margin-bottom:15px}h3{font:20px Georgia;margin-bottom:12px}.intro>p:last-child{color:var(--muted);font-size:15px}.games{display:grid;grid-template-columns:1fr 1fr;gap:30px}.game{position:relative;border:1px solid var(--line);background:linear-gradient(120deg,#20362a50,#071510);overflow:hidden}.game:before{content:'';position:absolute;left:0;top:0;width:20px;height:20px;border-top:1px solid var(--mint);border-left:1px solid var(--mint)}.card-top{padding:24px 28px;display:flex;align-items:center;gap:17px}.card-top>small{margin-left:auto;color:#7b9484;font:12px monospace}.card-rank{display:flex;flex-direction:column;font:20px/.9 Georgia;border:1px solid #8aa08f;padding:7px 8px;gap:5px}.card-rank b{font-weight:400;font-size:18px}.prison .card-rank{color:#ce6263;border-color:#9c5b5b}.art{height:200px;background:radial-gradient(ellipse at center,#578b6620,transparent 65%)}.art svg{height:100%;width:100%}.card-content{padding:20px 32px 30px}.card-content h2{font-size:36px;letter-spacing:4px}.subtitle{font:italic 17px Georgia;color:#cad9c9;margin-bottom:23px}.muted{color:var(--muted);font-size:14px}.card-content>.muted{max-width:355px;min-height:46px}.actions{display:flex;gap:14px;align-items:center;justify-content:center;flex-wrap:wrap;margin-top:25px}button,input,select{font:14px 'Segoe UI',sans-serif}button{min-height:48px;background:transparent;color:var(--text);border:1px solid #617e66;padding:12px 20px;letter-spacing:1.2px;cursor:pointer}button:hover{background:#294732;border-color:#c6dbc2}button:disabled{opacity:.45;cursor:not-allowed}.primary{background:var(--mint);color:#101d12;border-color:var(--mint);font-weight:600}.primary:hover{background:#d0e0cd}.text{border:0;color:var(--muted);font-size:12px;letter-spacing:.5px}.card-content .primary{flex:1}.join-strip{display:flex;justify-content:space-between;align-items:center;gap:25px;padding:26px 30px;margin-top:32px;border:1px solid var(--line);background:#192a2060}.join-strip p{margin-bottom:4px}.join-strip h3{margin-bottom:0}form{display:flex;gap:10px}input,select{color:var(--text);background:#08170f;border:1px solid #46654c;min-height:48px;padding:12px 14px;min-width:0}#join input{width:210px;font:14px monospace;letter-spacing:2px;text-transform:uppercase}footer{text-align:center;margin:20px auto;padding:24px;color:#829c88;font-size:20px}footer p{font:italic 14px Georgia;margin:10px}footer small{font:9px monospace;letter-spacing:1.8px}dialog{width:min(600px,calc(100% - 30px));max-height:90vh;padding:40px;background:#12271b;color:var(--text);border:1px solid #698a6d}dialog::backdrop{background:#010704d9;backdrop-filter:blur(6px)}.close{position:absolute;right:5px;top:5px;border:0;font-size:24px;padding:0 15px}.modes{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin:25px 0}.modes button{text-align:left;padding:20px 14px;font-size:12px}.modes small{display:block;color:var(--muted);letter-spacing:0;margin-top:12px;font-size:12px}#create{flex-direction:column}#create select{display:block;width:100%;margin:8px 0}.public-room{display:flex;align-items:center;justify-content:space-between;padding:12px;border-top:1px solid var(--line)}.heading{display:flex;align-items:center;justify-content:space-between;gap:20px}.code{display:flex;align-items:center;gap:15px}.code small{font:10px monospace}.code b{font:22px monospace;letter-spacing:3px}.hud{border:1px solid var(--line);display:flex;justify-content:space-between;gap:12px;padding:14px 20px;font:12px monospace;color:var(--mint);margin:20px 0}.layout{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:24px}#play{padding:30px;border:1px solid var(--line);background:#10261960;min-height:450px;text-align:center}#play h2{letter-spacing:1px}.lobby-art{height:160px}.lobby-art svg{height:100%;width:100%}.rules{padding:20px;background:#091b0f;text-align:left;border-left:2px solid #8ba383;font-size:14px;color:var(--muted);margin:24px 0}aside{padding:20px;border:1px solid var(--line);background:#0b1b11}aside h3{display:flex;justify-content:space-between;font:12px monospace;letter-spacing:1px}.player{display:flex;align-items:center;gap:12px;padding:14px 0;border-top:1px solid #293f2c}.player>span:last-child{margin-left:auto;color:var(--mint)}.player b{font-size:14px;font-weight:500}.player p{font:10px monospace;color:var(--muted);margin:4px 0}.player small{font-size:10px}.avatar{position:relative;display:grid;place-items:center;background:linear-gradient(130deg,#48624a,#1b3020);width:42px;height:48px;border:1px solid #6b8767;color:var(--mint);font:23px Georgia}.avatar small{position:absolute;bottom:2px;right:3px;font:8px monospace}.me b{color:#c5e2bd}.end-symbol{font:90px Georgia;display:block;color:var(--mint);margin:35px}.danger{color:#d25c61}#answer{flex-direction:column;align-items:center}#answer>label{font:12px monospace;letter-spacing:2px;margin-top:25px}.number{height:125px;width:190px;font:65px Georgia;text-align:center;border:0;border-bottom:1px solid #819e79;margin-bottom:25px}#answer>.primary{width:100%;max-width:360px}.calculation{margin:30px;font:12px monospace;color:var(--muted)}.calculation b{font:32px Georgia;color:var(--mint);display:block;margin:10px}.hidden-player{display:flex;justify-content:space-between;padding:16px;border:1px solid var(--line);margin:12px 0}.hidden-player span{color:var(--mint)}.role{display:flex;gap:10px;flex-wrap:wrap;font:11px monospace;text-align:left;margin-bottom:15px}.role span{margin-left:auto}.map{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;padding:15px;background:repeating-linear-gradient(0deg,#233a28 0 28px,#1d3021 29px 30px);border:1px solid #597555}.map-room{background:#0a1a0edd;min-height:100px;padding:12px 5px;font-size:13px;letter-spacing:0}.map-room:first-child{grid-column:1/-1;min-height:80px}.map-room b,.map-room small{display:block}.map-room small{font:9px monospace;color:var(--muted);margin-top:5px}.map-room.current{border-color:#c3ddb8;background:#314d31}.people{display:flex;gap:16px;flex-wrap:wrap;justify-content:center;margin-top:12px}.people span{font:24px Georgia}.people small{font:10px 'Segoe UI',sans-serif}.chat-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;text-align:left;margin-top:18px}.chat-heading b{font-size:13px}.chat-heading button{font-size:10px;padding:8px}.chat-log{height:145px;overflow:auto;text-align:left;background:#081a0f;padding:15px;margin:12px 0}.chat-log p{font-size:14px;margin:8px 0}.chat-log b{color:var(--mint);margin-right:8px}#chat input{flex:1}#chat button{font-size:11px}.vote{padding:15px;border:1px solid #aa7d66}.vote p{font-size:14px}.vote button{margin:5px}.suits{display:grid;grid-template-columns:1fr 1fr;gap:12px;width:100%;margin:25px 0}.suits label{display:flex;align-items:center;gap:10px;border:1px solid #839779;padding:18px;cursor:pointer;text-align:left}.suits span{font:36px Georgia}.suits input{min-height:unset;accent-color:var(--mint)}.suits label:has(input:checked){background:#3d5737}button:focus-visible,input:focus-visible,select:focus-visible,a:focus-visible{outline:2px solid #d0edc7;outline-offset:4px}#notice{position:fixed;bottom:20px;left:50%;transform:translateX(-50%);max-width:90%;background:#29442c;border:1px solid #8ea57e;padding:15px 24px;z-index:10;box-shadow:0 10px 40px #0009}#notice:empty{display:none}@media(max-width:800px){header{height:80px;padding:0 24px}header a{font-size:19px;letter-spacing:3px}header>span{font-size:9px;letter-spacing:0}main{padding:30px 20px}.games{gap:18px}.card-content{padding:20px}.card-content h2{font-size:29px}.card-top{padding:18px}.card-top .eyebrow{font-size:9px}.join-strip{flex-direction:column;align-items:stretch}.layout{grid-template-columns:1fr}.heading{flex-wrap:wrap}.code small{display:none}#play{padding:20px}}@media(max-width:520px){.games{grid-template-columns:1fr}.intro{text-align:left}.intro h1{font-size:32px}.art{height:160px}.card-content h2{font-size:32px}.join-strip{padding:22px 18px}#join{flex-wrap:wrap}#join input{flex:1;min-width:130px}#join button{padding:12px}.modes{grid-template-columns:1fr}dialog{padding:35px 22px}.hud{font-size:10px;padding:12px 10px}.hud span:nth-child(2){max-width:120px}.map{padding:8px;gap:6px}.map-room{font-size:11px}.chat-heading{flex-wrap:wrap}.suits label{padding:12px;gap:5px;font-size:13px}.suits span{font-size:26px}#play h2{font-size:27px;overflow-wrap:anywhere}header>span{max-width:80px}.code{gap:9px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto}}
