@import "https://fonts.googleapis.com/css2?family=Outfit:wght@500..800&family=Plus+Jakarta+Sans:wght@400..800&family=JetBrains+Mono:wght@400..700&display=swap";:root{--color-navy:#042c53;--color-navy-mid:#0b3f73;--color-amber:#ef9f27;--color-dark:#0d1b2a;--color-bg:#f5f7fa;--color-bg-home:#fff;--color-panel:#f5f7fa;--color-surface:#fff;--color-border:#dde1e5;--line:#e1e5ea;--color-navy-tint:#e4ecf5;--color-amber-tint:#fdf0dc;--color-amber-ink:#8a5a0e;--color-green:#1d7a45;--color-orange:#b4480c;--color-green-tint:#dff2e6;--color-green-dark:#155c34;--color-orange-tint:#fce9df;--color-orange-dark:#8f3608;--color-text-secondary:#3b4652;--color-text-muted:#56616d;--color-gray:#a9b0b8;--color-track:#e9edf2;--color-amber-border:#f2c27a;--color-overlay:#0d1b2a80;--color-on-strong:#fff;--color-on-amber:#042c53;--color-brand-navy:#042c53;--color-brand-navy-mid:#0b3f73;--color-brand-dark:#0d1b2a;--color-on-brand:#fff;--color-image-bg:#fff;--color-browser-bar:#042c53;--color-video-play:#d92323;--color-on-video-play:#fff;--google-border:#747775;--google-text:#1f1f1f;--google-bg:#fff;--google-bg-hover:#f5f7fa;--font-sans:"Plus Jakarta Sans", system-ui, sans-serif;--font-display:"Outfit", "Plus Jakarta Sans", system-ui, sans-serif;--font-mono:"JetBrains Mono", ui-monospace, monospace;--radius-xl:4px;--radius-lg:4px;--radius:4px;--radius-btn:10px;--radius-choice:8px;--radius-sm:2px;--tap-min:44px;--content-width:1200px;--gutter:16px;--gutter-lg:32px;--shadow-pop:0 8px 24px #0d1b2a1f;--shadow-card:0 1px 2px #0d1b2a0a, 0 12px 32px #0d1b2a0d;--shadow-lift:0 20px 40px #0d1b2a1a;--shadow-hero:0 28px 56px #0d1b2a38}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--color-navy:#8cc4f7;--color-navy-mid:#0b3f73;--color-dark:#e8eef5;--color-bg:#0d1b2a;--color-bg-home:#0d1b2a;--color-panel:#132538;--color-surface:#132538;--color-border:#34495f;--line:#24384d;--color-navy-tint:#1d3b5c;--color-amber-tint:#33270f;--color-amber-ink:#f5c171;--color-green:#4fc788;--color-orange:#f5925c;--color-green-tint:#173d2b;--color-green-dark:#93e3b6;--color-orange-tint:#43261a;--color-orange-dark:#fbb995;--color-text-secondary:#c3cfdb;--color-text-muted:#9eafc0;--color-gray:#5a6d81;--color-track:#22374d;--color-amber-border:#8a6526;--color-overlay:#0009;--color-on-strong:#0d1b2a;--color-browser-bar:#0d1b2a;--shadow-pop:0 8px 24px #00000073;--shadow-card:none;--shadow-lift:0 20px 40px #0006;--shadow-hero:0 28px 56px #00000080}.app{flex-direction:column;min-height:100dvh;display:flex}.main{flex:1;min-width:0;padding:16px 0 28px}.container{max-width:var(--content-width);padding:0 var(--gutter);margin:0 auto}.narrow{max-width:560px}.page-title{margin:0 0 16px;font-size:1.375rem;font-weight:800}@media (width>=768px){.main{padding:28px 0 48px}.container{padding:0 var(--gutter-lg)}.page-title{font-size:1.75rem}}.app--home{background:var(--color-bg-home)}.announce{padding:0 var(--gutter);border-bottom:1px solid var(--line);background:var(--color-panel);color:var(--color-dark);text-align:center;flex-wrap:wrap;justify-content:center;align-items:center;gap:0 10px;font-size:.8125rem;font-weight:600;display:flex}.announce__links{align-items:center;gap:10px;display:inline-flex}.announce__dot{background:var(--color-green);border-radius:50%;width:8px;height:8px}.announce__sep{color:var(--color-text-muted)}.announce__cta{min-height:var(--tap-min);color:var(--color-navy);align-items:center;font-weight:700;text-decoration:none;display:inline-flex}.announce__cta:hover{color:var(--color-navy);text-decoration:underline}.header{z-index:10;background:var(--color-bg-home);border-bottom:1px solid var(--line);position:sticky;top:0}.header__inner{max-width:var(--content-width);padding:14px var(--gutter) 10px;justify-content:space-between;align-items:center;gap:8px;margin:0 auto;display:flex}.header__logo{display:flex}.header__logo img{width:auto;height:16px;display:block}.header__actions{align-items:center;gap:4px;display:flex}.header__nav{display:none}.nav-link{min-height:var(--tap-min);color:var(--color-text-secondary);align-items:center;padding:0 12px;font-size:.875rem;font-weight:600;text-decoration:none;display:flex}.nav-link:hover{color:var(--color-navy)}.nav-link.active{box-shadow:inset 0 -2px 0 var(--color-navy);color:var(--color-dark);font-weight:700}@media (width>=768px){.header__inner{padding:14px var(--gutter-lg);gap:12px 40px}.header__logo img{height:22px}.header__nav{flex:1;gap:4px;display:flex}.header__actions{gap:10px}}.avatar{width:var(--tap-min);height:var(--tap-min);background:var(--color-navy);color:var(--color-on-strong);border-radius:50%;flex:none;justify-content:center;align-items:center;font-size:.9375rem;font-weight:700;text-decoration:none;display:flex}.avatar:hover,.avatar[aria-expanded=true]{background:var(--color-dark);color:var(--color-on-strong)}button.avatar{cursor:pointer;border:0}.avatar-menu{position:relative}.avatar-menu__panel{z-index:20;border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);width:240px;box-shadow:var(--shadow-pop);flex-direction:column;padding:6px;display:flex;position:absolute;top:calc(100% + 8px);right:0}.avatar-menu__who{flex-direction:column;gap:2px;padding:8px 10px 10px;display:flex}.avatar-menu__name{font-weight:700}.avatar-menu__email{color:var(--color-text-muted);overflow-wrap:anywhere;font-size:.8125rem}.avatar-menu__item{min-height:var(--tap-min);border-radius:var(--radius-sm);color:var(--color-dark);text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;padding:0 10px;font-size:.875rem;font-weight:600;text-decoration:none;display:flex}.avatar-menu__item:hover{background:var(--color-navy-tint);color:var(--color-navy)}.avatar-menu__item--icon{color:var(--color-text-secondary);gap:10px}.avatar-menu__divider{border:0;border-top:1px solid var(--color-border);margin:4px 0}.tabbar{z-index:10;padding:6px 4px calc(14px + env(safe-area-inset-bottom));background:var(--color-bg-home);border-top:1px solid var(--line);grid-template-columns:repeat(5,minmax(0,1fr));display:grid;position:fixed;bottom:0;left:0;right:0}.tabbar__link{min-height:52px;color:var(--color-text-muted);flex-direction:column;justify-content:center;align-items:center;gap:4px;font-size:.6875rem;font-weight:600;text-decoration:none;display:flex;position:relative}.tabbar__link.active{color:var(--color-navy);font-weight:800}.tabbar__link.active:before{background:var(--color-navy);content:"";height:3px;position:absolute;top:-6px;left:25%;right:25%}.app--tabbar{padding-bottom:calc(76px + env(safe-area-inset-bottom))}@media (width>=768px){.tabbar{display:none}.app--tabbar{padding-bottom:0}}.footer{background:var(--color-surface);border-top:1px solid var(--line);margin-top:0}.footer__inner{max-width:var(--content-width);padding:32px var(--gutter) 20px;flex-direction:column;gap:24px;margin:0 auto;display:flex}.footer__cols{flex-wrap:wrap;gap:24px 72px;display:flex}.footer__brand{flex-direction:column;flex:260px;gap:14px;display:flex}.footer__brand img{align-self:flex-start;width:auto;height:18px;display:block}.footer__brand p{max-width:280px;color:var(--color-text-muted);margin:0;font-size:.875rem;line-height:1.6}.footer__nav{flex-direction:column;display:flex}.footer__nav .eyebrow{margin-bottom:4px}.footer__nav a{min-height:var(--tap-min);color:var(--color-text-secondary);align-items:center;font-size:.875rem;font-weight:600;text-decoration:none;display:flex}.footer__nav a:hover{color:var(--color-navy);text-decoration:underline}.footer__copy{border-top:1px solid var(--line);color:var(--color-text-muted);padding-top:20px;font-size:.8125rem}@media (width>=768px){.footer{margin-top:48px}.footer__inner{padding:48px var(--gutter-lg) 28px;gap:32px}}.section-head .page-title{margin:0}.home__section{margin-top:26px}.section-head{flex-direction:column;gap:4px;margin-bottom:12px;display:flex}.section-title{margin:0;font-size:1.125rem;font-weight:800;line-height:1.3}.section-sub{color:var(--color-text-muted);margin:0;font-size:.9375rem}@media (width>=768px){.home__section{margin-top:48px}.section-head{margin-bottom:16px}.section-head--row{flex-flow:wrap;justify-content:space-between;align-items:center;gap:8px}.section-title{font-size:1.625rem}}.banner__viewport{position:relative}.banner__track{scroll-snap-type:x mandatory;border-radius:var(--radius-lg);scrollbar-width:none;display:flex;overflow-x:auto}.banner__track::-webkit-scrollbar{display:none}.banner__slide{scroll-snap-align:start;flex:0 0 100%}.banner__image-link img{aspect-ratio:12/5;border-radius:var(--radius-lg);width:100%;height:auto;display:block}.banner__card{border-radius:var(--radius-lg);height:160px;color:var(--color-on-brand);flex-direction:column;justify-content:flex-end;gap:6px;padding:16px;text-decoration:none;display:flex;position:relative;overflow:hidden}.banner__card:hover{color:var(--color-on-brand)}.banner__card--navy{background:var(--color-brand-navy)}.banner__card--dark{background:var(--color-brand-dark)}.banner__card--navy-mid{background:var(--color-brand-navy-mid)}.banner__card:focus-visible{outline-color:var(--color-amber);outline-offset:-3px}.banner__circle{background:var(--color-amber);border-radius:50%;width:120px;height:120px;position:absolute;top:-28px;right:-28px}.banner__ring{display:none}.banner__tag,.banner__title,.banner__sub{position:relative}.banner__tag{border-radius:var(--radius-sm);background:var(--color-amber);color:var(--color-on-amber);align-self:flex-start;padding:3px 8px;font-size:.6875rem;font-weight:700}.banner__title{max-width:270px;font-size:1.125rem;font-weight:800;line-height:1.25}.banner__sub{font-size:.75rem;line-height:1.4}.banner__dots{justify-content:center;margin-top:2px;display:flex}.banner__dot{width:32px;height:var(--tap-min);cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;padding:0;display:flex}.banner__dot:before{content:"";background:var(--color-gray);border-radius:4px;width:8px;height:8px;transition:width .2s}.banner__dot[aria-current=true]:before{background:var(--color-navy);width:20px}.banner__arrow{display:none}@media (width>=768px){.banner__track,.banner__card,.banner__image-link img{border-radius:var(--radius)}.banner__card{justify-content:center;gap:12px;height:300px;padding:40px 96px 40px 64px}.banner__circle{width:340px;height:340px;top:-80px;right:-60px}.banner__ring{border:5px solid var(--color-amber);border-radius:50%;width:56px;height:56px;display:block;position:absolute;bottom:36px;right:300px}.banner__tag{padding:5px 12px;font-size:.8125rem}.banner__title{max-width:600px;font-size:2.375rem;line-height:1.15}.banner__sub{max-width:560px;font-size:1.0625rem;line-height:1.5}.banner__arrow{width:var(--tap-min);height:var(--tap-min);background:var(--color-surface);color:var(--color-navy);cursor:pointer;border:0;border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.banner__arrow--prev{left:12px}.banner__arrow--next{right:12px}}.class-list{gap:12px;display:grid}.class-card{border:2px solid var(--color-navy);border-radius:var(--radius-lg);background:var(--color-surface);flex-direction:column;gap:12px;padding:18px;display:flex}.class-card__head{justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.class-card__name{flex-direction:column;gap:2px;display:flex}.class-card__title{margin:0;font-size:1.125rem;font-weight:800}.class-card__desc{color:var(--color-text-secondary);margin:0;font-size:.8125rem;line-height:1.5}.class-card__highlights{flex-direction:column;gap:8px;margin:0;padding:0;font-size:.9375rem;line-height:1.4;list-style:none;display:flex}.class-card__highlights li{align-items:flex-start;gap:10px;display:flex}.class-card__highlights svg{color:var(--color-green);flex:none;margin-top:1px}.class-card__actions{flex-wrap:wrap;gap:8px;margin-top:auto;display:flex}.class-card__actions .btn{flex:1}.class-card--soon{border:2px dashed var(--color-gray);color:var(--color-text-muted);background:0 0;justify-content:center;gap:10px}.class-card--soon .class-card__title{color:var(--color-text-secondary);font-size:1.25rem}.class-card--soon .class-card__desc{color:var(--color-text-muted);font-size:.875rem}@media (width>=768px){.class-list{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:20px}.class-card{border-radius:var(--radius);gap:16px;padding:24px}.class-card__head{gap:12px}.class-card__name{gap:4px}.class-card__title{font-size:1.375rem}.class-card__actions{gap:10px}}.video-list{margin:0 calc(var(--gutter) * -1);padding:0 var(--gutter) 4px;gap:12px;display:flex;overflow-x:auto}.video-card{flex-direction:column;flex:none;gap:8px;width:220px;display:flex}.video-card__frame{aspect-ratio:16/9;border-radius:var(--radius);background:var(--color-brand-dark);position:relative;overflow:hidden}.video-card__frame iframe,.video-card__thumb{border:0;width:100%;height:100%;position:absolute;inset:0}.video-card__thumb{cursor:pointer;background:0 0;padding:0}.video-card__thumb img{object-fit:cover;width:100%;height:100%;display:block}.video-card__play{background:var(--color-video-play);width:44px;height:44px;color:var(--color-on-video-play);border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.video-card__title{margin:0;font-size:.8125rem;font-weight:600;line-height:1.35}.social-actions{flex-wrap:wrap;gap:10px;display:flex}.social-actions--full{gap:8px;margin-top:10px}.social-actions--full .btn{flex:1;font-size:.8125rem}.testimonial-list{margin:0 calc(var(--gutter) * -1);padding:0 var(--gutter) 4px;scroll-snap-type:x mandatory;gap:12px;list-style:none;display:flex;overflow-x:auto}.testimonial-card{scroll-snap-align:start;flex-direction:column;flex:none;justify-content:space-between;gap:14px;width:280px;display:flex}.testimonial-card__body{color:var(--color-dark);white-space:pre-line;overflow-wrap:anywhere;margin:0;font-size:.9375rem;line-height:1.55}.testimonial-card__who{border-top:1px solid var(--color-track);flex-direction:column;gap:2px;margin:0;padding-top:12px;display:flex}.testimonial-card__name{color:var(--color-navy);font-weight:800}.testimonial-card__label{color:var(--color-text-muted);font-size:.8125rem}@media (width>=768px){.testimonial-list{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px;margin:0;padding:0;display:grid;overflow:visible}.testimonial-card{width:auto}.social-actions .btn{min-height:var(--tap-min);border-radius:var(--radius-btn);padding:0 16px;font-size:.875rem}.video-list{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:20px;margin:0;padding:0;display:grid;overflow:visible}.video-card{gap:10px;width:auto}.video-card__frame{border-radius:var(--radius)}.video-card__play{width:56px;height:56px}.video-card__play svg{width:22px;height:22px}.video-card__title{font-size:.9375rem;line-height:1.4}}.try-card{flex-wrap:wrap;align-items:center;gap:14px 24px;margin-top:20px;display:flex}.try-card__icon{border-radius:var(--radius);background:var(--color-amber-tint);width:52px;height:52px;color:var(--color-navy);flex:none;justify-content:center;align-items:center;display:flex}.try-card__text{flex-direction:column;flex:260px;gap:4px;display:flex}.try-card__title{margin:0;font-size:1.125rem;font-weight:800;line-height:1.3}.try-card__desc{color:var(--color-text-secondary);margin:0;font-size:.9375rem;line-height:1.5}.try-card__action{flex:100%}@media (width>=768px){.try-card{padding:28px 32px}.try-card__title{font-size:1.375rem}.try-card__action{flex:none;min-height:52px;padding:0 24px}}.try-page{flex-direction:column;gap:16px;max-width:820px;display:flex}.try-steps{flex-wrap:wrap;gap:8px;display:flex}.try-step{min-width:var(--tap-min);min-height:var(--tap-min);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-dark);font:inherit;font-variant-numeric:tabular-nums;cursor:pointer;font-weight:700}.try-step--answered{border-color:var(--color-green);background:var(--color-green-tint);color:var(--color-green-dark)}.try-step[aria-current=true]{outline:2px solid var(--color-navy);outline-offset:1px}.try-score{flex-direction:column;gap:6px;display:flex}.try-score__value{font-variant-numeric:tabular-nums;color:var(--color-navy);margin:0;font-size:2rem;font-weight:800}.try-score__actions{flex-wrap:wrap;gap:10px;margin-top:6px;display:flex}.video-page__more{margin:24px 0 0}.app--home .main{padding:0}.app--home .footer{margin-top:0}.landing{--on-brand-line:color-mix(in srgb, var(--color-on-brand) 20%, transparent);--on-brand-border:color-mix(in srgb, var(--color-on-brand) 50%, transparent);--mark-color:color-mix(in srgb, var(--color-amber) 90%, transparent);flex-direction:column;display:flex}.mark{background-image:linear-gradient(transparent 74%, var(--mark-color) 74%, var(--mark-color) 94%, transparent 94%);background-repeat:no-repeat;margin:0 -4px;padding:0 4px;animation:.9s cubic-bezier(.2,.8,.2,1) .9s both mark-draw}.arrow{flex:none;transition:transform .25s cubic-bezier(.2,.8,.2,1)}a:hover>.arrow,.lift:hover .arrow{transform:translate(5px)}@keyframes mark-draw{0%{background-size:0% 100%}to{background-size:100% 100%}}@keyframes ruler-draw{0%{transform:scaleY(0)}}@keyframes arc-swing{0%{opacity:0;transform:rotate(-46deg)}}@keyframes rise{0%{opacity:0;transform:translateY(36px)}}@keyframes fade-up{0%{opacity:0;transform:translateY(14px)}}.hero{position:relative}.hero__bg{background:var(--color-brand-navy);clip-path:polygon(0 0,100% 0,100% calc(100% - 64px),0 100%);position:absolute;inset:0 0 150px;overflow:hidden}.hero__ruler{transform-origin:top;width:22px;animation:1.1s cubic-bezier(.2,.8,.2,1) both ruler-draw;position:absolute;top:0;bottom:0;left:0}.hero__arc{opacity:.7;width:260px;height:260px;animation:1.6s cubic-bezier(.2,.8,.2,1) both arc-swing;position:absolute;top:-40px;right:-120px;transform:rotate(-18deg)}.hero__inner{max-width:var(--content-width);padding:24px var(--gutter) 0 38px;flex-direction:column;gap:24px;margin:0 auto;display:flex;position:relative}.hero__text{min-width:0;color:var(--color-on-brand);flex-direction:column;gap:14px;animation:.8s cubic-bezier(.2,.8,.2,1) both fade-up;display:flex}.hero__tagline{opacity:.72;max-width:340px;margin:0;font-size:.8125rem;font-weight:600;line-height:1.45}.hero__title{margin:0;font-size:2.125rem;font-weight:800;line-height:1.06}.hero__desc{opacity:.8;max-width:500px;margin:0;font-size:.9375rem;line-height:1.6}.hero__actions{flex-direction:column;gap:10px;margin-top:4px;display:flex}.hero__actions .btn{justify-content:space-between}.hero__stats{flex-wrap:wrap;gap:12px 0;margin:10px 0 0;display:flex}.hero__stats>div{border-right:1px solid var(--on-brand-line);flex-direction:row-reverse;align-items:baseline;gap:10px;margin-right:28px;padding-right:28px;display:flex}.hero__stats>div:last-child{border-right:0;margin-right:0;padding-right:0}.hero__stats dd{font-family:var(--font-display);margin:0;font-size:2rem;font-weight:700;line-height:1}.hero__stats dt{opacity:.8;font-size:1rem;font-weight:600}.hero-try{border-radius:var(--radius);background:var(--color-surface);color:var(--color-dark);box-shadow:var(--shadow-hero);flex-direction:column;margin-left:-18px;animation:.9s cubic-bezier(.2,.8,.2,1) .25s both rise;display:flex;overflow:hidden}.hero-try__head{justify-content:space-between;align-items:center;gap:8px;padding:14px 18px 0;display:flex}.hero-try__count{color:var(--color-text-muted);font-family:var(--font-display);font-size:.875rem;font-weight:700}.hero-try__stem{white-space:pre-line;margin:0;padding:12px 18px 16px;font-size:1.0625rem;font-weight:500;line-height:1.5}.hero-try__options{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:0 18px 18px;display:grid}.hero-try__option{border:1px solid var(--line);border-radius:var(--radius-choice);background:var(--color-surface);min-height:50px;color:var(--color-dark);font:inherit;text-align:left;cursor:pointer;align-items:center;gap:10px;padding:8px 12px;font-size:1rem;transition:background-color .2s,border-color .2s;display:flex}.hero-try__option:not(:disabled):hover{border-color:var(--color-navy)}.hero-try__option:disabled{cursor:default}.hero-try__letter{border-radius:var(--radius-sm);background:var(--color-panel);flex:none;justify-content:center;align-items:center;width:28px;height:28px;font-size:.8125rem;font-weight:800;display:flex}.hero-try__text{overflow-wrap:anywhere;font-variant-numeric:tabular-nums;min-width:0}.hero-try__option.is-picked{border-color:var(--color-navy);background:var(--color-navy-tint)}.hero-try__option.is-correct{border-color:var(--color-green);background:var(--color-green-tint)}.hero-try__option.is-correct .hero-try__letter{background:var(--color-green);color:var(--color-on-strong)}.hero-try__option.is-wrong{border-color:var(--color-orange);background:var(--color-orange-tint)}.hero-try__option.is-wrong .hero-try__letter{background:var(--color-orange);color:var(--color-on-strong)}.hero-try__feedback{color:var(--color-text-secondary);-webkit-line-clamp:5;-webkit-box-orient:vertical;margin:0;padding:0 18px 18px;font-size:.875rem;line-height:1.5;display:-webkit-box;overflow:hidden}.hero-try__verdict.is-correct{color:var(--color-green-dark)}.hero-try__verdict.is-wrong{color:var(--color-orange-dark)}.hero-try__more{border-top:1px solid var(--line);min-height:56px;color:var(--color-navy);justify-content:space-between;align-items:center;gap:8px;padding:0 18px;font-size:.875rem;font-weight:700;text-decoration:none;display:flex}.hero-try__more:hover{color:var(--color-navy);text-decoration:underline}@media (width>=768px){.hero__bg{clip-path:polygon(0 0,100% 0,100% calc(100% - 140px),0 100%);bottom:120px}.hero__ruler{width:36px}.hero__arc{opacity:1;width:720px;height:720px;top:-90px;right:-170px}.hero__inner{padding:32px var(--gutter-lg) 0 64px;flex-flow:wrap;align-items:flex-start;gap:48px}.hero__text{flex:460px;gap:16px;padding-bottom:180px}.hero__tagline{max-width:none;font-size:.9375rem}.hero__title{max-width:580px;font-size:3rem;line-height:1.02}.hero__desc{font-size:1.125rem}.hero__actions{flex-flow:wrap;gap:12px;margin-top:6px}.hero-try{flex:360px;max-width:420px;margin:120px 0 0}.hero-try__head{padding:18px 24px 0}.hero-try__stem{padding:16px 24px 20px;font-size:1.1875rem;line-height:1.55}.hero-try__options{gap:10px;padding:0 24px 22px}.hero-try__option{min-height:54px;padding:8px 14px;font-size:1.0625rem}.hero-try__feedback{padding:0 24px 20px}.hero-try__more{padding:0 24px}}@media (width>=1024px){.hero__title{font-size:3.5rem}}.landing__body{flex-direction:column;gap:48px;width:100%;padding-top:8px;padding-bottom:56px;display:flex}.landing__section{flex-direction:column;gap:20px;display:flex}.landing__head{flex-direction:column;gap:8px;display:flex}.landing__head--row{flex-flow:wrap;justify-content:space-between;align-items:flex-end;gap:8px 12px}.landing__title{margin:0;font-size:1.625rem;font-weight:800;line-height:1.1}.landing__title--sm{font-size:1.25rem;font-weight:700}.landing__note{font-size:.8125rem}.landing__more{min-height:var(--tap-min);align-items:center;gap:8px;font-size:.875rem;font-weight:700;text-decoration:none;display:inline-flex}.landing__more:hover{color:var(--color-navy)}@media (width>=768px){.landing__body{gap:96px;padding-top:32px;padding-bottom:96px}.landing__section{gap:28px}.landing__title{font-size:2.5rem;line-height:1.08}.landing__title--sm{font-size:1.5rem}}.catalog{gap:16px;display:grid}.klass{border:1px solid var(--line);border-radius:var(--radius);background:var(--color-bg-home);flex-direction:column;display:flex;overflow:hidden}.klass__cover{background:var(--color-brand-navy);height:112px;color:var(--color-on-brand);flex-direction:column;justify-content:space-between;padding:16px 18px 16px 40px;display:flex;position:relative}.klass__ruler{background-size:22px 100%,10px 100%;width:22px;position:absolute;top:0;bottom:0;left:0}.klass__cover-top{justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.klass__category{letter-spacing:.1em;text-transform:uppercase;opacity:.8;font-size:.75rem;font-weight:700}.klass__badge{border:1px solid var(--on-brand-border);border-radius:var(--radius-sm);letter-spacing:.06em;text-transform:uppercase;white-space:nowrap;padding:3px 9px;font-size:.6875rem;font-weight:700}.klass__code{font-family:var(--font-display);letter-spacing:-.04em;font-size:2.75rem;font-weight:800;line-height:.85}.klass__body{flex-direction:column;flex:1;gap:10px;padding:16px 18px 18px;display:flex}.klass__title{margin:0;font-size:1.1875rem;font-weight:700}.klass__list{color:var(--color-text-secondary);flex-direction:column;gap:6px;margin:0;padding:0;font-size:.875rem;line-height:1.45;list-style:none;display:flex}.klass__list li{align-items:flex-start;gap:8px;display:flex}.klass__list svg{color:var(--color-green);flex:none;margin-top:2px}.klass__desc{color:var(--color-text-secondary);margin:0;font-size:.9375rem;line-height:1.6}.klass__actions{flex-wrap:wrap;align-items:center;gap:8px 22px;margin-top:auto;padding-top:8px;display:flex}.klass__link{min-height:var(--tap-min);align-items:center;font-size:.875rem;font-weight:700;text-decoration:none;display:inline-flex}.klass__link:hover{color:var(--color-navy);text-decoration:underline}.catalog__soon{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.klass--soon .klass__cover{background:var(--color-panel);height:92px;color:inherit;clip-path:polygon(0 0,100% 0,100% calc(100% - 24px),calc(100% - 24px) 100%,0 100%);padding:12px 14px}.klass--soon .klass__code{color:var(--color-gray);font-size:2.25rem}.klass--soon .klass__body{gap:4px;padding:12px 14px 14px}.klass--soon .klass__title{color:var(--color-text-secondary);font-size:1rem}.klass--soon .klass__desc{color:var(--color-text-muted)}.klass__soon-label{color:var(--color-text-muted);letter-spacing:.06em;text-transform:uppercase;font-size:.75rem;font-weight:700}@media (width>=768px){.catalog{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.catalog__soon{display:contents}.klass--soon .klass__cover{clip-path:polygon(0 0,100% 0,100% calc(100% - 36px),calc(100% - 36px) 100%,0 100%);height:112px;padding:16px 18px}.klass--soon .klass__code{font-size:2.75rem}.klass--soon .klass__body{gap:8px;padding:16px 18px 18px}.klass--soon .klass__title{font-size:1.1875rem}}@media (width>=1024px){.catalog{grid-template-columns:repeat(3,minmax(0,1fr))}}.features{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0;padding:0;list-style:none;display:grid}.feature{border:1px solid var(--line);border-radius:var(--radius);background:var(--color-bg-home);flex-direction:column;display:flex;overflow:hidden}.feature__shot{background:var(--color-panel);flex-direction:column;justify-content:center;gap:8px;height:84px;padding:10px 12px;font-size:.6875rem;font-weight:600;display:flex;position:relative}.feature__shot--bars{gap:4px}.feature__shot--lab{flex-direction:row;justify-content:center;align-items:center;gap:10px}.feature__shot--lab svg{width:64px;height:auto}.shot-row{justify-content:space-between;align-items:baseline;gap:6px;display:flex}.shot-caption{color:var(--color-text-secondary);font-weight:700}.shot-streak{color:var(--color-amber-ink);font-family:var(--font-display);font-size:1rem;font-weight:700}.shot-days{grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;display:grid}.shot-day{border-radius:var(--radius-sm);height:14px}.shot-day--off{background:var(--color-track)}.shot-day--on{background:var(--color-amber)}.shot-day--today{border:1.5px dashed var(--color-amber-ink)}.shot-topic{flex-direction:column;gap:2px;display:flex}.shot-track{border-radius:var(--radius-sm);background:var(--color-track);height:4px;display:block;position:relative}.shot-fill{border-radius:var(--radius-sm);height:4px;display:block;position:absolute;top:0;left:0}.shot-fill--weak{background:var(--color-orange)}.shot-fill--mid{background:var(--color-navy)}.shot-fill--strong{background:var(--color-green)}.shot-pct--weak{color:var(--color-orange-dark)}.shot-pct--mid{color:var(--color-text-muted)}.shot-pct--strong{color:var(--color-green-dark)}.shot-soon{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--color-bg-home);color:var(--color-text-muted);letter-spacing:.06em;text-transform:uppercase;padding:2px 6px;font-size:.5625rem;font-weight:700;position:absolute;top:6px;right:6px}.shot-sliders{flex-direction:column;gap:6px;width:52px;display:flex}.shot-score{flex-direction:column;line-height:1.1;display:flex}.shot-score span{color:var(--color-text-muted);font-weight:700}.shot-score strong{font-family:var(--font-display);font-size:1.25rem;font-weight:800}.shot-timer{border-radius:var(--radius-sm);background:var(--color-dark);color:var(--color-bg);font-family:var(--font-display);font-variant-numeric:tabular-nums;padding:3px 6px;font-size:.75rem;font-weight:700}.shot-steps{grid-template-columns:repeat(10,minmax(0,1fr));gap:3px;display:grid}.shot-step{height:6px}.shot-step--done{background:var(--color-green)}.shot-step--doubt{background:var(--color-amber)}.shot-step--open{background:var(--color-navy)}.shot-step--empty{background:var(--color-track)}.feature__body{flex-direction:column;gap:4px;padding:12px;display:flex}.feature__body strong{font-size:.9375rem}.feature__body span{color:var(--color-text-muted);font-size:.8125rem;line-height:1.45}@media (width>=768px){.features{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px}.feature__shot{gap:10px;height:112px;padding:16px 18px;font-size:.75rem}.feature__shot--bars{gap:9px}.feature__shot--lab{gap:18px}.feature__shot--lab svg{width:96px}.shot-streak{font-size:1.125rem}.shot-days{gap:5px}.shot-day{height:22px}.shot-topic{gap:4px}.shot-soon{padding:2px 7px;font-size:.625rem;top:10px;right:10px}.shot-sliders{width:72px}.shot-score strong{font-size:1.625rem}.shot-timer{padding:4px 8px;font-size:.875rem}.feature__body{padding:16px 18px 18px}.feature__body strong{font-size:1rem}.feature__body span{font-size:.875rem;line-height:1.5}}.quotes{margin:0 calc(var(--gutter) * -1);padding:0 var(--gutter) 4px;scroll-snap-type:x mandatory;gap:20px;list-style:none;display:flex;overflow-x:auto}.quote{border-left:2px solid var(--line);scroll-snap-align:start;flex-direction:column;flex:0 0 82%;gap:14px;padding-left:18px;display:flex}.quote blockquote{overflow-wrap:anywhere;margin:0;font-size:1rem;line-height:1.7}.quote__who{flex-direction:column;gap:2px;font-size:.875rem;display:flex}.quote__who span{color:var(--color-text-muted)}@media (width>=768px){.quotes{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:32px;margin:0;padding:0;display:grid;overflow:visible}.quote{padding-left:20px}}.faq{flex-flow:wrap;gap:24px 64px}.faq__intro{flex-direction:column;flex:280px;gap:8px;display:flex}.faq__ask{color:var(--color-text-secondary);margin:8px 0 0;font-size:.9375rem;line-height:1.6}.faq__ask a{font-weight:700}.faq__list{border-top:1px solid var(--line);flex-direction:column;flex:2 min(100%,520px);min-width:0;display:flex}.faq__item{border-bottom:1px solid var(--line)}.faq__item summary{cursor:pointer;justify-content:space-between;align-items:center;gap:16px;min-height:60px;padding:8px 0;font-size:1rem;font-weight:700;list-style:none;display:flex}.faq__item summary::-webkit-details-marker{display:none}.faq__icon{border:1px solid var(--line);border-radius:var(--radius-sm);width:32px;height:32px;color:var(--color-navy);flex:none;justify-content:center;align-items:center;transition:transform .25s;display:flex}.faq__item[open] .faq__icon{transform:rotate(45deg)}.faq__item p{color:var(--color-text-secondary);margin:0;padding:0 0 18px;font-size:.9375rem;line-height:1.65}@media (width>=768px){.faq__item summary{min-height:64px;font-size:1.0625rem}.faq__item p{padding:0 56px 22px 0}}.closing{background:var(--color-brand-navy);color:var(--color-on-brand);clip-path:polygon(0 32px,100% 0,100% 100%,0 100%);position:relative;overflow:hidden}.closing__arc{opacity:.8;width:300px;height:300px;position:absolute;bottom:-170px;right:-90px}.closing__inner{max-width:var(--content-width);padding:64px var(--gutter) 48px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:24px 40px;margin:0 auto;display:flex;position:relative}.closing__text{flex-direction:column;flex:min(100%,420px);gap:10px;display:flex}.closing__text p{opacity:.8;margin:0;font-size:1rem}.closing__inner .btn{justify-content:space-between;width:100%}@media (width>=768px){.closing{clip-path:polygon(0 56px,100% 0,100% 100%,0 100%)}.closing__arc{opacity:1;width:560px;height:560px;bottom:-300px;right:-40px}.closing__inner{padding:112px var(--gutter-lg) 72px}.closing__inner .btn{width:auto}}.app:has(>.main>.landing){background:var(--color-bg-home)}.app:has(>.main>.landing) .main{padding:0}.app:has(>.main>.landing) .footer{margin-top:0}.lp-facts__cover{background:var(--color-brand-navy-mid);height:120px}.lp-facts__list{flex-direction:column;margin:0;padding:6px 18px 10px;display:flex}.lp-facts__list>div{border-top:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:4px 16px;padding:12px 0;display:flex}.lp-facts__list>div:first-child{border-top:0}.lp-facts__list dt{color:var(--color-text-muted);font-size:.875rem}.lp-facts__list dd{font-family:var(--font-display);margin:0;font-size:1.125rem;font-weight:700}.lp-benefits{gap:20px;margin:0;padding:0;list-style:none;display:grid}.lp-benefit{align-items:flex-start;gap:12px;display:flex}.lp-benefit svg{color:var(--color-green);flex:none;margin-top:3px}.lp-benefit div{flex-direction:column;gap:4px;display:flex}.lp-benefit strong{font-size:1.0625rem}.lp-benefit span{color:var(--color-text-secondary);font-size:.9375rem;line-height:1.55}.lp-shots{margin:0 calc(var(--gutter) * -1);padding:4px var(--gutter) 8px;scroll-snap-type:x mandatory;scroll-padding-inline:var(--gutter);gap:16px;list-style:none;display:flex;overflow-x:auto}.lp-shot{scroll-snap-align:start;flex:0 0 68%}.lp-shot figure{flex-direction:column;gap:12px;margin:0;display:flex}.lp-shot__frame{border:1px solid var(--line);border-radius:var(--radius-choice);background:var(--color-panel);box-shadow:var(--shadow-card);padding:6px;overflow:hidden}.lp-shot__frame img{border-radius:var(--radius);width:100%;height:auto;display:block}.lp-shot figcaption{color:var(--color-text-secondary);font-size:.9375rem;line-height:1.5}.lp-steps{gap:24px;margin:0;padding:0;list-style:none;display:grid}.lp-step{grid-template-columns:48px 1fr;gap:4px 14px;display:grid}.lp-step__num{border-radius:var(--radius);background:var(--color-navy-tint);width:48px;height:48px;color:var(--color-navy);font-family:var(--font-display);grid-row:span 2;justify-content:center;align-items:center;font-size:1.5rem;font-weight:800;display:flex}.lp-step strong{font-size:1.0625rem}.lp-step span{color:var(--color-text-secondary);font-size:.9375rem;line-height:1.55}.lp-note{margin:0;font-size:.9375rem}.lp-prices{gap:16px;margin:0;padding:0;list-style:none;display:grid}.lp-price{flex-direction:column;gap:14px;display:flex}.lp-price__head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.lp-price__amount{color:var(--color-navy);font-family:var(--font-display);margin:0;font-size:2rem;font-weight:800;line-height:1}.lp-price .btn{margin-top:auto}@media (width>=768px){.lp-facts__list{padding:8px 24px 14px}.lp-benefits{grid-template-columns:repeat(3,1fr);gap:32px 40px}.lp-shots{grid-template-columns:repeat(5,1fr);gap:24px;margin:0;padding:0;display:grid;overflow:visible}.lp-steps{grid-template-columns:repeat(3,1fr);gap:32px}.lp-step{grid-template-columns:1fr;row-gap:8px}.lp-step__num{grid-row:auto;margin-bottom:8px}.lp-prices{grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}}.form{flex-direction:column;gap:18px;display:flex}.field{border:0;flex-direction:column;gap:6px;min-width:0;margin:0;padding:0;display:flex}.field__label{padding:0;font-size:.875rem;font-weight:700}.field__hint{color:var(--color-text-muted);margin:0;font-size:.8125rem;font-weight:400;line-height:1.5;display:block}.field__error,.form-error{color:var(--color-orange);margin:0;font-size:.8125rem;font-weight:600}.form-error{border-radius:var(--radius);background:var(--color-amber-tint);padding:12px 14px;font-size:.875rem}.form-success{color:var(--color-green);margin:14px 0 0;font-size:.875rem;font-weight:600}.input{border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);width:100%;min-height:48px;color:var(--color-dark);padding:0 14px;font-size:1rem}.input:focus-visible{border-color:var(--color-navy);outline-offset:0}.input--invalid{border-color:var(--color-orange)}.input--code{font-variant-numeric:tabular-nums;letter-spacing:.4em;text-align:center;font-size:1.5rem;font-weight:800}.choice-group{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.choice{position:relative}.choice input{opacity:0;position:absolute}.choice span{border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);cursor:pointer;justify-content:center;align-items:center;min-height:48px;font-weight:700;display:flex}.choice input:checked+span{border:2px solid var(--color-navy);background:var(--color-navy-tint);color:var(--color-navy)}.choice input:focus-visible+span{outline:3px solid var(--color-navy);outline-offset:2px}.check{min-height:var(--tap-min);cursor:pointer;align-items:flex-start;gap:10px;font-size:.9375rem;font-weight:600;display:flex}.check input{width:20px;height:20px;accent-color:var(--color-navy);flex:none;margin:2px 0 0}.link-button{min-height:var(--tap-min);color:var(--color-navy);cursor:pointer;background:0 0;border:0;padding:0;font-size:.875rem;font-weight:700}.link-button:disabled{color:var(--color-text-muted);cursor:default}.form-links{flex-wrap:wrap;justify-content:space-between;gap:4px 16px;display:flex}.text-strong{color:var(--color-dark)}.auth-card{margin-top:8px}.auth-card .page-title{margin-bottom:8px}.auth-card__lead{margin-bottom:18px}.auth-card__switch{border-top:1px solid var(--color-border);text-align:center;margin:18px 0 0;padding-top:16px;font-size:.875rem}.auth-card__switch a{font-weight:700}.greeting .page-title{margin-bottom:2px}.my-classes__title{margin:24px 0 12px}.class-card__access{color:var(--color-text-muted);font-size:.8125rem}.class-card--soon{border-width:1px;border-color:var(--color-border);color:var(--color-text-secondary)}.my-classes__more{margin:16px 0 0;font-size:.875rem;font-weight:700}.account-card,.account-card .section-title{margin-bottom:16px}.account-card__email{overflow-wrap:anywhere;margin:4px 0 0;font-weight:600}.form-actions{flex-wrap:wrap;gap:8px;display:flex}.target-card .section-title{margin-bottom:4px}.target-card__lead{margin-bottom:16px}.divider-text{color:var(--color-text-muted);align-items:center;gap:12px;margin:0;font-size:.8125rem;display:flex}.divider-text:before,.divider-text:after{content:"";border-top:1px solid var(--color-border);flex:1}.google-button{width:100%;min-height:var(--tap-min);padding:0 12px 0 calc(var(--tap-min) + 12px);border:1px solid var(--google-border);background:var(--google-bg);color:var(--google-text);cursor:pointer;border-radius:4px;justify-content:center;align-items:center;font-size:.875rem;font-weight:600;display:flex;position:relative}.google-button__logo{width:var(--tap-min);height:var(--tap-min);position:absolute;top:-1px;left:-1px}.google-button:hover{background:var(--google-bg-hover)}.google-button:disabled{opacity:.55;cursor:default}.account-admin{margin-bottom:12px}.account-social{gap:10px;display:grid}@media (width>=768px){.account-social{grid-template-columns:repeat(2,minmax(0,1fr))}}.exam{background:var(--color-bg);flex-direction:column;min-height:100dvh;display:flex}.exam-header{z-index:10;background:var(--color-surface);border-bottom:1px solid var(--color-border);position:sticky;top:0}.exam-header__inner{max-width:var(--content-width);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 24px;margin:0 auto;padding:16px 20px 12px;display:flex}.exam-header__logo{width:auto;height:32px;display:block}.exam-header__title{flex-direction:column;gap:2px;min-width:0;display:flex}.exam-header__name{font-size:1rem;font-weight:700}.exam-timer{border-radius:var(--radius-sm);background:var(--color-dark);color:var(--color-on-strong);font-variant-numeric:tabular-nums;align-items:center;gap:6px;padding:8px 12px;font-size:1rem;font-weight:700;display:flex}.exam-steps{flex-wrap:wrap;flex:1;gap:6px;margin:0;padding:0;list-style:none;display:flex}.exam-steps__item{border-radius:var(--radius);align-items:center;min-height:32px;padding:0 12px;font-size:.75rem;font-weight:700;display:flex}.exam-steps__item--done{background:var(--color-track);color:var(--color-text-muted)}.exam-steps__item--now{background:var(--color-navy);color:var(--color-on-strong)}.exam-steps__item--next{border:1px solid var(--color-border);color:var(--color-text-muted)}.exam-progress{flex-direction:column;gap:10px;padding:0 20px 12px;display:flex}.exam-progress__row{color:var(--color-text-muted);justify-content:space-between;gap:8px;font-size:.8125rem;display:flex}.exam-progress__row strong,.exam-card__top strong{color:var(--color-dark)}.progress{background:var(--color-track);border-radius:3px;height:6px;overflow:hidden}.progress__bar{background:var(--color-navy);height:6px}@media (width>=768px){.exam-header__inner{padding:14px var(--gutter-lg);flex-wrap:nowrap}.exam-header__title{min-width:200px}.exam-header__name{font-size:1.0625rem}.exam-timer{border-radius:var(--radius);gap:8px;padding:10px 16px;font-size:1.125rem}}.exam-main{width:100%;max-width:var(--content-width);flex-direction:column;flex:1;gap:24px;margin:0 auto;padding:20px;display:flex}.exam-card{flex-direction:column;flex:560px;gap:20px;min-width:0;display:flex}.exam-card__top{color:var(--color-text-muted);justify-content:space-between;align-items:center;gap:12px;font-size:.875rem;display:flex}.question{flex-direction:column;gap:16px;max-width:720px;display:flex}.question__passage{border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-bg);padding:14px 16px}.question__passage p{white-space:pre-line;margin:6px 0 0;font-size:.9375rem;line-height:1.6}.question__stem{white-space:pre-line;margin:0;font-size:1.0625rem;font-weight:500;line-height:1.55}.question__image{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-image-bg);max-width:100%;height:auto;display:block}.options{flex-direction:column;gap:10px;display:flex}.option{border:1px solid var(--color-border);border-radius:var(--radius-choice);background:var(--color-surface);width:100%;min-height:56px;color:var(--color-dark);text-align:left;cursor:pointer;align-items:center;gap:12px;padding:12px 14px;font-size:.9375rem;line-height:1.4;display:flex}.option:hover{border-color:var(--color-navy)}.option--checked{border:2px solid var(--color-navy);background:var(--color-navy-tint);padding:11px 13px}.option__letter{border-radius:var(--radius-sm);background:var(--color-bg);flex:none;justify-content:center;align-items:center;width:32px;height:32px;font-size:.875rem;font-weight:700;display:flex}.option--checked .option__letter{background:var(--color-navy);color:var(--color-on-strong)}.option__body{flex-direction:column;flex:1;align-items:flex-start;gap:8px;min-width:0;display:flex}.option__image{border-radius:var(--radius);background:var(--color-image-bg);max-width:100%;height:auto;max-height:140px;display:block}:root{--fig-option-px:88;--stem-scale:1}.image-options{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.image-option-tile{width:calc(var(--fig-option-px) * 1px + 12px);position:relative}.image-option{border:1px solid var(--color-border);border-radius:var(--radius-choice);background:var(--color-surface);width:100%;color:var(--color-dark);cursor:pointer;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;touch-action:manipulation;flex-direction:column;align-items:stretch;padding:0 0 6px;display:flex}.image-option:hover{border-color:var(--color-navy)}.image-option__head{height:var(--tap-min);align-items:center;padding-left:8px;display:flex}.image-option__head .option__letter{width:28px;height:28px;font-size:.8125rem}.image-option img{aspect-ratio:1;pointer-events:none;border-radius:var(--radius);background:var(--color-image-bg);width:calc(100% - 12px);height:auto;margin:0 6px;display:block}.image-option--checked{border-color:var(--color-navy);box-shadow:0 0 0 1px var(--color-navy);background:var(--color-navy-tint)}.image-option--checked .option__letter{background:var(--color-navy);color:var(--color-on-strong)}.image-option--key{border-color:var(--color-green);box-shadow:0 0 0 1px var(--color-green);background:var(--color-green-tint)}.image-option--key .option__letter{background:var(--color-green);color:var(--color-on-strong)}.image-option--wrong{border-color:var(--color-orange);box-shadow:0 0 0 1px var(--color-orange);background:var(--color-orange-tint)}.image-option--wrong .option__letter{background:var(--color-orange);color:var(--color-on-strong)}.image-option__tags{flex-direction:column;align-items:center;gap:2px;margin-top:6px;display:flex}.image-option__zoom{width:var(--tap-min);height:var(--tap-min);border-radius:0 var(--radius-choice) 0 var(--radius);color:var(--color-text-muted);cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;display:flex;position:absolute;top:0;right:0}.image-option__zoom:hover{color:var(--color-navy)}.image-options__hint{text-align:center;font-size:.75rem}.question--image-options .question__image{width:auto;max-height:170px;margin:0 auto}.question__image.question__image--same-scale{width:calc(var(--svg-w) / var(--opt-w) * var(--fig-option-px) * 1px);max-width:100%;max-height:none;margin:0 auto}.question__image.question__image--scaled{width:calc(var(--svg-w) * var(--stem-scale) * 1px);max-width:100%}.zoom-image{border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-image-bg);width:min(100%,360px);height:auto;margin:0 auto;display:block}@media (width>=768px){.image-options{flex-wrap:nowrap;justify-content:flex-start;gap:12px}:root{--fig-option-px:108}.image-options__hint{text-align:left}.question--image-options .question__image{max-height:260px;margin:0}.question__image.question__image--same-scale{max-height:none;margin:0}}.exam-nav{border-top:1px solid var(--color-track);flex-wrap:wrap;gap:10px;padding-top:16px;display:flex}.exam-nav__next{margin-left:auto}@media (width>=768px){.exam-main{padding:24px var(--gutter-lg) 32px;flex-flow:wrap;align-items:flex-start}.exam-card{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);padding:28px}.question__stem{font-size:1.1875rem;line-height:1.6}.option{gap:14px;padding:12px 16px;font-size:1rem;line-height:1.45}.option--checked{padding:11px 15px}.option__letter{width:34px;height:34px}}.icon-btn{width:var(--tap-min);height:var(--tap-min);border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-dark);cursor:pointer;border-radius:50%;flex:none;justify-content:center;align-items:center;display:flex}.exam-aside{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);flex-direction:column;flex:0 340px;gap:14px;max-width:100%;padding:20px;display:flex}.exam-aside__head{justify-content:space-between;align-items:baseline;font-size:.8125rem;display:flex}.exam-aside__title{margin:0;font-size:1rem;font-weight:700}.grid-legend{color:var(--color-text-muted);flex-wrap:wrap;gap:14px;font-size:.75rem;display:flex}.grid-legend>span{align-items:center;gap:6px;display:flex}.grid-legend__box{border-radius:var(--radius);width:14px;height:14px}.grid-legend__box--empty{border:1px solid var(--color-gray);background:var(--color-surface)}.grid-legend__box--answered{background:var(--color-green)}.grid-legend__box--doubtful{background:var(--color-amber)}.question-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;display:grid;overflow-y:auto}@media (width>=768px){.question-grid{grid-template-columns:repeat(auto-fill,minmax(44px,1fr))}}.grid-num{height:var(--tap-min);border-radius:var(--radius-choice);font-variant-numeric:tabular-nums;cursor:pointer;border:1px solid #0000;font-size:.875rem;font-weight:700}.grid-num--empty{border-color:var(--color-gray);background:var(--color-surface);color:var(--color-dark)}.grid-num--answered{background:var(--color-green);color:var(--color-on-strong)}.grid-num--doubtful{background:var(--color-amber);color:var(--color-on-amber)}.grid-num--current{border:2px solid var(--color-dark)}.finish-block{flex-direction:column;gap:8px;display:flex}.finish-hint{color:var(--color-text-secondary);align-items:center;gap:6px;margin:0;font-size:.75rem;font-weight:600;display:flex}.save-status{color:var(--color-text-muted);margin:0;font-size:.75rem;line-height:1.5}.save-status--warn{color:var(--color-orange);font-weight:600}.exam-footer{z-index:10;border-top:1px solid var(--color-border);background:var(--color-surface);flex-direction:column;gap:10px;padding:12px 20px 18px;display:flex;position:sticky;bottom:0}.exam-footer__nav{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.exam-footer__nav .btn{padding:0 6px}.exam-footer__more{gap:8px;display:flex}.exam-footer__more .btn{min-height:var(--tap-min);flex:1;font-size:.8125rem}.exam-footer .save-status:empty{display:none}.dialog-backdrop{z-index:50;background:var(--color-overlay);display:flex;position:fixed;inset:0}.dialog-backdrop--center{justify-content:center;align-items:center;padding:24px}.dialog-backdrop--sheet{align-items:flex-end}.dialog{background:var(--color-surface);flex-direction:column;gap:14px;display:flex}.dialog:focus{outline:none}.dialog--center{border-radius:var(--radius);width:100%;max-width:440px;padding:22px}.dialog--sheet{border-radius:var(--radius) var(--radius) 0 0;width:100%;max-height:85dvh;padding:20px;overflow-y:auto}.dialog__head{justify-content:space-between;align-items:center;display:flex}.dialog__title{margin:0;font-size:1.125rem;font-weight:700}.dialog__text{color:var(--color-text-secondary);margin:0;font-size:.875rem;line-height:1.5}.dialog__text strong{color:var(--color-dark)}.dialog__error{color:var(--color-orange);margin:0;font-size:.875rem}.dialog__actions{gap:8px;display:flex}.dialog__actions .btn{flex:1}.exam-center{padding:24px var(--gutter);flex:1;justify-content:center;display:flex}.exam-intro{flex-direction:column;align-self:flex-start;gap:12px;width:100%;max-width:560px;display:flex}.exam-intro__title{margin:0;font-size:1.5rem;font-weight:800}.exam-intro__meta{color:var(--color-text-secondary);margin:0}.exam-intro__rules{color:var(--color-text-secondary);margin:4px 0;padding-left:20px;font-size:.875rem;line-height:1.6}.exam-intro__notice{border-radius:var(--radius-sm);background:var(--color-amber-tint);margin:0;padding:10px 12px;font-size:.875rem}.exam-intro__error{color:var(--color-orange);margin:0;font-size:.875rem}.exam-intro__actions{flex-wrap:wrap;gap:8px;margin-top:8px;display:flex}.exam-finished__icon{background:var(--color-green);width:52px;height:52px;color:var(--color-on-strong);border-radius:50%;justify-content:center;align-items:center;display:flex}.tryout-list{margin-top:24px}.tryout-list__items{flex-direction:column;gap:10px;margin:12px 0 0;padding:0;list-style:none;display:flex}.tryout-row{justify-content:space-between;align-items:center;gap:12px;display:flex}.tryout-row__info{flex-direction:column;gap:2px;min-width:0;display:flex}.tryout-row__title{align-items:center;gap:8px;font-weight:700;display:flex}.tryout-row__done{color:var(--color-green);font-weight:600}.tryout-row__done svg{vertical-align:-2px}.test-chooser .score-grid{margin:4px 0}.test-chooser__list{flex-direction:column;gap:10px;margin:8px 0 0;padding:0;list-style:none;display:flex}.test-chooser__item{border:1px solid var(--color-border);border-radius:var(--radius);flex-direction:column;align-items:flex-start;gap:6px;padding:14px;display:flex}.test-chooser__name{color:var(--color-navy);font-size:1.0625rem;font-weight:800}.result-page,.review-page{flex-direction:column;gap:16px;max-width:760px;padding-top:8px;padding-bottom:32px;display:flex}.back-header{align-items:center;gap:8px;display:flex}.back-header__link{width:var(--tap-min);height:var(--tap-min);color:var(--color-dark);border-radius:50%;flex:none;justify-content:center;align-items:center;margin-left:-10px;display:flex}.back-header__link:hover{background:var(--color-navy-tint);color:var(--color-dark)}.back-header__text{min-width:0}.back-header__title{margin:0;font-size:1.125rem;font-weight:800}.back-header__sub{font-size:.8125rem}@media (width>=768px){.back-header__title{font-size:1.5rem}}.score-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.score-card{border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);flex-direction:column;gap:6px;padding:14px;display:flex}.score-card__label{color:var(--color-text-muted);font-size:.75rem;font-weight:600}.score-card__value{letter-spacing:-.5px;font-variant-numeric:tabular-nums;font-size:1.875rem;font-weight:800;line-height:1.1}.score-card__meta{color:var(--color-text-muted);font-size:.75rem}.score-card__thresholds{color:var(--color-text-secondary);flex-direction:column;gap:6px;margin:2px 0 0;padding:0;font-size:.75rem;list-style:none;display:flex}.score-card__thresholds li{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:4px;display:flex}.status-badge{border-radius:var(--radius-sm);white-space:nowrap;align-self:flex-start;padding:4px 8px;font-size:.75rem;font-weight:700}.status-badge--pass,.status-badge--correct{background:var(--color-green-tint);color:var(--color-green-dark)}.status-badge--fail,.status-badge--wrong{background:var(--color-orange-tint);color:var(--color-orange-dark)}.status-badge--draft{background:var(--color-amber-tint);color:var(--color-navy)}.status-badge--approved{background:var(--color-green-tint);color:var(--color-green-dark)}.status-badge--blank,.status-badge--archived{background:var(--color-track);color:var(--color-text-secondary)}.status-badge--doubt{background:var(--color-amber);color:var(--color-on-amber)}@media (width>=768px){.score-grid{gap:16px}.score-card{padding:20px}.score-card__value{font-size:2.5rem}}.breakdown{flex-direction:column;gap:10px;display:flex}.breakdown__title{margin:0;font-size:.9375rem;font-weight:700}.breakdown__row{flex-direction:column;gap:6px;display:flex}.breakdown__line{justify-content:space-between;gap:12px;font-size:.8125rem;display:flex}.breakdown__name{font-weight:600}.breakdown__score{font-variant-numeric:tabular-nums;font-weight:700}.breakdown__track{background:var(--color-track);border-radius:4px;height:8px;overflow:hidden}.breakdown__bar{background:var(--color-navy);border-radius:4px;height:8px}.breakdown__bar--weak{background:var(--color-orange)}.weak-topics{flex-direction:column;gap:10px;display:flex}.weak-topics__title{margin:0;font-size:1rem;font-weight:700}.weak-topics__sub,.weak-topics__empty{font-size:.8125rem}.card.weak-topics__empty{color:var(--color-text-secondary);margin:0}.weak-topic{flex-direction:column;gap:2px;padding:14px;display:flex}.weak-topic__name{font-size:.875rem;font-weight:600}.weak-topic__meta{font-size:.75rem}.result-actions{flex-direction:column;gap:8px;display:flex}@media (width>=768px){.result-actions{flex-direction:row}}.chip-row{gap:8px;padding-bottom:2px;display:flex;overflow-x:auto}.chip{min-height:var(--tap-min);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-dark);cursor:pointer;flex:none;align-items:center;gap:6px;padding:0 14px;font-size:.8125rem;font-weight:700;display:inline-flex}.chip--active{border-color:var(--color-navy);background:var(--color-navy);color:var(--color-on-strong)}.chip--small{font-weight:600}.chip--small.chip--active{background:var(--color-navy-tint);color:var(--color-navy)}.chip__count{font-variant-numeric:tabular-nums;opacity:.85;font-weight:600}.review-list,.review-q{flex-direction:column;gap:12px;display:flex}.review-q__head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.review-q__number{color:var(--color-text-muted);font-size:.8125rem;font-weight:700}.review-q__tags{gap:6px;display:flex}.review-q__stem{white-space:pre-line;margin:0;font-size:1rem;font-weight:500;line-height:1.55}.review-q__passage{border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-bg);padding:10px 14px;font-size:.875rem}.review-q__passage summary{min-height:32px;color:var(--color-navy);cursor:pointer;font-weight:700}.review-q__passage p{white-space:pre-line;margin:8px 0 0;line-height:1.6}.review-options{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.review-option{border:1px solid var(--color-border);border-radius:var(--radius);align-items:center;gap:12px;padding:10px 12px;font-size:.9375rem;line-height:1.4;display:flex}.review-option--key{border:2px solid var(--color-green);background:var(--color-green-tint);padding:9px 11px}.review-option--key .option__letter{background:var(--color-green);color:var(--color-on-strong)}.review-option--wrong{border:2px solid var(--color-orange);background:var(--color-orange-tint);padding:9px 11px}.review-option--wrong .option__letter{background:var(--color-orange);color:var(--color-on-strong)}.review-option__tags{flex-direction:column;flex:none;align-items:flex-end;gap:4px;display:flex}.review-option__tag{color:var(--color-text-secondary);font-size:.6875rem;font-weight:700}.review-option__tag--key{color:var(--color-green-dark)}.review-q__explanation{border-radius:var(--radius);background:var(--color-navy-tint);padding:12px 14px}.review-q__explanation p{white-space:pre-line;margin:6px 0 0;font-size:.875rem;line-height:1.6}.review-q__subhead{margin-top:14px;display:block}.review-explain{flex-direction:column;gap:10px;margin:8px 0 0;padding:0;list-style:none;display:flex}.review-explain__item{align-items:flex-start;gap:10px;font-size:.875rem;line-height:1.6;display:flex}.review-explain__letter{background:var(--color-surface);width:24px;height:24px;color:var(--color-navy);border-radius:50%;flex:none;justify-content:center;align-items:center;font-size:.75rem;font-weight:800;display:inline-flex}.review-explain__letter--key{background:var(--color-green);color:var(--color-on-strong)}.review-explain__text{white-space:pre-line;min-width:0}.review-explain__tag{font-weight:700}.review-explain__tag--key{color:var(--color-green-dark)}.notice--error .btn{margin-top:10px}.tryout-row__actions{flex-wrap:wrap;flex:none;justify-content:flex-end;gap:6px;display:flex}.chip:disabled{background:var(--color-track);color:var(--color-text-muted);cursor:default;border-style:dashed}.result-pending{flex-direction:column;align-items:flex-start;gap:10px;display:flex}.review-q__report{border-top:1px solid var(--color-border);flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;padding-top:12px;font-size:.8125rem;display:flex}.report-form{flex-direction:column;gap:14px;display:flex}.report-form fieldset{border:0;margin:0;padding:0}@media (width>=768px){.dialog--sheet:has(.report-form){max-width:520px;margin:0 auto}}.math-text{min-width:0;display:inline}.math-text .math-sup,.math-text .math-sub{font-size:.75em;line-height:0;display:inline}.math-text .math-sup{vertical-align:super}.math-text .math-sub{vertical-align:sub}.math-frac__visual{vertical-align:middle;align-items:center;display:inline-flex}.math-frac__whole{margin-right:.12em}.math-frac__stack{font-variant-numeric:tabular-nums;text-align:center;flex-direction:column;align-items:stretch;margin:0 .08em;font-size:.82em;line-height:1.15;display:inline-flex}.math-frac__num{border-bottom:1.5px solid;padding:0 .15em .05em}.math-frac__den{padding:.05em .15em 0}.math-root{white-space:nowrap;align-items:flex-end;display:inline-flex}.math-root__sign{margin-right:-.04em}.math-root__body{border-top:1.5px solid;padding:.08em .1em 0 .12em;line-height:1.2}.math-frac-inline{white-space:nowrap}.math-frac-inline__num,.math-frac-inline__den{font-size:.8em}.math-frac-inline__num{vertical-align:.3em}.admin-page{flex-direction:column;gap:16px;display:flex}.admin-home .page-title{margin-bottom:12px}.admin-menu{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.admin-menu__item{min-height:56px;color:inherit;flex-direction:column;justify-content:center;gap:4px;text-decoration:none;display:flex}.admin-menu .admin-menu__item{padding:10px 12px}.admin-menu__item .muted{font-size:.8125rem;line-height:1.45;display:none}a.admin-menu__item:hover{border-color:var(--color-navy)}.admin-menu__title{color:var(--color-navy);font-weight:800}.admin-menu__badge{vertical-align:middle;margin-left:8px}.admin-menu__item--soon .admin-menu__title{color:var(--color-text-secondary)}.admin-filters{gap:12px;display:grid}.admin-filters .field{gap:6px}select.input{padding-right:10px}.admin-filters__search-row{gap:8px;display:flex}.admin-filters__search-row .input{flex:1;min-width:0}.admin-bulk{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 16px;display:flex}.admin-bulk__all{align-items:center}.admin-bulk__actions{gap:8px;display:flex}.admin-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.admin-list--loading{opacity:.6}.admin-item{border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);align-items:flex-start;gap:4px;display:flex}.admin-item__check{width:20px;height:20px;accent-color:var(--color-navy);flex:none;margin:12px 0 12px 12px}.admin-item__link{min-width:0;color:inherit;flex-direction:column;flex:1;gap:4px;padding:12px 14px 12px 8px;text-decoration:none;display:flex}.admin-item__link:hover .admin-item__code{text-decoration:underline}.admin-item__top{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.admin-item__code{color:var(--color-navy);overflow-wrap:anywhere;font-weight:700}.admin-item__meta{color:var(--color-text-muted);font-size:.8125rem}.admin-item__stem{-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;font-size:.9375rem;line-height:1.5;display:-webkit-box;overflow:hidden}.admin-item__image{color:var(--color-text-muted);margin-left:4px;font-size:.8125rem}.admin-pager{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.admin-pager__info{color:var(--color-text-muted);font-size:.875rem}.admin-meta__list{gap:10px;margin:0;display:grid}.admin-meta__list dt{color:var(--color-text-muted);font-size:.75rem;font-weight:700}.admin-meta__list dd{overflow-wrap:anywhere;margin:2px 0 0;font-size:.9375rem}.admin-actions{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.admin-actions__nav{gap:8px;display:flex}@media (width>=768px){.admin-menu{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.admin-menu .admin-menu__item{justify-content:flex-start;padding:14px 16px}.admin-menu__item .muted{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.admin-filters{grid-template-columns:repeat(4,1fr)}.admin-filters__search{grid-column:1/-1}.admin-meta__list{grid-template-columns:repeat(3,1fr)}}.question-edit{flex-direction:column;gap:16px;display:flex}.textarea{resize:vertical;min-height:auto;padding:10px 14px;font-family:inherit;line-height:1.5}.question-edit__preview{border-radius:var(--radius);background:var(--color-bg);flex-direction:column;gap:4px;padding:12px 14px;display:flex}.question-edit__preview p{white-space:pre-line;margin:0;line-height:1.55}.question-edit__options{border:none;flex-direction:column;gap:8px;margin:0;padding:0;display:flex}.question-edit__option{border:1px solid var(--color-border);border-radius:var(--radius);align-items:flex-start;gap:10px;padding:8px;display:flex}.question-edit__option--key{border-color:var(--color-green);background:var(--color-green-tint)}.question-edit__key{min-width:var(--tap-min);min-height:var(--tap-min);cursor:pointer;flex:none;align-items:center;gap:6px;font-weight:800;display:flex}.question-edit__key input{width:18px;height:18px;accent-color:var(--color-green);margin:0}.question-edit__option-body{flex-direction:column;flex:1;gap:6px;min-width:0;display:flex}.question-edit__option-preview{color:var(--color-text-secondary);font-size:.875rem}.question-edit__warning{border-radius:var(--radius);background:var(--color-amber-tint);color:var(--color-navy);margin:0;padding:10px 12px;font-size:.875rem}.question-edit__row{gap:12px;display:grid}.question-edit__actions{flex-wrap:wrap;gap:8px;display:flex}.admin-saved{margin:0}@media (width>=768px){.question-edit__row{grid-template-columns:1fr 2fr}}.admin-item--plain{padding:12px 14px}.admin-grant{flex-direction:column;flex:1;gap:6px;min-width:0;display:flex}.admin-grant .admin-bulk__actions{flex-wrap:wrap;margin-top:4px}.admin-grant__edit{border-radius:var(--radius);background:var(--color-bg);flex-direction:column;gap:10px;margin-top:6px;padding:12px;display:flex}.admin-days{align-items:center;gap:10px;font-size:.9375rem;display:flex}.admin-days .input{width:120px}.status-badge--active{background:var(--color-green-tint);color:var(--color-green-dark)}.status-badge--pending{background:var(--color-amber-tint);color:var(--color-navy)}.status-badge--expired{background:var(--color-track);color:var(--color-text-secondary)}.status-badge--revoked{background:var(--color-orange-tint);color:var(--color-orange-dark)}.admin-media{gap:12px}.admin-media__thumb{aspect-ratio:16/9;border-radius:var(--radius-sm);object-fit:cover;background:var(--color-track);flex:none;width:120px}@media (width<=480px){.admin-media{flex-direction:column}.admin-media__thumb{width:100%}}.settings-program{margin:8px 0 0;font-size:1.125rem}.settings-card__title{color:var(--color-navy);margin:0;font-size:1.0625rem;font-weight:800}.settings-card__sub{margin:4px 0 0;font-size:.875rem}.settings-card__actions{flex-wrap:wrap;gap:10px;display:flex}.settings-card .tabular{font-variant-numeric:tabular-nums}.settings-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.settings-grid--wide{grid-template-columns:minmax(0,1fr)}.settings-preview{border-radius:var(--radius);background:var(--color-navy-tint);flex-direction:column;gap:8px;padding:12px 14px;display:flex}.settings-preview__row{flex-wrap:wrap;align-items:center;gap:10px 16px;display:flex}.settings-preview__count{font-variant-numeric:tabular-nums;align-items:center;gap:8px;font-size:.9375rem;display:flex}.settings-preview__count .input{width:80px}.settings-preview__result{margin:0;font-size:.9375rem}.settings-preview__result strong{color:var(--color-navy);font-size:1.25rem;font-weight:800}.settings-preview__range{font-variant-numeric:tabular-nums;margin:0;font-size:.8125rem}.settings-warning,.settings-stale{border-radius:var(--radius-sm);background:var(--color-amber-tint);color:var(--color-navy);margin:0;padding:10px 12px;font-size:.875rem}.settings-stale{flex-direction:column;gap:10px;display:flex}.settings-stale p{margin:0}.settings-table{border-collapse:collapse;width:100%;font-size:.9375rem}.settings-table th,.settings-table td{text-align:left;padding:6px 8px 6px 0}.settings-table thead th{color:var(--color-text-secondary);font-size:.8125rem;font-weight:700}.settings-table tbody th{white-space:nowrap;font-weight:700}.settings-table .input{min-width:0}.settings-durations{flex-direction:column;gap:12px;margin:0;padding:0;list-style:none;display:flex}.settings-durations__item{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 16px;display:flex}.settings-durations__name{flex-direction:column;gap:2px;font-size:.875rem;display:flex}@media (width>=768px){.settings-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.settings-grid--wide{grid-template-columns:repeat(2,minmax(0,1fr))}.settings-stale{flex-direction:row;justify-content:space-between;align-items:center}}.banner-image-preview{aspect-ratio:12/5;border-radius:var(--radius-lg);background:var(--color-track);width:100%;height:auto;display:block}.range{width:100%;min-height:44px;accent-color:var(--color-navy)}.status-badge--info{background:var(--color-navy-tint);color:var(--color-navy)}.admin-testimonial__body{border-left:3px solid var(--color-amber);white-space:pre-line;overflow-wrap:anywhere;margin:0;padding-left:12px}.admin-testimonial__max{max-width:420px}.admin-testimonial__max .btn{align-self:flex-start}@media (width>=1024px){.admin-menu{grid-template-columns:repeat(4,minmax(0,1fr))}}.class-form{width:100%}.class-form__row{gap:12px;display:grid}.class-form__list{border:0;margin:0;padding:0}.class-form__item{flex-wrap:wrap;align-items:center;gap:4px 8px;display:flex}.class-form__item .input{flex:200px}.class-form__item .field__error{flex-basis:100%}.class-form__add{align-self:flex-start}@media (width>=768px){.class-form__row{grid-template-columns:2fr 1fr}}.class-layout{margin-top:-16px}.class-mobile{background:var(--color-surface);border-bottom:1px solid var(--color-border)}.class-mobile__head{align-items:center;gap:4px;padding:10px 8px 4px;display:flex}.class-mobile__back{width:var(--tap-min);height:var(--tap-min);color:var(--color-dark);border-radius:50%;flex:none;justify-content:center;align-items:center;display:flex}.class-mobile__title{flex-direction:column;min-width:0;display:flex}.class-mobile__name{font-size:1rem;font-weight:800}.class-mobile__access,.class-side__access{color:var(--color-text-muted);font-size:.75rem}.class-tabs{scrollbar-width:none;gap:4px;padding:4px 12px 0;display:flex;overflow-x:auto}.class-tab{min-height:var(--tap-min);color:var(--color-text-muted);border-bottom:3px solid #0000;flex:none;align-items:center;padding:0 12px;font-size:.875rem;font-weight:600;text-decoration:none;display:flex}.class-tab--active{border-bottom-color:var(--color-navy);color:var(--color-navy);font-weight:800}.class-body{align-items:stretch;display:flex}.class-side{display:none}.class-content{min-width:0;padding:16px var(--gutter) 8px;flex:1}.class-page{flex-direction:column;gap:18px;max-width:960px;display:flex}.class-page .page-title{margin:0}.class-greeting{flex-direction:column;gap:4px;display:flex}.class-greeting__target{color:var(--color-text-muted);font-variant-numeric:tabular-nums;flex-wrap:wrap;align-items:center;gap:4px 12px;margin:0;font-size:.9375rem;display:flex}.class-greeting__target .link-button{min-height:var(--tap-min)}.class-card-title{margin:0;font-size:1rem;font-weight:800}.class-topics{flex-direction:column;gap:14px;display:flex}.class-topics>.muted,.class-topics>p{margin:0}.class-topics .btn{align-self:stretch}.topic-bars{flex-direction:column;gap:14px;margin:0;padding:0;list-style:none;display:flex}.topic-bar{flex-direction:column;gap:6px;display:flex}.topic-bar__line{justify-content:space-between;gap:8px;font-size:.875rem;display:flex}.topic-bar__name{font-weight:600}.topic-bar__percent{font-variant-numeric:tabular-nums;font-weight:700}.topic-bar__track{background:var(--color-track);border-radius:4px;height:8px;overflow:hidden}.topic-bar__fill{background:var(--color-navy);border-radius:4px;height:8px}.topic-bar__fill--weak{background:var(--color-orange)}.topic-bar__meta{color:var(--color-text-muted);font-size:.75rem}.practice-running,.practice-quota,.practice-weakest,.practice-form{flex-direction:column;gap:14px;display:flex}.practice-running p,.practice-quota p,.practice-weakest p{margin:0}.practice-quota{border-color:var(--color-amber-border);background:var(--color-amber-tint);font-size:.9375rem}.practice-quota .btn{align-self:flex-start}.practice-weakest__topic{font-weight:700}.practice-weakest__percent{color:var(--color-orange-dark);font-variant-numeric:tabular-nums;font-weight:600}.practice-field{border:none;flex-direction:column;gap:8px;margin:0;padding:0;display:flex}.practice-field .chip-row{margin:0}.practice-field .chip{border-radius:var(--radius-btn)}.practice-field .field__hint{margin:0}@media (width>=960px){.practice-running .btn,.practice-weakest .btn,.practice-form>.btn,.class-topics .btn{align-self:flex-start}}.class-card-head{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.class-card-head a{min-height:var(--tap-min);align-items:center;font-size:.875rem;font-weight:600;text-decoration:none;display:inline-flex}.class-summary-grid{flex-direction:column;gap:18px;display:flex}.topic-bar--few{opacity:.7}.leaderboard{flex-direction:column;gap:14px;display:flex}.leaderboard__chips{margin:0}.leaderboard__me{border-radius:var(--radius);background:var(--color-navy-tint);color:var(--color-navy);flex-direction:column;gap:2px;padding:14px 16px;display:flex}.leaderboard__me-label{font-size:.8125rem;font-weight:600}.leaderboard__me-value{font-variant-numeric:tabular-nums;font-size:1.375rem;font-weight:800}.leaderboard__list{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.leaderboard__list--loading{opacity:.6}.leaderboard__row{border-bottom:1px solid var(--color-track);align-items:center;gap:10px;min-height:38px;font-size:.875rem;display:flex}.leaderboard__row--me .leaderboard__name{color:var(--color-navy);font-weight:800}.leaderboard__rank{background:var(--color-bg);width:26px;height:26px;color:var(--color-text-muted);font-variant-numeric:tabular-nums;border-radius:50%;flex:none;justify-content:center;align-items:center;font-size:.75rem;font-weight:800;display:flex}.leaderboard__rank--top{background:var(--color-amber);color:var(--color-on-amber)}.leaderboard__name{overflow-wrap:anywhere;flex:1;min-width:0;font-weight:600}.leaderboard__note{color:var(--color-text-muted);margin:0;font-size:.75rem;line-height:1.5}.leaderboard__more{display:none}@media (width<=959px){.leaderboard--compact .leaderboard__chips,.leaderboard--compact .leaderboard__list,.leaderboard--compact .leaderboard__note{display:none}.leaderboard--compact .leaderboard__more{min-height:var(--tap-min);align-items:center;font-size:.875rem;font-weight:700;text-decoration:none;display:inline-flex}}.class-results{flex-direction:column;gap:14px;display:flex}.class-results>.muted{margin:0}.history-list{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.history-item{border-bottom:1px solid var(--color-track);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 16px;padding:12px 0;display:flex}.history-item:last-child{border-bottom:none}.history-item__info{flex-direction:column;gap:4px;min-width:0;display:flex}.history-item__title{flex-wrap:wrap;align-items:center;gap:8px;font-weight:700;display:flex}.history-item__date{color:var(--color-text-muted);font-size:.8125rem}.history-item__scores{flex-wrap:wrap;gap:6px;display:flex}.history-score{border-radius:var(--radius-sm);background:var(--color-navy-tint);color:var(--color-navy);font-variant-numeric:tabular-nums;padding:3px 8px;font-size:.8125rem;font-weight:700}.history-score--pass{background:var(--color-green-tint);color:var(--color-green-dark)}.history-score--fail{background:var(--color-orange-tint);color:var(--color-orange-dark)}.history-note{font-size:.8125rem}.tryout-dot{box-sizing:border-box;border-radius:50%;flex:none;justify-content:center;align-items:center;width:20px;height:20px;display:flex}.tryout-dot--done{background:var(--color-green);color:var(--color-on-strong)}.tryout-dot--progress{border:6px solid var(--color-amber)}.tryout-dot--open{border:2px solid var(--color-gray)}.tryout-dot--locked{background:var(--color-track);color:var(--color-text-muted)}@media (width>=960px){.class-layout{margin-top:-28px}.class-mobile{display:none}.class-side{box-sizing:border-box;border-right:1px solid var(--color-border);background:var(--color-surface);flex-direction:column;flex:0 0 272px;gap:4px;min-height:100%;padding:20px 14px;display:flex}.class-side__head{border-bottom:1px solid var(--color-track);flex-direction:column;gap:4px;margin-bottom:8px;padding:0 10px 14px;display:flex}.class-side__name{font-size:1.0625rem;font-weight:800}.class-side__link{min-height:var(--tap-min);border-radius:var(--radius-sm);color:var(--color-text-secondary);align-items:center;gap:10px;padding:0 10px;font-size:.875rem;font-weight:600;text-decoration:none;display:flex}.class-side__link:hover{background:var(--color-bg);color:var(--color-navy)}.class-side__link--active{background:var(--color-navy-tint);color:var(--color-navy);font-weight:700}.class-side__group{letter-spacing:.5px;text-transform:uppercase;font-size:.6875rem;font-weight:700}.class-side__tryout{color:var(--color-dark)}.class-side__tryout--locked{color:var(--color-text-muted)}.class-side__tryout-name{flex:1}.class-side__note{color:var(--color-text-muted);font-size:.75rem;font-weight:600}.class-side__tryout--done .class-side__note{color:var(--color-green)}.class-side__tryout--progress .class-side__note{color:var(--color-orange-dark)}.class-side__divider{background:var(--color-track);height:1px;margin:10px 0}.class-content{padding:28px 32px 40px}.class-page{gap:24px}.class-card-title{font-size:1.125rem}.class-summary-grid{flex-flow:wrap;align-items:flex-start;gap:24px}.class-summary-grid .class-topics{flex:420px}.class-summary-grid .leaderboard{flex:320px}}.topic-group,.practice-weakest__item,.weak-topics__group{flex-direction:column;gap:10px;display:flex}.topic-group+.topic-group,.practice-weakest__item+.practice-weakest__item{border-top:1px solid var(--color-track);padding-top:14px}.topic-group__title{color:var(--color-navy);margin:0;font-size:.9375rem;font-weight:800}.practice-weakest__test{color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.04em;font-size:.75rem;font-weight:700;display:block}@media (width>=960px){.topic-group .btn,.practice-weakest__item .btn{align-self:flex-start}}.testimonial-form{flex-direction:column;align-items:stretch;gap:12px;display:flex}.testimonial-form .status-badge{align-self:flex-start}.testimonial-form p{margin:0}.testimonial-form__quote{border-left:3px solid var(--color-amber);white-space:pre-line;overflow-wrap:anywhere;margin:0;padding-left:12px}.testimonial-form__actions{flex-wrap:wrap;gap:8px;display:flex}.choice-group--two{grid-template-columns:repeat(2,minmax(0,1fr))}@media (width>=960px){.testimonial-form__start{align-self:flex-start}}.payment-page{flex-direction:column;gap:16px;max-width:960px;display:flex}.packages{flex-direction:column;gap:16px;display:flex}.package-card{border:2px solid var(--color-navy);flex-direction:column;gap:14px;display:flex}.package-card__info,.package-card__buy{flex-direction:column;gap:14px;display:flex}@media (width>=768px){.package-card{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);align-items:start;gap:28px;display:grid}.package-card__buy{border-left:1px solid var(--color-track);padding-left:28px}}.package-card__head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.package-card__name{flex-direction:column;gap:4px;display:flex}.package-card__name .eyebrow{color:var(--color-navy)}.package-card__price{font-variant-numeric:tabular-nums;margin:0;font-size:1.375rem;font-weight:800}.package-card__note{border-top:1px solid var(--color-track);color:var(--color-text-muted);margin:0;padding-top:10px;font-size:.75rem}.package-card__access{color:var(--color-green-dark);margin:0;font-size:.875rem;font-weight:600}.pay-steps{flex-direction:column;gap:14px;display:flex}.pay-steps ol{color:var(--color-text-secondary);flex-direction:column;gap:6px;margin:0;padding-left:20px;font-size:.875rem;line-height:1.45;display:flex}.pay-steps .section-title{margin:0}@media (width>=768px){.pay-steps ol{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;display:grid}}.pay-layout{flex-direction:column;gap:16px;display:flex}@media (width>=768px){.pay-layout{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);align-items:start;display:grid}}.pay-total{border-radius:var(--radius);background:var(--color-bg);color:var(--color-text-secondary);justify-content:space-between;align-items:center;padding:12px 14px;font-size:.8125rem;display:flex}.pay-total strong{color:var(--color-dark);font-variant-numeric:tabular-nums;font-size:1.0625rem;font-weight:800}.pay-actions{flex-direction:column;gap:8px;display:flex}.pay-actions .btn{width:100%}.pay-hint{color:var(--color-text-muted);text-align:center;margin:0;font-size:.75rem}.pay-status{flex-direction:column;gap:10px;display:flex}.pay-status>p{color:var(--color-text-secondary);margin:0;font-size:.875rem;line-height:1.5}.pay-status__title{color:var(--color-dark);align-items:center;gap:8px;margin:0;font-size:.9375rem;font-weight:700;display:flex}.pay-status--pending{background:var(--color-amber-tint);border-color:var(--color-amber-border)}.pay-status--paid{background:var(--color-green-tint);border-color:var(--color-green)}.pay-status--paid .pay-status__title{color:var(--color-green-dark)}.pay-summary{grid-template-columns:auto 1fr;gap:6px 16px;margin:0;font-size:.875rem;display:grid}.pay-summary dt{color:var(--color-text-muted)}.pay-summary dd{font-variant-numeric:tabular-nums;margin:0;font-weight:600}.webhook-url{border-radius:var(--radius-sm);background:var(--color-bg);border:1px solid var(--color-border);overflow-wrap:anywhere;padding:10px 12px;font-size:.8125rem;display:block}.voucher-box__row{gap:8px;display:flex}.voucher-box__row .input{text-transform:uppercase;flex:1;min-width:0}.voucher-box__applied{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.voucher-box__applied p{margin:0}.package-card__old-price{color:var(--color-text-muted);font-size:1rem;font-weight:600}.pay-total--discount{background:var(--color-green-tint);color:var(--color-green-dark)}.pay-total--discount strong{color:var(--color-green-dark)}.ec-page{flex-direction:column;gap:12px;display:flex}.ec-page .page-title{margin:0}.ec-page--read{max-width:760px}.ec-page>.eyebrow{margin:8px 0 0}.ec-lead{color:var(--color-text-secondary);margin:0}.ec-text{white-space:pre-wrap;overflow-wrap:anywhere;margin:0}.ec-text--mono{font-family:var(--font-mono);font-size:.9375rem}.ec-admin-note{border-radius:var(--radius);background:var(--color-amber-tint);color:var(--color-amber-ink);margin:0;padding:10px 12px;font-size:.875rem}.ec-crumbs{color:var(--color-text-muted);flex-wrap:wrap;gap:6px;font-size:.875rem;display:flex}.ec-crumbs a{color:var(--color-navy);font-weight:600;text-decoration:none}.ec-crumbs a:hover{text-decoration:underline}.ec-chip{border-radius:var(--radius-sm);background:var(--color-navy-tint);color:var(--color-navy);white-space:nowrap;padding:2px 8px;font-size:.75rem;font-weight:700;display:inline-block}.ec-chip--draft{background:var(--color-amber-tint);color:var(--color-amber-ink)}.ec-chip--free{background:var(--color-green-tint);color:var(--color-green-dark)}a.ec-chip{text-decoration:none}.ec-meta{flex-wrap:wrap;align-items:center;gap:8px;margin:0;font-size:.875rem;display:flex}.ec-modules,.ec-labs,.ec-lessons{gap:8px;margin:8px 0 0;padding:0;list-style:none;display:grid}@media (width>=768px){.ec-modules,.ec-labs{grid-template-columns:repeat(2,minmax(0,1fr))}}.ec-module-link,.ec-lab-link,.ec-lesson-link{min-height:var(--tap-min);border-radius:var(--radius);background:var(--color-surface);color:var(--color-dark);align-items:center;gap:12px;padding:12px 14px;text-decoration:none;display:flex}.ec-module-link:hover,.ec-lab-link:hover,.ec-lesson-link:hover{background:var(--color-navy-tint)}.ec-module-link>svg,.ec-lab-link>svg{color:var(--color-text-muted);flex:none}.ec-module-link__number{border-radius:var(--radius);background:var(--color-navy);width:40px;height:40px;color:var(--color-on-strong);font-family:var(--font-display);flex:none;place-items:center;font-size:1.125rem;font-weight:700;display:grid}.ec-module-link__body,.ec-lab-link__body{flex-direction:column;flex:1;min-width:0;font-size:.875rem;display:flex}.ec-module-link__title,.ec-lab-link__title{font-size:1rem;font-weight:700}.ec-lab-link__title,.ec-title-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.ec-part{flex-direction:column;gap:6px;margin-top:16px;display:flex}.ec-part .eyebrow{margin:0}.ec-part__title{margin:0;font-size:1.25rem}.ec-part>.ec-text{color:var(--color-text-secondary)}.ec-lesson-link__code{min-width:2.75em;color:var(--color-navy);flex:none;font-weight:700}.ec-lesson-link__title{flex:1;min-width:0;font-weight:600}.ec-summary{border-radius:var(--radius);background:var(--color-brand-navy);color:var(--color-on-brand);flex-direction:column;gap:12px;margin-top:20px;padding:20px;display:flex}.ec-summary .eyebrow{color:var(--color-amber);margin:0}.ec-summary__group h3{margin:0 0 6px;font-size:1rem}.ec-summary__group ul{gap:4px;margin:0;padding-left:1.2em;display:grid}.ec-lesson{flex-direction:column;gap:16px;margin-top:8px;display:flex}.ec-block{border-radius:var(--radius);flex-direction:column;gap:8px;padding:16px;display:flex}@media (width>=768px){.ec-block{padding:20px 24px}}.ec-block__label{margin:0}.ec-block__title{margin:0;font-size:1.125rem}.ec-block--bayangkan{background:var(--color-amber-tint)}.ec-block--bayangkan .ec-block__label{color:var(--color-amber-ink)}.ec-block--inti{background:var(--color-navy-tint)}.ec-block--inti .ec-block__label{color:var(--color-navy)}.ec-block--jembatan{padding:0}.ec-block--contoh,.ec-block--lab{background:var(--color-surface)}.ec-block--lab .btn{align-self:flex-start}.ec-lab__frame{border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);width:100%;display:block}.ec-block--awas{background:var(--color-orange-tint)}.ec-block--awas .ec-block__label{color:var(--color-orange-dark)}.ec-block .btn{align-self:flex-start;margin-top:4px}.ec-hint{color:var(--color-text-muted);margin:4px 0 0;font-size:.875rem}.ec-step{border-radius:var(--radius-choice);background:var(--color-panel);flex-direction:column;gap:4px;padding:12px;display:flex}.ec-step__name{align-items:center;gap:8px;margin:0;font-weight:700;display:flex}.ec-step__number{border-radius:var(--radius-sm);background:var(--color-navy);width:24px;height:24px;color:var(--color-on-strong);flex:none;place-items:center;font-size:.8125rem;display:grid}.ec-answer{border-radius:var(--radius-choice);background:var(--color-green-tint);color:var(--color-green-dark);flex-wrap:wrap;align-items:baseline;gap:8px;margin:4px 0 0;padding:12px;font-weight:700;display:flex}.ec-answer .eyebrow{color:inherit}.ec-choices{gap:6px;margin:0;padding:0;list-style:none;display:grid}.ec-choices li{align-items:baseline;gap:10px;display:flex}.ec-choices__letter{border-radius:var(--radius-sm);background:var(--color-navy-tint);width:24px;height:24px;color:var(--color-navy);flex:none;place-items:center;font-size:.8125rem;font-weight:700;display:inline-grid}.ec-figure{flex-direction:column;align-items:center;gap:6px;margin:0;display:flex}.ec-figure img{border-radius:var(--radius);background:var(--color-image-bg);max-width:100%;height:auto}.ec-figure figcaption{max-width:100%;color:var(--color-text-muted);text-align:center;font-size:.8125rem}.ec-figure--missing{border-radius:var(--radius);background:var(--color-amber-tint);color:var(--color-amber-ink);align-items:stretch;padding:12px}.ec-table-wrap{max-width:100%;overflow-x:auto}.ec-table{border-collapse:collapse;width:100%;font-size:.875rem}.ec-table th,.ec-table td{text-align:left;vertical-align:top;padding:8px 10px}.ec-table th{background:var(--color-navy-tint);color:var(--color-navy);font-weight:700}.ec-table tbody tr:nth-child(2n) td{background:var(--color-panel)}.ec-block--jembatan .ec-table tbody tr:nth-child(odd) td{background:var(--color-surface)}.ec-pager{grid-template-columns:1fr 1fr;gap:8px;margin-top:24px;display:grid}.ec-pager__link{min-height:var(--tap-min);border-radius:var(--radius);background:var(--color-surface);color:var(--color-navy);align-items:center;gap:8px;padding:10px 12px;font-size:.875rem;font-weight:600;text-decoration:none;display:flex}.ec-pager__link:hover{background:var(--color-navy-tint)}.ec-pager__link>span{flex-direction:column;min-width:0;display:flex}.ec-pager__link svg{flex:none}.ec-pager__link--next{text-align:right;justify-content:flex-end}.ec-lab-open{align-self:flex-start}.ec-toc{flex-direction:column;gap:10px;display:flex}.ec-toc__module{color:var(--color-dark);flex-direction:column;gap:2px;padding:0 10px;text-decoration:none;display:flex}.ec-toc__module .eyebrow{margin:0}.ec-toc__module-title{font-weight:800}.ec-toc__part-title{color:var(--color-text-muted);margin:0;padding:0 10px;font-size:.75rem;font-weight:700}.ec-toc__lessons{flex-direction:column;gap:2px;margin:4px 0 0;padding:0;list-style:none;display:flex}.ec-toc__lesson{min-height:var(--tap-min);box-sizing:border-box;border-radius:var(--radius-sm);color:var(--color-text-secondary);align-items:baseline;gap:8px;padding:10px;font-size:.875rem;line-height:1.35;text-decoration:none;display:flex}.ec-toc__lesson:hover{background:var(--color-bg);color:var(--color-navy)}.ec-toc__lesson--current{background:var(--color-navy-tint);color:var(--color-navy);font-weight:700}.ec-toc__code{min-width:2.5em;color:var(--color-text-muted);flex:none;font-weight:700}.ec-toc__chip{vertical-align:1px;margin-left:6px}.ec-toc__lesson--open{color:var(--color-dark);font-weight:700}.ec-toc--nested{margin:4px 0 8px 12px}.ec-toc__lesson--current .ec-toc__code{color:var(--color-navy)}.class-side__head.ec-side-head{flex-direction:row;justify-content:space-between;align-items:flex-start}.ec-side-head__text{flex-direction:column;gap:4px;display:flex}.ec-side-head .btn--icon{flex:none;margin:-8px -8px 0 0}.ec-side-show{display:none}@media (width>=960px){.ec-side-show{margin-bottom:16px;display:inline-flex}.ec-body--wide .ec-page--read{max-width:1040px;margin:0 auto}}.ec-toc__toggle{text-align:left;cursor:pointer;background:0 0;border:0;width:100%;font-family:inherit}.ec-toc__toggle-title,.ec-side-menu__label{flex:1}.ec-toc__toggle>svg,.ec-side-menu>svg:last-child{color:var(--color-text-muted);flex:none;align-self:center;transition:transform .15s}.ec-toc__toggle[aria-expanded=true]>svg,.ec-side-menu[aria-expanded=true]>svg:last-child{transform:rotate(90deg)}@media (prefers-reduced-motion:reduce){.ec-toc__toggle>svg,.ec-side-menu>svg:last-child{transition:none}}.ec-side-sub{margin:6px 0 10px 12px}.ec-toc-mobile{margin-bottom:16px}.ec-toc-mobile>summary{list-style:none}.ec-toc-mobile>summary::-webkit-details-marker{display:none}.ec-toc-mobile[open]>.ec-toc{border-radius:var(--radius);background:var(--color-surface);margin-top:12px;padding:12px 4px}@media (width>=960px){.ec-toc-mobile{display:none}}.btn{border-radius:var(--radius-btn);cursor:pointer;border:1px solid #0000;justify-content:center;align-items:center;gap:6px;min-height:46px;padding:0 20px;font-size:.875rem;font-weight:700;text-decoration:none;transition:transform .12s,background-color .2s,border-color .2s;display:inline-flex}.btn:not(:disabled):active{transform:scale(.98)}.btn .arrow{transition:transform .2s}.btn:not(:disabled):hover .arrow{transform:translate(4px)}@media (prefers-reduced-motion:reduce){.btn:not(:disabled):active,.btn:not(:disabled):hover .arrow{transform:none}}.btn--sm{min-height:var(--tap-min);border-radius:var(--radius-btn);padding:0 14px}.btn--lg{min-height:52px;padding:0 24px;font-size:1rem}.btn--block{width:100%}@media (width>=768px){.btn{min-height:48px;font-size:.9375rem}.btn--sm{min-height:var(--tap-min);padding:0 18px;font-size:.875rem}}.btn--primary{background:var(--color-navy);color:var(--color-on-strong)}.btn--primary:not(:disabled):hover{background:var(--color-dark);color:var(--color-on-strong)}.btn--secondary{background:var(--color-navy-tint);color:var(--color-navy)}.btn--secondary:not(:disabled):hover{border-color:var(--color-navy);color:var(--color-navy)}.btn--success{background:var(--color-green);color:var(--color-on-strong)}.btn--success:not(:disabled):hover{border-color:var(--color-dark);color:var(--color-on-strong)}.btn--dark{background:var(--color-dark);color:var(--color-on-strong)}.btn--dark:not(:disabled):hover{background:var(--color-navy);color:var(--color-on-strong)}.btn--accent{background:var(--color-amber);color:var(--color-on-amber);font-weight:800}.btn--accent:not(:disabled):hover{border-color:var(--color-navy);color:var(--color-navy)}.btn--doubt{border-color:var(--color-amber-border);background:var(--color-amber-tint);color:var(--color-navy)}.btn--doubt-on{border-color:var(--color-amber);background:var(--color-amber);color:var(--color-on-amber)}.btn--outline{border-color:var(--color-navy);color:var(--color-navy);background:0 0}.btn--outline:not(:disabled):hover{background:var(--color-navy-tint);color:var(--color-navy)}.btn--neutral{border-color:var(--color-border);background:var(--color-surface);color:var(--color-dark);font-weight:600}.btn--neutral:not(:disabled):hover{border-color:var(--color-text-muted);color:var(--color-dark)}.btn--strong{border-color:var(--color-dark);background:var(--color-surface);color:var(--color-dark)}.btn--strong:not(:disabled):hover{background:var(--color-bg);color:var(--color-dark)}.btn--soft{border-color:var(--color-border);background:var(--color-bg);color:var(--color-dark);font-weight:600}.btn--soft:not(:disabled):hover{border-color:var(--color-text-muted);color:var(--color-dark)}.btn--on-brand{color:var(--color-on-brand);background:0 0;border-color:#ffffff80}.btn--on-brand:not(:disabled):hover{border-color:var(--color-on-brand);color:var(--color-on-brand)}.btn--icon{width:var(--tap-min);min-height:var(--tap-min);color:var(--color-text-secondary);background:0 0;border-radius:50%;padding:0}.btn--icon:not(:disabled):hover{background:var(--color-navy-tint);color:var(--color-navy)}.btn--ghost{color:var(--color-navy);background:0 0;padding:0 10px}.btn--ghost:not(:disabled):hover{background:var(--color-navy-tint);color:var(--color-navy)}@media (width>=768px){.btn--ghost{padding:0 16px}}.btn:disabled{cursor:not-allowed}.btn--primary:disabled,.btn--secondary:disabled,.btn--success:disabled,.btn--dark:disabled,.btn--doubt:disabled{opacity:.55}.btn--outline:disabled,.btn--neutral:disabled,.btn--strong:disabled,.btn--soft:disabled,.btn--ghost:disabled{color:var(--color-gray)}*,:before,:after{box-sizing:border-box}body{font-family:var(--font-sans);color:var(--color-dark);background:var(--color-bg);-webkit-font-smoothing:antialiased;margin:0;line-height:1.5}h1,h2,h3{font-family:var(--font-display);letter-spacing:-.025em;font-weight:700}a{color:var(--color-navy)}a:hover{color:var(--color-dark)}button,input{font-family:inherit}:focus-visible{outline:3px solid var(--color-navy);outline-offset:2px}.muted{color:var(--color-text-muted);margin:0}.visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}@media (width<=767.98px){.hide-sm{display:none!important}}@media (width>=768px){.hide-lg{display:none!important}}.card{background:var(--color-surface);border:1px solid var(--line);border-radius:var(--radius-xl);box-shadow:var(--shadow-card);padding:18px}.card>p{margin:0 0 16px}@media (width>=768px){.card{padding:24px}}.badge{border-radius:var(--radius-sm);background:var(--color-amber);color:var(--color-on-amber);white-space:nowrap;padding:4px 8px;font-size:.6875rem;font-weight:700;display:inline-block}.eyebrow{letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-muted);font-size:.6875rem;font-weight:700}.ticks{border-right:1px solid var(--color-gray);background-image:repeating-linear-gradient(90deg, var(--color-gray) 0 1px, transparent 1px 10%);opacity:.8;height:5px;margin-top:4px}.label{letter-spacing:.1em;text-transform:uppercase;color:var(--color-text-muted);font-size:.75rem;font-weight:700}.cut-br{clip-path:polygon(0 0,100% 0,100% calc(100% - 44px),calc(100% - 44px) 100%,0 100%)}.vruler{background-image:repeating-linear-gradient(#ffffff80 0 1.5px,#0000 1.5px 64px),repeating-linear-gradient(#fff3 0 1px,#0000 1px 16px);background-position:0 0;background-repeat:no-repeat;background-size:36px 100%,16px 100%}.lift{transition:transform .25s cubic-bezier(.2,.8,.2,1),box-shadow .25s}.lift:hover{box-shadow:var(--shadow-lift);transform:translateY(-5px)}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}.num{font-variant-numeric:tabular-nums}@media (width>=768px){.badge,.eyebrow{font-size:.75rem}}.notice--error{border-color:var(--color-orange);background:var(--color-amber-tint);color:var(--color-orange)}.notice--error>p{margin:0}
