:root{--font-sans: Inter, "Segoe UI", system-ui, -apple-system, Arial, sans-serif;--font-mono: "JetBrains Mono", "Cascadia Code", "SF Mono", Consolas, "Liberation Mono", monospace;--radius: 6px;--radius-lg: 10px;--shell: 1400px;--header-height: 3.5rem;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.5rem;--space-6: 2rem;--space-8: 3rem}:root{color-scheme:light;--bg: #f6f4ef;--bg-sunken: #eae6dc;--bg-elevated: #ffffff;--surface: #ffffff;--surface-hover: #f0ece2;--text: #16181a;--text-muted: #565c60;--text-faint: #767c80;--accent: #8a5c14;--accent-hover: #6f4a0f;--accent-contrast: #ffffff;--border: rgba(21, 23, 25, .16);--border-strong: rgba(138, 92, 20, .45);--ok: #1a6b41;--ok-bg: rgba(26, 107, 65, .1);--error: #a8261c;--error-bg: rgba(168, 38, 28, .09);--warn: #7d5400;--warn-bg: rgba(125, 84, 0, .1);--info-bg: rgba(138, 92, 20, .07);--shadow: 0 16px 40px rgba(21, 23, 25, .12);--selection: rgba(138, 92, 20, .2);--match: rgba(232, 190, 90, .4);--match-active: rgba(224, 150, 30, .65);--syn-key: #1f5fa8;--syn-string: #256b3a;--syn-number: #8a5c14;--syn-bool: #7a2f96;--syn-null: #6b7174;--syn-punct: #6b7174}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){color-scheme:dark;--bg: #151719;--bg-sunken: #0f1112;--bg-elevated: #1b2022;--surface: #23292b;--surface-hover: #2b3234;--text: #f4f0e6;--text-muted: #a4aaad;--text-faint: #7b8285;--accent: #d8b778;--accent-hover: #e5c98f;--accent-contrast: #17130d;--border: rgba(244, 240, 230, .14);--border-strong: rgba(216, 183, 120, .4);--ok: #79c99a;--ok-bg: rgba(121, 201, 154, .12);--error: #f4938a;--error-bg: rgba(244, 147, 138, .12);--warn: #e8c07a;--warn-bg: rgba(232, 192, 122, .12);--info-bg: rgba(216, 183, 120, .09);--shadow: 0 18px 44px rgba(0, 0, 0, .45);--selection: rgba(216, 183, 120, .28);--match: rgba(216, 183, 120, .32);--match-active: rgba(232, 160, 60, .62);--syn-key: #9ecbff;--syn-string: #b5e0a4;--syn-number: #e8c07a;--syn-bool: #d9a8f0;--syn-null: #a4aaad;--syn-punct: #8b9295}}html[data-theme=light]{color-scheme:light;--bg: #f6f4ef;--bg-sunken: #eae6dc;--bg-elevated: #ffffff;--surface: #ffffff;--surface-hover: #f0ece2;--text: #16181a;--text-muted: #565c60;--text-faint: #767c80;--accent: #8a5c14;--accent-hover: #6f4a0f;--accent-contrast: #ffffff;--border: rgba(21, 23, 25, .16);--border-strong: rgba(138, 92, 20, .45);--ok: #1a6b41;--ok-bg: rgba(26, 107, 65, .1);--error: #a8261c;--error-bg: rgba(168, 38, 28, .09);--warn: #7d5400;--warn-bg: rgba(125, 84, 0, .1);--info-bg: rgba(138, 92, 20, .07);--shadow: 0 16px 40px rgba(21, 23, 25, .12);--selection: rgba(138, 92, 20, .2);--match: rgba(232, 190, 90, .4);--match-active: rgba(224, 150, 30, .65);--syn-key: #1f5fa8;--syn-string: #256b3a;--syn-number: #8a5c14;--syn-bool: #7a2f96;--syn-null: #6b7174;--syn-punct: #6b7174}html[data-theme=dark]{color-scheme:dark;--bg: #151719;--bg-sunken: #0f1112;--bg-elevated: #1b2022;--surface: #23292b;--surface-hover: #2b3234;--text: #f4f0e6;--text-muted: #a4aaad;--text-faint: #7b8285;--accent: #d8b778;--accent-hover: #e5c98f;--accent-contrast: #17130d;--border: rgba(244, 240, 230, .14);--border-strong: rgba(216, 183, 120, .4);--ok: #79c99a;--ok-bg: rgba(121, 201, 154, .12);--error: #f4938a;--error-bg: rgba(244, 147, 138, .12);--warn: #e8c07a;--warn-bg: rgba(232, 192, 122, .12);--info-bg: rgba(216, 183, 120, .09);--shadow: 0 18px 44px rgba(0, 0, 0, .45);--selection: rgba(216, 183, 120, .28);--match: rgba(216, 183, 120, .32);--match-active: rgba(232, 160, 60, .62);--syn-key: #9ecbff;--syn-string: #b5e0a4;--syn-number: #e8c07a;--syn-bool: #d9a8f0;--syn-null: #a4aaad;--syn-punct: #8b9295}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--bg);color:var(--text);font-family:var(--font-sans);font-size:15px;line-height:1.6;-webkit-text-size-adjust:100%}::selection{background:var(--selection)}a{color:var(--accent)}button,input,select,textarea{font:inherit;color:inherit}img{max-width:100%}code,kbd,samp{font-family:var(--font-mono);font-size:.92em}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:3px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;top:.5rem;left:.5rem;z-index:200;padding:.6rem .9rem;background:var(--accent);color:var(--accent-contrast);font-weight:700;text-decoration:none;transform:translateY(-200%)}.skip-link:focus{transform:none}.site-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);min-height:var(--header-height);padding:0 var(--space-4);border-bottom:1px solid var(--border);background:var(--bg-elevated)}.brand{display:inline-flex;align-items:center;gap:.55rem;color:var(--text);text-decoration:none}.brand img{width:2rem;height:2rem;border:1px solid var(--border-strong);border-radius:5px}.brand strong,.brand small{display:block;line-height:1}.brand strong{font-size:.9rem;text-transform:uppercase;letter-spacing:.02em}.brand small{margin-top:.2rem;color:var(--accent);font-size:.62rem;letter-spacing:.16em;text-transform:uppercase}.site-nav{display:flex;flex-wrap:wrap;gap:.1rem}.site-nav a{padding:.45rem .6rem;border-radius:var(--radius);color:var(--text-muted);font-size:.88rem;text-decoration:none}.site-nav a:hover{color:var(--text);background:var(--surface-hover)}.site-nav a[aria-current=page]{color:var(--text);box-shadow:inset 0 -2px var(--accent)}.site-footer{padding:var(--space-6) var(--space-4);border-top:1px solid var(--border);color:var(--text-muted);font-size:.88rem;text-align:center}.site-footer p{margin:.35rem 0}.noscript-note{width:min(var(--shell),calc(100% - 2rem));margin:var(--space-6) auto;padding:var(--space-5);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--bg-elevated)}#root{min-height:calc(clamp(22rem,52vh,40rem) + 24rem)}#root[data-kind=split]{min-height:calc(clamp(18rem,42vh,32rem) + 30rem)}@media(max-width:900px){#root[data-kind=split]{min-height:calc(2*clamp(18rem,42vh,32rem) + 38rem)}}@media(max-width:720px){#root{min-height:calc(clamp(18rem,58vh,32rem) + 26rem)}}.app{width:min(var(--shell),calc(100% - 2rem));margin:0 auto;padding:var(--space-5) 0 var(--space-6)}.app-intro{margin-bottom:var(--space-4)}.app-intro h1{margin:0;font-size:clamp(1.5rem,3vw,2rem);line-height:1.15;letter-spacing:-.01em}.app-intro p{max-width:60ch;margin:.4rem 0 0;color:var(--text-muted)}.privacy-note{display:inline-flex;align-items:center;gap:.5rem;margin-top:var(--space-3);padding:.4rem .75rem;border:1px solid var(--border-strong);border-radius:999px;background:var(--info-bg);color:var(--text);font-size:.82rem;font-weight:600}.privacy-note svg{flex:none;color:var(--accent)}.toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2);padding:var(--space-2) 0}.toolbar-group{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2)}.toolbar-spacer{flex:1 1 auto}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;min-height:2.35rem;padding:.4rem .8rem;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);color:var(--text);font-size:.88rem;font-weight:600;line-height:1.2;white-space:nowrap;cursor:pointer;transition:background-color .15s,border-color .15s,color .15s}.btn:hover:not(:disabled){background:var(--surface-hover);border-color:var(--border-strong)}.btn:disabled{opacity:.45;cursor:not-allowed}.btn-primary{border-color:transparent;background:var(--accent);color:var(--accent-contrast)}.btn-primary:hover:not(:disabled){background:var(--accent-hover);border-color:transparent}.btn-danger{color:var(--error)}.btn-icon{min-width:2.35rem;padding:.4rem}.btn kbd{padding:.05rem .3rem;border:1px solid var(--border);border-radius:3px;color:var(--text-faint);font-size:.72em}.btn-primary kbd{border-color:#00000040;color:inherit;opacity:.75}.select-field{display:inline-flex;align-items:center;gap:.4rem;color:var(--text-muted);font-size:.82rem}.select-field select{min-height:2.35rem;padding:.3rem .5rem;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);color:var(--text);font-size:.86rem}.segmented{display:inline-flex;padding:2px;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-sunken)}.segmented button{padding:.32rem .75rem;border:0;border-radius:4px;background:transparent;color:var(--text-muted);font-size:.85rem;font-weight:600;cursor:pointer}.segmented button[aria-pressed=true]{background:var(--surface);color:var(--text);box-shadow:var(--shadow)}.workspace{display:flex;flex-direction:column;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--bg-elevated);overflow:hidden}.editor-host{position:relative;min-height:22rem;height:clamp(22rem,52vh,40rem)}.editor-host .cm-editor{height:100%}.editor-host .cm-scroller{font-family:var(--font-mono);line-height:1.55}.editor-host .cm-editor.cm-focused{outline:none}.busy-overlay{position:absolute;inset:0;z-index:5;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-3);background:color-mix(in srgb,var(--bg-elevated) 82%,transparent);backdrop-filter:blur(2px)}.busy-overlay p{margin:0;font-weight:600}.spinner{width:1.6rem;height:1.6rem;border:2px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.spinner{animation-duration:2.4s}.btn,.tree-row{transition:none}}.status-bar{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2) var(--space-4);padding:var(--space-2) var(--space-3);border-top:1px solid var(--border);background:var(--bg-sunken);font-size:.82rem}.status-flag{display:inline-flex;align-items:center;gap:.4rem;font-weight:700}.status-flag.is-ok{color:var(--ok)}.status-flag.is-error{color:var(--error)}.status-flag.is-idle{color:var(--text-muted)}.status-metrics{display:flex;flex-wrap:wrap;gap:var(--space-2) var(--space-4);color:var(--text-muted)}.status-metrics dl{display:flex;gap:.35rem;margin:0}.status-metrics dt{color:var(--text-faint)}.status-metrics dd{margin:0;font-variant-numeric:tabular-nums}.status-badge{padding:.1rem .45rem;border:1px solid var(--border-strong);border-radius:999px;background:var(--warn-bg);color:var(--warn);font-size:.74rem;font-weight:700}.panel{border-top:1px solid var(--border);background:var(--bg-elevated)}.panel-header{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2);padding:var(--space-3);border-bottom:1px solid var(--border)}.panel-title{margin:0;font-size:.95rem;font-weight:800}.panel-body{max-height:18rem;overflow:auto}.error-summary{padding:var(--space-4);border-left:3px solid var(--error);background:var(--error-bg)}.error-summary h3{margin:0 0 .35rem;font-size:1rem;color:var(--error)}.error-summary .error-message{margin:0 0 .5rem;font-weight:600}.error-position{color:var(--text-muted);font-family:var(--font-mono);font-size:.85rem}.error-expected{margin:.5rem 0 0;color:var(--text-muted)}.error-snippet{margin:.6rem 0 0;padding:.6rem .75rem;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-sunken);overflow-x:auto;font-family:var(--font-mono);font-size:.85rem;white-space:pre}.error-caret{display:block;color:var(--error)}.problem-list{margin:0;padding:0;list-style:none}.problem{display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-3);border-bottom:1px solid var(--border)}.problem:last-child{border-bottom:0}.problem input[type=checkbox]{margin-top:.3rem;width:1rem;height:1rem;accent-color:var(--accent)}.problem-main{flex:1 1 auto;min-width:0}.problem-where{display:inline-block;margin-right:.5rem;color:var(--text-faint);font-family:var(--font-mono);font-size:.8rem}.problem-message{font-weight:600}.problem-fix{margin-top:.2rem;color:var(--ok);font-size:.85rem}.problem-nofix{margin-top:.2rem;color:var(--text-faint);font-size:.85rem}.problem-goto{flex:none}.tree{height:clamp(22rem,52vh,40rem);overflow:auto;padding:var(--space-2) 0;font-family:var(--font-mono);font-size:.88rem}.tree-row{display:flex;align-items:flex-start;gap:.3rem;width:100%;padding:.08rem var(--space-3);border:0;background:transparent;text-align:left;cursor:default}.tree-row:hover{background:var(--surface-hover)}.tree-row.is-match{background:var(--match)}.tree-row.is-active-match{background:var(--match-active)}.tree-toggle{flex:none;width:1.1rem;height:1.35rem;padding:0;border:0;background:transparent;color:var(--text-faint);cursor:pointer;line-height:1}.tree-toggle:hover{color:var(--text)}.tree-toggle-placeholder{flex:none;width:1.1rem}.tree-key{color:var(--syn-key)}.tree-index{color:var(--text-faint)}.tree-colon{color:var(--syn-punct);margin-right:.35rem}.tree-string{color:var(--syn-string);overflow-wrap:anywhere}.tree-number{color:var(--syn-number)}.tree-bool{color:var(--syn-bool)}.tree-null{color:var(--syn-null)}.tree-summary{color:var(--text-faint)}.tree-actions{flex:none;display:flex;gap:.2rem;margin-left:auto;opacity:0}.tree-row:hover .tree-actions,.tree-row:focus-within .tree-actions{opacity:1}.tree-action{padding:0 .35rem;border:1px solid var(--border);border-radius:4px;background:var(--surface);color:var(--text-muted);font-family:var(--font-sans);font-size:.72rem;cursor:pointer}.tree-action:hover{color:var(--text);border-color:var(--border-strong)}.tree-editable{padding:0 .15rem;border:1px solid transparent;border-radius:3px;background:transparent;font:inherit;color:inherit;text-align:left;cursor:text}.tree-editable:hover{border-color:var(--border-strong);background:var(--surface)}.tree-input{min-width:6rem;max-width:26rem;padding:0 .25rem;border:1px solid var(--accent);border-radius:3px;background:var(--bg-elevated);color:var(--text);font:inherit}.tree-input.is-invalid{border-color:var(--error);background:var(--error-bg)}.tree-type{padding:0 .15rem;border:1px solid var(--border);border-radius:4px;background:var(--surface);color:var(--text-muted);font-family:var(--font-sans);font-size:.72rem}.tree-action:disabled{opacity:.35;cursor:not-allowed}.tree-action.is-danger:hover{border-color:var(--error);color:var(--error)}.tree-row:focus-within .tree-actions{opacity:1}.tree-guard{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-3);max-width:44rem;margin:var(--space-6) auto;padding:var(--space-5);border:1px solid var(--border-strong);border-radius:var(--radius-lg);background:var(--warn-bg);font-family:var(--font-sans)}.tree-guard h3{margin:0}.tree-guard p{margin:0;color:var(--text-muted)}.tree-empty{padding:var(--space-6);color:var(--text-muted);font-family:var(--font-sans);text-align:center}.search-bar{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-top:1px solid var(--border);background:var(--bg-sunken)}.search-input{flex:1 1 12rem;min-width:8rem;min-height:2.2rem;padding:.3rem .6rem;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface)}.search-count{min-width:5.5rem;color:var(--text-muted);font-size:.82rem;font-variant-numeric:tabular-nums;text-align:center}.search-count.is-empty{color:var(--error)}.search-toggle{display:inline-flex;align-items:center;gap:.35rem;color:var(--text-muted);font-size:.82rem;white-space:nowrap}.search-toggle input{accent-color:var(--accent)}.toast-region{position:fixed;right:var(--space-4);bottom:var(--space-4);z-index:100;display:flex;flex-direction:column;gap:var(--space-2);pointer-events:none}.toast{display:flex;align-items:center;gap:.5rem;padding:.6rem .9rem;border:1px solid var(--border-strong);border-radius:var(--radius);background:var(--bg-elevated);box-shadow:var(--shadow);font-size:.88rem;font-weight:600}.toast.is-error{border-color:var(--error);color:var(--error)}.toast.is-ok .toast-icon{color:var(--ok)}.ad-slot{display:none}.ad-slot[data-enabled=true]{display:block;min-height:90px;margin:var(--space-5) 0;border:1px dashed var(--border);border-radius:var(--radius)}.page-content{width:min(var(--shell),calc(100% - 2rem));margin:var(--space-8) auto 0}.content-section{padding:var(--space-6) 0;border-top:1px solid var(--border)}.content-section h2{margin:0 0 var(--space-4);font-size:clamp(1.3rem,2.4vw,1.75rem);line-height:1.2}.content-section h3{margin:0 0 .3rem;font-size:1rem}.content-section p{max-width:70ch;color:var(--text-muted)}.muted{color:var(--text-muted)}.feature-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(15rem,1fr));gap:var(--space-4);margin:0;padding:0;list-style:none}.feature-grid li{padding:var(--space-4);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--bg-elevated)}.feature-grid p{margin:0;font-size:.92rem}.steps{max-width:70ch;padding-left:1.2rem;color:var(--text-muted)}.steps li{margin-bottom:.4rem}.steps kbd,.content-section kbd{padding:.1rem .35rem;border:1px solid var(--border);border-radius:4px;background:var(--bg-sunken)}.error-list,.faq{max-width:78ch;margin:0}.error-list dt,.faq dt{margin-top:var(--space-4);font-weight:700}.error-list dd,.faq dd{margin:.25rem 0 0;color:var(--text-muted)}.content-section code{padding:.1rem .3rem;border-radius:4px;background:var(--bg-sunken)}@media(max-width:720px){body{font-size:14px}.app{width:calc(100% - 1.5rem)}.site-header{flex-wrap:wrap;padding:var(--space-2) var(--space-3)}.editor-host,.tree{height:clamp(18rem,58vh,32rem)}.toolbar-group.is-secondary{display:none}.toolbar.is-expanded .toolbar-group.is-secondary{display:flex;order:10;flex-basis:100%}.btn{flex:1 1 auto}.btn kbd{display:none}.status-bar{font-size:.78rem}}@media(min-width:721px){.btn-more{display:none}}.table-scroll{height:clamp(22rem,52vh,40rem);overflow:auto}.data-table{border-collapse:collapse;width:max-content;min-width:100%;font-family:var(--font-mono);font-size:.85rem}.data-table th,.data-table td{padding:.3rem .6rem;border-bottom:1px solid var(--border);border-right:1px solid var(--border);text-align:left;vertical-align:top;white-space:nowrap}.data-table thead th{position:sticky;top:0;z-index:1;background:var(--bg-sunken);color:var(--syn-key);font-weight:700}.data-table .table-index{position:sticky;left:0;background:var(--bg-sunken);color:var(--text-faint);font-weight:400;text-align:right}.data-table thead .table-index{z-index:2}.table-cell.is-missing{color:var(--text-faint)}.table-cell.is-match{background:var(--match)}.table-cell.is-active-match{background:var(--match-active)}.table-cell-button{max-width:32rem;overflow:hidden;border:0;background:none;color:inherit;font:inherit;text-align:left;text-overflow:ellipsis;cursor:pointer}.query-body{padding:var(--space-3)}.query-summary{margin-bottom:var(--space-2)}.query-summary code{margin-right:.5rem;padding:.05rem .3rem;border-radius:3px;background:var(--bg-sunken)}.query-paths{max-height:9rem;margin:0 0 var(--space-3);padding:0;overflow:auto;list-style:none}.query-path{padding:.1rem .3rem;border:0;border-radius:3px;background:none;color:var(--accent);font-family:var(--font-mono);font-size:.82rem;cursor:pointer}.query-path:hover{background:var(--surface-hover);color:var(--text)}.query-output{max-height:16rem;margin:0;padding:var(--space-3);border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-sunken);overflow:auto;font-size:.85rem}.split-panes{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-3)}@media(max-width:900px){.split-panes{grid-template-columns:1fr}}.split-pane{display:flex;flex-direction:column;min-width:0;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--bg-elevated);overflow:hidden}.pane-header{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--border);background:var(--bg-sunken)}.pane-header h2{margin:0;font-size:.88rem;font-weight:800}.split-pane .editor-host{height:clamp(18rem,42vh,32rem);min-height:0}.output-pane{height:clamp(18rem,42vh,32rem);overflow:auto}.output-pane pre{margin:0;padding:var(--space-3);font-family:var(--font-mono);font-size:.85rem;white-space:pre}.output-pane .error-summary{height:100%}.diff-count{padding:.1rem .45rem;border-radius:999px;font-size:.76rem;font-weight:700}.diff-count.is-added,.diff-badge.is-added{background:var(--ok-bg);color:var(--ok)}.diff-count.is-removed,.diff-badge.is-removed{background:var(--error-bg);color:var(--error)}.diff-count.is-changed,.diff-badge.is-changed{background:var(--warn-bg);color:var(--warn)}.diff-badge{flex:none;min-width:4.75rem;padding:.1rem .4rem;border-radius:4px;font-size:.72rem;font-weight:700;text-align:center;text-transform:uppercase}.diff-values{margin-top:.15rem;font-family:var(--font-mono);font-size:.82rem;overflow-wrap:anywhere}.diff-before{color:var(--error)}.diff-after{color:var(--ok)}.related-list{display:flex;flex-wrap:wrap;gap:var(--space-2);margin:0;padding:0;list-style:none}.related-list a{display:inline-block;padding:.4rem .75rem;border:1px solid var(--border);border-radius:999px;background:var(--bg-elevated);text-decoration:none}.related-list a:hover{border-color:var(--border-strong)}.tool-switcher{width:min(var(--shell),calc(100% - 2rem));margin:0 auto;padding-top:var(--space-3)}.tool-switcher ul{display:flex;gap:var(--space-2);margin:0;padding:0 0 var(--space-2);list-style:none;overflow-x:auto;scrollbar-width:thin}.tool-switcher a{display:block;padding:.3rem .7rem;border:1px solid var(--border);border-radius:999px;background:var(--bg-elevated);color:var(--text-muted);font-size:.82rem;font-weight:600;text-decoration:none;white-space:nowrap}.tool-switcher a:hover{border-color:var(--border-strong);color:var(--text)}.tool-switcher a[aria-current=page]{border-color:transparent;background:var(--accent);color:var(--accent-contrast)}.tool-switcher-label a{border-style:dashed;color:var(--accent)}.article{max-width:52rem}.crumbs{margin-bottom:var(--space-4);color:var(--text-faint);font-size:.84rem}.crumbs a{color:var(--text-muted);text-decoration:none}.crumbs a:hover{color:var(--text)}.article h1{margin:0;font-size:clamp(1.6rem,4vw,2.4rem);line-height:1.15;letter-spacing:-.01em}.standfirst{max-width:60ch;margin:var(--space-3) 0 var(--space-5);color:var(--text-muted);font-size:1.05rem}.article-cta{margin-bottom:var(--space-5);text-decoration:none}.article .content-section{padding:var(--space-5) 0}.article .content-section h2{margin-bottom:var(--space-3);font-size:clamp(1.15rem,2.2vw,1.4rem)}.message-list,.reason-list{max-width:70ch;margin:0;padding-left:1.1rem;color:var(--text-muted)}.message-list{list-style:none;padding-left:0}.message-list li{margin-bottom:var(--space-2)}.message-list code{display:block;padding:.5rem .7rem;border-left:3px solid var(--error);border-radius:0 var(--radius) var(--radius) 0;background:var(--error-bg);color:var(--text);overflow-wrap:anywhere}.reason-list li{margin-bottom:var(--space-2)}.example-pair{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-3)}@media(max-width:720px){.example-pair{grid-template-columns:1fr}}.example-pair figure{margin:0;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--bg-elevated);overflow:hidden}.example-pair figcaption{padding:.35rem .7rem;border-bottom:1px solid var(--border);font-size:.76rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em}.example-pair figcaption.is-broken{background:var(--error-bg);color:var(--error)}.example-pair figcaption.is-fixed{background:var(--ok-bg);color:var(--ok)}.example-pair pre{margin:0;padding:var(--space-3);overflow-x:auto;font-family:var(--font-mono);font-size:.85rem}.error-index{display:grid;grid-template-columns:repeat(auto-fit,minmax(19rem,1fr));gap:var(--space-3);margin:0;padding:0;list-style:none}.error-index a{display:block;height:100%;padding:var(--space-4);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--bg-elevated);text-decoration:none}.error-index a:hover{border-color:var(--border-strong)}.error-index strong{display:block;margin-bottom:.3rem;color:var(--text)}.error-index span{color:var(--text-muted);font-family:var(--font-mono);font-size:.78rem;overflow-wrap:anywhere}.error-search{margin-bottom:var(--space-5)}.error-search label{display:block;margin-bottom:var(--space-2);font-weight:700}.error-search-row{display:flex;gap:var(--space-2)}.error-search input{flex:1 1 auto;min-width:0;min-height:2.6rem;padding:.4rem .75rem;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-elevated);color:var(--text);font-family:var(--font-mono);font-size:.86rem}.error-search input:focus{border-color:var(--accent)}.error-search-status{min-height:1.2rem;margin:var(--space-2) 0 0;color:var(--text-muted);font-size:.86rem}.error-search-empty{max-width:60ch;margin:var(--space-4) 0 0;padding:var(--space-4);border:1px solid var(--border-strong);border-radius:var(--radius-lg);background:var(--warn-bg);color:var(--text-muted)}.site-nav .nav-menu{position:relative}.site-nav .nav-menu>summary{display:flex;align-items:center;gap:.3rem;padding:.45rem .6rem;border-radius:var(--radius);color:var(--text-muted);font-size:.88rem;cursor:pointer;list-style:none}.site-nav .nav-menu>summary::-webkit-details-marker{display:none}.site-nav .nav-menu>summary:after{width:0;height:0;border-left:4px solid transparent;border-right:4px solid transparent;border-top:5px solid currentColor;opacity:.7;content:""}.site-nav .nav-menu[open]>summary:after{transform:rotate(180deg)}.site-nav .nav-menu>summary:hover,.site-nav .nav-menu[open]>summary{color:var(--text);background:var(--surface-hover)}.nav-menu-panel{position:absolute;z-index:60;top:calc(100% + .4rem);right:0;display:grid;min-width:13rem;padding:.3rem;border:1px solid var(--border-strong);border-radius:var(--radius-lg);background:var(--bg-elevated);box-shadow:var(--shadow)}.nav-menu-panel a{padding:.5rem .7rem;border-radius:var(--radius);color:var(--text);font-size:.88rem;text-decoration:none;white-space:nowrap}.nav-menu-panel a:hover{background:var(--surface-hover)}.nav-menu-panel a[aria-current=page]{color:var(--accent);font-weight:700}.transform-tool{display:flex;flex-direction:column;gap:1rem;padding:1rem}.transform-head h1{margin:0 0 .35rem;font-size:clamp(1.35rem,2.4vw,1.9rem)}.transform-head .standfirst{max-width:62ch;margin:0;color:var(--muted, #a4aaad)}.privacy-badge{display:inline-flex;align-items:center;gap:.45rem;margin:.9rem 0 0;padding:.35rem .7rem;border:1px solid var(--line, rgba(244,240,230,.14));border-radius:999px;font-size:.8rem;font-weight:700}.privacy-badge-icon{line-height:1}.spec-fields{display:flex;flex-wrap:wrap;gap:.9rem 1.4rem;align-items:flex-start;padding:.9rem 1rem;border:1px solid var(--line, rgba(244,240,230,.14));border-radius:8px}.spec-field{display:flex;flex-direction:column;gap:.35rem;min-width:0}.spec-field>label{font-size:.78rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.spec-field input[type=text],.spec-field input[type=number],.spec-field select{min-width:8rem;padding:.5rem .6rem;border:1px solid var(--line, rgba(244,240,230,.14));border-radius:6px;background:var(--surface, #1b2022);color:inherit}.spec-field input[type=text]{min-width:20rem;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.spec-field-check{justify-content:center}.spec-field-check>label{display:inline-flex;gap:.45rem;align-items:center;font-size:.88rem;font-weight:600;text-transform:none;letter-spacing:0;cursor:pointer}.spec-hint{max-width:34ch;margin:0;font-size:.76rem;opacity:.72}.transform-panes{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.transform-panes.is-split{grid-template-columns:repeat(3,1fr)}.tool-textarea{width:100%;min-height:16rem;padding:.8rem;border:0;background:transparent;color:inherit;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.9rem;line-height:1.55;resize:vertical}.tool-textarea:focus-visible{outline:2px solid var(--sand, #d8b778);outline-offset:-2px}.tool-output{display:block;min-height:16rem;padding:.8rem;overflow:auto}.tool-output pre{margin:0;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.9rem;line-height:1.55;white-space:pre-wrap;overflow-wrap:anywhere}.tool-error{margin:0;color:#ffb4a2;font-size:.9rem}.tool-warning{margin:0;padding:.7rem .9rem;border:1px solid rgba(216,183,120,.4);border-left-width:3px;border-radius:6px;font-size:.88rem}.tool-facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(15rem,1fr));gap:.5rem 1.5rem;margin:0}.tool-facts>div{display:flex;gap:.5rem;padding:.35rem 0;border-bottom:1px solid var(--line, rgba(244,240,230,.1))}.tool-facts dt{flex:0 0 auto;font-size:.8rem;font-weight:800;opacity:.8}.tool-facts dd{margin:0;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.82rem;overflow-wrap:anywhere}.highlight-view{padding:.8rem;border:1px solid var(--line, rgba(244,240,230,.14));border-radius:8px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.9rem;line-height:1.7;white-space:pre-wrap;overflow-wrap:anywhere}.highlight-view mark{padding:.1rem .15rem;border-radius:3px;background:#d8b77859;color:inherit}.diff-view{margin:0;padding:0;border:1px solid var(--line, rgba(244,240,230,.14));border-radius:8px;overflow:hidden;list-style:none;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.85rem}.diff-line{display:grid;grid-template-columns:1.2rem 3rem 3rem 1fr;gap:.5rem;padding:.1rem .5rem}.diff-line.is-insert{background:#50c87821}.diff-line.is-delete{background:#ff786421}.diff-gutter{font-weight:800;text-align:center}.diff-number{opacity:.45;text-align:right;font-size:.78rem}.diff-line code{white-space:pre-wrap;overflow-wrap:anywhere}.diff-identical{margin:0;padding:.8rem;border:1px solid var(--line, rgba(244,240,230,.14));border-radius:8px}@media(max-width:900px){.transform-panes,.transform-panes.is-split{grid-template-columns:1fr}.tool-textarea,.tool-output{min-height:11rem}.spec-field input[type=text]{min-width:0;width:100%}.diff-line{grid-template-columns:1rem 2.2rem 1fr}.diff-line .diff-number:last-of-type{display:none}}
