.admin-page{min-height:100vh;background:radial-gradient(ellipse at 18% 12%,#312e8130,transparent 40%),#050714}
.admin-shell{min-height:100vh;display:grid;place-items:center;padding:26px}
.login-card{width:min(440px,100%);padding:42px;background:rgba(11,16,32,.9);border:1px solid #94a3b826;border-radius:12px;box-shadow:0 25px 80px #0008}
.login-card .brand{margin-bottom:30px}.login-card .brand img{width:165px}
.login-card .eyebrow{margin-bottom:8px}
.login-card h1{font:600 30px/1.2 var(--font-display);letter-spacing:-.04em;margin:0}
.login-description{color:var(--muted);font-size:13px;margin:12px 0 28px}
.login-form label,.upload-box label{display:block;color:#cbd5e1;font-size:12px;margin-bottom:8px}
.login-form input,.json-field textarea{width:100%;border:1px solid #94a3b833;border-radius:6px;background:#080c19;color:var(--text);padding:12px;outline:none}
.login-form input:focus,.json-field textarea:focus{border-color:#06b6d488;box-shadow:0 0 0 3px #06b6d411}
.login-form .button{width:100%;margin-top:14px}
.admin-feedback{min-height:20px;color:#67e8f9;font-size:12px}
.login-feedback{color:#fda4af}
.return-link{font-size:12px;color:#94a3b8}
.editor[hidden]{display:none}
.editor{width:min(1500px,100%);min-height:calc(100vh - 52px);display:grid;grid-template-columns:255px minmax(0,1fr);background:#080b18;border:1px solid #94a3b81d;border-radius:12px;overflow:hidden;box-shadow:0 25px 80px #0008}
.admin-sidebar{position:sticky;top:0;height:calc(100vh - 52px);display:flex;flex-direction:column;padding:28px 19px;background:#0a0e1d;border-right:1px solid #94a3b81c}
.admin-sidebar .brand img{width:155px}
.admin-sidebar>.eyebrow{margin:35px 0 10px 8px;font-size:9px}
.admin-nav{display:grid;gap:5px}
.admin-nav a{padding:10px 11px;border-radius:5px;font-size:12px;color:#aab5c6;transition:.2s}
.admin-nav a:hover,.admin-nav a:focus{color:#fff;background:#06b6d411}
.sidebar-actions{margin-top:auto;display:grid;gap:9px}
.sidebar-actions .button{width:100%;min-height:42px;font-size:11px}
.logout-button{padding:8px;background:transparent;border:0;color:#94a3b8;font-size:11px;cursor:pointer}
.logout-button:hover{color:#fda4af}
.editor-content{padding:32px clamp(18px,4vw,56px);min-width:0}
.editor-header{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:20px}
.editor-header .eyebrow{margin:0 0 3px;font-size:9px}
.editor-header h1{font:600 28px var(--font-display);margin:0;letter-spacing:-.04em}
.save-indicator{font-size:11px;color:#67e8f9}
.admin-notice{padding:13px 15px;border:1px solid #06b6d433;border-radius:6px;background:#06b6d40c;color:#aebdcd;font-size:11px;margin-bottom:25px}
.admin-notice strong{color:#67e8f9}
.editor-panels{display:grid;gap:18px}
.editor-panel{scroll-margin-top:20px;padding:21px;background:linear-gradient(145deg,#0d1323,#0b0d1b);border:1px solid #94a3b820;border-radius:8px}
.panel-heading{display:flex;gap:13px;align-items:flex-start;margin-bottom:18px}
.panel-heading>span{font:600 11px var(--font-display);color:var(--neon-cyan);padding-top:3px}
.panel-heading h2{font:600 17px var(--font-display);margin:0}
.panel-heading p{font-size:11px;color:var(--muted);margin:3px 0 0}
.json-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.json-field{min-width:0}.json-field.wide{grid-column:1/-1}
.json-field label{display:block;margin:0 0 6px;color:#cbd5e1;font-size:10px;font-weight:600}
.json-field textarea{display:block;min-height:145px;resize:vertical;font:11px/1.55 Consolas,'Courier New',monospace;tab-size:2}
.json-field.wide textarea{min-height:210px}
.theme-controls{display:flex;align-items:center;gap:13px;flex-wrap:wrap;margin:2px 0 10px}
.json-field .color-control,.json-field .animation-control{display:flex;align-items:center;gap:7px;margin:0;color:#aab5c6;font-size:10px}
.color-control input{width:30px;height:25px;padding:2px;border:1px solid #94a3b833;border-radius:4px;background:#080c19;cursor:pointer}
.animation-control input{accent-color:#06b6d4}
.upload-box{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;margin-top:18px;padding-top:16px;border-top:1px solid #94a3b81c}
.upload-box label{grid-column:1/-1;margin:0}
.upload-box input{min-width:0;font-size:11px;color:#94a3b8}
.upload-box .button{min-height:38px;font-size:11px}
.upload-result{grid-column:1/-1;margin:0;color:#67e8f9;font:11px Consolas,monospace;overflow-wrap:anywhere}
.global-feedback{position:sticky;bottom:0;margin:0;padding:9px 0;background:#080b18}
@media(max-width:850px){.editor{grid-template-columns:1fr}.admin-sidebar{position:relative;height:auto;border-right:0;border-bottom:1px solid #94a3b81c;padding:17px 20px;display:grid;grid-template-columns:1fr auto;align-items:center;gap:12px}.admin-sidebar>.eyebrow{display:none}.admin-sidebar .brand img{width:130px}.admin-nav{grid-column:1/-1;display:flex;flex-wrap:wrap}.admin-nav a{font-size:10px;padding:7px}.sidebar-actions{grid-column:1/-1;display:flex;margin:0}.sidebar-actions .button{width:auto;flex:1}.logout-button{padding-inline:10px}.editor-content{padding-top:22px}}
@media(max-width:560px){.admin-shell{padding:0}.editor{min-height:100vh;border-radius:0}.login-card{padding:30px 23px}.editor-header{align-items:flex-start}.editor-header h1{font-size:23px}.json-fields{grid-template-columns:1fr}.json-field.wide{grid-column:auto}.json-field.wide textarea,.json-field textarea{min-height:175px}.editor-panel{padding:16px}.sidebar-actions{flex-wrap:wrap}.sidebar-actions .button{min-width:calc(50% - 6px)}}
