:root{--blue:#073b74;--blue2:#0b5da8;--red:#d8232a;--ink:#182230;--muted:#667085;--bg:#f4f7fb;--line:#dce3ec;--white:#fff;--green:#087443;--radius:14px}*{box-sizing:border-box}body{margin:0;font:16px/1.55 system-ui,-apple-system,"Segoe UI",sans-serif;color:var(--ink);background:var(--bg)}a{color:var(--blue2);text-decoration:none}h1,h2,h3{line-height:1.15;margin-top:0}.container{width:min(1140px,calc(100% - 32px));margin-inline:auto}.topbar{background:#fff;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:10}.nav{min-height:76px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;gap:10px;color:var(--ink)}.brand-mark{display:grid;place-items:center;width:44px;height:44px;color:#fff;background:linear-gradient(135deg,var(--blue),var(--blue2));border-radius:12px;font-weight:800}.brand small{display:block;color:var(--red);font-weight:700;letter-spacing:.08em;text-transform:uppercase}.nav nav{display:flex;align-items:center;gap:18px}.button,button{display:inline-block;border:0;border-radius:9px;background:var(--blue2);color:#fff;padding:11px 18px;font:inherit;font-weight:700;cursor:pointer}.button.secondary{background:#fff;color:var(--blue);border:1px solid var(--blue)}.button.danger{background:var(--red)}.button.small{padding:8px 13px}.link{background:none;color:var(--blue2);padding:0}.inline{display:inline}.hero{padding:76px 0;background:linear-gradient(120deg,#062d58,#0b5da8);color:#fff}.hero-grid{display:grid;grid-template-columns:1.35fr .65fr;gap:48px;align-items:center}.hero h1{font-size:clamp(2.3rem,5vw,4.5rem);margin-bottom:18px}.hero p{font-size:1.2rem;max-width:720px;color:#deebf8}.hero-card{background:#ffffff14;border:1px solid #ffffff38;border-radius:20px;padding:26px}.section{padding:56px 0}.section-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:24px}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:24px;box-shadow:0 8px 24px #102a4308}.card h3{margin:10px 0}.meta{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0}.badge{display:inline-block;padding:4px 9px;border-radius:99px;background:#e8f2fc;color:var(--blue);font-size:.82rem;font-weight:700}.badge.red{background:#fdecec;color:#9f191e}.badge.green{background:#e6f6ee;color:var(--green)}.muted{color:var(--muted)}.panel{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:28px;margin:24px auto}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.field{display:flex;flex-direction:column;gap:6px}.field.full{grid-column:1/-1}label{font-weight:700}input,select,textarea{width:100%;padding:11px 12px;border:1px solid #bfc9d7;border-radius:8px;font:inherit;background:#fff}textarea{min-height:120px}.alert{margin-top:20px;padding:15px 18px;border-radius:10px}.alert.success{background:#e5f7ee;color:#075a35}.alert.error{background:#fdebec;color:#8d171b}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;background:#fff}th,td{text-align:left;padding:12px;border-bottom:1px solid var(--line);vertical-align:top}th{color:var(--muted);font-size:.84rem;text-transform:uppercase}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.stat{background:#fff;padding:22px;border-radius:12px;border:1px solid var(--line)}.stat strong{display:block;font-size:2rem;color:var(--blue)}.actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.course-header{padding:44px 0;background:#eaf2fa}.course-layout{display:grid;grid-template-columns:1fr 340px;gap:28px;align-items:start}.sticky{position:sticky;top:100px}footer{background:#071d34;color:#d8e3ef;margin-top:60px;padding:42px 0}.footer-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px}footer a{color:#fff}.auth{max-width:620px;margin:48px auto}.empty{text-align:center;padding:48px;color:var(--muted)}@media(max-width:800px){.hero-grid,.course-layout,.grid,.form-grid,.footer-grid,.stats{grid-template-columns:1fr}.nav{align-items:flex-start;padding:14px 0}.nav nav{flex-wrap:wrap;justify-content:flex-end}.sticky{position:static}.field.full{grid-column:auto}.hero{padding:48px 0}}
