:root{color-scheme:dark;--bg:#0c1220;--card:#151e2e;--card2:#1c2940;--line:#29364a;--txt:#e5edf7;--muted:#8e9fb7;--accent:#75a7ff;--green:#69d5ad;--red:#ff9999}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--txt);font:14px/1.5 system-ui,-apple-system,sans-serif}button,input,select{font:inherit}button,.button{display:inline-flex;align-items:center;justify-content:center;min-height:39px;padding:8px 12px;border:1px solid var(--line);border-radius:10px;background:var(--card2);color:var(--txt);text-decoration:none;cursor:pointer}button:hover,.button:hover{border-color:var(--accent)}button:disabled{opacity:.45;cursor:wait}input,select{min-height:39px;border:1px solid var(--line);border-radius:9px;background:var(--bg);color:var(--txt);padding:8px 10px}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--accent);outline-offset:3px}[hidden]{display:none!important}.admin-wrap{max-width:1100px;margin:auto;padding:0 28px 40px}.admin-header{display:flex;justify-content:space-between;align-items:center;padding:24px 0;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:12px}.brand-icon{display:grid;place-items:center;width:42px;height:42px;background:#253353;border-radius:13px;font-size:24px}.brand strong{font-size:18px}.brand p{margin:0;color:var(--muted);font-size:11px}.badge{color:var(--accent);background:#75a7ff18;padding:3px 6px;border-radius:5px;font-size:9px;letter-spacing:1.5px;margin-left:6px;vertical-align:middle}.subtle{background:transparent;font-size:12px}.intro{display:flex;justify-content:space-between;align-items:center;gap:18px;margin:38px 0 24px}.eyebrow{font-size:10px;color:var(--accent);letter-spacing:1.4px;font-weight:600}h1{font-size:30px;letter-spacing:-1px;line-height:1.2;margin:9px 0 12px}.intro p{margin:0;color:var(--muted);font-size:13px}.owner-label{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:12px;max-width:40%;overflow-wrap:anywhere}.online-dot{height:7px;width:7px;flex:none;border-radius:50%;background:var(--green)}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:24px 0 28px}.stats article{background:var(--card);border:1px solid var(--line);border-radius:15px;padding:17px 20px;display:flex;flex-direction:column;gap:6px}.stats span{font-size:12px;color:var(--muted)}.stats strong{font-size:29px;font-weight:600}.stats article:nth-child(2) strong{color:var(--green)}.stats article:nth-child(3) strong{color:var(--red)}.user-section{border:1px solid var(--line);background:var(--card);border-radius:16px;overflow:hidden}.section-toolbar{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:20px}.section-toolbar h2{font-size:16px;margin:0}form{display:flex;gap:6px}#search{width:220px}#message{padding:0 20px;color:var(--muted);font-size:12px}.user-card{display:grid;grid-template-columns:minmax(220px,1.5fr) minmax(135px,1fr) minmax(90px,.6fr) auto;gap:15px;align-items:center;padding:17px 20px;border-top:1px solid var(--line)}.user-main{display:flex;gap:11px;align-items:center;min-width:0}.avatar{width:35px;height:35px;border-radius:11px;flex:none;display:grid;place-items:center;font-size:14px;font-weight:600;background:#75a7ff20;color:var(--accent)}.person-name{font-weight:600;font-size:13px;overflow-wrap:anywhere}.person-email{color:var(--muted);font-size:12px;overflow-wrap:anywhere}.owner-badge{font-size:10px;color:var(--accent)}.field-label{font-size:10px;color:var(--muted);display:block;margin-bottom:4px}.role-select{width:100%;font-size:12px}.beta-switch{gap:6px;font-size:12px;background:transparent}.beta-switch[aria-pressed=true]{color:var(--green);border-color:#69d5ad55;background:#69d5ad0c}.user-actions{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.user-actions button{font-size:11px;padding:7px 9px;white-space:nowrap}.danger{color:var(--red)}.blocked-name{color:var(--red)}.empty{color:var(--muted);text-align:center;padding:36px 20px;margin:0}.pagination{display:flex;justify-content:flex-end;align-items:center;gap:15px;padding:12px 20px;font-size:12px;color:var(--muted)}footer{font-size:11px;color:var(--muted);margin-top:18px}dialog{width:calc(100% - 32px);max-width:520px;max-height:85dvh;overflow:auto;padding:22px;background:var(--card);border:1px solid var(--line);border-radius:18px;color:var(--txt)}dialog::backdrop{background:#050b15bb;backdrop-filter:blur(4px)}.dialog-head{display:flex;justify-content:space-between;gap:10px;margin-bottom:18px}.dialog-head h2{font-size:18px;margin:5px 0;overflow-wrap:anywhere}.dialog-head>button{border:0;background:transparent;font-size:25px;width:34px;padding:0}.session-card{padding:15px 0;border-top:1px solid var(--line);display:flex;gap:12px;justify-content:space-between;align-items:center}.session-card p{font-size:12px;color:var(--muted);margin:4px 0}.session-card button{font-size:11px}.login-wrap{max-width:400px;margin:10dvh auto 0;padding:28px}.login-card{background:var(--card);border:1px solid var(--line);border-radius:20px;padding:28px;margin-top:22px}.login-card h1{font-size:25px}.login-card p{color:var(--muted);font-size:13px}.google-button{display:flex;background:white;color:#202124;margin:24px 0 16px;font-weight:500;font-size:14px;gap:10px}.google-g{font-size:19px;font-weight:700;color:#4285f4}.login-footnote{font-size:11px!important}.login-card a{color:var(--accent)}.login-card .google-button{color:#202124}.login-state{color:var(--red)}@media(max-width:850px){.user-card{grid-template-columns:1.5fr 1fr}.user-actions{justify-content:flex-start}.beta-switch{width:max-content}.owner-label{max-width:50%}}@media(max-width:540px){.admin-wrap{padding:0 14px 28px}.admin-header{padding:16px 0}.intro{display:block;margin-top:26px}.owner-label{max-width:100%;margin-top:18px}h1{font-size:27px}.stats{gap:7px}.stats article{padding:12px}.stats span{font-size:10px}.stats strong{font-size:24px}.section-toolbar{display:block;padding:16px}.section-toolbar h2{margin-bottom:14px}#search{width:100%}form{width:100%}.user-card{padding:16px;gap:12px;grid-template-columns:1fr 1fr}.user-main{grid-column:1/-1}.user-actions{grid-column:1/-1}.login-wrap{padding:18px;margin-top:8dvh}}

.toolbar-controls{display:flex;gap:8px;align-items:end;flex-wrap:wrap}.filter-label{display:flex;flex-direction:column;gap:4px;color:var(--muted);font-size:10px}.filter-label select{font-size:12px}.permission-note{display:flex;gap:12px;align-items:baseline;margin-top:16px;padding:15px 18px;border:1px solid var(--line);border-radius:14px;background:#75a7ff0b;color:var(--muted);font-size:12px}.permission-note strong{color:var(--accent);white-space:nowrap}.permission-note b{color:var(--txt)}.shared-ip{font-size:10px;color:#ffc56b;margin-left:4px}@media(max-width:540px){.toolbar-controls{display:block}.toolbar-controls form{margin-bottom:8px}.filter-label select{width:100%}.permission-note{display:block}.permission-note strong{display:block;margin-bottom:5px}}
.user-card{grid-template-columns:minmax(210px,1.5fr) minmax(125px,.8fr) minmax(125px,.8fr) minmax(95px,.7fr) auto}.audit-section{margin-top:18px;border:1px solid var(--line);background:var(--card);border-radius:16px;overflow:hidden}.audit-list{padding:0 20px 10px}.audit-row{display:grid;grid-template-columns:minmax(150px,.8fr) minmax(200px,1.4fr) auto;gap:12px;align-items:center;border-top:1px solid var(--line);padding:13px 0;font-size:12px}.audit-row span,.audit-row time{color:var(--muted)}@media(max-width:850px){.user-card{grid-template-columns:1.2fr 1fr 1fr}.audit-row{grid-template-columns:1fr 1fr}.audit-row time{grid-column:1/-1}}@media(max-width:540px){.user-card{grid-template-columns:1fr 1fr}.user-card .user-main{grid-column:1/-1}.user-card .user-actions{grid-column:1/-1}.audit-row{display:block}.audit-row>*{display:block;margin:3px 0}}
.admin-mode-switch{display:flex;gap:7px;margin:20px 0}.admin-mode-switch button.active{border-color:var(--accent);background:#75a7ff18;color:var(--accent)}.games-active>.intro:not(.game-intro),.games-active>.stats,.games-active>.user-section,.games-active>.permission-note,.games-active>.audit-section,.games-active>footer{display:none}.game-intro{margin-top:28px}.game-catalog{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:12px}.game-card,.game-players{border:1px solid var(--line);background:var(--card);border-radius:16px;overflow:hidden}.game-card{padding:18px}.game-card h2{font-size:17px;margin:0 0 6px}.game-card p,.game-card small{color:var(--muted);font-size:12px}.game-card button{margin-top:13px;width:100%}.game-players{margin-top:18px}.game-player-row{padding:14px 20px;border-top:1px solid var(--line)}.game-player-summary{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:12px;align-items:center}.game-player-name{font-weight:650;overflow-wrap:anywhere}.game-player-email{font-size:12px;color:var(--muted);overflow-wrap:anywhere}.game-player-coins{font-variant-numeric:tabular-nums;color:var(--green);white-space:nowrap}.game-player-detail{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;border-top:1px solid var(--line);margin-top:13px;padding-top:13px}.game-player-detail label{font-size:10px;color:var(--muted)}.game-player-detail input{width:100%;margin-top:4px;min-height:34px;font-size:12px}.game-player-results{grid-column:1/-1;margin:8px 0 0;padding:0;list-style:none;color:var(--muted);font-size:12px}.game-player-results li{padding:6px 0;border-top:1px solid #29364a}.flagged{color:var(--red);font-size:11px}.game-save{grid-column:1/-1;justify-self:start;font-size:12px}.game-empty{padding:28px 20px;text-align:center;color:var(--muted)}@media(max-width:650px){.game-player-summary{grid-template-columns:1fr auto}.game-player-summary button{grid-column:1/-1;width:100%}.game-player-detail{grid-template-columns:1fr 1fr}.game-player-detail .game-player-results,.game-player-detail .game-save{grid-column:1/-1}}
.intro{margin:22px 0 14px}.intro h1{font-size:25px;margin:5px 0}.intro p{font-size:12px}.stats{grid-template-columns:repeat(4,1fr);gap:8px;margin:14px 0 16px}.stats article{padding:10px 13px;border-radius:11px}.stats strong{font-size:23px}.section-toolbar{padding:14px 16px}.user-card{padding:12px 16px;gap:10px}.permission-note{margin-top:12px;padding:11px 14px}.audit-section{margin-top:12px}.audit-list{padding:0 16px 6px}.audit-row{padding:9px 0}.game-intro{margin-top:18px}.game-catalog{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:8px}.game-card{padding:12px;border-radius:12px}.game-card h2{font-size:15px;margin:0}.game-card p{margin:5px 0}.game-card button{margin-top:8px;min-height:34px}.game-players{margin-top:12px}.game-player-row{padding:11px 16px}.collapse-history,.small-action{min-height:30px;padding:5px 8px;font-size:11px}.collapse-history{grid-column:1/-1;justify-self:start}.result-actions{display:inline-flex;gap:5px;margin-left:7px;vertical-align:middle}.game-player-results li{display:flex;align-items:center;flex-wrap:wrap;gap:3px}.game-player-detail{grid-template-columns:repeat(3,minmax(0,1fr))}.game-player-detail input{min-height:32px}
@media(max-width:650px){.stats{grid-template-columns:1fr 1fr}.intro{margin-top:16px}.owner-label{margin-top:10px}.toolbar-controls{gap:6px}.toolbar-controls form{flex:1 0 100%}.toolbar-controls .filter-label{flex:1}.game-player-detail{grid-template-columns:1fr 1fr}.game-player-detail .game-player-results,.game-player-detail .game-save,.game-player-detail .collapse-history{grid-column:1/-1}.user-card{grid-template-columns:1fr 1fr}.user-card .user-main,.user-card .user-actions{grid-column:1/-1}}
.admin-wrap{max-width:900px;padding:0 18px 24px;font-size:13px}.admin-header{padding:14px 0}.brand{gap:9px}.brand-icon{width:36px;height:36px;border-radius:10px;font-size:20px}.brand strong{font-size:16px}.admin-mode-switch{margin:12px 0}.admin-mode-switch button,button,.button{min-height:34px;padding:6px 10px}.intro{margin:14px 0 10px}.intro h1{font-size:22px}.stats{margin:10px 0 12px;gap:6px}.stats article{padding:8px 11px}.stats strong{font-size:20px}.section-toolbar{padding:11px 13px}.section-toolbar h2{font-size:15px}.user-section,.audit-section,.game-card,.game-players{border-radius:12px}.user-card{grid-template-columns:minmax(0,1fr) auto;gap:8px;padding:10px 13px}.user-main{grid-column:1/2}.user-actions{grid-column:2;justify-content:flex-end}.user-actions button{min-height:30px;padding:5px 8px}.role-editor{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:8px;padding-top:8px;border-top:1px solid var(--line)}.role-editor .role-select{display:block;min-height:34px;background:var(--bg);color:var(--txt);opacity:1}.manage-roles{border-color:var(--accent)!important;color:var(--accent)}.permission-note{margin-top:8px;padding:9px 11px}.audit-row{padding:7px 0}.audit-list{padding:0 13px 4px}.game-player-row{padding:9px 13px}.game-player-results li{padding:5px 0}@media(max-width:650px){.admin-wrap{padding:0 12px 20px}.admin-header{padding:10px 0}.intro{margin-top:10px}.stats{grid-template-columns:1fr 1fr}.user-card{grid-template-columns:1fr}.user-main,.user-actions{grid-column:1}.user-actions{justify-content:flex-start}.role-editor{grid-template-columns:1fr 1fr}.toolbar-controls{width:100%}.audit-section .section-toolbar{display:flex;align-items:end}.audit-section .toolbar-controls{justify-content:flex-end}.audit-section .filter-label{flex:1}.audit-section button{white-space:nowrap}}
.role-editor label{display:block;min-width:0}.role-editor .field-label{display:block;height:15px;line-height:15px}.role-editor .role-select{display:block!important;width:100%;height:34px;min-height:34px;visibility:visible!important;opacity:1!important;color:var(--txt)!important;background:var(--bg)!important}
.role-editor label select{display:block!important;width:100%!important;height:36px!important;min-height:36px!important;visibility:visible!important;opacity:1!important;appearance:auto!important;-webkit-appearance:auto!important;color:var(--txt)!important;background:var(--bg)!important;border:1px solid var(--line)!important;border-radius:9px!important;padding:8px 10px!important}
.game-controls{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:7px;align-items:center}.game-controls .game-save,.game-controls .collapse-history{margin:0;justify-self:auto}
.header-actions{display:flex;gap:6px;align-items:center}.changelog-content{margin:0;white-space:pre-wrap;font:12px/1.45 ui-monospace,SFMono-Regular,Consolas,monospace;color:var(--muted)}.admin-wrap{max-width:820px;padding:0 14px 18px}.admin-header{padding:9px 0}.brand-icon{width:32px;height:32px;font-size:18px}.admin-header .button,.admin-header button{min-height:30px;padding:5px 8px}.admin-mode-switch{margin:8px 0;gap:5px}.intro{margin:10px 0 8px}.intro h1{font-size:20px;margin:3px 0}.intro p{font-size:11px;line-height:1.35}.stats{margin:8px 0;gap:5px}.stats article{padding:7px 9px}.stats strong{font-size:19px}.section-toolbar{padding:9px 11px}.user-card{padding:8px 11px}.permission-note{padding:8px 10px}.audit-section{margin-top:8px}.game-intro{margin-top:8px}.game-card{padding:10px}.game-players{margin-top:8px}.game-player-row{padding:8px 11px}dialog{padding:14px;border-radius:12px}.dialog-head{margin-bottom:8px}@media(max-width:650px){.brand p{display:none}.header-actions{gap:4px}.header-actions .subtle{font-size:11px}.section-toolbar{padding:8px 10px}.user-card{padding:8px 10px}.permission-note{padding:7px 9px}}
.audit-row small{display:block;margin-top:3px;color:var(--muted);overflow-wrap:anywhere}.audit-row details{margin-top:5px}.audit-row summary{cursor:pointer;font-size:11px;color:var(--accent)}.audit-diff{margin:5px 0 0;white-space:pre-wrap;overflow:auto;font:10px/1.35 ui-monospace,SFMono-Regular,Consolas,monospace;color:var(--muted)}
