:root{--bg:#f3f4eb;--bg-2:#eaecdf;--panel:#fbfbf6;--panel-2:#fff;--ink:#101310;--line:#1013101a;--line-2:#1013102e;--text:#101310;--muted:#5f655b;--accent:#b6f36a;--accent-ink:#3f6b12;--radius:22px;--ease:cubic-bezier(.22, 1, .36, 1);--font:"Manrope", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--mono:"Geist Mono", ui-monospace, "SF Mono", Menlo, monospace;--gutter:clamp(16px, 4vw, 40px);--peach:#f4cdb4;--lime-soft:#d8f4ae;--sky:#c9dcec;--butter:#f2e4a8;--lilac:#dcd3f0;--sage:#cddbc3;--rose:#efcbd2;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--text);font-family:var(--font);-webkit-font-smoothing:antialiased;margin:0;font-size:15px;line-height:1.55}button,input,select{font:inherit;color:inherit}button{cursor:pointer}a{color:inherit}.muted{color:var(--muted)}.mono{font-family:var(--mono);font-size:.86em}:focus-visible{outline:2px solid var(--ink);outline-offset:3px}.label{border:1px dashed var(--line-2);font:500 11.5px var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);border-radius:6px;align-items:center;gap:8px;margin:0 0 16px;padding:4px 10px;display:inline-flex}.label:before{content:"";background:var(--accent);width:6px;height:6px;box-shadow:0 0 0 1px var(--ink);border-radius:50%}.label--plain{border:0;margin:0;padding:0}.label--plain:before{display:none}.announce{padding:8px var(--gutter);background:var(--ink);color:#e9ebdf;text-align:center;justify-content:center;align-items:center;gap:10px;font-size:13px;display:flex}.announce__dot{background:var(--accent);width:7px;height:7px;animation:blink 2.4s var(--ease) infinite;border-radius:50%;flex:none}@keyframes blink{50%{opacity:.25}}.topbar{z-index:10;padding:14px var(--gutter);background:color-mix(in srgb, var(--bg) 82%, transparent);-webkit-backdrop-filter:blur(14px)saturate(140%);backdrop-filter:blur(14px)saturate(140%);border-bottom:1px solid #0000;justify-content:space-between;align-items:center;display:flex;position:sticky;top:0}.logo{align-items:center;display:flex}.logo img{width:auto;height:24px;display:block}.topnav{white-space:nowrap;flex:none;align-items:center;gap:clamp(14px,3vw,28px);font-size:14px;font-weight:500;display:flex}.topnav a{color:var(--muted);text-decoration:none;transition:color .2s}.topnav a:hover{color:var(--text)}.topnav .account-link{white-space:nowrap;background:var(--ink);color:#fff;border-radius:999px;padding:8px 16px;font-weight:600}.topnav .account-link:hover{color:#fff;background:#2a2f29}.pill{border:1px solid var(--line-2);background:var(--panel-2);height:46px;color:var(--text);transition:transform .25s var(--ease), box-shadow .25s var(--ease), background .2s;border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:0 22px;font-size:15px;font-weight:600;text-decoration:none;display:inline-flex}.pill:hover{box-shadow:0 3px 0 var(--ink);transform:translateY(-2px)}.pill--dark{border-color:var(--ink);background:var(--ink);color:#fff}.pill--dark:hover{box-shadow:0 3px 0 var(--accent-ink)}.pill--lime{border-color:var(--accent);background:var(--accent);color:var(--ink)}.pill--lime:hover{box-shadow:0 3px #fff}.hero{padding:clamp(56px, 9vw, 104px) var(--gutter) 0;text-align:center}.hero h1{letter-spacing:-.05em;max-width:14ch;text-shadow:.035em .045em 0 var(--accent), .055em .07em 0 #1013101f;text-wrap:balance;margin:0 auto;font-size:clamp(44px,7.6vw,92px);font-weight:800;line-height:.98}.hero__lede{max-width:40em;color:var(--muted);text-wrap:balance;margin:26px auto 0;font-size:clamp(15px,1.6vw,17.5px)}.shelf{gap:16px;margin:clamp(40px,6vw,64px) 0 0;padding:4px 0 12px;display:grid;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,#0000,#000 14% 86%,#0000);mask-image:linear-gradient(90deg,#0000,#000 14% 86%,#0000)}.shelf__row{overflow:hidden}.shelf__track{gap:16px;width:max-content;padding:0 8px;animation:48s linear infinite slide;display:flex}.shelf__row--reverse .shelf__track{animation-duration:56s;animation-direction:reverse}.shelf:hover .shelf__track{animation-play-state:paused}@keyframes slide{to{transform:translate(-50%)}}.tile{--g:var(--ink);border:1px solid #10131014;border-radius:24px;flex:none;place-items:center;width:92px;height:92px;display:grid;position:relative;box-shadow:inset 0 1px #ffffff8c,0 1px #1013100f,0 10px 22px -14px #10131059}.tone-peach{background:var(--peach)}.tone-lime{background:var(--lime-soft)}.tone-sky{background:var(--sky)}.tone-butter{background:var(--butter)}.tone-lilac{background:var(--lilac)}.tone-sage{background:var(--sage)}.tone-rose{background:var(--rose)}.tone-ink{background:var(--ink);--g:var(--accent)}.glyph{width:48px;height:48px;display:block;position:relative}.glyph i,.glyph b{display:block;position:absolute}.glyph svg{fill:none;width:100%;height:100%;stroke:var(--g);stroke-width:3px;stroke-linecap:round;stroke-linejoin:round;position:absolute;inset:0;overflow:visible}.g-bounce .ball{background:var(--g);border-radius:50%;width:14px;height:14px;animation:1.1s infinite g-bounce;top:0;left:17px}.g-bounce .floor{background:var(--g);opacity:.35;border-radius:3px;height:3px;bottom:2px;left:8px;right:8px}@keyframes g-bounce{0%,to{animation-timing-function:cubic-bezier(.4,0,1,1);transform:translateY(0)scale(1)}48%{animation-timing-function:cubic-bezier(0,0,.2,1);transform:translateY(29px)scale(1.15,.85)}}.g-curve svg{opacity:.4}.g-curve .dot{background:var(--g);offset-path:path("M4 44C22 44 24 4 44 4");border-radius:50%;width:12px;height:12px;margin:-6px 0 0 -6px;animation:1.8s cubic-bezier(.65,0,.35,1) infinite alternate g-curve}@keyframes g-curve{0%{offset-distance:0%}to{offset-distance:100%}}.g-bars .glyph{justify-content:center;align-items:flex-end;gap:5px;display:flex}.g-bars i{background:var(--g);transform-origin:bottom;width:7px;height:40px;animation:g-bars 1.2s var(--ease) infinite;border-radius:4px;position:static}.g-bars i:nth-child(2){animation-delay:-.3s}.g-bars i:nth-child(3){animation-delay:-.6s}.g-bars i:nth-child(4){animation-delay:-.9s}@keyframes g-bars{0%,to{transform:scaleY(.25)}50%{transform:scaleY(1)}}.g-type .glyph{justify-content:center;align-items:center;display:flex;overflow:hidden}.g-type b{font:800 32px/1 var(--font);letter-spacing:-.04em;color:var(--g);animation:g-type 2.4s var(--ease) infinite;position:static}.g-type b+b{animation-delay:.12s}@keyframes g-type{0%{opacity:0;transform:translateY(110%)}25%,75%{opacity:1;transform:none}to{opacity:0;transform:translateY(-110%)}}.g-orbit .ring{border:3px solid var(--g);opacity:.3;border-radius:50%;inset:6px}.g-orbit .sat{animation:2.2s cubic-bezier(.45,.05,.55,.95) infinite spin;inset:0}.g-orbit .sat:after{content:"";background:var(--g);border-radius:50%;width:14px;height:14px;margin-left:-7px;position:absolute;top:1px;left:50%}@keyframes spin{to{transform:rotate(360deg)}}.g-spotlight .panel-shape{background:radial-gradient(18px 18px at var(--x,20%) 40%, #b6f36ae6, transparent 100%) #1b201a;border:2px solid #b6f36a73;border-radius:9px;animation:3s ease-in-out infinite alternate g-spot;inset:4px 2px}@property --x{syntax:"<percentage>";inherits:false;initial-value:20%}@keyframes g-spot{to{--x:80%}}.g-ripple i{border:3px solid var(--g);border-radius:50%;width:12px;height:12px;margin:auto;animation:2.1s cubic-bezier(.2,.6,.35,1) infinite g-ripple;inset:0}.g-ripple i:nth-child(2){animation-delay:.7s}.g-ripple i:nth-child(3){animation-delay:1.4s}@keyframes g-ripple{0%{opacity:1;transform:scale(.4)}to{opacity:0;transform:scale(4)}}.g-stagger i{background:var(--g);height:7px;animation:g-stagger 2.2s var(--ease) infinite;border-radius:4px;left:4px}.g-stagger i:first-child{width:40px;top:9px}.g-stagger i:nth-child(2){width:30px;animation-delay:.12s;top:21px}.g-stagger i:nth-child(3){width:36px;animation-delay:.24s;top:33px}@keyframes g-stagger{0%{opacity:0;transform:translate(-56px)}30%,75%{opacity:1;transform:none}to{opacity:0;transform:translate(56px)}}.g-aurora .glyph{border-radius:14px;overflow:hidden}.g-aurora i{filter:blur(7px);border-radius:50%;width:36px;height:36px;animation:4s ease-in-out infinite alternate g-aurora}.g-aurora i:first-child{background:#8d6fe0;top:2px;left:-4px}.g-aurora i:nth-child(2){background:#4fb6d8;animation-delay:-2s;bottom:0;right:-4px}@keyframes g-aurora{to{transform:translate(14px,10px)scale(1.2)}}.g-spring i{background:var(--g);border-radius:9px;animation:1.6s infinite g-spring;inset:10px}@keyframes g-spring{0%,to{transform:scale(.55)rotate(0)}30%{transform:scale(1.12)rotate(90deg)}42%{transform:scale(.95)rotate(90deg)}52%,80%{transform:scale(1)rotate(90deg)}}.g-stars svg{stroke-width:2px}.g-stars path{opacity:.45;stroke-dasharray:120;animation:3s ease-in-out infinite g-draw}.g-stars circle{fill:var(--g);stroke:none;animation:1.5s ease-in-out infinite alternate g-twinkle}.g-stars circle:nth-of-type(2){animation-delay:.4s}.g-stars circle:nth-of-type(3){animation-delay:.8s}@keyframes g-draw{0%{stroke-dashoffset:120px}60%,to{stroke-dashoffset:0}}@keyframes g-twinkle{to{opacity:.35}}.g-spin i{border:4px solid var(--g);border-radius:10px;animation:1.8s cubic-bezier(.7,0,.3,1) infinite spin;inset:9px}.hero__actions{margin:clamp(28px, 4vw, 40px) var(--gutter) 0;flex-wrap:wrap;justify-content:center;gap:12px;display:flex}.works{margin:36px var(--gutter) 0;justify-items:center;gap:12px;display:grid}.works ul{flex-wrap:wrap;justify-content:center;gap:8px;margin:0;padding:0;list-style:none;display:flex}.works li{background:var(--panel-2);border:1px solid var(--line);border-radius:999px;padding:5px 12px;font-size:13px;font-weight:600}.section-head{justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:24px;display:flex}.section-head h1,.section-head h2,.pack h2,.cta h2{letter-spacing:-.04em;text-wrap:balance;margin:0;font-size:clamp(28px,4vw,44px);font-weight:800;line-height:1.05}.section-head p.muted{max-width:40em;margin:10px 0 0}.section-head--center{text-align:center;justify-content:center}.section-head--center p.muted{margin-inline:auto}.library{max-width:1360px;padding:clamp(72px, 10vw, 120px) var(--gutter) 40px;margin:0 auto}.filters{gap:14px;margin-bottom:28px;display:grid}.search{border:1px solid var(--line-2);background:var(--panel-2);border-radius:999px;align-items:center;gap:10px;padding:0 16px;transition:border-color .2s,box-shadow .2s;display:flex;position:relative}.search:focus-within{border-color:var(--ink);box-shadow:0 3px 0 var(--accent), 0 3px 0 1px var(--ink)}.search svg{fill:none;width:18px;height:18px;stroke:var(--muted);stroke-width:2px;stroke-linecap:round;flex:none}.search input{background:0 0;border:0;outline:0;flex:1;min-width:0;height:52px;font-size:16px}.search input::placeholder{color:#8b9086}.search #result-count{flex:none}kbd{font:12px var(--mono);border:1px solid var(--line-2);color:var(--muted);background:var(--bg);border-radius:6px;padding:2px 7px}.chips{flex-wrap:wrap;gap:8px;display:flex}.chip{border:1px solid var(--line);color:var(--muted);background:0 0;border-radius:999px;padding:6px 13px;font-size:13px;font-weight:500;transition:all .2s}.chip:hover{color:var(--text);border-color:var(--line-2);background:var(--panel-2)}.chip[aria-pressed=true]{color:#fff;border-color:var(--ink);background:var(--ink)}.grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,320px),1fr));gap:32px 22px;display:grid}.card{cursor:pointer;flex-direction:column;display:flex;position:relative}.card[hidden]{display:none}.card__frame{aspect-ratio:16/10;border-radius:var(--radius);border:1px solid var(--line);transition:transform .35s var(--ease), box-shadow .35s var(--ease);background:#000;position:relative;overflow:hidden}.card:hover .card__frame{box-shadow:0 6px 0 var(--accent), 0 6px 0 1px var(--ink), 0 24px 40px -24px #10131080;transform:translateY(-4px)}.card__frame iframe{width:1280px;height:800px;transform:scale(var(--scale,.27));transform-origin:0 0;pointer-events:none;border:0;position:absolute;top:0;left:0}.card__frame .badge{position:absolute;top:12px;left:12px}.card__body{padding:14px 4px 0}.card h3{letter-spacing:-.02em;margin:0;font-size:17px;font-weight:700}.card__open{text-align:left;font-weight:inherit;background:0 0;border:0;padding:0}.card__open:after{content:"";position:absolute;inset:0}.card__summary{color:var(--muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:4px 0 10px;font-size:14px;line-height:1.5;display:-webkit-box;overflow:hidden}.card__tags{flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none;display:flex}.card__tags li{font:11.5px var(--mono);color:var(--muted);background:var(--bg-2);border-radius:6px;padding:2px 8px}.card__tags .env{color:var(--accent-ink);background:#b6f36a59}.badge{font:600 11px var(--mono);text-transform:uppercase;letter-spacing:.05em;border-radius:999px;flex:none;padding:4px 9px}.badge.free{color:var(--ink);background:var(--accent)}.badge.pro{color:#fff;background:var(--ink);text-transform:none;box-shadow:inset 0 0 0 1px #ffffff2e}.empty{text-align:center;color:var(--muted);padding:60px 0}.install{max-width:1360px;padding:clamp(72px, 10vw, 120px) var(--gutter) 0;margin:0 auto}.install__grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,380px),1fr));gap:18px;margin-top:12px;display:grid}.install__card{border:1px solid var(--line);border-radius:var(--radius);background:var(--panel);align-content:start;justify-items:start;gap:10px;min-width:0;padding:26px 28px;display:grid}.install__card h3{letter-spacing:-.02em;margin:0;font-size:19px;font-weight:800}.install__card p{margin:0;font-size:14.5px}.install__card .tpl__cmd{white-space:pre-wrap;word-break:break-word;width:100%;margin:4px 0 6px}.install__steps{flex-wrap:wrap;justify-content:center;gap:10px 28px;margin:22px 0 0;padding:0;font-size:14.5px;list-style:none;display:flex}.install__steps span{font:600 12px var(--mono);color:var(--muted);margin-right:8px}.pack{max-width:1360px;padding:0 var(--gutter);grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);align-items:center;gap:clamp(32px,6vw,80px);margin:clamp(56px,8vw,96px) auto 0;display:grid}.pack__copy>p.muted{max-width:34em;margin:16px 0 0;font-size:16px}.ticks{gap:10px;margin:22px 0 0;padding:0;font-size:14.5px;list-style:none;display:grid}.ticks li{padding-left:28px;position:relative}.ticks li:before{content:"";background:var(--accent);width:18px;height:18px;box-shadow:inset 0 0 0 1px var(--ink);border-radius:50%;position:absolute;top:2px;left:0}.ticks li:after{content:"";border:solid var(--ink);border-width:0 2px 2px 0;width:6px;height:9px;position:absolute;top:6px;left:6px;transform:rotate(45deg)}.jar-label{border-radius:var(--radius);background:var(--panel-2);border:1px solid var(--ink);box-shadow:8px 8px 0 var(--accent), 8px 8px 0 1px var(--ink);overflow:hidden}.jar-label__head{border-bottom:1px dashed var(--line-2);justify-content:space-between;align-items:center;gap:12px;padding:14px 20px;display:flex}.jar-label__head .mono{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.jar-label__stamp{border:1.5px solid var(--ink);font:700 11px var(--mono);text-transform:uppercase;letter-spacing:.1em;border-radius:6px;flex:none;padding:3px 9px;transform:rotate(-4deg)}.jar-label ul{margin:0;padding:6px 0;list-style:none}.jar-label li{justify-content:space-between;gap:16px;padding:11px 20px;font-size:14px;display:flex}.jar-label li+li{border-top:1px solid var(--line)}.jar-label li .mono{white-space:nowrap;font-weight:500}.jar-label li .muted{text-align:right}.how{max-width:1360px;padding:clamp(72px, 10vw, 120px) var(--gutter) 0;margin:0 auto}.how ol{grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:16px;margin:12px 0 0;padding:0;list-style:none;display:grid}.how li{border:1px solid var(--line);border-radius:var(--radius);background:var(--panel);padding:24px}.how li span{background:var(--ink);width:40px;height:40px;color:var(--accent);font:600 13px var(--mono);border-radius:12px;place-items:center;display:inline-grid}.how h3{letter-spacing:-.02em;margin:18px 0 6px;font-size:18px;font-weight:700}.how p{color:var(--muted);margin:0;font-size:14.5px}.pricing{max-width:920px;padding:clamp(72px, 10vw, 120px) var(--gutter) 0;margin:0 auto}.plans{grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:18px;margin-top:12px;display:grid}.plan{border:1px solid var(--line);border-radius:var(--radius);background:var(--panel);flex-direction:column;padding:28px;display:flex}.plan h3{align-items:center;gap:10px;margin:0;font-size:18px;font-weight:700;display:flex}.plan__tag{background:var(--accent);color:var(--ink);font:600 11px var(--mono);text-transform:uppercase;letter-spacing:.05em;border-radius:999px;padding:2px 9px}.plan__price{letter-spacing:-.05em;margin:14px 0 4px;font-size:48px;font-weight:800;line-height:1}.plan__price small{letter-spacing:0;color:var(--muted);margin:0 6px;font-size:15px;font-weight:500}.plan__price small:first-child{margin-left:0}.plan>p.muted{margin:6px 0 0;font-size:14px}.plan .ticks{flex:1;margin-bottom:26px}.plan--pro{background:var(--ink);color:#f3f4eb;border-color:var(--ink)}.plan--pro .muted,.plan--pro .plan__price small{color:#a8ad9f}.plan--pro .pill--dark{background:var(--accent);border-color:var(--accent);color:var(--ink)}.plan--pro .pill--dark:hover{box-shadow:0 3px #fff}.plan--pro .ticks li:before{box-shadow:none}.pricing-page{max-width:1180px;padding:72px var(--gutter) 96px;margin:0 auto}.pricing-page h1{letter-spacing:-.05em;margin:0;font-size:clamp(36px,5vw,60px)}.membership-plans{grid-template-columns:repeat(3,minmax(0,1fr))}.membership-plans .plan{padding:25px}.membership-plans .plan__price small{margin:12px 0 0;display:block}.membership-plans .plan h3{flex-wrap:wrap}.pricing-note{max-width:850px;color:var(--muted);text-align:center;margin:18px auto;font-size:13px;line-height:1.7}.pricing-faq{margin-top:52px}.billing-panel{border:1px solid var(--line);border-radius:var(--radius);background:var(--panel);padding:24px}.billing-panel h2{margin-top:0}.billing-actions{flex-wrap:wrap;gap:10px;margin-top:18px;display:flex}.billing-history{overflow-x:auto}@media (width<=760px){.membership-plans{grid-template-columns:1fr}.pricing-page{padding-top:44px}}.faq{max-width:820px;padding:clamp(72px, 10vw, 120px) var(--gutter) 0;margin:0 auto}.faq__list{gap:10px;margin-top:12px;display:grid}.faq details{border:1px solid var(--line);background:var(--panel);border-radius:18px;transition:background .2s}.faq details[open]{background:var(--panel-2)}.faq summary{letter-spacing:-.01em;cursor:pointer;justify-content:space-between;align-items:center;gap:16px;padding:18px 22px;font-size:16px;font-weight:700;list-style:none;display:flex}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:"+";background:var(--bg-2);width:28px;height:28px;font:500 18px/1 var(--mono);transition:transform .3s var(--ease), background .2s;border-radius:50%;flex:none;place-items:center;display:grid}.faq details[open] summary:after{background:var(--accent);transform:rotate(45deg)}.faq details p{color:var(--muted);margin:0;padding:0 22px 20px;font-size:15px}.cta{max-width:1280px;padding:clamp(48px, 7vw, 80px) var(--gutter);background:var(--ink);color:#f3f4eb;text-align:center;border-radius:32px;margin:clamp(80px,11vw,128px) auto 0;position:relative;overflow:hidden}@media (width>=1360px){.cta{margin-inline:auto}}@media (width<=1359px){.cta{margin-inline:var(--gutter)}}.cta:before{content:"";z-index:0;opacity:.5;background-image:radial-gradient(#b6f36a47 1px,#0000 1px);background-size:20px 20px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(60% 80% at 50% 100%,#000,#0000);mask-image:radial-gradient(60% 80% at 50% 100%,#000,#0000)}.cta>*{position:relative}.cta h2{text-shadow:.04em .05em #3b4a2a}.cta p{color:#a8ad9f;max-width:34em;margin:14px auto 28px;font-size:16px}.footer{max-width:1360px;padding:clamp(56px, 8vw, 88px) var(--gutter) 28px;margin:0 auto;font-size:14px}.footer__inner{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,2fr) repeat(2,minmax(0,1fr));gap:32px;padding-bottom:36px;display:grid}.footer__brand img{width:auto;height:20px;display:block}.footer__brand p{max-width:26em;margin:12px 0 0}.footer__col{align-content:start;gap:8px;display:grid}.footer__col h2{font:500 11.5px var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin:0 0 4px}.footer__col a{font-weight:500;text-decoration:none}.footer__col a:hover{text-underline-offset:3px;text-decoration:underline}.footer__legal{margin:20px 0 0;font-size:13px}.legal{max-width:760px;padding:56px var(--gutter) 40px;margin:0 auto}.legal h1{letter-spacing:-.045em;margin:0;font-size:clamp(32px,5vw,48px);font-weight:800;line-height:1.05}.legal__updated{margin:10px 0 0;font-size:13px}.legal__body{border:1px solid var(--line);border-radius:var(--radius);background:var(--panel);margin-top:32px;padding:clamp(22px,4vw,36px);font-size:15px;line-height:1.7}.legal__body.prose h2{color:var(--text);letter-spacing:-.01em;margin:30px 0 8px;font-size:18px;font-weight:700}.legal__body.prose h2:first-child{margin-top:0}.legal__body a{color:var(--accent-ink)}.legal__body strong{color:var(--text);font-weight:700}.icon-btn{border:1px solid var(--line-2);background:var(--panel-2);border-radius:50%;place-items:center;width:36px;height:36px;display:grid}.icon-btn:hover{background:var(--bg-2)}.icon-btn svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;width:18px;height:18px}.segmented{background:var(--bg-2);border:1px solid var(--line);border-radius:999px;gap:2px;padding:3px;display:inline-flex}.segmented button{color:var(--muted);background:0 0;border:0;border-radius:999px;padding:5px 13px;font-size:13px;font-weight:500;transition:all .2s}.segmented button:hover{color:var(--text)}.segmented button[aria-pressed=true],.segmented button[aria-checked=true]{background:var(--ink);color:#fff}.segmented--full{border-radius:12px;display:flex}.segmented--full button{border-radius:9px;flex:1;padding:6px 4px}.stage{background-color:var(--bg);background-image:radial-gradient(#10131021 1px,#0000 1px);background-size:18px 18px;min-height:0;position:relative;overflow:hidden}.device{transform-origin:50%;box-shadow:0 0 0 1px var(--ink), 0 30px 60px -24px #1013108c;background:#000;border-radius:14px;position:absolute;top:50%;left:50%;overflow:hidden}.device[data-viewport=mobile]{box-shadow:0 0 0 8px var(--ink), 0 30px 60px -24px #1013108c;border-radius:36px}.device iframe{border:0;width:100%;height:100%;display:block}.panel{border-left:1px solid var(--line);background:var(--panel-2);flex-direction:column;min-height:0;display:flex}.tabs{border-bottom:1px solid var(--line);scrollbar-width:none;gap:2px;padding:8px 10px 0;display:flex;overflow-x:auto}.tabs button{color:var(--muted);white-space:nowrap;background:0 0;border:0;padding:9px 10px 11px;font-size:13.5px;font-weight:500;position:relative}.tabs button:hover{color:var(--text)}.tabs button[aria-selected=true]{color:var(--text);font-weight:700}.tabs button[aria-selected=true]:after{content:"";background:var(--ink);border-radius:3px 3px 0 0;height:3px;position:absolute;bottom:-1px;left:10px;right:10px}.panel__scroll{scrollbar-width:thin;scrollbar-color:#c9ccbe transparent;flex:1;min-height:0;padding:18px;overflow-y:auto}.envs{flex-wrap:wrap;gap:6px;margin-bottom:18px;display:flex}.env-pill{border:1px solid var(--line);border-radius:8px;align-items:center;gap:6px;padding:3px 4px 3px 9px;font-size:12px;display:inline-flex}.env-pill em{font:10.5px var(--mono);text-transform:uppercase;border-radius:5px;padding:1px 6px;font-style:normal}.env-pill.tested em{color:var(--ink);background:var(--accent)}.env-pill.adaptable em{color:var(--muted);background:var(--bg-2)}.form{gap:16px;display:grid}.field{gap:7px;display:grid}.field label,.field .label{color:var(--text);font-size:13px;font-weight:600}.field .label{font-family:var(--font);letter-spacing:0;text-transform:none;border:0;margin:0;padding:0;display:block}.field .label:before{display:none}.field__row{justify-content:space-between;align-items:baseline;display:flex}.field__row output{color:var(--muted)}.field--inline{grid-template-columns:1fr auto;align-items:center}.field--inline .hint{grid-column:1/-1}.hint{color:var(--muted);margin:-2px 0 0;font-size:12px}.input{border:1px solid var(--line-2);background:var(--panel-2);border-radius:11px;outline:0;width:100%;height:40px;padding:0 12px;transition:border-color .2s,box-shadow .2s}.input:focus{border-color:var(--ink);box-shadow:0 0 0 3px #b6f36a99}select.input{appearance:none;background-image:linear-gradient(45deg, transparent 50%, var(--muted) 50%), linear-gradient(135deg, var(--muted) 50%, transparent 50%);background-position:calc(100% - 16px) 17px,calc(100% - 11px) 17px;background-repeat:no-repeat;background-size:5px 5px}.color{gap:8px;display:flex}.color input[type=color]{border:1px solid var(--line-2);cursor:pointer;background:0 0;border-radius:11px;flex:none;width:40px;height:40px;padding:0}.color input[type=color]::-webkit-color-swatch-wrapper{padding:3px}.color input[type=color]::-webkit-color-swatch{border:0;border-radius:7px}.color input[type=color]::-moz-color-swatch{border:0;border-radius:7px}input[type=range]{appearance:none;cursor:pointer;background:0 0;width:100%;height:20px;margin:0}input[type=range]::-webkit-slider-runnable-track{background:#dcdfd1;border-radius:4px;height:4px}input[type=range]::-moz-range-track{background:#dcdfd1;border-radius:4px;height:4px}input[type=range]::-webkit-slider-thumb{appearance:none;background:var(--accent);border:2px solid var(--ink);border-radius:50%;width:18px;height:18px;margin-top:-7px}input[type=range]::-moz-range-thumb{background:var(--accent);border:2px solid var(--ink);border-radius:50%;width:14px;height:14px}.switch{appearance:none;cursor:pointer;background:#d6d9cb;border-radius:999px;width:40px;height:24px;margin:0;transition:background .2s;position:relative}.switch:after{content:"";width:18px;height:18px;transition:transform .25s var(--ease);background:#fff;border-radius:50%;position:absolute;top:3px;left:3px;box-shadow:0 1px 2px #1013104d}.switch:checked{background:var(--ink)}.switch:checked:after{background:var(--accent);transform:translate(16px)}.link-btn{color:var(--muted);text-underline-offset:3px;background:0 0;border:0;margin-top:18px;padding:0;font-size:13px;text-decoration:underline}.link-btn:hover{color:var(--text)}.prose{color:#3a3f37;font-size:14px}.prose h1{color:var(--text);margin:22px 0 8px;font-size:15px;font-weight:700}.prose h1:first-child{margin-top:0}.prose h2,.prose h3{color:var(--text);margin:18px 0 6px;font-size:14px;font-weight:700}.prose p,.prose ul,.prose ol{margin:0 0 10px}.prose ul,.prose ol{padding-left:20px}.prose li{margin:3px 0}.prose code{font-family:var(--mono);background:var(--bg-2);color:var(--accent-ink);border-radius:5px;padding:1px 5px;font-size:12.5px}.prose pre{background:var(--ink);border:1px solid var(--ink);border-radius:12px;margin:0 0 12px;padding:12px;overflow-x:auto}.prose pre code{color:#dfe3d4;background:0 0;padding:0;font-size:12px;line-height:1.6}.prose input[type=checkbox]{accent-color:var(--ink);margin-right:6px}.prose ul:has(input[type=checkbox]){padding-left:0;list-style:none}.legal__body.prose{color:#3a3f37;font-size:15px}.files{border:1px solid var(--line);border-radius:12px;margin:0 0 12px;padding:0;list-style:none;overflow:hidden}.files li+li{border-top:1px solid var(--line)}.files button{text-align:left;background:0 0;border:0;justify-content:space-between;width:100%;padding:8px 12px;font-size:13px;display:flex}.files button:hover{background:var(--bg)}.files button[aria-pressed=true]{background:#b6f36a66}.files .muted{font:11.5px var(--mono)}.file-view{background:var(--ink);border:1px solid var(--ink);max-height:420px;font:11.5px/1.6 var(--mono);color:#dfe3d4;white-space:pre-wrap;word-break:break-word;border-radius:12px;margin:0;padding:12px;overflow:auto}.panel__actions{border-top:1px solid var(--line);background:var(--panel-2);flex-wrap:wrap;gap:8px;padding:12px;display:flex}.panel__actions #a-install{flex-basis:100%}.panel__purchase-terms{flex-basis:100%;margin:0}.btn{border:1px solid var(--line-2);background:var(--panel-2);border-radius:999px;height:44px;padding:0 18px;font-size:14px;font-weight:600;transition:all .2s}.btn:hover{border-color:var(--ink);background:var(--bg)}.btn--primary{border-color:var(--ink);color:#fff;background:var(--ink);flex:1}.btn--primary:hover{box-shadow:0 3px 0 var(--accent), 0 3px 0 1px var(--ink);background:#262b25;transform:translateY(-1px)}.toast{z-index:1000;opacity:0;pointer-events:none;background:var(--ink);color:#fff;box-shadow:0 3px 0 var(--accent), 0 16px 40px -10px #10131080;transition:all .3s var(--ease);border-radius:999px;padding:10px 18px;font-size:14px;font-weight:600;position:fixed;bottom:24px;left:50%;transform:translate(-50%,20px)}.toast.show{opacity:1;transform:translate(-50%)}.locked{color:#3a3f37;padding:4px 2px;font-size:14px}.locked svg{fill:none;width:28px;height:28px;stroke:var(--ink);stroke-width:1.8px;stroke-linecap:round}.locked h3{color:var(--text);margin:10px 0 6px;font-size:17px;font-weight:700}.locked p{margin:0 0 10px}.locked ul{color:var(--muted);margin:0;padding-left:18px}.locked li{margin:4px 0}.locked code{font-family:var(--mono);font-size:12px}.locked__terms{color:var(--muted);font-size:12.5px;margin-top:14px!important}.locked__terms a{color:var(--accent-ink)}[hidden]{display:none!important}.auth{place-items:center;min-height:calc(100dvh - 300px);padding:56px 16px;display:grid}.auth__card{border:1px solid var(--ink);background:var(--panel-2);width:min(100%,420px);box-shadow:8px 8px 0 var(--accent), 8px 8px 0 1px var(--ink);border-radius:24px;padding:34px 30px}.auth__card h1{letter-spacing:-.045em;margin:0;font-size:30px;font-weight:800}.auth__card>p.muted{margin:6px 0 24px;font-size:14px}.auth__card .form{gap:14px}.auth__card .btn--primary{width:100%}.auth__links{justify-content:space-between;display:flex}.auth__links .link-btn{margin:0}.code-input{letter-spacing:.5em;text-align:center;height:54px;font-size:22px}.code-input--device{letter-spacing:.25em}.btn--google{width:100%;color:var(--text);justify-content:center;align-items:center;gap:10px;text-decoration:none;display:flex}.btn--google svg{width:18px;height:18px}.auth-dialog{border:1px solid var(--line);background:var(--panel-2);width:min(420px,100vw - 32px);max-height:calc(100dvh - 40px);color:var(--ink);border-radius:20px;margin:auto;padding:32px;box-shadow:0 20px 80px #0000002e}.auth-dialog::backdrop{background:#10131075}.auth-dialog__close{color:var(--muted);cursor:pointer;background:0 0;border:0;width:32px;height:32px;font-size:25px;position:absolute;top:12px;right:12px}.auth-dialog__logo{margin:2px 0 26px;display:block}.auth-dialog h2{letter-spacing:-.04em;margin:0 0 8px;font-size:25px;line-height:1.25}.auth-dialog>p.muted{margin:0 0 24px;font-size:14px;line-height:1.6}.auth-dialog .btn--primary{width:100%}.auth-dialog .form{gap:14px}.auth-legal{color:var(--muted);text-align:center;margin:22px 0 0;font-size:12px;line-height:1.7}.auth-provider-note{color:var(--muted);margin:9px 0 0;font-size:12px;line-height:1.5}.auth-code-hint{overflow-wrap:anywhere;font-size:13px;line-height:1.6}.auth-preview-code{font:13px var(--mono);color:var(--muted);margin:12px 0}[data-auth-error]{margin:16px 0 0}.copy-dialog textarea{border:1px solid var(--line);width:100%;min-height:140px;font:12px/1.6 var(--mono);resize:vertical;border-radius:8px;margin:18px 0;padding:12px;display:block}@media (width<=480px){.auth-dialog{padding:28px 24px}}.divider{color:var(--muted);align-items:center;gap:12px;margin:18px 0;font-size:12px;display:flex}.divider:before,.divider:after{content:"";background:var(--line-2);flex:1;height:1px}.btn:disabled{opacity:.6;cursor:progress}.notice{border-radius:12px;margin:0 0 16px;padding:10px 14px;font-size:13.5px}.notice--error{color:#8a1c1c;background:#fbe4e1;border:1px solid #f1bdb6}.notice--ok{color:#2d5410;background:#e6f6d2;border:1px solid #c3e69c}#auth-error{margin:16px 0 0}.account{max-width:880px;padding:56px var(--gutter) 40px;margin:0 auto}.account__head{justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:32px;display:flex}.account h1{letter-spacing:-.045em;margin:0;font-size:clamp(32px,5vw,44px);font-weight:800}.account__head p{margin:4px 0 0}.account h2{margin:32px 0 12px;font-size:17px;font-weight:700}.owned{gap:10px;margin:0 0 12px;padding:0;list-style:none;display:grid}.owned li{border:1px solid var(--line);background:var(--panel-2);border-radius:18px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:18px 20px;display:flex}.owned h3{margin:0 0 2px;font-size:17px;font-weight:700}.owned p{margin:0}.owned .btn{flex:none;align-items:center;text-decoration:none;display:inline-flex}.empty-box{border:1px dashed var(--line-2);color:var(--muted);text-align:center;background:var(--panel);border-radius:18px;padding:28px}.empty-box a{color:var(--accent-ink);font-weight:600}.small{font-size:12.5px}.orders{border-collapse:collapse;width:100%;font-size:13.5px}.orders th{text-align:left;color:var(--muted);border-bottom:1px solid var(--line-2);padding:8px 10px;font-weight:600}.orders td{border-bottom:1px solid var(--line);padding:10px}.status{font:11px var(--mono);text-transform:uppercase;background:var(--bg-2);color:var(--muted);border-radius:999px;padding:2px 8px}.status.completed{color:var(--ink);background:var(--accent)}.status.failed,.status.refunded{color:#8a1c1c;background:#fbe4e1}.topbar{gap:16px}.search-trigger{border:1px solid var(--line-2);background:var(--panel-2);height:40px;color:var(--muted);text-align:left;border-radius:999px;flex:0 340px;align-items:center;gap:10px;margin-left:auto;padding:0 8px 0 14px;font-size:14px;transition:border-color .2s,box-shadow .2s;display:flex}.search-trigger:hover{border-color:var(--ink);box-shadow:0 2px 0 var(--accent), 0 2px 0 1px var(--ink)}.search-trigger svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;flex:none;width:16px;height:16px}.search-trigger span{white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;overflow:hidden}.palette{border:1px solid var(--ink);background:var(--panel-2);width:min(640px,100vw - 24px);max-height:min(620px,100dvh - 80px);color:var(--text);box-shadow:8px 8px 0 var(--accent), 8px 8px 0 1px var(--ink), 0 40px 80px -30px #10131080;border-radius:22px;margin:10vh auto auto;padding:0}.palette[open]{animation:pop .3s var(--ease);flex-direction:column;display:flex}.palette::backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#10131066}@keyframes pop{0%{opacity:0;transform:translateY(10px)scale(.985)}}.palette__bar{background:var(--accent);border-bottom:1px solid var(--ink);align-items:center;gap:10px;padding:0 16px;display:flex}.palette__bar svg{fill:none;width:18px;height:18px;stroke:var(--ink);stroke-width:2.2px;stroke-linecap:round;flex:none}.palette__bar input{background:0 0;border:0;outline:0;flex:1;min-width:0;height:58px;font-size:17px;font-weight:500}.palette__bar input::placeholder{color:#44513a}.palette__bar input::-webkit-search-cancel-button{display:none}.palette__bar kbd{color:var(--ink);background:#ffffff80;border-color:#10131040}.palette__body{flex:1;min-height:0;padding:8px;overflow-y:auto}.palette__browse{padding:8px 8px 4px}.palette__browse section+section{margin-top:14px}.palette__browse h3{font:500 11px var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin:0 0 8px}.palette__facets{flex-wrap:wrap;gap:6px;display:flex}.palette__facets .chip span{font:11px var(--mono);color:var(--muted);margin-left:2px}.palette__facets .chip:hover span{color:inherit}.palette__results{margin:0;padding:0;list-style:none}.palette__results:not(:empty){margin-top:6px}.palette__results li a{border-radius:14px;align-items:center;gap:14px;padding:8px;text-decoration:none;display:flex}.palette__results li[aria-selected=true] a,.palette__results li a:hover{background:var(--bg);box-shadow:inset 0 0 0 1px var(--line-2)}.palette__thumb{border:1px solid var(--line);background:#000;border-radius:10px;flex:none;width:112px;height:70px;position:relative;overflow:hidden}.palette__thumb iframe{transform-origin:0 0;pointer-events:none;border:0;width:1280px;height:800px;position:absolute;top:0;left:0;transform:scale(.0875)}.palette__text{flex:1;gap:2px;min-width:0;display:grid}.palette__text strong{letter-spacing:-.01em;font-size:15px}.palette__text .muted{white-space:nowrap;text-overflow:ellipsis;font-size:13px;overflow:hidden}.palette__empty{text-align:center;padding:28px}.palette__foot{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;padding:10px 12px 10px 16px;font-size:12.5px;display:flex}.palette__foot kbd{margin-right:2px;padding:1px 5px;font-size:11px}.pill--sm{height:34px;padding:0 14px;font-size:13px}.crumbs{color:var(--muted);flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:20px;font-size:13px;display:flex}.crumbs a{text-decoration:none}.crumbs a:hover{color:var(--text);text-underline-offset:3px;text-decoration:underline}.crumbs [aria-current]{color:var(--text);font-weight:600}.library--hub{padding-top:32px}.section-head h1{font-size:clamp(34px,5vw,56px)}.section-head p.muted a{color:var(--accent-ink);font-weight:600}.tpl{max-width:1360px;padding:32px var(--gutter) 0;margin:0 auto}.tpl__head{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:20px;margin-bottom:22px;display:grid}.tpl__meta{align-items:center;gap:12px;margin-bottom:10px;font-size:13px;display:flex}.tpl h1{letter-spacing:-.05em;text-shadow:.03em .04em 0 var(--accent);margin:0;font-size:clamp(36px,5.4vw,64px);font-weight:800;line-height:1}.tpl__summary{max-width:46em;color:var(--muted);margin:12px 0 0;font-size:16.5px}.tpl__envs{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.tuner{border:1px solid var(--ink);background:var(--panel-2);height:min(760px,100dvh - 120px);min-height:520px;box-shadow:8px 8px 0 var(--accent), 8px 8px 0 1px var(--ink);border-radius:24px;grid-template-columns:minmax(0,1fr) 380px;display:grid;overflow:hidden}.tuner__stage{flex-direction:column;min-width:0;min-height:0;display:flex}.tuner__bar{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;padding:10px 12px 10px 18px;display:flex}.tuner .stage{flex:1}.tpl__details{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:48px;display:grid}.tpl__block{border:1px solid var(--line);border-radius:var(--radius);background:var(--panel);padding:26px 28px}.tpl__block h2{letter-spacing:-.02em;color:var(--text);margin:0 0 12px;font-size:19px;font-weight:800}.tpl__block h2:not(:first-child){margin-top:22px}.tpl__chips{flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none;display:flex}.tpl__chips li{background:var(--panel-2);border:1px solid var(--line);border-radius:999px;padding:6px 12px;font-size:14px;font-weight:600}.tpl__chips--tags li{font:12px var(--mono);color:var(--muted);background:var(--bg-2);border-color:#0000;padding:3px 9px;font-weight:400}.tpl__steps{gap:10px;margin:0 0 12px;padding-left:20px;font-size:14.5px;display:grid}.tpl__steps code,.tpl__block>p code{font:12.5px var(--mono);background:var(--bg-2);border-radius:5px;padding:1px 5px}.tpl__steps q{font-style:italic}.tpl__cmd{background:var(--ink);color:#e8ecdf;font:12.5px/1.6 var(--mono);border-radius:12px;margin:0 0 12px;padding:14px 16px;overflow-x:auto}.tpl__doc{font-size:14.5px}.tpl__doc.prose h1{margin:18px 0 6px;font-size:15px}.tpl__doc.prose h2+h1{margin-top:0}.tpl__log{gap:8px;margin:0;padding:0;font-size:14px;list-style:none;display:grid}.tpl__log li{flex-wrap:wrap;gap:6px 14px;display:flex}.tpl__similar{margin-top:clamp(56px,8vw,88px)}.tpl__similar .section-head h2{font-size:clamp(24px,3vw,32px)}@media (width<=900px){.topnav .hide-sm{display:none}.tpl__details{grid-template-columns:1fr}.tuner{grid-template-columns:minmax(0,1fr);height:auto}.tuner__stage{height:min(56vw,420px);min-height:240px}.panel{border-left:0;border-top:1px solid var(--line);max-height:640px}.tpl__head{grid-template-columns:1fr}.tpl__envs{justify-content:flex-start}.pack{grid-template-columns:1fr}.footer__inner{grid-template-columns:1fr 1fr}.footer__brand{grid-column:1/-1}}@media (width<=560px){.topnav .hide-sm,.search-trigger span,.search-trigger kbd{display:none}.search-trigger{flex:none;justify-content:center;width:40px;padding:0}.palette__thumb,.tuner__bar .label{display:none}.tuner__bar{justify-content:flex-end}.tile{border-radius:20px;width:72px;height:72px}.glyph{transform:scale(.8)}.section-head{flex-direction:column;align-items:flex-start}.section-head--center{align-items:center}.jar-label li{flex-direction:column;gap:2px}.jar-label li .muted{text-align:left}.jar-label{box-shadow:5px 5px 0 var(--accent), 5px 5px 0 1px var(--ink)}}@media (width<=400px){.topnav .hide-xs{display:none}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.shelf__track{animation:none}}
