@font-face{font-family:Outfit;src:url(/fonts/Outfit-Variable.woff2) format("woff2");font-weight:100 900;font-style:normal;font-display:swap}@font-face{font-family:Space Mono;src:url(/fonts/SpaceMono-400.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Space Mono;src:url(/fonts/SpaceMono-700.woff2) format("woff2");font-weight:700;font-style:normal;font-display:swap}:root{--paper: oklch(.99 .003 255);--paper-2: oklch(.965 .005 255);--ink: oklch(.24 .02 265);--ink-2: oklch(.4 .02 265);--ink-3: oklch(.46 .018 265);--edge: oklch(.88 .008 265);--drop: oklch(.24 .02 265);--line: var(--edge);--line-soft: oklch(.91 .006 265);--signal: oklch(.55 .13 270);--signal-strong: oklch(.48 .15 272);--signal-soft: oklch(.55 .13 270 / .1);--highlight: oklch(.93 .045 270);--ok: oklch(.58 .11 155);--ok-soft: oklch(.58 .11 155 / .14);--state-included: var(--ok);--state-addon: oklch(.56 .1 245);--state-add-to-any: oklch(.56 .11 300);--state-package: oklch(.62 .1 80);--state-none: var(--ink-3);--font-display: "Outfit", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-ui: "Outfit", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-mono: "Space Mono", ui-monospace, "SFMono-Regular", Consolas, "Menlo", monospace;--step--1: clamp(.78rem, .74rem + .18vw, .875rem);--step-0: clamp(.9rem, .86rem + .2vw, 1rem);--step-1: clamp(1.06rem, .99rem + .34vw, 1.25rem);--step-2: clamp(1.27rem, 1.14rem + .57vw, 1.6rem);--step-3: clamp(1.52rem, 1.31rem + .9vw, 2.05rem);--step-4: clamp(1.83rem, 1.5rem + 1.4vw, 2.6rem);--gap: clamp(.75rem, .6rem + .6vw, 1.1rem);--gap-2: clamp(1.1rem, .9rem + .9vw, 1.75rem);--gap-3: clamp(1.75rem, 1.4rem + 1.5vw, 2.75rem);--bleed: clamp(1rem, .5rem + 2.5vw, 2.5rem);--radius: 10px;--radius-sm: 8px;--radius-lg: 14px;--radius-pill: 999px;--border-w: 1px;--border-w-2: 1.5px;--ease-out: cubic-bezier(.22, 1, .36, 1);--ease-in-out: cubic-bezier(.65, 0, .35, 1);--dur-1: 90ms;--dur-2: .15s;--shadow-hard-sm: 0 1px 2px oklch(.24 .02 265 / .08);--shadow-hard: 0 2px 8px oklch(.24 .02 265 / .1);--shadow-hard-lg: 0 8px 24px oklch(.24 .02 265 / .12);--shadow-1: var(--shadow-hard-sm);--shadow-2: var(--shadow-hard);color-scheme:light}@media (prefers-color-scheme: dark){:root{--paper: oklch(.18 .012 265);--paper-2: oklch(.225 .013 265);--ink: oklch(.95 .01 265);--ink-2: oklch(.78 .012 265);--ink-3: oklch(.64 .012 265);--edge: oklch(.36 .012 265);--drop: oklch(0 0 0);--line-soft: oklch(.3 .01 265);--signal: oklch(.72 .13 270);--signal-strong: oklch(.6 .15 272);--signal-soft: oklch(.72 .13 270 / .18);--highlight: oklch(.84 .1 270);--ok: oklch(.74 .12 155);--ok-soft: oklch(.74 .12 155 / .2);--state-included: var(--ok);--state-addon: oklch(.72 .11 245);--state-add-to-any: oklch(.72 .12 300);--state-package: oklch(.78 .11 85);--state-none: var(--ink-3);--shadow-hard-sm: 0 1px 2px oklch(0 0 0 / .4);--shadow-hard: 0 2px 8px oklch(0 0 0 / .45);--shadow-hard-lg: 0 8px 24px oklch(0 0 0 / .5);color-scheme:dark}}*,*:before,*:after{box-sizing:border-box}*{margin:0}html{-webkit-text-size-adjust:100%;text-size-adjust:100%;overflow-x:clip}body{min-height:100dvh;overflow-x:clip;background:var(--paper);color:var(--ink);font-family:var(--font-ui);font-size:var(--step-0);line-height:1.5;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}::selection{background:var(--highlight);color:#0e0f12}.app-loading{max-width:60ch;margin:var(--gap-2) auto;padding:var(--bleed);color:var(--ink-2);text-align:center}h1,h2,h3,h4{font-family:var(--font-display);line-height:1.05;font-weight:700;letter-spacing:-.02em}a{color:var(--signal);font-weight:700;text-underline-offset:.15em;text-decoration-thickness:2px}a:hover{text-decoration-thickness:3px}button{font:inherit;color:inherit;cursor:pointer}input,select{font:inherit;color:inherit}img,svg{display:block;max-width:100%}ul{list-style:none;padding:0}:focus-visible{outline:3px solid var(--signal);outline-offset:2px;border-radius:0}.skip-link{position:absolute;left:.5rem;top:.5rem;transform:translateY(-180%);z-index:100;background:var(--highlight);color:#0e0f12;font-weight:700;padding:.5rem .875rem;border:var(--border-w-2) solid var(--edge);border-radius:var(--radius);box-shadow:var(--shadow-hard);transition:transform var(--dur-2) var(--ease-out)}.skip-link:focus{transform:translateY(0)}.app{display:flex;flex-direction:column;min-height:100dvh}.app__main{flex:1 1 auto;width:100%;padding:var(--gap-2) var(--bleed)}.container{width:100%;max-width:1400px;margin-inline:auto}.visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.muted{color:var(--ink-3)}.mono{font-family:var(--font-mono);font-size:.92em}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}}.noscript-fallback{max-width:60ch;margin:var(--gap-2) auto;padding:var(--bleed);display:flex;flex-direction:column;gap:var(--gap)}.noscript-fallback h1{font-size:var(--step-3)}.noscript-legend{display:flex;flex-direction:column;gap:.4rem}.noscript-legend b{display:inline-block;width:1.5em;color:var(--signal)}.noscript-note{padding:var(--gap);border:var(--border-w) solid var(--edge);border-radius:var(--radius);background:var(--paper-2);color:var(--ink-2)}.noscript-legend b{color:var(--signal)}@media print{body{background:#fff;color:#000;font-size:10pt}.skip-link,.intro,.app__footer{display:none!important}.app__main{padding:0}.compare__scroll,.matrix__scroll{overflow:visible!important;border:0!important}.compare__corner,.compare__planhead,.compare__feature,.matrix__corner,.matrix__planhead,.matrix__rowhead{position:static!important}.compare__cathead,.matrix__sectionbtn{break-after:avoid}a{color:#000;text-decoration:none}a[href^=http]:after{content:" (" attr(href) ")";font-size:.8em}}
