@font-face { font-family:'Inter';font-style:normal;font-display:swap;font-weight:400;src:url('/assets/fonts/inter-400.woff2') format('woff2') }
@font-face { font-family:'Inter';font-style:normal;font-display:swap;font-weight:500;src:url('/assets/fonts/inter-500.woff2') format('woff2') }
@font-face { font-family:'Inter';font-style:normal;font-display:swap;font-weight:600;src:url('/assets/fonts/inter-600.woff2') format('woff2') }
@font-face { font-family:'Inter';font-style:normal;font-display:swap;font-weight:700;src:url('/assets/fonts/inter-700.woff2') format('woff2') }
@font-face { font-family:'Inter';font-style:normal;font-display:swap;font-weight:800;src:url('/assets/fonts/inter-800.woff2') format('woff2') }
@font-face { font-family:'JetBrains Mono';font-style:normal;font-display:swap;font-weight:400;src:url('/assets/fonts/jetbrains-mono-400.woff2') format('woff2') }
@font-face { font-family:'JetBrains Mono';font-style:normal;font-display:swap;font-weight:500;src:url('/assets/fonts/jetbrains-mono-500.woff2') format('woff2') }
@font-face { font-family:'JetBrains Mono';font-style:normal;font-display:swap;font-weight:600;src:url('/assets/fonts/jetbrains-mono-600.woff2') format('woff2') }
@font-face { font-family:'JetBrains Mono';font-style:normal;font-display:swap;font-weight:700;src:url('/assets/fonts/jetbrains-mono-700.woff2') format('woff2') }
@font-face { font-family:'Space Grotesk';font-style:normal;font-display:swap;font-weight:400;src:url('/assets/fonts/space-grotesk-400.woff2') format('woff2') }
@font-face { font-family:'Space Grotesk';font-style:normal;font-display:swap;font-weight:500;src:url('/assets/fonts/space-grotesk-500.woff2') format('woff2') }
@font-face { font-family:'Space Grotesk';font-style:normal;font-display:swap;font-weight:600;src:url('/assets/fonts/space-grotesk-600.woff2') format('woff2') }
@font-face { font-family:'Space Grotesk';font-style:normal;font-display:swap;font-weight:700;src:url('/assets/fonts/space-grotesk-700.woff2') format('woff2') }

*, ::before, ::after { --tw-border-spacing-x:0; --tw-border-spacing-y:0; --tw-translate-x:0; --tw-translate-y:0; --tw-rotate:0; --tw-skew-x:0; --tw-skew-y:0; --tw-scale-x:1; --tw-scale-y:1; --tw-pan-x: ; --tw-pan-y: ; --tw-pinch-zoom: ; --tw-scroll-snap-strictness:proximity; --tw-gradient-from-position: ; --tw-gradient-via-position: ; --tw-gradient-to-position: ; --tw-ordinal: ; --tw-slashed-zero: ; --tw-numeric-figure: ; --tw-numeric-spacing: ; --tw-numeric-fraction: ; --tw-ring-inset: ; --tw-ring-offset-width:0px; --tw-ring-offset-color:#fff; --tw-ring-color:rgb(59 130 246 / 0.5); --tw-ring-offset-shadow:0 0 #0000; --tw-ring-shadow:0 0 #0000; --tw-shadow:0 0 #0000; --tw-shadow-colored:0 0 #0000; --tw-blur: ; --tw-brightness: ; --tw-contrast: ; --tw-grayscale: ; --tw-hue-rotate: ; --tw-invert: ; --tw-saturate: ; --tw-sepia: ; --tw-drop-shadow: ; --tw-backdrop-blur: ; --tw-backdrop-brightness: ; --tw-backdrop-contrast: ; --tw-backdrop-grayscale: ; --tw-backdrop-hue-rotate: ; --tw-backdrop-invert: ; --tw-backdrop-opacity: ; --tw-backdrop-saturate: ; --tw-backdrop-sepia: ; --tw-contain-size: ; --tw-contain-layout: ; --tw-contain-paint: ; --tw-contain-style:  }

::backdrop { --tw-border-spacing-x:0; --tw-border-spacing-y:0; --tw-translate-x:0; --tw-translate-y:0; --tw-rotate:0; --tw-skew-x:0; --tw-skew-y:0; --tw-scale-x:1; --tw-scale-y:1; --tw-pan-x: ; --tw-pan-y: ; --tw-pinch-zoom: ; --tw-scroll-snap-strictness:proximity; --tw-gradient-from-position: ; --tw-gradient-via-position: ; --tw-gradient-to-position: ; --tw-ordinal: ; --tw-slashed-zero: ; --tw-numeric-figure: ; --tw-numeric-spacing: ; --tw-numeric-fraction: ; --tw-ring-inset: ; --tw-ring-offset-width:0px; --tw-ring-offset-color:#fff; --tw-ring-color:rgb(59 130 246 / 0.5); --tw-ring-offset-shadow:0 0 #0000; --tw-ring-shadow:0 0 #0000; --tw-shadow:0 0 #0000; --tw-shadow-colored:0 0 #0000; --tw-blur: ; --tw-brightness: ; --tw-contrast: ; --tw-grayscale: ; --tw-hue-rotate: ; --tw-invert: ; --tw-saturate: ; --tw-sepia: ; --tw-drop-shadow: ; --tw-backdrop-blur: ; --tw-backdrop-brightness: ; --tw-backdrop-contrast: ; --tw-backdrop-grayscale: ; --tw-backdrop-hue-rotate: ; --tw-backdrop-invert: ; --tw-backdrop-opacity: ; --tw-backdrop-saturate: ; --tw-backdrop-sepia: ; --tw-contain-size: ; --tw-contain-layout: ; --tw-contain-paint: ; --tw-contain-style:  }

/*
! tailwindcss v3.4.19 | MIT License | https://tailwindcss.com
*/

/*
1. Prevent padding and border from affecting element width. (https://github.com/mozdevs/cssremedy/issues/4)
2. Allow adding a border to an element by just adding a border-width. (https://github.com/tailwindcss/tailwindcss/pull/116)
*/

*,
::before,
::after {
  box-sizing: border-box; /* 1 */
  border-width: 0; /* 2 */
  border-style: solid; /* 2 */
  border-color: #e5e7eb; /* 2 */
}

::before,
::after {
  --tw-content: '';
}

/*
1. Use a consistent sensible line-height in all browsers.
2. Prevent adjustments of font size after orientation changes in iOS.
3. Use a more readable tab size.
4. Use the user's configured `sans` font-family by default.
5. Use the user's configured `sans` font-feature-settings by default.
6. Use the user's configured `sans` font-variation-settings by default.
7. Disable tap highlights on iOS
*/

html,
:host {
  line-height: 1.5; /* 1 */
  -webkit-text-size-adjust: 100%; /* 2 */
  -moz-tab-size: 4; /* 3 */
  -o-tab-size: 4;
     tab-size: 4; /* 3 */
  font-family: Inter, system-ui, sans-serif; /* 4 */
  font-feature-settings: normal; /* 5 */
  font-variation-settings: normal; /* 6 */
  -webkit-tap-highlight-color: transparent; /* 7 */
}

/*
1. Remove the margin in all browsers.
2. Inherit line-height from `html` so users can set them as a class directly on the `html` element.
*/

body {
  margin: 0; /* 1 */
  line-height: inherit; /* 2 */
}

/*
1. Add the correct height in Firefox.
2. Correct the inheritance of border color in Firefox. (https://bugzilla.mozilla.org/show_bug.cgi?id=190655)
3. Ensure horizontal rules are visible by default.
*/

hr {
  height: 0; /* 1 */
  color: inherit; /* 2 */
  border-top-width: 1px; /* 3 */
}

/*
Add the correct text decoration in Chrome, Edge, and Safari.
*/

abbr:where([title]) {
  -webkit-text-decoration: underline dotted;
          text-decoration: underline dotted;
}

/*
Remove the default font size and weight for headings.
*/

h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: inherit;
  font-weight: inherit;
}

/*
Reset links to optimize for opt-in styling instead of opt-out.
*/

a {
  color: inherit;
  text-decoration: inherit;
}

/*
Add the correct font weight in Edge and Safari.
*/

b,
strong {
  font-weight: bolder;
}

/*
1. Use the user's configured `mono` font-family by default.
2. Use the user's configured `mono` font-feature-settings by default.
3. Use the user's configured `mono` font-variation-settings by default.
4. Correct the odd `em` font sizing in all browsers.
*/

code,
kbd,
samp,
pre {
  font-family: "JetBrains Mono", ui-monospace, monospace; /* 1 */
  font-feature-settings: normal; /* 2 */
  font-variation-settings: normal; /* 3 */
  font-size: 1em; /* 4 */
}

/*
Add the correct font size in all browsers.
*/

small {
  font-size: 80%;
}

/*
Prevent `sub` and `sup` elements from affecting the line height in all browsers.
*/

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/*
1. Remove text indentation from table contents in Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=999088, https://bugs.webkit.org/show_bug.cgi?id=201297)
2. Correct table border color inheritance in all Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=935729, https://bugs.webkit.org/show_bug.cgi?id=195016)
3. Remove gaps between table borders by default.
*/

table {
  text-indent: 0; /* 1 */
  border-color: inherit; /* 2 */
  border-collapse: collapse; /* 3 */
}

/*
1. Change the font styles in all browsers.
2. Remove the margin in Firefox and Safari.
3. Remove default padding in all browsers.
*/

button,
input,
optgroup,
select,
textarea {
  font-family: inherit; /* 1 */
  font-feature-settings: inherit; /* 1 */
  font-variation-settings: inherit; /* 1 */
  font-size: 100%; /* 1 */
  font-weight: inherit; /* 1 */
  line-height: inherit; /* 1 */
  letter-spacing: inherit; /* 1 */
  color: inherit; /* 1 */
  margin: 0; /* 2 */
  padding: 0; /* 3 */
}

/*
Remove the inheritance of text transform in Edge and Firefox.
*/

button,
select {
  text-transform: none;
}

/*
1. Correct the inability to style clickable types in iOS and Safari.
2. Remove default button styles.
*/

button,
input:where([type='button']),
input:where([type='reset']),
input:where([type='submit']) {
  -webkit-appearance: button; /* 1 */
  background-color: transparent; /* 2 */
  background-image: none; /* 2 */
}

/*
Use the modern Firefox focus style for all focusable elements.
*/

:-moz-focusring {
  outline: auto;
}

/*
Remove the additional `:invalid` styles in Firefox. (https://github.com/mozilla/gecko-dev/blob/2f9eacd9d3d995c937b4251a5557d95d494c9be1/layout/style/res/forms.css#L728-L737)
*/

:-moz-ui-invalid {
  box-shadow: none;
}

/*
Add the correct vertical alignment in Chrome and Firefox.
*/

progress {
  vertical-align: baseline;
}

/*
Correct the cursor style of increment and decrement buttons in Safari.
*/

::-webkit-inner-spin-button,
::-webkit-outer-spin-button {
  height: auto;
}

/*
1. Correct the odd appearance in Chrome and Safari.
2. Correct the outline style in Safari.
*/

[type='search'] {
  -webkit-appearance: textfield; /* 1 */
  outline-offset: -2px; /* 2 */
}

/*
Remove the inner padding in Chrome and Safari on macOS.
*/

::-webkit-search-decoration {
  -webkit-appearance: none;
}

/*
1. Correct the inability to style clickable types in iOS and Safari.
2. Change font properties to `inherit` in Safari.
*/

::-webkit-file-upload-button {
  -webkit-appearance: button; /* 1 */
  font: inherit; /* 2 */
}

/*
Add the correct display in Chrome and Safari.
*/

summary {
  display: list-item;
}

/*
Removes the default spacing and border for appropriate elements.
*/

blockquote,
dl,
dd,
h1,
h2,
h3,
h4,
h5,
h6,
hr,
figure,
p,
pre {
  margin: 0;
}

fieldset {
  margin: 0;
  padding: 0;
}

legend {
  padding: 0;
}

ol,
ul,
menu {
  list-style: none;
  margin: 0;
  padding: 0;
}

/*
Reset default styling for dialogs.
*/

dialog {
  padding: 0;
}

/*
Prevent resizing textareas horizontally by default.
*/

textarea {
  resize: vertical;
}

/*
1. Reset the default placeholder opacity in Firefox. (https://github.com/tailwindlabs/tailwindcss/issues/3300)
2. Set the default placeholder color to the user's configured gray 400 color.
*/

input::-moz-placeholder, textarea::-moz-placeholder {
  opacity: 1; /* 1 */
  color: #9ca3af; /* 2 */
}

input::placeholder,
textarea::placeholder {
  opacity: 1; /* 1 */
  color: #9ca3af; /* 2 */
}

/*
Set the default cursor for buttons.
*/

button,
[role="button"] {
  cursor: pointer;
}

/*
Make sure disabled buttons don't get the pointer cursor.
*/

:disabled {
  cursor: default;
}

/*
1. Make replaced elements `display: block` by default. (https://github.com/mozdevs/cssremedy/issues/14)
2. Add `vertical-align: middle` to align replaced elements more sensibly by default. (https://github.com/jensimmons/cssremedy/issues/14#issuecomment-634934210)
   This can trigger a poorly considered lint error in some tools but is included by design.
*/

img,
svg,
video,
canvas,
audio,
iframe,
embed,
object {
  display: block; /* 1 */
  vertical-align: middle; /* 2 */
}

/*
Constrain images and videos to the parent width and preserve their intrinsic aspect ratio. (https://github.com/mozdevs/cssremedy/issues/14)
*/

img,
video {
  max-width: 100%;
  height: auto;
}

/* Make elements with the HTML hidden attribute stay hidden by default */

[hidden]:where(:not([hidden="until-found"])) {
  display: none;
}

::view-transition-old(root),
  ::view-transition-new(root) {
    animation-duration: 0.25s;
  }

::view-transition-old(root) {
    animation-name: vt-fade-out;
  }

::view-transition-new(root) {
    animation-name: vt-fade-in;
  }

@keyframes vt-fade-out {
    from { opacity: 1; }
    to { opacity: 0; }
  }

@keyframes vt-fade-in {
    from { opacity: 0; }
    to { opacity: 1; }
  }

body { --tw-bg-opacity:1; background-color:rgb(250 250 250 / var(--tw-bg-opacity, 1)); font-family:Inter, system-ui, sans-serif; line-height:1.625; --tw-text-opacity:1; color:rgb(24 24 27 / var(--tw-text-opacity, 1)); -webkit-font-smoothing:antialiased; -moz-osx-font-smoothing:grayscale }

body:is(.dark *) { --tw-bg-opacity:1; background-color:rgb(9 9 11 / var(--tw-bg-opacity, 1)); --tw-text-opacity:1; color:rgb(244 244 245 / var(--tw-text-opacity, 1)) }

h1, h2, h3 { font-family:"Space Grotesk", Inter, system-ui, sans-serif; letter-spacing:-0.025em }
.prose { color:var(--tw-prose-body); max-width:70ch; }
.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); font-size:1.25em; line-height:1.6; margin-top:1.2em; margin-bottom:1.2em }
.prose :where(a):not(:where([class~="not-prose"],[class~="not-prose"] *)) { color:#1d4ed8; text-decoration:underline; font-weight:500; }
.prose :where(a):not(:where([class~="not-prose"],[class~="not-prose"] *)):hover { color:#1e40af }
.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"] *)) { color:inherit }
.prose :where(blockquote strong):not(:where([class~="not-prose"],[class~="not-prose"] *)) { color:inherit }
.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"] *)) { list-style-type:decimal; margin-top:1.25em; margin-bottom:1.25em; padding-inline-start:1.625em }
.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"] *)) { list-style-type:disc; margin-top:1.25em; margin-bottom:1.25em; padding-inline-start:1.625em }
.prose :where(ol > li):not(:where([class~="not-prose"],[class~="not-prose"] *))::marker { font-weight:400; color:var(--tw-prose-counters) }
.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); font-weight:600; margin-top:1.25em }
.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"] *)) { font-weight:500; font-style:italic; color:var(--tw-prose-quotes); border-inline-start-width:0.25rem; border-inline-start-color:var(--tw-prose-quote-borders); quotes:"\201C""\201D""\2018""\2019"; margin-top:1.6em; margin-bottom:1.6em; padding-inline-start:1em }
.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); font-weight:800; font-size:2.25em; margin-top:0; margin-bottom:0.8888889em; line-height:1.1111111 }
.prose :where(h1 strong):not(:where([class~="not-prose"],[class~="not-prose"] *)) { font-weight:900; color:inherit }
.prose :where(h2):not(:where([class~="not-prose"],[class~="not-prose"] *)) { color:var(--tw-prose-headings); font-weight:700; font-size:1.5em; margin-top:2em; margin-bottom:1em; line-height:1.3333333 }
.prose :where(h2 strong):not(:where([class~="not-prose"],[class~="not-prose"] *)) { font-weight:800; color:inherit }
.prose :where(h3):not(:where([class~="not-prose"],[class~="not-prose"] *)) { color:var(--tw-prose-headings); font-weight:600; font-size:1.25em; margin-top:1.6em; margin-bottom:0.6em; line-height:1.6 }
.prose :where(h3 strong):not(:where([class~="not-prose"],[class~="not-prose"] *)) { font-weight:700; color:inherit }
.prose :where(h4):not(:where([class~="not-prose"],[class~="not-prose"] *)) { color:var(--tw-prose-headings); font-weight:600; margin-top:1.5em; margin-bottom:0.5em; line-height:1.5 }
.prose :where(h4 strong):not(:where([class~="not-prose"],[class~="not-prose"] *)) { font-weight:700; color:inherit }
.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"] *)) { display:block; margin-top:2em; margin-bottom:2em }
.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"] *)) { font-weight:500; font-family:inherit; color:var(--tw-prose-kbd); box-shadow:0 0 0 1px var(--tw-prose-kbd-shadows), 0 3px 0 var(--tw-prose-kbd-shadows); font-size:0.875em; border-radius:0.3125rem; padding-top:0.1875em; padding-inline-end:0.375em; padding-bottom:0.1875em; padding-inline-start:0.375em }
.prose :where(code):not(:where([class~="not-prose"],[class~="not-prose"] *)) { color:var(--tw-prose-code); font-weight:600; font-size:0.875em }
.prose :where(code):not(:where([class~="not-prose"],[class~="not-prose"] *))::before { content:"`" }
.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"] *)) { color:inherit }
.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:0.875em }
.prose :where(h3 code):not(:where([class~="not-prose"],[class~="not-prose"] *)) { color:inherit; font-size:0.9em }
.prose :where(h4 code):not(:where([class~="not-prose"],[class~="not-prose"] *)) { color:inherit }
.prose :where(blockquote code):not(:where([class~="not-prose"],[class~="not-prose"] *)) { color:inherit }
.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); overflow-x:auto; font-weight:400; font-size:0.875em; line-height:1.7142857; margin-top:1.7142857em; margin-bottom:1.7142857em; border-radius:0.375rem; padding-top:0.8571429em; padding-inline-end:1.1428571em; padding-bottom:0.8571429em; padding-inline-start:1.1428571em }
.prose :where(pre code):not(:where([class~="not-prose"],[class~="not-prose"] *)) { background-color:transparent; border-width:0; border-radius:0; padding:0; font-weight:inherit; color:inherit; font-size:inherit; font-family:inherit; line-height:inherit }
.prose :where(pre code):not(:where([class~="not-prose"],[class~="not-prose"] *))::before { content:none }
.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"] *)) { width:100%; table-layout:auto; margin-top:2em; margin-bottom:2em; font-size:0.875em; line-height:1.7142857 }
.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); font-weight:600; vertical-align:bottom; padding-inline-end:0.5714286em; padding-bottom:0.5714286em; padding-inline-start:0.5714286em }
.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); font-size:0.875em; line-height:1.4285714; margin-top:0.8571429em }
.prose { --tw-prose-body:#3f3f46; --tw-prose-headings:#18181b; --tw-prose-lead:#4b5563; --tw-prose-links:#1d4ed8; --tw-prose-bold:#18181b; --tw-prose-counters:#6b7280; --tw-prose-bullets:#d1d5db; --tw-prose-hr:#e5e7eb; --tw-prose-quotes:#111827; --tw-prose-quote-borders:#e5e7eb; --tw-prose-captions:#6b7280; --tw-prose-kbd:#111827; --tw-prose-kbd-shadows:rgb(17 24 39 / 10%); --tw-prose-code:#111827; --tw-prose-pre-code:#e5e7eb; --tw-prose-pre-bg:#1f2937; --tw-prose-th-borders:#d1d5db; --tw-prose-td-borders:#e5e7eb; --tw-prose-invert-body:#d1d5db; --tw-prose-invert-headings:#fff; --tw-prose-invert-lead:#9ca3af; --tw-prose-invert-links:#fff; --tw-prose-invert-bold:#fff; --tw-prose-invert-counters:#9ca3af; --tw-prose-invert-bullets:#4b5563; --tw-prose-invert-hr:#374151; --tw-prose-invert-quotes:#f3f4f6; --tw-prose-invert-quote-borders:#374151; --tw-prose-invert-captions:#9ca3af; --tw-prose-invert-kbd:#fff; --tw-prose-invert-kbd-shadows:rgb(255 255 255 / 10%); --tw-prose-invert-code:#fff; --tw-prose-invert-pre-code:#d1d5db; --tw-prose-invert-pre-bg:rgb(0 0 0 / 50%); --tw-prose-invert-th-borders:#4b5563; --tw-prose-invert-td-borders:#374151; 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:0.5em; margin-bottom:0.5em }
.prose :where(ol > li):not(:where([class~="not-prose"],[class~="not-prose"] *)) { padding-inline-start:0.375em }
.prose :where(ul > li):not(:where([class~="not-prose"],[class~="not-prose"] *)) { padding-inline-start:0.375em }
.prose :where(.prose > ul > li p):not(:where([class~="not-prose"],[class~="not-prose"] *)) { margin-top:0.75em; margin-bottom:0.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:0.75em; margin-bottom:0.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:0.5em; padding-inline-start:1.625em }
.prose :where(hr + *):not(:where([class~="not-prose"],[class~="not-prose"] *)) { margin-top:0 }
.prose :where(h2 + *):not(:where([class~="not-prose"],[class~="not-prose"] *)) { margin-top:0 }
.prose :where(h3 + *):not(:where([class~="not-prose"],[class~="not-prose"] *)) { margin-top:0 }
.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:0.5714286em; padding-inline-end:0.5714286em; padding-bottom:0.5714286em; padding-inline-start:0.5714286em }
.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 }
.prose-zinc { --tw-prose-body:#3f3f46; --tw-prose-headings:#18181b; --tw-prose-lead:#52525b; --tw-prose-links:#18181b; --tw-prose-bold:#18181b; --tw-prose-counters:#71717a; --tw-prose-bullets:#d4d4d8; --tw-prose-hr:#e4e4e7; --tw-prose-quotes:#18181b; --tw-prose-quote-borders:#e4e4e7; --tw-prose-captions:#71717a; --tw-prose-kbd:#18181b; --tw-prose-kbd-shadows:rgb(24 24 27 / 10%); --tw-prose-code:#18181b; --tw-prose-pre-code:#e4e4e7; --tw-prose-pre-bg:#27272a; --tw-prose-th-borders:#d4d4d8; --tw-prose-td-borders:#e4e4e7; --tw-prose-invert-body:#d4d4d8; --tw-prose-invert-headings:#fff; --tw-prose-invert-lead:#a1a1aa; --tw-prose-invert-links:#fff; --tw-prose-invert-bold:#fff; --tw-prose-invert-counters:#a1a1aa; --tw-prose-invert-bullets:#52525b; --tw-prose-invert-hr:#3f3f46; --tw-prose-invert-quotes:#f4f4f5; --tw-prose-invert-quote-borders:#3f3f46; --tw-prose-invert-captions:#a1a1aa; --tw-prose-invert-kbd:#fff; --tw-prose-invert-kbd-shadows:rgb(255 255 255 / 10%); --tw-prose-invert-code:#fff; --tw-prose-invert-pre-code:#d4d4d8; --tw-prose-invert-pre-bg:rgb(0 0 0 / 50%); --tw-prose-invert-th-borders:#52525b; --tw-prose-invert-td-borders:#3f3f46 }
.tool-page { margin-left:auto; margin-right:auto; max-width:56rem; padding-left:1rem; padding-right:1rem; padding-top:2.5rem; padding-bottom:2.5rem }
@media (min-width: 640px) {
 .tool-page { padding-left:1.5rem; padding-right:1.5rem; padding-top:4rem; padding-bottom:4rem } }
@media (min-width: 1536px) {
 .tool-page { max-width:64rem } }
.hero h1 { text-wrap:balance; font-size:2.25rem; line-height:2.5rem; font-weight:700; line-height:1.05; --tw-text-opacity:1; color:rgb(24 24 27 / var(--tw-text-opacity, 1)) }
@media (min-width: 640px) {
 .hero h1 { font-size:3rem; line-height:1 } }
.hero h1:is(.dark *) { --tw-text-opacity:1; color:rgb(250 250 250 / var(--tw-text-opacity, 1)) }
.hero .subhead { margin-top:1rem; max-width:65ch; text-wrap:pretty; font-size:1.125rem; line-height:1.75rem; line-height:1.625; --tw-text-opacity:1; color:rgb(82 82 91 / var(--tw-text-opacity, 1)) }
.hero .subhead:is(.dark *) { --tw-text-opacity:1; color:rgb(161 161 170 / var(--tw-text-opacity, 1)) }
/* ====== INSTRUMENT PANEL (Calculator) ====== */
.calc-wrapper { position:relative; border-radius:1rem; --tw-bg-opacity:1; background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1)); padding:1.5rem; --tw-shadow:0 1px 0 0 rgba(0,0,0,0.02),0 8px 24px -12px rgba(0,0,0,0.06); --tw-shadow-colored:0 1px 0 0 var(--tw-shadow-color), 0 8px 24px -12px var(--tw-shadow-color); box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow); --tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color); --tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color); box-shadow:var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000); --tw-ring-color:rgb(228 228 231 / 0.8) }
@media (min-width: 640px) {
 .calc-wrapper { padding:2.5rem } }
.calc-wrapper:is(.dark *) { --tw-bg-opacity:1; background-color:rgb(24 24 27 / var(--tw-bg-opacity, 1)); --tw-shadow:0 1px 0 0 rgba(255,255,255,0.04),0 8px 24px -12px rgba(0,0,0,0.5); --tw-shadow-colored:0 1px 0 0 var(--tw-shadow-color), 0 8px 24px -12px var(--tw-shadow-color); box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow); --tw-ring-color:rgb(255 255 255 / 0.1) }
.calc-wrapper::before {
    content: '';
    pointer-events:none;
    position:absolute;
    left:1.5rem;
    right:1.5rem;
    top:0px;
    height:1px;
    background-image:linear-gradient(to right, var(--tw-gradient-stops));
    --tw-gradient-from:transparent var(--tw-gradient-from-position);
    --tw-gradient-to:rgb(0 0 0 / 0) var(--tw-gradient-to-position);
    --tw-gradient-stops:var(--tw-gradient-from), var(--tw-gradient-to);
    --tw-gradient-to:rgb(59 130 246 / 0)  var(--tw-gradient-to-position);
    --tw-gradient-stops:var(--tw-gradient-from), rgb(59 130 246 / 0.4) var(--tw-gradient-via-position), var(--tw-gradient-to);
    --tw-gradient-to:transparent var(--tw-gradient-to-position);
  }
.calculator { border-radius:0.75rem; padding:0.25rem }
.calculator form > :not([hidden]) ~ :not([hidden]) { --tw-space-y-reverse:0; margin-top:calc(1.25rem * calc(1 - var(--tw-space-y-reverse))); margin-bottom:calc(1.25rem * var(--tw-space-y-reverse)) }
.calc-row { display:flex; flex-direction:column; align-items:stretch; gap:0.75rem }
@media (min-width: 640px) {
 .calc-row { flex-direction:row; align-items:flex-end; gap:0.5rem } }
.calc-row .input-stack,
  .calc-row .output-stack { display:flex; min-width:0px; flex:1 1 0%; flex-direction:column; gap:0.375rem }
.calc-row .input-stack label,
  .calc-row .output-stack label { font-size:11px; font-weight:600; text-transform:uppercase; letter-spacing:0.1em; --tw-text-opacity:1; color:rgb(113 113 122 / var(--tw-text-opacity, 1)) }
.calc-row .input-stack label:is(.dark *),
  .calc-row .output-stack label:is(.dark *) { --tw-text-opacity:1; color:rgb(161 161 170 / var(--tw-text-opacity, 1)) }
.calc-row input[type="number"],
  .calc-row select { height:3rem; width:100%; border-radius:0.5rem; border-width:1px; --tw-border-opacity:1; border-color:rgb(228 228 231 / var(--tw-border-opacity, 1)); --tw-bg-opacity:1; background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1)); padding-left:0.875rem; padding-right:0.875rem; font-family:"JetBrains Mono", ui-monospace, monospace; font-size:1rem; line-height:1.5rem; --tw-text-opacity:1; color:rgb(24 24 27 / var(--tw-text-opacity, 1)); transition-property:all; transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1); transition-duration:150ms }
.calc-row input[type="number"]::-moz-placeholder, .calc-row select::-moz-placeholder { --tw-text-opacity:1; color:rgb(161 161 170 / var(--tw-text-opacity, 1)) }
.calc-row input[type="number"]::placeholder,
  .calc-row select::placeholder { --tw-text-opacity:1; color:rgb(161 161 170 / var(--tw-text-opacity, 1)) }
.calc-row input[type="number"]:active,
  .calc-row select:active { --tw-translate-y:1px; transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y)) }
.calc-row input[type="number"]:is(.dark *),
  .calc-row select:is(.dark *) { --tw-border-opacity:1; border-color:rgb(63 63 70 / var(--tw-border-opacity, 1)); --tw-bg-opacity:1; background-color:rgb(39 39 42 / var(--tw-bg-opacity, 1)); --tw-text-opacity:1; color:rgb(244 244 245 / var(--tw-text-opacity, 1)) }
.calc-row input[type="number"]:is(.dark *)::-moz-placeholder, .calc-row select:is(.dark *)::-moz-placeholder { --tw-text-opacity:1; color:rgb(113 113 122 / var(--tw-text-opacity, 1)) }
.calc-row input[type="number"]:is(.dark *)::placeholder,
  .calc-row select:is(.dark *)::placeholder { --tw-text-opacity:1; color:rgb(113 113 122 / var(--tw-text-opacity, 1)) }
.calc-row input[type="number"]:focus,
  .calc-row select:focus { --tw-border-opacity:1; border-color:rgb(37 99 235 / var(--tw-border-opacity, 1)); outline:2px solid transparent; outline-offset:2px; --tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color); --tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color); box-shadow:var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000); --tw-ring-color:rgb(37 99 235 / 0.3) }
.calc-row input[type="number"]:focus:focus-visible,
  .calc-row select:focus:focus-visible { --tw-ring-color:rgb(37 99 235 / 0.4) }
.calc-row input[type="number"]:focus:is(.dark *),
  .calc-row select:focus:is(.dark *) { --tw-border-opacity:1; border-color:rgb(59 130 246 / var(--tw-border-opacity, 1)); --tw-ring-color:rgb(59 130 246 / 0.3) }
/* The DISPLAY — amber numbers on dark, like instrument readout (the only dark element) */
.calc-row output { display:block; display:flex; height:3rem; width:100%; align-items:center; border-radius:0.5rem; border-width:1px; --tw-border-opacity:1; border-color:rgb(39 39 42 / var(--tw-border-opacity, 1)); --tw-bg-opacity:1; background-color:rgb(9 9 11 / var(--tw-bg-opacity, 1)); padding-left:1rem; padding-right:1rem; font-family:"JetBrains Mono", ui-monospace, monospace; font-size:1.5rem; line-height:2rem; font-weight:700; --tw-numeric-spacing:tabular-nums; font-variant-numeric:var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction); letter-spacing:0em; --tw-text-opacity:1; color:rgb(252 211 77 / var(--tw-text-opacity, 1)) }
.calc-row output:is(.dark *) { --tw-border-opacity:1; border-color:rgb(39 39 42 / var(--tw-border-opacity, 1)); --tw-bg-opacity:1; background-color:rgb(9 9 11 / var(--tw-bg-opacity, 1)); --tw-text-opacity:1; color:rgb(252 211 77 / var(--tw-text-opacity, 1)) }
.calc-row output[data-pulse="true"] {
    animation: readout-pulse 280ms ease-out;
  }
@keyframes readout-pulse {
    0%   { box-shadow: inset 0 2px 6px rgba(0,0,0,0.4), 0 0 0 0 rgba(251,191,36,0.45); }
    50%  { box-shadow: inset 0 2px 6px rgba(0,0,0,0.4), 0 0 0 4px rgba(251,191,36,0.0); }
    100% { box-shadow: inset 0 2px 6px rgba(0,0,0,0.4), 0 0 0 0 rgba(251,191,36,0.0); }
  }
[data-calc-swap] { flex-shrink:0; cursor:pointer; -webkit-user-select:none; -moz-user-select:none; user-select:none; align-self:center; border-radius:0.5rem; padding:0.5rem; --tw-text-opacity:1; color:rgb(161 161 170 / var(--tw-text-opacity, 1)); transition-property:color, background-color, border-color, text-decoration-color, fill, stroke; transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1); transition-duration:150ms }
[data-calc-swap]:hover { --tw-bg-opacity:1; background-color:rgb(244 244 245 / var(--tw-bg-opacity, 1)); --tw-text-opacity:1; color:rgb(24 24 27 / var(--tw-text-opacity, 1)) }
[data-calc-swap]:focus-visible { outline:2px solid transparent; outline-offset:2px; --tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color); --tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color); box-shadow:var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000); --tw-ring-color:rgb(37 99 235 / 0.4) }
[data-calc-swap]:active { --tw-bg-opacity:1; background-color:rgb(228 228 231 / var(--tw-bg-opacity, 1)) }
@media (min-width: 640px) {
 [data-calc-swap] { align-self:flex-end } }
[data-calc-swap]:is(.dark *) { --tw-text-opacity:1; color:rgb(113 113 122 / var(--tw-text-opacity, 1)) }
[data-calc-swap]:hover:is(.dark *) { --tw-bg-opacity:1; background-color:rgb(39 39 42 / var(--tw-bg-opacity, 1)); --tw-text-opacity:1; color:rgb(244 244 245 / var(--tw-text-opacity, 1)) }
/* Direction arrow between input and output */
/* Advanced options */
.advanced { border-top-width:1px; border-color:rgb(228 228 231 / 0.8); padding-top:1.25rem }
.advanced:is(.dark *) { --tw-border-opacity:1; border-color:rgb(39 39 42 / var(--tw-border-opacity, 1)) }
.advanced summary { margin-left:-0.25rem; margin-right:-0.25rem; display:flex; cursor:pointer; list-style-type:none; align-items:center; gap:0.5rem; border-radius:0.25rem; padding-left:0.25rem; padding-right:0.25rem; font-size:0.875rem; line-height:1.25rem; font-weight:500; --tw-text-opacity:1; color:rgb(63 63 70 / var(--tw-text-opacity, 1)); transition-property:color, background-color, border-color, text-decoration-color, fill, stroke; transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1); transition-duration:150ms }
.advanced summary:hover { --tw-text-opacity:1; color:rgb(29 78 216 / var(--tw-text-opacity, 1)) }
.advanced summary:focus-visible { outline:2px solid transparent; outline-offset:2px; --tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color); --tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color); box-shadow:var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000); --tw-ring-color:rgb(37 99 235 / 0.4) }
.advanced summary:is(.dark *) { --tw-text-opacity:1; color:rgb(212 212 216 / var(--tw-text-opacity, 1)) }
.advanced summary:hover:is(.dark *) { --tw-text-opacity:1; color:rgb(59 130 246 / var(--tw-text-opacity, 1)) }
.advanced summary::-webkit-details-marker { display: none; }
.advanced summary::before {
    content: '+';
    display:inline-block;
    height:1rem;
    width:1rem;
    border-radius:0.25rem;
    border-width:1px;
    --tw-border-opacity:1;
    border-color:rgb(212 212 216 / var(--tw-border-opacity, 1));
    text-align:center;
    font-family:"JetBrains Mono", ui-monospace, monospace;
    font-size:0.75rem;
    line-height:1rem;
  }
.advanced summary:is(.dark *)::before { --tw-border-opacity:1; border-color:rgb(82 82 91 / var(--tw-border-opacity, 1)) }
.advanced[open] summary::before { content: '−'; }
.conditions-grid { margin-top:1rem; display:grid; grid-template-columns:repeat(1, minmax(0, 1fr)); gap:1rem }
@media (min-width: 640px) {
 .conditions-grid { grid-template-columns:repeat(2, minmax(0, 1fr)) } }
.conditions-grid label { display:flex; flex-direction:column; gap:0.375rem; font-size:0.875rem; line-height:1.25rem; font-weight:500; --tw-text-opacity:1; color:rgb(63 63 70 / var(--tw-text-opacity, 1)) }
.conditions-grid label:is(.dark *) { --tw-text-opacity:1; color:rgb(212 212 216 / var(--tw-text-opacity, 1)) }
.conditions-grid input { height:2.5rem; border-radius:0.5rem; border-width:1px; --tw-border-opacity:1; border-color:rgb(228 228 231 / var(--tw-border-opacity, 1)); --tw-bg-opacity:1; background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1)); padding-left:0.75rem; padding-right:0.75rem; font-family:"JetBrains Mono", ui-monospace, monospace; font-size:0.875rem; line-height:1.25rem; --tw-text-opacity:1; color:rgb(24 24 27 / var(--tw-text-opacity, 1)); transition-property:transform; transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1); transition-duration:150ms }
.conditions-grid input:active { --tw-translate-y:1px; transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y)) }
.conditions-grid input:is(.dark *) { --tw-border-opacity:1; border-color:rgb(63 63 70 / var(--tw-border-opacity, 1)); --tw-bg-opacity:1; background-color:rgb(39 39 42 / var(--tw-bg-opacity, 1)); --tw-text-opacity:1; color:rgb(244 244 245 / var(--tw-text-opacity, 1)) }
.conditions-grid input:focus { --tw-border-opacity:1; border-color:rgb(37 99 235 / var(--tw-border-opacity, 1)); outline:2px solid transparent; outline-offset:2px; --tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color); --tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color); box-shadow:var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000); --tw-ring-color:rgb(37 99 235 / 0.3) }
.conditions-grid small { font-size:0.75rem; line-height:1rem; --tw-text-opacity:1; color:rgb(113 113 122 / var(--tw-text-opacity, 1)) }
.conditions-grid small:is(.dark *) { --tw-text-opacity:1; color:rgb(113 113 122 / var(--tw-text-opacity, 1)) }
.conditions-grid .input-error { --tw-border-opacity:1; border-color:rgb(248 113 113 / var(--tw-border-opacity, 1)); --tw-bg-opacity:1; background-color:rgb(254 242 242 / var(--tw-bg-opacity, 1)); --tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color); --tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color); box-shadow:var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000); --tw-ring-opacity:1; --tw-ring-color:rgb(254 202 202 / var(--tw-ring-opacity, 1)) }
.conditions-grid .input-error:is(.dark *) { border-color:rgb(239 68 68 / 0.6); background-color:rgb(69 10 10 / 0.3); --tw-ring-color:rgb(127 29 29 / 0.5) }
.conditions-grid .input-error-text { margin-top:0.125rem; font-size:0.75rem; line-height:1rem; font-weight:400; --tw-text-opacity:1; color:rgb(220 38 38 / var(--tw-text-opacity, 1)) }
.conditions-grid .input-error-text:is(.dark *) { --tw-text-opacity:1; color:rgb(248 113 113 / var(--tw-text-opacity, 1)) }
.result-narrative { margin-top:1.25rem; display:flex; align-items:center; gap:0.5rem; border-radius:0.5rem; border-width:1px; border-color:rgb(228 228 231 / 0.8); --tw-bg-opacity:1; background-color:rgb(250 250 250 / var(--tw-bg-opacity, 1)); padding:0.875rem; padding-left:1rem; padding-right:1rem; font-family:"JetBrains Mono", ui-monospace, monospace; font-size:0.875rem; line-height:1.25rem; line-height:1.625; --tw-text-opacity:1; color:rgb(82 82 91 / var(--tw-text-opacity, 1)) }
.result-narrative:is(.dark *) { border-color:rgb(63 63 70 / 0.6); background-color:rgb(39 39 42 / 0.6); --tw-text-opacity:1; color:rgb(161 161 170 / var(--tw-text-opacity, 1)) }
.result-narrative::before {
    content: '';
    display:block;
    height:0.375rem;
    width:0.375rem;
    flex-shrink:0;
    border-radius:9999px;
    --tw-bg-opacity:1;
    background-color:rgb(245 158 11 / var(--tw-bg-opacity, 1));
  }
.result-narrative:is(.dark *)::before { --tw-bg-opacity:1; background-color:rgb(251 191 36 / var(--tw-bg-opacity, 1)) }
/* ====== SECTION CONTAINERS ====== */
.section-card { border-radius:1rem; --tw-bg-opacity:1; background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1)); padding:1.5rem; --tw-shadow:0 1px 0 0 rgba(0,0,0,0.02),0 2px 8px -4px rgba(0,0,0,0.04); --tw-shadow-colored:0 1px 0 0 var(--tw-shadow-color), 0 2px 8px -4px var(--tw-shadow-color); box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow); --tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color); --tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color); box-shadow:var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000); --tw-ring-color:rgb(228 228 231 / 0.7) }
@media (min-width: 640px) {
 .section-card { padding:2rem } }
.section-card:is(.dark *) { --tw-bg-opacity:1; background-color:rgb(24 24 27 / var(--tw-bg-opacity, 1)); --tw-shadow:0 1px 0 0 rgba(255,255,255,0.03),0 2px 8px -4px rgba(0,0,0,0.3); --tw-shadow-colored:0 1px 0 0 var(--tw-shadow-color), 0 2px 8px -4px var(--tw-shadow-color); box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow); --tw-ring-color:rgb(255 255 255 / 0.1) }
.section-tinted { border-radius:1rem; --tw-bg-opacity:1; background-color:rgb(250 250 250 / var(--tw-bg-opacity, 1)); padding:1.5rem; --tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color); --tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color); box-shadow:var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000); --tw-ring-color:rgb(228 228 231 / 0.5) }
@media (min-width: 640px) {
 .section-tinted { padding:2rem } }
.section-tinted:is(.dark *) { background-color:rgb(39 39 42 / 0.4); --tw-ring-color:rgb(39 39 42 / 0.5) }
.section-alt { border-radius:1rem; --tw-bg-opacity:1; background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1)); padding:1.5rem }
@media (min-width: 640px) {
 .section-alt { padding:2rem } }
.section-accent { border-radius:1rem; border-left-width:4px; --tw-border-opacity:1; border-color:rgb(37 99 235 / var(--tw-border-opacity, 1)); --tw-bg-opacity:1; background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1)); padding:1.5rem; --tw-shadow:0 1px 0 0 rgba(0,0,0,0.02),0 2px 8px -4px rgba(0,0,0,0.04); --tw-shadow-colored:0 1px 0 0 var(--tw-shadow-color), 0 2px 8px -4px var(--tw-shadow-color); box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow) }
@media (min-width: 640px) {
 .section-accent { padding:2rem } }
.section-accent:is(.dark *) { --tw-border-opacity:1; border-color:rgb(59 130 246 / var(--tw-border-opacity, 1)); --tw-bg-opacity:1; background-color:rgb(24 24 27 / var(--tw-bg-opacity, 1)); --tw-shadow:0 1px 0 0 rgba(255,255,255,0.03),0 2px 8px -4px rgba(0,0,0,0.3); --tw-shadow-colored:0 1px 0 0 var(--tw-shadow-color), 0 2px 8px -4px var(--tw-shadow-color); box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow) }
/* Section headings — with left accent bar */
.section-heading { margin-bottom:1.25rem; display:flex; align-items:center; gap:0.75rem; font-size:1.125rem; line-height:1.75rem; font-weight:700; letter-spacing:-0.025em; --tw-text-opacity:1; color:rgb(24 24 27 / var(--tw-text-opacity, 1)) }
.section-heading:is(.dark *) { --tw-text-opacity:1; color:rgb(250 250 250 / var(--tw-text-opacity, 1)) }
.section-heading::before {
    content: '';
    display:block;
    height:1.25rem;
    width:0.25rem;
    flex-shrink:0;
    border-radius:9999px;
    --tw-bg-opacity:1;
    background-color:rgb(37 99 235 / var(--tw-bg-opacity, 1));
  }
.section-heading:is(.dark *)::before { --tw-bg-opacity:1; background-color:rgb(59 130 246 / var(--tw-bg-opacity, 1)) }
.section-heading-alt { margin-bottom:1.25rem; display:flex; align-items:center; gap:0.75rem; font-size:1.125rem; line-height:1.75rem; font-weight:700; letter-spacing:-0.025em; --tw-text-opacity:1; color:rgb(30 58 138 / var(--tw-text-opacity, 1)) }
.section-heading-alt:is(.dark *) { --tw-text-opacity:1; color:rgb(147 197 253 / var(--tw-text-opacity, 1)) }
.section-heading-alt::before {
    content: '';
    display:block;
    height:1.25rem;
    width:0.25rem;
    flex-shrink:0;
    border-radius:9999px;
    --tw-bg-opacity:1;
    background-color:rgb(251 191 36 / var(--tw-bg-opacity, 1));
  }
.section-heading-alt:is(.dark *)::before { --tw-bg-opacity:1; background-color:rgb(245 158 11 / var(--tw-bg-opacity, 1)) }
/* ====== SECTION SPACING ====== */
.tool-page > * + * { margin-top:3.5rem }
/* Formula — in a card with left border */
.formula .source { margin-top:0.75rem; font-size:0.75rem; line-height:1rem; --tw-text-opacity:1; color:rgb(161 161 170 / var(--tw-text-opacity, 1)) }
.formula .source:is(.dark *) { --tw-text-opacity:1; color:rgb(113 113 122 / var(--tw-text-opacity, 1)) }
/* Example cards */
.example-grid { display:grid; grid-template-columns:repeat(1, minmax(0, 1fr)); gap:0.75rem }
@media (min-width: 640px) {
 .example-grid { grid-template-columns:repeat(2, minmax(0, 1fr)) } }
.example-card { border-radius:0.5rem; --tw-bg-opacity:1; background-color:rgb(250 250 250 / var(--tw-bg-opacity, 1)); padding:1rem; --tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color); --tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color); box-shadow:var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000); --tw-ring-color:rgb(228 228 231 / 0.6); transition-property:color, background-color, border-color, text-decoration-color, fill, stroke; transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1); transition-duration:150ms }
.example-card:hover { --tw-ring-opacity:1; --tw-ring-color:rgb(212 212 216 / var(--tw-ring-opacity, 1)) }
.example-card:is(.dark *) { --tw-bg-opacity:1; background-color:rgb(39 39 42 / var(--tw-bg-opacity, 1)); --tw-ring-color:rgb(63 63 70 / 0.5) }
.example-card:hover:is(.dark *) { --tw-ring-opacity:1; --tw-ring-color:rgb(82 82 91 / var(--tw-ring-opacity, 1)) }
.example-card .ex-input { font-family:"JetBrains Mono", ui-monospace, monospace; font-size:0.75rem; line-height:1rem; text-transform:uppercase; letter-spacing:0.05em; --tw-text-opacity:1; color:rgb(161 161 170 / var(--tw-text-opacity, 1)) }
.example-card .ex-input:is(.dark *) { --tw-text-opacity:1; color:rgb(113 113 122 / var(--tw-text-opacity, 1)) }
.example-card .ex-output { margin-top:0.5rem; margin-bottom:0.5rem; font-family:"JetBrains Mono", ui-monospace, monospace; font-size:1.5rem; line-height:2rem; font-weight:700; --tw-numeric-spacing:tabular-nums; font-variant-numeric:var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction); letter-spacing:-0.025em; --tw-text-opacity:1; color:rgb(217 119 6 / var(--tw-text-opacity, 1)) }
.example-card .ex-output:is(.dark *) { --tw-text-opacity:1; color:rgb(251 191 36 / var(--tw-text-opacity, 1)) }
.example-card .ex-note { font-size:0.875rem; line-height:1.25rem; line-height:1.625; --tw-text-opacity:1; color:rgb(113 113 122 / var(--tw-text-opacity, 1)) }
.example-card .ex-note:is(.dark *) { --tw-text-opacity:1; color:rgb(161 161 170 / var(--tw-text-opacity, 1)) }
.example-card button { margin-left:-0.25rem; margin-right:-0.25rem; margin-top:0.75rem; border-radius:0.25rem; padding-left:0.25rem; padding-right:0.25rem; font-size:0.875rem; line-height:1.25rem; font-weight:500; --tw-text-opacity:1; color:rgb(29 78 216 / var(--tw-text-opacity, 1)); transition-property:color, background-color, border-color, text-decoration-color, fill, stroke; transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1); transition-duration:150ms }
.example-card button:hover { --tw-text-opacity:1; color:rgb(30 64 175 / var(--tw-text-opacity, 1)) }
.example-card button:focus-visible { outline:2px solid transparent; outline-offset:2px; --tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color); --tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color); box-shadow:var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000); --tw-ring-color:rgb(37 99 235 / 0.4) }
.example-card button:is(.dark *) { --tw-text-opacity:1; color:rgb(59 130 246 / var(--tw-text-opacity, 1)) }
.example-card button:hover:is(.dark *) { --tw-text-opacity:1; color:rgb(147 197 253 / var(--tw-text-opacity, 1)) }
.example-try-btn { margin-left:-0.25rem; margin-right:-0.25rem; margin-top:0.75rem; display:inline-flex; align-items:center; gap:0.25rem; border-radius:0.25rem; padding-left:0.25rem; padding-right:0.25rem; font-size:0.875rem; line-height:1.25rem; font-weight:500; --tw-text-opacity:1; color:rgb(29 78 216 / var(--tw-text-opacity, 1)); transition-property:color, background-color, border-color, text-decoration-color, fill, stroke; transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1); transition-duration:150ms }
.example-try-btn:hover { --tw-text-opacity:1; color:rgb(30 64 175 / var(--tw-text-opacity, 1)) }
.example-try-btn:focus-visible { outline:2px solid transparent; outline-offset:2px; --tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color); --tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color); box-shadow:var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000); --tw-ring-color:rgb(37 99 235 / 0.4) }
.example-try-btn:is(.dark *) { --tw-text-opacity:1; color:rgb(59 130 246 / var(--tw-text-opacity, 1)) }
.example-try-btn:hover:is(.dark *) { --tw-text-opacity:1; color:rgb(147 197 253 / var(--tw-text-opacity, 1)) }
/* Reference tables */
.reference .table-scroll { overflow-x:auto; border-radius:0.5rem; --tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color); --tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color); box-shadow:var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000); --tw-ring-opacity:1; --tw-ring-color:rgb(228 228 231 / var(--tw-ring-opacity, 1)) }
.reference .table-scroll:is(.dark *) { --tw-ring-opacity:1; --tw-ring-color:rgb(39 39 42 / var(--tw-ring-opacity, 1)) }
.reference table { width:100%; border-collapse:collapse; font-size:0.875rem; line-height:1.25rem }
.reference th { --tw-bg-opacity:1; background-color:rgb(244 244 245 / var(--tw-bg-opacity, 1)); padding-left:1rem; padding-right:1rem; padding-top:0.625rem; padding-bottom:0.625rem; text-align:left; font-size:0.75rem; line-height:1rem; font-weight:600; text-transform:uppercase; letter-spacing:0.05em; --tw-text-opacity:1; color:rgb(39 39 42 / var(--tw-text-opacity, 1)) }
.reference th:is(.dark *) { --tw-bg-opacity:1; background-color:rgb(39 39 42 / var(--tw-bg-opacity, 1)); --tw-text-opacity:1; color:rgb(228 228 231 / var(--tw-text-opacity, 1)) }
.reference td { border-top-width:1px; --tw-border-opacity:1; border-color:rgb(228 228 231 / var(--tw-border-opacity, 1)); padding-left:1rem; padding-right:1rem; padding-top:0.625rem; padding-bottom:0.625rem; font-family:"JetBrains Mono", ui-monospace, monospace; --tw-numeric-spacing:tabular-nums; font-variant-numeric:var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction); --tw-text-opacity:1; color:rgb(63 63 70 / var(--tw-text-opacity, 1)) }
.reference td:is(.dark *) { --tw-border-opacity:1; border-color:rgb(39 39 42 / var(--tw-border-opacity, 1)); --tw-text-opacity:1; color:rgb(212 212 216 / var(--tw-text-opacity, 1)) }
.reference tr:nth-child(even) td { background-color:rgb(250 250 250 / 0.5) }
.reference tr:nth-child(even) td:is(.dark *) { background-color:rgb(24 24 27 / 0.5) }
/* Application prose */
.application { color:var(--tw-prose-body); max-width:70ch; }
.application :where(p):not(:where([class~="not-prose"],[class~="not-prose"] *)) { margin-top:1.25em; margin-bottom:1.25em }
.application :where([class~="lead"]):not(:where([class~="not-prose"],[class~="not-prose"] *)) { color:var(--tw-prose-lead); font-size:1.25em; line-height:1.6; margin-top:1.2em; margin-bottom:1.2em }
.application :where(a):not(:where([class~="not-prose"],[class~="not-prose"] *)) { color:#1d4ed8; text-decoration:underline; font-weight:500; }
.application :where(a):not(:where([class~="not-prose"],[class~="not-prose"] *)):hover { color:#1e40af }
.application :where(strong):not(:where([class~="not-prose"],[class~="not-prose"] *)) { color:var(--tw-prose-bold); font-weight:600 }
.application :where(a strong):not(:where([class~="not-prose"],[class~="not-prose"] *)) { color:inherit }
.application :where(blockquote strong):not(:where([class~="not-prose"],[class~="not-prose"] *)) { color:inherit }
.application :where(thead th strong):not(:where([class~="not-prose"],[class~="not-prose"] *)) { color:inherit }
.application :where(ol):not(:where([class~="not-prose"],[class~="not-prose"] *)) { list-style-type:decimal; margin-top:1.25em; margin-bottom:1.25em; padding-inline-start:1.625em }
.application :where(ol[type="A"]):not(:where([class~="not-prose"],[class~="not-prose"] *)) { list-style-type:upper-alpha }
.application :where(ol[type="a"]):not(:where([class~="not-prose"],[class~="not-prose"] *)) { list-style-type:lower-alpha }
.application :where(ol[type="A" s]):not(:where([class~="not-prose"],[class~="not-prose"] *)) { list-style-type:upper-alpha }
.application :where(ol[type="a" s]):not(:where([class~="not-prose"],[class~="not-prose"] *)) { list-style-type:lower-alpha }
.application :where(ol[type="I"]):not(:where([class~="not-prose"],[class~="not-prose"] *)) { list-style-type:upper-roman }
.application :where(ol[type="i"]):not(:where([class~="not-prose"],[class~="not-prose"] *)) { list-style-type:lower-roman }
.application :where(ol[type="I" s]):not(:where([class~="not-prose"],[class~="not-prose"] *)) { list-style-type:upper-roman }
.application :where(ol[type="i" s]):not(:where([class~="not-prose"],[class~="not-prose"] *)) { list-style-type:lower-roman }
.application :where(ol[type="1"]):not(:where([class~="not-prose"],[class~="not-prose"] *)) { list-style-type:decimal }
.application :where(ul):not(:where([class~="not-prose"],[class~="not-prose"] *)) { list-style-type:disc; margin-top:1.25em; margin-bottom:1.25em; padding-inline-start:1.625em }
.application :where(ol > li):not(:where([class~="not-prose"],[class~="not-prose"] *))::marker { font-weight:400; color:var(--tw-prose-counters) }
.application :where(ul > li):not(:where([class~="not-prose"],[class~="not-prose"] *))::marker { color:var(--tw-prose-bullets) }
.application :where(dt):not(:where([class~="not-prose"],[class~="not-prose"] *)) { color:var(--tw-prose-headings); font-weight:600; margin-top:1.25em }
.application :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 }
.application :where(blockquote):not(:where([class~="not-prose"],[class~="not-prose"] *)) { font-weight:500; font-style:italic; color:var(--tw-prose-quotes); border-inline-start-width:0.25rem; border-inline-start-color:var(--tw-prose-quote-borders); quotes:"\201C""\201D""\2018""\2019"; margin-top:1.6em; margin-bottom:1.6em; padding-inline-start:1em }
.application :where(blockquote p:first-of-type):not(:where([class~="not-prose"],[class~="not-prose"] *))::before { content:open-quote }
.application :where(blockquote p:last-of-type):not(:where([class~="not-prose"],[class~="not-prose"] *))::after { content:close-quote }
.application :where(h1):not(:where([class~="not-prose"],[class~="not-prose"] *)) { color:var(--tw-prose-headings); font-weight:800; font-size:2.25em; margin-top:0; margin-bottom:0.8888889em; line-height:1.1111111 }
.application :where(h1 strong):not(:where([class~="not-prose"],[class~="not-prose"] *)) { font-weight:900; color:inherit }
.application :where(h2):not(:where([class~="not-prose"],[class~="not-prose"] *)) { color:var(--tw-prose-headings); font-weight:700; font-size:1.5em; margin-top:2em; margin-bottom:1em; line-height:1.3333333 }
.application :where(h2 strong):not(:where([class~="not-prose"],[class~="not-prose"] *)) { font-weight:800; color:inherit }
.application :where(h3):not(:where([class~="not-prose"],[class~="not-prose"] *)) { color:var(--tw-prose-headings); font-weight:600; font-size:1.25em; margin-top:1.6em; margin-bottom:0.6em; line-height:1.6 }
.application :where(h3 strong):not(:where([class~="not-prose"],[class~="not-prose"] *)) { font-weight:700; color:inherit }
.application :where(h4):not(:where([class~="not-prose"],[class~="not-prose"] *)) { color:var(--tw-prose-headings); font-weight:600; margin-top:1.5em; margin-bottom:0.5em; line-height:1.5 }
.application :where(h4 strong):not(:where([class~="not-prose"],[class~="not-prose"] *)) { font-weight:700; color:inherit }
.application :where(img):not(:where([class~="not-prose"],[class~="not-prose"] *)) { margin-top:2em; margin-bottom:2em }
.application :where(picture):not(:where([class~="not-prose"],[class~="not-prose"] *)) { display:block; margin-top:2em; margin-bottom:2em }
.application :where(video):not(:where([class~="not-prose"],[class~="not-prose"] *)) { margin-top:2em; margin-bottom:2em }
.application :where(kbd):not(:where([class~="not-prose"],[class~="not-prose"] *)) { font-weight:500; font-family:inherit; color:var(--tw-prose-kbd); box-shadow:0 0 0 1px var(--tw-prose-kbd-shadows), 0 3px 0 var(--tw-prose-kbd-shadows); font-size:0.875em; border-radius:0.3125rem; padding-top:0.1875em; padding-inline-end:0.375em; padding-bottom:0.1875em; padding-inline-start:0.375em }
.application :where(code):not(:where([class~="not-prose"],[class~="not-prose"] *)) { color:var(--tw-prose-code); font-weight:600; font-size:0.875em }
.application :where(code):not(:where([class~="not-prose"],[class~="not-prose"] *))::before { content:"`" }
.application :where(code):not(:where([class~="not-prose"],[class~="not-prose"] *))::after { content:"`" }
.application :where(a code):not(:where([class~="not-prose"],[class~="not-prose"] *)) { color:inherit }
.application :where(h1 code):not(:where([class~="not-prose"],[class~="not-prose"] *)) { color:inherit }
.application :where(h2 code):not(:where([class~="not-prose"],[class~="not-prose"] *)) { color:inherit; font-size:0.875em }
.application :where(h3 code):not(:where([class~="not-prose"],[class~="not-prose"] *)) { color:inherit; font-size:0.9em }
.application :where(h4 code):not(:where([class~="not-prose"],[class~="not-prose"] *)) { color:inherit }
.application :where(blockquote code):not(:where([class~="not-prose"],[class~="not-prose"] *)) { color:inherit }
.application :where(thead th code):not(:where([class~="not-prose"],[class~="not-prose"] *)) { color:inherit }
.application :where(pre):not(:where([class~="not-prose"],[class~="not-prose"] *)) { color:var(--tw-prose-pre-code); background-color:var(--tw-prose-pre-bg); overflow-x:auto; font-weight:400; font-size:0.875em; line-height:1.7142857; margin-top:1.7142857em; margin-bottom:1.7142857em; border-radius:0.375rem; padding-top:0.8571429em; padding-inline-end:1.1428571em; padding-bottom:0.8571429em; padding-inline-start:1.1428571em }
.application :where(pre code):not(:where([class~="not-prose"],[class~="not-prose"] *)) { background-color:transparent; border-width:0; border-radius:0; padding:0; font-weight:inherit; color:inherit; font-size:inherit; font-family:inherit; line-height:inherit }
.application :where(pre code):not(:where([class~="not-prose"],[class~="not-prose"] *))::before { content:none }
.application :where(pre code):not(:where([class~="not-prose"],[class~="not-prose"] *))::after { content:none }
.application :where(table):not(:where([class~="not-prose"],[class~="not-prose"] *)) { width:100%; table-layout:auto; margin-top:2em; margin-bottom:2em; font-size:0.875em; line-height:1.7142857 }
.application :where(thead):not(:where([class~="not-prose"],[class~="not-prose"] *)) { border-bottom-width:1px; border-bottom-color:var(--tw-prose-th-borders) }
.application :where(thead th):not(:where([class~="not-prose"],[class~="not-prose"] *)) { color:var(--tw-prose-headings); font-weight:600; vertical-align:bottom; padding-inline-end:0.5714286em; padding-bottom:0.5714286em; padding-inline-start:0.5714286em }
.application :where(tbody tr):not(:where([class~="not-prose"],[class~="not-prose"] *)) { border-bottom-width:1px; border-bottom-color:var(--tw-prose-td-borders) }
.application :where(tbody tr:last-child):not(:where([class~="not-prose"],[class~="not-prose"] *)) { border-bottom-width:0 }
.application :where(tbody td):not(:where([class~="not-prose"],[class~="not-prose"] *)) { vertical-align:baseline }
.application :where(tfoot):not(:where([class~="not-prose"],[class~="not-prose"] *)) { border-top-width:1px; border-top-color:var(--tw-prose-th-borders) }
.application :where(tfoot td):not(:where([class~="not-prose"],[class~="not-prose"] *)) { vertical-align:top }
.application :where(th, td):not(:where([class~="not-prose"],[class~="not-prose"] *)) { text-align:start }
.application :where(figure > *):not(:where([class~="not-prose"],[class~="not-prose"] *)) { margin-top:0; margin-bottom:0 }
.application :where(figcaption):not(:where([class~="not-prose"],[class~="not-prose"] *)) { color:var(--tw-prose-captions); font-size:0.875em; line-height:1.4285714; margin-top:0.8571429em }
.application { --tw-prose-body:#3f3f46; --tw-prose-headings:#18181b; --tw-prose-lead:#4b5563; --tw-prose-links:#1d4ed8; --tw-prose-bold:#18181b; --tw-prose-counters:#6b7280; --tw-prose-bullets:#d1d5db; --tw-prose-hr:#e5e7eb; --tw-prose-quotes:#111827; --tw-prose-quote-borders:#e5e7eb; --tw-prose-captions:#6b7280; --tw-prose-kbd:#111827; --tw-prose-kbd-shadows:rgb(17 24 39 / 10%); --tw-prose-code:#111827; --tw-prose-pre-code:#e5e7eb; --tw-prose-pre-bg:#1f2937; --tw-prose-th-borders:#d1d5db; --tw-prose-td-borders:#e5e7eb; --tw-prose-invert-body:#d1d5db; --tw-prose-invert-headings:#fff; --tw-prose-invert-lead:#9ca3af; --tw-prose-invert-links:#fff; --tw-prose-invert-bold:#fff; --tw-prose-invert-counters:#9ca3af; --tw-prose-invert-bullets:#4b5563; --tw-prose-invert-hr:#374151; --tw-prose-invert-quotes:#f3f4f6; --tw-prose-invert-quote-borders:#374151; --tw-prose-invert-captions:#9ca3af; --tw-prose-invert-kbd:#fff; --tw-prose-invert-kbd-shadows:rgb(255 255 255 / 10%); --tw-prose-invert-code:#fff; --tw-prose-invert-pre-code:#d1d5db; --tw-prose-invert-pre-bg:rgb(0 0 0 / 50%); --tw-prose-invert-th-borders:#4b5563; --tw-prose-invert-td-borders:#374151; font-size:1rem; line-height:1.75 }
.application :where(picture > img):not(:where([class~="not-prose"],[class~="not-prose"] *)) { margin-top:0; margin-bottom:0 }
.application :where(li):not(:where([class~="not-prose"],[class~="not-prose"] *)) { margin-top:0.5em; margin-bottom:0.5em }
.application :where(ol > li):not(:where([class~="not-prose"],[class~="not-prose"] *)) { padding-inline-start:0.375em }
.application :where(ul > li):not(:where([class~="not-prose"],[class~="not-prose"] *)) { padding-inline-start:0.375em }
.application :where(.prose > ul > li p):not(:where([class~="not-prose"],[class~="not-prose"] *)) { margin-top:0.75em; margin-bottom:0.75em }
.application :where(.prose > ul > li > p:first-child):not(:where([class~="not-prose"],[class~="not-prose"] *)) { margin-top:1.25em }
.application :where(.prose > ul > li > p:last-child):not(:where([class~="not-prose"],[class~="not-prose"] *)) { margin-bottom:1.25em }
.application :where(.prose > ol > li > p:first-child):not(:where([class~="not-prose"],[class~="not-prose"] *)) { margin-top:1.25em }
.application :where(.prose > ol > li > p:last-child):not(:where([class~="not-prose"],[class~="not-prose"] *)) { margin-bottom:1.25em }
.application :where(ul ul, ul ol, ol ul, ol ol):not(:where([class~="not-prose"],[class~="not-prose"] *)) { margin-top:0.75em; margin-bottom:0.75em }
.application :where(dl):not(:where([class~="not-prose"],[class~="not-prose"] *)) { margin-top:1.25em; margin-bottom:1.25em }
.application :where(dd):not(:where([class~="not-prose"],[class~="not-prose"] *)) { margin-top:0.5em; padding-inline-start:1.625em }
.application :where(hr + *):not(:where([class~="not-prose"],[class~="not-prose"] *)) { margin-top:0 }
.application :where(h2 + *):not(:where([class~="not-prose"],[class~="not-prose"] *)) { margin-top:0 }
.application :where(h3 + *):not(:where([class~="not-prose"],[class~="not-prose"] *)) { margin-top:0 }
.application :where(h4 + *):not(:where([class~="not-prose"],[class~="not-prose"] *)) { margin-top:0 }
.application :where(thead th:first-child):not(:where([class~="not-prose"],[class~="not-prose"] *)) { padding-inline-start:0 }
.application :where(thead th:last-child):not(:where([class~="not-prose"],[class~="not-prose"] *)) { padding-inline-end:0 }
.application :where(tbody td, tfoot td):not(:where([class~="not-prose"],[class~="not-prose"] *)) { padding-top:0.5714286em; padding-inline-end:0.5714286em; padding-bottom:0.5714286em; padding-inline-start:0.5714286em }
.application :where(tbody td:first-child, tfoot td:first-child):not(:where([class~="not-prose"],[class~="not-prose"] *)) { padding-inline-start:0 }
.application :where(tbody td:last-child, tfoot td:last-child):not(:where([class~="not-prose"],[class~="not-prose"] *)) { padding-inline-end:0 }
.application :where(figure):not(:where([class~="not-prose"],[class~="not-prose"] *)) { margin-top:2em; margin-bottom:2em }
.application :where(.prose > :first-child):not(:where([class~="not-prose"],[class~="not-prose"] *)) { margin-top:0 }
.application :where(.prose > :last-child):not(:where([class~="not-prose"],[class~="not-prose"] *)) { margin-bottom:0 }
.application { --tw-prose-body:#3f3f46; --tw-prose-headings:#18181b; --tw-prose-lead:#52525b; --tw-prose-links:#18181b; --tw-prose-bold:#18181b; --tw-prose-counters:#71717a; --tw-prose-bullets:#d4d4d8; --tw-prose-hr:#e4e4e7; --tw-prose-quotes:#18181b; --tw-prose-quote-borders:#e4e4e7; --tw-prose-captions:#71717a; --tw-prose-kbd:#18181b; --tw-prose-kbd-shadows:rgb(24 24 27 / 10%); --tw-prose-code:#18181b; --tw-prose-pre-code:#e4e4e7; --tw-prose-pre-bg:#27272a; --tw-prose-th-borders:#d4d4d8; --tw-prose-td-borders:#e4e4e7; --tw-prose-invert-body:#d4d4d8; --tw-prose-invert-headings:#fff; --tw-prose-invert-lead:#a1a1aa; --tw-prose-invert-links:#fff; --tw-prose-invert-bold:#fff; --tw-prose-invert-counters:#a1a1aa; --tw-prose-invert-bullets:#52525b; --tw-prose-invert-hr:#3f3f46; --tw-prose-invert-quotes:#f4f4f5; --tw-prose-invert-quote-borders:#3f3f46; --tw-prose-invert-captions:#a1a1aa; --tw-prose-invert-kbd:#fff; --tw-prose-invert-kbd-shadows:rgb(255 255 255 / 10%); --tw-prose-invert-code:#fff; --tw-prose-invert-pre-code:#d4d4d8; --tw-prose-invert-pre-bg:rgb(0 0 0 / 50%); --tw-prose-invert-th-borders:#52525b; --tw-prose-invert-td-borders:#3f3f46; max-width:none }
.application :is(:where(h1, h2, h3, h4, h5, h6, th):not(:where([class~="not-prose"],[class~="not-prose"] *))) { --tw-text-opacity:1; color:rgb(24 24 27 / var(--tw-text-opacity, 1)) }
.application :is(:where(a):not(:where([class~="not-prose"],[class~="not-prose"] *))) { --tw-text-opacity:1; color:rgb(29 78 216 / var(--tw-text-opacity, 1)); text-decoration-line:none }
.application :is(:where(a):not(:where([class~="not-prose"],[class~="not-prose"] *))):hover { text-decoration-line:underline }
.application :is(:where(code):not(:where([class~="not-prose"],[class~="not-prose"] *))) { border-radius:0.25rem; --tw-bg-opacity:1; background-color:rgb(244 244 245 / var(--tw-bg-opacity, 1)); padding-left:0.375rem; padding-right:0.375rem; font-family:"JetBrains Mono", ui-monospace, monospace; font-size:0.875rem; line-height:1.25rem }
.application:is(.dark *) { --tw-prose-body:#d4d4d8; --tw-prose-headings:#f4f4f5; --tw-prose-lead:var(--tw-prose-invert-lead); --tw-prose-links:#3b82f6; --tw-prose-bold:#f4f4f5; --tw-prose-counters:var(--tw-prose-invert-counters); --tw-prose-bullets:var(--tw-prose-invert-bullets); --tw-prose-hr:var(--tw-prose-invert-hr); --tw-prose-quotes:var(--tw-prose-invert-quotes); --tw-prose-quote-borders:var(--tw-prose-invert-quote-borders); --tw-prose-captions:var(--tw-prose-invert-captions); --tw-prose-kbd:var(--tw-prose-invert-kbd); --tw-prose-kbd-shadows:var(--tw-prose-invert-kbd-shadows); --tw-prose-code:var(--tw-prose-invert-code); --tw-prose-pre-code:var(--tw-prose-invert-pre-code); --tw-prose-pre-bg:var(--tw-prose-invert-pre-bg); --tw-prose-th-borders:var(--tw-prose-invert-th-borders); --tw-prose-td-borders:var(--tw-prose-invert-td-borders); }
.application:is(.dark *) :where(a):not(:where([class~="not-prose"],[class~="not-prose"] *)) { color:#3b82f6; }
.application:is(.dark *) :where(a):not(:where([class~="not-prose"],[class~="not-prose"] *)):hover { color:#93c5fd }
.application :is(:where(h1, h2, h3, h4, h5, h6, th):not(:where([class~="not-prose"],[class~="not-prose"] *))):is(.dark *) { --tw-text-opacity:1; color:rgb(244 244 245 / var(--tw-text-opacity, 1)) }
.application :is(:where(code):not(:where([class~="not-prose"],[class~="not-prose"] *))):is(.dark *) { --tw-bg-opacity:1; background-color:rgb(39 39 42 / var(--tw-bg-opacity, 1)) }
/* FAQ */
.faq details { border-bottom-width:1px; --tw-border-opacity:1; border-color:rgb(228 228 231 / var(--tw-border-opacity, 1)); padding-top:1.25rem; padding-bottom:1.25rem }
.faq details:is(.dark *) { --tw-border-opacity:1; border-color:rgb(39 39 42 / var(--tw-border-opacity, 1)) }
.faq details:first-of-type { padding-top:0px }
.faq summary { cursor:pointer; padding-right:1.5rem; font-size:1rem; line-height:1.5rem; font-weight:600; line-height:1.375; --tw-text-opacity:1; color:rgb(39 39 42 / var(--tw-text-opacity, 1)); transition-property:color, background-color, border-color, text-decoration-color, fill, stroke; transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1); transition-duration:150ms }
.faq summary:hover { --tw-text-opacity:1; color:rgb(29 78 216 / var(--tw-text-opacity, 1)) }
.faq summary:is(.dark *) { --tw-text-opacity:1; color:rgb(228 228 231 / var(--tw-text-opacity, 1)) }
.faq summary:hover:is(.dark *) { --tw-text-opacity:1; color:rgb(59 130 246 / var(--tw-text-opacity, 1)) }
.faq details[open] summary { margin-bottom:0.75rem; --tw-text-opacity:1; color:rgb(30 64 175 / var(--tw-text-opacity, 1)) }
.faq details[open] summary:is(.dark *) { --tw-text-opacity:1; color:rgb(59 130 246 / var(--tw-text-opacity, 1)) }
.faq details p { margin-left:0px; font-size:15px; line-height:1.625; --tw-text-opacity:1; color:rgb(82 82 91 / var(--tw-text-opacity, 1)) }
.faq details p:is(.dark *) { --tw-text-opacity:1; color:rgb(161 161 170 / var(--tw-text-opacity, 1)) }
/* Section rhythm — tighter spacing for adjacent prose blocks */
.tool-page > * + * { margin-top:3rem }
@media (min-width: 640px) {
 .tool-page > * + * { margin-top:4rem } }
.tool-page .section-card + .section-card,
  .tool-page .section-card + .section-tinted,
  .tool-page .section-tinted + .section-card,
  .tool-page .section-tinted + .section-tinted { margin-top:2.5rem }
.faq summary { cursor:pointer; font-size:1rem; line-height:1.5rem; font-weight:600; --tw-text-opacity:1; color:rgb(39 39 42 / var(--tw-text-opacity, 1)); transition-property:color, background-color, border-color, text-decoration-color, fill, stroke; transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1); transition-duration:150ms }
.faq summary:hover { --tw-text-opacity:1; color:rgb(29 78 216 / var(--tw-text-opacity, 1)) }
.faq summary:is(.dark *) { --tw-text-opacity:1; color:rgb(228 228 231 / var(--tw-text-opacity, 1)) }
.faq summary:hover:is(.dark *) { --tw-text-opacity:1; color:rgb(59 130 246 / var(--tw-text-opacity, 1)) }
.faq details[open] summary { margin-bottom:0.75rem; --tw-text-opacity:1; color:rgb(30 64 175 / var(--tw-text-opacity, 1)) }
.faq details[open] summary:is(.dark *) { --tw-text-opacity:1; color:rgb(59 130 246 / var(--tw-text-opacity, 1)) }
.faq details p { margin-left:0px; line-height:1.625; --tw-text-opacity:1; color:rgb(82 82 91 / var(--tw-text-opacity, 1)) }
.faq details p:is(.dark *) { --tw-text-opacity:1; color:rgb(161 161 170 / var(--tw-text-opacity, 1)) }
/* Related tools */
.related-grid { display:grid; grid-template-columns:repeat(1, minmax(0, 1fr)); gap:0.75rem }
@media (min-width: 640px) {
 .related-grid { grid-template-columns:repeat(2, minmax(0, 1fr)) } }
@media (min-width: 1024px) {
 .related-grid { grid-template-columns:repeat(3, minmax(0, 1fr)) } }
.related-card { display:block; border-radius:0.5rem; --tw-bg-opacity:1; background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1)); padding:1rem; --tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color); --tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color); box-shadow:var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000); --tw-ring-color:rgb(228 228 231 / 0.7); transition-property:color, background-color, border-color, text-decoration-color, fill, stroke; transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1); transition-duration:150ms }
.related-card:hover { --tw-ring-opacity:1; --tw-ring-color:rgb(212 212 216 / var(--tw-ring-opacity, 1)) }
.related-card:is(.dark *) { --tw-bg-opacity:1; background-color:rgb(24 24 27 / var(--tw-bg-opacity, 1)); --tw-ring-color:rgb(255 255 255 / 0.1) }
.related-card:hover:is(.dark *) { --tw-ring-color:rgb(255 255 255 / 0.2) }
.related-card h3 { font-size:0.875rem; line-height:1.25rem; font-weight:600; --tw-text-opacity:1; color:rgb(39 39 42 / var(--tw-text-opacity, 1)) }
.related-card h3:is(.dark *) { --tw-text-opacity:1; color:rgb(228 228 231 / var(--tw-text-opacity, 1)) }
.related-card p { margin-top:0.25rem; font-size:0.875rem; line-height:1.25rem; line-height:1.625; --tw-text-opacity:1; color:rgb(113 113 122 / var(--tw-text-opacity, 1)) }
.related-card p:is(.dark *) { --tw-text-opacity:1; color:rgb(113 113 122 / var(--tw-text-opacity, 1)) }
.hub-cta { margin-left:-0.25rem; margin-right:-0.25rem; margin-top:1rem; display:inline-flex; align-items:center; gap:0.25rem; border-radius:0.25rem; padding-left:0.25rem; padding-right:0.25rem; font-size:0.875rem; line-height:1.25rem; font-weight:500; --tw-text-opacity:1; color:rgb(29 78 216 / var(--tw-text-opacity, 1)); transition-property:color, background-color, border-color, text-decoration-color, fill, stroke; transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1); transition-duration:150ms }
.hub-cta:hover { --tw-text-opacity:1; color:rgb(30 64 175 / var(--tw-text-opacity, 1)) }
.hub-cta:focus-visible { outline:2px solid transparent; outline-offset:2px; --tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color); --tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color); box-shadow:var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000); --tw-ring-color:rgb(37 99 235 / 0.4) }
.hub-cta:is(.dark *) { --tw-text-opacity:1; color:rgb(59 130 246 / var(--tw-text-opacity, 1)) }
.hub-cta:hover:is(.dark *) { --tw-text-opacity:1; color:rgb(147 197 253 / var(--tw-text-opacity, 1)) }
/* See Also */
.see-also a { display:block; border-radius:0.5rem; --tw-bg-opacity:1; background-color:rgb(250 250 250 / var(--tw-bg-opacity, 1)); padding:1rem; --tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color); --tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color); box-shadow:var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000); --tw-ring-color:rgb(228 228 231 / 0.7); transition-property:color, background-color, border-color, text-decoration-color, fill, stroke; transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1); transition-duration:150ms }
.see-also a:hover { --tw-ring-opacity:1; --tw-ring-color:rgb(212 212 216 / var(--tw-ring-opacity, 1)) }
.see-also a:is(.dark *) { --tw-bg-opacity:1; background-color:rgb(39 39 42 / var(--tw-bg-opacity, 1)); --tw-ring-color:rgb(63 63 70 / 0.5) }
.see-also a:hover:is(.dark *) { --tw-ring-opacity:1; --tw-ring-color:rgb(82 82 91 / var(--tw-ring-opacity, 1)) }
/* Ad slots */
.ad-slot { position:relative; margin-top:2.5rem; margin-bottom:2.5rem; display:flex; min-height:100px; align-items:center; justify-content:center; overflow:hidden; border-radius:0.75rem; --tw-bg-opacity:1; background-color:rgb(244 244 245 / var(--tw-bg-opacity, 1)); text-align:center }
.ad-slot:is(.dark *) { --tw-bg-opacity:1; background-color:rgb(24 24 27 / var(--tw-bg-opacity, 1)) }
.ad-slot::before {
    content: 'Advertisement';
    position:absolute;
    font-size:0.75rem;
    line-height:1rem;
    font-weight:500;
    text-transform:uppercase;
    letter-spacing:0.1em;
    --tw-text-opacity:1;
    color:rgb(161 161 170 / var(--tw-text-opacity, 1));
  }
.ad-slot:is(.dark *)::before { --tw-text-opacity:1; color:rgb(82 82 91 / var(--tw-text-opacity, 1)) }
.ad-slot ins { position:absolute; inset:0px }
/* ====== BLOG TYPOGRAPHY ====== */
.blog-content h2 { margin-top:3rem; margin-bottom:1rem; border-bottom-width:1px; --tw-border-opacity:1; border-color:rgb(228 228 231 / var(--tw-border-opacity, 1)); padding-bottom:0.5rem; font-size:1.5rem; line-height:2rem; font-weight:700; letter-spacing:-0.025em; --tw-text-opacity:1; color:rgb(24 24 27 / var(--tw-text-opacity, 1)) }
.blog-content h2:is(.dark *) { --tw-border-opacity:1; border-color:rgb(39 39 42 / var(--tw-border-opacity, 1)); --tw-text-opacity:1; color:rgb(250 250 250 / var(--tw-text-opacity, 1)) }
.blog-content h3 { margin-top:2rem; margin-bottom:0.75rem; font-size:1.125rem; line-height:1.75rem; font-weight:600; --tw-text-opacity:1; color:rgb(39 39 42 / var(--tw-text-opacity, 1)) }
.blog-content h3:is(.dark *) { --tw-text-opacity:1; color:rgb(228 228 231 / var(--tw-text-opacity, 1)) }
.blog-content p { line-height:1.625 }
.blog-content ol { list-style-type:decimal }
.blog-content ol > :not([hidden]) ~ :not([hidden]) { --tw-space-y-reverse:0; margin-top:calc(0.5rem * calc(1 - var(--tw-space-y-reverse))); margin-bottom:calc(0.5rem * var(--tw-space-y-reverse)) }
.blog-content ol { padding-left:1.25rem }
.blog-content ul { list-style-type:disc }
.blog-content ul > :not([hidden]) ~ :not([hidden]) { --tw-space-y-reverse:0; margin-top:calc(0.5rem * calc(1 - var(--tw-space-y-reverse))); margin-bottom:calc(0.5rem * var(--tw-space-y-reverse)) }
.blog-content ul { padding-left:1.25rem }
.blog-content li { line-height:1.625 }
.blog-content strong { font-weight:600; --tw-text-opacity:1; color:rgb(39 39 42 / var(--tw-text-opacity, 1)) }
.blog-content strong:is(.dark *) { --tw-text-opacity:1; color:rgb(228 228 231 / var(--tw-text-opacity, 1)) }
.blog-content a { font-weight:500; --tw-text-opacity:1; color:rgb(29 78 216 / var(--tw-text-opacity, 1)) }
.blog-content a:hover { --tw-text-opacity:1; color:rgb(30 64 175 / var(--tw-text-opacity, 1)) }
.blog-content a:is(.dark *) { --tw-text-opacity:1; color:rgb(59 130 246 / var(--tw-text-opacity, 1)) }
.blog-content a:hover:is(.dark *) { --tw-text-opacity:1; color:rgb(147 197 253 / var(--tw-text-opacity, 1)) }
.blog-content code { border-radius:0.25rem; --tw-bg-opacity:1; background-color:rgb(244 244 245 / var(--tw-bg-opacity, 1)); padding-left:0.375rem; padding-right:0.375rem; padding-top:0.125rem; padding-bottom:0.125rem; font-family:"JetBrains Mono", ui-monospace, monospace; font-size:0.875rem; line-height:1.25rem; --tw-text-opacity:1; color:rgb(39 39 42 / var(--tw-text-opacity, 1)) }
.blog-content code:is(.dark *) { --tw-bg-opacity:1; background-color:rgb(39 39 42 / var(--tw-bg-opacity, 1)); --tw-text-opacity:1; color:rgb(228 228 231 / var(--tw-text-opacity, 1)) }
.sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0, 0, 0, 0); white-space:nowrap; border-width:0 }
.pointer-events-none { pointer-events:none }
.static { position:static }
.fixed { position:fixed }
.absolute { position:absolute }
.relative { position:relative }
.sticky { position:sticky }
.left-3 { left:0.75rem }
.top-0 { top:0px }
.top-1\/2 { top:50% }
.z-40 { z-index:40 }
.-mx-1 { margin-left:-0.25rem; margin-right:-0.25rem }
.mx-auto { margin-left:auto; margin-right:auto }
.my-4 { margin-top:1rem; margin-bottom:1rem }
.mb-1\.5 { margin-bottom:0.375rem }
.mb-10 { margin-bottom:2.5rem }
.mb-12 { margin-bottom:3rem }
.mb-14 { margin-bottom:3.5rem }
.mb-16 { margin-bottom:4rem }
.mb-2 { margin-bottom:0.5rem }
.mb-3 { margin-bottom:0.75rem }
.mb-4 { margin-bottom:1rem }
.mb-5 { margin-bottom:1.25rem }
.mb-6 { margin-bottom:1.5rem }
.mb-8 { margin-bottom:2rem }
.ml-1\.5 { margin-left:0.375rem }
.mr-1 { margin-right:0.25rem }
.mt-0\.5 { margin-top:0.125rem }
.mt-1 { margin-top:0.25rem }
.mt-10 { margin-top:2.5rem }
.mt-16 { margin-top:4rem }
.mt-2 { margin-top:0.5rem }
.mt-20 { margin-top:5rem }
.mt-3 { margin-top:0.75rem }
.mt-4 { margin-top:1rem }
.mt-5 { margin-top:1.25rem }
.mt-6 { margin-top:1.5rem }
.mt-7 { margin-top:1.75rem }
.mt-8 { margin-top:2rem }
.line-clamp-2 { overflow:hidden; display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:2 }
.block { display:block }
.flex { display:flex }
.inline-flex { display:inline-flex }
.table { display:table }
.grid { display:grid }
.hidden { display:none }
.h-10 { height:2.5rem }
.h-12 { height:3rem }
.h-16 { height:4rem }
.h-3 { height:0.75rem }
.h-3\.5 { height:0.875rem }
.h-4 { height:1rem }
.h-5 { height:1.25rem }
.h-7 { height:1.75rem }
.h-9 { height:2.25rem }
.w-10 { width:2.5rem }
.w-3 { width:0.75rem }
.w-3\.5 { width:0.875rem }
.w-4 { width:1rem }
.w-44 { width:11rem }
.w-5 { width:1.25rem }
.w-7 { width:1.75rem }
.w-auto { width:auto }
.w-full { width:100% }
.min-w-0 { min-width:0px }
.max-w-2xl { max-width:42rem }
.max-w-3xl { max-width:48rem }
.max-w-6xl { max-width:72rem }
.max-w-lg { max-width:32rem }
.max-w-none { max-width:none }
.max-w-prose { max-width:65ch }
.flex-1 { flex:1 1 0% }
.shrink-0 { flex-shrink:0 }
.-translate-y-1\/2 { --tw-translate-y:-50%; transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y)) }
.list-inside { list-style-position:inside }
.list-disc { list-style-type:disc }
.grid-cols-1 { grid-template-columns:repeat(1, minmax(0, 1fr)) }
.flex-col { flex-direction:column }
.flex-wrap { flex-wrap:wrap }
.items-start { align-items:flex-start }
.items-end { align-items:flex-end }
.items-center { align-items:center }
.items-baseline { align-items:baseline }
.justify-center { justify-content:center }
.justify-between { justify-content:space-between }
.gap-1 { gap:0.25rem }
.gap-1\.5 { gap:0.375rem }
.gap-2 { gap:0.5rem }
.gap-3 { gap:0.75rem }
.gap-4 { gap:1rem }
.gap-6 { gap:1.5rem }
.gap-8 { gap:2rem }
.space-y-0\.5 > :not([hidden]) ~ :not([hidden]) { --tw-space-y-reverse:0; margin-top:calc(0.125rem * calc(1 - var(--tw-space-y-reverse))); margin-bottom:calc(0.125rem * var(--tw-space-y-reverse)) }
.space-y-1 > :not([hidden]) ~ :not([hidden]) { --tw-space-y-reverse:0; margin-top:calc(0.25rem * calc(1 - var(--tw-space-y-reverse))); margin-bottom:calc(0.25rem * var(--tw-space-y-reverse)) }
.space-y-2 > :not([hidden]) ~ :not([hidden]) { --tw-space-y-reverse:0; margin-top:calc(0.5rem * calc(1 - var(--tw-space-y-reverse))); margin-bottom:calc(0.5rem * var(--tw-space-y-reverse)) }
.space-y-4 > :not([hidden]) ~ :not([hidden]) { --tw-space-y-reverse:0; margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse))); margin-bottom:calc(1rem * var(--tw-space-y-reverse)) }
.space-y-5 > :not([hidden]) ~ :not([hidden]) { --tw-space-y-reverse:0; margin-top:calc(1.25rem * calc(1 - var(--tw-space-y-reverse))); margin-bottom:calc(1.25rem * var(--tw-space-y-reverse)) }
.space-y-7 > :not([hidden]) ~ :not([hidden]) { --tw-space-y-reverse:0; margin-top:calc(1.75rem * calc(1 - var(--tw-space-y-reverse))); margin-bottom:calc(1.75rem * var(--tw-space-y-reverse)) }
.scroll-smooth { scroll-behavior:smooth }
.truncate { overflow:hidden; text-overflow:ellipsis; white-space:nowrap }
.text-balance { text-wrap:balance }
.text-pretty { text-wrap:pretty }
.rounded { border-radius:0.25rem }
.rounded-full { border-radius:9999px }
.rounded-lg { border-radius:0.5rem }
.rounded-md { border-radius:0.375rem }
.border { border-width:1px }
.border-b { border-bottom-width:1px }
.border-l-4 { border-left-width:4px }
.border-t { border-top-width:1px }
.border-brand-300 { --tw-border-opacity:1; border-color:rgb(147 197 253 / var(--tw-border-opacity, 1)) }
.border-zinc-200 { --tw-border-opacity:1; border-color:rgb(228 228 231 / var(--tw-border-opacity, 1)) }
.border-zinc-200\/60 { border-color:rgb(228 228 231 / 0.6) }
.border-zinc-200\/80 { border-color:rgb(228 228 231 / 0.8) }
.border-zinc-800 { --tw-border-opacity:1; border-color:rgb(39 39 42 / var(--tw-border-opacity, 1)) }
.bg-amber-100 { --tw-bg-opacity:1; background-color:rgb(254 243 199 / var(--tw-bg-opacity, 1)) }
.bg-brand-100 { --tw-bg-opacity:1; background-color:rgb(219 234 254 / var(--tw-bg-opacity, 1)) }
.bg-brand-50 { --tw-bg-opacity:1; background-color:rgb(239 246 255 / var(--tw-bg-opacity, 1)) }
.bg-brand-600 { --tw-bg-opacity:1; background-color:rgb(29 78 216 / var(--tw-bg-opacity, 1)) }
.bg-white { --tw-bg-opacity:1; background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1)) }
.bg-white\/80 { background-color:rgb(255 255 255 / 0.8) }
.bg-white\/95 { background-color:rgb(255 255 255 / 0.95) }
.bg-zinc-50 { --tw-bg-opacity:1; background-color:rgb(250 250 250 / var(--tw-bg-opacity, 1)) }
.bg-zinc-900 { --tw-bg-opacity:1; background-color:rgb(24 24 27 / var(--tw-bg-opacity, 1)) }
.bg-zinc-950 { --tw-bg-opacity:1; background-color:rgb(9 9 11 / var(--tw-bg-opacity, 1)) }
.p-2 { padding:0.5rem }
.p-4 { padding:1rem }
.px-1 { padding-left:0.25rem; padding-right:0.25rem }
.px-2 { padding-left:0.5rem; padding-right:0.5rem }
.px-2\.5 { padding-left:0.625rem; padding-right:0.625rem }
.px-3 { padding-left:0.75rem; padding-right:0.75rem }
.px-4 { padding-left:1rem; padding-right:1rem }
.px-5 { padding-left:1.25rem; padding-right:1.25rem }
.py-1 { padding-top:0.25rem; padding-bottom:0.25rem }
.py-1\.5 { padding-top:0.375rem; padding-bottom:0.375rem }
.py-12 { padding-top:3rem; padding-bottom:3rem }
.py-16 { padding-top:4rem; padding-bottom:4rem }
.py-2\.5 { padding-top:0.625rem; padding-bottom:0.625rem }
.py-24 { padding-top:6rem; padding-bottom:6rem }
.py-3 { padding-top:0.75rem; padding-bottom:0.75rem }
.pb-20 { padding-bottom:5rem }
.pb-3 { padding-bottom:0.75rem }
.pl-4 { padding-left:1rem }
.pl-9 { padding-left:2.25rem }
.pr-3 { padding-right:0.75rem }
.pt-6 { padding-top:1.5rem }
.text-center { text-align:center }
.font-mono { font-family:"JetBrains Mono", ui-monospace, monospace }
.font-sans { font-family:Inter, system-ui, sans-serif }
.text-2xl { font-size:1.5rem; line-height:2rem }
.text-3xl { font-size:1.875rem; line-height:2.25rem }
.text-4xl { font-size:2.25rem; line-height:2.5rem }
.text-8xl { font-size:6rem; line-height:1 }
.text-\[10px\] { font-size:10px }
.text-\[11px\] { font-size:11px }
.text-\[15px\] { font-size:15px }
.text-base { font-size:1rem; line-height:1.5rem }
.text-lg { font-size:1.125rem; line-height:1.75rem }
.text-sm { font-size:0.875rem; line-height:1.25rem }
.text-xs { font-size:0.75rem; line-height:1rem }
.font-bold { font-weight:700 }
.font-medium { font-weight:500 }
.font-normal { font-weight:400 }
.font-semibold { font-weight:600 }
.uppercase { text-transform:uppercase }
.tabular-nums { --tw-numeric-spacing:tabular-nums; font-variant-numeric:var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction) }
.leading-\[1\.05\] { line-height:1.05 }
.leading-\[1\.1\] { line-height:1.1 }
.leading-relaxed { line-height:1.625 }
.leading-tight { line-height:1.25 }
.tracking-\[0\.2em\] { letter-spacing:0.2em }
.tracking-normal { letter-spacing:0em }
.tracking-tight { letter-spacing:-0.025em }
.tracking-wider { letter-spacing:0.05em }
.tracking-widest { letter-spacing:0.1em }
.text-accent-600 { --tw-text-opacity:1; color:rgb(217 119 6 / var(--tw-text-opacity, 1)) }
.text-amber-300 { --tw-text-opacity:1; color:rgb(252 211 77 / var(--tw-text-opacity, 1)) }
.text-amber-700 { --tw-text-opacity:1; color:rgb(180 83 9 / var(--tw-text-opacity, 1)) }
.text-brand-600 { --tw-text-opacity:1; color:rgb(29 78 216 / var(--tw-text-opacity, 1)) }
.text-brand-700 { --tw-text-opacity:1; color:rgb(30 64 175 / var(--tw-text-opacity, 1)) }
.text-white { --tw-text-opacity:1; color:rgb(255 255 255 / var(--tw-text-opacity, 1)) }
.text-zinc-200 { --tw-text-opacity:1; color:rgb(228 228 231 / var(--tw-text-opacity, 1)) }
.text-zinc-300 { --tw-text-opacity:1; color:rgb(212 212 216 / var(--tw-text-opacity, 1)) }
.text-zinc-400 { --tw-text-opacity:1; color:rgb(161 161 170 / var(--tw-text-opacity, 1)) }
.text-zinc-500 { --tw-text-opacity:1; color:rgb(113 113 122 / var(--tw-text-opacity, 1)) }
.text-zinc-600 { --tw-text-opacity:1; color:rgb(82 82 91 / var(--tw-text-opacity, 1)) }
.text-zinc-700 { --tw-text-opacity:1; color:rgb(63 63 70 / var(--tw-text-opacity, 1)) }
.text-zinc-800 { --tw-text-opacity:1; color:rgb(39 39 42 / var(--tw-text-opacity, 1)) }
.text-zinc-900 { --tw-text-opacity:1; color:rgb(24 24 27 / var(--tw-text-opacity, 1)) }
.antialiased { -webkit-font-smoothing:antialiased; -moz-osx-font-smoothing:grayscale }
.ring-1 { --tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color); --tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color); box-shadow:var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000) }
.ring-brand-200\/60 { --tw-ring-color:rgb(191 219 254 / 0.6) }
.ring-zinc-200\/70 { --tw-ring-color:rgb(228 228 231 / 0.7) }
.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) }
.backdrop-blur-md { --tw-backdrop-blur:blur(12px); backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia) }
.transition-all { transition-property:all; transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1); transition-duration:150ms }
.transition-colors { transition-property:color, background-color, border-color, text-decoration-color, fill, stroke; transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1); transition-duration:150ms }
.transition-transform { transition-property:transform; transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1); transition-duration:150ms }
.duration-200 { transition-duration:200ms }

/* ====== PRINT STYLES ====== */
@media print {
  @page { margin: 2cm; }

  body { --tw-bg-opacity:1; background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1)); font-size:0.875rem; line-height:1.25rem; line-height:1.625; --tw-text-opacity:1; color:rgb(0 0 0 / var(--tw-text-opacity, 1));
    font-size: 11pt }

  header, footer, .ad-slot, [data-calc-copy], [data-calc-swap],
  a[href="#main-content"], .breadcrumb + nav, #theme-toggle,
  #mobile-menu-btn, #mobile-menu, .hub-cta, .example-try-btn,
  .see-also, [data-fill-example], [data-result-narrative],
  .calc-wrapper::before, .result-narrative::before {
    display: none !important;
  }

  .calc-wrapper { margin-bottom:1.5rem; border-radius:0.375rem; --tw-bg-opacity:1; background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1)); padding:0.75rem; --tw-shadow:0 0 #0000; --tw-shadow-colored:0 0 #0000; box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow); --tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color); --tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color); box-shadow:var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000); --tw-ring-opacity:1; --tw-ring-color:rgb(212 212 216 / var(--tw-ring-opacity, 1));
    -moz-column-break-inside: avoid;
         break-inside: avoid }

  .calc-row output { border-width:1px; --tw-border-opacity:1; border-color:rgb(161 161 170 / var(--tw-border-opacity, 1)); --tw-bg-opacity:1; background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1)); font-size:1.25rem; line-height:1.75rem; font-weight:700; --tw-text-opacity:1; color:rgb(0 0 0 / var(--tw-text-opacity, 1)) }

  .calc-row input, .calc-row select { --tw-border-opacity:1; border-color:rgb(161 161 170 / var(--tw-border-opacity, 1)); --tw-bg-opacity:1; background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1)); --tw-text-opacity:1; color:rgb(0 0 0 / var(--tw-text-opacity, 1)) }

  .section-card, .section-tinted, .section-alt, .section-accent { margin-bottom:1.25rem; border-radius:0px; border-width:0px; --tw-bg-opacity:1; background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1)); padding:0px; --tw-shadow:0 0 #0000; --tw-shadow-colored:0 0 #0000; box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow); --tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color); --tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color); box-shadow:var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
    -moz-column-break-inside: avoid;
         break-inside: avoid }

  .section-accent { border-left-width:2px; --tw-border-opacity:1; border-color:rgb(161 161 170 / var(--tw-border-opacity, 1)); padding-left:0.75rem }

  h1 { margin-bottom:0.5rem; font-size:1.25rem; line-height:1.75rem; font-weight:700 }
  h2 { margin-top:1rem; margin-bottom:0.5rem; border-bottom-width:1px; --tw-border-opacity:1; border-color:rgb(212 212 216 / var(--tw-border-opacity, 1)); padding-bottom:0.25rem; font-size:1rem; line-height:1.5rem; font-weight:700 }
  h3 { margin-top:0.75rem; margin-bottom:0.25rem; font-size:0.875rem; line-height:1.25rem; font-weight:600 }

  .source { font-size:0.75rem; line-height:1rem; font-style:italic; --tw-text-opacity:1; color:rgb(113 113 122 / var(--tw-text-opacity, 1)) }

  .formula-display { border-left-width:2px; --tw-border-opacity:1; border-color:rgb(161 161 170 / var(--tw-border-opacity, 1)); --tw-bg-opacity:1; background-color:rgb(250 250 250 / var(--tw-bg-opacity, 1)); padding:0.5rem; font-family:"JetBrains Mono", ui-monospace, monospace; font-size:0.75rem; line-height:1rem }

  table { width:100%; border-collapse:collapse; font-size:0.75rem; line-height:1rem }
  th, td { border-width:1px; --tw-border-opacity:1; border-color:rgb(212 212 216 / var(--tw-border-opacity, 1)); padding-left:0.5rem; padding-right:0.5rem; padding-top:0.25rem; padding-bottom:0.25rem; text-align:left }
  th { --tw-bg-opacity:1; background-color:rgb(244 244 245 / var(--tw-bg-opacity, 1)); font-weight:600 }

  .example-grid { grid-template-columns:repeat(1, minmax(0, 1fr)); gap:0.5rem }
  .example-card { border-radius:0.25rem; padding:0.5rem; --tw-shadow:0 0 #0000; --tw-shadow-colored:0 0 #0000; box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow); --tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color); --tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color); box-shadow:var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000); --tw-ring-opacity:1; --tw-ring-color:rgb(212 212 216 / var(--tw-ring-opacity, 1));
    -moz-column-break-inside: avoid;
         break-inside: avoid }

  .conditions-grid { grid-template-columns:repeat(2, minmax(0, 1fr)); gap:0.5rem }
  .conditions-grid label { font-size:0.75rem; line-height:1rem }
  .conditions-grid input { height:2rem; font-size:0.75rem; line-height:1rem }

  a { --tw-text-opacity:1; color:rgb(0 0 0 / var(--tw-text-opacity, 1)); text-decoration-line:underline }

  .reviewed-by, .editorial-note { margin-top:1.5rem; border-top-width:1px; --tw-border-opacity:1; border-color:rgb(212 212 216 / var(--tw-border-opacity, 1)); padding-top:0.5rem; font-size:0.75rem; line-height:1rem; --tw-text-opacity:1; color:rgb(82 82 91 / var(--tw-text-opacity, 1)) }

  .katex { font-size:0.875rem; line-height:1.25rem }

  /* Print URL footer */
  .tool-page::after {
    content: "industrialunitconverter.com — " attr(data-tool-slug);
    display: block;
    margin-top:2rem;
    border-top-width:1px;
    --tw-border-opacity:1;
    border-color:rgb(212 212 216 / var(--tw-border-opacity, 1));
    padding-top:1rem;
    text-align:center;
    font-size:9px;
    --tw-text-opacity:1;
    color:rgb(161 161 170 / var(--tw-text-opacity, 1));
  }
}
.dark\:prose-invert:is(.dark *) { --tw-prose-body:#d4d4d8; --tw-prose-headings:#f4f4f5; --tw-prose-lead:var(--tw-prose-invert-lead); --tw-prose-links:#3b82f6; --tw-prose-bold:#f4f4f5; --tw-prose-counters:var(--tw-prose-invert-counters); --tw-prose-bullets:var(--tw-prose-invert-bullets); --tw-prose-hr:var(--tw-prose-invert-hr); --tw-prose-quotes:var(--tw-prose-invert-quotes); --tw-prose-quote-borders:var(--tw-prose-invert-quote-borders); --tw-prose-captions:var(--tw-prose-invert-captions); --tw-prose-kbd:var(--tw-prose-invert-kbd); --tw-prose-kbd-shadows:var(--tw-prose-invert-kbd-shadows); --tw-prose-code:var(--tw-prose-invert-code); --tw-prose-pre-code:var(--tw-prose-invert-pre-code); --tw-prose-pre-bg:var(--tw-prose-invert-pre-bg); --tw-prose-th-borders:var(--tw-prose-invert-th-borders); --tw-prose-td-borders:var(--tw-prose-invert-td-borders); }
.dark\:prose-invert:is(.dark *) :where(a):not(:where([class~="not-prose"],[class~="not-prose"] *)) { color:#3b82f6; }
.dark\:prose-invert:is(.dark *) :where(a):not(:where([class~="not-prose"],[class~="not-prose"] *)):hover { color:#93c5fd }
.placeholder\:text-zinc-400::-moz-placeholder { --tw-text-opacity:1; color:rgb(161 161 170 / var(--tw-text-opacity, 1)) }
.placeholder\:text-zinc-400::placeholder { --tw-text-opacity:1; color:rgb(161 161 170 / var(--tw-text-opacity, 1)) }
.last\:mb-0:last-child { margin-bottom:0px }
.hover\:-translate-y-0\.5:hover { --tw-translate-y:-0.125rem; transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y)) }
.hover\:border-brand-500:hover { --tw-border-opacity:1; border-color:rgb(37 99 235 / var(--tw-border-opacity, 1)) }
.hover\:bg-brand-700:hover { --tw-bg-opacity:1; background-color:rgb(30 64 175 / var(--tw-bg-opacity, 1)) }
.hover\:bg-zinc-100:hover { --tw-bg-opacity:1; background-color:rgb(244 244 245 / var(--tw-bg-opacity, 1)) }
.hover\:bg-zinc-800:hover { --tw-bg-opacity:1; background-color:rgb(39 39 42 / var(--tw-bg-opacity, 1)) }
.hover\:text-brand-600:hover { --tw-text-opacity:1; color:rgb(29 78 216 / var(--tw-text-opacity, 1)) }
.hover\:text-brand-700:hover { --tw-text-opacity:1; color:rgb(30 64 175 / var(--tw-text-opacity, 1)) }
.hover\:text-zinc-700:hover { --tw-text-opacity:1; color:rgb(63 63 70 / var(--tw-text-opacity, 1)) }
.hover\:text-zinc-800:hover { --tw-text-opacity:1; color:rgb(39 39 42 / var(--tw-text-opacity, 1)) }
.hover\:text-zinc-900:hover { --tw-text-opacity:1; color:rgb(24 24 27 / var(--tw-text-opacity, 1)) }
.hover\:shadow-\[0_4px_20px_-4px_rgba\(0\2c 0\2c 0\2c 0\.08\)\]:hover { --tw-shadow:0 4px 20px -4px rgba(0,0,0,0.08); --tw-shadow-colored:0 4px 20px -4px var(--tw-shadow-color); box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow) }
.hover\:ring-zinc-300:hover { --tw-ring-opacity:1; --tw-ring-color:rgb(212 212 216 / var(--tw-ring-opacity, 1)) }
.focus\:not-sr-only:focus { position:static; width:auto; height:auto; padding:0; margin:0; overflow:visible; clip:auto; white-space:normal }
.focus\:fixed:focus { position:fixed }
.focus\:left-3:focus { left:0.75rem }
.focus\:top-3:focus { top:0.75rem }
.focus\:z-50:focus { z-index:50 }
.focus\:rounded-md:focus { border-radius:0.375rem }
.focus\:border-brand-500:focus { --tw-border-opacity:1; border-color:rgb(37 99 235 / var(--tw-border-opacity, 1)) }
.focus\:bg-white:focus { --tw-bg-opacity:1; background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1)) }
.focus\:bg-zinc-900:focus { --tw-bg-opacity:1; background-color:rgb(24 24 27 / var(--tw-bg-opacity, 1)) }
.focus\:px-4:focus { padding-left:1rem; padding-right:1rem }
.focus\:py-2:focus { padding-top:0.5rem; padding-bottom:0.5rem }
.focus\:text-sm:focus { font-size:0.875rem; line-height:1.25rem }
.focus\:font-medium:focus { font-weight:500 }
.focus\:text-white:focus { --tw-text-opacity:1; color:rgb(255 255 255 / var(--tw-text-opacity, 1)) }
.focus\:shadow-lg:focus { --tw-shadow:0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1); --tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color); box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow) }
.focus\:outline-none:focus { outline:2px solid transparent; outline-offset:2px }
.focus\:ring-2:focus { --tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color); --tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color); box-shadow:var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000) }
.focus\:ring-brand-500\/30:focus { --tw-ring-color:rgb(37 99 235 / 0.3) }
.focus\:ring-brand-500\/50:focus { --tw-ring-color:rgb(37 99 235 / 0.5) }
.focus-visible\:outline-none:focus-visible { outline:2px solid transparent; outline-offset:2px }
.focus-visible\:ring-2:focus-visible { --tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color); --tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color); box-shadow:var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000) }
.focus-visible\:ring-brand-500:focus-visible { --tw-ring-opacity:1; --tw-ring-color:rgb(37 99 235 / var(--tw-ring-opacity, 1)) }
.focus-visible\:ring-brand-500\/40:focus-visible { --tw-ring-color:rgb(37 99 235 / 0.4) }
.focus-visible\:ring-offset-2:focus-visible { --tw-ring-offset-width:2px }
.active\:translate-y-0:active { --tw-translate-y:0px; transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y)) }
.active\:scale-\[0\.98\]:active { --tw-scale-x:0.98; --tw-scale-y:0.98; transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y)) }
.group:hover .group-hover\:translate-x-0\.5 { --tw-translate-x:0.125rem; transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y)) }
.group:hover .group-hover\:text-brand-700 { --tw-text-opacity:1; color:rgb(30 64 175 / var(--tw-text-opacity, 1)) }
.group:hover .group-hover\:text-zinc-700 { --tw-text-opacity:1; color:rgb(63 63 70 / var(--tw-text-opacity, 1)) }
.prose-p\:my-3 :is(:where(p):not(:where([class~="not-prose"],[class~="not-prose"] *))) { margin-top:0.75rem; margin-bottom:0.75rem }
.prose-p\:leading-relaxed :is(:where(p):not(:where([class~="not-prose"],[class~="not-prose"] *))) { line-height:1.625 }
.prose-p\:text-zinc-600 :is(:where(p):not(:where([class~="not-prose"],[class~="not-prose"] *))) { --tw-text-opacity:1; color:rgb(82 82 91 / var(--tw-text-opacity, 1)) }
.first\:prose-p\:mt-0 :is(:where(p):not(:where([class~="not-prose"],[class~="not-prose"] *))):first-child { margin-top:0px }
.last\:prose-p\:mb-0 :is(:where(p):not(:where([class~="not-prose"],[class~="not-prose"] *))):last-child { margin-bottom:0px }
@media (prefers-reduced-motion: no-preference) {
 .motion-safe\:transition-all { transition-property:all; transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1); transition-duration:150ms } }
.dark\:block:is(.dark *) { display:block }
.dark\:hidden:is(.dark *) { display:none }
.dark\:border-brand-700:is(.dark *) { --tw-border-opacity:1; border-color:rgb(30 64 175 / var(--tw-border-opacity, 1)) }
.dark\:border-zinc-700:is(.dark *) { --tw-border-opacity:1; border-color:rgb(63 63 70 / var(--tw-border-opacity, 1)) }
.dark\:border-zinc-800:is(.dark *) { --tw-border-opacity:1; border-color:rgb(39 39 42 / var(--tw-border-opacity, 1)) }
.dark\:border-zinc-800\/60:is(.dark *) { border-color:rgb(39 39 42 / 0.6) }
.dark\:bg-amber-900\/40:is(.dark *) { background-color:rgb(120 53 15 / 0.4) }
.dark\:bg-brand-500:is(.dark *) { --tw-bg-opacity:1; background-color:rgb(37 99 235 / var(--tw-bg-opacity, 1)) }
.dark\:bg-brand-900:is(.dark *) { --tw-bg-opacity:1; background-color:rgb(23 37 84 / var(--tw-bg-opacity, 1)) }
.dark\:bg-brand-950:is(.dark *) { --tw-bg-opacity:1; background-color:rgb(15 23 42 / var(--tw-bg-opacity, 1)) }
.dark\:bg-zinc-100:is(.dark *) { --tw-bg-opacity:1; background-color:rgb(244 244 245 / var(--tw-bg-opacity, 1)) }
.dark\:bg-zinc-800:is(.dark *) { --tw-bg-opacity:1; background-color:rgb(39 39 42 / var(--tw-bg-opacity, 1)) }
.dark\:bg-zinc-900:is(.dark *) { --tw-bg-opacity:1; background-color:rgb(24 24 27 / var(--tw-bg-opacity, 1)) }
.dark\:bg-zinc-950:is(.dark *) { --tw-bg-opacity:1; background-color:rgb(9 9 11 / var(--tw-bg-opacity, 1)) }
.dark\:bg-zinc-950\/80:is(.dark *) { background-color:rgb(9 9 11 / 0.8) }
.dark\:bg-zinc-950\/95:is(.dark *) { background-color:rgb(9 9 11 / 0.95) }
.dark\:text-accent-400:is(.dark *) { --tw-text-opacity:1; color:rgb(251 191 36 / var(--tw-text-opacity, 1)) }
.dark\:text-amber-300:is(.dark *) { --tw-text-opacity:1; color:rgb(252 211 77 / var(--tw-text-opacity, 1)) }
.dark\:text-amber-400:is(.dark *) { --tw-text-opacity:1; color:rgb(251 191 36 / var(--tw-text-opacity, 1)) }
.dark\:text-brand-300:is(.dark *) { --tw-text-opacity:1; color:rgb(147 197 253 / var(--tw-text-opacity, 1)) }
.dark\:text-brand-400:is(.dark *) { --tw-text-opacity:1; color:rgb(59 130 246 / var(--tw-text-opacity, 1)) }
.dark\:text-zinc-100:is(.dark *) { --tw-text-opacity:1; color:rgb(244 244 245 / var(--tw-text-opacity, 1)) }
.dark\:text-zinc-200:is(.dark *) { --tw-text-opacity:1; color:rgb(228 228 231 / var(--tw-text-opacity, 1)) }
.dark\:text-zinc-300:is(.dark *) { --tw-text-opacity:1; color:rgb(212 212 216 / var(--tw-text-opacity, 1)) }
.dark\:text-zinc-400:is(.dark *) { --tw-text-opacity:1; color:rgb(161 161 170 / var(--tw-text-opacity, 1)) }
.dark\:text-zinc-50:is(.dark *) { --tw-text-opacity:1; color:rgb(250 250 250 / var(--tw-text-opacity, 1)) }
.dark\:text-zinc-500:is(.dark *) { --tw-text-opacity:1; color:rgb(113 113 122 / var(--tw-text-opacity, 1)) }
.dark\:text-zinc-600:is(.dark *) { --tw-text-opacity:1; color:rgb(82 82 91 / var(--tw-text-opacity, 1)) }
.dark\:text-zinc-700:is(.dark *) { --tw-text-opacity:1; color:rgb(63 63 70 / var(--tw-text-opacity, 1)) }
.dark\:text-zinc-800:is(.dark *) { --tw-text-opacity:1; color:rgb(39 39 42 / var(--tw-text-opacity, 1)) }
.dark\:text-zinc-900:is(.dark *) { --tw-text-opacity:1; color:rgb(24 24 27 / var(--tw-text-opacity, 1)) }
.dark\:ring-brand-800:is(.dark *) { --tw-ring-opacity:1; --tw-ring-color:rgb(30 58 138 / var(--tw-ring-opacity, 1)) }
.dark\:ring-white\/10:is(.dark *) { --tw-ring-color:rgb(255 255 255 / 0.1) }
.dark\:ring-zinc-700\/50:is(.dark *) { --tw-ring-color:rgb(63 63 70 / 0.5) }
.dark\:placeholder\:text-zinc-500:is(.dark *)::-moz-placeholder { --tw-text-opacity:1; color:rgb(113 113 122 / var(--tw-text-opacity, 1)) }
.dark\:placeholder\:text-zinc-500:is(.dark *)::placeholder { --tw-text-opacity:1; color:rgb(113 113 122 / var(--tw-text-opacity, 1)) }
.dark\:hover\:border-brand-500:hover:is(.dark *) { --tw-border-opacity:1; border-color:rgb(37 99 235 / var(--tw-border-opacity, 1)) }
.dark\:hover\:bg-brand-400:hover:is(.dark *) { --tw-bg-opacity:1; background-color:rgb(59 130 246 / var(--tw-bg-opacity, 1)) }
.dark\:hover\:bg-white:hover:is(.dark *) { --tw-bg-opacity:1; background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1)) }
.dark\:hover\:bg-zinc-800:hover:is(.dark *) { --tw-bg-opacity:1; background-color:rgb(39 39 42 / var(--tw-bg-opacity, 1)) }
.dark\:hover\:text-brand-300:hover:is(.dark *) { --tw-text-opacity:1; color:rgb(147 197 253 / var(--tw-text-opacity, 1)) }
.dark\:hover\:text-brand-400:hover:is(.dark *) { --tw-text-opacity:1; color:rgb(59 130 246 / var(--tw-text-opacity, 1)) }
.dark\:hover\:text-zinc-100:hover:is(.dark *) { --tw-text-opacity:1; color:rgb(244 244 245 / var(--tw-text-opacity, 1)) }
.dark\:hover\:text-zinc-200:hover:is(.dark *) { --tw-text-opacity:1; color:rgb(228 228 231 / var(--tw-text-opacity, 1)) }
.dark\:hover\:text-zinc-50:hover:is(.dark *) { --tw-text-opacity:1; color:rgb(250 250 250 / var(--tw-text-opacity, 1)) }
.dark\:hover\:shadow-none:hover:is(.dark *) { --tw-shadow:0 0 #0000; --tw-shadow-colored:0 0 #0000; box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow) }
.dark\:hover\:ring-white\/20:hover:is(.dark *) { --tw-ring-color:rgb(255 255 255 / 0.2) }
.dark\:hover\:ring-zinc-600:hover:is(.dark *) { --tw-ring-opacity:1; --tw-ring-color:rgb(82 82 91 / var(--tw-ring-opacity, 1)) }
.dark\:focus\:border-brand-400:focus:is(.dark *) { --tw-border-opacity:1; border-color:rgb(59 130 246 / var(--tw-border-opacity, 1)) }
.dark\:focus\:bg-white:focus:is(.dark *) { --tw-bg-opacity:1; background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1)) }
.dark\:focus\:bg-zinc-900:focus:is(.dark *) { --tw-bg-opacity:1; background-color:rgb(24 24 27 / var(--tw-bg-opacity, 1)) }
.dark\:focus\:text-zinc-900:focus:is(.dark *) { --tw-text-opacity:1; color:rgb(24 24 27 / var(--tw-text-opacity, 1)) }
.dark\:focus\:ring-brand-400\/30:focus:is(.dark *) { --tw-ring-color:rgb(59 130 246 / 0.3) }
.group:hover .dark\:group-hover\:text-brand-400:is(.dark *) { --tw-text-opacity:1; color:rgb(59 130 246 / var(--tw-text-opacity, 1)) }
.group:hover .dark\:group-hover\:text-zinc-300:is(.dark *) { --tw-text-opacity:1; color:rgb(212 212 216 / var(--tw-text-opacity, 1)) }
.dark\:prose-p\:text-zinc-400 :is(:where(p):not(:where([class~="not-prose"],[class~="not-prose"] *))):is(.dark *) { --tw-text-opacity:1; color:rgb(161 161 170 / var(--tw-text-opacity, 1)) }
@media (min-width: 640px) {
 .sm\:flex { display:flex }
 .sm\:hidden { display:none }
 .sm\:w-52 { width:13rem }
 .sm\:grid-cols-2 { grid-template-columns:repeat(2, minmax(0, 1fr)) }
 .sm\:grid-cols-3 { grid-template-columns:repeat(3, minmax(0, 1fr)) }
 .sm\:flex-row { flex-direction:row }
 .sm\:items-center { align-items:center }
 .sm\:justify-between { justify-content:space-between }
 .sm\:gap-6 { gap:1.5rem }
 .sm\:px-6 { padding-left:1.5rem; padding-right:1.5rem }
 .sm\:py-20 { padding-top:5rem; padding-bottom:5rem }
 .sm\:py-24 { padding-top:6rem; padding-bottom:6rem }
 .sm\:text-4xl { font-size:2.25rem; line-height:2.5rem }
 .sm\:text-5xl { font-size:3rem; line-height:1 } }
@media (min-width: 1024px) {
 .lg\:grid-cols-3 { grid-template-columns:repeat(3, minmax(0, 1fr)) }
 .lg\:text-6xl { font-size:3.75rem; line-height:1 } }
