:root{--base-font-size:16px;font-size:var(--base-font-size)}:root:not(.dark).high-contrast{--background:0 0% 100%;--foreground:0 0% 0%;--card:0 0% 100%;--card-foreground:0 0% 0%;--popover:0 0% 100%;--popover-foreground:0 0% 0%;--text-primary:0 0% 0%;--text-white:0 0% 100%;--text-gray:0 0% 20%;--text-light-gray:0 0% 30%;--primary:220 100% 30%;--primary-foreground:0 0% 100%;--primary-light:220 100% 40%;--secondary:175 100% 25%;--secondary-foreground:0 0% 100%;--secondary-light:175 100% 35%;--accent:280 100% 30%;--accent-foreground:0 0% 100%;--accent-light:280 100% 40%;--tertiary:340 100% 30%;--tertiary-foreground:0 0% 100%;--tertiary-light:340 100% 40%;--highlight:45 100% 40%;--highlight-foreground:0 0% 0%;--highlight-light:45 100% 50%;--brand-gold:46 100% 30%;--brand-gold-foreground:0 0% 100%;--muted:0 0% 90%;--muted-foreground:0 0% 0%;--muted-primary:217 20% 85%;--muted-secondary:268 20% 85%;--muted-accent:327 20% 85%;--destructive:0 100% 35%;--destructive-foreground:0 0% 100%;--border:0 0% 0%;--input:0 0% 90%;--ring:220 100% 30%;--shadow-gentle:0 4px 20px -8px hsl(0 0% 0%/0.8);--shadow-card:0 2px 12px -4px hsl(0 0% 0%/0.6)}.dark.high-contrast{--background:0 0% 0%;--foreground:0 0% 100%;--card:0 0% 5%;--card-foreground:0 0% 100%;--popover:0 0% 5%;--popover-foreground:0 0% 100%;--text-primary:0 0% 100%;--text-white:0 0% 100%;--text-gray:0 0% 85%;--text-light-gray:0 0% 75%;--primary:220 100% 70%;--primary-foreground:0 0% 0%;--primary-light:220 100% 80%;--secondary:175 100% 65%;--secondary-foreground:0 0% 0%;--secondary-light:175 100% 75%;--accent:280 100% 70%;--accent-foreground:0 0% 0%;--accent-light:280 100% 80%;--tertiary:340 100% 70%;--tertiary-foreground:0 0% 0%;--tertiary-light:340 100% 80%;--highlight:45 100% 65%;--highlight-foreground:0 0% 0%;--highlight-light:45 100% 75%;--brand-gold:46 100% 65%;--brand-gold-foreground:0 0% 0%;--muted:0 0% 15%;--muted-foreground:0 0% 100%;--muted-primary:217 30% 20%;--muted-secondary:268 30% 20%;--muted-accent:327 30% 20%;--destructive:0 100% 60%;--destructive-foreground:0 0% 0%;--border:0 0% 100%;--input:0 0% 15%;--ring:220 100% 70%;--shadow-gentle:0 4px 20px -8px hsl(0 0% 100%/0.3);--shadow-card:0 2px 12px -4px hsl(0 0% 100%/0.2)}.high-contrast{*{border-color:currentColor!important}a,button{text-decoration:underline;font-weight:600}button:has(svg:only-child),button:not(:has(span:not(:empty))){text-decoration:none}button:disabled,input:disabled,select:disabled,textarea:disabled{opacity:.5;cursor:not-allowed}:focus-visible{outline:4px solid currentColor;outline-offset:4px}*{background-image:none!important}.bg-gradient-accent,.bg-gradient-primary,.bg-gradient-secondary{background-image:none!important;background-color:hsl(var(--primary))!important}}.reduce-motion,.reduce-motion *,.reduce-motion :after,.reduce-motion :before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.reduce-motion .animate-spin{animation-duration:1s!important;animation-iteration-count:infinite!important}.dyslexia-font,.dyslexia-font *{font-family:Lexend,Comic Sans MS,Trebuchet MS,Verdana,Arial,sans-serif!important;letter-spacing:.05em;word-spacing:.16em;line-height:1.7}.dyslexia-font code,.dyslexia-font pre{font-family:Monaco,Consolas,monospace!important;letter-spacing:.03em}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.sr-only:active,.sr-only:focus{position:static;width:auto;height:auto;padding:.5rem 1rem;margin:0;overflow:visible;clip:auto;white-space:normal;background:hsl(var(--primary));color:hsl(var(--primary-foreground));z-index:1000}.screen-reader-optimized{:focus{outline:3px solid hsl(var(--primary));outline-offset:2px}img[alt=""],img[role=none],img[role=presentation]{speak:none}}:focus-visible{outline:2px solid hsl(var(--primary));outline-offset:2px;transition:outline-offset .1s ease}.high-contrast :focus-visible{outline:4px solid currentColor;outline-offset:4px}html[style*="--base-font-size: 14px"]{font-size:14px}html[style*="--base-font-size: 16px"]{font-size:16px}html[style*="--base-font-size: 18px"]{font-size:18px}html[style*="--base-font-size: 20px"]{font-size:20px}html[style*="--base-font-size: 14px"] .text-fluid-3xs{font-size:clamp(.547rem,.525rem + .109vw,.602rem)}html[style*="--base-font-size: 14px"] .text-fluid-2xs{font-size:clamp(.602rem,.569rem + .164vw,.656rem)}html[style*="--base-font-size: 14px"] .text-fluid-xs{font-size:clamp(.656rem,.612rem + .219vw,.766rem)}html[style*="--base-font-size: 14px"] .text-fluid-sm{font-size:clamp(.766rem,.7rem + .328vw,.875rem)}html[style*="--base-font-size: 14px"] .text-fluid-base{font-size:clamp(.875rem,.788rem + .438vw,.984rem)}html[style*="--base-font-size: 14px"] .text-fluid-lg{font-size:clamp(.984rem,.875rem + .547vw,1.094rem)}html[style*="--base-font-size: 14px"] .text-fluid-xl{font-size:clamp(1.094rem,.962rem + .656vw,1.312rem)}html[style*="--base-font-size: 14px"] .text-fluid-2xl{font-size:clamp(1.312rem,1.138rem + .875vw,1.641rem)}html[style*="--base-font-size: 14px"] .text-fluid-3xl{font-size:clamp(1.641rem,1.312rem + 1.641vw,1.969rem)}html[style*="--base-font-size: 14px"] .text-fluid-4xl{font-size:clamp(1.969rem,1.531rem + 2.188vw,2.625rem)}html[style*="--base-font-size: 14px"] .text-fluid-5xl{font-size:clamp(2.625rem,1.75rem + 4.375vw,3.281rem)}html[style*="--base-font-size: 14px"] .text-fluid-6xl{font-size:clamp(3.281rem,2.188rem + 5.469vw,3.938rem)}html[style*="--base-font-size: 14px"] .text-fluid-7xl{font-size:clamp(3.938rem,2.625rem + 6.562vw,5.25rem)}html[style*="--base-font-size: 18px"] .text-fluid-3xs{font-size:clamp(.703rem,.675rem + .141vw,.773rem)}html[style*="--base-font-size: 18px"] .text-fluid-2xs{font-size:clamp(.773rem,.731rem + .211vw,.844rem)}html[style*="--base-font-size: 18px"] .text-fluid-xs{font-size:clamp(.844rem,.788rem + .281vw,.984rem)}html[style*="--base-font-size: 18px"] .text-fluid-sm{font-size:clamp(.984rem,.9rem + .422vw,1.125rem)}html[style*="--base-font-size: 18px"] .text-fluid-base{font-size:clamp(1.125rem,1.012rem + .562vw,1.266rem)}html[style*="--base-font-size: 18px"] .text-fluid-lg{font-size:clamp(1.266rem,1.125rem + .703vw,1.406rem)}html[style*="--base-font-size: 18px"] .text-fluid-xl{font-size:clamp(1.406rem,1.238rem + .844vw,1.688rem)}html[style*="--base-font-size: 18px"] .text-fluid-2xl{font-size:clamp(1.688rem,1.462rem + 1.125vw,2.109rem)}html[style*="--base-font-size: 18px"] .text-fluid-3xl{font-size:clamp(2.109rem,1.688rem + 2.109vw,2.531rem)}html[style*="--base-font-size: 18px"] .text-fluid-4xl{font-size:clamp(2.531rem,1.969rem + 2.812vw,3.375rem)}html[style*="--base-font-size: 18px"] .text-fluid-5xl{font-size:clamp(3.375rem,2.25rem + 5.625vw,4.219rem)}html[style*="--base-font-size: 18px"] .text-fluid-6xl{font-size:clamp(4.219rem,2.812rem + 7.031vw,5.062rem)}html[style*="--base-font-size: 18px"] .text-fluid-7xl{font-size:clamp(5.062rem,3.375rem + 8.438vw,6.75rem)}html[style*="--base-font-size: 20px"] .text-fluid-3xs{font-size:clamp(.781rem,.75rem + .156vw,.859rem)}html[style*="--base-font-size: 20px"] .text-fluid-2xs{font-size:clamp(.859rem,.812rem + .234vw,.938rem)}html[style*="--base-font-size: 20px"] .text-fluid-xs{font-size:clamp(.938rem,.875rem + .312vw,1.094rem)}html[style*="--base-font-size: 20px"] .text-fluid-sm{font-size:clamp(1.094rem,1rem + .469vw,1.25rem)}html[style*="--base-font-size: 20px"] .text-fluid-base{font-size:clamp(1.25rem,1.125rem + .625vw,1.406rem)}html[style*="--base-font-size: 20px"] .text-fluid-lg{font-size:clamp(1.406rem,1.25rem + .781vw,1.562rem)}html[style*="--base-font-size: 20px"] .text-fluid-xl{font-size:clamp(1.562rem,1.375rem + .938vw,1.875rem)}html[style*="--base-font-size: 20px"] .text-fluid-2xl{font-size:clamp(1.875rem,1.625rem + 1.25vw,2.344rem)}html[style*="--base-font-size: 20px"] .text-fluid-3xl{font-size:clamp(2.344rem,1.875rem + 2.344vw,2.812rem)}html[style*="--base-font-size: 20px"] .text-fluid-4xl{font-size:clamp(2.812rem,2.188rem + 3.125vw,3.75rem)}html[style*="--base-font-size: 20px"] .text-fluid-5xl{font-size:clamp(3.75rem,2.5rem + 6.25vw,4.688rem)}html[style*="--base-font-size: 20px"] .text-fluid-6xl{font-size:clamp(4.688rem,3.125rem + 7.812vw,5.625rem)}html[style*="--base-font-size: 20px"] .text-fluid-7xl{font-size:clamp(5.625rem,3.75rem + 9.375vw,7.5rem)}@media print{.high-contrast,.high-contrast *{color:#000!important;background:#fff!important;border-color:#000!important}*{animation:none!important;transition:none!important}}.line-spacing-normal *{line-height:1.5}.line-spacing-comfortable *{line-height:1.8}.line-spacing-wide *{line-height:2}.line-spacing-comfortable h1,.line-spacing-normal h1,.line-spacing-wide h1{line-height:1.2}.line-spacing-comfortable h2,.line-spacing-normal h2,.line-spacing-wide h2{line-height:1.3}.line-spacing-comfortable h3,.line-spacing-normal h3,.line-spacing-wide h3{line-height:1.4}@media (prefers-contrast:more){:root:not(.high-contrast){--border:0 0% 30%}.dark:not(.high-contrast){--border:0 0% 70%}a,button{font-weight:600}}@media (prefers-reduced-motion:reduce){:root:not(.reduce-motion) *{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media (forced-colors:active){*{forced-color-adjust:auto}:focus-visible{outline:3px solid}}.reading-highlight{position:relative;animation:pulse-highlight 1.5s ease-in-out infinite;border-radius:4px;background-color:hsl(var(--primary)/.05);transition:all .3s ease;scroll-margin:2rem}.reading-highlight,.reduce-motion .reading-highlight{outline:3px solid hsl(var(--primary));outline-offset:4px}.reduce-motion .reading-highlight{animation:none}@keyframes pulse-highlight{0%,to{outline-color:hsl(var(--primary));background-color:hsl(var(--primary)/.05)}50%{outline-color:hsl(var(--primary)/.7);background-color:hsl(var(--primary)/.1)}}.click-to-read-mode [data-readable=true]{cursor:pointer;position:relative;transition:all .2s ease}.click-to-read-mode [data-readable=true]:hover{background-color:hsl(var(--secondary)/.05);outline:2px dashed hsl(var(--secondary)/.4);outline-offset:2px;border-radius:4px}.click-to-read-mode [class*=card]:not([data-skip-read-aloud]),.click-to-read-mode [role=article],.click-to-read-mode [role=button],.click-to-read-mode a,.click-to-read-mode article,.click-to-read-mode button{cursor:help!important;position:relative}.click-to-read-mode [class*=card]:hover:not([data-skip-read-aloud]),.click-to-read-mode [role=article]:hover,.click-to-read-mode [role=button]:hover:not([data-skip-read-aloud]),.click-to-read-mode a:hover:not([data-skip-read-aloud]),.click-to-read-mode article:hover,.click-to-read-mode button:hover:not([data-skip-read-aloud]){background-color:hsl(var(--secondary)/.08)!important;outline:2px dashed hsl(var(--secondary)/.5);outline-offset:2px;border-radius:4px}.click-to-read-mode [data-readable=true]:focus-visible{outline:3px solid hsl(var(--secondary));outline-offset:4px}.click-to-read-mode:before{content:"Click any text to hear it read aloud";position:fixed;top:5rem;left:50%;transform:translateX(-50%);background:hsl(var(--secondary));color:hsl(var(--secondary-foreground));padding:.5rem 1rem;border-radius:.5rem;font-size:.875rem;font-weight:500;z-index:50;pointer-events:none;box-shadow:0 4px 12px hsl(var(--secondary)/.3);animation:fade-in-slide .3s ease}@keyframes fade-in-slide{0%{opacity:0;transform:translateX(-50%) translateY(-10px)}to{opacity:1;transform:translateX(-50%) translateY(0)}}.reduce-motion.click-to-read-mode:before{animation:none;opacity:1;transform:translateX(-50%) translateY(0)}.high-contrast .reading-highlight{outline:4px solid currentColor;background-color:transparent}.high-contrast.click-to-read-mode [data-readable=true]:hover{outline:3px dashed currentColor;background-color:transparent}.high-contrast.click-to-read-mode:before{border:2px solid}