@layer tokens,base,layout,components,app,overlays,content,utilities;@layer tokens{:root{--zero-blue: #1f3fd0;--zero-blue-soft: #9db0ff;--gold: #f2b632;--ink-900: #0f1b2d;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.5rem;--space-6: 2rem;--space-7: 3rem;--space-8: 4.5rem;--fs-2xs: .74rem;--fs-xs: .8rem;--fs-sm: .875rem;--fs-ui: .95rem;--fs-md: 1rem;--fs-lead: 1.1rem;--fs-lg: 1.25rem;--fs-xl: 1.563rem;--fs-2xl: clamp(1.75rem,1.2rem + 2vw,2.441rem);--fs-3xl: clamp(2.1rem,1.3rem + 3.2vw,3.052rem);--font-display: "Bricolage Grotesque","Segoe UI Variable Display","Trebuchet MS",system-ui,sans-serif;--font-body: "Instrument Sans","Segoe UI",system-ui,-apple-system,Roboto,sans-serif;--font-mono: ui-monospace,"SF Mono",SFMono-Regular,Menlo,Consolas,monospace;--scale: 1;--r-scale: 1;--r-sm: calc(6px * var(--r-scale));--r-md: calc(10px * var(--r-scale));--r-lg: calc(16px * var(--r-scale));--r-pill: 999px;--row-pad: .7rem;--ctl-h: 2.75rem;--t-fast: 120ms;--t-med: 220ms;--t-slow: 420ms;--ease: cubic-bezier(.2,.8,.2,1);--ease-spring: cubic-bezier(.34,1.45,.64,1);--wrap: 76rem;--header-h: 3.75rem;--z-header: 40;--z-dock: 45;--z-overlay: 80;--z-toast: 120;--toast-top: calc(var(--header-h) + .75rem + env(safe-area-inset-top));--toast-bottom: calc(1rem + env(safe-area-inset-bottom));color-scheme: light;--bg: #edf1f5;--surface: #fff;--surface-2: #f5f7fa;--surface-3: #e6ecf2;--ink: #0f1b2d;--ink-2: #44526a;--ink-3: #5b6980;--line: #d5dce6;--line-strong: #7b8798;--brand: var(--zero-blue);--brand-strong: var(--zero-blue);--on-brand: #fff;--primary: var(--brand);--primary-strong: var(--brand-strong);--on-primary: var(--on-brand);--accent: #f2b632;--on-accent: #1a1300;--danger: #b42318;--success: #17784a;--warn: #8a5a00;--info: #1d5fb8;--stage-bg: #dfe7ee;--paper: #fff;--paper-ink: #0f1b2d;--led: #f2b632;--shadow-1: 0 1px 2px rgb(15 27 45 / .08);--shadow-2: 0 6px 18px -6px rgb(15 27 45 / .18),0 2px 4px rgb(15 27 45 / .06);--shadow-3: 0 24px 48px -16px rgb(15 27 45 / .32),0 6px 12px rgb(15 27 45 / .08);--scrim: rgb(10 18 32 / .55);--focus: #1d4ed8;--focus-halo: #fff;--primary-soft: color-mix(in srgb,var(--primary) 12%,var(--surface));--primary-hover: color-mix(in srgb,var(--primary) 88%,#000);--accent-soft: color-mix(in srgb,var(--accent) 24%,var(--surface));--tc-success: #5fd49a;--tc-error: #ff8d82;--tc-warn: #f0c060;--tc-info: #8db8ff;--on-danger: #fff}:root[data-theme="dark"]{color-scheme: dark;--bg: #0a1220;--surface: #121c2e;--surface-2: #182438;--surface-3: #1f2e46;--ink: #eaf0f8;--ink-2: #a9b6c9;--ink-3: #8c9bb2;--line: #26364f;--line-strong: #7487a2;--brand: var(--zero-blue-soft);--brand-strong: var(--zero-blue-soft);--on-brand: #0a1220;--danger: #ff8d82;--success: #5fd49a;--warn: #f0c060;--info: #8db8ff;--stage-bg: #070d18;--paper: #f4f6f8;--paper-ink: #0f1b2d;--shadow-2: 0 8px 22px -8px rgb(0 0 0 / .6);--shadow-3: 0 28px 56px -16px rgb(0 0 0 / .7);--scrim: rgb(2 6 14 / .7);--focus: #8db8ff;--focus-halo: #0a1220;--tc-success: #17784a;--tc-error: #b42318;--tc-warn: #8a5a00;--tc-info: #1d5fb8;--on-danger: #2a0a07}@media (prefers-color-scheme: dark){:root[data-theme="auto"]{color-scheme: dark;--bg: #0a1220;--surface: #121c2e;--surface-2: #182438;--surface-3: #1f2e46;--ink: #eaf0f8;--ink-2: #a9b6c9;--ink-3: #8c9bb2;--line: #26364f;--line-strong: #7487a2;--brand: var(--zero-blue-soft);--brand-strong: var(--zero-blue-soft);--on-brand: #0a1220;--danger: #ff8d82;--success: #5fd49a;--warn: #f0c060;--info: #8db8ff;--stage-bg: #070d18;--paper: #f4f6f8;--paper-ink: #0f1b2d;--shadow-2: 0 8px 22px -8px rgb(0 0 0 / .6);--shadow-3: 0 28px 56px -16px rgb(0 0 0 / .7);--scrim: rgb(2 6 14 / .7);--focus: #8db8ff;--focus-halo: #0a1220;--tc-success: #17784a;--tc-error: #b42318;--tc-warn: #8a5a00;--tc-info: #1d5fb8;--on-danger: #2a0a07}}:root[data-theme="dark"]{--primary: var(--brand);--primary-strong: var(--brand-strong);--on-primary: var(--on-brand)}@media (prefers-color-scheme: dark){:root[data-theme="auto"]{--primary: var(--brand);--primary-strong: var(--brand-strong);--on-primary: var(--on-brand)}}:root[data-size="s"]{--scale: .92}:root[data-size="l"]{--scale: 1.12}:root[data-size="xl"]{--scale: 1.25}:root[data-motion="reduced"]{--t-fast: 1ms;--t-med: 1ms;--t-slow: 1ms}@media (prefers-reduced-motion: reduce){:root[data-motion="auto"]{--t-fast: 1ms;--t-med: 1ms;--t-slow: 1ms}}:root[data-radius="sharp"]{--r-scale: .25}:root[data-radius="round"]{--r-scale: 1.6}:root[data-density="compact"]{--row-pad: .4rem;--ctl-h: 2.4rem}@supports not (color: color-mix(in srgb,red 50%,blue)){:root{--primary-soft: #e3e8fb;--primary-hover: #1b38b8;--accent-soft: #fbeed0}:root[data-theme="dark"]{--primary-soft: #1c2a55;--accent-soft: #3a3320}}}@layer base{*,*::before,*::after{box-sizing: border-box}html{-webkit-text-size-adjust: 100%;text-size-adjust: 100%;scroll-padding-top: calc(var(--header-h) + 1rem);font-size: calc(100% * var(--scale));overflow-x: clip}body{margin: 0;min-height: 100dvh;background: var(--bg);color: var(--ink);font: 400 var(--fs-md)/1.6 var(--font-body);-webkit-font-smoothing: antialiased;text-rendering: optimizeLegibility;overflow-x: clip}h1,h2,h3,h4{font-family: var(--font-display);line-height: 1.15;letter-spacing: -.01em;margin: 0;text-wrap: balance;font-weight: 700}p{margin: 0;text-wrap: pretty}a{color: var(--primary-strong);text-underline-offset: .18em;text-decoration-thickness: .08em}a:hover{text-decoration-thickness: .14em}img,svg{max-width: 100%}ul,ol{margin: 0;padding: 0}button,input,select,textarea{font: inherit;color: inherit}button{cursor: pointer}[hidden]{display: none !important}::selection{background: color-mix(in srgb,var(--primary) 30%,transparent)}kbd{font: 600 var(--fs-2xs)/1 var(--font-body);padding: .22rem .4rem;border-radius: var(--r-sm);border: 1px solid var(--line-strong);border-bottom-width: 2px;background: var(--surface);color: var(--ink-2);white-space: nowrap}:focus{outline: none}:focus-visible{outline: 3px solid var(--focus);outline-offset: 2px;box-shadow: 0 0 0 5px var(--focus-halo);border-radius: var(--r-sm)}@media (forced-colors: active){:focus-visible{outline-color: Highlight;box-shadow: none}.btn,.tab,.chip{border: 1px solid ButtonText}}.i{width: 1.25em;height: 1.25em;flex: none;fill: none;stroke: currentColor;stroke-width: 1.75;stroke-linecap: round;stroke-linejoin: round;vertical-align: -.22em}.sr-only{position: absolute !important;width: 1px;height: 1px;padding: 0;margin: -1px;overflow: hidden;clip: rect(0 0 0 0);white-space: nowrap;border: 0}.skip-link{position: fixed;left: .75rem;top: -4rem;z-index: 200;background: var(--ink);color: var(--bg);padding: .7rem 1rem;border-radius: var(--r-md);font-weight: 600;text-decoration: none;transition: top var(--t-fast)}.skip-link:focus{top: .75rem}*{scrollbar-width: thin;scrollbar-color: color-mix(in srgb,var(--ink) 35%,transparent) transparent}}@layer layout{.wrap{width: min(100% - 2rem,var(--wrap));margin-inline: auto}.wrap--narrow{width: min(100% - 2rem,46rem);margin-inline: auto}.hub-bar{position: sticky;top: 0;z-index: var(--z-header);background: color-mix(in srgb,var(--bg) 86%,transparent);backdrop-filter: saturate(1.4) blur(14px);-webkit-backdrop-filter: saturate(1.4) blur(14px);border-bottom: 1px solid var(--line);padding-top: env(safe-area-inset-top)}.hub-bar__inner{height: var(--header-h);display: flex;align-items: center;gap: var(--space-3)}.brand{display: inline-flex;align-items: center;gap: .55rem;font: 750 var(--fs-lg)/1 var(--font-display);color: var(--ink);text-decoration: none;letter-spacing: -.025em;white-space: nowrap}.brand:hover{text-decoration: none}.brand__mark{flex: none;width: 2.15rem;height: 2.15rem}.brand__mark .bg{fill: var(--brand)}.brand__mark .ring{fill: none;stroke: var(--on-brand);stroke-width: 3.4}.brand__mark .dot{fill: var(--gold)}.hub-nav{display: flex;gap: .15rem;margin-left: var(--space-3)}.hub-nav a{display: inline-flex;align-items: center;min-height: 2.5rem;padding: 0 .8rem;border-radius: var(--r-md);color: var(--ink-2);text-decoration: none;font-weight: 600;font-size: var(--fs-sm)}.hub-nav a:hover{background: var(--surface-3);color: var(--ink)}.hub-nav a[aria-current="page"]{color: var(--ink);box-shadow: inset 0 -2px 0 var(--brand-strong);border-radius: var(--r-md) var(--r-md) 0 0}.hub-bar__actions{margin-left: auto;display: flex;align-items: center;gap: .3rem}.hub-bar__sep{width: 1px;height: 1.5rem;background: var(--line-strong);opacity: .5;margin-inline: .25rem}.crumbs{width: min(100% - 2rem,var(--wrap));margin: var(--space-3) auto 0;font-size: var(--fs-sm);color: var(--ink-2)}.crumbs ol{list-style: none;display: flex;flex-wrap: wrap;gap: .1rem .5rem}.crumbs li + li::before{content: "/";margin-right: .5rem;color: var(--ink-3)}.crumbs a{color: var(--ink-2)}.site-footer{margin-top: var(--space-8);background: var(--surface);border-top: 1px solid var(--line);padding-bottom: env(safe-area-inset-bottom)}.footer-grid{display: grid;grid-template-columns: 1.6fr repeat(3,1fr);gap: var(--space-6);padding-block: var(--space-7) var(--space-5)}.footer-brand p{margin-top: var(--space-3);color: var(--ink-2);font-size: var(--fs-sm);max-width: 30ch}.footer-h{font: 700 var(--fs-ui)/1 var(--font-display);margin-bottom: var(--space-3);color: var(--ink)}.site-footer ul{list-style: none;display: grid;gap: .1rem}.site-footer li a,.link-btn{display: inline-flex;align-items: center;padding: .3rem 0;min-height: 2rem;color: var(--ink-2);font-size: var(--fs-sm);text-decoration: none}.site-footer li a:hover,.link-btn:hover{color: var(--primary-strong);text-decoration: underline}.link-btn{background: none;border: 0;cursor: pointer;text-align: left}.footer-base{border-top: 1px solid var(--line);padding-block: var(--space-4);color: var(--ink-3);font-size: var(--fs-xs);display: flex;flex-wrap: wrap;gap: .25rem 1.5rem;justify-content: space-between}@media (max-width: 52rem){.hub-nav{position: fixed;inset: calc(var(--header-h) + env(safe-area-inset-top)) 0 auto 0;flex-direction: column;margin: 0;padding: .75rem 1rem 1rem;background: var(--surface);border-bottom: 1px solid var(--line);box-shadow: var(--shadow-3);transform: translateY(-.75rem);opacity: 0;visibility: hidden;transition: transform var(--t-med) var(--ease),opacity var(--t-med),visibility 0s var(--t-med)}.hub-nav.is-open{transform: none;opacity: 1;visibility: visible;transition-delay: 0s}.hub-nav a{padding: .85rem 1rem;font-size: var(--fs-md);min-height: 2.75rem}.footer-grid{grid-template-columns: 1fr 1fr}.footer-brand{grid-column: 1 / -1}}@media (max-width: 40rem){.hub-bar__inner{gap: .25rem}.brand{font-size: 1.05rem}.hide-sm{display: none !important}.footer-grid{grid-template-columns: 1fr 1fr;gap: var(--space-5)}}}@layer components{.link-btn--inline{display: inline;padding: 0;min-height: 0;color: var(--primary-strong);text-decoration: underline;font-size: inherit;font-weight: inherit}.link-btn--inline:hover{text-decoration-thickness: .14em}}@layer components{:root{--on-danger: #fff}:root[data-theme="dark"]{--on-danger: #2a0a07}@media (prefers-color-scheme: dark){:root[data-theme="auto"]{--on-danger: #2a0a07}}.btn{display: inline-flex;align-items: center;justify-content: center;gap: .5rem;min-height: var(--ctl-h);padding: 0 1.1rem;border-radius: var(--r-md);border: 1px solid var(--line-strong);background: var(--surface);color: var(--ink);font-weight: 600;font-size: var(--fs-ui);line-height: 1.1;text-decoration: none;white-space: nowrap;user-select: none;-webkit-tap-highlight-color: transparent;transition: transform var(--t-fast) var(--ease),background-color var(--t-fast),border-color var(--t-fast),box-shadow var(--t-fast),color var(--t-fast)}.btn:hover{background: var(--surface-3)}.btn:active{transform: translateY(1px) scale(.985)}.btn[disabled],.btn[aria-disabled="true"]{opacity: .45;cursor: not-allowed;transform: none}.btn--primary{background: var(--primary);color: var(--on-primary);border-color: transparent;box-shadow: inset 0 1px 0 rgb(255 255 255 / .22),var(--shadow-1)}.btn--primary:hover{background: var(--primary-hover)}.btn--soft{background: var(--primary-soft);color: var(--primary-strong);border-color: transparent}.btn--soft:hover{background: color-mix(in srgb,var(--primary) 20%,var(--surface))}.btn--ghost{background: transparent;border-color: transparent;color: var(--ink-2)}.btn--ghost:hover{background: var(--surface-3);color: var(--ink)}.btn--danger{color: var(--danger);border-color: color-mix(in srgb,var(--danger) 60%,var(--line-strong))}.btn--danger-solid{background: var(--danger);color: var(--on-danger);border-color: transparent}.btn--danger-solid:hover{background: color-mix(in srgb,var(--danger) 88%,#000)}.btn--icon{width: var(--ctl-h);padding: 0;border-color: transparent;background: transparent;color: var(--ink-2)}.btn--icon:hover{background: var(--surface-3);color: var(--ink)}.btn--icon.is-on{color: var(--primary-strong);background: var(--primary-soft)}.btn--sm{min-height: 2.35rem;padding: 0 .85rem;font-size: var(--fs-sm)}.btn--xl{min-height: 3.9rem;padding: 0 2rem;font-size: var(--fs-lg);border-radius: calc(var(--r-md) * 1.35);font-family: var(--font-display);font-weight: 700;letter-spacing: -.01em}.btn--block{width: 100%}.btn kbd{background: color-mix(in srgb,currentColor 14%,transparent);color: inherit;border-color: color-mix(in srgb,currentColor 35%,transparent)}.field{display: grid;gap: .4rem;min-width: 0}.field > .lbl,.lbl{font-weight: 600;font-size: var(--fs-sm);color: var(--ink)}.field-row{display: grid;grid-template-columns: repeat(auto-fit,minmax(10rem,1fr));gap: var(--space-3)}.input,.select,.textarea{width: 100%;min-height: var(--ctl-h);padding: .55rem .85rem;border-radius: var(--r-md);border: 1px solid var(--line-strong);background: var(--surface);color: var(--ink);transition: border-color var(--t-fast),box-shadow var(--t-fast)}.select{appearance: none;padding-right: 2.25rem;background-image: linear-gradient(45deg,transparent 50%,var(--ink-2) 50%),linear-gradient(135deg,var(--ink-2) 50%,transparent 50%);background-position: calc(100% - 1.1rem) 52%,calc(100% - .8rem) 52%;background-size: .3rem .3rem;background-repeat: no-repeat}.textarea{min-height: 10rem;resize: vertical;line-height: 1.5}.input::placeholder,.textarea::placeholder{color: var(--ink-3);opacity: 1}.input:hover,.select:hover,.textarea:hover{border-color: var(--ink-2)}.input[aria-invalid="true"],.textarea[aria-invalid="true"]{border-color: var(--danger)}.help{color: var(--ink-2);font-size: var(--fs-sm)}.form-error{display: flex;gap: .45rem;align-items: flex-start;color: var(--danger);font-size: var(--fs-sm);font-weight: 550}.form-error:empty{display: none}.switch{display: flex;align-items: center;gap: .85rem;min-height: 2.75rem;cursor: pointer}.switch input{position: absolute;opacity: 0;width: 1px;height: 1px}.switch__track{flex: none;width: 2.9rem;height: 1.65rem;border-radius: var(--r-pill);background: var(--surface-3);border: 1px solid var(--line-strong);position: relative;transition: background-color var(--t-med),border-color var(--t-med)}.switch__track::after{content: "";position: absolute;top: 50%;left: .2rem;width: 1.15rem;height: 1.15rem;margin-top: -.575rem;border-radius: 50%;background: var(--ink-2);transition: transform var(--t-med) var(--ease-spring),background-color var(--t-med)}.switch input:checked + .switch__track{background: var(--primary);border-color: var(--primary)}.switch input:checked + .switch__track::after{transform: translateX(1.2rem);background: var(--on-primary)}.switch input:focus-visible + .switch__track{outline: 3px solid var(--focus);outline-offset: 2px;box-shadow: 0 0 0 5px var(--focus-halo)}.switch__text{display: grid;line-height: 1.3;font-weight: 600;font-size: var(--fs-ui)}.switch__text small{font-weight: 400;color: var(--ink-2);font-size: var(--fs-sm)}.range{display: grid;gap: .35rem}.range__top{display: flex;justify-content: space-between;align-items: baseline;gap: 1rem}.range output{font-variant-numeric: tabular-nums;font-weight: 700;color: var(--primary-strong);font-size: var(--fs-sm)}input[type="range"]{-webkit-appearance: none;appearance: none;width: 100%;height: 1.75rem;background: transparent;margin: 0}input[type="range"]::-webkit-slider-runnable-track{height: .45rem;border-radius: var(--r-pill);background: linear-gradient(var(--primary),var(--primary)) 0 / var(--fill,50%) 100% no-repeat,var(--surface-3);border: 1px solid var(--line-strong)}input[type="range"]::-moz-range-track{height: .45rem;border-radius: var(--r-pill);background: var(--surface-3);border: 1px solid var(--line-strong)}input[type="range"]::-moz-range-progress{height: .45rem;border-radius: var(--r-pill);background: var(--primary)}input[type="range"]::-webkit-slider-thumb{-webkit-appearance: none;width: 1.5rem;height: 1.5rem;margin-top: calc(-.75rem + .22rem);border-radius: 50%;background: var(--surface);border: 3px solid var(--primary);box-shadow: var(--shadow-2);transition: transform var(--t-fast) var(--ease-spring)}input[type="range"]::-moz-range-thumb{width: 1.2rem;height: 1.2rem;border-radius: 50%;background: var(--surface);border: 3px solid var(--primary);box-shadow: var(--shadow-2)}input[type="range"]:active::-webkit-slider-thumb{transform: scale(1.15)}.seg{display: flex;flex-wrap: wrap;gap: .35rem;padding: .25rem;border-radius: calc(var(--r-md) + 4px);background: var(--surface-3)}.seg label{flex: 1 1 auto;position: relative}.seg input{position: absolute;opacity: 0;inset: 0;width: 100%;height: 100%;margin: 0;cursor: pointer}.seg span{display: grid;place-items: center;min-height: 2.35rem;padding: 0 .85rem;border-radius: var(--r-md);font-weight: 600;font-size: var(--fs-sm);color: var(--ink-2);text-align: center;transition: background-color var(--t-fast),color var(--t-fast),box-shadow var(--t-fast)}.seg input:checked + span{background: var(--surface);color: var(--ink);box-shadow: var(--shadow-2)}.seg input:focus-visible + span{outline: 3px solid var(--focus);outline-offset: 2px}.swatch__dot{width: 2.4rem;height: 2.4rem;border-radius: 50%;background: linear-gradient(135deg,var(--c1) 0 50%,var(--c2) 50% 100%);box-shadow: inset 0 0 0 2px rgb(255 255 255 / .55),0 0 0 1px rgb(0 0 0 / .18)}.tabs{display: flex;gap: .15rem;border-bottom: 1px solid var(--line);overflow-x: auto;overflow-y: hidden;scrollbar-width: none;flex: none}.tab{position: relative;display: inline-flex;align-items: center;gap: .5rem;min-height: 2.9rem;padding: 0 .95rem;background: none;border: 0;color: var(--ink-2);font-weight: 650;font-size: var(--fs-ui);white-space: nowrap;border-radius: var(--r-md) var(--r-md) 0 0;transition: color var(--t-fast),background-color var(--t-fast)}.tab:hover{color: var(--ink);background: var(--surface-3)}.tab[aria-selected="true"]{color: var(--ink)}.tab::after{content: "";position: absolute;left: .6rem;right: .6rem;bottom: 0;height: 3px;border-radius: 3px 3px 0 0;background: var(--primary);transform: scaleX(0);transition: transform var(--t-med) var(--ease)}.tab[aria-selected="true"]::after{transform: scaleX(1)}.count{display: inline-grid;place-items: center;min-width: 1.5rem;height: 1.4rem;padding: 0 .4rem;border-radius: var(--r-pill);background: var(--surface-3);color: var(--ink-2);font: 700 var(--fs-2xs)/1 var(--font-body);font-variant-numeric: tabular-nums}.tab[aria-selected="true"] .count{background: var(--primary);color: var(--on-primary)}.count.bump{animation: bump var(--t-slow) var(--ease-spring)}.panel{background: var(--surface);border: 1px solid var(--line);border-radius: var(--r-lg);box-shadow: var(--shadow-1)}.badge{display: inline-flex;align-items: center;gap: .3rem;padding: .18rem .55rem;border-radius: var(--r-pill);background: var(--surface-3);color: var(--ink-2);font: 650 var(--fs-2xs)/1.2 var(--font-body)}.badge--accent{background: var(--accent-soft);color: var(--ink)}.badge--primary{background: var(--primary-soft);color: var(--primary-strong)}.progress{height: .4rem;border-radius: var(--r-pill);background: var(--surface-3);overflow: hidden}.progress > i{display: block;height: 100%;width: var(--p,0%);background: var(--primary);border-radius: inherit;transition: width var(--t-med) var(--ease)}.progress.is-busy > i{width: 40%;animation: indeterminate 1.1s var(--ease) infinite}.entry__n{justify-self: center;display: grid;place-items: center;width: 1.9rem;height: 1.9rem;border-radius: 50%;background: var(--surface-3);color: var(--ink-2);font: 700 var(--fs-2xs)/1 var(--font-body);font-variant-numeric: tabular-nums}.entry__name{font-weight: 650;overflow-wrap: anywhere}.entry__meta{color: var(--ink-2);font-size: var(--fs-sm);overflow-wrap: anywhere}.entry__meta b{font-weight: 600;color: var(--ink-3)}.entry__tags{display: flex;flex-wrap: wrap;gap: .3rem;margin-top: .25rem}.entry__actions{display: flex;gap: .1rem}.entry__actions .btn--icon{width: 2.4rem;min-height: 2.4rem}.empty{display: grid;justify-items: center;gap: .6rem;text-align: center;padding: var(--space-6) var(--space-4);color: var(--ink-2)}.empty__icon{display: grid;place-items: center;width: 3.4rem;height: 3.4rem;border-radius: 50%;background: var(--primary-soft);color: var(--primary-strong)}.empty__icon .i{width: 1.6rem;height: 1.6rem}.empty h3{font-size: var(--fs-lead);color: var(--ink)}.empty p{max-width: 34ch;font-size: var(--fs-sm)}.empty .btn{margin-top: .4rem}}@layer overlays{.overlay{position: fixed;inset: 0;z-index: var(--z-overlay);display: grid;place-items: center;padding: max(1rem,env(safe-area-inset-top)) 1rem max(1rem,env(safe-area-inset-bottom))}.overlay[hidden]{display: none}.overlay__scrim{position: absolute;inset: 0;background: var(--scrim);backdrop-filter: blur(5px);-webkit-backdrop-filter: blur(5px);animation: fade-in var(--t-med) ease both}.overlay__panel{position: relative;display: flex;flex-direction: column;width: min(100%,34rem);max-height: min(92dvh,46rem);background: var(--surface);color: var(--ink);border: 1px solid var(--line);border-radius: var(--r-lg);box-shadow: var(--shadow-3);overflow: hidden;animation: modal-in var(--t-med) var(--ease-spring) both}.overlay[data-size="lg"] .overlay__panel{width: min(100%,52rem)}.overlay[data-size="sm"] .overlay__panel{width: min(100%,26rem)}.overlay__head,.overlay__foot,.overlay__panel > .tabs{flex: none}.overlay__head{display: flex;align-items: center;justify-content: space-between;gap: var(--space-3);padding: 1rem 1rem 1rem 1.4rem;border-bottom: 1px solid var(--line)}.overlay__head h2{font-size: var(--fs-lg);display: flex;align-items: center;gap: .6rem}.overlay__head h2 .i{color: var(--primary-strong)}.overlay__body{padding: 1.3rem 1.4rem;overflow: auto;display: flex;flex-direction: column;gap: var(--space-4);overscroll-behavior: contain;min-height: 0;flex: 1 1 auto}.overlay__body > *{flex: none}.overlay__foot{display: flex;justify-content: flex-end;flex-wrap: wrap;gap: var(--space-2);padding: .9rem 1.4rem calc(.9rem);border-top: 1px solid var(--line);background: var(--surface-2)}.overlay[data-state="closing"] .overlay__scrim{animation: fade-out var(--t-med) ease both}.overlay[data-state="closing"] .overlay__panel{animation: modal-out var(--t-med) ease both}.overlay[data-variant="drawer"]{place-items: stretch end;padding: 0}.overlay[data-variant="drawer"] .overlay__panel{width: min(100%,27rem);max-height: none;height: 100%;border-radius: var(--r-lg) 0 0 var(--r-lg);border-right: 0;animation-name: drawer-in;animation-timing-function: var(--ease)}.overlay[data-variant="drawer"][data-state="closing"] .overlay__panel{animation-name: drawer-out}.overlay[data-variant="full"]{padding: 0}.overlay[data-variant="full"] .overlay__panel{width: 100%;height: 100%;max-height: none;border-radius: 0;border: 0;background: var(--stage-bg)}.overlay[data-variant="full"] .overlay__head{background: transparent;border-color: color-mix(in srgb,var(--ink) 12%,transparent)}@media (max-width: 40rem){.overlay:not([data-variant="full"]):not([data-variant="drawer"]){place-items: end center;padding: 0}.overlay:not([data-variant="full"]):not([data-variant="drawer"]) .overlay__panel{width: 100%;max-height: 92dvh;border-radius: calc(var(--r-lg) * 1.3) calc(var(--r-lg) * 1.3) 0 0;border-bottom: 0;animation-name: sheet-in;animation-timing-function: var(--ease)}.overlay:not([data-variant="full"]):not([data-variant="drawer"])[data-state="closing"] .overlay__panel{animation-name: sheet-out}.overlay:not([data-variant="full"]):not([data-variant="drawer"]) .overlay__panel::before{content: "";position: absolute;top: .45rem;left: 50%;width: 2.6rem;height: .28rem;margin-left: -1.3rem;border-radius: var(--r-pill);background: var(--line-strong);opacity: .6}.overlay__foot > .btn{flex: 1 1 auto}.overlay[data-variant="drawer"] .overlay__panel{width: 100%;border-radius: 0}}.toasts{position: fixed;z-index: var(--z-toast);right: 1rem;top: var(--toast-top);width: min(25rem,calc(100vw - 2rem));display: grid;gap: .6rem;pointer-events: none}.toast-wrap{display: grid;grid-template-rows: 1fr;transition: grid-template-rows var(--t-med) var(--ease),opacity var(--t-med)}.toast-wrap.is-leaving{grid-template-rows: 0fr;opacity: 0;margin-bottom: -.6rem}.toast{--tc: var(--tc-info);pointer-events: auto;position: relative;min-height: 0;overflow: hidden;display: grid;grid-template-columns: auto 1fr auto;gap: .2rem .75rem;align-items: start;padding: .85rem .6rem .95rem .95rem;border-radius: var(--r-md);background: var(--ink);color: var(--bg);box-shadow: var(--shadow-3);animation: toast-in var(--t-slow) var(--ease-spring) both;touch-action: pan-y}.toast[data-type="success"]{--tc: var(--tc-success)}.toast[data-type="error"]{--tc: var(--tc-error)}.toast[data-type="warn"]{--tc: var(--tc-warn)}.toast__icon{color: var(--tc);margin-top: .1rem}.toast__icon .i{width: 1.35rem;height: 1.35rem}.toast__title{font-weight: 700;font-size: var(--fs-ui);line-height: 1.35}.toast__msg{grid-column: 2;font-size: var(--fs-sm);opacity: .88;overflow-wrap: anywhere}.toast__title + .toast__msg{margin-top: -.1rem}.toast__act{grid-column: 2;justify-self: start;margin-top: .35rem;padding: .35rem .75rem;min-height: 2rem;border-radius: var(--r-sm);border: 1px solid color-mix(in srgb,var(--bg) 45%,transparent);background: transparent;color: var(--bg);font-weight: 650;font-size: var(--fs-sm)}.toast__act:hover{background: color-mix(in srgb,var(--bg) 16%,transparent)}.toast__x{grid-column: 3;grid-row: 1;width: 2rem;height: 2rem;display: grid;place-items: center;border: 0;background: transparent;color: inherit;border-radius: 50%;opacity: .75}.toast__x:hover{opacity: 1;background: color-mix(in srgb,var(--bg) 16%,transparent)}.toast .toast__x:focus-visible,.toast__act:focus-visible{outline-color: var(--bg);box-shadow: 0 0 0 5px var(--ink)}.toast__bar{position: absolute;left: 0;bottom: 0;height: 3px;width: 100%;background: var(--tc);transform-origin: 0 50%;animation: toast-bar var(--dur,5s) linear forwards}.toast:hover .toast__bar,.toast:focus-within .toast__bar{animation-play-state: paused}@media (max-width: 40rem){.toasts{right: .75rem;left: .75rem;width: auto;top: auto;bottom: var(--toast-bottom)}}body.has-overlay{overflow: hidden}.consent{position: fixed;z-index: calc(var(--z-toast) - 1);left: 50%;translate: -50% 0;bottom: calc(.75rem + env(safe-area-inset-bottom));width: min(62rem,calc(100vw - 1.5rem));padding: .65rem .75rem .65rem 1.1rem;background: var(--surface);border: 1px solid var(--line-strong);border-radius: var(--r-lg);box-shadow: var(--shadow-3);display: grid;grid-template-columns: 1fr auto;gap: .5rem 1.25rem;align-items: center;animation: bar-in var(--t-slow) var(--ease) both}.consent p{font-size: var(--fs-sm);color: var(--ink-2);line-height: 1.45}.consent p strong{color: var(--ink)}.consent__btns{display: flex;flex-wrap: nowrap;gap: .45rem}.consent__btns .btn{flex: 0 0 auto}@media (max-width: 62rem){.consent{grid-template-columns: 1fr;width: calc(100vw - 1rem);padding: .7rem .8rem}.consent__btns{flex-wrap: wrap}.consent__btns .btn{flex: 1 1 auto;padding-inline: .5rem;white-space: nowrap}}}@layer overlays{.choices{border: 0;padding: 0;margin: 0;min-width: 0}.choice{display: grid;grid-template-columns: auto 1fr;gap: .75rem;align-items: start;padding: .85rem 1rem;border: 1px solid var(--line-strong);border-radius: var(--r-md);background: var(--surface);cursor: pointer}.choice input{margin: .2rem 0 0;width: 1.15rem;height: 1.15rem;accent-color: var(--primary)}.choice span{display: grid;gap: .15rem}.choice small{color: var(--ink-2);font-size: var(--fs-sm);line-height: 1.4}.choice:has(input:checked){border-color: var(--primary);background: var(--primary-soft)}.choice:has(input:focus-visible){outline: 3px solid var(--focus);outline-offset: 2px}}@layer content{:root{interpolate-size: allow-keywords}.section{padding-block: var(--space-7)}.section--tint{background: color-mix(in srgb,var(--surface) 86%,transparent);border-block: 1px solid var(--line)}.section h2,.section__head h2{font-size: var(--fs-2xl);max-width: 24ch}.section__lead{margin-top: .7rem;color: var(--ink-2);max-width: 62ch;font-size: var(--fs-lead)}.section__head{margin-bottom: var(--space-5)}.steps{list-style: none;counter-reset: s;display: grid;gap: var(--space-5);margin-top: var(--space-5);max-width: 46rem}.steps li{counter-increment: s;position: relative;padding-left: 3.6rem}.steps li::before{content: counter(s);position: absolute;left: 0;top: -.1rem;display: grid;place-items: center;width: 2.4rem;height: 2.4rem;border-radius: var(--r-md);background: var(--accent);color: var(--on-accent);font: 800 var(--fs-lead) var(--font-display);transform: rotate(-4deg)}.steps li:not(:last-child)::after{content: "";position: absolute;left: 1.2rem;top: 2.6rem;bottom: -1.4rem;border-left: 2px dashed var(--line-strong)}.steps h3{font-size: var(--fs-lg)}.steps p{color: var(--ink-2);margin-top: .25rem;max-width: 56ch}.usecases{display: grid;grid-template-columns: repeat(auto-fit,minmax(16rem,1fr));gap: var(--space-5) var(--space-6);margin-top: var(--space-5)}.usecase{display: grid;grid-template-columns: auto 1fr;gap: .2rem .85rem;align-items: start}.usecase .i{grid-row: span 2;width: 1.6rem;height: 1.6rem;margin-top: .15rem;color: var(--primary-strong)}.usecase h3{font-size: var(--fs-lead)}.usecase p{color: var(--ink-2);font-size: var(--fs-sm)}.split{display: grid;grid-template-columns: 1fr 1fr;gap: var(--space-7);align-items: start}.checks{list-style: none;display: grid;gap: .6rem;margin-top: var(--space-4)}.checks li{display: grid;grid-template-columns: auto 1fr;gap: .6rem}.checks .i{color: var(--success);margin-top: .2rem}.faq{border-bottom: 1px solid var(--line)}.faq:first-of-type{border-top: 1px solid var(--line)}.faq summary{list-style: none;display: flex;justify-content: space-between;align-items: center;gap: 1rem;padding: 1rem .25rem;font: 650 var(--fs-lead)/1.35 var(--font-display);cursor: pointer;min-height: 3.25rem}.faq summary::-webkit-details-marker{display: none}.faq summary::after{content: "";flex: none;width: .6rem;height: .6rem;border-right: 2px solid var(--ink-2);border-bottom: 2px solid var(--ink-2);transform: rotate(45deg);transition: transform var(--t-med) var(--ease);margin-right: .3rem}.faq[open] summary::after{transform: rotate(225deg)}.faq summary:hover{color: var(--primary-strong)}.faq__a{padding: 0 .25rem 1.1rem;color: var(--ink-2);max-width: 66ch}.faq__a p + p{margin-top: .6rem}@supports (selector(::details-content)){.faq::details-content{block-size: 0;overflow: clip;transition: block-size var(--t-med) var(--ease),content-visibility var(--t-med) allow-discrete}.faq[open]::details-content{block-size: auto}}.guide-list{display: grid;grid-template-columns: repeat(auto-fit,minmax(17rem,1fr));gap: var(--space-4);margin-top: var(--space-5);list-style: none}.guide-card{display: grid;gap: .5rem;align-content: start;height: 100%;padding: 1.2rem 1.3rem;border-radius: var(--r-lg);background: var(--surface);border: 1px solid var(--line);text-decoration: none;color: var(--ink);transition: transform var(--t-med) var(--ease),box-shadow var(--t-med),border-color var(--t-med)}.guide-card:hover{transform: translateY(-3px);box-shadow: var(--shadow-2);border-color: var(--primary)}.guide-card h3{font-size: var(--fs-lead)}.guide-card p{color: var(--ink-2);font-size: var(--fs-sm)}.guide-card .badge{justify-self: start}.page-head{padding-block: var(--space-5) var(--space-5)}.page-head h1{font-size: var(--fs-3xl);max-width: 22ch}.prose .page-head{padding-block: var(--space-4) 0}.prose .page-head h1{font-size: clamp(1.9rem,1.3rem + 2vw,2.6rem);max-width: 26ch}.prose .page-head .lead{font-size: var(--fs-lead);line-height: 1.6;color: var(--ink-2)}.page-head p.lead{margin-top: .8rem;color: var(--ink-2);font-size: var(--fs-lead);max-width: 60ch}.meta-line{margin-top: .9rem;display: flex;flex-wrap: wrap;gap: .3rem 1rem;font-size: var(--fs-sm);color: var(--ink-3)}.article{display: grid;grid-template-columns: minmax(0,1fr) 17rem;gap: var(--space-7);align-items: start;padding-bottom: var(--space-5)}.article--single{grid-template-columns: minmax(0,46rem);justify-content: center}.aside{display: grid;gap: var(--space-4);align-content: start;position: sticky;top: calc(var(--header-h) + 1rem)}.aside .panel{padding: 1.1rem;display: grid;gap: .6rem}.aside h2{font-size: var(--fs-md)}.aside ul{list-style: none;display: grid;gap: .35rem;font-size: var(--fs-sm)}.aside li a{display: block;padding: .15rem 0}.prose{font-size: var(--fs-lead);line-height: 1.75;max-width: 68ch;color: color-mix(in srgb,var(--ink) 92%,var(--bg))}.prose h1,.prose h2,.prose h3{color: var(--ink)}.prose > * + *{margin-top: 1.1em}.prose h2{font-size: var(--fs-xl);margin-top: 2.1em;scroll-margin-top: 5rem}.prose h3{font-size: var(--fs-lg);margin-top: 1.7em}.prose ul,.prose ol{padding-left: 1.4rem}.prose li + li{margin-top: .4em}.prose li::marker{color: var(--primary-strong)}.prose strong{font-weight: 650;color: var(--ink)}.prose code{font: 600 .9em ui-monospace,SFMono-Regular,Menlo,monospace;background: var(--surface-3);padding: .12em .4em;border-radius: var(--r-sm)}.prose table{width: 100%;border-collapse: collapse;font-size: var(--fs-ui);display: block;overflow-x: auto}.prose th,.prose td{text-align: left;padding: .6rem .8rem;border-bottom: 1px solid var(--line);vertical-align: top}.prose th{background: var(--surface-3);font-weight: 650;white-space: nowrap}.callout{display: grid;grid-template-columns: auto 1fr;gap: .75rem;padding: 1rem 1.15rem;border-radius: var(--r-md);background: var(--primary-soft);border-left: 4px solid var(--primary);font-size: var(--fs-md);line-height: 1.6}.callout .i{color: var(--primary-strong);margin-top: .2rem}.callout--warn{background: var(--accent-soft);border-left-color: var(--accent)}.callout--warn .i{color: var(--warn)}.cta-box{display: grid;gap: .7rem;justify-items: start;padding: 1.5rem 1.6rem;border-radius: var(--r-lg);background: var(--ink);color: var(--bg)}.cta-box h2{font-size: var(--fs-xl);margin: 0;color: var(--bg)}.cta-box p{opacity: .85;max-width: 46ch}.cta-box .btn--primary{box-shadow: none}.faq-list + .cta-box,.faq-list + .ad-slot + .cta-box{margin-top: var(--space-6)}.legal h2{counter-increment: sec}.legal h2::before{content: counter(sec) ". ";color: var(--ink-3)}.legal{counter-reset: sec}.legal-meta{display: flex;flex-wrap: wrap;gap: .4rem 1.5rem;padding: .9rem 1.1rem;border-radius: var(--r-md);background: var(--surface);border: 1px solid var(--line);font-size: var(--fs-sm);color: var(--ink-2)}.contact-grid{display: grid;grid-template-columns: 1fr 1.2fr;gap: var(--space-6);align-items: start}.contact-card{padding: 1.4rem;display: grid;gap: 1rem}.contact-card .item{display: grid;grid-template-columns: auto 1fr;gap: .2rem .8rem}.contact-card .item .i{grid-row: span 2;color: var(--primary-strong);margin-top: .2rem}.contact-card small{color: var(--ink-2)}.err-page{min-height: 60dvh;display: grid;place-content: center;justify-items: center;text-align: center;gap: 1rem;padding: var(--space-7) 1rem}.err-page .big{font: 800 clamp(5rem,22vw,11rem)/1 var(--font-display);color: var(--primary);letter-spacing: -.05em}.ad-slot{height: 0;overflow: hidden;margin: 0;text-align: center;clear: both}.ad-slot.is-filled{height: auto;overflow: visible;margin: var(--space-6) auto;padding: .35rem 0 .6rem;max-width: 100%}.ad-slot__label{display: block;font: 600 var(--fs-2xs)/1 var(--font-body);color: var(--ink-3);letter-spacing: .06em;text-transform: none;margin-bottom: .35rem}.ad-slot ins{display: block;width: 100%;min-width: 250px}@media (max-width: 62rem){.article{grid-template-columns: minmax(0,1fr)}.aside{position: static}.split,.contact-grid{grid-template-columns: 1fr;gap: var(--space-5)}}@media (max-width: 40rem){.section{padding-block: var(--space-6)}.prose{font-size: var(--fs-md)}}}@layer utilities{.nav-toggle{display: none}@media (max-width: 52rem){.nav-toggle{display: inline-grid}}.more-link{display: inline-flex;align-items: center;min-height: 2.75rem;font-weight: 600}.row{display: flex;flex-wrap: wrap;gap: var(--space-2);align-items: center}.grow{flex: 1}.stack{display: grid;gap: var(--space-3)}.center{text-align: center}.muted{color: var(--ink-2)}.print-only{display: none}}@keyframes fade-in{from{opacity: 0}}@keyframes fade-out{to{opacity: 0}}@keyframes modal-in{from{opacity: 0;transform: translateY(14px) scale(.96)}}@keyframes modal-out{to{opacity: 0;transform: translateY(8px) scale(.97)}}@keyframes sheet-in{from{transform: translateY(100%)}}@keyframes sheet-out{to{transform: translateY(100%)}}@keyframes drawer-in{from{transform: translateX(100%)}}@keyframes drawer-out{to{transform: translateX(100%)}}@keyframes toast-in{from{opacity: 0;transform: translateY(-14px) scale(.96)}}@keyframes bar-in{from{opacity: 0;transform: translateY(100%)}}@keyframes toast-bar{to{transform: scaleX(0)}}@keyframes bump{0%{transform: scale(1)}40%{transform: scale(1.28)}100%{transform: scale(1)}}@keyframes row-in{from{opacity: 0;transform: translateY(8px)}}@keyframes spin{to{transform: rotate(360deg)}}@keyframes indeterminate{from{transform: translateX(-100%)}to{transform: translateX(260%)}}@media (max-width: 40rem){@keyframes toast-in{from{opacity: 0;transform: translateY(14px) scale(.96)}}}@media (prefers-reduced-motion: reduce){:root[data-motion="auto"] *,:root[data-motion="auto"] *::before,:root[data-motion="auto"] *::after{animation-duration: .01ms !important;animation-iteration-count: 1 !important;transition-duration: .01ms !important;scroll-behavior: auto !important}}:root[data-motion="reduced"] *,:root[data-motion="reduced"] *::before,:root[data-motion="reduced"] *::after{animation-duration: .01ms !important;animation-iteration-count: 1 !important;transition-duration: .01ms !important;scroll-behavior: auto !important}@layer components{.btn--lg{min-height: 3.2rem;padding: 0 1.5rem;font-size: var(--fs-md);border-radius: calc(var(--r-md) * 1.2)}.badge--free{background: color-mix(in srgb,var(--success) 14%,var(--surface));color: var(--success)}.eyebrow{font: 700 var(--fs-xs)/1.2 var(--font-body);letter-spacing: .09em;text-transform: uppercase;color: var(--brand-strong);margin-bottom: .6rem}.small{font-size: var(--fs-sm)}.h2{font-size: var(--fs-2xl);max-width: 24ch}.tile{flex: none;display: grid;place-items: center;width: 2.9rem;height: 2.9rem;border-radius: calc(var(--r-md) * 1.1);background: var(--card-accent,var(--brand));color: var(--card-on,var(--on-brand));box-shadow: inset 0 1px 0 rgb(255 255 255 / .22)}.tile .i{width: 1.5rem;height: 1.5rem}:root[data-theme="dark"] .tile{background: var(--card-accent-dark,var(--brand));color: var(--card-on-dark,var(--on-brand))}@media (prefers-color-scheme: dark){:root[data-theme="auto"] .tile{background: var(--card-accent-dark,var(--brand));color: var(--card-on-dark,var(--on-brand))}}.tool-grid{list-style: none;display: grid;gap: var(--space-4);margin-top: var(--space-5)}.tool-grid--feature{grid-template-columns: repeat(auto-fit,minmax(min(100%,22rem),1fr))}.tool-grid--grid{grid-template-columns: repeat(auto-fill,minmax(min(100%,19rem),1fr))}.tool-grid--dense{grid-template-columns: repeat(auto-fill,minmax(min(100%,16rem),1fr));gap: var(--space-3)}.tool-card-li{display: flex;min-width: 0}.tool-card{position: relative;display: flex;flex-direction: column;width: 100%;background: var(--surface);border: 1px solid var(--line);border-radius: var(--r-lg);box-shadow: var(--shadow-1);overflow: hidden;transition: transform var(--t-med) var(--ease),box-shadow var(--t-med) var(--ease),border-color var(--t-med)}.tool-card:not(.is-soon):hover{transform: translateY(-3px);box-shadow: var(--shadow-2);border-color: var(--card-accent,var(--brand))}.tool-card__shot{aspect-ratio: 16 / 10;background: var(--surface-3);border-bottom: 1px solid var(--line);overflow: hidden}.tool-card__shot img{display: block;width: 100%;height: 100%;object-fit: cover;object-position: top left}.tool-card__body{display: flex;flex-direction: column;gap: var(--space-3);padding: 1.1rem 1.2rem 1.2rem;flex: 1}.tool-card__top{display: flex;gap: .85rem;align-items: flex-start}.tool-card__titles{min-width: 0}.tool-card__name{font-size: var(--fs-lg);line-height: 1.2}.tool-card__link{color: var(--ink);text-decoration: none}.tool-card__link::after{content: "";position: absolute;inset: 0}.tool-card:hover .tool-card__link{color: var(--primary-strong);text-decoration: underline;text-underline-offset: .2em}.tool-card__tag{margin-top: .2rem;color: var(--ink-2);font-size: var(--fs-sm)}.tool-card__features{list-style: none;display: grid;gap: .25rem;font-size: var(--fs-sm);color: var(--ink-2)}.tool-card__features li{display: flex;gap: .5rem;align-items: baseline}.tool-card__features li::before{content: "";flex: none;width: .45rem;height: .45rem;border-radius: 50%;background: var(--card-accent,var(--brand));transform: translateY(-.05rem)}:root[data-theme="dark"] .tool-card__features li::before{background: var(--card-accent-dark,var(--brand))}@media (prefers-color-scheme: dark){:root[data-theme="auto"] .tool-card__features li::before{background: var(--card-accent-dark,var(--brand))}}.tool-card__meta{display: flex;flex-wrap: wrap;gap: .35rem;margin-top: auto;padding-top: .2rem}.tool-card.is-soon{opacity: .82;border-style: dashed;box-shadow: none}.tool-grid--dense .tool-card__features{display: none}.tool-grid--dense .tool-card__shot{aspect-ratio: 16 / 7}@supports selector(:has(*)){.tool-card__link:focus-visible{outline: none;box-shadow: none}.tool-card:has(.tool-card__link:focus-visible){outline: 3px solid var(--focus);outline-offset: 3px;box-shadow: 0 0 0 6px var(--focus-halo)}}@media (min-width: 52rem){.tool-grid[data-count="1"]{grid-template-columns: minmax(0,60rem)}.tool-grid[data-count="1"] .tool-card{flex-direction: row}.tool-grid[data-count="1"] .tool-card__shot{flex: 1.25;aspect-ratio: auto;border-bottom: 0;border-right: 1px solid var(--line);min-height: 15rem}.tool-grid[data-count="1"] .tool-card__body{flex: 1;justify-content: center;padding: 1.8rem;gap: var(--space-4)}.tool-grid[data-count="1"] .tool-card__name{font-size: var(--fs-xl)}.tool-grid[data-count="1"] .tile{width: 3.4rem;height: 3.4rem}}.gallery-controls{display: flex;flex-wrap: wrap;gap: var(--space-3);align-items: end;margin-top: var(--space-4)}.gallery-search{position: relative;flex: 1 1 18rem;min-width: 0}.gallery-search .i{position: absolute;left: .9rem;top: 50%;transform: translateY(-50%);color: var(--ink-3);pointer-events: none}.gallery-search .input{padding-left: 2.6rem;min-height: 3rem}.gallery-sort{display: grid;gap: .3rem}.gallery-sort .select{min-width: 10rem;min-height: 3rem}.chips{flex: 1 0 100%;display: flex;flex-wrap: wrap;gap: .5rem}.chip{display: inline-flex;align-items: center;gap: .45rem;min-height: 2.6rem;padding: 0 .95rem;border-radius: var(--r-pill);border: 1px solid var(--line-strong);background: var(--surface);color: var(--ink);font-weight: 600;font-size: var(--fs-sm);transition: background-color var(--t-fast),color var(--t-fast),border-color var(--t-fast)}.chip:hover{background: var(--surface-3)}.chip .i{width: 1.1em;height: 1.1em;color: var(--ink-2)}.chip .count{background: var(--surface-3)}.chip[aria-pressed="true"]{background: var(--brand);color: var(--on-brand);border-color: transparent}.chip[aria-pressed="true"] .i{color: inherit}.chip[aria-pressed="true"] .count{background: color-mix(in srgb,var(--on-brand) 22%,transparent);color: inherit}.gallery-count{color: var(--ink-2);font-size: var(--fs-sm);font-weight: 600;white-space: nowrap}.gallery-empty{margin-top: var(--space-5)}.guide-hits{margin-top: var(--space-6)}.guide-hits h3{font-size: var(--fs-lg)}@media (max-width: 40rem){.chips{flex-wrap: nowrap;overflow-x: auto;scrollbar-width: none;margin-inline: -1rem;padding-inline: 1rem;scroll-snap-type: x proximity}.chip{flex: none;scroll-snap-align: start}.gallery-sort{flex: 1 0 100%}.gallery-sort .select{width: 100%}}.cat-list{list-style: none;display: grid;grid-template-columns: repeat(auto-fill,minmax(min(100%,14rem),1fr));gap: var(--space-3);margin-top: var(--space-4)}.cat-card{display: flex;gap: .8rem;align-items: center;padding: .9rem 1rem;border-radius: var(--r-lg);background: var(--surface);border: 1px solid var(--line);color: var(--ink);text-decoration: none;transition: border-color var(--t-med),transform var(--t-med) var(--ease)}.cat-card:hover{border-color: var(--brand);transform: translateY(-2px)}.cat-card > .i{width: 1.6rem;height: 1.6rem;color: var(--brand-strong)}.cat-card span{display: grid;line-height: 1.25}.cat-card small{color: var(--ink-2)}.tool-nav{background: var(--surface);border-bottom: 1px solid var(--line)}.tool-nav__inner{display: flex;align-items: center;gap: var(--space-4);min-height: 3.4rem;overflow-x: auto;scrollbar-width: none}.tool-nav__name{display: inline-flex;align-items: center;gap: .6rem;color: var(--ink);font: 700 var(--fs-md)/1 var(--font-display);text-decoration: none;white-space: nowrap}.tool-nav__name .tile{width: 1.9rem;height: 1.9rem;border-radius: var(--r-sm)}.tool-nav__name .tile .i{width: 1.05rem;height: 1.05rem}.tool-nav ul{list-style: none;display: flex;gap: .15rem;margin-left: auto}.tool-nav li a{display: inline-flex;align-items: center;min-height: 3.4rem;padding: 0 .8rem;color: var(--ink-2);font-weight: 600;font-size: var(--fs-sm);text-decoration: none;white-space: nowrap;border-bottom: 3px solid transparent}.tool-nav li a:hover{color: var(--ink);background: var(--surface-3)}.tool-nav li a[aria-current="page"]{color: var(--ink);border-bottom-color: var(--primary)}.guide-card__tool{color: var(--ink-3);font-size: var(--fs-xs);font-weight: 600}.guide-card__min{color: var(--ink-3);font-size: var(--fs-xs);margin-top: auto}.faq-list{margin-top: var(--space-4)}}@layer content{.toc ol{list-style: none;display: grid;gap: .1rem;font-size: var(--fs-sm);counter-reset: toc}.toc li{counter-increment: toc}.aside .toc li a{display: grid;grid-template-columns: 1.6rem 1fr;padding: .3rem 0;color: var(--ink-2);text-decoration: none}.aside .toc li a::before{content: counter(toc);color: var(--ink-3);font-variant-numeric: tabular-nums}.aside .toc li a:hover{color: var(--primary-strong);text-decoration: underline}.article{grid-template-columns: minmax(0,46rem) 17rem;justify-content: center;column-gap: var(--space-7)}.article--single{grid-template-columns: minmax(0,46rem)}@media (max-width: 62rem){.article{grid-template-columns: minmax(0,46rem)}}.hero--hub{position: relative;padding-block: var(--space-7) var(--space-6);background: radial-gradient(60rem 28rem at 88% -8%,color-mix(in srgb,var(--brand) 13%,transparent),transparent 70%)}.hero__grid{display: grid;grid-template-columns: minmax(0,1.35fr) minmax(0,.85fr);gap: var(--space-7);align-items: center}.hero--hub h1{font-size: var(--fs-3xl);max-width: 16ch;letter-spacing: -.025em}.hero__lead{margin-top: var(--space-4);max-width: 52ch;color: var(--ink-2);font-size: var(--fs-lead)}.trust{display: flex;flex-wrap: wrap;gap: .45rem 1.25rem;margin-top: var(--space-4);color: var(--ink-2);font-size: var(--fs-sm);font-weight: 600;list-style: none}.trust li{display: inline-flex;gap: .45rem;align-items: center}.trust .i{color: var(--brand-strong)}.hero__cta{display: flex;flex-wrap: wrap;gap: var(--space-3);margin-top: var(--space-5)}.receipt-wrap{justify-self: end;width: min(100%,22rem);filter: drop-shadow(0 18px 22px rgb(15 27 45 / .22));transform: rotate(1.6deg)}.receipt{background: var(--paper);color: var(--paper-ink);padding: 1.5rem 1.5rem 2.1rem;font-family: var(--font-mono);font-size: var(--fs-sm);border-radius: var(--r-sm) var(--r-sm) 0 0;-webkit-mask: conic-gradient(from -45deg at bottom,#0000,#000 1deg 89deg,#0000 90deg) 50% / 20px 100%;mask: conic-gradient(from -45deg at bottom,#0000,#000 1deg 89deg,#0000 90deg) 50% / 20px 100%}.receipt__head{text-align: center;font-weight: 700;letter-spacing: .14em;text-transform: uppercase;font-size: var(--fs-xs);padding-bottom: .9rem;border-bottom: 2px dashed currentColor}.receipt__rows{margin: .9rem 0 0;display: grid;gap: .5rem}.receipt__rows div{display: flex;align-items: baseline;gap: .5rem}.receipt__rows dt{display: flex;flex: 1;align-items: baseline;gap: .5rem;margin: 0}.receipt__rows dt::after{content: "";flex: 1;border-bottom: 2px dotted currentColor;opacity: .35;transform: translateY(-.2rem)}.receipt__rows dd{margin: 0;font-weight: 700}.receipt__total{display: flex;justify-content: space-between;align-items: baseline;margin-top: 1rem;padding-top: .8rem;border-top: 2px dashed currentColor;text-transform: uppercase;font-weight: 700;letter-spacing: .06em;font-size: var(--fs-xs)}.receipt__total b{font: 800 2.7rem/1 var(--font-display);letter-spacing: -.03em;text-transform: none;background: linear-gradient(transparent 62%,var(--gold) 62% 90%,transparent 90%);padding-inline: .15rem}.receipt__note{margin-top: .9rem;text-align: center;font-size: var(--fs-xs);letter-spacing: .08em;text-transform: uppercase;opacity: .75}.section--tools{padding-top: var(--space-6)}.section--flush{padding-block: var(--space-5) 0}.section__head--row{display: flex;flex-wrap: wrap;justify-content: space-between;align-items: end;gap: var(--space-3)}.section--why{background: var(--surface);border-block: 1px solid var(--line)}.usecases--why{list-style: none;grid-template-columns: repeat(auto-fit,minmax(min(100%,20rem),1fr))}.section--cta .cta-box{max-width: 46rem;margin-inline: auto}.intro{max-width: 72rem}.intro h2{font-size: var(--fs-2xl);max-width: 28ch}.intro > h2 + p{margin-top: .7rem;color: var(--ink-2);max-width: 62ch;font-size: var(--fs-lead)}.intro > p{margin-top: .8rem;max-width: 68ch;color: var(--ink-2)}.intro > p a{font-weight: 600}.intro .checks{grid-template-columns: repeat(auto-fit,minmax(min(100%,20rem),1fr));gap: .9rem 2rem;max-width: none}.intro .steps{max-width: 52rem}.intro table{width: 100%;max-width: 40rem;margin-top: var(--space-4);border-collapse: collapse;font-size: var(--fs-ui);border: 1px solid var(--line);border-radius: var(--r-md);background: var(--surface)}.intro th,.intro td{text-align: left;padding: .6rem .9rem;border-bottom: 1px solid var(--line);vertical-align: middle}.intro th{background: var(--surface-3);font-weight: 650}.intro tr:last-child td{border-bottom: 0}.tool-hero{padding-block: var(--space-5) var(--space-3)}.tool-hero h1{font-size: clamp(1.55rem,1rem + 1.7vw,2.2rem);max-width: none}.tool-hero p{margin-top: var(--space-2);color: var(--ink-2);max-width: 90ch;font-size: var(--fs-md)}.tool-hero .trust{margin-top: var(--space-3)}.err-page h1{font-size: var(--fs-2xl)}.err-page__lead{max-width: 44ch}.err-page__actions{justify-content: center}@media (max-width: 52rem){.hero__grid{grid-template-columns: 1fr;gap: var(--space-6)}.receipt-wrap{justify-self: center;transform: rotate(1deg)}.hero--hub{padding-block: var(--space-6) var(--space-5)}.tool-nav ul{margin-left: 0}}@media (max-width: 40rem){.hero--hub h1{max-width: none}.hero__cta .btn{flex: 1 1 100%}.tool-nav__inner{gap: var(--space-2)}}}@layer utilities{@media print{.hub-bar,.site-footer,.tool-nav,.ad-slot,.consent,.skip-link,.crumbs{display: none !important}body{background: #fff;color: #000}}}