:root{color-scheme:light;--canvas:#e9edf2;--island:#fff;--island-line:#10182814;--well:#f2f4f7;--well-2:#e7ebf0;--line:#e4e8ee;--dash:#b9c2ce;--ink:#10151d;--ink-2:#344054;--muted:#667085;--hint:#98a2b3;--on-ink:#fff;--brand:#3a86ff;--accent:#3a86ff;--accent-hover:#2470eb;--accent-ink:#2470eb;--accent-soft:#e3edff;--accent-wash:#3a86ff1a;--stage-colour:color-mix(in srgb, var(--accent) 65%, #081029);--accent-glow:#3a86ff80;--on-accent:#fff;--swatch-blue:#3a86ff;--swatch-purple:#8b5cf6;--swatch-pink:#ec4899;--swatch-orange:#f97316;--swatch-green:#16a34a;--swatch-mono:linear-gradient(135deg, #1d1d1f 0 50%, #fff 50% 100%);--featured-soft:#fff1d6;--featured-ink:#a15c00;--ok:#12b981;--ok-soft:#dcf7ec;--ok-solid:#12b981;--ok-ink:#047857;--danger:#e5484d;--danger-soft:#fde8e8;--danger-solid:#d93a40;--fave:#ffb020;--terminal:#1f1c1c;--terminal-ink:#f2eeed;--terminal-dim:#9b9493;--terminal-accent:#6fa7ff;--terminal-dot:#ffffff29;--nav-hover:#1018280f;--nav-active:#fff;--tile-selected:#10182812;--font:"Manrope", "Inter", system-ui, -apple-system, sans-serif;--mono:ui-monospace, "SF Mono", "Cascadia Mono", Menlo, monospace;--r-island:18px;--r-card:14px;--r-control:10px;--r-pill:999px;--gap:10px;--shadow-pop:0 0 0 1px var(--island-line), 0 22px 56px -14px #10182857;--ease-out:cubic-bezier(.2, .8, .2, 1);--ease-in:cubic-bezier(.4, 0, 1, 1);--ease-spring:cubic-bezier(.34, 1.56, .64, 1);--t-fast:.14s;--t-base:.22s;--t-slow:.42s}:root[data-theme=dark]{color-scheme:dark;--canvas:#1f1c1c;--island:#2c2929;--island-line:#ffffff12;--well:#363232;--well-2:#403b3b;--line:#3d3838;--dash:#5e5757;--ink:#f2eeed;--ink-2:#d4cecd;--muted:#aba4a3;--hint:#857d7c;--on-ink:#1f1c1c;--accent:#3a86ff;--accent-hover:#2a74ee;--accent-ink:#6fa7ff;--accent-soft:#2d3b54;--accent-wash:#3a86ff24;--accent-glow:#3a86ff8c;--on-accent:#fff;--featured-soft:#4a3a1f;--featured-ink:#ffc266;--ok:#34d399;--ok-soft:#2d483d;--ok-solid:#10a877;--ok-ink:#34d399;--danger:#ff6b6b;--danger-soft:#3e2b2b;--terminal:#161414;--nav-hover:#ffffff12;--nav-active:#3a3535;--tile-selected:#ffffff14;--shadow-pop:0 0 0 1px var(--island-line), 0 24px 60px -14px #000c}:root[data-accent=purple]{--accent:#8b5cf6;--accent-hover:#7c3aed;--accent-ink:#6d28d9;--accent-soft:#efe9fe;--accent-wash:#8b5cf61a;--accent-glow:#8b5cf680}:root[data-theme=dark][data-accent=purple]{--accent-hover:#7c4ff0;--accent-ink:#b69cff;--accent-soft:#3a3150;--accent-wash:#8b5cf624;--accent-glow:#8b5cf68c}:root[data-accent=pink]{--accent:#ec4899;--accent-hover:#db2777;--accent-ink:#be185d;--accent-soft:#fde7f2;--accent-wash:#ec48991a;--accent-glow:#ec489980}:root[data-theme=dark][data-accent=pink]{--accent-hover:#dc3a88;--accent-ink:#f58cc3;--accent-soft:#4a2c3b;--accent-wash:#ec489924;--accent-glow:#ec48998c}:root[data-accent=orange]{--accent:#ea580c;--accent-hover:#c2410c;--accent-ink:#c2410c;--accent-soft:#ffedd5;--accent-wash:#f973161a;--accent-glow:#f9731680}:root[data-theme=dark][data-accent=orange]{--accent-hover:#c2410c;--accent-ink:#fdab6e;--accent-soft:#4a3324;--accent-wash:#f9731624;--accent-glow:#f973168c}:root[data-accent=green]{--accent:#15803d;--accent-hover:#166534;--accent-ink:#15803d;--accent-soft:#dcfce7;--accent-wash:#16a34a1a;--accent-glow:#16a34a80}:root[data-theme=dark][data-accent=green]{--accent-hover:#166534;--accent-ink:#5fd18a;--accent-soft:#2a4232;--accent-wash:#16a34a24;--accent-glow:#16a34a8c}:root[data-accent=mono]{--accent:#1d1d1f;--accent-hover:#000;--accent-ink:#1d1d1f;--accent-soft:#dadadf;--accent-wash:#1d1d1f14;--accent-glow:#1d1d1f66;--stage-colour:#2b2b2f}:root[data-theme=dark][data-accent=mono]{--accent:#f2eeed;--accent-hover:#fff;--accent-ink:#f2eeed;--accent-soft:#56504f;--accent-wash:#ffffff1a;--accent-glow:#ffffff73;--stage-colour:#3a3636;--on-accent:#1f1c1c}:root:lang(zh){--font:"Manrope", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Noto Sans CJK SC", "Noto Sans SC", "Source Han Sans SC", system-ui, sans-serif}:root:lang(ja){--font:"Manrope", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Yu Gothic", "YuGothic", "Meiryo", "Noto Sans CJK JP", "Noto Sans JP", "Source Han Sans JP", system-ui, sans-serif}:root:lang(ko){--font:"Manrope", "Apple SD Gothic Neo", "Malgun Gothic", "Noto Sans CJK KR", "Noto Sans KR", "Source Han Sans KR", system-ui, sans-serif}@font-face{font-family:Manrope;src:url(/fonts/Manrope-variable.ttf)format("truetype");font-weight:200 800;font-display:swap}@property --spin{syntax:"<angle>";inherits:false;initial-value:0deg}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{background:var(--canvas);color:var(--ink);font-family:var(--font);-webkit-font-smoothing:antialiased;margin:0;line-height:1.6}a{color:inherit;text-decoration:none}button,select{font:inherit;color:inherit}button,a,select{-webkit-tap-highlight-color:transparent}button,select{cursor:pointer}button{border:0}button,a,select{touch-action:manipulation}a:focus-visible,button:focus-visible,select:focus-visible,summary:focus-visible{outline:none}a:focus-visible,summary:focus-visible,select:focus-visible{background:var(--accent-wash);border-radius:6px}.header nav a:focus-visible,.footer nav a:focus-visible,.text-link:focus-visible{color:var(--accent-ink)}.icon-button:focus-visible{background:var(--nav-hover)}.github-button:focus-visible{background:var(--well)}.primary:focus-visible{background:color-mix(in srgb, var(--accent-hover) 90%, var(--ink))}.secondary:focus-visible{background:var(--well-2)}img{max-width:100%;display:block}h1,h2,h3,p,figure{margin:0}button:disabled{cursor:progress}[hidden]{display:none!important}.icon-library{width:0;height:0;position:absolute;overflow:hidden}.icon{fill:none;stroke:currentColor;stroke-width:1.65px;stroke-linecap:round;stroke-linejoin:round;flex:none;width:20px;height:20px}.wrap{width:min(1160px,100% - 80px);margin-inline:auto}.sr-only{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.skip-link{z-index:10;background:var(--island);border-radius:10px;padding:10px 18px;position:fixed;top:12px;left:12px;transform:translateY(-150%)}.skip-link:focus{transform:none}.header{grid-template-columns:minmax(max-content,1fr) auto minmax(max-content,1fr);grid-template-areas:"brand nav actions";align-items:center;gap:28px;min-height:100px;display:grid}.header>.brand{grid-area:brand;justify-self:start}.brand{letter-spacing:-1.1px;flex-shrink:0;align-items:center;gap:9px;font-size:24px;font-weight:800;line-height:1;display:inline-flex}.brand-accent{color:var(--accent-ink)}.header nav{color:var(--ink-2);grid-area:nav;justify-content:center;align-items:center;gap:28px;font-size:13px;font-weight:650;display:flex}.header nav a,.footer nav a{transition:color .14s}.header nav a{white-space:nowrap}.header nav a:hover,.footer nav a:hover{color:var(--accent-ink)}.header-actions{grid-area:actions;justify-self:end;align-items:center;gap:13px;display:flex}.icon-button{width:40px;height:40px;color:var(--ink-2);background:0 0;border-radius:50%;place-items:center;display:grid}.icon-button:hover{background:var(--nav-hover)}.github-button{background:var(--island);border-radius:var(--r-pill);align-items:center;gap:9px;padding:9px 11px 9px 13px;font-size:12px;font-weight:750;display:inline-flex}.github-button:hover{background:var(--well)}.github-button .icon{width:18px;height:18px}.star-count{border-radius:var(--r-pill);background:var(--well);text-align:center;font-variant-numeric:tabular-nums;min-width:23px;padding:1px 7px;font-size:11px}.hero{text-align:center;padding-top:57px}.release-pill{color:var(--ink-2);background:var(--island);border-radius:var(--r-pill);align-items:center;gap:9px;padding:7px 13px;font-size:11px;font-weight:650;display:inline-flex}.release-pill .icon{width:13px;height:13px}.status-dot{background:var(--ok-solid);border-radius:50%;flex:none;width:6px;height:6px}.pill-divider{background:var(--line);width:1px;height:11px;margin-inline:2px}h1{letter-spacing:-.06em;margin:28px 0 22px;font-size:clamp(62px,6.8vw,88px);font-weight:800;line-height:1.05}h1 span{color:var(--accent-ink)}.hero-description{letter-spacing:-.25px;color:var(--muted);font-size:17px;line-height:1.75}.hero-actions{justify-content:center;align-items:center;gap:26px;margin-top:27px;display:flex}.button{border-radius:var(--r-pill);justify-content:center;align-items:center;gap:10px;padding:14px 23px;font-size:13px;font-weight:750;line-height:1.5;transition:background-color .14s,transform .14s;display:inline-flex}.button:hover{transform:translateY(-2px)}.primary{background:var(--accent-hover);color:var(--on-accent)}.primary:hover{background:color-mix(in srgb, var(--accent-hover) 90%, var(--ink))}.button-arrow{width:16px;height:16px;margin-left:6px}.text-link{align-items:center;gap:8px;font-size:12px;font-weight:750;display:inline-flex}.text-link:hover{color:var(--accent-ink)}.text-link span{font-size:18px;font-weight:500}.download-caption{color:var(--muted);min-height:18px;margin:12px 0 0;font-size:11px}.download-status{max-width:640px;color:var(--ink-2);margin:8px auto 0;font-size:12px}.download-status:empty{display:none}.app-preview{border-radius:var(--r-island);background:var(--island);border:1px solid var(--island-line);margin:42px auto 0;padding:7px;overflow:hidden}.app-preview picture{aspect-ratio:2000/1326;background:var(--canvas);border-radius:12px;display:block;overflow:hidden}.app-preview img{object-fit:contain;width:100%;height:100%}.app-preview figcaption{color:var(--muted);justify-content:space-between;align-items:center;gap:12px;padding:13px 16px 7px;font-size:10px;display:flex}.app-preview figcaption>span:first-child{align-items:center;gap:7px;display:inline-flex}.trust-line{color:var(--ink-2);justify-content:center;align-items:center;gap:33px;margin:0;padding:26px 0 0;font-size:12px;font-weight:600;list-style:none;display:flex}.trust-line li{align-items:center;gap:6px;display:flex}.trust-line .icon{width:16px;height:16px;color:var(--accent)}.section{padding-top:116px}.eyebrow{color:var(--muted);letter-spacing:1.65px;margin-bottom:19px;font-size:10px;font-weight:750}h2{letter-spacing:-2px;font-size:clamp(32px,3.7vw,44px);font-weight:800;line-height:1.2}h3{letter-spacing:-.55px;font-size:18px;font-weight:750;line-height:1.4}.download-heading{text-align:center}.download-heading>p:not(.eyebrow){color:var(--muted);margin:16px 0 9px;font-size:13px}.version-link{color:var(--accent-ink);font-size:11px;font-weight:650}.download-grid{grid-template-columns:repeat(3,1fr);gap:12px;margin-top:35px;display:grid}.download-card{border-radius:var(--r-island);background:var(--island);padding:26px}.download-card.recommended{box-shadow:inset 0 0 0 1.5px var(--accent-ink)}.platform-heading{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;min-height:32px;display:flex}.platform-title{align-items:center;gap:10px;display:flex}.platform-icon{width:28px;height:28px}.recommendation{color:var(--accent-ink);background:var(--accent-soft);border-radius:var(--r-pill);margin-left:auto;padding:4px 9px;font-size:9px;font-weight:750}.download-card h3{font-size:19px}.download-card p{color:var(--muted);margin-top:4px;font-size:11px}.installer-label{color:var(--muted);margin-top:22px;margin-bottom:7px;font-size:10px;font-weight:650;display:block}.select-control{position:relative}.select-control select{-webkit-appearance:none;appearance:none;cursor:pointer}.select-control .select-chevron{pointer-events:none;width:16px;height:16px;color:var(--muted);position:absolute;top:50%;right:12px;transform:translateY(-50%)}.installer-summary{min-height:40px;color:var(--ink);align-items:center;margin:0;font-size:11px;display:flex}.download-card select{border-radius:var(--r-control);background:var(--well);border:0;width:100%;height:40px;padding:11px 38px 11px 12px;font-size:11px}.secondary{background:var(--well);width:100%;margin-top:13px;padding:12px 15px;font-size:11px}.secondary .icon{width:15px;height:15px;margin-left:auto}.secondary:hover{background:var(--well-2)}.recommended .secondary{background:var(--accent-hover);color:var(--on-accent)}.asset-detail{color:var(--muted);text-align:center;min-height:14px;margin-top:10px;font-size:9px;display:block}.platform-note{color:var(--muted);text-align:center;margin-top:20px;font-size:10px}.platform-note a{text-underline-offset:3px;white-space:nowrap;text-decoration:underline}.footer{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:35px;margin-top:88px;padding:38px 0 36px;display:flex}.footer .brand{letter-spacing:-.9px;font-size:19px}.footer p{color:var(--muted);margin-top:9px;font-size:10px}.footer nav{flex-wrap:wrap;justify-content:flex-end;gap:8px 25px;font-size:11px;font-weight:650;display:flex}.footer nav a{white-space:nowrap}.footer-bottom{color:var(--muted);align-items:center;gap:25px;margin-top:16px;font-size:9px;display:flex}.theme-select{align-items:center;gap:4px;display:flex}.theme-select .icon{width:13px;height:13px}.theme-select select{background:0 0;border:0;padding:5px 22px 5px 0;font-size:10px}.theme-select .select-chevron{right:0}.theme-select option{background:var(--island);color:var(--ink)}.language-picker{position:relative}.language-picker>summary{cursor:pointer;-webkit-tap-highlight-color:transparent;list-style:none}.language-picker>summary::-webkit-details-marker{display:none}.language-picker>summary.icon-button:focus-visible,.language-picker[open]>summary.icon-button{background:var(--nav-hover);border-radius:50%}.language-summary{align-items:center;gap:4px;padding:5px 22px 5px 0;font-size:10px;display:flex;position:relative}.language-summary .icon{width:13px;height:13px}.language-summary .select-chevron{color:var(--muted);position:absolute;top:50%;right:0;transform:translateY(-50%)}.language-menu{z-index:20;background:var(--island);min-width:168px;box-shadow:var(--shadow-pop);border-radius:14px;margin:0;padding:6px;list-style:none;position:absolute;top:calc(100% + 8px);right:0}.language-picker.is-footer .language-menu{inset:auto auto calc(100% + 8px) 0}.language-menu a{color:var(--ink-2);white-space:nowrap;border-radius:9px;padding:8px 12px;font-size:13px;font-weight:650;line-height:1.4;display:block}.language-menu a:hover,.language-menu a:focus-visible{background:var(--well);color:var(--ink)}.language-menu a[aria-current=true]{background:var(--accent-wash);color:var(--accent-ink)}.footer-controls{align-items:center;gap:18px;display:flex}.language-offer{z-index:30;background:var(--island);border-radius:var(--r-pill);max-width:calc(100% - 32px);box-shadow:var(--shadow-pop);color:var(--ink-2);opacity:0;transition:opacity var(--t-base) var(--ease-out), transform var(--t-base) var(--ease-out);align-items:center;gap:10px;padding:7px 7px 7px 14px;font-size:13px;font-weight:650;display:flex;position:fixed;bottom:16px;left:16px;transform:translateY(8px)}.language-offer.is-open{opacity:1;transform:none}.language-offer>.icon{width:16px;height:16px;color:var(--muted)}.language-offer a{color:var(--accent-ink)}.language-offer-close{width:30px;height:30px;color:var(--muted);background:0 0;border-radius:50%;flex:none;place-items:center;display:grid}.language-offer-close:hover,.language-offer-close:focus-visible{background:var(--nav-hover);color:var(--ink)}.language-offer-close .icon{width:16px;height:16px}@media (width>=1500px){.hero{padding-top:75px}}@media (width<=1040px){.github-label{display:none}}@media (width<=1000px){.wrap{width:calc(100% - 48px)}.header{gap:18px}.header nav{gap:20px}.hero{padding-top:40px}}@media (width<=840px){.header{grid-template-columns:1fr auto;grid-template-areas:"brand actions""nav nav";row-gap:4px;min-height:80px}.header nav{padding-bottom:13px}}@media (width<=720px){.wrap{width:calc(100% - 36px)}.header{gap:10px}.brand{font-size:22px}.brand img{width:32px;height:auto}.header-actions{gap:5px}.header nav{gap:27px;font-size:11px}.hero{padding-top:32px}.release-pill{gap:7px;font-size:9px}h1{margin-top:24px;font-size:65px}.hero-description{max-width:360px;margin-inline:auto;font-size:14px}.desktop-break{display:none}.hero-actions{gap:19px;margin-top:23px}.button{padding:13px 17px;font-size:11px}.hero-actions .text-link{gap:4px;font-size:10px}.button-arrow{display:none}.download-caption{font-size:9px}.app-preview{border-radius:12px;margin-top:31px;padding:4px}.app-preview picture{border-radius:8px}.app-preview figcaption{padding:10px 7px 6px;font-size:8px}.app-preview figcaption>span:last-child{display:none}.trust-line{grid-template-columns:repeat(2,auto);justify-content:center;gap:10px 22px;padding-top:20px;font-size:11px;display:grid}.trust-line li{gap:4px}.trust-line .icon{width:14px;height:14px}.section{padding-top:74px}h2{letter-spacing:-1.65px;font-size:34px}.eyebrow{letter-spacing:1.3px;margin-bottom:15px;font-size:8px}.download-heading h2{font-size:32px}.download-heading>p:not(.eyebrow){font-size:12px}.download-grid{margin-inline:auto;grid-template-columns:1fr;max-width:440px;margin-top:25px}.download-card{padding:23px}.download-card .button,.download-card select,.installer-summary{font-size:12px}.platform-note{max-width:300px;margin-inline:auto;line-height:1.9}.footer{flex-direction:column;align-items:flex-start;gap:27px;margin-top:60px;padding-top:30px}.footer-right{width:100%}.footer nav{flex-wrap:wrap;justify-content:flex-start;row-gap:8px}.footer-bottom{justify-content:space-between;gap:10px;font-size:8px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important;animation:none!important}}@media (width<=720px){h1{letter-spacing:-.065em;font-size:clamp(42px,13vw,58px)}}.page{padding:36px 0 96px}.header nav a[aria-current=page]{color:var(--accent-ink)}.page-intro{max-width:720px;margin:28px 0 44px}.page-intro h1{margin:0 0 16px;font-size:clamp(40px,5vw,60px)}.page-intro>p:not(.eyebrow){color:var(--ink-2);font-size:18px}.page-actions{flex-wrap:wrap;align-items:center;gap:18px 26px;margin-top:28px;display:flex}.docs-layout{grid-template-columns:220px minmax(0,1fr);align-items:start;gap:56px;margin-top:28px;display:grid}.docs-nav{flex-direction:column;gap:2px;display:flex;position:sticky;top:24px}.docs-nav a{color:var(--ink-2);border-radius:9px;padding:8px 12px;font-size:14px;font-weight:600}.docs-nav a:hover{background:var(--well);color:var(--ink)}.docs-nav a[aria-current=page]{background:var(--accent-wash);color:var(--accent-ink)}.docs-nav-home{margin-bottom:8px}.prose{background:var(--island);border:1px solid var(--island-line);max-width:760px;color:var(--ink-2);border-radius:22px;padding:48px 56px;font-size:16.5px}.prose [id]{scroll-margin-top:24px}.prose h1,.prose h2,.prose h3,.prose h4,.prose strong{color:var(--ink)}.prose h1{letter-spacing:-.04em;margin:0 0 20px;font-size:clamp(34px,4vw,46px)}.prose h2{letter-spacing:-.03em;margin:44px 0 14px;font-size:26px}.prose h3{margin:30px 0 10px}.prose h4{margin:24px 0 8px;font-size:16px}.prose p,.prose ul,.prose ol,.prose pre,.prose blockquote,.prose .table-scroll{margin:0 0 16px}.prose ul,.prose ol{padding-left:22px}.prose li{margin:6px 0}.prose a{color:var(--accent-ink);text-underline-offset:3px;text-decoration:underline 1px}.prose a:hover{text-decoration-thickness:2px}.prose code{background:var(--well);border-radius:6px;padding:2px 6px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.86em}.prose pre{background:var(--well);border-radius:12px;padding:16px 18px;overflow-x:auto}.prose pre code{background:0 0;padding:0;font-size:13.5px}.prose :not(pre)>code{overflow-wrap:anywhere}.prose blockquote{border-left:3px solid var(--line);color:var(--muted);padding-left:16px}.prose .table-scroll{overflow-x:auto}.prose table{border-collapse:collapse;width:100%;font-size:14.5px}.prose th,.prose td{text-align:left;vertical-align:top;border-bottom:1px solid var(--line);padding:10px 12px}.prose th{color:var(--ink);font-weight:700}.prose img{border-radius:12px;margin:8px 0 16px}.prose hr{border:0;border-top:1px solid var(--line);margin:36px 0}.docs-cards{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px;display:grid}.docs-card{background:var(--island);border:1px solid var(--island-line);border-radius:20px;padding:26px 28px;display:block}.docs-card:hover,.docs-card:focus-visible{background:var(--well)}.docs-card h2{letter-spacing:-.02em;margin-bottom:8px;font-size:20px}.docs-card p{color:var(--ink-2);font-size:15px}html.gallery-page{scrollbar-gutter:stable}html.dialog-open{overflow:hidden}.gallery-toolbar{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.search-field{background:var(--island);border:1px solid var(--island-line);border-radius:var(--r-pill);height:46px;color:var(--muted);cursor:text;transition:border-color var(--t-fast);flex:300px;align-items:center;gap:10px;padding:0 7px 0 16px;display:flex}.search-field:focus-within{border-color:var(--accent-ink)}.search-field>.icon{width:18px;height:18px}.search-field input{min-width:0;height:100%;color:var(--ink);font:inherit;-webkit-appearance:none;appearance:none;background:0 0;border:0;flex:1;padding:0;font-size:14px;font-weight:600}.search-field input:focus{outline:none}.search-field input::placeholder{color:var(--muted);opacity:1;font-weight:500}.search-field input::-webkit-search-cancel-button,.search-field input::-webkit-search-decoration{-webkit-appearance:none;appearance:none}.search-clear{width:32px;height:32px;color:var(--muted);background:0 0;border-radius:50%;flex:none;place-items:center;display:grid}.search-clear:hover,.search-clear:focus-visible{background:var(--well);color:var(--ink)}.search-clear .icon{width:16px;height:16px}.view-switch{background:var(--island);border:1px solid var(--island-line);border-radius:var(--r-pill);gap:2px;padding:4px;display:inline-flex}.view-switch button{border-radius:var(--r-pill);height:36px;color:var(--muted);transition:background-color var(--t-fast), color var(--t-fast);background:0 0;padding:0 17px;font-size:13px;font-weight:700}.view-switch button:hover,.view-switch button:focus-visible{background:var(--well);color:var(--ink)}.view-switch button[aria-pressed=true]{background:var(--accent-soft);color:var(--accent-ink)}.pill-control{background:var(--island);border:1px solid var(--island-line);border-radius:var(--r-pill);height:46px;transition:border-color var(--t-fast);align-items:center;padding-left:16px;display:inline-flex}.pill-control:focus-within{border-color:var(--accent-ink)}.pill-label{color:var(--muted);font-size:13px;font-weight:600}.pill-control select{border-radius:var(--r-pill);height:44px;color:var(--ink);background:0 0;border:0;padding:0 38px 0 6px;font-size:13px;font-weight:750}.pill-control select:focus-visible{background:0 0}.pill-control option{background:var(--island);color:var(--ink)}.pill-control.is-quiet{background:var(--well);border-color:#0000;height:34px;padding-left:13px}.pill-control.is-quiet select{height:32px;font-size:12.5px}.pill-control.is-quiet .pill-label{font-size:12.5px}.filter-toggle{background:var(--island);border:1px solid var(--island-line);border-radius:var(--r-pill);height:46px;color:var(--ink);transition:background-color var(--t-fast), border-color var(--t-fast), color var(--t-fast);align-items:center;gap:8px;padding:0 16px 0 14px;font-size:13px;font-weight:750;display:inline-flex}.filter-toggle .icon{width:18px;height:18px;color:var(--muted)}.filter-toggle:hover{background:var(--well)}.filter-toggle:focus-visible{border-color:var(--accent-ink)}.filter-toggle[aria-expanded=true]{background:var(--accent-soft);color:var(--accent-ink)}.filter-toggle[aria-expanded=true] .icon{color:currentColor}.filter-count{border-radius:var(--r-pill);background:var(--accent-hover);min-width:20px;height:20px;color:var(--on-accent);text-align:center;font-variant-numeric:tabular-nums;padding:0 6px;font-size:11px;font-weight:800;line-height:20px}.filter-panel{background:var(--island);border:1px solid var(--island-line);border-radius:var(--r-island);animation:panel-in var(--t-base) var(--ease-out);margin-top:10px;padding:18px 20px 16px}@keyframes panel-in{0%{opacity:0;transform:translateY(-4px)}}.filter-label{color:var(--muted);letter-spacing:1.4px;text-transform:uppercase;margin-bottom:10px;font-size:10px;font-weight:750}.chips{flex-wrap:wrap;gap:7px;display:flex}.chip{border-radius:var(--r-pill);background:var(--well);height:32px;color:var(--ink-2);transition:background-color var(--t-fast), border-color var(--t-fast), color var(--t-fast);border:1px solid #0000;align-items:center;gap:6px;padding:0 13px;font-size:12.5px;font-weight:650;display:inline-flex}.chip:hover{background:var(--well-2);color:var(--ink)}.chip:focus-visible{border-color:var(--accent-ink)}.chip[aria-pressed=true]{background:var(--accent-soft);color:var(--accent-ink)}.chip .icon{width:15px;height:15px}.chip.more-tags{color:var(--accent-ink);background:0 0;font-weight:750}.chip.more-tags:hover{background:var(--accent-wash)}.filter-row{border-top:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:10px 12px;margin-top:16px;padding-top:14px;display:flex}.chip-official{height:34px}.gallery-status{min-height:30px;color:var(--muted);flex-wrap:wrap;align-items:center;gap:8px 14px;margin:16px 0 22px;font-size:13.5px;font-weight:600;display:flex}.active-filters{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.active-filters:empty{display:none}.filter-pill{border-radius:var(--r-pill);background:var(--accent-soft);height:28px;color:var(--accent-ink);transition:border-color var(--t-fast);border:1px solid #0000;align-items:center;gap:3px;padding:0 6px 0 11px;font-size:12px;font-weight:700;display:inline-flex}.filter-pill .icon{width:14px;height:14px}.filter-pill:hover,.filter-pill:focus-visible{border-color:var(--accent-ink)}.clear-all{color:var(--ink-2);background:0 0;border-radius:6px;padding:4px 8px;font-size:12.5px;font-weight:750}.clear-all:hover,.clear-all:focus-visible{background:var(--accent-wash);color:var(--accent-ink)}.gallery-heading{color:var(--muted);letter-spacing:1.65px;text-transform:uppercase;margin-bottom:14px;font-size:10px;font-weight:750;line-height:1.6}.pack-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,290px),1fr));gap:18px;display:grid}.pack-card{background:var(--island);border:1px solid var(--island-line);min-width:0;transition:border-color var(--t-fast);border-radius:22px;flex-direction:column;display:flex;position:relative;overflow:hidden}.pack-card:has(.pack-link:focus-visible){border-color:var(--accent-ink)}.is-entering{animation:rise-in .44s var(--ease-out) both}@keyframes rise-in{0%{opacity:0;transform:translateY(12px)}}.pack-preview{box-sizing:content-box;aspect-ratio:1;background:var(--well);--thumb-wait:var(--well-2);grid-template-columns:repeat(2,minmax(0,1fr));align-content:center;gap:8px 16px;padding:20px 22px 12px;display:grid}.pack-preview[data-slots="1"]>.thumb,.pack-preview[data-slots="3"]>.thumb:nth-child(3){grid-column:1/-1;justify-self:center;width:calc(50% - 8px)}.pack-preview.is-strip{grid-template-columns:minmax(0,1fr);padding:20px 16px}.pack-preview.is-strip img{aspect-ratio:4;object-fit:contain;width:100%;height:auto}.thumb{aspect-ratio:1;display:block;position:relative}.thumb:before{content:"";background:var(--thumb-wait,var(--well));transition:opacity var(--t-base);border-radius:9%/11%;animation:1.1s ease-in-out infinite alternate waiting;position:absolute;inset:12% 1% 7%}.thumb.is-loaded:before{opacity:0;animation:none}.thumb.is-missing:before{animation:none}@keyframes waiting{to{opacity:.4}}.thumb img{object-fit:contain;opacity:0;width:100%;height:100%;transition:opacity var(--t-base), transform var(--t-base) var(--ease-out);position:relative}.thumb.is-loaded img{opacity:1}.pack-card:hover .thumb img{transform:translateY(-5px)rotate(-2.5deg)}.pack-card:hover .thumb:nth-child(2) img{transition-delay:35ms}.pack-card:hover .thumb:nth-child(3) img{transition-delay:70ms}.pack-card:hover .thumb:nth-child(4) img{transition-delay:.105s}.pack-card:hover .thumb:nth-child(5) img{transition-delay:.14s}.pack-card-body{flex-direction:column;flex:1;gap:5px;min-width:0;padding:16px 20px 18px;display:flex}.pack-title{letter-spacing:-.02em;flex-wrap:wrap;align-items:center;gap:4px 9px;font-size:18px;line-height:1.3;display:flex}.pack-link{transition:color var(--t-fast)}.pack-link:after{content:"";position:absolute;inset:0}.pack-card:hover .pack-link,.pack-link:focus-visible{color:var(--accent-ink)}.pack-meta{color:var(--muted);font-size:13px}.pack-tags{flex-wrap:wrap;gap:6px;margin:4px 0 6px;display:flex}.pack-tags span{background:var(--well);color:var(--ink-2);border-radius:var(--r-pill);padding:3px 10px;font-size:12px;font-weight:650;line-height:1.5}.pack-card-foot{justify-content:space-between;align-items:center;gap:12px;margin-top:auto;padding-top:8px;display:flex}.install-button{z-index:1;border-radius:var(--r-pill);background:var(--well);height:36px;color:var(--ink);transition:background-color var(--t-fast), color var(--t-fast);align-items:center;gap:7px;padding:0 16px 0 13px;font-size:13px;font-weight:750;display:inline-flex;position:relative}.install-button .icon{width:16px;height:16px}.install-button:hover{background:var(--accent-hover);color:var(--on-accent)}.install-button:focus-visible{background:var(--accent-soft);color:var(--accent-ink);border-radius:var(--r-pill)}.pack-downloads{color:var(--muted);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:12.5px;font-weight:650}.pack-downloads:empty{display:none}.official-badge,.featured-badge{border-radius:var(--r-pill);background:var(--accent-soft);height:22px;color:var(--accent-ink);letter-spacing:.01em;white-space:nowrap;align-items:center;gap:4px;padding:0 9px 0 4px;font-size:11px;font-weight:750;line-height:1;display:inline-flex}.official-badge .icon,.featured-badge .icon{width:15px;height:15px}.featured-badge{--badge-knockout:var(--featured-soft);background:var(--featured-soft);color:var(--featured-ink)}.skin-grid{grid-template-columns:repeat(auto-fill,minmax(146px,1fr));gap:6px;margin:0;padding:0;list-style:none;display:grid}.skin-item{min-width:0}.skin-tile{width:100%;height:100%;color:inherit;text-align:center;transition:background-color var(--t-fast), border-color var(--t-fast);background:0 0;border:1px solid #0000;border-radius:16px;flex-direction:column;align-items:center;gap:1px;padding:12px 10px 14px;display:flex}.skin-tile .thumb{width:100%;margin-bottom:8px}.skin-tile:hover{background:var(--tile-hover,var(--well))}.skin-tile:focus-visible{background:var(--tile-hover,var(--well));border-color:var(--accent-ink);border-radius:16px}.skin-tile:hover .thumb img{transform:translateY(-4px)rotate(-2.5deg)}.skin-name{max-width:100%;color:var(--ink);overflow-wrap:anywhere;font-size:13px;font-weight:700;line-height:1.35}.skin-sub{max-width:100%;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:12px;line-height:1.4;overflow:hidden}.page-skins{--tile-hover:var(--island);--thumb-wait:var(--island);grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}.skin-tile.is-waiting{pointer-events:none}.skeleton-line{background:var(--thumb-wait,var(--well));border-radius:7px;width:60%;height:13px;margin:4px 0;animation:1.1s ease-in-out infinite alternate waiting;display:block}.skeleton-line.is-short{width:38%;height:11px}.is-skeleton .pack-card-body{gap:10px;padding-bottom:64px}.is-skeleton .skeleton-line{background:var(--well)}.empty-state{text-align:center;background:var(--island);border:1px solid var(--island-line);border-radius:22px;justify-items:center;gap:6px;padding:56px 24px;display:grid}.empty-state h3{font-size:18px}.empty-state p{color:var(--muted);font-size:14px}.soft-button{background:var(--well);color:var(--ink);margin-top:12px;padding:11px 20px;font-size:13px}.soft-button:hover,.soft-button:focus-visible{background:var(--well-2)}.list-more{color:var(--muted);text-align:center;padding-top:26px;font-size:13px}.sentinel{height:1px}.noscript-note{color:var(--ink-2);font-size:15px}.pack-dialog{background:var(--island);width:min(1000px,100vw - 48px);max-width:none;min-height:min(520px,100vh - 48px);max-height:calc(100dvh - 48px);color:var(--ink);box-shadow:var(--shadow-pop);border:0;border-radius:24px;margin:auto;padding:0;overflow:hidden}.pack-dialog[open]{animation:dialog-in var(--t-base) var(--ease-out);flex-direction:column;display:flex}@keyframes dialog-in{0%{opacity:0;transform:translateY(12px)scale(.985)}}.pack-dialog::backdrop{backdrop-filter:blur(4px);background:#1018286b}:root[data-theme=dark] .pack-dialog::backdrop{background:#0a08089e}.pack-dialog:focus,.pack-dialog [tabindex="-1"]:focus{outline:none}.dialog-card{flex-direction:column;flex:1;min-height:0;display:flex}.dialog-head{border-bottom:1px solid var(--line);flex:none;grid-template-columns:minmax(0,1fr) auto;column-gap:24px;padding:26px 82px 20px 30px;display:grid;position:relative}.dialog-heading{flex-wrap:wrap;align-items:center;gap:6px 12px;display:flex}.dialog-heading h2{letter-spacing:-.035em;font-size:clamp(24px,3vw,30px);line-height:1.2}.dialog-meta{color:var(--muted);margin-top:6px;font-size:13.5px}.dialog-head .pack-tags{margin:10px 0 0}.dialog-actions{grid-area:1/2/span 3;align-self:start;align-items:center;gap:12px;display:flex}.install-link{gap:8px;padding:12px 22px 12px 18px}.install-link .icon{width:17px;height:17px}.dialog-close{background:var(--well);position:absolute;top:20px;right:20px}.dialog-close:hover,.dialog-close:focus-visible{background:var(--well-2)}.dialog-body{overscroll-behavior:contain;flex:auto;min-height:0;padding:20px 24px 28px;overflow:auto}.dialog-body .skin-grid{--tile-hover:var(--well);--thumb-wait:var(--well)}.dialog-note{color:var(--ink-2);text-align:center;justify-items:center;gap:4px;padding:48px 16px;display:grid}.viewer-bar{justify-content:space-between;align-items:center;gap:12px;margin:-4px 0 12px;display:flex}.viewer-back{border-radius:var(--r-pill);height:34px;color:var(--ink-2);background:0 0;align-items:center;gap:2px;padding:0 13px 0 6px;font-size:13px;font-weight:750;display:inline-flex}.viewer-back .icon{width:18px;height:18px}.viewer-back:hover,.viewer-back:focus-visible{background:var(--well);color:var(--ink)}.viewer-count{color:var(--muted);font-variant-numeric:tabular-nums;font-size:12.5px;font-weight:650}.viewer-stage{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;display:grid}.viewer-frame{background:var(--well);touch-action:pan-y;border-radius:20px;grid-template-rows:minmax(0,1fr);grid-template-columns:minmax(0,1fr);height:clamp(220px,100dvh - 400px,540px);padding:22px;display:grid}.viewer-frame img{object-fit:contain;width:100%;height:100%;animation:fade-in var(--t-base) var(--ease-out)}.viewer-frame img.is-thumb{width:min(100%,340px);height:min(100%,340px);transition:width var(--t-base) var(--ease-out), height var(--t-base) var(--ease-out);place-self:center}@keyframes fade-in{0%{opacity:0}}.viewer-step{background:var(--well);width:46px;height:46px;color:var(--ink-2)}.viewer-step:hover,.viewer-step:focus-visible{background:var(--well-2);color:var(--ink)}.viewer-caption{text-align:center;margin-top:16px}.viewer-caption h3{letter-spacing:-.02em;font-size:20px}.viewer-caption .pack-tags{justify-content:center;margin:8px 0 0}.toast{z-index:30;border-radius:var(--r-pill);background:var(--island);max-width:calc(100vw - 32px);color:var(--ink-2);box-shadow:var(--shadow-pop);opacity:0;transition:opacity var(--t-base), transform var(--t-base) var(--ease-out);align-items:center;gap:6px;padding:7px 7px 7px 20px;font-size:13.5px;font-weight:600;display:flex;position:fixed;bottom:24px;left:50%;transform:translate(-50%,12px)}.toast.is-open{opacity:1;transform:translate(-50%)}.toast a{color:var(--accent-ink);text-underline-offset:3px;font-weight:750;text-decoration:underline}.toast .icon-button{width:34px;height:34px}.toast .icon-button .icon{width:17px;height:17px}@media (width<=720px){.gallery-toolbar{gap:8px}.search-field{flex:200px;height:44px}.filter-toggle{order:1}.view-switch{order:2;margin-right:auto}.gallery-toolbar>.pill-control{order:3}.view-switch button{height:34px;padding:0 14px}.pill-control,.filter-toggle{height:44px}.pill-control select{height:42px}.filter-panel{padding:16px}.gallery-status{margin:14px 0 18px}.pack-preview{padding:18px 20px 10px}.pack-dialog{border-radius:22px 22px 0 0;width:100%;max-width:100%;height:calc(100dvh - 16px);min-height:0;max-height:none;margin:auto 0 0}.pack-dialog[open]{animation-name:sheet-in}.dialog-head{grid-template-columns:minmax(0,1fr);padding:20px 64px 16px 16px}.dialog-actions{grid-area:auto/1;margin-top:14px}.dialog-close{top:14px;right:12px}.dialog-body{padding:14px 12px 24px}.dialog-body .skin-grid{grid-template-columns:repeat(auto-fill,minmax(128px,1fr))}.viewer-stage{gap:6px}.viewer-step{width:38px;height:38px}.viewer-frame{height:clamp(200px,100dvh - 380px,460px);padding:12px}.toast{bottom:16px}}@keyframes sheet-in{0%{transform:translateY(40px)}}@media (width<=420px){.pill-control .pill-label,.filter-toggle-label{display:none}.pill-control{padding-left:10px}.filter-toggle{padding:0 13px}}@media (width<=900px){.docs-layout{grid-template-columns:minmax(0,1fr);gap:24px}.docs-nav{flex-flow:wrap;gap:6px;position:static}.docs-nav-home{margin-bottom:0}.prose{padding:32px 28px}}@media (width<=720px){.header nav a[href$=\#make-it-yours],.header nav a[href$=\#how-it-works]{display:none}.page{padding-top:12px}.prose{border-radius:18px;padding:26px 20px;font-size:16px}}.legal{overflow-wrap:break-word;max-width:740px}.legal-translation{background:var(--island);border:1px solid var(--island-line);border-radius:var(--r-card);color:var(--ink-2);align-items:flex-start;gap:10px;margin:28px 0 0;padding:12px 16px;font-size:14px;line-height:1.55;display:flex}.legal-translation .icon{width:17px;height:17px;color:var(--muted);margin-top:2px}.legal-intro{margin-bottom:12px}.legal-intro time{white-space:nowrap}.legal-section h2{letter-spacing:-.03em;margin:44px 0 12px;font-size:24px;line-height:1.3}.legal-section p,.legal-section ul{color:var(--ink-2);margin:0 0 14px;font-size:16.5px;line-height:1.7}.legal-section ul{padding-left:22px}.legal-section li{margin:8px 0;padding-left:4px}.legal-section li::marker{color:var(--hint)}.legal-translation a,.legal-section a{color:var(--accent-ink);text-underline-offset:3px;text-decoration:underline 1px}.legal-translation a:hover,.legal-section a:hover{text-decoration-thickness:2px}@media (width<=720px){.legal-section h2{margin-top:36px;font-size:21px}.legal-section p,.legal-section ul{font-size:16px}}:root:lang(zh),:root:lang(ja){line-break:strict}:root:lang(ja) :is(h1,h2,h3,.eyebrow,.button,.text-link,.desk-name){word-break:auto-phrase}:root:lang(ko){word-break:keep-all;overflow-wrap:break-word}:root:is(:lang(zh),:lang(ja)) :is(h1,h2,h3){letter-spacing:0;text-wrap:balance}:root:lang(ko) :is(h1,h2,h3){letter-spacing:-.02em;text-wrap:balance}:root:is(:lang(zh),:lang(ja),:lang(ko)) .eyebrow{letter-spacing:.12em;font-size:12px}:root:is(:lang(zh),:lang(ja),:lang(ko)) :is(.asset-detail,.recommendation,.footer-bottom){font-size:11px}:root:is(:lang(zh),:lang(ja),:lang(ko)) :is(.download-caption,.platform-note,.footer p,.release-pill){font-size:12px}@media (width<=720px){:root:is(:lang(zh),:lang(ja),:lang(ko)) .eyebrow{font-size:11px}}@media (width<=1100px){:root:lang(fr) .github-label{display:none}}@media (width<=900px){:root:lang(fr) .header{grid-template-columns:1fr auto;grid-template-areas:"brand actions""nav nav";row-gap:4px;min-height:80px}:root:lang(fr) .header nav{padding-bottom:13px}}
