
:root{
  --bg:#080808;--surface:#111;--surface2:#181818;--border:rgba(255,255,255,.1);
  --text:#e8e8e8;--muted:#9ca3af;--gold:#f59e0b;--danger:#ef4444;
  --font-display:'Syne',sans-serif;--font-body:'Inter',sans-serif;
}
*{box-sizing:border-box;margin:0;padding:0}
body{background:var(--bg);color:var(--text);font-family:var(--font-body);min-height:100vh}
a{text-decoration:none;color:inherit}
button,input,textarea,select{font-family:inherit}
#login-screen{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px;background:radial-gradient(circle at 20% 10%,rgba(245,158,11,.15),transparent 35%),#070707}
.login-card{width:100%;max-width:420px;background:rgba(20,20,20,.88);border:1px solid var(--border);border-radius:22px;padding:34px;box-shadow:0 24px 80px rgba(0,0,0,.55);backdrop-filter:blur(18px)}
.login-logo,.sb-logo{font-family:var(--font-display);font-size:30px;font-weight:800}.login-logo span,.sb-logo span{color:var(--gold)}
.login-sub{color:var(--muted);margin:4px 0 24px}.login-err{color:#fca5a5;margin-top:12px;min-height:20px}
#dashboard{display:none;grid-template-columns:270px 1fr;min-height:100vh}
#dashboard.admin-open{display:grid}
#sidebar{position:fixed;left:0;top:0;bottom:0;width:270px;background:#0d0d0d;border-right:1px solid var(--border);padding:22px;display:flex;flex-direction:column;gap:22px;overflow:auto}
.sb-nav{display:flex;flex-direction:column;gap:6px}.sb-bottom{margin-top:auto;display:flex;flex-direction:column;gap:6px}
.sb-link{display:flex;align-items:center;gap:10px;padding:11px 12px;border-radius:12px;color:var(--muted);font-size:14px;transition:.25s}
.sb-link:hover,.sb-link.active{background:rgba(245,158,11,.12);color:var(--gold)}
#admin-main{grid-column:2;padding:28px;min-width:0}
.a-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px;padding-bottom:18px;border-bottom:1px solid var(--border)}
.a-header h1{font-family:var(--font-display);font-size:32px}.a-header span{color:var(--muted);font-size:14px}
.panel{display:none}.panel.active{display:block}
.overview-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.ov-card{background:var(--surface);border:1px solid var(--border);border-radius:18px;padding:22px}
.ov-val{display:block;font-family:var(--font-display);font-size:34px;font-weight:800;color:#fff}.ov-label{color:var(--muted);font-size:13px}.ov-hint{margin-top:18px;color:var(--muted)}
.a-form,.a-list{background:var(--surface);border:1px solid var(--border);border-radius:18px;padding:22px}
.a-form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.a-form-group{margin-bottom:16px}.a-form-group label{display:block;margin-bottom:7px;color:#fff;font-size:13px;font-weight:600}
.a-form-group input,.a-form-group textarea,.a-form-group select{width:100%;background:#0b0b0b;border:1px solid var(--border);border-radius:12px;color:var(--text);padding:12px 13px;outline:none}
.a-form-group input:focus,.a-form-group textarea:focus,.a-form-group select:focus{border-color:rgba(245,158,11,.55)}
.a-btn{display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--border);background:#171717;color:#fff;border-radius:999px;padding:10px 16px;cursor:pointer;font-weight:700;margin:4px 4px 4px 0}
.a-btn-primary{background:var(--gold);border-color:var(--gold);color:#000}.a-btn-danger{background:rgba(239,68,68,.12);border-color:rgba(239,68,68,.35);color:#fca5a5}
.a-list{margin-top:16px;display:grid;gap:12px}
.a-item{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:15px;background:#0b0b0b;border:1px solid var(--border);border-radius:14px}
.a-item h4{font-family:var(--font-display);margin-bottom:4px}.a-item p{color:var(--muted);font-size:13px}.a-item-actions{white-space:nowrap}
.a-modal{position:fixed;inset:0;z-index:50;background:rgba(0,0,0,.72);display:flex!important;align-items:center;justify-content:center;padding:22px}
.a-modal[style*="display:none"]{display:none!important}.a-modal-inner{width:100%;max-width:760px;max-height:90vh;overflow:auto;background:#111;border:1px solid var(--border);border-radius:22px;padding:24px}
.a-modal-inner h3{font-family:var(--font-display);font-size:24px;margin-bottom:18px}.a-modal-btns{display:flex;gap:8px;flex-wrap:wrap}
.img-preview{display:none;width:120px;height:90px;object-fit:cover;border-radius:12px;border:1px solid var(--border);margin-top:10px;background:#0b0b0b}
.img-preview[src]:not([src=""]){display:block}.a-toast{position:fixed;right:18px;bottom:18px;background:#151515;border:1px solid var(--border);color:#fff;padding:12px 16px;border-radius:12px;box-shadow:0 18px 60px rgba(0,0,0,.45);opacity:0;transform:translateY(10px);transition:.25s;z-index:100}.a-toast.show{opacity:1;transform:translateY(0)}
@media(max-width:900px){#dashboard{grid-template-columns:1fr}#sidebar{position:relative;width:100%;height:auto}#admin-main{grid-column:1}.overview-stats,.a-form-row{grid-template-columns:1fr}.a-item{flex-direction:column}.a-item-actions{white-space:normal}}


/* HARD FIX: admin modal open/close */
.a-modal {
  display: none !important;
}
.a-modal[style*="display: flex"],
.a-modal[style*="display:flex"] {
  display: flex !important;
}
.a-modal[style*="display: none"],
.a-modal[style*="display:none"] {
  display: none !important;
}
