body{background:var(--surface-page);color:var(--text-body)}.container{max-width:var(--container-max);margin:0 auto;padding:0 var(--space-6)}.container-narrow{max-width:var(--container-narrow);margin:0 auto;padding:0 var(--space-6)}code.mono{font-family:var(--font-mono);color:var(--brand);font-size:.92em}.btn{display:inline-flex;align-items:center;gap:var(--space-2);font:var(--weight-medium) 15px var(--font-sans);padding:11px 22px;border-radius:var(--radius-pill);border:none;cursor:pointer;transition:background var(--dur-base) var(--ease-out),transform var(--dur-base) var(--ease-out);text-decoration:none}.btn:hover{text-decoration:none}.btn--cta{background:var(--cta);color:var(--on-cta)}.btn--cta:hover{background:var(--cta-hover);color:var(--on-cta)}.btn--violet{background:var(--brand);color:var(--on-brand)}.btn--violet:hover{background:var(--brand-hover);color:var(--on-brand)}.btn--ghost-dark{background:transparent;color:var(--on-midnight);border:1px solid var(--glass-border)}.btn--ghost-dark:hover{background:#ffffff14;color:var(--on-midnight)}.btn--ghost{background:transparent;color:var(--brand);border:1px solid var(--border-default)}.btn--ghost:hover{background:var(--brand-subtle);color:var(--brand)}.nav{position:sticky;top:0;z-index:50;background:color-mix(in srgb,var(--surface-card) 86%,transparent);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--border-subtle)}.nav__inner{display:flex;align-items:center;gap:var(--space-6);height:64px}.nav__brand{display:flex;align-items:center;gap:var(--space-3);margin-right:auto}.nav__brand:hover{text-decoration:none}.nav__brand img{height:26px;display:block}.nav__brand span{font:var(--weight-medium) 15px var(--font-display);color:var(--text-strong);letter-spacing:var(--tracking-tight)}.nav__links{display:flex;align-items:center;gap:var(--space-5)}.nav__links a{font:var(--weight-regular) 14px var(--font-sans);color:var(--text-body)}.nav__links a:hover{color:var(--brand);text-decoration:none}.nav__links a.active{color:var(--brand);font-weight:var(--weight-medium)}.hero{background:var(--midnight);color:var(--on-midnight);overflow:hidden}.hero__inner{padding-block:var(--space-24);display:grid;grid-template-columns:1.12fr 1fr;gap:var(--space-12);align-items:center}.hero__logo{height:34px;margin-bottom:var(--space-6);display:block}.hero h1{color:var(--on-midnight);font:var(--weight-medium) var(--text-4xl)/1.02 var(--font-display);letter-spacing:var(--tracking-tight);margin-bottom:var(--space-5)}.hero h1 em{font-style:normal;color:var(--violet-200)}.hero p.lead{font:var(--weight-light) var(--text-lg)/1.4 var(--font-sans);color:#fafbffb8;margin-bottom:var(--space-8);max-width:32ch}.hero__cta{display:flex;gap:var(--space-3);flex-wrap:wrap}.hero__meta{margin-top:var(--space-10);display:flex;gap:var(--space-8)}.hero__meta div{display:flex;flex-direction:column;gap:2px}.hero__meta b{font:var(--weight-medium) var(--text-2xl) var(--font-display);color:var(--on-midnight)}.hero__meta span{font:var(--weight-regular) 13px var(--font-sans);color:#fafbff8c}.hero__art{position:relative;height:360px}.hero__art .shape{position:absolute;background:var(--brand)}.hero__art .blob1{width:220px;height:220px;border-radius:50%;right:26px;top:8px}.hero__art .blob2{width:150px;height:300px;border-radius:0 0 150px 150px;left:36px;top:-22px;opacity:.9}.hero__art .pane{position:absolute;inset:36px;background:var(--glass-fill-strong);border:1px solid var(--glass-border);border-radius:var(--glass-radius);box-shadow:var(--glass-highlight);backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));display:flex;flex-direction:column;justify-content:center;gap:var(--space-3);padding:var(--space-8)}.hero__art .pane .row{display:flex;align-items:center;gap:var(--space-3)}.hero__art .pane .dot{width:10px;height:10px;border-radius:50%;background:var(--whatsapp);flex:none}.hero__art .pane b{font:var(--weight-medium) 16px var(--font-sans);color:var(--on-midnight)}.hero__art .pane small{font:var(--weight-light) 13px/1.4 var(--font-sans);color:#fafbffb3}.section{padding:var(--space-20) 0}.section--sunken{background:var(--surface-sunken)}.section__head{max-width:62ch;margin-bottom:var(--space-10)}.overline{font:var(--overline-font);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--brand);margin-bottom:var(--space-3);display:block}.section h2{font:var(--weight-medium) var(--text-3xl)/1.08 var(--font-display);color:var(--text-strong);letter-spacing:var(--tracking-tight);margin-bottom:var(--space-3)}.section p.sub{font:var(--weight-light) var(--text-md)/1.5 var(--font-sans);color:var(--text-muted)}.grid{display:grid;gap:var(--space-5)}.grid--2{grid-template-columns:repeat(2,1fr)}.grid--3{grid-template-columns:repeat(3,1fr)}.grid--4{grid-template-columns:repeat(4,1fr)}.card{background:var(--surface-card);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);padding:var(--space-6);box-shadow:var(--shadow-sm);transition:transform var(--dur-base) var(--ease-out),box-shadow var(--dur-base) var(--ease-out);display:block;color:inherit}a.card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md);text-decoration:none}.card__icon{width:44px;height:44px;border-radius:var(--radius-md);background:var(--brand);display:flex;align-items:center;justify-content:center;margin-bottom:var(--space-4)}.card__icon img{width:26px;height:26px;filter:brightness(0) invert(1)}.card h3{font:var(--weight-medium) var(--text-lg) var(--font-display);color:var(--text-strong);margin-bottom:var(--space-2)}.card p{font:var(--weight-light) 15px/1.5 var(--font-sans);color:var(--text-muted)}.card .meta{margin-top:var(--space-4);font:var(--weight-medium) 13px var(--font-mono);color:var(--brand)}.palette{display:grid;grid-template-columns:1.35fr 1fr 1fr;grid-template-rows:1.15fr .65fr .65fr;gap:var(--space-3);height:440px}.pal{border-radius:var(--radius-lg);padding:var(--space-5);display:flex;flex-direction:column;gap:1px;box-shadow:var(--shadow-xs);min-height:0}.pal b{font:var(--weight-medium) 14px var(--font-sans)}.pal__hex{font:var(--weight-regular) 11px var(--font-mono);opacity:.82}.pal__pct{margin-top:auto;font:var(--weight-medium) var(--text-3xl)/.9 var(--font-display);letter-spacing:var(--tracking-tight)}.pal--white{grid-area:1 / 1 / 4 / 2}.pal--violet{grid-area:1 / 2 / 2 / 4}.pal--midnight{grid-area:2 / 2 / 4 / 3}.pal--orange{grid-area:2 / 3 / 3 / 4}.pal--lightblue{grid-area:3 / 3 / 4 / 4}.pal--orange .pal__pct,.pal--lightblue .pal__pct{font-size:var(--text-xl)}.page-intro{padding:var(--space-12) 0 var(--space-4)}.page-intro h1{font:var(--weight-medium) var(--text-3xl) var(--font-display);color:var(--text-strong);letter-spacing:var(--tracking-tight);margin-bottom:var(--space-3)}.page-intro p{font:var(--weight-light) var(--text-md)/1.5 var(--font-sans);color:var(--text-muted);max-width:62ch}.group-head{margin:var(--space-16) 0 var(--space-6);padding-bottom:var(--space-3);border-bottom:1px solid var(--border-subtle)}.group-head:first-of-type{margin-top:var(--space-4)}.group-head h2{font:var(--weight-medium) var(--text-2xl) var(--font-display);color:var(--text-strong)}.group-head .count{font:var(--weight-regular) 13px var(--font-mono);color:var(--text-subtle)}.specimens{display:flex;flex-direction:column;gap:var(--space-10)}.specimen__label{display:flex;align-items:baseline;gap:var(--space-3);margin-bottom:var(--space-3);flex-wrap:wrap}.specimen__label h3{font:var(--weight-medium) var(--text-md) var(--font-display);color:var(--text-strong)}.specimen__label p{font:var(--weight-light) 14px/1.4 var(--font-sans);color:var(--text-muted)}.frame{border:1px solid var(--border-subtle);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-sm);background:var(--surface-card);max-width:720px}.frame iframe{width:100%;border:0;display:block}.callout{background:var(--brand-subtle);border-left:3px solid var(--brand);border-radius:var(--radius-sm);padding:var(--space-4) var(--space-5);margin:var(--space-5) 0}.callout p{margin:0;color:var(--text-body);font:var(--weight-light) 15px/1.55 var(--font-sans)}.callout strong{font-weight:var(--weight-medium);color:var(--text-strong)}.callout--warn{background:var(--warning-soft);border-left-color:var(--cta)}.type-row{display:flex;align-items:baseline;gap:var(--space-5);padding:var(--space-4) 0;border-top:1px solid var(--border-subtle)}.type-row .tag{font:var(--weight-regular) 12px var(--font-mono);color:var(--text-subtle);width:120px;flex:none}.glass-demo{position:relative;border-radius:var(--radius-lg);overflow:hidden;height:300px;margin:var(--space-5) 0;background:var(--midnight);display:flex;align-items:center;justify-content:center;gap:var(--space-8)}.glass-demo .gshape{position:absolute;background:var(--brand)}.glass-demo .gpane{position:relative;background:var(--glass-fill-strong);border:1px solid var(--glass-border);border-radius:var(--glass-radius);box-shadow:var(--glass-highlight);backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));padding:var(--space-6) var(--space-8);color:var(--on-midnight);max-width:280px}.glass-demo .gpane b{display:block;font:var(--weight-medium) 16px var(--font-sans);margin-bottom:4px}.glass-demo .gpane small{font:var(--weight-light) 13px/1.4 var(--font-sans);color:#fafbffb8}.kits{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-5)}.kit{border-radius:var(--radius-lg);overflow:hidden;border:1px solid var(--border-subtle);box-shadow:var(--shadow-sm);background:var(--surface-card);display:block;color:inherit;transition:box-shadow var(--dur-base) var(--ease-out),transform var(--dur-base) var(--ease-out)}.kit:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg);text-decoration:none}.kit__preview{height:260px;overflow:hidden;border-bottom:1px solid var(--border-subtle);background:var(--surface-sunken)}.kit__preview iframe{width:1280px;height:1000px;border:0;transform:scale(.46);transform-origin:top left;pointer-events:none}.kit__body{padding:var(--space-5) var(--space-6)}.kit__body h3{font:var(--weight-medium) var(--text-lg) var(--font-display);color:var(--text-strong);margin-bottom:4px}.kit__body p{font:var(--weight-light) 14px var(--font-sans);color:var(--text-muted)}.footer{background:var(--midnight);color:#fafbff99;padding:var(--space-16) 0;margin-top:var(--space-24)}.footer__inner{display:flex;justify-content:space-between;gap:var(--space-8);flex-wrap:wrap;align-items:center}.footer img{height:24px}.footer p{font:var(--weight-light) 13px/1.6 var(--font-sans);max-width:50ch}.footer a{color:var(--violet-200)}.tag{display:inline-flex;align-items:center;gap:var(--space-2);padding:6px 14px;border-radius:var(--radius-pill);background:var(--glass-fill-strong);border:1px solid var(--glass-border);color:var(--on-midnight);font:var(--weight-medium) 13px var(--font-sans);margin-bottom:var(--space-6)}.tag__dot{width:7px;height:7px;border-radius:var(--radius-circle);background:var(--whatsapp);flex:none}.hero__shape{position:absolute;opacity:.9;filter:brightness(0) saturate(100%) invert(18%) sepia(89%) saturate(5400%) hue-rotate(254deg) brightness(95%) contrast(101%)}.hero__shape--flower{width:200px;right:0;top:-10px;opacity:.55}.hero__shape--leaf{width:120px;left:8px;bottom:-6px;opacity:.7}.skillcard{position:absolute;inset:30px 0 30px 24px;background:var(--glass-fill-strong);border:1px solid var(--glass-border);border-radius:var(--glass-radius);box-shadow:var(--glass-highlight),var(--shadow-lg);backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));padding:var(--space-5);display:flex;flex-direction:column;gap:var(--space-4)}.skillcard__bar{display:flex;gap:7px}.skillcard__bar span{width:10px;height:10px;border-radius:var(--radius-circle);background:color-mix(in srgb,var(--on-midnight) 32%,transparent)}.skillcard__code{margin:0;font:var(--weight-regular) 13px/1.7 var(--font-mono);color:color-mix(in srgb,var(--on-midnight) 90%,transparent);white-space:pre-wrap;word-break:break-word}.skillcard__code .c-key{color:var(--violet-200)}.skillcard__code .c-cmt{color:#fafbff80}.skillcard__code .c-str{color:var(--lightblue-300)}.skillcard__out{margin-top:auto;display:flex;align-items:center;gap:var(--space-3);padding-top:var(--space-4);border-top:1px solid var(--glass-border)}.skillcard__check{width:28px;height:28px;flex:none;border-radius:var(--radius-xs);background:var(--whatsapp);color:var(--on-brand);display:flex;align-items:center;justify-content:center;font-weight:var(--weight-bold)}.skillcard__out b{display:block;font:var(--weight-medium) 14px var(--font-sans);color:var(--on-midnight)}.skillcard__out small{font:var(--weight-light) 12px var(--font-sans);color:color-mix(in srgb,var(--on-midnight) 65%,transparent)}.chapter{position:relative;overflow:hidden;color:var(--on-brand)}.chapter--violet{background:var(--brand)}.chapter--midnight{background:var(--midnight)}.chapter--orange{background:var(--cta)}.chapter--lightblue{background:var(--lightblue-300);color:var(--midnight)}.chapter__inner{padding-block:var(--space-20);max-width:72ch;position:relative}.chapter h2{font:var(--weight-medium) var(--text-3xl)/1.08 var(--font-display);letter-spacing:var(--tracking-tight);margin:var(--space-3) 0 var(--space-5);color:inherit}.chapter h2 em{font-style:italic;color:inherit}.chapter p{font:var(--weight-light) var(--text-lg)/1.4 var(--font-sans);color:inherit}.chapter code.mono{color:inherit;background:var(--glass-fill-strong);padding:1px 7px;border-radius:var(--radius-xs)}.ghost-n{position:absolute;top:50%;right:var(--space-10);transform:translateY(-50%);font:var(--weight-medium) clamp(160px,22vw,320px)/1 var(--font-display);letter-spacing:var(--tracking-tight);color:color-mix(in srgb,currentColor 22%,transparent);user-select:none;pointer-events:none}.pill-overline{display:inline-flex;align-items:center;padding:9px 20px;border-radius:var(--radius-pill);background:var(--glass-fill-strong);border:1px solid var(--glass-border);box-shadow:var(--glass-highlight);backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));font:var(--overline-font);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:inherit;margin-bottom:var(--space-5)}.chapter--lightblue .pill-overline{background:var(--glass-fill-frost);border-color:var(--glass-border-frost)}.overline--invert{color:var(--violet-100)}.dna-block{margin-bottom:var(--space-12)}.dna-block__label{margin-bottom:var(--space-5)}.dna-block__label h3{font:var(--weight-medium) var(--text-lg) var(--font-display);color:var(--text-strong);margin-bottom:var(--space-1)}.dna-block__label p{font:var(--weight-light) 15px/1.5 var(--font-sans);color:var(--text-muted);max-width:56ch}.dna-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-6);margin-bottom:var(--space-12)}.dna-card{background:var(--surface-card);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);padding:var(--space-6);box-shadow:var(--shadow-sm)}.dna-card .glass-demo{margin:0;height:220px}.type-spec{display:flex;gap:var(--space-6);align-items:center}.type-spec__big{font:var(--weight-medium) 96px var(--font-display);color:var(--brand);line-height:.9}.type-rows{flex:1}.type-rows .type-row:first-child{border-top:0}.tag-mono{font:var(--weight-regular) 12px var(--font-mono);color:var(--text-subtle);width:116px;flex:none}.shapes-strip{display:flex;flex-wrap:wrap;gap:var(--space-5);align-items:center}.shapes-strip img{width:64px;height:64px;object-fit:contain;filter:brightness(0) saturate(100%) invert(18%) sepia(89%) saturate(5400%) hue-rotate(254deg) brightness(95%) contrast(101%)}.picons{position:relative;overflow:hidden;background:var(--midnight);border-radius:var(--radius-xl);padding:var(--space-8);display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-4)}.picons__bloom{position:absolute;width:320px;height:320px;border-radius:var(--radius-circle);background:var(--brand);left:38%;top:-90px}.picon{position:relative;background:var(--glass-fill-strong);border:1px solid var(--glass-border);border-radius:var(--glass-radius-sm);box-shadow:var(--glass-highlight);backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));padding:var(--space-5)}.picon img{width:38px;height:38px;display:block;filter:brightness(0) invert(1);margin-bottom:var(--space-3)}.picon b{display:block;font:var(--weight-medium) 15px var(--font-sans);color:var(--on-midnight);margin-bottom:var(--space-1)}.picon p{font:var(--weight-light) 13px/1.5 var(--font-sans);color:color-mix(in srgb,var(--on-midnight) 70%,transparent)}.logogrid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-4)}.logogrid figure{margin:0;position:relative;height:150px;border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;overflow:hidden;box-shadow:var(--shadow-xs)}.logogrid figure>img:not(.logogrid__bg){height:32px;position:relative}.logogrid figcaption{position:absolute;bottom:var(--space-3);left:0;right:0;text-align:center;font:var(--weight-regular) 11px var(--font-mono);color:color-mix(in srgb,var(--on-brand) 78%,transparent)}.logogrid__bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.logogrid__photo:after{content:"";position:absolute;inset:0;background:color-mix(in srgb,var(--midnight) 38%,transparent)}.logogrid__photo>img:not(.logogrid__bg){z-index:1}.logogrid__photo figcaption{z-index:1}.cite{margin:var(--space-16) 0 0;text-align:center}.cite blockquote{margin:0 auto var(--space-3);max-width:24ch;font:var(--weight-light) var(--text-2xl)/1.15 var(--font-sans);color:var(--text-strong);letter-spacing:var(--tracking-tight)}.cite blockquote em{font-style:normal;color:var(--brand)}.cite figcaption{font:var(--weight-regular) 12px var(--font-mono);color:var(--text-subtle)}.demo{display:grid;grid-template-columns:320px 1fr;gap:var(--space-8);align-items:center}.wa{width:320px;justify-self:center;border-radius:var(--radius-xl);overflow:hidden;box-shadow:var(--shadow-xl);border:1px solid var(--border-subtle);background:var(--surface-card)}.wa__bar{background:var(--whatsapp-700);color:var(--on-brand);padding:var(--space-4);display:flex;align-items:center;gap:var(--space-3)}.wa__avatar{width:38px;height:38px;border-radius:var(--radius-circle);background:#ffffff2e;display:flex;align-items:center;justify-content:center;flex:none}.wa__avatar img{width:20px;height:20px}.wa__bar b{display:block;font:var(--weight-bold) 15px var(--font-sans);line-height:1.2}.wa__bar small{font:12px var(--font-sans);opacity:.85}.wa__thread{background:#ece5dd;padding:var(--space-4) var(--space-3);display:flex;flex-direction:column;gap:var(--space-2);min-height:320px}.wa__b{max-width:82%;padding:8px 11px;border-radius:10px;font:13.5px/1.4 var(--font-sans);color:#0b141a;box-shadow:0 1px 1px #00000014}.wa__b--bot{align-self:flex-start;background:var(--neutral-0)}.wa__b--me{align-self:flex-end;background:#dcf8c6}.shot{position:relative;border-radius:var(--radius-xl);overflow:hidden;box-shadow:var(--shadow-lg)}.shot img{width:100%;height:360px;object-fit:cover;display:block}.glasschip{position:absolute;display:inline-flex;align-items:center;gap:var(--space-2);padding:9px 13px;background:var(--glass-fill-frost);border:1px solid var(--glass-border-frost);border-radius:var(--glass-radius-sm);box-shadow:var(--glass-highlight);backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));font:var(--weight-medium) 14px var(--font-sans);color:var(--brand)}.glasschip--tr{top:18px;right:18px}.glasschip--bl{bottom:18px;left:18px}.glasschip__ico{width:26px;height:26px;flex:none;border-radius:var(--radius-xs);background:var(--brand);color:var(--on-brand);display:flex;align-items:center;justify-content:center;font-size:14px}.demo__foot{margin-top:var(--space-8);text-align:center;font:var(--weight-light) var(--text-md) var(--font-sans);color:var(--text-muted)}.demo__foot a{color:var(--brand);font-weight:var(--weight-medium)}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-5);margin-bottom:var(--space-8)}.step{background:var(--surface-card);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);padding:var(--space-6);box-shadow:var(--shadow-sm)}.step__n{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:var(--radius-circle);background:var(--brand);color:var(--on-brand);font:var(--weight-medium) 16px var(--font-mono);margin-bottom:var(--space-4)}.step h3{font:var(--weight-medium) var(--text-md) var(--font-display);color:var(--text-strong);margin-bottom:var(--space-2)}.step p{font:var(--weight-light) 15px/1.5 var(--font-sans);color:var(--text-muted)}.codeblock{margin:0;background:var(--midnight);color:#fafbffeb;border-radius:var(--radius-lg);padding:var(--space-6);font:var(--weight-regular) 13.5px/1.9 var(--font-mono);overflow-x:auto;box-shadow:var(--shadow-md)}.codeblock .c-cmt{color:#fafbff80}.codeblock .c-str{color:var(--lightblue-300)}.roadmap{margin-top:var(--space-5);font:var(--weight-light) 15px var(--font-sans);color:var(--text-muted)}.roadmap b{font-weight:var(--weight-medium);color:var(--text-body)}.spine{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-5);margin-bottom:var(--space-8)}.track{min-width:0;background:var(--surface-card);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);padding:var(--space-8) var(--space-6);box-shadow:var(--shadow-sm);display:flex;flex-direction:column}.track__n{font:var(--weight-regular) 13px var(--font-mono);color:var(--text-subtle);margin-bottom:var(--space-5)}.track h3{font:var(--weight-medium) var(--text-xl) var(--font-display);color:var(--text-strong);margin-bottom:var(--space-1)}.track__pkg{font:var(--weight-regular) 12px var(--font-mono);color:var(--brand);margin-bottom:var(--space-4);display:block}.track p{font:var(--weight-light) 14px/1.55 var(--font-sans);color:var(--text-muted);margin-bottom:var(--space-5)}.track .cmd{margin-top:auto}.track__link{display:inline-block;margin-top:var(--space-4);font:var(--weight-medium) 13px var(--font-mono);color:var(--brand)}.cmd{display:flex;align-items:center;gap:var(--space-3);background:var(--surface-sunken);border:1px solid var(--border-subtle);border-radius:var(--radius-md);padding:8px 8px 8px 14px}.cmd code{font:var(--weight-regular) 13px var(--font-mono);color:var(--text-strong);overflow-x:auto;white-space:nowrap;flex:1;scrollbar-width:none}.cmd code::-webkit-scrollbar{display:none}.cmd__copy{flex:none;border:none;cursor:pointer;background:var(--brand);color:var(--on-brand);font:var(--weight-medium) 12px var(--font-sans);padding:7px 13px;border-radius:var(--radius-pill);transition:background var(--dur-fast) var(--ease-out)}.cmd__copy:hover{background:var(--brand-hover)}.cmd__copy.copied{background:var(--success)}.install-note{font:var(--weight-light) 15px var(--font-sans);color:var(--text-muted);margin:0 0 var(--space-3)}@media(max-width:940px){.spine{grid-template-columns:minmax(0,1fr)}}@media(prefers-reduced-motion:no-preference){html.has-js [data-reveal]{opacity:.001;transform:translateY(18px);transition:opacity var(--dur-slow) var(--ease-out),transform var(--dur-slow) var(--ease-out)}html.has-js [data-reveal].is-revealed{opacity:1;transform:none}}.catalog{display:grid;grid-template-columns:220px minmax(0,1fr);gap:var(--space-12);align-items:start;padding-bottom:var(--space-20)}.catnav{position:sticky;top:88px;max-height:calc(100vh - 110px);overflow-y:auto}.catnav__group{margin-bottom:var(--space-5);display:flex;flex-direction:column}.catnav__cat{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-2);font:var(--weight-medium) 14px var(--font-display);color:var(--text-strong);padding:6px 0}.catnav__cat:hover{color:var(--brand);text-decoration:none}.catnav__cat.active{color:var(--brand)}.catnav__cat .count{font:var(--weight-regular) 11px var(--font-mono);color:var(--text-subtle)}.catnav__item{font:var(--weight-light) 14px var(--font-sans);color:var(--text-muted);padding:4px 0 4px var(--space-3);border-left:1px solid var(--border-subtle)}.catnav__item:hover{color:var(--brand);text-decoration:none;border-left-color:var(--brand)}.catmain{min-width:0}.catgroup{scroll-margin-top:88px}.catgroup .group-head{display:flex;align-items:baseline;gap:var(--space-3)}.catentry{background:var(--surface-card);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:var(--space-6);margin-bottom:var(--space-8);scroll-margin-top:88px}.catentry__head{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-5);margin-bottom:var(--space-5);flex-wrap:wrap}.catentry__head h3{font:var(--weight-medium) var(--text-xl) var(--font-display);color:var(--text-strong);margin-bottom:var(--space-1)}.catentry__head p{font:var(--weight-light) 14px/1.5 var(--font-sans);color:var(--text-muted);max-width:58ch}.catentry__tools{display:flex;align-items:center;gap:var(--space-2);flex:none}.catseg{display:inline-flex;background:var(--surface-sunken);border:1px solid var(--border-subtle);border-radius:var(--radius-pill);padding:3px}.catseg button{border:none;cursor:pointer;background:transparent;color:var(--text-muted);font:var(--weight-medium) 13px var(--font-sans);padding:6px 14px;border-radius:var(--radius-pill);transition:background var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out)}.catseg button.active{background:var(--surface-card);color:var(--brand);box-shadow:var(--shadow-xs)}.catfull{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);background:var(--surface-card);color:var(--text-muted);cursor:pointer;transition:color var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out)}.catfull:hover{color:var(--brand);border-color:var(--brand)}.catprev{display:flex;align-items:center;justify-content:center;min-height:130px;padding:var(--space-8);background:var(--surface-sunken);border:1px solid var(--border-subtle);border-radius:var(--radius-md)}.catprev--empty{font:var(--weight-light) 14px var(--font-sans);color:var(--text-subtle)}.catprev__row{display:flex;flex-wrap:wrap;gap:var(--space-3);align-items:center;justify-content:center}.catcode{position:relative}.catcode pre{margin:0;background:var(--midnight);color:#fafbffeb;border-radius:var(--radius-md);padding:var(--space-5);font:var(--weight-regular) 13px/1.8 var(--font-mono);overflow-x:auto;min-height:130px}.catcode__copy{position:absolute;top:var(--space-3);right:var(--space-3)}.catcopy{flex:none;border:none;cursor:pointer;background:var(--brand);color:var(--on-brand);font:var(--weight-medium) 12px var(--font-sans);padding:6px 12px;border-radius:var(--radius-pill);transition:background var(--dur-fast) var(--ease-out)}.catcopy:hover{background:var(--brand-hover)}.catcopy.copied{background:var(--success)}.catsurfaces{display:flex;flex-direction:column;gap:var(--space-2);margin-top:var(--space-4)}.catsurface{display:flex;align-items:center;gap:var(--space-3);background:var(--surface-sunken);border:1px solid var(--border-subtle);border-radius:var(--radius-md);padding:7px 8px 7px 12px}.catsurface__label{flex:none;width:150px;display:flex;flex-direction:column}.catsurface__label b{font:var(--weight-medium) 12px var(--font-sans);color:var(--text-strong)}.catsurface__label span{font:var(--weight-regular) 10px var(--font-mono);color:var(--text-subtle)}.catsurface code{flex:1;font:var(--weight-regular) 12px var(--font-mono);color:var(--text-body);white-space:nowrap;overflow-x:auto;scrollbar-width:none}.catsurface code::-webkit-scrollbar{display:none}.catprops{margin-top:var(--space-4)}.catprops summary{cursor:pointer;font:var(--weight-medium) 13px var(--font-sans);color:var(--text-strong);padding:var(--space-2) 0}.catprops__count{font:var(--weight-regular) 11px var(--font-mono);color:var(--text-subtle);margin-left:var(--space-2)}.catprops table{width:100%;border-collapse:collapse;margin-top:var(--space-2);display:block;overflow-x:auto}.catprops th{text-align:left;font:var(--weight-medium) 12px var(--font-sans);color:var(--text-subtle);text-transform:uppercase;letter-spacing:var(--tracking-caps);padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--border-default)}.catprops td{font:var(--weight-light) 13px/1.5 var(--font-sans);color:var(--text-body);padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--border-subtle);vertical-align:top}.catprops td code{font:var(--weight-regular) 12px var(--font-mono);color:var(--brand)}.catenum{display:inline-block;background:var(--brand-subtle);border-radius:var(--radius-xs);padding:1px 6px;margin:1px 4px 1px 0}.catprops--none{font:var(--weight-light) 13px var(--font-sans);color:var(--text-subtle);margin-top:var(--space-4)}.catmodal{position:fixed;inset:0;z-index:100;background:var(--surface-page);display:flex;flex-direction:column}.catmodal__bar{display:flex;align-items:center;justify-content:space-between;padding:var(--space-4) var(--space-6);border-bottom:1px solid var(--border-subtle)}.catmodal__bar b{font:var(--weight-medium) var(--text-lg) var(--font-display);color:var(--text-strong)}.catmodal__bar button{border:1px solid var(--border-default);background:var(--surface-card);color:var(--text-body);font:var(--weight-medium) 13px var(--font-sans);padding:7px 14px;border-radius:var(--radius-pill);cursor:pointer}.catmodal__bar button:hover{color:var(--brand);border-color:var(--brand)}.catmodal__body{flex:1;display:flex;align-items:center;justify-content:center;padding:var(--space-10);overflow:auto}.catmodal__body .catprev{width:100%;max-width:980px;min-height:320px}@media(max-width:940px){.catalog{grid-template-columns:minmax(0,1fr)}.catnav{position:static;max-height:none}.catnav__group{display:inline-flex;flex-direction:row;flex-wrap:wrap;gap:var(--space-3);margin-right:var(--space-4)}.catnav__item{display:none}.catsurface__label{width:110px}}@media(max-width:940px){.hero__inner,.grid--2,.grid--3,.grid--4,.kits{grid-template-columns:1fr}.hero__art{height:280px}.nav__links a:not(.btn){display:none}.dna-grid,.demo,.steps{grid-template-columns:1fr}.picons{grid-template-columns:1fr 1fr}.ghost-n{font-size:120px;right:var(--space-4);opacity:.6}.palette{grid-template-columns:1fr 1fr;grid-template-rows:none;grid-auto-rows:minmax(112px,auto);height:auto}.pal--white,.pal--violet,.pal--midnight,.pal--orange,.pal--lightblue{grid-area:auto}.pal--white{grid-column:span 2}.pal__pct{font-size:var(--text-2xl)}.logogrid{grid-template-columns:1fr 1fr}@media(max-width:560px){.picons,.logogrid{grid-template-columns:1fr}}.demo .wa{width:100%;max-width:320px}.type-spec{flex-wrap:wrap;gap:var(--space-4)}.type-spec__big{font-size:64px}.type-rows{flex-basis:100%;min-width:0}.type-row{flex-wrap:wrap}.tag-mono{width:100%}}
