@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@400;500;600;700&family=Inter:wght@400;500;600;700&display=swap');
:root {color-scheme:dark;--bg:#0b1119;--surface:#121c28;--surface2:#182534;--border:#314153;--text:#e4e6e8;--muted:#adb8c3;--gold:#dec18a;--gold-strong:#f0d3a1;--success:#95d4b1;--error:#f3b4a8;--sans:'Inter',system-ui,-apple-system,'Segoe UI',sans-serif;--serif:'Cormorant Garamond',Georgia,serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--text);background:radial-gradient(ellipse at 65% -15%,#192a3c 0,transparent 40%),var(--bg);font:16px/1.7 var(--sans)}a{color:var(--gold);text-underline-offset:3px}a:hover{color:var(--gold-strong)}h1,h2,h3{font-family:var(--serif);line-height:1.13;font-weight:600;letter-spacing:-.015em;margin:.4em 0}h1{font-size:clamp(2.7rem,6vw,4.6rem)}h2{font-size:clamp(1.9rem,3.2vw,2.65rem)}h3{font-size:1.6rem}p{margin:.75rem 0 1.1rem}.wide{max-width:1160px;margin:0 auto;padding:0 24px}.site-header{border-bottom:1px solid var(--border);background:#0c1420d9}.site-header .wide{min-height:82px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:inline-flex;flex-direction:column;gap:0;color:var(--gold);text-decoration:none;font-family:var(--serif);font-size:1.55rem;font-weight:700;letter-spacing:.1em}.brand span{font:400 .68rem/1.3 var(--sans);color:var(--muted);letter-spacing:.04em}.site-header nav{display:flex;align-items:center;gap:25px;flex-wrap:wrap}.site-header nav a{font-size:.82rem;color:var(--text);text-decoration:none}.site-header nav a:hover,.site-header nav a[aria-current]{color:var(--gold)}main.wide{padding-top:38px;padding-bottom:80px;min-height:76vh}.site-footer{border-top:1px solid var(--border);background:#0a1018;padding:30px 0;color:var(--muted);font-size:.8rem}.site-footer p{margin:.3em 0}.skip-link{position:absolute;left:-9999px;top:0;background:var(--gold);color:#121212;padding:10px;z-index:999}.skip-link:focus{left:12px}.eyebrow{font:600 .73rem/1.5 var(--sans);text-transform:uppercase;letter-spacing:.17em;color:var(--gold);margin:0 0 10px}.muted{color:var(--muted)}.small{font-size:.8rem}.lead{font-size:1.22rem;color:#c8d1d9;max-width:760px}.hero{padding:70px clamp(24px,5vw,66px) 64px;border:1px solid #3c4650;border-radius:9px;background:linear-gradient(115deg,#122131d9 15%,#121b25d9 65%),radial-gradient(circle at 90% 15%,#403b2c,transparent 45%);position:relative;overflow:hidden}.hero:after{content:'✦';position:absolute;right:6%;top:0;font-size:18rem;line-height:1;color:#d6ba7d0d;pointer-events:none}.hero h1{margin:.25em 0 .35em;line-height:1.05;max-width:970px}.hero h1 em{font-weight:400;color:var(--gold);font-style:normal}.hero-lead{font:400 clamp(1.2rem,2vw,1.5rem)/1.45 var(--serif);max-width:750px}.hero-claim{max-width:660px;color:var(--muted);font-size:.98rem}.hero-claim strong{color:var(--gold)}.hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin-top:26px}.button{display:inline-block;appearance:none;cursor:pointer;background:var(--gold);border:1px solid var(--gold);border-radius:5px;color:#14202a!important;text-decoration:none;font:700 .84rem/1.25 var(--sans);padding:13px 19px;max-width:100%;text-align:center}.button:hover,.button:focus-visible{background:var(--gold-strong);border-color:var(--gold-strong)}.button-ghost{background:transparent;color:var(--gold)!important}.button-ghost:hover{background:#2d3440;color:#fff!important}.course-section,.intro{margin-top:60px}.section-heading{display:flex;justify-content:space-between;gap:24px;align-items:end}.section-heading>p{max-width:340px}.stage-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.stage-card{border:1px solid var(--border);background:linear-gradient(145deg,#182330,#111b26);padding:25px;border-radius:7px;text-decoration:none;color:var(--text);min-height:215px;display:flex;flex-direction:column;transition:border-color .2s,transform .2s}.stage-card:hover{border-color:var(--gold);transform:translateY(-2px);color:var(--text)}.stage-card-top{display:flex;justify-content:space-between;gap:14px;align-items:center}.stage-number{font-size:.74rem;letter-spacing:.16em;color:var(--gold)}.status{font-size:.68rem;font-weight:700;letter-spacing:.07em;padding:4px 8px;border-radius:3px;background:#303b45;color:#c8d4e1;display:inline-block;white-space:nowrap}.status-done{color:#b4eed0;background:#1d4438}.status-wrong{color:#ffccbb;background:#592b28}.stage-card h3{font-size:1.85rem}.stage-card p{font-size:.9rem;color:var(--muted);margin:0}.stage-locked{opacity:.7}.arrow-link{margin-top:auto;padding-top:22px;font-size:.83rem;color:var(--gold)}.progress-panel,.exam-card,.finish-panel,.notice{padding:24px;border:1px solid var(--border);border-radius:6px;background:#142030}.notice{padding:16px 20px;margin:20px 0;color:var(--text);line-height:1.6}.notice.success{border-color:#345b4c;background:#142d28;color:#c9edd9}.progress-track{max-width:700px;background:#293541;height:9px;overflow:hidden;border-radius:9px;margin:20px 0}.progress-track span{display:block;background:var(--gold);height:100%;transition:width .2s}.prose{max-width:850px;font-size:1.035rem;line-height:1.78}.prose.compact{max-width:970px}.prose p,.prose ul,.prose ol{margin:.85em 0 1.25em}.prose h2{margin:1.6em 0 .5em;border-bottom:1px solid var(--border);padding-bottom:.2em}.prose h3{margin:1.4em 0 .5em}.prose h4{font:700 1.1rem var(--sans);margin:1.3em 0}.prose blockquote{border-left:3px solid var(--gold);padding:12px 22px;background:var(--surface);margin:23px 0}.prose blockquote p{margin:.4em 0}.prose strong{color:#f4e3bf}.prose ul,.prose ol{padding-left:28px}.prose li{padding-left:6px;margin:.5em 0}.prose code{padding:2px 5px;background:#26394c}.prose details{border:1px solid var(--border);border-radius:5px;padding:15px 20px;margin:28px 0;background:var(--surface)}.prose details summary{cursor:pointer;color:var(--gold);font-weight:700}.prose a{overflow-wrap:anywhere}.breadcrumbs{font-size:.77rem;color:var(--muted);margin:4px 0 25px}.breadcrumbs a{color:var(--muted)}.lesson-list{display:grid;gap:13px;margin-top:30px}.lesson-item{border:1px solid var(--border);background:var(--surface);border-radius:6px;padding:24px;text-decoration:none;color:var(--text);display:flex;justify-content:space-between;gap:20px;align-items:center}.lesson-item:hover{border-color:var(--gold);color:var(--text)}.lesson-item h2{font-size:1.85rem;margin:.15em 0}.lesson-item p{color:var(--muted);margin:0}.exam-card{margin-top:35px}.exam-card h2{margin:0}.lesson-layout{display:grid;grid-template-columns:minmax(0,1fr) 240px;gap:55px;align-items:start}.lesson-content{max-width:100%;min-width:0}.lesson-content>h1:first-child{font-size:clamp(2.4rem,4.6vw,4rem);margin:15px 0}.lesson-content>h1:first-child+p{font-size:1.25rem;color:var(--gold)}.lesson-content>h1:first-child+p+p{font-size:.86rem;color:var(--muted)}.sidebar .sticky{position:sticky;top:20px;border-left:1px solid var(--border);padding-left:20px}.sidebar h3{font-size:1.35rem}.side-link{display:block;padding:10px;border-left:2px solid transparent;text-decoration:none;color:var(--muted);font-size:.77rem}.side-link.current{border-color:var(--gold);color:var(--gold);background:var(--surface)}.side-link small{display:block;color:#c2cbd5;font-size:.78rem;line-height:1.5}.side-exam{display:block;padding:12px 0;text-decoration:none}.finish-panel{margin-top:45px}.finish-panel h2{margin:0 0 12px;border:0;padding:0}.lesson-nav{display:flex;justify-content:space-between;gap:24px;margin-top:30px;font-size:.85rem}.exam-form{max-width:890px}.question{border:1px solid var(--border);border-radius:6px;background:var(--surface);margin:22px 0;padding:25px;min-width:0}.question legend{display:contents;font-size:1.07rem;font-weight:600}.question-index{display:block;font:.69rem var(--sans);letter-spacing:.12em;color:var(--gold);margin-bottom:9px}.answers{display:grid;gap:11px;margin-top:16px}.answer{cursor:pointer;display:flex;gap:12px;padding:12px 14px;border-radius:4px;border:1px solid #344353;background:#192837}.answer:hover,.answer:focus-within{border-color:var(--gold)}.answer input{accent-color:#ddc186;flex-shrink:0;margin-top:5px}.exam-submit{position:sticky;bottom:0;background:#101c2bf5;border:1px solid var(--border);padding:18px;margin-top:30px;border-radius:5px}.exam-submit p{font-size:.8rem;color:var(--muted);margin:0 0 10px}.result-hero{display:flex;gap:28px;align-items:center;background:var(--surface);padding:28px;border-radius:7px;border:1px solid var(--border)}.result-pass{border-color:#3e6855}.result-fail{border-color:#745247}.result-number{font:600 clamp(3.2rem,8vw,6rem)/1 var(--serif);color:var(--gold)}.result-hero h2{font-size:1.85rem}.review-item{border:1px solid var(--border);background:var(--surface);border-radius:5px;margin:13px 0}.review-item summary{cursor:pointer;display:flex;align-items:center;gap:12px;padding:14px 18px;list-style:none}.review-item summary::-webkit-details-marker{display:none}.review-body{padding:0 20px 17px 20px;border-top:1px solid var(--border);font-size:.9rem}.review-body p{margin:.8rem 0}.prose table{border-collapse:collapse;width:100%}.prose th,.prose td{padding:8px 10px;border:1px solid var(--border)}
@media (max-width:790px){.site-header .wide{padding-top:12px;padding-bottom:12px;display:block}.site-header nav{gap:16px;margin-top:10px}.hero{padding:46px 24px}.stage-grid{grid-template-columns:1fr}.section-heading{display:block}.lesson-layout{grid-template-columns:1fr}.sidebar{display:none}.lesson-item{align-items:start;flex-direction:column}.wide{padding-left:16px;padding-right:16px}.question{padding:18px}.result-hero{display:block}}
@media print{.site-header,.site-footer,.sidebar,.hero-actions,.exam-submit,.finish-panel form{display:none!important}body{color:#111;background:#fff}.prose{max-width:100%}.prose details{border:1px solid #aaa}}
