/*! tailwindcss v4.2.1 | 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-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-y-reverse:0;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-duration:initial;--tw-ease:initial}}}@layer theme{:host,:root{--font-sans:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--color-black:#000;--color-white:#fff;--spacing:.25rem;--container-3xl:48rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-base:1rem;--text-base--line-height:calc(1.5 / 1);--text-lg:1.125rem;--text-lg--line-height:calc(1.75 / 1.125);--text-xl:1.25rem;--text-xl--line-height:calc(1.75 / 1.25);--text-2xl:1.5rem;--text-2xl--line-height:calc(2 / 1.5);--text-3xl:1.875rem;--text-3xl--line-height:calc(2.25 / 1.875);--text-4xl:2.25rem;--text-4xl--line-height:calc(2.5 / 2.25);--text-5xl:3rem;--text-5xl--line-height:1;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--font-weight-extrabold:800;--tracking-wide:.025em;--leading-relaxed:1.625;--radius-lg:.5rem;--radius-xl:.75rem;--ease-out:cubic-bezier(0,0,.2,1);--ease-in-out:cubic-bezier(.4,0,.2,1);--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@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,ui-sans-serif,system-ui,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{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{.pointer-events-none{pointer-events:none}.collapse{visibility:collapse}.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}.sticky{position:sticky}.inset-0{inset:calc(var(--spacing) * 0)}.inset-x-0{inset-inline:calc(var(--spacing) * 0)}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.top-0{top:calc(var(--spacing) * 0)}.top-14{top:calc(var(--spacing) * 14)}.right-0{right:calc(var(--spacing) * 0)}.bottom-0{bottom:calc(var(--spacing) * 0)}.left-0{left:calc(var(--spacing) * 0)}.z-40{z-index:40}.z-50{z-index:50}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.m-0{margin:calc(var(--spacing) * 0)}.mx-auto{margin-inline:auto}.mt-3{margin-top:calc(var(--spacing) * 3)}.mt-6{margin-top:calc(var(--spacing) * 6)}.mb-1{margin-bottom:calc(var(--spacing) * 1)}.mb-2{margin-bottom:calc(var(--spacing) * 2)}.mb-3{margin-bottom:calc(var(--spacing) * 3)}.mb-4{margin-bottom:calc(var(--spacing) * 4)}.mb-5{margin-bottom:calc(var(--spacing) * 5)}.mb-6{margin-bottom:calc(var(--spacing) * 6)}.mb-8{margin-bottom:calc(var(--spacing) * 8)}.mb-10{margin-bottom:calc(var(--spacing) * 10)}.mb-14{margin-bottom:calc(var(--spacing) * 14)}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.table{display:table}.h-8{height:calc(var(--spacing) * 8)}.h-14{height:calc(var(--spacing) * 14)}.min-h-\[50vh\]{min-height:50vh}.min-h-full{min-height:100%}.min-h-screen{min-height:100vh}.w-72{width:calc(var(--spacing) * 72)}.w-auto{width:auto}.max-w-3xl{max-width:var(--container-3xl)}.min-w-0{min-width:calc(var(--spacing) * 0)}.flex-1{flex:1}.shrink-0{flex-shrink:0}.-translate-x-full{--tw-translate-x:-100%}.-translate-x-full,.translate-x-0{translate:var(--tw-translate-x) var(--tw-translate-y)}.translate-x-0{--tw-translate-x:calc(var(--spacing) * 0)}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.cursor-pointer{cursor:pointer}.resize{resize:both}.list-disc{list-style-type:disc}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-2{gap:calc(var(--spacing) * 2)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}:where(.space-y-1>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 1) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 1) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-4>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 4) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 4) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-10>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 10) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 10) * calc(1 - var(--tw-space-y-reverse)))}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.rounded{border-radius:.25rem}.rounded-full{border-radius:3.40282e+38px}.rounded-lg{border-radius:var(--radius-lg)}.rounded-xl{border-radius:var(--radius-xl)}.border{border-style:var(--tw-border-style);border-width:1px}.border-0{border-style:var(--tw-border-style);border-width:0}.bg-black\/40{background-color:#0006}@supports (color:color-mix(in lab,red,red)){.bg-black\/40{background-color:color-mix(in oklab,var(--color-black) 40%,transparent)}}.bg-white\/5{background-color:#ffffff0d}@supports (color:color-mix(in lab,red,red)){.bg-white\/5{background-color:color-mix(in oklab,var(--color-white) 5%,transparent)}}.p-2{padding:calc(var(--spacing) * 2)}.p-4{padding:calc(var(--spacing) * 4)}.p-6{padding:calc(var(--spacing) * 6)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-6{padding-inline:calc(var(--spacing) * 6)}.py-1{padding-block:calc(var(--spacing) * 1)}.py-1\.5{padding-block:calc(var(--spacing) * 1.5)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-3{padding-block:calc(var(--spacing) * 3)}.py-4{padding-block:calc(var(--spacing) * 4)}.py-5{padding-block:calc(var(--spacing) * 5)}.py-6{padding-block:calc(var(--spacing) * 6)}.py-8{padding-block:calc(var(--spacing) * 8)}.py-12{padding-block:calc(var(--spacing) * 12)}.py-20{padding-block:calc(var(--spacing) * 20)}.pt-4{padding-top:calc(var(--spacing) * 4)}.pt-8{padding-top:calc(var(--spacing) * 8)}.pb-6{padding-bottom:calc(var(--spacing) * 6)}.pb-12{padding-bottom:calc(var(--spacing) * 12)}.pl-5{padding-left:calc(var(--spacing) * 5)}.pl-6{padding-left:calc(var(--spacing) * 6)}.text-center{text-align:center}.text-left{text-align:left}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.text-4xl{font-size:var(--text-4xl);line-height:var(--tw-leading,var(--text-4xl--line-height))}.text-5xl{font-size:var(--text-5xl);line-height:var(--tw-leading,var(--text-5xl--line-height))}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-extrabold{--tw-font-weight:var(--font-weight-extrabold);font-weight:var(--font-weight-extrabold)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-wide{--tw-tracking:var(--tracking-wide);letter-spacing:var(--tracking-wide)}.text-white{color:var(--color-white)}.uppercase{text-transform:uppercase}.italic{font-style:italic}.line-through{text-decoration-line:line-through}.no-underline{text-decoration-line:none}.underline{text-decoration-line:underline}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.opacity-0{opacity:0}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.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))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-200{--tw-duration:.2s;transition-duration:.2s}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}@media (hover:hover){.group-hover\:opacity-100:is(:where(.group):hover *){opacity:1}.hover\:bg-white\/5:hover{background-color:#ffffff0d}@supports (color:color-mix(in lab,red,red)){.hover\:bg-white\/5:hover{background-color:color-mix(in oklab,var(--color-white) 5%,transparent)}}.hover\:bg-white\/10:hover{background-color:#ffffff1a}@supports (color:color-mix(in lab,red,red)){.hover\:bg-white\/10:hover{background-color:color-mix(in oklab,var(--color-white) 10%,transparent)}}}.focus\:not-sr-only:focus{clip-path:none;white-space:normal;width:auto;height:auto;margin:0;padding:0;position:static;overflow:visible}.focus\:absolute:focus{position:absolute}.focus\:top-2:focus{top:calc(var(--spacing) * 2)}.focus\:left-2:focus{left:calc(var(--spacing) * 2)}.focus\:z-\[60\]:focus{z-index:60}.focus\:rounded:focus{border-radius:.25rem}.focus\:px-4:focus{padding-inline:calc(var(--spacing) * 4)}.focus\:py-2:focus{padding-block:calc(var(--spacing) * 2)}.focus\:text-white:focus{color:var(--color-white)}@media (min-width:40rem){.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:flex-row{flex-direction:row}}@media (min-width:64rem){.lg\:ml-72{margin-left:calc(var(--spacing) * 72)}.lg\:hidden{display:none}.lg\:translate-x-0{--tw-translate-x:calc(var(--spacing) * 0);translate:var(--tw-translate-x) var(--tw-translate-y)}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}}}:root{--color-dark-slate:#303841;--color-white:#fff;--color-off-white:#2a2f36;--color-light-gray:#3a414a;--color-medium-gray:#5a6370;--color-slate:#9ba3ae;--color-primary-blue:#3b82f6;--color-neon-green:#00ff25;--color-bg:#181c20;--color-bg-content:#1e2228;--color-bg-alt:#242930;--color-text:#e8eaed;--color-text-secondary:#9ba3ae;--color-link:#3b82f6;--color-cta:#00ff25;--color-selection:#00ff2544;--color-code-bg:#2d2d2d;--color-phase-1:#3b82f6;--color-phase-2:#3b82f6;--color-phase-3:#3b82f6;--color-accent-comparison:#f59e0b;--color-accent-workflow:#06b6d4;--font-headline:"Noto Sans",Arial,sans-serif;--font-body:"Open Sans",Arial,sans-serif;--font-code:"JetBrains Mono","Fira Code",Consolas,monospace;--font-size-base:17px;--line-height-base:1.7;--content-max-width:780px;--space-xs:.25rem;--space-sm:.5rem;--space-md:1rem;--space-lg:1.8rem;--space-xl:2.5rem;--space-2xl:4rem}body{font-family:var(--font-body);font-size:var(--font-size-base);line-height:var(--line-height-base);color:var(--color-text);background:var(--color-bg);margin:0}h1,h2,h3,h4,h5,h6{font-family:var(--font-headline)}code,pre{font-family:var(--font-code)}::selection{background:var(--color-selection)}.prose-content{max-width:var(--content-max-width);line-height:var(--line-height-base)}.prose-content h1{margin-top:0;margin-bottom:1.5rem;font-size:2.5rem;font-weight:800;line-height:1.2}.prose-content h2{margin-top:2.5rem;margin-bottom:1rem;font-size:2rem;font-weight:700;line-height:1.3}.prose-content h3{margin-top:2rem;margin-bottom:.75rem;font-size:1.5rem;font-weight:700;line-height:1.4}.prose-content h4{margin-top:1.5rem;margin-bottom:.5rem;font-size:1.25rem;font-weight:700;line-height:1.4}.prose-content h5{margin-top:1.25rem;font-size:1.1rem}.prose-content h5,.prose-content h6{margin-bottom:.5rem;font-weight:600;line-height:1.5}.prose-content h6{margin-top:1rem;font-size:1rem}.prose-content p{margin-bottom:1.8rem}.prose-content ol,.prose-content ul{margin-bottom:1.8rem;padding-left:1.5rem}.prose-content ul{list-style-type:disc}.prose-content ol{list-style-type:decimal}.prose-content li{margin-bottom:.5rem}.prose-content blockquote{background:var(--color-off-white);border-radius:0 .5rem .5rem 0;padding:1rem 1.5rem}.prose-content blockquote,.prose-content pre{border-left:4px solid var(--color-primary-blue);margin:1.8rem 0}.prose-content pre{background:var(--color-code-bg);border-radius:.5rem;padding:1.25rem;font-size:.9em;line-height:1.6;overflow-x:auto}.prose-content pre code{font-size:inherit;color:#e0e0e0;white-space:pre-wrap;word-break:break-word;background:0 0;padding:0}.prose-content .ascii-container pre{background:0 0;border-left:none;border-radius:0;margin:0;padding:0;font-size:1em;line-height:1.4;overflow-x:hidden}.prose-content .ascii-container pre code{white-space:pre;word-break:normal}.prose-content code{background:var(--color-off-white);color:var(--color-text);border-radius:.25rem;padding:.15em .4em;font-size:.9em}.prose-content table{border-collapse:collapse;width:100%;margin:1.8rem 0}.prose-content td,.prose-content th{border:1px solid var(--color-medium-gray);text-align:left;padding:.75rem 1rem}.prose-content th{background:var(--color-off-white);font-weight:600;font-family:var(--font-headline)}.prose-content img{border-radius:.5rem;max-width:100%;height:auto;margin-left:auto;margin-right:auto;display:block}.prose-content hr{border:none;border-top:1px solid var(--color-medium-gray);margin:2.5rem 0}[tabindex]:focus-visible,a:focus-visible,button:focus-visible{outline:2px solid var(--color-primary-blue);outline-offset:2px}.reading-progress-bar{z-index:40;pointer-events:none;background:0 0;height:3px;position:fixed;top:3.5rem;left:0;right:0}.reading-progress-bar__fill{will-change:width;height:100%}.breadcrumbs{margin-bottom:var(--space-md)}.breadcrumbs__list{color:var(--color-text-secondary);align-items:center;gap:.4rem;margin:0;padding:0;font-size:.8rem;list-style:none;display:flex}.breadcrumbs__link{color:var(--color-text-secondary);text-decoration:none;transition:color .15s}.breadcrumbs__link:hover{color:var(--color-link)}.breadcrumbs__separator{color:var(--color-medium-gray);-webkit-user-select:none;user-select:none}.breadcrumbs__text{color:var(--color-text-secondary)}.breadcrumbs__item--current .breadcrumbs__text{color:var(--color-text);font-weight:500}.lesson-toc__list{margin:0;padding:0;list-style:none}.lesson-toc__item{border-left:3px solid #0000;transition:border-color .15s}.lesson-toc__item--indent{padding-left:.75rem}.lesson-toc__link{text-align:left;width:100%;color:var(--color-text-secondary);cursor:pointer;font-size:.82rem;line-height:1.4;font-family:var(--font-body);background:0 0;border:none;padding:.3rem .75rem;transition:color .15s;display:block}.lesson-toc__link:hover{color:var(--color-text)}.lesson-toc__item--active .lesson-toc__link{color:var(--color-text);font-weight:600}.lesson-toc-desktop__sticky{max-height:calc(100vh - 6rem);padding-right:.5rem;position:sticky;top:5rem;overflow-y:auto}.lesson-toc-desktop__title{text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-secondary);margin:0 0 .75rem;padding-left:.75rem;font-size:.75rem;font-weight:700}.lesson-toc-mobile{margin-bottom:var(--space-lg);border:1px solid var(--color-medium-gray);border-radius:.5rem;overflow:hidden}.lesson-toc-mobile__toggle{background:var(--color-off-white);cursor:pointer;width:100%;color:var(--color-text);font-size:.85rem;font-weight:600;font-family:var(--font-body);border:none;justify-content:space-between;align-items:center;padding:.6rem 1rem;display:flex}.lesson-toc-mobile__chevron{transition:transform .2s}.lesson-toc-mobile__chevron--open{transform:rotate(180deg)}.lesson-toc-mobile__drawer{max-height:0;transition:max-height .25s;overflow:hidden}.lesson-toc-mobile__drawer--open{max-height:50vh;overflow-y:auto}.lesson-toc-mobile__drawer .lesson-toc__list{padding:.5rem 0}.cb-btn{font-family:var(--font-code);color:#888;cursor:pointer;background:0 0;border:1px solid #555;border-radius:.25rem;padding:.15rem .5rem;font-size:.7rem;transition:color .15s,border-color .15s}.cb-btn:hover{color:#e0e0e0;border-color:#888}pre.cb-pre{background:var(--color-code-bg);border-left:4px solid var(--color-primary-blue);border-radius:.5rem;margin:1.8rem 0;padding:1.25rem;font-size:.9em;line-height:1.6;overflow-x:auto}.cb-pre code{font-size:inherit;color:#e0e0e0;white-space:pre-wrap;word-break:break-word;background:0 0;padding:0}.ascii-container{border-left:4px solid var(--color-phase-3);border-radius:.5rem;margin:1.8rem 0;overflow:hidden}.ascii-box__content,.ascii-box__content-text,.ascii-box__side-text,.ascii-container code,.ascii-container pre,.ascii-spatial,.ascii-text{font-variant-ligatures:none;font-feature-settings:"liga" 0,"calt" 0}.ascii-header{background:var(--color-phase-3);justify-content:space-between;align-items:center;padding:.4rem .75rem;display:flex}@supports (color:color-mix(in lab,red,red)){.ascii-header{background:color-mix(in srgb,var(--color-phase-3) 8%,var(--color-off-white))}}.ascii-header{border-bottom:1px solid var(--color-medium-gray)}.ascii-label{font-family:var(--font-headline);color:var(--color-phase-3);font-size:.8rem;font-weight:600}.ascii-body{padding:1rem 1.5rem}.ascii-body>.ascii-box:only-child{background:0 0;border:none;border-radius:0;margin:0}.ascii-text{font-family:var(--font-code);white-space:pre;color:var(--color-text);background:0 0;margin:0;padding:0;font-size:1em;line-height:1.4;overflow-x:hidden}.ascii-box{border:1px solid var(--color-phase-3);margin:.75rem 0}@supports (color:color-mix(in lab,red,red)){.ascii-box{border:1px solid color-mix(in srgb,var(--color-phase-3) 30%,var(--color-light-gray))}}.ascii-box{background:var(--color-phase-3);border-radius:.375rem}@supports (color:color-mix(in lab,red,red)){.ascii-box{background:color-mix(in srgb,var(--color-phase-3) 4%,var(--color-bg-content))}}.ascii-box{overflow:hidden}.ascii-box--double{border-width:2px;border-color:var(--color-phase-3)}@supports (color:color-mix(in lab,red,red)){.ascii-box--double{border-color:color-mix(in srgb,var(--color-phase-3) 50%,var(--color-light-gray))}}.ascii-box__header{font-family:var(--font-headline);text-align:center;white-space:pre-line;color:var(--color-text);background:var(--color-phase-3);padding:.5rem 1rem;font-size:.95rem;font-weight:600}@supports (color:color-mix(in lab,red,red)){.ascii-box__header{background:color-mix(in srgb,var(--color-phase-3) 10%,var(--color-bg-alt))}}.ascii-box__header{border-bottom:1px solid var(--color-phase-3)}@supports (color:color-mix(in lab,red,red)){.ascii-box__header{border-bottom:1px solid color-mix(in srgb,var(--color-phase-3) 20%,var(--color-light-gray))}}.ascii-box__section{font-family:var(--font-code);text-align:center;white-space:pre-line;color:var(--color-text);background:var(--color-phase-3);padding:.5rem 1rem;font-size:.95rem}@supports (color:color-mix(in lab,red,red)){.ascii-box__section{background:color-mix(in srgb,var(--color-phase-3) 10%,var(--color-bg-alt))}}.ascii-box__section+.ascii-box__section{border-top:1px solid var(--color-phase-3)}@supports (color:color-mix(in lab,red,red)){.ascii-box__section+.ascii-box__section{border-top:1px solid color-mix(in srgb,var(--color-phase-3) 20%,var(--color-light-gray))}}.ascii-box__content{font-family:var(--font-code);white-space:pre;color:var(--color-text);background:0 0;margin:0;padding:.75rem 1rem;font-size:1em;line-height:1.4;overflow-x:hidden}.ascii-box-row{align-items:stretch;gap:1rem;margin:.75rem 0;display:flex}.ascii-box-row__column{flex-direction:column;flex:1;min-width:0;display:flex}.ascii-box-row__column>.ascii-box{flex:1;margin:0}.ascii-box-positioned>.ascii-box{margin:0}.ascii-box-row__connector{flex-shrink:0;align-items:center;padding:0 .25rem;font-size:1.25rem;display:flex}.ascii-box-row__title{font-family:var(--font-headline);color:var(--color-phase-3);text-align:center;letter-spacing:.02em;margin-bottom:0;padding-bottom:.4rem;font-size:.85rem;font-weight:700}.ascii-annotated{align-items:flex-start;gap:1rem;margin:.75rem 0;display:flex}.ascii-annotated__box{flex:1;min-width:0}.ascii-annotated__box>.ascii-box{margin:0}.ascii-annotated__notes{flex-direction:column;flex:none;gap:.4rem;max-width:40%;padding-top:.5rem;display:flex}.ascii-annotated__note{font-family:var(--font-body);color:var(--color-text-secondary);background:var(--color-phase-3);padding:.3rem .6rem;font-size:.85rem;line-height:1.4}@supports (color:color-mix(in lab,red,red)){.ascii-annotated__note{background:color-mix(in srgb,var(--color-phase-3) 6%,var(--color-bg-alt))}}.ascii-annotated__note{border-left:2px solid var(--color-phase-3)}@supports (color:color-mix(in lab,red,red)){.ascii-annotated__note{border-left:2px solid color-mix(in srgb,var(--color-phase-3) 30%,var(--color-light-gray))}}.ascii-annotated__note{border-radius:0 .25rem .25rem 0}.ascii-spatial{font-family:var(--font-code);white-space:pre;color:var(--color-text);background:var(--color-phase-3);margin:.75rem 0;padding:1rem;font-size:1em;line-height:1.4}@supports (color:color-mix(in lab,red,red)){.ascii-spatial{background:color-mix(in srgb,var(--color-phase-3) 4%,var(--color-bg-content))}}.ascii-spatial{border-radius:.375rem;overflow-x:hidden}.ascii-box__content--nested{flex-direction:column;gap:.5rem;padding:.75rem 1rem;display:flex}.ascii-box__content--nested>.ascii-box{margin:0}.ascii-box__side-by-side{align-items:flex-start;gap:1rem;display:flex}.ascii-box__side-text{font-family:var(--font-code);white-space:pre;color:var(--color-text);background:0 0;flex-shrink:0;margin:0;padding:0;font-size:1em;line-height:1.4}.ascii-box__side-by-side>.ascii-box{flex:1;min-width:0;margin:0}.ascii-box__content-text{font-family:var(--font-code);white-space:pre;color:var(--color-text);background:0 0;margin:0;padding:0;font-size:1em;line-height:1.4;overflow-x:hidden}.ascii-body>:first-child{margin-top:0}.ascii-body>:last-child{margin-bottom:0}@media (max-width:639px){.ascii-annotated,.ascii-box-row{flex-direction:column}.ascii-annotated__notes{max-width:100%}.ascii-box__side-by-side{flex-direction:column}}.ascii-char-arrow,.ascii-char-box,.ascii-char-label{color:var(--color-phase-3)}@supports (color:color-mix(in lab,red,red)){.ascii-char-label{color:color-mix(in srgb,var(--color-phase-3) 70%,white)}}.ascii-header__controls{align-items:center;gap:.5rem;display:flex}.diagram-admin-btn{font-size:.75rem;font-family:var(--font-headline);background:var(--color-off-white);border:1px solid var(--color-medium-gray);cursor:pointer;border-radius:.25rem;padding:.2rem .6rem;transition:background .15s}.diagram-admin-btn:hover{background:var(--color-light-gray)}.diagram-adjust-panel{border:1px solid var(--color-medium-gray);background:var(--color-bg-alt);border-radius:.5rem;margin:.5rem 0;padding:.75rem;font-size:.8rem}.diagram-adjust-panel__header{align-items:center;gap:.5rem;margin-bottom:.5rem;display:flex}.diagram-adjust-panel__hash{font-family:var(--font-mono);color:var(--color-text-secondary);font-size:.7rem}.diagram-adjust-panel__status{color:var(--color-phase-1);font-size:.7rem;font-weight:600}.diagram-adjust-panel__section{margin-bottom:.5rem}.diagram-adjust-panel__section-title{font-weight:600;font-family:var(--font-headline);margin-bottom:.25rem;font-size:.75rem}.diagram-adjust-textarea{width:100%;font-family:var(--font-code);border:1px solid var(--color-medium-gray);background:var(--color-bg-content);color:var(--color-text);resize:vertical;white-space:pre;tab-size:4;box-sizing:border-box;border-radius:.25rem;padding:.5rem;font-size:.75rem;line-height:1.4;overflow-x:auto}.diagram-adjust-textarea:focus{outline:2px solid var(--color-phase-1);outline-offset:-1px}.diagram-adjust-panel__actions{gap:.4rem;margin-top:.5rem;display:flex}.diagram-adjust-panel__btn{font-size:.7rem;font-family:var(--font-headline);border:1px solid var(--color-medium-gray);background:var(--color-off-white);cursor:pointer;border-radius:.25rem;padding:.25rem .5rem;transition:background .15s}.diagram-adjust-panel__btn:hover{background:var(--color-light-gray)}.diagram-adjust-panel__btn--save{background:var(--color-phase-1);color:#fff;border-color:var(--color-phase-1)}.diagram-adjust-panel__btn--save:hover{opacity:.9}.diagram-adjust-panel__btn--reset{color:#dc2626;border-color:#dc2626}.diagram-adjust-panel__btn--export{background:var(--color-phase-3);color:#fff;border-color:var(--color-phase-3)}.diagram-adjust-panel__btn--export:hover{opacity:.9}.diagram-stale-badge{color:#78350f;background:#fbbf24;border-radius:.25rem;padding:.1rem .4rem;font-size:.65rem;font-weight:600}.dt-wrapper{margin:1.8rem 0}.dt-scroll{-webkit-overflow-scrolling:touch;border:1px solid var(--color-medium-gray);border-radius:.5rem;overflow-x:auto}.dt-table{border-collapse:collapse;width:100%;margin:0}.dt-table--balanced{table-layout:fixed}.dt-th{text-align:left;background:var(--color-off-white);font-weight:600;font-family:var(--font-headline);cursor:pointer;-webkit-user-select:none;user-select:none;border:1px solid var(--color-medium-gray);border-top:none;padding:.75rem 1rem;transition:background .15s}.dt-th:hover{background:var(--color-light-gray)}.dt-sort{color:var(--color-text-secondary);margin-left:.25rem;font-size:.7em}.dt-td{border:1px solid var(--color-medium-gray);text-align:left;padding:.75rem 1rem}.dt-stripe{background:var(--color-bg-alt)}.dt-scroll .dt-table tr:first-child td,.dt-scroll .dt-table tr:first-child th{border-top:none}.dt-scroll .dt-table td:first-child,.dt-scroll .dt-table th:first-child{border-left:none}.dt-scroll .dt-table td:last-child,.dt-scroll .dt-table th:last-child{border-right:none}.dt-scroll .dt-table tr:last-child td{border-bottom:none}.search-trigger{color:var(--color-medium-gray);font-family:var(--font-body);cursor:pointer;background:#ffffff14;border:1px solid #fff3;border-radius:.5rem;align-items:center;gap:.5rem;padding:.375rem .75rem;font-size:.85rem;transition:background .15s,border-color .15s;display:flex}.search-trigger:hover{color:var(--color-white);background:#ffffff26;border-color:#ffffff59}.search-trigger-hint{display:none}.search-trigger-kbd{font-family:var(--font-body);color:#ffffff80;background:#ffffff0d;border:1px solid #fff3;border-radius:.25rem;padding:.1rem .4rem;font-size:.75rem;line-height:1;display:none}@media (min-width:640px){.search-trigger-hint,.search-trigger-kbd{display:inline}}.search-backdrop{z-index:100;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#000000a6;justify-content:center;align-items:flex-start;padding-top:10vh;animation:search-fade-in .15s;display:flex;position:fixed;inset:0}@keyframes search-fade-in{0%{opacity:0}to{opacity:1}}.search-dialog{background:var(--color-bg-content);border-radius:.75rem;width:100%;max-width:36rem;margin:0 1rem;animation:search-slide-in .15s;overflow:hidden;box-shadow:0 25px 50px -12px #00000080,0 0 0 1px #ffffff0f}@keyframes search-slide-in{0%{opacity:0;transform:translateY(-8px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.search-input-wrapper{border-bottom:1px solid var(--color-light-gray);align-items:center;gap:.75rem;padding:.875rem 1rem;display:flex}.search-input-icon{color:var(--color-medium-gray);flex-shrink:0}.search-input{font-family:var(--font-body);color:var(--color-text);background:0 0;border:none;outline:none;flex:1;min-width:0;font-size:1.05rem}.search-input::placeholder{color:var(--color-medium-gray)}.search-kbd{border:1px solid var(--color-light-gray);font-family:var(--font-body);color:var(--color-text-secondary);background:var(--color-off-white);border-radius:.25rem;flex-shrink:0;padding:.15rem .5rem;font-size:.7rem}.search-results{max-height:50vh;overflow-y:auto}.search-status{text-align:center;color:var(--color-text-secondary);padding:2rem 1rem;font-size:.9rem}.search-result-item{text-align:left;cursor:pointer;width:100%;font-family:var(--font-body);background:0 0;border:none;padding:.75rem 1rem;transition:background .1s;display:block}.search-result-item:hover,.search-result-selected{background:var(--color-off-white)}.search-result-header{align-items:center;gap:.5rem;display:flex}.search-result-title{color:var(--color-text);font-size:.95rem;font-weight:600}.search-phase-badge{white-space:nowrap;border-radius:9999px;padding:.1rem .5rem;font-size:.7rem;font-weight:600;display:inline-block}.search-phase-1{background:var(--color-phase-1)}@supports (color:color-mix(in lab,red,red)){.search-phase-1{background:color-mix(in srgb,var(--color-phase-1) 15%,transparent)}}.search-phase-1{color:var(--color-phase-1)}.search-phase-2{background:var(--color-phase-2)}@supports (color:color-mix(in lab,red,red)){.search-phase-2{background:color-mix(in srgb,var(--color-phase-2) 15%,transparent)}}.search-phase-2{color:var(--color-phase-2)}.search-phase-3{background:var(--color-phase-3)}@supports (color:color-mix(in lab,red,red)){.search-phase-3{background:color-mix(in srgb,var(--color-phase-3) 15%,transparent)}}.search-phase-3{color:var(--color-phase-3)}.search-result-meta{margin-top:.2rem}.search-footer,.search-result-terms{color:var(--color-text-secondary);font-size:.8rem}.search-footer{border-top:1px solid var(--color-light-gray);justify-content:space-between;align-items:center;padding:.625rem 1rem;display:flex}.search-footer-keys{align-items:center;gap:.35rem;display:flex}.search-footer-keys kbd{border:1px solid var(--color-light-gray);font-family:var(--font-body);background:var(--color-off-white);border-radius:.2rem;padding:.1rem .35rem;font-size:.7rem}.search-result-item mark{background:var(--color-selection);color:inherit;border-radius:2px;padding:0 1px}@media (prefers-reduced-motion:reduce){.animate-slide-down,.search-backdrop,.search-dialog{animation:none}.banner-exit{transition:none}}@media (max-width:639px){.search-backdrop{align-items:flex-start;padding-top:0}.search-dialog{border-radius:0;max-width:100%;min-height:50vh;margin:0}}@keyframes slide-down{0%{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:translateY(0)}}.animate-slide-down{animation:slide-down .3s ease-out}.banner-exit{transition:max-height .3s,opacity .2s,margin .3s,padding .3s;overflow:hidden;opacity:0!important;max-height:0!important;margin-top:0!important;margin-bottom:0!important;padding-top:0!important;padding-bottom:0!important}.three-fallback-home{background:linear-gradient(135deg,#303841,#1a2d5a 50%,#3b82f610)}.three-fallback-lesson-1{background:linear-gradient(135deg,#303841,#1e3a5f 60%,#3b82f615)}.three-fallback-lesson-2{background:linear-gradient(135deg,#303841,#1a3828 60%,#22c55e15)}.three-fallback-lesson-3{background:linear-gradient(135deg,#303841,#2a1840 60%,#a855f715)}@media (prefers-reduced-motion:reduce){.three-scene-container canvas{display:none!important}.three-scene-container .three-fallback-home,.three-scene-container .three-fallback-lesson-1,.three-scene-container .three-fallback-lesson-2,.three-scene-container .three-fallback-lesson-3{display:block!important}}.lesson-meta{flex-direction:column;gap:.6rem;display:flex}.lesson-meta__item{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.lesson-meta__label{color:var(--color-text-secondary);white-space:nowrap;font-size:.78rem;font-weight:600}.lesson-meta__value{color:var(--color-text);text-align:right;font-size:.82rem}.lesson-meta__badge{white-space:nowrap;border-radius:9999px;padding:.1rem .55rem;font-size:.72rem;font-weight:600;display:inline-block}.lesson-meta__prerequisites{border-top:1px solid var(--color-light-gray);flex-direction:column;gap:.35rem;margin-top:.25rem;padding-top:.6rem;display:flex}.lesson-meta__prereq-list{flex-direction:column;gap:.25rem;margin:0;padding:0;list-style:none;display:flex}.lesson-meta__prereq-item{color:var(--color-text-secondary);align-items:flex-start;gap:.3rem;font-size:.78rem;line-height:1.35;display:flex}.lesson-meta__related{border-top:1px solid var(--color-light-gray);flex-direction:column;gap:.35rem;margin-top:.25rem;padding-top:.6rem;display:flex}.lesson-meta__related-link{color:var(--color-text-secondary);align-items:center;gap:.3rem;font-size:.78rem;line-height:1.35;text-decoration:none;transition:color .15s;display:flex}.lesson-meta__related-link:hover{color:var(--color-link)}.lesson-meta-desktop__sticky{margin-top:var(--space-lg);padding-right:.5rem;position:sticky;top:6rem}.lesson-meta-desktop__title{text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-secondary);margin:0 0 .75rem;padding-left:.75rem;font-size:.75rem;font-weight:700}.lesson-meta-desktop .lesson-meta{padding-left:.75rem}.lesson-meta-mobile{margin-bottom:var(--space-lg);border:1px solid var(--color-medium-gray);border-radius:.5rem;overflow:hidden}.lesson-meta-mobile__toggle{background:var(--color-off-white);cursor:pointer;width:100%;color:var(--color-text);font-size:.85rem;font-weight:600;font-family:var(--font-body);border:none;justify-content:space-between;align-items:center;padding:.6rem 1rem;display:flex}.lesson-meta-mobile__chevron{transition:transform .2s}.lesson-meta-mobile__chevron--open{transform:rotate(180deg)}.lesson-meta-mobile__drawer{max-height:0;transition:max-height .25s;overflow:hidden}.lesson-meta-mobile__drawer--open{max-height:50vh;overflow-y:auto}.lesson-meta-mobile__drawer .lesson-meta{padding:.75rem 1rem}.recently-updated-badge{font-size:.72rem;font-weight:600;font-family:var(--font-headline);white-space:nowrap;border-radius:9999px;padding:.15rem .6rem;display:inline-block}.sidebar-updated-dot{border-radius:50%;flex-shrink:0;width:6px;height:6px;display:inline-block}.dt-td{transition:background .15s;position:relative}.dt-td--numeric{font-variant-numeric:tabular-nums}.dt-td--numeric:after{content:"";background:var(--color-phase-1);transform-origin:0;pointer-events:none;height:2px;transition:transform .3s;position:absolute;bottom:0;left:0;right:0;transform:scaleX(0)}.dt-td--numeric:hover:after{transform:scaleX(var(--spark-pct,0))}.dt-td--numeric:hover{background:#3b82f60f}tr:hover .dt-td{background:#3b82f608}tr:hover .dt-td--numeric{background:#3b82f60f}tr:hover .dt-td--numeric:after{transform:scaleX(var(--spark-pct,0))}@media (prefers-reduced-motion:reduce){.dt-td,.dt-td--numeric:after{transition:none}}.stats-view-toggle{border:1px solid var(--color-medium-gray);background:var(--color-bg-content);cursor:pointer;border-radius:.5rem;flex-shrink:0;align-items:center;gap:0;padding:0;display:flex;overflow:hidden}.stats-view-toggle__option{font-family:var(--font-headline);color:var(--color-text-secondary);padding:.35rem .75rem;font-size:.8rem;font-weight:600;transition:background .15s,color .15s}.stats-view-toggle__option--active{background:var(--color-dark-slate);color:var(--color-white)}.stats-3d-fallback,.stats-3d-scene{width:100%;height:320px}.stats-3d-fallback{background:var(--color-dark-slate);color:var(--color-medium-gray);font-family:var(--font-body);justify-content:center;align-items:center;font-size:.9rem;display:flex}.continue-reading-banner{margin-bottom:var(--space-lg);background:var(--color-bg-content);border:1px solid var(--color-light-gray);border-left:4px solid;border-radius:.5rem;justify-content:space-between;align-items:center;gap:1rem;padding:.75rem 1rem;display:flex}.continue-reading-banner__content{align-items:center;gap:.75rem;min-width:0;display:flex}.continue-reading-banner__text{flex-wrap:wrap;align-items:baseline;gap:.25rem .5rem;min-width:0;display:flex}.continue-reading-banner__label{font-family:var(--font-headline);color:var(--color-text-secondary);white-space:nowrap;font-size:.82rem;font-weight:600}.continue-reading-banner__link{font-size:.9rem;font-weight:600;text-decoration:none;transition:opacity .15s}.continue-reading-banner__link:hover{opacity:.8}.continue-reading-banner__progress{color:var(--color-text-secondary);white-space:nowrap;font-size:.75rem}.continue-reading-banner__dismiss{width:28px;height:28px;color:var(--color-text-secondary);cursor:pointer;background:0 0;border:none;border-radius:.25rem;flex-shrink:0;justify-content:center;align-items:center;transition:background .15s,color .15s;display:flex}.continue-reading-banner__dismiss:hover{background:var(--color-off-white);color:var(--color-text)}.whats-new-banner{margin-bottom:var(--space-lg);background:var(--color-bg-content);border:1px solid var(--color-light-gray);border-left:4px solid var(--color-primary-blue);border-radius:.5rem;justify-content:space-between;align-items:center;gap:1rem;padding:.75rem 1rem;display:flex}.whats-new-banner__content{align-items:center;gap:.75rem;min-width:0;display:flex}.whats-new-banner__text{flex-wrap:wrap;align-items:baseline;gap:.25rem .5rem;min-width:0;display:flex}.whats-new-banner__label{font-family:var(--font-headline);color:var(--color-text-secondary);white-space:nowrap;font-size:.82rem;font-weight:600}.whats-new-banner__link{color:var(--color-primary-blue);font-size:.9rem;font-weight:600;text-decoration:none;transition:opacity .15s}.whats-new-banner__link:hover{opacity:.8}.whats-new-banner__dismiss{width:28px;height:28px;color:var(--color-text-secondary);cursor:pointer;background:0 0;border:none;border-radius:.25rem;flex-shrink:0;justify-content:center;align-items:center;transition:background .15s,color .15s;display:flex}.whats-new-banner__dismiss:hover{background:var(--color-off-white);color:var(--color-text)}.changed-content-banner{margin-bottom:var(--space-lg);background:var(--color-bg-content);border:1px solid var(--color-light-gray);border-left:4px solid #3b82f6;border-radius:.5rem;padding:.75rem 1rem;overflow:hidden}.changed-content-banner__header{justify-content:space-between;align-items:center;gap:1rem;display:flex}.changed-content-banner__header-left{align-items:center;gap:.75rem;min-width:0;display:flex}.changed-content-banner__label{font-family:var(--font-headline);color:var(--color-text-secondary);white-space:nowrap;font-size:.82rem;font-weight:600}.changed-content-banner__toggle{color:#3b82f6;cursor:pointer;white-space:nowrap;background:0 0;border:none;padding:0;font-size:.8rem;font-weight:600;transition:opacity .15s}.changed-content-banner__toggle:hover{opacity:.7}.changed-content-banner__dismiss{width:28px;height:28px;color:var(--color-text-secondary);cursor:pointer;background:0 0;border:none;border-radius:.25rem;flex-shrink:0;justify-content:center;align-items:center;transition:background .15s,color .15s;display:flex}.changed-content-banner__dismiss:hover{background:var(--color-off-white);color:var(--color-text)}.changed-content-banner__list{margin:.75rem 0 0;padding:0;list-style:none}.changed-content-banner__item{border-top:1px solid var(--color-light-gray);padding:.5rem 0}.changed-content-banner__item .changed-content-banner__link{align-items:baseline;gap:.5rem;text-decoration:none;transition:opacity .15s;display:flex}.changed-content-banner__item .changed-content-banner__link:hover{opacity:.8}.changed-content-banner__title{color:#3b82f6;font-size:.88rem;font-weight:600}.changed-content-banner__date{color:var(--color-text-secondary);white-space:nowrap;font-size:.75rem}.changed-content-banner__summary{color:var(--color-text-secondary);margin:.25rem 0 0;font-size:.8rem;line-height:1.4}.loading-overlay{flex-direction:column;justify-content:center;align-items:center;gap:1rem;padding:3rem 1rem;animation:loading-fade-in .4s;display:flex}.loading-overlay__text{font-family:var(--font-headline);color:var(--color-text-secondary);letter-spacing:.04em;font-size:.85rem;font-weight:600}.loading-overlay__text:after{content:"";animation:loading-dots 1.5s steps(4) infinite}@keyframes loading-dots{0%{content:""}25%{content:"."}50%{content:".."}75%{content:"..."}to{content:""}}@keyframes loading-fade-in{0%{opacity:0}to{opacity:1}}@keyframes lesson-content-fade-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.lesson-content-enter{animation:lesson-content-fade-in .3s}.lesson-content-transition{opacity:1;transition:opacity .25s,transform .25s;transform:translateY(0)}.lesson-content-transition.is-exiting{opacity:0;transform:translateY(4px)}@media (prefers-reduced-motion:reduce){.loading-overlay{animation:none}.loading-overlay__text:after{content:"...";animation:none}.lesson-content-enter{animation:none}.lesson-content-transition{transition:none}}.dt-toolbar{justify-content:flex-end;align-items:center;gap:.25rem;padding:.35rem .5rem;display:flex}.dt-chart-toggle{border:1px solid var(--color-medium-gray);background:var(--color-bg-content);color:var(--color-text-secondary);font-family:var(--font-headline);cursor:pointer;border-radius:.375rem;align-items:center;gap:.3rem;padding:.25rem .6rem;font-size:.75rem;font-weight:600;transition:background .15s,color .15s,border-color .15s;display:inline-flex}.dt-chart-toggle:hover{border-color:var(--color-phase-1);color:var(--color-phase-1)}.dt-chart-toggle--active{background:var(--color-dark-slate);color:var(--color-white);border-color:var(--color-dark-slate)}.dt-chart-toggle--active:hover{background:var(--color-slate);border-color:var(--color-slate);color:var(--color-white)}.dt-chart{background:var(--color-bg-content);border:1px solid var(--color-light-gray);border-bottom:none;border-radius:.5rem .5rem 0 0;padding:.75rem .5rem 0;position:relative;overflow:hidden}.dt-chart-legend{flex-wrap:wrap;gap:.75rem;padding:0 .5rem .5rem;display:flex}.dt-chart-legend-item{color:var(--color-text-secondary);align-items:center;gap:.3rem;font-size:.75rem;display:flex}.dt-chart-legend-swatch{border-radius:2px;width:10px;height:10px;display:inline-block}.dt-chart-legend-label{font-family:var(--font-headline);font-weight:600}.dt-chart-bar{cursor:crosshair;transition:opacity .15s}.dt-chart-bar:hover{opacity:1!important}.dt-chart-tooltip{color:#fff;font-size:.78rem;font-family:var(--font-body);white-space:nowrap;pointer-events:none;z-index:10;background:#000000d9;border-radius:.375rem;padding:.35rem .6rem;line-height:1.4;position:absolute;transform:translate(-50%,-100%)}.curriculum-map-fallback{background:var(--color-dark-slate);justify-content:center;align-items:center;width:100%;height:400px;display:flex}.curriculum-map-fallback__phases{flex-direction:column;gap:.75rem;display:flex}.curriculum-map-fallback__phase{color:var(--color-medium-gray);font-size:.85rem;font-family:var(--font-body);align-items:center;gap:.5rem;display:flex}.curriculum-map-fallback__dot{border-radius:50%;flex-shrink:0;width:12px;height:12px}.section-stepper{z-index:30;background-color:var(--color-bg-content);margin-left:-1.5rem;margin-right:-1.5rem;margin-bottom:var(--space-lg);padding-left:1.5rem;padding-right:1.5rem;padding-bottom:var(--space-md);border-bottom:1px solid var(--color-light-gray);position:sticky;top:3.5rem}.section-stepper__label{font-family:var(--font-headline);text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-secondary);margin-bottom:var(--space-sm);font-size:.7rem;font-weight:700}.section-stepper__desktop{display:none}.section-stepper__track{scrollbar-width:none;-ms-overflow-style:none;align-items:center;padding:.375rem;display:flex;overflow-x:auto}.section-stepper__track::-webkit-scrollbar{display:none}.section-stepper__step{cursor:pointer;font-family:var(--font-body);background:0 0;border:none;flex-shrink:0;align-items:center;padding:0;transition:opacity .15s;display:flex;position:relative}.section-stepper__step:hover{opacity:.8}.section-stepper__connector{flex-shrink:0;width:2rem;height:2px;display:block}.section-stepper__dot{width:28px;height:28px;font-family:var(--font-headline);border:2px solid;border-radius:50%;flex-shrink:0;font-size:.75rem;font-weight:700;transition:background .15s,border-color .15s,color .15s}.section-stepper__dot,.section-stepper__mobile{justify-content:center;align-items:center;display:flex}.section-stepper__mobile{gap:.75rem}.section-stepper__mobile-btn{border:1px solid var(--color-medium-gray);background:var(--color-bg-content);width:32px;height:32px;color:var(--color-text-secondary);cursor:pointer;border-radius:.375rem;justify-content:center;align-items:center;transition:border-color .15s,color .15s;display:flex}.section-stepper__mobile-btn:hover:not(:disabled){border-color:var(--color-primary-blue);color:var(--color-text)}.section-stepper__mobile-btn:disabled{opacity:.3;cursor:not-allowed}.section-stepper__mobile-label{font-family:var(--font-headline);font-size:.9rem}@media (min-width:1024px){.section-stepper__desktop{display:block}.section-stepper__mobile{display:none}}.lesson-sidebar__sticky{max-height:calc(100vh - 6rem);padding-right:.5rem;position:sticky;top:5rem;overflow-y:auto}.sidebar-pagination{justify-content:center;align-items:center;gap:.5rem;display:flex}.sidebar-pagination--desktop{margin-top:var(--space-lg);padding-top:var(--space-md);border-top:1px solid var(--color-light-gray)}.sidebar-pagination--mobile{margin-top:var(--space-xl);padding-top:var(--space-lg);border-top:1px solid var(--color-light-gray)}.sidebar-pagination__btn{border:1px solid var(--color-medium-gray);background:var(--color-bg-content);width:32px;height:32px;color:var(--color-text-secondary);cursor:pointer;border-radius:.375rem;justify-content:center;align-items:center;transition:border-color .15s,color .15s;display:flex}.sidebar-pagination__btn:hover:not(:disabled){border-color:var(--accent,var(--color-primary-blue));color:var(--color-text)}.sidebar-pagination__btn:disabled{opacity:.3;cursor:not-allowed}.sidebar-pagination__indicator{font-family:var(--font-headline);-webkit-user-select:none;user-select:none;font-size:.85rem}@media (prefers-reduced-motion:reduce){.section-stepper__dot,.section-stepper__mobile-btn,.section-stepper__step,.sidebar-pagination__btn{transition:none}}.next-section-nav{align-items:center;gap:var(--space-md);margin-top:var(--space-lg);padding:var(--space-md) var(--space-lg);border:1px solid var(--color-light-gray);border-left:3px solid var(--accent,var(--color-primary-blue));background:var(--color-bg-alt);color:var(--color-text);border-radius:.5rem;text-decoration:none;transition:transform .15s,box-shadow .15s,border-color .15s;display:flex}.next-section-nav:hover{border-color:var(--accent,var(--color-primary-blue));transform:translateY(-2px);box-shadow:0 4px 12px #0000004d}.next-section-nav--complete{cursor:default;border-left-width:3px}.next-section-nav--complete:hover{box-shadow:none;transform:none}.next-section-nav__icon{background:var(--accent,var(--color-primary-blue));border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;display:flex}@supports (color:color-mix(in lab,red,red)){.next-section-nav__icon{background:color-mix(in srgb,var(--accent,var(--color-primary-blue)) 15%,transparent)}}.next-section-nav__icon{color:var(--accent,var(--color-primary-blue));font-size:1.1rem;font-weight:700}.next-section-nav__body{flex-direction:column;flex:1;gap:.15rem;min-width:0;display:flex}.next-section-nav__label{font-family:var(--font-headline);text-transform:uppercase;letter-spacing:.04em;color:var(--accent,var(--color-primary-blue));font-size:.75rem;font-weight:600}.next-section-nav__title{font-family:var(--font-headline);color:var(--color-text);text-overflow:ellipsis;white-space:nowrap;font-size:1rem;font-weight:600;overflow:hidden}.next-section-nav__arrow{color:var(--accent,var(--color-primary-blue));flex-shrink:0;transition:transform .15s}.next-section-nav:hover .next-section-nav__arrow{transform:translate(3px)}@media (prefers-reduced-motion:reduce){.next-section-nav,.next-section-nav__arrow{transition:none}.next-section-nav:hover,.next-section-nav:hover .next-section-nav__arrow{transform:none}}.sidebar-sections{padding:.25rem 0 .5rem}.sidebar-sections__group-title{font-family:var(--font-headline);text-transform:uppercase;letter-spacing:.06em;color:var(--color-medium-gray);-webkit-user-select:none;user-select:none;padding:.5rem 1.25rem .25rem;font-size:.68rem;font-weight:700}.sidebar-sections__link{color:var(--color-text-secondary);border-left:3px solid #0000;align-items:center;gap:.4rem;padding:.35rem 1rem .35rem 1.25rem;font-size:.82rem;line-height:1.35;text-decoration:none;transition:background .12s,color .12s;display:flex}.sidebar-sections__link:hover{color:var(--color-text);background:#ffffff0a}.sidebar-sections__title{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.sidebar-sections__link--active{border-radius:0 6px 6px 0;font-weight:600}.sidebar-sections__check{flex-shrink:0}.sidebar-sections__lock{opacity:.5;flex-shrink:0}button.sidebar-sections__link{width:100%;font-family:var(--font-body);cursor:pointer;text-align:left;background:0 0;border:none}.sidebar-subsections{border-left:1px solid var(--color-light-gray);margin-left:1.25rem;padding:.25rem 0}.sidebar-subsections__item{width:100%;font-family:var(--font-body);color:var(--color-text-secondary);text-align:left;cursor:pointer;background:0 0;border:none;border-radius:0 6px 6px 0;align-items:center;gap:.5rem;padding:.3rem .75rem;font-size:.76rem;line-height:1.3;transition:background .12s,color .12s;display:flex}.sidebar-subsections__item:hover{color:var(--color-text);background:#ffffff0a}.sidebar-subsections__item--active{color:var(--color-text);font-weight:600}.sidebar-subsections__dot{border-radius:50%;flex-shrink:0;width:6px;height:6px}.sidebar-subsections__check{flex-shrink:0;width:12px;height:12px}.sidebar-subsections__title{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.comparison-container{border:1px solid var(--color-medium-gray);border-left:4px solid var(--color-accent-comparison);border-radius:.5rem;margin:1.8rem 0;overflow:hidden}.comparison-header{background:var(--color-accent-comparison);justify-content:space-between;align-items:center;padding:.4rem .75rem;display:flex}@supports (color:color-mix(in lab,red,red)){.comparison-header{background:color-mix(in srgb,var(--color-accent-comparison) 8%,var(--color-off-white))}}.comparison-header{border-bottom:1px solid var(--color-medium-gray)}.comparison-label{font-family:var(--font-headline);color:var(--color-accent-comparison);font-size:.8rem;font-weight:600}.comparison-columns{padding:1rem;display:grid}.comparison-card{grid-template-rows:subgrid;border:1px solid var(--color-light-gray);border-radius:.375rem;row-gap:.35rem;min-width:0;padding:.75rem 1rem;display:grid}.comparison-card--first,.comparison-card--left{background:var(--color-bg-alt);opacity:.85}.comparison-card--last,.comparison-card--right{background:var(--color-accent-comparison)}@supports (color:color-mix(in lab,red,red)){.comparison-card--last,.comparison-card--right{background:color-mix(in srgb,var(--color-accent-comparison) 5%,var(--color-bg-alt))}}.comparison-card--last,.comparison-card--right{border-color:var(--color-accent-comparison)}@supports (color:color-mix(in lab,red,red)){.comparison-card--last,.comparison-card--right{border-color:color-mix(in srgb,var(--color-accent-comparison) 20%,var(--color-light-gray))}}.comparison-card--middle{background:var(--color-accent-comparison)}@supports (color:color-mix(in lab,red,red)){.comparison-card--middle{background:color-mix(in srgb,var(--color-accent-comparison) 2%,var(--color-bg-alt))}}.comparison-card__title{font-family:var(--font-headline);color:var(--color-text);border-bottom:1px solid var(--color-light-gray);margin-bottom:.5rem;padding-bottom:.5rem;font-size:.9rem;font-weight:700}.comparison-card__break{height:.5rem}.comparison-card__row{font-family:var(--font-body);color:var(--color-text);opacity:0;border-radius:.25rem;padding:.15rem 0;font-size:.9rem;line-height:1.5;animation:comparison-row-in .3s forwards}@keyframes comparison-row-in{0%{opacity:0;transform:translate(-8px)}to{opacity:1;transform:translate(0)}}.comparison-card__row:hover{background:#ffffff0a}.comparison-divider{flex-shrink:0;align-items:center;padding:0 .5rem;display:flex}.comparison-divider-line{background:linear-gradient(180deg,transparent,var(--color-accent-comparison),transparent);width:2px;height:100%;min-height:2rem;position:relative}.comparison-divider-arrow{color:var(--color-accent-comparison);position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.comparison-arrow{color:var(--color-accent-comparison);opacity:.7}@media (max-width:639px){.comparison-columns{grid-template-columns:1fr!important}.comparison-card{flex-direction:column;grid-template-rows:none;gap:.35rem;display:flex;grid-row:auto!important}.comparison-card--first,.comparison-card--left{opacity:1}.comparison-divider{justify-content:center;padding:.5rem 0;display:flex;grid-row:auto!important}.comparison-arrow{transform:rotate(90deg)}}.filetree-container{border:1px solid var(--color-medium-gray);border-left:4px solid var(--color-phase-2);border-radius:.5rem;margin:1.8rem 0;overflow:hidden}.filetree-header{background:var(--color-phase-2);justify-content:space-between;align-items:center;padding:.4rem .75rem;display:flex}@supports (color:color-mix(in lab,red,red)){.filetree-header{background:color-mix(in srgb,var(--color-phase-2) 8%,var(--color-off-white))}}.filetree-header{border-bottom:1px solid var(--color-medium-gray)}.filetree-label{font-family:var(--font-headline);color:var(--color-phase-2);font-size:.8rem;font-weight:600}.filetree-content{background:var(--color-code-bg);padding:.75rem 1rem}@supports (color:color-mix(in lab,red,red)){.filetree-content{background:color-mix(in srgb,var(--color-code-bg) 30%,var(--color-bg-content))}}.filetree-item{border-radius:.25rem;align-items:center;gap:.4rem;padding:.25rem .35rem;transition:background .12s;display:flex;position:relative}.filetree-item:hover{background:var(--color-phase-2)}@supports (color:color-mix(in lab,red,red)){.filetree-item:hover{background:color-mix(in srgb,var(--color-phase-2) 6%,transparent)}}.filetree-item:hover .filetree-icon--folder{filter:brightness(1.2)}.filetree-item[data-depth="1"]:before,.filetree-item[data-depth="2"]:before,.filetree-item[data-depth="3"]:before,.filetree-item[data-depth="4"]:before{content:"";left:calc(var(--depth,0) * 1.25rem - .625rem);background:var(--color-light-gray);pointer-events:none;width:1px;position:absolute;top:0;bottom:0}.filetree-icon{flex-shrink:0;width:16px;height:16px}.filetree-icon--folder{color:var(--color-phase-2)}.filetree-icon--file{color:var(--color-text-secondary)}.filetree-icon--item{color:var(--color-medium-gray)}.filetree-name{font-family:var(--font-code);color:var(--color-text);font-size:.88rem}.filetree-item--directory .filetree-name{color:var(--color-phase-2);font-weight:600}.filetree-item--file .filetree-name{color:var(--color-text-secondary)}.filetree-annotation{font-family:var(--font-body);background:var(--color-neon-green);border-radius:9999px;padding:.05rem .5rem;font-size:.72rem;font-weight:600}@supports (color:color-mix(in lab,red,red)){.filetree-annotation{background:color-mix(in srgb,var(--color-neon-green) 12%,transparent)}}.filetree-annotation{color:var(--color-neon-green);white-space:nowrap;margin-left:auto}.workflow-container{border:1px solid var(--color-medium-gray);border-left:4px solid var(--color-accent-workflow);border-radius:.5rem;margin:1.8rem 0;overflow:hidden}.workflow-header{background:var(--color-accent-workflow);justify-content:space-between;align-items:center;padding:.4rem .75rem;display:flex}@supports (color:color-mix(in lab,red,red)){.workflow-header{background:color-mix(in srgb,var(--color-accent-workflow) 8%,var(--color-off-white))}}.workflow-header{border-bottom:1px solid var(--color-medium-gray)}.workflow-label{font-family:var(--font-headline);color:var(--color-accent-workflow);font-size:.8rem;font-weight:600}.workflow-nodes{flex-wrap:wrap;justify-content:center;align-items:center;gap:0;padding:1.5rem 1rem;display:flex}.workflow-nodes--vertical{flex-direction:column}.workflow-node{border:1.5px solid var(--color-accent-workflow);background:var(--color-bg-alt);font-family:var(--font-headline);color:var(--color-text);white-space:nowrap;opacity:0;border-radius:9999px;align-items:center;gap:.5rem;padding:.5rem 1.25rem;font-size:.88rem;font-weight:600;animation:workflow-node-in .35s forwards;display:flex}.workflow-node:first-child{animation-delay:50ms}.workflow-node:nth-child(2){animation-delay:.15s}.workflow-node:nth-child(3){animation-delay:.25s}.workflow-node:nth-child(4){animation-delay:.35s}.workflow-node:nth-child(5){animation-delay:.45s}.workflow-node:nth-child(n+6){animation-delay:.5s}@keyframes workflow-node-in{0%{opacity:0;transform:translate(-12px)}to{opacity:1;transform:translate(0)}}.workflow-node:first-child,.workflow-node:last-child{background:var(--color-accent-workflow);border-width:2px}@supports (color:color-mix(in lab,red,red)){.workflow-node:first-child,.workflow-node:last-child{background:color-mix(in srgb,var(--color-accent-workflow) 8%,var(--color-bg-alt))}}.workflow-node:last-child{box-shadow:0 0 8px var(--color-accent-workflow)}@supports (color:color-mix(in lab,red,red)){.workflow-node:last-child{box-shadow:0 0 8px color-mix(in srgb,var(--color-accent-workflow) 25%,transparent)}}.workflow-node:hover{background:var(--color-accent-workflow)}@supports (color:color-mix(in lab,red,red)){.workflow-node:hover{background:color-mix(in srgb,var(--color-accent-workflow) 12%,var(--color-bg-alt))}}.workflow-node__step{background:var(--color-accent-workflow);width:20px;height:20px;color:var(--color-bg);border-radius:50%;font-size:.7rem;font-weight:700}.workflow-connector,.workflow-node__step{flex-shrink:0;justify-content:center;align-items:center;display:flex}.workflow-connector{color:var(--color-accent-workflow);opacity:0;padding:0 .25rem;animation:workflow-connector-in .25s forwards}.workflow-connector:nth-child(2){animation-delay:.1s}.workflow-connector:nth-child(4){animation-delay:.2s}.workflow-connector:nth-child(6){animation-delay:.3s}.workflow-connector:nth-child(8){animation-delay:.4s}.workflow-connector:nth-child(n+10){animation-delay:.45s}@keyframes workflow-connector-in{0%{opacity:0;transform:scaleX(0)}to{opacity:1;transform:scaleX(1)}}.workflow-container:hover .workflow-connector{opacity:1}.workflow-nodes--vertical .workflow-connector{padding:.25rem 0}.workflow-nodes--vertical .workflow-connector svg{transform:rotate(90deg)}.workflow-nodes--vertical .workflow-node{animation-name:workflow-node-in-vertical}@keyframes workflow-node-in-vertical{0%{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:translateY(0)}}.workflow-nodes--vertical .workflow-connector{animation-name:workflow-connector-in-vertical}@keyframes workflow-connector-in-vertical{0%{opacity:0;transform:scaleY(0)}to{opacity:1;transform:scaleY(1)}}@media (max-width:639px){.workflow-nodes{flex-direction:column}.workflow-connector svg{transform:rotate(90deg)}.workflow-node{animation-name:workflow-node-in-vertical}.workflow-connector{animation-name:workflow-connector-in-vertical}}.enhancements-disabled-hint{text-align:center;color:var(--color-text-secondary);border-top:1px solid var(--color-light-gray);margin-top:var(--space-md);padding:.5rem;font-size:.8rem}.enhancements-disabled-hint button{color:var(--color-link);cursor:pointer;font-size:inherit;background:0 0;border:none;text-decoration:underline}@media (prefers-reduced-motion:reduce){.comparison-card__row,.workflow-connector,.workflow-node{opacity:1;transition:none;animation:none;transform:none}.filetree-item{transition:none}}.auth-backdrop{z-index:100;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#000000a6;justify-content:center;align-items:flex-start;padding-top:10vh;animation:search-fade-in .15s;display:flex;position:fixed;inset:0}.auth-modal{background:var(--color-bg-content);border-radius:.75rem;width:100%;max-width:26rem;margin:0 1rem;padding:2rem;animation:search-slide-in .15s;position:relative;overflow:hidden;box-shadow:0 25px 50px -12px #00000080,0 0 0 1px #ffffff0f}.auth-modal__close{color:var(--color-text-secondary);cursor:pointer;background:0 0;border:none;border-radius:.375rem;padding:.4rem;transition:color .15s,background .15s;position:absolute;top:1rem;right:1rem}.auth-modal__close:hover{color:var(--color-text);background:var(--color-light-gray)}.auth-modal__header{margin-bottom:1.25rem}.auth-modal__title{color:var(--color-text);margin:0 0 .35rem;font-size:1.35rem;font-weight:700}.auth-modal__subtitle{color:var(--color-text-secondary);margin:0;font-size:.875rem}.auth-modal__pin-input{font-family:var(--font-mono,ui-monospace,monospace);text-align:center;letter-spacing:.5em;padding:.75rem 1rem;font-size:1.5rem}.auth-modal__hint{color:var(--color-text-secondary);margin:0;font-size:.8rem;line-height:1.4}.auth-modal__back{color:var(--color-text-secondary);font-family:var(--font-body);cursor:pointer;background:0 0;border:none;margin-top:1rem;padding:.5rem;font-size:.85rem;transition:color .15s}.auth-modal__back:hover{color:var(--color-text)}.auth-modal__form{flex-direction:column;gap:.875rem;display:flex}.auth-modal__field{flex-direction:column;gap:.3rem;display:flex}.auth-modal__label{color:var(--color-text-secondary);font-size:.8rem;font-weight:600}.auth-modal__input{border:1px solid var(--color-light-gray);background:var(--color-bg);color:var(--color-text);font-family:var(--font-body);border-radius:.5rem;outline:none;padding:.6rem .75rem;font-size:.925rem;transition:border-color .15s}.auth-modal__input:focus{border-color:var(--color-primary-blue)}.auth-modal__input::placeholder{color:var(--color-medium-gray)}.auth-modal__error{color:#ef4444;margin:0;font-size:.8rem}.auth-modal__submit{background:var(--color-cta);color:#111;font-family:var(--font-body);cursor:pointer;border:none;border-radius:.5rem;margin-top:.25rem;padding:.7rem;font-size:.95rem;font-weight:700;transition:opacity .15s,transform .1s}.auth-modal__submit:hover{opacity:.9}.auth-modal__submit:active{transform:scale(.98)}.auth-modal__divider{color:var(--color-text-secondary);align-items:center;gap:.75rem;margin:1.25rem 0;font-size:.8rem;display:flex}.auth-modal__divider:after,.auth-modal__divider:before{content:"";background:var(--color-light-gray);flex:1;height:1px}.auth-modal__google{border:1px solid var(--color-light-gray);background:var(--color-bg);width:100%;color:var(--color-text);font-family:var(--font-body);cursor:pointer;border-radius:.5rem;justify-content:center;align-items:center;gap:.6rem;padding:.65rem;font-size:.9rem;transition:background .15s,border-color .15s;display:flex}.auth-modal__google:hover{background:var(--color-off-white);border-color:var(--color-medium-gray)}.auth-modal__google-soon{color:var(--color-medium-gray);border:1px solid var(--color-light-gray);border-radius:.25rem;padding:.1rem .4rem;font-size:.7rem}.subscribe-modal-backdrop{z-index:100;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#000000a6;justify-content:center;align-items:flex-start;padding-top:10vh;animation:search-fade-in .15s;display:flex;position:fixed;inset:0}.subscribe-modal{background:var(--color-bg-content);text-align:center;border-radius:.75rem;width:100%;max-width:28rem;margin:0 1rem;padding:2rem;animation:search-slide-in .15s;position:relative;overflow:hidden;box-shadow:0 25px 50px -12px #00000080,0 0 0 1px #ffffff0f}.subscribe-modal__close{color:var(--color-text-secondary);cursor:pointer;background:0 0;border:none;border-radius:.375rem;padding:.4rem;transition:color .15s,background .15s;position:absolute;top:1rem;right:1rem}.subscribe-modal__close:hover{color:var(--color-text);background:var(--color-light-gray)}.subscribe-modal__heading{color:var(--color-text);margin:0 0 .5rem;font-size:1.35rem;font-weight:700}.subscribe-modal__text{color:var(--color-text-secondary);margin:0 0 1.25rem;font-size:.875rem;line-height:1.5}.subscribe-modal__features{text-align:left;flex-direction:column;gap:.5rem;margin:0 0 1.5rem;padding:0;list-style:none;display:flex}.subscribe-modal__features li{color:var(--color-text);padding-left:1.5rem;font-size:.875rem;position:relative}.subscribe-modal__features li:before{content:"✓";color:var(--color-cta);font-weight:700;position:absolute;left:0}.subscribe-modal__cta{background:var(--color-cta);color:#111;width:100%;font-family:var(--font-body);text-align:center;cursor:pointer;border:none;border-radius:.5rem;padding:.75rem;font-size:.95rem;font-weight:700;text-decoration:none;transition:opacity .15s,transform .1s;display:inline-block}.subscribe-modal__cta:hover{opacity:.9}.subscribe-modal__cta:active{transform:scale(.97)}.subscribe-modal__dismiss{color:var(--color-text-secondary);font-family:var(--font-body);cursor:pointer;background:0 0;border:none;margin-top:.75rem;padding:.5rem;font-size:.85rem;transition:color .15s}.subscribe-modal__dismiss:hover{color:var(--color-text)}.header-auth{position:relative}.header-auth__login-btn{color:var(--color-text);font-family:var(--font-body);cursor:pointer;background:0 0;border:none;border-radius:.375rem;padding:.4rem .85rem;font-size:.875rem;font-weight:600;transition:background .15s}.header-auth__login-btn:hover{background:#ffffff1a}.header-auth__user{color:var(--color-text);font-family:var(--font-body);cursor:pointer;background:0 0;border:none;border-radius:.375rem;align-items:center;gap:.5rem;padding:.3rem .5rem;font-size:.8rem;transition:background .15s;display:flex}.header-auth__user:hover{background:#ffffff1a}.header-auth__avatar{background:var(--color-primary-blue);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:1.75rem;height:1.75rem;font-size:.75rem;font-weight:700;display:flex}.header-auth__email{text-overflow:ellipsis;white-space:nowrap;max-width:280px;overflow:hidden}@media (max-width:480px){.header-auth__email{display:none}}.header-auth__dropdown{background:var(--color-bg-content);border:1px solid var(--color-light-gray);z-index:60;border-radius:.5rem;min-width:140px;margin-top:.35rem;animation:search-fade-in .1s;position:absolute;top:100%;right:0;overflow:hidden;box-shadow:0 8px 24px #0006}.header-auth__dropdown-item{width:100%;color:var(--color-text);font-family:var(--font-body);cursor:pointer;background:0 0;border:none;align-items:center;gap:.5rem;padding:.6rem .85rem;font-size:.85rem;transition:background .15s;display:flex}.header-auth__dropdown-item:hover{background:var(--color-light-gray)}.landing-page{width:100%}.landing-hero{text-align:center;background:radial-gradient(ellipse 80% 60% at 50% -10%,#3b82f61f 0,transparent 70%),var(--color-bg-content);padding:5rem 1.5rem 4rem}.landing-hero__inner{max-width:720px;margin:0 auto}.landing-hero__badge{letter-spacing:.04em;color:var(--color-primary-blue);background:#3b82f614;border:1px solid #3b82f64d;border-radius:999px;margin-bottom:1.5rem;padding:.3rem .85rem;font-size:.75rem;font-weight:600;display:inline-block}.landing-hero__title{color:var(--color-text);margin:0 0 1rem;font-size:clamp(2rem,5vw,3.2rem);font-weight:800;line-height:1.15}.landing-hero__accent{color:var(--color-primary-blue)}.landing-hero__tagline{color:var(--color-text-secondary);max-width:560px;margin:0 auto 2rem;font-size:1.1rem;line-height:1.65}.landing-hero__stats{flex-wrap:wrap;justify-content:center;gap:2.5rem;margin-bottom:2.5rem;display:flex}.landing-hero__stat{flex-direction:column;align-items:center;gap:.15rem;display:flex}.landing-hero__stat-value{font-family:var(--font-headline);color:var(--color-text);font-size:1.4rem;font-weight:700}.landing-hero__stat-label{color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.06em;font-size:.75rem}.landing-hero__ctas{flex-wrap:wrap;justify-content:center;gap:.75rem;display:flex}.landing-hero__cta-primary{background:var(--color-cta);color:#111;font-family:var(--font-body);cursor:pointer;border:none;border-radius:.5rem;padding:.75rem 1.75rem;font-size:.95rem;font-weight:700;transition:opacity .15s,transform .1s}.landing-hero__cta-primary:hover{opacity:.9}.landing-hero__cta-primary:active{transform:scale(.97)}.landing-hero__cta-secondary{border:1px solid var(--color-medium-gray);color:var(--color-text);font-family:var(--font-body);cursor:pointer;background:0 0;border-radius:.5rem;padding:.75rem 1.75rem;font-size:.95rem;font-weight:600;transition:background .15s,border-color .15s}.landing-hero__cta-secondary:hover{border-color:var(--color-text-secondary);background:#ffffff0d}.landing-section{background:var(--color-bg);padding:4rem 1.5rem}.landing-section--alt{background:var(--color-bg-content)}.landing-section__inner{max-width:960px;margin:0 auto}.landing-section__heading{color:var(--color-text);text-align:center;margin:0 0 .5rem;font-size:1.75rem;font-weight:700}.landing-section__subheading{color:var(--color-text-secondary);text-align:center;max-width:560px;margin:0 auto 2.5rem;font-size:1rem}.landing-curriculum__groups{flex-direction:column;gap:2rem;display:flex}.landing-curriculum__group-label{margin:0 0 .75rem;font-size:.95rem;font-weight:700}.free-preview-callout{color:var(--color-primary-blue);align-items:center;gap:.4rem;margin-bottom:.75rem;font-size:.8rem;display:flex}.free-preview-callout__arrow{animation:bounce-arrow 1.5s ease-in-out infinite;display:inline-block}@keyframes bounce-arrow{0%,to{transform:translateY(0)}50%{transform:translateY(4px)}}@media (prefers-reduced-motion:reduce){.free-preview-callout__arrow{animation:none}}.content-card-link{color:inherit;border-radius:.75rem;text-decoration:none;transition:transform .2s,box-shadow .2s,border-color .2s;display:block}.content-card-link:hover{transform:translateY(-4px);box-shadow:0 8px 24px #0006}.landing-credibility__content{text-align:center;max-width:640px;margin:0 auto}.landing-credibility__card{background:var(--color-bg);border:1px solid var(--color-light-gray);border-radius:999px;align-items:center;gap:.75rem;margin-bottom:1.25rem;padding:.5rem 1rem .5rem .5rem;display:inline-flex}.landing-credibility__avatar{object-fit:cover;border-radius:50%;width:2.5rem;height:2.5rem}.landing-credibility__name{color:var(--color-text);text-align:left;margin:0;font-size:.95rem;font-weight:700}.landing-credibility__role{color:var(--color-text-secondary);text-align:left;margin:0;font-size:.75rem}.landing-credibility__text{color:var(--color-text-secondary);margin:0 0 2rem;font-size:1rem;line-height:1.7}.landing-credibility__stats{flex-wrap:wrap;justify-content:center;gap:2.5rem;display:flex}.landing-credibility__stat{flex-direction:column;align-items:center;gap:.15rem;display:flex}.landing-credibility__stat-value{font-family:var(--font-headline);color:var(--color-text);font-size:1.5rem;font-weight:700}.landing-credibility__stat-label{color:var(--color-text-secondary);font-size:.75rem}.landing-pricing{text-align:center}.landing-pricing__card{background:var(--color-bg-content);border:1px solid var(--color-light-gray);border-top:3px solid var(--color-cta);border-radius:.75rem;max-width:380px;margin:0 auto;padding:2rem}.landing-pricing__badge{text-transform:uppercase;letter-spacing:.06em;color:var(--color-cta);background:#00ff2514;border:1px solid #00ff2533;border-radius:999px;margin-bottom:.75rem;padding:.2rem .65rem;font-size:.7rem;font-weight:700;display:inline-block}.landing-pricing__price{color:var(--color-text);margin:0 0 .5rem;font-size:2.5rem;font-weight:800}.landing-pricing__note{color:var(--color-text-secondary);margin:0 0 1.25rem;font-size:.875rem;line-height:1.5}.landing-pricing__features{text-align:left;flex-direction:column;gap:.5rem;margin:0 0 1.5rem;padding:0;list-style:none;display:flex}.landing-pricing__features li{color:var(--color-text);padding-left:1.5rem;font-size:.875rem;position:relative}.landing-pricing__features li:before{content:"✓";color:var(--color-cta);font-weight:700;position:absolute;left:0}.landing-pricing__cta{background:var(--color-cta);color:#111;width:100%;font-family:var(--font-body);cursor:pointer;border:none;border-radius:.5rem;padding:.75rem;font-size:.95rem;font-weight:700;transition:opacity .15s,transform .1s}.landing-pricing__cta:hover{opacity:.9}.landing-pricing__cta:active{transform:scale(.97)}a.landing-hero__cta-primary,a.landing-hero__cta-secondary,a.landing-pricing__cta{text-align:center;color:inherit;text-decoration:none;display:inline-block}a.landing-hero__cta-primary,a.landing-pricing__cta{color:#111}.sub-gateway{width:100%;padding:3.5rem 1.5rem 4rem}.sub-gateway--loading{flex-direction:column;justify-content:center;align-items:center;gap:2rem;min-height:calc(100vh - 64px);display:flex}.sub-skeleton{background:var(--color-bg-alt);border-radius:.5rem;animation:sub-pulse 1.5s ease-in-out infinite}.sub-skeleton--headline{width:320px;height:28px}.sub-skeleton--card{width:340px;height:320px}@keyframes sub-pulse{0%,to{opacity:.4}50%{opacity:.7}}.sub-gateway__split{grid-template-columns:1.5fr 1fr;align-items:start;gap:3rem;max-width:1120px;margin:0 auto;display:grid}.sub-gateway__left{padding-top:.5rem}.sub-gateway__headline{color:var(--color-text);margin:0 0 .75rem;font-size:2.5rem;font-weight:800;line-height:1.15}.sub-gateway__subtitle{color:var(--color-text-secondary);margin:0 0 2.5rem;font-size:1.1rem;line-height:1.5}.sub-pathway{flex-direction:column;display:flex}.sub-pathway-node{cursor:pointer;outline:none;gap:1rem;display:flex}.sub-pathway-node:focus-visible .sub-pathway-node__circle{box-shadow:0 0 0 2px var(--color-primary-blue)}.sub-pathway-node__marker{flex-direction:column;flex-shrink:0;align-items:center;display:flex}.sub-pathway-node__circle{background:var(--color-bg-alt);border:2px solid var(--color-light-gray);width:36px;height:36px;font-family:var(--font-headline);color:var(--color-text-secondary);border-radius:50%;justify-content:center;align-items:center;font-size:.75rem;font-weight:700;transition:border-color .2s,color .2s;display:flex}.sub-pathway-node:focus .sub-pathway-node__circle,.sub-pathway-node:hover .sub-pathway-node__circle{border-color:var(--color-primary-blue);color:var(--color-primary-blue)}.sub-pathway-node__line{background:var(--color-light-gray);flex:1;width:2px;min-height:16px}.sub-pathway-node__body{padding-bottom:1.25rem}.sub-pathway-node__name{color:var(--color-text);margin-bottom:.15rem;font-size:.95rem;font-weight:600;display:block}.sub-pathway-node__meta{color:var(--color-text-secondary);font-size:.8rem;display:block}.sub-pathway-node__detail{max-height:0;transition:max-height .3s;overflow:hidden}.sub-pathway-node__section{justify-content:space-between;align-items:baseline;gap:1rem;padding:.35rem 0;display:flex}.sub-pathway-node__section-title{color:var(--color-text);font-size:.82rem}.sub-pathway-node__section-meta{color:var(--color-text-secondary);white-space:nowrap;font-size:.72rem}.sub-gateway__cta-column{align-self:start;position:sticky;top:80px}.sub-gateway__cta-card{background:var(--color-bg-content);border:1px solid var(--color-light-gray);border-top:3px solid var(--color-cta);text-align:center;z-index:1;border-radius:.75rem;padding:2rem 1.75rem;position:relative;overflow:hidden;box-shadow:0 2px 8px #00000040,0 8px 24px #00000026,0 16px 48px #0000001a}.sub-gateway__cta-light{pointer-events:none;z-index:-1;background:radial-gradient(60% 50% at 50% 0,#00ff250f 0,#0000 70%);position:absolute;inset:-40px}.sub-gateway__cta-badge{font-family:var(--font-headline);text-transform:uppercase;letter-spacing:.08em;color:var(--color-cta);background:#00ff2514;border-radius:100px;margin-bottom:1.25rem;padding:.25rem .75rem;font-size:.7rem;font-weight:700;display:inline-block}.sub-gateway__cta-price{color:var(--color-text);margin:0;font-size:2.75rem;font-weight:800;line-height:1.2}.sub-gateway__cta-first{color:var(--color-text-secondary);font-size:1rem;font-weight:400}.sub-gateway__cta-then{color:var(--color-text-secondary);margin:.15rem 0 1.25rem;font-size:.95rem}.sub-gateway__cta-features{text-align:left;margin:0 0 1.5rem;padding:0;list-style:none}.sub-gateway__cta-features li{color:var(--color-text-secondary);padding:.35rem 0 .35rem 1.5rem;font-size:.88rem;line-height:1.4;position:relative}.sub-gateway__cta-features li:before{content:"✓";color:var(--color-cta);font-weight:700;position:absolute;left:0}.sub-gateway__cta-button{background:var(--color-cta);color:#111;width:100%;font-family:var(--font-headline);cursor:pointer;border:none;border-radius:.5rem;padding:.85rem 1.5rem;font-size:1rem;font-weight:700;transition:transform .15s,box-shadow .15s;animation:sub-cta-pulse 3s ease-in-out infinite;display:block}.sub-gateway__cta-button:hover{animation:none;transform:translateY(-1px);box-shadow:0 4px 20px #00ff2559}.sub-gateway__cta-button:active{transform:translateY(0)}.sub-gateway__cta-button:disabled{opacity:.7;cursor:not-allowed;animation:none}@keyframes sub-cta-pulse{0%,to{box-shadow:0 0 8px #00ff2526}50%{box-shadow:0 0 24px #00ff254d}}.sub-gateway__cta-reassurance{color:var(--color-text-secondary);margin:1rem 0 0;font-size:.78rem}.sub-gateway__demo-section{border-top:1px solid var(--color-light-gray);max-width:1120px;margin:0 auto;padding:3rem 1.5rem 0}.sub-gateway__demo-inner{flex-direction:column;align-items:center;display:flex}.sub-gateway__demo-label{letter-spacing:.08em;text-transform:uppercase;color:var(--color-primary-blue,#3b82f6);margin-bottom:.5rem;font-size:.75rem;font-weight:700}.sub-gateway__demo-heading{color:var(--color-text);text-align:center;max-width:560px;margin:0 0 2.5rem;font-size:1.5rem;font-weight:800}.sub-gateway__demo-block{width:100%;max-width:780px;margin-bottom:2.5rem}.sub-gateway__demo-tag{letter-spacing:.04em;text-transform:uppercase;color:var(--color-text-secondary);align-items:center;gap:6px;margin-bottom:.625rem;font-size:.72rem;font-weight:600;display:inline-flex}.sub-gateway__demo-dot{background:#22c55e;border-radius:50%;width:7px;height:7px;animation:sub-demo-pulse 2s ease-in-out infinite}@keyframes sub-demo-pulse{0%,to{opacity:1}50%{opacity:.4}}.sub-gateway__demo-caption{color:var(--color-text-secondary);text-align:center;margin:.75rem 0 0;font-size:.82rem;line-height:1.5}@media (max-width:768px){.sub-gateway__demo-section{padding:2rem 1rem 0}.sub-gateway__demo-heading{font-size:1.25rem}.sub-gateway__demo-block{max-width:100%}}.sub-gateway__below{max-width:780px;margin:4rem auto 0}.sub-gateway__section-heading{color:var(--color-text);margin:0 0 1.5rem;font-size:1.5rem;font-weight:800}.sub-previews{border:1px solid var(--color-light-gray);border-radius:.625rem;flex-direction:column;margin-bottom:3rem;display:flex;overflow:hidden}.sub-preview{border-bottom:1px solid var(--color-light-gray)}.sub-preview:last-child{border-bottom:none}.sub-preview__header{width:100%;color:var(--color-text);cursor:pointer;text-align:left;background:0 0;border:none;align-items:center;gap:.75rem;padding:.85rem 1rem;transition:background .15s;display:flex}.sub-preview__header:hover{background:var(--color-bg-alt)}.sub-preview__number{font-family:var(--font-headline);color:var(--color-text-secondary);min-width:1.5rem;font-size:.75rem;font-weight:700}.sub-preview__title{flex:1;font-size:.92rem;font-weight:500}.sub-preview__meta{color:var(--color-text-secondary);white-space:nowrap;font-size:.75rem}.sub-preview__chevron{color:var(--color-text-secondary);font-size:.6rem;transition:transform .2s}.sub-preview--open .sub-preview__chevron{transform:rotate(90deg)}.sub-preview__body{max-height:0;transition:max-height .3s;overflow:hidden}.sub-preview__content{padding:0 1rem .85rem 3.25rem}.sub-preview__takeaway{color:var(--color-text-secondary);margin:0 0 .65rem;font-size:.85rem;line-height:1.55}.sub-preview__takeaway:last-of-type{margin-bottom:.85rem}.sub-preview__words{color:var(--color-text-secondary);margin-bottom:.5rem;font-size:.78rem;display:block}.sub-preview__tags{flex-wrap:wrap;gap:.35rem;display:flex}.sub-preview__tag{background:var(--color-bg-alt);color:var(--color-text-secondary);border:1px solid var(--color-light-gray);border-radius:100px;padding:.2rem .55rem;font-size:.7rem}.sub-gateway__spacer{height:3.5rem}.sub-faq{border:1px solid var(--color-light-gray);border-radius:.625rem;flex-direction:column;display:flex;overflow:hidden}.sub-faq-item{border-bottom:1px solid var(--color-light-gray)}.sub-faq-item:last-child{border-bottom:none}.sub-faq-item__question{width:100%;color:var(--color-text);cursor:pointer;text-align:left;background:0 0;border:none;justify-content:space-between;align-items:center;gap:1rem;padding:.9rem 1rem;font-size:.92rem;font-weight:500;transition:background .15s;display:flex}.sub-faq-item__question:hover{background:var(--color-bg-alt)}.sub-faq-item__chevron{color:var(--color-text-secondary);flex-shrink:0;font-size:.6rem;transition:transform .2s}.sub-faq-item--open .sub-faq-item__chevron{transform:rotate(90deg)}.sub-faq-item__answer{max-height:0;transition:max-height .3s;overflow:hidden}.sub-faq-item__answer p{color:var(--color-text-secondary);margin:0;padding:0 1rem 1rem;font-size:.88rem;line-height:1.55}.sub-gateway--subscribed{justify-content:center;align-items:center;min-height:calc(100vh - 64px);display:flex}.sub-subscribed{flex-direction:column;gap:2.5rem;width:100%;max-width:560px;padding:3rem 0;display:flex}.sub-welcome__row{justify-content:space-between;align-items:center;margin-bottom:.75rem;display:flex}.sub-welcome__subtitle{color:var(--color-text-secondary);margin:0;font-size:.92rem}.sub-card{border:1px solid var(--color-light-gray);background:var(--color-bg-content);border-radius:.75rem;padding:1.75rem;transition:border-color .2s}.sub-card:hover{border-color:var(--color-text-secondary)}.sub-card__brand{letter-spacing:.12em;color:var(--color-text);font-size:.78rem;font-weight:800}.sub-card__brand,.sub-card__emblem{font-family:var(--font-headline);text-transform:uppercase}.sub-card__emblem{letter-spacing:.06em;border-radius:100px;align-items:center;gap:.4rem;padding:.3rem .75rem;font-size:.7rem;font-weight:700;display:inline-flex}.sub-card__emblem--success{color:var(--color-cta);background:#00ff2514}.sub-card__emblem--warning{color:#f59e0b;background:#f59e0b1a}.sub-card__emblem--error{color:#ef4444;background:#ef44441a}.sub-card__emblem-dot{border-radius:50%;width:8px;height:8px;display:inline-block}.sub-card__emblem-dot--success{background:var(--color-cta);box-shadow:0 0 6px #00ff254d}.sub-card__emblem-dot--warning{background:#f59e0b;box-shadow:0 0 6px #f59e0b4d}.sub-card__emblem-dot--error{background:#ef4444;box-shadow:0 0 6px #ef44444d}.sub-card__fallback-text{color:var(--color-text-secondary);margin:0 0 1.5rem;font-size:.92rem}.sub-card__details{margin-bottom:1.25rem}.sub-card__row{flex-wrap:wrap;justify-content:space-between;align-items:center;padding:.55rem 0;display:flex}.sub-card__row+.sub-card__row{border-top:1px solid #ffffff0d}.sub-card__label{color:var(--color-text-secondary);font-size:.8rem;font-weight:500}.sub-card__value{color:var(--color-text);align-items:center;gap:.5rem;font-size:.88rem;font-weight:600;display:flex}.sub-card__price{color:var(--color-text-secondary);font-size:.76rem;font-weight:400}.sub-card__row--days{flex-wrap:wrap}.sub-card__progress{background:#ffffff0f;border-radius:2px;width:100%;height:3px;margin-top:.4rem;overflow:hidden}.sub-card__progress-fill{background:var(--color-cta);border-radius:2px;height:100%;transition:width .4s}.sub-card__notice{border-left:3px solid;border-radius:.4rem;margin-bottom:.75rem;padding:.65rem .85rem;font-size:.82rem;line-height:1.5}.sub-card__notice--warning{color:#fbbf24;background:#f59e0b0f;border-left-color:#f59e0b}.sub-card__notice--error{color:#f87171;background:#ef44440f;border-left-color:#ef4444}.sub-card__disclosure{color:var(--color-text-secondary);margin:0 0 1rem;font-size:.72rem;line-height:1.5}.sub-card__manage{border:1px solid var(--color-light-gray);width:100%;color:var(--color-text-secondary);cursor:pointer;background:0 0;border-radius:.5rem;justify-content:center;align-items:center;padding:.7rem 1.5rem;font-size:.92rem;font-weight:500;transition:border-color .15s,color .15s;display:flex}.sub-card__manage:hover{border-color:var(--color-text-secondary);color:var(--color-text)}.sub-dashboard--loading{flex-direction:column;gap:.75rem;padding:.5rem 0 0;display:flex}.sub-skeleton--row{background:var(--color-light-gray);border-radius:.25rem;height:1.25rem;animation:skeleton-shimmer 1.5s ease-in-out infinite}.sub-skeleton--row:nth-child(2){width:70%}.sub-skeleton--row:nth-child(3){width:85%}.sub-skeleton--row:nth-child(4){width:55%}.sub-invoices{text-align:left}.sub-invoices__toggle{cursor:pointer;width:100%;font-family:var(--font-headline);text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-secondary);background:0 0;border:none;align-items:center;gap:.5rem;padding:.65rem 0;font-size:.82rem;font-weight:700;transition:color .15s;display:flex}.sub-invoices__toggle:hover{color:var(--color-text)}.sub-invoices__count{min-width:1.35rem;height:1.35rem;color:var(--color-text-secondary);background:#ffffff0f;border-radius:100px;justify-content:center;align-items:center;padding:0 .35rem;font-size:.68rem;font-weight:700;display:inline-flex}.sub-invoices__chevron{color:var(--color-text-secondary);margin-left:auto;font-size:.6rem;transition:transform .2s}.sub-invoices__chevron--open{transform:rotate(90deg)}.sub-invoices__body{transition:max-height .3s;overflow:hidden}.sub-invoices__list{background:var(--color-bg-content);border:1px solid var(--color-light-gray);border-radius:.5rem;overflow:hidden}.sub-invoices__item{align-items:center;gap:1rem;padding:.6rem 1rem;font-size:.82rem;display:flex}.sub-invoices__item+.sub-invoices__item{border-top:1px solid #ffffff0a}.sub-invoices__date{color:var(--color-text);flex:1}.sub-invoices__amount{color:var(--color-text);text-align:right;min-width:60px;font-weight:600}.sub-invoices__status{text-transform:uppercase;letter-spacing:.04em;min-width:40px;font-size:.72rem;font-weight:600}.sub-invoices__status--paid{color:var(--color-cta)}.sub-invoices__status--draft,.sub-invoices__status--open{color:#f59e0b}.sub-invoices__status--uncollectible,.sub-invoices__status--void{color:var(--color-text-secondary)}.sub-invoices__link{color:var(--color-primary-blue);font-size:.78rem;font-weight:500;text-decoration:none}.sub-invoices__link:hover{text-decoration:underline}.sub-gateway__mobile-bar{display:none}@media (prefers-reduced-motion:reduce){.sub-gateway__cta-button{animation:none}.sub-faq-item__answer,.sub-faq-item__chevron,.sub-invoices__body,.sub-invoices__chevron,.sub-pathway-node__detail,.sub-preview__body,.sub-preview__chevron{transition:none}.sub-skeleton{opacity:.5;animation:none}}@media (max-width:900px){.sub-gateway{padding:2rem 1.25rem 3rem}.sub-gateway__split{grid-template-columns:1fr;gap:2rem}.sub-gateway__cta-column{order:-1;position:static}.sub-gateway__cta-card{max-width:420px;margin:0 auto}.sub-gateway__headline{font-size:2rem}}@media (max-width:768px){.sub-gateway__mobile-bar{background:var(--color-bg-content);border-top:1px solid var(--color-light-gray);z-index:40;justify-content:space-between;align-items:center;padding:.75rem 1.25rem;transition:transform .3s;display:flex;position:fixed;bottom:0;left:0;right:0;transform:translateY(100%)}.sub-gateway__mobile-bar--visible{transform:translateY(0)}.sub-gateway__mobile-bar-price{color:var(--color-text);font-size:.85rem;font-weight:600}.sub-gateway__mobile-bar-btn{background:var(--color-cta);color:#111;font-family:var(--font-headline);cursor:pointer;border:none;border-radius:.4rem;padding:.55rem 1.25rem;font-size:.85rem;font-weight:700}.sub-gateway__mobile-bar-btn:disabled{opacity:.7;cursor:not-allowed}.sub-gateway{padding-bottom:5rem}.sub-card{padding:1.25rem}.sub-subscribed{gap:1.75rem;padding:2rem 0}}@media (max-width:480px){.sub-gateway__headline{font-size:1.65rem}.sub-gateway__cta-price{font-size:2.25rem}.sub-preview__header{gap:.5rem;padding:.75rem}.sub-preview__meta{display:none}.sub-faq-item__question{padding:.75rem;font-size:.85rem}}.subscribe-success{justify-content:center;align-items:center;min-height:calc(100vh - 64px);padding:2rem 1.5rem;display:flex}.subscribe-success__card{background:var(--color-bg-content);border:1px solid var(--color-light-gray);text-align:center;border-radius:.75rem;width:100%;max-width:400px;padding:3rem 2rem}.subscribe-success__icon{margin-bottom:1.25rem}.subscribe-success__title{margin:0 0 .75rem;font-size:1.5rem;font-weight:700}.subscribe-success__text{color:var(--color-text-secondary);margin:0;font-size:.95rem;line-height:1.5}.subscribe-success__retry{color:var(--color-cta);border:1px solid var(--color-cta);cursor:pointer;background:0 0;border-radius:.5rem;margin-top:1.5rem;padding:.6rem 1.5rem;font-size:.9rem;font-weight:500;transition:background .15s,color .15s}.subscribe-success__retry:hover{background:var(--color-cta);color:#fff}.landing-final-cta{text-align:center;background:radial-gradient(ellipse 80% 60% at 50% 110%,#00ff250f 0,transparent 70%),var(--color-bg-content);padding:4rem 1.5rem}.landing-final-cta__heading{color:var(--color-text);margin:0 0 .5rem;font-size:1.5rem;font-weight:700}.landing-final-cta__text{color:var(--color-text-secondary);margin:0 0 1.5rem;font-size:1rem}@media (max-width:639px){.landing-hero{padding:3rem 1rem 2.5rem}.landing-section{padding:2.5rem 1rem}.landing-credibility__stats,.landing-hero__stats{gap:1.5rem}.auth-backdrop,.subscribe-modal-backdrop{align-items:flex-start;padding-top:0}.auth-modal,.subscribe-modal{border-radius:0;max-width:100%;min-height:100dvh;margin:0}}.fade-in-section{opacity:0;transition:opacity .6s,transform .6s;transform:translateY(24px)}.fade-in-section--visible{opacity:1;transform:translateY(0)}.fade-in-stagger>*{opacity:0;transition:opacity .4s,transform .4s;transform:translateY(16px)}.fade-in-stagger--visible>*{opacity:1;transform:translateY(0)}.fade-in-stagger--visible>:first-child{transition-delay:0s}.fade-in-stagger--visible>:nth-child(2){transition-delay:80ms}.fade-in-stagger--visible>:nth-child(3){transition-delay:.16s}.fade-in-stagger--visible>:nth-child(4){transition-delay:.24s}.fade-in-stagger--visible>:nth-child(5){transition-delay:.32s}.fade-in-stagger--visible>:nth-child(6){transition-delay:.4s}.fade-in-stagger--visible>:nth-child(7){transition-delay:.48s}.fade-in-stagger--visible>:nth-child(8){transition-delay:.56s}.fade-in-stagger--visible>:nth-child(9){transition-delay:.64s}.fade-in-stagger--visible>:nth-child(10){transition-delay:.72s}.fade-in-stagger--visible>:nth-child(11){transition-delay:.8s}.fade-in-stagger--visible>:nth-child(12){transition-delay:.88s}.landing-hero__stagger>*{opacity:0;animation:hero-fade-in .5s forwards;transform:translateY(16px)}.landing-hero__stagger>:first-child{animation-delay:0s}.landing-hero__stagger>:nth-child(2){animation-delay:.1s}.landing-hero__stagger>:nth-child(3){animation-delay:.2s}.landing-hero__stagger>:nth-child(4){animation-delay:.3s}.landing-hero__stagger>:nth-child(5){animation-delay:.4s}@keyframes hero-fade-in{to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.fade-in-section,.fade-in-stagger>*,.landing-hero__stagger>*,.subscribe-hero__gradient,.subscribe-hero__stagger>*,.subscribe-pricing__cta-glow{opacity:1;transition:none;animation:none;transform:none}.auth-backdrop,.auth-modal,.subscribe-modal,.subscribe-modal-backdrop{animation:none}}[data-completed=true]{background:#7c3aed0d;border-left:3px solid #7c3aed;margin:1rem 0;padding-left:1rem;position:relative}[data-completed=true]:before{content:"AGENT EDIT";color:#7c3aed;font-family:monospace;font-size:.625rem;font-weight:600;position:absolute;top:-.5rem;left:1rem}@keyframes blink{0%,to{opacity:1}50%{opacity:0}}.agent-cursor{color:#7c3aed;animation:blink .8s step-end infinite}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@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-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}