:root { --blue:#00569d; --navy:#0d2944; --teal:#00989a; --ink:#15263a; --muted:#647184; --line:#dce6ef; --wash:#f3f7fa; }
* { box-sizing:border-box; }
body { margin:0; min-height:100vh; color:var(--ink); background:linear-gradient(135deg,#eef5fa,#eaf6f5); font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif; }
.auth-shell { min-height:100vh; padding:30px 18px; display:grid; place-items:center; }
.auth-card { width:min(100%,460px); padding:42px; border:1px solid var(--line); border-radius:28px 6px 28px 6px; background:#fff; box-shadow:0 24px 70px rgba(13,41,68,.13); }
.auth-brand { display:block; margin-bottom:35px; }
.auth-brand img,.admin-header img { display:block; width:155px; height:58px; object-fit:contain; }
.eyebrow { margin:0 0 9px; color:var(--teal); font-size:.75rem; font-weight:900; letter-spacing:.14em; text-transform:uppercase; }
h1 { margin:0 0 12px; color:var(--navy); font-size:clamp(2rem,5vw,3.25rem); letter-spacing:-.045em; }
.intro { margin:0 0 28px; color:var(--muted); font-size:1.05rem; line-height:1.65; }
label { display:block; margin:18px 0 7px; font-weight:750; }
input { width:100%; min-height:48px; padding:11px 14px; border:1px solid #cbd8e4; border-radius:9px; font:inherit; }
input:focus { outline:3px solid rgba(0,152,154,.18); border-color:var(--teal); }
button { min-height:48px; padding:11px 20px; border:0; border-radius:999px; color:#fff; background:var(--blue); font:inherit; font-weight:850; cursor:pointer; }
.auth-card button { width:100%; margin-top:24px; }
.alert { padding:12px 14px; border:1px solid #f2b8b5; border-radius:8px; color:#9d251e; background:#fff2f1; }
.back-link { display:block; margin-top:24px; color:var(--blue); font-weight:750; text-align:center; text-decoration:none; }
.dashboard-page { background:var(--wash); }
.admin-header { padding:14px clamp(20px,5vw,70px); display:flex; justify-content:space-between; align-items:center; border-bottom:1px solid var(--line); background:#fff; }
.logout { min-height:40px; padding:8px 18px; color:var(--blue); border:1px solid var(--blue); background:#fff; }
.dashboard { max-width:1180px; margin:auto; padding:80px 24px; }
.dashboard .intro { max-width:720px; }
.dashboard-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; margin:36px 0; }
.metric,.notice { padding:28px; border:1px solid var(--line); border-radius:16px; background:#fff; box-shadow:0 12px 35px rgba(13,41,68,.05); }
.metric span,.metric small { display:block; color:var(--muted); }
.metric strong { display:block; margin:8px 0; color:var(--blue); font-size:2rem; }
.notice { border-left:5px solid var(--teal); }
.notice h2 { margin-top:0; color:var(--navy); }
@media(max-width:700px){ .auth-card{padding:30px 22px}.dashboard-grid{grid-template-columns:1fr}.admin-header img{width:125px} }
