:root{font-family:Inter,ui-sans-serif,system-ui,sans-serif;color:#102038;background:#f5f8fb}*{box-sizing:border-box}body{margin:0}header{height:76px;padding:0 6vw;display:flex;align-items:center;justify-content:space-between;background:#fff;border-bottom:1px solid #e4eaf0}.brand{font-size:1.25rem;font-weight:800;color:#123a69;text-decoration:none;letter-spacing:-.04em}.brand span{color:#4b82c4}.eyebrow{text-transform:uppercase;letter-spacing:.14em;font-size:.72rem;font-weight:750;color:#718097}main{max-width:1180px;margin:auto}.hero,.page-head{padding:56px 24px 28px}.hero h1,.page-head h1{font-size:clamp(2.2rem,4vw,4.4rem);letter-spacing:-.06em;line-height:1;margin:12px 0}.lede{font-size:1.15rem;color:#66758a;max-width:720px;line-height:1.6}.auth{max-width:460px;margin:90px auto;padding:40px;background:#fff;border:1px solid #e4eaf0;border-radius:20px;box-shadow:0 14px 40px #19365d0d}.auth form{display:grid;gap:18px;margin-top:28px}.auth label,.form-grid label{display:grid;gap:7px;font-weight:650;font-size:.9rem}.auth input,.form-grid input,.form-grid select,.form-grid textarea{border:1px solid #ccd7e3;border-radius:10px;padding:12px;font:inherit;background:#fff}.auth button,.form-grid button,.panel button{border:0;border-radius:999px;background:#1d66b1;color:#fff;padding:12px 18px;font:inherit;font-weight:750;text-align:center;cursor:pointer;justify-self:start}nav{min-height:48px;padding:10px 6vw;display:flex;align-items:center;gap:14px;background:#123a69;color:#fff;flex-wrap:wrap}nav a{color:#fff;text-decoration:none;font-weight:700;font-size:.88rem}.nav-spacer{flex:1}.link-button{border:0;background:transparent;color:#fff;padding:0;font:inherit;cursor:pointer}.stats{display:grid;grid-template-columns:repeat(5,1fr);gap:16px;padding:24px}.stat{display:flex;flex-direction:column;gap:8px;padding:22px;color:#123a69;text-decoration:none;background:#fff;border:1px solid #e4eaf0;border-radius:20px;box-shadow:0 14px 40px #19365d0d}.stat strong{font-size:2.2rem;line-height:1}.panel{margin:20px 24px;padding:24px;background:#fff;border:1px solid #e4eaf0;border-radius:20px;box-shadow:0 14px 40px #19365d0d}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.form-grid textarea{min-height:82px}.panel table{width:100%;border-collapse:collapse}.panel th,.panel td{padding:12px 8px;border-bottom:1px solid #e4eaf0;text-align:left;vertical-align:top}.panel td form{display:flex;gap:8px}.panel td input{max-width:240px}.assignments{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;padding:24px}.assignment{padding:24px;background:#fff;border:1px solid #e4eaf0;border-radius:20px}.assignment form{display:grid;gap:10px}.checkbox{font-weight:600}.empty-state,.muted{color:#718097}.error{margin:0 24px;padding:12px;border-radius:10px;background:#fff0f0;color:#a32222}@media(max-width:800px){.stats{grid-template-columns:repeat(2,1fr)}.assignments{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr}}@media(max-width:520px){header{padding:0 20px}.eyebrow{display:none}nav{padding:10px 20px;gap:10px}.hero,.page-head{padding:42px 20px 20px}.panel{margin:16px 20px;padding:18px}.stats{grid-template-columns:1fr;padding:20px}.assignments{padding:20px}.panel table{display:block;overflow-x:auto;white-space:nowrap}}
