:root{--bg:#f8fafc;--surface:#fff;--text:#3f4b5c;--text-light:#7b8494;--heading:#111827;--blue:#2a6fdb;--blue-dark:#1a56b8;--blue-tint:#ebf2fd;--action:#2095f3;--action-dark:#1684dc;--line:#1c2b4014;--line-hover:#2a6fdb3d;--shadow-sm:0 1px 2px #0f172a0a;--shadow-card:0 1px 2px #1414100a, 0 8px 24px -16px #1414102e;--shadow-card-hover:0 4px 8px #1414100d, 0 22px 44px -18px #14285a4d;--shadow-field:0 10px 30px -12px #1e3c784d;--backdrop:radial-gradient(ellipse 38% 48% at 76% 63%, #1fb56e1a 0%, transparent 68%), radial-gradient(ellipse at top center, #bedcff73 0%, #bedcff26 35%, transparent 70%), radial-gradient(ellipse at bottom left, #ffcddc38 0%, transparent 55%), radial-gradient(ellipse at bottom right, #ffecbe40 0%, transparent 55%), var(--bg);--font:system-ui, -apple-system, "Segoe UI", Roboto, Ubuntu, Cantarell, "Noto Sans", Helvetica, Arial, sans-serif;--mono:SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--max:1180px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--backdrop);min-height:100vh;color:var(--text);font:400 16px/1.65 var(--font);-webkit-font-smoothing:antialiased;background-attachment:fixed;margin:0}h1,h2,h3,p,ul,ol{margin:0}h1,h2,h3{letter-spacing:-.02em;color:var(--heading);font-weight:700;line-height:1.2}h2{font-size:clamp(1.9rem,3.4vw,2.5rem)}h3{font-size:1.4rem}a{color:inherit}code,pre{font-family:var(--mono)}code{background:var(--blue-tint);color:var(--text);border-radius:4px;padding:.12em .4em;font-size:.88em}.wrap{width:min(var(--max), 100% - 32px);margin-inline:auto}.muted{color:var(--text-light)}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.btn{background:var(--action);color:#fff;border:1px solid var(--action);box-shadow:var(--shadow-sm);border-radius:30px;padding:12px 22px;font-weight:600;text-decoration:none;transition:background .14s,border-color .14s;display:inline-block}.btn:hover{background:var(--action-dark);border-color:var(--action-dark)}.top{align-items:center;gap:28px;padding-top:24px;display:flex}.brand{color:var(--heading);white-space:nowrap;flex:none;align-items:center;gap:10px;font-size:15px;font-weight:700;text-decoration:none;display:inline-flex}.brand:hover{color:var(--action)}.brand-mark{width:57px;height:34px;color:var(--action);flex:none;transform:translateY(3px)}.top-bar{flex:auto;align-items:center;gap:16px;min-width:0;display:flex}.search{flex:auto;min-width:0;position:relative}.search input{background:var(--surface);width:100%;color:var(--heading);box-shadow:var(--shadow-field);border:1px solid #ffffffb3;border-radius:30px;outline:none;padding:16px 20px 16px 48px;font-family:inherit;font-size:15px;transition:box-shadow .16s}.search input::placeholder{color:var(--text-light)}.search input:focus{box-shadow:0 0 0 4px var(--blue-tint), 0 14px 34px -12px #1e3c7857}.search svg{width:21px;height:21px;color:var(--blue);pointer-events:none;position:absolute;top:50%;left:16px;transform:translateY(-50%)}.action{border:1px solid var(--action);background:var(--action);color:#fff;white-space:nowrap;box-shadow:var(--shadow-sm);border-radius:30px;flex:none;align-items:center;gap:8px;padding:12px 18px;font-size:13px;font-weight:600;text-decoration:none;transition:background .14s,border-color .14s;display:inline-flex}.action:hover{background:var(--action-dark);border-color:var(--action-dark)}.action svg{width:16px;height:16px}@media (width<=720px){.top{flex-wrap:wrap;gap:16px}.top-bar{flex-basis:100%}}.demo-index{padding-block:40px 96px}.no-results{border:1px solid var(--line);background:color-mix(in srgb, var(--surface) 55%, transparent);border-radius:14px;padding:40px 36px}.no-results[hidden]{display:none}.no-results h2{font-size:2rem}.no-results p{margin-top:16px;font-size:18px}.no-results .reset{border:1px solid var(--line-hover);background:var(--surface);color:var(--heading);font:inherit;cursor:pointer;box-shadow:var(--shadow-sm);border-radius:8px;margin-top:32px;padding:9px 18px;font-size:16px;transition:border-color .14s,color .14s}.no-results .reset:hover{border-color:var(--blue);color:var(--blue-dark)}.demo-cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;display:grid}@media (width<=1080px){.demo-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}.demo-card{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow-card);border-radius:14px;flex-direction:column;transition:transform .15s,box-shadow .15s,border-color .15s;display:flex;position:relative;overflow:hidden}.demo-card:hover{box-shadow:var(--shadow-card-hover);border-color:var(--line-hover);transform:translateY(-3px)}.demo-card[hidden]{display:none}.demo-card-img{border-bottom:1px solid var(--line);display:block}.demo-card-img>img{aspect-ratio:16/9;object-fit:cover;width:100%;display:block}.demo-card-body{flex-direction:column;flex:1;gap:8px;padding:16px;display:flex}.demo-card-body h3{letter-spacing:-.01em;font-size:16px;font-weight:650;line-height:1.35}.demo-card-body p{color:var(--text);font-size:14px;line-height:1.5}.demo-card-body .link{color:var(--blue-dark);align-self:flex-start;margin-top:auto;padding-top:4px;font-size:14px;font-weight:600;text-decoration:none}.demo-card-body .link:hover,.demo-card:hover .link{color:var(--blue-dark);text-decoration:underline}.demo-card-body .link:after{content:"";position:absolute;inset:0}@media (width<=760px){.demo-cards{grid-template-columns:1fr}}pre{background:var(--blue-tint);color:#23262d;border-radius:12px;margin:0;padding:20px 22px;font-size:.88rem;line-height:1.6;overflow-x:auto}pre code{font-size:inherit;color:inherit;background:0 0;border-radius:0;padding:0}pre.astro-code{background-color:var(--blue-tint)!important}.snippet{gap:10px;margin-top:40px;display:grid}.snippet .cap{color:var(--text-light);font-size:.95rem}.demo-header{background:var(--surface);border-bottom:1px solid var(--line);backdrop-filter:blur(12px)saturate(1.2);color:var(--heading);justify-content:space-between;align-items:center;gap:12px;padding:8px 20px;display:flex}.demo-header a{border:1px solid var(--line);background:var(--surface);height:32px;box-shadow:var(--shadow-sm);color:var(--heading);white-space:nowrap;border-radius:6px;align-items:center;gap:4px;padding:0 12px 0 8px;font-size:13px;font-weight:500;line-height:20px;text-decoration:none;transition:background .12s,border-color .12s;display:inline-flex}.demo-header a svg{flex:none}.demo-header .next{gap:8px;padding:0 8px 0 12px}.demo-header a:hover{background:var(--bg);border-color:var(--line-hover)}.demo-header .soon{color:var(--text-light);font-size:13px}.demo-stage{border:1px solid var(--line);background:var(--surface);border-radius:12px;margin:16px;overflow:hidden;box-shadow:0 10px 28px -16px #1e326e4d}.demo-article{grid-template-columns:minmax(0,1fr) 300px;align-items:start;gap:64px;padding-block:64px 96px;display:grid}.demo-article h1{margin-bottom:20px;font-size:clamp(2rem,4vw,2.8rem)}.demo-article .lead{color:var(--heading);margin-bottom:32px;font-size:1.3rem;line-height:1.55}.demo-article h2{margin:48px 0 14px;font-size:1.7rem}.demo-article p{margin-bottom:16px}.demo-article ul.plain{gap:6px;margin-bottom:16px;padding-left:1.2em;display:grid}.demo-article .snippet{margin:24px 0 28px}.demo-aside{gap:16px;display:grid;position:sticky;top:24px}.demo-aside .tags{flex-wrap:wrap;gap:8px;display:flex}.demo-aside .tag{background:var(--blue-tint);color:var(--blue-dark);border-radius:99px;padding:4px 12px;font-size:.85rem;font-weight:600}.fact{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow-sm);border-radius:12px;gap:2px;padding:14px 18px;display:grid}.fact .k{letter-spacing:.08em;text-transform:uppercase;color:var(--text-light);font-size:.78rem;font-weight:600}.fact .v{color:var(--heading);font-size:1.25rem;font-weight:600}.fact .v small{color:var(--text-light);font-size:.85rem;font-weight:400}.fact.live{border-color:var(--blue);background:var(--blue-tint)}.fact.live .v{color:var(--blue-dark);font-family:var(--mono);font-size:1.1rem}.demo-aside a.btn{text-align:center}@media (width<=960px){.demo-article{grid-template-columns:1fr;gap:32px}.demo-aside{order:-1;position:static}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.demo-card{transition:none}}
