:root{--bg-base:#0d1117;--bg-editor:#1c2128;--bg-editor-bar:#161b22;--bg-result:#fff;--bg-body:#f8f9fa;--bg-strip:#f4f5f7;--bg-format-strip:#0d1117;--color-valid:#00c896;--color-invalid:#e54b4b;--color-warning:#f59e0b;--text-on-dark-primary:#fff;--text-on-dark-secondary:#ffffff9e;--text-on-dark-muted:#ffffffa8;--text-on-dark-faint:#fff3;--text-on-dark-disabled:#ffffff24;--text-body:#374151;--text-muted:#646c79;--text-caption:#4b5564;--text-faint:#9ca3af;--text-label:#b0b7c3;--border-dark:#ffffff0f;--border-dark-mid:#ffffff1a;--border-light:#e5e7eb;--border-medium:#d9dce0;--syntax-text:#e6edf3;--syntax-key:#79c0ff;--syntax-string:#a5d6ff;--syntax-number:#79c0ff;--syntax-boolean:#ff7b72;--syntax-comment:#8b949e;--syntax-null:#ff7b72;--syntax-operator:#e6edf3;--format-json-schema:#4b91f1;--format-openapi:#85c1ae;--format-graphql:#e535ab;--format-yaml:#f1c40f;--format-avro:#e67e22;--format-protobuf:#9b59b6;--format-xml:#e5732b;--format-json-ld:#0c479c;--format-toml:#9c4221;--font-mono:"JetBrains Mono", "Fira Code", "Cascadia Code", "Consolas", monospace;--font-body:"Inter", system-ui, -apple-system, BlinkMacSystemFont, sans-serif;--text-2xs:10px;--text-xs:11px;--text-sm:12px;--text-md:13px;--text-base:14px;--text-lg:15px;--text-xl:20px;--text-2xl:30px;--text-3xl:32px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--space-12:48px;--radius-sm:4px;--radius-md:6px;--radius-lg:10px;--radius-xl:14px;--focus-ring:var(--color-valid);--focus-ring-on-light:#2563eb;--link-on-light:#2563eb;--t-fast:.12s ease;--t-std:.2s ease;--z-base:0;--z-overlay:100;--z-nav:200;--z-toast:300;--format-accent:var(--format-json-schema);--format-accent-on-dark:var(--format-json-schema)}body[data-format=json-schema]{--format-accent:var(--format-json-schema);--format-accent-on-dark:#4b91f1}body[data-format=openapi]{--format-accent:var(--format-openapi);--format-accent-on-dark:#85c1ae}body[data-format=graphql]{--format-accent:var(--format-graphql);--format-accent-on-dark:#e535ab}body[data-format=yaml]{--format-accent:var(--format-yaml);--format-accent-on-dark:#f1c40f}body[data-format=avro]{--format-accent:var(--format-avro);--format-accent-on-dark:#e67e22}body[data-format=protobuf]{--format-accent:var(--format-protobuf);--format-accent-on-dark:#9b59b6}body[data-format=xml]{--format-accent:var(--format-xml);--format-accent-on-dark:#e5732b}body[data-format=json-ld]{--format-accent:var(--format-json-ld);--format-accent-on-dark:#5b9bf5}body[data-format=toml]{--format-accent:var(--format-toml);--format-accent-on-dark:#c0653a}*,:before,:after{box-sizing:border-box}*{margin:0}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/inter-400.woff2)format("woff2")}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/inter-500.woff2)format("woff2")}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/jetbrains-mono-400.woff2)format("woff2")}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/jetbrains-mono-500.woff2)format("woff2")}body{font-family:var(--font-body);color:var(--text-body);background:var(--bg-body)}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}.result-empty{text-align:center;align-items:center;gap:var(--space-2);flex-direction:column;display:flex}.result-empty-sample{font-family:var(--font-mono);font-size:var(--text-xl);-webkit-user-select:none;user-select:none;margin-bottom:var(--space-1);align-items:baseline;line-height:1;display:inline-flex}.result-empty-sample .tok{opacity:.55}.result-empty-sample .tok--punct{color:var(--syntax-comment)}.result-empty-sample .tok--key{color:var(--syntax-key)}.result-empty-sample .tok--bool{color:var(--syntax-boolean)}.result-empty-caret{background:var(--color-valid);opacity:.55;width:2px;height:1em;margin-left:2px;display:inline-block;transform:translateY(.12em)}.result-empty-text{font-family:var(--font-body);font-size:var(--text-lg);color:var(--text-muted);margin:0}.result-empty-hint{font-family:var(--font-body);font-size:var(--text-md);color:var(--text-muted);margin:0}.result-empty,.result-valid,.result-invalid,.result-error,.result-loading{will-change:opacity}.result-state-label{font-family:var(--font-mono);font-size:var(--text-2xl);letter-spacing:-.5px;font-weight:500}.result-state-label--valid{color:var(--color-valid)}.result-state-label--invalid{color:var(--color-invalid)}.result-state-meta{font-family:var(--font-body);font-size:var(--text-sm);color:var(--text-muted);margin:0}.result-valid{text-align:center;align-items:center;gap:var(--space-2);flex-direction:column;display:flex}.result-tags{gap:var(--space-1);margin-top:var(--space-2);flex-wrap:wrap;justify-content:center;display:flex}.result-tag{font-family:var(--font-mono);font-size:var(--text-2xs);color:#0f6e56;border-radius:var(--radius-sm);background:#e1f5ee;padding:2px 7px}.btn-copy-result{margin-top:var(--space-3);font-family:var(--font-body);font-size:var(--text-xs);color:var(--text-muted);border:1px solid var(--border-medium);padding:var(--space-1) var(--space-3);border-radius:var(--radius-md);cursor:pointer;transition:color var(--t-fast), background var(--t-fast);background:0 0}.btn-copy-result:hover{color:var(--text-body);background:#00000008}.btn-copy-result:focus-visible{outline:2px solid var(--focus-ring-on-light);outline-offset:2px}.result-invalid{text-align:left;flex-direction:column;align-items:flex-start;width:100%;max-width:320px;display:flex}.error-list{margin:var(--space-3) 0 0;width:100%;padding:0;list-style:none}.error-item{gap:var(--space-2);margin-bottom:var(--space-3);align-items:flex-start;display:flex}.error-badge{font-family:var(--font-mono);font-size:var(--text-2xs);color:#991b1b;border-radius:var(--radius-sm);cursor:default;background:#fee2e2;border:none;flex-shrink:0;margin-top:2px;padding:2px 5px}.error-badge--line{white-space:nowrap;cursor:pointer}.error-badge--line:hover{background:#fca5a5}@media (pointer:coarse){.error-badge--line{justify-content:center;align-items:center;min-width:44px;min-height:44px;display:inline-flex}}.error-badge--path{color:#334155;overflow-wrap:anywhere;word-break:break-all;white-space:normal;background:#eef2f7;max-width:60%}.error-message{font-family:var(--font-body);font-size:var(--text-base);color:var(--text-body);line-height:1.5}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.toast{bottom:var(--space-5);background:var(--bg-base);color:var(--text-on-dark-primary);font-family:var(--font-body);font-size:var(--text-sm);padding:var(--space-2) var(--space-4);border-radius:var(--radius-md);z-index:var(--z-toast);position:fixed;left:50%;transform:translate(-50%)}.result-loading{padding:var(--space-4,16px) 0;justify-content:center;align-items:center;gap:6px;display:flex}.result-loading-dot{background:var(--color-valid,#00c896);opacity:.3;border-radius:50%;width:8px;height:8px;display:inline-block}@media (prefers-reduced-motion:no-preference){@keyframes result-dot-pulse{0%,to{opacity:.3}50%{opacity:1}}.result-loading-dot{animation:1s ease-in-out infinite result-dot-pulse}.result-loading-dot:nth-child(2){animation-delay:.2s}.result-loading-dot:nth-child(3){animation-delay:.4s}@keyframes result-swap-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.result-empty,.result-valid,.result-invalid,.result-error{animation:.12s ease-out result-swap-in}@keyframes empty-caret-blink{0%,45%{opacity:.55}55%,to{opacity:0}}.result-empty-caret{animation:1.1s step-end infinite empty-caret-blink}}.page-callout{max-width:760px;margin:var(--space-5) auto;padding:var(--space-4);border-left:3px solid var(--format-json-ld,#16a34a);background:var(--bg-strip);border-radius:var(--radius-md);font-family:var(--font-body);font-size:var(--text-base);color:var(--text-body)}.page-callout code{font-family:var(--font-mono)}.site-nav{background:var(--bg-base);padding:var(--space-3) var(--space-5);border-bottom:1px solid var(--border-dark);justify-content:space-between;align-items:center;display:flex}.nav-logo{font-family:var(--font-mono);font-size:var(--text-base);color:var(--text-on-dark-primary);font-weight:500;text-decoration:none}.nav-logo:focus-visible{outline:2px solid var(--focus-ring);outline-offset:3px;border-radius:var(--radius-sm)}.nav-logo-tld{color:var(--color-valid)}.site-nav nav{gap:var(--space-5);display:flex}.nav-link{font-family:var(--font-body);font-size:var(--text-md);color:#ffffffb3;transition:color var(--t-fast);text-decoration:none}.nav-link:hover,.nav-link:focus-visible{color:var(--text-on-dark-primary)}.nav-link:focus-visible{outline:2px solid var(--focus-ring);outline-offset:3px;border-radius:var(--radius-sm)}.skip-nav{top:-100%;left:var(--space-4);background:var(--color-valid);color:#0d1117;padding:var(--space-2) var(--space-4);border-radius:var(--radius-md);font-size:var(--text-md);z-index:var(--z-nav);font-weight:500;position:absolute}.skip-nav:focus{top:var(--space-2)}.site-footer a:focus-visible{outline:2px solid var(--focus-ring-on-light);outline-offset:2px;border-radius:var(--radius-sm)}.site-footer-updated{margin:var(--space-1) 0 0;font-size:var(--text-sm);color:var(--text-caption)}@media (pointer:coarse){.nav-link,.site-footer a{justify-content:center;align-items:center;min-width:44px;min-height:44px;display:inline-flex}}
