@font-face{font-family:OpenDyslexic;src:url(/fonts/OpenDyslexic-Regular.woff2) format("woff2"),url(/fonts/OpenDyslexic-Regular.woff) format("woff");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:OpenDyslexic;src:url(/fonts/OpenDyslexic-Bold.woff2) format("woff2"),url(/fonts/OpenDyslexic-Bold.woff) format("woff");font-weight:700;font-style:normal;font-display:swap}:root{--base-font-size:16px;--line-spacing:1.5}body{font-size:var(--base-font-size);line-height:var(--line-spacing)}.high-contrast{--foreground:0 0% 0%;--background:0 0% 100%;--primary:20 100% 40%;--muted:0 0% 85%;--border:0 0% 20%}.dark.high-contrast{--foreground:0 0% 100%;--background:0 0% 0%;--primary:20 100% 60%;--muted:0 0% 15%;--border:0 0% 80%}.reduce-motion *{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.keyboard-navigation :focus{outline:3px solid hsl(var(--primary));outline-offset:2px;border-radius:4px}.keyboard-navigation :focus:not(:focus-visible){outline:none}.keyboard-navigation :focus-visible{outline:3px solid hsl(var(--primary));outline-offset:2px;border-radius:4px}.skip-to-main{position:absolute;top:-40px;left:0;background:hsl(var(--primary));color:hsl(var(--primary-foreground));padding:8px 16px;text-decoration:none;border-radius:0 0 4px 0;z-index:100;font-weight:600}.skip-to-main:focus{top:0}@media (max-width:768px){a,button,input,select,textarea{min-height:44px;min-width:44px}}.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}a{text-decoration-thickness:2px;text-underline-offset:2px}a:hover{text-decoration-thickness:3px}.neurodivergent-spacing p+p{margin-top:1.5em}.neurodivergent-spacing h1,.neurodivergent-spacing h2,.neurodivergent-spacing h3,.neurodivergent-spacing h4,.neurodivergent-spacing h5,.neurodivergent-spacing h6{margin-top:1.5em;margin-bottom:.75em}form label{display:block;margin-bottom:.5rem;font-weight:600}form input,form select,form textarea{margin-bottom:1rem}.error-message{color:hsl(var(--destructive))}.error-message,.success-message{font-weight:600;margin-top:.5rem;display:flex;align-items:center;gap:.5rem}.success-message{color:hsl(142 76% 36%)}.loading-spinner{border:3px solid hsl(var(--muted));border-top-color:hsl(var(--primary));border-radius:50%;width:40px;height:40px;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}table{border-collapse:collapse;width:100%}th{text-align:left;font-weight:600;background:hsl(var(--muted));border-bottom:2px solid hsl(var(--border))}td,th{padding:.75rem}td{border-bottom:1px solid hsl(var(--border))}button:disabled,button[aria-disabled=true]{opacity:.5;cursor:not-allowed}[role=tooltip]{background:hsl(var(--popover));color:hsl(var(--popover-foreground));padding:.5rem .75rem;border-radius:.375rem;font-size:.875rem;box-shadow:0 4px 6px -1px rgb(0 0 0/.1);max-width:300px}.card-interactive{transition:transform .2s ease,box-shadow .2s ease}.card-interactive:hover{transform:translateY(-2px);box-shadow:0 10px 15px -3px rgb(0 0 0/.1)}.reduce-motion .card-interactive:hover{transform:none}[role=progressbar]{background:hsl(var(--muted));border-radius:9999px;overflow:hidden;position:relative}[role=progressbar]:after{content:attr(aria-valuenow) "%";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:hsl(var(--foreground))}.badge,[role=progressbar]:after{font-size:.75rem;font-weight:600}.badge{display:inline-flex;align-items:center;gap:.25rem;padding:.25rem .75rem;border-radius:9999px;line-height:1}[role=alert],[role=status]{padding:1rem;border-radius:.5rem;border:1px solid;display:flex;gap:.75rem;align-items:start}@media print{.no-print{display:none!important}body{font-size:12pt;line-height:1.5;background:#fff}a,body{color:#000}a{text-decoration:underline}a[href^=http]:after{content:" (" attr(href) ")";font-size:90%}}.dark{color-scheme:dark}.dark img{opacity:.9}.dark img:hover{opacity:1}@media (max-width:640px){:root{--base-font-size:14px}h1{font-size:1.75rem}h2{font-size:1.5rem}h3{font-size:1.25rem}}ol,ul{padding-left:1.5rem}li{margin-bottom:.5rem}code{background:hsl(var(--muted));padding:.125rem .375rem;border-radius:.25rem;font-size:.875em;font-family:Courier New,monospace}pre code{display:block;padding:1rem;overflow-x:auto;border-radius:.5rem}blockquote{border-left:4px solid hsl(var(--primary));padding-left:1rem;margin-left:0;font-style:italic;color:hsl(var(--muted-foreground))}