@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-cyrillic-ext-wght-normal-DjL33-gN.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-cyrillic-wght-normal-BEAKL7Jp.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-vietnamese-wght-normal-6IgcOCM7.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-latin-ext-wght-normal-DC-KSUi6.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-latin-wght-normal-BgDaEnEv.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Variable;font-style:italic;font-display:swap;font-weight:100 900;src:url(/assets/geist-cyrillic-ext-wght-italic-BYAq_K0C.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist Variable;font-style:italic;font-display:swap;font-weight:100 900;src:url(/assets/geist-cyrillic-wght-italic-Da0gXVk3.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist Variable;font-style:italic;font-display:swap;font-weight:100 900;src:url(/assets/geist-vietnamese-wght-italic-0fly6zkB.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist Variable;font-style:italic;font-display:swap;font-weight:100 900;src:url(/assets/geist-latin-ext-wght-italic-XgKbg5n7.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist Variable;font-style:italic;font-display:swap;font-weight:100 900;src:url(/assets/geist-latin-wght-italic-dTnRTFFJ.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-mono-cyrillic-ext-wght-normal-X_5orZeX.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-mono-cyrillic-wght-normal-DiZS0aHC.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-mono-symbols2-wght-normal-CO5SzqOn.woff2)format("woff2-variations");unicode-range:U+2000-2001,U+2004-2008,U+200A,U+23B8-23BD,U+2500-259F}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-mono-vietnamese-wght-normal-DadHysG0.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-mono-latin-ext-wght-normal-Bwz-egvJ.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-mono-latin-wght-normal-XN7g48iV.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Playfair Display Variable;font-style:normal;font-display:swap;font-weight:400 900;src:url(/assets/playfair-display-cyrillic-wght-normal-5WvUvBgz.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Playfair Display Variable;font-style:normal;font-display:swap;font-weight:400 900;src:url(/assets/playfair-display-vietnamese-wght-normal-Cabi7G8-.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Playfair Display Variable;font-style:normal;font-display:swap;font-weight:400 900;src:url(/assets/playfair-display-latin-ext-wght-normal-CT1r92Rl.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Playfair Display Variable;font-style:normal;font-display:swap;font-weight:400 900;src:url(/assets/playfair-display-latin-wght-normal-BOwq7MWX.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Playfair Display Variable;font-style:italic;font-display:swap;font-weight:400 900;src:url(/assets/playfair-display-cyrillic-wght-italic-D5dBZ3aJ.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Playfair Display Variable;font-style:italic;font-display:swap;font-weight:400 900;src:url(/assets/playfair-display-vietnamese-wght-italic-DUEcMSM3.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Playfair Display Variable;font-style:italic;font-display:swap;font-weight:400 900;src:url(/assets/playfair-display-latin-ext-wght-italic-ze_cPdSg.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Playfair Display Variable;font-style:italic;font-display:swap;font-weight:400 900;src:url(/assets/playfair-display-latin-wght-italic-DmbndNpe.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;--bg:var(--lightningcss-light,#f4f2ec)var(--lightningcss-dark,#0d0f11);--bg-elevated:var(--lightningcss-light,#fff)var(--lightningcss-dark,#15181b);--surface:var(--lightningcss-light,#e9e6dd)var(--lightningcss-dark,#1b1f23);--surface-2:var(--lightningcss-light,#dfdbd0)var(--lightningcss-dark,#242a2f);--ink:var(--lightningcss-light,#121314)var(--lightningcss-dark,#f0eee8);--ink-2:var(--lightningcss-light,#2d3032)var(--lightningcss-dark,#d3d0c9);--muted:var(--lightningcss-light,#63676a)var(--lightningcss-dark,#9ca1a5);--faint:var(--lightningcss-light,#93979a)var(--lightningcss-dark,#6d7378);--rule:var(--lightningcss-light,#d6d2c7)var(--lightningcss-dark,#2a3035);--rule-strong:var(--lightningcss-light,#121314)var(--lightningcss-dark,#f0eee8);--accent:var(--lightningcss-light,#006c9f)var(--lightningcss-dark,#6ccbf7);--accent-strong:var(--lightningcss-light,#00557e)var(--lightningcss-dark,#a3defa);--accent-soft:var(--lightningcss-light,#d9ecf5)var(--lightningcss-dark,#10303f);--on-accent:var(--lightningcss-light,#fff)var(--lightningcss-dark,#04131b);--hot:var(--lightningcss-light,#e2452b)var(--lightningcss-dark,#ff7b5f);--ok:var(--lightningcss-light,#1d7a43)var(--lightningcss-dark,#6fd69b);--ok-soft:var(--lightningcss-light,#e3f3e9)var(--lightningcss-dark,#12291c);--warn:var(--lightningcss-light,#a86400)var(--lightningcss-dark,#f3c46b);--warn-soft:var(--lightningcss-light,#fbf0db)var(--lightningcss-dark,#2c2412);--bad:var(--lightningcss-light,#b42318)var(--lightningcss-dark,#ff8f85);--bad-soft:var(--lightningcss-light,#fbe7e5)var(--lightningcss-dark,#2f1614);--star:#f2a516;--font-display:"Playfair Display Variable", "Playfair Display", Didot, "Bodoni 72", Georgia, serif;--font-sans:"Geist Variable", Geist, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-mono:"Geist Mono Variable", "Geist Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;--radius:14px;--radius-sm:6px;--wrap:1320px;--measure:700px;--gutter:clamp(16px, 4vw, 40px);--header-h:64px;--ease:cubic-bezier(.2, .7, .1, 1)}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}:root[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}.site-footer,.home-section.band,.consent-banner{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#0d0f11;--bg-elevated:#15181b;--surface:#1b1f23;--surface-2:#242a2f;--ink:#f0eee8;--ink-2:#d3d0c9;--muted:#9ca1a5;--faint:#6d7378;--rule:#2a3035;--rule-strong:#f0eee8;--accent:#6ccbf7;--accent-strong:#a3defa;--accent-soft:#10303f;--on-accent:#04131b;--hot:#ff7b5f;--ok:#6fd69b;--ok-soft:#12291c;--bad:#ff8f85;--bad-soft:#2f1614}:root{--panel-bg:var(--lightningcss-light,#111315)var(--lightningcss-dark,#15181b)}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-padding-top:calc(var(--header-h) + 24px)}html.menu-open{overflow:hidden}body{background:var(--bg);color:var(--ink);font-family:var(--font-sans);font-feature-settings:"ss01", "cv11";-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;margin:0;font-size:16px;line-height:1.6}h1,h2,h3,h4,h5,h6{color:var(--ink);text-wrap:balance;margin:0 0 .5em;line-height:1.15}p{text-wrap:pretty;margin:0 0 1em}a{color:var(--accent);text-decoration:none;transition:color .15s}a:hover{color:var(--accent-strong)}img{max-width:100%;height:auto;display:block}button{font:inherit;cursor:pointer;color:inherit}::selection{background:var(--accent);color:var(--on-accent)}:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:4px}.wrap{width:100%;max-width:var(--wrap);padding-inline:var(--gutter);margin-inline:auto}.site-main{min-height:60vh}.center{text-align:center}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{z-index:100;background:var(--ink);color:var(--bg);border-radius:999px;padding:10px 16px;font-weight:600;position:absolute;top:-60px;left:16px}.skip-link:focus{color:var(--bg);top:12px}.kicker,.eyebrow{font:600 .72rem/1.2 var(--font-sans);letter-spacing:.13em;text-transform:uppercase;color:var(--accent);align-items:center;gap:8px;margin:0;display:inline-flex}.kicker:before{content:"";background:currentColor;border-radius:2px;flex:none;width:7px;height:7px}a.kicker:hover{color:var(--accent-strong)}.kicker.plain,.eyebrow{color:var(--muted)}.kicker.plain:before{display:none}.rail-label{font:600 .72rem/1.2 var(--font-sans);letter-spacing:.13em;text-transform:uppercase;color:var(--muted);margin:0 0 14px}.button{background:var(--ink);color:var(--bg);font:600 .95rem/1.2 var(--font-sans);letter-spacing:-.005em;transition:background .2s, color .2s, transform .2s var(--ease);border:0;border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:12px 22px;display:inline-flex}.button:hover{background:var(--accent);color:var(--on-accent)}.button:active{transform:scale(.98)}.button.small{padding:8px 16px;font-size:.85rem}.button.large{padding:16px 30px;font-size:1.02rem}.button.secondary{color:var(--ink);box-shadow:inset 0 0 0 1px var(--rule);background:0 0}.button.secondary:hover{box-shadow:inset 0 0 0 1px var(--ink);color:var(--ink);background:0 0}.button:disabled{opacity:.6;cursor:wait}.text-link{color:var(--ink);border-bottom:1px solid var(--rule);align-items:center;gap:6px;padding-bottom:2px;font-size:.92rem;font-weight:600;display:inline-flex}.text-link:hover{color:var(--accent);border-color:currentColor}.link-button{color:var(--accent);background:0 0;border:0;padding:0;font-size:.85rem;font-weight:600}.link-button:hover{text-decoration:underline}.icon-button{width:40px;height:40px;color:var(--ink);background:0 0;border:0;border-radius:999px;flex:none;place-items:center;transition:background .15s;display:inline-grid}.icon-button:hover{background:var(--surface)}.icon-button.bordered{box-shadow:inset 0 0 0 1px var(--rule)}.route-progress{z-index:70;background:var(--accent);opacity:0;width:0;height:2px;transition:width .2s,opacity .3s;position:fixed;inset:0 auto auto 0}.route-progress.is-active{opacity:1;width:70%;transition:width 8s cubic-bezier(.1,.7,.2,1),opacity .1s}.reading-progress{z-index:60;pointer-events:none;height:3px;position:fixed;inset:0 0 auto}.reading-progress>div{background:var(--accent);transform-origin:0;will-change:transform;height:100%;transform:scaleX(0)}.topbar{border-bottom:1px solid var(--rule);color:var(--muted);font-size:.78rem}.topbar-inner{grid-template-columns:1fr auto 1fr;align-items:center;gap:24px;height:38px;display:grid}.topbar-tagline{font:italic 400 .95rem/1 var(--font-display);color:var(--ink-2);letter-spacing:0}.topbar-links{justify-content:flex-end;gap:18px;display:flex}.topbar-links a{color:var(--muted)}.topbar-links a:hover{color:var(--ink)}.site-header{z-index:50;background:color-mix(in srgb, var(--bg) 84%, transparent);-webkit-backdrop-filter:saturate(1.6)blur(16px);backdrop-filter:saturate(1.6)blur(16px);border-bottom:1px solid #0000;transition:border-color .25s;position:sticky;top:0}.site-header.is-scrolled{border-bottom-color:var(--rule)}.site-header{view-transition-name:site-header;transition:border-color .25s, translate .4s var(--ease)}.site-header.is-hidden{translate:0 -100%}.header-inner{height:var(--header-h);align-items:center;gap:28px;display:flex}.logo-link{color:var(--ink);flex:none}.logo-link:hover{color:var(--ink)}.logo{color:inherit;align-items:center;gap:9px;display:inline-flex}.logo-mark{background:var(--ink);height:30px;color:var(--bg);font:800 14px/1 var(--font-sans);letter-spacing:-.03em;border-radius:8px;place-items:center;padding:0 7px;transition:background .2s;display:inline-grid}.logo-link:hover .logo-mark{background:var(--accent);color:var(--on-accent)}.logo-text{font:600 27px/1 var(--font-display);letter-spacing:-.02em;font-synthesis:none}.primary-nav ul{margin:0;padding:0;list-style:none}.primary-nav>ul{align-items:center;gap:2px;display:flex}.primary-nav li{position:relative}.nav-link{color:var(--ink-2);letter-spacing:-.005em;border-radius:999px;align-items:center;gap:6px;padding:8px 13px;font-size:.92rem;font-weight:500;transition:background .15s,color .15s;display:inline-flex}.nav-link:hover,.nav-link.is-active{color:var(--ink);background:var(--surface)}.nav-link.is-highlight{color:var(--accent)}.nav-link.is-highlight:after{content:"";background:var(--hot);border-radius:50%;width:6px;height:6px}.sub-menu{background:var(--bg-elevated);border:1px solid var(--rule);border-radius:var(--radius);opacity:0;visibility:hidden;min-width:230px;transition:.18s var(--ease);position:absolute;top:calc(100% + 8px);left:0;transform:translateY(6px);box-shadow:0 18px 50px #0000001f;padding:8px!important}.has-children:hover>.sub-menu,.has-children:focus-within>.sub-menu{opacity:1;visibility:visible;transform:none}.sub-menu .nav-link{border-radius:8px;display:flex}.header-actions{align-items:center;gap:4px;margin-left:auto;display:flex}.header-cta{margin-left:8px}.menu-toggle{margin-left:-8px;display:none}@keyframes panel-in{0%{opacity:0;transform:translateY(-8px)}}.search-form{border:1px solid var(--rule);background:var(--bg-elevated);border-radius:999px;align-items:center;gap:8px;width:100%;padding:4px 4px 4px 16px;transition:border-color .15s,box-shadow .15s;display:flex}.search-form:focus-within{border-color:var(--ink);box-shadow:0 0 0 4px color-mix(in srgb, var(--accent) 18%, transparent)}.search-icon{color:var(--muted);flex:none}.search-form input{min-width:0;color:var(--ink);font:inherit;background:0 0;border:0;flex:1;padding:8px 0;font-size:.95rem}.search-form input:focus{outline:none}.search-form input::-webkit-search-cancel-button{display:none}.search-form button{background:var(--ink);width:36px;height:36px;color:var(--bg);border:0;border-radius:999px;flex:none;place-items:center;transition:background .15s;display:grid}.search-form button:hover{background:var(--accent);color:var(--on-accent)}.search-form.large{border:0;border-bottom:2px solid var(--ink);max-width:900px;box-shadow:none;background:0 0;border-radius:0;margin-inline:auto;padding:0 0 6px}.search-form.large input{font:500 clamp(1.5rem, 3.4vw, 2.5rem)/1.25 var(--font-display);letter-spacing:-.01em}.search-form.large input::placeholder{color:var(--faint)}.search-form.large button{width:52px;height:52px}.mobile-menu{inset:var(--header-h) 0 0;z-index:45;background:var(--bg);animation:panel-in .25s var(--ease);padding:20px 0 48px;position:fixed;overflow-y:auto}.mobile-nav{margin:24px 0;padding:0;list-style:none}.mobile-nav ul{margin:0 0 8px;padding:0 0 0 4px;list-style:none}.mobile-link{border-bottom:1px solid var(--rule);color:var(--ink);font:500 2rem/1.15 var(--font-display);letter-spacing:-.01em;padding:12px 0;display:block}.mobile-link.is-active,.mobile-link:hover{color:var(--accent)}.mobile-sublink{color:var(--ink-2);padding:8px 0;font-size:1rem;display:block}.mobile-menu-foot{color:var(--muted);flex-wrap:wrap;align-items:center;gap:18px;display:flex}.mobile-menu-foot a{color:var(--ink-2);font-weight:500}.mobile-menu-foot .icon-button{margin-left:auto}.card{flex-direction:column;gap:16px;min-width:0;display:flex;position:relative}.card-visual{min-width:0;position:relative}.card-media{aspect-ratio:3/2;border-radius:var(--radius-sm);background:var(--surface);display:block;position:relative;overflow:hidden}.card-media img{object-fit:cover;width:100%;height:100%;transition:transform .7s var(--ease), filter .3s}.card:hover .card-media img{transform:scale(1.035)}.media-empty{background:linear-gradient(135deg, var(--accent-soft), var(--surface));width:100%;height:100%;display:block}.card-body{flex-direction:column;align-items:flex-start;gap:10px;min-width:0;display:flex}.card-title{font:600 1.32rem/1.22 var(--font-display);letter-spacing:-.005em;font-synthesis:none;margin:0}.card-title a{color:var(--ink)}.title-line{-webkit-box-decoration-break:clone;box-decoration-break:clone;transition:background-size .4s var(--ease);background:linear-gradient(currentColor,currentColor) 0 96%/0 1px no-repeat}.card:hover .title-line,.card-title a:focus-visible .title-line{background-size:100% 1px}.card-excerpt{color:var(--muted);-webkit-line-clamp:3;-webkit-box-orient:vertical;margin:0;font-size:.95rem;line-height:1.6;display:-webkit-box;overflow:hidden}.card .wpt-price{font-size:1.05rem}.card-index{font:italic 500 2.2rem/.95 var(--font-display);color:var(--accent);font-synthesis:none}.byline{color:var(--muted);letter-spacing:.005em;flex-wrap:wrap;align-items:center;margin:0;font-size:.8rem;font-weight:500;display:flex}.byline>*+:before{content:"·";color:var(--faint);margin:0 8px}.byline a{color:var(--ink-2)}.byline a:hover{color:var(--accent)}.card.lead{gap:22px}.card.lead .card-media{aspect-ratio:16/10;border-radius:var(--radius)}.card.lead .card-title{letter-spacing:-.015em;font-size:clamp(2.1rem,3.9vw,3.7rem);line-height:1.06}.card.lead .card-excerpt{color:var(--ink-2);-webkit-line-clamp:3;max-width:62ch;font-size:1.12rem;line-height:1.55}.card.lead .card-body{gap:14px}.card.row{grid-template-columns:minmax(0,.9fr) minmax(0,1.25fr);align-items:start;gap:28px;display:grid}.card.row .card-title{font-size:clamp(1.3rem,1.8vw,1.65rem)}.card.row-xl{grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);align-items:center;gap:44px}.card.row-xl .card-media{aspect-ratio:16/10;border-radius:var(--radius)}.card.row-xl .card-title{letter-spacing:-.015em;font-size:clamp(1.9rem,3.1vw,2.9rem);line-height:1.08}.card.row-xl .card-excerpt{-webkit-line-clamp:4;color:var(--ink-2);font-size:1.05rem}.card.mini{grid-template-columns:minmax(0,1fr) 96px;align-items:start;gap:18px;display:grid}.card.mini .card-visual{order:2}.card.mini .card-media{aspect-ratio:1;border-radius:var(--radius-sm)}.card.mini .card-title{font-size:1.16rem}.card.compact{grid-template-columns:72px minmax(0,1fr);align-items:center;gap:14px;display:grid}.card.compact .card-media{aspect-ratio:1}.card.compact .card-title{font-size:1.02rem}.section-head{border-top:2px solid var(--rule-strong);justify-content:space-between;align-items:baseline;gap:16px;margin-bottom:32px;padding-top:14px;display:flex}.section-title{font:600 clamp(1.9rem, 3.4vw, 2.8rem)/1.05 var(--font-display);letter-spacing:-.02em;font-synthesis:none;margin:0}.section-more{color:var(--ink);letter-spacing:.02em;flex:none;align-items:center;gap:6px;font-size:.85rem;font-weight:600;display:inline-flex}.section-more:hover{color:var(--accent)}.section-more svg{transition:transform .2s var(--ease)}.section-more:hover svg{transform:translate(2px,-2px)}.grid-3,.grid-4{gap:48px 32px;display:grid}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}.after-feature{border-top:1px solid var(--rule);margin-top:56px;padding-top:40px}.cover{grid-template-columns:minmax(0,1.75fr) minmax(280px,1fr);gap:56px;padding-top:36px;display:grid}.cover-side{border-left:1px solid var(--rule);flex-direction:column;padding-left:40px;display:flex}.cover-side .card+.card{border-top:1px solid var(--rule);margin-top:24px;padding-top:24px}.home-section{padding-top:88px}.home-section.band{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;background:var(--panel-bg);color:var(--ink);margin-top:96px;padding:72px 0 80px}.home-section.band+.home-section{padding-top:96px}.home-section.band .section-head{border-top-color:var(--ink)}.latest-layout{grid-template-columns:minmax(0,1fr) 300px;gap:64px;display:grid}.river{flex-direction:column;display:flex}.river .card+.card{border-top:1px solid var(--rule);margin-top:32px;padding-top:32px}.latest-aside{flex-direction:column;gap:40px;display:flex}.aside-block{top:calc(var(--header-h) + 24px);position:sticky}.aside-block+.aside-block{position:static}.topic-list{border-top:1px solid var(--rule);margin:0;padding:0;list-style:none}.topic-list a{border-bottom:1px solid var(--rule);color:var(--ink);font:500 1.45rem/1.2 var(--font-display);letter-spacing:-.01em;justify-content:space-between;align-items:center;padding:14px 0;display:flex}.topic-list a svg{color:var(--faint);transition:transform .25s var(--ease), color .2s}.topic-list a:hover{color:var(--accent)}.topic-list a:hover svg{color:var(--accent);transform:translate(3px,-3px)}.follow-links{flex-wrap:wrap;gap:8px;margin:0;display:flex}.follow-links a{box-shadow:inset 0 0 0 1px var(--rule);color:var(--ink);border-radius:999px;padding:7px 14px;font-size:.85rem;font-weight:500}.follow-links a:hover{box-shadow:inset 0 0 0 1px var(--ink)}.more-row{text-align:center;margin-top:72px}.archive-hero{text-align:center;padding-block:64px 48px}.archive-avatar{object-fit:cover;border-radius:50%;width:96px;height:96px;margin:0 auto 20px}.archive-title{max-width:18ch;font:600 clamp(2.8rem, 7.5vw, 6.2rem)/1 var(--font-display);letter-spacing:-.025em;font-synthesis:none;margin:18px auto 0}.archive-desc{max-width:620px;color:var(--ink-2);margin:22px auto 0;font-size:1.12rem;line-height:1.6}.archive-count{color:var(--muted);margin:18px 0 0;font-size:.85rem;font-weight:500}.archive-search{margin-top:32px}.archive-intro{max-width:680px;color:var(--ink-2);margin:22px auto 0}.archive-intro ul,.archive-intro ol{text-align:left;max-width:600px;margin-inline:auto}.archive .row-xl{border-bottom:1px solid var(--rule);margin-bottom:64px;padding-bottom:56px}.empty-state{text-align:center;max-width:520px;color:var(--muted);margin:24px auto}.pagination{border-top:1px solid var(--rule);flex-wrap:wrap;justify-content:center;align-items:center;gap:6px;margin-top:80px;padding-top:32px;display:flex}.pagination a,.pagination span{font-variant-numeric:tabular-nums;border-radius:999px;justify-content:center;align-items:center;gap:6px;min-width:44px;height:44px;padding:0 14px;font-size:.92rem;font-weight:600;display:inline-flex}.pagination a{color:var(--ink)}.pagination a:hover{background:var(--surface)}.pagination a[rel]{box-shadow:inset 0 0 0 1px var(--rule)}.pagination .current{background:var(--ink);color:var(--bg)}.pagination .gap{color:var(--faint);min-width:24px;padding:0}.snippet-card{border:1px solid var(--rule);border-radius:var(--radius);background:var(--bg-elevated);min-height:230px;transition:border-color .2s, transform .3s var(--ease), box-shadow .3s;flex-direction:column;align-items:flex-start;gap:14px;padding:26px;display:flex;position:relative}.snippet-card:hover{border-color:var(--ink);transform:translateY(-3px);box-shadow:0 18px 40px -24px #00000059}.snippet-no{font:500 .8rem/1 var(--font-mono);color:var(--faint)}.snippet-card h2{font:600 1.35rem/1.22 var(--font-display);letter-spacing:-.005em;font-synthesis:none;margin:0}.snippet-card h2 a{color:var(--ink)}.snippet-card .byline{margin-top:auto}.snippet-arrow{color:var(--faint);transition:transform .25s var(--ease), color .2s;position:absolute;top:24px;right:24px}.snippet-card:hover .snippet-arrow{color:var(--accent);transform:translate(3px,-3px)}.snippet-kind{background:var(--accent-soft);color:var(--accent-strong);font:500 .78rem/1.3 var(--font-mono);border-radius:999px;align-items:center;gap:6px;margin:0;padding:4px 10px;display:inline-flex}.stretched:before{content:"";z-index:1;position:absolute;inset:0}.article-head{text-align:center;max-width:1040px;padding-top:48px}.breadcrumbs ol{color:var(--muted);flex-wrap:wrap;justify-content:center;gap:6px;margin:0 0 22px;padding:0;font-size:.8rem;font-weight:500;list-style:none;display:flex}.breadcrumbs li+li:before{content:"/";color:var(--faint);margin-right:6px}.breadcrumbs a{color:var(--muted)}.breadcrumbs a:hover{color:var(--ink)}.article-title{max-width:22ch;font:600 clamp(2.3rem, 5.2vw, 4.6rem)/1.06 var(--font-display);letter-spacing:-.02em;font-synthesis:none;margin:20px auto 0}.type-page .article-title{font-size:clamp(2.2rem,4.8vw,4rem)}.entry-rating{justify-content:center;align-items:center;gap:10px;margin:18px 0 0;font-size:.9rem;font-weight:600;display:flex}.entry-rating a{color:var(--muted)}.article-head .snippet-kind{margin-top:18px}.article-byline{text-align:left;justify-content:center;align-items:center;gap:14px;margin-top:32px;display:flex}.byline-avatar{object-fit:cover;border-radius:50%;width:44px;height:44px}.byline-text{flex-direction:column;gap:2px;line-height:1.35;display:flex}.byline-name{font-size:.95rem;font-weight:600}.byline-name a{color:var(--ink)}.byline-name a:hover{color:var(--accent)}.byline-meta{color:var(--muted);flex-wrap:wrap;font-size:.82rem;display:flex}.byline-meta>*+:before{content:"·";color:var(--faint);margin:0 7px}.byline-actions{border-left:1px solid var(--rule);gap:4px;margin-left:10px;padding-left:14px;display:flex}.share-button.icon.is-saved{background:var(--accent);color:var(--on-accent);box-shadow:none}.article-figure{max-width:1240px;padding-inline:var(--gutter);margin:48px auto 0}.article-figure img{object-fit:cover;border-radius:var(--radius);background:var(--surface);width:100%;max-height:760px}.article-figure figcaption{color:var(--muted);text-align:center;margin-top:10px;font-size:.82rem}.article-layout{grid-template-columns:minmax(0, 1fr) minmax(0, var(--measure)) minmax(0, 1fr);column-gap:56px;padding-top:56px;display:grid}.article-main{grid-area:1/2;min-width:0}.article-rail{grid-area:1/1;justify-self:end;width:100%;max-width:240px}.article-rail .toc{top:calc(var(--header-h) + 36px);max-height:calc(100vh - var(--header-h) - 72px);position:sticky;overflow-y:auto}.toc-mobile{display:none}.toc ol{border-left:1px solid var(--rule);margin:0;padding:0;list-style:none}.toc-label{font:600 .72rem/1.2 var(--font-sans);letter-spacing:.13em;text-transform:uppercase;color:var(--muted);margin:0 0 14px}.toc a{color:var(--muted);border-left:2px solid #0000;margin-left:-1px;padding:6px 0 6px 16px;font-size:.86rem;line-height:1.4;transition:color .15s,border-color .15s;display:block}.toc a:hover{color:var(--ink)}.toc .lvl-3 a{padding-left:30px;font-size:.8rem}.toc .is-active a{border-left-color:var(--accent);color:var(--ink);font-weight:500}.tag-list{flex-wrap:wrap;gap:8px;margin:48px 0 0;display:flex}.tag-list a{background:var(--surface);color:var(--ink-2);border-radius:999px;padding:6px 14px;font-size:.85rem;font-weight:500}.tag-list a:hover{background:var(--ink);color:var(--bg)}.share{border-block:1px solid var(--rule);flex-wrap:wrap;align-items:center;gap:8px;margin:32px 0;padding:18px 0;display:flex}.share-label{font:600 .72rem/1.2 var(--font-sans);letter-spacing:.13em;text-transform:uppercase;color:var(--muted);margin-right:6px}.share-button{box-shadow:inset 0 0 0 1px var(--rule);color:var(--ink);background:0 0;border:0;border-radius:999px;align-items:center;gap:6px;padding:7px 14px;font-size:.85rem;font-weight:500;transition:box-shadow .15s,background .15s,color .15s;display:inline-flex}.share-button:hover{box-shadow:inset 0 0 0 1px var(--ink);color:var(--ink)}.share.compact{border:0;gap:4px;margin:0;padding:0}.share-button.icon{justify-content:center;width:38px;height:38px;padding:0}.author-box{border-radius:var(--radius);background:var(--bg-elevated);border:1px solid var(--rule);grid-template-columns:auto minmax(0,1fr);gap:24px;margin:40px 0;padding:28px;display:grid}.author-box img{object-fit:cover;border-radius:50%;width:80px;height:80px}.author-box h2{font:600 1.65rem/1.15 var(--font-display);letter-spacing:-.01em;font-synthesis:none;margin:8px 0}.author-box h2 a{color:var(--ink)}.author-box p{color:var(--ink-2);margin:0 0 14px;font-size:.98rem}.post-nav{grid-template-columns:1fr 1fr;gap:24px;margin:40px 0;display:grid}.post-nav a{border-top:2px solid var(--rule-strong);color:var(--ink);flex-direction:column;gap:10px;padding-top:18px;display:flex}.post-nav .kicker{gap:6px}.post-nav-title{font:600 1.3rem/1.25 var(--font-display);letter-spacing:-.01em;font-synthesis:none;transition:color .15s}.post-nav a:hover .post-nav-title{color:var(--accent)}.post-nav .next{text-align:right;align-items:flex-end}.related{border-top:1px solid var(--rule);margin-top:96px;padding:72px 0 24px}.comments{border-top:2px solid var(--rule-strong);margin-top:64px;padding-top:18px}.comments>h2{font:600 2rem/1.1 var(--font-display);letter-spacing:-.015em;font-synthesis:none}.comment-list,.comment-children{margin:0;padding:0;list-style:none}.comment-children{border-left:1px solid var(--rule);margin:18px 0 0 22px;padding-left:22px}.comment{padding:22px 0}.comment-list>.comment+.comment{border-top:1px solid var(--rule)}.comment-head{align-items:center;gap:12px;margin-bottom:10px;display:flex}.comment-head img{border-radius:50%;width:40px;height:40px}.comment-head div{flex-direction:column;line-height:1.3;display:flex}.comment-head strong{font-size:.95rem}.comment-head strong a{color:var(--ink)}.comment-head time{color:var(--muted);font-size:.8rem}.comment-form{border-radius:var(--radius);background:var(--bg-elevated);border:1px solid var(--rule);margin-top:32px;padding:28px}.comment .comment-form{margin:14px 0 0}.comment-form h3{font:600 1.55rem/1.2 var(--font-display);font-synthesis:none;margin:0 0 4px}.comment-form-note{color:var(--muted);margin:0 0 18px;font-size:.85rem}.comment-form-row{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:14px 0 18px;display:grid}.comment-form-actions{align-items:center;gap:16px;display:flex}.comments-closed{color:var(--muted);font-size:.9rem}.field{color:var(--ink-2);flex-direction:column;gap:6px;font-size:.85rem;font-weight:600;display:flex}.field input,.field textarea,.newsletter-row input{border:1px solid var(--rule);background:var(--bg);width:100%;color:var(--ink);font:inherit;border-radius:10px;padding:12px 14px;font-size:1rem;font-weight:400;transition:border-color .15s,box-shadow .15s}.field input:focus,.field textarea:focus,.newsletter-row input:focus{border-color:var(--ink);box-shadow:0 0 0 4px color-mix(in srgb, var(--accent) 18%, transparent);outline:none}.field small{color:var(--muted);font-weight:400}.comment-hp{opacity:0;width:1px;height:1px;position:absolute;left:-9999px}.form-error,.form-notice{border-radius:10px;margin:0 0 12px;padding:11px 14px;font-size:.9rem}.form-error{background:var(--bad-soft);color:var(--bad)}.form-notice{background:var(--ok-soft);color:var(--ok)}.wpt-form{border:1px solid var(--rule);border-radius:var(--radius);background:var(--bg-elevated);font-family:var(--font-sans);margin:0 0 1.6em;padding:28px}.wpt-form h3,.entry-content .wpt-form h3{font:600 1.55rem/1.2 var(--font-display);font-synthesis:none;margin:0 0 14px}.entry-content .wpt-form{font-size:1rem;line-height:1.5}.entry-content .wpt-form p{margin-bottom:12px}.wpt-form .field{margin-bottom:14px}.wpt-form-row{grid-template-columns:1fr 1fr;gap:0 14px;display:grid}.newsletter-text{color:var(--muted);margin:0 0 14px}.newsletter-row{gap:8px;display:flex}.newsletter-row input{border-radius:999px;flex:1;min-width:0;padding-inline:18px}.turnstile{min-height:65px;margin:0 0 12px}.docs{grid-template-columns:260px minmax(0,1fr) 210px;gap:56px;padding-top:40px;display:grid}.docs-sidebar,.docs-toc{top:calc(var(--header-h) + 28px);max-height:calc(100vh - var(--header-h) - 56px);align-self:start;position:sticky;overflow-y:auto}.docs-sidebar{padding-right:8px}.docs-main{min-width:0;max-width:760px}.docs-main .breadcrumbs ol{justify-content:flex-start}.docs-head{border-bottom:1px solid var(--rule);margin-bottom:32px;padding-bottom:28px}.docs-title{font:600 clamp(2.1rem, 4.2vw, 3.3rem)/1.08 var(--font-display);letter-spacing:-.02em;font-synthesis:none;margin:14px 0}.learn-nav ul{margin:0;padding:0;list-style:none}.learn-nav>ul>li{border-bottom:1px solid var(--rule)}.learn-nav a{color:var(--ink-2);border-radius:8px;padding:7px 10px;font-size:.88rem;line-height:1.4;display:block}.learn-nav a:hover{background:var(--surface);color:var(--ink)}.learn-nav a.active{background:var(--ink);color:var(--bg);font-weight:500}.learn-nav details ul{padding:0 0 10px 6px}.learn-nav summary{cursor:pointer;justify-content:space-between;align-items:center;gap:8px;padding:11px 4px;font-size:.92rem;font-weight:600;list-style:none;display:flex}.learn-nav summary::-webkit-details-marker{display:none}.learn-nav summary:after{content:"+";color:var(--faint);font-weight:400}.learn-nav details[open]>summary:after{content:"−"}.learn-nav .count{background:var(--surface);color:var(--muted);border-radius:999px;margin-left:auto;padding:1px 8px;font-size:.72rem;font-weight:500}.learn-nav>.eyebrow{margin-bottom:10px}.learn-nav>.eyebrow a{color:var(--muted);background:0 0;padding:0}.docs-sections{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:20px;margin-top:40px;display:grid}.docs-section-card{border:1px solid var(--rule);border-radius:var(--radius);background:var(--bg-elevated);flex-direction:column;gap:10px;padding:24px;display:flex}.docs-section-card .card-index{font-size:2rem}.docs-section-card h2{font:600 1.4rem/1.2 var(--font-display);font-synthesis:none;margin:0}.docs-section-card h2 a{color:var(--ink)}.docs-section-card ul{margin:0 0 6px;padding-left:18px;font-size:.9rem;line-height:1.9}.docs-section-card .text-link{align-self:flex-start;margin-top:auto}.docs-children{margin-top:40px}.docs-children ul{border-top:1px solid var(--rule);margin:0;padding:0;list-style:none}.docs-children a{border-bottom:1px solid var(--rule);color:var(--ink);font:500 1.2rem/1.25 var(--font-display);font-synthesis:none;justify-content:space-between;align-items:center;gap:12px;padding:14px 0;display:flex}.docs-children a:hover{color:var(--accent)}.product-page{padding-top:40px}.product-page .breadcrumbs ol{justify-content:flex-start}.product-top{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:56px;margin:8px 0 64px;display:grid}.product-main-image{aspect-ratio:4/3;object-fit:cover;border-radius:var(--radius);background:var(--surface);width:100%}.product-thumbs{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.product-thumbs button{background:0 0;border:2px solid #0000;border-radius:10px;width:68px;height:68px;padding:0;overflow:hidden}.product-thumbs button.active{border-color:var(--ink)}.product-thumbs img{object-fit:cover;width:100%;height:100%}.product-info{flex-direction:column;align-items:flex-start;gap:14px;display:flex}.product-title{font:600 clamp(2.1rem, 3.8vw, 3.3rem)/1.08 var(--font-display);letter-spacing:-.02em;font-synthesis:none;margin:0}.product-info .entry-rating{justify-content:flex-start;margin:0}.product-price{font:600 2.2rem/1 var(--font-display);margin:0}.product-price del{color:var(--faint);margin-right:10px;font-size:.7em}.product-price ins{color:var(--hot);text-decoration:none}.stock{border-radius:999px;margin:0;padding:4px 12px;font-size:.8rem;font-weight:600}.stock.in{background:var(--ok-soft);color:var(--ok)}.stock.out{background:var(--bad-soft);color:var(--bad)}.product-summary{color:var(--ink-2);margin:0;font-size:1.05rem}.product-facts{border-top:1px solid var(--rule);grid-template-columns:auto 1fr;gap:6px 18px;width:100%;margin:6px 0 0;padding-top:18px;font-size:.9rem;display:grid}.product-facts dt{color:var(--muted)}.product-facts dd{margin:0;font-weight:600}.product-body{max-width:var(--measure);margin-inline:auto}.error-page{text-align:center;padding-block:48px 24px}.error-code{font:700 clamp(7rem, 24vw, 17rem)/.85 var(--font-display);letter-spacing:-.03em;font-synthesis:none;color:#0000;-webkit-text-stroke:1.5px var(--ink);margin:0}.error-page h1{font:600 clamp(1.9rem, 3.8vw, 3rem)/1.1 var(--font-display);letter-spacing:-.02em;font-synthesis:none;margin:24px 0 12px}.error-lede{color:var(--muted);font-size:1.1rem}.error-search{margin:32px auto 48px}.suggestions{text-align:left;max-width:560px;margin:0 auto 48px}.suggestions .card+.card{border-top:1px solid var(--rule);margin-top:18px;padding-top:18px}.site-footer{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;background:var(--panel-bg);color:var(--ink-2);margin-top:120px}.footer-newsletter{border-bottom:1px solid var(--rule)}.newsletter-grid{grid-template-columns:minmax(0,1.2fr) minmax(300px,1fr);align-items:end;gap:32px 64px;padding-block:80px 72px;display:grid}.site-footer .newsletter-title{color:var(--ink);text-transform:none;max-width:16ch;font:600 clamp(2.2rem, 4.2vw, 3.6rem)/1.06 var(--font-display);letter-spacing:-.02em;font-synthesis:none;margin:16px 0 12px}.newsletter-lede{color:var(--muted);margin:0;font-size:1.05rem}.footer-newsletter .wpt-form{background:0 0;border:0;margin:0;padding:0}.footer-newsletter .newsletter-row input{background:0 0;padding-block:15px}.footer-newsletter .button{background:var(--ink);color:var(--panel-bg);padding-inline:26px}.footer-newsletter .button:hover{background:var(--accent);color:var(--on-accent)}.footer-grid{grid-template-columns:minmax(0,2fr) repeat(3,minmax(0,1fr));gap:40px;padding-block:64px 32px;display:grid}.footer-tagline{max-width:18ch;font:italic 400 1.7rem/1.2 var(--font-display);color:var(--ink);font-synthesis:none;margin:0 0 24px}.site-footer h2{font:600 .72rem/1.2 var(--font-sans);letter-spacing:.13em;text-transform:uppercase;color:var(--muted);margin:0 0 16px}.site-footer ul{margin:0;padding:0;list-style:none}.footer-menu li+li{margin-top:10px}.site-footer a{color:var(--ink-2)}.site-footer a:hover,.site-footer a.is-active{color:var(--ink)}.footer-social{flex-wrap:wrap;gap:8px;display:flex}.footer-social a{box-shadow:inset 0 0 0 1px var(--rule);border-radius:999px;align-items:center;gap:4px;padding:7px 14px;font-size:.85rem;display:inline-flex}.footer-social a:hover{box-shadow:inset 0 0 0 1px var(--ink)}.footer-wordmark{overflow:hidden}.footer-wordmark a{color:var(--ink);white-space:nowrap;font:700 clamp(3.4rem, 19vw, 16rem)/.9 var(--font-display);letter-spacing:-.04em;font-synthesis:none;padding-top:8px;display:block}.footer-wordmark .mark{font:800 .6em/1 var(--font-sans);letter-spacing:-.07em;vertical-align:.1em;margin-right:.04em}.footer-wordmark a:hover{color:var(--ink)}.footer-bottom{border-top:1px solid var(--rule);color:var(--muted);flex-wrap:wrap;justify-content:space-between;gap:12px;padding-block:24px 32px;font-size:.82rem;display:flex}.consent-banner{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;z-index:80;border-radius:var(--radius);background:var(--panel-bg);width:min(440px,100vw - 32px);color:var(--ink-2);border:1px solid var(--rule);animation:panel-in .35s var(--ease);flex-direction:column;gap:14px;padding:20px 22px;font-size:.88rem;line-height:1.55;display:flex;position:fixed;bottom:20px;left:20px;box-shadow:0 24px 60px #00000059}.consent-banner p{margin:0}.consent-banner a{color:var(--ink);text-underline-offset:2px;text-decoration:underline}.consent-actions{justify-content:flex-end;gap:8px;display:flex}.consent-actions .button{padding:9px 18px;font-size:.88rem}.admin-toolbar{padding:6px var(--gutter);background:#0a0c0e;flex-wrap:wrap;gap:4px 18px;font-size:.8rem;display:flex}.admin-toolbar a{color:#d5dade;align-items:center;gap:6px;display:inline-flex}.admin-toolbar a:hover{color:#fff}.preview-banner{top:var(--header-h);z-index:40;background:var(--warn-soft);color:var(--warn);text-align:center;flex-wrap:wrap;justify-content:center;gap:4px 16px;padding:10px 16px;font-size:.9rem;font-weight:500;display:flex;position:sticky}@media (width<=1180px){.article-layout{max-width:calc(var(--measure) + 2 * var(--gutter));grid-template-columns:minmax(0,1fr)}.article-main{grid-area:auto/1}.article-rail{display:none}.toc-mobile{border:1px solid var(--rule);border-radius:var(--radius);background:var(--bg-elevated);margin-bottom:36px;display:block}.toc-mobile summary{cursor:pointer;font:600 .72rem/1.2 var(--font-sans);letter-spacing:.13em;text-transform:uppercase;color:var(--muted);justify-content:space-between;padding:15px 18px;list-style:none;display:flex}.toc-mobile summary::-webkit-details-marker{display:none}.toc-mobile summary:after{content:"+";font-size:1rem;line-height:.8}.toc-mobile[open] summary:after{content:"−"}.toc-mobile .toc{padding:0 18px 16px}.toc-mobile .toc-label{display:none}.docs{grid-template-columns:240px minmax(0,1fr);gap:40px}.docs-toc{display:none}.grid-4{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=960px){.topbar,.primary-nav{display:none}.menu-toggle{display:inline-grid}.header-inner{gap:12px}.cover{grid-template-columns:minmax(0,1fr);gap:40px}.cover-side{border-left:0;border-top:1px solid var(--rule);grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;padding:32px 0 0;display:grid}.cover-side .rail-label{grid-column:1/-1;margin:0}.cover-side .card+.card{border:0;margin:0;padding:0}.cover-side .card.mini{grid-template-columns:minmax(0,1fr)}.cover-side .card.mini .card-visual{order:-1}.cover-side .card.mini .card-media{aspect-ratio:3/2}.latest-layout{grid-template-columns:minmax(0,1fr);gap:48px}.latest-aside{grid-template-columns:1fr 1fr;gap:32px;display:grid}.aside-block{position:static}.grid-3{grid-template-columns:repeat(2,minmax(0,1fr))}.card.row-xl{grid-template-columns:minmax(0,1fr);gap:24px}.docs{grid-template-columns:minmax(0,1fr)}.docs-sidebar{border-top:2px solid var(--rule-strong);order:2;max-height:none;padding:32px 0 0;position:static}.product-top{grid-template-columns:minmax(0,1fr);gap:32px}.newsletter-grid{grid-template-columns:minmax(0,1fr);align-items:start}.footer-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.footer-about{grid-column:1/-1}}@media (width<=640px){:root{--header-h:58px}.logo-text{font-size:27px}.logo-mark{height:27px;font-size:13px}.header-cta{display:none}.cover{padding-top:20px}.cover-side{grid-template-columns:minmax(0,1fr);gap:0}.cover-side .rail-label{margin-bottom:18px}.cover-side .card.mini{grid-template-columns:minmax(0,1fr) 88px}.cover-side .card.mini .card-visual{order:2}.cover-side .card.mini .card-media{aspect-ratio:1}.cover-side .card+.card{border-top:1px solid var(--rule);margin-top:20px;padding-top:20px}.home-section{padding-top:64px}.home-section.band{margin-top:72px;padding:56px 0 64px}.card.row{grid-template-columns:minmax(0,1fr) 112px;gap:16px}.card.row .card-visual{order:2}.card.row .card-media{aspect-ratio:1}.card.row .save-button{display:none}.card.row .card-title{font-size:1.15rem}.card.row .card-excerpt{display:none}.card.row-xl{grid-template-columns:minmax(0,1fr)}.card.row-xl .card-visual{order:0}.card.row-xl .card-media{aspect-ratio:16/10}.card.row-xl .save-button{display:grid}.card.row-xl .card-title{font-size:1.8rem}.card.row-xl .card-excerpt{display:-webkit-box}.river .card+.card{margin-top:22px;padding-top:22px}.latest-aside{grid-template-columns:minmax(0,1fr)}.grid-3,.grid-4{grid-template-columns:minmax(0,1fr);gap:40px}.section-head{margin-bottom:24px}.archive-hero{padding-block:40px 32px}.article-head{padding-top:28px}.article-byline{margin-top:24px}.byline-actions{display:none}.article-figure{margin-top:32px;padding-inline:0}.article-figure img{border-radius:0}.article-layout{padding-top:36px}.author-box{grid-template-columns:minmax(0,1fr);padding:22px}.post-nav{grid-template-columns:minmax(0,1fr)}.post-nav .next{text-align:left;align-items:flex-start}.comment-form{padding:20px}.comment-form-row,.wpt-form-row{grid-template-columns:minmax(0,1fr)}.newsletter-row{flex-direction:column}.newsletter-grid{padding-block:56px}.footer-grid{grid-template-columns:1fr 1fr}.consent-banner{bottom:16px;left:16px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.entry-content{color:var(--ink-2);font-family:var(--font-sans);letter-spacing:-.003em;overflow-wrap:break-word;font-feature-settings:"ss01", "cv11";font-size:1.125rem;line-height:1.75}.entry-content>:first-child{margin-top:0}.entry-content p,.entry-content ul,.entry-content ol,.entry-content figure,.entry-content table,.entry-content blockquote,.entry-content pre,.entry-content dl{margin:0 0 1.4em}.entry-content h2,.entry-content h3,.entry-content h4,.entry-content h5{color:var(--ink);scroll-margin-top:calc(var(--header-h) + 28px);text-wrap:balance}.entry-content h2{font:600 1.95rem/1.18 var(--font-display);letter-spacing:-.01em;font-synthesis:none;margin:2.1em 0 .55em}.entry-content h3{font:650 1.32rem/1.3 var(--font-sans);letter-spacing:-.015em;margin:1.9em 0 .5em}.entry-content h4,.entry-content h5{font:650 1.08rem/1.35 var(--font-sans);letter-spacing:-.01em;margin:1.7em 0 .5em}.entry-content h2 strong,.entry-content h2 b{font-weight:inherit}.entry-content a{color:var(--accent);text-underline-offset:3px;text-decoration:underline;text-decoration-thickness:1px;-webkit-text-decoration-color:color-mix(in srgb, currentColor 40%, transparent);text-decoration-color:color-mix(in srgb, currentColor 40%, transparent);transition:text-decoration-color .15s}.entry-content a:hover{text-decoration-color:currentColor}.entry-content ul,.entry-content ol{padding-left:1.3em}.entry-content li{margin-bottom:.45em;padding-left:.2em}.entry-content li::marker{color:var(--accent)}.entry-content ol>li::marker{font-variant-numeric:tabular-nums;font-weight:600}.entry-content li>ul,.entry-content li>ol{margin:.45em 0 0}.entry-content strong,.entry-content b{color:var(--ink);font-weight:650}.entry-content hr,.entry-content .wp-block-separator{border:0;border-top:2px solid var(--rule-strong);width:80px;margin:3em auto}.entry-content.drop-cap>p:first-child:first-letter{float:left;color:var(--ink);font:700 4.6em/.8 var(--font-display);font-synthesis:none;margin:.08em .1em -.05em 0}.entry-content blockquote:not(.wp-embedded-content){border-left:2px solid var(--accent);color:var(--ink);font:italic 400 1.5rem/1.42 var(--font-display);letter-spacing:0;font-synthesis:none;margin:2.2em 0;padding:.2em 0 .2em 1.4em;position:relative}.entry-content blockquote:not(.wp-embedded-content) p:last-child{margin-bottom:0}.entry-content blockquote cite{color:var(--muted);font:normal 600 .8rem/1.4 var(--font-sans);letter-spacing:.08em;text-transform:uppercase;margin-top:10px;display:block}.entry-content img{border-radius:10px}.entry-content figure{max-width:100%}.entry-content .aligncenter{text-align:center;margin-inline:auto}.entry-content .aligncenter img{margin-inline:auto}.entry-content .alignleft{float:left;max-width:50%;margin:.3em 1.6em 1em 0}.entry-content .alignright{float:right;max-width:50%;margin:.3em 0 1em 1.6em}.entry-content figcaption,.entry-content .wp-element-caption{color:var(--muted);text-align:center;margin-top:10px;font-size:.82rem;line-height:1.5}.entry-content:after{content:"";clear:both;display:table}.entry-content code{border:1px solid var(--rule);background:var(--bg-elevated);color:var(--ink);font-family:var(--font-mono);border-radius:6px;padding:.12em .4em;font-size:.84em}.entry-content pre{border-radius:var(--radius);color:#e4e7ea;font:400 .86rem/1.7 var(--font-mono);tab-size:4;letter-spacing:0;scrollbar-color:#3a4249 transparent;background:#101316;border:1px solid #23282d;padding:22px 24px;position:relative;overflow-x:auto}.entry-content pre code{color:inherit;font-size:inherit;white-space:pre;background:0 0;border:0;padding:0;display:block}.copy-code{color:#e4e7ea;font:500 .72rem/1.2 var(--font-sans);letter-spacing:.02em;opacity:0;background:#ffffff0f;border:1px solid #ffffff29;border-radius:999px;padding:5px 11px;transition:opacity .15s,background .15s;position:absolute;top:12px;right:12px}.entry-content pre:hover .copy-code,.copy-code:focus-visible{opacity:1}.copy-code:hover{background:#ffffff24}@media (hover:none){.copy-code{opacity:1}}.hljs-comment,.hljs-quote{color:#7b8794;font-style:italic}.hljs-keyword,.hljs-selector-tag,.hljs-literal,.hljs-doctag{color:#ff9b85}.hljs-string,.hljs-regexp,.hljs-addition,.hljs-meta .hljs-string{color:#a8dba8}.hljs-number,.hljs-symbol,.hljs-bullet{color:#f6c97a}.hljs-title,.hljs-title.function_,.hljs-section{color:#7fc8ff}.hljs-variable,.hljs-template-variable,.hljs-params{color:#e4e7ea}.hljs-attr,.hljs-attribute,.hljs-property,.hljs-selector-class,.hljs-selector-id{color:#c9b0ff}.hljs-built_in,.hljs-type,.hljs-class .hljs-title{color:#6fd8cb}.hljs-tag,.hljs-name{color:#ff9b85}.hljs-meta{color:#8fa1b3}.hljs-deletion{color:#ff8a8a}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700}.entry-content .wp-block-table{overflow-x:auto}.entry-content table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%;font-size:.95rem;line-height:1.5}.entry-content th,.entry-content td{border-bottom:1px solid var(--rule);text-align:left;vertical-align:top;padding:12px 14px}.entry-content thead th,.entry-content tr:first-child th{border-bottom:2px solid var(--rule-strong);color:var(--ink);letter-spacing:.08em;text-transform:uppercase;font-size:.75rem;font-weight:600}.entry-content tbody tr:hover td{background:color-mix(in srgb, var(--surface) 50%, transparent)}.entry-content .wp-block-buttons{flex-wrap:wrap;gap:12px;margin-bottom:1.4em;display:flex}.entry-content .wp-block-button__link,.entry-content .extralarge_button{background:var(--ink);color:var(--bg);font:600 .95rem/1.2 var(--font-sans);border-radius:999px;align-items:center;gap:8px;padding:13px 26px;text-decoration:none;transition:background .2s,color .2s;display:inline-flex}.entry-content .wp-block-button__link:hover,.entry-content .extralarge_button:hover{background:var(--accent);color:var(--on-accent)}.entry-content .wp-block-group.has-background{border-radius:var(--radius);padding:26px 30px}.entry-content .wp-block-group>:last-child,.entry-content .wp-block-group__inner-container>:last-child{margin-bottom:0}.entry-content .wp-block-columns{flex-wrap:wrap;gap:28px;margin-bottom:1.4em;display:flex}.entry-content .wp-block-column{flex:240px;min-width:0}.entry-content .has-text-align-center{text-align:center}.entry-content .is-style-rounded img{border-radius:9999px}.entry-content .has-background,.entry-content .has-very-light-gray-background-color{color:var(--ink);border-radius:10px;padding:1.1em 1.35em;background-color:var(--surface)!important}.entry-content .has-background[style*=\#fdd],.entry-content .has-background[style*=\#ffdddd]{background-color:var(--bad-soft)!important}.entry-content .has-background[style*=\#d4edda]{background-color:var(--ok-soft)!important}.entry-content .has-vivid-cyan-blue-background-color{background-color:var(--accent)!important;color:var(--on-accent)!important}.entry-content .has-vivid-cyan-blue-to-vivid-purple-gradient-background{color:#fff!important;background:linear-gradient(135deg,#0693e3,#7b4fe0)!important}.entry-content .wp-block-embed{margin-inline:0}.entry-content .wp-has-aspect-ratio .wp-block-embed__wrapper{aspect-ratio:16/9;position:relative}.entry-content .wp-has-aspect-ratio iframe{border-radius:var(--radius);border:0;width:100%;height:100%;position:absolute;inset:0}.entry-content iframe{max-width:100%}.entry-content blockquote.wp-embedded-content{border:1px solid var(--rule);border-radius:var(--radius);background:var(--bg-elevated);color:var(--ink);margin:0 0 1.4em;padding:18px 22px;font-size:1rem;font-weight:600;display:block}.entry-content .schema-faq{border-top:2px solid var(--rule-strong);margin-bottom:1.6em}.entry-content .schema-faq-section{border-bottom:1px solid var(--rule);padding:20px 0}.entry-content .schema-faq-question{color:var(--ink);font:600 1.3rem/1.25 var(--font-display);font-synthesis:none;margin-bottom:8px;display:block}.entry-content .schema-faq-answer{margin:0}.entry-content .wpt-features{border-radius:var(--radius);background:var(--accent-soft);color:var(--ink);padding:24px 28px 24px 46px}.entry-content .wpt-inline-note{border-left:3px solid var(--hot);background:var(--surface);border-radius:0 10px 10px 0;padding:16px 20px;font-size:.97em}.entry-content .wpt-plugin-img img{margin-inline:auto;box-shadow:0 20px 50px -24px #0006}.entry-content .code-snippet-explanation{border-radius:var(--radius);background:var(--surface);padding:20px 24px;font-size:.97em}.archive-intro{font-size:1.05rem;line-height:1.65}.comment-content{font-size:1rem;line-height:1.7}.comment-content p:last-child{margin-bottom:0}@media (width<=640px){.entry-content{font-size:1.06rem}.entry-content h2{font-size:1.65rem}.entry-content blockquote:not(.wp-embedded-content){font-size:1.3rem}.entry-content .alignleft,.entry-content .alignright{float:none;max-width:100%;margin:0 0 1.4em}.entry-content pre{margin-inline:calc(var(--gutter) * -1);border-inline:0;border-radius:0}}.wpt-stars{--size:18px;vertical-align:middle;width:calc(var(--size) * 5);height:var(--size);background:linear-gradient(90deg, var(--star) calc(var(--rating) * 20%), var(--surface-2) calc(var(--rating) * 20%));-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2.5l2.8 6.4 6.9.6-5.2 4.6 1.6 6.8L12 17.3l-6.1 3.6 1.6-6.8-5.2-4.6 6.9-.6z'/%3E%3C/svg%3E") left / var(--size) var(--size) repeat-x;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2.5l2.8 6.4 6.9.6-5.2 4.6 1.6 6.8L12 17.3l-6.1 3.6 1.6-6.8-5.2-4.6 6.9-.6z'/%3E%3C/svg%3E") left / var(--size) var(--size) repeat-x;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2.5l2.8 6.4 6.9.6-5.2 4.6 1.6 6.8L12 17.3l-6.1 3.6 1.6-6.8-5.2-4.6 6.9-.6z'/%3E%3C/svg%3E") left / var(--size) var(--size) repeat-x;display:inline-block}.wpt-stars.sm{--size:14px}.wpt-stars.lg{--size:24px}.entry-content .wpt-review{border:1px solid var(--rule);border-radius:var(--radius);background:var(--bg-elevated);font-family:var(--font-sans);margin:2.4em 0;padding:30px 32px}.wpt-review-head{border-bottom:1px solid var(--rule);justify-content:space-between;align-items:center;gap:24px;margin-bottom:18px;padding-bottom:20px;display:flex}.entry-content .wpt-review-eyebrow{color:var(--accent);letter-spacing:.13em;text-transform:uppercase;margin:0;font-size:.72rem;font-weight:600}.entry-content .wpt-review-title{font:600 1.7rem/1.15 var(--font-display);font-synthesis:none;margin:6px 0 0}.wpt-review-score{background:var(--ink);min-width:112px;color:var(--bg);text-align:center;border-radius:12px;justify-items:center;gap:6px;padding:16px 18px;display:grid}.wpt-review-score .value{font:600 2.6rem/.95 var(--font-display);font-synthesis:none}.wpt-review-score .out-of{opacity:.75;letter-spacing:.05em;font-size:.72rem}.wpt-review-score .wpt-stars{--size:14px;background:linear-gradient(90deg, var(--star) calc(var(--rating) * 20%), color-mix(in srgb, var(--bg) 30%, transparent) calc(var(--rating) * 20%))}.entry-content .wpt-review-summary{color:var(--ink);font-size:1.05rem;line-height:1.7}.entry-content .wpt-review-criteria{margin:0 0 20px;padding:0;list-style:none}.entry-content .wpt-review-criteria li{grid-template-columns:minmax(110px,1fr) 2fr 40px;align-items:center;gap:14px;margin:0 0 10px;padding:0;font-size:.92rem;display:grid}.entry-content .wpt-review-criteria li::marker{content:none}.wpt-review-criteria .bar{background:var(--surface);border-radius:999px;height:6px;overflow:hidden}.wpt-review-criteria .bar span{background:var(--accent);border-radius:999px;height:100%;display:block}.wpt-review-criteria .score{text-align:right;font-variant-numeric:tabular-nums;font-weight:650}.wpt-review-proscons{grid-template-columns:1fr 1fr;gap:16px;margin-bottom:18px;display:grid}.wpt-review-proscons>div{border-radius:10px;padding:18px 20px}.wpt-review-proscons .pros{background:var(--ok-soft)}.wpt-review-proscons .cons{background:var(--bad-soft)}.entry-content .wpt-review-proscons h3{letter-spacing:.12em;text-transform:uppercase;margin:0 0 8px;font-size:.75rem}.entry-content .wpt-review-proscons ul{margin:0;padding-left:0;font-size:.95rem;line-height:1.55;list-style:none}.entry-content .wpt-review-proscons li{margin-bottom:6px;padding-left:24px;position:relative}.wpt-review-proscons .pros li:before{content:"✓";color:var(--ok);font-weight:700;position:absolute;left:0}.wpt-review-proscons .cons li:before{content:"✕";color:var(--bad);font-weight:700;position:absolute;left:0}.entry-content .wpt-review-cta{text-align:center;margin:0}.entry-content .wpt-notice{border-left:3px solid var(--accent);background:var(--accent-soft);color:var(--ink);border-radius:0 10px 10px 0;margin:0 0 1.4em;padding:16px 20px;font-size:.97em}.entry-content .wpt-notice.tip,.entry-content .wpt-notice.success{border-color:var(--ok);background:var(--ok-soft)}.entry-content .wpt-notice.warning{border-color:var(--warn);background:var(--warn-soft)}.wpt-notice-title{margin-bottom:4px;font-weight:650;display:block}.entry-content .wpt-toc{border:1px solid var(--rule);border-radius:var(--radius);background:var(--bg-elevated);margin:0 0 1.8em;padding:20px 24px;font-size:.95rem}.entry-content .wpt-toc-title{color:var(--muted);letter-spacing:.13em;text-transform:uppercase;margin:0 0 10px;font-size:.72rem;font-weight:600}.entry-content .wpt-toc ol{margin:0;padding-left:20px}.entry-content .wpt-toc li{margin:4px 0}.entry-content .wpt-toc a{color:var(--ink);text-decoration:none}.entry-content .wpt-toc a:hover{color:var(--accent)}.entry-content .wpt-toc .toc-h3{margin-left:16px;list-style-type:circle}.entry-content .wpt-products{gap:20px;margin-bottom:1.6em;display:grid}.wpt-products.cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.wpt-products.cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.wpt-products.cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.wpt-product-card{border:1px solid var(--rule);border-radius:var(--radius);background:var(--bg-elevated);flex-direction:column;display:flex;overflow:hidden}.wpt-product-card img{aspect-ratio:4/3;object-fit:cover;border-radius:0;width:100%}.wpt-product-body{flex-direction:column;gap:8px;padding:16px 18px 18px;display:flex}.entry-content .wpt-product-body h3{font:600 1.2rem/1.2 var(--font-display);font-synthesis:none;margin:0}.wpt-price{color:var(--ink);font-family:var(--font-sans);margin:0;font-weight:650}.wpt-price del{color:var(--faint);margin-right:4px;font-weight:500}.wpt-price ins{color:var(--hot);text-decoration:none}.entry-content .wpt-product-body .wp-block-button__link{justify-content:center;margin-top:auto}@media (width<=700px){.wpt-review-head{flex-direction:column;align-items:flex-start}.wpt-review-proscons,.wpt-products.cols-3,.wpt-products.cols-4,.wpt-products.cols-2{grid-template-columns:1fr}.entry-content .wpt-review{padding:22px}}.entry-content h2,.entry-content.drop-cap>p:first-child:first-letter,.entry-content blockquote:not(.wp-embedded-content),.entry-content .schema-faq-question,.entry-content .wpt-review-title,.wpt-review-score .value,.entry-content .wpt-product-body h3,.entry-content .wpt-form h3{font-variant-numeric:lining-nums}@keyframes fade-in{0%{opacity:0}}@keyframes fade-up{0%{opacity:0;translate:0 12px}}@keyframes rise{0%{opacity:0;translate:0 36px}}@keyframes pop{40%{transform:scale(1.28)}}@keyframes spin{to{rotate:360deg}}@keyframes shimmer{to{background-position:-200% 0}}@keyframes marquee{to{translate:-50%}}@keyframes pulse{0%{box-shadow:0 0 0 0 color-mix(in srgb, var(--hot) 55%, transparent)}70%,to{box-shadow:0 0 0 9px #0000}}kbd{background:var(--bg);min-width:22px;height:22px;box-shadow:inset 0 0 0 1px var(--rule), 0 1px 0 var(--rule);color:var(--muted);font:500 .7rem/1 var(--font-mono);border-radius:6px;place-items:center;padding:0 6px;display:inline-grid}::view-transition-old(root){animation:.2s var(--ease) both vt-out}::view-transition-new(root){animation:.46s var(--ease) both vt-in}@keyframes vt-out{to{opacity:0;translate:0 -10px}}@keyframes vt-in{0%{opacity:0;translate:0 18px}}::view-transition-group(hero-image){animation-duration:.56s;animation-timing-function:var(--ease)}::view-transition-group(hero-title){animation-duration:.56s;animation-timing-function:var(--ease)}::view-transition-old(hero-image){object-fit:cover;border-radius:var(--radius);width:100%;height:100%}::view-transition-new(hero-image){object-fit:cover;border-radius:var(--radius);width:100%;height:100%}::view-transition-old(hero-title){animation-duration:.2s}html.theme-transition *,html.theme-transition :before{view-transition-name:none!important}html.theme-transition::view-transition-old(root){mix-blend-mode:normal;animation:none}html.theme-transition::view-transition-new(root){mix-blend-mode:normal;animation:none}@supports (animation-timeline:view()){@media (prefers-reduced-motion:no-preference){.card,.section-head,.snippet-card,.docs-section-card,.author-box,.post-nav,.newsletter-grid,.footer-grid,.topic-list li,.error-code{animation:linear both rise;animation-timeline:view();animation-range:entry entry 42%}}}.search-trigger{background:var(--surface);height:38px;color:var(--muted);border:0;border-radius:999px;align-items:center;gap:8px;margin-right:4px;padding:0 7px 0 14px;font-size:.86rem;transition:background .15s,color .15s;display:inline-flex}.search-trigger:hover{background:var(--surface-2);color:var(--ink)}.search-trigger kbd{background:var(--bg-elevated);margin-left:18px}.saved-trigger{position:relative}.count-badge{background:var(--accent);min-width:17px;height:17px;color:var(--on-accent);font:700 .64rem/17px var(--font-sans);text-align:center;animation:pop .35s var(--ease);border-radius:999px;padding:0 4px;position:absolute;top:3px;right:1px}.theme-toggle svg{transition:rotate .5s var(--ease)}.theme-toggle:hover svg{rotate:25deg}.mobile-nav>li{animation:fade-up .5s var(--ease) both;animation-delay:calc(var(--i,0) * 45ms)}.palette-backdrop{z-index:90;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#00000061;justify-content:center;align-items:flex-start;padding:11vh 16px 16px;animation:.2s fade-in;display:flex;position:fixed;inset:0}.palette{border:1px solid var(--rule);background:var(--bg-elevated);width:min(700px,100%);max-height:76vh;animation:palette-in .3s var(--ease);border-radius:20px;flex-direction:column;display:flex;overflow:hidden;box-shadow:0 40px 100px -24px #00000080}@keyframes palette-in{0%{opacity:0;transform:translateY(-12px)scale(.98)}}.palette-input{border-bottom:1px solid var(--rule);color:var(--muted);align-items:center;gap:12px;padding:0 14px 0 22px;display:flex}.palette-input input{min-width:0;height:68px;color:var(--ink);font:500 1.4rem/1.2 var(--font-display);letter-spacing:-.01em;background:0 0;border:0;flex:1}.palette-input input:focus{outline:none}.palette-input input::placeholder{color:var(--faint)}.palette-input input::-webkit-search-cancel-button{display:none}.palette-esc{cursor:pointer}.palette-spinner{border:2px solid var(--rule);border-top-color:var(--accent);border-radius:50%;width:18px;height:18px;animation:.7s linear infinite spin}.palette-body{overscroll-behavior:contain;padding:8px;overflow-y:auto}.palette-section{color:var(--muted);font:600 .68rem/1.2 var(--font-sans);letter-spacing:.13em;text-transform:uppercase;margin:10px 12px 6px;list-style:none}.palette-list{margin:0;padding:0;list-style:none}.palette-list [role=option]{cursor:pointer;border-radius:12px;align-items:center;gap:14px;padding:10px 12px;transition:background .12s;display:flex}.palette-list .is-active{background:var(--surface)}.palette-list img,.palette-thumb{object-fit:cover;background:var(--surface);border-radius:10px;flex:none;width:52px;height:52px}.palette-icon{background:var(--surface);width:36px;height:36px;color:var(--muted);border-radius:10px;flex:none;place-items:center;display:grid}.palette-list .is-active .palette-icon{background:var(--bg-elevated);color:var(--ink)}.palette-text{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.palette-meta{color:var(--muted);font-size:.74rem}.palette-title{color:var(--ink);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.98rem;font-weight:500;line-height:1.35;display:-webkit-box;overflow:hidden}.palette-title mark{background:color-mix(in srgb, var(--accent) 24%, transparent);color:inherit;border-radius:3px;padding:0 1px}.palette-enter{color:var(--muted);flex:none}.palette-empty{color:var(--muted);text-align:center;padding:32px 16px}.palette-foot{border-top:1px solid var(--rule);color:var(--muted);gap:18px;padding:11px 20px;font-size:.74rem;display:flex}.palette-foot span{align-items:center;gap:4px;display:inline-flex}.drawer-backdrop{z-index:90;background:#00000052;animation:.2s fade-in;position:fixed;inset:0}.drawer{background:var(--bg);border-left:1px solid var(--rule);width:min(430px,100%);animation:drawer-in .4s var(--ease);outline:none;flex-direction:column;display:flex;position:absolute;inset:0 0 0 auto;box-shadow:-30px 0 80px -30px #0006}@keyframes drawer-in{0%{translate:100%}}.drawer-head{border-bottom:1px solid var(--rule);justify-content:space-between;align-items:flex-start;gap:16px;padding:26px 24px 20px;display:flex}.drawer-head h2{font:600 1.9rem/1.1 var(--font-display);letter-spacing:-.015em;font-synthesis:none;margin:10px 0 0}.saved-list{margin:0;padding:6px 14px 24px;list-style:none;overflow-y:auto}.saved-list li{border-bottom:1px solid var(--rule);animation:fade-up .35s var(--ease) both;align-items:center;gap:4px;display:flex}.saved-link{min-width:0;color:var(--ink);flex:1;gap:14px;padding:14px 6px;display:flex}.saved-link img,.saved-thumb{object-fit:cover;background:var(--surface);border-radius:10px;flex:none;width:64px;height:64px}.saved-link>span{flex-direction:column;align-items:flex-start;gap:5px;min-width:0;display:flex}.saved-title{font:600 1.06rem/1.25 var(--font-display);font-synthesis:none;transition:color .15s}.saved-link:hover{color:var(--ink)}.saved-link:hover .saved-title{color:var(--accent)}.saved-date{color:var(--muted);font-size:.76rem}.drawer-empty{color:var(--muted);text-align:center;padding:56px 32px}.drawer-empty svg{color:var(--faint);margin-bottom:14px}.muted-note{color:var(--faint);font-size:.8rem}.save-button{z-index:2;background:color-mix(in srgb, var(--bg-elevated) 86%, transparent);width:38px;height:38px;color:var(--ink);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);opacity:0;transition:opacity .2s, transform .3s var(--ease), background .2s, color .2s;border:0;border-radius:999px;place-items:center;display:grid;position:absolute;top:10px;right:10px;transform:translateY(-4px)scale(.92);box-shadow:0 8px 20px -10px #00000073}.card:hover .save-button,.save-button:focus-visible,.save-button.is-saved{opacity:1;transform:none}.save-button:hover{background:var(--ink);color:var(--bg)}.save-button.is-saved{background:var(--accent);color:var(--on-accent)}.save-button.is-saved svg,.dock-button.is-saved svg,.share-button.is-saved svg{animation:pop .4s var(--ease)}@media (hover:none){.save-button{opacity:1;transform:none}}.cursor-badge{z-index:65;pointer-events:none;position:fixed;top:0;left:0}.cursor-badge span{background:var(--ink);width:86px;height:86px;color:var(--bg);font:600 .82rem/1 var(--font-sans);transition:transform .35s var(--ease);border-radius:50%;justify-content:center;align-items:center;gap:3px;display:flex;transform:translate(-50%,-50%)scale(0);box-shadow:0 14px 34px -12px #0000008c}.cursor-badge.is-active span{transform:translate(-50%,-50%)scale(1)}.ticker{border-block:1px solid var(--rule);align-items:stretch;font-size:.88rem;display:flex;overflow:hidden}.ticker-label{z-index:1;padding:11px 18px 11px var(--gutter);background:var(--ink);color:var(--bg);font:600 .7rem/1 var(--font-sans);letter-spacing:.14em;text-transform:uppercase;flex:none;align-items:center;gap:9px;margin:0;display:flex;position:relative}.live-dot{background:var(--hot);border-radius:50%;width:8px;height:8px;animation:1.8s infinite pulse}.ticker-viewport{flex:1;min-width:0;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,#0000,#000 3% 95%,#0000);mask-image:linear-gradient(90deg,#0000,#000 3% 95%,#0000)}.ticker-track{width:max-content;height:100%;animation:marquee calc(var(--items,6) * 7.5s) linear infinite;align-items:center;margin:0;padding:0;list-style:none;display:flex}.ticker:hover .ticker-track,.ticker:focus-within .ticker-track{animation-play-state:paused}.ticker-track li{white-space:nowrap;align-items:center;gap:10px;padding-right:34px;display:flex}.ticker-track li:before{content:"✦";color:var(--accent);margin-right:6px;font-size:.8em}.ticker-cat{color:var(--muted);font:600 .66rem/1 var(--font-sans);letter-spacing:.12em;text-transform:uppercase}.ticker-track a{color:var(--ink);font-weight:500}.ticker-track a:hover{color:var(--accent)}.topic-band{border-block:1px solid var(--rule);margin-top:104px;padding:22px 0 26px;overflow:hidden}.topic-band-track{width:max-content;margin:0;padding:0;list-style:none;animation:70s linear infinite marquee;display:flex}.topic-band:hover .topic-band-track,.topic-band:focus-within .topic-band-track{animation-play-state:paused}.topic-band li{font:500 clamp(2.1rem, 5vw, 4.3rem)/1.2 var(--font-display);letter-spacing:-.02em;white-space:nowrap;align-items:center;display:flex}.topic-band li:after{content:"✦";color:var(--accent);margin:0 .5em;font-size:.32em}.topic-band a{color:var(--ink);font-synthesis:none;transition:color .2s}.topic-band a:hover{color:var(--accent);font-style:italic}.topic-band sup{color:var(--muted);font:500 .78rem/1 var(--font-mono);vertical-align:2.4em;letter-spacing:0;margin-left:.25em}.latest-main{min-width:0}.tabs{background:var(--surface);scrollbar-width:none;border-radius:999px;gap:2px;max-width:100%;margin:-8px 0 32px;padding:4px;display:inline-flex;position:relative;overflow-x:auto}.tabs::-webkit-scrollbar{display:none}.tab{z-index:1;color:var(--muted);background:0 0;border:0;border-radius:999px;flex:none;padding:8px 18px;font-size:.88rem;font-weight:500;transition:color .25s;position:relative}.tab:hover{color:var(--ink)}.tab.is-active{color:var(--bg)}.tabs:not(.is-ready) .tab.is-active{background:var(--ink)}.tab-indicator{background:var(--ink);width:0;transition:translate .4s var(--ease), width .4s var(--ease);border-radius:999px;position:absolute;top:4px;bottom:4px;left:0}.river{animation:fade-up .45s var(--ease) both}.card.skeleton{grid-template-columns:minmax(0,.9fr) minmax(0,1.25fr);gap:28px;display:grid}.skeleton span{border-radius:var(--radius-sm);background:linear-gradient(90deg, var(--surface) 25%, var(--surface-2) 50%, var(--surface) 75%) 0 0 / 200% 100%;animation:1.2s linear infinite shimmer;display:block}.skeleton span:first-child{aspect-ratio:3/2}.skeleton span:last-child{height:110px}.quote-share{z-index:75;background:var(--ink);color:var(--bg);animation:quote-in .22s var(--ease);border-radius:999px;gap:2px;padding:4px;display:flex;position:fixed;transform:translate(-50%,calc(-100% - 12px));box-shadow:0 16px 40px -14px #0000008c}.quote-share:after{content:"";background:inherit;border-radius:2px;width:11px;height:11px;position:absolute;bottom:-5px;left:50%;transform:translate(-50%)rotate(45deg)}@keyframes quote-in{0%{opacity:0;transform:translate(-50%,calc(-100% - 4px))scale(.94)}}.quote-share button{z-index:1;color:inherit;background:0 0;border:0;border-radius:999px;align-items:center;gap:7px;padding:8px 13px;font-size:.82rem;font-weight:600;display:inline-flex;position:relative}.quote-share button:hover{background:color-mix(in srgb, var(--bg) 18%, transparent)}.x-mark{font-weight:700}.entry-content img{cursor:zoom-in}.entry-content a img{cursor:pointer}.lightbox{z-index:95;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#08090aed;place-items:center;animation:.2s fade-in;display:grid;position:fixed;inset:0;overflow:auto}.lightbox-stage{flex-direction:column;align-items:center;gap:14px;max-width:100%;margin:0;padding:72px 24px 32px;display:flex}.lightbox-stage img{object-fit:contain;cursor:zoom-in;width:auto;max-width:min(1500px,100%);max-height:calc(100vh - 150px);animation:lightbox-in .35s var(--ease);border-radius:8px;box-shadow:0 30px 80px -20px #0009}@keyframes lightbox-in{0%{opacity:0;transform:scale(.95)}}.lightbox.is-zoomed{place-items:start}.lightbox.is-zoomed .lightbox-stage img{cursor:zoom-out;max-width:none;max-height:none}.lightbox figcaption{color:#c7cbcf;text-align:center;max-width:720px;font-size:.88rem}.lightbox-bar{z-index:1;gap:8px;display:flex;position:fixed;top:16px;right:16px}.lightbox-button{color:#fff;background:#ffffff1a;border:0;border-radius:999px;place-items:center;width:44px;height:44px;transition:background .15s;display:grid}.lightbox-button:hover{background:#ffffff38}.reading-dock{z-index:55;border:1px solid var(--rule);background:color-mix(in srgb, var(--bg-elevated) 86%, transparent);-webkit-backdrop-filter:blur(16px)saturate(1.5);backdrop-filter:blur(16px)saturate(1.5);opacity:0;pointer-events:none;transition:translate .5s var(--ease), opacity .3s;border-radius:999px;align-items:center;gap:2px;padding:5px;display:flex;position:fixed;bottom:22px;left:50%;translate:-50% 160%;box-shadow:0 22px 50px -22px #0006}.reading-dock.is-visible{opacity:1;pointer-events:auto;translate:-50%}.dock-button{min-width:42px;height:42px;color:var(--ink);background:0 0;border:0;border-radius:999px;justify-content:center;align-items:center;gap:5px;padding:0 11px;font-size:.85rem;font-weight:600;transition:background .15s,color .15s;display:inline-flex;position:relative}.dock-button:hover{background:var(--surface);color:var(--ink)}.dock-button.is-saved{color:var(--accent)}.text-size{font-family:var(--font-display);gap:1px}.text-size span:first-child{font-size:1.3rem;line-height:1}.text-size span:last-child{font-size:.95rem;line-height:1}.text-size[data-size=s] span:first-child{font-size:1.05rem}.text-size[data-size=l] span:first-child{font-size:1.55rem}.dock-count{font-size:.78rem}.to-top{width:42px;padding:0}.to-top .dock-ring{width:40px;height:40px;position:absolute;inset:1px;rotate:-90deg}.ring-track{fill:none;stroke:var(--rule);stroke-width:2px}.ring-fill{fill:none;stroke:var(--accent);stroke-width:2.4px;stroke-linecap:round}[data-text-size=s] .entry-content{font-size:1rem}[data-text-size=l] .entry-content{font-size:1.3rem}.button svg,.text-link svg{transition:transform .25s var(--ease)}.button:hover svg,.text-link:hover svg{transform:translate(3px)}.footer-wordmark a{transition:letter-spacing .8s var(--ease)}.footer-wordmark a:hover{letter-spacing:-.035em}@media (width<=1100px){.search-trigger{background:0 0;justify-content:center;width:40px;margin:0;padding:0}.search-trigger:hover{background:var(--surface)}.search-trigger-text,.search-trigger kbd{display:none}}@media (width<=640px){.palette-backdrop{align-items:stretch;padding:0}.palette{border:0;border-radius:0;width:100%;height:100%;max-height:none}.palette-foot{display:none}.ticker-label{padding-inline:16px 14px}.reading-dock{bottom:14px}.topic-band{margin-top:72px}}@media (prefers-reduced-motion:reduce){::view-transition-group(*){animation:none!important}::view-transition-old(*){animation:none!important}::view-transition-new(*){animation:none!important}.ticker-viewport,.topic-band{overflow-x:auto}.ticker-track li[aria-hidden],.topic-band li[aria-hidden],.cursor-badge{display:none}}.topbar-tagline,.logo-text,.search-form.large input,.mobile-link,.card-title,.card-index,.section-title,.topic-list a,.archive-title,.snippet-card h2,.article-title,.author-box h2,.post-nav-title,.comments>h2,.comment-form h3,.wpt-form h3,.entry-content .wpt-form h3,.docs-title,.docs-section-card h2,.docs-children a,.product-title,.product-price,.error-code,.error-page h1,.site-footer .newsletter-title,.footer-tagline,.footer-wordmark a,.entry-content h2,.entry-content.drop-cap>p:first-child:first-letter,.entry-content blockquote:not(.wp-embedded-content),.entry-content .schema-faq-question,.entry-content .wpt-review-title,.wpt-review-score .value,.entry-content .wpt-product-body h3,.palette-input input,.drawer-head h2,.saved-title,.topic-band li{font-variant-numeric:lining-nums}
