@media (min-width:1024px){html{zoom:.8}}
:root{--ink:#162118;--muted:#647067;--paper:#f6f7f3;--card:#fff;--brand:#146b48;--line:#e4e9e1}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,system-ui,sans-serif}button,input,select{font:inherit}.login{min-height:100vh;display:grid;grid-template-columns:1.1fr .9fr;gap:7vw;align-items:center;max-width:1100px;margin:auto;padding:48px}.login h1{font-size:clamp(2.7rem,6vw,5rem);line-height:1.02;margin:.2em 0}.login section>p:last-child{max-width:36rem;color:var(--muted);font-size:1.08rem;line-height:1.6}.login form{background:var(--card);border:1px solid var(--line);border-radius:20px;padding:32px;box-shadow:0 14px 38px #17301a0c}.login h2{margin-top:0}.login label{display:grid;gap:7px;font-weight:650;margin:18px 0}.login input,.profile select{border:1px solid #cfd8ce;border-radius:10px;background:#fff;padding:12px}.login button,.hero button{border:0;border-radius:10px;background:var(--brand);color:#fff;font-weight:700;padding:13px 18px;cursor:pointer;width:100%;margin-top:8px}.error{background:#fff0ef;color:#9a322b;border-radius:8px;padding:10px}.eyebrow{letter-spacing:.11em;font-size:.72rem;font-weight:800;color:var(--brand);margin:0 0 7px}aside{position:fixed;width:230px;inset:0 auto 0 0;background:#143e2c;color:#effff5;padding:30px 18px;display:flex;flex-direction:column}.brand{font-weight:850;letter-spacing:.08em;font-size:1.1rem;padding:0 12px 34px}.brand span{color:#8de0ae}nav{display:grid;gap:5px}nav a,.logout{color:#d6e5db;text-decoration:none;padding:11px 12px;border-radius:9px}.active,nav a:hover{background:#2b6048;color:#fff}.logout{margin-top:auto}.app{margin-left:230px;padding:34px;max-width:1380px}header{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:28px}header h1{margin:0;font-size:1.55rem}.profile{display:flex;align-items:center;gap:16px;color:var(--muted);font-size:.9rem}.hero{background:linear-gradient(120deg,#e8f6ec,#d8ecdd);border:1px solid #c8e1ce;border-radius:18px;padding:28px;display:flex;justify-content:space-between;gap:20px;align-items:center}.hero h2{font-size:1.8rem;margin:.1em 0}.hero p{color:#496256;max-width:610px}.hero button{width:auto;white-space:nowrap}.hero small{opacity:.72}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:17px;margin:20px 0}.cards article,.next{background:var(--card);border:1px solid var(--line);border-radius:15px;padding:22px}.cards p{margin:0;color:var(--muted)}.cards strong{display:block;font-size:2.5rem;margin-top:10px}.next h2{margin-top:0}.next p{color:var(--muted)}@media(max-width:760px){.login{grid-template-columns:1fr;padding:28px}.login h1{font-size:3rem}aside{position:static;width:auto;min-height:auto;display:block;padding:18px}.brand{padding-bottom:13px}nav{display:flex;overflow:auto}.logout{display:inline-block;margin-top:12px}.app{margin:0;padding:20px}header,.hero{align-items:flex-start;flex-direction:column}.cards{grid-template-columns:1fr}.profile{width:100%;justify-content:space-between}.profile select{max-width:190px}}

/* Dashboard navigation: compact drawer only on narrow screens. */
.dashboard-menu-button,.dashboard-menu-close,.dashboard-menu-backdrop{display:none}
@media(max-width:760px){
 body.dashboard-menu-open{overflow:hidden}
 aside.dashboard-sidebar{position:fixed;inset:0 auto 0 0;width:min(280px,84vw);height:100dvh;z-index:3002;display:flex;flex-direction:column;padding:20px 16px;overflow-y:auto;transform:translateX(-105%);transition:transform .2s ease;box-shadow:12px 0 36px #10281b30}
 body.dashboard-menu-open aside.dashboard-sidebar{transform:translateX(0)}
 aside.dashboard-sidebar nav{display:grid;overflow:visible;gap:5px}
 aside.dashboard-sidebar .logout{display:block;margin-top:auto}
 aside.dashboard-sidebar .brand{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:0 4px 20px;font-size:1rem}
 .dashboard-menu-button{display:grid;place-content:center;gap:4px;width:42px;height:42px;flex:none;border:1px solid #cbded1;border-radius:9px;background:#fff;cursor:pointer}
 .dashboard-menu-button span{display:block;width:20px;height:2px;border-radius:2px;background:#174b39}
 .dashboard-menu-close{display:grid;place-items:center;width:32px;height:32px;border:1px solid #ffffff55;border-radius:7px;background:transparent;color:#fff;font-size:23px;line-height:1;cursor:pointer}
 .dashboard-menu-backdrop:not([hidden]){display:block;position:fixed;inset:0;z-index:3001;background:#10281b88}
 .app.dashboard{margin:0}
}
