:root{color-scheme:dark;font-family:Segoe UI,Arial,sans-serif;background:#0b111c;color:#e7edf7;font-size:16px}*{box-sizing:border-box}body{margin:0}header{height:88px;border-bottom:1px solid #293449;display:flex;align-items:center;gap:32px;padding:0 5vw;color:#9cacbe}header>span{flex:1}.brand{display:flex;align-items:center;gap:14px;color:#4bdcb5;font-size:30px;font-weight:800}.brand span{font-size:20px;letter-spacing:2px;color:#f3f6fc}.brand b{color:#4bdcb5}main{max-width:1240px;margin:44px auto;padding:0 28px 60px}h1{font-size:clamp(28px,4vw,44px);letter-spacing:-1px;margin:12px 0}h2{font-size:24px;margin:0}p{color:#a6b4c8;line-height:1.6}button,input,select{font:inherit}button{cursor:pointer;padding:12px 18px;border:1px solid #3a4a62;border-radius:8px;background:#182437;color:#eef4ff;font-weight:600}button:hover{background:#25364e}button:disabled{opacity:.55;cursor:wait}.primary{background:#43d5ad;color:#062219;border-color:#43d5ad}.primary:hover{background:#79eac9}.danger{color:#ffaaa7}input,select{width:100%;padding:12px;border:1px solid #3b4a61;border-radius:7px;background:#0d1624;color:#f0f4ff;margin-top:9px;min-width:0}input:focus,select:focus,button:focus-visible{outline:2px solid #61debc;outline-offset:3px}label{font-size:15px;color:#becadd;display:block}.eyebrow{font-size:13px;letter-spacing:2px;color:#4cdbb4}#login{max-width:460px;margin:9vh auto}#loginForm{display:grid;gap:22px}.overview{display:flex;justify-content:space-between;align-items:center;gap:24px;padding-bottom:30px}.actions{display:flex;gap:10px;flex-wrap:wrap}nav{display:flex;gap:12px;border-bottom:1px solid #2a364a;padding-bottom:18px;margin-bottom:28px;flex-wrap:wrap}nav button{background:transparent;border-color:transparent;color:#a9b9d0}nav button[aria-pressed=true]{color:#4cdbb4;background:#112c2a}.section-title{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:24px}.section-title p{margin-bottom:0;max-width:730px}#fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;padding:28px;border:1px solid #2c3b51;border-radius:12px;background:#111c2c}.savebar{display:flex;justify-content:space-between;align-items:center;gap:20px;margin:24px 0;color:#aabbd0}pre{white-space:pre-wrap;overflow-wrap:anywhere;max-height:600px;overflow:auto;background:#070d15;border:1px solid #2c3b51;padding:22px;border-radius:10px;font-size:14px;line-height:1.6}aside{margin-top:36px;border-left:3px solid #52667e;padding:8px 20px}aside p{margin-bottom:0}#message{position:sticky;bottom:16px;background:#172c40;border-radius:8px;padding:16px;box-shadow:0 8px 30px #0005}#message:empty{display:none}[hidden]{display:none!important}@media(max-width:700px){header{gap:16px;padding:0 20px}header>span{display:none}header #logout{margin-left:auto}main{padding:0 18px 32px;margin-top:28px}.overview,.section-title{align-items:flex-start;flex-direction:column}#fields{grid-template-columns:1fr;padding:18px}.savebar{align-items:stretch;flex-direction:column}button{min-height:44px}}
:root #fields{display:block;padding:0;border:0;background:none}fieldset{min-width:0;margin:0 0 24px;padding:24px;border:1px solid #2c3b51;border-radius:12px;background:#111c2c}legend{font-size:20px;font-weight:600;padding:0 10px}.field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.map-control{grid-column:1/-1;color:#becadd;font-size:15px}.map-control details{margin-top:9px;position:relative}.map-control summary{cursor:pointer;padding:14px;border:1px solid #3b4a61;border-radius:7px;background:#0d1624;line-height:1.5}.map-control summary:focus-visible{outline:2px solid #61debc}.map-list{position:absolute;top:100%;left:0;right:0;z-index:5;max-height:360px;overflow-y:auto;border:1px solid #52667e;background:#142237;border-radius:8px;box-shadow:0 16px 40px #0009;padding:12px}.map-list small{display:block;font-size:14px;color:#a6b4c8;padding:8px}.map-list label{display:flex;align-items:center;gap:12px;padding:10px;border-radius:6px;cursor:pointer}.map-list label:hover{background:#203b50}.map-list input{width:20px;height:20px;margin:0;accent-color:#43d5ad}input[type=color]{height:52px;cursor:pointer;padding:5px}@media(max-width:700px){.field-grid{grid-template-columns:1fr}fieldset{padding:18px}}

/* Account and audit views reuse the existing panel palette. */
[hidden]{display:none!important}
#loginForm,#activateForm,.account-form{display:grid;gap:18px;max-width:520px}
#activation{max-width:640px;margin:50px auto}
.locked-field{opacity:.72}
.locked-field small{display:block;margin-top:7px;color:#a8bad1}
input:disabled,select:disabled{cursor:not-allowed}
.audit-card{background:#142033;border:1px solid #30445d;border-radius:9px;padding:16px;margin:12px 0;overflow-wrap:anywhere}
.audit-card p{margin:8px 0 0;white-space:pre-wrap}
.audit-card .actions{margin-top:14px;flex-wrap:wrap}
#inviteResult{border:1px solid #41c9a6;border-radius:9px;padding:20px;margin:24px 0}
#inviteLink{width:100%;margin-bottom:12px}
#createUserForm{margin:24px 0;align-items:end}
nav{flex-wrap:wrap}
@media(max-width:640px){#identity{font-size:12px}header{gap:10px;flex-wrap:wrap}.section-title{flex-wrap:wrap;gap:12px}}
#steamStep{max-width:640px;margin:50px auto}#steamStep button{margin:8px 8px 8px 0}.steam-binding{display:flex;align-items:end;gap:12px;margin-top:18px}.steam-binding label{flex:1}@media(max-width:700px){.steam-binding{align-items:stretch;flex-direction:column}}
