:root {
    --bg: #07111f;
    --bg-soft: #0d1a2b;
    --panel: rgba(13, 26, 43, 0.78);
    --panel-2: #101d31;
    --border: rgba(255,255,255,0.08);
    --text: #edf3ff;
    --muted: #97a7c3;
    --primary: #22c55e;
    --primary-2: #38bdf8;
    --danger: #ef4444;
    --shadow: 0 20px 60px rgba(0,0,0,0.35);
    --radius: 22px;
}
*{box-sizing:border-box}
body{margin:0;font-family:'Inter',sans-serif;background:radial-gradient(circle at top right,#16355a 0%,#07111f 45%,#040913 100%);color:var(--text)}
a{text-decoration:none;color:inherit}
.login-page{min-height:100vh;display:grid;place-items:center;padding:24px}
.login-wrap{width:min(100%,1080px)}
.login-card{max-width:520px;padding:36px;margin:auto;border:1px solid var(--border);border-radius:30px;box-shadow:var(--shadow);background:rgba(9,19,34,.82);backdrop-filter:blur(18px)}
.glass{position:relative;overflow:hidden}
.glass:before{content:'';position:absolute;inset:-20%;background:linear-gradient(135deg,rgba(34,197,94,.18),rgba(56,189,248,.16),transparent 55%);pointer-events:none}
.login-brand{display:flex;gap:18px;align-items:center;margin-bottom:28px;position:relative}
.brand-mark{width:48px;height:48px;border-radius:16px;background:linear-gradient(135deg,var(--primary),var(--primary-2));display:grid;place-items:center;color:#02110b;font-weight:800;box-shadow:0 12px 30px rgba(34,197,94,.35)}
.brand-mark.large{width:72px;height:72px;font-size:24px;border-radius:22px}
.login-brand h1,.page-head h1{margin:0;font-size:30px}
.login-brand p,.page-head p,.brand-subtitle,.sidebar-footer span{margin:6px 0 0;color:var(--muted)}
.form-grid{display:grid;gap:16px;position:relative}
.form-grid.cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.form-grid.cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.form-grid .full{grid-column:1/-1}
label{display:block;font-size:13px;font-weight:600;margin-bottom:8px;color:#cbd8ee}
input,select{width:100%;padding:14px 15px;border-radius:14px;border:1px solid rgba(255,255,255,0.08);background:#081423;color:#f6fbff;outline:none}
input:focus,select:focus{border-color:rgba(56,189,248,.55);box-shadow:0 0 0 4px rgba(56,189,248,.12)}
button{font-family:inherit}
.btn-primary,.btn-copy{border:none;border-radius:14px;padding:14px 18px;font-weight:700;cursor:pointer;transition:.2s ease}
.btn-primary{background:linear-gradient(135deg,var(--primary),var(--primary-2));color:#03100f}
.btn-primary:hover,.btn-copy:hover{transform:translateY(-1px);filter:brightness(1.03)}
.btn-copy{padding:8px 10px;font-size:12px;background:#13243b;color:#d8e7ff;border:1px solid rgba(255,255,255,0.08)}
.btn-danger{background:rgba(239,68,68,.14);color:#ffd2d2;border:1px solid rgba(239,68,68,.32)}
.btn-danger:hover{filter:brightness(1.06)}
.login-note{margin-top:18px;color:var(--muted);font-size:13px;position:relative}

.mode-switch{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0 0 18px;position:relative}
.mode-switch a{padding:12px 14px;border-radius:14px;text-align:center;background:#0e1b2d;border:1px solid var(--border);color:#cfe0ff;font-weight:700}
.mode-switch a.active{background:linear-gradient(135deg,rgba(34,197,94,.22),rgba(56,189,248,.2));border-color:rgba(56,189,248,.28);color:#fff}
.align-end{display:flex;align-items:end}

.alert{padding:14px 16px;border-radius:16px;margin-bottom:18px;border:1px solid transparent}
.alert.success{background:rgba(34,197,94,.12);border-color:rgba(34,197,94,.28);color:#bcffd3}
.alert.error{background:rgba(239,68,68,.12);border-color:rgba(239,68,68,.28);color:#ffc9c9}
.app-shell{display:grid;grid-template-columns:280px 1fr;min-height:100vh}
.sidebar{padding:28px 20px;background:rgba(4,9,19,.72);border-right:1px solid var(--border);backdrop-filter:blur(14px);display:flex;flex-direction:column;gap:24px}
.brand-block{display:flex;align-items:center;gap:14px}
.brand-title{font-weight:800;font-size:22px}
.nav-menu{display:grid;gap:8px}
.nav-menu a{padding:14px 16px;border-radius:16px;color:#dce9ff;background:transparent;border:1px solid transparent}
.nav-menu a:hover{background:#112038;border-color:var(--border)}
.sidebar-footer{margin-top:auto;padding:16px;border-radius:18px;background:#0c1829;border:1px solid var(--border);display:grid;gap:4px}
.content{padding:28px}
.page-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:22px}
.panel{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);padding:22px;box-shadow:var(--shadow);margin-bottom:22px}
.panel-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}
.panel-head h2{margin:0;font-size:20px}
.stats-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-bottom:22px}
.stat-card{padding:22px;border-radius:22px;background:linear-gradient(180deg,rgba(17,30,49,.95),rgba(10,20,34,.95));border:1px solid var(--border);box-shadow:var(--shadow)}
.stat-card span{display:block;color:var(--muted);margin-bottom:10px}
.stat-card strong{font-size:34px}
.table-wrap{overflow:auto}
table{width:100%;border-collapse:collapse;min-width:860px}
th,td{text-align:left;padding:14px 12px;border-bottom:1px solid rgba(255,255,255,0.06);vertical-align:top}
th{color:#cdd8ee;font-size:13px;text-transform:uppercase;letter-spacing:.04em}
td{color:#eff4ff}
.copy-group{display:flex;flex-wrap:wrap;gap:8px}
.quick-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.action-card{display:block;padding:22px;border-radius:22px;border:1px solid var(--border);background:#0b1728}
.action-card strong{display:block;font-size:18px;margin-bottom:8px}
.action-card span{color:var(--muted)}
@media (max-width: 980px){
    .app-shell{grid-template-columns:1fr}
    .sidebar{position:sticky;top:0;z-index:5}
    .stats-grid,.form-grid.cols-2,.form-grid.cols-3,.quick-links{grid-template-columns:1fr}
}
