@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--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-space-x-reverse:0;--tw-border-style:solid;--tw-gradient-position:initial;--tw-gradient-from:#0000;--tw-gradient-via:#0000;--tw-gradient-to:#0000;--tw-gradient-stops:initial;--tw-gradient-via-stops:initial;--tw-gradient-from-position:0%;--tw-gradient-via-position:50%;--tw-gradient-to-position:100%;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction: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-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-duration:initial;--tw-ease:initial;--tw-scale-x:1;--tw-scale-y:1;--tw-scale-z:1}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--color-amber-50:#fffbeb;--color-amber-200:#fee685;--color-amber-600:#dd7400;--color-amber-800:#953d00;--color-black:#000;--color-white:#fff;--spacing:.25rem;--container-sm:24rem;--container-md:28rem;--container-2xl:42rem;--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-9xl:8rem;--text-9xl--line-height:1;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--font-weight-extrabold:800;--font-weight-black:900;--tracking-tighter:-.05em;--tracking-tight:-.025em;--tracking-wide:.025em;--tracking-wider:.05em;--tracking-widest:.1em;--leading-tight:1.25;--leading-snug:1.375;--leading-relaxed:1.625;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:.75rem;--radius-2xl:1rem;--ease-out:cubic-bezier(0, 0, .2, 1);--ease-in-out:cubic-bezier(.4, 0, .2, 1);--blur-md:12px;--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-inter), monospace;--font-display:var(--font-outfit), sans-serif;--font-body:var(--font-inter), system-ui, sans-serif}@supports (color:lab(0% 0 0)){:root,:host{--color-amber-50:lab(98.6252% -.635922 8.42309);--color-amber-200:lab(91.7203% -.505269 49.9084);--color-amber-600:lab(60.3514% 40.5624 87.1228);--color-amber-800:lab(37.8822% 37.1699 52.2718)}}}@layer base{*,:after,:before,::backdrop{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}html,:host{-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;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{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}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,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{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-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{height:auto}::-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}.\!visible{visibility:visible!important}.collapse{visibility:collapse}.invisible{visibility:hidden}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.inset-0{inset:calc(var(--spacing) * 0)}.top-0{top:calc(var(--spacing) * 0)}.top-1\/2{top:50%}.top-3{top:calc(var(--spacing) * 3)}.top-\[57px\]{top:57px}.right-0{right:calc(var(--spacing) * 0)}.bottom-0{bottom:calc(var(--spacing) * 0)}.left-0{left:calc(var(--spacing) * 0)}.left-3{left:calc(var(--spacing) * 3)}.left-4{left:calc(var(--spacing) * 4)}.isolate{isolation:isolate}.z-10{z-index:10}.z-30{z-index:30}.z-40{z-index:40}.z-50{z-index:50}.z-\[-1\]{z-index:-1}.col-span-4{grid-column:span 4/span 4}.col-span-8{grid-column:span 8/span 8}.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}}.mx-auto{margin-inline:auto}.-mt-96{margin-top:calc(var(--spacing) * -96)}.mt-1{margin-top:calc(var(--spacing) * 1)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-6{margin-top:calc(var(--spacing) * 6)}.mt-8{margin-top:calc(var(--spacing) * 8)}.mt-\[2px\]{margin-top:2px}.mt-\[3px\]{margin-top:3px}.mt-auto{margin-top:auto}.-mr-96{margin-right:calc(var(--spacing) * -96)}.-mb-64{margin-bottom:calc(var(--spacing) * -64)}.mb-1{margin-bottom:calc(var(--spacing) * 1)}.mb-2{margin-bottom:calc(var(--spacing) * 2)}.mb-4{margin-bottom:calc(var(--spacing) * 4)}.mb-6{margin-bottom:calc(var(--spacing) * 6)}.mb-8{margin-bottom:calc(var(--spacing) * 8)}.mb-\[2px\]{margin-bottom:2px}.-ml-64{margin-left:calc(var(--spacing) * -64)}.ml-0{margin-left:calc(var(--spacing) * 0)}.ml-1{margin-left:calc(var(--spacing) * 1)}.ml-64{margin-left:calc(var(--spacing) * 64)}.ml-auto{margin-left:auto}.line-clamp-2{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.block{display:block}.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-1{height:calc(var(--spacing) * 1)}.h-1\.5{height:calc(var(--spacing) * 1.5)}.h-2{height:calc(var(--spacing) * 2)}.h-2\.5{height:calc(var(--spacing) * 2.5)}.h-4{height:calc(var(--spacing) * 4)}.h-6{height:calc(var(--spacing) * 6)}.h-8{height:calc(var(--spacing) * 8)}.h-10{height:calc(var(--spacing) * 10)}.h-12{height:calc(var(--spacing) * 12)}.h-14{height:calc(var(--spacing) * 14)}.h-16{height:calc(var(--spacing) * 16)}.h-\[9px\]{height:9px}.h-\[600px\]{height:600px}.h-\[800px\]{height:800px}.h-full{height:100%}.h-screen{height:100vh}.min-h-11{min-height:calc(var(--spacing) * 11)}.min-h-\[280px\]{min-height:280px}.min-h-\[calc\(100vh-57px\)\]{min-height:calc(100vh - 57px)}.min-h-dvh{min-height:100dvh}.min-h-full{min-height:100%}.min-h-screen{min-height:100vh}.w-1\.5{width:calc(var(--spacing) * 1.5)}.w-2{width:calc(var(--spacing) * 2)}.w-2\.5{width:calc(var(--spacing) * 2.5)}.w-6{width:calc(var(--spacing) * 6)}.w-8{width:calc(var(--spacing) * 8)}.w-10{width:calc(var(--spacing) * 10)}.w-12{width:calc(var(--spacing) * 12)}.w-14{width:calc(var(--spacing) * 14)}.w-64{width:calc(var(--spacing) * 64)}.w-\[9px\]{width:9px}.w-\[92px\]{width:92px}.w-\[600px\]{width:600px}.w-\[800px\]{width:800px}.w-full{width:100%}.w-px{width:1px}.max-w-2xl{max-width:var(--container-2xl)}.max-w-\[840px\]{max-width:840px}.max-w-\[900px\]{max-width:900px}.max-w-\[1160px\]{max-width:1160px}.max-w-md{max-width:var(--container-md)}.max-w-sm{max-width:var(--container-sm)}.min-w-0{min-width:calc(var(--spacing) * 0)}.flex-1{flex:1}.flex-none{flex:none}.flex-shrink{flex-shrink:1}.flex-shrink-0{flex-shrink:0}.shrink{flex-shrink:1}.shrink-0{flex-shrink:0}.flex-grow,.grow{flex-grow:1}.border-collapse{border-collapse:collapse}.-translate-y-1\/2{--tw-translate-y:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.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}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.grid-cols-12{grid-template-columns:repeat(12,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.items-end{align-items:flex-end}.items-start{align-items:flex-start}.justify-around{justify-content:space-around}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.gap-0\.5{gap:calc(var(--spacing) * .5)}.gap-1{gap:calc(var(--spacing) * 1)}.gap-1\.5{gap:calc(var(--spacing) * 1.5)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}.gap-5{gap:calc(var(--spacing) * 5)}.gap-6{gap:calc(var(--spacing) * 6)}.gap-8{gap:calc(var(--spacing) * 8)}:where(.space-y-3>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 3) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 3) * 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-6>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 6) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 6) * calc(1 - var(--tw-space-y-reverse)))}.gap-x-3{column-gap:calc(var(--spacing) * 3)}:where(.-space-x-2>:not(:last-child)){--tw-space-x-reverse:0;margin-inline-start:calc(calc(var(--spacing) * -2) * var(--tw-space-x-reverse));margin-inline-end:calc(calc(var(--spacing) * -2) * calc(1 - var(--tw-space-x-reverse)))}.gap-y-1{row-gap:calc(var(--spacing) * 1)}.self-start{align-self:flex-start}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-hidden{overflow:hidden}.overflow-x-hidden{overflow-x:hidden}.overflow-y-auto{overflow-y:auto}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:var(--radius-2xl)}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:16px}.rounded-sm{border-radius:8px}.rounded-xl{border-radius:var(--radius-xl)}.rounded-t-full{border-top-left-radius:3.40282e38px;border-top-right-radius:3.40282e38px}.border{border-style:var(--tw-border-style);border-width:1px}.border-2{border-style:var(--tw-border-style);border-width:2px}.border-y{border-block-style:var(--tw-border-style);border-block-width:1px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-r{border-right-style:var(--tw-border-style);border-right-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-b-2{border-bottom-style:var(--tw-border-style);border-bottom-width:2px}.border-l-2{border-left-style:var(--tw-border-style);border-left-width:2px}.border-dashed{--tw-border-style:dashed;border-style:dashed}.border-amber-200{border-color:var(--color-amber-200)}.border-border{border-color:var(--border)}.bg-accent{background-color:var(--accent)}.bg-amber-50{background-color:var(--color-amber-50)}.bg-amber-200{background-color:var(--color-amber-200)}.bg-olive{background-color:#a0c347}.bg-surface{background-color:var(--surface)}.bg-surface-raised{background-color:var(--surface-raised)}.bg-surface\/90{background-color:var(--surface)}@supports (color:color-mix(in lab, red, red)){.bg-surface\/90{background-color:color-mix(in oklab, var(--surface) 90%, transparent)}}.bg-transparent{background-color:#0000}.bg-white{background-color:var(--color-white)}.bg-gradient-to-t{--tw-gradient-position:to top in oklab;background-image:linear-gradient(var(--tw-gradient-stops))}.from-black\/90{--tw-gradient-from:#000000e6}@supports (color:color-mix(in lab, red, red)){.from-black\/90{--tw-gradient-from:color-mix(in oklab, var(--color-black) 90%, transparent)}}.from-black\/90{--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.via-black\/40{--tw-gradient-via:#0006}@supports (color:color-mix(in lab, red, red)){.via-black\/40{--tw-gradient-via:color-mix(in oklab, var(--color-black) 40%, transparent)}}.via-black\/40{--tw-gradient-via-stops:var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-via) var(--tw-gradient-via-position), var(--tw-gradient-to) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-via-stops)}.to-transparent{--tw-gradient-to:transparent;--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.fill-current{fill:currentColor}.p-1{padding:calc(var(--spacing) * 1)}.p-3{padding:calc(var(--spacing) * 3)}.p-4{padding:calc(var(--spacing) * 4)}.p-6{padding:calc(var(--spacing) * 6)}.p-8{padding:calc(var(--spacing) * 8)}.px-1{padding-inline:calc(var(--spacing) * 1)}.px-1\.5{padding-inline:calc(var(--spacing) * 1.5)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-6{padding-inline:calc(var(--spacing) * 6)}.px-8{padding-inline:calc(var(--spacing) * 8)}.px-\[20px\]{padding-inline:20px}.py-0\.5{padding-block:calc(var(--spacing) * .5)}.py-1{padding-block:calc(var(--spacing) * 1)}.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-6{padding-block:calc(var(--spacing) * 6)}.py-\[14px\]{padding-block:14px}.pt-6{padding-top:calc(var(--spacing) * 6)}.pr-4{padding-right:calc(var(--spacing) * 4)}.pb-4{padding-bottom:calc(var(--spacing) * 4)}.pb-6{padding-bottom:calc(var(--spacing) * 6)}.pl-10{padding-left:calc(var(--spacing) * 10)}.pl-12{padding-left:calc(var(--spacing) * 12)}.text-center{text-align:center}.text-left{text-align:left}.font-body{font-family:var(--font-inter), system-ui, sans-serif}.font-display{font-family:var(--font-outfit), sans-serif}.font-mono{font-family:var(--font-inter), monospace}.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-9xl{font-size:var(--text-9xl);line-height:var(--tw-leading,var(--text-9xl--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))}.text-\[10px\]{font-size:10px}.text-\[11px\]{font-size:11px}.text-\[12px\]{font-size:12px}.text-\[16px\]{font-size:16px}.text-\[18px\]{font-size:18px}.text-\[20px\]{font-size:20px}.leading-none{--tw-leading:1;line-height:1}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.leading-snug{--tw-leading:var(--leading-snug);line-height:var(--leading-snug)}.leading-tight{--tw-leading:var(--leading-tight);line-height:var(--leading-tight)}.font-black{--tw-font-weight:var(--font-weight-black);font-weight:var(--font-weight-black)}.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-\[0\.2em\]{--tw-tracking:.2em;letter-spacing:.2em}.tracking-\[0\.12em\]{--tw-tracking:.12em;letter-spacing:.12em}.tracking-\[0\.14em\]{--tw-tracking:.14em;letter-spacing:.14em}.tracking-tight{--tw-tracking:var(--tracking-tight);letter-spacing:var(--tracking-tight)}.tracking-tighter{--tw-tracking:var(--tracking-tighter);letter-spacing:var(--tracking-tighter)}.tracking-wide{--tw-tracking:var(--tracking-wide);letter-spacing:var(--tracking-wide)}.tracking-wider{--tw-tracking:var(--tracking-wider);letter-spacing:var(--tracking-wider)}.tracking-widest{--tw-tracking:var(--tracking-widest);letter-spacing:var(--tracking-widest)}.break-words{overflow-wrap:break-word}.text-\[\#21A366\]{color:#21a366}.text-\[\#E5252A\]{color:#e5252a}.text-accent{color:var(--accent)}.text-amber-600{color:var(--color-amber-600)}.text-amber-800{color:var(--color-amber-800)}.text-cream{color:#f7f9f2}.text-faint{color:var(--on-surface-faint)}.text-olive{color:#a0c347}.text-on-surface{color:var(--on-surface)}.text-white{color:var(--color-white)}.text-white\/30{color:#ffffff4d}@supports (color:color-mix(in lab, red, red)){.text-white\/30{color:color-mix(in oklab, var(--color-white) 30%, transparent)}}.text-white\/60{color:#fff9}@supports (color:color-mix(in lab, red, red)){.text-white\/60{color:color-mix(in oklab, var(--color-white) 60%, transparent)}}.text-white\/80{color:#fffc}@supports (color:color-mix(in lab, red, red)){.text-white\/80{color:color-mix(in oklab, var(--color-white) 80%, transparent)}}.capitalize{text-transform:capitalize}.lowercase{text-transform:lowercase}.normal-case{text-transform:none}.uppercase{text-transform:uppercase}.italic{font-style:italic}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.overline{text-decoration-line:overline}.underline{text-decoration-line:underline}.underline-offset-2{text-underline-offset:2px}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.opacity-0{opacity:0}.opacity-5{opacity:.05}.opacity-10{opacity:.1}.opacity-50{opacity:.5}.opacity-60{opacity:.6}.opacity-\[0\.02\]{opacity:.02}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-\[0_0_8px_rgba\(183\,254\,2\,0\.4\)\]{--tw-shadow:0 0 8px var(--tw-shadow-color,#b7fe0266);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-\[0_0_8px_rgba\(183\,254\,2\,0\.6\)\]{--tw-shadow:0 0 8px var(--tw-shadow-color,#b7fe0299);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-sm{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring,.ring-1{--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)}.ring-2{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px);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,)}.blur-\[120px\]{--tw-blur:blur(120px);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,)}.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,)}.backdrop-blur-md{--tw-backdrop-blur:blur(var(--blur-md));-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.backdrop-filter{-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.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-all{transition-property:all;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}.duration-300{--tw-duration:.3s;transition-duration:.3s}.duration-700{--tw-duration:.7s;transition-duration:.7s}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}.select-all{-webkit-user-select:all;user-select:all}@media (hover:hover){.group-hover\:translate-x-1:is(:where(.group):hover *){--tw-translate-x:calc(var(--spacing) * 1);translate:var(--tw-translate-x) var(--tw-translate-y)}.group-hover\:scale-105:is(:where(.group):hover *){--tw-scale-x:105%;--tw-scale-y:105%;--tw-scale-z:105%;scale:var(--tw-scale-x) var(--tw-scale-y)}.group-hover\:text-on-surface:is(:where(.group):hover *){color:var(--on-surface)}.group-hover\:opacity-100:is(:where(.group):hover *){opacity:1}}.peer-checked\:opacity-100:is(:where(.peer):checked~*){opacity:1}.peer-focus-visible\:outline:is(:where(.peer):focus-visible~*){outline-style:var(--tw-outline-style);outline-width:1px}@media (hover:hover){.hover\:-translate-y-px:hover{--tw-translate-y:-1px;translate:var(--tw-translate-x) var(--tw-translate-y)}.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\:text-on-surface:hover{color:var(--on-surface)}.hover\:underline:hover{text-decoration-line:underline}.hover\:opacity-90:hover{opacity:.9}.hover\:shadow-\[0_4px_12px_rgba\(183\,254\,2\,0\.2\)\]:hover{--tw-shadow:0 4px 12px var(--tw-shadow-color,#b7fe0233);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}}.focus\:not-sr-only:focus{clip-path:none;white-space:normal;width:auto;height:auto;margin:0;padding:0;position:static;overflow:visible}.focus\:ring-1:focus{--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)}.focus\:outline-none:focus{--tw-outline-style:none;outline-style:none}.active\:scale-95:active{--tw-scale-x:95%;--tw-scale-y:95%;--tw-scale-z:95%;scale:var(--tw-scale-x) var(--tw-scale-y)}.active\:opacity-80:active{opacity:.8}.disabled\:translate-y-0:disabled{--tw-translate-y:calc(var(--spacing) * 0);translate:var(--tw-translate-x) var(--tw-translate-y)}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-40:disabled{opacity:.4}.disabled\:opacity-50:disabled{opacity:.5}.disabled\:opacity-60:disabled{opacity:.6}@media (min-width:40rem){.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.sm\:flex-row{flex-direction:row}}@media (min-width:48rem){.md\:ml-64{margin-left:calc(var(--spacing) * 64)}.md\:flex{display:flex}.md\:hidden{display:none}.md\:inline{display:inline}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:flex-row{flex-direction:row}.md\:flex-nowrap{flex-wrap:nowrap}.md\:items-end{align-items:flex-end}}@media (min-width:64rem){.lg\:col-span-4{grid-column:span 4/span 4}.lg\:col-span-5{grid-column:span 5/span 5}.lg\:col-span-7{grid-column:span 7/span 7}.lg\:col-span-8{grid-column:span 8/span 8}.lg\:col-span-12{grid-column:span 12/span 12}.lg\:ml-64{margin-left:calc(var(--spacing) * 64)}.lg\:flex{display:flex}.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.lg\:grid-cols-12{grid-template-columns:repeat(12,minmax(0,1fr))}}@media (min-width:80rem){.xl\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}}}:root{--lime:#b7fe02;--lime-dark:#3d6e00;--lime-soft:#d7ff62;--olive:#a0c347;--ink:#101604;--ink-deep:#080c03;--ink-raised:#19200d;--ink-card:#222a14;--ink-card-2:#29321a;--cream:#f7f9f2;--paper:#eef2df;--amber:#ffd36a;--sky:#9fd9ff;--lime-glow:0 0 14px #b7fe0299;--surface:#101604;--surface-raised:#19200d;--surface-card:#222a14;--surface-card-2:#29321a;--on-surface:#f7f9f2;--on-surface-muted:#f7f9f2d1;--on-surface-faint:#f7f9f28f;--faint:var(--on-surface-faint);--border:#f7f9f21f;--border-strong:#f7f9f238;--control-border:#f7f9f26b;--accent:#b7fe02;--accent-fg:#101604;--signal:#b7fe02;--warning:#ffd36a;--info:#9fd9ff;--error:#ffb4ab;--font-display:var(--font-outfit,"Outfit"), sans-serif;--font-body:var(--font-inter,"Inter"), system-ui, sans-serif;--font-mono:var(--font-inter,"Inter"), monospace;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:20px;--radius-2xl:28px;--shadow-soft:0 24px 80px #00000047;--ease-standard:cubic-bezier(.2,.8,.2,1);--ease-out-strong:cubic-bezier(.16,1,.3,1);--dur-instant:80ms;--dur-micro:.16s;--dur-state:.24s;--dur-feedback:.32s;--dur-progress:.62s;--dur-rank:.42s;--dur-reveal:.76s}[data-theme=light]{--surface:#f7f9f2;--surface-raised:#eeebe5;--surface-card:#fff;--surface-card-2:#f4f6eb;--on-surface:#101604;--on-surface-muted:#101604ad;--on-surface-faint:#10160499;--faint:var(--on-surface-faint);--border:#1016041a;--border-strong:#1016042e;--control-border:#10160475;--accent:#3d6e00;--accent-fg:#f7f9f2;--error:#93000a}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility}html[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}body{background:var(--surface);color:var(--on-surface);font-family:var(--font-body);font-size:16px;line-height:1.6}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);letter-spacing:0;line-height:1.06}a{color:inherit}a,button{touch-action:manipulation}button,input,select,textarea{font:inherit}:focus-visible{outline:2px solid var(--accent);outline-offset:3px}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}::selection{color:var(--on-surface);background:#b7fe022e}.portal-main{flex:1;min-width:0}.portal-canvas{background:linear-gradient(180deg, #f7f9f206, transparent 220px), var(--surface);min-height:100dvh;position:relative;overflow-x:hidden}.portal-canvas:before{content:none}.portal-container{z-index:1;width:min(1180px,100% - 48px);margin-inline:auto;padding-block:clamp(32px,4.5vw,56px);position:relative}.portal-container--narrow{width:min(780px,100% - 48px)}.portal-kicker{color:var(--accent);letter-spacing:.04em;text-transform:uppercase;align-items:center;gap:8px;font-size:12px;font-weight:750;line-height:16px;display:inline-flex}.portal-kicker:before{content:"";background:var(--accent);border-radius:2px;width:7px;height:7px;box-shadow:0 0 12px #b7fe027a}.portal-pagehead{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:24px;margin-bottom:clamp(24px,4vw,36px);display:grid}.portal-pagehead__copy{min-width:0}.portal-pagehead__action{justify-content:flex-end;align-items:center;display:flex}.portal-title{max-width:760px;color:var(--on-surface);text-wrap:balance;margin-top:10px;font-size:clamp(1.875rem,2.7vw,2.25rem);font-weight:800;line-height:1.15}.portal-subtitle{max-width:680px;color:var(--on-surface-faint);text-wrap:pretty;margin-top:10px;font-size:16px;line-height:1.6}.portal-continue-stage{border-radius:var(--radius-lg);background:var(--surface-card);border:1px solid #b7fe023d;grid-template-columns:minmax(0,1.55fr) minmax(280px,.72fr);min-height:380px;display:grid;overflow:visible;box-shadow:0 22px 70px #00000038}.portal-overview-command-layout{grid-template-columns:minmax(0,7fr) minmax(310px,5fr);align-items:stretch;gap:18px;display:grid}.portal-overview-continue{border-radius:var(--radius-lg);background:var(--surface-card);border:1px solid #b7fe023d;min-height:534px;display:flex;overflow:hidden;box-shadow:0 22px 70px #00000038}.portal-overview-continue .portal-continue-stage__copy{width:100%}.portal-overview-side{grid-template-rows:auto minmax(0,1fr);gap:18px;min-width:0;display:grid}.portal-overview-drill{border:1px solid var(--border-strong);border-radius:var(--radius-lg);background:var(--surface-raised);min-width:0;min-height:230px;padding:22px}.portal-overview-drill[data-state=ready]{box-shadow:inset 3px 0 0 var(--accent);border-color:#b7fe0257}.portal-overview-drill__topline,.portal-overview-drill__meta{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 12px;display:flex}.portal-overview-drill__topline{color:var(--accent);letter-spacing:0;text-transform:uppercase;font-size:12px;font-weight:800}.portal-overview-drill__topline>span,.portal-overview-drill__meta>span{align-items:center;gap:6px;display:inline-flex}.portal-overview-drill__topline strong{color:var(--on-surface-muted);text-transform:none;font-size:12px}.portal-overview-drill__meta{color:var(--on-surface-faint);margin-top:20px;font-size:12px}.portal-overview-drill h2{color:var(--on-surface);font-family:var(--font-display);text-wrap:balance;margin-top:9px;font-size:1.35rem;font-weight:800;line-height:1.2}.portal-overview-drill>p{color:var(--on-surface-faint);text-wrap:pretty;margin-top:8px;font-size:13px;line-height:1.5}.portal-overview-drill>.portal-btn{margin-top:18px}.portal-continue-stage__copy{flex-direction:column;justify-content:center;min-width:0;padding:clamp(26px,4vw,38px);display:flex}.portal-stage-meta{color:var(--on-surface-faint);flex-wrap:wrap;align-items:center;gap:8px;font-size:13px;line-height:18px;display:flex}.portal-stage-meta>span+span{border-left:1px solid var(--border-strong);padding-left:10px}.portal-status-dot{background:var(--accent);border-radius:50%;flex:0 0 7px;width:7px;height:7px;box-shadow:0 0 10px #b7fe026b;border:0!important;padding:0!important}.portal-stage-overline{color:var(--info);margin-top:28px;font-size:14px;font-weight:700}.portal-continue-stage__copy h2{max-width:640px;color:var(--on-surface);font-family:var(--font-display);text-wrap:balance;margin-top:5px;font-size:clamp(1.75rem,3vw,2.25rem);font-weight:800;line-height:1.18}.portal-stage-body{max-width:630px;color:var(--on-surface-muted);text-wrap:pretty;margin-top:10px;font-size:16px;line-height:1.6}.portal-stage-progress{width:100%;margin-top:24px}.portal-stage-actions{flex-wrap:wrap;align-items:center;gap:10px;margin-top:24px;display:flex}.portal-stage-stats{border-top:1px solid var(--border);grid-template-columns:repeat(3,minmax(0,1fr));margin-top:28px;padding-top:18px;display:grid}.portal-stage-stats>div{border-left:1px solid var(--border);gap:4px;min-width:0;padding-inline:16px;display:grid}.portal-stage-stats>div:first-child{border-left:0;padding-left:0}.portal-stage-stats span{color:var(--on-surface-faint);font-size:12px;line-height:16px}.portal-stage-stats strong{color:var(--on-surface);font-variant-numeric:tabular-nums;text-overflow:ellipsis;white-space:nowrap;font-size:17px;line-height:24px;overflow:hidden}.portal-companion-home{border-radius:0 var(--radius-lg) var(--radius-lg) 0;min-width:0;color:var(--ink);background:var(--paper);border-left:1px solid #10160424;grid-template-rows:auto minmax(184px,1fr) auto;padding:20px 22px 22px;display:grid}.portal-companion-home__topline{justify-content:space-between;align-items:center;gap:10px;font-size:12px;font-weight:750;line-height:16px;display:flex}.portal-companion-home__topline strong{font-variant-numeric:tabular-nums}.portal-companion-home__stage{min-height:184px;position:relative}.portal-companion-home>p{color:#101604b8;text-wrap:pretty;font-size:14px;line-height:21px}.portal-habitat{border-radius:var(--radius-lg);border:1px solid #10160424;grid-template-rows:auto minmax(210px,1fr) auto;min-height:286px;overflow:hidden}.portal-habitat__stage{isolation:isolate;min-height:210px;position:relative}.portal-habitat__grid{z-index:-3;opacity:.22;background-image:linear-gradient(#1016042e 1px,#0000 1px),linear-gradient(90deg,#1016042e 1px,#0000 1px);background-size:22px 22px;position:absolute;inset:20px 0 12px;-webkit-mask-image:linear-gradient(#000,#0000 88%);mask-image:linear-gradient(#000,#0000 88%)}.portal-habitat__core{z-index:-1;color:#10160475;background:radial-gradient(circle at center, #b7fe0238 0 31%, transparent 32%), conic-gradient(#1016042e var(--core-charge), #10160412 0);font-variant-numeric:tabular-nums;border:1px solid #1016042e;border-radius:50%;place-items:center;width:112px;height:112px;font-size:12px;font-weight:850;display:grid;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:inset 0 0 0 10px #ffffff6b}.portal-habitat__tools{z-index:1;grid-template-columns:repeat(2,34px);gap:6px;display:grid;position:absolute;top:14px;right:0}.portal-habitat__tool{width:34px;height:34px;display:inline-flex}.portal-habitat__tool.is-empty{clip-path:polygon(25% 0%,75% 0%,100% 50%,75% 100%,25% 100%,0% 50%);background:#ffffff3d;border:1px dashed #10160433}.portal-habitat__floor{z-index:-2;transform-origin:top;background:repeating-linear-gradient(90deg,#10160414 0 1px,#0000 1px 26px);border-top:1px solid #1016042e;height:34px;position:absolute;bottom:12px;left:2px;right:2px;transform:perspective(80px)rotateX(56deg)}.portal-habitat .portal-companion-home__stage{z-index:2;position:absolute;inset:0}.portal-habitat__status{gap:7px;display:grid}.portal-habitat__status>div{color:#101604b3;grid-template-columns:16px minmax(0,1fr) auto;align-items:center;gap:7px;font-size:12px;font-weight:750;display:grid}.portal-habitat__status strong{color:var(--ink);font-variant-numeric:tabular-nums}.portal-habitat__meter{background:#1016041f;border-radius:999px;height:4px;overflow:hidden}.portal-habitat__meter>span{border-radius:inherit;background:var(--ink);height:100%;display:block}.portal-habitat__status p{color:#101604ad;text-wrap:pretty;font-size:13px;line-height:1.45}.portal-habitat[data-upgrade] .portal-habitat__tool:not(.is-empty):last-of-type{animation:portal-habitat-tool-arrive .72s var(--ease-out-strong) both}@keyframes portal-habitat-tool-arrive{0%{opacity:0;transform:translateY(5px)scale(.84)}58%{opacity:1;transform:translateY(-2px)scale(1.06)}to{opacity:1;transform:none}}.capability-mark__sweep{opacity:0;background:linear-gradient(100deg, transparent 35%, var(--capability-tone) 50%, transparent 65%);position:absolute;inset:0}@supports (color:color-mix(in lab, red, red)){.capability-mark__sweep{background:linear-gradient(100deg, transparent 35%, color-mix(in srgb, var(--capability-tone) 58%, white) 50%, transparent 65%)}}.capability-mark__sweep{animation:capability-mark-sweep .64s var(--ease-standard) .12s 1 both}@keyframes capability-mark-sweep{0%{opacity:0;transform:translate(-110%)}35%{opacity:.8}to{opacity:0;transform:translate(110%)}}.portal-route-note{border-block:1px solid var(--border);color:var(--on-surface-muted);grid-template-columns:36px minmax(0,1fr) auto;align-items:center;gap:12px;margin-top:16px;padding:14px 2px;display:grid}.portal-route-note>svg{color:var(--info)}.portal-route-note>div{gap:2px;min-width:0;display:grid}.portal-route-note strong{color:var(--on-surface);font-size:14px}.portal-route-note span{color:var(--on-surface-faint);text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.portal-route-note a{min-height:40px;color:var(--accent);align-items:center;gap:7px;font-size:14px;font-weight:750;text-decoration:none;display:inline-flex}.portal-today-strip{border-block:1px solid var(--border);grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:14px;margin-top:18px;padding-block:14px;display:grid}.portal-today-strip__icon{width:38px;height:38px;color:var(--warning);background:#ffd36a12;border:1px solid #ffd36a52;border-radius:9px;place-items:center;display:grid}.portal-today-strip>div{min-width:0}.portal-today-strip h2{color:var(--on-surface);font-family:var(--font-display);margin-top:2px;font-size:16px;font-weight:750;line-height:1.3}.portal-today-strip p:not(.portal-label){color:var(--on-surface-faint);margin-top:2px;font-size:13px;line-height:1.5}@media (max-width:620px){.portal-today-strip{grid-template-columns:38px minmax(0,1fr)}.portal-today-strip .portal-btn{grid-column:1/-1;width:100%}}.portal-module-cover{border:1px solid var(--module-cover-accent);flex-direction:column;justify-content:space-between;min-height:260px;display:flex;position:relative;overflow:hidden}@supports (color:color-mix(in lab, red, red)){.portal-module-cover{border:1px solid color-mix(in srgb, var(--module-cover-accent) 32%, transparent)}}.portal-module-cover{border-radius:var(--radius-lg);color:#f7f9f2;background:var(--module-cover-surface);padding:22px}.portal-module-cover:after{content:"";background:var(--module-cover-accent);width:34%;height:4px;position:absolute;top:0;right:0}.portal-module-cover__topline{color:#f7f9f29e;justify-content:space-between;align-items:center;gap:14px;font-size:12px;font-weight:700;line-height:16px;display:flex}.portal-module-cover__subject{grid-template-columns:58px minmax(0,1fr);align-items:center;gap:16px;margin-block:28px;display:grid}.portal-module-cover__icon{border:1px solid var(--module-cover-accent);place-items:center;width:58px;height:58px;display:grid}@supports (color:color-mix(in lab, red, red)){.portal-module-cover__icon{border:1px solid color-mix(in srgb, var(--module-cover-accent) 45%, transparent)}}.portal-module-cover__icon{color:#101604;background:var(--module-cover-accent);border-radius:14px;box-shadow:8px 8px #080c0352}.portal-module-cover__subject>div{gap:3px;min-width:0;display:grid}.portal-module-cover__subject span{color:#f7f9f299;font-size:12px;line-height:16px}.portal-module-cover__subject strong{color:#f7f9f2;font-family:var(--font-display);text-wrap:balance;font-size:clamp(1.4rem,3vw,2rem);font-weight:800;line-height:1.12}.portal-module-cover__flow{border-top:1px solid #f7f9f22e;grid-template-columns:repeat(3,minmax(0,1fr));padding-top:15px;display:grid}.portal-module-cover__step{border-left:1px solid #f7f9f226;gap:2px;min-width:0;padding-inline:12px;display:grid}.portal-module-cover__step:first-child{border-left:0;padding-left:0}.portal-module-cover__step span{color:var(--module-cover-accent);font-variant-numeric:tabular-nums;font-size:12px;line-height:16px}.portal-module-cover__step strong{overflow-wrap:anywhere;color:#f7f9f2db;font-size:12px;font-weight:700;line-height:16px}.portal-curriculum-focus{border-radius:var(--radius-lg);background:linear-gradient(112deg, #b7fe0214, transparent 48%), var(--surface-card);border:1px solid #b7fe0247;grid-template-columns:minmax(0,1fr) minmax(210px,.36fr);min-height:260px;display:grid;overflow:hidden;box-shadow:0 20px 56px #0000002e}.portal-curriculum-focus.is-complete{background:linear-gradient(112deg, #62d3ff14, transparent 48%), var(--surface-card);grid-template-columns:1fr;min-height:220px}.portal-curriculum-focus__copy{flex-direction:column;justify-content:center;min-width:0;padding:clamp(26px,4vw,38px);display:flex}.portal-curriculum-focus__copy h2{max-width:720px;color:var(--on-surface);font-family:var(--font-display);text-wrap:balance;margin-top:22px;font-size:clamp(1.65rem,3vw,2.25rem);font-weight:800;line-height:1.18}.portal-curriculum-focus__copy>p{max-width:690px;color:var(--on-surface-muted);text-wrap:pretty;margin-top:10px;font-size:16px;line-height:1.6}.portal-curriculum-focus__progress{width:min(100%,520px);margin-top:24px}.portal-curriculum-focus__action{background:#080c0347;border-left:1px solid #b7fe022e;flex-direction:column;justify-content:center;min-width:0;padding:30px;display:flex}.portal-curriculum-focus__action strong{color:var(--on-surface);font-family:var(--font-display);font-variant-numeric:tabular-nums;font-size:clamp(2rem,4vw,3rem);font-weight:800;line-height:1}.portal-curriculum-focus__action>span{color:var(--on-surface-faint);margin-top:7px;font-size:13px;line-height:18px}.portal-curriculum-focus__action .portal-btn{align-self:stretch;margin-top:24px}.portal-empty-state{border-block:1px solid var(--border);min-height:240px;color:var(--on-surface-faint);text-align:center;align-content:center;place-items:center;gap:10px;padding:32px;display:grid}.portal-empty-state h2{color:var(--on-surface);font-family:var(--font-display);font-size:22px;font-weight:800}.portal-empty-state p{max-width:480px;font-size:14px;line-height:1.55}.portal-curriculum-layout{grid-template-columns:minmax(0,1fr) 286px;align-items:start;gap:clamp(28px,4vw,48px);margin-top:clamp(34px,5vw,54px);display:grid}.portal-section-heading{border-bottom:1px solid var(--border-strong);justify-content:space-between;align-items:end;gap:20px;padding-bottom:14px;display:flex}.portal-section-heading h2{color:var(--on-surface);font-family:var(--font-display);margin-top:5px;font-size:22px;font-weight:800;line-height:1.25}.portal-section-heading>span{color:var(--on-surface-faint);font-variant-numeric:tabular-nums;font-size:13px}.portal-module-route-list{border-bottom:1px solid var(--border-strong)}.portal-module-route__link{color:inherit;text-decoration:none;display:block}.portal-module-route{border-top:1px solid var(--border);min-height:136px;transition:border-color var(--dur-micro) var(--ease-standard), background-color var(--dur-micro) var(--ease-standard);grid-template-columns:54px minmax(0,1fr) 24px;align-items:center;gap:18px;padding:22px 8px;display:grid}.portal-module-route-list>:first-child .portal-module-route{border-top:0}.portal-module-route.is-active{background:#b7fe020e;border-color:#b7fe0247;margin-inline:-14px;padding-inline:22px}.portal-module-route__number{border:1px solid var(--border-strong);width:46px;height:46px;color:var(--on-surface-faint);font-variant-numeric:tabular-nums;border-radius:50%;place-items:center;font-size:13px;font-weight:800;display:grid}.portal-module-route.is-active .portal-module-route__number,.portal-module-route.is-done .portal-module-route__number{color:var(--accent);background:#b7fe0214;border-color:#b7fe0266}.portal-module-route.is-locked .portal-module-route__number{color:var(--on-surface-faint);background:#f7f9f206}.portal-module-route__content{min-width:0}.portal-module-route__meta{color:var(--on-surface-faint);flex-wrap:wrap;align-items:center;gap:8px;font-size:12px;line-height:16px;display:flex}.portal-module-route__content h3{color:var(--on-surface);font-family:var(--font-display);text-wrap:balance;margin-top:7px;font-size:18px;font-weight:750;line-height:1.3}.portal-module-route__content>p{max-width:720px;color:var(--on-surface-faint);text-wrap:pretty;margin-top:5px;font-size:14px;line-height:1.55}.portal-module-route.is-locked .portal-module-route__content h3{color:var(--on-surface-muted)}.portal-module-route__progress{grid-template-columns:minmax(120px,260px) auto;align-items:center;gap:12px;margin-top:13px;display:grid}.portal-module-route__progress>span{color:var(--on-surface-faint);font-variant-numeric:tabular-nums;font-size:12px}.portal-module-route__arrow{color:var(--on-surface-faint);transition:color var(--dur-micro) var(--ease-standard), transform var(--dur-micro) var(--ease-out-strong)}@media (hover:hover){.portal-module-route__link:hover .portal-module-route{background:#f7f9f209;border-color:#b7fe0247}.portal-module-route__link:hover .portal-module-route__arrow{color:var(--accent);transform:translate(3px)}}.portal-curriculum-summary{border-top:2px solid var(--accent);border-bottom:1px solid var(--border-strong);gap:18px;padding:20px 2px 22px;display:grid;position:sticky;top:28px}.portal-curriculum-summary__score{gap:5px;display:grid}.portal-curriculum-summary__score strong{color:var(--on-surface);font-family:var(--font-display);font-variant-numeric:tabular-nums;font-size:34px;font-weight:800;line-height:1}.portal-curriculum-summary__score span,.portal-curriculum-summary>p:not(.portal-label){color:var(--on-surface-faint);text-wrap:pretty;font-size:13px;line-height:1.55}.portal-curriculum-summary__rule{background:var(--border);height:1px}.portal-pagination{grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;margin-top:24px;display:grid}.portal-pagination>:last-child{justify-self:end}@media (max-width:920px){.portal-curriculum-focus{grid-template-columns:1fr}.portal-curriculum-focus__action{border-top:1px solid #b7fe022e;border-left:0;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px 12px;padding:20px 26px;display:grid}.portal-curriculum-focus__action strong{font-size:26px}.portal-curriculum-focus__action>span{margin-top:0}.portal-curriculum-focus__action .portal-btn{align-self:center;margin-top:0}.portal-curriculum-layout{grid-template-columns:1fr}.portal-curriculum-summary{grid-template-columns:minmax(120px,.45fr) minmax(0,1fr);align-items:center;column-gap:22px;position:static}.portal-curriculum-summary>.portal-label,.portal-curriculum-summary__score,.portal-curriculum-summary>:nth-child(3){grid-column:1}.portal-curriculum-summary__rule,.portal-curriculum-summary>p:not(.portal-label),.portal-curriculum-summary>.portal-btn{grid-column:2}.portal-curriculum-summary__rule{grid-row:1}}@media (max-width:620px){.portal-curriculum-focus{min-height:0}.portal-curriculum-focus__copy{padding:24px 20px}.portal-curriculum-focus__copy h2{margin-top:18px;font-size:25px}.portal-curriculum-focus__action{grid-template-columns:auto minmax(0,1fr);padding:18px 20px 20px}.portal-curriculum-focus__action .portal-btn{grid-column:1/-1;margin-top:6px}.portal-section-heading{align-items:start}.portal-module-route{grid-template-columns:40px minmax(0,1fr) 18px;gap:12px;min-height:0;padding-block:20px}.portal-module-route.is-active{margin-inline:-10px;padding-inline:10px}.portal-module-route__number{width:36px;height:36px}.portal-module-route__progress{grid-template-columns:1fr;gap:6px}.portal-module-route__content h3{font-size:17px}.portal-curriculum-summary{grid-template-columns:1fr;display:grid}.portal-curriculum-summary>*{grid-column:1!important}.portal-curriculum-summary__rule{grid-row:auto}}.portal-module-brief{border:1px solid var(--border-strong);border-radius:var(--radius-lg);background:var(--surface-card);grid-template-columns:minmax(0,1.08fr) minmax(320px,.92fr);gap:18px;padding:18px;display:grid;box-shadow:0 20px 56px #0000002e}.portal-module-brief__copy{flex-direction:column;justify-content:center;min-width:0;padding:clamp(12px,2.4vw,24px);display:flex}.portal-module-brief__copy h2{max-width:620px;color:var(--on-surface);font-family:var(--font-display);text-wrap:balance;margin-top:22px;font-size:clamp(1.55rem,2.8vw,2.05rem);font-weight:800;line-height:1.18}.portal-module-brief__copy>p{max-width:620px;color:var(--on-surface-muted);text-wrap:pretty;margin-top:9px;font-size:15px;line-height:1.6}.portal-module-brief__progress{width:min(100%,520px);margin-top:22px}.portal-module-brief__stats{border-block:1px solid var(--border);grid-template-columns:repeat(3,minmax(0,1fr));margin-top:22px;padding-block:14px;display:grid}.portal-module-brief__stats>div{border-left:1px solid var(--border);gap:2px;padding-inline:14px;display:grid}.portal-module-brief__stats>div:first-child{border-left:0;padding-left:0}.portal-module-brief__stats span{color:var(--on-surface-faint);font-size:12px;line-height:16px}.portal-module-brief__stats strong{color:var(--on-surface);font-variant-numeric:tabular-nums;font-size:18px;line-height:24px}.portal-module-brief__cta{align-self:flex-start;margin-top:22px}.portal-module-brief__complete{color:var(--accent);align-self:flex-start;align-items:center;gap:8px;margin-top:22px;font-size:14px;font-weight:750;display:inline-flex}.portal-module-brief>.portal-module-cover{min-height:338px}.portal-module-sequence{margin-top:clamp(38px,5vw,58px)}.portal-lesson-route-list{border-bottom:1px solid var(--border-strong);list-style:none}.portal-lesson-route-list>li{border-top:1px solid var(--border)}.portal-lesson-route-list>li:first-child{border-top:0}.portal-lesson-route__link{color:inherit;text-decoration:none;display:block}.portal-lesson-route{min-height:124px;transition:border-color var(--dur-micro) var(--ease-standard), background-color var(--dur-micro) var(--ease-standard);grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:18px;padding:20px 8px;display:grid}.portal-lesson-route.is-active{background:#b7fe020e;margin-inline:-14px;padding-inline:22px}.portal-lesson-route__number{border:1px solid var(--border-strong);width:40px;height:40px;color:var(--on-surface-faint);font-variant-numeric:tabular-nums;border-radius:10px;place-items:center;font-size:13px;font-weight:800;display:grid}.portal-lesson-route.is-active .portal-lesson-route__number,.portal-lesson-route.is-done .portal-lesson-route__number{color:var(--accent);background:#b7fe0214;border-color:#b7fe0261}.portal-lesson-route__body{min-width:0}.portal-lesson-route__meta{color:var(--on-surface-faint);flex-wrap:wrap;align-items:center;gap:8px 12px;font-size:12px;line-height:16px;display:flex}.portal-lesson-route__meta>span:not(.portal-pill){align-items:center;gap:5px;display:inline-flex}.portal-lesson-route__body h3{color:var(--on-surface);font-family:var(--font-display);text-wrap:balance;margin-top:8px;font-size:18px;font-weight:750;line-height:1.3}.portal-lesson-route__body>p{max-width:720px;color:var(--on-surface-faint);text-wrap:pretty;margin-top:5px;font-size:14px;line-height:1.55}.portal-lesson-route.is-upcoming .portal-lesson-route__body h3{color:var(--on-surface-muted)}.portal-lesson-route__action{min-height:40px;color:var(--on-surface-faint);align-items:center;gap:7px;font-size:13px;font-weight:750;display:inline-flex}@media (hover:hover){.portal-lesson-route__link:hover .portal-lesson-route{background:#f7f9f209}.portal-lesson-route__link:hover .portal-lesson-route__action{color:var(--accent)}}.portal-module-nav{border-top:1px solid var(--border);grid-template-columns:1fr 1fr;gap:12px;margin-top:34px;padding-top:24px;display:grid}.portal-module-nav>:last-child{justify-self:end}.portal-module-nav .portal-btn{max-width:min(100%,360px)}.portal-module-nav .portal-btn span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}@media (max-width:860px){.portal-module-brief{grid-template-columns:1fr}.portal-module-brief>.portal-module-cover{grid-row:1;min-height:280px}.portal-module-brief__copy{grid-row:2;padding:16px 8px 10px}}@media (max-width:620px){.portal-module-brief{padding:10px}.portal-module-cover{min-height:250px;padding:18px}.portal-module-cover__subject{grid-template-columns:48px minmax(0,1fr);margin-block:22px}.portal-module-cover__icon{width:48px;height:48px}.portal-module-cover__step{padding-inline:8px}.portal-module-brief__stats>div{padding-inline:10px}.portal-module-brief__cta{width:100%}.portal-lesson-route{grid-template-columns:36px minmax(0,1fr);gap:12px;min-height:0;padding-block:20px}.portal-lesson-route.is-active{margin-inline:-10px;padding-inline:10px}.portal-lesson-route__number{width:34px;height:34px}.portal-lesson-route__action{grid-column:2;min-height:32px;margin-top:-4px}.portal-module-nav .portal-btn{min-width:0;padding-inline:12px}}.portal-card{border:1px solid var(--border);border-radius:var(--radius-md);background:linear-gradient(180deg, #f7f9f20b, #f7f9f204), var(--surface-card)}.portal-card--raised{background:linear-gradient(180deg, #f7f9f20f, #f7f9f205), var(--surface-card);border-color:var(--border-strong);border-radius:var(--radius-lg);box-shadow:var(--shadow-soft)}.portal-panel{border:1px solid var(--border);border-radius:var(--radius-sm);background:#f7f9f209}.portal-metric{min-width:0;padding:16px}.portal-metric__value{color:var(--on-surface);font-variant-numeric:tabular-nums;margin-top:10px;font-size:1.55rem;font-weight:800;line-height:1}.portal-metric__detail{color:var(--on-surface-faint);text-wrap:pretty;margin-top:8px;font-size:14px;line-height:1.45}.portal-card--interactive,.portal-panel--interactive{transition:transform var(--dur-micro) var(--ease-standard), border-color var(--dur-micro) var(--ease-standard), background-color var(--dur-micro) var(--ease-standard)}@media (hover:hover){.portal-card--interactive:hover{border-color:#b7fe0252;transform:translateY(-2px)}.portal-panel--interactive:hover{background:#b7fe0209;border-color:#b7fe024d}}.portal-card--interactive:active,.portal-panel--interactive:active{transform:scale(.99)}@media (hover:hover){.portal-answer-choice:hover{border-color:#b7fe028c;translate:0 -2px}}.portal-answer-choice:active{transform:scale(.99)}.portal-skeleton{border-radius:var(--radius-md);background:linear-gradient(90deg, var(--on-surface), var(--on-surface), var(--on-surface));position:relative;overflow:hidden}@supports (color:color-mix(in lab, red, red)){.portal-skeleton{background:linear-gradient(90deg, color-mix(in srgb, var(--on-surface) 5%, transparent), color-mix(in srgb, var(--on-surface) 12%, transparent), color-mix(in srgb, var(--on-surface) 5%, transparent))}}.portal-skeleton{background-size:220% 100%;animation:1.25s ease-in-out infinite portal-skeleton-sweep}@keyframes portal-skeleton-sweep{0%{background-position:110% 0}to{background-position:-110% 0}}.portal-btn{border-radius:var(--radius-sm);min-height:44px;color:var(--accent-fg);background:var(--accent);letter-spacing:0;transition:transform var(--dur-micro) var(--ease-standard), border-color var(--dur-micro) var(--ease-standard), background-color var(--dur-micro) var(--ease-standard), color var(--dur-micro) var(--ease-standard), opacity var(--dur-micro) var(--ease-standard);border:1px solid #0000;justify-content:center;align-items:center;gap:9px;padding-inline:16px;font-size:14px;font-weight:750;line-height:20px;text-decoration:none;display:inline-flex;box-shadow:0 10px 24px #b7fe0226}@media (hover:hover){.portal-btn:not(:disabled):hover{transform:translateY(-1px)}}.portal-btn:not(:disabled):active{transform:scale(.96)}.portal-btn:disabled{box-shadow:none}.portal-nav-link{color:var(--on-surface-faint);transition:color var(--dur-micro) var(--ease-standard), background-color var(--dur-micro) var(--ease-standard), border-color var(--dur-micro) var(--ease-standard);background:0 0;border:1px solid #0000}@media (hover:hover){.portal-nav-link:hover{color:var(--on-surface);background:#f7f9f20d}}.portal-nav-link--active{color:var(--accent);background:#b7fe021a;border-color:#b7fe022e}@media (hover:hover){.portal-nav-link--active:hover{background:#b7fe0224}}.portal-utility-link{color:var(--on-surface-faint);transition:color var(--dur-micro) var(--ease-standard), background-color var(--dur-micro) var(--ease-standard);background:0 0}.portal-utility-link--active{color:var(--accent);background:#b7fe0214}@media (hover:hover){.portal-utility-link:hover{color:var(--on-surface);background:#f7f9f20a}.portal-utility-link--active:hover{color:var(--accent);background:#b7fe021c}}.portal-btn--ghost{color:var(--on-surface);border-color:var(--border);box-shadow:none;background:0 0}.portal-btn--ghost:hover{color:var(--accent);background:#b7fe020d;border-color:#b7fe0273}.portal-label{color:var(--on-surface-faint);letter-spacing:.04em;text-transform:uppercase;font-size:12px;font-weight:750;line-height:16px}.portal-pill{border:1px solid var(--border);min-height:28px;color:var(--on-surface-muted);background:#f7f9f209;border-radius:999px;align-items:center;gap:7px;padding-inline:10px;font-size:12px;font-weight:700;line-height:16px;display:inline-flex}a.portal-pill,button.portal-pill{min-height:44px;padding-inline:14px}.portal-input{border:1px solid var(--control-border);border-radius:var(--radius-sm);width:100%;min-height:48px;color:var(--on-surface);transition:border-color var(--dur-micro) var(--ease-standard), background-color var(--dur-micro) var(--ease-standard);background:#f7f9f20b;padding:0 16px}.portal-input:focus{border-color:var(--accent);background:#f7f9f211}.portal-shell-topbar{z-index:30;border-bottom:1px solid var(--border);background:var(--surface);justify-content:space-between;align-items:center;min-height:64px;padding-inline:clamp(18px,4vw,40px);display:flex;position:sticky;top:0}@supports (color:color-mix(in lab, red, red)){.portal-shell-topbar{background:color-mix(in srgb, var(--surface) 84%, transparent)}}.portal-shell-topbar{-webkit-backdrop-filter:blur(16px)}.portal-container--lesson{width:min(980px,100% - 48px)}.portal-lesson-back-link{min-width:0;max-width:min(52vw,420px);min-height:40px}.portal-lesson-back-link span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.portal-lesson-notice{color:var(--error);margin-left:auto;font-size:13px;line-height:18px}.portal-lesson-head{max-width:850px;margin-inline:auto;padding-block:8px 28px}.portal-lesson-head h1{max-width:820px;color:var(--on-surface);font-family:var(--font-display);text-wrap:balance;margin-top:14px;font-size:38px;font-weight:800;line-height:1.13}.portal-lesson-head__meta{color:var(--on-surface-faint);flex-wrap:wrap;align-items:center;gap:8px 16px;margin-top:16px;font-size:13px;line-height:18px;display:flex}.portal-lesson-head__meta span{align-items:center;gap:5px;display:inline-flex}.portal-lesson-head__meta .is-complete{color:var(--accent)}.portal-lesson-outcome{border-left:3px solid var(--info);max-width:760px;color:var(--on-surface-muted);text-wrap:pretty;margin-top:24px;padding:4px 0 4px 16px;font-size:15px;line-height:1.6}.portal-lesson-outcome strong{color:var(--on-surface)}.portal-lesson-modebar{border-block:1px solid var(--border);justify-content:space-between;align-items:center;gap:18px;max-width:850px;margin:0 auto 18px;padding-block:12px;display:flex}.portal-lesson-modebar__options{border:1px solid var(--border-strong);background:#f7f9f206;border-radius:10px;min-width:0;padding:3px;display:inline-flex;overflow-x:auto}.portal-learning-mode{min-height:40px;color:var(--on-surface-faint);white-space:nowrap;border-radius:7px;align-items:center;gap:7px;padding:7px 12px;font-size:13px;font-weight:750;display:inline-flex}.portal-learning-mode small{color:inherit;font-size:12px;font-weight:500}.portal-learning-mode.is-active{color:var(--accent-fg);background:var(--accent)}.portal-lesson-single-format{border-block:1px solid var(--border);max-width:850px;min-height:44px;color:var(--on-surface-muted);align-items:center;gap:8px;margin:0 auto 18px;font-size:13px;display:flex}.portal-lesson-single-format span{font-weight:750}.portal-lesson-single-format small{color:var(--on-surface-faint);font-size:12px}.portal-lesson-content{max-width:850px;margin-inline:auto}.portal-lesson-reader{border:1px solid var(--border-strong);border-radius:var(--radius-lg);background:var(--surface-card);padding:38px;box-shadow:0 20px 56px #00000029}.portal-lesson-media{border:1px solid var(--border-strong);border-radius:var(--radius-lg);background:var(--surface-card);overflow:hidden;box-shadow:0 20px 56px #00000029}.portal-lesson-media video{aspect-ratio:16/9;background:#080c03;width:100%;display:block}.portal-lesson-media__alternative{border-top:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:14px 18px;display:flex}.portal-lesson-media__alternative p{color:var(--on-surface-faint);font-size:13px}.portal-lesson-audio{border:1px solid var(--border-strong);border-radius:var(--radius-lg);background:var(--surface-card);gap:22px;padding:30px;display:grid;box-shadow:0 20px 56px #00000029}.portal-lesson-audio>div{color:var(--accent);grid-template-columns:44px minmax(0,1fr);align-items:center;gap:14px;display:grid}.portal-lesson-audio>div>div{gap:2px;min-width:0;display:grid}.portal-lesson-audio span{color:var(--on-surface-faint);font-size:12px}.portal-lesson-audio strong{color:var(--on-surface);font-size:18px;line-height:1.3}.portal-lesson-audio audio{width:100%}.portal-lesson-audio .portal-btn{justify-self:start}.portal-execution-set{max-width:850px;margin:48px auto 0}.portal-execution-set .portal-label{align-items:center;gap:6px;display:inline-flex}.portal-execution-set__steps{gap:10px;margin-top:18px;display:grid}.portal-lesson-finish{border-block:1px solid var(--border-strong);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:28px;max-width:850px;margin:48px auto 0;padding-block:28px;display:grid}.portal-lesson-finish.is-complete{border-top-color:#b7fe0273}.portal-lesson-finish h2{color:var(--on-surface);font-family:var(--font-display);margin-top:6px;font-size:23px;font-weight:800;line-height:1.25}.portal-lesson-finish p:not(.portal-label){max-width:600px;color:var(--on-surface-faint);text-wrap:pretty;margin-top:6px;font-size:14px;line-height:1.55}.portal-lesson-finish__actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;display:flex}.portal-instructor{border-bottom:1px solid var(--border);max-width:850px;margin:26px auto 0;padding-bottom:18px}.portal-instructor summary{cursor:pointer;min-height:44px;color:var(--on-surface-faint);justify-content:space-between;align-items:center;gap:16px;font-size:13px;list-style:none;display:flex}.portal-instructor summary::-webkit-details-marker{display:none}.portal-instructor summary strong{color:var(--on-surface-muted);font-weight:700}.portal-instructor>p{max-width:620px;color:var(--on-surface-faint);padding-top:10px;font-size:14px;line-height:1.6}.portal-lesson-nav{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:14px;max-width:850px;margin:24px auto 0;display:grid}.portal-lesson-nav>:last-child{justify-self:end}.portal-lesson-nav .portal-btn:first-child{justify-self:start;min-width:0;max-width:min(100%,420px)}.portal-lesson-nav .portal-btn span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}@media (max-width:767px){.portal-shell-topbar{padding-left:72px;padding-right:14px}.portal-lesson-back-link{max-width:calc(100vw - 150px)}.portal-lesson-head h1{font-size:30px}.portal-lesson-modebar{flex-direction:column;align-items:flex-start;gap:8px}.portal-lesson-modebar__options{width:100%}.portal-learning-mode{flex:1 0 auto;justify-content:center}.portal-lesson-reader,.portal-lesson-audio{padding:24px 20px}.portal-lesson-finish{grid-template-columns:1fr}.portal-lesson-finish__actions{justify-content:flex-start}}@media (max-width:480px){.portal-lesson-head{padding-top:2px}.portal-learning-mode small{display:none}.portal-lesson-reader{border-radius:12px;margin-inline:-8px;padding:22px 18px}.portal-lesson-finish__actions .portal-btn{width:100%}.portal-instructor summary{flex-direction:column;align-items:flex-start;gap:2px;padding-block:8px}.portal-lesson-nav{grid-template-columns:1fr}.portal-lesson-nav>:last-child{justify-self:start}}.portal-resource-empty{border:1px solid var(--border-strong);border-radius:var(--radius-lg);background:var(--surface-card);grid-template-columns:64px minmax(0,1fr) auto;align-items:center;gap:22px;min-height:190px;padding:clamp(24px,4vw,36px);display:grid;box-shadow:0 20px 56px #00000029}.portal-resource-empty__icon{width:58px;height:58px;color:var(--info);background:#9fd9ff14;border:1px solid #9fd9ff52;border-radius:14px;place-items:center;display:grid}.portal-resource-empty h2{color:var(--on-surface);font-family:var(--font-display);text-wrap:balance;margin-top:6px;font-size:24px;font-weight:800;line-height:1.25}.portal-resource-empty p:not(.portal-label){max-width:650px;color:var(--on-surface-faint);text-wrap:pretty;margin-top:6px;font-size:14px;line-height:1.55}.portal-resource-categories{margin-top:clamp(38px,5vw,54px)}.portal-settings-section{border-top:1px solid var(--border-strong);padding-block:28px}.portal-settings-section:last-child{border-bottom:1px solid var(--border-strong)}.portal-settings-section__head{max-width:680px;margin-bottom:24px}.portal-settings-section__head h2{color:var(--on-surface);font-family:var(--font-display);text-wrap:balance;margin-top:7px;font-size:23px;font-weight:800;line-height:1.25}.portal-settings-section__head>p:not(.portal-label){color:var(--on-surface-faint);text-wrap:pretty;margin-top:7px;font-size:14px;line-height:1.55}.portal-settings-account-row{border-block:1px solid var(--border);grid-template-columns:190px minmax(0,1fr);align-items:center;gap:18px;padding-block:15px;display:grid}.portal-settings-account-row span{color:var(--on-surface-faint);font-size:13px}.portal-settings-account-row strong{overflow-wrap:anywhere;color:var(--on-surface);font-size:14px;font-weight:650}.portal-settings-password{grid-template-columns:190px minmax(0,1fr);gap:12px 18px;margin-top:22px;display:grid}.portal-settings-password>div:first-child{grid-row:1/span 4}.portal-settings-password>div:first-child label{color:var(--on-surface);font-size:14px;font-weight:750}.portal-settings-password>div:first-child p{color:var(--on-surface-faint);margin-top:4px;font-size:12px;line-height:1.5}.portal-settings-password>:not(:first-child){grid-column:2}.portal-settings-password ul{margin-top:0!important}.portal-settings-password>div:last-child{margin-top:2px!important}.portal-settings-preference-list{border-bottom:1px solid var(--border)}.portal-settings-access-link{border-block:1px solid var(--border-strong);min-height:86px;color:var(--on-surface);transition:color var(--dur-micro) var(--ease-standard), border-color var(--dur-micro) var(--ease-standard);grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:14px;padding:16px 2px;text-decoration:none;display:grid}.portal-settings-access-link__icon{border:1px solid var(--border-strong);width:40px;height:40px;color:var(--accent);background:#b7fe020f;border-radius:10px;place-items:center;display:grid}.portal-settings-access-link>span:nth-child(2){gap:3px;display:grid}.portal-settings-access-link strong{font-size:14px;font-weight:750}.portal-settings-access-link small{color:var(--on-surface-faint);font-size:13px;line-height:1.45}@media (hover:hover){.portal-settings-access-link:hover{color:var(--accent);border-color:#b7fe0257}}.portal-settings-toggle-row{border-top:1px solid var(--border);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:18px;min-height:94px;padding:16px 2px;display:grid}.portal-settings-toggle-row strong{color:var(--on-surface);font-size:14px;font-weight:750}.portal-settings-toggle-row p{max-width:540px;color:var(--on-surface-faint);text-wrap:pretty;margin-top:3px;font-size:13px;line-height:1.5}.portal-switch-control{cursor:pointer;min-height:44px;color:var(--on-surface-muted);align-items:center;gap:9px;font-size:13px;font-weight:650;display:inline-flex}.portal-switch-control input{width:19px;height:19px;accent-color:var(--accent)}.portal-switch-control--standalone{margin-bottom:16px}@media (max-width:620px){.portal-settings-account-row,.portal-settings-password{grid-template-columns:1fr}.portal-settings-password>div:first-child{grid-row:auto}.portal-settings-password>:not(:first-child){grid-column:1}.portal-settings-password ul{grid-template-columns:1fr}.portal-settings-toggle-row{grid-template-columns:1fr;gap:10px}.portal-settings-toggle-row>[role=group]{justify-self:start}}.portal-resource-category-list{border-bottom:1px solid var(--border-strong)}.portal-resource-category{border-top:1px solid var(--border);grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:16px;min-height:112px;padding:18px 8px;display:grid}.portal-resource-category:first-child{border-top:0}.portal-resource-category>div{min-width:0}.portal-resource-category h3{color:var(--on-surface);font-family:var(--font-display);font-size:17px;font-weight:750;line-height:1.3}.portal-resource-category p{max-width:760px;color:var(--on-surface-faint);text-wrap:pretty;margin-top:4px;font-size:14px;line-height:1.5}@media (max-width:720px){.portal-resource-empty{grid-template-columns:54px minmax(0,1fr)}.portal-resource-empty .portal-btn{grid-column:1/-1;width:100%}.portal-resource-category{grid-template-columns:42px minmax(0,1fr)}.portal-resource-category>.portal-pill{grid-column:2;justify-self:start}}.portal-resource-hero{border:1px solid var(--border-strong);border-radius:var(--radius-2xl);background:radial-gradient(circle at 84% 12%, #b7fe0224, transparent 22rem), radial-gradient(circle at 18% 90%, #9fd9ff14, transparent 18rem), linear-gradient(180deg, #f7f9f20f, #f7f9f205), var(--surface-card);box-shadow:var(--shadow-soft);grid-template-columns:minmax(0,1fr) minmax(220px,320px);align-items:end;gap:28px;margin-bottom:24px;padding:clamp(24px,4vw,38px);display:grid}.portal-resource-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.portal-resource-stats>div{border:1px solid var(--border);border-radius:var(--radius-lg);background:#f7f9f20a;min-height:118px;padding:18px}.portal-resource-stats p{color:var(--accent);font-size:2.35rem;font-weight:850;line-height:1}.portal-resource-stats span{color:var(--on-surface-faint);letter-spacing:.09em;text-transform:uppercase;margin-top:10px;font-size:12px;font-weight:750;display:block}.portal-resource-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}.portal-resource-card{border:1px solid var(--border);border-radius:var(--radius-xl);background:linear-gradient(180deg, #f7f9f20b, #f7f9f204), var(--surface-card);min-height:100%;padding:22px}.portal-resource-card__top{justify-content:space-between;align-items:center;gap:14px;margin-bottom:22px;display:flex}.portal-resource-icon{border:1px solid var(--border);background:#f7f9f209;border-radius:15px;flex:none;justify-content:center;align-items:center;width:44px;height:44px;display:inline-flex}.portal-resource-card h2{color:var(--on-surface);font-size:1.2rem;font-weight:850}.portal-resource-card p{color:var(--on-surface-faint);margin-top:10px;font-size:.86rem;line-height:1.65}.portal-resource-list{gap:9px;margin-top:20px;display:grid}.portal-resource-item{border:1px solid var(--border);background:#f7f9f207;border-radius:14px;grid-template-columns:26px minmax(0,1fr);align-items:start;gap:10px;padding:12px;display:grid}.portal-resource-item__mark{width:24px;height:24px;color:var(--accent);background:#b7fe0213;border-radius:8px;justify-content:center;align-items:center;display:inline-flex}.portal-resource-item strong{color:var(--on-surface);font-size:.82rem;font-weight:800;line-height:1.35;display:block}.portal-resource-item span:not(.portal-resource-item__mark){color:var(--on-surface-faint);margin-top:4px;font-size:12px;display:block}.auth-shell{background:var(--surface);grid-template-columns:minmax(420px,.82fr) minmax(0,1.18fr);min-width:0;min-height:100dvh;display:grid;overflow-x:hidden}.auth-form-wrap{background:var(--surface);justify-content:center;align-items:center;width:100%;min-width:0;padding:clamp(40px,7vh,72px) clamp(28px,5vw,64px);display:flex}.auth-form-stack,.auth-card{width:100%;max-width:440px}.auth-form-header{margin-bottom:30px}.auth-wordmark{color:var(--on-surface);align-items:center;gap:9px;margin-bottom:44px;display:flex}.auth-wordmark__mark{width:34px;height:34px;color:var(--accent);background:#b7fe0214;border:1px solid #b7fe0247;border-radius:8px;place-items:center;display:grid}.auth-wordmark__name{font-family:var(--font-display), sans-serif;font-size:18px;font-weight:800;line-height:1}.auth-wordmark__product{border-left:1px solid var(--border);min-width:0;color:var(--on-surface-faint);margin-left:2px;padding-left:11px;font-size:12px;font-weight:700;line-height:20px}.auth-form-header h1{max-width:12ch;color:var(--on-surface);font-family:var(--font-display), sans-serif;letter-spacing:0;font-size:clamp(2rem,3.4vw,2.65rem);font-weight:780;line-height:1.08}.auth-form-header>p{max-width:42ch;color:var(--on-surface-muted);margin-top:11px;font-size:15px;line-height:1.65}.auth-field{gap:8px;margin-bottom:18px;display:grid}.auth-field__label,.auth-label-row label{color:var(--on-surface);font-size:13px;font-weight:700;line-height:1.3}.auth-label-row{justify-content:space-between;align-items:center;gap:16px;display:flex}.auth-label-row a,.auth-inline-link{min-height:44px;color:var(--accent);align-items:center;padding-inline:3px;font-size:13px;font-weight:700;line-height:1.25;text-decoration:none;display:inline-flex}.auth-label-row a:hover,.auth-inline-link:hover{text-underline-offset:3px;text-decoration:underline}.auth-input-wrap{position:relative}.auth-input-wrap>svg:first-child{z-index:1;color:var(--on-surface-faint);pointer-events:none;position:absolute;top:50%;left:15px;transform:translateY(-50%)}.auth-input-wrap .portal-input{border-color:var(--control-border);background:var(--surface-raised);min-height:52px;padding-left:44px;padding-right:16px;font-size:15px}.auth-password-toggle{width:48px;height:48px;color:var(--on-surface-faint);place-items:center;display:grid;position:absolute;top:50%;right:0;transform:translateY(-50%)}.auth-password-toggle:hover{color:var(--on-surface)}.auth-help{color:var(--on-surface-faint);margin-top:-7px;font-size:13px;line-height:1.55}.auth-strength{align-items:center;gap:10px;margin-top:-3px;display:flex}.auth-strength__segments{flex:1;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;min-width:0;display:grid}.auth-strength__segments span{height:4px;transition:background-color var(--dur-micro) var(--ease-standard);border-radius:999px}.auth-strength>span{text-align:right;min-width:68px;font-size:12px;font-weight:750;line-height:1.3}.auth-password-rules{color:var(--on-surface-faint);grid-template-columns:repeat(2,minmax(0,1fr));gap:7px 14px;margin-top:14px;list-style:none;display:grid}.auth-password-rules li{align-items:center;gap:7px;min-width:0;font-size:12px;line-height:1.35;display:flex}.auth-password-rules li>span{border:1px solid var(--control-border);border-radius:999px;flex:0 0 16px;place-items:center;width:16px;height:16px;display:grid}.auth-password-rules li.is-passed{color:var(--on-surface)}.auth-password-rules li.is-passed>span{border-color:var(--accent);color:var(--accent-fg);background:var(--accent)}.auth-turnstile{min-height:65px;margin-top:6px;overflow:hidden}.auth-security-note{color:var(--on-surface-faint);align-items:center;gap:7px;margin-top:8px;font-size:12px;line-height:1.4;display:flex}.auth-submit{justify-content:center;width:100%;min-height:50px;margin-top:20px;font-size:14px}.auth-form-footer{color:var(--on-surface-muted);text-align:center;margin-top:24px;font-size:14px;line-height:1.5}.auth-success{padding:22px 0 4px}.auth-success__icon{width:50px;height:50px;color:var(--accent);background:#b7fe0214;border:1px solid #b7fe0252;border-radius:12px;place-items:center;margin-bottom:22px;display:grid}.auth-success h1{color:var(--on-surface);font-family:var(--font-display), sans-serif;letter-spacing:0;font-size:28px;font-weight:780;line-height:1.15}.auth-success p{color:var(--on-surface-muted);margin-top:10px;font-size:14px;line-height:1.65}.auth-mobile-context{display:none}.auth-showcase{border-left:1px solid var(--border);background:#141b08;flex-direction:column;justify-content:center;min-width:0;min-height:100dvh;padding:clamp(48px,6vw,88px);display:flex;position:relative;overflow:hidden}.auth-showcase:before{content:"";opacity:.45;pointer-events:none;background-image:linear-gradient(#f7f9f209 1px,#0000 1px),linear-gradient(90deg,#f7f9f209 1px,#0000 1px);background-size:40px 40px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000,#0000 86%);mask-image:linear-gradient(#000,#0000 86%)}.auth-showcase__copy,.auth-course-preview,.auth-companion-intro{z-index:1;position:relative}.auth-showcase__copy{width:min(650px,100%);margin:0 auto 34px}.auth-showcase__eyebrow{color:var(--accent);align-items:center;gap:8px;font-size:12px;font-weight:750;line-height:1.3;display:inline-flex}.auth-showcase__copy h2{max-width:14ch;color:var(--on-surface);font-family:var(--font-display), sans-serif;letter-spacing:0;margin-top:16px;font-size:clamp(2.25rem,4.6vw,4.7rem);font-weight:790;line-height:1.02}.auth-showcase__copy>p{color:#f7f9f2ad;max-width:56ch;margin-top:16px;font-size:15px;line-height:1.65}.auth-course-preview{background:#0d1205;border:1px solid #f7f9f229;border-radius:12px;width:min(650px,100%);margin:0 auto;overflow:hidden;box-shadow:0 24px 70px #00000052}.auth-course-preview__topbar{color:#f7f9f294;border-bottom:1px solid #f7f9f21a;justify-content:space-between;align-items:center;gap:16px;min-height:46px;padding:0 18px;font-size:12px;font-weight:700;display:flex}.auth-course-preview__body{padding:clamp(20px,3vw,30px)}.auth-course-preview__heading>span{color:#9fd9ff;font-size:12px;font-weight:750}.auth-course-preview__heading h3{color:var(--on-surface);font-family:var(--font-display), sans-serif;letter-spacing:0;margin-top:7px;font-size:clamp(1.45rem,2.4vw,2rem);font-weight:760;line-height:1.15}.auth-course-preview__heading p{color:#f7f9f294;margin-top:6px;font-size:13px;line-height:1.55}.auth-course-preview__lessons{gap:0;margin-top:22px;list-style:none;display:grid}.auth-course-preview__lessons li{color:#f7f9f28c;border-top:1px solid #f7f9f214;grid-template-columns:34px minmax(0,1fr);align-items:center;gap:12px;min-height:58px;display:grid}.auth-course-preview__lessons li.is-current{color:var(--on-surface)}.auth-course-preview__status{border:1px solid #f7f9f22e;border-radius:8px;place-items:center;width:28px;height:28px;font-size:12px;font-weight:800;display:grid}.auth-course-preview__lessons .is-complete .auth-course-preview__status{color:var(--accent);background:#b7fe0214;border-color:#b7fe0261}.auth-course-preview__lessons .is-current .auth-course-preview__status{border-color:var(--accent);color:var(--accent-fg);background:var(--accent)}.auth-course-preview__lessons strong,.auth-course-preview__lessons small{display:block}.auth-course-preview__lessons strong{overflow-wrap:anywhere;font-size:13px;font-weight:720;line-height:1.35}.auth-course-preview__lessons small{color:#f7f9f26b;margin-top:2px;font-size:12px;line-height:1.3}.auth-course-preview__action{min-height:40px;color:var(--accent-fg);background:var(--accent);border-radius:8px;align-items:center;gap:8px;margin-top:20px;padding:0 14px;font-size:12px;font-weight:800;display:inline-flex}.auth-companion-intro{pointer-events:none;justify-content:flex-end;align-items:flex-end;gap:4px;width:min(650px,100%);margin:-66px auto -38px;padding-right:12px;display:flex}.auth-companion-intro img{filter:drop-shadow(0 18px 28px #00000057);width:clamp(170px,17vw,240px);height:auto}.auth-companion-intro__bubble{color:#101604;background:#f4f1e8;border:1px solid #10160438;border-radius:10px 10px 2px;gap:3px;width:min(225px,36%);margin-bottom:78px;padding:12px 14px;display:grid;box-shadow:0 12px 32px #00000038}.auth-companion-intro__bubble strong{font-size:13px;line-height:1.3}.auth-companion-intro__bubble span{color:#101604ad;font-size:12px;line-height:1.4}.portal-onboarding-complete{background:#b7fe020b;border:1px solid #b7fe0247;border-radius:8px;grid-template-columns:minmax(0,1fr) 176px;align-items:center;gap:24px;min-width:0;margin-bottom:42px;padding:22px 24px;display:grid;overflow:hidden}.portal-onboarding-complete img{object-fit:contain;filter:drop-shadow(0 14px 24px #00000047);width:176px;height:176px;margin:-18px 0 -26px}.portal-onboarding-note{color:var(--on-surface-faint);align-items:center;gap:8px;font-size:12px;font-weight:650;line-height:1.4;display:flex}@media (max-width:900px){.portal-container,.portal-container--narrow{width:min(100% - 32px,720px);padding-top:72px;padding-bottom:40px}.portal-pagehead{grid-template-columns:1fr;align-items:start}.portal-pagehead__action{justify-content:flex-start}.portal-continue-stage,.portal-overview-command-layout{grid-template-columns:1fr}.portal-overview-continue{min-height:430px}.portal-companion-home{border-radius:0 0 var(--radius-lg) var(--radius-lg);border-top:1px solid #10160424;border-left:0;grid-template-rows:auto 1fr;grid-template-columns:minmax(0,1fr) minmax(180px,.72fr);gap:0 18px}.portal-companion-home__topline,.portal-companion-home>p{grid-column:1}.portal-companion-home__stage{grid-area:1/2/span 2}.portal-resource-hero,.portal-resource-grid,.auth-shell{grid-template-columns:1fr}.auth-form-wrap{min-height:100dvh;padding:30px 24px 48px}.auth-showcase{display:none}.auth-mobile-context{border-bottom:1px solid var(--border);align-items:center;gap:12px;margin-bottom:30px;padding-bottom:18px;display:flex}.auth-mobile-context img{flex:none;width:54px;height:54px}.auth-mobile-context p,.auth-mobile-context strong,.auth-mobile-context span{display:block}.auth-mobile-context strong{color:var(--on-surface);font-size:13px;line-height:1.35}.auth-mobile-context span{color:var(--on-surface-faint);margin-top:2px;font-size:12px;line-height:1.4}.auth-wordmark{margin-bottom:34px}}@media (max-width:560px){.auth-form-wrap{align-items:flex-start;padding-inline:20px}.auth-form-header h1{font-size:2rem}.auth-form-header>p{font-size:14px}.auth-wordmark__product{display:none}.auth-password-rules{grid-template-columns:1fr}.portal-onboarding-complete{grid-template-columns:minmax(0,1fr) 112px;gap:8px;padding:20px}.portal-onboarding-complete img{width:120px;height:120px;margin:-10px -12px -18px 0}.portal-stage-stats{grid-template-columns:1fr;gap:10px}.portal-stage-stats>div,.portal-stage-stats>div:first-child{border:0;grid-template-columns:minmax(0,1fr) auto;align-items:center;padding:0}.portal-companion-home{grid-template-rows:auto minmax(164px,1fr) auto;grid-template-columns:1fr}.portal-companion-home__topline,.portal-companion-home__stage,.portal-companion-home>p{grid-area:auto/1}.portal-route-note{grid-template-columns:32px minmax(0,1fr)}.portal-route-note a{grid-column:2;justify-self:start}}@media (max-width:340px){.auth-turnstile>*{transform-origin:0 0;transform:scale(.9)}}.portal-reveal{animation:portal-reveal var(--dur-state) var(--ease-out-strong) both}@keyframes portal-reveal{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}html[data-motion=reduced] *,html[data-motion=reduced] :before,html[data-motion=reduced] :after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}html[data-motion=reduced] .portal-skeleton{animation:none}@media (prefers-reduced-motion:reduce){html:not([data-motion=full]) *,html:not([data-motion=full]) :before,html:not([data-motion=full]) :after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}html:not([data-motion=full]) .portal-skeleton{animation:none}}.portal-route-content{animation:portal-route-enter var(--dur-micro) var(--ease-out-strong) both}@keyframes portal-route-enter{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}.portal-mobile-backdrop{opacity:0;transition:opacity var(--dur-state) var(--ease-standard);background:#0000008f;position:absolute;inset:0}.portal-mobile-backdrop.is-open{opacity:1}.portal-mobile-drawer{transition:transform var(--dur-state) var(--ease-out-strong);transform:translate(-100%)}.portal-mobile-drawer.is-open{transform:none}.portal-preview-shell{--portal-mobile-trigger-top:64px}@starting-style{.portal-mobile-backdrop.is-open{opacity:0}.portal-mobile-drawer.is-open{transform:translate(-100%)}}.portal-toast-region{z-index:200;width:min(380px,100vw - 40px);position:fixed;top:20px;right:20px}.portal-toast{opacity:1;transition:opacity var(--dur-state) var(--ease-out-strong), transform var(--dur-state) var(--ease-out-strong);align-items:center;gap:12px;padding:12px 12px 12px 14px;display:flex;transform:none}.portal-toast--exit{opacity:0;transition-duration:var(--dur-micro);transform:translateY(-4px)}@starting-style{.portal-toast{opacity:0;transform:translateY(-6px)}}.portal-toast__icon{width:34px;height:34px;color:var(--accent);background:#b7fe021a;border:1px solid #b7fe0247;border-radius:10px;flex:0 0 34px;justify-content:center;align-items:center;display:inline-flex}.portal-pet{--portal-pet-size:100px;--portal-pet-x:0px;--portal-pet-travel-ms:1.8s;right:18px;bottom:max(10px, env(safe-area-inset-bottom));z-index:35;pointer-events:none;opacity:0;width:clamp(300px,30vw,430px);height:150px;transition:opacity var(--dur-micro) var(--ease-standard), transform var(--dur-micro) var(--ease-standard);position:fixed;transform:translateY(0)}.portal-pet.is-track-ready{opacity:1}.portal-pet__bubble{top:auto;right:0;bottom:calc(var(--portal-pet-size) - 2px);z-index:4;border:1px solid var(--border-strong);max-width:176px;color:var(--on-surface);background:var(--surface-raised);border-radius:10px;padding:8px 10px;position:absolute}@supports (color:color-mix(in lab, red, red)){.portal-pet__bubble{background:color-mix(in srgb, var(--surface-raised) 94%, transparent)}}.portal-pet__bubble{opacity:0;transform-origin:100% 100%;transition:opacity var(--dur-micro) var(--ease-standard), transform var(--dur-micro) var(--ease-standard);font-size:12px;font-weight:650;line-height:16px;transform:translateY(4px)scale(.98);box-shadow:0 12px 34px #0307013d}.portal-pet__bubble:after{content:"";border-right:1px solid var(--border-strong);border-bottom:1px solid var(--border-strong);background:var(--surface-raised);width:9px;height:9px;position:absolute;bottom:-5px;right:18px}@supports (color:color-mix(in lab, red, red)){.portal-pet__bubble:after{background:color-mix(in srgb, var(--surface-raised) 94%, transparent)}}.portal-pet__bubble:after{transform:rotate(45deg)}.portal-pet__bubble.is-visible{opacity:1;transform:none}.portal-pet.has-tray .portal-pet__bubble{opacity:0;transform:translateY(4px)scale(.98)}.portal-pet__tray{right:0;bottom:calc(var(--portal-pet-size) - 2px);border:1px solid var(--border-strong);border-radius:var(--radius-sm);width:min(286px,100vw - 24px);color:var(--on-surface);background:var(--surface-raised);position:absolute;overflow:hidden}@supports (color:color-mix(in lab, red, red)){.portal-pet__tray{background:color-mix(in srgb, var(--surface-raised) 98%, transparent)}}.portal-pet__tray{pointer-events:auto;box-shadow:0 24px 64px #03070161,0 2px 8px #03070138}.portal-pet__tray-header{justify-content:space-between;align-items:center;gap:12px;min-height:64px;padding:10px 10px 10px 14px;display:flex}.portal-pet__tray-header>div{gap:2px;min-width:0;display:grid}.portal-pet__tray-header strong{font-family:var(--font-display);text-overflow:ellipsis;white-space:nowrap;font-size:16px;line-height:20px;overflow:hidden}.portal-pet__tray-kicker{color:var(--accent);text-transform:uppercase;font-size:12px;font-weight:750;line-height:16px}.portal-pet__tray-note{max-width:24ch;color:var(--on-surface-faint);margin-top:3px;font-size:.72rem;font-weight:600;line-height:1.35;display:block}.portal-pet__progress{border-top:1px solid var(--border);color:var(--info);background:#9fd9ff0b;grid-template-columns:30px minmax(0,1fr);align-items:center;gap:9px;padding:10px 14px;display:grid}.portal-pet__progress>div{gap:1px;min-width:0;display:grid}.portal-pet__progress strong{color:var(--on-surface);font-size:13px;line-height:18px}.portal-pet__progress span{color:var(--on-surface-faint);font-size:12px;line-height:16px}.portal-pet__tray-close{width:40px;height:40px;color:var(--on-surface-muted);cursor:pointer;transition:color var(--dur-micro) var(--ease-standard), background-color var(--dur-micro) var(--ease-standard), transform var(--dur-micro) var(--ease-standard);background:0 0;border:0;border-radius:50%;flex:0 0 40px;place-items:center;display:grid}.portal-pet__tray-close:hover{color:var(--on-surface);background:#f7f9f212}.portal-pet__tray-close:active{transform:scale(.96)}.portal-pet__actions{border-top:1px solid var(--border);gap:2px;padding:6px;display:grid}.portal-pet__action{min-height:44px;color:var(--on-surface-muted);transition:color var(--dur-micro) var(--ease-standard), background-color var(--dur-micro) var(--ease-standard);border-radius:4px;grid-template-columns:34px minmax(0,1fr) 24px;align-items:center;gap:8px;padding:4px 8px 4px 6px;font-size:13px;font-weight:700;line-height:18px;text-decoration:none;display:grid}.portal-pet__action:hover,.portal-pet__action:focus-visible{color:var(--on-surface);background:#f7f9f20f}.portal-pet__action.is-primary{color:var(--on-surface);background:#b7fe021a}.portal-pet__action-icon{width:34px;height:34px;color:var(--on-surface-muted);background:#f7f9f20e;border-radius:6px;place-items:center;display:grid}.portal-pet__action.is-primary .portal-pet__action-icon{color:var(--accent);background:#b7fe021f}.portal-pet__action-arrow{opacity:.58;transition:opacity var(--dur-micro) var(--ease-standard), transform var(--dur-micro) var(--ease-standard);justify-self:end;transform:translate(0)}.portal-pet__action:hover .portal-pet__action-arrow,.portal-pet__action:focus-visible .portal-pet__action-arrow{opacity:1;transform:translate(2px)}.portal-pet__walker{width:var(--portal-pet-size);height:var(--portal-pet-size);pointer-events:auto;transform:translate3d(var(--portal-pet-x), 0, 0);will-change:transform;position:absolute;bottom:0;left:0}.portal-pet.is-track-ready .portal-pet__walker{transition:transform var(--portal-pet-travel-ms) linear}.portal-pet__button{width:var(--portal-pet-size);height:var(--portal-pet-size);color:inherit;cursor:pointer;transition:transform var(--dur-micro) var(--ease-standard);background:0 0;border:0;border-radius:50%;place-items:center;padding:0;display:grid;position:relative}.portal-pet__shadow{z-index:0;filter:blur(3px);opacity:.78;transform-origin:50%;pointer-events:none;background:#0105019e;border-radius:50%;height:9px;position:absolute;bottom:6px;left:21%;right:21%;box-shadow:0 0 16px #b7fe0224}.portal-pet__sprite{width:var(--portal-pet-size);height:var(--portal-pet-size);transition:transform var(--dur-micro) var(--ease-standard);display:block;transform:scaleX(1)}.portal-pet__motion{width:var(--portal-pet-size);height:var(--portal-pet-size);transform-origin:bottom;display:block}.mascot-walk-cycle{display:block;position:absolute;inset:0;overflow:hidden}.mascot-walk-cycle__strip{will-change:transform;width:800%;max-width:none;height:100%;animation:.72s steps(8,end) infinite mascot-walk-strip;display:block;position:absolute;top:0;left:0}.mascot-reaction-cycle{display:block;position:absolute;inset:0;overflow:hidden}.mascot-reaction-cycle__strip{width:800%;max-width:none;height:100%;animation:mascot-reaction-strip var(--mascot-reaction-duration,.88s) steps(7, end) both;will-change:transform;display:block;position:absolute;top:0;left:0}.mascot-reaction-cycle.is-reverse .mascot-reaction-cycle__strip{animation-direction:reverse}@keyframes mascot-walk-strip{0%{transform:translate(0)}to{transform:translate(-100%)}}@keyframes mascot-reaction-strip{0%{transform:translate(0)}to{transform:translate(-87.5%)}}.portal-pet[data-motion-phase=anticipate] .portal-pet__motion{animation:.17s cubic-bezier(.4,0,.6,1) both portal-pet-anticipate}.portal-pet[data-motion-phase=walking] .portal-pet__motion{animation:.36s ease-in-out infinite portal-pet-step}.portal-pet[data-motion-phase=arrive] .portal-pet__motion{animation:portal-pet-arrive .24s var(--ease-out-strong) both}.portal-pet[data-motion-phase=anticipate] .portal-pet__shadow{animation:.17s ease-out both portal-pet-shadow-ready}.portal-pet[data-motion-phase=walking] .portal-pet__shadow{animation:.36s ease-in-out infinite portal-pet-shadow-step}.portal-pet[data-motion-phase=arrive] .portal-pet__shadow{animation:portal-pet-shadow-land .24s var(--ease-out-strong) both}.portal-pet[data-activity=success] .portal-pet__button:after,.portal-pet[data-activity=celebrate] .portal-pet__button:after{animation:portal-pet-ground-pulse .62s var(--ease-out-strong) both}@keyframes portal-pet-anticipate{0%{transform:translateY(0)scale(1)}to{transform:translateY(2px)scaleX(1.035)scaleY(.955)}}@keyframes portal-pet-step{0%,to{transform:translateY(0)rotate(0)}25%{transform:translateY(-1px)rotate(-.55deg)}50%{transform:translateY(0)rotate(0)}75%{transform:translateY(-1px)rotate(.55deg)}}@keyframes portal-pet-arrive{0%{transform:translateY(-2px)scaleX(.985)scaleY(1.015)}62%{transform:translateY(1px)scaleX(1.025)scaleY(.975)}to{transform:translateY(0)scale(1)}}@keyframes portal-pet-shadow-ready{0%{opacity:.78;transform:scaleX(1)}to{opacity:.88;transform:scaleX(1.14)}}@keyframes portal-pet-shadow-step{0%,to{opacity:.78;transform:scaleX(1)}25%,75%{opacity:.54;transform:scaleX(.82)}50%{opacity:.7;transform:scaleX(.94)}}@keyframes portal-pet-shadow-land{0%{opacity:.55;transform:scaleX(.8)}62%{opacity:.92;transform:scaleX(1.18)}to{opacity:.78;transform:scaleX(1)}}@keyframes portal-pet-ground-pulse{0%{opacity:.72;transform:scale(.82)}45%{opacity:1;transform:scale(1.18)}to{opacity:.72;transform:scale(1)}}.portal-pet__sprite.is-facing-right{transform:scaleX(-1)}@media (hover:hover){.portal-pet__button:hover{transform:translateY(-2px)}}.portal-pet__button:active{transform:scale(.96)}.portal-pet.is-quiet{--portal-pet-size:76px;opacity:.82;width:76px;height:76px;right:10px}.portal-pet.is-embedded{--portal-pet-size:126px;z-index:2;width:100%;height:100%;min-height:184px;position:relative;bottom:auto;right:auto}.portal-pet.is-embedded .portal-pet__walker{bottom:2px;left:0}.portal-pet.is-embedded .portal-pet__bubble{top:8px;right:8px}.portal-pet.is-embedded .portal-pet__tray{bottom:128px;right:8px}.portal-pet.is-quiet .portal-pet__walker,.portal-pet.is-quiet .portal-pet__button,.portal-pet.is-quiet .portal-pet__sprite,.portal-pet.is-quiet .portal-pet__motion{width:76px;height:76px}.portal-pet.is-quiet .portal-pet__sprite{transform-origin:100% 100%;transform:scale(.88)}.portal-pet.is-quiet .portal-pet__sprite.is-facing-right{transform:scaleX(-1)scale(.88)}.portal-pet.is-quiet:hover,.portal-pet.is-quiet:focus-within,.portal-pet.is-quiet.has-tray{opacity:1}.portal-pet.is-form-focused{pointer-events:none;opacity:0;transform:translateY(8px)}body:has(.portal-pet:not(.is-embedded)) .portal-route-content{padding-bottom:max(164px, calc(64px + env(safe-area-inset-bottom)))}body:has(.portal-pet.is-quiet:not(.is-embedded)) .portal-route-content{padding-bottom:max(116px, calc(48px + env(safe-area-inset-bottom)))}body:has([data-portal-assessment] :focus-visible) .portal-pet:not(.is-embedded){pointer-events:none;opacity:0;transform:translateY(8px)}@media (max-width:767px){.portal-pet{right:8px;bottom:max(6px, env(safe-area-inset-bottom));width:var(--portal-pet-size);height:124px}.portal-pet__bubble{max-width:154px}.portal-pet__tray{right:-2px;bottom:calc(var(--portal-pet-size) - 2px);max-height:min(430px,100dvh - 110px);overflow-y:auto}.portal-pet.is-quiet{width:76px;height:76px;right:6px}.portal-pet.is-embedded{width:100%;height:100%;min-height:164px;bottom:auto;right:auto}.portal-pet.is-embedded .portal-pet__tray{bottom:108px;right:0}}.portal-icon-button{width:40px;height:40px;color:var(--on-surface-faint);transition:color var(--dur-micro) var(--ease-standard), background-color var(--dur-micro) var(--ease-standard);border-radius:10px;flex:0 0 40px;justify-content:center;align-items:center;display:inline-flex}@media (hover:hover){.portal-icon-button:hover{color:var(--on-surface);background:#f7f9f20f}}.portal-option-card{border:1px solid var(--control-border);border-radius:var(--radius-md);background:var(--surface-card);height:100%;min-height:180px;transition:border-color var(--dur-state) var(--ease-standard), box-shadow var(--dur-state) var(--ease-standard), background-color var(--dur-state) var(--ease-standard);flex-direction:column;padding:24px;display:flex;position:relative}.portal-option-card.is-selected{border-color:var(--accent);background:var(--surface-card)}@supports (color:color-mix(in lab, red, red)){.portal-option-card.is-selected{background:color-mix(in srgb, var(--surface-card) 94%, var(--accent))}}.portal-option-card.is-selected{box-shadow:0 0 0 1px #b7fe022e,0 16px 42px #00000024}.portal-option-card__icon{border:1px solid var(--control-border);background:var(--surface-raised);border-radius:10px;place-items:center;width:44px;height:44px;margin-bottom:20px;display:grid}.portal-option-card.is-selected .portal-option-card__icon{background:#b7fe021a;border-color:#b7fe026b}.portal-option-card__title{color:var(--on-surface);font-family:var(--font-display);margin-bottom:7px;font-size:18px;font-weight:750;line-height:1.3;display:block}.portal-option-card.is-selected .portal-option-card__title{color:var(--accent)}.portal-option-card__description{color:var(--on-surface-faint);text-wrap:pretty;font-size:14px;line-height:1.55}.portal-option-card__check{color:var(--accent);position:absolute;top:24px;right:24px}.portal-modal-backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:portal-modal-backdrop-in var(--dur-state) var(--ease-standard) both;background:#0f1504db}.portal-modal-panel{animation:portal-modal-panel-in var(--dur-state) var(--ease-out-strong) both}.portal-step-enter{animation:portal-step-enter var(--dur-micro) var(--ease-standard) both}.portal-feedback-enter{animation:portal-feedback-enter var(--dur-feedback) var(--ease-out-strong) both}.portal-lesson-step{width:100%;min-height:54px;color:var(--on-surface);text-align:left;border-color:var(--border);transition:border-color var(--dur-micro) var(--ease-standard), background-color var(--dur-micro) var(--ease-standard), transform var(--dur-instant) var(--ease-standard);background:#f7f9f206;grid-template-columns:28px minmax(0,1fr);align-items:start;gap:14px;padding:14px;display:grid;position:relative}.portal-lesson-step.is-done{background:#b7fe020e;border-color:#b7fe024d}.portal-lesson-step:active{transform:scale(.99)}.portal-lesson-step__check{border:1px solid var(--border-strong);width:26px;height:26px;color:var(--accent);transition:border-color var(--dur-instant) var(--ease-standard), background-color var(--dur-instant) var(--ease-standard);background:0 0;border-radius:8px;justify-content:center;align-items:center;display:inline-flex}.portal-lesson-step.is-done .portal-lesson-step__check{border-color:var(--accent);background:#b7fe0224}.portal-lesson-step__body{color:var(--on-surface);transition:color var(--dur-micro) var(--ease-standard);line-height:1.55}.portal-lesson-step.is-done .portal-lesson-step__body{color:var(--on-surface-faint);text-decoration:line-through}@media (hover:hover){.portal-lesson-step:hover{border-color:#b7fe024d}}.portal-learning-mode{transition:border-color var(--dur-micro) var(--ease-standard), color var(--dur-micro) var(--ease-standard), background-color var(--dur-micro) var(--ease-standard), transform var(--dur-instant) var(--ease-standard)}.portal-learning-mode:active{transform:scale(.99)}.portal-lesson-mode-enter,.portal-question-enter,.portal-disclosure-enter{animation:portal-academy-state-enter var(--dur-micro) var(--ease-standard) both}@keyframes portal-academy-state-enter{0%{opacity:.72;transform:translateY(3px)}to{opacity:1;transform:none}}.portal-checkpoint-markers{grid-template-columns:repeat(5,34px);justify-content:center;gap:8px;margin-bottom:20px;display:grid}.portal-checkpoint-marker{border:1px solid var(--border);width:34px;height:30px;color:var(--on-surface-faint);font-variant-numeric:tabular-nums;transition:border-color var(--dur-micro) var(--ease-standard), color var(--dur-micro) var(--ease-standard), background-color var(--dur-micro) var(--ease-standard), opacity var(--dur-micro) var(--ease-standard);background:#f7f9f206;border-radius:9px;place-items:center;font-size:12px;font-weight:800;display:grid}.portal-checkpoint-marker.is-answered{color:var(--accent);background:#b7fe0214;border-color:#b7fe0257}.portal-checkpoint-marker.is-current{border-color:var(--on-surface);color:var(--on-surface);background:#f7f9f214}.portal-checkpoint-marker.is-current.is-answered{border-color:var(--accent);color:var(--accent-fg);background:var(--accent)}.portal-module-complete{border-top:1px solid #b7fe024d;padding-top:18px;position:relative}.portal-module-complete__check{width:32px;height:32px;color:var(--accent);opacity:.62;transition:opacity var(--dur-feedback) var(--ease-out-strong), transform var(--dur-feedback) var(--ease-out-strong), background-color var(--dur-feedback) var(--ease-standard);background:#b7fe021a;border:1px solid #b7fe024d;border-radius:50%;flex:0 0 32px;justify-content:center;align-items:center;display:inline-flex;transform:scale(.94)}.portal-module-complete__check[data-active=true]{opacity:1;background:#b7fe0226;transform:none}.portal-module-complete__next{border-top:1px solid var(--border);opacity:.66;transition:opacity var(--dur-feedback) var(--ease-standard), transform var(--dur-feedback) var(--ease-out-strong), border-top-color var(--dur-feedback) var(--ease-standard);margin-top:16px;padding-top:16px;transform:translateY(4px)}.portal-module-complete__next[data-ready=true]{opacity:1;border-top-color:#b7fe023d;transform:none}.portal-achievement-dialog{color:var(--on-surface);text-align:center;padding:38px 34px 34px;position:relative;overflow:hidden}.portal-achievement-dialog__close{position:absolute;top:10px;right:10px}.portal-engagement-state-enter{animation:portal-engagement-state-enter var(--dur-state) var(--ease-standard) both}@keyframes portal-engagement-state-enter{0%{opacity:.72;transform:translateY(6px)}to{opacity:1;transform:none}}.capability-plate{transition:border-color var(--dur-micro) var(--ease-standard), background-color var(--dur-micro) var(--ease-standard)}.portal-leaderboard-row{transition:background-color var(--dur-micro) var(--ease-standard)}.portal-leaderboard-rank{width:72px}.portal-leaderboard-score{width:168px}.portal-you-badge{min-height:22px;color:var(--accent);background:#b7fe0212;border:1px solid #b7fe0257;border-radius:999px;align-items:center;padding-inline:7px;font-size:12px;font-weight:750;display:inline-flex}@media (max-width:560px){.portal-leaderboard th,.portal-leaderboard td{padding-inline:12px!important}.portal-leaderboard-rank{width:58px}.portal-leaderboard-score{width:122px}}.portal-tour-step{transition:opacity var(--dur-micro) var(--ease-standard), background-color var(--dur-micro) var(--ease-standard)}@keyframes portal-modal-backdrop-in{0%{opacity:0}to{opacity:1}}@keyframes portal-modal-panel-in{0%{opacity:0;transform:translateY(6px)scale(.99)}to{opacity:1;transform:none}}@keyframes portal-step-enter{0%{opacity:0;transform:translateY(3px)}to{opacity:1;transform:none}}@keyframes portal-feedback-enter{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}dialog{background:0 0;margin:auto}dialog::backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);transition:opacity .18s var(--ease-standard);background:#080c03bf}@starting-style{dialog[open]::backdrop{opacity:0}}dialog[open]{animation:achievement-in var(--dur-micro) var(--ease-out-strong)}@media (prefers-reduced-motion:reduce){html:not([data-motion=full]) dialog[open]{animation:none}}html[data-motion=reduced] dialog[open]{animation:none}@keyframes achievement-in{0%{opacity:0;transform:scale(.98)}to{opacity:1;transform:none}}.portal-practice-grid{align-items:start;gap:24px}.portal-practice-primary{border:1px solid var(--border-strong);border-radius:var(--radius-lg);background:var(--surface-card);align-content:start;display:grid;overflow:hidden;box-shadow:0 24px 64px #0000002e}.portal-practice-primary>*+*{border-top:1px solid var(--border-strong)}.portal-practice-primary .portal-card{box-shadow:none;background:0 0;border:0;border-radius:0}.portal-practice-drill{min-height:230px;position:relative}.portal-practice-drill:before{content:"";background:var(--accent);opacity:.86;width:3px;position:absolute;inset:0 auto 0 0}.portal-practice-review{min-height:160px}.portal-practice-side{position:sticky;top:24px}.portal-practice-momentum{border-color:var(--border-strong);background:var(--surface-raised)}.portal-inline-state{border-block:1px solid var(--border-strong);padding-block:24px}.portal-inline-state>p:not(.portal-label){color:var(--on-surface-faint);margin-top:8px;font-size:14px;line-height:1.55}.portal-cohort-stage{border:1px solid var(--border-strong);border-radius:var(--radius-lg);background:var(--surface-card);grid-template-columns:minmax(0,1.35fr) minmax(260px,.65fr);display:grid;overflow:hidden;box-shadow:0 24px 64px #0000002e}.portal-cohort-stage__main{flex-direction:column;align-items:flex-start;min-width:0;padding:clamp(24px,4vw,36px);display:flex}.portal-cohort-stage__lead{grid-template-columns:48px minmax(0,1fr);gap:18px;display:grid}.portal-cohort-stage__icon{width:48px;height:48px;color:var(--accent);background:#b7fe0212;border:1px solid #b7fe0247;border-radius:12px;place-items:center;display:grid}.portal-cohort-stage h2{color:var(--on-surface);font-family:var(--font-display);text-wrap:balance;margin-top:8px;font-size:clamp(22px,3vw,28px);font-weight:800;line-height:1.2}.portal-cohort-stage__lead p:not(.portal-label){max-width:620px;color:var(--on-surface-faint);text-wrap:pretty;margin-top:10px;font-size:14px;line-height:1.6}.portal-cohort-meter{border-block:1px solid var(--border);width:100%;margin-block:28px 24px;padding-block:18px}.portal-cohort-meter__head{justify-content:space-between;align-items:end;gap:16px;margin-bottom:13px;display:flex}.portal-cohort-meter__head>span{color:var(--on-surface-muted);font-size:13px;font-weight:700}.portal-cohort-meter__head strong{color:var(--on-surface);font-family:var(--font-display);font-variant-numeric:tabular-nums;font-size:28px;line-height:1}.portal-cohort-meter__head small{color:var(--on-surface-faint);font-size:14px;font-weight:650}.portal-cohort-nodes{grid-template-columns:repeat(10,minmax(8px,1fr));gap:6px;display:grid}.portal-cohort-nodes span{border:1px solid var(--border);background:var(--surface-raised);border-radius:4px;height:13px}.portal-cohort-nodes span.is-active{border-color:var(--accent);background:var(--accent);box-shadow:0 0 10px #b7fe0238}.portal-cohort-meter>p{color:var(--on-surface-faint);margin-top:11px;font-size:13px}.portal-week-signal{border-left:1px solid var(--border-strong);background:var(--surface-raised);flex-direction:column;min-width:0;padding:clamp(24px,4vw,34px);display:flex}.portal-week-signal__value{align-items:baseline;gap:8px;margin-top:22px;display:flex}.portal-week-signal__value strong{color:var(--on-surface);font-family:var(--font-display);font-variant-numeric:tabular-nums;font-size:42px;line-height:1}.portal-week-signal__value span{color:var(--on-surface-faint);font-size:13px;font-weight:650}.portal-week-signal__trend{border-block:1px solid var(--border);min-height:40px;color:var(--on-surface-muted);align-items:center;gap:8px;margin-top:16px;padding-block:10px;font-size:13px;font-weight:650;display:flex}.portal-week-signal__trend.is-up{color:var(--accent)}.portal-week-signal__trend.is-down{color:var(--warning)}.portal-week-signal__ledger{margin-block:18px 24px}.portal-week-signal__ledger>div{border-bottom:1px solid var(--border);justify-content:space-between;gap:16px;padding-block:9px;display:flex}.portal-week-signal__ledger dt{color:var(--on-surface-faint);font-size:13px}.portal-week-signal__ledger dd{color:var(--on-surface);font-variant-numeric:tabular-nums;font-size:14px;font-weight:750}.portal-text-link{min-height:40px;color:var(--on-surface);text-underline-offset:4px;align-items:center;gap:7px;margin-top:auto;font-size:14px;font-weight:750;text-decoration:none;display:inline-flex}@media (hover:hover){.portal-text-link:hover{color:var(--accent);text-decoration:underline}}.portal-resource-empty{grid-template-columns:minmax(0,1fr) minmax(180px,240px);gap:clamp(24px,5vw,48px);min-height:340px;padding:clamp(28px,5vw,44px)}.portal-resource-empty__copy{align-self:center}.portal-resource-empty__copy .portal-btn{margin-top:24px}.portal-resource-empty__visual{border-left:1px solid var(--border);place-items:center;min-height:250px;display:grid;position:relative}.portal-resource-empty__visual img{z-index:2;object-fit:contain;filter:drop-shadow(0 18px 24px #0000003d);width:min(190px,100%);height:auto;position:relative}.portal-resource-empty__signal,.portal-access-pass__signal{color:var(--accent);background:#b7fe0212;border:1px solid #b7fe0247;border-radius:999px;padding:5px 9px;font-size:12px;font-weight:750;position:absolute;top:0;right:0}.portal-resource-empty__shelf{border:1px solid var(--border-strong);background:var(--surface-raised);border-radius:4px;height:10px;position:absolute;bottom:24px;left:5%;right:5%;box-shadow:0 12px 22px #0000002e}.portal-access-pass{border:1px solid var(--border-strong);border-radius:var(--radius-lg);background:var(--surface-card);grid-template-columns:minmax(0,1.25fr) minmax(220px,.75fr);display:grid;overflow:hidden;box-shadow:0 24px 64px #0003}.portal-access-pass__copy{padding:clamp(26px,5vw,42px)}.portal-access-pass__price{align-items:baseline;gap:8px;margin-top:16px;display:flex}.portal-access-pass__price strong{color:var(--on-surface);font-family:var(--font-display);font-variant-numeric:tabular-nums;font-size:clamp(38px,6vw,48px);line-height:1}.portal-access-pass__price span{color:var(--on-surface-faint);font-size:14px}.portal-access-pass__copy>p{max-width:560px;color:var(--on-surface-faint);text-wrap:pretty;margin-top:14px;font-size:14px;line-height:1.6}.portal-access-pass__benefits{border-block:1px solid var(--border);margin-block:24px;list-style:none}.portal-access-pass__benefits li{border-top:1px solid var(--border);color:var(--accent);grid-template-columns:24px minmax(0,1fr);align-items:start;gap:10px;padding-block:12px;display:grid}.portal-access-pass__benefits li:first-child{border-top:0}.portal-access-pass__benefits span{color:var(--on-surface-faint);gap:2px;font-size:13px;line-height:1.45;display:grid}.portal-access-pass__benefits strong{color:var(--on-surface);font-size:14px}.portal-access-pass__visual{border-left:1px solid var(--border-strong);background:var(--surface-raised);align-content:center;justify-items:center;min-height:430px;padding:32px 24px;display:grid;position:relative}.portal-access-pass__visual .auth-course-preview{text-align:left;width:100%;max-width:390px;margin:12px 0 0}.portal-access-pass__caption{text-align:center;justify-items:center;gap:4px;margin-top:16px;display:grid}.portal-access-pass__caption span{color:var(--on-surface-faint);text-transform:uppercase;letter-spacing:.04em;font-size:12px;font-weight:650}.portal-access-pass__caption strong{color:var(--on-surface);font-family:var(--font-display);font-size:18px}.portal-access-note,.portal-account-support{border-block:1px solid var(--border-strong);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:16px;margin-top:28px;padding-block:22px;display:grid}.portal-access-note__icon{width:40px;height:40px;color:var(--accent);background:#b7fe0212;border:1px solid #b7fe0247;border-radius:10px;place-items:center;display:grid}.portal-access-note strong,.portal-account-support h2{color:var(--on-surface);font-family:var(--font-display);font-size:17px;font-weight:750}.portal-access-note p,.portal-account-support p{color:var(--on-surface-faint);margin-top:4px;font-size:13px;line-height:1.55}.portal-access-note a:not(.portal-btn){color:var(--on-surface);text-underline-offset:3px;text-decoration:underline}.portal-billing-pass{border:1px solid var(--border-strong);border-radius:var(--radius-lg);background:var(--surface-card);grid-template-columns:minmax(0,1fr) minmax(170px,220px);min-height:240px;display:grid;position:relative;overflow:hidden;box-shadow:0 24px 64px #0000002e}.portal-billing-pass:before{content:"";background:var(--on-surface-faint);width:3px;position:absolute;inset:0 auto 0 0}.portal-billing-pass.is-active:before{background:var(--accent)}.portal-billing-pass__copy{align-self:center;padding:clamp(26px,5vw,40px)}.portal-billing-pass__status{color:var(--accent);text-transform:uppercase;letter-spacing:.04em;align-items:center;gap:7px;font-size:12px;font-weight:750;display:inline-flex}.portal-billing-pass__status.is-inactive{color:var(--on-surface-faint)}.portal-billing-pass h2{color:var(--on-surface);font-family:var(--font-display);margin-top:12px;font-size:28px;font-weight:800}.portal-billing-pass__copy>p{color:var(--on-surface-muted);margin-top:8px;font-size:15px}.portal-billing-pass__copy>small{color:var(--on-surface-faint);margin-top:8px;font-size:12px;display:block}.portal-billing-pass__stamp{border-left:1px solid var(--border-strong);background:var(--surface-raised);text-align:right;align-content:center;justify-items:end;padding:28px;display:grid}.portal-billing-pass__stamp>span{color:var(--on-surface-faint);text-transform:uppercase;letter-spacing:.04em;font-size:12px;font-weight:650}.portal-billing-pass__stamp>strong{color:var(--on-surface);font-family:var(--font-display);font-variant-numeric:tabular-nums;margin-top:8px;font-size:27px;line-height:1.1}.portal-billing-pass.is-active .portal-billing-pass__stamp>strong{color:var(--accent)}.portal-billing-pass__stamp small{color:var(--on-surface-faint);font-family:var(--font-body);margin-left:3px;font-size:12px}.portal-account-support{grid-template-columns:minmax(0,1fr) auto}.portal-route-state{border:1px solid var(--border-strong);border-radius:var(--radius-lg);background:var(--surface-card);grid-template-columns:minmax(0,1fr) minmax(190px,240px);min-height:440px;display:grid;overflow:hidden;box-shadow:0 24px 64px #0003}.portal-route-state__copy{align-self:center;padding:clamp(28px,6vw,48px)}.portal-route-state__icon{width:52px;height:52px;color:var(--accent);background:#b7fe0212;border:1px solid #b7fe0247;border-radius:14px;place-items:center;margin-bottom:24px;display:grid}.portal-route-state--error .portal-route-state__icon{border-color:var(--error)}@supports (color:color-mix(in lab, red, red)){.portal-route-state--error .portal-route-state__icon{border-color:color-mix(in srgb, var(--error) 30%, transparent)}}.portal-route-state--error .portal-route-state__icon{color:var(--error);background:var(--error)}@supports (color:color-mix(in lab, red, red)){.portal-route-state--error .portal-route-state__icon{background:color-mix(in srgb, var(--error) 10%, transparent)}}.portal-route-state .portal-title{margin-top:10px}.portal-route-state .portal-subtitle{margin-top:12px}.portal-route-state__actions{gap:10px;margin-top:24px}a.portal-route-state__actions{display:inline-flex}.portal-route-state__visual{border-left:1px solid var(--border-strong);background:var(--surface-raised);place-items:center;padding:24px;display:grid}.portal-route-state__visual img{object-fit:contain;filter:drop-shadow(0 20px 28px #00000042);width:min(220px,100%);height:auto}@media (max-width:900px){.portal-practice-side{position:static}.portal-cohort-stage,.portal-access-pass{grid-template-columns:1fr}.portal-week-signal,.portal-access-pass__visual{border-top:1px solid var(--border-strong);border-left:0}.portal-access-pass__visual{min-height:300px}}@media (max-width:720px){.portal-resource-empty,.portal-route-state{grid-template-columns:1fr}.portal-resource-empty__visual,.portal-route-state__visual{border-top:1px solid var(--border);border-left:0;min-height:220px}.portal-resource-empty .portal-btn{width:auto}.portal-billing-pass{grid-template-columns:1fr}.portal-billing-pass__stamp{border-top:1px solid var(--border-strong);text-align:left;border-left:0;justify-items:start}.portal-access-note,.portal-account-support{grid-template-columns:auto minmax(0,1fr)}.portal-account-support .portal-btn{grid-column:1/-1;width:100%}}@media (max-width:520px){.portal-practice-grid{gap:18px}.portal-cohort-stage__lead{grid-template-columns:1fr}.portal-cohort-nodes{gap:4px}.portal-resource-empty__visual,.portal-route-state__visual{min-height:190px}.portal-route-state__visual img,.portal-resource-empty__visual img{width:160px}.portal-route-state__actions .portal-btn,a.portal-route-state__actions{width:100%}.portal-access-pass__copy,.portal-access-pass__visual{padding-inline:22px}}@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-space-x-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-gradient-position{syntax:"*";inherits:false}@property --tw-gradient-from{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-via{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-to{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-stops{syntax:"*";inherits:false}@property --tw-gradient-via-stops{syntax:"*";inherits:false}@property --tw-gradient-from-position{syntax:"<length-percentage>";inherits:false;initial-value:0%}@property --tw-gradient-via-position{syntax:"<length-percentage>";inherits:false;initial-value:50%}@property --tw-gradient-to-position{syntax:"<length-percentage>";inherits:false;initial-value:100%}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{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-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}@property --tw-scale-x{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-y{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-z{syntax:"*";inherits:false;initial-value:1}
