:root{--forest:#043f2b;--accent:#527fa3;--bad:#a03937;--paper:#f5f4ee;--card:#fffefa;font-family:'Plus Jakarta Sans',Arial,sans-serif}
:root[data-theme=dark]{--forest:#a7d4b6;--accent:#9bc4e4;--paper:#15261d;--card:#20372a;--bad:#ffb5ac}
h1,h2,.serif{font-family:'Source Serif 4',Georgia,serif}.brand-crop{display:block;position:relative;width:290px;height:75px;overflow:hidden;flex-shrink:0;background:#fff;border-radius:5px}.brand-crop img{position:absolute;width:1032px;height:688px;max-width:none;left:-709px;top:-88px}.identity{font-size:12px;color:var(--muted);padding:10px 5%;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}header{gap:22px;padding-top:12px;padding-bottom:12px}.auth-layout{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:start}.auth-layout h1{font-size:48px}.form-panel{background:var(--card);border:1px solid var(--line);padding:30px;border-radius:8px}.form-panel h2{font-size:29px}.field{margin:15px 0}.field label{display:block;font-size:13px;margin-bottom:5px}.field input,.field select,select{width:100%;padding:12px;border:1px solid var(--line);background:var(--card);color:var(--ink);border-radius:5px}.form-panel .primary{width:100%;margin-top:12px}.form-hint{font-size:12px;color:var(--muted)}.status-panel{max-width:760px;padding:36px;background:var(--card);border:1px solid var(--line)}.status-panel h1{font-size:40px}.status-label{font-size:12px;font-weight:700;text-transform:uppercase;color:var(--forest);letter-spacing:1px}.catalog{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.course{padding:26px;background:var(--card);border:1px solid var(--line);border-radius:8px}.course:first-child{grid-column:1/-1;display:grid;grid-template-columns:1fr auto;align-items:center;background:var(--soft)}.course h2{font-size:30px;margin:10px 0}.course p{color:var(--muted);font-size:14px}.course .actions{margin-bottom:0}.course-status{font-size:12px;color:var(--muted)}.tematic-list{margin-top:40px}.tematic-list li{display:flex;justify-content:space-between;gap:12px}.contact{display:inline-block;font-size:14px;margin-top:15px}.auth-actions{display:flex;gap:10px;align-items:center}.account-name{font-size:12px;color:var(--muted);max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}#alert{margin:18px auto 0;max-width:1100px;border:1px solid var(--bad);background:var(--badbg);color:var(--bad);padding:14px 20px;border-radius:5px}#alert.success{border-color:var(--forest);background:var(--soft);color:var(--forest)}.admin-toolbar{display:flex;align-items:end;gap:18px;flex-wrap:wrap;margin-bottom:24px}.admin-toolbar label{font-size:13px}.admin-toolbar select{min-width:200px}.admin-person{border:1px solid var(--line);background:var(--card);padding:24px;margin:18px 0}.admin-person h2{font-size:25px;letter-spacing:-.4px}.admin-person .actions{margin:15px 0}.grants{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.grants select{flex:1;min-width:180px}.danger{color:var(--bad)}.check-list{padding-left:20px}.badge-count{background:var(--soft);padding:3px 7px;font-size:12px;border-radius:3px}.section-gap{margin-top:45px}.title-block{max-width:800px}.stat-inline{display:flex;gap:30px;flex-wrap:wrap;border-block:1px solid var(--line);padding:16px 0;margin:25px 0}.stat-inline strong{font-size:22px;margin-right:5px}.button-link{display:inline-block;text-decoration:none;padding:10px 18px;border:1px solid var(--line);border-radius:7px;font-size:14px;font-weight:600}.button-link:hover{background:var(--soft)}.wordmark{font-size:38px;font-weight:700;color:var(--forest);letter-spacing:-1px}.steps{padding-left:21px}.steps li{padding:7px 0}.question-box{margin-top:20px}.question-box fieldset:disabled .option{cursor:default}.public-note{font-size:13px;color:var(--muted);border-top:1px solid var(--line);padding-top:18px}.subnav{display:flex;gap:15px;flex-wrap:wrap;margin-bottom:25px}.result-score{font-size:76px}.actions a{align-self:center}.source-note{font-size:12px;color:var(--muted)}
@media(max-width:850px){.auth-layout{grid-template-columns:1fr;gap:30px}.auth-layout h1{font-size:38px}.catalog{grid-template-columns:1fr}.course:first-child{display:block}.brand-crop{width:240px;height:62px}.brand-crop img{width:858px;height:572px;left:-589px;top:-73px}header nav{gap:15px}.identity span{display:block}.form-panel{padding:22px}.admin-person{padding:18px}.status-panel{padding:25px}}
