:root{font-family:Inter,ui-sans-serif,system-ui,sans-serif;color:#f2f3ee;background:#10151c;color-scheme:dark;--accent:#ffbe64}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button{cursor:pointer;min-height:48px;border:1px solid transparent;border-radius:10px;padding:12px 18px;color:#14191e;background:var(--accent);font-weight:750}button:hover{filter:brightness(1.1)}button:disabled{opacity:.4;cursor:wait}button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #90dfff;outline-offset:3px}.secondary{background:#26333e;color:#eef2f4;border-color:#3a4b58}.quiet{background:transparent;color:#b8c7d1}.compact{min-height:44px;padding:8px 12px;font-size:.85rem}[hidden]{display:none!important}canvas{display:block;position:fixed;inset:0;width:100%;height:100%;outline:none;object-fit:contain}#lobby{position:fixed;inset:0;overflow:auto;background:radial-gradient(ellipse at 5% 0%,#263b45 0,transparent 55%),#10151c;padding:max(28px,env(safe-area-inset-top)) max(16px,env(safe-area-inset-right)) max(28px,env(safe-area-inset-bottom));z-index:10}#lobby-box{max-width:650px;margin:0 auto}header{margin-bottom:24px}h1{font-size:clamp(2.5rem,9vw,4.2rem);letter-spacing:-.07em;line-height:1;margin:14px 0}h1 span{color:var(--accent)}header p,footer{color:#a0b2bf}.eyebrow{font-size:.68rem;letter-spacing:.22em;font-weight:800;color:#91a9b7}label{display:flex;flex-direction:column;gap:7px;font-size:.85rem;color:#bfccd4}input,select{width:100%;min-height:46px;padding:10px 12px;border:1px solid #3a4b58;border-radius:8px;background:#18232d;color:#f3f4f1;min-width:0}#engine-status{font-size:.85rem;color:#bccbd4;min-height:24px}progress{width:100%;height:5px;accent-color:var(--accent);margin:8px 0 22px}.name-label{max-width:300px;margin-bottom:20px}.main-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px}.main-actions button{min-height:100px;text-align:left;font-size:1.15rem}.main-actions button span{display:block;font-size:.8rem;font-weight:450;margin-top:8px}.view>button{width:100%;margin-top:12px}.settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:18px 0}.wide{grid-column:1/-1}.check{flex-direction:row;align-items:center}.check input{width:20px;min-height:20px}.room-banner{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px;background:#1b2a34;border:1px solid #344956;border-radius:12px}#room-code{font:700 1.65rem ui-monospace,monospace;letter-spacing:.13em;color:var(--accent);margin-top:8px}#roster{display:flex;flex-wrap:wrap;gap:8px;padding:0;list-style:none}#roster li{background:#26333e;padding:7px 12px;border-radius:20px;font-size:.85rem}#join-code{text-transform:uppercase;letter-spacing:.2em;font:700 1.8rem ui-monospace,monospace}#join-status,#lobby-status{color:#a8cbd1;line-height:1.5;font-size:.9rem}details{border-top:1px solid #2a3a45;margin-top:22px;padding-top:16px}summary{cursor:pointer;color:#bbcbd4;min-height:38px}details p{font-size:.8rem;line-height:1.5;color:#91a9b7}#developer-settings{font-size:.8rem}footer{font-size:.75rem;margin-top:24px}#game-ui{position:fixed;inset:0;pointer-events:none}#game-top{position:absolute;top:max(8px,env(safe-area-inset-top));left:max(8px,env(safe-area-inset-left));right:max(8px,env(safe-area-inset-right));display:flex;justify-content:space-between;align-items:center;z-index:4}#game-top button{pointer-events:auto}#network-status{font-size:.75rem;background:#10151cb3;padding:6px;border-radius:5px}dialog{max-width:360px;width:calc(100% - 32px);border:1px solid #405564;border-radius:16px;background:#18232d;color:#f2f3ee;padding:24px}dialog::backdrop{background:#05090caa}dialog button{width:100%;margin-top:10px}dialog p{color:#b7c7d1;font-size:.85rem}.error{color:#ffad9f!important}@media(max-width:420px){.main-actions{grid-template-columns:1fr}.main-actions button{min-height:76px}}@media(max-height:500px){#lobby{padding-top:16px}header{margin-bottom:12px}h1{font-size:2.5rem}header p{margin:8px 0}}

.room-size{max-width:160px;margin-bottom:20px}

.arena-picker{margin-bottom:16px}#arena-credit,#archives-credit,#dam-credit{font-size:.8rem;color:#a0b2bf;line-height:1.5}#arena-credit a,#archives-credit a,#dam-credit a{color:var(--accent)}
@media(min-width:600px) and (max-height:500px){header .eyebrow,header p{display:none}header h1{font-size:2rem;margin:0 0 10px}header{margin-bottom:8px}progress{margin-bottom:12px}.name-label,.room-size{display:inline-flex;vertical-align:top;margin-bottom:12px}.name-label{width:65%;max-width:none;margin-right:4%}.room-size{width:30%;max-width:none}.main-actions button{min-height:66px;padding:10px 16px}.main-actions button span{margin-top:4px}}

#input-hint{position:absolute;top:70px;left:50%;transform:translateX(-50%);padding:10px 16px;border-radius:8px;background:#10151cd9;color:#ffce8a;font-size:.85rem;white-space:nowrap}body.pointer-captured #input-hint{display:none}
