@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(./inter-cyrillic-ext-400-normal-BQZuk6qB.woff2)format("woff2"),url(./inter-cyrillic-ext-400-normal-DQukG94-.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(./inter-cyrillic-400-normal-obahsSVq.woff2)format("woff2"),url(./inter-cyrillic-400-normal-HOLc17fK.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(./inter-greek-ext-400-normal-DGGRlc-M.woff2)format("woff2"),url(./inter-greek-ext-400-normal-KugGGMne.woff)format("woff");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(./inter-greek-400-normal-B4URO6DV.woff2)format("woff2"),url(./inter-greek-400-normal-q2sYcFCs.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(./inter-vietnamese-400-normal-DMkecbls.woff2)format("woff2"),url(./inter-vietnamese-400-normal-Bbgyi5SW.woff)format("woff");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:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(./inter-latin-ext-400-normal-C1nco2VV.woff2)format("woff2"),url(./inter-latin-ext-400-normal-77YHD8bZ.woff)format("woff");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:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(./inter-latin-400-normal-C38fXH4l.woff2)format("woff2"),url(./inter-latin-400-normal-CyCys3Eg.woff)format("woff");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:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(./inter-cyrillic-ext-500-normal-B0yAr1jD.woff2)format("woff2"),url(./inter-cyrillic-ext-500-normal-BmqWE9Dz.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(./inter-cyrillic-500-normal-BasfLYem.woff2)format("woff2"),url(./inter-cyrillic-500-normal-CxZf_p3X.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(./inter-greek-ext-500-normal-C4iEst2y.woff2)format("woff2"),url(./inter-greek-ext-500-normal-2j5mBUwD.woff)format("woff");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(./inter-greek-500-normal-BIZE56-Y.woff2)format("woff2"),url(./inter-greek-500-normal-Xzm54t5V.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(./inter-vietnamese-500-normal-DOriooB6.woff2)format("woff2"),url(./inter-vietnamese-500-normal-mJboJaSs.woff)format("woff");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:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(./inter-latin-ext-500-normal-CV4jyFjo.woff2)format("woff2"),url(./inter-latin-ext-500-normal-BxGbmqWO.woff)format("woff");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:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(./inter-latin-500-normal-Cerq10X2.woff2)format("woff2"),url(./inter-latin-500-normal-BL9OpVg8.woff)format("woff");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:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(./inter-cyrillic-ext-600-normal-Dfes3d0z.woff2)format("woff2"),url(./inter-cyrillic-ext-600-normal-Bcila6Z-.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(./inter-cyrillic-600-normal-CWCymEST.woff2)format("woff2"),url(./inter-cyrillic-600-normal-4D_pXhcN.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(./inter-greek-ext-600-normal-DRtmH8MT.woff2)format("woff2"),url(./inter-greek-ext-600-normal-B8X0CLgF.woff)format("woff");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(./inter-greek-600-normal-plRanbMR.woff2)format("woff2"),url(./inter-greek-600-normal-BZpKdvQh.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(./inter-vietnamese-600-normal-Cc8MFFhd.woff2)format("woff2"),url(./inter-vietnamese-600-normal-BuLX-rYi.woff)format("woff");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:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(./inter-latin-ext-600-normal-D2bJ5OIk.woff2)format("woff2"),url(./inter-latin-ext-600-normal-CIVaiw4L.woff)format("woff");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:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(./inter-latin-600-normal-LgqL8muc.woff2)format("woff2"),url(./inter-latin-600-normal-CiBQ2DWP.woff)format("woff");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:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(./inter-cyrillic-ext-700-normal-BjwYoWNd.woff2)format("woff2"),url(./inter-cyrillic-ext-700-normal-LO58E6JB.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(./inter-cyrillic-700-normal-CjBOestx.woff2)format("woff2"),url(./inter-cyrillic-700-normal-DrXBdSj3.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(./inter-greek-ext-700-normal-qfdV9bQt.woff2)format("woff2"),url(./inter-greek-ext-700-normal-BoQ6DsYi.woff)format("woff");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(./inter-greek-700-normal-C3JjAnD8.woff2)format("woff2"),url(./inter-greek-700-normal-BUv2fZ6O.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(./inter-vietnamese-700-normal-DlLaEgI2.woff2)format("woff2"),url(./inter-vietnamese-700-normal-BZaoP0fm.woff)format("woff");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:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(./inter-latin-ext-700-normal-Ca8adRJv.woff2)format("woff2"),url(./inter-latin-ext-700-normal-TidjK2hL.woff)format("woff");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:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(./inter-latin-700-normal-Yt3aPRUw.woff2)format("woff2"),url(./inter-latin-700-normal-BLAVimhd.woff)format("woff");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:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(./jetbrains-mono-cyrillic-ext-400-normal-C_uLvvQ5.woff2)format("woff2"),url(./jetbrains-mono-cyrillic-ext-400-normal-Bh0R7Dhr.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(./jetbrains-mono-cyrillic-400-normal-BEIGL1Tu.woff2)format("woff2"),url(./jetbrains-mono-cyrillic-400-normal-ugxPyKxw.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(./jetbrains-mono-greek-400-normal-C190GLew.woff2)format("woff2"),url(./jetbrains-mono-greek-400-normal-B9oWc5Lo.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(./jetbrains-mono-vietnamese-400-normal-ByoDsISC.woff2)format("woff2"),url(./jetbrains-mono-vietnamese-400-normal-CqNFfHCs.woff)format("woff");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:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(./jetbrains-mono-latin-ext-400-normal-Bc8Ftmh3.woff2)format("woff2"),url(./jetbrains-mono-latin-ext-400-normal-fXTG6kC5.woff)format("woff");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:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(./jetbrains-mono-latin-400-normal-V6pRDFza.woff2)format("woff2"),url(./jetbrains-mono-latin-400-normal-6-qcROiO.woff)format("woff");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,:root[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f4f6f9;--bg-2:#fff;--panel:#fff;--panel-2:#f3f5f9;--panel-3:#e8ecf2;--border:#e0e5ed;--border-strong:#c6cedb;--text:#121821;--text-2:#3b4555;--muted:#5a6575;--accent:#2456d3;--accent-text:#1d4cc0;--accent-soft:#2456d317;--accent-strong:#2456d3;--on-accent:#fff;--brand-2:#0d9488;--s1:#2456d3;--s2:#c4501a;--s3:#0d8a5a;--s4:#9a6400;--s5:#b8357a;--good:#0c7a4e;--good-soft:#0c7a4e17;--good-line:#0c7a4e52;--critical:#bf2f29;--critical-soft:#bf2f2914;--critical-line:#bf2f2952;--warning:#8a5900;--warning-soft:#b074001a;--warning-line:#b0740059;--info:#1d4cc0;--info-soft:#2456d314;--info-line:#2456d34d;--grid:#e6eaf0;--code-bg:#f7f9fc;--code-kw:#7a3be0;--code-str:#18793a;--code-cm:#5d6877;--code-ln:#687384;--code-hl:#2456d31a;--shadow-sm:0 1px 2px #1018280d;--shadow:0 1px 2px #1018280d, 0 4px 14px #1018280f;--shadow-lg:0 18px 50px #10182829;--overlay:#0f141e8c;--hover:#12182109;--glow:radial-gradient(900px 420px at 85% -10%, #2456d30f, transparent 60%)}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#0f131a;--bg-2:#121721;--panel:#161c26;--panel-2:#1c2330;--panel-3:#252e3d;--border:#283142;--border-strong:#3a465b;--text:#e8ecf3;--text-2:#b6bfcd;--muted:#919bab;--accent:#79a4ff;--accent-text:#93b6ff;--accent-soft:#79a4ff21;--accent-strong:#2f62e6;--on-accent:#fff;--brand-2:#2dd4bf;--s1:#79a4ff;--s2:#f08a4b;--s3:#3fc48a;--s4:#e3ad45;--s5:#ea7db0;--good:#4cc98f;--good-soft:#4cc98f1f;--good-line:#4cc98f59;--critical:#f47c7c;--critical-soft:#f47c7c1f;--critical-line:#f47c7c61;--warning:#e8b34f;--warning-soft:#e8b34f1f;--warning-line:#e8b34f61;--info:#93b6ff;--info-soft:#79a4ff1f;--info-line:#79a4ff5c;--grid:#232b39;--code-bg:#0d1118;--code-kw:#c8a6ff;--code-str:#9fd78c;--code-cm:#8e97a6;--code-ln:#808a9b;--code-hl:#79a4ff21;--shadow-sm:none;--shadow:0 1px 0 #ffffff05;--shadow-lg:0 22px 60px #0000008c;--overlay:#04060aa8;--hover:#ffffff06;--glow:radial-gradient(900px 420px at 85% -10%, #79a4ff12, transparent 60%)}:root{--radius:12px;--radius-sm:8px;--mono:"JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;--sans:"Inter", system-ui, -apple-system, "Segoe UI", sans-serif;--sidebar-w:252px;--page-w:1200px;--page-wide:1480px;--read-w:72ch}*{box-sizing:border-box}html,body{background:var(--glow), var(--bg);color:var(--text);font-family:var(--sans);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;background-attachment:fixed;margin:0;font-size:14.5px;line-height:1.55}body{transition:background-color .2s,color .2s}a{color:var(--accent-text);text-decoration:none}a:hover{text-underline-offset:2px;text-decoration:underline}code,pre,.mono{font-family:var(--mono);font-variant-ligatures:none;font-feature-settings:"liga" 0, "calt" 0;font-size:12.5px}:not(pre)>code{background:var(--panel-3);color:var(--text);border-radius:5px;padding:1px 5px;font-size:12px}button{font:inherit}::selection{background:var(--accent-soft)}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}h1{letter-spacing:-.02em;margin:0;font-size:28px;font-weight:700;line-height:1.2}h2{letter-spacing:-.01em;margin:0 0 12px;font-size:16px;font-weight:650}h3{color:var(--text);margin:0 0 8px;font-size:14px;font-weight:650}h4,.h-sm{color:var(--text);margin:8px 0 4px;font-size:13px;font-weight:650}.h-md{color:var(--text);margin:0;font-size:15px;font-weight:650}p{margin:0 0 10px}.lede{color:var(--text-2);max-width:var(--read-w);margin:10px 0 0;font-size:15.5px;line-height:1.6}.muted{color:var(--muted)}.small{font-size:12.5px}.eyebrow{color:var(--accent-text);letter-spacing:.1em;text-transform:uppercase;margin-bottom:8px;font-size:11.5px;font-weight:650}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;position:absolute!important}.break{overflow-wrap:anywhere}.shell{grid-template-columns:var(--sidebar-w) minmax(0, 1fr);min-height:100vh;display:grid}.sidebar{border-right:1px solid var(--border);background:var(--bg-2);flex-direction:column;gap:2px;height:100vh;padding:16px 12px 14px;display:flex;position:sticky;top:0;overflow-y:auto}.brand{color:var(--text);cursor:pointer;text-align:left;background:0 0;border:0;align-items:center;gap:10px;padding:4px 10px 16px;text-decoration:none;display:flex}.brand-mark{flex:none;width:30px;height:30px}.brand-name{letter-spacing:.06em;font-size:14px;font-weight:700}.brand-sub{color:var(--muted);font-size:11.5px}.nav-group-label{color:var(--muted);letter-spacing:.09em;text-transform:uppercase;padding:16px 10px 6px;font-size:11px;font-weight:650}.nav-group-label:first-child{padding-top:2px}.nav-list{gap:1px;display:grid}.nav-item{color:var(--text-2);cursor:pointer;text-align:left;background:0 0;border:0;border-radius:8px;align-items:center;gap:10px;width:100%;padding:7px 10px;font-size:13.5px;transition:background .15s,color .15s;display:flex}.nav-item:hover{background:var(--hover);color:var(--text)}.nav-item.active{background:var(--accent-soft);color:var(--text);font-weight:550}.nav-item.active svg{color:var(--accent)}.nav-item svg{width:16px;height:16px;color:var(--muted);flex:none}.nav-count{margin-left:auto;padding:0 7px}.sidebar-foot{border-top:1px solid var(--border);color:var(--muted);gap:8px;margin-top:auto;padding:12px 10px 0;font-size:12px;display:grid}.engine-status{color:var(--text-2);gap:5px;font-size:12px;display:grid}.status-dot{vertical-align:1px;border-radius:50%;width:7px;height:7px;margin-right:7px;display:inline-block}.skip-link{z-index:100;background:var(--accent-strong);color:var(--on-accent);border-radius:8px;padding:8px 14px;transition:top .15s;position:absolute;top:-48px;left:12px}.skip-link:focus{top:12px}.content-col{flex-direction:column;min-width:0;min-height:100vh;display:flex}.appbar{z-index:30;border-bottom:1px solid var(--border);background:color-mix(in srgb, var(--bg) 86%, transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);align-items:center;gap:12px;padding:10px 28px;display:flex;position:sticky;top:0}.crumb{color:var(--muted);white-space:nowrap;align-items:center;gap:6px;min-width:0;font-size:13px;display:flex}.crumb svg{flex:none;width:14px;height:14px}.crumb b{color:var(--text);white-space:nowrap;text-overflow:ellipsis;font-weight:600;overflow:hidden}.appbar-actions{align-items:center;gap:6px;margin-left:auto;display:flex}.topbar,.mobile-sheet{display:none}.main{flex:1;min-width:0;padding:28px 28px 56px}.main:focus{outline:none}.page{max-width:var(--page-w);margin:0 auto}.page.wide{max-width:var(--page-wide)}.page-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px 24px;margin-bottom:22px;display:flex}.page-head>div:first-child{flex:520px;min-width:0}.page-foot{color:var(--muted);max-width:var(--read-w);margin-top:40px;font-size:12.5px}.site-footer{border-top:1px solid var(--border);background:var(--bg-2);padding:28px 28px 22px}.footer-inner{max-width:var(--page-wide);grid-template-columns:minmax(220px,1.4fr) repeat(3,minmax(140px,1fr));gap:24px 32px;margin:0 auto;display:grid}.footer-brand p{color:var(--muted);max-width:44ch;margin:8px 0 0;font-size:12.5px}.footer-col h2{text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin-bottom:10px;font-size:12px}.footer-col ul{gap:6px;margin:0;padding:0;list-style:none;display:grid}.footer-col button,.footer-col a{color:var(--text-2);cursor:pointer;text-align:left;background:0 0;border:0;padding:0;font-size:13px}.footer-col button:hover,.footer-col a:hover{color:var(--text);text-decoration:underline}.footer-bottom{max-width:var(--page-wide);border-top:1px solid var(--border);color:var(--muted);flex-wrap:wrap;justify-content:space-between;gap:8px 20px;margin:22px auto 0;padding-top:16px;font-size:12.5px;display:flex}.footer-bottom a{color:var(--text-2);font-weight:550}.grid{gap:16px;display:grid}.cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}.span-2{grid-column:span 2}.split{grid-template-columns:minmax(0,1fr) minmax(300px,380px);align-items:start;gap:20px;display:grid}.split>aside{position:sticky;top:72px}.stack{grid-template-columns:minmax(0,1fr);gap:16px;display:grid}.card{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);min-width:0;box-shadow:var(--shadow);padding:18px 20px}.card.flush{padding:0;overflow:hidden}.card.soft{background:var(--panel-2);box-shadow:none}.card-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;display:flex}.card-head h2{margin:0}.section-h{letter-spacing:-.015em;margin:0 0 14px;font-size:19px;font-weight:700}.stat{padding:16px 18px}.stat .label{color:var(--muted);font-size:12.5px}.stat .value{letter-spacing:-.02em;font-variant-numeric:tabular-nums;margin-top:2px;font-size:26px;font-weight:700}.stat .hint{color:var(--text-2);margin-top:2px;font-size:12px}.btn{border:1px solid var(--border-strong);background:var(--panel);color:var(--text);border-radius:var(--radius-sm);cursor:pointer;white-space:nowrap;min-height:36px;box-shadow:var(--shadow-sm);justify-content:center;align-items:center;gap:8px;padding:7px 14px;font-size:13.5px;font-weight:550;transition:background .15s,border-color .15s,box-shadow .15s,transform 50ms;display:inline-flex}.btn:hover{background:var(--panel-2);border-color:var(--border-strong)}.btn:active{transform:translateY(1px)}.btn.primary{background:var(--accent-strong);border-color:var(--accent-strong);color:var(--on-accent)}.btn.primary:hover{filter:brightness(1.07)}.btn.danger{color:var(--critical);border-color:var(--critical-line)}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.btn svg{width:15px;height:15px}.btn.sm{min-height:30px;padding:4px 10px;font-size:12.5px}.btn.lg{min-height:44px;padding:10px 18px;font-size:15px}.btn.ghost{color:var(--text-2);box-shadow:none;background:0 0;border-style:dashed}.btn.ghost:hover{color:var(--text)}.btn.quiet{box-shadow:none;color:var(--text-2);background:0 0;border-color:#0000}.btn.quiet:hover{background:var(--hover);color:var(--text)}.btn.selected{border-color:var(--accent);background:var(--accent-soft)}.icon-btn{width:34px;height:34px;color:var(--text-2);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:8px;flex:none;place-items:center;display:inline-grid}.icon-btn:hover{background:var(--hover);color:var(--text);border-color:var(--border)}.icon-btn svg{width:16px;height:16px}.link-btn{color:var(--accent-text);cursor:pointer;font:inherit;text-align:left;background:0 0;border:0;padding:0}.link-btn:hover{text-decoration:underline}.field{gap:6px;display:grid}.field label,.field .label{color:var(--text-2);font-size:12.5px;font-weight:550}.help{color:var(--muted);font-size:12px}select,input[type=number],input[type=text],input[type=search],textarea{background:var(--panel);border:1px solid var(--border-strong);color:var(--text);border-radius:var(--radius-sm);font:inherit;width:100%;min-width:0;min-height:36px;padding:7px 10px;font-size:13.5px}textarea{resize:vertical;line-height:1.5}textarea.mono,input.mono,.editor textarea{font-family:var(--mono);font-variant-ligatures:none;font-feature-settings:"liga" 0, "calt" 0;font-size:12.5px}select:focus,input:focus,textarea:focus{outline:2px solid var(--accent);outline-offset:0;border-color:var(--accent)}input[aria-invalid=true],textarea[aria-invalid=true]{border-color:var(--critical)}.field-error{color:var(--critical);margin-top:4px;font-size:12.5px}.check{cursor:pointer;align-items:center;gap:8px;font-size:13.5px;display:inline-flex}.check input{accent-color:var(--accent);flex:none;width:16px;height:16px}.form-row{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));align-items:end;gap:14px;display:grid}.form-actions{flex-wrap:wrap;align-items:center;gap:14px;margin-top:14px;display:flex}.form-actions .muted{flex:260px}.tabs{border-bottom:1px solid var(--border);gap:2px;margin-bottom:16px;display:flex;overflow-x:auto}.tab{color:var(--muted);cursor:pointer;white-space:nowrap;background:0 0;border:0;border-bottom:2px solid #0000;margin-bottom:-1px;padding:10px 14px;font-size:13.5px;font-weight:550}.tab:hover{color:var(--text)}.tab.active{color:var(--text);border-bottom-color:var(--accent)}.seg{border:1px solid var(--border-strong);background:var(--panel);border-radius:9px;flex-wrap:wrap;display:inline-flex;overflow:hidden}.seg button{color:var(--text-2);cursor:pointer;background:0 0;border:0;min-height:32px;padding:6px 12px;font-size:12.5px;font-weight:550}.seg button+button{border-left:1px solid var(--border)}.seg button.active{background:var(--accent-soft);color:var(--text)}.mode-switch{background:var(--panel-3);border-radius:11px;gap:3px;padding:3px;display:inline-flex}.mode-switch button{color:var(--text-2);cursor:pointer;background:0 0;border:0;border-radius:8px;align-items:center;gap:8px;min-height:34px;padding:7px 14px;font-size:13px;font-weight:600;display:inline-flex}.mode-switch button[aria-pressed=true]{background:var(--panel);color:var(--text);box-shadow:var(--shadow)}.mode-switch svg{width:15px;height:15px}.table-wrap{max-width:100%;overflow:auto}table{border-collapse:collapse;width:100%;font-size:13px}th{text-align:left;color:var(--muted);border-bottom:1px solid var(--border);white-space:nowrap;background:var(--panel);z-index:1;padding:9px 12px;font-size:12px;font-weight:600;position:sticky;top:0}td{border-bottom:1px solid var(--grid);vertical-align:top;padding:8px 12px}tr:hover td{background:var(--hover)}td.num,th.num{text-align:right;font-variant-numeric:tabular-nums}.table-tools{border-bottom:1px solid var(--border);flex-wrap:wrap;gap:10px;padding:12px;display:flex}.table-tools select{width:auto}.table-tools input{flex:200px;width:auto}.badge{border:1px solid var(--border-strong);color:var(--text-2);white-space:nowrap;background:var(--panel);border-radius:999px;align-items:center;gap:5px;padding:2px 9px;font-size:11.5px;font-weight:600;display:inline-flex}.badge svg{width:12px;height:12px}.badge.allow,.badge.ok{color:var(--good);border-color:var(--good-line);background:var(--good-soft)}.badge.deny{color:var(--text-2);background:var(--panel-2)}.badge.crit{color:var(--critical);border-color:var(--critical-line);background:var(--critical-soft)}.badge.warn{color:var(--warning);border-color:var(--warning-line);background:var(--warning-soft)}.badge.info{color:var(--info);border-color:var(--info-line);background:var(--info-soft)}.chip{border-radius:6px;align-items:center;gap:4px;padding:2px 7px;font-size:11.5px;font-weight:600;display:inline-flex}.chip.allow{background:var(--good-soft);color:var(--good)}.chip.deny{background:var(--panel-3);color:var(--text-2)}.chip.bad{background:var(--critical-soft);color:var(--critical)}.chip.mixed{background:var(--warning-soft);color:var(--warning)}.chip.unknown{background:var(--info-soft);color:var(--info)}.chip-btn{cursor:pointer;font:inherit;border:1px solid #0000;font-size:11.5px;line-height:1.5}.chip-btn:hover{filter:brightness(1.1)}.chip-btn.sel{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.chip-count{font-family:var(--mono);margin-left:2px;font-size:10.5px}.swatch{vertical-align:-1px;border-radius:3px;width:10px;height:10px;margin-right:6px;display:inline-block}.callout{border:1px solid var(--info-line);background:var(--info-soft);border-radius:var(--radius-sm);color:var(--text-2);padding:12px 14px;font-size:13.5px}.callout.warn{border-color:var(--warning-line);background:var(--warning-soft)}.callout.crit{border-color:var(--critical-line);background:var(--critical-soft)}.callout.ok{border-color:var(--good-line);background:var(--good-soft)}.callout b{color:var(--text)}.empty{text-align:center;color:var(--muted);padding:36px 20px}.empty-state{text-align:center;justify-items:center;gap:10px;padding:40px 24px;display:grid}.empty-state svg.big{width:40px;height:40px;color:var(--accent)}.empty-state h2{margin:0;font-size:17px}.empty-state p{color:var(--text-2);max-width:56ch;margin:0}.empty-state .choice-row{justify-content:center}.spin{animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@keyframes rise{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@keyframes fadein{0%{opacity:0}to{opacity:1}}.code{background:var(--code-bg);border:1px solid var(--border);border-radius:var(--radius-sm);max-height:560px;overflow:auto}.code pre{margin:0;padding:12px 0}.code .ln{grid-template-columns:44px 1fr;display:grid}.code .ln>span:first-child{color:var(--code-ln);text-align:right;-webkit-user-select:none;user-select:none;padding-right:14px}.code .ln.hl{background:var(--code-hl)}.code .ln.hl>span:first-child{color:var(--accent-text)}.kw{color:var(--code-kw)}.str{color:var(--code-str)}.cm{color:var(--code-cm);font-style:italic}pre.snippet{background:var(--code-bg);border:1px solid var(--border);border-radius:var(--radius-sm);white-space:pre-wrap;word-break:break-word;color:var(--text);margin:0;padding:10px 12px;overflow:auto}.rule-lines{white-space:pre;overflow-x:auto}.diff{font-family:var(--mono);background:var(--code-bg);border:1px solid var(--border);border-radius:var(--radius-sm);max-height:420px;font-size:12px;overflow:auto}.diff div{white-space:pre;grid-template-columns:38px 38px 18px 1fr;display:grid}.diff span{padding:0 6px}.diff .n{color:var(--code-ln);text-align:right;-webkit-user-select:none;user-select:none}.diff .add{background:var(--good-soft)}.diff .del{background:var(--critical-soft)}.diff .add .m{color:var(--good)}.diff .del .m{color:var(--critical)}.progress{background:var(--panel-3);border-radius:999px;height:6px;overflow:hidden}.progress>div{background:var(--accent);height:100%;transition:width .2s}.meter{grid-template-columns:1fr auto;align-items:center;gap:4px 10px;font-size:12px;display:grid}.meter .bar{background:var(--panel-3);border-radius:999px;grid-column:1/-1;height:6px;overflow:hidden}.meter .bar>div{border-radius:999px;height:100%}.log{font-family:var(--mono);flex-direction:column-reverse;max-height:420px;font-size:12px;display:flex;overflow:auto}.log-row{border-bottom:1px solid var(--grid);grid-template-columns:48px 92px 64px 1fr auto;align-items:center;gap:10px;padding:5px 10px;animation:.25s fadein;display:grid}.log-row.hit{background:var(--critical-soft)}.finding{border:1px solid var(--border);border-left:3px solid var(--critical);border-radius:var(--radius-sm);background:var(--panel);gap:10px;padding:14px 16px;display:grid}.finding.deny{border-left-color:var(--warning)}.kv{grid-template-columns:150px 1fr;gap:6px 14px;margin:0;font-size:13.5px;display:grid}.kv dt{color:var(--muted)}.kv dd{overflow-wrap:anywhere;min-width:0;margin:0}.matrix td.cell{cursor:pointer;text-align:center}.matrix td.cell.sel{outline:2px solid var(--accent);outline-offset:-2px}.field-chips{flex-wrap:wrap;gap:4px;min-width:260px;display:flex}.legend-inline .chip{margin:0 2px}.evidence-card{align-self:start;position:sticky;top:72px}.chart-wrap{position:relative}.chart-svg{max-width:100%;height:auto;display:block;overflow:visible}.chart-svg:focus-visible,.chart-svg g:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.chart-svg g:focus{outline:none}.tooltip{pointer-events:none;background:var(--panel);color:var(--text);border:1px solid var(--border-strong);box-shadow:var(--shadow-lg);z-index:5;border-radius:8px;min-width:170px;padding:8px 10px;font-size:12px;position:absolute}.tooltip .row{justify-content:space-between;gap:14px;display:flex}.legend{color:var(--text-2);flex-wrap:wrap;gap:6px 16px;margin-bottom:8px;font-size:12.5px;display:flex}.legend-item{align-items:center;gap:6px;display:inline-flex}.pipeline{grid-template-columns:repeat(5,1fr);gap:10px;display:grid}.pipe-step{background:var(--panel-2);border:1px solid var(--border);border-radius:var(--radius-sm);padding:12px}.pipe-step .n{color:var(--accent-text);font-family:var(--mono);font-size:11px}.pipe-step .t{margin:2px 0 4px;font-weight:650}.pipe-step .d{color:var(--text-2);font-size:12.5px}.doc{max-width:860px;color:var(--text-2);overflow-wrap:anywhere;line-height:1.7}.doc h1,.doc h2,.doc h3{color:var(--text);margin:1.4em 0 .5em}.doc h1{font-size:24px}.doc h2{font-size:18px}.doc h3{font-size:15px}.doc table{margin:12px 0;font-size:12.5px;display:block;overflow-x:auto}.doc td,.doc th{border:1px solid var(--border);position:static}.doc pre{background:var(--code-bg);border:1px solid var(--border);border-radius:8px;padding:12px;overflow:auto}.doc pre code{background:0 0;padding:0}.doc img{border:1px solid var(--border);background:#fcfcfb;border-radius:8px;max-width:100%}.doc blockquote{border-left:3px solid var(--border-strong);margin:0;padding-left:14px}.doc a{text-underline-offset:2px;text-decoration:underline}.doc-list{gap:2px;display:grid}.doc-list button{text-align:left}.explorer{grid-template-columns:minmax(200px,250px) minmax(0,1fr);gap:20px;display:grid}.explorer-nav{align-self:start;position:sticky;top:72px}.explorer-nav .doc-list{padding:8px}.doc-select{padding:12px;display:none}.scroll-hint{display:none}.table-wrap:focus-visible,.doc table:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.plain-list{gap:6px;margin:0;padding:0;list-style:none;display:grid}.plain-list.ticks li{padding-left:20px;position:relative}.plain-list.ticks li:before{content:"";background:var(--accent);border-radius:2px;width:8px;height:8px;position:absolute;top:8px;left:2px}.toolbar{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.toolbar-group{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.choice-row{flex-wrap:wrap;gap:10px;display:flex}.head-actions{flex-wrap:wrap;gap:8px;display:flex}.privacy-note{color:var(--text-2);align-items:center;gap:8px;margin:-10px 0 18px;display:flex}.privacy-note svg{width:14px;height:14px;color:var(--good);flex:none}.notice{margin-bottom:14px;padding-right:44px;position:relative}.notice .icon-btn{position:absolute;top:4px;right:4px}.ws-bar{border:1px solid var(--border);border-radius:var(--radius);background:var(--panel-2);color:var(--text-2);flex-wrap:wrap;align-items:center;gap:10px 18px;margin-bottom:18px;padding:10px 14px;font-size:13px;display:flex}.ws-bar b{color:var(--text)}.ws-bar .sep{background:var(--border-strong);width:1px;height:18px}.ws-bar .ws-actions{flex-wrap:wrap;gap:8px;margin-left:auto;display:flex}.dot{vertical-align:1px;background:var(--muted);border-radius:50%;width:8px;height:8px;margin-right:6px;display:inline-block}.dot.ok{background:var(--good)}.dot.warn{background:var(--warning)}.dot.crit{background:var(--critical)}.sev{text-transform:uppercase;letter-spacing:.04em;align-items:center;gap:6px;font-size:12px;font-weight:650;display:inline-flex}.sev:before{content:"";background:currentColor;border-radius:2px;width:8px;height:8px}.sev.critical,.sev.high{color:var(--critical)}.sev.medium{color:var(--warning)}.sev.low{color:var(--info)}.sev.info{color:var(--muted)}.sentence{color:var(--text);font-size:14.5px;line-height:1.6}.req{font-family:var(--mono);color:var(--text-2);overflow-wrap:anywhere;font-size:12px}.verdict-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.home{gap:44px;display:grid}.hero{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);align-items:center;gap:40px;padding:16px 0 4px;display:grid}.hero h1{letter-spacing:-.03em;max-width:680px;font-size:42px;line-height:1.08}.hero h1 .accent{background:linear-gradient(90deg, var(--accent), var(--brand-2));color:#0000;-webkit-background-clip:text;background-clip:text}.hero .lede{margin-top:16px;font-size:16.5px}.hero-cta{flex-wrap:wrap;gap:12px;margin:24px 0 12px;display:flex}.hero-visual{gap:14px;animation:.6s both rise;display:grid}.hv-card{background:var(--panel);border:1px solid var(--border);box-shadow:var(--shadow-lg);border-radius:14px;gap:8px;padding:14px 16px;display:grid}.hv-card.dim{opacity:.8;box-shadow:var(--shadow);animation:.6s .15s both rise;transform:translate(28px)scale(.97)}.hv-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;font-size:12.5px;display:flex}.hv-row .mono{color:var(--text-2);overflow-wrap:anywhere;font-size:11.5px}.hv-who{font-weight:650}.hv-label{color:var(--muted)}.hv-foot{color:var(--critical);border-top:1px solid var(--border);padding-top:8px;font-size:12px}.hv-foot.ok{color:var(--good)}.answers{grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;display:grid}.answer{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:16px}.answer .q{text-transform:uppercase;letter-spacing:.08em;color:var(--accent-text);margin-bottom:6px;font-size:11.5px;font-weight:650}.answer p{color:var(--text-2);margin:0;font-size:13.5px}.tool-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px;display:grid}.tool-grid.featured{grid-template-columns:minmax(0,1.15fr) repeat(2,minmax(0,1fr))}.tool-grid.featured .tool-card:first-child{background:linear-gradient(160deg, var(--accent-soft), var(--panel) 55%);border-color:var(--info-line);grid-row:span 2}.tool-grid.featured .tool-card:first-child h3{font-size:19px}.tool-grid.featured .tool-card:first-child p{font-size:14.5px}@media (width<=1100px){.tool-grid.featured{grid-template-columns:repeat(2,minmax(0,1fr))}.tool-grid.featured .tool-card:first-child{grid-area:auto/1/auto/-1}}@media (width<=560px){.tool-grid.featured{grid-template-columns:minmax(0,1fr)}}.tool-card{text-align:left;background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);color:var(--text);cursor:pointer;font:inherit;box-shadow:var(--shadow);align-content:start;gap:8px;padding:18px;transition:border-color .2s,transform .2s,box-shadow .2s;display:grid}.tool-card:hover{border-color:var(--accent);box-shadow:var(--shadow-lg);transform:translateY(-2px)}.tool-card .ti{background:var(--accent-soft);width:38px;height:38px;color:var(--accent);border-radius:10px;place-items:center;display:grid}.tool-card .ti svg{width:20px;height:20px}.tool-card h3{margin:4px 0 0;font-size:15px}.tool-card p{color:var(--text-2);margin:0;font-size:13.5px}.tool-card .for{color:var(--muted);font-size:12px}.how-steps{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:0;padding:0;list-style:none;display:grid}.how-steps li{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);align-content:start;gap:6px;padding:16px;display:grid}.how-steps .n{background:var(--accent-soft);width:26px;height:26px;color:var(--accent-text);font-family:var(--mono);border-radius:50%;place-items:center;font-size:12px;font-weight:700;display:grid}.how-steps li>span:last-child{color:var(--text-2);font-size:13.5px}.limits{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.limits .card h3{align-items:center;gap:8px;display:flex}.limits .card h3 svg{width:17px;height:17px;color:var(--accent)}.limits .card p,.limits .card li{color:var(--text-2);font-size:13.5px}.guided{padding:0;overflow:hidden}.guided-head{border-bottom:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;padding:18px 20px;display:flex}.guided-head h2{margin:0;font-size:18px}.mini-steps{flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none;display:flex}.mini-steps li{border:1px solid var(--border-strong);color:var(--muted);border-radius:999px;padding:3px 10px;font-size:11.5px}.mini-steps li.current{color:var(--text);border-color:var(--accent);background:var(--accent-soft)}.mini-steps li.done{color:var(--good);border-color:var(--good-line)}.guided-body{grid-template-columns:minmax(0,1.45fr) minmax(0,1fr);display:grid}.guided-code{border-right:1px solid var(--border);min-width:0;padding:16px}.guided-code .code{max-height:380px}.guided-text{align-content:start;justify-items:start;gap:12px;padding:18px 20px;animation:.35s both rise;display:grid}.guided-text>.mini-finding,.guided-text>.callout{justify-self:stretch}.guided-text p{color:var(--text-2);margin:0}.mini-finding{border:1px solid var(--critical-line);background:var(--critical-soft);border-radius:10px;gap:8px;padding:12px 14px;animation:.35s both rise;display:grid}.mini-finding.ok{border-color:var(--good-line);background:var(--good-soft)}.mini-finding p{color:var(--text)!important}.mini-finding dt,.result-banner .muted{color:var(--text-2)}.paths{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.path-card{text-align:left;background:var(--panel);border:1px solid var(--border);color:var(--text);cursor:pointer;font:inherit;box-shadow:var(--shadow);border-radius:14px;grid-template-columns:auto 1fr auto;align-items:center;gap:16px;padding:20px;transition:border-color .2s,transform .2s;display:grid}.path-card:hover{border-color:var(--border-strong);transform:translateY(-2px)}.path-card.primary{border-color:var(--info-line);background:linear-gradient(135deg, var(--accent-soft), var(--panel) 60%)}.path-card>svg{width:26px;height:26px;color:var(--accent)}.path-card>svg:last-child{width:18px;height:18px;color:var(--muted)}.path-card h2{margin:0 0 4px;font-size:17px}.path-card p{color:var(--text-2);margin:0;font-size:13.5px}.stepper{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:0 0 18px;padding:0;scroll-margin-top:72px;list-style:none;display:grid}.stepper button{text-align:left;background:var(--panel);border:1px solid var(--border);width:100%;color:var(--text-2);cursor:pointer;font:inherit;border-radius:10px;align-items:center;gap:10px;min-height:52px;padding:10px 12px;transition:border-color .2s,background .2s;display:flex}.stepper button:disabled{cursor:not-allowed;opacity:.55}.stepper li.current button{border-color:var(--accent);background:var(--accent-soft);color:var(--text)}.stepper li.done button{color:var(--text)}.step-num{background:var(--panel-3);width:26px;height:26px;font-size:12px;font-family:var(--mono);border-radius:50%;flex:none;place-items:center;display:grid}.step-num svg{width:14px;height:14px}.stepper li.current .step-num{background:var(--accent-strong);color:var(--on-accent)}.stepper li.done .step-num{background:var(--good-soft);color:var(--good)}.step-text{min-width:0;line-height:1.25;display:grid}.step-text b{font-size:13.5px;font-weight:650}.step-text span{color:var(--muted);font-size:11.5px}.step-panel{animation:.3s both rise}.step-body{grid-template-columns:minmax(0,1fr);gap:16px;display:grid}.step-intro h2{margin-bottom:4px;font-size:19px;font-weight:700}.step-intro p{max-width:var(--read-w);margin:0}.step-nav{border-top:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding-top:16px;display:flex}.step-nav .muted{flex:240px}.rules-grid{grid-template-columns:minmax(0,1.55fr) minmax(300px,1fr);align-items:start}.editor{background:var(--code-bg);border:1px solid var(--border-strong);border-radius:10px;grid-template-columns:48px minmax(0,1fr);height:520px;display:grid;overflow:hidden}.editor:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.editor .gutter{font-family:var(--mono);text-align:right;-webkit-user-select:none;user-select:none;border-right:1px solid var(--border);color:var(--code-ln);padding:10px 0;font-size:12.5px;line-height:20px;overflow:hidden}.editor .gutter div{height:20px;padding-right:10px}.editor .gutter .mark.error{color:var(--critical);background:var(--critical-soft)}.editor .gutter .mark.unsupported,.editor .gutter .mark.warning{color:var(--warning);background:var(--warning-soft)}.editor textarea{resize:none;height:100%;font-family:var(--mono);white-space:pre;tab-size:2;color:var(--text);box-shadow:none;background:0 0;border:0;border-radius:0;padding:10px 12px;font-size:12.5px;line-height:20px;overflow:auto}.editor textarea:focus{outline:none}.editor.short{height:300px}.diag-panel{max-height:520px;overflow:auto}.verdict{border:1px solid var(--border);border-radius:8px;align-items:flex-start;gap:10px;margin-bottom:12px;padding:10px 12px;display:flex}.verdict svg{flex:none;width:18px;height:18px;margin-top:1px}.verdict.ok{border-color:var(--good-line);background:var(--good-soft)}.verdict.ok svg{color:var(--good)}.verdict.warn{border-color:var(--warning-line);background:var(--warning-soft)}.verdict.warn svg{color:var(--warning)}.verdict.bad{border-color:var(--critical-line);background:var(--critical-soft)}.verdict.bad svg{color:var(--critical)}.diag-list{gap:10px;margin:0;padding:0;list-style:none;display:grid}.diag{grid-template-columns:auto minmax(0,1fr);align-items:start;gap:8px;font-size:13px;display:grid}.section-title{color:var(--text);align-items:center;gap:10px;margin:0 0 10px;font-size:15px;display:flex}.section-title .num{background:var(--accent-soft);width:24px;height:24px;color:var(--accent-text);font-size:12px;font-family:var(--mono);border-radius:50%;place-items:center;font-weight:700;display:grid}.section-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-top:4px;display:flex}.section-row .section-title{margin:0}.identity{border:0;gap:8px;margin:0;padding:0;display:grid}.identity legend{color:var(--text-2);margin-bottom:6px;padding:0;font-size:12.5px;font-weight:550}.users-table{border:1px solid var(--border);border-radius:8px}.users-table td{vertical-align:middle}.users-table select,.cell-input{min-width:110px}.collection{gap:12px;display:grid}.collection-head{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.collection-head .collapse{color:var(--text);align-items:center;gap:6px;display:flex}.collection-head h3{margin:0;font-size:15px}.collection-head .mono{overflow-wrap:anywhere;flex:1}.collapse svg{width:16px;height:16px;transition:transform .2s}.collapse svg.rot{transform:rotate(90deg)}.collection>p{margin:0}.access-table{gap:8px;display:grid}.access-row{border:1px solid var(--border);background:var(--panel-2);border-radius:10px;grid-template-columns:150px minmax(0,1fr);gap:12px;padding:12px;display:grid}.access-op{align-content:start;gap:2px;display:grid}.access-grants{justify-items:start;gap:8px;min-width:0;display:grid}.access-grants>*{max-width:100%}.nobody{color:var(--muted);align-items:center;gap:6px;font-size:13px;display:inline-flex}.nobody svg{width:13px;height:13px}.summary-line{width:100%}.grant{border:1px solid var(--border-strong);background:var(--panel);border-radius:8px;gap:6px;width:100%;padding:8px 10px;display:grid}.grant-head{align-items:center;gap:8px;display:flex}.grant-tag{text-transform:uppercase;letter-spacing:.08em;color:var(--accent-text);white-space:nowrap;font-size:11px;font-weight:650}.note-input{flex:1;color:var(--text-2)!important;background:0 0!important;border-color:#0000!important;min-height:30px!important;padding:4px 6px!important;font-size:13px!important}.note-input:hover,.note-input:focus{border-color:var(--border-strong)!important}.cond{color:var(--text-2);border-top:1px dashed var(--border);flex-wrap:wrap;align-items:center;gap:6px;padding:4px 0;font-size:13px;display:flex}.cond:first-of-type{border-top:0}.cond .and{color:var(--muted);letter-spacing:.08em;font-size:10.5px;font-weight:700}.cond-label{color:var(--text)}.cond.everyone{color:var(--warning)}.cond.everyone svg{width:13px;height:13px}.inline-input{width:130px!important;min-height:30px!important;padding:3px 7px!important;font-size:12.5px!important}.inline-input.wide{width:220px!important}.inline-input.narrow{width:80px!important}.inline-select{max-width:100%;width:auto!important;min-height:30px!important;padding:3px 7px!important;font-size:12.5px!important}.add-cond{justify-self:start;max-width:100%;width:auto!important;color:var(--accent-text)!important;border-style:dashed!important;min-height:30px!important;padding:4px 8px!important;font-size:12.5px!important}.role-picks{flex-wrap:wrap;gap:10px;display:inline-flex}.parent-cond,.parent-inner{flex-wrap:wrap;align-items:center;gap:6px;display:inline-flex}.docs{gap:8px;display:grid}.doc-row{grid-template-columns:minmax(160px,260px) minmax(0,1fr) auto;align-items:start;gap:8px;display:grid}.doc-row .json-field textarea{min-height:38px}.advanced summary{cursor:pointer;color:var(--text-2);font-size:13.5px;font-weight:550}.advanced summary:hover{color:var(--text)}.adv-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.probe-table td{padding:4px 8px}.issue-list{gap:4px;margin:6px 0 0;padding-left:0;font-size:13px;list-style:none;display:grid}.issue-list li{align-items:flex-start;gap:6px;display:flex}.issue-list li svg{flex:none;width:13px;height:13px;margin-top:3px}.issue-list li.error{color:var(--critical)}.issue-list li.warning{color:var(--warning)}.check-card h3{margin-bottom:6px}.check-card p{margin:0 0 4px}.ok-ico{width:14px;height:14px;color:var(--good);vertical-align:-2px}.warn-ico{width:14px;height:14px;color:var(--warning);vertical-align:-2px}.big-num{letter-spacing:-.02em;font-size:26px;font-weight:700;display:block}.run-progress{gap:10px;display:grid}.result-banner{border-radius:var(--radius);border:1px solid var(--border);align-items:flex-start;gap:14px;padding:16px 18px;animation:.35s both rise;display:flex}.result-banner svg{flex:none;width:24px;height:24px}.result-banner h2{margin:0 0 4px;font-size:17px}.result-banner p{color:var(--text-2);margin:0}.result-banner.crit{border-color:var(--critical-line);background:var(--critical-soft)}.result-banner.crit svg{color:var(--critical)}.result-banner.warn{border-color:var(--warning-line);background:var(--warning-soft)}.result-banner.warn svg{color:var(--warning)}.result-banner.ok{border-color:var(--good-line);background:var(--good-soft)}.result-banner.ok svg{color:var(--good)}.result-banner.info{border-color:var(--info-line);background:var(--info-soft)}.result-banner.info svg{color:var(--info)}.summary-cards .stat.good .value{color:var(--good)}.summary-cards .stat.crit .value{color:var(--critical)}.summary-cards .stat.info .value{color:var(--info)}.findings{grid-template-columns:minmax(0,1fr);gap:12px;display:grid}.finding-card{border:1px solid var(--border);border-left:4px solid var(--critical);background:var(--panel);box-shadow:var(--shadow);border-radius:10px;gap:10px;padding:14px 16px;animation:.3s both rise;display:grid}.finding-card.warn{border-left-color:var(--warning)}.finding-card.info{border-left-color:var(--info)}.finding-card.ok{border-left-color:var(--good)}.finding-card.low{border-left-color:var(--info)}.finding-card h3{margin:6px 0 0;font-size:15px}.finding-badges{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.finding-badges>*{overflow-wrap:anywhere;min-width:0}.finding-card,.card{min-width:0}.finding-card h3,.finding-card p{overflow-wrap:anywhere}.finding-actions{flex-wrap:wrap;gap:8px;display:flex}.tv{font-family:var(--mono);color:var(--muted);font-size:11px}.tv.yes{color:var(--good)}.req-cell{overflow-wrap:anywhere;max-width:460px}.export-card{gap:4px;display:grid}.export-card h2{margin-bottom:4px}.export-row{flex-wrap:wrap;align-items:center;gap:10px;margin:8px 0 4px;display:flex}.btn-col{flex-wrap:wrap;gap:8px;display:flex}.guide-doc{max-width:920px;padding:8px 32px 28px}.legal-doc{max-width:820px}.q-card{gap:14px;display:grid}.q-head{flex-wrap:wrap;align-items:baseline;gap:12px;display:flex}.q-head h3{margin:0;font-size:16px}.patterns{grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:8px;display:grid}.pattern{text-align:left;border:1px solid var(--border);background:var(--panel);cursor:pointer;color:var(--text);font:inherit;border-radius:10px;gap:4px;padding:10px 12px;transition:border-color .15s,background .15s;display:grid}.pattern:hover{border-color:var(--border-strong)}.pattern[aria-checked=true]{border-color:var(--accent);background:var(--accent-soft);box-shadow:0 0 0 1px var(--accent)}.pattern b{font-size:13.5px}.pattern span{color:var(--text-2);font-size:12.5px}.access-summary{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;display:grid}.access-summary div{background:var(--panel-2);color:var(--text-2);border-radius:8px;padding:8px 10px;font-size:12.5px}.access-summary b{color:var(--text);text-transform:uppercase;letter-spacing:.06em;font-size:11.5px;display:block}.q-question{gap:8px;display:grid}.q-question>.label{color:var(--text);font-size:13.5px;font-weight:600}.radio-row{flex-wrap:wrap;gap:8px;display:flex}.radio-row label{border:1px solid var(--border-strong);cursor:pointer;background:var(--panel);border-radius:8px;align-items:center;gap:8px;padding:6px 12px;font-size:13px;display:inline-flex}.radio-row label:has(input:checked){border-color:var(--accent);background:var(--accent-soft)}.radio-row input{accent-color:var(--accent)}.evidence-list{color:var(--text-2);font-size:12.5px}.people{grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:8px;display:grid}.person{border:1px solid var(--border);background:var(--panel);border-radius:10px;gap:2px;padding:10px 12px;font-size:13px;display:grid}.person b{font-size:13.5px}.person span{color:var(--muted);font-size:12px}.confirm-box{border:1px solid var(--warning-line);background:var(--warning-soft);border-radius:10px;padding:12px 14px}.pmatrix{border-collapse:separate;border-spacing:0}.pmatrix th,.pmatrix td{text-align:center;border-bottom:1px solid var(--grid);padding:6px}.pmatrix .pm-first{text-align:left;background:var(--panel);z-index:2;min-width:160px;color:var(--text);font-weight:600;position:sticky;left:0}.pmatrix thead tr:first-child th{color:var(--text);border-bottom:0;font-size:12.5px}.pcell{cursor:pointer;min-width:74px;font:inherit;border:1px solid #0000;border-radius:8px;place-items:center;gap:1px;padding:6px 8px;font-size:12px;font-weight:600;line-height:1.2;display:inline-grid}.pcell small{font-size:10.5px;font-weight:550}.pcell.all{background:var(--good-soft);color:var(--good)}.pcell.some{background:var(--warning-soft);color:var(--warning)}.pcell.none{background:var(--panel-2);color:var(--text-2)}.pcell.bad{background:var(--critical-soft);color:var(--critical);border-color:var(--critical-line)}.pcell.unknown{background:var(--info-soft);color:var(--info)}.pcell.na{color:var(--muted);cursor:default;background:0 0}.pcell[aria-pressed=true]{box-shadow:0 0 0 2px var(--accent)}.person-summary{gap:10px;display:grid}.person-summary .card{padding:14px 16px}.attempt{border-top:1px dashed var(--border);grid-template-columns:auto auto minmax(0,1fr);align-items:baseline;gap:8px;padding:6px 0;font-size:12.5px;display:grid}.attempt:first-child{border-top:0}.compare-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.lib-row-status{white-space:nowrap}.changed{background:var(--warning-soft)}.theme-toggle{border:1px solid var(--border-strong);background:var(--panel);border-radius:9px;display:inline-flex;overflow:hidden}.theme-toggle button{color:var(--text-2);cursor:pointer;background:0 0;border:0;place-items:center;width:32px;height:30px;display:grid}.theme-toggle button+button{border-left:1px solid var(--border)}.theme-toggle button[aria-pressed=true]{background:var(--accent-soft);color:var(--accent)}.theme-toggle svg{width:15px;height:15px}.popover{background:var(--panel);border:1px solid var(--border-strong);border-radius:var(--radius);width:min(380px,100vw - 24px);box-shadow:var(--shadow-lg);z-index:60;color:var(--text);padding:16px;animation:.15s both rise;position:absolute;top:calc(100% + 8px);right:0}.popover h2{font-size:15px}.popover p,.popover li{color:var(--text-2);font-size:13px}.pop-anchor{position:relative}.toast{z-index:90;background:var(--text);color:var(--bg);box-shadow:var(--shadow-lg);border-radius:10px;max-width:calc(100vw - 32px);padding:10px 16px;font-size:13.5px;animation:.2s both rise;position:fixed;bottom:18px;left:50%;transform:translate(-50%)}.tour-overlay{z-index:80;pointer-events:none;position:fixed;inset:0}.tour-blocker{z-index:80;background:0 0;position:fixed;inset:0}.tour-spot{z-index:81;box-shadow:0 0 0 4px var(--accent), 0 0 0 9999px var(--overlay);pointer-events:none;border-radius:10px;transition:top .25s,left .25s,width .25s,height .25s;position:fixed}.tour-pop{z-index:82;background:var(--panel);width:min(360px,100vw - 24px);color:var(--text);border:1px solid var(--border-strong);box-shadow:var(--shadow-lg);border-radius:14px;gap:10px;padding:16px 18px 14px;animation:.2s both rise;display:grid;position:fixed}.tour-pop h2{margin:0;font-size:16px}.tour-pop p{color:var(--text-2);margin:0;font-size:13.5px;line-height:1.55}.tour-foot{align-items:center;gap:8px;display:flex}.tour-foot .count{color:var(--muted);margin-right:auto;font-size:12px}.tour-progress{background:var(--panel-3);border-radius:999px;height:3px;overflow:hidden}.tour-progress>div{background:var(--accent);height:100%;transition:width .2s}.tour-close{position:absolute;top:8px;right:8px}.tour-banner{border:1px solid var(--info-line);background:var(--info-soft);border-radius:var(--radius);flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:18px;padding:10px 14px;font-size:13.5px;display:flex}.tour-banner svg{width:18px;height:18px;color:var(--accent)}.tour-banner .grow{color:var(--text-2);flex:260px}@media (width<=1200px){.cols-4,.cols-6,.cols-3{grid-template-columns:repeat(2,minmax(0,1fr))}.cols-3>.span-2{grid-column:1/-1}.pipeline{grid-template-columns:repeat(2,1fr)}.answers{grid-template-columns:repeat(3,minmax(0,1fr))}.split{grid-template-columns:minmax(0,1fr)}.split>aside{position:static}}@media (width<=1100px){.hero{grid-template-columns:minmax(0,1fr)}.hero-visual{max-width:560px}.how-steps,.limits{grid-template-columns:repeat(2,minmax(0,1fr))}.rules-grid,.guided-body{grid-template-columns:minmax(0,1fr)}.guided-code{border-right:0;border-bottom:1px solid var(--border)}.footer-inner{grid-template-columns:repeat(2,minmax(0,1fr))}.compare-grid{grid-template-columns:minmax(0,1fr)}}@media (width<=860px){.shell{grid-template-columns:minmax(0,1fr)}.sidebar,.appbar{display:none}.topbar{z-index:30;background:color-mix(in srgb, var(--bg-2) 92%, transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:8px;padding:8px 12px;display:flex;position:sticky;top:0}.topbar .brand{padding:0}.topbar .brand-sub{display:none}.topbar-actions{align-items:center;gap:6px;display:flex}.menu-btn span{text-overflow:ellipsis;max-width:120px;overflow:hidden}.mobile-sheet{z-index:29;background:var(--bg-2);border-bottom:1px solid var(--border);box-shadow:var(--shadow-lg);gap:12px;max-height:calc(100vh - 53px);padding:10px 12px 16px;display:grid;position:sticky;top:53px;overflow-y:auto}.mobile-sheet nav{gap:2px;display:grid}.mobile-sheet .engine-status{border-top:1px solid var(--border);padding:8px 10px 0}.main{padding:18px 16px 44px}h1{font-size:24px}.hero h1{font-size:30px}.cols-2,.cols-3{grid-template-columns:minmax(0,1fr)}.span-2{grid-column:auto}.kv{grid-template-columns:1fr;gap:2px 0}.kv dd{margin-bottom:6px}.log-row{grid-template-columns:40px 1fr auto}.log-row .hide-sm{display:none}.hv-card.dim{transform:none}.paths,.answers{grid-template-columns:minmax(0,1fr)}.stepper{grid-template-columns:repeat(2,minmax(0,1fr))}.access-row{grid-template-columns:minmax(0,1fr)}.access-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.doc-row{grid-template-columns:minmax(0,1fr) auto}.doc-row .json-field{grid-area:2/1/auto/-1}.editor{height:420px}.guide-doc{padding:4px 16px 16px}.explorer{grid-template-columns:minmax(0,1fr)}.explorer-nav{position:static}.explorer-nav .doc-list{display:none}.doc-select{display:grid}.evidence-card{position:static}.scroll-hint{padding:8px 16px 0;display:block}.site-footer{padding:24px 16px 18px}.ws-bar .ws-actions{margin-left:0}.ws-bar .sep{display:none}}@media (width<=560px){.how-steps,.limits,.footer-inner{grid-template-columns:minmax(0,1fr)}.stepper .step-text span,.menu-btn span{display:none}.topbar .brand-name{letter-spacing:.03em;font-size:13px}.theme-toggle button{width:30px}.inline-input.wide{width:160px!important}.page-head .seg,.page-head .mode-switch{width:100%}}@media (width<=380px){.menu-btn span{display:none}.topbar .brand-name{letter-spacing:.02em;font-size:13px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}:root[data-motion=reduce] *,:root[data-motion=reduce] :before,:root[data-motion=reduce] :after{transition:none!important;animation:none!important}.tour-pop h2:focus{outline:none}
