:root{
  --bg:#06111f;
  --bg2:#0a2138;
  --card:rgba(255,255,255,.078);
  --card2:rgba(255,255,255,.12);
  --line:rgba(255,255,255,.14);
  --text:#f7fbff;
  --muted:#9fb6cf;
  --blue:#45a3ff;
  --blue2:#0078d4;
  --gold:#f6c56f;
  --green:#31d0aa;
  --red:#ff5c7a;
  --shadow:0 30px 100px rgba(0,0,0,.42);
  --radius:28px;
}
*{box-sizing:border-box}
body{margin:0;font-family:Segoe UI,Inter,Arial,sans-serif;color:var(--text);background:
radial-gradient(circle at 8% 8%,rgba(69,163,255,.28),transparent 30%),
radial-gradient(circle at 90% 12%,rgba(246,197,111,.16),transparent 28%),
linear-gradient(135deg,var(--bg),#081827 45%,var(--bg2));min-height:100vh}
a{text-decoration:none;color:inherit}
button,input,select,textarea{font:inherit}
.login-page{min-height:100vh;display:grid;place-items:center;padding:24px}
.login-card{width:min(480px,100%);padding:36px;border:1px solid var(--line);background:linear-gradient(180deg,rgba(255,255,255,.12),rgba(255,255,255,.06));backdrop-filter:blur(28px);border-radius:36px;box-shadow:var(--shadow)}
.logo-line{display:flex;gap:14px;align-items:center;margin-bottom:26px}
.logo{width:56px;height:56px;border-radius:20px;background:linear-gradient(135deg,#fff,#bfe0ff);display:grid;place-items:center;color:#08223a;font-weight:1000;font-size:26px;box-shadow:0 12px 40px rgba(69,163,255,.3)}
.logo-line h1{margin:0;font-size:30px;letter-spacing:-.04em}
.logo-line p{margin:4px 0 0;color:var(--muted)}
.field{margin:16px 0}
label{font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);display:block;margin-bottom:8px}
.input{width:100%;padding:14px 16px;border:1px solid var(--line);border-radius:16px;background:rgba(255,255,255,.09);color:var(--text);outline:none}
.input:focus{border-color:rgba(69,163,255,.65);box-shadow:0 0 0 4px rgba(69,163,255,.12)}
.btn{border:0;border-radius:16px;padding:12px 16px;cursor:pointer;background:linear-gradient(135deg,var(--blue),var(--blue2));color:#fff;font-weight:900;box-shadow:0 10px 32px rgba(0,120,212,.28)}
.btn:hover{filter:brightness(1.05)}
.btn.light{background:rgba(255,255,255,.1);box-shadow:none;color:var(--text);border:1px solid var(--line)}
.btn.red{background:linear-gradient(135deg,#ff5c7a,#b91c1c)}
.btn.gold{background:linear-gradient(135deg,var(--gold),#b7791f);color:#0b1220}
.alert{padding:13px 14px;border-radius:16px;border:1px solid rgba(255,255,255,.16);margin:14px 0}
.alert.bad{background:rgba(255,92,122,.16);color:#ffd7df}
.alert.ok{background:rgba(49,208,170,.13);color:#d8fff7}
.shell{display:grid;grid-template-columns:290px 1fr;min-height:100vh;padding:14px;gap:14px}
.sidebar{background:linear-gradient(180deg,rgba(255,255,255,.12),rgba(255,255,255,.055));border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:18px;position:sticky;top:14px;height:calc(100vh - 28px);display:flex;flex-direction:column}
.brand{display:flex;align-items:center;gap:12px;padding:8px 8px 24px}
.brand .logo{width:46px;height:46px;border-radius:17px;font-size:22px}
.brand h2{margin:0;font-size:20px;letter-spacing:-.03em}
.brand span{color:var(--muted);font-size:12px}
.nav-title{color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.13em;margin:18px 8px 8px}
.nav{display:grid;gap:6px}
.nav button{border:0;background:transparent;color:var(--muted);padding:12px 12px;border-radius:15px;text-align:left;cursor:pointer;font-weight:800;display:flex;gap:10px;align-items:center}
.nav button:hover,.nav button.active{background:rgba(69,163,255,.12);color:#fff}
.userbox{margin-top:auto;padding:14px;border:1px solid var(--line);border-radius:20px;background:rgba(255,255,255,.07)}
.main{border:1px solid var(--line);border-radius:var(--radius);background:rgba(255,255,255,.065);backdrop-filter:blur(24px);box-shadow:var(--shadow);overflow:hidden}
.topbar{padding:22px 26px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:18px}
.topbar h1{margin:0;font-size:28px;letter-spacing:-.04em}
.topbar p{margin:5px 0 0;color:var(--muted)}
.content{padding:24px;overflow:auto;max-height:calc(100vh - 106px)}
.cards{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;margin-bottom:22px}
.card{padding:22px;border:1px solid var(--line);border-radius:24px;background:linear-gradient(180deg,rgba(255,255,255,.13),rgba(255,255,255,.06))}
.card .n{font-size:34px;font-weight:1000;letter-spacing:-.05em}
.card .t{color:var(--muted);font-size:13px;margin-top:6px}
.panel{border:1px solid var(--line);border-radius:24px;background:rgba(255,255,255,.07);overflow:hidden;margin-bottom:22px}
.panel-head{padding:18px 20px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:12px}
.panel-head h2{margin:0;font-size:20px}
.table-wrap{overflow:auto}
table{width:100%;border-collapse:collapse}
th,td{padding:13px 16px;text-align:left;border-bottom:1px solid var(--line);vertical-align:top}
th{font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}
td{font-size:14px;color:#eaf4ff}
.badge{display:inline-block;padding:5px 9px;border-radius:999px;background:rgba(69,163,255,.16);color:#cae7ff;font-size:12px;font-weight:900}
.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.form-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}
.modal-back{position:fixed;inset:0;background:rgba(0,0,0,.55);display:grid;place-items:center;padding:22px;z-index:20}
.modal{width:min(860px,100%);max-height:88vh;overflow:auto;background:#0a1728;border:1px solid var(--line);border-radius:28px;box-shadow:var(--shadow);padding:24px}
.modal h2{margin:0 0 18px}
.kv{display:grid;grid-template-columns:180px 1fr;gap:10px;color:var(--muted);font-size:14px}
pre{white-space:pre-wrap;background:rgba(0,0,0,.25);padding:14px;border-radius:18px;border:1px solid var(--line);max-height:420px;overflow:auto}
@media(max-width:1180px){.cards{grid-template-columns:repeat(3,1fr)}}
@media(max-width:900px){
.shell{display:block}
.sidebar{position:static;height:auto;margin-bottom:14px}
.nav{grid-template-columns:repeat(2,minmax(0,1fr))}
.cards{grid-template-columns:repeat(2,1fr)}
.content{max-height:none}
.form-grid{grid-template-columns:1fr}
}
@media(max-width:560px){
.shell{padding:8px}
.cards{grid-template-columns:1fr}
.topbar{display:block}
.nav{grid-template-columns:1fr}
}


/* Full Admin v2 refinements */
.card:hover{transform:translateY(-2px);transition:.18s ease;border-color:rgba(246,197,111,.32)}
textarea.input{min-height:120px}
.modal .input{background:rgba(255,255,255,.08)}


/* Complete Admin v3 */
.btn.small{padding:7px 10px;border-radius:11px;font-size:12px;margin:2px}
textarea.input{min-height:120px}
.card:hover{transform:translateY(-2px);transition:.18s ease;border-color:rgba(246,197,111,.38)}
.table-wrap{max-height:calc(100vh - 230px);overflow:auto}
.table-wrap table thead th{position:sticky;top:0;background:#0a1728;z-index:2}
.modal .form-grid{margin-bottom:8px}
.modal pre{background:rgba(0,0,0,.36)}
.content .alert:first-child{margin-top:0}
@media(max-width:900px){.table-wrap{max-height:none}}
