/* NeoVisual admin, October 2026. The existing component CSS supplies form/table primitives. */
:root{--bg:#08090b;--bg-2:#0c0d10;--surface:rgba(255,255,255,.032);--surface-2:rgba(255,255,255,.065);--line:rgba(255,255,255,.09);--line-2:rgba(255,255,255,.17);--muted:rgba(255,255,255,.51);--muted-2:rgba(255,255,255,.74)}
body{background:radial-gradient(850px 520px at 65% -180px,rgba(255,255,255,.055),transparent 70%),#08090b}
body::before{opacity:.15}
.admin-shell{width:min(1600px,100%);padding:18px clamp(16px,2.2vw,34px) 70px}
.admin-topbar{top:12px;min-height:72px;margin-bottom:18px;padding:10px 18px;border-radius:18px;border-color:rgba(255,255,255,.105);background:rgba(15,16,19,.9);backdrop-filter:blur(24px)}
.admin-brand{gap:10px;font-size:16px;line-height:1.06;letter-spacing:-.035em}
.admin-brand::before{content:none}
.admin-brand-mark{display:grid;place-items:center;width:36px;height:36px;border:1px solid rgba(255,255,255,.2);border-radius:11px;background:linear-gradient(145deg,#34363b,#121316);font-size:20px;font-weight:950;font-style:italic;box-shadow:inset 0 1px rgba(255,255,255,.12),0 8px 20px #0008}
.admin-brand small{display:block;margin-top:3px;color:#85878e;font-size:8px;font-weight:800;letter-spacing:.2em}
.admin-topbar-center{display:flex;align-items:center;gap:9px;color:#85878f;font-size:11px;font-weight:600}
.admin-topbar-center strong{color:#f7f7f8;font-weight:750}
.admin-topbar-separator{color:#505158}
.admin-topbar-dot{width:7px;height:7px;border-radius:50%;background:#999ba2;box-shadow:0 0 0 4px #ffffff0d}
.admin-topbar-dot[data-status=ok]{background:#adf0c0;box-shadow:0 0 0 4px #adf0c01c,0 0 15px #adf0c059}
.admin-topbar-dot[data-status=attention]{background:#ffd48e;box-shadow:0 0 0 4px #ffd48e18}
.admin-topbar-actions{display:flex;align-items:center;gap:12px}
.admin-command-trigger{display:flex;align-items:center;gap:9px;min-width:184px;height:35px;padding:0 10px;border:1px solid var(--line);border-radius:10px;background:#ffffff07;color:#a6a7ad;font-size:10px;text-align:left}
.admin-command-trigger:hover{border-color:var(--line-2);color:#fff;background:#ffffff10}
.admin-command-trigger>span{font-size:18px;line-height:1}
.admin-command-trigger kbd{margin-left:auto;padding:2px 5px;border:1px solid #ffffff18;border-radius:5px;color:#777981;font:8px/1.3 inherit}
.admin-identity{gap:9px}
#admin-actor{padding:7px 10px;border-radius:9px;background:#ffffff08;font-size:10px}
.admin-logout{min-height:33px;padding:0 12px;border-radius:9px;font-size:10px}
.admin-console{grid-template-columns:242px minmax(0,1fr);gap:18px}
.admin-side{top:102px;min-height:calc(100svh - 136px);padding:12px;border-radius:19px;background:linear-gradient(155deg,#191a1e 0%,#101114 48%,#0d0e10 100%);border-color:#ffffff12}
.admin-side-brand{padding:9px 9px 17px;margin-bottom:8px}
.admin-side-logo{width:35px;height:35px;background:#111 url('/favicon.svg') center/21px no-repeat}
.admin-nav{display:flex;flex-direction:column;gap:2px}
.admin-nav-label{display:block;margin:17px 12px 7px;color:#777982;font-size:9px;font-weight:800;letter-spacing:.14em}
.admin-nav-label:first-child{margin-top:7px}
.admin-nav-btn{position:relative;width:100%;height:39px;padding:0 12px;border-radius:10px;color:#a3a4ab;font-size:11.5px;font-weight:600;transition:background .2s,color .2s,transform .2s,border-color .2s}
.admin-nav-btn svg{width:17px;height:17px;color:#7f818a;transition:color .2s,transform .2s}
.admin-nav-btn:hover{transform:translateX(2px);background:#ffffff0d;color:#f5f5f6}
.admin-nav-btn:hover svg{color:#ddd}
.admin-nav-btn.is-active{background:linear-gradient(90deg,#ffffff20,#ffffff08);color:white;border-color:#ffffff1b;box-shadow:inset 2px 0 #fafafa,0 6px 14px #0004}
.admin-nav-btn.is-active svg{color:#fff;transform:scale(1.07)}
.admin-side-footer{margin-top:25px;background:#ffffff06;border-color:#ffffff10}
.admin-side-footer strong{color:#e7e8e9}
.admin-content{gap:18px}
.admin-hero{position:relative;isolation:isolate;min-height:245px;align-items:flex-end;padding:30px 34px;overflow:hidden;border-radius:21px;background:#101114;border-color:#ffffff14}
.admin-hero::after{display:none}
.admin-hero-art{position:absolute;z-index:-1;inset:0;background:linear-gradient(90deg,#101114 1%,#101114ed 27%,#10111470 58%,#1011141a 100%),url('/admin-assets/assets/dashboard-atmosphere-v1.webp') right center/cover no-repeat}
.admin-hero>div:first-child{position:relative;z-index:1;max-width:680px}
.admin-hero-kicker{display:flex;align-items:center;gap:8px;margin-bottom:13px;color:#b8bbc1;font-size:9px;font-weight:800;letter-spacing:.17em}
.admin-hero-kicker span{width:6px;height:6px;background:#fff;border-radius:50%;box-shadow:0 0 15px #fff8}
.admin-command-title{font-size:clamp(30px,3.8vw,49px);line-height:1.06;letter-spacing:-.055em;background:none;-webkit-text-fill-color:#fff}
.admin-command-copy{max-width:49ch;margin-top:11px;color:#c2c3c9;font-size:12px}
.admin-live{margin-top:21px;color:#aaaeb6;font-size:10px}
.admin-refresh{z-index:1;flex:none;height:36px;border-radius:9px;padding:0 15px;font-size:10px;white-space:nowrap}
.admin-refresh:disabled{opacity:.55;cursor:wait}
.admin-shortcuts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px}
.admin-shortcuts button{display:flex;align-items:center;gap:12px;min-width:0;min-height:70px;padding:11px 14px;border:1px solid #ffffff12;border-radius:14px;background:linear-gradient(135deg,#ffffff0b,#ffffff04);color:#fff;text-align:left;transition:transform .2s,border-color .2s,background .2s}
.admin-shortcuts button:hover{transform:translateY(-3px);border-color:#ffffff38;background:#ffffff12}
.admin-shortcuts button>span:nth-child(2){min-width:0}
.admin-shortcuts strong,.admin-shortcuts small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.admin-shortcuts strong{font-size:11px}.admin-shortcuts small{margin-top:3px;color:#93959d;font-size:9px}
.admin-shortcuts b{margin-left:auto;color:#9c9fa7;font-weight:500}
.admin-shortcut-icon{display:grid;place-items:center;flex:none;width:34px;height:34px;border:1px solid #ffffff1b;border-radius:10px;background:#ffffff0d;font-size:18px;color:#fff}
.admin-stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.admin-stat-card,.admin-stat-card:last-child{min-height:117px;padding:17px;border-radius:14px;background:linear-gradient(135deg,#1b1c20,#111215);border-color:#ffffff13}
.admin-stat-card:hover{transform:translateY(-3px);border-color:#ffffff3a}
.admin-stat-label{color:#a8a9b0;font-size:10px}.admin-stat-val{margin-top:10px;font-size:28px}.admin-stat-note{color:#747780;font-size:9px}
.admin-panel{border-radius:17px;background:linear-gradient(145deg,#1b1c20,#111215);border-color:#ffffff13}
.admin-panel:hover{border-color:#ffffff20}
.admin-panel-head{gap:16px}.admin-panel-title{font-size:14px}.admin-panel-desc{color:#91939a}
.admin-table-wrap{max-width:100%;overflow:auto;scrollbar-gutter:stable}
.admin-input,.admin-search,.admin-select{border-color:#ffffff19;background:#090a0d}
.admin-input:focus,.admin-search:focus,.admin-select:focus{border-color:#ffffff91;box-shadow:0 0 0 3px #ffffff10}
.admin-actions{display:flex;flex-wrap:wrap;align-items:center;gap:6px}
.admin-action{min-height:28px;padding:5px 9px;border:1px solid #ffffff1b;border-radius:7px;background:#ffffff0b;color:#dedfe4;font-size:9px;font-weight:650;white-space:nowrap;transition:background .16s,border-color .16s,color .16s}
.admin-action:hover{border-color:#ffffff4d;background:#ffffff1c;color:#fff}
.admin-action.danger{border-color:#ec9ea425;background:#ec9ea40b;color:#e9b3b6}
.admin-action.danger:hover{border-color:#ec9ea467;background:#ec9ea421;color:#ffd8db}
.admin-action.good{border-color:#d3ead137;background:#b8efae16;color:#d4f6d0}
.admin-action:focus-visible,.admin-shortcuts button:focus-visible,.admin-command-option:focus-visible{outline:2px solid #fff;outline-offset:2px}
.admin-page-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;padding:17px 2px 8px}
.admin-page-heading h1{margin:7px 0 5px;color:#fff;font-size:clamp(25px,3vw,35px);letter-spacing:-.045em;line-height:1.1}
.admin-page-heading p{margin:0;color:#a2a4ab;font-size:11px}
.admin-page-kicker{color:#92949b;font-size:9px;font-weight:800;letter-spacing:.18em}
.admin-service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}
.admin-service-card{min-width:0;padding:22px;border:1px solid #ffffff13;border-radius:18px;background:linear-gradient(145deg,#1c1d22,#101114);box-shadow:0 20px 50px #0004;transition:transform .22s,border-color .22s}
.admin-service-card:hover{transform:translateY(-3px);border-color:#ffffff2d}
.admin-service-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}
.admin-service-glyph{display:grid;place-items:center;width:39px;height:39px;border:1px solid #ffffff22;border-radius:12px;background:#ffffff10;color:#fff;font-size:22px}
.admin-service-status{padding:5px 8px;border:1px solid #ffffff20;border-radius:99px;color:#bcbec5;font-size:9px}
.admin-service-card[data-status=ok] .admin-service-status{border-color:#b5e9c13b;color:#bbf0c7;background:#8beb9d12}
.admin-service-card[data-status=error] .admin-service-status{border-color:#f1a2aa3d;color:#ffc1c8;background:#ff8b9a12}
.admin-service-card h2{margin:26px 0 4px;color:#fff;font-size:16px;letter-spacing:-.02em}
.admin-service-card p{min-height:36px;margin:0;color:#a1a3ab;font-size:10px}
.admin-service-meta{margin-top:23px;padding-top:12px;border-top:1px solid #ffffff12;color:#8e9099;font-size:10px}
.admin-monitor-note{margin:2px 1px;color:#888b94;font-size:10px}
.admin-social-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.admin-social-summary article{padding:20px;border:1px solid #ffffff15;border-radius:15px;background:linear-gradient(145deg,#1b1c20,#111215)}
.admin-social-summary span{display:block;color:#92959d;font-size:9px;font-weight:750;letter-spacing:.1em}
.admin-social-summary strong{display:block;margin-top:11px;color:white;font-size:30px;letter-spacing:-.04em}
.admin-social-players{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;padding:18px}
.admin-social-players .admin-empty{grid-column:1/-1}
.admin-social-player{display:flex;align-items:center;gap:9px;min-width:0;padding:10px;border:1px solid #ffffff10;border-radius:10px;background:#ffffff06}
.admin-social-avatar{display:grid;place-items:center;flex:none;width:30px;height:30px;border:1px solid #ffffff1e;border-radius:8px;background:#ffffff11;color:#e1e2e5;font-size:12px;font-weight:750}
.admin-social-player strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:10px}
.admin-social-online{margin-left:auto;flex:none;color:#bdebc6;font-size:9px}
.admin-release-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.admin-release-summary article{min-width:0;padding:20px;border:1px solid #ffffff15;border-radius:15px;background:linear-gradient(145deg,#1b1c20,#111215)}
.admin-release-summary span{display:block;color:#92959d;font-size:9px;font-weight:750;letter-spacing:.1em}
.admin-release-summary strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-top:11px;color:#fff;font-size:22px;letter-spacing:-.035em}
.admin-release-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:18px}
.admin-release-list>.admin-empty{grid-column:1/-1}
.admin-release-card{min-width:0;padding:18px;border:1px solid #ffffff16;border-radius:13px;background:#0c0d10}
.admin-release-card-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-bottom:15px;border-bottom:1px solid #ffffff14}
.admin-release-card h2{margin:0;color:white;font-size:15px;letter-spacing:-.025em}
.admin-release-card-heading span{flex:none;padding:5px 8px;border:1px solid #b9e8c13d;border-radius:99px;background:#a0e4aa0e;color:#bdebc6;font-size:9px}
.admin-release-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px 13px;margin-top:17px}
.admin-release-fields span{display:block;color:#858892;font-size:8px;font-weight:800;letter-spacing:.1em}
.admin-release-fields strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-top:5px;color:#e9eaed;font-size:10px;font-weight:650}
.admin-command-dialog{width:min(530px,calc(100vw - 24px));max-height:min(520px,80vh);margin:13vh auto 0;padding:0;border:1px solid #ffffff2a;border-radius:18px;background:#15161a;color:#fff;box-shadow:0 30px 90px #000c;overflow:hidden}
.admin-command-dialog::backdrop{background:#000a;backdrop-filter:blur(7px)}
.admin-command-box{display:grid}.admin-command-search{display:flex;align-items:center;gap:10px;padding:13px 16px;border-bottom:1px solid #ffffff16}
.admin-command-search>span{font-size:24px;color:#c8cad0}
.admin-command-search input{flex:1;min-width:0;border:0;outline:0;background:none;color:#fff;font-size:13px}
.admin-command-search input::placeholder{color:#777982}.admin-command-search kbd{padding:3px 6px;border:1px solid #ffffff19;border-radius:5px;color:#8d8f98;font-size:9px}
.admin-command-results{display:grid;gap:3px;max-height:330px;padding:8px;overflow:auto}
.admin-command-option{width:100%;height:39px;padding:0 12px;border:1px solid transparent;border-radius:8px;background:none;color:#b5b7be;text-align:left;font-size:11px}
.admin-command-option:hover,.admin-command-option[aria-selected=true]{border-color:#ffffff1b;background:#ffffff12;color:#fff}
.admin-command-empty{margin:12px;color:#8c8e96;font-size:11px}.admin-command-footer{display:flex;gap:15px;padding:11px 17px;border-top:1px solid #ffffff11;color:#787b83;font-size:9px}
@media(max-width:1180px){.admin-topbar-center{display:none}.admin-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:960px){.admin-console{grid-template-columns:1fr}.admin-side{position:relative;top:auto;min-height:0}.admin-side-brand,.admin-side-footer{display:none}.admin-nav{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:5px}.admin-nav-label{grid-column:1/-1;margin:9px 4px 2px}.admin-nav-btn{justify-content:center;padding:0 6px;font-size:10px}.admin-nav-btn svg{width:15px;height:15px}}
@media(max-width:720px){.admin-command-trigger{min-width:36px;width:36px;justify-content:center;font-size:0}.admin-command-trigger>span{font-size:20px}.admin-command-trigger kbd{display:none}.admin-shortcuts{grid-template-columns:1fr}.admin-service-grid,.admin-social-summary,.admin-release-summary,.admin-release-list{grid-template-columns:1fr}.admin-social-players{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-hero{min-height:220px;align-items:flex-start;padding:25px}.admin-hero-art{opacity:.75}.admin-hero .admin-refresh{align-self:flex-end}.admin-nav{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-nav-btn{justify-content:flex-start;padding:0 10px}.admin-page-heading{align-items:flex-start;flex-direction:column}}
@media(max-width:480px){.admin-shell{padding-inline:12px}.admin-topbar{padding:9px 10px}.admin-brand{font-size:13px}.admin-brand-mark{width:30px;height:30px;font-size:17px}.admin-identity{gap:3px}.admin-logout{padding:0 8px}.admin-hero{min-height:245px;display:block}.admin-hero .admin-refresh{margin-top:12px}.admin-command-title{font-size:32px}.admin-stats{grid-template-columns:1fr 1fr}.admin-stat-card,.admin-stat-card:last-child{min-height:108px;padding:13px}.admin-social-players{grid-template-columns:1fr}.admin-service-card{padding:17px}}
@media(prefers-reduced-motion:reduce){.admin-nav-btn,.admin-service-card,.admin-shortcuts button,.admin-stat-card{transition:none!important}.admin-hero,.admin-panel,.admin-stats,.admin-console{animation:none!important}*{scroll-behavior:auto!important}}
