:root{--bg:#fbfaf7;--surface:#fff;--surface-2:#f1efe9;--text:#1c1d21;--muted:#5d606b;--line:#dcd9d0;--accent:#2f6fde;--accent-text:#fff;--crop:#2f6fde;--focus:#e76f51;--reference:#8a8f9c;--hatch:#14141e8c;--shadow:0 1px 2px #0000000f, 0 8px 24px #0000000f;--radius:10px;--font:ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--mono:ui-monospace, "SFMono-Regular", Menlo, Consolas, monospace;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--bg:#121317;--surface:#1b1d22;--surface-2:#24272e;--text:#ecebe7;--muted:#a3a6b0;--line:#34373f;--accent:#6c9cf0;--accent-text:#0e1320;--crop:#6c9cf0;--focus:#f4a261;--reference:#9aa0ad;--shadow:0 1px 2px #0006, 0 8px 24px #0000004d}}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--text);font:16px/1.6 var(--font);-webkit-font-smoothing:antialiased;margin:0}a{color:var(--accent)}code{font-family:var(--mono);font-size:.9em}h1,h2,h3{letter-spacing:-.01em;line-height:1.15}h1{max-width:18em;margin:0 0 .5em;font-size:clamp(2rem,5vw,3.4rem)}h1 em{color:var(--focus);font-style:normal}h2{margin:0 0 .5em;font-size:clamp(1.5rem,3vw,2rem)}.wrap{width:min(1180px,100% - 32px);margin-inline:auto}section.wrap{padding-block:56px 8px}section>p{max-width:46em}.lead{color:var(--muted);max-width:40em;font-size:1.2rem}.try{max-width:46em}.site-header{z-index:10;background:color-mix(in srgb, var(--bg) 88%, transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--line);position:sticky;top:0}.site-header .wrap{justify-content:space-between;align-items:center;gap:16px;height:56px;display:flex}.brand{color:var(--text);align-items:center;gap:10px;font-weight:650;text-decoration:none;display:flex}.brand svg{fill:none;stroke-width:2.5px;width:26px;height:26px}.brand rect:first-child{stroke:var(--crop)}.brand rect:last-child{stroke:var(--focus);stroke-width:2px;stroke-dasharray:3 2}.site-header nav{gap:18px;display:flex}.site-header nav a{color:var(--muted);font-weight:500;text-decoration:none}.site-header nav a:hover{color:var(--text)}.intro{padding-top:48px}button{font:inherit;color:inherit;cursor:pointer}:focus-visible{outline:3px solid var(--accent);outline-offset:2px}.toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.segmented{border:1px solid var(--line);background:var(--surface);border-radius:8px;flex-wrap:wrap;display:inline-flex;overflow:hidden}.segmented button{border:0;border-right:1px solid var(--line);background:0 0;padding:6px 12px;font-size:.9rem}.segmented button:last-child{border-right:0}.segmented button[aria-pressed=true]{background:var(--accent);color:var(--accent-text)}.check{cursor:pointer;align-items:center;gap:6px;font-size:.95rem;display:inline-flex}.check input{width:18px;height:18px;accent-color:var(--accent)}.range{flex:280px;grid-template-columns:auto auto;justify-content:start;column-gap:8px;font-size:.95rem;display:grid}.range output{font-variant-numeric:tabular-nums;font-weight:600}.range input{width:100%;accent-color:var(--accent);grid-column:1/-1}.picker{gap:8px;margin-bottom:12px;display:flex;overflow-x:auto}.picker button{border:1px solid var(--line);background:var(--surface);white-space:nowrap;border-radius:8px;align-items:center;gap:6px;padding:4px 10px 4px 4px;font-size:.9rem;display:flex}.picker button[aria-pressed=true]{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}.picker img{object-fit:cover;border-radius:4px;width:36px;height:26px}.copy-code{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);justify-content:space-between;align-items:center;gap:12px;max-width:520px;margin-top:28px;padding:10px 10px 10px 16px;display:flex;overflow-x:auto}.copy-code code{overflow-wrap:anywhere;min-width:0}.copy-code button{flex:none}.copy-code button,.button{background:var(--accent);color:var(--accent-text);border:0;border-radius:7px;padding:6px 14px;font-weight:600;text-decoration:none;display:inline-block}.legend{color:var(--muted);margin:10px 0 0;font-size:.9rem}.swatch{vertical-align:-1px;border:2px solid var(--crop);width:18px;height:12px;margin-right:4px;display:inline-block}.swatch-focus{border:2px dashed var(--focus)}.swatch-reference{border:2px dotted var(--reference)}.editor{border-radius:var(--radius);background:var(--surface-2);touch-action:none;-webkit-user-select:none;user-select:none;width:100%;position:relative;overflow:hidden}.editor>img{pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.rect{cursor:move;touch-action:none;position:absolute}.rect-crop{border:2px solid var(--crop);box-shadow:0 0 0 9999px #0a0c1480}.rect-focus{border:2px dashed var(--focus);background:color-mix(in srgb, var(--focus) 12%, transparent)}.rect:focus-visible{outline-offset:0}.handle{touch-action:none;width:22px;height:22px;margin:-11px;position:absolute}.handle:after{content:"";border:2px solid var(--crop);background:#fff;border-radius:2px;position:absolute;inset:6px}.rect-focus .handle:after{border-color:var(--focus)}.handle-nw{cursor:nwse-resize;top:0;left:0}.handle-ne{cursor:nesw-resize;top:0;right:0}.handle-sw{cursor:nesw-resize;bottom:0;left:0}.handle-se{cursor:nwse-resize;bottom:0;right:0}.reference{border:2px dotted var(--reference);pointer-events:none;position:absolute}.visible-outline{pointer-events:none;background:#ffffff1f;border:2px solid #fff;outline:1px solid #00000080;position:absolute}.frame{background:var(--surface-2);border-radius:8px;position:relative;overflow:hidden}.frame>img{pointer-events:none;max-width:none;position:absolute}.cover{background:repeating-linear-gradient(-45deg, var(--hatch) 0 6px, #14141e33 6px 12px);position:absolute}.focus-outline{border:2px dashed #fff;position:absolute;box-shadow:0 0 0 1px #00000080}.hero-demo{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow);border-radius:14px;grid-template-columns:minmax(0,5fr) minmax(0,6fr);align-items:start;gap:28px;margin-top:24px;padding:20px;display:grid}.mock-page{border:1px solid var(--line);border-radius:var(--radius);background:var(--bg);overflow:hidden}.mocks{grid-template-columns:minmax(0,1fr) minmax(0,.343fr);align-items:start;gap:12px;display:grid}.mock{margin:0}.mock figcaption{color:var(--muted);font-size:.85rem}.mock-bar{border-bottom:1px solid var(--line);gap:6px;padding:8px 10px;display:flex}.mock-bar span{background:var(--line);border-radius:50%;width:9px;height:9px}.mock-hero{border-radius:0}.mock-text{color:#fff;text-shadow:0 1px 8px #00000080;flex-direction:column;justify-content:center;gap:6px;padding:4%;display:flex;position:absolute}.mock-hero-desktop .mock-text{inset:0 55% 0 0}.mock-hero-phone .mock-text{gap:2px;padding:4% 7%;inset:60% 0 0}.mock-hero-phone .mock-text p,.mock-hero-phone .mock-button{display:none}.mock-text h3{margin:0;font-size:clamp(1.05rem,2.2vw,1.6rem)}.mock-hero-phone .mock-text h3{font-size:clamp(.62rem,1vw,.85rem)}.mock-text p{margin:0;font-size:clamp(.72rem,1.1vw,.9rem);line-height:1.35}.mock-button{color:#1c1d21;text-shadow:none;background:#fff;border-radius:6px;align-self:flex-start;margin-top:4px;padding:4px 12px;font-size:.8rem;font-weight:650}.readout{min-width:0;margin-top:12px;font-size:.85rem}.readout th,.readout td{padding:4px 8px 4px 0}.readout td{font-family:var(--mono);font-variant-numeric:tabular-nums}.readout tbody td:last-child{font-weight:400}.shapes{align-items:flex-start;gap:14px;margin-top:14px;display:flex}.shapes figure{flex-basis:0;min-width:0;margin:0}figcaption{margin-top:6px;font-size:.9rem}figcaption span,figcaption small{color:var(--muted)}figcaption small{font-family:var(--mono);font-size:.8rem;display:block}.stage{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-2);justify-content:center;padding:16px;display:flex;overflow:hidden}.window{box-shadow:var(--shadow);background:#000;border-radius:6px;position:relative;overflow:hidden}.window>img{max-width:none;position:absolute}.window-text{color:#fff;background:linear-gradient(90deg,#00000073,#00000026);flex-direction:column;justify-content:center;padding:0 4%;font-size:.85rem;line-height:1.3;display:flex;position:absolute}.window-text-bottom{background:linear-gradient(#0000001a,#00000080)}.window-text strong{font-size:1.1rem}.breakpoints{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:14px 0 0;padding:0;list-style:none;display:grid}.breakpoints li{border:1px solid var(--line);background:var(--surface);border-radius:8px;gap:2px;padding:10px 12px;font-size:.88rem;display:grid}.breakpoints li[aria-current=true]{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}.breakpoints strong span,.breakpoints li>span{color:var(--muted);font-weight:400}.css{margin-top:12px;font-size:.9rem}.css summary{cursor:pointer;color:var(--muted)}pre{border-radius:var(--radius);background:var(--surface-2);margin:10px 0 0;padding:14px 16px;font-size:.85rem;line-height:1.5;overflow-x:auto}.override-demo{grid-template-columns:minmax(0,3fr) minmax(0,2fr);align-items:start;gap:28px;display:grid}.override-results{gap:18px;display:grid}.override-results figure{margin:0}.table{overflow-x:auto}table{border-collapse:collapse;width:100%;min-width:560px;max-width:900px;font-size:.95rem}th,td{border-bottom:1px solid var(--line);text-align:left;vertical-align:top;padding:10px 12px}thead th{color:var(--muted);font-weight:600}tbody th{font-weight:600}tbody td:last-child{color:var(--text);font-weight:500}.screens{grid-template-columns:1fr 1fr;gap:20px;display:grid}.screens figure{margin:0}.screens img,.diagram{border:1px solid var(--line);border-radius:var(--radius);background:#fff;width:100%;height:auto;display:block}.screen-wide{grid-column:1/-1}.screen-wide img{max-width:900px;margin-inline:auto}.screen-wide figcaption{text-align:center}.steps{counter-reset:step;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:0 0 24px;padding:0;list-style:none;display:grid}.steps li{counter-increment:step;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);padding:16px;font-size:.95rem}.steps li:before{content:counter(step);background:var(--accent);width:28px;height:28px;color:var(--accent-text);border-radius:50%;place-items:center;margin-bottom:8px;font-weight:700;display:grid}.steps strong{display:block}.cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:0;padding:0;list-style:none;display:grid}.cards a{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);height:100%;color:var(--text);gap:4px;padding:16px;text-decoration:none;transition:border-color .15s;display:grid}.cards a:hover{border-color:var(--accent)}.cards strong:after{content:" →";color:var(--accent)}.cards span{color:var(--muted);font-size:.92rem}.get-started .copy-code{margin-top:8px}.snippet{max-width:640px}.site-footer{border-top:1px solid var(--line);color:var(--muted);margin-top:64px;padding-block:24px 40px;font-size:.9rem}@media (width<=900px){.hero-demo,.override-demo{grid-template-columns:minmax(0,1fr)}.steps,.cards{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=640px){.hero-demo{padding:12px}.shapes{grid-template-columns:1fr 1fr;display:grid}.shapes figure:first-child{grid-column:1/-1}.override-results{grid-template-columns:1fr 1fr;gap:12px}table{min-width:0;font-size:.88rem}th,td{padding:8px 6px}.breakpoints,.screens,.steps,.cards{grid-template-columns:minmax(0,1fr)}.site-header nav{gap:12px;font-size:.92rem}.brand{font-size:.95rem}.stage{padding:8px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
