/*! 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-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}}}@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;--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;--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-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-danger:#c5453a;--color-danger-surface:#fbe9e7;--font-display:var(--font-sora),var(--font-inter),sans-serif}}@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{.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;overflow:hidden}.absolute,.sr-only{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.isolate{isolation:isolate}.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}.grow{flex-grow:1}.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}.rounded{border-radius:.25rem}.border{border-style:var(--tw-border-style);border-width:1px}.lowercase{text-transform:lowercase}.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))}}: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:44px;padding:0 14px;font-size:.85rem}.btn-primary{background:var(--yellow);color:var(--yellow-ink);border-color:var(--ink)}.btn-primary:hover{box-shadow:var(--shadow-md);background:#ffd84d}.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}html.weave-splash-pending{overflow:hidden}html:not([data-weave-skip]){background:#0a0a0b}html[data-weave-skip] #weave-boot-shell{display:none!important}.weave-splash{z-index:9999;color:var(--color-on-dark);opacity:1;pointer-events:none;background:radial-gradient(90% 70% at 50% 42%,#1a1a1c 0,#0a0a0b 55%,#050506 100%);place-items:center;transition:opacity .48s;display:grid;position:fixed;inset:0}.weave-splash--mark{color:var(--color-on-dark);background:radial-gradient(90% 70% at 50% 42%,#1a1a1c 0,#0a0a0b 55%,#050506 100%)}.weave-splash--boot .weave-boot-mark{filter:drop-shadow(0 12px 28px #00000059);width:min(72vw,280px);height:auto;display:block}.weave-splash-caption--boot{opacity:1;animation:none;transform:none}.weave-splash--exit{opacity:0}.weave-splash-stage{justify-items:center;gap:1.1rem;display:grid}.weave-mark,.weave-splash-svg{width:min(52vw,220px);height:auto;display:block;overflow:visible}.weave-splash-svg--mark{filter:drop-shadow(0 12px 28px #00000059);width:min(72vw,280px)}.weave-mark-loom .weave-mark-warp,.weave-splash-loom .weave-splash-warp{animation:weave-warp-in .7s both}.weave-mark-ghost,.weave-splash-ghost-mark{animation:weave-ghost-in .45s both}.weave-mark-image,.weave-splash-mark{transform-origin:50%;animation:weave-mark-settle .55s 1.55s both}.weave-mark-arrow{filter:drop-shadow(0 0 6px #ffc40073)}.weave-splash-caption{font-family:var(--font-display);letter-spacing:-.02em;opacity:0;margin:0;font-size:clamp(.95rem,2.4vw,1.15rem);font-weight:700;animation:weave-caption-in .45s 1.45s both;transform:translateY(6px)}.weave-splash-caption-weave{color:var(--ink)}.weave-splash-caption-path{color:var(--ink-2);font-weight:600}.weave-splash-caption--on-dark .weave-splash-caption-weave{color:#f7f6f2}.weave-splash-caption--on-dark .weave-splash-caption-path{color:#ffc400eb}.weave-loader{min-height:280px;color:var(--ink-2);align-content:center;justify-items:center;gap:1rem;padding:2rem 1rem;display:grid}.weave-loader--full{color:#b9b8b2;background:radial-gradient(90% 70% at 50% 42%,#1a1a1c 0,#0a0a0b 55%,#050506 100%);min-height:100dvh}.weave-loader-frame{background:#0a0a0b;border-radius:18px;place-items:center;width:min(56vw,200px);display:grid;overflow:hidden;box-shadow:0 10px 28px #0a0a0b2e}.weave-loader--full .weave-loader-frame{width:min(72vw,260px);box-shadow:none;background:0 0;overflow:visible}.weave-loader-frame .weave-mark{width:100%;height:auto}.weave-loader-label{font-family:var(--font-display);letter-spacing:-.01em;text-align:center;margin:0;font-size:.98rem;font-weight:600}.weave-loader--full .weave-loader-label{color:#f7f6f2}@keyframes weave-warp-in{0%{opacity:0}to{opacity:1}}@keyframes weave-ghost-in{0%{opacity:0}to{opacity:1}}@keyframes weave-mark-settle{0%{transform:scale(.985)}to{transform:scale(1)}}@keyframes weave-caption-in{to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.weave-mark-ghost,.weave-mark-image,.weave-mark-loom .weave-mark-warp,.weave-splash-caption,.weave-splash-ghost-mark,.weave-splash-loom .weave-splash-warp,.weave-splash-mark{opacity:1;transform:none;animation:none!important}.weave-splash{transition-duration:.2s}}.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--wordmark{gap:0}.brand-text--wordmark{white-space:nowrap;letter-spacing:-.04em;align-items:baseline;font-size:clamp(1.15rem,1rem + .45vw,1.45rem);line-height:1.05;display:inline-flex}.brand--lg .brand-text--wordmark{font-size:clamp(1.35rem,1.1rem + .7vw,1.85rem)}.brand-name-weave{color:var(--ink);font-weight:650}.brand-name-path{font-weight:800}.auth-aside .brand-name-weave,.site-footer .brand-name-weave,.surface-dark .brand-name-weave{color:var(--ink)}.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{color:var(--ink-2);border-top:4px solid var(--yellow);background:#fff;padding:56px 0 32px}.footer-grid{grid-template-columns:1fr;gap:32px;display:grid}.footer-brand .brand{color:var(--ink)}.footer-brand p{max-width:36ch;margin-top:14px;font-size:.92rem}.footer-col h4{color:var(--ink);letter-spacing:.12em;text-transform:uppercase;margin-bottom:10px;font-size:.82rem}.footer-col a{color:var(--ink-2);transition:color var(--dur-fast) var(--ease);padding:6px 0;font-size:.92rem;display:block}.footer-col a:hover{color:var(--ink)}.footer-bottom{border-top:1px solid var(--line);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;overflow:hidden}.player-screen--person{background:#f4f1ea}.player-screen-photo{object-fit:cover;object-position:center 18%;width:100%;height:100%;display:block;position:absolute;inset:0}.player-screen--person:after{content:"";pointer-events:none;background:linear-gradient(#0000 0 58%,#0a0a0b47 100%);position:absolute;inset:0}.player-screen--person .player-play,.player-screen--person .player-tag{z-index:1}.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}.hero-weave-intro{border:2px solid var(--ink);background:radial-gradient(circle at 2px 2px,#0000000e 1px,#0000 1.5px) 0 0/8px 8px,#fffdf3;border-radius:18px 18px 18px 6px;align-items:center;gap:12px;padding:14px 14px 14px 12px;display:flex;overflow:hidden}.hero-weave-intro .companion-visual{flex:none;margin-top:0}.hero-weave-intro .companion-visual--idle .companion-orb-core,.hero-weave-intro .companion-visual--idle.companion-visual--fox,.hero-weave-intro .companion-visual--idle.companion-visual--owl,.hero-weave-intro .companion-visual--idle.companion-visual--petal{transform-origin:50%;will-change:transform;animation:hero-weave-breathe 2.2s ease-in-out infinite}@keyframes hero-weave-breathe{0%,to{transform:scale(1)}50%{transform:scale(1.12)}}@media (prefers-reduced-motion:reduce){.hero-weave-intro .companion-visual--idle .companion-orb-core,.hero-weave-intro .companion-visual--idle.companion-visual--fox,.hero-weave-intro .companion-visual--idle.companion-visual--owl,.hero-weave-intro .companion-visual--idle.companion-visual--petal{animation:none}}.hero-weave-intro-copy{gap:4px;min-width:0;display:grid}.hero-weave-intro-speaker{font-family:var(--font-sora),sans-serif;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-muted,#5c5c5c);font-size:.72rem;font-weight:800}.hero-weave-intro-who{color:var(--ink);margin:0;font-size:.98rem;font-weight:700;line-height:1.25}.hero-weave-intro-why{color:var(--ink-muted,#3a3a3a);margin:0;font-size:.86rem;line-height:1.4}.home-weave-intro{right:max(12px,env(safe-area-inset-right));bottom:max(12px,env(safe-area-inset-bottom));z-index:55;pointer-events:none;width:min(320px,100vw - 24px);position:fixed}.home-weave-intro-nudge{filter:drop-shadow(8px 10px #00000024);padding-bottom:76px;animation:companion-comic-enter .28s cubic-bezier(.2,.8,.2,1) both}.home-weave-intro-bubble{pointer-events:auto;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;padding:14px 16px 15px;position:relative}.home-weave-intro-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:26px;height:26px;position:absolute;bottom:-24px;right:28px;transform:skewY(34deg)rotate(18deg)}.home-weave-intro-head{justify-content:space-between;align-items:start;gap:8px;margin-bottom:6px;display:flex}.home-weave-intro-speaker{letter-spacing:.04em;text-transform:uppercase;color:var(--ink-muted,#5c5c5c);font-size:.72rem;font-weight:800}.home-weave-intro-bubble p{color:var(--ink);margin:0;font-size:.92rem;line-height:1.4}.home-weave-intro-actions{gap:8px;margin-top:12px;display:flex}.home-weave-intro-fab{pointer-events:auto;background:var(--yellow);border:2px solid var(--ink);width:56px;height:56px;color:var(--yellow-ink,#111);filter:drop-shadow(0 6px 14px #00000029);border-radius:999px;place-items:center;animation:companion-ambient-pulse 2.4s ease-in-out infinite;display:grid;position:absolute;bottom:4px;right:4px}.home-weave-intro-fab:focus-visible{outline:3px solid var(--ink);outline-offset:3px}.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)}.foundations-grid{grid-template-columns:1fr;align-items:start;gap:32px;display:grid}.foundations-outcomes{grid-template-columns:1fr;margin-top:24px;margin-bottom:0}.foundations-outputs{color:var(--ink-2);max-width:62ch;margin-top:16px}.foundations-card{border:1.5px solid var(--ink);border-radius:var(--radius-lg);background:var(--bg);overflow:hidden}.foundations-card .thumb{aspect-ratio:auto;border-radius:0;height:clamp(168px,22vw,200px)}.foundations-card-body{gap:12px;padding:20px 22px 22px;display:grid}.foundations-card-meta{letter-spacing:.04em;text-transform:uppercase;color:var(--ink-2);flex-wrap:wrap;gap:8px;font-size:.78rem;font-weight:600;display:flex}.foundations-card-body h3{font-family:var(--font-display);font-size:1.35rem;font-weight:800;line-height:1.2}.foundations-card-body p{color:var(--ink-2);font-size:.92rem}.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-headline{letter-spacing:.01em;font-size:.95rem;font-weight:700}.price-amount{font-family:var(--font-display);font-variant-numeric:tabular-nums;margin-top:8px;font-size:2rem;font-weight:800}.price-card.is-idp .price-amount{color:var(--yellow);font-size:1.5rem}.price-blurb{color:var(--ink-2);margin-top:8px;font-size:.88rem}.price-card.is-idp .price-blurb{color:var(--on-dark-2)}.price-features{flex:auto;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-cta{margin-top:auto;padding-top:16px}.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:44px;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(--yellow);color:var(--ink);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(--yellow);border-right:4px solid var(--ink);flex-direction:column;gap:28px;padding:56px;display:none}.auth-aside,.auth-aside .brand{color:var(--ink)}.auth-aside h2{font-size:var(--fs-h1);max-width:16ch}.auth-aside .point{color:var(--ink);align-items:flex-start;gap:12px;display:flex}.auth-aside .point svg{color:var(--ink);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:44px;height:44px;color:var(--ink-2);cursor:pointer;background:0 0;border:none;place-items:center;display:inline-grid;position:absolute;top:50%;right:1px;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}.course-intake-nudge{border:1.5px solid var(--ink,#1a1a1a);background:var(--yellow-soft,#fff7d6);border-radius:12px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem 1rem;margin:0 0 1.1rem;padding:.85rem 1rem;display:flex}.course-intake-nudge strong{font-size:.92rem;display:block}.course-intake-nudge p{color:var(--ink-2,#444);max-width:46ch;margin:.2rem 0 0;font-size:.85rem}.course-intake-nudge a{text-decoration:underline}.course-intake-nudge-actions{align-items:center;gap:.5rem;display:flex}.course-intake.student-discovery{gap:1.15rem}.course-intake-known{border-left:3px solid var(--yellow,#ffd400);padding:.1rem 0 .1rem .9rem}.course-intake-known p{color:var(--ink-2,#444);margin:0 0 .4rem;font-size:.85rem}.course-intake-known ul{gap:.25rem;margin:0;padding-left:1.1rem;font-size:.85rem;display:grid}.course-intake-help{color:var(--ink-2,#555);margin:-.15rem 0 .4rem;font-size:.8rem;display:block}.course-intake-questions,.course-intake-review{gap:1rem;display:grid}.course-intake-carried blockquote{border:1.5px solid var(--line,#ddd);background:#fff;border-radius:10px;gap:.3rem;margin:.5rem 0;padding:.7rem .9rem;display:grid}.course-intake-carried blockquote span{color:var(--ink-2,#444);font-size:.86rem}.course-intake-carried-actions,.course-intake-review-actions{flex-wrap:wrap;gap:.6rem;display:flex}.course-intake.done .project-ready strong{font-weight:700}.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-structured-rows{gap:12px;display:grid}.project-structured-rows fieldset{border:1px solid var(--line-soft);border-radius:var(--radius-sm);background:var(--bg-alt);margin:0;padding:14px}.project-structured-rows legend{color:var(--ink);padding:0 6px;font-size:.78rem;font-weight:750}.project-structured-rows fieldset>div{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.project-structured-rows label{color:var(--ink-2);gap:5px;font-size:.75rem;font-weight:650;display:grid}.project-structured-rows input,.project-structured-rows select{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--bg);width:100%;min-height:44px;color:var(--ink);font:inherit;padding:8px 10px}.project-structured-rows input:focus,.project-structured-rows select:focus{outline:2px solid var(--accent,#ffc400);outline-offset:1px}.project-row-add,.project-row-remove{align-items:center;gap:6px;display:inline-flex}.project-row-remove{min-height:44px;color:var(--ink-2);cursor:pointer;background:0 0;border:0;margin-top:10px;padding:0;font-size:.74rem;font-weight:650}.project-row-add{justify-self:start}@media (max-width:640px){.project-structured-rows fieldset>div{grid-template-columns:1fr}}.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-box.video-box--thumb{background:radial-gradient(circle at 30% 20%,#2c2a16,#0c0c0d 70%);place-items:center;gap:12px;min-height:220px;padding:24px 16px 20px;display:grid}.video-box.video-box--thumb .thumb{border-radius:var(--radius-md);border:1px solid #ffffff14;width:min(100%,420px)}.video-box.video-box--thumb .video-label{text-align:center;max-width:36ch}.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:linear-gradient(#fff8d6,#fff 70%);margin-top:16px;padding:18px 20px}.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:#0a0a0b;padding-left:28px;font-weight:750;animation:keypoint-pulse 2.8s ease-in-out infinite;position:relative}.keypoints li:nth-child(2){animation-delay:.35s}.keypoints li:nth-child(3){animation-delay:.7s}.keypoints li:nth-child(4){animation-delay:1.05s}@keyframes keypoint-pulse{0%,to{color:#0a0a0b;transform:scale(1)}50%{color:#b88600;transform:scale(1.02)}}.lesson-volume-tip{color:var(--ink-3);margin:8px 0 0;font-size:.78rem}.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;align-items:flex-start;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-complete-status{color:var(--green);align-items:center;gap:6px;font-size:.8rem;font-weight:700;display:inline-flex}.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-progress{color:var(--ink-2);gap:7px;margin-top:22px;font-size:.8rem;font-weight:700;display:grid}.quiz-progress>div{background:var(--line-soft);border-radius:999px;height:4px;overflow:hidden}.quiz-progress i{border-radius:inherit;background:var(--yellow-deep);height:100%;display:block}.quiz-q{border-radius:var(--radius-md);border:1px solid var(--line);background:var(--bg);margin-top:14px;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-explain strong{color:var(--ink)}.quiz-next{margin-top:14px}.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);margin-top:10px}.quiz-result p{color:var(--ink-2);margin:8px 0 0}.quiz-result .hero-actions{justify-content:center;margin-top:18px}.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-resize-handle{display:none}@media (max-width:1023px){body.companion-is-open{padding-bottom:min(72dvh,620px)}}.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:44px;height:44px;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:44px;color:var(--ink);cursor:pointer;transition:background-color var(--dur-fast) var(--ease);border-radius:999px;flex:none;padding:8px 12px;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{grid-template-columns:repeat(2,1fr)}.price-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.foundations-grid{grid-template-columns:minmax(0,1.25fr) minmax(260px,.75fr);align-items:stretch;gap:40px}.foundations-card{align-self:start;position:sticky;top:88px}.ladder-grid,.ladder-path{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}.price-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.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{width:min(var(--companion-sheet-width,420px),50vw);border-left:1px solid var(--line);border-top:none;border-radius:0;min-width:340px;max-width:620px;max-height:none;inset:0 0 0 auto}.companion-backdrop{display:none}body.companion-is-open{padding-right:min(var(--companion-sheet-width,420px),50vw)}.companion-resize-handle{z-index:2;cursor:col-resize;background:0 0;border:0;width:14px;display:block;position:absolute;top:0;bottom:0;left:-7px}.companion-resize-handle:after{background:var(--line);content:"";border-radius:999px;width:3px;height:44px;position:absolute;top:50%;left:5px;transform:translateY(-50%)}.companion-resize-handle:focus-visible:after,.companion-resize-handle:hover:after{background:var(--yellow);box-shadow:0 0 0 2px var(--ink)}.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(5,minmax(0,1fr))}.price-card{padding:18px 16px}.price-amount{font-size:1.55rem}}.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)}.project-verdicts{gap:8px;margin:0 0 14px;padding:0;list-style:none;display:grid}.project-verdicts li{border-radius:8px;align-items:flex-start;gap:8px;padding:8px 10px;font-size:.88rem;line-height:1.45;display:flex}.project-verdicts li svg{flex:none;margin-top:2px}.project-verdicts .verdict-pass{color:var(--fg-muted,#4b5563);background:var(--accent,#f0b429)}@supports (color:color-mix(in lab,red,red)){.project-verdicts .verdict-pass{background:color-mix(in srgb,var(--accent,#f0b429) 8%,transparent)}}.project-verdicts .verdict-fail{color:var(--danger,#b42318);background:var(--danger,#b42318)}@supports (color:color-mix(in lab,red,red)){.project-verdicts .verdict-fail{background:color-mix(in srgb,var(--danger,#b42318) 8%,transparent)}}.project-verdicts em{opacity:.9;font-style:normal}.project-context-recap{border:1px solid var(--accent,#f0b429);border-radius:10px;margin:0 0 16px;padding:12px 14px}@supports (color:color-mix(in lab,red,red)){.project-context-recap{border:1px solid color-mix(in srgb,var(--accent,#f0b429) 32%,transparent)}}.project-context-recap{background:var(--accent,#f0b429)}@supports (color:color-mix(in lab,red,red)){.project-context-recap{background:color-mix(in srgb,var(--accent,#f0b429) 7%,transparent)}}.project-context-kicker{letter-spacing:.08em;text-transform:uppercase;opacity:.75;margin:0 0 8px;font-size:.72rem;font-weight:700}.project-context-recap dl{gap:6px;margin:0;display:grid}.project-context-recap dt{text-transform:uppercase;letter-spacing:.05em;opacity:.7;font-size:.72rem;font-weight:600}.project-context-recap dd{margin:0 0 4px;font-size:.9rem;line-height:1.45}@media (max-width:640px){.project-context-recap dd{font-size:.86rem}}.tutor-controls{border:1px solid;border-radius:12px;gap:16px;margin:18px 0 4px;padding:16px;display:grid}@supports (color:color-mix(in lab,red,red)){.tutor-controls{border:1px solid color-mix(in srgb,currentColor 14%,transparent)}}.tutor-controls-head{align-items:flex-start;gap:10px;display:flex}.tutor-controls-head h3{margin:0;font-size:.95rem}.tutor-controls-head p{opacity:.75;margin:3px 0 0;font-size:.8rem;line-height:1.45}.tutor-controls-state{opacity:.7;white-space:nowrap;margin-left:auto;font-size:.75rem}.tutor-controls-state.saved{color:var(--success,#167a4a);opacity:1}.tutor-controls-group{border:0;margin:0;padding:0}.tutor-controls-group legend{letter-spacing:.07em;text-transform:uppercase;opacity:.7;align-items:center;gap:5px;margin-bottom:8px;font-size:.72rem;font-weight:700;display:inline-flex}.tutor-controls-options{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:8px;display:grid}.tutor-control-option{text-align:left;border:1px solid;border-radius:10px;gap:4px;padding:10px 12px;display:grid}@supports (color:color-mix(in lab,red,red)){.tutor-control-option{border:1px solid color-mix(in srgb,currentColor 18%,transparent)}}.tutor-control-option{cursor:pointer;color:inherit;font:inherit;background:0 0}.tutor-control-option:hover:not(:disabled){border-color:var(--accent,#f0b429)}@supports (color:color-mix(in lab,red,red)){.tutor-control-option:hover:not(:disabled){border-color:color-mix(in srgb,var(--accent,#f0b429) 55%,transparent)}}.tutor-control-option.selected{border-color:var(--accent,#f0b429);background:var(--accent,#f0b429)}@supports (color:color-mix(in lab,red,red)){.tutor-control-option.selected{background:color-mix(in srgb,var(--accent,#f0b429) 10%,transparent)}}.tutor-control-option:disabled{opacity:.45;cursor:not-allowed}.tutor-control-title{align-items:baseline;gap:6px;font-size:.9rem;font-weight:650;display:flex}.tutor-control-title em{opacity:.65;font-size:.75rem;font-style:normal;font-weight:500}.tutor-control-cost{background:currentColor;border-radius:999px;margin-left:auto;padding:1px 6px;font-size:.7rem}@supports (color:color-mix(in lab,red,red)){.tutor-control-cost{background:color-mix(in srgb,currentColor 10%,transparent)}}.tutor-control-cost{opacity:.8}.tutor-control-best,.tutor-control-blurb{opacity:.78;font-size:.78rem;line-height:1.4}.tutor-control-best{opacity:.6}.tutor-controls-note{opacity:.8;margin:8px 0 0;font-size:.78rem;line-height:1.5}.model-lab{gap:14px;display:grid}.model-lab-prompts{flex-wrap:wrap;gap:6px;display:flex}.model-lab-tab{font:inherit;border:1px solid;border-radius:999px;padding:6px 12px;font-size:.8rem}@supports (color:color-mix(in lab,red,red)){.model-lab-tab{border:1px solid color-mix(in srgb,currentColor 20%,transparent)}}.model-lab-tab{color:inherit;cursor:pointer;background:0 0}.model-lab-tab.selected{border-color:var(--accent,#f0b429);background:var(--accent,#f0b429)}@supports (color:color-mix(in lab,red,red)){.model-lab-tab.selected{background:color-mix(in srgb,var(--accent,#f0b429) 12%,transparent)}}.model-lab-tab.selected{font-weight:600}.model-lab-question{border-left:3px solid var(--accent,#f0b429);background:currentColor;border-radius:10px;margin:0;padding:12px 14px;font-size:.92rem;line-height:1.55}@supports (color:color-mix(in lab,red,red)){.model-lab-question{background:color-mix(in srgb,currentColor 5%,transparent)}}.model-lab-budget,.model-lab-hint,.model-lab-note{opacity:.72;margin:0;font-size:.78rem;line-height:1.5}.model-lab-columns{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px;display:grid}.model-lab-column{border:1px solid;border-radius:10px;align-content:start;gap:8px;padding:12px;display:grid}@supports (color:color-mix(in lab,red,red)){.model-lab-column{border:1px solid color-mix(in srgb,currentColor 14%,transparent)}}.model-lab-column-head{align-items:baseline;gap:6px;display:flex}.model-lab-column-head em{opacity:.6;font-size:.75rem;font-style:normal}.model-lab-cost{background:currentColor;border-radius:999px;margin-left:auto;padding:1px 6px;font-size:.7rem}@supports (color:color-mix(in lab,red,red)){.model-lab-cost{background:color-mix(in srgb,currentColor 10%,transparent)}}.model-lab-timing{opacity:.7;align-items:center;gap:5px;margin:0;font-size:.78rem;display:flex}.model-lab-answer{white-space:pre-wrap;background:currentColor;border-radius:8px;padding:10px;font-size:.86rem;line-height:1.55}@supports (color:color-mix(in lab,red,red)){.model-lab-answer{background:color-mix(in srgb,currentColor 5%,transparent)}}.model-lab-error{color:var(--danger,#b42318);margin:0;font-size:.8rem}.model-lab-lesson{border:1px solid var(--accent,#f0b429);border-radius:10px;padding:12px 14px}@supports (color:color-mix(in lab,red,red)){.model-lab-lesson{border:1px solid color-mix(in srgb,var(--accent,#f0b429) 34%,transparent)}}.model-lab-lesson{background:var(--accent,#f0b429)}@supports (color:color-mix(in lab,red,red)){.model-lab-lesson{background:color-mix(in srgb,var(--accent,#f0b429) 8%,transparent)}}.model-lab-lesson h4{margin:0 0 6px;font-size:.85rem}.model-lab-lesson p{margin:0;font-size:.86rem;line-height:1.55}@media (max-width:640px){.model-lab-columns{grid-template-columns:1fr}}@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-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}