@keyframes astroFadeInOut{0%{opacity:1}to{opacity:0}}@keyframes astroFadeIn{0%{opacity:0;mix-blend-mode:plus-lighter}to{opacity:1;mix-blend-mode:plus-lighter}}@keyframes astroFadeOut{0%{opacity:1;mix-blend-mode:plus-lighter}to{opacity:0;mix-blend-mode:plus-lighter}}@keyframes astroSlideFromRight{0%{transform:translate(100%)}}@keyframes astroSlideFromLeft{0%{transform:translate(-100%)}}@keyframes astroSlideToRight{to{transform:translate(100%)}}@keyframes astroSlideToLeft{to{transform:translate(-100%)}}@media (prefers-reduced-motion){::view-transition-group(*),::view-transition-old(*),::view-transition-new(*),[data-astro-transition-scope]{animation:none!important}}@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-border-style:solid;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--color-slate-900:oklch(20.8% .042 265.755);--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--color-primary:#006bea;--color-secondary:#22d4fc;--font-ui:Arial, Helvetica, sans-serif;--font-editorial:Georgia, "Times New Roman", serif}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.collapse{visibility:collapse}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.fixed{position:fixed}.static{position:static}.sticky{position:sticky}.container{width:100%}@media (width>=40rem){.container{max-width:40rem}}@media (width>=48rem){.container{max-width:48rem}}@media (width>=64rem){.container{max-width:64rem}}@media (width>=80rem){.container{max-width:80rem}}@media (width>=96rem){.container{max-width:96rem}}.prose{color:var(--tw-prose-body);max-width:65ch}.prose :where(p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em;margin-bottom:1.25em}.prose :where([class~=lead]):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-lead);margin-top:1.2em;margin-bottom:1.2em;font-size:1.25em;line-height:1.6}.prose :where(a):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-links);font-weight:500;text-decoration:underline}.prose :where(strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-bold);font-weight:600}.prose :where(a strong):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(blockquote strong):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(thead th strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(ol):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em;margin-bottom:1.25em;padding-inline-start:1.625em;list-style-type:decimal}.prose :where(ol[type=A]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-alpha}.prose :where(ol[type=a]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-alpha}.prose :where(ol[type=A s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-alpha}.prose :where(ol[type=a s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-alpha}.prose :where(ol[type=I]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-roman}.prose :where(ol[type=i]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-roman}.prose :where(ol[type=I s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-roman}.prose :where(ol[type=i s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-roman}.prose :where(ol[type="1"]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:decimal}.prose :where(ul):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em;margin-bottom:1.25em;padding-inline-start:1.625em;list-style-type:disc}.prose :where(ol>li):not(:where([class~=not-prose],[class~=not-prose] *))::marker{color:var(--tw-prose-counters);font-weight:400}.prose :where(ul>li):not(:where([class~=not-prose],[class~=not-prose] *))::marker{color:var(--tw-prose-bullets)}.prose :where(dt):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);margin-top:1.25em;font-weight:600}.prose :where(hr):not(:where([class~=not-prose],[class~=not-prose] *)){border-color:var(--tw-prose-hr);border-top-width:1px;margin-top:3em;margin-bottom:3em}.prose :where(blockquote):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-quotes);border-inline-start-width:.25rem;border-inline-start-color:var(--tw-prose-quote-borders);quotes:"“""”""‘""’";margin-top:1.6em;margin-bottom:1.6em;padding-inline-start:1em;font-style:italic;font-weight:500}.prose :where(blockquote p:first-of-type):not(:where([class~=not-prose],[class~=not-prose] *)):before{content:open-quote}.prose :where(blockquote p:last-of-type):not(:where([class~=not-prose],[class~=not-prose] *)):after{content:close-quote}.prose :where(h1):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);margin-top:0;margin-bottom:.888889em;font-size:2.25em;font-weight:800;line-height:1.11111}.prose :where(h1 strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-weight:900}.prose :where(h2):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);margin-top:2em;margin-bottom:1em;font-size:1.5em;font-weight:700;line-height:1.33333}.prose :where(h2 strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-weight:800}.prose :where(h3):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);margin-top:1.6em;margin-bottom:.6em;font-size:1.25em;font-weight:600;line-height:1.6}.prose :where(h3 strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-weight:700}.prose :where(h4):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);margin-top:1.5em;margin-bottom:.5em;font-weight:600;line-height:1.5}.prose :where(h4 strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-weight:700}.prose :where(img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em}.prose :where(picture):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em;display:block}.prose :where(video):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em}.prose :where(kbd):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-kbd);box-shadow:0 0 0 1px var(--tw-prose-kbd-shadows), 0 3px 0 var(--tw-prose-kbd-shadows);padding-top:.1875em;padding-inline-end:.375em;padding-bottom:.1875em;border-radius:.3125rem;padding-inline-start:.375em;font-family:inherit;font-size:.875em;font-weight:500}.prose :where(code):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-code);font-size:.875em;font-weight:600}.prose :where(code):not(:where([class~=not-prose],[class~=not-prose] *)):before,.prose :where(code):not(:where([class~=not-prose],[class~=not-prose] *)):after{content:"`"}.prose :where(a code):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(h1 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(h2 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-size:.875em}.prose :where(h3 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-size:.9em}.prose :where(h4 code):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(blockquote code):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(thead th code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(pre):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-pre-code);background-color:var(--tw-prose-pre-bg);padding-top:.857143em;padding-inline-end:1.14286em;padding-bottom:.857143em;border-radius:.375rem;margin-top:1.71429em;margin-bottom:1.71429em;padding-inline-start:1.14286em;font-size:.875em;font-weight:400;line-height:1.71429;overflow-x:auto}.prose :where(pre code):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:inherit;color:inherit;font-size:inherit;font-family:inherit;line-height:inherit;background-color:#0000;border-width:0;border-radius:0;padding:0}.prose :where(pre code):not(:where([class~=not-prose],[class~=not-prose] *)):before,.prose :where(pre code):not(:where([class~=not-prose],[class~=not-prose] *)):after{content:none}.prose :where(table):not(:where([class~=not-prose],[class~=not-prose] *)){table-layout:auto;width:100%;margin-top:2em;margin-bottom:2em;font-size:.875em;line-height:1.71429}.prose :where(thead):not(:where([class~=not-prose],[class~=not-prose] *)){border-bottom-width:1px;border-bottom-color:var(--tw-prose-th-borders)}.prose :where(thead th):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);vertical-align:bottom;padding-inline-end:.571429em;padding-bottom:.571429em;padding-inline-start:.571429em;font-weight:600}.prose :where(tbody tr):not(:where([class~=not-prose],[class~=not-prose] *)){border-bottom-width:1px;border-bottom-color:var(--tw-prose-td-borders)}.prose :where(tbody tr:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){border-bottom-width:0}.prose :where(tbody td):not(:where([class~=not-prose],[class~=not-prose] *)){vertical-align:baseline}.prose :where(tfoot):not(:where([class~=not-prose],[class~=not-prose] *)){border-top-width:1px;border-top-color:var(--tw-prose-th-borders)}.prose :where(tfoot td):not(:where([class~=not-prose],[class~=not-prose] *)){vertical-align:top}.prose :where(th,td):not(:where([class~=not-prose],[class~=not-prose] *)){text-align:start}.prose :where(figure>*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0;margin-bottom:0}.prose :where(figcaption):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-captions);margin-top:.857143em;font-size:.875em;line-height:1.42857}.prose{--tw-prose-body:oklch(37.3% .034 259.733);--tw-prose-headings:oklch(21% .034 264.665);--tw-prose-lead:oklch(44.6% .03 256.802);--tw-prose-links:oklch(21% .034 264.665);--tw-prose-bold:oklch(21% .034 264.665);--tw-prose-counters:oklch(55.1% .027 264.364);--tw-prose-bullets:oklch(87.2% .01 258.338);--tw-prose-hr:oklch(92.8% .006 264.531);--tw-prose-quotes:oklch(21% .034 264.665);--tw-prose-quote-borders:oklch(92.8% .006 264.531);--tw-prose-captions:oklch(55.1% .027 264.364);--tw-prose-kbd:oklch(21% .034 264.665);--tw-prose-kbd-shadows:oklab(21% -.00316127 -.0338527/.1);--tw-prose-code:oklch(21% .034 264.665);--tw-prose-pre-code:oklch(92.8% .006 264.531);--tw-prose-pre-bg:oklch(27.8% .033 256.848);--tw-prose-th-borders:oklch(87.2% .01 258.338);--tw-prose-td-borders:oklch(92.8% .006 264.531);--tw-prose-invert-body:oklch(87.2% .01 258.338);--tw-prose-invert-headings:#fff;--tw-prose-invert-lead:oklch(70.7% .022 261.325);--tw-prose-invert-links:#fff;--tw-prose-invert-bold:#fff;--tw-prose-invert-counters:oklch(70.7% .022 261.325);--tw-prose-invert-bullets:oklch(44.6% .03 256.802);--tw-prose-invert-hr:oklch(37.3% .034 259.733);--tw-prose-invert-quotes:oklch(96.7% .003 264.542);--tw-prose-invert-quote-borders:oklch(37.3% .034 259.733);--tw-prose-invert-captions:oklch(70.7% .022 261.325);--tw-prose-invert-kbd:#fff;--tw-prose-invert-kbd-shadows:#ffffff1a;--tw-prose-invert-code:#fff;--tw-prose-invert-pre-code:oklch(87.2% .01 258.338);--tw-prose-invert-pre-bg:#00000080;--tw-prose-invert-th-borders:oklch(44.6% .03 256.802);--tw-prose-invert-td-borders:oklch(37.3% .034 259.733);font-size:1rem;line-height:1.75}.prose :where(picture>img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0;margin-bottom:0}.prose :where(li):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.5em;margin-bottom:.5em}.prose :where(ol>li):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(ul>li):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:.375em}.prose :where(.prose>ul>li p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.75em;margin-bottom:.75em}.prose :where(.prose>ul>li>p:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em}.prose :where(.prose>ul>li>p:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.25em}.prose :where(.prose>ol>li>p:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em}.prose :where(.prose>ol>li>p:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.25em}.prose :where(ul ul,ul ol,ol ul,ol ol):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.75em;margin-bottom:.75em}.prose :where(dl):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em;margin-bottom:1.25em}.prose :where(dd):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.5em;padding-inline-start:1.625em}.prose :where(hr+*):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(h2+*):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(h3+*):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(h4+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(thead th:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:0}.prose :where(thead th:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:0}.prose :where(tbody td,tfoot td):not(:where([class~=not-prose],[class~=not-prose] *)){padding-top:.571429em;padding-inline-end:.571429em;padding-bottom:.571429em;padding-inline-start:.571429em}.prose :where(tbody td:first-child,tfoot td:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:0}.prose :where(tbody td:last-child,tfoot td:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:0}.prose :where(figure):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em}.prose :where(.prose>:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(.prose>:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:0}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.inline{display:inline}.min-h-screen{min-height:100vh}.w-full{width:100%}.flex-1{flex:1}.shrink{flex-shrink:1}.resize{resize:both}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.gap-2{gap:calc(var(--spacing) * 2)}.gap-4{gap:calc(var(--spacing) * 4)}.border{border-style:var(--tw-border-style);border-width:1px}.px-2{padding-inline:calc(var(--spacing) * 2)}.py-4{padding-block:calc(var(--spacing) * 4)}.capitalize{text-transform:capitalize}.lowercase{text-transform:lowercase}.uppercase{text-transform:uppercase}.underline{text-decoration-line:underline}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}@media (hover:hover){.hover\:text-slate-900:hover{color:var(--color-slate-900)}}@media (width>=40rem){.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width>=64rem){.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}}}:root{color-scheme:light;--page:#f3f7fd;--surface:#fff;--surface-soft:#edf4fc;--surface-control:#eaf2fc;--surface-hover:#f4f8ff;--surface-control-hover:#dcecff;--surface-editor:#f7faff;--surface-gutter:#eef3fb;--ink:#172b43;--muted:#53657b;--line:#cfdae8;--line-subtle:#dbe3ef;--line-strong:#7b8797;--line-accent:#bfd2e8;--navy:#00255f;--navy-border:#164a8b;--on-brand:#fff;--ink-on-dark:#ffffffb8;--line-on-dark:#ffffff29;--blue-hover:#0054ba;--blue-deep:#123d82;--ink-blue:#173b66;--ink-control:#24415f;--line-finder:#bdcee2;--line-hero:#c8e2f5;--line-chip:#c6d7ec;--line-cookie:#b8c7d8;--line-ad:#b8cbe0;--type-caption:.75rem;--type-small:.875rem;--type-body:1rem;--type-label:.8125rem;--type-title:1.125rem;--type-section:1.875rem;--type-brand:1.25rem;--type-subheading:1.5rem;--type-section-mobile:26px;--type-code:13px;--type-display:clamp(46px, 7vw, 78px);--type-page-heading:clamp(2.25rem, 4.5vw, 3.25rem);--type-display-mobile:clamp(42px, 12vw, 52px);--container-wide:1440px;--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-control:3px;--radius-round:50%;--size-hit-area:44px;--line-width:1px;--focus-width:1px;--motion-fast:.15s;--motion-nav:.22s;--motion-page-in:.2s;--motion-page-out:.14s;--ease-standard:ease;--shadow-overlay:0 8px 32px #001c482e;--color-secondary-soft:#dcf8ff}@supports (color:color-mix(in lab, red, red)){:root{--color-secondary-soft:color-mix(in srgb, var(--color-secondary) 16%, white)}}:root{--blue:var(--color-primary);--accent:var(--color-secondary-soft);--soft:#effaff;--hero-start:#e9f7ff;--hero-middle:#eef3ff;--hero-end:#edfbff;--drop-hover:var(--surface-hover);--chip-bg:#e8f2ff;--tab-hover:var(--surface-control-hover);--editor-error:#c02626;--editor-error-soft:#dc26261f;--editor-match:#e2f7f7;--editor-match-edge:#108a97;--editor-key:#0b5cad;--editor-string:#1f7a4d;--editor-number:#b4531f;--editor-literal:#8a2bbf;--editor-muted:#8a94a6;--editor-punctuation:#8a94a6;--tile-image:#e3f6ff;--tile-pdf:#e8efff;--tile-text:#e8f5ff;--tile-developer:#e6efff;--tile-color:#e2f7f7;--tile-accent-image:#1598d1;--tile-accent-pdf:#536fce;--tile-accent-text:#1683c1;--tile-accent-developer:#2859bd;--tile-accent-color:#108a97}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--page);color:var(--ink);font-family:var(--font-ui);font-size:var(--type-body);-webkit-font-smoothing:antialiased;margin:0;line-height:1.6}a{color:inherit;text-decoration:none}button,input{font:inherit}button,a,input{-webkit-tap-highlight-color:transparent}:focus-visible{outline:var(--focus-width) solid var(--blue);outline-offset:1px}::selection{color:var(--ink);background:var(--accent)}.site-wrap{width:min(var(--container-wide), calc(100% - 24px));margin-inline:auto}.skip-link{z-index:20;background:var(--blue);color:#fff;padding:12px 16px;position:absolute;top:8px;left:8px;transform:translateY(-150%)}.skip-link:focus{transform:translateY(0)}.site-header{border-bottom:var(--line-width) solid var(--navy-border);background:var(--navy);min-height:70px}.site-header-inner{justify-content:space-between;align-items:center;gap:20px;min-height:70px;display:flex}.brand{min-height:var(--size-hit-area);align-items:center;gap:8px;display:inline-flex}.brand img{object-fit:contain;width:40px;height:40px;display:block}.brand-label{gap:var(--space-1);color:var(--on-brand);font-size:var(--type-brand);letter-spacing:-.5px;font-weight:800;display:inline-flex}.brand-label span:last-child{color:var(--color-secondary)}.brand img{border-radius:9px}.site-nav{justify-content:flex-end;gap:var(--space-2) var(--space-6);color:var(--on-brand);font-size:var(--type-title);flex-wrap:wrap;font-weight:600;display:flex}.site-nav a{align-items:center;min-height:48px;display:inline-flex;position:relative}.site-nav a:after{transform-origin:0;background:var(--color-secondary);content:"";height:2px;transition:transform var(--motion-nav) var(--ease-standard);position:absolute;bottom:4px;left:0;right:0;transform:scaleX(0)}.site-nav a:hover,.site-nav a[aria-current=page]{color:var(--color-secondary)}.site-nav a:hover:after,.site-nav a[aria-current=page]:after{transform:scaleX(1)}.site-header :focus-visible{outline-color:var(--color-secondary)}::view-transition-old(main-content){animation:page-out var(--motion-page-out) var(--ease-standard) both}::view-transition-new(main-content){animation:page-in var(--motion-page-in) var(--ease-standard) both}@keyframes page-out{to{opacity:0}}@keyframes page-in{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}.site-footer{background:var(--navy);color:var(--ink-on-dark);margin-top:auto}.site-footer-inner{gap:32px;padding-block:46px 22px;display:grid}.site-footer-top{grid-template-columns:minmax(0,1.5fr) repeat(3,minmax(0,1fr));gap:30px 26px;display:grid}.site-footer-brand{max-width:360px}.site-footer-brand p{font-size:var(--type-small);margin:14px 0 0;line-height:1.7}.site-footer-note{color:var(--color-secondary)}.site-footer-col h2{color:var(--on-brand);font-size:var(--type-label);letter-spacing:.08em;text-transform:uppercase;margin:0 0 12px;font-weight:700}.site-footer-col ul{gap:6px;margin:0;padding:0;list-style:none;display:grid}.site-footer-col a{min-height:34px;color:var(--ink-on-dark);font-size:var(--type-small);align-items:center;display:inline-flex}.site-footer-col a:hover{color:var(--color-secondary);text-underline-offset:3px;text-decoration:underline}.site-footer-bottom{border-top:1px solid var(--line-on-dark);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 22px;padding-top:18px;display:flex}.site-footer-bottom p{font-size:var(--type-caption);margin:0}.footer-links{flex-wrap:wrap;align-items:center;gap:6px 18px;display:flex}.footer-links a{min-height:var(--size-hit-area);color:var(--ink-on-dark);font-size:var(--type-caption);text-underline-offset:3px;align-items:center;text-decoration:underline;display:inline-flex}.footer-links a:hover{color:var(--color-secondary)}.site-footer :focus-visible{outline-color:var(--color-secondary)}@media (width<=860px){.site-footer-top{grid-template-columns:repeat(2,minmax(0,1fr));gap:26px 22px}}.privacy-page{max-width:900px;padding-block:46px 60px}.privacy-page h1{font:400 var(--type-page-heading)/1.08 var(--font-editorial);margin:0 0 16px}.privacy-page h2{font:400 var(--type-subheading)/1.3 var(--font-editorial);margin:28px 0 8px}.privacy-page p{color:var(--muted);line-height:1.75}.privacy-page a{color:var(--blue);text-underline-offset:3px;text-decoration:underline}.home-hero{border:1px solid var(--line-hero);background:linear-gradient(135deg, var(--hero-start) 0%, var(--hero-middle) 58%, var(--hero-end) 100%);text-align:center;margin-top:18px;padding:50px 24px 28px}.home-hero h1{max-width:780px;font:400 var(--type-display)/1.02 var(--font-editorial);letter-spacing:-.055em;margin:0 auto 18px}.hero-mark{z-index:0;white-space:nowrap;position:relative}.hero-mark:after{z-index:-1;background:var(--accent);content:"";height:.14em;position:absolute;bottom:4px;left:0;right:0}.home-intro{max-width:560px;color:var(--muted);font-size:var(--type-body);margin:0 auto;line-height:1.7}.finder{border:1px solid var(--line-finder);background:var(--surface);text-align:left;width:min(760px,100%);margin:30px auto 0;padding:12px}.file-drop{border:1px dashed var(--line-strong);background:var(--surface);text-align:center;cursor:pointer;min-height:205px;transition:border-color var(--motion-fast), background-color var(--motion-fast);place-items:center;padding:28px 18px;display:grid}.file-drop:hover,.file-drop.is-dragging{border-color:var(--blue);background:var(--drop-hover)}.file-drop:focus-within{outline:var(--focus-width) solid var(--blue);outline-offset:1px}.file-drop input{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.drop-symbol{border-radius:var(--radius-round);background:var(--accent);width:48px;height:48px;color:var(--blue);place-items:center;margin:0 auto 14px;font-size:25px;display:grid}.file-drop strong{font:400 var(--type-brand)/1.3 var(--font-editorial)}.file-drop p{color:var(--muted);font-size:var(--type-caption);margin:8px 0 0;line-height:1.55}.finder-divider{color:var(--muted);font:var(--type-caption)/1.4 monospace;letter-spacing:.06em;text-align:center;margin:19px 0 10px}.finder-search{border-bottom:1px solid var(--ink);width:min(620px,100%);min-height:48px;margin-inline:auto;display:flex}.finder-search input{width:100%;min-width:0;color:var(--ink);font-size:var(--type-body);text-align:center;background:0 0;border:0;padding:11px 6px}.finder-search input::placeholder{color:var(--muted);opacity:1}.finder-search button{width:48px;min-width:48px;color:var(--blue);cursor:pointer;background:0 0;border:0;font-size:20px}.suggestions{flex-wrap:wrap;justify-content:center;gap:8px;margin:14px auto 2px;display:flex}.suggestion{min-height:var(--size-hit-area);border:1px solid var(--line-chip);border-radius:var(--radius-control);background:var(--chip-bg);color:var(--ink-blue);font-size:var(--type-caption);cursor:pointer;transition:background-color var(--motion-fast), border-color var(--motion-fast);padding:8px 11px}.suggestion:hover,.suggestion:focus-visible{border-color:var(--blue);background:var(--accent)}.finder-results{border:1px solid var(--blue);background:var(--surface);margin:15px 0 0;padding:16px}.finder-results-heading{border-bottom:1px solid var(--line);text-align:center;padding-bottom:13px}.finder-results-heading strong{font-size:var(--type-label);overflow-wrap:anywhere}.finder-results-heading p{color:var(--muted);font-size:var(--type-caption);margin:5px 0 0}.finder-result-list{flex-wrap:wrap;justify-content:center;gap:8px;padding-top:13px;display:flex}.finder-result-link{min-height:var(--size-hit-area);border-radius:var(--radius-control);background:var(--blue);color:var(--on-brand);font-size:var(--type-small);align-items:center;padding:9px 12px;display:inline-flex}.finder-result-link:hover{background:var(--blue-deep)}.finder-empty{color:var(--muted);font-size:var(--type-small);text-align:center;padding:16px 8px 4px;line-height:1.6}.privacy-note{color:var(--muted);font-size:var(--type-caption);text-align:center;margin:16px 0 0;line-height:1.5}.privacy-note strong{color:var(--blue)}.ad-placeholder{border:1px dashed var(--line-ad);background:var(--surface-soft);width:min(820px,100%);min-height:90px;color:var(--muted);font:var(--type-caption)/1.4 monospace;letter-spacing:.12em;text-align:center;place-items:center;margin:34px auto;display:grid}.directory-section{padding:15px 0 50px;scroll-margin-top:20px}.section-title{text-align:center;margin:0 0 27px}.section-title h2{font:400 var(--type-section)/1.2 var(--font-editorial);margin:0 0 8px}.section-title p{color:var(--muted);font-size:var(--type-small);margin:0;line-height:1.6}.category-tabs{scrollbar-width:thin;gap:8px;padding:5px 0 8px;display:flex;overflow-x:auto}.category-tab{border:1px solid var(--line-accent);border-radius:var(--radius-control);background:var(--surface-control);min-height:48px;color:var(--ink-control);font-size:var(--type-small);white-space:nowrap;cursor:pointer;transition:background-color var(--motion-fast), border-color var(--motion-fast), color var(--motion-fast);flex:1 0 auto;place-items:center;padding:9px 14px;font-weight:600;display:grid}.category-tab:hover{border-color:var(--blue);background:var(--tab-hover)}.category-tab[aria-pressed=true]{border-color:var(--blue);background:var(--blue);color:var(--on-brand)}.tool-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:20px;display:grid}.tool-tile{--tile-tint:var(--chip-bg);--tile-edge:var(--blue);border:1px solid var(--line-accent);border-top:4px solid var(--tile-edge);border-radius:var(--radius-control);background:var(--tile-tint);min-height:122px;transition:border-color var(--motion-fast), background-color var(--motion-fast), transform var(--motion-fast);flex-direction:column;justify-content:space-between;padding:13px 15px 14px;display:flex}.tool-tile--image{--tile-tint:var(--tile-image);--tile-edge:var(--tile-accent-image)}.tool-tile--pdf{--tile-tint:var(--tile-pdf);--tile-edge:var(--tile-accent-pdf)}.tool-tile--text{--tile-tint:var(--tile-text);--tile-edge:var(--tile-accent-text)}.tool-tile--developer{--tile-tint:var(--tile-developer);--tile-edge:var(--tile-accent-developer)}.tool-tile--color{--tile-tint:var(--tile-color);--tile-edge:var(--tile-accent-color)}.tool-tile:hover{border-color:var(--tile-edge);background:var(--tile-tint);transform:translateY(-1px)}@supports (color:color-mix(in lab, red, red)){.tool-tile:hover{background:color-mix(in srgb, var(--tile-tint) 92%, var(--tile-edge))}}.tool-tile--planned:hover{border-color:var(--line-accent);background:var(--tile-tint);transform:none}.tool-tile[aria-disabled=true]{cursor:default}.tool-tile[aria-disabled=true]:hover{border-color:var(--line-accent);background:var(--tile-tint);transform:none}.tool-tile small{color:var(--muted);font:var(--type-caption)/1.4 monospace;text-transform:uppercase}.tool-tile strong{font:400 var(--type-title)/1.3 var(--font-editorial)}.tool-tile-foot{justify-content:space-between;align-items:center;gap:8px;display:flex}.tool-tile-foot span{color:var(--blue);font-size:var(--type-caption)}.tool-tile-foot .tool-status{color:var(--muted);font:var(--type-caption)/1.4 monospace;text-transform:uppercase}.directory-empty{color:var(--muted);text-align:center;grid-column:1/-1;padding:22px}.all-tools-link{text-align:center;margin-top:22px}.all-tools-link a{min-height:var(--size-hit-area);border-bottom:1px solid var(--ink);font-size:var(--type-caption);align-items:center;padding:0 5px;display:inline-flex}.closing-note{text-align:center;width:min(720px,100%);margin:0 auto 48px}.closing-note h2{font:400 var(--type-subheading)/1.3 var(--font-editorial);margin:0 0 11px}.closing-note p{color:var(--muted);font-size:var(--type-small);margin:0;line-height:1.75}.category-page{padding-block:36px 50px}.breadcrumbs{color:var(--muted);font-size:var(--type-caption);margin-bottom:26px}.breadcrumbs a{min-height:var(--size-hit-area);align-items:center;display:inline-flex}.category-heading{max-width:660px;margin-bottom:28px}.category-heading h1{font:400 var(--type-page-heading)/1.08 var(--font-editorial);letter-spacing:-.04em;margin:0}.category-heading p{color:var(--muted);font-size:var(--type-body);margin:11px 0 0;line-height:1.7}.catalog-card{--tile-tint:var(--chip-bg);--tile-edge:var(--blue);border:1px solid var(--line-accent);border-top:4px solid var(--tile-edge);border-radius:var(--radius-control);background:var(--tile-tint);padding:14px 17px 17px;scroll-margin-top:24px}.catalog-card--image{--tile-tint:var(--tile-image);--tile-edge:var(--tile-accent-image)}.catalog-card--pdf{--tile-tint:var(--tile-pdf);--tile-edge:var(--tile-accent-pdf)}.catalog-card--text{--tile-tint:var(--tile-text);--tile-edge:var(--tile-accent-text)}.catalog-card--developer{--tile-tint:var(--tile-developer);--tile-edge:var(--tile-accent-developer)}.catalog-card--color{--tile-tint:var(--tile-color);--tile-edge:var(--tile-accent-color)}.catalog-meta{color:var(--ink-blue);font-size:var(--type-caption);letter-spacing:.06em;text-transform:uppercase;margin:0 0 8px;font-weight:600}.catalog-card h2{font:400 var(--type-title)/1.3 var(--font-editorial);margin:0}.catalog-description{color:var(--ink);font-size:var(--type-small);margin:10px 0 0;line-height:1.6}.catalog-status{color:var(--muted);font-size:var(--type-caption);margin:12px 0 0}.catalog-card a{min-height:var(--size-hit-area);color:var(--blue);font-size:var(--type-caption);align-items:center;font-weight:700;display:inline-flex}.shared-button{min-height:var(--size-hit-area);border-radius:var(--radius-control);font:600 var(--type-small)/1.3 var(--font-ui);cursor:pointer;transition:background-color var(--motion-fast), border-color var(--motion-fast), color var(--motion-fast);border:1px solid #0000;justify-content:center;align-items:center;padding:9px 14px;display:inline-flex}.shared-button-primary{border-color:var(--blue);background:var(--blue);color:var(--on-brand)}.shared-button-primary:hover{border-color:var(--blue-hover);background:var(--blue-hover)}.shared-button-secondary{border-color:var(--line-strong);background:var(--surface);color:var(--ink)}.shared-button-secondary:hover{border-color:var(--blue);background:var(--surface-hover)}.shared-button:disabled{opacity:.55;cursor:not-allowed}.shared-file-picker{position:relative;overflow:hidden}.shared-file-picker:focus-within{outline:var(--focus-width) solid var(--blue);outline-offset:1px}.shared-card{border:1px solid var(--line);background:var(--surface);padding:18px}.shared-dropzone{border:1px dashed var(--line-strong);background:var(--surface);text-align:center;cursor:pointer;flex-direction:column;justify-content:center;align-items:center;min-height:200px;padding:24px;display:flex}.shared-dropzone:hover,.shared-dropzone.is-dragging{border-color:var(--blue);background:var(--surface-hover)}.shared-dropzone:focus-visible{outline:var(--focus-width) solid var(--blue);outline-offset:1px}.shared-dropzone-title{font:400 var(--type-title)/1.4 var(--font-editorial);margin:0}.shared-dropzone-help{color:var(--muted);font-size:var(--type-small);margin:8px 0 0}.ad-slot{border:1px dashed var(--line-ad);background:var(--surface-soft);width:min(820px,100%);min-height:220px;color:var(--muted);font:var(--type-caption)/1.4 monospace;letter-spacing:.12em;text-align:center;place-items:center;margin:32px auto;display:grid}.ad-slot-inline{min-height:90px;margin-block:34px}.tool-search-input{border:1px solid var(--line-strong);border-radius:var(--radius-control);background:var(--surface);width:100%;min-height:48px;color:var(--ink);font-size:var(--type-body);padding:10px 14px}.tool-search-results{border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface);margin:8px 0 0;padding:0;list-style:none;overflow:hidden}.tool-search-result{border-bottom:1px solid var(--line)}.tool-search-result:last-child{border-bottom:0}.tool-search-result-link{flex-direction:column;justify-content:center;min-height:60px;padding:8px 14px;display:flex}.tool-search-result-link:hover{background:var(--soft)}.tool-search-name{font-size:var(--type-small);font-weight:600}.tool-search-meta,.tool-search-empty{color:var(--muted);font-size:var(--type-caption)}.tool-search-meta{margin-top:2px}.tool-search-empty{padding:12px 14px}.tool-page{padding-block:34px 52px}.tool-breadcrumbs{color:var(--muted);font-size:var(--type-caption);margin-bottom:24px}.tool-breadcrumbs ol{flex-wrap:wrap;align-items:center;gap:8px;margin:0;padding:0;list-style:none;display:flex}.tool-breadcrumbs li{align-items:center;gap:8px;display:flex}.tool-breadcrumbs a{min-height:var(--size-hit-area);align-items:center;display:inline-flex}.tool-heading{margin-bottom:22px}.tool-heading h1{font:400 var(--type-page-heading)/1.08 var(--font-editorial);letter-spacing:-.04em;margin:0}.tool-heading p{max-width:680px;color:var(--muted);font-size:var(--type-body);margin:12px 0 0;line-height:1.7}.tool-workspace{border:1px solid var(--line-accent);border-radius:var(--radius-control);background:var(--surface);padding:clamp(14px,3vw,24px)}.tool-prose{color:var(--ink);font-size:var(--type-body);margin-top:34px;line-height:1.75}.tool-prose h2{font:400 var(--type-subheading)/1.3 var(--font-editorial);margin-top:28px}.tool-prose ol,.tool-prose ul{list-style:revert;margin-block:12px;padding-inline-start:24px}.tool-prose a,.tool-faq a{color:var(--blue);text-underline-offset:3px;text-decoration:underline}.tool-faq{margin-top:34px}.tool-faq h2,.related-tools h2{font:400 var(--type-subheading)/1.3 var(--font-editorial)}.tool-faq details{border-block-end:1px solid var(--line);padding:14px 0}.tool-faq details:first-of-type{border-block-start:1px solid var(--line)}.tool-faq summary{min-height:var(--size-hit-area);font-size:var(--type-small);cursor:pointer;align-items:center;font-weight:600;display:flex}.tool-faq p{color:var(--muted);line-height:1.65}.related-tools{margin-top:34px}.related-tools-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:15px;display:grid}.json-tool{gap:16px;display:grid}.json-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:12px;display:flex}.json-actions{flex-wrap:wrap;gap:8px;display:flex}.json-button{min-height:var(--size-hit-area);border:1px solid var(--line-strong);border-radius:var(--radius-control);background:var(--surface);color:var(--ink);font-size:var(--type-small);cursor:pointer;padding:9px 13px;font-weight:600}.json-button:hover{border-color:var(--blue);background:var(--surface-hover)}.json-button-primary{border-color:var(--blue);background:var(--blue);color:var(--on-brand)}.json-button-primary:hover{border-color:var(--blue-deep);background:var(--blue-deep)}.json-button[aria-pressed=true]{border-color:var(--blue);background:var(--blue);color:var(--on-brand)}.json-button:disabled{opacity:.5;cursor:not-allowed}.json-indent{color:var(--muted);font-size:var(--type-small);align-items:center;gap:8px;display:flex}.json-indent select{min-height:var(--size-hit-area);border:1px solid var(--line-strong);border-radius:var(--radius-control);background:var(--surface);color:var(--ink);padding:8px 10px}.json-file-input{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.json-columns{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.json-panel{min-width:0}.json-panel-heading{justify-content:space-between;align-items:center;gap:8px;min-height:42px;display:flex}.json-panel-heading h2{font-size:var(--type-label);margin:0;font-weight:700}.json-text-button{min-height:var(--size-hit-area);color:var(--blue);font-size:var(--type-caption);text-underline-offset:3px;cursor:pointer;background:0 0;border:0;padding:8px;font-weight:700;text-decoration:underline}.json-text-button:disabled{color:var(--muted);cursor:not-allowed}.json-editor{resize:vertical;border:1px solid var(--line-strong);border-radius:var(--radius-control);background:var(--surface-editor);width:100%;min-height:340px;color:var(--ink);font:var(--type-small)/1.65 ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;tab-size:2;padding:14px;display:block}.json-editor:focus-visible{outline:var(--focus-width) solid var(--blue);outline-offset:1px}.json-status{min-height:24px;color:var(--blue);font-size:var(--type-small);overflow-wrap:anywhere;margin:0;line-height:1.5}.json-privacy{color:var(--muted);font-size:var(--type-caption);margin:-8px 0 0;line-height:1.55}.code-editor{border:1px solid var(--line-strong);border-radius:var(--radius-control);background:var(--surface-editor);grid-template-columns:auto minmax(0,1fr);display:grid;position:relative}.code-editor-gutter{border-inline-end:1px solid var(--line-subtle);background:var(--surface-gutter);width:52px;color:var(--editor-muted);font:var(--type-code)/22px ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;text-align:right;-webkit-user-select:none;user-select:none;padding-block:14px;overflow:hidden}.code-line-number{height:22px;padding-inline-end:10px}.code-line-number.is-error{color:var(--editor-error);font-weight:700}.code-editor-area{min-height:340px;position:relative}.code-editor-pre,.code-editor-input{width:100%;height:100%;font:var(--type-code)/22px ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;white-space:pre;tab-size:2;margin:0;padding:14px}.code-editor-pre{pointer-events:none;color:var(--ink);position:absolute;inset:0;overflow:hidden}.code-line{height:22px}.code-line.is-error{background:var(--editor-error-soft);box-shadow:inset 3px 0 0 var(--editor-error)}.code-editor-input{resize:none;color:#0000;caret-color:var(--ink);background:0 0;border:0;position:absolute;inset:0;overflow:auto}.code-editor-input:focus-visible{outline:var(--focus-width) solid var(--blue);outline-offset:-1px}.code-editor-input::placeholder{color:var(--editor-muted)}.tok-key{color:var(--editor-key)}.tok-string{color:var(--editor-string)}.tok-number{color:var(--editor-number)}.tok-boolean,.tok-null{color:var(--editor-literal)}.tok-punctuation{color:var(--editor-punctuation)}.tok-plain{color:var(--ink)}.tool-preview{border:1px solid var(--line);background:var(--surface);object-fit:contain;max-width:100%;max-height:220px;margin-top:12px;display:block}.json-chip-row{flex-wrap:wrap;gap:8px;margin-top:10px;display:flex}.json-chip{border:1px solid var(--line);background:var(--surface);color:var(--muted);font:var(--type-caption)/1.6 ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;padding:4px 9px}.code-line.is-match{background:var(--editor-match);box-shadow:inset 3px 0 0 var(--editor-match-edge)}.code-line-number.is-match{color:var(--editor-match-edge);font-weight:700}.json-tree{border:1px solid var(--line-strong);border-radius:var(--radius-control);background:var(--surface-editor);max-height:340px;font:var(--type-code)/1.7 ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;padding:12px;overflow:auto}.json-tree-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px;display:flex}.json-tree-root,.json-tree-children{margin:0;padding:0;list-style:none}.json-tree-children{border-inline-start:1px solid var(--line-subtle);margin-inline-start:14px;padding-inline-start:10px}.json-tree-row{align-items:baseline;gap:6px;padding:1px 0;display:flex}.json-tree-toggle{width:18px;color:var(--blue);font:inherit;text-align:start;background:0 0;border:0;flex:none;padding:0}.json-tree-toggle.is-button{cursor:pointer}.json-tree-key{color:var(--editor-key)}.json-tree-sep{color:var(--editor-muted)}.json-tree-value.is-string{color:var(--editor-string)}.json-tree-value.is-number{color:var(--editor-number)}.json-tree-value.is-boolean,.json-tree-value.is-null{color:var(--editor-literal)}.json-tree-value.is-object,.json-tree-value.is-array{color:var(--muted)}.json-drop-area{position:relative}.json-drop-area.is-dragging{outline:var(--focus-width) dashed var(--blue);outline-offset:4px;background:var(--surface-hover)}@media (width<=760px){.code-editor-gutter{width:40px}.site-header-inner{align-items:center}.site-nav{gap:4px 12px}.site-nav a{min-height:var(--size-hit-area)}.home-hero{padding-top:48px}.home-hero h1{letter-spacing:-.045em}.finder{padding:7px}.file-drop{min-height:190px}.tool-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.json-columns{grid-template-columns:1fr}.json-editor{min-height:260px}.related-tools-grid{grid-template-columns:1fr}.ad-placeholder{min-height:72px;margin-block:35px}}@media (width<=440px){.site-wrap{width:min(100% - 20px, var(--container-wide))}.site-header-inner{gap:10px}.brand{flex:none}.brand img{width:38px;height:38px}.brand-label{font-size:var(--type-title)}.site-nav{font-size:var(--type-body);gap:0 10px}.site-nav a{min-height:var(--size-hit-area)}.home-hero h1{font-size:var(--type-display-mobile)}.home-intro{font-size:var(--type-small)}.section-title h2{font-size:var(--type-section-mobile)}.tool-grid{gap:8px}.tool-tile{min-height:118px;padding:12px}.site-footer-top{grid-template-columns:1fr}.site-footer-bottom{flex-direction:column;align-items:flex-start}.footer-links{gap:6px 14px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}::view-transition-old(main-content),::view-transition-new(main-content){animation:none}}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}.astro-route-announcer{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;top:0;left:0;overflow:hidden}
