@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{color-scheme:light;--navy:#0b2039;--blue:#1257d6;--mint:#4ee3c0;--text:#142b46;--muted:#586c80;--line:#dfe6ee;--bg:#f2f5f9;--surface:#fff}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-family:'DM Sans',system-ui,sans-serif;font-size:16px;line-height:1.5}button,input,select{font:inherit}button,a,select{touch-action:manipulation}a{color:var(--blue);text-decoration:none}a:hover{text-decoration:underline}button{cursor:pointer}button:focus-visible,a:focus-visible,select:focus-visible,input:focus-visible{outline:3px solid var(--blue);outline-offset:3px}header{background:var(--navy);color:white;display:flex;align-items:center;gap:24px;padding:20px 5%;border-bottom:3px solid var(--mint)}header a{color:white;font-size:14px}header a:last-child{margin-left:auto}.brand{font-family:Manrope,system-ui;font-size:23px;letter-spacing:-1px;font-weight:800;display:flex;align-items:center;gap:12px}.mark{display:inline-flex;justify-content:center;align-items:center;width:34px;height:34px;border:2px solid var(--mint);border-radius:8px;color:var(--mint);font-size:17px;letter-spacing:-3px;padding-right:3px}.header-context{font-size:12px;color:#b6c4d6;letter-spacing:2px}main{max-width:1370px;margin:auto;padding:38px 5% 60px}.heading{display:flex;align-items:center;justify-content:space-between;gap:25px}.eyebrow{font-weight:700;letter-spacing:1.5px;font-size:12px;color:var(--muted)}h1{font:800 clamp(30px,4vw,44px)/1.15 Manrope,system-ui;margin:8px 0;letter-spacing:-1.5px}.heading p{color:var(--muted);margin:10px 0}.snapshot{background:#e6edf6;border:1px solid #d6e1ef;padding:12px 18px;border-radius:10px;font-size:12px;font-weight:700;letter-spacing:.6px}.snapshot span{font-size:13px;font-weight:400;letter-spacing:0}.tabs{display:flex;gap:28px;border-bottom:1px solid var(--line);margin:28px 0 22px;overflow-x:auto}.tabs button{background:none;border:0;border-bottom:3px solid transparent;padding:13px 2px;font-weight:600;color:var(--muted);white-space:nowrap}.tabs button.active{border-color:var(--blue);color:var(--blue)}.controls{display:flex;align-items:center;gap:18px;margin-bottom:22px;flex-wrap:wrap}.controls label{display:flex;align-items:center;gap:12px;font-weight:600}select,input{border:1px solid #ccd7e5;background:white;color:var(--text);border-radius:8px;padding:10px 14px;min-height:44px}select{min-width:170px}.course-tag{font-size:14px;border-left:1px solid var(--line);padding-left:20px;color:var(--muted)}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-bottom:24px}.stats article{background:white;border:1px solid var(--line);padding:22px 24px;border-radius:12px}.stats article:first-child{background:var(--navy);color:white;border-color:var(--navy)}.stats span{font-size:12px;letter-spacing:1px;font-weight:700}.stats strong{display:block;font:800 clamp(25px,3vw,36px)/1.3 Manrope,system-ui;margin:8px 0;letter-spacing:-1px}.stats small{font-size:14px;color:var(--muted)}.stats article:first-child small{color:#c6d3e4}.panel{background:white;border:1px solid var(--line);border-radius:12px;padding:25px;margin-bottom:22px}.panel-heading{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:18px}h2{font:700 23px/1.3 Manrope,system-ui;margin:5px 0;letter-spacing:-.5px}h3{font:700 18px/1.4 Manrope,system-ui;margin:0 0 12px}.legend{font-size:14px;color:var(--muted)}.preview-plot{height:200px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);background:repeating-linear-gradient(white,white 49px,#e8eef6 50px)}.preview-plot span{font:800 35px Manrope}.preview-plot small{font:14px 'DM Sans';color:var(--muted)}.preview-line{width:55%;height:80px;border-bottom:3px solid var(--blue);transform:rotate(-8deg);margin-right:20px}.muted{color:var(--muted);font-size:14px}footer{padding:24px 5%;border-top:1px solid var(--line);color:var(--muted);font-size:13px;text-align:center}@media(max-width:750px){header{padding:16px 5%;gap:12px}.header-context{display:none}.heading{align-items:flex-start;flex-direction:column}.snapshot{padding:8px 12px}.stats{grid-template-columns:1fr}.stats article{padding:18px 20px}.tabs{gap:22px;margin-top:20px}main{padding-top:25px}.panel{padding:18px}.controls{gap:12px}.course-tag{border:0;padding-left:0}.preview-line{width:35%}}
