@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/ibm-plex-mono-1.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/ibm-plex-mono-2.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/ibm-plex-mono-3.woff2)format("woff2");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:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/ibm-plex-mono-4.woff2)format("woff2");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:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/ibm-plex-mono-5.woff2)format("woff2");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:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/ibm-plex-mono-6.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/ibm-plex-mono-7.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/ibm-plex-mono-8.woff2)format("woff2");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:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/ibm-plex-mono-9.woff2)format("woff2");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:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/ibm-plex-mono-10.woff2)format("woff2");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:IBM Plex Sans;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/ibm-plex-sans-1.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/ibm-plex-sans-2.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/ibm-plex-sans-3.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/ibm-plex-sans-4.woff2)format("woff2");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:IBM Plex Sans;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/ibm-plex-sans-5.woff2)format("woff2");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:IBM Plex Sans;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/ibm-plex-sans-6.woff2)format("woff2");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:IBM Plex Sans;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/ibm-plex-sans-1.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/ibm-plex-sans-2.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/ibm-plex-sans-3.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/ibm-plex-sans-4.woff2)format("woff2");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:IBM Plex Sans;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/ibm-plex-sans-5.woff2)format("woff2");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:IBM Plex Sans;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/ibm-plex-sans-6.woff2)format("woff2");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:IBM Plex Sans;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/ibm-plex-sans-1.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/ibm-plex-sans-2.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/ibm-plex-sans-3.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/ibm-plex-sans-4.woff2)format("woff2");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:IBM Plex Sans;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/ibm-plex-sans-5.woff2)format("woff2");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:IBM Plex Sans;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/ibm-plex-sans-6.woff2)format("woff2");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:Space Grotesk;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/space-grotesk-1.woff2)format("woff2");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:Space Grotesk;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/space-grotesk-2.woff2)format("woff2");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:Space Grotesk;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/space-grotesk-3.woff2)format("woff2");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:Space Grotesk;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/space-grotesk-1.woff2)format("woff2");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:Space Grotesk;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/space-grotesk-2.woff2)format("woff2");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:Space Grotesk;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/space-grotesk-3.woff2)format("woff2");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:Space Grotesk;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/space-grotesk-1.woff2)format("woff2");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:Space Grotesk;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/space-grotesk-2.woff2)format("woff2");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:Space Grotesk;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/space-grotesk-3.woff2)format("woff2");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:Space Grotesk;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/space-grotesk-1.woff2)format("woff2");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:Space Grotesk;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/space-grotesk-2.woff2)format("woff2");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:Space Grotesk;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/space-grotesk-3.woff2)format("woff2");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{--blue:#3d5afe;--blue-press:#1633c4;--cyan:#00e5ff;--cyan-deep:#00b8cc;--ink-950:#070810;--ink-50:#f4f5f8;--ok:#16c784;--warn:#ffb020;--danger:#ff4d5e;--bg:#f4f5f8;--surface:#fff;--surface-2:#eceef3;--sunk:#e6e8ee;--tx:#070810;--tx-2:#4b4f5c;--tx-3:#7c8190;--tx-4:#a4a9b6;--line:#0708101a;--line-2:#0708100e;--accent:var(--blue);--spot:var(--cyan-deep);--shadow:0 1px 2px #0708100d,0 12px 32px -12px #07081029;--shadow-lg:0 2px 4px #0708100f,0 34px 70px -28px #0708104d;--display:"Space Grotesk",system-ui,sans-serif;--body:"IBM Plex Sans",system-ui,sans-serif;--mono:"IBM Plex Mono",ui-monospace,monospace;--pad:clamp(20px,5vw,64px);--maxw:1240px;--e:cubic-bezier(.22,.61,.36,1)}[data-theme=dark]{--bg:#070810;--surface:#0d0f1a;--surface-2:#131624;--sunk:#0a0b14;--tx:#eceef3;--tx-2:#a8adbb;--tx-3:#7e8494;--tx-4:#5c6272;--line:#ffffff1c;--line-2:#ffffff0f;--accent:#5c74ff;--spot:var(--cyan);--shadow:0 1px 2px #0006,0 14px 34px -14px #0009;--shadow-lg:0 2px 6px #00000080,0 40px 80px -30px #000000bf}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{background:var(--bg);color:var(--tx);font:400 17px/1.6 var(--body);-webkit-font-smoothing:antialiased;text-wrap:pretty;overflow-x:hidden}a{color:var(--accent);text-decoration:none}a:hover{color:var(--blue-press)}[data-theme=dark] a:hover{color:var(--cyan)}h1,h2,h3,h4{font-family:var(--display);letter-spacing:-.02em;font-weight:500;line-height:1.06}h1{font-size:clamp(38px,6.2vw,68px)}h2{font-size:clamp(28px,3.9vw,44px);line-height:1.1}h3{letter-spacing:-.015em;font-size:clamp(19px,1.6vw,23px);line-height:1.18}h4{letter-spacing:-.01em;font-size:17px;line-height:1.25}p{max-width:66ch}.wrap{max-width:var(--maxw);padding:0 var(--pad);margin:0 auto}.eyebrow{font-family:var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--tx-3);font-size:11px}.eyebrow.spot{color:var(--spot)}.lead{color:var(--tx-2);font-size:clamp(17px,1.5vw,20px);line-height:1.55}.mono{font-family:var(--mono);letter-spacing:.02em;color:var(--tx-3);font-size:12.5px}.dim{color:var(--tx-2)}.hr{background:var(--line);border:0;height:1px}.site-head{z-index:60;backdrop-filter:blur(14px)saturate(1.4);background:color-mix(in srgb,var(--bg) 84%,transparent);border-bottom:1px solid var(--line-2);position:sticky;top:0}.site-head .wrap{align-items:center;gap:clamp(14px,2vw,30px);height:60px;display:flex}.brand{color:var(--tx);align-items:center;gap:10px;display:flex}.mark{background:linear-gradient(145deg,#dde1ea 0%,#818897 20%,#f2f4f9 48%,#545b6b 76%,#bac0cd 100%);border-radius:8px;flex:none;width:28px;height:28px;padding:1px;display:block;position:relative;overflow:hidden}.mark:before{content:"";background:radial-gradient(120% 120% at 32% 18%,#141a30 0%,#0a0d1c 55%,#070810 100%);border-radius:7px;position:absolute;inset:1px;box-shadow:inset 0 1px #f4f5f812,inset 0 -1px #00000080}.mark:after{content:"";background:radial-gradient(circle,#00e5ff80 0%,#00e5ff21 45%,#00e5ff00 68%);border-radius:50%;width:22px;height:22px;position:absolute;top:-7px;right:-7px}.mark i{z-index:1;font-family:var(--display);letter-spacing:-.04em;background:linear-gradient(168deg,#fff 0%,#c9cee0 100%);color:#0000;background-clip:text;place-items:center;font-size:11.5px;font-style:normal;font-weight:500;display:grid;position:absolute;inset:1px}.brand b{font-family:var(--display);letter-spacing:-.02em;font-size:17px;font-weight:500}.brand>span:not(.mark){font-family:var(--mono);letter-spacing:.1em;color:var(--tx-3);padding-top:2px;font-size:10px}nav.main{gap:clamp(12px,1.7vw,24px);margin-left:auto;display:flex}nav.main a{color:var(--tx-2);font-size:14.5px}nav.main a:hover,nav.main a[aria-current]{color:var(--tx)}.head-tools{align-items:center;gap:8px;display:flex}.lang{font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;gap:2px;font-size:10.5px;display:flex}.lang a{color:var(--tx-3);border-radius:4px;padding:4px 6px}.lang a[aria-current]{background:var(--surface-2);color:var(--tx)}.icon-btn{border:1px solid var(--line);width:30px;height:30px;color:var(--tx-2);cursor:pointer;transition:.16s var(--e);background:0 0;border-radius:6px;place-items:center;display:grid}.icon-btn:hover{color:var(--tx);border-color:var(--tx-4)}.btn{height:44px;font:500 15px/1 var(--body);cursor:pointer;transition:.18s var(--e);white-space:nowrap;border:1px solid #0000;border-radius:100px;align-items:center;gap:8px;padding:0 20px;display:inline-flex}.btn.pri{background:var(--accent);color:#fff}.btn.pri:hover{background:var(--blue-press);color:#fff;transform:translateY(-1px)}[data-theme=dark] .btn.pri:hover{background:#7288ff}.btn.ghost{border-color:var(--line);color:var(--tx);background:0 0}.btn.ghost:hover{border-color:var(--tx-4);color:var(--tx)}.btn.sm{height:34px;padding:0 14px;font-size:13.5px}.btn svg{stroke:currentColor;stroke-width:2px;fill:none;stroke-linecap:round;stroke-linejoin:round;width:16px;height:16px}.arrow{font-family:var(--mono)}.link-more{align-items:center;gap:7px;font-size:14.5px;font-weight:500;display:inline-flex}.link-more:hover .arrow{transform:translate(3px)}.link-more .arrow{transition:.18s var(--e)}section{position:relative}section.sec{padding:clamp(64px,9vw,124px) 0}section.sec.tight{padding:clamp(46px,6vw,80px) 0}.sec-head{flex-direction:column;gap:14px;margin-bottom:clamp(28px,4vw,54px);display:flex}.sec-head .eyebrow{order:-1}.sec-head p{max-width:60ch}.band{background:var(--surface);border-top:1px solid var(--line-2);border-bottom:1px solid var(--line-2)}.band-ink{background:var(--ink-950);color:#eceef3}.band-ink h2,.band-ink h3{color:#fff}.band-ink .lead,.band-ink .dim{color:#a8adbb}.band-ink .eyebrow{color:#7e8494}.hero{padding:clamp(48px,7vw,86px) 0 0;overflow:hidden}.hero-grid{gap:clamp(22px,3vw,34px);max-width:1020px;display:grid}.hero h1{max-width:20ch}.rot{vertical-align:baseline;color:var(--accent);justify-items:start;display:inline-grid}.rot span{opacity:0;transition:opacity .34s var(--e),transform .34s var(--e);white-space:nowrap;grid-area:1/1;transform:translateY(.22em)}.rot span.on{opacity:1;transform:none}.hero .lead{max-width:60ch}.cta-row{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.cta-note{font-family:var(--mono);letter-spacing:.06em;color:var(--tx-3);text-transform:uppercase;font-size:11.5px}.hero-stage{padding:0 var(--pad);max-width:var(--maxw);margin-top:clamp(30px,4vw,54px);margin-left:auto;margin-right:auto}.hero-stage .app{box-shadow:var(--shadow-lg);transform:translateY(0)}.hero-fade{height:clamp(30px,6vw,70px)}.claim{text-align:center;padding:clamp(70px,9vw,120px) 0}.claim p{font-family:var(--display);letter-spacing:-.02em;max-width:23ch;color:var(--tx);margin:0 auto;font-size:clamp(26px,3.6vw,42px);font-weight:500;line-height:1.14}.claim p em{color:var(--tx-4);font-style:normal}.tabs{flex-wrap:wrap;gap:8px;margin-bottom:26px;display:flex}.tab{font:500 14px/1 var(--body);border:1px solid var(--line);color:var(--tx-2);cursor:pointer;transition:.18s var(--e);background:0 0;border-radius:100px;padding:10px 16px}.tab:hover{border-color:var(--tx-4);color:var(--tx)}.tab[aria-selected=true]{background:var(--tx);border-color:var(--tx);color:var(--bg)}.aud{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);align-items:center;gap:clamp(24px,4vw,52px);display:grid}.aud-panel{grid-column:1/-1;grid-template-columns:subgrid;display:none}.aud-panel.on{animation:fade .4s var(--e);display:grid}@keyframes fade{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.aud-copy{align-content:start;gap:16px;display:grid}.aud-copy ul{gap:9px;list-style:none;display:grid}.aud-copy li{color:var(--tx-2);gap:10px;font-size:15.5px;line-height:1.45;display:flex}.aud-copy li:before{content:"";background:var(--spot);border-radius:50%;flex:none;width:5px;height:5px;margin-top:8px}.chapters{grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr);align-items:start;gap:clamp(26px,4vw,60px);display:grid}.chap-rail{gap:0;display:grid}.chap{border-top:1px solid var(--line-2);align-content:center;gap:16px;min-height:62vh;padding:clamp(40px,10vh,96px) 0;display:grid}.chap:first-child{border-top:0}.chap-no{font-family:var(--mono);letter-spacing:.1em;color:var(--tx-4);align-items:center;gap:12px;font-size:12px;display:flex}.chap-no b{color:var(--spot);font-weight:400}.chap-no i{background:var(--line-2);flex:1;height:1px;font-style:normal}.chap.is-on .chap-no b{color:var(--accent)}.chap h3{max-width:22ch}.chap p{color:var(--tx-2);font-size:16.5px}.tech{font-family:var(--mono);letter-spacing:.05em;color:var(--tx-3);text-transform:lowercase;font-size:11.5px}.scene{display:grid;position:sticky;top:96px}.scene .app{opacity:0;transition:opacity .38s var(--e),transform .38s var(--e);pointer-events:none;grid-area:1/1;transform:translateY(10px)scale(.995)}.scene .app.on{opacity:1;pointer-events:auto;transform:none}.scene-cap{font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--tx-4);justify-content:space-between;gap:12px;margin-top:12px;font-size:10.5px;display:flex}.cards{grid-template-columns:repeat(auto-fit,minmax(238px,1fr));gap:14px;display:grid}.card{background:var(--surface);border:1px solid var(--line-2);transition:.2s var(--e);border-radius:10px;align-content:start;gap:9px;padding:20px;display:grid}a.card:hover{border-color:var(--tx-4);box-shadow:var(--shadow);transform:translateY(-2px)}.card h4{color:var(--tx)}.card p{color:var(--tx-2);max-width:38ch;font-size:14.5px;line-height:1.5}.card .fmt{font-family:var(--display);letter-spacing:-.02em;color:var(--tx);font-size:22px;font-weight:500}.card .fmt em{color:var(--spot);font-style:normal}.micro{grid-template-columns:repeat(auto-fit,minmax(186px,1fr));gap:12px;display:grid}.mc{background:var(--surface);border:1px solid var(--line-2);border-radius:9px;align-content:space-between;gap:10px;min-height:124px;padding:14px;display:grid}.mc .mc-t{font:500 14px/1.25 var(--body);color:var(--tx);letter-spacing:-.005em}.mc .mc-s{font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--tx-4);font-size:10px}.w{background:var(--sunk);border:1px solid var(--line-2);border-radius:5px;height:38px;display:flex;position:relative;overflow:hidden}.w-vibr{background:linear-gradient(115deg,var(--sunk),color-mix(in srgb,var(--spot) 22%,var(--sunk)))}.w-vibr:after{content:"";background:color-mix(in srgb,var(--tx) 22%,transparent);border-radius:3px;height:6px;position:absolute;inset:8px 10px auto}.w-swatch{background:0 0;border:0;gap:5px;padding:9px}.w-swatch i{border-radius:4px;flex:1}.w-type{font-family:var(--display);color:var(--tx);align-items:baseline;gap:8px;padding:6px 10px}.w-type u{font-family:var(--mono);color:var(--tx-4);font-size:10px;text-decoration:none}.w-rows{flex-direction:column;gap:3px;padding:7px 9px}.w-rows i{background:color-mix(in srgb,var(--tx) 16%,transparent);border-radius:2px;height:4px}.w-rows i.a{background:color-mix(in srgb,var(--ok) 60%,transparent)}.w-rows i.d{background:color-mix(in srgb,var(--danger) 55%,transparent)}.w-rows i.c{background:color-mix(in srgb,var(--spot) 60%,transparent);width:44%}.w-zoom{font-family:var(--mono);color:var(--tx-3);justify-content:space-between;align-items:center;padding:0 10px;font-size:10px}.w-zoom b{color:var(--tx);font-weight:400}.w-caret{font-family:var(--mono);color:var(--tx-3);align-items:center;gap:4px;padding:0 10px;font-size:11px}.w-caret u{background:var(--spot);width:1.5px;height:14px;text-decoration:none;animation:1.06s step-end infinite blink}@keyframes blink{50%{opacity:0}}.arts{grid-template-columns:repeat(auto-fit,minmax(196px,1fr));gap:14px;display:grid}.art{border:1px solid var(--line-2);background:var(--surface);border-radius:10px;display:grid;overflow:hidden}.art .paper{background:var(--surface);border-bottom:1px solid var(--line-2);height:172px;padding:16px;position:relative;overflow:hidden}.art .cap{justify-content:space-between;align-items:baseline;gap:8px;padding:11px 14px;display:flex}.art .cap b{font:500 14px/1 var(--body)}.art .cap span{font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--tx-4);font-size:10px}.pg-book{color:var(--tx-2);column-count:1;text-align:justify;hyphens:auto;font-family:Georgia,Times New Roman,serif;font-size:7.2px;line-height:1.72}.pg-book h5{text-align:center;color:var(--tx);margin-bottom:8px;font-family:Georgia,serif;font-size:11px;font-weight:400}.pg-pdf{gap:5px;display:grid}.pg-pdf i{background:color-mix(in srgb,var(--tx) 13%,transparent);border-radius:2px;height:4px;display:block}.pg-pdf i.t{background:color-mix(in srgb,var(--tx) 30%,transparent);width:58%;height:9px}.pg-pdf .fig{border:1px dashed var(--line);border-radius:4px;height:52px;margin:4px 0}.pg-mmd{height:100%;font-family:var(--mono);color:var(--tx-2);place-content:center;gap:7px;font-size:8px;display:grid}.pg-mmd .node{border:1px solid var(--line);text-align:center;background:var(--surface-2);border-radius:4px;padding:5px 8px}.pg-mmd .node.hi{border-color:var(--spot);color:var(--tx)}.pg-mmd .edge{background:var(--line);width:1px;height:12px;margin:0 auto}.pg-tbl{font-family:var(--mono);border-collapse:collapse;width:100%;font-size:7.5px}.pg-tbl td,.pg-tbl th{border-bottom:1px solid var(--line-2);text-align:left;white-space:nowrap;padding:2.5px 4px;overflow:hidden}.pg-tbl th{color:var(--tx-3);background:var(--surface-2);font-weight:400;position:sticky;top:0}.faq{border-top:1px solid var(--line);gap:0;display:grid}.faq details{border-bottom:1px solid var(--line)}.faq summary{cursor:pointer;font:500 17px/1.35 var(--body);color:var(--tx);align-items:baseline;gap:16px;padding:18px 0;list-style:none;display:flex}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:"+";font-family:var(--mono);color:var(--tx-3);transition:.2s var(--e);margin-left:auto;font-size:16px}.faq details[open] summary:after{color:var(--accent);transform:rotate(45deg)}.faq .a{max-width:70ch;color:var(--tx-2);gap:10px;padding:0 0 20px;font-size:15.5px;display:grid}.log{border-top:1px solid var(--line-2);gap:0;display:grid}.log-row{border-bottom:1px solid var(--line-2);grid-template-columns:104px 1fr auto;align-items:baseline;gap:18px;padding:15px 0;display:grid}.log-row .v{font-family:var(--mono);color:var(--tx);font-size:12.5px}.log-row .t{color:var(--tx-2);font-size:15px}.log-row .d{font-family:var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--tx-4);white-space:nowrap;font-size:11px}.pill{font-family:var(--mono);letter-spacing:.09em;text-transform:uppercase;border:1px solid var(--line);color:var(--tx-3);border-radius:100px;align-items:center;gap:6px;padding:4px 10px;font-size:10.5px;display:inline-flex}.pill.plan{border-color:color-mix(in srgb,var(--warn) 60%,transparent);color:color-mix(in srgb,var(--warn) 80%,var(--tx))}.pill.spot{border-color:color-mix(in srgb,var(--spot) 55%,transparent);color:var(--spot)}.two{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:clamp(20px,3vw,44px);display:grid}.plans{flex-wrap:wrap;gap:8px;display:flex}.final{text-align:center;justify-items:center;gap:20px;display:grid}.final>*{min-width:0;max-width:100%}.final h2{max-width:18ch}.site-foot{border-top:1px solid var(--line);background:var(--surface);padding:clamp(40px,5vw,64px) 0 34px}.foot-grid{grid-template-columns:1.4fr repeat(4,minmax(120px,1fr));gap:26px;display:grid}.foot-grid h5{font-family:var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--tx-4);margin-bottom:12px;font-size:10px;font-weight:400}.foot-grid ul{gap:8px;list-style:none;display:grid}.foot-grid a{color:var(--tx-2);font-size:14px}.foot-grid a:hover{color:var(--tx)}.foot-bottom{border-top:1px solid var(--line-2);font-family:var(--mono);letter-spacing:.06em;color:var(--tx-4);text-transform:uppercase;flex-wrap:wrap;justify-content:space-between;gap:14px;margin-top:34px;padding-top:20px;font-size:11px;display:flex}.phero{padding:clamp(38px,5.5vw,74px) 0 clamp(26px,3.5vw,44px)}.crumb{font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--tx-4);align-items:center;gap:8px;margin-bottom:18px;font-size:11px;display:flex}.crumb a{color:var(--tx-3)}.crumb a:hover{color:var(--tx)}.phero h1{max-width:24ch;font-size:clamp(32px,4.8vw,56px)}.phero .lead{max-width:64ch;margin-top:18px}.phero .cta-row{margin-top:26px}.anchors{z-index:40;background:color-mix(in srgb,var(--bg) 88%,transparent);backdrop-filter:blur(12px);border-top:1px solid var(--line-2);border-bottom:1px solid var(--line-2);padding:12px 0;display:block;position:sticky;top:60px}.anchors .wrap{flex-wrap:wrap;gap:7px;display:flex}.anchors a{white-space:nowrap;font-family:var(--mono);letter-spacing:.09em;text-transform:uppercase;color:var(--tx-3);border:1px solid var(--line);border-radius:100px;flex:none;padding:6px 11px;font-size:10.5px}.anchors a:hover{color:var(--tx);border-color:var(--tx-4)}.tscroll{-webkit-overflow-scrolling:touch;margin-bottom:6px;overflow-x:auto}.dtable{border-collapse:collapse;width:100%;margin-top:6px}.dtable th,.dtable td{border-bottom:1px solid var(--line-2);text-align:left;vertical-align:top;padding:15px 18px 15px 0}.dtable th{font-family:var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--tx-2);font-size:10px;font-weight:400}.dtable td{color:var(--tx-2);font-size:15.5px;line-height:1.5}.dtable td:first-child{color:var(--tx);width:28%;min-width:170px;font-weight:500}.dtable td code,.dtable td .mono{font-family:var(--mono);color:var(--tx-3);font-size:12.5px}.dtable tr:last-child td{border-bottom:0}.frow{border-top:1px solid var(--line-2);grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:center;gap:clamp(24px,4vw,56px);padding:clamp(30px,4.5vw,62px) 0;display:grid}.frow:first-of-type{border-top:0}.frow.flip>:first-child{order:2}.frow-copy{align-content:start;gap:14px;display:grid}.frow-copy ul{gap:9px;list-style:none;display:grid}.frow-copy li{color:var(--tx-2);gap:10px;font-size:15.5px;line-height:1.45;display:flex}.frow-copy li:before{content:"";background:var(--spot);border-radius:50%;flex:none;width:5px;height:5px;margin-top:8px}.os{grid-template-columns:repeat(auto-fit,minmax(268px,1fr));gap:16px;display:grid}.os-card{background:var(--surface);border:1px solid var(--line);border-radius:12px;align-content:start;gap:14px;padding:24px;display:grid}.os-card h3{align-items:center;gap:10px;display:flex}.os-card .kv{margin-top:2px}.kv{grid-template-columns:auto 1fr;gap:8px 18px;font-size:14px;display:grid}.kv dt{font-family:var(--mono);letter-spacing:.09em;text-transform:uppercase;color:var(--tx-4);padding-top:3px;font-size:10.5px}.kv dd{color:var(--tx-2)}.checks{gap:10px;list-style:none;display:grid}.checks li{color:var(--tx-2);grid-template-columns:18px 1fr;gap:10px;font-size:15.5px;line-height:1.5;display:grid}.checks li svg{width:15px;height:15px;stroke:var(--ok);stroke-width:2.4px;fill:none;stroke-linecap:round;stroke-linejoin:round;margin-top:4px}.callout{border-left:2px solid var(--warn);gap:8px;padding:2px 0 2px 16px;display:grid}.callout p{color:var(--tx-2);font-size:15px}.callout .eyebrow{color:color-mix(in srgb,var(--warn) 78%,var(--tx))}.modes{grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px;display:grid}.mode-card{border:1px solid var(--line);background:var(--surface);border-radius:11px;align-content:start;gap:12px;padding:20px;display:grid}.mode-card .bar{background:var(--sunk);border-radius:3px;height:6px;overflow:hidden}.mode-card .bar i{background:var(--spot);height:100%;display:block}.mode-card dl{gap:7px;font-size:14px;display:grid}.mode-card dl>div{border-top:1px solid var(--line-2);justify-content:space-between;gap:10px;padding-top:7px;display:flex}.mode-card dl span:first-child{color:var(--tx-3)}.mode-card dl span:last-child{color:var(--tx);font-family:var(--mono);font-size:12px}.plug{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:14px;display:grid}.plug-card{background:var(--surface);border:1px solid var(--line-2);transition:.2s var(--e);border-radius:10px;align-content:start;gap:10px;padding:18px;display:grid}a.plug-card:hover{border-color:var(--tx-4);box-shadow:var(--shadow);transform:translateY(-2px)}.plug-card .top{align-items:center;gap:10px;display:flex}.plug-card .sym{width:30px;height:30px;font-family:var(--display);background:var(--sunk);color:var(--tx);border-radius:7px;flex:none;place-items:center;font-size:13px;font-weight:500;display:grid}.plug-card .nm{font:500 15px/1.2 var(--body)}.plug-card .st{font-family:var(--mono);letter-spacing:.09em;text-transform:uppercase;color:var(--spot);margin-left:auto;font-size:9.5px}.plug-card p{color:var(--tx-2);font-size:14px;line-height:1.5}.rowlist{border-top:1px solid var(--line-2);display:grid}.rowlist>div{border-bottom:1px solid var(--line-2);grid-template-columns:minmax(120px,150px) 1fr auto;align-items:baseline;gap:20px;padding:16px 0;display:grid}.rowlist .k{font-family:var(--mono);color:var(--tx);font-size:12px}.rowlist .v{color:var(--tx-2);font-size:15px}@media (width<=1000px){.frow{grid-template-columns:minmax(0,1fr)}.frow>*{min-width:0}.frow.flip>:first-child{order:0}}@media (width<=900px){.anchors a{padding:11px 14px}.icon-btn{width:40px;height:40px}.tab{padding:13px 16px}.legal-langs a{padding:13px 15px}.btn.sm{height:40px;padding:0 16px}.lang a{padding:9px 8px}}@media (width<=700px){.tscroll .dtable{min-width:520px}}@media (width<=640px){.dtable td:first-child{width:auto;min-width:0}.rowlist>div{grid-template-columns:1fr;gap:5px}}.codeblock{background:var(--surface);border:1px solid var(--line);font-family:var(--mono);color:var(--tx-2);white-space:pre;border-radius:9px;margin:8px 0 20px;padding:18px 20px;font-size:12.5px;line-height:1.8;overflow-x:auto}.codeblock .k{color:var(--s-kw)}.codeblock .s{color:var(--s-str)}.codeblock .c{color:var(--tx-2)}.codeblock .t{color:var(--s-typ)}.codeblock .f{color:var(--s-fn)}.steps{gap:18px;max-width:78ch;display:grid}.steps>div{grid-template-columns:46px 1fr;gap:16px;display:grid}.steps b{font-family:var(--mono);color:var(--accent);padding-top:4px;font-size:12px;font-weight:400}.steps p{color:var(--tx-2);margin:0}.legal-head{border-bottom:1px solid var(--line);padding:clamp(30px,4vw,58px) 0 clamp(18px,2.5vw,28px)}.legal-meta{font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--tx-3);flex-wrap:wrap;gap:8px 18px;margin-top:16px;font-size:11px;display:flex}.legal-meta b{color:var(--tx);font-weight:400}.legal-langs{gap:8px;margin-top:18px;display:flex}.legal-langs a{font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;border:1px solid var(--line);color:var(--tx-2);border-radius:100px;padding:6px 13px;font-size:11px}.legal-langs a:hover{border-color:var(--tx-4);color:var(--tx)}.legal-langs a[aria-current]{background:var(--tx);border-color:var(--tx);color:var(--bg)}.legal-doc{padding:clamp(26px,3.5vw,44px) 0 clamp(50px,7vw,90px)}.legal-doc pre{font-family:var(--mono);color:var(--tx);white-space:pre-wrap;overflow-wrap:break-word;tab-size:2;max-width:96ch;font-size:13px;line-height:1.68}.legal-note{background:var(--surface);border:1px solid var(--line-2);border-radius:9px;gap:8px;max-width:80ch;margin-bottom:26px;padding:16px 18px;display:grid}.legal-note p{color:var(--tx-2);margin:0;font-size:14.5px}.legal-list{border-top:1px solid var(--line-2);display:grid}.legal-list a,.legal-list div{border-bottom:1px solid var(--line-2);color:var(--tx);grid-template-columns:minmax(160px,240px) 1fr auto;align-items:baseline;gap:18px;padding:14px 0;display:grid}.legal-list a:hover{color:var(--tx);background:var(--surface-2)}.legal-list .n{font-family:var(--mono);font-size:13px}.legal-list .d{color:var(--tx-2);font-size:14.5px}.lic-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px;display:grid}.lic-grid a{border:1px solid var(--line-2);background:var(--surface);font-family:var(--mono);color:var(--tx);border-radius:8px;justify-content:space-between;align-items:baseline;gap:10px;padding:12px 14px;font-size:12.5px;display:flex}.lic-grid a:hover{border-color:var(--tx-4)}.lic-grid a span{letter-spacing:.08em;text-transform:uppercase;color:var(--tx-3);font-size:10px}@media (width<=640px){.legal-list a,.legal-list div{grid-template-columns:1fr;gap:4px}.legal-doc pre{font-size:12px}}.rv{opacity:0;transition:opacity .6s var(--e),transform .6s var(--e);transform:translateY(16px)}.rv.in{opacity:1;transform:none}.rv-d1{transition-delay:70ms}.rv-d2{transition-delay:.14s}.rv-d3{transition-delay:.21s}.rv-d4{transition-delay:.28s}@media (prefers-reduced-motion:reduce){.rv{opacity:1;transition:none;transform:none}.rot span{transition:none}.w-caret u{animation:none}html{scroll-behavior:auto}.scene .app{transition:none}}@media (width<=1000px){.chapters,.aud{grid-template-columns:minmax(0,1fr)}.chapters>*,.aud>*,.aud-panel>*,.two>*,.cards>*{min-width:0}.scene{order:-1;margin-bottom:20px;position:static}.scene .app{opacity:1;grid-area:auto;display:none;transform:none}.scene .app.on{display:block}.chap{min-height:0;padding:26px 0}.foot-grid{grid-template-columns:1fr 1fr}nav.main{display:none}}@media (width<=640px){body{font-size:16px}.head-tools .lang{display:none}.foot-grid{grid-template-columns:1fr}.log-row{grid-template-columns:1fr;gap:5px}}.btt{z-index:50;width:46px;height:46px;font-family:var(--mono);background:color-mix(in srgb,var(--surface) 88%,transparent);backdrop-filter:blur(12px)saturate(1.3);border:1px solid var(--line);box-shadow:var(--shadow);color:var(--tx-2);cursor:pointer;opacity:0;pointer-events:none;transition:opacity .3s var(--e),transform .3s var(--e),color .2s var(--e),border-color .2s var(--e);border-radius:50%;justify-content:center;align-items:center;padding:0;display:flex;position:fixed;bottom:clamp(14px,2.2vw,26px);right:clamp(14px,2.2vw,26px);transform:translateY(12px)scale(.96)}.btt.on{opacity:1;pointer-events:auto;transform:none}.btt .tr{background:conic-gradient(var(--spot) calc(var(--p,0) * 360deg),color-mix(in srgb,var(--tx) 9%,transparent) 0);border-radius:50%;position:absolute;inset:-1px;mask:radial-gradient(farthest-side,#0000 calc(100% - 2.5px),#000 calc(100% - 2.5px))}.btt svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:17px;height:17px;transition:transform .2s var(--e)}.btt:hover,.btt:focus-visible{color:var(--tx);border-color:var(--tx-4)}.btt:hover svg,.btt:focus-visible svg{transform:translateY(-2px)}.btt:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.btt.fire{transition-duration:.14s;transform:translateY(-8px)}@media (prefers-reduced-motion:reduce){.btt{transition:opacity .2s linear}.btt.fire{transform:none}}.arch-grid{gap:10px;display:grid}.arch{border:1px solid var(--line);background:color-mix(in srgb,var(--tx) 3%,transparent);border-radius:10px;gap:10px;padding:14px 16px;display:grid}.arch-head{flex-wrap:wrap;align-items:center;gap:9px;display:flex}.arch-head b{font-size:15px;font-weight:500}.arch .kv{gap:6px 16px;font-size:13.5px}.arch .btn{justify-self:start}.arch-note{font-family:var(--mono);letter-spacing:.04em;color:var(--tx-4);font-size:11px}:root{--a-ui:-apple-system,BlinkMacSystemFont,"Segoe UI",system-ui,sans-serif;--a-bg:#fff;--a-chrome:#edeff2;--a-panel:#f5f6f8;--a-line:#1418201a;--a-line2:#1418200f;--a-tx:#2b303a;--a-dim:#6b7280;--a-faint:#9aa1ab;--a-gutter:#a9b0bb;--a-acc:#2f6fe0;--a-accdim:#2f6fe01c;--a-sel:#2f6fe029;--a-active:#1418200a;--a-warn:#9a6700;--a-warn-tint:#d99a281f;--s-kw:#a23ba0;--s-str:#2f8a3f;--s-num:#9a6b1f;--s-typ:#1f6fb0;--s-com:#9aa1ab;--s-fn:#3f4fb0;--r1:#9a6b1f;--r2:#1f6fb0;--r3:#a23ba0;--r4:#2f8a3f;--r5:#b03a3a;--r6:#3f4fb0;--r7:#0f8a80;--a-add:#1a7f37;--a-del:#cf222e;--a-addbg:#1a7f371a;--a-delbg:#cf222e14;--fd-txt:#6b7280;--fd-log:#9a6b1f;--fd-json:#9a6b1f;--fd-cpp:#1f6fb0;--fd-h:#a23ba0;--fd-md:#3f4fb0;--fd-csv:#2f8a3f;--fd-fb2:#0f8a80;--fd-epub:#7c3aed;--fd-pdf:#c0392b;--fd-rtf:#2563aa}[data-theme=dark]{--a-bg:#1b1e24;--a-chrome:#16181d;--a-panel:#191c22;--a-line:#ffffff12;--a-line2:#ffffff0d;--a-tx:#cbd1da;--a-dim:#888f9b;--a-faint:#596067;--a-gutter:#4d5462;--a-acc:#4c8dff;--a-accdim:#4c8dff29;--a-sel:#4c8dff3d;--a-active:#ffffff09;--a-warn:#e3a83c;--a-warn-tint:#e3a83c1a;--s-kw:#cf8bd0;--s-str:#82c489;--s-num:#d9a55b;--s-typ:#6fb3e0;--s-com:#6b7280;--s-fn:#9aa7e8;--r1:#d9a55b;--r2:#6fb3e0;--r3:#cf8bd0;--r4:#82c489;--r5:#e58a8a;--r6:#9aa7e8;--r7:#5fc9c0;--a-add:#3fb950;--a-del:#f0626a;--a-addbg:#3fb95024;--a-delbg:#f0626a21;--fd-txt:#9aa0aa;--fd-log:#d9a55b;--fd-json:#d9a55b;--fd-cpp:#6fb3e0;--fd-h:#cf8bd0;--fd-md:#9aa7e8;--fd-csv:#82c489;--fd-fb2:#5fc9c0;--fd-epub:#b794e6;--fd-pdf:#e58a8a;--fd-rtf:#7fb0e6}.app{border:1px solid var(--a-line);background:var(--a-bg);box-shadow:var(--shadow);font-family:var(--a-ui);color:var(--a-tx);-webkit-font-smoothing:antialiased;user-select:none;border-radius:9px;font-size:12.5px;line-height:1.5;overflow:hidden}.app-title{background:var(--a-chrome);border-bottom:1px solid var(--a-line);align-items:center;height:38px;padding:0 14px;display:flex;position:relative}.dots{z-index:1;flex:none;align-items:center;gap:8px;padding-left:4px;display:flex}.dots i{border-radius:6px;width:12px;height:12px;display:block}.dots i:first-child{background:#ff5f57}.dots i:nth-child(2){background:#febc2e}.dots i:nth-child(3){background:#28c840}.app-title .title{pointer-events:none;justify-content:center;align-items:center;gap:8px;padding:0 60px;font-size:12.5px;display:flex;position:absolute;left:0;right:0}.app-title .title svg{width:13px;height:13px;fill:var(--a-acc);flex:none;display:block}.app-title .title b{color:var(--a-tx);white-space:nowrap;text-overflow:ellipsis;font-weight:500;overflow:hidden}.app-title .title span{color:var(--a-faint);white-space:nowrap}.app-tabs{background:var(--a-chrome);border-bottom:1px solid var(--a-line);align-items:stretch;height:36px;display:flex;overflow:hidden}.app-tabs .t{white-space:nowrap;max-width:210px;color:var(--a-dim);border-right:1px solid var(--a-line);align-items:center;gap:7px;padding:0 12px;font-size:12.5px;display:flex;position:relative}.app-tabs .t.on{background:var(--a-bg);color:var(--a-tx);font-weight:500}.app-tabs .t.on:before{content:"";background:var(--a-acc);height:2px;position:absolute;top:0;left:0;right:0}.app-tabs .t i{background:var(--fd-txt);border-radius:2px;flex:none;width:7px;height:7px}.app-tabs .t[data-ext=log] i{background:var(--fd-log)}.app-tabs .t[data-ext=json] i{background:var(--fd-json)}.app-tabs .t[data-ext=cpp] i{background:var(--fd-cpp)}.app-tabs .t[data-ext=h] i{background:var(--fd-h)}.app-tabs .t[data-ext=md] i{background:var(--fd-md)}.app-tabs .t[data-ext=csv] i{background:var(--fd-csv)}.app-tabs .t[data-ext=epub] i{background:var(--fd-epub)}.app-tabs .t[data-ext=fb2] i{background:var(--fd-fb2)}.app-tabs .t[data-ext=pdf] i{background:var(--fd-pdf)}.app-tabs .t[data-ext=rtf] i{background:var(--fd-rtf)}.app-tabs .t .x{opacity:.55;flex:none;place-items:center;width:14px;height:14px;margin-left:4px;display:grid}.app-tabs .t .x svg{stroke:currentColor;stroke-width:1.6px;fill:none;stroke-linecap:round;width:12px;height:12px}.app-tabs .grow{flex:1}.app-tabs .acts{color:var(--a-faint);align-items:center;gap:2px;padding-right:10px;display:flex}.app-tabs .acts svg{stroke:currentColor;stroke-width:1.6px;fill:none;width:16px;height:16px;display:block}.app-body{height:var(--app-h,clamp(268px,40vh,400px));grid-template-columns:48px 208px minmax(0,1fr);display:grid}.app-body.wide,.app-body.no-side{grid-template-columns:48px minmax(0,1fr)}.rail{background:var(--a-chrome);border-right:1px solid var(--a-line);flex-direction:column;align-items:center;padding-top:4px;display:flex}.rail .cell{width:48px;height:48px;color:var(--a-faint);flex:none;place-items:center;display:grid;position:relative}.rail .cell.on{color:var(--a-tx)}.rail .cell.on:before{content:"";background:var(--a-acc);border-radius:2px;width:2px;position:absolute;top:8px;bottom:8px;left:0}.rail .cell svg{stroke:currentColor;stroke-width:1.6px;fill:none;stroke-linecap:round;stroke-linejoin:round;width:21px;height:21px;display:block}.rail .badge{background:var(--a-acc);color:#fff;border-radius:7px;place-items:center;min-width:14px;height:14px;padding:0 3px;font-size:9.5px;font-weight:700;line-height:1;display:grid;position:absolute;top:9px;right:7px}.rail .grow{flex:1}.side{background:var(--a-panel);border-right:1px solid var(--a-line);align-content:start;padding-bottom:6px;display:grid;overflow:hidden}.side .h{letter-spacing:.06em;text-transform:uppercase;height:34px;color:var(--a-dim);align-items:center;padding:0 12px;font-size:11px;font-weight:600;display:flex}.side .f{height:24px;color:var(--a-dim);white-space:nowrap;text-overflow:ellipsis;align-items:center;gap:6px;padding:0 8px 0 12px;font-size:12.5px;display:flex;position:relative;overflow:hidden}.side .f.on{background:var(--a-accdim);color:var(--a-tx);font-weight:500}.side .f.on:before{content:"";background:var(--a-acc);width:2px;position:absolute;top:0;bottom:0;left:0}.side .f.ind{padding-left:26px}.side .f.ind2{color:var(--a-faint);padding-left:40px;font-size:11px}.side .f.mod{color:var(--a-warn)}.doc{background:var(--a-bg);position:relative;overflow:hidden}.code{height:100%;font-family:var(--mono);grid-template-columns:auto 1fr;align-content:start;padding:6px 0;font-size:11.5px;line-height:1.78;display:grid}.code .ln{text-align:right;color:var(--a-gutter);font-variant-numeric:tabular-nums;padding:0 10px 0 12px;font-size:10.5px}.code .cl{white-space:pre;padding-right:14px;overflow:hidden}.code .cl.act{background:var(--a-active)}.code .ln.act{color:var(--a-tx)}.code .ln.g-add{box-shadow:inset 2px 0 0 var(--a-add)}.code .ln.g-del{box-shadow:inset 2px 0 0 var(--a-del)}.code .ln.g-mod{box-shadow:inset 2px 0 0 var(--a-warn)}.kw{color:var(--s-kw)}.str{color:var(--s-str)}.num{color:var(--s-num)}.typ{color:var(--s-typ)}.com{color:var(--s-com)}.fn{color:var(--s-fn)}.car{background:var(--a-acc);vertical-align:text-bottom;width:1.5px;height:1.15em;margin:0 -1px;animation:1.06s step-end infinite blink;display:inline-block}.sel{background:var(--a-sel);border-radius:2px}.squig{text-decoration:underline wavy var(--a-del);text-decoration-skip-ink:none}.lsp{background:var(--a-panel);border:1px solid var(--a-line);max-width:62%;box-shadow:var(--shadow);color:var(--a-tx);border-radius:6px;gap:4px;padding:8px 10px;font-size:11.5px;line-height:1.45;display:grid;position:absolute;top:38%;left:12%}.lsp .src{color:var(--a-faint);letter-spacing:.06em;text-transform:uppercase;font-size:10px}.lsp .err{color:var(--a-del)}.lsp .com{font-family:var(--mono);font-size:10.5px}.tbl{border-collapse:collapse;width:100%;font-family:var(--mono);table-layout:fixed;font-size:10.5px}.tbl th,.tbl td{border-right:1px solid var(--a-line2);border-bottom:1px solid var(--a-line2);text-align:left;white-space:nowrap;text-overflow:ellipsis;font-variant-numeric:tabular-nums;padding:3px 8px;overflow:hidden}.tbl thead th{background:var(--a-panel);color:var(--a-dim);letter-spacing:.06em;text-transform:uppercase;font-size:9.5px;font-weight:400;font-family:var(--a-ui);z-index:2;position:sticky;top:0}.tbl td.rn{color:var(--a-gutter);background:var(--a-panel);text-align:right;width:44px;font-size:10px}.tbl tr:hover td{background:var(--a-active)}.c1{color:var(--r1)}.c2{color:var(--r2)}.c3{color:var(--r3)}.c4{color:var(--r4)}.c5{color:var(--r5)}.c6{color:var(--r6)}.c7{color:var(--r7)}.book{background:var(--a-panel);grid-template-columns:132px 1fr;height:100%;display:grid;overflow:hidden}.toc{border-right:1px solid var(--a-line2);align-content:start;gap:1px;padding:8px 0;display:grid}.toc .h{letter-spacing:.06em;text-transform:uppercase;color:var(--a-dim);padding:0 12px 8px;font-size:11px;font-weight:600}.toc .i{height:24px;color:var(--a-dim);white-space:nowrap;text-overflow:ellipsis;align-items:center;padding:0 12px;font-size:12.5px;display:flex;position:relative;overflow:hidden}.toc .i.on{background:var(--a-accdim);color:var(--a-tx);font-weight:500}.toc .i.on:before{content:"";background:var(--a-acc);width:2px;position:absolute;top:0;bottom:0;left:0}.sheet-wrap{justify-items:center;padding:16px 0 0;display:grid;overflow:hidden}.sheet{background:var(--a-bg);border:1px solid var(--a-line2);width:min(84%,340px);color:var(--a-tx);text-align:justify;hyphens:auto;border-bottom:0;border-radius:3px 3px 0 0;padding:20px 26px;font-family:Georgia,Times New Roman,serif;font-size:9.5px;line-height:1.78}.sheet h6{text-align:center;letter-spacing:.01em;margin-bottom:3px;font-family:Georgia,serif;font-size:14px;font-weight:400}.sheet .ch{text-align:center;font-family:var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--a-faint);margin-bottom:12px;font-size:8px}.sheet p+p{text-indent:1.4em}.diff{height:100%;font-family:var(--mono);grid-template-columns:1fr 1fr;font-size:11px;line-height:1.78;display:grid}.diff>div{overflow:hidden}.diff .side-h{background:var(--a-panel);border-bottom:1px solid var(--a-line2);color:var(--a-dim);font-family:var(--a-ui);letter-spacing:.05em;text-transform:uppercase;justify-content:space-between;padding:5px 10px;font-size:11px;font-weight:600;display:flex}.diff .r{grid-template-columns:34px 1fr;display:grid}.diff .r>i{text-align:right;color:var(--a-gutter);padding:0 8px;font-size:10px;font-style:normal}.diff .r>span{white-space:pre;padding-right:8px;overflow:hidden}.diff .r.add{background:var(--a-addbg)}.diff .r.del{background:var(--a-delbg)}.diff .col-r{border-left:1px solid var(--a-line2)}.pan{background:var(--a-bg);align-content:start;gap:8px;height:100%;padding:12px 14px;display:grid;overflow:hidden}.pan .row{border:1px solid var(--a-line2);background:var(--a-panel);border-radius:6px;grid-template-columns:22px 1fr auto;align-items:center;gap:10px;padding:7px 10px;display:grid}.pan .row .nm{color:var(--a-tx);align-items:baseline;gap:8px;min-width:0;font-size:12.5px;display:flex}.pan .row .nm em{color:var(--a-faint);white-space:nowrap;text-overflow:ellipsis;font-size:11.5px;font-style:normal;overflow:hidden}.pan .row .ic{background:var(--a-accdim);width:20px;height:20px;color:var(--a-acc);border-radius:4px;place-items:center;font-size:9px;font-weight:600;display:grid}.sw{background:var(--a-acc);border-radius:100px;flex:none;width:26px;height:14px;position:relative}.sw:after{content:"";background:#fff;border-radius:50%;width:10px;height:10px;position:absolute;top:2px;right:2px}.sw.off{background:color-mix(in srgb,var(--a-faint) 45%,transparent)}.sw.off:after{left:2px;right:auto}.app-status{background:var(--a-chrome);border-top:1px solid var(--a-line);height:24px;color:var(--a-dim);font-variant-numeric:tabular-nums;justify-content:space-between;align-items:center;font-size:11.5px;display:flex;overflow:hidden}.app-status .l,.app-status .r{align-items:center;min-width:0;height:100%;display:flex}.app-status .seg{white-space:nowrap;align-items:center;gap:5px;height:100%;padding:0 9px;display:flex}.app-status .seg svg{stroke:currentColor;stroke-width:1.6px;fill:none;stroke-linecap:round;stroke-linejoin:round;width:13px;height:13px;display:block}.app-status .seg.br{color:var(--a-tx)}.app-status .seg.br u{color:var(--a-dim);text-decoration:none}.app-status .seg.mode{color:var(--a-warn);background:var(--a-warn-tint)}.app-status .seg.mode:before{content:"";background:var(--a-warn);border-radius:3px;flex:none;width:6px;height:6px}.app-status .seg.fmt{color:var(--a-acc)}.app-status .seg.fmt:before{content:"";background:var(--a-acc);border-radius:3px;flex:none;width:6px;height:6px}.app-status .ok{color:var(--a-add)}.app-status .wr{color:var(--a-warn)}.app-status .er{color:var(--a-del)}@media (width<=900px){.app-body{grid-template-columns:44px minmax(0,1fr)}.app-body .side,.book .toc,.app-title .title span{display:none}.rail .cell{width:44px;height:44px}}@media (width<=640px){.app{font-size:11.5px}.code{font-size:10.5px}.diff{grid-template-columns:1fr}.diff .col-r,.app-status .seg.enc,.app-status .seg.eol{display:none}}html:not(.js) .rv{opacity:1;transition:none;transform:none}html:not(.js) .scene .app:first-of-type{opacity:1;pointer-events:auto;transform:none}@media (prefers-reduced-motion:reduce){.aud-panel.on{animation:none}}:root{--tx-3:#5a5d68;--tx-4:#6c6f78}[data-theme=dark]{--tx-3:#8b919f;--tx-4:#787d8a}.pill.plan,.callout .eyebrow{color:color-mix(in srgb, var(--warn) 50%, var(--tx))}html:not([data-theme=dark]){--spot:#007a87;--spot-2:#027784}[data-theme=dark]{--spot:var(--cyan);--spot-2:var(--cyan)}[data-theme=dark] .btn.pri,[data-theme=dark] .btn.pri:hover{color:var(--ink-950)}p a:not(.btn):not(.link-more),dd a:not(.btn),.faq .a a,.aud-copy li a,.frow-copy li a,.checks li a,.dtable td a,.steps p a,.legal-note a{text-underline-offset:.18em;text-decoration:underline from-font}html:not([data-theme=dark]){--a-dim:#4a505e;--a-faint:#656c75;--a-gutter:#676d78;--a-acc:#1f5ecb;--a-accdim:#1f5ecb1c;--a-sel:#1f5ecb29;--a-warn:#8a5c00;--s-str:#1c7b31;--s-num:#906211;--s-com:#656b75;--s-typ:#1e6eaf;--a-add:#187d36;--a-addbg:#187d361a;--r1:#946517;--r4:#207e34;--r7:#007c75}[data-theme=dark]{--a-dim:#a1a9b5;--a-faint:#858d93;--a-gutter:#9198a5;--a-acc:#5c97ff;--a-accdim:#5c97ff29;--a-sel:#5c97ff3d;--s-com:#868e9c;--a-del:#f27178}[data-theme=dark] .rail .badge{color:#12141a}[data-theme=dark] .arch{--tx-4:#7b808c}.mode-card dl dt{color:var(--tx-3)}.mode-card dl dd{color:var(--tx);font-family:var(--mono);margin:0;font-size:12px}.w-type u{color:var(--tx-3)}:root{--fk:#1633c4;--fk-gap:var(--bg)}[data-theme=dark]{--fk:#00e5ff}.band,.site-foot,.card,.plug-card,.os-card,.mode-card,.legal-note,.lic-grid a,.art{--fk-gap:var(--surface)}.band-ink,[data-theme=dark] .band-ink{--fk:#00e5ff;--fk-gap:var(--ink-950)}.site-head,.anchors{--fk-gap:var(--bg)}:where(a[href],button,summary,[tabindex]:not([tabindex="-1"])):focus-visible{outline:2px solid var(--fk);outline-offset:2px;box-shadow:0 0 0 2px var(--fk-gap)}.faq summary:focus-visible,.legal-list a:focus-visible{outline-offset:-3px;box-shadow:none}.btt:focus-visible{outline-color:var(--fk)}.btn:focus-visible,a.card:focus-visible,a.plug-card:focus-visible{transform:none}.btn:active{transform:translateY(0)}.btn.pri:active{background:var(--blue-press)}[data-theme=dark] .btn.pri:active{background:var(--accent)}.btn.ghost:active{background:var(--surface-2);border-color:var(--tx-4)}.btn[disabled],.btn[aria-disabled=true]{background:var(--sunk);border-color:var(--line-2);color:#6b7080;cursor:not-allowed;box-shadow:none;transform:none}[data-theme=dark] .btn[disabled],[data-theme=dark] .btn[aria-disabled=true]{background:var(--surface-2);color:var(--tx-3)}.btn[disabled]:hover,.btn[aria-disabled=true]:hover{background:var(--sunk);color:#6b7080;transform:none}[data-theme=dark] .btn[disabled]:hover,[data-theme=dark] .btn[aria-disabled=true]:hover{background:var(--surface-2);color:var(--tx-3)}@media (prefers-reduced-motion:reduce){.btn:hover,.btn:active,a.card:hover,a.plug-card:hover{transform:none}}.print-url{display:none}@media print{:root,[data-theme=dark]{--bg:#fff;--surface:#fff;--surface-2:#fff;--sunk:#fff;--tx:#000;--tx-2:#000;--tx-3:#1a1a1a;--tx-4:#333;--line:#000;--line-2:#999;--accent:#000;--spot:#000;--shadow:none;--shadow-lg:none}@page{margin:18mm 16mm}html,body{color:#000;background:#fff;font-size:11pt}.site-head,.site-foot,.btt,.anchors,.icon-btn,.head-tools,nav.main,.lang,.legal-langs,.tabs,.scene,.hero-fade{display:none}.wrap{max-width:none;padding:0}h1,h2,h3,h4{color:#000;break-after:avoid}a{color:#000;text-decoration:none}.crumb{color:#000;margin-bottom:10pt}.crumb a{color:#000}.legal-head{break-after:avoid;border-bottom:.75pt solid #000;padding:0 0 8pt}.legal-head h1{font-size:19pt;line-height:1.15}.legal-meta{color:#000;gap:4pt 14pt;margin-top:8pt;font-size:8.5pt}.print-url{font-family:var(--mono);letter-spacing:.02em;color:#000;margin-top:6pt;font-size:8.5pt;display:block}.legal-doc{padding:10pt 0 0}.legal-doc pre{white-space:pre-wrap;overflow-wrap:break-word;color:#000;orphans:3;widows:3;max-width:none;font-size:10pt;line-height:1.5;overflow:visible}.legal-note{break-inside:avoid;background:#fff;border:.75pt solid #000;border-radius:0;margin-bottom:12pt;padding:8pt 10pt}.legal-list a,.legal-list div,.lic-grid a{color:#000;break-inside:avoid;border-color:#999}.lic-grid a{background:#fff}.tscroll{overflow:visible}.dtable{break-inside:auto}.dtable th,.dtable td{color:#000;border-color:#999}.app,.micro,.w{display:none}.rv{opacity:1;transform:none}}
