@font-face{font-family:Montserrat Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/montserrat-cyrillic-ext-wght-normal.CO5hGrJv.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:Montserrat Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/montserrat-cyrillic-wght-normal.EAA9jha_.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Montserrat Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/montserrat-vietnamese-wght-normal.k7S-YeeD.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:Montserrat Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/montserrat-latin-ext-wght-normal.BsZE-iaG.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:Montserrat Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/montserrat-latin-wght-normal.l_AIctKy.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:Montserrat Variable;font-style:italic;font-display:swap;font-weight:100 900;src:url(/_astro/montserrat-cyrillic-ext-wght-italic.B5MGXMAg.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:Montserrat Variable;font-style:italic;font-display:swap;font-weight:100 900;src:url(/_astro/montserrat-cyrillic-wght-italic.CVbpa0t4.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Montserrat Variable;font-style:italic;font-display:swap;font-weight:100 900;src:url(/_astro/montserrat-vietnamese-wght-italic.BGJhoCPh.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:Montserrat Variable;font-style:italic;font-display:swap;font-weight:100 900;src:url(/_astro/montserrat-latin-ext-wght-italic.C8utfXoj.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:Montserrat Variable;font-style:italic;font-display:swap;font-weight:100 900;src:url(/_astro/montserrat-latin-wght-italic.jzfX-GOl.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:Roboto Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/roboto-cyrillic-ext-wght-normal.BCp_3N7R.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:Roboto Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/roboto-cyrillic-wght-normal.fOt7epNf.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Roboto Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/roboto-greek-ext-wght-normal.Bgw4czJT.woff2)format("woff2-variations");unicode-range:U+1F??}@font-face{font-family:Roboto Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/roboto-greek-wght-normal.DlT9XTxE.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Roboto Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/roboto-math-wght-normal.4a3xuzGk.woff2)format("woff2-variations");unicode-range:U+302-303,U+305,U+307-308,U+310,U+312,U+315,U+31A,U+326-327,U+32C,U+32F-330,U+332-333,U+338,U+33A,U+346,U+34D,U+391-3A1,U+3A3-3A9,U+3B1-3C9,U+3D1,U+3D5-3D6,U+3F0-3F1,U+3F4-3F5,U+2016-2017,U+2034-2038,U+203C,U+2040,U+2043,U+2047,U+2050,U+2057,U+205F,U+2070-2071,U+2074-208E,U+2090-209C,U+20D0-20DC,U+20E1,U+20E5-20EF,U+2100-2112,U+2114-2115,U+2117-2121,U+2123-214F,U+2190,U+2192,U+2194-21AE,U+21B0-21E5,U+21F1-21F2,U+21F4-2211,U+2213-2214,U+2216-22FF,U+2308-230B,U+2310,U+2319,U+231C-2321,U+2336-237A,U+237C,U+2395,U+239B-23B7,U+23D0,U+23DC-23E1,U+2474-2475,U+25AF,U+25B3,U+25B7,U+25BD,U+25C1,U+25CA,U+25CC,U+25FB,U+266D-266F,U+27C0-27FF,U+2900-2AFF,U+2B0E-2B11,U+2B30-2B4C,U+2BFE,U+3030,U+FF5B,U+FF5D,U+1D400-1D7FF,U+1EE??}@font-face{font-family:Roboto Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/roboto-symbols-wght-normal.B7iHSfaG.woff2)format("woff2-variations");unicode-range:U+1-C,U+E-1F,U+7F-9F,U+20DD-20E0,U+20E2-20E4,U+2150-218F,U+2190,U+2192,U+2194-2199,U+21AF,U+21E6-21F0,U+21F3,U+2218-2219,U+2299,U+22C4-22C6,U+2300-243F,U+2440-244A,U+2460-24FF,U+25A0-27BF,U+28??,U+2921-2922,U+2981,U+29BF,U+29EB,U+2B??,U+4DC0-4DFF,U+FFF9-FFFB,U+10140-1018E,U+10190-1019C,U+101A0,U+101D0-101FD,U+102E0-102FB,U+10E60-10E7E,U+1D2C0-1D2D3,U+1D2E0-1D37F,U+1F0??,U+1F100-1F1AD,U+1F1E6-1F1FF,U+1F30D-1F30F,U+1F315,U+1F31C,U+1F31E,U+1F320-1F32C,U+1F336,U+1F378,U+1F37D,U+1F382,U+1F393-1F39F,U+1F3A7-1F3A8,U+1F3AC-1F3AF,U+1F3C2,U+1F3C4-1F3C6,U+1F3CA-1F3CE,U+1F3D4-1F3E0,U+1F3ED,U+1F3F1-1F3F3,U+1F3F5-1F3F7,U+1F408,U+1F415,U+1F41F,U+1F426,U+1F43F,U+1F441-1F442,U+1F444,U+1F446-1F449,U+1F44C-1F44E,U+1F453,U+1F46A,U+1F47D,U+1F4A3,U+1F4B0,U+1F4B3,U+1F4B9,U+1F4BB,U+1F4BF,U+1F4C8-1F4CB,U+1F4D6,U+1F4DA,U+1F4DF,U+1F4E3-1F4E6,U+1F4EA-1F4ED,U+1F4F7,U+1F4F9-1F4FB,U+1F4FD-1F4FE,U+1F503,U+1F507-1F50B,U+1F50D,U+1F512-1F513,U+1F53E-1F54A,U+1F54F-1F5FA,U+1F610,U+1F650-1F67F,U+1F687,U+1F68D,U+1F691,U+1F694,U+1F698,U+1F6AD,U+1F6B2,U+1F6B9-1F6BA,U+1F6BC,U+1F6C6-1F6CF,U+1F6D3-1F6D7,U+1F6E0-1F6EA,U+1F6F0-1F6F3,U+1F6F7-1F6FC,U+1F7??,U+1F800-1F80B,U+1F810-1F847,U+1F850-1F859,U+1F860-1F887,U+1F890-1F8AD,U+1F8B0-1F8BB,U+1F8C0-1F8C1,U+1F900-1F90B,U+1F93B,U+1F946,U+1F984,U+1F996,U+1F9E9,U+1FA00-1FA6F,U+1FA70-1FA7C,U+1FA80-1FA89,U+1FA8F-1FAC6,U+1FACE-1FADC,U+1FADF-1FAE9,U+1FAF0-1FAF8,U+1FB??}@font-face{font-family:Roboto Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/roboto-vietnamese-wght-normal._f1XEJpo.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:Roboto Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/roboto-latin-ext-wght-normal.DYIxWhlt.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:Roboto Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/roboto-latin-wght-normal.ccAYIvAh.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:Roboto Variable;font-style:italic;font-display:swap;font-weight:100 900;src:url(/_astro/roboto-cyrillic-ext-wght-italic.CF6Mjs9W.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:Roboto Variable;font-style:italic;font-display:swap;font-weight:100 900;src:url(/_astro/roboto-cyrillic-wght-italic.C9vUoH1W.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Roboto Variable;font-style:italic;font-display:swap;font-weight:100 900;src:url(/_astro/roboto-greek-ext-wght-italic.BN4prdd5.woff2)format("woff2-variations");unicode-range:U+1F??}@font-face{font-family:Roboto Variable;font-style:italic;font-display:swap;font-weight:100 900;src:url(/_astro/roboto-greek-wght-italic.VCNM9v6e.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Roboto Variable;font-style:italic;font-display:swap;font-weight:100 900;src:url(/_astro/roboto-math-wght-italic.qN-POhBq.woff2)format("woff2-variations");unicode-range:U+302-303,U+305,U+307-308,U+310,U+312,U+315,U+31A,U+326-327,U+32C,U+32F-330,U+332-333,U+338,U+33A,U+346,U+34D,U+391-3A1,U+3A3-3A9,U+3B1-3C9,U+3D1,U+3D5-3D6,U+3F0-3F1,U+3F4-3F5,U+2016-2017,U+2034-2038,U+203C,U+2040,U+2043,U+2047,U+2050,U+2057,U+205F,U+2070-2071,U+2074-208E,U+2090-209C,U+20D0-20DC,U+20E1,U+20E5-20EF,U+2100-2112,U+2114-2115,U+2117-2121,U+2123-214F,U+2190,U+2192,U+2194-21AE,U+21B0-21E5,U+21F1-21F2,U+21F4-2211,U+2213-2214,U+2216-22FF,U+2308-230B,U+2310,U+2319,U+231C-2321,U+2336-237A,U+237C,U+2395,U+239B-23B7,U+23D0,U+23DC-23E1,U+2474-2475,U+25AF,U+25B3,U+25B7,U+25BD,U+25C1,U+25CA,U+25CC,U+25FB,U+266D-266F,U+27C0-27FF,U+2900-2AFF,U+2B0E-2B11,U+2B30-2B4C,U+2BFE,U+3030,U+FF5B,U+FF5D,U+1D400-1D7FF,U+1EE??}@font-face{font-family:Roboto Variable;font-style:italic;font-display:swap;font-weight:100 900;src:url(/_astro/roboto-symbols-wght-italic.Dld46tlZ.woff2)format("woff2-variations");unicode-range:U+1-C,U+E-1F,U+7F-9F,U+20DD-20E0,U+20E2-20E4,U+2150-218F,U+2190,U+2192,U+2194-2199,U+21AF,U+21E6-21F0,U+21F3,U+2218-2219,U+2299,U+22C4-22C6,U+2300-243F,U+2440-244A,U+2460-24FF,U+25A0-27BF,U+28??,U+2921-2922,U+2981,U+29BF,U+29EB,U+2B??,U+4DC0-4DFF,U+FFF9-FFFB,U+10140-1018E,U+10190-1019C,U+101A0,U+101D0-101FD,U+102E0-102FB,U+10E60-10E7E,U+1D2C0-1D2D3,U+1D2E0-1D37F,U+1F0??,U+1F100-1F1AD,U+1F1E6-1F1FF,U+1F30D-1F30F,U+1F315,U+1F31C,U+1F31E,U+1F320-1F32C,U+1F336,U+1F378,U+1F37D,U+1F382,U+1F393-1F39F,U+1F3A7-1F3A8,U+1F3AC-1F3AF,U+1F3C2,U+1F3C4-1F3C6,U+1F3CA-1F3CE,U+1F3D4-1F3E0,U+1F3ED,U+1F3F1-1F3F3,U+1F3F5-1F3F7,U+1F408,U+1F415,U+1F41F,U+1F426,U+1F43F,U+1F441-1F442,U+1F444,U+1F446-1F449,U+1F44C-1F44E,U+1F453,U+1F46A,U+1F47D,U+1F4A3,U+1F4B0,U+1F4B3,U+1F4B9,U+1F4BB,U+1F4BF,U+1F4C8-1F4CB,U+1F4D6,U+1F4DA,U+1F4DF,U+1F4E3-1F4E6,U+1F4EA-1F4ED,U+1F4F7,U+1F4F9-1F4FB,U+1F4FD-1F4FE,U+1F503,U+1F507-1F50B,U+1F50D,U+1F512-1F513,U+1F53E-1F54A,U+1F54F-1F5FA,U+1F610,U+1F650-1F67F,U+1F687,U+1F68D,U+1F691,U+1F694,U+1F698,U+1F6AD,U+1F6B2,U+1F6B9-1F6BA,U+1F6BC,U+1F6C6-1F6CF,U+1F6D3-1F6D7,U+1F6E0-1F6EA,U+1F6F0-1F6F3,U+1F6F7-1F6FC,U+1F7??,U+1F800-1F80B,U+1F810-1F847,U+1F850-1F859,U+1F860-1F887,U+1F890-1F8AD,U+1F8B0-1F8BB,U+1F8C0-1F8C1,U+1F900-1F90B,U+1F93B,U+1F946,U+1F984,U+1F996,U+1F9E9,U+1FA00-1FA6F,U+1FA70-1FA7C,U+1FA80-1FA89,U+1FA8F-1FAC6,U+1FACE-1FADC,U+1FADF-1FAE9,U+1FAF0-1FAF8,U+1FB??}@font-face{font-family:Roboto Variable;font-style:italic;font-display:swap;font-weight:100 900;src:url(/_astro/roboto-vietnamese-wght-italic.vkAhbFyB.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:Roboto Variable;font-style:italic;font-display:swap;font-weight:100 900;src:url(/_astro/roboto-latin-ext-wght-italic.BdF9m8sc.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:Roboto Variable;font-style:italic;font-display:swap;font-weight:100 900;src:url(/_astro/roboto-latin-wght-italic.BZYj8CJm.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{--ink:#0c0f16;--ink-2:#11151f;--ink-3:#171c28;--line:#262c3a;--line-soft:#1c2230;--bone:#f0ede5;--bone-dim:#a8acb8;--bone-faint:#6f7482;--accent:#e08d52;--accent-strong:#e8945a;--accent-deep:#c9743a;--accent-ink:#191007;--ok:#7fc48d;--ok-deep:#5da96e;--bad:#e06a5e;--gold:#d9a962;--violet:#a89ade;--violet-deep:#8d7cc9;--lime:var(--accent);--lime-deep:var(--accent-deep);--coral:var(--bad);--amber:var(--gold);--crimson:#c65a6b;--crimson-deep:#a94757;--font-display:"Montserrat Variable", system-ui, -apple-system, Segoe UI, sans-serif;--font-body:"Roboto Variable", "Roboto", system-ui, -apple-system, sans-serif;--font-mono:"Roboto Variable", "Roboto", system-ui, -apple-system, sans-serif;--radius:6px;--radius-lg:14px;--maxw:1200px;--gutter:clamp(1.1rem, 4vw, 2.75rem);--ease:cubic-bezier(.22, 1, .36, 1)}*,:before,:after{box-sizing:border-box}*{margin:0}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{font-family:var(--font-body);background-color:var(--ink);color:var(--bone);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;min-height:100vh;font-size:1.0625rem;line-height:1.65;position:relative;overflow-x:clip}body:before{content:"";z-index:0;pointer-events:none;background:radial-gradient(55rem 38rem at 15% -12%,#e08d520d,#0000 60%),radial-gradient(48rem 36rem at 100% 0,#a89ade0a,#0000 55%);position:fixed;inset:0}#app{z-index:1;flex-direction:column;min-height:100vh;display:flex;position:relative}#app>main{flex:1}img,svg,video,canvas{max-width:100%;height:auto;display:block}.pill-btn svg{stroke:currentColor;flex-shrink:0;overflow:visible;width:18px!important;min-width:18px!important;max-width:none!important;height:18px!important;min-height:18px!important;display:block!important}.lede{font-size:1rem!important;line-height:1.65!important}canvas{max-width:100%}pre,code,kbd,samp{overflow-wrap:anywhere}:where(p,li,dd,dt,h1,h2,h3,h4,figcaption,summary){overflow-wrap:break-word}table{max-width:100%}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit;color:inherit}ul,ol{padding:0;list-style:none}h1,h2,h3,h4{font-family:var(--font-display);letter-spacing:-.015em;font-weight:700;line-height:1.14}.hero-title,.tools-intro h1,.tool-hero h1,.page-head h1{font-size:clamp(2rem,5vw,3.35rem)!important}.section-head h2,.cta-inner h2,.content h2,.prose h2{font-size:clamp(1.35rem,2.8vw,1.85rem)!important}.content h3,.prose h3,.why-grid h3,.how-grid h3{font-size:1.05rem!important}.fancy{color:var(--accent);font-style:italic;font-weight:700}.eyebrow{font-family:var(--font-mono);letter-spacing:.22em;text-transform:uppercase;color:var(--accent);font-size:.72rem;font-weight:600}.sec-label{font-family:var(--font-mono);letter-spacing:.18em;text-transform:uppercase;color:var(--bone);align-items:baseline;gap:1rem;font-size:.8rem;font-weight:600;display:flex}.sec-label .sec-num{color:var(--accent)}.muted{color:var(--bone-dim)}.wrap{width:100%;max-width:var(--maxw);padding-inline:var(--gutter);margin-inline:auto}.section{padding-block:clamp(3.5rem,8vw,7rem)}.btn{--bg:var(--accent);--fg:var(--accent-ink);font-family:var(--font-body);letter-spacing:.01em;background:var(--bg);color:var(--fg);border:1px solid var(--bg);border-radius:var(--radius);cursor:pointer;transition:transform .18s var(--ease), background .18s var(--ease), border-color .18s var(--ease), box-shadow .18s var(--ease);justify-content:center;align-items:center;gap:.55rem;padding:.8rem 1.5rem;font-size:.95rem;font-weight:600;display:inline-flex}.btn:hover{background:var(--accent-strong);border-color:var(--accent-strong);transform:translateY(-1px);box-shadow:0 12px 30px -14px #e08d528c}.btn:active{transform:translateY(0)}.btn:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.btn--ghost{--bg:transparent;--fg:var(--bone);border-color:var(--line)}.btn--ghost:hover{background:var(--ink-3);border-color:var(--bone-faint);color:var(--bone);box-shadow:none}.btn--coral{--bg:var(--bad);--fg:#1a0c0a}.btn--coral:hover{background:#e57b70;border-color:#e57b70;box-shadow:0 12px 30px -14px #e06a5e80}.btn--amber{--bg:var(--gold);--fg:#191207}.btn--amber:hover{background:#e2b674;border-color:#e2b674;box-shadow:0 12px 30px -14px #d9a96280}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.visually-hidden{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{background:var(--accent);color:var(--accent-ink);border-radius:var(--radius);font-family:var(--font-mono);z-index:100;transition:top .2s var(--ease);padding:.6rem 1rem;font-weight:700;position:absolute;top:-100px;left:1rem}.skip-link:focus{top:1rem}@keyframes rise{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}.rise{opacity:0;animation:rise .7s var(--ease) forwards}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}.rise{opacity:1}}.results{grid-template-columns:repeat(auto-fill,minmax(min(100%,190px),1fr));gap:.7rem;margin-top:1.5rem;display:grid}.name-pill{background:var(--ink-3);border:1px solid var(--line);border-radius:var(--radius);min-width:0;font-family:var(--font-mono);color:var(--bone);text-align:left;transition:border-color .15s var(--ease), transform .15s var(--ease), background .15s var(--ease);animation:rise .4s var(--ease) forwards;opacity:0;justify-content:space-between;align-items:center;gap:.5rem;padding:.7rem .75rem .7rem 1rem;font-size:clamp(.9rem,2.5vw + .5rem,1rem);display:flex}.name-pill .pill-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.name-pill:hover{border-color:var(--accent);background:color-mix(in srgb, var(--accent) 8%, var(--ink-3));transform:translateY(-2px)}.name-pill .pill-actions{flex-shrink:0;align-items:center;gap:.25rem;display:inline-flex}.pill-btn{border:1px solid var(--line);border-radius:var(--radius);width:2rem;min-width:2rem;height:2rem;color:var(--bone-dim);cursor:pointer;transition:color .15s var(--ease), border-color .15s var(--ease), background .15s var(--ease);background:0 0;flex-shrink:0;justify-content:center;align-items:center;padding:0;display:inline-flex}.pill-btn:hover{color:var(--accent);border-color:var(--accent)}.pill-btn.copied{color:var(--accent);border-color:var(--accent);background:color-mix(in srgb, var(--accent) 15%, transparent)}.pill-btn.save.is-saved{color:var(--gold);border-color:var(--gold);background:color-mix(in srgb, var(--gold) 14%, transparent)}.pill-btn.remove:hover{color:var(--bad);border-color:var(--bad)}.pill-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}@media (width<=480px){.name-pill{gap:.4rem;padding:.6rem .6rem .6rem .85rem}.pill-btn{border-color:var(--bone-dim);width:2.4rem;min-width:2.4rem;height:2.4rem}.pill-btn svg{width:20px!important;min-width:20px!important;max-width:none!important;height:20px!important;min-height:20px!important}}.results .empty{text-align:center;color:var(--bone-faint);font-family:var(--font-mono);grid-column:1/-1;padding:2rem 0;font-size:.9rem}.copy-status{font-family:var(--font-mono);color:var(--accent-ink);background:var(--accent);z-index:90;pointer-events:none;opacity:0;transition:transform .35s var(--ease), opacity .35s var(--ease);white-space:nowrap;text-overflow:ellipsis;border-radius:999px;max-width:calc(100vw - 2rem);padding:.65rem 1.25rem;font-size:.82rem;font-weight:600;position:fixed;bottom:100px;left:50%;overflow:hidden;transform:translate(-50%)translateY(120%);box-shadow:0 8px 28px -6px #00000073,0 0 0 1px #e08d5240}.copy-status.visible{opacity:1;transform:translate(-50%)translateY(0)}@media (width>=1280px){.copy-status{bottom:106px}}@media (width>=1024px) and (width<=1279px){.copy-status{bottom:106px}}@media (width>=768px) and (width<=1023px){.copy-status{bottom:106px}}@media (width>=600px) and (width<=767px){.copy-status{bottom:76px}}@media (width<=599px){.copy-status{bottom:66px}}.tier-board{border:1px solid var(--line);border-radius:var(--radius-lg);background-color:var(--board-bg,var(--ink-2));background-position:50%;background-repeat:no-repeat;background-size:cover;flex-direction:column;gap:8px;padding:14px;display:flex;overflow:hidden}.tier-row{border-radius:var(--radius);align-items:stretch;min-height:96px;display:flex;overflow:hidden}.tier-label{cursor:text;word-break:break-word;text-align:center;flex-direction:column;flex:0 0 96px;justify-content:center;align-items:center;gap:.25rem;padding:.5rem;display:flex;position:relative}.tier-label-text{font-family:var(--font-display);text-align:center;width:100%;color:inherit;background:0 0;border:0;outline:none;font-size:1.6rem;font-weight:700;line-height:1.05}.tier-label-text::placeholder{color:inherit;opacity:.6}.tier-row-tools{background:var(--ink-3);border-left:1px solid var(--line);flex-direction:column;flex:0 0 38px;justify-content:center;align-items:center;gap:.3rem;padding:.35rem 0;display:flex}.tier-mini{border:1px solid var(--line);border-radius:var(--radius);width:26px;height:26px;color:var(--bone-faint);cursor:pointer;transition:color .15s var(--ease), border-color .15s var(--ease);background:0 0;place-items:center;padding:0;display:grid}.tier-mini:hover{color:var(--accent);border-color:var(--accent)}.tier-mini.danger:hover{color:var(--bad);border-color:var(--bad)}.tier-mini input[type=color]{opacity:0;cursor:pointer;width:26px;height:26px;position:absolute}.tier-drop{background:var(--board-row-bg,transparent);min-height:96px;transition:background .15s var(--ease);flex-wrap:wrap;flex:1;align-content:flex-start;gap:6px;padding:8px;display:flex}.tier-drop.drag-over{background:color-mix(in srgb, var(--accent) 10%, transparent)}.tier-pool{border:1px dashed var(--line);border-radius:var(--radius-lg);background:var(--ink-2);margin-top:1rem;padding:8px}.tier-pool.drag-over{border-color:var(--accent);background:color-mix(in srgb, var(--accent) 8%, var(--ink-2))}.tier-pool-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding:.25rem .5rem .75rem;display:flex}.tier-pool-head h3{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--bone-faint);font-size:.72rem;font-weight:500}.tier-pool-drop{flex-wrap:wrap;align-content:flex-start;gap:6px;min-height:96px;display:flex}.tier-pool-empty{text-align:center;width:100%;color:var(--bone-faint);font-family:var(--font-mono);align-self:center;padding:2rem 0;font-size:.82rem}.tier-item{border-radius:var(--radius);border:1px solid var(--line);background:var(--board-cell-bg,var(--ink-3));width:80px;height:80px;color:var(--board-cell-text,var(--bone));cursor:grab;text-align:center;user-select:none;transition:border-color .15s var(--ease), transform .12s var(--ease);justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.tier-item:has(img){border:var(--board-img-border-width,1px) solid var(--board-cell-border,var(--line))}.tier-item:hover{border-color:var(--accent)}.tier-item:active{cursor:grabbing}.tier-item.dragging{opacity:.4;transform:scale(.96)}.tier-board[data-img-border=off] .tier-item:has(img){border-width:1px;border-color:#0000}.tier-item img{object-fit:cover;pointer-events:none;width:100%;height:100%}.tier-item .tier-item-text{font-family:var(--font-body);color:var(--board-cell-text,var(--bone));-webkit-line-clamp:4;-webkit-box-orient:vertical;padding:.35rem;font-size:.8rem;font-weight:600;line-height:1.15;display:-webkit-box;overflow:hidden}.tier-item .tier-item-remove{width:18px;height:18px;color:var(--bone-dim);cursor:pointer;opacity:0;transition:opacity .15s var(--ease), color .15s var(--ease);background:#0a0c12cc;border:0;border-radius:50%;place-items:center;display:grid;position:absolute;top:2px;right:2px}.tier-item:hover .tier-item-remove{opacity:1}.tier-item .tier-item-remove:hover{color:var(--bad)}.pool-add{flex-direction:column;gap:.75rem;margin-top:.85rem;padding:.5rem;display:flex}.pool-add-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;display:flex}.pool-dropzone{text-align:center;border:1px dashed var(--line);border-radius:var(--radius-lg);background:var(--ink-3);color:var(--bone-faint);cursor:pointer;transition:border-color .15s var(--ease), color .15s var(--ease), background .15s var(--ease);flex-direction:column;justify-content:center;align-items:center;gap:.4rem;padding:1.5rem 1rem;display:flex}.pool-dropzone:hover,.pool-dropzone:focus-visible{border-color:var(--accent);color:var(--accent);outline:none}.pool-dropzone.drag-over{border-color:var(--accent);background:color-mix(in srgb, var(--accent) 10%, var(--ink-2));color:var(--accent)}.pool-dropzone-title{font-family:var(--font-body);color:var(--bone-dim);margin:0;font-size:.95rem;font-weight:600}.pool-dropzone.drag-over .pool-dropzone-title,.pool-dropzone:hover .pool-dropzone-title{color:var(--accent)}.pool-dropzone-hint{font-family:var(--font-mono);color:var(--bone-faint);margin:0;font-size:.72rem}.pool-textmode{flex-direction:column;gap:.5rem;display:flex}.tag-field{background:var(--ink-3);border:1px solid var(--line);border-radius:var(--radius);cursor:text;transition:border-color .15s var(--ease);flex-wrap:wrap;align-items:center;gap:.4rem;padding:.5rem;display:flex}.tag-field:focus-within{border-color:var(--gold)}.tag-list{display:contents}.tag-pill{background:var(--ink-2);border:1px solid var(--line);font-family:var(--font-body);color:var(--bone);border-radius:999px;align-items:center;gap:.35rem;padding:.25rem .35rem .25rem .65rem;font-size:.85rem;display:inline-flex}.tag-pill button{width:18px;height:18px;color:var(--bone-faint);cursor:pointer;transition:color .15s var(--ease), background .15s var(--ease);background:0 0;border:0;border-radius:50%;place-items:center;padding:0;display:grid}.tag-pill button:hover{color:var(--bad);background:color-mix(in srgb, var(--bad) 16%, transparent)}.tag-input{min-width:160px;color:var(--bone);font-family:var(--font-body);background:0 0;border:0;outline:none;flex:1;padding:.2rem 0;font-size:.95rem}.tag-input::placeholder{color:var(--bone-faint)}.cps-recent-row{background:var(--ink-3);border:1px solid var(--line);border-radius:var(--radius);animation:rise .35s var(--ease) forwards;opacity:0;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:.5rem;padding:.75rem .9rem;display:flex}.cps-recent-row:last-child{margin-bottom:0}.cps-recent-main{align-items:center;gap:.6rem;min-width:0;display:flex}.cps-recent-score{font-family:var(--font-display);color:var(--accent);font-variant-numeric:tabular-nums;font-size:1.15rem;font-weight:700}.cps-recent-tag{font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--gold);border:1px solid color-mix(in srgb, var(--gold) 40%, var(--line));border-radius:999px;padding:.15rem .55rem;font-size:.68rem}.cps-recent-meta{text-align:right;font-family:var(--font-mono);color:var(--bone-dim);flex-direction:column;align-items:flex-end;gap:.1rem;font-size:.78rem;display:flex}.cps-recent-when{color:var(--bone-faint);font-size:.72rem}.swatch-row{flex-wrap:wrap;gap:.6rem;display:flex}.swatch{border-radius:var(--radius);border:1px solid var(--line);cursor:pointer;width:40px;height:40px;transition:transform .12s var(--ease), border-color .12s var(--ease);flex:0 0 40px;padding:0}.swatch:hover{transform:scale(1.12)}.swatch.active{border-color:var(--gold);box-shadow:0 0 0 2px color-mix(in srgb, var(--gold) 45%, transparent)}.border-grid{grid-template-columns:repeat(4,1fr);justify-items:center;gap:.5rem;display:grid}.border-sw{border-radius:var(--radius);cursor:pointer;width:40px;height:40px;transition:transform .12s var(--ease);border:2px solid #0000;padding:0;position:relative}.border-sw:hover{transform:scale(1.06)}.border-sw.active{border-color:var(--gold)}.border-sw.active:after{content:"✓";color:#fff;text-shadow:0 1px 2px #0009;place-items:center;font-size:.85rem;display:grid;position:absolute;inset:0}.present-stage img,.present-stage canvas{object-fit:contain;border-radius:var(--radius);width:auto;max-width:100%;height:auto;max-height:calc(100vh - 5rem);box-shadow:0 20px 60px #00000080}.fg-results{grid-template-columns:repeat(auto-fill,minmax(min(100%,320px),1fr));gap:.7rem;margin-top:1.25rem;display:grid}.fg-card{text-align:left;background:var(--ink-2);border:1px solid var(--line);border-radius:var(--radius-lg);cursor:pointer;transition:border-color .15s var(--ease), transform .15s var(--ease), background .15s var(--ease);animation:rise .35s var(--ease) forwards;opacity:0;flex-direction:column;gap:.5rem;padding:.85rem 1rem;display:flex}.fg-card:hover{border-color:var(--accent);background:color-mix(in srgb, var(--accent) 6%, var(--ink-2));transform:translateY(-2px)}.fg-card:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.fg-card.copied{border-color:var(--accent);background:color-mix(in srgb, var(--accent) 12%, var(--ink-2))}.fg-meta{align-items:center;gap:.5rem;display:flex}.fg-name{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--bone-faint);font-size:.7rem}.fg-tag{font-family:var(--font-mono);letter-spacing:.04em;text-transform:uppercase;color:var(--gold);border:1px solid color-mix(in srgb, var(--gold) 35%, var(--line));border-radius:999px;padding:.05rem .45rem;font-size:.62rem}.fg-copy{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--bone-faint);margin-left:auto;font-size:.66rem}.fg-card:hover .fg-copy,.fg-card.copied .fg-copy{color:var(--accent)}.fg-sample{font-family:"Segoe UI Symbol", "Apple Symbols", "Noto Sans Symbols2", "Noto Sans Symbols", var(--font-body);color:var(--bone);word-break:break-word;overflow-wrap:anywhere;font-size:1.4rem;line-height:1.4}.fg-empty{text-align:center;color:var(--bone-faint);font-family:var(--font-mono);grid-column:1/-1;padding:2rem 0;font-size:.9rem}.wheel-hist-row{background:var(--ink-3);border:1px solid var(--line);border-radius:var(--radius);font-family:var(--font-mono);color:var(--bone);animation:rise .3s var(--ease) forwards;opacity:0;align-items:center;gap:.55rem;padding:.5rem .75rem;font-size:.85rem;display:flex}.wheel-hist-dot{background:var(--bone-faint);border-radius:50%;flex-shrink:0;width:10px;height:10px}.wheel-hist-row.yes .wheel-hist-dot{background:var(--ok)}.wheel-hist-row.no .wheel-hist-dot{background:var(--bad)}.wheel-hist-row.maybe .wheel-hist-dot{background:var(--gold)}.rc-entry{background:var(--ink-3);border:1px solid var(--line);border-left:4px solid var(--entry-color,var(--violet));border-radius:var(--radius);animation:rise .3s var(--ease) forwards;opacity:0;align-items:center;gap:.5rem;padding:.45rem .5rem .45rem .75rem;display:flex}.rc-entry-text{font-family:var(--font-body);color:var(--bone);text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:.95rem;overflow:hidden}.rc-entry-remove{border:1px solid var(--line);border-radius:var(--radius);width:26px;height:26px;color:var(--bone-faint);cursor:pointer;transition:color .15s var(--ease), border-color .15s var(--ease);background:0 0;flex-shrink:0;place-items:center;display:grid}.rc-entry-remove:hover{color:var(--bad);border-color:var(--bad)}.rc-entry.is-out{opacity:.4}.rc-entry.is-out .rc-entry-text{text-decoration:line-through}.rc-empty{font-family:var(--font-mono);color:var(--bone-faint);text-align:center;padding:.75rem 0;font-size:.8rem}.rc-modal-backdrop{z-index:200;backdrop-filter:blur(4px);animation:rise .25s var(--ease) forwards;background:#06080cc7;place-items:center;padding:1.5rem;display:grid;position:fixed;inset:0}.rc-modal{background:var(--ink-2);border:1px solid var(--line);border-radius:var(--radius-lg);text-align:center;width:100%;max-width:420px;padding:2rem 1.5rem;box-shadow:0 30px 80px #0000008c}.rc-modal-eyebrow{font-family:var(--font-mono);letter-spacing:.18em;text-transform:uppercase;color:var(--violet);margin-bottom:.75rem;font-size:.7rem;display:block}.rc-modal-winner{font-family:var(--font-display);color:var(--bone);word-break:break-word;margin-bottom:1.5rem;font-size:clamp(1.8rem,7vw,2.8rem);font-weight:700;line-height:1.1}.rc-modal-actions{flex-wrap:wrap;justify-content:center;gap:.6rem;display:flex}.rl-row{background:var(--ink-3);border:1px solid var(--line);border-radius:var(--radius);animation:rise .3s var(--ease) forwards;opacity:0;align-items:center;gap:.75rem;padding:.55rem .85rem;display:flex}.rl-index{font-family:var(--font-mono);color:var(--gold);text-align:right;font-variant-numeric:tabular-nums;min-width:2ch;font-size:.8rem;font-weight:700}.rl-text{font-family:var(--font-body);color:var(--bone);word-break:break-word;font-size:.95rem}.rl-empty{text-align:center;color:var(--bone-faint);font-family:var(--font-mono);grid-column:1/-1;padding:1.5rem 0;font-size:.85rem}.rng-results{flex-wrap:wrap;gap:.6rem;margin-top:1rem;display:flex}.rng-pill{font-family:var(--font-mono);color:var(--accent-ink);background:var(--accent);border-radius:var(--radius);font-variant-numeric:tabular-nums;animation:rise .3s var(--ease) forwards;opacity:0;padding:.55rem .9rem;font-size:1.05rem;font-weight:700}.rng-empty{text-align:center;width:100%;color:var(--bone-faint);font-family:var(--font-mono);padding:1.5rem 0;font-size:.85rem}.ec-row{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--ink-3);animation:rise .3s var(--ease) forwards;opacity:0;margin-bottom:.7rem;padding:.85rem 1rem}.ec-row:last-child{margin-bottom:0}.ec-row-head{flex-wrap:wrap;align-items:center;gap:.6rem;display:flex}.ec-row-email{font-family:var(--font-mono);color:var(--bone);word-break:break-all;flex:1;min-width:0;font-size:.95rem}.ec-badge{font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;border-radius:999px;flex-shrink:0;align-items:center;gap:.3rem;padding:.2rem .6rem;font-size:.68rem;font-weight:700;display:inline-flex}.ec-badge.ok{color:var(--ok);border:1px solid color-mix(in srgb, var(--ok) 45%, var(--line))}.ec-badge.warn{color:var(--gold);border:1px solid color-mix(in srgb, var(--gold) 45%, var(--line))}.ec-badge.bad{color:var(--bad);border:1px solid color-mix(in srgb, var(--bad) 45%, var(--line))}.ec-badge svg{width:13px;height:13px}.ec-checks{gap:.45rem;margin-top:.85rem;list-style:none;display:grid}.ec-check{color:var(--bone-dim);align-items:flex-start;gap:.5rem;font-size:.88rem;display:flex}.ec-check-ico{flex-shrink:0;margin-top:1px;display:inline-flex}.ec-check-ico.ok{color:var(--ok)}.ec-check-ico.warn{color:var(--gold)}.ec-check-ico.bad{color:var(--bad)}.ec-check-ico.muted{color:var(--bone-faint)}.ec-check strong{color:var(--bone)}.ec-empty{text-align:center;color:var(--bone-faint);font-family:var(--font-mono);padding:2rem 0;font-size:.9rem}.ec-summary{font-family:var(--font-mono);color:var(--bone-dim);margin-bottom:1rem;font-size:.82rem}.ec-summary strong{color:var(--bone)}.ic-item{background:var(--ink-3);border:1px solid var(--line);border-radius:var(--radius);animation:rise .3s var(--ease) forwards;opacity:0;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding:.7rem .9rem;display:flex}.ic-item-info{flex-direction:column;flex:1;gap:.2rem;min-width:0;display:flex}.ic-item-name{font-family:var(--font-mono);color:var(--bone);text-overflow:ellipsis;white-space:nowrap;font-size:.85rem;overflow:hidden}.ic-item-meta{font-family:var(--font-mono);color:var(--bone-faint);font-size:.72rem}.ic-item-actions{flex-shrink:0}.ic-dl{border:1px solid var(--accent);border-radius:var(--radius);color:var(--accent);font-family:var(--font-mono);text-transform:uppercase;transition:background .15s var(--ease);background:0 0;align-items:center;gap:.35rem;padding:.4rem .7rem;font-size:.72rem;display:inline-flex}.ic-dl:hover{background:color-mix(in srgb, var(--accent) 14%, transparent)}.rk{background:var(--bone-dim);height:1px;position:absolute;right:0}.rk.major{background:var(--violet);height:2px}.rk.mid{background:var(--bone)}.rk.minor{background:var(--bone-faint)}.rk-label{font-family:var(--font-mono);color:var(--bone);font-variant-numeric:tabular-nums;font-size:.72rem;font-weight:700;position:absolute;right:42px;transform:translateY(-50%)}ins.adsbygoogle[data-ad-status=unfilled]{display:none!important}ins.adsbygoogle,ins.adsbygoogle iframe,iframe[id^=aswift_],iframe[name^=google_ads_iframe]{color-scheme:light;background:0 0;max-width:none;overflow:visible}.site-header[data-astro-cid-nen7h5rs]{z-index:50;background:color-mix(in srgb, var(--ink) 88%, transparent);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--line-soft);position:sticky;top:0}.header-inner[data-astro-cid-nen7h5rs]{align-items:center;gap:1.25rem;height:64px;display:flex}.brand[data-astro-cid-nen7h5rs]{align-items:center;min-width:0;margin-right:auto;display:inline-flex}.brand-name[data-astro-cid-nen7h5rs]{font-family:var(--font-display);letter-spacing:-.02em;color:var(--bone);white-space:nowrap;font-size:1.4rem;font-weight:800}.brand-name[data-astro-cid-nen7h5rs] em[data-astro-cid-nen7h5rs]{color:var(--accent);font-style:italic;font-weight:800}.primary-nav[data-astro-cid-nen7h5rs]>ul[data-astro-cid-nen7h5rs]{align-items:center;gap:.15rem;display:flex}.primary-nav[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs],.menu-trigger[data-astro-cid-nen7h5rs]{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--bone-dim);border-radius:var(--radius);transition:color .18s var(--ease), background .18s var(--ease);padding:.55rem .8rem;font-size:.72rem;font-weight:500}.primary-nav[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs]:hover,.menu-trigger[data-astro-cid-nen7h5rs]:hover{color:var(--bone);background:var(--ink-3)}.primary-nav[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs][aria-current=page],.menu-trigger[data-astro-cid-nen7h5rs][aria-current=page]{color:var(--accent)}.has-menu[data-astro-cid-nen7h5rs]{position:relative}.menu-trigger[data-astro-cid-nen7h5rs]{cursor:pointer;background:0 0;border:0;align-items:center;gap:.4rem;display:inline-flex}.menu-trigger[data-astro-cid-nen7h5rs] svg[data-astro-cid-nen7h5rs]{transition:transform .2s var(--ease);opacity:.7}.menu-trigger[data-astro-cid-nen7h5rs][aria-expanded=true] svg[data-astro-cid-nen7h5rs]{transform:rotate(180deg)}.tools-menu[data-astro-cid-nen7h5rs]{background:var(--ink-2);border:1px solid var(--line);border-radius:var(--radius-lg);z-index:60;width:max-content;max-width:min(92vw,720px);padding:1.4rem;position:absolute;top:calc(100% + .7rem);left:0;box-shadow:0 24px 60px -18px #000000bf}.tools-menu[data-astro-cid-nen7h5rs][hidden]{display:none}.tools-menu-inner[data-astro-cid-nen7h5rs]{grid-template-columns:repeat(2,minmax(170px,max-content));gap:1.4rem 2.25rem;display:grid}.tools-group[data-astro-cid-nen7h5rs] h3[data-astro-cid-nen7h5rs]{font-family:var(--font-mono);letter-spacing:.2em;text-transform:uppercase;color:var(--accent);margin-bottom:.65rem;font-size:.64rem;font-weight:600}.tools-group[data-astro-cid-nen7h5rs] ul[data-astro-cid-nen7h5rs]{gap:.15rem;display:grid}.tools-group[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs]{border-radius:var(--radius);font-family:var(--font-body);color:var(--bone-dim);white-space:nowrap;letter-spacing:0;text-transform:none;padding:.4rem .5rem;font-size:.9rem;display:block}.tools-group[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs]:hover{color:var(--bone);background:var(--ink-3)}.tools-group[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs][aria-current=page]{color:var(--accent)}.header-cta[data-astro-cid-nen7h5rs]{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--bone);border:1px solid var(--line);border-radius:var(--radius);transition:border-color .18s var(--ease), color .18s var(--ease), background .18s var(--ease);white-space:nowrap;padding:.6rem 1.1rem;font-size:.72rem;font-weight:600}.header-cta[data-astro-cid-nen7h5rs]:hover{border-color:var(--accent);color:var(--accent);background:color-mix(in srgb, var(--accent) 8%, transparent)}.header-search[data-astro-cid-nen7h5rs]{position:relative}.search-trigger[data-astro-cid-nen7h5rs]{border:1px solid var(--line);border-radius:var(--radius);color:var(--bone-faint);cursor:pointer;font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;transition:color .18s var(--ease), border-color .18s var(--ease);background:0 0;align-items:center;gap:.5rem;padding:.6rem .9rem;font-size:.72rem;font-weight:500;display:inline-flex}.search-trigger[data-astro-cid-nen7h5rs]:hover{color:var(--bone);border-color:var(--bone-faint)}.search-trigger[data-astro-cid-nen7h5rs] svg[data-astro-cid-nen7h5rs]{flex-shrink:0}.search-panel[data-astro-cid-nen7h5rs]{background:var(--ink-2);border:1px solid var(--line);border-radius:var(--radius-lg);z-index:60;width:min(92vw,380px);padding:.85rem;position:absolute;top:calc(100% + .7rem);right:0;box-shadow:0 24px 60px -18px #000000bf}.search-panel[data-astro-cid-nen7h5rs][hidden]{display:none}.search-box[data-astro-cid-nen7h5rs]{background:var(--ink-3);border:1px solid var(--line);border-radius:var(--radius);color:var(--bone-faint);align-items:center;gap:.5rem;padding:.6rem .75rem;display:flex}.search-box[data-astro-cid-nen7h5rs]:focus-within{border-color:var(--accent)}.search-box[data-astro-cid-nen7h5rs] input[data-astro-cid-nen7h5rs]{min-width:0;color:var(--bone);font-family:var(--font-body);background:0 0;border:0;outline:none;flex:1;font-size:.95rem}.search-results[data-astro-cid-nen7h5rs]{gap:.2rem;max-height:60vh;margin-top:.6rem;display:grid;overflow-y:auto}.search-results[data-astro-cid-nen7h5rs]:empty{display:none}.nav-toggle[data-astro-cid-nen7h5rs]{cursor:pointer;background:0 0;border:0;flex-direction:column;gap:5px;padding:.5rem;display:none}.nav-toggle[data-astro-cid-nen7h5rs] span[data-astro-cid-nen7h5rs]{background:var(--bone);width:22px;height:1.5px;transition:transform .25s var(--ease), opacity .25s var(--ease)}.nav-toggle[data-astro-cid-nen7h5rs][aria-expanded=true] span[data-astro-cid-nen7h5rs]:first-child{transform:translateY(6.5px)rotate(45deg)}.nav-toggle[data-astro-cid-nen7h5rs][aria-expanded=true] span[data-astro-cid-nen7h5rs]:nth-child(2){opacity:0}.nav-toggle[data-astro-cid-nen7h5rs][aria-expanded=true] span[data-astro-cid-nen7h5rs]:nth-child(3){transform:translateY(-6.5px)rotate(-45deg)}.mobile-nav[data-astro-cid-nen7h5rs]{border-bottom:1px solid var(--line);background:var(--ink-2);padding:.5rem var(--gutter) 1.5rem;max-height:calc(100dvh - 64px);overflow-y:auto}.mobile-search[data-astro-cid-nen7h5rs]{background:var(--ink-3);border:1px solid var(--line);border-radius:var(--radius);color:var(--bone-faint);align-items:center;gap:.5rem;margin:.75rem 0 .5rem;padding:.7rem .8rem;display:flex}.mobile-search[data-astro-cid-nen7h5rs]:focus-within{border-color:var(--accent)}.mobile-search[data-astro-cid-nen7h5rs] input[data-astro-cid-nen7h5rs]{min-width:0;color:var(--bone);font-family:var(--font-body);background:0 0;border:0;outline:none;flex:1;font-size:1rem}.mobile-search-results[data-astro-cid-nen7h5rs]{gap:.2rem;margin-bottom:.5rem;display:grid}.mobile-search-results[data-astro-cid-nen7h5rs]:empty{display:none}.mobile-primary[data-astro-cid-nen7h5rs]{flex-direction:column;display:flex}.mobile-primary[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs]{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;border-bottom:1px solid var(--line-soft);color:var(--bone);padding:.9rem .25rem;font-size:.82rem;font-weight:500;display:block}.mobile-group[data-astro-cid-nen7h5rs]{padding-top:1.2rem}.mobile-group[data-astro-cid-nen7h5rs] h3[data-astro-cid-nen7h5rs]{font-family:var(--font-mono);letter-spacing:.2em;text-transform:uppercase;color:var(--accent);margin-bottom:.4rem;padding-left:.25rem;font-size:.64rem;font-weight:600}.mobile-group[data-astro-cid-nen7h5rs] ul[data-astro-cid-nen7h5rs]{gap:.1rem;display:grid}.mobile-group[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs]{font-family:var(--font-body);color:var(--bone-dim);padding:.65rem .25rem;font-size:.98rem;display:block}.mobile-group[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs]:hover{color:var(--bone)}@media (width<=900px){.primary-nav[data-astro-cid-nen7h5rs],.header-cta[data-astro-cid-nen7h5rs]{display:none}.nav-toggle[data-astro-cid-nen7h5rs]{display:flex}}@media (width<=480px){.header-search[data-astro-cid-nen7h5rs]{display:none}.brand-name[data-astro-cid-nen7h5rs]{font-size:1.25rem}}@media (width>=481px) and (width<=900px){.search-trigger-text[data-astro-cid-nen7h5rs]{display:none}.search-trigger[data-astro-cid-nen7h5rs]{padding:.6rem}}.search-item{border-radius:var(--radius);color:var(--bone-dim);transition:background .15s var(--ease), color .15s var(--ease);padding:.55rem .65rem;display:block}.search-item:hover,.search-item.is-active{background:var(--ink-3);color:var(--accent)}.search-item .si-title{font-family:var(--font-body);font-size:.92rem;font-weight:600;display:block}.search-item .si-cat{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--bone-faint);font-size:.64rem}.search-empty{font-family:var(--font-mono);color:var(--bone-faint);text-align:center;padding:.75rem .65rem;font-size:.8rem}.site-footer[data-astro-cid-jo6i4kqk]{border-top:1px solid var(--line-soft);background:var(--ink-2);margin-top:4rem;padding-block:clamp(3rem,6vw,5rem) 1.75rem}.footer-top[data-astro-cid-jo6i4kqk]{grid-template-columns:1.4fr 2fr;gap:clamp(2rem,6vw,5rem);display:grid}.footer-brand[data-astro-cid-jo6i4kqk] .brand[data-astro-cid-jo6i4kqk]{font-family:var(--font-display);letter-spacing:-.02em;color:var(--bone);align-items:center;font-size:1.55rem;font-weight:800;display:inline-flex}.footer-brand[data-astro-cid-jo6i4kqk] em[data-astro-cid-jo6i4kqk]{color:var(--accent);font-style:italic;font-weight:800}.footer-brand[data-astro-cid-jo6i4kqk] p[data-astro-cid-jo6i4kqk]{max-width:36ch;margin:1.1rem 0;font-size:.95rem;line-height:1.65}.footer-mail[data-astro-cid-jo6i4kqk]{font-family:var(--font-mono);letter-spacing:.02em;color:var(--accent);transition:border-color .18s var(--ease);border-bottom:1px solid #0000;font-size:.82rem}.footer-mail[data-astro-cid-jo6i4kqk]:hover{border-color:var(--accent)}.footer-cols[data-astro-cid-jo6i4kqk]{grid-template-columns:repeat(3,1fr);gap:2rem;display:grid}.footer-col[data-astro-cid-jo6i4kqk] h3[data-astro-cid-jo6i4kqk]{font-family:var(--font-mono);letter-spacing:.2em;text-transform:uppercase;color:var(--bone-faint);margin-bottom:1.1rem;font-size:.66rem;font-weight:600}.footer-col[data-astro-cid-jo6i4kqk] li[data-astro-cid-jo6i4kqk]{margin-bottom:.7rem}.footer-col[data-astro-cid-jo6i4kqk] a[data-astro-cid-jo6i4kqk]{color:var(--bone-dim);transition:color .15s var(--ease);font-size:.95rem}.footer-col[data-astro-cid-jo6i4kqk] a[data-astro-cid-jo6i4kqk]:hover{color:var(--accent)}.footer-bottom[data-astro-cid-jo6i4kqk]{border-top:1px solid var(--line-soft);font-family:var(--font-mono);letter-spacing:.04em;color:var(--bone-faint);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-top:3.25rem;padding-top:1.6rem;font-size:.75rem;display:flex}.footer-legal[data-astro-cid-jo6i4kqk]{gap:1.5rem;display:flex}.footer-legal[data-astro-cid-jo6i4kqk] a[data-astro-cid-jo6i4kqk]{transition:color .15s var(--ease)}.footer-legal[data-astro-cid-jo6i4kqk] a[data-astro-cid-jo6i4kqk]:hover{color:var(--accent)}@media (width<=760px){.footer-top[data-astro-cid-jo6i4kqk]{grid-template-columns:1fr}.footer-cols[data-astro-cid-jo6i4kqk]{grid-template-columns:repeat(2,1fr)}}
