@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');
.beginner-layout{display:grid;grid-template-columns:minmax(0,2fr) minmax(260px,1fr);gap:28px;padding-top:0}.beginner-banner{display:flex;justify-content:space-between;align-items:center;gap:20px;background:#26311f;border:1px solid #526443;padding:24px;border-radius:10px;margin-bottom:28px}.beginner-banner h3{margin-bottom:8px}.beginner-banner p{font-size:14px}.beginner-banner .button{flex-shrink:0}.workspace-map,.example-chart,.sample-ticket{padding:20px;background:#11170f;border:1px solid #435339;border-radius:8px;margin:22px 0}.sample-bar{display:flex;justify-content:space-between;gap:15px;flex-wrap:wrap;font-size:14px;padding-bottom:16px;border-bottom:1px solid #35422d}.sample-bar span{color:#b3c3a6}.map-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:20px 0}.map-grid button,.quick-check button{padding:15px;border:1px solid #637951;border-radius:6px;background:#283420;font-size:15px;text-align:left;min-height:44px}.map-grid button:hover,.quick-check button:hover{background:#3b4d2e}.map-grid .wide{grid-column:1/-1;min-height:100px}.tool-explanation{border-left:3px solid #c0eb83;padding:12px 16px;font-size:15px;color:#d0dfc2;min-height:110px}.quick-check{display:flex;gap:12px;flex-wrap:wrap}.quick-check button{flex:1;text-align:center}.quiz-feedback:not(:empty){padding:16px;background:#283420;color:#def0ce}.lesson-content>.badge:not(:first-child){margin-top:35px}.lesson-content>.badge+h2{margin-top:18px}.route-list{padding-left:24px;color:#c4d0bb}.route-list li{margin:14px 0}.glossary details,.answer{border-bottom:1px solid #435039;padding:14px 0}.glossary summary,.answer summary,.example-chart summary{cursor:pointer;font-size:15px;font-weight:600;min-height:36px;color:#d7e9c7}.glossary p{font-size:14px;margin-top:12px}.guided-practice{border-top:1px solid #3b4833;margin-top:30px;padding-top:25px}.guided-practice h2{margin-top:16px}.guided-practice ol{padding-left:24px;color:#c9d4c1}.guided-practice li{padding-left:5px;margin:12px 0}.guided-practice .answer p{color:#cce4b7}.example-chart svg{width:100%;display:block;margin:15px 0}.sample-level[hidden]{display:none}.example-chart p,.sample-ticket>p{font-size:14px}.ticket-math{padding:18px;background:#26371c;color:#d3efbb;border-radius:5px;font-weight:600}.sample-ticket dd{overflow-wrap:anywhere;max-width:220px}.table-wrap caption{text-align:left;font-size:14px;color:#c2d0b8;padding:10px 0}.close{min-width:44px;min-height:44px}.beginner-layout .panel{margin-bottom:24px}@media(max-width:760px){.beginner-layout{grid-template-columns:1fr}.beginner-banner{display:block}.beginner-banner .button{margin-top:18px}nav{gap:10px!important;font-size:13px!important}.sample-ticket .timing{grid-template-columns:1fr}.sample-ticket dd{max-width:none;margin-bottom:12px}.sample-bar{font-size:13px}.workspace-map,.example-chart,.sample-ticket{padding:15px}.map-grid button{font-size:14px}.quick-check{flex-direction:column}}
:root{color-scheme:dark;--bg:#101311;--surface:#191d19;--line:#343b33;--text:#f2f4ed;--muted:#abb4a7;--lime:#c0eb83;--ink:#172013}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font:16px/1.65 'DM Sans',sans-serif}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:Manrope,sans-serif;line-height:1.12;letter-spacing:-.045em}h1{font-size:clamp(3rem,5.4vw,5.3rem);font-weight:500}h2{font-size:clamp(2rem,3vw,3rem);font-weight:500}h3{font-size:1.35rem;font-weight:600;letter-spacing:-.025em}p{color:var(--muted)}em{font-style:normal;color:var(--lime)}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button{color:inherit}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--lime);outline-offset:5px}header{max-width:1440px;margin:auto;padding:28px 5%;display:flex;align-items:center;justify-content:space-between;gap:25px;border-bottom:1px solid var(--line)}.brand{display:flex;gap:12px;align-items:center;font-weight:800;font-size:15px;letter-spacing:.07em;line-height:1.2}.brand small{display:block;color:var(--muted);font-size:11px;letter-spacing:.27em;margin-top:5px}.mark{display:flex;align-items:center;justify-content:center;background:var(--lime);color:var(--ink);font-size:29px;width:43px;height:43px;border-radius:11px;letter-spacing:-.2em}.mark span{font-size:22px;margin-left:-2px}nav{display:flex;gap:30px;color:var(--muted);font-size:14px}nav a[aria-current],nav a:hover{color:var(--lime)}.button{background:var(--lime);border:1px solid var(--lime);border-radius:6px;display:inline-flex;align-items:center;justify-content:center;gap:24px;padding:15px 22px;color:var(--ink);font-weight:700;font-size:14px;line-height:1.4;transition:background .15s}.button:hover{background:#d4f7a7}.button.secondary{background:transparent;border-color:#515b4c;color:var(--text)}.button.secondary:hover{background:#252d23}.button.small{padding:12px 17px}.button span{font-size:20px}.eyebrow{font-size:12px;font-weight:700;letter-spacing:.16em;color:var(--lime);margin-bottom:20px;line-height:1.5}.hero{display:grid;grid-template-columns:1.25fr 1fr;gap:7%;padding-top:65px;padding-bottom:60px;align-items:center}.hero-copy>p:not(.eyebrow){max-width:490px;margin:25px 0 30px;font-size:17px}.actions{display:flex;gap:12px;flex-wrap:wrap}.hero-note{font-size:12px;color:var(--muted);margin-top:45px;display:flex;align-items:center;gap:12px}.hero-note span{padding:6px 10px;border:1px solid var(--line);border-radius:50%;color:var(--lime)}.hero-note b{color:#65705e}.hero-visual{background:#20271e;border:1px solid #3d4935;border-radius:14px;overflow:hidden;position:relative;box-shadow:0 20px 80px #0005}.visual-top{display:flex;justify-content:space-between;padding:18px 22px;color:#b6c4a9;font-size:10px;letter-spacing:.14em}.hero-visual video{width:100%;height:350px;display:block;background:#080d19;object-fit:contain}.visual-bottom{padding:25px;display:flex;align-items:center;justify-content:space-between}.visual-bottom small{font-size:10px;letter-spacing:.1em;color:var(--lime)}.visual-bottom h3{margin-top:10px;font-size:24px}.circle{border:1px solid #647455;background:transparent;border-radius:50%;width:48px;height:48px;font-size:24px}section{max-width:1440px;padding:80px 5%;margin:auto}.ribbon{padding:23px 5%;display:flex;justify-content:space-between;gap:16px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-size:13px;color:var(--muted)}.ribbon span:before{content:'✳';color:var(--lime);margin-right:15px}.section-head{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:36px}.section-head>p{max-width:330px}.paths{display:grid;grid-template-columns:1fr 1fr;gap:22px}.path{background:var(--surface);border:1px solid var(--line);padding:38px;border-radius:10px}.path-num{color:var(--lime);font-size:12px;letter-spacing:.12em}.path h3{font-size:30px;margin:28px 0 16px}.path p{max-width:420px}.path ul{list-style:none;padding:0;margin:25px 0 30px;color:#c3cbbe;font-size:14px}.path li{margin:9px 0}.path li:before{content:'↗';margin-right:12px;color:var(--lime)}.path>a{display:block;padding-top:22px;border-top:1px solid var(--line);color:var(--lime);font-size:14px}.week-section{display:grid;grid-template-columns:1fr 1fr;gap:9%;background:#161b15;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.week-section>div>p:not(.eyebrow){margin:25px 0;max-width:450px}.week-list a{display:flex;gap:22px;align-items:center;padding:18px 0;border-bottom:1px solid var(--line)}.week-list a:first-child{padding-top:0}.week-list span{font-size:13px;color:var(--lime)}.week-list h3{flex:1;font-size:17px}.video-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.video-card{border:1px solid var(--line);border-radius:10px;overflow:hidden;background:var(--surface)}.thumbnail{width:100%;border:0;text-align:left;aspect-ratio:1.7;display:flex;position:relative;flex-direction:column;align-items:start;justify-content:space-between;padding:23px;overflow:hidden;color:#182313;background:#b9cd9f}.thumbnail:after{content:'';position:absolute;right:-10%;top:20%;width:170px;height:170px;border:1px solid currentColor;border-radius:50%;opacity:.2}.thumb-1,.thumb-4{background:#bbc5b6}.thumb-2,.thumb-5{background:#354634;color:#d5edb8}.thumb-3,.thumb-6{background:#45584d;color:#e4eddf}.mini-brand{font-size:9px;letter-spacing:.12em}.thumb-title{font:500 27px/1.15 Manrope,sans-serif;letter-spacing:-.04em;max-width:75%;margin:18px 0 25px;z-index:1}.play{position:absolute;bottom:18px;left:23px;width:29px;height:29px;border-radius:50%;background:#14200fcf;color:white;font-size:11px;display:grid;place-items:center}.duration{position:absolute;right:18px;bottom:18px;font-size:11px;background:#101810cc;color:#fff;padding:1px 7px;border-radius:4px}.card-body{padding:24px}.card-body .eyebrow{font-size:10px}.card-body h3{margin:10px 0 13px;font-size:21px}.card-body p{font-size:14px}.text-button{border:0;background:none;padding:18px 0 0;color:var(--lime);font-size:14px;text-align:left}.closing{background:#c0eb83;color:var(--ink);display:flex;justify-content:space-between;align-items:center;gap:40px;border-radius:12px;max-width:calc(1440px - 10%);margin:0 5% 80px;padding:48px}.closing .eyebrow{color:#445738}.closing p{color:#3e5133;max-width:520px;margin-top:20px}.closing .button{background:var(--ink);color:#e3f6cc;border-color:var(--ink);flex-shrink:0}footer{padding:32px 5%;max-width:1440px;margin:auto;border-top:1px solid var(--line);display:flex;flex-wrap:wrap;align-items:center;gap:25px;font-size:12px;color:var(--muted)}footer .brand{font-size:12px}footer p{flex:1}footer a:hover{color:var(--lime)}.page-heading{padding-bottom:40px}.page-heading>p:not(.eyebrow){max-width:630px;margin-top:24px;font-size:18px}.page-heading.compact h1{font-size:clamp(2.6rem,4vw,4rem)}.notice{background:#20281c;border:1px solid #49563c;border-radius:7px;padding:14px 18px;font-size:13px;color:#c2ceba;margin-top:28px;line-height:1.6}.library-section{padding-top:0}.filters{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:35px}.filters button{padding:10px 17px;border-radius:25px;border:1px solid var(--line);background:none;color:var(--muted);font-size:14px}.filters .selected{background:var(--lime);color:var(--ink);border-color:var(--lime)}.muted{font-size:13px!important;color:var(--muted);margin-top:20px}.dashboard{display:grid;grid-template-columns:minmax(0,2fr) minmax(260px,1fr);gap:28px;padding-top:0}.panel{border:1px solid var(--line);background:var(--surface);border-radius:10px;padding:28px}.panel h2{font-size:28px;margin-bottom:20px}.panel h3{margin-bottom:15px}.next-class h2{font-size:34px}.tags{display:flex;gap:8px;flex-wrap:wrap;margin-top:24px}.tags span,.badge{display:inline-block;font-size:11px;padding:5px 9px;background:#293422;color:#c0d4b0;border-radius:4px;letter-spacing:.02em}.class-status{margin-top:25px;padding-top:20px;border-top:1px solid var(--line);font-size:13px;color:var(--muted)}.tight{margin:40px 0 18px;align-items:center}.tight h2{font-size:25px}.tight>span{font-size:13px;color:var(--muted)}.progress{height:4px;background:#2c3428;margin-bottom:12px;border-radius:5px;overflow:hidden}.progress span{height:100%;background:var(--lime);display:block}.lesson-row{display:flex;align-items:center;gap:20px;padding:23px 0;border-bottom:1px solid var(--line)}.lesson-row>div{flex:1}.lesson-row h3{font-size:18px;margin-bottom:7px}.lesson-row p{font-size:13px}.lesson-number{color:var(--muted);font-size:14px}.done .lesson-number{color:var(--lime)}aside{display:flex;flex-direction:column;gap:24px}.accent-panel{background:#26311f;border-color:#49573a}.large-number{font-size:64px;color:#6e8558;font-family:Manrope;line-height:1.1;display:block;margin:18px 0}.accent-panel .button{margin-top:25px}.checklist{padding-left:20px;font-size:14px;color:var(--muted)}.checklist li{margin-bottom:12px}aside .button{margin-top:20px}.back{display:block;color:var(--muted);font-size:14px;margin-bottom:30px}.lesson-content h2:not(:first-child){margin-top:30px}.lesson-content p{margin:12px 0}.extension{background:#232c1e;border-left:3px solid var(--lime);padding:20px;margin:25px 0;color:#c4d2b9}.extension h3{font-size:17px}.lesson-content label{margin-top:28px}.learning-main>.actions{margin-top:25px}.timing{display:grid;grid-template-columns:1fr auto;font-size:14px;color:var(--muted);gap:8px}.timing dd{margin:0;color:#d7e0d0}.enrollment{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:start}.enrollment>div>p{margin:25px 0}.enrollment>div>.panel{margin-top:35px}.enrollment ol{padding-left:20px;color:var(--muted);font-size:14px}.enrollment li{margin-bottom:12px}.form-panel h2{margin-top:22px}.form-panel>p{font-size:14px;margin-bottom:25px}label{display:block;font-size:14px;font-weight:500;margin:20px 0;color:#dce3d6}label>span{font-weight:400}input,select,textarea{display:block;margin-top:9px;border:1px solid #485041;border-radius:5px;background:#121710;color:var(--text);padding:12px 13px;width:100%;font-size:15px}textarea{resize:vertical}input::placeholder,textarea::placeholder{color:#84907d}input[aria-invalid],select[aria-invalid],textarea[aria-invalid]{border-color:#eead9b}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.check{display:flex;align-items:start;gap:10px;font-size:13px}.check input{width:18px;height:18px;flex-shrink:0;margin:2px 0;accent-color:var(--lime)}#form-errors:not(:empty){padding:15px;background:#39251f;border:1px solid #815246;border-radius:5px;color:#f4c9bb;font-size:14px}#form-errors p{color:inherit}#form-errors ul{margin-bottom:0}.narrow{max-width:820px}.narrow .panel{margin-top:30px}.narrow .notice{margin-top:0}.admin{padding-top:0}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-bottom:25px}.stats span{display:block;color:var(--muted);font-size:14px}.stats strong{font:500 45px Manrope;display:block;color:var(--lime);margin-top:10px}.admin-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px;margin-top:25px}.table-wrap{overflow:auto}table{border-collapse:collapse;width:100%;text-align:left;font-size:14px}td,th{padding:16px 12px;border-bottom:1px solid var(--line)}th{color:var(--muted);font-weight:400}.question-item{padding:20px 0;border-bottom:1px solid var(--line)}.question-item .eyebrow{font-size:10px}.question-item p{margin-top:9px;overflow-wrap:anywhere}.material{display:flex;justify-content:space-between;gap:20px;font-size:14px;padding:15px 0;border-bottom:1px solid var(--line)}dialog{padding:0;width:min(950px,92vw);max-height:90vh;border:1px solid #566348;background:#191f16;border-radius:12px;color:var(--text)}dialog::backdrop{background:#000c;backdrop-filter:blur(5px)}#player-content{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr)}#player-content video{display:block;width:100%;max-height:80vh;background:#080d19}.guide{padding:55px 30px 30px}.guide h2{font-size:28px;margin-bottom:20px}.guide p,.guide ol{font-size:14px;color:var(--muted)}.guide ol{padding-left:20px}.guide li{margin:10px 0}.guide .extension{font-size:14px}.close{position:absolute;right:12px;top:12px;z-index:2;width:32px;height:32px;background:#111c;border:1px solid #5c6852;border-radius:50%;font-size:22px}.skip{position:absolute;left:15px;top:-80px;z-index:10;background:var(--lime);color:var(--ink);padding:12px}.skip:focus{top:10px}#toast:not(:empty){position:fixed;bottom:25px;left:50%;transform:translateX(-50%);background:var(--lime);color:var(--ink);padding:15px 24px;border-radius:8px;box-shadow:0 10px 30px #0008;max-width:90vw;z-index:5;font-size:14px}main:focus{outline:none}.video-fallback a{text-decoration:underline}
@media(min-width:1440px){.closing{margin-left:auto;margin-right:auto;max-width:1296px}}@media(max-width:1000px){header{gap:18px}nav{gap:18px}.hero{gap:4%}.hero-note{flex-wrap:wrap}.hero-visual video{height:320px}.button{padding:14px 17px}.video-grid{gap:16px}.thumb-title{font-size:23px}.card-body{padding:20px}.dashboard{grid-template-columns:minmax(0,1.7fr) minmax(250px,1fr)}.enrollment{gap:5%}.form-grid{grid-template-columns:1fr;gap:0}}
@media(max-width:760px){header{padding:20px 5%;flex-wrap:wrap}.brand{font-size:13px}header>.button{margin-left:auto;font-size:12px;padding:10px 12px}nav{order:3;width:100%;justify-content:space-between;padding-top:10px;font-size:14px}.hero{grid-template-columns:1fr;padding-top:42px;gap:35px}.hero h1{font-size:clamp(2.8rem,9.5vw,4.2rem)}section{padding:50px 5%}.hero-copy>p:not(.eyebrow){font-size:16px}.hero-note{margin-top:28px;gap:8px;font-size:11px}.hero-visual video{height:390px}.visual-top{font-size:9px}.ribbon{display:grid;grid-template-columns:1fr 1fr;font-size:11px;padding-top:20px;padding-bottom:20px}.ribbon span:before{margin-right:7px}.section-head{display:block}.section-head>p,.section-head>.button{margin-top:22px}.paths,.week-section,.dashboard,.enrollment,.admin-grid{grid-template-columns:1fr}.path{padding:27px}.path h3{font-size:26px}.week-section{gap:40px}.video-grid{grid-template-columns:1fr 1fr;gap:14px}.video-card .thumbnail{padding:17px;aspect-ratio:1.2}.thumb-title{font-size:22px;max-width:100%}.mini-brand{font-size:8px}.card-body{padding:18px}.card-body h3{font-size:19px}.card-body p{font-size:13px}.closing{display:block;padding:30px;margin-bottom:50px}.closing>.button{margin-top:28px}.page-heading{padding-top:40px}.page-heading h1{font-size:3rem}.page-heading>p:not(.eyebrow){font-size:16px}.dashboard{gap:25px}.tight{display:flex}.lesson-row{gap:15px}.lesson-row h3{font-size:17px}.panel{padding:23px}.stats{gap:10px}.stats .panel{padding:15px}.stats span{font-size:12px}.stats strong{font-size:32px}.admin h2 .badge{display:block;width:max-content;margin-top:10px}#player-content{grid-template-columns:1fr}#player-content video{max-height:55vh}.guide{padding:30px 23px}.close{position:fixed;right:7vw;top:7vh}.enrollment{gap:30px}.form-grid{grid-template-columns:1fr 1fr;gap:15px}footer{gap:18px}footer p{flex-basis:100%;order:3}.thumb-title{margin-top:15px}aside .video-card .thumbnail{aspect-ratio:1.7}.notice{font-size:12px}.hero-visual{max-width:500px;width:100%;justify-self:center}}
@media(max-width:420px){.video-grid,.form-grid{grid-template-columns:1fr}.video-card .thumbnail{aspect-ratio:1.75}.thumb-title{font-size:28px;max-width:75%}.hero .actions{flex-direction:column}.hero .button{width:100%}.stats{grid-template-columns:1fr}.stats .panel{display:flex;align-items:center;justify-content:space-between}.stats strong{margin:0}.hero-note b{display:none}.hero-note{column-gap:15px}.ribbon{font-size:10px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Compact learning entry; jump preserves the active route and moves keyboard focus. */
.intro-heading>.button{margin-top:22px}.intro-heading .intro-progress{font-size:14px;margin-top:14px}.workspace-map{scroll-margin-top:18px}.intro-feedback:not(:empty){padding:16px;background:#283420;color:#def0ce}.workspace-map:focus-visible{outline:3px solid var(--lime);outline-offset:4px}
@media(max-width:760px){.intro-heading{padding-top:24px;padding-bottom:24px}.intro-heading h1{font-size:2.1rem!important}.intro-heading .eyebrow{margin-bottom:12px}.intro-heading>p:not(.eyebrow){margin-top:14px;font-size:15px;line-height:1.5}.intro-heading>.button{margin-top:18px}.intro-heading .intro-progress{font-size:12px}.beginner-layout{padding-top:0}}
