/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,::backdrop,:after,:before{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-font-weight:initial;--tw-tracking:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-ease:initial}}}@layer theme{:host,:root{--font-sans:var(--font-inter),ui-sans-serif,system-ui,sans-serif;--font-mono:ui-monospace,"SFMono-Regular","Cascadia Code",monospace;--spacing:.25rem;--breakpoint-sm:480px;--breakpoint-md:768px;--breakpoint-lg:1024px;--breakpoint-xl:1280px;--breakpoint-2xl:1536px;--container-6xl:72rem;--container-7xl:80rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-base:1rem;--text-base--line-height:calc(1.5 / 1);--text-3xl:1.875rem;--text-3xl--line-height:calc(2.25 / 1.875);--text-4xl:2.25rem;--text-4xl--line-height:calc(2.5 / 2.25);--text-5xl:3rem;--text-5xl--line-height:1;--font-weight-semibold:600;--radius-xs:8px;--radius-sm:12px;--radius-md:16px;--radius-lg:22px;--radius-xl:30px;--shadow-sm:0 1px 3px 0 #0000001a,0 1px 2px -1px #0000001a;--shadow-md:0 4px 6px -1px #0000001a,0 2px 4px -2px #0000001a;--shadow-lg:0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a;--ease-in:cubic-bezier(.4,0,1,1);--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--color-bg:#fff;--color-surface:#fff;--color-surface-muted:#faf9f5;--color-surface-dark:#0c0c0d;--color-text:#0a0a0b;--color-text-muted:#45464c;--color-text-subtle:#76777d;--color-on-dark:#f7f6f2;--color-on-dark-muted:#b9b8b2;--color-border:#e7e4db;--color-border-mid:#d6d3c9;--color-border-strong:#111113;--color-accent:#ffc400;--color-accent-strong:#e6ae00;--color-accent-soft:#fff6d2;--color-accent-foreground:#0a0a0b;--color-success:#15803d;--color-success-surface:#e8f6ee;--color-warn:#a86100;--color-warn-surface:#fff3d6;--color-danger:#c5453a;--color-danger-surface:#fbe9e7;--font-display:var(--font-sora),var(--font-inter),sans-serif;--breakpoint-xs:360px}}@layer base{*,::backdrop,:after,:before{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}:host,html{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue","Noto Sans",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}menu,ol,ul{list-style:none}audio,canvas,embed,iframe,img,object,svg,video{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,optgroup,select,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit,::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-millisecond-field,::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.\@container{container-type:inline-size}.collapse{visibility:collapse}.invisible{visibility:hidden}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.container{width:100%}@media (min-width:360px){.container{max-width:360px}}@media (min-width:480px){.container{max-width:480px}}@media (min-width:768px){.container{max-width:768px}}@media (min-width:1024px){.container{max-width:1024px}}@media (min-width:1280px){.container{max-width:1280px}}@media (min-width:1536px){.container{max-width:1536px}}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-flex{display:inline-flex}.table{display:table}.h-6{height:calc(var(--spacing) * 6)}.h-8{height:calc(var(--spacing) * 8)}.h-10{height:calc(var(--spacing) * 10)}.h-12{height:calc(var(--spacing) * 12)}.min-h-12{min-height:calc(var(--spacing) * 12)}.min-h-dvh{min-height:100dvh}.w-10{width:calc(var(--spacing) * 10)}.max-w-6xl{max-width:var(--container-6xl)}.max-w-7xl{max-width:var(--container-7xl)}.max-w-\[65ch\],.max-w-prose{max-width:65ch}.scale-\[0\.98\]{scale:.98}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.flex-col{flex-direction:column}.items-center{align-items:center}.gap-2{gap:calc(var(--spacing) * 2)}.gap-6{gap:calc(var(--spacing) * 6)}.rounded{border-radius:.25rem}.rounded-full{border-radius:3.40282e+38px}.rounded-lg{border-radius:var(--radius-lg)}.rounded-md{border-radius:var(--radius-md)}.rounded-xl{border-radius:var(--radius-xl)}.border{border-style:var(--tw-border-style);border-width:1px}.border-\[1\.5px\]{border-style:var(--tw-border-style);border-width:1.5px}.border-accent{border-color:var(--color-accent)}.border-border{border-color:var(--color-border)}.border-text{border-color:var(--color-text)}.bg-accent{background-color:var(--color-accent)}.bg-surface{background-color:var(--color-surface)}.bg-text{background-color:var(--color-text)}.p-4{padding:calc(var(--spacing) * 4)}.p-6{padding:calc(var(--spacing) * 6)}.px-2\.5{padding-inline:calc(var(--spacing) * 2.5)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-6{padding-inline:calc(var(--spacing) * 6)}.py-3{padding-block:calc(var(--spacing) * 3)}.pt-6{padding-top:calc(var(--spacing) * 6)}.pb-6{padding-bottom:calc(var(--spacing) * 6)}.font-display{font-family:var(--font-display)}.text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-\[-0\.02em\]{--tw-tracking:-.02em;letter-spacing:-.02em}.text-accent{color:var(--color-accent)}.text-accent-foreground{color:var(--color-accent-foreground)}.text-on-dark{color:var(--color-on-dark)}.lowercase{text-transform:lowercase}.uppercase{text-transform:uppercase}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a)}.shadow,.shadow-\[var\(--shadow-md\)\]{box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-\[var\(--shadow-md\)\]{--tw-shadow:var(--shadow-md)}.shadow\/radius{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a)}.ring,.shadow\/radius{box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor)}.ring-offset-2{--tw-ring-offset-width:2px;--tw-ring-offset-shadow:var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.ease-in{--tw-ease:var(--ease-in);transition-timing-function:var(--ease-in)}.focus-visible\:ring-2:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}@media (min-width:480px){.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:px-6{padding-inline:calc(var(--spacing) * 6)}}@media (min-width:768px){.md\:flex{display:flex}.md\:hidden{display:none}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:p-6{padding:calc(var(--spacing) * 6)}.md\:p-8{padding:calc(var(--spacing) * 8)}.md\:text-4xl{font-size:var(--text-4xl);line-height:var(--tw-leading,var(--text-4xl--line-height))}}@media (min-width:1024px){.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:flex-row{flex-direction:row}.lg\:p-8{padding:calc(var(--spacing) * 8)}.lg\:px-8{padding-inline:calc(var(--spacing) * 8)}.lg\:text-5xl{font-size:var(--text-5xl);line-height:var(--tw-leading,var(--text-5xl--line-height))}}}:root{--fs-display:clamp(2.5rem,1.5rem + 5vw,4.25rem);--fs-h1:clamp(1.9rem,1.4rem + 2.4vw,2.9rem);--fs-h2:clamp(1.5rem,1.25rem + 1.2vw,2rem);--fs-h3:clamp(1.15rem,1.05rem + .5vw,1.4rem);--fs-body-lg:clamp(1.05rem,1rem + .3vw,1.2rem);--fs-body:1rem;--fs-body-sm:.875rem;--fs-meta:.75rem;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-7:48px;--space-8:64px;--space-9:96px;--section-pad:clamp(2.5rem,1.5rem + 4vw,4.5rem);--shadow-sm:0 1px 2px #0a0a0b0d;--shadow-md:0 14px 34px #0a0a0b1a;--shadow-lg:0 28px 64px #0a0a0b24;--shadow-pop:8px 8px 0 var(--color-accent);--ring:#0a0a0b;--ring-halo:#ffc400;--ring-on-dark:#ffc400;--focus:var(--ring-halo);--z-base:0;--z-raised:10;--z-sticky:20;--z-header:50;--z-drawer:60;--z-overlay:70;--z-modal:80;--z-toast:90;--ease:cubic-bezier(.22,1,.36,1);--dur-fast:.12s;--dur-base:.18s;--dur-card:.26s;--dur-reveal:.42s;--dur-progress:.6s;--container:1200px;--container-dash:1320px;--container-lesson:1440px;--container-read:720px;--bg:var(--color-bg);--bg-alt:var(--color-surface-muted);--bg-dark:var(--color-surface-dark);--ink:var(--color-text);--ink-2:var(--color-text-muted);--ink-3:var(--color-text-subtle);--on-dark:var(--color-on-dark);--on-dark-2:var(--color-on-dark-muted);--line:var(--color-border-strong);--line-soft:var(--color-border);--line-mid:var(--color-border-mid);--yellow:var(--color-accent);--yellow-deep:var(--color-accent-strong);--yellow-soft:var(--color-accent-soft);--yellow-ink:var(--color-accent-foreground);--green:var(--color-success);--red:var(--color-danger)}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--bg);color:var(--ink);font-family:var(--font-sans);font-size:var(--fs-body);text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;margin:0;line-height:1.6;overflow-x:clip}h1,h2,h3,h4{font-family:var(--font-display);letter-spacing:-.02em;margin:0;font-weight:700;line-height:1.16}p{margin:0}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}::selection{background:var(--yellow);color:var(--ink)}:focus-visible{outline:2px solid var(--ring);outline-offset:2px;box-shadow:0 0 0 4px var(--ring-halo);border-radius:4px}.auth-aside :focus-visible,.price-card.is-idp :focus-visible,.site-footer :focus-visible,.surface-dark :focus-visible{outline-color:var(--ring-on-dark);box-shadow:none}@media (prefers-reduced-motion:reduce){*,:after,:before{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{z-index:var(--z-toast);border-radius:var(--radius-sm);background:var(--ink);color:var(--on-dark);transition:top var(--dur-base) var(--ease);padding:10px 16px;font-size:.9rem;font-weight:600;position:absolute;top:-120px;left:12px}.skip-link:focus{top:12px}.container{width:min(var(--container),calc(100vw - 32px));margin-inline:auto}.container-dash{width:min(var(--container-dash),calc(100vw - 32px));margin-inline:auto}.container-read{width:min(var(--container-read),calc(100vw - 32px));margin-inline:auto}.section{padding:var(--section-pad) 0}.section-alt{background:var(--bg-alt);border-block:1px solid var(--line-soft)}.section-ink{background:var(--ink);color:var(--on-dark);border-block:none;position:relative;overflow:hidden}.section-ink:before{content:"";pointer-events:none;opacity:.22;background-image:repeating-linear-gradient(-52deg,#0000,#0000 18px,#ffc40024 18px 19px),repeating-linear-gradient(52deg,#0000,#0000 18px,#ffffff0d 18px 19px);position:absolute;inset:0}.section-ink>.container{z-index:1;position:relative}.section-ink .eyebrow{color:var(--on-dark-muted)}.section-ink .eyebrow:before{background:var(--yellow)}.section-ink .section-title{color:var(--on-dark);max-width:22ch}.section-ink .section-lead{color:var(--on-dark-muted)}.eyebrow{font-size:var(--fs-meta);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-2);align-items:center;gap:8px;font-weight:700;display:inline-flex}.eyebrow:before{content:"";background:var(--yellow-deep);width:22px;height:2px}.section-kicker{border:1.5px solid var(--ink);font-family:var(--font-display);letter-spacing:.12em;text-transform:uppercase;color:var(--ink);background:var(--bg);border-radius:999px;margin-bottom:12px;padding:4px 10px;font-size:.72rem;font-weight:800;display:inline-block}.section-title{font-family:var(--font-sans);font-size:var(--fs-h1);max-width:18ch}.section-lead{max-width:60ch;color:var(--ink-2);font-size:var(--fs-body-lg);margin-top:14px}.section-head-row{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;display:flex}.btn{min-height:46px;font-family:var(--font-sans);cursor:pointer;white-space:nowrap;transition:transform var(--dur-fast) var(--ease),box-shadow var(--dur-fast) var(--ease),background-color var(--dur-fast) var(--ease),border-color var(--dur-fast) var(--ease),color var(--dur-fast) var(--ease);border:1.5px solid #0000;border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:0 20px;font-size:.95rem;font-weight:600;display:inline-flex}.btn:hover{transform:translateY(-1px)}.btn:active{transform:translateY(0)}.btn-lg{min-height:54px;padding:0 28px;font-size:1rem}.btn-sm{min-height:38px;padding:0 14px;font-size:.85rem}.btn-primary{background:var(--ink);color:var(--on-dark);border-color:var(--ink)}.btn-primary:hover{box-shadow:var(--shadow-md)}.btn-accent{background:var(--yellow);color:var(--yellow-ink);border-color:var(--ink)}.btn-accent:hover{background:var(--yellow-deep);box-shadow:6px 6px 0 var(--ink)}.btn-outline{color:var(--ink);border-color:var(--ink);background:0 0}.btn-outline:hover{background:var(--yellow-soft)}.btn-ghost{background:var(--bg);color:var(--ink);border-color:var(--line);box-shadow:var(--shadow-sm)}.btn-ghost:hover{background:var(--yellow-soft);border-color:var(--ink)}.btn-block{width:100%}.btn:disabled,.btn[aria-disabled=true]{opacity:.45;cursor:not-allowed;box-shadow:none;transform:none}.btn[aria-busy=true]{cursor:progress;transform:none}.google-sign-in-button{color:#1f1f1f;box-shadow:none;letter-spacing:.01em;background:#fff;border:1px solid #747775;padding-inline:48px;font-family:Roboto,Arial,sans-serif;font-size:.875rem;font-weight:500;position:relative}.google-sign-in-button:hover:not(:disabled){background:#f8fafd;border-color:#747775;transform:none;box-shadow:0 1px 2px #3c40434d}.google-sign-in-button:active:not(:disabled){background:#eef3f8;transform:none}.google-sign-in-button__icon{width:20px;height:20px;position:absolute;left:12px}.google-sign-in-button__label{justify-content:center;align-items:center;gap:8px;display:inline-flex}.spinner{border:2px solid;border-top:2px solid #0000;border-radius:999px;width:18px;height:18px;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}.page-loading{min-height:100dvh;color:var(--ink-3);place-items:center;gap:12px;display:grid}.skeleton{background:var(--bg-alt);border-radius:var(--radius-sm);position:relative;overflow:hidden}.skeleton:after{content:"";background:linear-gradient(90deg,#0000,#0a0a0b0d,#0000);animation:shimmer 1.4s linear infinite;position:absolute;inset:0;transform:translate(-100%)}@keyframes shimmer{to{transform:translate(100%)}}@media (prefers-reduced-motion:reduce){.skeleton:after{display:none}}.badge{font-size:var(--fs-meta);letter-spacing:.04em;border:1px solid var(--line);background:var(--bg);color:var(--ink);border-radius:999px;align-items:center;gap:6px;padding:4px 10px;font-weight:700;display:inline-flex}.badge-yellow{background:var(--yellow);color:var(--yellow-ink);border-color:var(--ink)}.badge-soft{background:var(--yellow-soft);border-color:var(--yellow-deep)}.badge-free{background:var(--ink);color:var(--on-dark);border-color:var(--ink)}.badge-soon{color:var(--ink);border-color:var(--ink);background:#ffffffeb}.badge-success{background:var(--color-success-surface);color:var(--color-success);border-color:var(--color-success)}.site-header{z-index:var(--z-header);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffffeb;border-bottom:none;position:sticky;top:0;overflow:visible}.site-header:after{content:"";background:linear-gradient(90deg,var(--yellow) 0,var(--yellow) 72px,var(--ink) 72px,var(--ink) 76px,transparent 76px);opacity:.95;height:3px;position:absolute;bottom:0;left:0;right:0}.site-header-inner{align-items:center;gap:12px;min-height:80px;display:flex;overflow:visible}.nav-links{flex-wrap:nowrap;flex:0 auto;align-items:center;gap:2px;min-width:0;margin-left:4px;display:none}.nav-link{color:var(--ink-2);transition:background-color var(--dur-fast) var(--ease),color var(--dur-fast) var(--ease);white-space:nowrap;border-radius:999px;flex:none;align-items:center;padding:8px 12px;font-size:.92rem;font-weight:500;display:inline-flex}.nav-link-cat{display:none}.nav-link.active,.nav-link:hover{color:var(--ink);background:var(--bg-alt)}.header-search{border:1px solid var(--line);background:var(--bg-alt);width:11.5rem;max-width:11.5rem;height:42px;color:var(--ink-3);cursor:text;white-space:nowrap;border-radius:999px;flex:none;align-items:center;gap:8px;margin-left:auto;padding:0 14px;font-size:.9rem;display:none;overflow:hidden}.header-search>span{text-overflow:ellipsis;white-space:nowrap;flex:auto;min-width:0;overflow:hidden}.header-search>svg{flex:none}.header-actions{gap:8px;min-width:0;display:none}.brand,.header-actions{flex:none;align-items:center}.brand{font-family:var(--font-display);letter-spacing:-.03em;gap:12px;font-size:1.25rem;font-weight:700;display:inline-flex;overflow:visible}.brand-copy,.brand-logo-wrap,.brand-text,.brand-text--lockup{flex:none}.brand-text,.brand-text--lockup{white-space:nowrap;overflow:visible}.brand--lockup{align-items:center;gap:12px}.brand-copy{flex-direction:column;align-items:flex-start;gap:2px;min-width:0;display:flex}.brand-text--lockup{letter-spacing:-.04em;line-height:1.05}.brand-name-path{color:var(--color-accent-strong)}.brand-logo-wrap{flex:none;align-items:center;line-height:0;display:flex;overflow:visible}.brand-logo-mark{vertical-align:middle;height:36px}.brand-logo-lockup,.brand-logo-mark{object-fit:contain;object-position:left center;width:auto;max-width:none;display:block}.brand-logo-lockup{height:40px}.brand--lg .brand-logo-lockup{height:52px}.site-header .brand--image-lockup.brand--lg .brand-logo-lockup{height:clamp(40px,5vw,56px)}.brand--image-lockup{gap:0}.brand--lg{gap:14px}.brand--lg .brand-logo-mark{height:44px}.site-header .brand--lg .brand-logo-mark{height:48px}.brand--lg .brand-text{font-size:clamp(1.2rem,1rem + .55vw,1.65rem);line-height:1.1}.brand--lg .brand-text--lockup{font-size:clamp(1.35rem,1.05rem + .85vw,1.95rem)}.brand--lg .brand-sub{letter-spacing:.16em;margin-top:1px;font-size:clamp(.58rem,.5rem + .18vw,.68rem)}@media (max-width:767px){.site-header .brand--image-lockup.brand--lg .brand-logo-lockup{height:38px}.site-header .brand--lockup{flex:none;gap:10px}.brand--lockup.brand--lg .brand-logo-mark,.site-header .brand--lg .brand-logo-mark{height:40px}.brand--lockup.brand--lg .brand-text--lockup{font-size:clamp(1.05rem,.95rem + .5vw,1.2rem)}.brand--lockup.brand--lg .brand-sub{letter-spacing:.14em;font-size:.56rem}.site-header-inner{align-items:center;gap:10px;min-height:72px}}@media (min-width:768px) and (max-width:1023px){.brand--lg .brand-text--lockup{font-size:clamp(1.25rem,1rem + .65vw,1.75rem)}}.brand-logo{flex:none;line-height:0;display:block}.brand-text{line-height:1.15}.brand-sub{letter-spacing:.18em;text-transform:uppercase;color:var(--ink-3);font-size:.62rem;font-family:var(--font-sans);font-weight:700}.header-user{border:1px solid var(--line);background:var(--bg);cursor:pointer;border-radius:999px;align-items:center;gap:9px;padding:5px 14px 5px 6px;font-size:.88rem;font-weight:600;display:inline-flex}.avatar{background:var(--yellow);border:1.5px solid var(--ink);width:30px;height:30px;font-size:.85rem;font-weight:800;font-family:var(--font-display);color:var(--yellow-ink);border-radius:999px;flex:none;place-items:center;display:grid}.menu-toggle{border-radius:var(--radius-sm);border:1px solid var(--line);background:var(--bg);width:44px;height:44px;color:var(--ink);cursor:pointer;flex:none;place-items:center;margin-left:auto;display:inline-grid}.header-actions+.menu-toggle{margin-left:0}.drawer-scrim{z-index:var(--z-overlay);animation:fade-in var(--dur-base) var(--ease);background:#0a0a0b80;position:fixed;inset:0}@keyframes fade-in{0%{opacity:0}}.mobile-drawer{background:var(--bg);width:min(86vw,360px);max-width:100vw;z-index:var(--z-modal);border-left:1px solid var(--line);box-shadow:var(--shadow-lg);animation:slide-in-right var(--dur-base) var(--ease);flex-direction:column;display:flex;position:fixed;top:0;bottom:0;right:0;overflow-y:auto}@keyframes slide-in-right{0%{transform:translate(100%)}}.drawer-head{border-bottom:1px solid var(--line-soft);justify-content:space-between;align-items:center;padding:16px 18px;display:flex}.drawer-close{border-radius:var(--radius-sm);border:1px solid var(--line);background:var(--bg);width:44px;height:44px;color:var(--ink);cursor:pointer;place-items:center;display:inline-grid}.drawer-nav{flex-direction:column;gap:2px;padding:12px;display:flex}.drawer-link{border-radius:var(--radius-sm);min-height:48px;color:var(--ink);align-items:center;padding:10px 14px;font-weight:600;display:flex}.drawer-link.active,.drawer-link:hover,.drawer-search{background:var(--bg-alt)}.drawer-search{color:var(--ink-2);border:1px solid var(--line);gap:10px;margin-bottom:8px}.drawer-actions{border-top:1px solid var(--line-soft);gap:10px;margin-top:auto;padding:16px;display:grid}.site-footer{background:var(--bg-dark);color:var(--on-dark-2);border-top:4px solid var(--yellow);padding:56px 0 32px}.footer-grid{grid-template-columns:1fr;gap:32px;display:grid}.footer-brand .brand{color:var(--on-dark)}.footer-brand p{max-width:36ch;margin-top:14px;font-size:.92rem}.footer-col h4{color:var(--on-dark);letter-spacing:.12em;text-transform:uppercase;margin-bottom:10px;font-size:.82rem}.footer-col a{color:var(--on-dark-2);transition:color var(--dur-fast) var(--ease);padding:6px 0;font-size:.92rem;display:block}.footer-col a:hover{color:var(--yellow)}.footer-bottom{border-top:1px solid #ffffff1f;flex-wrap:wrap;justify-content:space-between;gap:12px;margin-top:40px;padding-top:22px;font-size:.82rem;display:flex}.hero{background:var(--bg);border-bottom:3px solid var(--ink);position:relative;overflow:hidden}.hero-weave:before{content:"";pointer-events:none;background-image:repeating-linear-gradient(-54deg,#0000,#0000 22px,#0a0a0b07 22px 23px),repeating-linear-gradient(54deg,#0000,#0000 22px,#ffc4000e 22px 23px);position:absolute;inset:0}.hero-weave .container{z-index:1;position:relative}.hero-grid{grid-template-columns:1fr;align-items:center;gap:40px;padding:clamp(2.5rem,1.5rem + 4vw,5rem) 0;display:grid}.hero h1{font-family:var(--font-sans);font-size:var(--fs-display);letter-spacing:-.035em;line-height:1.12}.hero h1 .hl{-webkit-box-decoration-break:clone;box-decoration-break:clone;background:linear-gradient(#0000 88%,#ffc40038 0);padding:0 2px}.hero-lead{max-width:52ch;font-size:var(--fs-body-lg);color:var(--ink-2);margin-top:22px}.hero-actions{flex-wrap:wrap;gap:12px;margin-top:30px;display:flex}.hero-actions>.btn{width:100%}@media (min-width:480px){.hero-actions>.btn{width:auto}}.hero-trust{border-top:1px solid var(--line);flex-wrap:wrap;gap:26px;margin-top:34px;padding-top:22px;display:flex;position:relative}.hero-trust:before{content:"";background:var(--yellow);width:min(42%,180px);height:3px;position:absolute;top:-2px;left:0}.hero-trust div{gap:2px;display:grid}.hero-trust strong{font-family:var(--font-display);font-variant-numeric:tabular-nums;font-size:1.5rem}.hero-trust span{color:var(--ink-3);max-width:22ch;font-size:.82rem}.hero-visual{position:relative}.hero-visual .player-card{box-shadow:var(--shadow-pop);transform:rotate(1.25deg)}.player-card{border:1.5px solid var(--ink);border-radius:var(--radius-lg);background:var(--bg);overflow:hidden}.player-screen{aspect-ratio:16/9;color:var(--on-dark);border-bottom:1.5px solid var(--ink);background:radial-gradient(circle at 50% 40%,#25262b,#0c0c0d);place-items:center;display:grid;position:relative}.player-play{background:var(--yellow);border:2px solid var(--ink);width:64px;height:64px;color:var(--yellow-ink);border-radius:999px;place-items:center;display:grid}.player-tag{position:absolute;top:12px;left:12px}.player-body{gap:12px;padding:16px 18px;display:grid}.player-body h3{font-size:1.1rem}.player-tutor{border-radius:var(--radius-sm);background:var(--yellow-soft);border:1px solid var(--yellow-deep);align-items:flex-start;gap:10px;padding:12px;font-size:.86rem;display:flex}.player-tutor .dot{background:var(--ink);width:28px;height:28px;color:var(--yellow);border-radius:999px;flex:none;place-items:center;display:grid}.player-progress{background:var(--bg-alt);border:1px solid var(--line-soft);border-radius:999px;height:8px;overflow:hidden}.player-progress span{background:var(--yellow);width:42%;height:100%;display:block}.usp-mosaic{background:var(--ink);border:1.5px solid var(--ink);border-radius:var(--radius-lg);gap:1px;display:grid;overflow:hidden}.usp-tile{background:var(--bg);transition:background var(--dur-base) var(--ease);padding:26px 24px}.usp-tile:hover{background:var(--yellow-soft)}.usp-tile.is-lead{background:var(--ink);color:var(--on-dark)}.usp-tile.is-lead p{color:var(--on-dark-muted)}.usp-tile.is-lead:hover{background:#151517}.usp-tile .usp-icon{background:var(--yellow);border:1.5px solid var(--ink);width:46px;height:46px;color:var(--yellow-ink);border-radius:12px;place-items:center;margin-bottom:16px;display:grid}.usp-tile.is-lead .usp-icon{background:var(--yellow);border-color:var(--yellow)}.usp-tile h3{font-size:1.12rem}.usp-tile p{color:var(--ink-2);margin-top:8px;font-size:.92rem}.usp-grid{grid-template-columns:1fr;gap:18px;display:grid}.usp-card{border-radius:var(--radius-md);border:1px solid var(--line);background:var(--bg);transition:transform var(--dur-card) var(--ease),box-shadow var(--dur-card) var(--ease);padding:24px}.usp-card:hover{box-shadow:var(--shadow-md);transform:translateY(-3px)}.usp-icon{background:var(--yellow);border:1.5px solid var(--ink);width:46px;height:46px;color:var(--yellow-ink);border-radius:12px;place-items:center;margin-bottom:16px;display:grid}.usp-card h3{font-size:1.12rem}.usp-card p{color:var(--ink-2);margin-top:8px;font-size:.92rem}.cat-grid{grid-template-columns:1fr;gap:20px;display:grid}.cat-card{border-radius:0 var(--radius-md) var(--radius-md) 0;border:1px solid var(--line);border-left:4px solid var(--yellow);background:var(--bg);transition:transform var(--dur-card) var(--ease),border-color var(--dur-card) var(--ease),background var(--dur-card) var(--ease);padding:28px;display:block}.cat-card:hover{background:var(--yellow-soft);box-shadow:none;border-left-width:6px;transform:translate(6px)}.cat-top{justify-content:space-between;align-items:center;display:flex}.cat-icon{background:var(--ink);width:52px;height:52px;color:var(--yellow);border-radius:14px;place-items:center;display:grid}.cat-count{font-family:var(--font-display);font-variant-numeric:tabular-nums;font-size:2rem;font-weight:800}.cat-card h3{font-size:var(--fs-h3);margin-top:18px}.cat-card p{color:var(--ink-2);margin-top:8px;font-size:.94rem}.cat-link{align-items:center;gap:6px;margin-top:16px;font-size:.9rem;font-weight:700;display:inline-flex}.ladder-grid,.ladder-path{border-radius:var(--radius-lg);background:#ffffff08;border:1px solid #ffffff24;grid-template-columns:1fr;gap:0;display:grid;position:relative;overflow:hidden}.section:not(.section-ink) .ladder-grid,.section:not(.section-ink) .ladder-path{border:1.5px solid var(--ink);background:var(--bg)}.ladder-path:after{content:"";display:none}.ladder-step{border-bottom:1px solid #ffffff1a;padding:26px 22px;position:relative}.section:not(.section-ink) .ladder-step{border-bottom:1.5px solid var(--ink)}.ladder-step:last-child{border-bottom:none}.ladder-step .num{min-width:2.4rem;font-family:var(--font-display);letter-spacing:.08em;color:var(--yellow);background:#ffc40014;border:1.5px solid #ffc40073;border-radius:999px;justify-content:center;align-items:center;padding:2px 8px;font-size:.72rem;font-weight:800;display:inline-flex}.section:not(.section-ink) .ladder-step .num{border-color:var(--ink);color:var(--ink);background:var(--yellow-soft)}.ladder-step .icon{background:var(--yellow);border:1.5px solid var(--ink);width:42px;height:42px;color:var(--yellow-ink);border-radius:12px;place-items:center;margin:14px 0;display:grid}.section-ink .ladder-step .icon{border-color:var(--yellow)}.ladder-step h3{font-size:var(--fs-h3);color:inherit}.ladder-step .q{margin-top:8px;font-size:.9rem;font-weight:600}.section-ink .ladder-step .q{color:var(--on-dark)}.section:not(.section-ink) .ladder-step .q{color:var(--ink)}.ladder-step .a{margin-top:6px;font-size:.88rem}.section-ink .ladder-step .a{color:var(--on-dark-muted)}.section:not(.section-ink) .ladder-step .a{color:var(--ink-2)}.price-grid{grid-template-columns:1fr;gap:16px;display:grid}.price-card{border-radius:var(--radius-md);border:1px solid var(--line);background:var(--bg);flex-direction:column;padding:22px;display:flex}.price-card.is-highlight{border-width:1.5px;border-top:4px solid var(--yellow);background:linear-gradient(180deg,var(--yellow-soft),var(--bg) 42%);box-shadow:none}.price-card.is-idp{background:var(--ink);color:var(--on-dark);border-color:var(--ink);flex-direction:column;grid-column:1/-1;align-items:flex-start;gap:20px}.price-amount{font-family:var(--font-display);font-variant-numeric:tabular-nums;font-size:2rem;font-weight:800}.price-card.is-idp .price-amount{color:var(--yellow);font-size:1.5rem}.price-headline{margin-top:6px;font-weight:700}.price-blurb{color:var(--ink-2);margin-top:6px;font-size:.88rem}.price-card.is-idp .price-blurb{color:var(--on-dark-2)}.price-features{gap:9px;margin:16px 0 0;padding:0;list-style:none;display:grid}.price-features li{color:var(--ink-2);padding-left:24px;font-size:.88rem;position:relative}.price-features li:before{content:"✓";background:var(--yellow);width:17px;height:17px;color:var(--yellow-ink);border-radius:999px;place-items:center;font-size:.66rem;font-weight:800;display:grid;position:absolute;top:-1px;left:0}.price-card.is-idp .price-features li{color:var(--on-dark-2)}@media (min-width:640px){.price-card.is-idp .price-features{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:20px}}.idp-main{min-width:230px}.course-grid{grid-template-columns:1fr;gap:22px;display:grid}.course-card{border-radius:0 var(--radius-md) var(--radius-md) 0;border:1px solid var(--line);border-left:4px solid var(--yellow);background:var(--bg);transition:transform var(--dur-card) var(--ease),border-color var(--dur-card) var(--ease),box-shadow var(--dur-card) var(--ease);flex-direction:column;display:flex;overflow:hidden}.course-card:hover{border-left-width:6px;transform:translate(5px);box-shadow:-6px 6px #ffc40038}.thumb{aspect-ratio:16/9;color:var(--yellow);border-bottom:1px solid var(--line);place-items:center;display:grid;position:relative;overflow:hidden}.thumb:before{content:"";background-image:repeating-linear-gradient(-48deg,#0000,#0000 14px,#ffffff0d 14px 15px),repeating-linear-gradient(48deg,#0000,#0000 14px,#ffc40012 14px 15px);position:absolute;inset:0;-webkit-mask-image:radial-gradient(circle,#000,#0000 82%);mask-image:radial-gradient(circle,#000,#0000 82%)}.thumb-ai{background:radial-gradient(circle at 30% 20%,#2c2a16,#0c0c0d 70%)}.thumb-blockchain{background:radial-gradient(circle at 30% 20%,#161a2c,#0c0c0d 70%)}.thumb-cybersecurity{background:radial-gradient(circle at 30% 20%,#2c1620,#0c0c0d 70%)}.thumb-icon{z-index:1;opacity:.9;position:relative}.thumb-cat{letter-spacing:.12em;text-transform:uppercase;color:var(--on-dark-2);font-size:.7rem;font-weight:700;bottom:12px;left:12px}.thumb-cat,.thumb-soon{z-index:1;position:absolute}.thumb-soon{top:12px;right:12px}.thumb-price{z-index:1;position:absolute;top:12px;left:12px}.course-body{flex-direction:column;flex:1;gap:10px;padding:18px;display:flex}.course-meta{color:var(--ink-3);text-transform:uppercase;letter-spacing:.06em;gap:10px;font-size:.76rem;font-weight:600;display:flex}.course-card h3{font-size:1.12rem;line-height:1.18}.course-card .tagline{color:var(--ink-2);flex:1;font-size:.9rem}.course-foot{border-top:1px solid var(--line-soft);justify-content:space-between;align-items:center;padding-top:12px;display:flex}.course-foot .price{font-family:var(--font-display);font-variant-numeric:tabular-nums;font-size:1.15rem;font-weight:800}.course-foot .price.free{color:var(--green)}.course-skeleton{border-radius:var(--radius-md);border:1px solid var(--line-soft);background:var(--bg);overflow:hidden}.course-skeleton .sk-thumb{aspect-ratio:16/9}.course-skeleton .sk-body{gap:12px;padding:18px;display:grid}.course-skeleton .sk-line{border-radius:6px;height:12px}.catalog-head{padding:44px 0 12px}.filter-bar{border-bottom:1px solid var(--line-soft);flex-wrap:wrap;gap:14px;margin-bottom:30px;padding:18px 0 26px;display:flex}.filter-group{scrollbar-width:none;-webkit-overflow-scrolling:touch;flex-wrap:nowrap;align-items:center;gap:8px;max-width:100%;padding-bottom:4px;display:flex;overflow-x:auto}.filter-group::-webkit-scrollbar{display:none}.filter-label{font-size:var(--fs-meta);text-transform:uppercase;letter-spacing:.1em;color:var(--ink-3);white-space:nowrap;margin-right:4px;font-weight:700}.chip{border:1px solid var(--line);background:var(--bg);min-height:38px;color:var(--ink);cursor:pointer;white-space:nowrap;transition:background-color var(--dur-fast) var(--ease),color var(--dur-fast) var(--ease),border-color var(--dur-fast) var(--ease);border-radius:999px;flex:none;align-items:center;padding:7px 14px;font-size:.85rem;font-weight:600;display:inline-flex}.chip:hover{background:var(--yellow-soft)}.chip.active{background:var(--ink);color:var(--on-dark);border-color:var(--ink)}.filter-spacer{color:var(--ink-2);font-variant-numeric:tabular-nums;align-self:center;font-size:.85rem}.detail-hero{background:var(--bg-alt);border-bottom:1px solid var(--line)}.detail-grid{grid-template-columns:1fr;align-items:center;gap:32px;padding:40px 0;display:grid}.breadcrumb{color:var(--ink-3);flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:18px;font-size:.85rem;display:flex}.breadcrumb a:hover{color:var(--ink)}.detail-title{font-family:var(--font-sans);font-size:var(--fs-h1);max-width:18ch}.detail-tagline{font-size:var(--fs-body-lg);color:var(--ink-2);max-width:56ch;margin-top:14px}.detail-meta{flex-wrap:wrap;gap:10px;margin-top:22px;display:flex}.detail-body{grid-template-columns:1fr;align-items:start;gap:32px;padding:48px 0;display:grid}.prose h2{font-size:var(--fs-h2);margin-bottom:12px}.prose p{color:var(--ink-2);margin-bottom:16px}.outcome-list{grid-template-columns:1fr;gap:12px;margin:0 0 28px;padding:0;list-style:none;display:grid}.outcome-list li{color:var(--ink-2);padding-left:28px;position:relative}.outcome-list li svg{color:var(--yellow-deep);position:absolute;top:3px;left:0}.enroll-card{border:1.5px solid var(--ink);border-radius:var(--radius-lg);background:var(--bg);box-shadow:var(--shadow-pop);overflow:hidden}.enroll-card .thumb{aspect-ratio:auto;border-radius:0;height:clamp(168px,20vw,180px)}.enroll-inner{gap:12px;padding:20px 22px;display:grid}.enroll-price{font-family:var(--font-display);font-variant-numeric:tabular-nums;font-size:2.2rem;font-weight:800;line-height:1.2}.enroll-price small{color:var(--ink-3);font-size:.9rem;font-weight:600}.enroll-includes{gap:6px;margin:0;padding:0;list-style:none;display:grid}.enroll-includes li{color:var(--ink-2);align-items:flex-start;gap:10px;font-size:.9rem;line-height:1.45;display:flex}.enroll-includes svg{color:var(--yellow-deep);flex:none;margin-top:2px}.enroll-inner>.auth-note{margin-top:4px;line-height:1.5}.curriculum{gap:12px;display:grid}.curriculum-module{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--bg);overflow:hidden}.curriculum-module>header,.curriculum-module>summary{background:var(--bg-alt);justify-content:space-between;align-items:center;gap:12px;padding:14px 18px;font-weight:700;display:flex}.curriculum-module>summary{cursor:pointer;list-style:none}.curriculum-module>summary::-webkit-details-marker{display:none}.curriculum-module>header,.curriculum-module[open]>summary{border-bottom:1px solid var(--line-soft)}.curriculum-summary-left{align-items:center;gap:10px;min-width:0;display:flex}.curriculum-summary-meta{color:var(--ink-3);white-space:nowrap;align-items:center;gap:10px;font-size:.82rem;font-weight:500;display:inline-flex}.curriculum-chevron{transition:transform var(--dur-base) var(--ease)}.curriculum-module[open] .curriculum-chevron{transform:rotate(180deg)}.curriculum-lesson{border-bottom:1px solid var(--line-soft);align-items:center;gap:12px;padding:12px 18px;font-size:.92rem;display:flex}.curriculum-lesson:last-child{border-bottom:none}.curriculum-lesson .lt-icon{background:var(--yellow-soft);border:1px solid var(--yellow-deep);border-radius:8px;flex:none;place-items:center;width:30px;height:30px;display:grid}.curriculum-lesson .dur{color:var(--ink-3);font-variant-numeric:tabular-nums;white-space:nowrap;margin-left:auto;font-size:.82rem}.auth-shell{grid-template-columns:1fr;min-height:100dvh;display:grid}.auth-aside{background:var(--bg-dark);border-right:4px solid var(--yellow);flex-direction:column;gap:28px;padding:56px;display:none}.auth-aside,.auth-aside .brand{color:var(--on-dark)}.auth-aside h2{font-size:var(--fs-h1);max-width:16ch}.auth-aside .point{color:var(--on-dark-2);align-items:flex-start;gap:12px;display:flex}.auth-aside .point svg{color:var(--yellow);flex:none;margin-top:2px}.auth-main{background:var(--bg);place-items:center;padding:40px 20px;display:grid}.auth-card{width:100%;max-width:420px}.auth-card .brand{margin-bottom:22px}.auth-card h1{font-family:var(--font-sans);font-size:var(--fs-h1)}.auth-card .sub{color:var(--ink-2);margin-top:8px}.field{margin-top:16px}.field label{margin-bottom:6px;font-size:.85rem;font-weight:600;display:block}.field select,.field-input{border-radius:var(--radius-sm);border:1px solid var(--line);background:var(--bg);width:100%;height:46px;color:var(--ink);font-size:.95rem;font-family:var(--font-sans);transition:border-color var(--dur-fast) var(--ease),box-shadow var(--dur-fast) var(--ease);padding:0 14px}.field-control{align-items:center;display:flex;position:relative}.field-control .field-input{padding-right:48px}.field-toggle{border-radius:var(--radius-xs);width:36px;height:36px;color:var(--ink-2);cursor:pointer;background:0 0;border:none;place-items:center;display:inline-grid;position:absolute;top:50%;right:6px;transform:translateY(-50%)}.field-toggle:hover{background:var(--bg-alt)}.field-input::placeholder{color:var(--ink-3)}.field select:focus-visible,.field-input:focus-visible{outline:2px solid var(--ring);outline-offset:1px;box-shadow:0 0 0 4px var(--ring-halo)}.field select:disabled,.field-input:disabled{background:var(--bg-alt);opacity:.6;cursor:not-allowed}.field-hint{color:var(--ink-3);margin-top:6px;font-size:.78rem}.auth-alt{text-align:center;color:var(--ink-2);margin-top:18px;font-size:.9rem}.auth-alt a{border-bottom:2px solid var(--yellow);font-weight:700}.auth-note{text-align:center;color:var(--ink-2);margin-top:16px;font-size:.78rem}.learn-shell{background:var(--bg);grid-template-columns:1fr;min-height:100dvh;display:grid}.learn-rail{background:var(--bg-alt);flex-direction:column;display:flex}.learn-rail,.learn-rail-head{border-bottom:1px solid var(--line)}.learn-rail-head{padding:18px}.learn-rail-brand{align-items:center;gap:12px;display:flex}.learn-rail-brand .brand-logo-mark{height:32px}.learn-rail-course{font-family:var(--font-display);color:var(--ink);font-size:1rem;font-weight:700;line-height:1.2}.learn-rail-course:hover{color:var(--ink-2)}.learn-rail-progress{color:var(--ink-2);font-variant-numeric:tabular-nums;margin-top:14px;font-size:.8rem}.learn-rail-bar{background:var(--bg);border:1px solid var(--line-soft);border-radius:999px;height:8px;margin-top:8px;overflow:hidden}.learn-rail-bar span{background:var(--yellow);height:100%;transition:width var(--dur-progress) var(--ease);display:block}.learn-rail-list{padding:12px}.learn-rail-list[data-open=false]{display:none}.learn-rail-toggle{background:var(--bg-alt);border:none;border-bottom:1px solid var(--line);width:100%;min-height:48px;font-family:var(--font-sans);color:var(--ink);cursor:pointer;justify-content:space-between;align-items:center;padding:14px 18px;font-size:.92rem;font-weight:700;display:flex}.learn-rail-toggle .chev{transition:transform var(--dur-base) var(--ease)}.learn-rail-toggle[aria-expanded=true] .chev{transform:rotate(180deg)}.learn-module-label{text-transform:uppercase;letter-spacing:.1em;color:var(--ink-3);padding:14px 8px 6px;font-size:.72rem;font-weight:700}button.learn-module-toggle{border:none;justify-content:space-between;gap:8px}.learn-lesson,button.learn-module-toggle{cursor:pointer;text-align:left;background:0 0;align-items:center;width:100%;display:flex}.learn-lesson{border-radius:var(--radius-sm);min-height:44px;color:var(--ink);transition:background-color var(--dur-fast) var(--ease);border:1px solid #0000;gap:10px;padding:10px;font-size:.88rem}.learn-lesson:hover{background:var(--bg)}.learn-lesson.active{background:var(--bg);border-color:var(--ink)}.learn-lesson .tick{border:1.5px solid var(--line-mid);width:22px;height:22px;color:var(--ink-3);border-radius:999px;flex:none;place-items:center;font-size:.7rem;display:grid}.learn-lesson.done .tick{background:var(--green);border-color:var(--green);color:#fff}.learn-lesson .lt{flex:1;min-width:0}.learn-lesson .lt b{font-weight:600;line-height:1.25;display:block}.learn-lesson .lt span{color:var(--ink-3);font-size:.75rem}.learn-main{flex-direction:column;min-width:0;display:flex}.learn-topbar{border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:var(--z-sticky);background:#ffffffeb;align-items:center;gap:14px;padding:12px 20px;display:flex;position:sticky;top:0}.learn-topbar .crumb{color:var(--ink-3);font-variant-numeric:tabular-nums;font-size:.85rem}.learn-content{width:100%;max-width:880px;margin-inline:auto;padding:24px 20px 48px}.video-box{aspect-ratio:16/9;border-radius:var(--radius-lg);border:1.5px solid var(--ink);color:var(--on-dark);text-align:center;background:radial-gradient(circle at 50% 38%,#25262b,#0c0c0d 72%);place-items:center;gap:14px;display:grid;position:relative}.video-box .lesson-video{object-fit:contain;z-index:2;background:#000;width:100%;height:100%;position:absolute;inset:0}.video-box.lab-box{aspect-ratio:auto;background:var(--bg-2,#f7f7f5);min-height:5.5rem;color:var(--ink);border:1.5px solid var(--line,var(--ink));place-items:start;gap:8px;padding:1.25rem 1.5rem}.video-box.lab-box .video-label{color:var(--ink-2)}.video-box.lab-box .video-tag{position:static}.project-workbench{border:1.5px solid var(--line,#1a1a1a);background:linear-gradient(#fffdf5,#fff 48%);gap:1rem;margin:1.25rem 0 1.75rem;padding:1.25rem 1.35rem 1.4rem;display:grid}.project-workbench-banner{align-items:flex-start;gap:.75rem;display:flex}.project-workbench-kicker{letter-spacing:.04em;text-transform:uppercase;color:var(--ink);margin:0;font-size:.78rem;font-weight:700}.project-workbench-builds{color:var(--ink-2);margin:.2rem 0 0;font-size:.95rem}.project-workbench-lead{color:var(--ink-2);margin:0;line-height:1.5}.project-field{gap:.4rem;display:grid}.project-field-label{justify-content:space-between;gap:.75rem;font-size:.92rem;font-weight:600;display:flex}.project-wordcount{color:var(--ink-3,#777);font-size:.78rem;font-weight:500}.project-wordcount.ok{color:#1f6b3a}.project-field textarea{resize:vertical;border:1.5px solid var(--line,#1a1a1a);width:100%;min-height:5.5rem;font:inherit;background:#fff;padding:.75rem .85rem;line-height:1.45}.project-field textarea:focus{outline:2px solid var(--accent,#ffc400);outline-offset:1px}.project-checks h3{margin:0 0 .5rem;font-size:.95rem}.project-checks ul{gap:.45rem;margin:0;padding:0;list-style:none;display:grid}.project-checks label{color:var(--ink-2);cursor:pointer;align-items:flex-start;gap:.55rem;line-height:1.4;display:flex}.project-checks input{margin-top:.2rem}.project-workbench-actions{flex-wrap:wrap;align-items:center;gap:.75rem 1rem;display:flex}.project-ready{color:#1f6b3a;align-items:center;gap:.35rem;font-size:.9rem;font-weight:600;display:inline-flex}.project-hint,.project-status{color:var(--ink-2);margin:0;font-size:.9rem}.learn-rail-project{border-top:1px solid #00000014;margin-top:.85rem;padding-top:.75rem}.learn-rail-project-title{letter-spacing:.05em;text-transform:uppercase;color:var(--ink-2);margin:0 0 .45rem;font-size:.72rem;font-weight:700}.learn-rail-project-list{gap:.25rem;margin:0;padding:0;list-style:none;display:grid}.learn-rail-project-list a{color:var(--ink-2);align-items:flex-start;gap:.45rem;padding:.2rem 0;font-size:.8rem;line-height:1.3;text-decoration:none;display:flex}.learn-rail-project-n{border:1.5px solid var(--line,#1a1a1a);border-radius:999px;flex:0 0 1.1rem;justify-content:center;align-items:center;width:1.1rem;height:1.1rem;margin-top:.05rem;font-size:.65rem;font-weight:700;display:inline-flex}.learn-rail-project-list li[data-done=true] .learn-rail-project-n{background:var(--accent,#ffc400)}.learn-rail-project-list li[data-current=true] a{color:var(--ink);font-weight:600}.lab-steps ol{gap:.55rem;margin:0;padding-left:1.25rem;display:grid}.lab-steps li{color:var(--ink-2);line-height:1.45}.video-box:before{content:"";border-radius:inherit;pointer-events:none;background-image:linear-gradient(#ffffff0d 1px,#0000 0),linear-gradient(90deg,#ffffff0d 1px,#0000 0);background-size:32px 32px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(circle,#000,#0000 80%);mask-image:radial-gradient(circle,#000,#0000 80%)}.video-box.lab-box:before,.video-box:has(.lesson-video):before,.video-box:has(mux-player):before{display:none}.video-box mux-player.lesson-video{z-index:2;border-radius:inherit;--media-object-fit:contain;width:100%;height:100%;position:absolute;inset:0;overflow:hidden}.video-box:has(mux-player) .video-tag,.video-box:has(video.lesson-video) .video-tag{z-index:3;pointer-events:none}.video-play{z-index:1;background:var(--yellow);border:2px solid var(--ink);width:76px;height:76px;color:var(--yellow-ink);cursor:pointer;transition:transform var(--dur-fast) var(--ease);border-radius:999px;place-items:center;display:grid;position:relative}.video-play:hover{transform:scale(1.05)}.video-label{z-index:1;color:var(--on-dark-2);padding-inline:12px;font-size:.85rem;position:relative}.video-tag{z-index:1;position:absolute;top:14px;left:14px}.lesson-head{margin-top:26px}.lesson-head h1{font-size:var(--fs-h2);margin-top:8px}.lesson-summary{font-size:var(--fs-body-lg);color:var(--ink-2);margin-top:18px}.keypoints{border-radius:var(--radius-md);border:1px solid var(--line);background:var(--bg-alt);margin-top:24px;padding:22px}.keypoints h3{text-transform:uppercase;letter-spacing:.12em;color:var(--ink-3);margin-bottom:14px;font-size:.8rem}.keypoints ul{gap:12px;margin:0;padding:0;list-style:none;display:grid}.keypoints li{color:var(--ink);padding-left:28px;position:relative}.keypoints li:before{content:"";background:var(--yellow);border:1.5px solid var(--ink);border-radius:3px;width:12px;height:12px;position:absolute;top:7px;left:0}.lesson-source{color:var(--ink-3);margin-top:16px;font-size:.82rem;font-style:italic}.lesson-nav{padding-top:20px;padding-bottom:max(24px,calc(12px + env(safe-area-inset-bottom)));border-top:1px solid var(--line-soft);justify-content:space-between;gap:12px;margin-top:30px;padding-right:min(360px,42vw);display:flex}.lesson-nav-complete{justify-items:end;gap:8px;max-width:min(100%,360px);display:grid}.lesson-watch-hint{color:var(--ink-2);text-align:right;margin:0;font-size:.82rem}@media (max-width:720px){.lesson-nav{padding-bottom:120px;padding-right:0}}.quiz-q{border-radius:var(--radius-md);border:1px solid var(--line);background:var(--bg);margin-top:22px;padding:22px}.quiz-q h3{margin-bottom:14px;font-size:1.1rem}.quiz-options{gap:10px;display:grid}.quiz-option{text-align:left;border-radius:var(--radius-sm);border:1px solid var(--line);background:var(--bg);cursor:pointer;color:var(--ink);transition:background-color var(--dur-fast) var(--ease),border-color var(--dur-fast) var(--ease);align-items:center;gap:10px;padding:14px 16px;font-size:.92rem;display:flex}.quiz-option:hover:not(:disabled){background:var(--yellow-soft)}.quiz-option:disabled{cursor:default}.quiz-option .qo-icon{flex:none;display:inline-flex}.quiz-option.correct{background:var(--color-success-surface);border-color:var(--green)}.quiz-option.correct .qo-icon{color:var(--green)}.quiz-option.wrong{background:var(--color-danger-surface);border-color:var(--red)}.quiz-option.wrong .qo-icon{color:var(--red)}.quiz-explain{color:var(--ink-2);border-radius:var(--radius-sm);background:var(--bg-alt);border:1px solid var(--line-soft);margin-top:12px;padding:12px;font-size:.88rem}.quiz-result{border-radius:var(--radius-md);border:1.5px solid var(--ink);background:var(--yellow-soft);text-align:center;margin-top:22px;padding:26px}.quiz-result h2{font-size:var(--fs-h2)}.tutor-rail{display:none}.companion-fab{right:max(16px,env(safe-area-inset-right));bottom:max(16px,env(safe-area-inset-bottom));z-index:60;cursor:pointer;filter:drop-shadow(0 8px 20px #0000002e);background:0 0;border:none;border-radius:999px;place-items:center;width:72px;height:72px;padding:0;display:grid;position:fixed}.companion-fab:focus-visible{outline:3px solid var(--ink);outline-offset:3px}.companion-fab-hint{background:var(--ink);color:var(--yellow);letter-spacing:.02em;border-radius:999px;padding:3px 7px;font-size:.65rem;font-weight:700;position:absolute;top:-6px;right:-4px}.companion-fab-dot{background:var(--yellow);border-radius:999px;width:10px;height:10px;position:absolute;top:6px;left:8px;box-shadow:0 0 0 2px #fff}.companion-fab--ambient .companion-visual{animation:companion-ambient-pulse 2.4s ease-in-out infinite}@keyframes companion-ambient-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.04)}}.companion-nudge{right:max(12px,env(safe-area-inset-right));bottom:max(12px,env(safe-area-inset-bottom));z-index:55;filter:drop-shadow(8px 10px #00000024);pointer-events:none;width:min(340px,100vw - 24px);max-height:min(42vh,360px);padding-bottom:52px;animation:companion-comic-enter .28s cubic-bezier(.2,.8,.2,1) both;position:fixed}.companion-nudge-bubble,.companion-nudge-character{pointer-events:auto}@keyframes companion-comic-enter{0%{opacity:0;transform:translateY(12px)rotate(1deg)scale(.96)}to{opacity:1;transform:translateY(0)rotate(0)scale(1)}}.companion-nudge-bubble{border:3px solid var(--ink);background:radial-gradient(circle at 2px 2px,#0000000e 1px,#0000 1.5px) 0 0/8px 8px,#fffdf3;border-radius:24px 24px 8px;max-height:calc(min(42vh,360px) - 52px);padding:15px 17px 16px;position:relative;overflow-y:auto}.companion-nudge-bubble:before{content:"";border-right:3px solid var(--ink);border-bottom:3px solid var(--ink);clip-path:polygon(0 0,100% 0,100% 100%);background:#fffdf3;width:30px;height:30px;position:absolute;bottom:-27px;right:38px;transform:skewY(34deg)rotate(18deg)}.companion-nudge--important .companion-nudge-bubble{background:radial-gradient(circle at 2px 2px,#00000012 1px,#0000 1.5px) 0 0/8px 8px,#fff0ec;border-color:#b43727}.companion-nudge-character{align-items:center;gap:4px;display:flex;position:absolute;bottom:-2px;right:4px}.companion-nudge-pop{color:var(--ink);font-family:var(--font-sora),sans-serif;letter-spacing:-.04em;font-size:.78rem;font-weight:900;transform:rotate(-8deg)}.companion-nudge-head{justify-content:space-between;align-items:start;gap:8px;display:flex}.companion-nudge-speaker{color:var(--ink-2);letter-spacing:.08em;text-transform:uppercase;font-size:.68rem;font-weight:800}.companion-nudge-title{font-family:var(--font-sora),sans-serif;margin-top:2px;font-size:1.05rem;line-height:1.25;display:block}.companion-nudge p{color:var(--ink-2);margin:8px 0 0;font-size:.9rem}.companion-nudge-why{opacity:.85;font-size:.78rem!important}.companion-nudge-actions{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.companion-nudge-meta{gap:12px;margin-top:10px;display:flex}.companion-nudge-meta button{color:var(--ink-2);cursor:pointer;background:0 0;border:none;padding:0;font-size:.75rem;text-decoration:underline}.companion-mission{background:var(--bg);border:1px solid var(--line-soft);box-shadow:var(--shadow-sm);border-radius:16px;padding:16px}.companion-mission-topline{justify-content:space-between;align-items:center;gap:12px;display:flex}.companion-mission-kicker{text-transform:uppercase;letter-spacing:.08em;color:var(--ink-2);margin:0;font-size:.72rem;font-weight:700}.companion-mission-time{color:var(--ink-2);white-space:nowrap;align-items:center;gap:5px;font-size:.75rem;display:inline-flex}.companion-mission-project{color:var(--ink-2);margin:10px 0 4px;font-size:.78rem;line-height:1.35}.companion-mission h4{font-size:1rem;line-height:1.4}.companion-mission-why{color:var(--ink-2);margin:8px 0 0;font-size:.82rem;line-height:1.5}.companion-mission-actions{gap:8px;margin-top:14px;display:flex}.companion-mission-actions .btn{border-radius:10px}.companion-disclosure{background:var(--bg);border:1px solid var(--line-soft);border-radius:12px}.companion-disclosure summary{cursor:pointer;justify-content:space-between;align-items:center;gap:12px;min-height:58px;padding:10px 12px;list-style:none;display:flex}.companion-disclosure summary::-webkit-details-marker{display:none}.companion-disclosure summary>span:first-child{gap:2px;min-width:0;display:grid}.companion-disclosure summary strong{font-family:var(--font-display);font-size:.84rem}.companion-disclosure summary small{color:var(--ink-2);font-size:.75rem;line-height:1.35}.companion-disclosure-meta{color:var(--ink-2);white-space:nowrap;align-items:center;gap:6px;font-size:.75rem;font-weight:700;display:inline-flex}.companion-disclosure-meta svg{transition:transform var(--dur-base) var(--ease)}.companion-disclosure[open] .companion-disclosure-meta svg{transform:rotate(180deg)}.companion-disclosure-content{border-top:1px solid var(--line-soft);padding:4px 12px 10px}.companion-disclosure-content ul{margin:0;padding:0;list-style:none}.companion-disclosure-content li{border-bottom:1px solid var(--line-soft);justify-content:space-between;align-items:flex-start;gap:8px;padding:8px 0;font-size:.8rem;display:flex}.companion-disclosure-content li:last-child{border-bottom:none}.companion-knows li button{color:var(--ink-2);font-size:.75rem}.companion-knows li button,.companion-review-link{cursor:pointer;background:0 0;border:none;text-decoration:underline}.companion-review-link{text-align:left;color:inherit;padding:0}.companion-status{white-space:nowrap;font-size:.72rem;font-weight:600}.companion-status--complete{color:var(--green)}.companion-status--needs_review{color:var(--color-warn)}.companion-status--missing{color:var(--red)}.companion-excerpt{background:var(--yellow-soft);border:1px solid var(--line-soft);border-radius:12px;padding:12px}.companion-excerpt-head{justify-content:space-between;align-items:center;display:flex}.companion-excerpt-head button{cursor:pointer;background:0 0;border:none;font-size:1.1rem}.companion-fieldset-hint{color:var(--ink-2);margin:0 0 8px;font-size:.8rem}.companion-field-highlight{outline:2px solid var(--yellow);outline-offset:2px}@media (prefers-reduced-motion:reduce){.companion-fab--ambient .companion-visual,.companion-nudge{animation:none}}.companion-visual{place-items:center;display:grid;position:relative}.companion-orb-core{background:radial-gradient(circle at 35% 30%,#fff8d6 0,var(--companion-accent,var(--yellow)) 45%,#1a1a1a 120%);box-shadow:0 0 18px var(--companion-accent,var(--yellow));border-radius:999px;position:absolute;inset:18%}@supports (color:color-mix(in lab,red,red)){.companion-orb-core{box-shadow:0 0 18px color-mix(in srgb,var(--companion-accent,var(--yellow)) 55%,transparent)}}.companion-orb-ring{border:2px solid var(--companion-accent,var(--yellow));border-radius:999px;position:absolute;inset:4%}@supports (color:color-mix(in lab,red,red)){.companion-orb-ring{border:2px solid color-mix(in srgb,var(--companion-accent,var(--yellow)) 70%,#fff)}}.companion-orb-ring{opacity:.85}.companion-visual--idle .companion-orb-core,.companion-visual--idle.companion-visual--fox,.companion-visual--idle.companion-visual--owl,.companion-visual--idle.companion-visual--petal{animation:companion-float 3.2s ease-in-out infinite}.companion-visual--thinking .companion-orb-core,.companion-visual--thinking.companion-visual--fox,.companion-visual--thinking.companion-visual--owl,.companion-visual--thinking.companion-visual--petal{animation:companion-pulse .9s ease-in-out infinite}.companion-visual--open .companion-orb-ring{animation:companion-ring 1.4s ease-out infinite}@keyframes companion-float{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}@keyframes companion-pulse{0%,to{filter:brightness();transform:scale(1)}50%{filter:brightness(1.12);transform:scale(1.06)}}@keyframes companion-ring{0%{opacity:.85;transform:scale(1)}to{opacity:0;transform:scale(1.25)}}@media (prefers-reduced-motion:reduce){.companion-visual--idle .companion-orb-core,.companion-visual--idle.companion-visual--fox,.companion-visual--idle.companion-visual--owl,.companion-visual--idle.companion-visual--petal,.companion-visual--open .companion-orb-ring,.companion-visual--thinking .companion-orb-core,.companion-visual--thinking.companion-visual--fox,.companion-visual--thinking.companion-visual--owl,.companion-visual--thinking.companion-visual--petal{animation:none}}.companion-backdrop{z-index:70;cursor:pointer;background:#00000047;border:none;position:fixed;inset:0}.companion-sheet{z-index:80;background:var(--bg);border-top:1px solid var(--line);border-radius:20px 20px 0 0;flex-direction:column;max-height:min(88dvh,720px);display:flex;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -12px 40px #0000001f}.companion-sheet-head{border-color:var(--line-soft);background:var(--bg);flex:none;padding:13px 14px;position:relative}.companion-sheet-avatar{flex:none;place-items:center;width:38px;height:38px;display:grid}.companion-sheet-actions{flex:none;align-items:center;gap:4px;margin-left:auto;display:flex}.companion-sheet-identity{gap:2px;min-width:0;display:grid}.companion-sheet-identity .live{white-space:nowrap;text-overflow:ellipsis;max-width:190px;overflow:hidden}.companion-icon-btn{width:36px;height:36px;color:var(--ink);cursor:pointer;background:0 0;border:none;border-radius:10px;place-items:center;display:grid}.companion-icon-btn:hover{background:var(--bg-alt)}.companion-head-menu{position:relative}.companion-head-menu>summary{list-style:none}.companion-head-menu>summary::-webkit-details-marker{display:none}.companion-head-menu-popover{z-index:2;background:var(--bg);border:1px solid var(--line-mid);width:190px;box-shadow:var(--shadow-md);border-radius:12px;padding:6px;position:absolute;top:calc(100% + 8px);right:0}.companion-head-menu-popover button{width:100%;min-height:40px;color:var(--ink);font:inherit;text-align:left;cursor:pointer;background:0 0;border:none;border-radius:8px;align-items:center;gap:9px;padding:0 10px;font-size:.82rem;display:flex}.companion-head-menu-popover button:hover,.companion-sheet-body{background:var(--bg-alt)}.companion-sheet-body{flex:1;gap:10px;min-height:180px;max-height:none;padding:14px 16px}.companion-customize{flex-direction:column;gap:14px;padding:16px 18px 20px;display:flex;overflow-y:auto}.companion-customize-head{justify-content:space-between;align-items:center;display:flex}.companion-customize-head h4{margin:0;font-size:1.05rem}.companion-customize-head p{color:var(--ink-2);margin:3px 0 0;font-size:.78rem}.companion-customize-preview{place-items:center;padding:8px 0 4px;display:grid}.companion-fieldset{border:none;margin:0;padding:0}.companion-fieldset legend{color:var(--ink-2);margin-bottom:8px;font-size:.78rem;font-weight:700}.companion-choice-row{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.companion-choice-row--stack{grid-template-columns:1fr 1fr}.companion-choice{border:1px solid var(--line);background:var(--bg-alt);cursor:pointer;color:var(--ink);border-radius:12px;flex-direction:column;align-items:center;gap:4px;padding:8px 6px;font-size:.72rem;display:flex}.companion-choice--wide{text-align:left;align-items:flex-start;gap:2px;padding:10px 12px}.companion-choice--wide strong{font-size:.85rem}.companion-choice--wide span{color:var(--ink-2);font-size:.72rem}.companion-choice.is-active{border-color:var(--ink);box-shadow:0 0 0 2px var(--yellow)}.companion-accent-swatch{aspect-ratio:1;cursor:pointer;border:2px solid #0000;border-radius:999px;width:100%}.companion-accent-swatch.is-active{border-color:var(--ink);box-shadow:0 0 0 2px var(--yellow)}.companion-label{color:var(--ink-2);flex-direction:column;gap:6px;font-size:.78rem;font-weight:700;display:flex}.companion-optional{opacity:.8;font-weight:500}.companion-name-input{font:inherit;color:var(--ink);border:1px solid var(--line);background:var(--bg);border-radius:10px;padding:10px 12px;font-weight:500}.companion-error{color:#b42318;margin:0;font-size:.8rem}.companion-customize-actions{justify-content:flex-end;gap:8px;margin-top:4px;display:flex}.tutor-head{border-bottom:1px solid var(--line);align-items:center;gap:12px;padding:16px 18px;display:flex}.tutor-head .dot{background:var(--ink);width:38px;height:38px;color:var(--yellow);border-radius:999px;flex:none;place-items:center;display:grid}.tutor-head h3{font-size:1.05rem}.tutor-head .live{color:var(--green);align-items:center;gap:6px;font-size:.74rem;font-weight:700;display:inline-flex}.tutor-head .live:before{content:"";background:var(--green);border-radius:999px;width:8px;height:8px}.tutor-body{flex-direction:column;flex:1;gap:12px;max-height:360px;padding:16px;display:flex;overflow-y:auto}.tutor-msg{border-radius:16px;max-width:90%;padding:11px 14px;font-size:.88rem;line-height:1.55}.tutor-msg.user{white-space:pre-line}.tutor-msg.ai{background:var(--bg-alt);border:1px solid var(--line-soft);align-self:flex-start}.tutor-msg.user{background:var(--yellow);color:var(--yellow-ink);border:1px solid var(--ink);align-self:flex-end}.tutor-md{overflow-x:auto}.tutor-md>:first-child{margin-top:0}.tutor-md>:last-child{margin-bottom:0}.tutor-md p{margin:.55em 0}.tutor-md h1,.tutor-md h2,.tutor-md h3,.tutor-md h4{font-family:var(--font-sora),sans-serif;margin:.75em 0 .35em;font-size:.95rem;font-weight:700;line-height:1.35}.tutor-md h1{font-size:1.05rem}.tutor-md ol,.tutor-md ul{margin:.45em 0;padding-left:1.25em}.tutor-md li{margin:.2em 0}.tutor-md strong{font-weight:700}.tutor-md em{font-style:italic}.tutor-md blockquote{border-left:3px solid var(--yellow);color:var(--ink-2);margin:.55em 0;padding:.35em 0 .35em .75em}.tutor-md hr{border:none;border-top:1px solid var(--line-soft);margin:.75em 0}.tutor-md code{background:#0000000f;border-radius:4px;padding:.1em .35em;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.84em}.tutor-md pre{background:#0000000f;border-radius:8px;margin:.55em 0;padding:.65em .75em;overflow-x:auto}.tutor-md pre code{background:0 0;padding:0}.tutor-md table{border-collapse:collapse;width:100%;margin:.65em 0;font-size:.82rem}.tutor-md td,.tutor-md th{border:1px solid var(--line-soft);text-align:left;vertical-align:top;padding:.4em .55em}.tutor-md th{background:#0000000a;font-weight:700}.tutor-md a{color:inherit;text-underline-offset:2px;text-decoration:underline}.tutor-typing{align-self:flex-start;gap:4px;padding:12px 14px;display:inline-flex}.tutor-typing span{background:var(--ink-3);width:7px;height:7px;animation:tutor-pulse 1.2s var(--ease) infinite;border-radius:999px}.tutor-typing span:nth-child(2){animation-delay:.18s}.tutor-typing span:nth-child(3){animation-delay:.36s}@keyframes tutor-pulse{0%,60%,to{opacity:.35}30%{opacity:1}}.tutor-suggest{background:var(--bg);border-top:1px solid var(--line-soft);scrollbar-width:none;flex-wrap:nowrap;gap:8px;padding:10px 16px 8px;display:flex;overflow-x:auto}.tutor-suggest::-webkit-scrollbar{display:none}.tutor-suggest button{border:1px solid var(--line-mid);background:var(--bg);min-height:34px;color:var(--ink);cursor:pointer;transition:background-color var(--dur-fast) var(--ease);border-radius:999px;flex:none;padding:7px 11px;font-size:.76rem}.tutor-suggest button:hover{background:var(--yellow-soft)}.tutor-form{background:var(--bg);border-top:none;gap:8px;padding:8px 16px 14px;display:flex}.tutor-input{border:1px solid var(--line);background:var(--bg-alt);min-width:0;height:44px;color:var(--ink);font-size:.9rem;font-family:var(--font-sans);border-radius:999px;flex:1;padding:0 14px}.tutor-input::placeholder{color:var(--ink-3)}.tutor-send{border:1.5px solid var(--ink);background:var(--yellow);width:44px;height:44px;color:var(--yellow-ink);cursor:pointer;transition:background-color var(--dur-fast) var(--ease);border-radius:999px;flex:none;place-items:center;display:grid}.tutor-send:hover{background:var(--yellow-deep)}.dash{padding:40px 0 64px}.dash-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:30px;display:flex}.dash-head h1{font-size:var(--fs-h1)}.dash-stats{flex-wrap:wrap;gap:12px;display:flex}.dash-stat{border-radius:var(--radius-md);border:1px solid var(--line);background:var(--bg);min-width:110px;padding:14px 18px}.dash-stat strong{font-family:var(--font-display);font-variant-numeric:tabular-nums;font-size:1.6rem;display:block}.dash-stat span{color:var(--ink-3);font-size:.8rem}.dash-grid{grid-template-columns:1fr;align-items:start;gap:24px;display:grid}.dash-resume{border:1.5px solid var(--ink);border-radius:var(--radius-lg);background:var(--bg);box-shadow:var(--shadow-pop);overflow:hidden}.dash-resume .thumb{border-radius:0}.dash-resume-body{gap:14px;padding:22px;display:grid}.dash-card{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--bg);padding:22px}.dash-card.is-dark{background:var(--bg-dark);color:var(--on-dark);border-color:var(--ink)}.dash-card.is-dark p{color:var(--on-dark-2)}.dash-card.is-accent{border-width:1.5px;border-color:var(--ink);background:var(--yellow-soft)}.dash-card h3{margin-bottom:6px;font-size:1.2rem}.dash-card p{color:var(--ink-2);font-size:.92rem}.dash-aside{gap:20px;display:grid}.empty-state{text-align:center;border:1px dashed var(--line-mid);border-radius:var(--radius-lg);background:var(--bg-alt);padding:56px 24px}.empty-state .empty-icon{background:var(--bg);border:1px solid var(--line-mid);width:56px;height:56px;color:var(--ink-2);border-radius:999px;place-items:center;margin:0 auto 16px;display:grid}.feature-free{border:2px solid var(--ink);border-radius:var(--radius-lg);background:var(--bg);box-shadow:none;grid-template-columns:1fr;align-items:stretch;margin-bottom:10px;margin-right:10px;display:grid;position:relative;overflow:visible}.feature-free:after{content:"";border:2px solid var(--yellow);border-radius:var(--radius-lg);z-index:-1;pointer-events:none;position:absolute;inset:8px -8px -8px 8px}.feature-free .player-screen{border-bottom:1.5px solid var(--ink);border-radius:calc(var(--radius-lg) - 1px) calc(var(--radius-lg) - 1px) 0 0;border-right:none}.feature-free-body{flex-direction:column;justify-content:center;min-width:0;padding:clamp(24px,4vw,36px);display:flex}.feature-free-actions{flex-wrap:wrap;gap:12px;margin-top:auto;padding-top:22px;display:flex}.feature-free-actions .btn{width:100%}@media (min-width:480px){.feature-free-actions .btn{width:auto}}.counsel-grid{grid-template-columns:1fr;gap:18px;display:grid}.cta-band{text-align:center;border:1.5px solid var(--ink);border-radius:var(--radius-xl);background:var(--bg);box-shadow:var(--shadow-pop);padding:clamp(2.5rem,1.5rem + 4vw,3.5rem) 24px}.institution-panel{border:2px solid var(--ink);border-radius:var(--radius-xl);background:var(--ink);color:var(--on-dark);grid-template-columns:1fr;gap:28px;padding:clamp(28px,4vw,40px);display:grid;position:relative;overflow:hidden}.institution-panel:before{content:"";pointer-events:none;opacity:.2;background-image:repeating-linear-gradient(-52deg,#0000,#0000 18px,#ffc40029 18px 19px),repeating-linear-gradient(52deg,#0000,#0000 18px,#ffffff0d 18px 19px);position:absolute;inset:0}.institution-panel>*{z-index:1;position:relative}.institution-copy .eyebrow{color:var(--on-dark-muted)}.institution-copy .eyebrow:before,.institution-icon{background:var(--yellow)}.institution-icon{border:1.5px solid var(--yellow);width:52px;height:52px;color:var(--yellow-ink);border-radius:14px;place-items:center;margin-top:16px;display:grid}.institution-title{color:var(--on-dark);max-width:16ch;margin-top:18px}.institution-lead{max-width:46ch;font-size:var(--fs-body-lg);color:var(--on-dark-muted);margin-top:14px;line-height:1.6}.institution-actions{flex-wrap:wrap;gap:12px;margin-top:24px;display:flex}.institution-actions .btn{width:100%}.institution-ghost{color:var(--on-dark);border-color:#ffffff38}.institution-ghost:hover{color:var(--on-dark);background:#ffffff14;border-color:#ffffff59}.institution-grid{grid-template-columns:1fr;align-content:start;gap:12px;margin:0;padding:0;list-style:none;display:grid}.institution-item{border-radius:var(--radius-sm);border:1px solid #ffffff1f;border-left:3px solid var(--yellow);color:var(--on-dark);background:#ffffff0a;align-items:flex-start;gap:12px;padding:16px 18px;font-size:.94rem;line-height:1.5;display:flex}.institution-check{background:var(--yellow);width:22px;height:22px;color:var(--yellow-ink);border-radius:999px;flex:none;place-items:center;margin-top:2px;font-size:.68rem;font-weight:800;display:grid}@media (min-width:480px){.institution-actions .btn{width:auto}.institution-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width:1024px){.institution-panel{grid-template-columns:minmax(280px,.95fr) minmax(0,1.25fr);align-items:start;gap:36px}.institution-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}}@media (min-width:480px){.counsel-grid{grid-template-columns:1fr 1fr}}@media (min-width:768px){.feature-free{grid-template-columns:minmax(200px,.85fr) minmax(0,1.15fr)}.feature-free .player-screen{border-bottom:none;border-right:1.5px solid var(--ink);border-radius:calc(var(--radius-lg) - 1px) 0 0 calc(var(--radius-lg) - 1px);aspect-ratio:auto;height:100%;min-height:100%}.feature-free-body{border-radius:0 calc(var(--radius-lg) - 1px) calc(var(--radius-lg) - 1px) 0}}@media (min-width:480px){.container,.container-dash,.container-read{width:min(var(--container),calc(100vw - 40px))}.container-dash{width:min(var(--container-dash),calc(100vw - 40px))}.container-read{width:min(var(--container-read),calc(100vw - 40px))}.footer-grid{grid-template-columns:1fr 1fr}}@media (min-width:768px){.site-header-inner{gap:12px}.header-search{width:10.5rem;max-width:10.5rem;display:flex}.header-actions{display:flex}.header-action-lg{display:none}.header-user{max-width:8rem;overflow:hidden}.header-user-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.usp-grid{grid-template-columns:repeat(2,1fr)}.usp-mosaic{grid-template-columns:1fr 1fr}.usp-tile.is-lead{grid-column:1/-1}.cat-grid,.course-grid,.ladder-grid,.ladder-path,.price-grid{grid-template-columns:repeat(2,1fr)}.ladder-step{border-right:1px solid #ffffff1a}.section:not(.section-ink) .ladder-step{border-right:1.5px solid var(--ink)}.ladder-step:nth-child(2n){border-right:none}.ladder-step:nth-last-child(-n+2){border-bottom:none}.outcome-list{grid-template-columns:1fr 1fr}.footer-grid{grid-template-columns:1.4fr repeat(3,1fr);gap:36px}.filter-group{flex-wrap:wrap;overflow:visible}.filter-spacer{margin-left:auto}}@media (min-width:1024px){.site-header-inner{gap:14px}.nav-links{display:flex}.nav-link{padding:8px 10px;font-size:.88rem}.header-search{width:12rem;max-width:12rem}.header-action-lg{display:inline-flex}.header-user{max-width:none}.menu-toggle{display:none}.hero-grid{grid-template-columns:1.05fr .95fr;gap:48px}.usp-grid{grid-template-columns:repeat(4,1fr)}.usp-mosaic{grid-template-rows:auto auto;grid-template-columns:1.25fr 1fr 1fr}.usp-tile.is-lead{grid-area:1/1/span 2}.usp-tile:nth-child(4){grid-column:2/span 2}.cat-grid,.course-grid{grid-template-columns:repeat(3,1fr)}.ladder-grid,.ladder-path{grid-template-columns:repeat(4,1fr)}.section-ink .ladder-path:before{content:"";background:linear-gradient(90deg,var(--yellow) 0,#ffc40059 70%,transparent 100%);z-index:0;pointer-events:none;height:3px;position:absolute;top:74px;left:8%;right:8%}.section-ink .ladder-step .icon{z-index:1;position:relative}.ladder-step{border-bottom:none;border-right:1px solid #ffffff1a}.section:not(.section-ink) .ladder-step{border-right:1.5px solid var(--ink)}.ladder-step:nth-child(2n){border-right:1px solid #ffffff1a}.section:not(.section-ink) .ladder-step:nth-child(2n){border-right:1.5px solid var(--ink)}.ladder-step:last-child{border-right:none}.detail-grid{padding:44px 0}.detail-body,.detail-grid{grid-template-columns:1.3fr .7fr;gap:40px}.enroll-card{position:sticky;top:88px}.dash-grid{grid-template-columns:1.6fr 1fr}.auth-shell{grid-template-columns:1fr 1fr}.auth-aside{display:flex}.learn-shell{grid-template-columns:320px minmax(0,1fr)}.learn-rail{border-right:1px solid var(--line);border-bottom:none;height:100dvh;position:sticky;top:0}.learn-rail-toggle{display:none}.learn-rail-list,.learn-rail-list[data-open=false]{flex:1;display:block;overflow-y:auto}.tutor-body{max-height:none}.companion-sheet{border-left:1px solid var(--line);border-top:none;border-radius:0;width:min(420px,100vw);max-height:none;inset:0 0 0 auto}.companion-backdrop{display:none}.learn-topbar{padding:14px 28px}.learn-content{padding:28px 28px 56px}}@media (min-width:1280px){.site-header-inner{gap:16px}.nav-link{padding:8px 12px;font-size:.92rem}.nav-link-cat{display:inline-flex}.header-search{width:14rem;max-width:14rem}.price-grid{grid-template-columns:repeat(4,1fr)}}.practice-lab .lab-panel{background:var(--surface,#fff);border:1px solid var(--line);border-radius:12px;padding:16px}.lab-pre,.practice-lab .lab-pre{white-space:pre-wrap;background:var(--surface-2,#f4f4f5);border-radius:8px;padding:12px;font-size:.85rem;overflow-x:auto}.spin{animation:spin .8s linear infinite}.onboard-shell{background:radial-gradient(ellipse 80% 50% at 10% 0,var(--yellow),transparent 55%),radial-gradient(ellipse 60% 40% at 100% 100%,var(--yellow),transparent 50%),var(--bg);min-height:100dvh}@supports (color:color-mix(in lab,red,red)){.onboard-shell{background:radial-gradient(ellipse 80% 50% at 10% 0,color-mix(in srgb,var(--yellow) 28%,transparent),transparent 55%),radial-gradient(ellipse 60% 40% at 100% 100%,color-mix(in srgb,var(--yellow) 12%,transparent),transparent 50%),var(--bg)}}.onboard-shell{flex-direction:column;display:flex;position:relative}.onboard-shell--comic{background:radial-gradient(circle at 12% 18%,var(--yellow),transparent 34%),radial-gradient(circle at 88% 8%,var(--yellow),transparent 28%),linear-gradient(180deg,#fffef8 0,var(--bg) 42%,#f7f7f4 100%)}@supports (color:color-mix(in lab,red,red)){.onboard-shell--comic{background:radial-gradient(circle at 12% 18%,color-mix(in srgb,var(--yellow) 42%,transparent),transparent 34%),radial-gradient(circle at 88% 8%,color-mix(in srgb,var(--yellow) 18%,transparent),transparent 28%),linear-gradient(180deg,#fffef8 0,var(--bg) 42%,#f7f7f4 100%)}}.onboard-atmosphere{pointer-events:none;opacity:.35;background-image:radial-gradient(circle at 1px 1px,#00000014 1px,#0000 0);background-size:14px 14px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#0000008c,#0000 70%);mask-image:linear-gradient(#0000008c,#0000 70%)}.onboard-top{z-index:2;border-bottom:1px solid var(--ink);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:18px 22px;display:flex;position:relative}@supports (color:color-mix(in lab,red,red)){.onboard-top{border-bottom:1px solid color-mix(in srgb,var(--ink) 10%,transparent)}}.onboard-top{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#fffef8d1}.onboard-progress{flex-direction:column;align-items:flex-end;gap:8px;min-width:min(320px,100%);display:flex}.onboard-progress-label{color:var(--ink-2);font-size:.78rem;font-weight:700}.onboard-progress-bar{gap:6px;width:100%;max-width:220px;display:flex}.onboard-progress-seg{background:var(--line);border-radius:999px;flex:1;height:4px}.onboard-progress-seg.is-on{background:var(--ink)}.onboard-progress-steps{flex-wrap:wrap;justify-content:flex-end;gap:8px;margin:0;padding:0;list-style:none;display:flex}.onboard-progress-steps li{color:var(--ink-2);align-items:center;gap:6px;font-size:.75rem;font-weight:700;display:inline-flex}.onboard-progress-steps li span{border:2px solid var(--line);background:#fff;border-radius:999px;place-items:center;width:22px;height:22px;font-size:.68rem;display:grid}.onboard-progress-steps li.is-on{color:var(--ink)}.onboard-progress-steps li.is-on span{border-color:var(--ink);background:var(--yellow)}.onboard-progress-steps li.is-done span{border-color:var(--ink);background:var(--ink);color:var(--yellow)}.onboard-stage{z-index:1;gap:22px;width:min(920px,100% - 32px);margin:0 auto;padding:28px 0 56px;display:grid;position:relative}.onboard-strip{grid-template-columns:auto 1fr;align-items:end;gap:18px;animation:onboard-enter .42s cubic-bezier(.2,.8,.2,1) both;display:grid}.onboard-strip-character{justify-items:center;gap:6px;padding-bottom:6px;display:grid}.onboard-strip-name{font-family:var(--font-sora),sans-serif;letter-spacing:.04em;text-transform:uppercase;font-size:.78rem;font-weight:800}.onboard-comic-bubble{border:3px solid var(--ink);filter:drop-shadow(6px 8px #0000001f);background:radial-gradient(circle at 2px 2px,#0000000e 1px,#0000 1.5px) 0 0/8px 8px,#fffdf3;border-radius:26px;padding:18px 20px 20px;animation:companion-comic-enter .32s cubic-bezier(.2,.8,.2,1) both;position:relative}.onboard-comic-bubble:after{content:"";width:0;height:0;filter:drop-shadow(-3px 0 0 var(--ink));border-right:12px solid #0000;border-color:#0000 #fffdf3 #0000 #0000;border-style:solid;border-width:12px 16px 12px 0;position:absolute;bottom:26px;left:-14px}.onboard-comic-speaker{color:var(--ink-2);letter-spacing:.08em;text-transform:uppercase;margin-bottom:6px;font-size:.68rem;font-weight:800;display:block}.onboard-comic-bubble>p{font-family:var(--font-sora),sans-serif;color:var(--ink);margin:0;font-size:clamp(1.05rem,2.4vw,1.28rem);font-weight:650;line-height:1.35}.onboard-comic-quote{border-left:4px solid var(--yellow);background:#ffffffb8;padding:12px 14px;font-family:var(--font-inter),sans-serif!important;color:var(--ink-2)!important;margin-top:12px!important;font-size:.95rem!important;font-weight:500!important;line-height:1.5!important}.onboard-comic-body{white-space:pre-wrap}.onboard-help-chips{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.onboard-help-chips button{border:2px solid var(--ink);cursor:pointer;box-shadow:2px 2px 0 var(--ink);background:#fff;border-radius:999px;padding:6px 12px;font-size:.78rem;font-weight:650}@supports (color:color-mix(in lab,red,red)){.onboard-help-chips button{box-shadow:2px 2px 0 color-mix(in srgb,var(--ink) 18%,transparent)}}.onboard-help-chips button.is-on,.onboard-help-chips button:hover{background:var(--yellow)}.onboard-caption-row{flex-wrap:wrap;align-items:center;gap:10px;animation:onboard-enter .48s cubic-bezier(.2,.8,.2,1) both;display:flex}.onboard-caption{border:2px solid var(--ink);background:#fff;gap:2px;min-width:0;max-width:100%;padding:8px 12px;display:grid;box-shadow:3px 3px #00000014}.onboard-caption span{letter-spacing:.06em;text-transform:uppercase;color:var(--ink-2);font-size:.65rem;font-weight:800}.onboard-caption strong{font-size:.88rem;font-weight:700;line-height:1.3}.onboard-caption-note{color:var(--ink-2);margin:0;font-size:.75rem}@keyframes onboard-enter{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media (max-width:720px){.onboard-strip{grid-template-columns:1fr;justify-items:stretch}.onboard-strip-character{grid-auto-flow:column;justify-content:start;align-items:center;gap:10px;padding-bottom:0}.onboard-comic-bubble:after{filter:drop-shadow(0 -3px 0 var(--ink));border-width:0 12px 16px;border-color:#0000 #0000 #fffdf3;top:-14px;bottom:auto;left:34px}}.onboard-free-label{color:var(--ink);gap:8px;margin-top:18px;font-size:.88rem;font-weight:700;display:grid}.onboard-textarea{border:2px solid var(--ink);width:100%}@supports (color:color-mix(in lab,red,red)){.onboard-textarea{border:2px solid color-mix(in srgb,var(--ink) 18%,transparent)}}.onboard-textarea{font:inherit;color:var(--ink);resize:vertical;background:#fff;border-radius:14px;min-height:88px;padding:12px 14px;font-weight:500}.onboard-textarea:focus{border-color:var(--ink);box-shadow:0 0 0 3px var(--yellow);outline:none}@supports (color:color-mix(in lab,red,red)){.onboard-textarea:focus{box-shadow:0 0 0 3px color-mix(in srgb,var(--yellow) 55%,transparent)}}.onboard-name-input{resize:none;min-height:0;font-family:var(--font-sora),sans-serif;font-size:1.15rem;font-weight:650}.onboard-chip-row{flex-wrap:wrap;gap:8px;margin-top:8px;display:flex}.onboard-chip{border:2px solid var(--ink)}@supports (color:color-mix(in lab,red,red)){.onboard-chip{border:2px solid color-mix(in srgb,var(--ink) 16%,transparent)}}.onboard-chip{cursor:pointer;color:var(--ink);background:#fff;border-radius:999px;padding:8px 14px;font-size:.82rem;font-weight:700;transition:transform .14s,box-shadow .14s}.onboard-chip:hover{transform:translateY(-1px)}.onboard-chip.is-active{border-color:var(--ink);background:var(--yellow);box-shadow:3px 3px #0000001f}.onboard-confirm-actions{flex-wrap:wrap;gap:10px;margin-top:8px;display:flex}.onboard-panel{flex-direction:column;gap:14px;padding:0;display:flex}.onboard-card{border:2px solid var(--ink);background:#fff;border-radius:22px;padding:22px 22px 24px;animation:onboard-enter .36s cubic-bezier(.2,.8,.2,1) both;box-shadow:8px 10px #00000014}.onboard-beat{letter-spacing:.06em;text-transform:uppercase;color:var(--ink-2);align-items:center;gap:6px;font-size:.72rem;font-weight:800;display:inline-flex}.onboard-card h1{font-family:var(--font-sora),sans-serif;margin:8px 0 10px;font-size:clamp(1.55rem,3.2vw,2.15rem);line-height:1.15}.onboard-lead{color:var(--ink-2);max-width:54ch;margin:0 0 4px;line-height:1.55}.onboard-section-label{letter-spacing:.04em;text-transform:uppercase;color:var(--ink-2);margin:18px 0 0;font-size:.78rem;font-weight:800}.onboard-goal-grid{grid-template-columns:1fr;gap:10px;margin-top:16px;display:grid}@media (min-width:560px){.onboard-goal-grid{grid-template-columns:1fr 1fr}}.onboard-goal{text-align:left;border:2px solid var(--ink)}@supports (color:color-mix(in lab,red,red)){.onboard-goal{border:2px solid color-mix(in srgb,var(--ink) 14%,transparent)}}.onboard-goal{cursor:pointer;background:#fffef8;border-radius:16px;flex-direction:column;gap:5px;padding:14px 15px;transition:transform .14s,box-shadow .14s,border-color .14s;display:flex}.onboard-goal:hover{border-color:var(--ink);transform:translateY(-2px)}@supports (color:color-mix(in lab,red,red)){.onboard-goal:hover{border-color:color-mix(in srgb,var(--ink) 40%,transparent)}}.onboard-goal strong{font-size:.95rem;font-family:var(--font-sora),sans-serif}.onboard-goal span{color:var(--ink-2);font-size:.8rem;line-height:1.4}.onboard-goal.is-active{border-color:var(--ink);background:var(--yellow)}@supports (color:color-mix(in lab,red,red)){.onboard-goal.is-active{background:color-mix(in srgb,var(--yellow) 28%,#fff)}}.onboard-goal.is-active{box-shadow:4px 4px #0000001f}.onboard-path-board{gap:14px;margin-top:14px;display:grid}.onboard-path-hero{border:2px solid var(--ink);background:linear-gradient(135deg,var(--yellow),#fff 62%);padding:16px 18px}@supports (color:color-mix(in lab,red,red)){.onboard-path-hero{background:linear-gradient(135deg,color-mix(in srgb,var(--yellow) 45%,#fff),#fff 62%)}}.onboard-path-hero{border-radius:16px}.onboard-path-hero>span{letter-spacing:.05em;text-transform:uppercase;color:var(--ink-2);font-size:.72rem;font-weight:800;display:block}.onboard-path-hero strong{font-family:var(--font-sora),sans-serif;margin-top:6px;font-size:1.2rem;line-height:1.25;display:block}.onboard-path-hero p{color:var(--ink-2);margin:8px 0 0;line-height:1.45}.onboard-path-summary{gap:8px;margin:0;padding:0;list-style:none;display:grid}.onboard-path-summary li{border:1px solid var(--line);background:#fff;border-radius:12px;gap:2px;padding:10px 12px;display:grid}.onboard-path-summary li span{letter-spacing:.05em;text-transform:uppercase;color:var(--ink-2);font-size:.68rem;font-weight:800}.onboard-path-summary li strong{font-size:.92rem;font-weight:650;line-height:1.35}.onboard-nav{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-top:22px;display:flex}.onboard-enrolled{border:2px solid var(--ink);background:var(--yellow);border-radius:999px;align-items:center;gap:8px;padding:8px 14px;display:inline-flex}@supports (color:color-mix(in lab,red,red)){.onboard-enrolled{background:color-mix(in srgb,var(--yellow) 45%,#fff)}}.onboard-enrolled{color:var(--ink);box-shadow:3px 3px 0 var(--ink);font-weight:650}.onboard-enrolled svg{flex:none}.onboard-tour{gap:12px;margin:16px 0 0;padding:0;list-style:none;display:grid}.onboard-tour-card{border:2px solid var(--ink);box-shadow:3px 3px 0 var(--ink);background:#fff;border-radius:16px;grid-template-columns:auto 1fr;gap:12px;padding:14px 16px;display:grid}@supports (color:color-mix(in lab,red,red)){.onboard-tour-card{box-shadow:3px 3px 0 color-mix(in srgb,var(--ink) 22%,transparent)}}.onboard-tour-card>svg{color:var(--ink);margin-top:2px}.onboard-tour-card strong{font-family:var(--font-sora),sans-serif;font-size:1rem;display:block}.onboard-tour-card p{color:var(--ink-2);margin:4px 0 0;line-height:1.5}.onboard-win-baseline{border:2px dashed var(--ink);padding:14px 16px}@supports (color:color-mix(in lab,red,red)){.onboard-win-baseline{border:2px dashed color-mix(in srgb,var(--ink) 35%,transparent)}}.onboard-win-baseline{background:#fafafa;border-radius:14px;gap:8px;display:grid}.onboard-win-baseline code{color:var(--ink);font-size:.95rem}.onboard-checklist{color:var(--ink);gap:6px;margin:10px 0 0;padding-left:0;list-style:none;display:grid}.onboard-checklist li{border:1px solid var(--line);background:#fff;border-radius:10px;align-items:flex-start;gap:8px;padding:8px 10px;font-size:.92rem;line-height:1.35;display:flex}.onboard-checklist li.is-hit{border-color:#2a9d8f}@supports (color:color-mix(in lab,red,red)){.onboard-checklist li.is-hit{border-color:color-mix(in srgb,#2a9d8f 55%,var(--ink))}}.onboard-checklist li.is-hit{background:#eaf5f4}.onboard-checklist li svg{color:#2a9d8f;flex:none;margin-top:2px}.onboard-starter{border:2px solid var(--ink);background:var(--yellow);border-radius:14px;margin-top:14px;padding:14px 16px}@supports (color:color-mix(in lab,red,red)){.onboard-starter{background:color-mix(in srgb,var(--yellow) 22%,#fff)}}.onboard-starter{gap:10px;display:grid}.onboard-starter code{white-space:pre-wrap;font-size:.9rem;line-height:1.45;display:block}.onboard-starter-use{justify-self:start}.onboard-starter--rescue{box-shadow:3px 3px 0 var(--ink);background:#e5f3f2}@supports (color:color-mix(in lab,red,red)){.onboard-starter--rescue{box-shadow:3px 3px 0 color-mix(in srgb,var(--ink) 22%,transparent)}}.onboard-starter-note{color:var(--ink-2);margin:0;font-size:.88rem;line-height:1.5}.onboard-win-score{margin-top:14px}@supports (color:color-mix(in lab,red,red)){.onboard-win-score{background:color-mix(in srgb,var(--yellow) 22%,#fff)}}.onboard-win-score{border:1px solid var(--ink)}@supports (color:color-mix(in lab,red,red)){.onboard-win-score{border:1px solid color-mix(in srgb,var(--ink) 12%,transparent)}}.onboard-win-score{gap:8px 14px}.onboard-win-score strong{font-family:var(--font-sora),sans-serif;font-size:1.1rem}.onboard-win-score-note{opacity:.9;width:100%;display:block;font-size:.78rem!important}.onboard-error{color:#b43727;margin:14px 0 0;font-weight:600}@media (prefers-reduced-motion:reduce){.onboard-caption-row,.onboard-card,.onboard-chip,.onboard-comic-bubble,.onboard-goal,.onboard-strip{transition:none;animation:none}}.onboard-steps{flex-wrap:wrap;gap:6px;display:flex}.onboard-step{border:1px solid var(--line);background:var(--bg);color:var(--ink-2);cursor:pointer;border-radius:999px;align-items:center;gap:6px;padding:6px 10px;font-size:.72rem;font-weight:600;display:inline-flex}.onboard-step span{background:var(--bg-alt);border-radius:999px;place-items:center;width:18px;height:18px;font-size:.65rem;display:grid}.onboard-step.is-active{border-color:var(--ink);color:var(--ink);box-shadow:0 0 0 2px var(--yellow)}.onboard-step.is-done span{background:var(--ink);color:var(--yellow)}.onboard-grid{flex:1;grid-template-columns:1fr;gap:0;width:100%;max-width:1180px;margin:0 auto;display:grid}.onboard-bullets{color:var(--ink);gap:8px;margin:16px 0 0;padding-left:1.1rem;display:grid}.onboard-avatar-block{flex-wrap:wrap;align-items:center;gap:18px;margin-top:18px;display:flex}.onboard-avatar-preview{border:2px solid var(--ink);background:var(--yellow);width:88px;height:88px;color:var(--yellow-ink);border-radius:999px;place-items:center;font-size:2rem;font-weight:700;display:grid;overflow:hidden}.avatar-img,.onboard-avatar-preview img{object-fit:cover;width:100%;height:100%;display:block}.onboard-recommend{border:1.5px solid var(--ink);background:var(--yellow);border-radius:14px;margin-top:16px;padding:14px}@supports (color:color-mix(in lab,red,red)){.onboard-recommend{background:color-mix(in srgb,var(--yellow) 18%,var(--bg))}}.onboard-recommend{gap:6px;display:grid}.onboard-recommend p{margin:0;font-size:.9rem;line-height:1.45}.onboard-recommend-note{color:var(--ink-2);font-size:.78rem!important}.onboard-baseline-q{border-left:3px solid var(--ink);background:var(--bg-alt);margin:16px 0 0;padding:14px;font-weight:600;line-height:1.45}.onboard-project-grid{gap:10px;margin-top:14px;display:grid}.onboard-project{text-align:left;border:1px solid var(--line);background:var(--bg);cursor:pointer;border-radius:14px;flex-direction:column;gap:6px;padding:14px;display:flex}.onboard-project strong{font-size:.95rem}.onboard-project-meta{color:var(--ink-2);text-transform:uppercase;letter-spacing:.03em;font-size:.72rem;font-weight:700}.onboard-project span:not(.onboard-project-meta){color:var(--ink-2);font-size:.84rem;line-height:1.45}.onboard-project em{color:var(--ink);font-size:.78rem;font-style:normal}.onboard-project.is-active{border-color:var(--ink);box-shadow:0 0 0 2px var(--yellow)}.onboard-sample{color:var(--ink-2);margin-top:6px;font-size:.75rem;font-style:italic;line-height:1.4;display:block}.onboard-win-baseline{border:1px dashed var(--line);background:var(--bg-alt);border-radius:12px;margin-top:14px;padding:12px 14px}.onboard-win-baseline code{white-space:pre-wrap;margin-top:8px;font-size:.88rem;display:block}.onboard-win-score{border:1.5px solid var(--ink);background:var(--yellow);border-radius:12px;flex-wrap:wrap;align-items:baseline;gap:8px 16px;margin-top:12px;padding:12px 14px;display:flex}@supports (color:color-mix(in lab,red,red)){.onboard-win-score{background:color-mix(in srgb,var(--yellow) 22%,var(--bg))}}.onboard-win-score span{color:var(--ink-2);font-size:.82rem}.dash-next-action{border:1.5px solid var(--ink);box-shadow:0 0 0 2px var(--yellow)}@supports (color:color-mix(in lab,red,red)){.dash-next-action{box-shadow:0 0 0 2px color-mix(in srgb,var(--yellow) 55%,transparent)}}.share-achievements-label{color:var(--ink-2);margin:0 0 8px;font-size:.78rem;font-weight:700}.share-achievements-row{flex-wrap:wrap;gap:8px;display:flex}.share-btn{border:1px solid var(--line);background:var(--bg);cursor:pointer;color:var(--ink);border-radius:999px;align-items:center;gap:6px;padding:8px 12px;font-size:.8rem;font-weight:600;display:inline-flex}.share-btn:hover{border-color:var(--ink)}.share-btn-x{font-weight:800}.share-achievements-note{color:var(--ink-2);margin:10px 0 0;font-size:.8rem}.profile-page{padding:28px 0 64px}.profile-back{color:var(--ink-2);align-items:center;gap:6px;margin-bottom:18px;font-size:.88rem;font-weight:600;display:inline-flex}.profile-hero{align-items:center;gap:18px;margin-bottom:28px;display:grid}@media (min-width:800px){.profile-hero{grid-template-columns:auto 1fr auto}}.profile-hero-avatar{width:96px;height:96px}.profile-companion-chip{border:1px solid var(--line);background:var(--bg-alt);border-radius:16px;align-items:center;gap:12px;padding:12px 14px;display:flex}.profile-companion-chip strong{display:block}.profile-companion-chip a,.profile-companion-chip span,.profile-companion-edit{color:var(--ink-2);font-size:.8rem;display:block}.profile-companion-edit{cursor:pointer;text-underline-offset:2px;background:0 0;border:0;margin-top:3px;padding:0;text-decoration:underline}.profile-grid{gap:20px;display:grid}@media (min-width:900px){.profile-grid{grid-template-columns:1.4fr .9fr}}.profile-form textarea.field-input{resize:vertical;min-height:80px}.avatar{overflow:hidden}.proof-card{flex-direction:column;gap:8px;display:flex}.proof-card h3{margin:0;font-size:1.2rem}.proof-card-problem{color:var(--ink-2);margin:0;font-size:.92rem;line-height:1.5}.proof-card-progress,.proof-card-stage{margin:0;font-size:.85rem}.proof-card-note{color:var(--ink-2);margin:6px 0 0;font-size:.78rem;line-height:1.4}.proof-card-stages{color:var(--ink-2);gap:6px;margin:8px 0 0;padding-left:1.1rem;font-size:.8rem;display:grid}.proof-card-stages li.is-done{color:var(--ink)}.proof-card-stages li.is-current{color:var(--ink);font-weight:700}.proof-card-stages em{opacity:.75;font-style:normal;font-weight:500;display:block}.proof-stage-tabs{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.proof-stage-tab{border:1.5px solid var(--ink-3,#ccc);background:var(--surface,#fff);color:var(--ink-2);cursor:pointer;border-radius:999px;padding:6px 12px;font-size:.78rem;font-weight:600;transition:border-color .15s,background .15s,color .15s}.proof-stage-tab:hover{border-color:var(--ink);color:var(--ink)}.proof-stage-tab.is-active{border-color:var(--yellow-deep,#e6b000);background:var(--yellow-soft,#fff8e1);color:var(--ink)}.proof-stage-tab.is-done{border-color:var(--green,#2a9d8f)}.proof-stage-tab.is-done:not(.is-active):after{content:" ✓";color:var(--green,#2a9d8f)}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}