:root{--bg:#fff;--fg:#101c2e;--muted:#566377;--line:#cfd8e3;--accent:#2147d6;--good:#15803d;--bad:#b45309;--card:#f7f9fc;--hi:#ffe14d;--hi-fg:#101c2e;--on-accent:#fff;--serif:"Iowan Old Style","Palatino Linotype",Palatino,"Book Antiqua",Georgia,serif;--mono:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}html.a11y-theme-dark{--bg:#0d1524;--fg:#e8edf6;--muted:#a3aec4;--line:#2a3550;--accent:#8aa9ff;--good:#4ade80;--bad:#fbbf24;--card:#141e33;--hi:#f2d544;--hi-fg:#101c2e;--on-accent:#0e1424;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}html.a11y-theme-light{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}html.a11y-contrast-high{--bg:#000;--fg:#fff;--muted:#fff;--line:#fff;--accent:#ffe14d;--good:#7dff7d;--bad:#ffb347;--card:#000;--hi:#ffe14d;--hi-fg:#000;--on-accent:#000;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}body{background:var(--bg);color:var(--fg);margin:0;font:1.0625rem/1.55 system-ui,-apple-system,Segoe UI,Roboto,sans-serif}main{max-width:720px;margin:0 auto;padding:48px 16px 80px}h1{font-family:var(--serif);letter-spacing:-.01em;margin:0 0 12px;font-size:2rem;font-weight:700;line-height:1.2}h2{font-family:var(--serif);margin:32px 0 8px;font-size:1.3rem}p.lead{color:var(--muted);margin:0 0 24px}form.check{flex-wrap:wrap;gap:8px;display:flex}input[type=text],input[type=email]{border:1px solid var(--line);background:var(--bg);color:var(--fg);font:inherit;border-radius:8px;flex:240px;padding:12px 14px}button{background:var(--accent);color:var(--on-accent);font:inherit;cursor:pointer;border:0;border-radius:8px;padding:12px 20px;font-weight:600}button:disabled{opacity:.6;cursor:wait}.err{color:var(--bad);margin-top:12px}.score{align-items:baseline;gap:12px;margin:28px 0 4px;display:flex}.score b{font-size:3.5rem;line-height:1}.card{background:var(--card);border:1px solid var(--line);border-radius:10px;margin:10px 0;padding:14px 16px}.card .top{justify-content:space-between;gap:12px;font-weight:600;display:flex}.pass{color:var(--good)}.fail{color:var(--bad)}.card p{color:var(--muted);margin:6px 0 0;font-size:.95rem}.note{color:var(--muted);margin-top:28px;font-size:.9rem}footer.site-footer{color:var(--muted);border-top:1px solid var(--line);margin-top:48px;padding-top:16px;font-size:.85rem}a{color:var(--accent)}.btn{background:var(--accent);color:var(--on-accent);border-radius:8px;padding:12px 20px;font-weight:600;text-decoration:none;display:inline-block}.fld{margin:14px 0;display:block}.fld span{margin-bottom:4px;font-weight:600;display:block}.fld input,.fld select,.fld textarea{border:1px solid var(--line);background:var(--bg);width:100%;color:var(--fg);font:inherit;border-radius:8px;padding:11px 13px}.chk{margin:18px 0;display:block}.hp{opacity:0;width:1px;height:1px;position:absolute;left:-9999px}em.err{color:var(--bad);font-size:.9rem;font-style:normal}dl.prof{grid-template-columns:140px 1fr;gap:8px 16px;margin:20px 0;display:grid}dl.prof dt{color:var(--muted)}dl.prof dd{margin:0}table{border-collapse:collapse;width:100%;font-size:.9rem}td,th{text-align:left;border-bottom:1px solid var(--line);vertical-align:top;padding:8px}.muted{color:var(--muted,#6b7280);font-size:.9rem}.hours{border:1px solid var(--line);border-radius:8px;margin:18px 0;padding:10px 14px 14px}.hours legend{padding:0 6px;font-weight:600}.hrow{justify-content:space-between;align-items:center;gap:12px;margin:6px 0;display:flex}.hrow .day{min-width:130px;margin:0}.hrow .times{align-items:center;gap:8px;display:flex}.hrow input[type=time]{border:1px solid var(--line);background:var(--bg);color:var(--fg);font:inherit;border-radius:6px;padding:6px 8px}:focus-visible{outline:3px solid var(--accent);outline-offset:2px}header.site{border-bottom:1px solid var(--line);background:var(--card)}header.site .bar{justify-content:space-between;align-items:center;gap:16px;max-width:1040px;margin:0 auto;padding:12px 16px;display:flex}.brand{color:var(--fg);font-family:var(--serif);align-items:center;gap:10px;font-size:1.1rem;font-weight:700;text-decoration:none;display:inline-flex}.brand svg{flex:none}header.site nav{flex-wrap:wrap;justify-content:flex-end;gap:6px 22px;display:flex}.navlink{font-weight:600;text-decoration:none}.navlink:hover{text-decoration:underline}main.home{max-width:1040px;padding-top:88px}.hero{text-align:center;max-width:780px;margin:0 auto}.hero h1{margin-bottom:22px;font-size:clamp(2.2rem,6vw,3.6rem);line-height:1.1}.hero .lead{max-width:60ch;margin:0 auto 32px;font-size:1.2rem}.hero .btn{padding:15px 32px;font-size:1.08rem}.demo{grid-template-columns:minmax(0,1fr);gap:24px;margin:88px 0 8px;display:grid}@media (min-width:860px){.demo{grid-template-columns:minmax(0,1fr) minmax(0,1.05fr)}}.sheet,.code{border:1px solid var(--line);background:var(--card);border-radius:6px;margin:0}.sheet figcaption,.code figcaption{border-bottom:1px solid var(--line);color:var(--muted);padding:10px 16px;font-size:.9rem}.sheet .body{padding:6px 20px 20px}.sheet h2{margin:16px 0 2px;font-size:1.5rem}.sheet .cat{color:var(--muted);margin:0 0 14px}.sheet dl{grid-template-columns:110px 1fr;gap:8px 14px;margin:0;display:grid}.sheet dt{color:var(--muted)}.sheet dd{margin:0}.code pre{font:.88rem/1.65 var(--mono);margin:0;padding:14px 16px 18px;overflow-x:auto}.code{background:var(--bg);border-style:dashed}mark{background:var(--hi);color:var(--hi-fg);border-radius:2px;padding:0 2px}.demo-note{color:var(--muted);max-width:70ch;margin:6px 0 0;font-size:.92rem}.steps{max-width:700px;margin:88px auto 0}.steps ol{counter-reset:s;margin:8px 0 0;padding:0;list-style:none}.steps li{counter-increment:s;border-top:1px solid var(--line);padding:14px 0 14px 44px;position:relative}.steps li:last-child{border-bottom:1px solid var(--line)}.steps li:before{content:counter(s);border:1px solid var(--fg);text-align:center;width:28px;height:28px;line-height:26px;font-family:var(--serif);border-radius:50%;font-weight:700;position:absolute;top:12px;left:0}.plain{max-width:700px;margin:64px auto 0}@media (max-width:520px){.sheet dl{grid-template-columns:1fr;gap:0}.sheet dd{margin-bottom:8px}}main:focus{outline:none}footer.site-footer{max-width:1040px;margin:0 auto;padding:16px 16px 96px}footer.site-footer nav{display:inline}.brand-text{flex-direction:column;min-width:0;line-height:1.25;display:flex}.brand-tag{color:var(--muted);max-width:44ch;margin-top:2px;font-family:Atkinson Hyperlegible,system-ui,sans-serif;font-size:.74rem;font-weight:400}@media (max-width:700px){header.site .bar{flex-wrap:wrap}.brand-tag{max-width:34ch;font-size:.7rem}}.more{border:1px solid var(--line);border-radius:8px;margin:14px 0;padding:0 14px}.more>summary{cursor:pointer;padding:12px 0;font-weight:600}.more[open]>summary{border-bottom:1px solid var(--line);margin-bottom:6px}.more .hours{border:0;margin:6px 0 12px;padding:0}
.a11y-skip-links{z-index:10000;position:absolute;top:0;left:0}.a11y-skip-link{background:var(--fg);color:var(--bg);white-space:nowrap;border-radius:0 0 8px;padding:12px 18px;font-weight:700;text-decoration:none;position:absolute;top:0;left:-10000px}.a11y-skip-link:focus{outline:3px solid var(--accent);outline-offset:2px;left:0}html.a11y-text-110{font-size:110%}html.a11y-text-125{font-size:125%}html.a11y-text-150{font-size:150%}html.a11y-text-175{font-size:175%}html.a11y-text-200{font-size:200%}html.a11y-line-120 body{line-height:1.86}html.a11y-line-140 body{line-height:2.17}html.a11y-line-120 a,html.a11y-line-120 li,html.a11y-line-120 p,html.a11y-line-120 span,html.a11y-line-120 dd,html.a11y-line-120 dt,html.a11y-line-140 a,html.a11y-line-140 li,html.a11y-line-140 p,html.a11y-line-140 span,html.a11y-line-140 dd,html.a11y-line-140 dt{line-height:inherit}html.a11y-contrast-high a{color:var(--accent);text-decoration:underline}html.a11y-contrast-high button,html.a11y-contrast-high input,html.a11y-contrast-high select,html.a11y-contrast-high textarea{border:2px solid var(--fg)}html.a11y-contrast-high .card,html.a11y-contrast-high .sheet,html.a11y-contrast-high .code,html.a11y-contrast-high header.site{border-color:var(--fg)}html.a11y-contrast-high .btn,html.a11y-contrast-high .btn:visited{color:var(--on-accent)}html.a11y-underline-links a,html.a11y-highlight-links a{text-underline-offset:3px;text-decoration:underline}html.a11y-highlight-links a{background:var(--hi);color:var(--hi-fg);border-radius:3px;padding:0 3px}html.a11y-dyslexia body,html.a11y-dyslexia :where(h1,h2,h3,h4,h5,h6,p,a,li,span,button,input,select,textarea,label,dt,dd,legend){letter-spacing:.02em;word-spacing:.08em;font-family:Atkinson Hyperlegible,Verdana,Tahoma,sans-serif}.a11y-reading-guide{z-index:9990;pointer-events:none;background:var(--accent);height:4px;box-shadow:0 0 0 100vmax transparent, 0 -22px 0 -2px color-mix(in srgb, var(--accent) 18%, transparent), 0 22px 0 -2px color-mix(in srgb, var(--accent) 18%, transparent);position:fixed;left:0;right:0}html.a11y-big-cursor,html.a11y-big-cursor *{cursor:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='40' height='40' viewBox='0 0 24 24'><path d='M4 2l15 9-6.5 1.5L9 19z' fill='black' stroke='white' stroke-width='1.5'/></svg>") 4 2,auto}html.a11y-focus-strong :where(a,button,input,textarea,select,summary,[tabindex]):focus{outline:4px solid var(--accent)!important;outline-offset:3px!important;box-shadow:0 0 0 7px var(--bg)!important}html.a11y-reduce-motion *,html.a11y-reduce-motion :before,html.a11y-reduce-motion :after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}.a11y-launcher{z-index:9995;background:var(--accent);width:56px;height:56px;color:var(--on-accent);border:2px solid var(--bg);border-radius:50%;justify-content:center;align-items:center;padding:0;display:inline-flex;position:fixed;bottom:16px;right:16px;box-shadow:0 4px 16px #0000004d}.a11y-panel{z-index:9996;background:var(--card);width:min(380px,100vw - 32px);max-height:calc(100vh - 110px);color:var(--fg);border:1px solid var(--fg);border-radius:12px;padding:16px 18px 18px;font-size:1rem;line-height:1.4;position:fixed;bottom:84px;right:16px;overflow-y:auto;box-shadow:0 12px 40px #00000059}.a11y-panel-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.a11y-panel h2{margin:0;font-size:1.2rem}.a11y-panel fieldset{border:0;border-top:1px solid var(--line);min-width:0;margin:14px 0 0;padding:12px 0 0}.a11y-panel legend{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);padding:0;font-size:.8rem;font-weight:700}.a11y-note{color:var(--muted);margin:6px 0 0;font-size:.85rem}.a11y-row{flex-wrap:wrap;align-items:center;gap:8px;margin-top:8px;display:flex}.a11y-val{text-align:center;min-width:3.2em;font-weight:700}.a11y-panel button.a11y-opt{background:var(--bg);min-width:44px;min-height:44px;color:var(--fg);border:1px solid var(--fg);border-radius:8px;padding:8px 14px;font-weight:600}.a11y-panel button.a11y-opt[aria-pressed=true]{background:var(--accent);color:var(--on-accent);border-color:var(--accent)}.a11y-panel button.a11y-opt:disabled{opacity:.45;cursor:not-allowed}.a11y-panel button.a11y-switch{text-align:left;background:var(--bg);width:100%;min-height:44px;color:var(--fg);border:1px solid var(--line);border-radius:8px;justify-content:space-between;align-items:center;gap:12px;margin-top:8px;padding:8px 12px;font-weight:400;display:flex}.a11y-switch[aria-checked=true]{border-color:var(--accent);box-shadow:inset 4px 0 0 var(--accent)}.a11y-switch-text{flex-direction:column;display:flex}.a11y-switch-label{font-weight:600}.a11y-hint{color:var(--muted);font-size:.8rem}.a11y-switch-state{text-align:right;min-width:2.2em;font-weight:700}.a11y-reset{width:100%;margin-top:14px}.a11y-panel :focus-visible,.a11y-launcher:focus-visible{outline:3px solid var(--fg);outline-offset:2px}
@font-face{font-family:Atkinson Hyperlegible;font-style:normal;font-display:swap;font-weight:400;src:url(../media/atkinson-hyperlegible-latin-400-normal.2_4quiuxbm00_.woff2)format("woff2"),url(../media/atkinson-hyperlegible-latin-400-normal.1814tdl5ng145.woff)format("woff")}
@font-face{font-family:Atkinson Hyperlegible;font-style:normal;font-display:swap;font-weight:700;src:url(../media/atkinson-hyperlegible-latin-700-normal.3ij26zqblfe95.woff2)format("woff2"),url(../media/atkinson-hyperlegible-latin-700-normal.0kr4d1tyihlyu.woff)format("woff")}
