@font-face{font-family:Hanken Grotesk Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(data:font/woff2;base64,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)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Hanken Grotesk Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/hanken-grotesk-vietnamese-wght-normal-CHiFlh_0.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Hanken Grotesk Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/hanken-grotesk-latin-ext-wght-normal-Dg-wlmqe.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Hanken Grotesk Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/hanken-grotesk-latin-wght-normal-CaVRRdDk.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(data:font/woff2;base64,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)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-cyrillic-wght-normal-D73BlboJ.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-greek-wght-normal-Bw9x6K1M.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-vietnamese-wght-normal-Bt-aOZkq.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-latin-ext-wght-normal-DBQx-q_a.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-latin-wght-normal-B9CIFXIH.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--font-sans:"Hanken Grotesk Variable", ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-display:"Hanken Grotesk Variable", ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-mono:"JetBrains Mono Variable", ui-monospace, "SF Mono", SFMono-Regular, Menlo, "Cascadia Code", Consolas, "Liberation Mono", monospace;--ink:#0c2418;--forest:#0f3a27;--mint:#d4f6dc;--mint-strong:#a7eeb8;--pop:#34d36b;--pop-ink:#07210f;--bg:#f5f7f3;--surface:#fff;--surface-2:#f9faf7;--surface-3:#edf1ea;--border:#e1e7dd;--border-strong:#c9d3c4;--text:#0c2418;--text-muted:#4a5a4f;--text-faint:#5f6e64;--accent:#0f3a27;--accent-hover:#0a2a1c;--accent-soft:#dcf6e2;--accent-text:#c8f5d3;--link:#11703f;--success:#15803d;--success-soft:#e3f6e8;--danger:#c62828;--danger-soft:#fcebea;--warning:#a15c07;--warning-soft:#fcf2df;--editor-bg:#fff;--editor-gutter:#f9faf7;--active-line:#11703f0d;--selection:#11703f2b;--match-bg:#11703f1f;--match-border:#11703f73;--search-match:#eab30847;--search-match-active:#eab30899;--syn-key:#6d28d9;--syn-string:#0f7b3f;--syn-number:#0550ae;--syn-literal:#b4540a;--syn-punct:#6b7568;--syn-keyword:#be185d;--syn-type:#0e7490;--syn-fn:#6d28d9;--diff-add-line:#16a34a1a;--diff-add-text:#16a34a47;--diff-del-line:#dc262617;--diff-del-text:#dc262642;--diff-changed-line:#eab3081a;--diff-changed-text:#eab3084d;--radius:14px;--radius-sm:8px;--radius-xs:4px;--shadow-sm:0 1px 2px #0c24180a;--shadow:0 1px 3px #0c241812, 0 1px 2px #0c24180a;--shadow-lg:0 18px 44px #0c241824, 0 2px 8px #0c24180f;--focus:0 0 0 3px #34d36b73;--ease:cubic-bezier(.22, 1, .36, 1);--gutter:16px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--ink:#e7f3ea;--forest:#0f3a27;--mint:#1b3a28;--mint-strong:#2c5c40;--pop:#34d36b;--pop-ink:#07210f;--bg:#07120c;--surface:#0c1a12;--surface-2:#0f1f16;--surface-3:#16291e;--border:#1d3427;--border-strong:#2b4a38;--text:#e7f0e9;--text-muted:#a3b8aa;--text-faint:#8aa294;--accent:#8ff0a8;--accent-hover:#b4f6c5;--accent-soft:#8ff0a81f;--accent-text:#06170d;--link:#8ff0a8;--success:#4ade80;--success-soft:#4ade801f;--danger:#f87171;--danger-soft:#f8717124;--warning:#fbbf24;--warning-soft:#fbbf241f;--editor-bg:#0a160f;--editor-gutter:#0a160f;--active-line:#8ff0a80f;--selection:#8ff0a838;--match-bg:#8ff0a829;--match-border:#8ff0a88c;--syn-key:#c4b5fd;--syn-string:#86efac;--syn-number:#7dd3fc;--syn-literal:#fbbf24;--syn-punct:#8a9a8f;--syn-keyword:#f9a8d4;--syn-type:#67e8f9;--syn-fn:#d8b4fe;--diff-add-line:#4ade8017;--diff-add-text:#4ade8042;--diff-del-line:#f8717117;--diff-del-text:#f8717147;--diff-changed-line:#fbbf2414;--diff-changed-text:#fbbf2440;--shadow-sm:none;--shadow:0 1px 2px #0006;--shadow-lg:0 18px 44px #0000008c;--focus:0 0 0 3px #8ff0a866;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}:root[data-theme=dark]{--ink:#e7f3ea;--forest:#0f3a27;--mint:#1b3a28;--mint-strong:#2c5c40;--pop:#34d36b;--pop-ink:#07210f;--bg:#07120c;--surface:#0c1a12;--surface-2:#0f1f16;--surface-3:#16291e;--border:#1d3427;--border-strong:#2b4a38;--text:#e7f0e9;--text-muted:#a3b8aa;--text-faint:#8aa294;--accent:#8ff0a8;--accent-hover:#b4f6c5;--accent-soft:#8ff0a81f;--accent-text:#06170d;--link:#8ff0a8;--success:#4ade80;--success-soft:#4ade801f;--danger:#f87171;--danger-soft:#f8717124;--warning:#fbbf24;--warning-soft:#fbbf241f;--editor-bg:#0a160f;--editor-gutter:#0a160f;--active-line:#8ff0a80f;--selection:#8ff0a838;--match-bg:#8ff0a829;--match-border:#8ff0a88c;--syn-key:#c4b5fd;--syn-string:#86efac;--syn-number:#7dd3fc;--syn-literal:#fbbf24;--syn-punct:#8a9a8f;--syn-keyword:#f9a8d4;--syn-type:#67e8f9;--syn-fn:#d8b4fe;--diff-add-line:#4ade8017;--diff-add-text:#4ade8042;--diff-del-line:#f8717117;--diff-del-text:#f8717147;--diff-changed-line:#fbbf2414;--diff-changed-text:#fbbf2440;--shadow-sm:none;--shadow:0 1px 2px #0006;--shadow-lg:0 18px 44px #0000008c;--focus:0 0 0 3px #8ff0a866;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%}body{font-family:var(--font-sans);color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;margin:0;font-size:15px;line-height:1.55;overflow-x:clip}img,video,canvas{max-width:100%;height:auto}select,input,textarea{max-width:100%}a{color:var(--accent);text-underline-offset:2px;text-decoration-thickness:1px}a:hover{color:var(--accent-hover)}code,kbd,pre{font-family:var(--font-mono);font-size:.9em}kbd{border:1px solid var(--border-strong);background:var(--surface);border-bottom-width:2px;border-radius:5px;padding:1px 6px;font-size:.8em;line-height:1.5;display:inline-block}h1,h2,h3{letter-spacing:-.01em;line-height:1.25}button,input,select{font:inherit;color:inherit}:focus-visible{box-shadow:var(--focus);outline:none}[hidden]{display:none!important}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;position:absolute!important}.muted{color:var(--text-muted)}.small{font-size:12px}.icon{flex:none;width:16px;height:16px}.skip-link{z-index:100;border-radius:var(--radius-sm);background:var(--accent);color:var(--accent-text);padding:8px 12px;font-weight:600;position:absolute;top:-48px;left:8px}.skip-link:focus{top:8px}.site-header{background:var(--surface);border-bottom:1px solid var(--border)}.header-inner{max-width:1600px;height:56px;padding:0 var(--gutter);align-items:center;gap:20px;margin:0 auto;display:flex}.brand{color:var(--text);white-space:nowrap;align-items:center;gap:10px;font-size:16px;font-weight:700;text-decoration:none;display:flex}.brand:hover{color:var(--text)}.logo-bg{fill:var(--accent)}:root[data-theme=dark] .logo-bg{fill:var(--forest)}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .logo-bg{fill:var(--forest)}}.theme-toggle .icon{display:none}.theme-toggle[data-mode=system] .i-system,.theme-toggle[data-mode=light] .i-light,.theme-toggle[data-mode=dark] .i-dark,.theme-toggle:not([data-mode]) .i-light{display:block}.site-footer{border-top:1px solid var(--border);background:var(--surface);margin-top:64px;font-size:14px}.footer-inner{max-width:1100px;padding:40px var(--gutter) 24px;grid-template-columns:2fr 1fr 1fr;gap:32px;margin:0 auto;display:grid}.footer-brand{align-items:flex-start;gap:12px;display:flex}.footer-brand p{color:var(--text-muted);margin:4px 0 0}.site-footer h2{text-transform:uppercase;letter-spacing:.06em;color:var(--text-faint);margin:0 0 10px;font-size:13px}.site-footer ul{gap:6px;margin:0;padding:0;list-style:none;display:grid}.site-footer a{color:var(--text-muted);text-decoration:none}.copyright{max-width:1100px;padding:16px var(--gutter) 32px;color:var(--text-faint);margin:0 auto;font-size:13px}.btn{border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface);height:32px;color:var(--text);white-space:nowrap;cursor:pointer;align-items:center;gap:6px;padding:0 12px;font-size:13px;font-weight:500;transition:background-color .12s,border-color .12s,color .12s;display:inline-flex}.btn:hover{background:var(--surface-3)}.btn:active{transform:translateY(.5px)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn.primary:hover{background:var(--accent-hover);border-color:var(--accent-hover)}.btn.ghost{color:var(--text-muted);background:0 0;border-color:#0000;padding:0 8px}.btn.ghost:hover:not(:disabled){background:var(--surface-3);color:var(--text)}.btn.sm{height:26px;font-size:12px}.icon-btn{border-radius:var(--radius-sm);width:32px;height:32px;color:var(--text-muted);cursor:pointer;background:0 0;border:1px solid #0000;flex:none;place-items:center;display:inline-grid}.icon-btn:hover:not(:disabled){background:var(--surface-3);color:var(--text)}.icon-btn:disabled{opacity:.4;cursor:not-allowed}.link{color:var(--accent);cursor:pointer;text-underline-offset:2px;background:0 0;border:0;padding:0;text-decoration:underline}.seg{background:var(--surface-3);border:1px solid var(--border);border-radius:9px;padding:2px;display:inline-flex}.seg-btn{height:28px;color:var(--text-muted);cursor:pointer;background:0 0;border:0;border-radius:7px;align-items:center;gap:6px;padding:0 12px;font-size:13px;font-weight:600;display:inline-flex}.seg-btn:hover{color:var(--text)}.seg-btn[aria-pressed=true]{background:var(--surface);color:var(--accent);box-shadow:var(--shadow)}.field{color:var(--text-muted);align-items:center;gap:8px;min-width:0;max-width:100%;font-size:13px;display:inline-flex}.field>span{white-space:nowrap}.field>select,.field>input{flex:0 auto;min-width:0}.panel-grid>*,.form-row>*{min-width:0}select,.text-input{border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface);height:32px;color:var(--text);padding:0 10px;font-size:13px}select{appearance:none;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%238a909c' stroke-width='2.5' stroke-linecap='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 8px center;background-repeat:no-repeat;padding-right:28px}select:disabled{opacity:.5;cursor:not-allowed}.text-input{width:100%;height:40px;font-size:14px}.check{color:var(--text-muted);cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap;align-items:center;gap:6px;font-size:13px;display:inline-flex}.check input{width:16px;height:16px;accent-color:var(--accent);cursor:pointer;margin:0}main{max-width:1600px;padding:0 var(--gutter);margin:0 auto}.hero{flex-wrap:wrap;align-items:baseline;gap:2px 16px;padding:20px 0 14px;display:flex}.hero h1{margin:0;font-size:clamp(22px,2.4vw,28px);font-weight:750}.hero .lead{color:var(--text-muted);margin:0;font-size:15px}.tool{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);height:clamp(520px,100dvh - 150px,1100px);box-shadow:var(--shadow-sm);flex-direction:column;display:flex;overflow:hidden}.toolbar{border-bottom:1px solid var(--border);background:var(--surface);flex-wrap:wrap;align-items:center;gap:8px 12px;padding:8px 10px;display:flex}.toolbar-gap{flex:1}.menu{position:relative}.menu-list{z-index:30;border:1px solid var(--border-strong);background:var(--surface);min-width:min(230px,100vw - 32px);box-shadow:var(--shadow-lg);border-radius:10px;padding:6px;display:grid;position:absolute;top:calc(100% + 6px);right:0}.menu-list button{text-align:left;cursor:pointer;background:0 0;border:0;border-radius:6px;padding:8px 10px;font-size:13px}.menu-list button:hover,.menu-list button:focus-visible{background:var(--surface-3);box-shadow:none}.menu-list hr{border:0;border-top:1px solid var(--border);width:100%;margin:4px 0}.workspace{--split:50%;grid-template-columns:minmax(0, var(--split)) 7px minmax(0, 1fr);flex:1;min-height:0;display:grid}.workspace.resizing{-webkit-user-select:none;user-select:none;cursor:col-resize}.pane{flex-direction:column;min-width:0;min-height:0;display:flex;position:relative}.pane-head{border-bottom:1px solid var(--border);background:var(--surface-2);flex:none;align-items:center;gap:8px;height:42px;padding:0 6px 0 12px;display:flex}.pane-title{letter-spacing:.02em;text-transform:uppercase;color:var(--text-muted);margin:0;font-size:13px;font-weight:600}.pane-actions{scrollbar-width:none;align-items:center;gap:2px;margin-left:auto;display:flex;overflow-x:auto}.pane-body{background:var(--editor-bg);flex:1;min-height:0;position:relative}.pane-body>.cm-editor,.fill>.cm-editor{height:100%}.fill{height:100%;min-height:0}#output-views,.view{height:100%}.splitter{cursor:col-resize;background:var(--border);touch-action:none;background-clip:content-box;padding:0 3px;position:relative}.splitter:after{content:"";background:var(--border-strong);opacity:0;border-radius:3px;width:3px;height:32px;transition:opacity .15s;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.splitter:hover,.splitter:focus-visible,.workspace.resizing .splitter{background-color:var(--accent)}.splitter:hover:after{opacity:1}.drop-overlay{z-index:10;border:2px dashed var(--accent);background:color-mix(in srgb, var(--accent-soft) 85%, transparent);color:var(--accent);pointer-events:none;border-radius:4px;place-items:center;font-weight:600;display:none;position:absolute;inset:42px 0 0}.drop-overlay div{justify-items:center;gap:8px;display:grid}.drop-overlay .icon{width:28px;height:28px}.pane-input.dragging .drop-overlay{display:grid}.tabs{gap:2px;height:100%;display:flex}.tabs [role=tab]{color:var(--text-muted);cursor:pointer;background:0 0;border:0;padding:0 12px;font-size:13px;font-weight:600;position:relative}.tabs [role=tab]:hover{color:var(--text)}.tabs [role=tab][aria-selected=true]{color:var(--accent)}.tabs [role=tab][aria-selected=true]:after{content:"";background:var(--accent);border-radius:2px;height:2px;position:absolute;bottom:-1px;left:8px;right:8px}.output-state{background:var(--editor-bg);place-items:center;padding:24px;display:grid;position:absolute;inset:0;overflow:auto}.state-card{text-align:center;width:100%;max-width:560px}.state-card h3{margin:12px 0 6px;font-size:18px}.state-card p{color:var(--text-muted);margin:0 0 12px}.state-icon{background:var(--accent-soft);width:52px;height:52px;color:var(--accent);font-family:var(--font-mono);border-radius:14px;place-items:center;font-size:18px;font-weight:700;display:inline-grid}.state-icon.err{background:var(--danger-soft);color:var(--danger);font-size:24px}.state-actions{flex-wrap:wrap;justify-content:center;gap:8px;margin-top:16px;display:flex}.state-card.error{text-align:left}.state-card.error .state-icon,.state-card.error h3{vertical-align:middle;display:inline-grid}.state-card.error h3{color:var(--danger);margin:0 0 0 10px}.state-card.error .err-msg{color:var(--text);margin:14px 0 4px;font-size:16px;font-weight:600}.state-card.error .state-actions{justify-content:flex-start}.err-loc{font-size:13px;font-family:var(--font-mono)}.err-excerpt{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-2);white-space:pre;margin:12px 0;padding:12px 14px;font-size:13px;line-height:1.6;overflow-x:auto}.err-excerpt .dim{color:var(--text-faint)}.err-excerpt mark{background:var(--danger-soft);color:var(--danger);outline:1px solid var(--danger);border-radius:2px}.err-excerpt .caret{color:var(--danger);font-weight:700}.err-hint{border-radius:var(--radius-sm);background:var(--warning-soft);margin:0;padding:10px 12px;font-size:14px;color:var(--text)!important}.statusbar{border-top:1px solid var(--border);background:var(--surface-2);height:32px;color:var(--text-muted);white-space:nowrap;flex:none;align-items:center;gap:10px;padding:0 10px;font-size:12px;display:flex;overflow:hidden}.badge{border-radius:99px;flex:none;align-items:center;gap:6px;padding:2px 8px;font-weight:600;display:inline-flex}.badge:before{content:"";background:currentColor;border-radius:50%;width:7px;height:7px}.badge.ok{color:var(--success);background:var(--success-soft)}.badge.err{color:var(--danger);background:var(--danger-soft)}.badge.neutral{color:var(--text-muted);background:var(--surface-3)}.status-msg,.status-warn{text-overflow:ellipsis;cursor:pointer;background:0 0;border:0;border-radius:4px;min-width:0;padding:2px 4px;font-size:12px;overflow:hidden}.status-msg{color:var(--danger)}.status-warn{color:var(--warning);flex:none}.status-msg:hover,.status-warn:hover{background:var(--surface-3)}.status-right{font-variant-numeric:tabular-nums;align-items:center;gap:14px;margin-left:auto;display:flex}.spinner{border:2px solid var(--border-strong);border-top-color:var(--accent);opacity:0;border-radius:50%;width:12px;height:12px;transition:opacity .2s;animation:.8s linear infinite spin}.tool.busy .spinner{opacity:1;transition-delay:.25s}@keyframes spin{to{transform:rotate(360deg)}}.cm-fold-marker{color:var(--text-faint);cursor:pointer;padding:0 3px;transition:transform .1s;display:inline-block}.cm-fold-marker.open{transform:rotate(90deg)}.view-tree{flex-direction:column;display:flex}.view-tree[hidden]{display:none}.tree-toolbar,.tree-pathbar{background:var(--surface);flex:none;align-items:center;gap:4px;padding:6px 8px;display:flex}.tree-toolbar{border-bottom:1px solid var(--border)}.tree-pathbar{border-top:1px solid var(--border);min-height:40px}.search-box{flex:1;min-width:0;max-width:320px;position:relative}.search-box .icon{color:var(--text-faint);position:absolute;top:50%;left:9px;transform:translateY(-50%)}.search-box input{border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface);width:100%;height:30px;padding:0 10px 0 30px;font-size:13px}#tree-search-info{font-variant-numeric:tabular-nums;min-width:56px}#tree-host{flex:1;position:relative}.tree{height:100%;font-family:var(--font-mono);contain:strict;outline:none;font-size:13px;overflow:auto}.tree:focus-visible{box-shadow:inset var(--focus)}.tree-spacer{width:max-content;min-width:100%;position:relative}.tree-inner{will-change:transform;min-width:100%;position:absolute;top:0;left:0}.tree-row{height:var(--tree-row-h,24px);white-space:pre;cursor:default;-webkit-user-select:none;user-select:none;align-items:center;padding-right:16px;display:flex}.tree-row:hover{background:var(--active-line)}.tree-row.match{background:var(--search-match)}.tree-row.match-active{background:var(--search-match-active)}.tree-row.selected{background:var(--selection)}.tree:focus .tree-row.selected{box-shadow:inset 2px 0 0 var(--accent)}.tree-caret{cursor:pointer;width:18px;height:18px;color:var(--text-faint);border-radius:4px;flex:none;place-items:center;margin-right:2px;display:inline-grid}.tree-caret:before{content:"";border-top:4px solid #0000;border-bottom:4px solid #0000;border-left:5px solid;width:0;height:0;transition:transform .1s}.tree-caret.open:before{transform:rotate(90deg)}.tree-caret.leaf{cursor:default}.tree-caret.leaf:before{display:none}.tree-caret:not(.leaf):hover{background:var(--surface-3);color:var(--text)}.tree-key{color:var(--syn-key)}.tree-index{color:var(--text-faint)}.tree-meta{color:var(--text-faint);cursor:pointer}.t-string{color:var(--syn-string)}.t-number{color:var(--syn-number)}.t-boolean,.t-null{color:var(--syn-literal);font-weight:600}.tree-loading{z-index:2;background:var(--editor-bg);color:var(--text-muted);place-items:center;display:grid;position:absolute;inset:0}.tree-path{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--text-muted);flex:1;font-size:12px;overflow:hidden}.view-stats{padding:16px;overflow:auto}.stats-grid{grid-template-columns:repeat(auto-fill,minmax(min(170px,100%),1fr));gap:10px;display:grid}.stat{border:1px solid var(--border);background:var(--surface);border-radius:10px;padding:12px 14px}.stat-label{color:var(--text-muted);font-size:12px}.stat-value{font-variant-numeric:tabular-nums;margin-top:2px;font-size:20px;font-weight:700}.stat-sub{color:var(--text-faint);font-size:12px}.stats-h{margin:22px 0 10px;font-size:14px}.stats-h .count{background:var(--warning-soft);color:var(--warning);border-radius:99px;margin-left:4px;padding:1px 7px;font-size:12px}.typebar{background:var(--surface-3);border-radius:99px;gap:2px;height:12px;display:flex;overflow:hidden}.typebar span{min-width:3px}.type-legend{grid-template-columns:repeat(auto-fill,minmax(min(150px,100%),1fr));gap:6px 16px;margin:12px 0 0;padding:0;font-size:13px;list-style:none;display:grid}.type-legend li{align-items:center;gap:8px;display:flex}.type-legend strong{font-variant-numeric:tabular-nums;margin-left:auto}.type-legend .muted{text-align:right;width:42px;font-size:12px}.dot{border-radius:3px;flex:none;width:9px;height:9px}.warn-list{gap:8px;margin:0;padding:0;font-size:13px;list-style:none;display:grid}.warn-list li{border-left:3px solid var(--warning);background:var(--warning-soft);border-radius:4px;padding:8px 10px}.warn-list .link{font-family:var(--font-mono);margin-right:6px;font-size:12px}.stats-empty{color:var(--text-muted);text-align:center;margin-top:40px}.toast{z-index:200;background:var(--text);max-width:min(560px,100vw - 32px);color:var(--bg);box-shadow:var(--shadow-lg);opacity:0;pointer-events:none;border-radius:10px;padding:10px 16px;font-size:14px;font-weight:500;transition:opacity .18s,transform .18s;position:fixed;bottom:24px;left:50%;transform:translate(-50%,20px)}.toast.show{opacity:1;transform:translate(-50%)}.toast[data-kind=error]{background:var(--danger);color:#fff}.dialog{border:1px solid var(--border-strong);background:var(--surface);width:min(520px,100vw - 32px);color:var(--text);box-shadow:var(--shadow-lg);border-radius:14px;padding:20px}.dialog::backdrop{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0a0c1280}.dialog-head{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.dialog-head h2{margin:0;font-size:18px}.dialog p{margin:0 0 12px;font-size:14px}.dialog-actions{justify-content:flex-end;gap:8px;margin-top:16px;display:flex}.form-error{color:var(--danger);margin:10px 0 0!important}.shortcuts{border-collapse:collapse;width:100%;font-size:14px}.shortcuts td{border-bottom:1px solid var(--border);padding:7px 0}.shortcuts td:first-child{white-space:nowrap;padding-right:16px}.shortcuts tr:last-child td{border-bottom:0}.plus{color:var(--text-faint);margin:0 3px}.ad-slot{border-radius:var(--radius-sm);background:var(--surface-2);margin:24px auto 0;display:block}.ad-banner{max-width:728px;min-height:90px}.ad-inline{min-height:250px}.content{max-width:900px;margin:48px auto 0}.content section{margin-top:48px}.content h2{margin:0 0 16px;font-size:24px}.content h3{margin:0 0 4px;font-size:16px}.content p{color:var(--text-muted)}.steps{counter-reset:step;grid-template-columns:repeat(auto-fit,minmax(min(200px,100%),1fr));gap:12px;margin:0;padding:0;list-style:none;display:grid}.steps li{counter-increment:step;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);padding:16px}.steps li:before{content:counter(step);background:var(--accent-soft);width:26px;height:26px;color:var(--accent);border-radius:50%;place-items:center;margin-bottom:10px;font-size:13px;font-weight:700;display:inline-grid}.steps p,.features p{margin:0;font-size:14px}.features{grid-template-columns:repeat(auto-fit,minmax(min(250px,100%),1fr));gap:12px;margin:0;padding:0;list-style:none;display:grid}.features li{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);padding:18px}.features .icon{width:22px;height:22px;color:var(--accent);margin-bottom:10px}.faq{gap:8px;display:grid}.faq details{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface)}.faq summary{cursor:pointer;justify-content:space-between;gap:12px;padding:14px 16px;font-weight:600;list-style:none;display:flex}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:"+";color:var(--text-faint);font-size:20px;font-weight:400;line-height:1}.faq details[open] summary:after{content:"−"}.faq details p{margin:0;padding:0 16px 16px}.table-wrap{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);overflow-x:auto}.table-wrap table{border-collapse:collapse;width:100%;font-size:14px}.table-wrap th,.table-wrap td{border-bottom:1px solid var(--border);text-align:left;vertical-align:top;padding:10px 14px}.table-wrap th{background:var(--surface-2);color:var(--text-muted);font-size:13px}.table-wrap tr:last-child td{border-bottom:0}.table-wrap td code{white-space:nowrap}.tool-links{grid-template-columns:repeat(auto-fit,minmax(min(240px,100%),1fr));gap:12px;margin:0;padding:0;list-style:none;display:grid}.tool-links a{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);gap:4px;height:100%;padding:16px;text-decoration:none;transition:border-color .15s;display:grid}.tool-links a:hover{border-color:var(--accent)}.tool-links span{color:var(--text-muted);font-size:14px}.prose-page p,.prose-page li{color:var(--text-muted)}@media (max-width:1100px){.hide-sm{display:none!important}}@media (max-width:900px){.tool{height:auto}.workspace{grid-template-rows:minmax(260px,42dvh) minmax(340px,60dvh);grid-template-columns:minmax(0,1fr)}.splitter{display:none}.pane-output{border-top:1px solid var(--border)}.hero{padding-top:16px}.hero .lead{font-size:14px}.footer-inner{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1/-1}}@media (max-width:640px){:root{--gutter:12px}body{font-size:14px}.header-inner{gap:8px}.brand span{display:none}.tool{margin:0 calc(var(--gutter) * -1);border-left:0;border-right:0;border-radius:0}.toolbar{gap:8px}.toolbar-gap{display:none}:is(.toolbar-gap:has(+.btn+.btn),.toolbar-gap:has(+.btn+.menu)){flex-basis:100%;height:0;margin-top:-6px;display:block}.toolbar .menu{margin-left:auto}.toolbar .field>span{font-size:12px}.pane-actions .lbl{display:none}.pane-actions .btn.ghost,.toolbar .btn{padding:0 10px}.hide-xs{display:none!important}.status-msg{flex:1}.content h2{font-size:20px}}.site-nav{align-items:center;gap:2px;margin-left:12px;display:flex}.nav-menu{position:relative}.nav-menu>summary,.nav-link{border-radius:var(--radius-sm);color:var(--text-muted);white-space:nowrap;cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:4px;padding:6px 10px;font-size:14px;font-weight:500;text-decoration:none;list-style:none;display:inline-flex}.nav-menu>summary::-webkit-details-marker{display:none}.nav-menu>summary:hover,.nav-link:hover,.nav-menu[open]>summary{color:var(--text);background:var(--surface-3)}.nav-menu .chev{width:14px;height:14px;transition:transform .15s}.nav-menu[open] .chev{transform:rotate(180deg)}.nav-panel{z-index:60;border:1px solid var(--border-strong);background:var(--surface);width:min(360px,100vw - 32px);max-height:calc(100dvh - 90px);box-shadow:var(--shadow-lg);border-radius:12px;gap:2px;padding:8px;display:grid;position:absolute;top:calc(100% + 8px);left:0;overflow:auto}.nav-panel.wide{grid-template-columns:1fr 1fr;width:min(720px,100vw - 32px)}.nav-panel a,.nav-mobile-panel a{color:var(--text);border-radius:8px;align-items:flex-start;gap:10px;padding:8px 10px;text-decoration:none;display:flex}.nav-panel a:hover,.nav-panel a:focus-visible,.nav-mobile-panel a:hover{background:var(--surface-3);box-shadow:none}.nav-panel a[aria-current=page],.nav-mobile-panel a[aria-current=page]{background:var(--accent-soft)}.nav-panel .icon,.nav-mobile-panel .icon{width:18px;height:18px;color:var(--accent);flex:none;margin-top:2px}.nav-panel strong,.nav-mobile-panel strong{font-size:14px;font-weight:600;display:block}.nav-panel small,.nav-mobile-panel small{color:var(--text-muted);font-size:12px;line-height:1.4;display:block}.search-trigger{border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface-2);min-width:200px;height:34px;color:var(--text-faint);cursor:pointer;align-items:center;gap:8px;margin-left:auto;padding:0 8px 0 10px;font-size:13px;display:inline-flex}.search-trigger:hover{border-color:var(--accent);color:var(--text-muted)}.search-trigger kbd{margin-left:auto;font-size:11px}.search-trigger.big{min-width:min(420px,100%);height:44px;margin:16px 0 0;font-size:15px}.nav-mobile{display:none;position:relative}body:has(.nav-mobile[open]){overflow:hidden}.nav-mobile>summary{list-style:none}.nav-mobile>summary::-webkit-details-marker{display:none}.nav-mobile-panel{z-index:70;background:var(--surface);border-top:1px solid var(--border);padding:8px 12px 32px;position:fixed;inset:56px 0 0;overflow:auto}.nav-cat{text-transform:uppercase;letter-spacing:.06em;color:var(--text-faint);margin:12px 10px 4px;font-size:12px;font-weight:700}.palette{flex-direction:column;width:min(620px,100vw - 24px);max-height:min(560px,100dvh - 80px);margin-top:10vh;padding:0;display:none;overflow:hidden}.palette[open]{display:flex}.palette-search{border-bottom:1px solid var(--border);align-items:center;gap:10px;padding:0 14px;display:flex}.palette-search .icon{color:var(--text-faint);width:18px;height:18px}.palette-input{background:0 0;border:0;outline:none;flex:1;height:52px;font-size:16px}.palette-input:focus-visible{box-shadow:none}.palette-list{flex:1;margin:0;padding:6px;list-style:none;overflow:auto}.palette-list li a{color:var(--text);border-radius:8px;align-items:center;gap:12px;padding:9px 10px;text-decoration:none;display:flex}.palette-list li[aria-selected=true] a{background:var(--accent-soft)}.palette-list .icon{width:18px;height:18px;color:var(--accent);flex:none}.palette-list strong{font-size:14px;display:block}.palette-list small{color:var(--text-muted);font-size:12px;display:block}.palette-list em{color:var(--text-faint);white-space:nowrap;margin-left:auto;font-size:11px;font-style:normal}.palette-empty{text-align:center;color:var(--text-muted);padding:24px}.palette-foot{border-top:1px solid var(--border);background:var(--surface-2);color:var(--text-faint);gap:16px;padding:8px 14px;font-size:12px;display:flex}.palette-foot kbd{margin-right:3px}.tool-generic{position:relative}.tool-generic:not(.ready){min-height:560px}.tool-generic.tool-auto,.tool-generic.tool-tall{height:auto}.tool-generic.tool-tall .workspace{flex:none;height:clamp(300px,46dvh,560px)}.tool-loading{color:var(--text-muted);align-items:center;gap:10px;margin:auto;display:flex}.tool-failed{text-align:center;color:var(--text-muted);margin:auto;padding:24px}.spinner.on{opacity:1}.toolbar-opts{display:contents}.text-input.sm{width:140px;height:32px;font-size:13px}.text-input.mono,.mono-area,.path-input,.regex-input{font-family:var(--font-mono)}.text-input.num{width:80px}.text-input[aria-invalid=true],.path-input[aria-invalid=true],.regex-input[aria-invalid=true]{border-color:var(--danger);box-shadow:0 0 0 3px var(--danger-soft)}.badge.warn{color:var(--warning);background:var(--warning-soft)}.status-msg.neutral{color:var(--text-muted)}.pane-body.scroll{overflow:auto}.pane-body.pad{padding:14px}.view-scroll{overflow:auto}.pad{padding:14px}.tool-extras{border-top:1px solid var(--border);background:var(--surface-2);gap:12px;padding:12px;display:grid}.tool-extras:empty{display:none}.extra-card,.panel-card{border:1px solid var(--border);background:var(--surface);border-radius:10px;padding:14px 16px}.extra-head{flex-wrap:wrap;align-items:center;gap:8px 12px;margin-bottom:10px;display:flex}.extra-head h2,.extra-head h3{margin:0;font-size:15px}.extra-head .pane-actions,.extra-head>.btn:last-child{margin-left:auto}.extra-row{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:10px;display:flex}.extra-sub{color:var(--text-muted);margin:14px 0 8px;font-size:13px}.mono-area{border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--editor-bg);width:100%;color:var(--text);resize:vertical;padding:10px 12px;font-size:13px;line-height:1.5}.b64-preview{border:1px solid var(--border);background:repeating-conic-gradient(var(--surface-3) 0 25%, var(--surface) 0 50%) 0 0 / 16px 16px;border-radius:8px;max-width:100%;max-height:320px;margin-top:10px;display:block}.kv-table{overflow-x:auto}.kv-table table{border-collapse:collapse;width:100%;font-size:13px}.kv-table th,.kv-table td{border-bottom:1px solid var(--border);text-align:left;vertical-align:top;padding:7px 10px}.kv-table tr:last-child th,.kv-table tr:last-child td{border-bottom:0}.kv-table tbody th{white-space:nowrap;width:1%;color:var(--text-muted);font-weight:600}.kv-table thead th{color:var(--text-muted);background:var(--surface-2);white-space:nowrap;font-size:12px}.kv-table code{overflow-wrap:anywhere}.pill-row{flex-wrap:wrap;gap:6px;margin-bottom:14px;display:flex}.pill{background:var(--surface-3);color:var(--text-muted);border-radius:99px;align-items:center;gap:5px;padding:3px 10px;font-size:12px;font-weight:600;display:inline-flex}.pill .icon{width:14px;height:14px}.pill-ok{background:var(--success-soft);color:var(--success)}.pill-err{background:var(--danger-soft);color:var(--danger)}.pill-warn{background:var(--warning-soft);color:var(--warning)}.code-block{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--editor-bg);margin:0;padding:12px 14px;font-size:13px;line-height:1.55;overflow-x:auto}.tok-key{color:var(--syn-key)}.tok-str{color:var(--syn-string)}.tok-num{color:var(--syn-number)}.tok-lit{color:var(--syn-literal);font-weight:600}.cmp-results{border-top:1px solid var(--border);background:var(--surface);max-height:420px;overflow:auto}.cmp-summary{z-index:1;background:var(--surface);border-bottom:1px solid var(--border);flex-wrap:wrap;gap:6px;padding:10px 12px;display:flex;position:sticky;top:0}.cmp-summary:empty{display:none}.cmp-same{color:var(--success);margin:0;font-weight:600}.chip{border:1px solid var(--border-strong);background:var(--surface);height:28px;color:var(--text-muted);cursor:pointer;border-radius:99px;align-items:center;gap:6px;padding:0 10px;font-size:12px;font-weight:600;display:inline-flex}.chip[aria-pressed=true]{border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}.cmp-list{margin:0;padding:4px;list-style:none}.cmp-empty{text-align:center;color:var(--text-muted);padding:24px}.cmp-row{text-align:left;cursor:pointer;background:0 0;border:0;border-radius:6px;align-items:baseline;gap:10px;width:100%;padding:7px 10px;font-size:13px;display:flex}.cmp-row:hover{background:var(--surface-3)}.kind{text-align:center;text-transform:uppercase;letter-spacing:.03em;border-radius:4px;flex:none;min-width:92px;padding:1px 8px;font-size:11px;font-weight:700}.kind-added{background:var(--success-soft);color:var(--success)}.kind-removed{background:var(--danger-soft);color:var(--danger)}.kind-changed,.kind-type{background:var(--warning-soft);color:var(--warning)}.cmp-path{text-overflow:ellipsis;white-space:nowrap;max-width:40%;color:var(--syn-key);flex:none;overflow:hidden}.cmp-vals{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-family:var(--font-mono);font-size:12px;overflow:hidden}.v-add{color:var(--success)}.v-del{color:var(--danger);text-decoration:line-through;text-decoration-thickness:1px}.arrow{color:var(--text-faint);margin:0 6px}.diff-labels{border-bottom:1px solid var(--border);background:var(--surface-2);grid-template-columns:1fr 1fr;display:grid}.diff-labels>div{justify-content:space-between;align-items:center;height:38px;padding:0 6px 0 12px;display:flex}.diff-labels>div+div{border-left:1px solid var(--border)}.diff-host{background:var(--editor-bg);flex:1;min-height:0;overflow:auto}.diff-host .cm-mergeView{min-height:100%}.diff-host .cm-mergeView .cm-editor,.diff-host>.cm-editor{height:auto;min-height:100%}.diff-host .cm-mergeViewEditors{min-height:100%}.diff-host .cm-mergeViewEditor+.cm-mergeViewEditor{border-left:1px solid var(--border)}.path-toolbar{flex-wrap:nowrap}.path-field{flex:1;min-width:0}.path-input{width:100%;height:38px;font-size:14px}.path-toolbar select{max-width:220px}.jp-paths{margin:0;padding:6px;list-style:none}.jp-path{text-align:left;cursor:pointer;background:0 0;border:0;border-radius:6px;gap:12px;width:100%;padding:6px 10px;font-size:12px;display:flex}.jp-path:hover{background:var(--surface-3)}.jp-path code{color:var(--syn-key);white-space:nowrap}.jp-path .muted{text-overflow:ellipsis;white-space:nowrap;font-family:var(--font-mono);overflow:hidden}.jwt-input{border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--editor-bg);width:100%;min-height:160px;color:var(--text);font-family:var(--font-mono);word-break:break-all;resize:vertical;padding:12px;font-size:13px;line-height:1.5}.jwt-colored{border-radius:var(--radius-sm);background:var(--surface-2);font-family:var(--font-mono);word-break:break-all;margin-top:12px;padding:12px;font-size:13px;line-height:1.6}.jwt-colored:empty{display:none}.jwt-h{color:#e11d48}.jwt-p{color:#7c3aed}.jwt-s{color:#0891b2}:root[data-theme=dark] .jwt-h{color:#fb7185}:root[data-theme=dark] .jwt-p{color:#c4b5fd}:root[data-theme=dark] .jwt-s{color:#67e8f9}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .jwt-h{color:#fb7185}:root:not([data-theme=light]) .jwt-p{color:#c4b5fd}:root:not([data-theme=light]) .jwt-s{color:#67e8f9}}.jwt-h-block{border-left:3px solid #e11d48}.jwt-p-block{border-left:3px solid #7c3aed}.jwt-section+.jwt-section{margin-top:18px}.privacy-note{align-items:center;gap:6px;margin-top:12px;display:flex}.verify-result{margin-top:10px}.jwt-section .mono-area+.check{margin-top:8px}.panel-grid{background:var(--surface-2);grid-template-columns:repeat(auto-fit,minmax(min(340px,100%),1fr));gap:12px;padding:12px;display:grid}.panel-card .text-input{margin-bottom:10px}.uuid-out{font-size:14px}.form-row{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:10px;display:flex}.form-row .text-input{margin:0}.form-row .grow{flex:1;min-width:min(200px,100%)}.form-row select{max-width:220px}.now-card{grid-column:1/-1}.now-row{flex-wrap:wrap;align-items:center;gap:8px 24px;display:flex}.now-sub{gap:2px;font-size:13px;display:grid}.big-num{font-variant-numeric:tabular-nums;letter-spacing:-.02em;color:var(--text);font-size:clamp(28px,5vw,40px);font-weight:700}.copy-cell{text-align:left;cursor:pointer;background:0 0;border:0;border-radius:6px;align-items:center;gap:8px;max-width:100%;padding:2px 6px;display:inline-flex}.copy-cell .icon{width:14px;height:14px;color:var(--text-faint);opacity:0;flex:none}.copy-cell:hover{background:var(--surface-3)}.copy-cell:hover .icon,.copy-cell:focus-visible .icon{opacity:1}.copy-cell.big{padding:4px 10px}.regex-toolbar{flex-wrap:wrap}.regex-field{border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--editor-bg);min-width:0;font-family:var(--font-mono);flex:min(360px,100%);align-items:center;padding:0 10px;display:flex}.regex-field:focus-within{border-color:var(--accent);box-shadow:var(--focus)}.regex-field .regex-input{background:0 0;border:0;flex:1;min-width:0;height:38px;font-size:14px;box-shadow:none!important}.slash,.flag-text{color:var(--text-faint);font-size:15px}.flag-text{min-width:2ch;color:var(--accent)}.flags{gap:2px;display:inline-flex}.flag{border:1px solid var(--border-strong);background:var(--surface);width:28px;height:28px;color:var(--text-muted);font-family:var(--font-mono);cursor:pointer;border-radius:6px;font-weight:700}.flag[aria-pressed=true]{border-color:var(--accent);background:var(--accent);color:var(--accent-text)}.rx-m{background:#4f46e52e;border-radius:2px;box-shadow:inset 0 -2px #4f46e599}.rx-m2{background:#0ea5e92e;box-shadow:inset 0 -2px #0ea5e999}.rx-g{border-radius:2px}.rx-g0{background:#eab30859}.rx-g1{background:#22c55e4d}.rx-g2{background:#ec489947}.rx-g3{background:#f973164d}.link-code{text-align:left;cursor:pointer;background:0 0;border:0;padding:0}.link-code:hover code{text-decoration:underline}.view-replace{flex-direction:column;display:flex}.view-replace[hidden]{display:none}.replace-bar{border-bottom:1px solid var(--border);gap:8px;padding:8px;display:flex}.replace-bar .text-input{height:34px;font-size:13px}.view-replace .fill{flex:1;min-height:0}.tools-page .hero-center{text-align:center;padding:32px 0 8px;display:block}.tools-page .hero-center .lead{max-width:640px;margin:8px auto 0}.tools-page section{margin-top:36px}.tools-page h2{font-size:20px}.tool-grid,.tool-links{grid-template-columns:repeat(auto-fill,minmax(min(250px,100%),1fr));gap:12px;margin:0;padding:0;list-style:none;display:grid}.tool-grid a,.tool-links a{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);height:100%;color:var(--text);grid-template-columns:auto 1fr;align-content:start;gap:2px 12px;padding:16px;text-decoration:none;transition:border-color .15s,transform .15s;display:grid}.tool-grid a:hover,.tool-links a:hover{border-color:var(--accent);transform:translateY(-1px)}.tool-grid .icon,.tool-links .icon{width:22px;height:22px;color:var(--accent);grid-row:span 2;margin-top:2px}.tool-grid span,.tool-links span{color:var(--text-muted);font-size:14px}.all-tools-link{margin-top:16px;font-weight:600}.site-footer .footer-inner{grid-template-columns:minmax(220px,1fr) 3fr;max-width:1200px}@media (max-width:1100px){.search-trigger{min-width:0}.search-trigger .lbl,.search-trigger kbd{display:none}.search-trigger:not(.big){justify-content:center;width:34px;padding:0}}@media (max-width:900px){.site-nav{display:none}.nav-mobile{display:block}.search-trigger:not(.big){margin-left:auto}.site-footer .footer-inner{grid-template-columns:1fr 1fr}.tool-generic.tool-tall .workspace{height:auto}.panel-grid{grid-template-columns:1fr}.cmp-path{max-width:55%}}@media (max-width:640px){.path-toolbar{flex-wrap:wrap}.path-toolbar select{flex:1;max-width:none}.site-footer .footer-inner{grid-template-columns:1fr}.panel-grid{padding:8px}.kind{min-width:0}}.nav-menu:not([open])>.nav-panel,.nav-mobile:not([open])>.nav-mobile-panel{display:none}.header-inner{position:relative}.nav-menu-wide{position:static}.nav-menu-wide>.nav-panel{top:calc(100% - 4px);left:var(--gutter)}.header-inner,main,.footer-inner,.copyright{padding-left:max(var(--gutter), env(safe-area-inset-left));padding-right:max(var(--gutter), env(safe-area-inset-right))}.nav-mobile-panel{padding-bottom:calc(32px + env(safe-area-inset-bottom))}.toast{bottom:calc(24px + env(safe-area-inset-bottom))}.content p,.content li,.prose-page p,.prose-page li,.faq p,.state-card p{overflow-wrap:anywhere}.pane-title{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.pane-head{min-width:0}@media (pointer:coarse){:root{--editor-font-size:16px}.btn,select,.text-input.sm,.search-box input{height:40px}.btn.sm{height:36px}.icon-btn{width:40px;height:40px}.seg-btn{height:36px}.flag{width:36px;height:36px}.chip{height:36px;padding:0 12px}.check{min-height:40px}.check input{width:20px;height:20px}.brand{margin-left:-6px;padding:6px}.copy-cell{min-height:36px}.link-code{padding:6px 0;display:inline-block}.menu-list button{padding:12px}.palette-list li a{padding:12px 10px}.cmp-row,.jp-path{min-height:40px}.tabs [role=tab]{padding:0 14px}input,select,textarea,.text-input,.mono-area,.jwt-input,.path-input,.regex-field .regex-input,.search-box input,.palette-input{font-size:16px}}@media (hover:none){.copy-cell .icon{opacity:.6}}@media (max-width:900px){.workspace>.pane~.pane{border-top:1px solid var(--border)}.tool-extras{padding:10px}}@media (max-width:640px){.hero h1{font-size:clamp(20px,6vw,24px)}.content{margin-top:32px}.content section{margin-top:36px}.steps li,.features li,.tool-grid a,.tool-links a{padding:14px}.seg{flex-wrap:wrap;max-width:100%}.seg-btn{flex:auto;justify-content:center}.toolbar .field select,.toolbar .text-input.sm{max-width:calc(100vw - 48px)}.path-toolbar select{flex:100%;width:100%;min-width:0;max-width:100%}.tree-pathbar{flex-wrap:wrap;row-gap:2px}.tree-path{flex-basis:100%}.search-box{max-width:none}.tree-toolbar{flex-wrap:wrap}.tree-toolbar .search-box{flex:100%}.tree-toolbar #tree-search-info{min-width:0;margin-right:auto}.tree-toolbar .toolbar-gap{display:none}.extra-card,.panel-card{padding:12px}.dialog{padding:16px}.dialog-actions .btn{flex:1;justify-content:center}.shortcuts td:first-child{white-space:normal}.state-card.error .state-actions .btn{flex:auto;justify-content:center}.toast{text-align:center;max-width:none;left:16px;right:16px;transform:translateY(20px)}.toast.show{transform:translateY(0)}.now-row{gap:4px 16px}.kv-table tbody th{white-space:normal;width:34%}}@media (max-width:380px){:root{--gutter:10px}.toolbar{gap:6px;padding:8px}.pane-head{padding:0 2px 0 10px}.tabs [role=tab]{padding:0 10px}.stats-grid{grid-template-columns:1fr 1fr}.stat-value{font-size:17px}.big-num{font-size:26px}}@media (max-width:1100px){.search-trigger:not(.big){color:var(--text-muted);background:0 0;border-color:#0000}}@media (hover:none){.btn:hover{background:var(--surface)}.btn.ghost:hover:not(:disabled),.icon-btn:hover:not(:disabled),.search-trigger:hover,.nav-menu>summary:hover,.nav-link:hover,.seg-btn:hover,.tree-caret:not(.leaf):hover,.tree-row:hover,.cmp-row:hover,.jp-path:hover,.copy-cell:hover,.nav-mobile-panel a:hover,.menu-list button:hover{background:0 0}.btn.ghost:hover:not(:disabled),.icon-btn:hover:not(:disabled){color:var(--text-muted)}.btn.primary:hover{background:var(--accent);border-color:var(--accent)}.tool-grid a:hover,.tool-links a:hover{border-color:var(--border);transform:none}.btn:active,.icon-btn:active,.seg-btn:active,.cmp-row:active,.jp-path:active,.copy-cell:active,.tree-row:active,.menu-list button:active,.nav-mobile-panel a:active{background:var(--surface-3)}.tool-grid a:active,.tool-links a:active{border-color:var(--accent)}}@media (max-width:900px){.tool-generic:not(.ready){min-height:calc(102dvh + 220px)}.tool-generic.tool-size-short:not(.ready){min-height:690px}.tool-generic.tool-size-medium:not(.ready){min-height:calc(90dvh + 135px)}.tool-generic.tool-size-tall:not(.ready){min-height:calc(102dvh + 580px)}.diff-labels>div{height:44px}}@media (max-width:640px){.brand span{font-size:15px;display:inline}.statusbar{white-space:normal;flex-wrap:wrap;row-gap:2px;height:auto;min-height:32px;padding:6px 10px}.status-msg{text-align:left;white-space:normal;flex:100%;order:3;padding:2px 0;line-height:1.4;overflow:visible}.steps li{grid-template-columns:auto 1fr;align-items:start;column-gap:12px;display:grid}.steps li:before{grid-row:span 2;margin:0}.features li{grid-template-columns:auto 1fr;column-gap:12px;display:grid}.features .icon{grid-row:span 2;margin:2px 0 0}.steps h3,.features h3{margin-bottom:2px}.cmp-row{flex-wrap:wrap}.cmp-vals{white-space:normal;overflow-wrap:anywhere;flex-basis:100%}.site-footer .footer-inner{gap:24px;padding-top:28px}.site-footer nav ul{grid-template-columns:1fr 1fr;gap:0 16px}.site-footer nav a{padding:7px 0;display:block}}@media (max-width:359px){.brand span{display:none}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}@media print{.site-header,.site-footer,.toolbar,.ad-slot,.content{display:none}}.nav-panel.two-col{grid-template-columns:1fr 1fr;width:min(640px,100vw - 32px)}.nav-panel .nav-all,.nav-mobile-panel .nav-all{border-top:1px solid var(--border);color:var(--accent);border-radius:0 0 8px 8px;grid-column:1/-1;justify-content:center;margin-top:4px;font-size:14px;font-weight:600}.nav-panel.mega{width:min(980px, calc(100vw - 2 * var(--gutter)));grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:8px 12px;padding:14px}.mega-col{flex-direction:column;min-width:0;display:flex}.nav-panel .mega-col a{color:var(--text-muted);padding:5px 8px;font-size:13.5px}.nav-panel .mega-col a:hover,.nav-panel .mega-col a[aria-current=page]{color:var(--text)}.nav-panel .mega-col .mega-head{color:var(--text);align-items:center;gap:8px;margin-bottom:2px;font-size:14px;font-weight:700}.nav-panel .mega-col .mega-head .icon{width:16px;height:16px;margin:0}.nav-panel .mega-col .mega-all{color:var(--accent);font-size:13px;font-weight:600}.nav-mob-group{border-bottom:1px solid var(--border);grid-template-columns:1fr 1fr;gap:0 8px;padding:8px 0;display:grid}.nav-mob-group a{min-width:0;font-size:14px}.nav-mobile-panel a.nav-cat{color:var(--text);grid-column:1/-1;justify-content:space-between;align-items:center;margin:4px 0 0;padding:8px 10px;font-size:12px;display:flex}.nav-cat span{background:var(--surface-3);color:var(--text-muted);letter-spacing:0;border-radius:999px;padding:1px 8px;font-size:11px}.mob-search{width:100%;margin:4px 0 8px!important}.footer-cols{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:28px 24px;min-width:0;display:grid}.site-footer h2 a{color:inherit}.site-footer a.more{color:var(--accent);font-weight:600}.cat-jump{flex-wrap:wrap;justify-content:center;gap:8px;margin-top:20px;display:flex}.cat-jump a{border:1px solid var(--border);background:var(--surface);min-height:34px;color:var(--text);border-radius:999px;align-items:center;gap:6px;padding:4px 12px;font-size:13.5px;font-weight:500;text-decoration:none;display:inline-flex}.cat-jump a:hover{border-color:var(--accent)}.cat-jump span{color:var(--text-faint);font-size:12px}.cat-head{border-bottom:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:4px 16px;margin-bottom:12px;padding-bottom:10px;display:flex}.cat-head h2{color:var(--text);letter-spacing:-.015em;align-items:center;gap:10px;margin:0;font-size:24px;font-weight:800;line-height:1.25;display:flex}.cat-head h2 .icon{width:24px;height:24px;color:var(--accent);flex:none}.cat-count{background:var(--accent-soft);color:var(--accent);letter-spacing:0;border-radius:999px;padding:2px 9px;font-size:13px;font-weight:700}.cat-head a{font-size:14px;font-weight:600}.tools-page section[id^=cat-]{scroll-margin-top:72px}.article{max-width:800px}.article .lead{font-size:18px}.article pre.code-block{overflow-x:auto}.html-preview{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;background:#fff;border:0;width:100%;min-height:260px;display:block}.html-preview.fill{flex:1;height:100%}.preview-body{background:#fff;display:flex}.preview-note{margin:8px 0 0}.tree-host-generic{min-height:0;position:relative;overflow:hidden}.excel-drop{border:2px dashed var(--border-strong);border-radius:var(--radius);background:var(--surface-2);text-align:center;cursor:pointer;justify-items:center;gap:4px;margin:12px;padding:24px 16px;display:grid}.excel-drop:hover,.excel-drop:focus-visible,.excel-drop.dragging{border-color:var(--accent);background:var(--accent-soft)}.excel-panel{border:1px solid var(--border);border-radius:var(--radius-sm);flex-direction:column;height:clamp(280px,50vh,520px);margin:0 12px 12px;display:flex;overflow:hidden}.excel-panel>.pane-body{flex:1;min-height:0}@media (max-width:1100px){.site-footer .footer-inner{grid-template-columns:1fr}}@media (max-width:640px){.cat-head h2{font-size:20px}.cat-head h2 .icon{width:20px;height:20px}.nav-panel.two-col{grid-template-columns:1fr}.footer-cols{grid-template-columns:1fr 1fr}.site-footer .footer-cols nav ul{grid-template-columns:1fr}.cat-jump{justify-content:flex-start}}.icon-only .lbl{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.btn.flip .icon{transform:scaleX(-1)}.workspace.single{grid-template-columns:minmax(0,1fr)}.check.compact{gap:4px;font-size:13px}.nav-panel.mega{width:min(1040px, calc(100vw - 2 * var(--gutter)));grid-template-columns:repeat(4,minmax(0,1fr));gap:4px 16px}.mega-group{color:var(--text-faint);letter-spacing:.06em;text-transform:uppercase;margin:4px 8px 6px;font-size:11.5px;font-weight:700}.nav-panel a.mega-cat{color:var(--text);align-items:center;gap:10px;padding:7px 8px;font-size:14px;font-weight:500}.nav-panel a.mega-cat .icon{width:17px;height:17px;margin:0}.nav-panel a.mega-cat span{flex:1;min-width:0}.nav-panel a.mega-cat em{color:var(--text-faint);font-size:12px;font-style:normal}.nav-panel a.mega-cat.current{background:var(--accent-soft)}.nav-mob-group p.nav-cat{grid-column:1/-1;margin:8px 10px 2px}.nav-mob-group .muted{font-size:12px}@media (max-width:1100px){.nav-panel.mega{grid-template-columns:repeat(2,minmax(0,1fr))}}.calc{grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:16px;padding:16px;display:grid}.calc-form,.gen-form{flex-wrap:wrap;align-content:flex-start;gap:12px 14px;display:flex}.calc-field{flex-direction:column;flex:140px;gap:5px;min-width:0;display:flex}.calc-field.grow{flex-basis:100%}.calc-field.narrow{flex:0 84px}.calc-label{color:var(--text-muted);font-size:12.5px;font-weight:600}.calc-field input:not([type=checkbox]):not([type=color]):not([type=range]),.calc-field select,.calc-field textarea{width:100%;min-width:0}.calc-field textarea,.b64-input,.csv-input,.chart-data{font-family:var(--font-mono);resize:vertical;font-size:13px}.calc-inline{flex-wrap:wrap;flex-basis:100%;gap:10px;display:flex}.calc-inline[hidden]{display:none}.calc-output{flex-direction:column;gap:14px;min-width:0;display:flex}.calc-results{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);gap:2px;display:grid;overflow:hidden}.calc-row{border-bottom:1px solid var(--border);grid-template-columns:auto minmax(120px,34%) minmax(0,1fr) auto;align-items:center;gap:4px 10px;padding:8px 10px 8px 12px;display:grid}.calc-row:last-child{border-bottom:0}.calc-row:not(:has(.swatch)){grid-template-columns:minmax(120px,34%) minmax(0,1fr) auto}.calc-row.strong{background:var(--accent-soft)}.calc-row.strong .calc-row-value{font-size:15px;font-weight:700}.calc-row-label{color:var(--text-muted);font-size:13px}.calc-row-value{overflow-wrap:anywhere;font-family:var(--font-mono);background:0 0;padding:0;font-size:13.5px}.calc-row-hint{grid-column:2/-2;margin-top:-2px}.calc-row:not(:has(.swatch)) .calc-row-hint{grid-column:1/-2}.calc-error{color:var(--danger);background:var(--danger-soft);border-radius:var(--radius);margin:0;padding:12px 14px}.swatch{border:1px solid var(--border-strong);border-radius:6px;width:22px;height:22px}.color-picker{border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface);cursor:pointer;flex:none;width:42px;height:36px;padding:2px}.with-picker{align-items:center;gap:8px;display:flex}.with-picker input[type=text]{flex:1;min-width:0}.calc-color-input{flex-basis:100%;align-items:stretch;gap:14px;display:flex}.color-big{border-radius:var(--radius);border:1px solid var(--border-strong);flex:none;width:96px;min-height:96px;box-shadow:inset 0 0 0 4px #ffffff40}.palette-block h3{color:var(--text-muted);margin:0 0 6px;font-size:13px}.palette-row{grid-template-columns:repeat(auto-fill,minmax(64px,1fr));gap:6px;display:grid}.pal-swatch{border:1px solid var(--border);cursor:pointer;border-radius:8px;height:44px;position:relative}.pal-swatch span{color:#111;font:10.5px var(--font-mono);text-align:center;background:#ffffffd9;border-radius:4px;padding:1px 3px;position:absolute;inset:auto 3px 3px}.contrast-sample{border-radius:var(--radius);border:1px solid var(--border);padding:18px 20px}.contrast-sample p{margin:0 0 6px;font-size:16px}.contrast-sample .big{font-size:24px;font-weight:700}.bit-grid{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-2);gap:4px;padding:12px;display:grid;overflow-x:auto}.bit-line{align-items:baseline;gap:12px;display:flex}.bit-label{min-width:84px;color:var(--text-muted);font-size:12.5px}.bit-line code{letter-spacing:.04em;white-space:nowrap;background:0 0;font-size:13px}.chmod-table{border-collapse:collapse;flex-basis:100%}.chmod-table th,.chmod-table td{border-bottom:1px solid var(--border);text-align:center;padding:8px 10px;font-size:13.5px}.chmod-table th[scope=row]{text-align:left}.strength-meter{background:var(--surface-3);border-radius:99px;flex-basis:100%;height:8px;overflow:hidden}.strength-meter span{background:var(--danger);width:0;height:100%;transition:width .2s,background .2s;display:block}.strength-meter[data-level="0"] span{width:10%}.strength-meter[data-level="1"] span{background:var(--warning);width:30%}.strength-meter[data-level="2"] span{background:var(--warning);width:55%}.strength-meter[data-level="3"] span{background:var(--success);width:80%}.strength-meter[data-level="4"] span{background:var(--success);width:100%}.issue-list{color:var(--text-muted);margin:0;padding-left:20px}.share-preview{flex-wrap:wrap;gap:8px;display:flex}.gen{grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:16px;padding:16px;display:grid}.gen-actions{flex-wrap:wrap;flex-basis:100%;gap:8px;display:flex}.gen-out{border:1px solid var(--border);border-radius:var(--radius);height:460px;min-height:320px;overflow:hidden}.gen-image{border:1px solid var(--border);border-radius:var(--radius);background:repeating-conic-gradient(var(--surface-3) 0 25%, var(--surface) 0 50%) 0 0 / 16px 16px;justify-content:center;align-items:flex-start;max-height:520px;padding:12px;display:flex;overflow:auto}.gen-canvas{image-rendering:pixelated;max-width:100%;height:auto}.img-results{gap:12px;padding:0 12px 12px;display:grid}.img-card{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);grid-template-columns:120px minmax(0,1fr) auto;align-items:center;gap:12px;padding:10px;display:grid}.img-card img{object-fit:contain;background:repeating-conic-gradient(var(--surface-3) 0 25%, var(--surface) 0 50%) 0 0 / 12px 12px;border-radius:6px;width:120px;height:90px}.img-card.error{color:var(--danger);background:var(--danger-soft);grid-template-columns:1fr}.img-meta{overflow-wrap:anywhere;flex-direction:column;gap:2px;min-width:0;display:flex}.b64-row{gap:6px;display:grid}.b64-head{justify-content:space-between;align-items:center;display:flex}.b64-row textarea{width:100%;font:12px var(--font-mono);resize:vertical}.b64-in-wrap,.csv-in-wrap{padding:12px}.b64-in-wrap textarea,.csv-in-wrap textarea{width:100%}.gif-view{background:repeating-conic-gradient(var(--surface-3) 0 25%, var(--surface) 0 50%) 0 0 / 16px 16px;border-block:1px solid var(--border);justify-content:center;padding:12px;display:flex}.gif-stage{image-rendering:auto;max-width:100%;height:auto}.gif-controls input[type=range]{flex:160px;min-width:120px}.gif-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:10px;padding:12px;display:grid}.gif-frame{border:1px solid var(--border);background:var(--surface);text-align:center;border-radius:8px;margin:0;padding:6px;position:relative}.gif-frame canvas{max-width:100%;height:auto}.gif-frame figcaption{color:var(--text-muted);font-size:12px}.gif-frame .btn{position:absolute;top:6px;right:6px}.qr-output{align-items:center}.qr-canvas{border:1px solid var(--border);border-radius:8px;max-width:100%;height:auto!important}.excel-panel.tall{height:clamp(360px,65vh,720px)}.chart-layout .calc-form{align-content:flex-start}.chart-box{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);height:clamp(300px,52vh,520px);padding:8px;position:relative}.dns-form{align-items:flex-end;padding:16px 16px 0}.dns-results{padding:16px}.dns-results table{width:100%}.dns-results .mono{font-family:var(--font-mono);font-size:13px}.dns-results .wrap{overflow-wrap:anywhere;word-break:break-word}.dns-note{padding:0 16px}.api-form{padding:16px 16px 0}.api-line{gap:8px;display:flex}.api-line input{min-width:0;font-family:var(--font-mono);flex:1}.api-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px;padding:16px}.api-grid h3{color:var(--text-muted);margin:0 0 6px;font-size:13px}.api-grid textarea{width:100%;font:13px var(--font-mono);margin-bottom:12px}.api-body,.api-out{border:1px solid var(--border);border-radius:var(--radius-sm);height:280px;overflow:hidden}.api-out{height:360px}.api-meta{min-height:24px;color:var(--text-muted);flex-wrap:wrap;align-items:center;gap:6px 12px;margin-bottom:8px;font-size:13px;display:flex}.api-headers{max-height:220px;font-size:12px;overflow:auto}.api-grid+p{padding:0 16px}.csv-table{max-height:560px;margin:0 12px 12px;overflow:auto}.csv-table table{font-size:13px}.csv-table thead th{z-index:1;position:sticky;top:0}.csv-table td.num{text-align:right;font-variant-numeric:tabular-nums}.csv-table .row-num{color:var(--text-faint);text-align:right;width:1%}.th-sort{font:inherit;color:inherit;cursor:pointer;white-space:nowrap;background:0 0;border:0;padding:0;font-weight:600}.csv-in-wrap+.csv-table+.btn{margin:0 12px 12px}.xsl-body{border:1px solid var(--border);border-radius:var(--radius-sm);height:260px;overflow:hidden}@media (max-width:900px){.calc,.gen,.api-grid{grid-template-columns:minmax(0,1fr)}.gen-out{height:360px}}@media (max-width:640px){.calc,.gen{gap:12px;padding:12px}:is(.calc-row,.calc-row:not(:has(.swatch))){grid-template-columns:minmax(0,1fr) auto}.calc-row .swatch{display:none}.calc-row-label,.calc-row-hint{grid-column:1/-1}.calc-row:not(:has(.swatch)) .calc-row-hint{grid-column:1/-1}.color-big{width:64px;min-height:64px}.img-card{grid-template-columns:80px minmax(0,1fr)}.img-card img{width:80px;height:64px}.img-card>.btn{grid-column:1/-1}.api-line{flex-wrap:wrap}.api-line input{flex-basis:100%;order:-1}}body{font-feature-settings:"ss01", "cv11";text-rendering:optimizelegibility;font-size:15.5px}h1,h2,h3,h4{font-family:var(--font-display);letter-spacing:-.02em;color:var(--text);font-weight:700}::selection{background:var(--mint-strong);color:var(--ink)}:root[data-theme=dark] ::selection{color:#fff}.eyebrow{border-radius:var(--radius-xs);background:var(--accent-soft);width:-moz-fit-content;width:fit-content;color:var(--accent);font-family:var(--font-mono);letter-spacing:.16em;text-transform:uppercase;align-items:center;gap:6px;margin:0 0 14px;padding:4px 9px;font-size:11.5px;font-weight:600;line-height:1.5;display:inline-flex}.eyebrow a{color:inherit;text-decoration:none}.eyebrow a:hover{text-underline-offset:3px;text-decoration:underline}.site-header{z-index:80;background:color-mix(in srgb, var(--surface) 86%, transparent);-webkit-backdrop-filter:saturate(1.4)blur(14px);position:sticky;top:0}.header-inner{gap:18px;height:64px}.brand{font-family:var(--font-display);letter-spacing:-.02em;font-size:17px;font-weight:800}.nav-menu>summary,.nav-link{color:var(--text);font-size:14.5px;font-weight:500}.nav-menu>summary.active,.nav-link.active{color:var(--link)}.nav-mobile-panel{top:64px}.search-trigger{border-radius:var(--radius-sm);border-color:var(--border);background:var(--surface-2);height:38px}.header-cta{flex:none}.nav-panel{border-radius:var(--radius);border-color:var(--border)}.btn{height:34px;transition:background-color .18s var(--ease), border-color .18s var(--ease), color .18s var(--ease), transform .18s var(--ease), box-shadow .18s var(--ease);border-radius:6px;font-weight:600}.btn:hover{border-color:var(--text-faint)}.btn.primary{background:var(--accent);border-color:var(--accent);color:var(--accent-text)}.btn.primary:hover{background:var(--accent-hover);border-color:var(--accent-hover);color:var(--accent-text)}.btn.big{height:48px;padding:0 22px;font-size:15px}.btn .arrow{width:16px;height:16px;transition:transform .2s var(--ease);transform:scaleX(-1)}.btn:hover .arrow{transform:scaleX(-1)translate(-3px)}a.btn{text-decoration:none}.hero{padding:36px 0 22px;display:block}.hero h1{letter-spacing:-.035em;max-width:22ch;margin:0;font-size:clamp(30px,3.6vw,46px);font-weight:800;line-height:1.08}.hero .lead{max-width:68ch;color:var(--text-muted);margin:12px 0 0;font-size:17px;line-height:1.55}.tools-page .hero-center{flex-direction:column;align-items:center;padding:64px 0 28px;display:flex}.tools-page .hero-center h1{letter-spacing:-.045em;max-width:18ch;font-size:clamp(38px,6vw,72px);line-height:1.02}.tools-page .hero-center .lead{max-width:60ch;margin-top:16px;font-size:18px}.hl{background:linear-gradient(transparent 60%, var(--mint-strong) 60%, var(--mint-strong) 92%, transparent 92%);padding:0 .08em}:root[data-theme=dark] .hl{color:var(--accent);background:0 0}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .hl{color:var(--accent);background:0 0}}.tool{border-color:var(--border);border-radius:16px;box-shadow:0 1px #0c241808,0 28px 60px -32px #0c241847}.toolbar{background:var(--surface-2)}.content{max-width:980px;margin-top:72px}.content>section{margin-top:72px}.content>section:first-child{margin-top:0}.content h2,.tools-page h2,.prose-page h2{letter-spacing:-.03em;margin:0 0 22px;font-size:clamp(26px,3vw,38px);font-weight:800;line-height:1.12}.content section>p,.content section li{color:var(--text-muted)}.tool-grid a,.tool-links a,.steps li,.features li,.faq details,.cat-jump a{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);transition:border-color .2s var(--ease), transform .2s var(--ease), box-shadow .2s var(--ease), background-color .2s var(--ease)}.tool-grid a,.tool-links a{column-gap:14px;padding:18px}.tool-grid a:hover,.tool-links a:hover{border-color:var(--border-strong);transform:translateY(-2px);box-shadow:0 14px 30px -18px #0c241859}.tool-grid .icon,.tool-links .icon{box-sizing:content-box;background:var(--accent-soft);width:18px;height:18px;color:var(--accent);border-radius:10px;margin:0;padding:9px}.tool-grid strong,.tool-links strong{font-family:var(--font-display);letter-spacing:-.01em;font-size:15.5px;font-weight:700}.steps li{padding:22px}.steps li:before{font-family:var(--font-mono);background:var(--accent-soft);color:var(--accent);border-radius:var(--radius-xs);font-weight:600}.steps h3,.features h3{font-size:17px}.features li{padding:22px}.features .icon{color:var(--accent)}.faq details{padding:0}.faq summary{font-family:var(--font-display);cursor:pointer;padding:16px 18px;font-size:16px;font-weight:650}.faq details[open]{border-color:var(--border-strong)}.faq details p{color:var(--text-muted);margin:0;padding:0 18px 16px}.cat-jump a:hover{border-color:var(--accent);transform:translateY(-1px)}.cat-head{border-bottom:0;padding-bottom:0}.cat-head h2 .icon{box-sizing:content-box;background:var(--accent-soft);border-radius:10px;padding:8px}.cat-count{font-family:var(--font-mono)}.prose-page{max-width:780px;padding-top:40px}.prose-page h1{letter-spacing:-.04em;font-size:clamp(34px,4.6vw,54px);font-weight:800;line-height:1.05}.prose-page h2{margin-top:48px;font-size:clamp(24px,2.6vw,32px)}.prose-page .lead{color:var(--text-muted);font-size:19px}.cta-band{max-width:1600px;padding:0 var(--gutter);margin:88px auto 0}.cta-inner{background:var(--pop);max-width:1200px;color:var(--pop-ink);isolation:isolate;border-radius:20px;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);align-items:center;gap:32px;margin:0 auto;padding:clamp(28px,5vw,56px);display:grid;position:relative;overflow:hidden}.cta-inner:before{content:"";z-index:-1;background:radial-gradient(#07210f38 1.2px,#0000 1.6px) 0 0/14px 14px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(100deg,#000 0%,#0000 55%);mask-image:linear-gradient(100deg,#000 0%,#0000 55%)}.cta-copy h2{color:var(--pop-ink);letter-spacing:-.04em;margin:0;font-size:clamp(30px,4.4vw,56px);font-weight:800;line-height:1.02}.cta-copy p{color:#0e3a1f;max-width:46ch;margin:16px 0 0;font-size:17px}.eyebrow.on-pop{background:var(--pop-ink);color:#b9f3c8}.cta-panel{background:#e8fbec;border-radius:16px;gap:18px;padding:22px;display:grid;box-shadow:0 20px 40px -24px #07210f80}.cta-stats{grid-template-columns:repeat(3,1fr);gap:10px;margin:0;padding:0;list-style:none;display:grid}.cta-stats li{background:#fff;border:1px solid #cdeed5;border-radius:10px;gap:2px;padding:12px;display:grid}.cta-stats strong{font-family:var(--font-display);letter-spacing:-.03em;color:#07210f;font-size:clamp(22px,2.6vw,30px);font-weight:800}.cta-stats span{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:#3c5a46;font-size:10.5px;font-weight:600}.cta-actions{flex-wrap:wrap;gap:10px;display:flex}.cta-actions .btn.primary{color:#b9f3c8;background:#07210f;border-color:#07210f}.cta-actions .btn.primary:hover{background:#0f3a27}.cta-actions .btn:not(.primary){color:#07210f;background:#fff;border-color:#cdeed5}.site-footer{color:#cfe3d5;background:#07170e;border-top:0;margin-top:56px;overflow:hidden}.site-footer .footer-inner{padding-top:56px}.site-footer strong,.footer-brand strong{color:#fff}.site-footer p,.site-footer .muted{color:#93ad9b}.site-footer h2{font-family:var(--font-mono);letter-spacing:.16em;color:#8ff0a8;font-size:11px;font-weight:600}.site-footer a{color:#cfe3d5}.site-footer a:hover{color:#8ff0a8}.site-footer .copyright{color:#7c9785;border-top:1px solid #8ff0a824}.site-footer .logo-bg{fill:#0f3a27}.footer-wordmark{max-width:1600px;padding:0 var(--gutter) .12em;font-family:var(--font-display);letter-spacing:-.055em;white-space:nowrap;color:#b9f3c8;opacity:.95;-webkit-user-select:none;user-select:none;margin:8px auto 0;font-size:clamp(40px,10.4vw,172px);font-weight:800;line-height:.9}.wm-brace{color:#34d36b;font-weight:700}.reveal{opacity:0;transform:translateY(16px)}.reveal.in{opacity:1;transition:opacity .7s var(--ease), transform .7s var(--ease);transition-delay:var(--reveal-delay,0s);transform:none}@media (max-width:1100px){.cta-inner{grid-template-columns:minmax(0,1fr)}}@media (max-width:900px){.hero{padding:26px 0 16px}.content,.content>section{margin-top:56px}}@media (max-width:640px){.header-inner{gap:10px;height:60px}.nav-mobile-panel{top:60px}.header-cta{height:34px;padding:0 12px;font-size:13.5px}.hero h1{font-size:clamp(28px,8.4vw,36px)}.hero .lead{font-size:16px}.tools-page .hero-center{text-align:left;align-items:flex-start;padding:40px 0 18px}.tools-page .hero-center h1{font-size:clamp(34px,10.5vw,44px)}.tools-page .hero-center .lead{font-size:16.5px}.cta-band{margin-top:64px}.cta-inner{border-radius:16px}.cta-stats{gap:6px}.cta-stats li{padding:10px 8px}.cta-actions .btn{flex:100%;justify-content:center}.footer-wordmark{font-size:11.4vw}}@media (max-width:520px){.header-cta{display:none}}@media (hover:none){.tool-grid a:hover,.tool-links a:hover{box-shadow:none;transform:none}}@media (prefers-reduced-motion:reduce){.reveal,.reveal.in{opacity:1;transition:none;transform:none}}.home-explore{max-width:1200px;margin:56px auto 0}.explore-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:20px;display:flex}.explore-head h2{letter-spacing:-.03em;margin:0;font-size:clamp(26px,3vw,38px);font-weight:800}.explore-search{min-width:min(320px,100%);color:var(--text-muted);justify-content:flex-start;font-weight:500}.explore-search kbd{margin-left:auto}.recent-wrap{margin-bottom:20px}.recent-wrap h3{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--text-muted);margin:0 0 8px;font-size:11.5px;font-weight:600}.recent-list,.explore-cats{flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none;display:flex}.recent-list a,.explore-cats a{border:1px solid var(--border);background:var(--surface);min-height:34px;color:var(--text);transition:border-color .2s var(--ease), background-color .2s var(--ease);border-radius:999px;align-items:center;gap:6px;padding:4px 12px;font-size:14px;font-weight:500;text-decoration:none;display:inline-flex}.recent-list a{background:var(--accent-soft);color:var(--accent);border-color:#0000}.recent-list a:hover,.explore-cats a:hover{border-color:var(--accent)}.explore-cats{align-items:center;margin-top:22px}.explore-cats>span{color:var(--text-muted);margin-right:4px;font-size:14px}.explore-cats em{color:var(--text-faint);font-size:12px;font-style:normal}.palette-group{color:var(--text-muted);font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;padding:10px 10px 4px;font-size:11px;font-weight:600}.palette-empty{color:var(--text-muted);padding:18px 12px}@media (max-width:640px){.explore-search{width:100%}.explore-search kbd{display:none}}.home .home-hero{grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);align-items:center;gap:clamp(28px,4vw,64px);max-width:1320px;margin:0 auto;padding:clamp(40px,6vw,84px) 0 clamp(36px,5vw,64px);display:grid;position:relative}.home-hero h1{letter-spacing:-.045em;margin:0;font-size:clamp(40px,5.4vw,74px);font-weight:800;line-height:1.02}.home-hero .lead{max-width:54ch;color:var(--text-muted);margin:20px 0 0;font-size:clamp(16.5px,1.4vw,19px);line-height:1.55}.home-ctas{flex-wrap:wrap;gap:12px;margin-top:30px;display:flex}.btn .arrow-down{width:16px;height:16px;transition:transform .2s var(--ease)}.btn:hover .arrow-down{transform:translateY(2px)}.trust{color:var(--text-muted);flex-wrap:wrap;gap:8px 20px;margin:26px 0 0;padding:0;font-size:14.5px;font-weight:500;list-style:none;display:flex}.trust li{align-items:center;gap:7px;display:inline-flex}.trust .icon{background:var(--accent-soft);width:18px;height:18px;color:var(--accent);box-sizing:border-box;border-radius:50%;padding:3px}.home-hero-visual{padding:28px 18px 40px 30px;position:relative}.home-hero-visual:before{content:"";background:radial-gradient(#0f3a2729 1.2px, transparent 1.6px) 0 0 / 16px 16px, linear-gradient(135deg, var(--mint) 0%, #b8efc6 100%);border-radius:28px;position:absolute;inset:0 0 12px 12px}:root[data-theme=dark] .home-hero-visual:before{background:radial-gradient(#8ff0a81f 1.2px,#0000 1.6px) 0 0/16px 16px,linear-gradient(135deg,#10281b 0%,#173a27 100%)}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .home-hero-visual:before{background:radial-gradient(#8ff0a81f 1.2px,#0000 1.6px) 0 0/16px 16px,linear-gradient(135deg,#10281b 0%,#173a27 100%)}}.mock-window{background:#0b1f14;border-radius:16px;position:relative;overflow:hidden;transform:rotate(-1deg);box-shadow:0 30px 60px -28px #07210f8c,0 0 0 1px #8ff0a814}.mock-bar{color:#9fc2ab;font:12.5px var(--font-mono);border-bottom:1px solid #8ff0a81a;align-items:center;gap:7px;padding:12px 16px;display:flex}.mock-bar i{background:#2b4a38;border-radius:50%;width:10px;height:10px}.mock-bar i:first-child{background:#ff6b5b}.mock-bar i:nth-child(2){background:#f5c542}.mock-bar i:nth-child(3){background:#34d36b}.mock-bar span{margin-left:8px}.mock-bar em{color:#8ff0a8;letter-spacing:.08em;text-transform:uppercase;background:#34d36b29;border-radius:4px;margin-left:auto;padding:2px 8px;font-size:11px;font-style:normal}.mock-code{color:#cfe3d5;font:14px/1.7 var(--font-mono);white-space:pre;margin:0;padding:18px 22px 22px;overflow:hidden}.mock-code .k{color:#b9a8ff}.mock-code .s{color:#8ff0a8}.mock-code .n{color:#7dd3fc}.mock-code .b{color:#fbbf24}.mock-code .p{color:#7d998a}.caret{vertical-align:text-bottom;background:#8ff0a8;width:2px;height:1.1em;margin-left:3px;animation:1.1s step-end infinite caret;display:inline-block}@keyframes caret{50%{opacity:0}}.mock-badge{border:1px solid var(--border);background:var(--surface);animation:float 6s var(--ease) infinite;border-radius:14px;align-items:center;gap:10px;padding:12px 14px;display:flex;position:absolute;box-shadow:0 18px 36px -20px #0c241873}.mock-badge strong{font-family:var(--font-display);letter-spacing:-.01em;font-size:15px;font-weight:800;display:block}.mock-badge small{color:var(--text-muted);font-size:12px;display:block}.mock-valid{top:4px;right:-6px}.mock-valid .icon{box-sizing:border-box;background:var(--pop);width:30px;height:30px;color:var(--pop-ink);border-radius:9px;padding:6px}.mock-private{background:var(--forest);border-color:var(--forest);flex-direction:column;align-items:flex-start;gap:0;animation-delay:-2s;bottom:6px;left:0}.mock-private strong{color:#b9f3c8;font-size:24px}.mock-private small{color:#9fc2ab}.mock-tools{flex-direction:column;align-items:flex-start;gap:0;animation-delay:-4s;bottom:-8px;right:10px}.mock-tools strong{font-size:24px}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}.home #tool{scroll-margin-top:80px}.section-head{text-align:center;flex-direction:column;align-items:center;max-width:760px;margin:0 auto 32px;display:flex}.section-head h2{letter-spacing:-.04em;margin:0;font-size:clamp(30px,4vw,52px);font-weight:800;line-height:1.05}.section-head .lead{color:var(--text-muted);margin:14px 0 0;font-size:17.5px}.bento-section,.cat-showcase{max-width:1200px;margin:96px auto 0}.bento{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.bento-card{border:1px solid var(--border);background:var(--surface);border-radius:18px;flex-direction:column;gap:8px;min-height:190px;padding:26px;display:flex;position:relative;overflow:hidden}.bento-card>.icon{box-sizing:content-box;background:var(--accent-soft);width:22px;height:22px;color:var(--accent);border-radius:12px;margin-bottom:6px;padding:10px}.bento-card h3{letter-spacing:-.02em;margin:0;font-size:20px;font-weight:800}.bento-card p{color:var(--text-muted);margin:0}.bento-wide{grid-column:span 2}.bento-dark{background:#0b1f14 radial-gradient(#8ff0a81a 1.2px,#0000 1.6px) 0 0/16px 16px;border-color:#0b1f14}.bento-dark h3{color:#fff;letter-spacing:-.03em;max-width:18ch;font-size:clamp(24px,2.6vw,34px);line-height:1.1}.bento-dark p{color:#a9c4b2;max-width:48ch}.eyebrow.on-dark{color:#8ff0a8;background:#8ff0a824}.bento-stat{align-items:baseline;gap:10px;margin-top:auto;padding-top:16px;display:flex}.bento-stat strong{font-family:var(--font-display);letter-spacing:-.05em;color:#34d36b;font-size:clamp(56px,7vw,96px);font-weight:800;line-height:.9}.bento-stat span{color:#a9c4b2;font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;font-size:12px}.bento-mint{background:var(--accent-soft);border-color:#0000}.bento-mint>.icon{background:var(--surface)}.bento-stats{flex-flow:wrap;grid-column:1/-1;align-items:stretch;gap:0;min-height:0;padding:0}.bento-stats>div{border-right:1px solid var(--border);flex-direction:column;flex:140px;justify-content:center;gap:4px;padding:24px 26px;display:flex}.bento-stats>div:last-child{border-right:0}.bento-stats strong{font-family:var(--font-display);letter-spacing:-.04em;font-size:clamp(34px,3.6vw,46px);font-weight:800;line-height:1}.bento-stats span{color:var(--text-muted);font-size:14px}.cat-cards{grid-template-columns:repeat(auto-fill,minmax(min(260px,100%),1fr));gap:12px;margin:0;padding:0;list-style:none;display:grid}.cat-cards a{border:1px solid var(--border);background:var(--surface);height:100%;color:var(--text);transition:border-color .2s var(--ease), transform .2s var(--ease), box-shadow .2s var(--ease);border-radius:16px;flex-direction:column;gap:6px;padding:22px;text-decoration:none;display:flex}.cat-cards a:hover{border-color:var(--border-strong);transform:translateY(-2px);box-shadow:0 14px 30px -18px #0c241859}.cat-cards .icon{box-sizing:content-box;background:var(--accent-soft);width:20px;height:20px;color:var(--accent);border-radius:11px;margin-bottom:6px;padding:9px}.cat-cards em .arrow{width:14px;height:14px;transition:transform .2s var(--ease);background:0 0;margin:0;padding:0;transform:scaleX(-1)}.cat-cards a:hover em .arrow{transform:scaleX(-1)translate(-3px)}.cat-cards strong{font-family:var(--font-display);letter-spacing:-.02em;font-size:18px;font-weight:800}.cat-cards span{color:var(--text-muted);font-size:14.5px}.cat-cards em{color:var(--link);font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;align-items:center;gap:6px;margin-top:auto;padding-top:8px;font-size:12px;font-style:normal;font-weight:600;display:inline-flex}.home .home-explore{margin-top:72px}@media (max-width:1100px){.home .home-hero{grid-template-columns:minmax(0,1fr) minmax(0,.9fr)}.mock-code{font-size:12.5px}}@media (max-width:900px){.home .home-hero{grid-template-columns:minmax(0,1fr);padding-top:36px}.home-hero-visual{width:100%;max-width:560px;margin:0 auto}.bento{grid-template-columns:repeat(2,minmax(0,1fr))}.bento-section,.cat-showcase{margin-top:72px}}@media (max-width:640px){.home-hero h1{font-size:clamp(34px,10vw,44px)}.home-ctas .btn{flex:100%;justify-content:center}.home-hero-visual{padding:22px 8px 34px 16px}.mock-code{padding:14px 16px 18px;font-size:12px}.mock-valid{right:-4px}.mock-tools{display:none}.bento{grid-template-columns:minmax(0,1fr)}.bento-wide{grid-column:auto}.bento-card{min-height:0;padding:22px}.bento-stats>div{border-right:0;border-bottom:1px solid var(--border);flex-basis:50%;padding:18px 20px}.section-head{text-align:left;align-items:flex-start}}@media (prefers-reduced-motion:reduce){.mock-badge,.caret{animation:none}}
/*$vite$:1*/