@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@500;600;700;800&display=swap";.format-row button:disabled{opacity:.55;cursor:wait}.path-list{gap:14px;display:grid}.path-download{border-top:1px solid var(--line);padding-top:13px}.path-download>span{margin-bottom:9px;font-size:.82rem;font-weight:650;line-height:1.35;display:block}.path-download .format-row{margin-top:0}.catalog-message{border:1px solid var(--line);background:#fff;border-radius:12px;margin-bottom:20px;padding:18px}.course-package-action{flex-wrap:wrap;align-items:center;gap:10px;margin:18px 0;display:flex}.course-package-action button{color:#1257a8;cursor:pointer;background:#edf5ff;border:1px solid #b6ccef;border-radius:9px;align-items:center;gap:7px;padding:10px 12px;font:650 13px DM Sans,sans-serif;display:inline-flex}.course-package-action button:disabled{opacity:.55;cursor:wait}.course-package-action span{color:#708096;font-size:12px}:root{color:#17253d;font-synthesis:none;--navy:#10233f;--blue:#1267d8;--cyan:#15b8d6;--line:#dce4ef;background:#f7f9fc;font-family:DM Sans,sans-serif}*{box-sizing:border-box}body{margin:0}a{color:inherit;text-decoration:none}.site-shell{min-height:100vh}.nav{border-bottom:1px solid var(--line);background:#fff;justify-content:space-between;align-items:center;height:76px;padding:0 max(5vw,28px);display:flex}.brand{align-items:center;gap:11px;font-family:Manrope;font-weight:800;display:flex}.brand-mark{color:#fff;background:linear-gradient(135deg,var(--blue),var(--cyan));border-radius:11px;place-items:center;width:38px;height:38px;display:grid}.nav nav{gap:30px;font-size:14px;font-weight:600;display:flex}.hero{background:radial-gradient(circle at 84% 18%,#d9f3fb 0,#0000 27%),linear-gradient(145deg,#f5f9ff,#fff);padding:88px max(8vw,28px) 76px}.eyebrow,.overline{color:#087590;text-transform:uppercase;letter-spacing:.13em;font-size:12px;font-weight:700}.eyebrow{align-items:center;gap:7px;display:flex}.hero h1{letter-spacing:-.055em;color:var(--navy);margin:18px 0;font-family:Manrope;font-size:clamp(48px,7vw,84px);line-height:.98}.hero h1 span{color:var(--blue)}.hero>p{color:#52647d;max-width:670px;font-size:19px;line-height:1.65}.search-wrap{background:#fff;border:1px solid #ced9e8;border-radius:16px;align-items:center;gap:14px;max-width:720px;height:62px;margin-top:34px;padding:0 18px;display:flex;box-shadow:0 18px 50px #163d7220}.search-wrap input{font:inherit;border:0;outline:0;flex:1;font-size:16px}.search-wrap kbd{color:#65758b;background:#eef3f8;border-radius:7px;padding:6px 9px}.hero-meta{color:#6b788a;flex-wrap:wrap;gap:30px;margin-top:31px;font-size:14px;display:flex}.hero-meta strong{color:var(--navy)}.catalog{padding:76px max(5vw,28px)}.section-heading{justify-content:space-between;align-items:end;margin-bottom:28px;display:flex}.section-heading h2{color:var(--navy);margin:7px 0 0;font:700 34px Manrope}.section-heading>p{color:#718096}.course-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.course-card{border:1px solid var(--line);background:#fff;border-radius:18px;padding:24px;transition:all .2s;box-shadow:0 8px 28px #1d3d6710}.course-card:hover{transform:translateY(-2px);box-shadow:0 15px 34px #1d3d6718}.course-top{justify-content:space-between;display:flex}.course-code{color:var(--blue);background:#eaf3ff;border-radius:8px;padding:7px 9px;font:800 13px Manrope}.fresh-dot{color:#14835c;font-size:12px}.fresh-dot:before{content:"";background:#21b77c;border-radius:50%;width:7px;height:7px;margin-right:6px;display:inline-block}.course-card h3{margin:20px 0 8px;font:700 20px Manrope}.course-card>p{color:#708096;font-size:14px}.format-row{gap:8px;margin-top:22px;display:flex}.format-row button{color:#304761;cursor:pointer;background:#f9fbfd;border:1px solid #d8e2ee;border-radius:9px;align-items:center;gap:6px;padding:9px 10px;font-weight:600;display:flex}footer{border-top:1px solid var(--line);color:#6e7b8d;align-items:center;gap:24px;padding:30px max(5vw,28px);font-size:13px;display:flex}footer span{color:var(--navy);font-weight:800}footer p{flex:1}@media (width<=760px){.nav nav{display:none}.hero{padding-top:58px}.course-grid{grid-template-columns:1fr}.section-heading{align-items:start}.section-heading>p{display:none}.format-row{flex-wrap:wrap}footer{flex-direction:column;align-items:flex-start}.hero-meta{gap:16px}}.admin-shell{min-height:100vh;padding:0 24px 56px}.admin-topbar{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;max-width:1180px;height:68px;margin:0 auto;display:flex}.admin-brand{align-items:center;gap:10px;font-weight:800;display:flex}.admin-brand>span{color:#fff;background:linear-gradient(135deg,var(--blue),var(--cyan));border-radius:9px;place-items:center;width:34px;height:34px;display:grid}.admin-topbar>div{align-items:center;gap:16px;font-size:13px;display:flex}.admin-topbar button,.analytics button,.analytics input,.analytics select{font:inherit;border:1px solid var(--line);color:#263c56;background:#fff;border-radius:7px;padding:8px 10px}.admin-topbar button,.analytics button{cursor:pointer;align-items:center;gap:6px;display:inline-flex}.admin-shell .analytics{max-width:1180px;margin:28px auto}.admin-shell .analytics .page-intro{justify-content:space-between;align-items:end;gap:20px;display:flex}.admin-shell .analytics .page-intro h2{margin:6px 0;font:800 27px Manrope}.admin-shell .analytics .page-intro p:not(.overline){color:#718096;margin:0;font-size:13px}.admin-shell .analytics .view-stack{gap:16px;display:grid}.admin-shell .analytics .panel{border:1px solid var(--line);background:#fff;border-radius:14px;padding:22px}.analytics-controls{flex-wrap:wrap;align-items:end;gap:16px;display:flex}.analytics label{flex-direction:column;gap:6px;font-size:13px;display:inline-flex}.analytics-note{color:#607087;font-size:12px;line-height:1.6}.analytics-totals{flex-wrap:wrap;gap:36px;font-size:13px;display:flex}.analytics-totals strong{color:#17253d;margin-bottom:5px;font-size:30px;display:block}.download-chart{align-items:end;gap:4px;height:220px;padding:24px 0 0;display:flex}.download-bar-wrap{flex-direction:column;flex:1;justify-content:end;align-items:center;gap:7px;min-width:0;height:100%;display:flex}.download-bar{background:linear-gradient(#19b9d6,#1267d8);border-radius:4px 4px 1px 1px;width:100%;max-width:18px;min-height:3px}.download-bar-wrap small{color:#91a0b0;white-space:nowrap;font-size:9px;transform:rotate(-45deg)}.analytics-table{max-height:520px;margin:16px 0;overflow:auto}.analytics table{border-collapse:collapse;text-align:left;width:100%;font-size:13px}.analytics th,.analytics td{border-bottom:1px solid var(--line);padding:12px}.analytics th{white-space:nowrap;background:#f5f8fc;position:sticky;top:0}.analytics summary{cursor:pointer;margin-top:20px}.analytics button:disabled{opacity:.5;cursor:default}.admin-login-page{background:radial-gradient(circle at 20% 20%,#d9f3fb,#0000 25%),linear-gradient(145deg,#edf4ff,#f8fafc);place-items:center;min-height:100vh;padding:24px;display:grid}.admin-login-card{border:1px solid var(--line);background:#fff;border-radius:20px;width:min(430px,100%);padding:34px;box-shadow:0 24px 80px #173b6a20}.admin-login-card h1{margin:24px 0 8px;font:800 25px Manrope}.admin-login-card>p{color:#708096;margin:0 0 22px;font-size:14px}.admin-login-card form{gap:14px;display:grid}.admin-login-card label{gap:7px;font-size:13px;font-weight:650;display:grid}.admin-login-card input{height:42px;font:inherit;border:1px solid #ccd8e6;border-radius:8px;padding:0 11px}.admin-login-lock{color:var(--blue);margin-top:28px}.admin-primary{background:var(--blue);color:#fff;cursor:pointer;border:0;border-radius:8px;height:44px;font:700 14px DM Sans,sans-serif}.admin-primary:disabled{opacity:.65;cursor:wait}.admin-login-foot{color:#8190a2;margin-top:24px;font-size:11px;display:block}.admin-login-error,.admin-error{color:#a13b48;font-size:13px}.admin-wait{color:#52647a;place-items:center;min-height:100vh;display:grid}@media (width<=760px){.admin-shell{padding:0 14px 36px}.admin-topbar>div{gap:8px}.analytics-controls{align-items:stretch}.analytics-controls label{flex:1;min-width:135px}.admin-shell .analytics .panel{padding:17px}.analytics-totals{gap:22px}.admin-shell .analytics .page-intro{flex-direction:column;align-items:start}}.admin-brand div{display:grid}.admin-brand small{color:#7d8ba0;font-size:11px;font-weight:500}
