:root{
    --navy:#0b1f4d;
    --navy2:#102d6b;
    --gold:#d4aa2a;
    --bg:#f5f7fb;
    --text:#182033;
    --muted:#68718a;
    --ok:#16794b;
    --bad:#b42318;
    --white:#fff;
}
*{box-sizing:border-box}
body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:var(--bg);color:var(--text)}
.shell{min-height:100vh;padding:48px 18px;display:flex;justify-content:center}
.hero,.auth-card{width:min(980px,100%);background:var(--white);border-radius:24px;padding:42px;box-shadow:0 18px 55px rgba(18,31,62,.09)}
.auth-card{width:min(560px,100%)}
.auth-card.wide{width:min(720px,100%)}
.brand{font-size:.78rem;font-weight:800;letter-spacing:.18em;color:var(--gold);margin-bottom:12px}
h1{font-size:clamp(2rem,5vw,3.6rem);margin:.1em 0;color:var(--navy);line-height:1.05}
h2{color:var(--navy);font-size:1.15rem;margin-top:0}
.lead{font-size:1.08rem;color:var(--muted);margin:0 0 30px}
.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:26px 0}
.card{border:1px solid #e7eaf1;border-radius:18px;padding:22px;background:#fff}
.card ul{padding-left:20px;line-height:1.9}
.button{display:inline-block;border:0;border-radius:12px;background:var(--navy);color:#fff;text-decoration:none;padding:12px 18px;font-weight:700;cursor:pointer}
.button:hover{background:var(--navy2)}
.button.secondary{background:#eef2fb;color:var(--navy)}
.notice{background:#ecfdf3;border:1px solid #b7ebcd;padding:13px 16px;border-radius:12px;color:#12663f;margin:18px 0}
.notice.error{background:#fff1f0;border-color:#ffc9c4;color:#9f1c15}
.form-stack{display:grid;gap:16px}
.form-stack label{display:grid;gap:7px;font-weight:700;color:var(--navy)}
.form-stack input,.form-stack select{width:100%;border:1px solid #d8deea;border-radius:11px;padding:12px 13px;font:inherit;color:var(--text);background:#fff}
.form-stack input:focus,.form-stack select:focus{outline:2px solid rgba(16,45,107,.16);border-color:var(--navy2)}
.form-stack small{font-weight:400;color:var(--muted)}
.form-grid{margin:0}
.auth-link{color:var(--muted);font-size:.93rem}
.auth-link a{color:var(--navy);font-weight:700}
.dashboard-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}
.info-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.info-grid div{background:#f7f9fd;border-radius:12px;padding:13px}
.info-grid span{display:block;color:var(--muted);font-size:.83rem;margin-bottom:4px}
.status-list{border:1px solid #e7eaf1;border-radius:16px;overflow:hidden;margin:24px 0}
.status-row{display:flex;justify-content:space-between;gap:20px;padding:14px 16px;border-bottom:1px solid #eef0f4}
.status-row:last-child{border-bottom:0}
.ok{color:var(--ok)} .bad{color:var(--bad)}
table{width:100%;border-collapse:collapse}
th,td{text-align:left;padding:12px;border-bottom:1px solid #edf0f5}
th{color:var(--navy);font-size:.9rem}
code{background:#f0f2f6;padding:2px 6px;border-radius:6px}
.csrf-form{margin-top:16px}
@media(max-width:720px){
    .hero,.auth-card{padding:26px 20px}
    .grid,.info-grid{grid-template-columns:1fr}
    .dashboard-head{flex-direction:column}
}
