:root{--serif: "Cormorant Garamond", "EB Garamond", Georgia, serif;--sans: "Libre Franklin", system-ui, -apple-system, sans-serif;--mono: "JetBrains Mono", ui-monospace, "SF Mono", Menlo, monospace;--space-xs: .5rem;--space-sm: 1rem;--space-md: 2rem;--space-lg: 4rem;--space-xl: 7rem;--max-w: 1100px;--bg: #0c0c0c;--bg-card: #141414;--bg-card-hover: #1a1a1a;--text-primary: #e8e4df;--text-secondary: #8a8580;--text-muted: #5a5550;--accent: #c8a882;--accent-hover: #d4b896;--accent-dim: rgba(200, 168, 130, .12);--border: #222222;--border-hover: #333333;--hero-glow: rgba(200, 168, 130, .06);color-scheme:dark}:root[data-theme=light]{--bg: #faf7f2;--bg-card: #f3eee5;--bg-card-hover: #ebe5d9;--text-primary: #1a1612;--text-secondary: #5a534b;--text-muted: #8a8378;--accent: #8b6f47;--accent-hover: #74592f;--accent-dim: rgba(139, 111, 71, .1);--border: #d8d0c2;--border-hover: #b8ac98;--hero-glow: rgba(139, 111, 71, .05);color-scheme:light}@media(prefers-color-scheme:light){:root:not([data-theme=dark]):not([data-theme=light]){--bg: #faf7f2;--bg-card: #f3eee5;--bg-card-hover: #ebe5d9;--text-primary: #1a1612;--text-secondary: #5a534b;--text-muted: #8a8378;--accent: #8b6f47;--accent-hover: #74592f;--accent-dim: rgba(139, 111, 71, .1);--border: #d8d0c2;--border-hover: #b8ac98;--hero-glow: rgba(139, 111, 71, .05);color-scheme:light}}:where(.astro-qw5dklun),:where(.astro-qw5dklun):before,:where(.astro-qw5dklun):after{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--sans);font-weight:300;background:var(--bg);color:var(--text-secondary);line-height:1.7;-webkit-font-smoothing:antialiased}a:where(.astro-qw5dklun){color:inherit;text-decoration:none;transition:color .3s ease}:where(.astro-qw5dklun)::selection{background:var(--accent-dim);color:var(--text-primary)}.container:where(.astro-qw5dklun){max-width:1280px;margin:0 auto;padding:0 2rem}.container-wide:where(.astro-qw5dklun){max-width:1560px;margin:0 auto;padding:0 2rem}@media(max-width:768px){.container:where(.astro-qw5dklun),.container-wide:where(.astro-qw5dklun){padding:0 1.25rem}}nav:where(.astro-qw5dklun).site-nav{position:sticky;top:0;z-index:100;background:color-mix(in srgb,var(--bg) 85%,transparent);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-bottom:1px solid var(--border)}.nav-inner:where(.astro-qw5dklun){max-width:1280px;margin:0 auto;padding:1.25rem 2rem;display:flex;align-items:center;justify-content:space-between;gap:2rem}.nav-logo:where(.astro-qw5dklun){font-family:var(--serif);font-size:1.5rem;font-weight:500;letter-spacing:-.01em;line-height:1;display:inline-flex;align-items:baseline}.nav-logo:where(.astro-qw5dklun) .lm:where(.astro-qw5dklun){color:var(--text-primary)}.nav-logo:where(.astro-qw5dklun) .li:where(.astro-qw5dklun){color:var(--accent);font-style:italic}.nav-links:where(.astro-qw5dklun){display:flex;gap:2rem;list-style:none}.nav-links:where(.astro-qw5dklun) a:where(.astro-qw5dklun){font-family:var(--sans);font-size:.85rem;font-weight:500;text-transform:uppercase;letter-spacing:.04em;color:var(--text-secondary)}.nav-links:where(.astro-qw5dklun) a:where(.astro-qw5dklun):hover{color:var(--text-primary)}.nav-links:where(.astro-qw5dklun) a:where(.astro-qw5dklun)[aria-current=page]{color:var(--accent)}.nav-right:where(.astro-qw5dklun){display:flex;align-items:center;gap:1.25rem}.nav-github:where(.astro-qw5dklun){font-family:var(--mono);font-size:.75rem;color:var(--text-muted);letter-spacing:.05em}.nav-github:where(.astro-qw5dklun):hover{color:var(--accent)}.theme-toggle:where(.astro-qw5dklun){background:transparent;border:none;cursor:pointer;color:var(--text-muted);padding:.25rem;display:inline-flex;align-items:center;transition:color .3s ease}.theme-toggle:where(.astro-qw5dklun):hover{color:var(--accent)}.theme-toggle:where(.astro-qw5dklun) svg:where(.astro-qw5dklun){width:1.05rem;height:1.05rem}.theme-toggle:where(.astro-qw5dklun) .icon-sun:where(.astro-qw5dklun){display:none}.theme-toggle:where(.astro-qw5dklun) .icon-moon:where(.astro-qw5dklun){display:inline-block}:root[data-theme=light] .theme-toggle:where(.astro-qw5dklun) .icon-sun:where(.astro-qw5dklun){display:none}:root[data-theme=light] .theme-toggle:where(.astro-qw5dklun) .icon-moon:where(.astro-qw5dklun){display:inline-block}:root[data-theme=dark] .theme-toggle:where(.astro-qw5dklun) .icon-sun:where(.astro-qw5dklun){display:inline-block}:root[data-theme=dark] .theme-toggle:where(.astro-qw5dklun) .icon-moon:where(.astro-qw5dklun){display:none}@media(prefers-color-scheme:dark){:root:not([data-theme=light]) .theme-toggle:where(.astro-qw5dklun) .icon-sun:where(.astro-qw5dklun){display:inline-block}:root:not([data-theme=light]) .theme-toggle:where(.astro-qw5dklun) .icon-moon:where(.astro-qw5dklun){display:none}}@media(max-width:768px){.nav-links:where(.astro-qw5dklun),.nav-github:where(.astro-qw5dklun){display:none}.nav-inner:where(.astro-qw5dklun){padding:1rem 1.25rem}}.hero:where(.astro-qw5dklun){padding:5rem 0 3rem;border-bottom:1px solid var(--border)}.hero:where(.astro-qw5dklun) h1:where(.astro-qw5dklun){font-family:var(--serif);font-weight:400;font-size:clamp(2.5rem,5vw,4rem);line-height:1.1;letter-spacing:-.03em;color:var(--text-primary);margin-bottom:1.25rem}.hero:where(.astro-qw5dklun) p:where(.astro-qw5dklun){font-family:var(--sans);font-weight:300;color:var(--text-secondary);max-width:720px;font-size:1.05rem;line-height:1.8}.updated-pill:where(.astro-qw5dklun){display:inline-block;font-family:var(--mono);font-size:.7rem;letter-spacing:.15em;text-transform:uppercase;color:var(--accent);margin-bottom:1.5rem}.filters:where(.astro-qw5dklun){display:flex;flex-wrap:wrap;gap:.75rem 1.25rem;padding:1.5rem 0;align-items:center;border-bottom:1px solid var(--border);margin:0 0 2rem}.filter-group:where(.astro-qw5dklun){display:flex;gap:.4rem;align-items:center}.filter-label:where(.astro-qw5dklun){font-family:var(--mono);font-size:.65rem;font-weight:500;color:var(--text-muted);text-transform:uppercase;letter-spacing:.15em;margin-right:.5rem}.chip:where(.astro-qw5dklun){font-family:var(--mono);font-size:.72rem;letter-spacing:.05em;text-transform:lowercase;background:transparent;border:1px solid var(--accent-dim);color:var(--text-secondary);padding:.4rem .75rem;border-radius:2px;cursor:pointer;user-select:none;transition:all .3s ease}.chip:where(.astro-qw5dklun):hover{background:var(--accent-dim);border-color:var(--accent);color:var(--text-primary)}.chip:where(.astro-qw5dklun).active{background:var(--accent);color:var(--bg);border-color:var(--accent)}.search-input:where(.astro-qw5dklun){font-family:var(--sans);font-weight:300;background:var(--bg-card);border:1px solid var(--border);color:var(--text-primary);border-radius:2px;padding:.5rem .75rem;font-size:.9rem;min-width:220px;transition:border-color .3s ease}.search-input:where(.astro-qw5dklun):focus{outline:none;border-color:var(--accent)}.search-input:where(.astro-qw5dklun)::placeholder{color:var(--text-muted)}.table-wrap:where(.astro-qw5dklun){overflow:auto;border:1px solid var(--border);margin-bottom:3rem;max-height:640px;background:var(--bg-card)}table:where(.astro-qw5dklun){width:100%;border-collapse:collapse;font-size:.9rem}thead:where(.astro-qw5dklun){position:sticky;top:0;z-index:1}th:where(.astro-qw5dklun){font-family:var(--mono);font-size:.7rem;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--text-muted);text-align:left;padding:1rem .9rem;cursor:pointer;user-select:none;border-bottom:1px solid var(--border);border-right:1px solid var(--border);background:var(--bg-card-hover);white-space:nowrap;transition:color .3s ease}th:where(.astro-qw5dklun):last-child,td:where(.astro-qw5dklun):last-child{border-right:none}th:where(.astro-qw5dklun):hover{color:var(--accent)}th:where(.astro-qw5dklun) .sort-indicator:where(.astro-qw5dklun){color:var(--accent);font-size:.7rem;margin-left:.25rem}td:where(.astro-qw5dklun){font-family:var(--sans);font-weight:300;padding:1rem .9rem;border-bottom:1px solid var(--border);border-right:1px solid var(--border);color:var(--text-secondary);white-space:nowrap;line-height:1.5}td:where(.astro-qw5dklun) strong:where(.astro-qw5dklun){font-family:var(--serif);font-weight:500;font-size:1.05rem;color:var(--text-primary)}tr:where(.astro-qw5dklun):hover td:where(.astro-qw5dklun){background:var(--bg-card-hover)}.vendor-chip:where(.astro-qw5dklun){font-family:var(--mono);font-size:.7rem;color:var(--text-muted);letter-spacing:.05em}.lic-open:where(.astro-qw5dklun){color:var(--accent);font-weight:500;font-size:.72rem;font-family:var(--mono);text-transform:uppercase;letter-spacing:.1em}.lic-closed:where(.astro-qw5dklun){color:var(--text-muted);font-weight:500;font-size:.72rem;font-family:var(--mono);text-transform:uppercase;letter-spacing:.1em}.try-btn:where(.astro-qw5dklun){font-family:var(--sans);font-size:.72rem;font-weight:500;letter-spacing:.08em;text-transform:uppercase;display:inline-block;padding:.35rem .8rem;border-radius:2px;background:var(--accent);color:var(--bg);border:1px solid var(--accent);transition:all .3s ease}.try-btn:where(.astro-qw5dklun):hover{background:var(--accent-hover);border-color:var(--accent-hover);transform:translateY(-1px)}.compare-cb:where(.astro-qw5dklun){width:16px;height:16px;cursor:pointer;accent-color:var(--accent)}.charts-row:where(.astro-qw5dklun){display:grid;grid-template-columns:1fr 1fr;gap:1px;margin-bottom:3rem;background:var(--border);border:1px solid var(--border)}@media(max-width:900px){.charts-row:where(.astro-qw5dklun){grid-template-columns:1fr}}.chart-card:where(.astro-qw5dklun){background:var(--bg-card);padding:1.75rem}.chart-card:where(.astro-qw5dklun) h2:where(.astro-qw5dklun){font-family:var(--serif);font-weight:400;font-size:1.5rem;line-height:1.3;color:var(--text-primary);margin-bottom:1rem}.chart-card:where(.astro-qw5dklun) p:where(.astro-qw5dklun){font-family:var(--sans);font-weight:300;color:var(--text-muted)}.chart-card:where(.astro-qw5dklun) select:where(.astro-qw5dklun){font-family:var(--mono);font-size:.78rem;background:var(--bg);border:1px solid var(--border);color:var(--text-primary);border-radius:2px;padding:.4rem .65rem;margin-bottom:1rem;cursor:pointer}.chart-card:where(.astro-qw5dklun) select:where(.astro-qw5dklun):focus{outline:none;border-color:var(--accent)}.bar-row:where(.astro-qw5dklun){display:grid;grid-template-columns:11rem 1fr 3rem;align-items:center;gap:.6rem;padding:.3rem 0;font-size:.8rem;font-family:var(--sans);color:var(--text-secondary)}.bar-track:where(.astro-qw5dklun){height:10px;background:var(--bg);border:1px solid var(--border);overflow:hidden}.bar-fill:where(.astro-qw5dklun){height:100%}.bar-fill:where(.astro-qw5dklun).open{background:var(--accent)}.bar-fill:where(.astro-qw5dklun).closed{background:var(--text-muted)}.calc:where(.astro-qw5dklun){background:var(--bg-card);border:1px solid var(--border);padding:2rem;margin-bottom:3rem}.calc:where(.astro-qw5dklun) h2:where(.astro-qw5dklun){font-family:var(--serif);font-weight:400;font-size:1.8rem;line-height:1.2;color:var(--text-primary);margin-bottom:1.5rem}.calc-grid:where(.astro-qw5dklun){display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:1.25rem;margin-bottom:1.5rem}.calc-grid:where(.astro-qw5dklun) label:where(.astro-qw5dklun){font-family:var(--mono);font-size:.65rem;font-weight:500;letter-spacing:.15em;text-transform:uppercase;color:var(--text-muted);display:block;margin-bottom:.5rem}.calc-grid:where(.astro-qw5dklun) input:where(.astro-qw5dklun),.calc-grid:where(.astro-qw5dklun) select:where(.astro-qw5dklun){font-family:var(--sans);font-weight:300;font-size:.95rem;width:100%;background:var(--bg);border:1px solid var(--border);color:var(--text-primary);border-radius:2px;padding:.55rem .7rem}.calc-grid:where(.astro-qw5dklun) input:where(.astro-qw5dklun):focus,.calc-grid:where(.astro-qw5dklun) select:where(.astro-qw5dklun):focus{outline:none;border-color:var(--accent)}.calc-result:where(.astro-qw5dklun){background:var(--bg);border:1px solid var(--border);padding:1.25rem;font-family:var(--sans);font-weight:300;color:var(--text-secondary)}.calc-result:where(.astro-qw5dklun) strong:where(.astro-qw5dklun){font-family:var(--serif);font-weight:500;color:var(--accent);font-size:1.75rem}#compare-bar:where(.astro-qw5dklun){position:fixed;bottom:1.25rem;left:50%;transform:translate(-50%);background:var(--accent);color:var(--bg);padding:.75rem 1.5rem;border-radius:2px;font-family:var(--sans);font-weight:500;font-size:.85rem;letter-spacing:.05em;text-transform:uppercase;cursor:pointer;display:none;border:1px solid var(--accent);transition:all .3s ease}#compare-bar:where(.astro-qw5dklun):hover{background:var(--accent-hover)}#compare-drawer:where(.astro-qw5dklun){position:fixed;top:0;right:0;bottom:0;width:min(95%,720px);background:var(--bg);border-left:1px solid var(--border);padding:2rem;overflow-y:auto;transform:translate(100%);transition:transform .3s ease;z-index:110}#compare-drawer:where(.astro-qw5dklun).open{transform:translate(0)}#compare-drawer:where(.astro-qw5dklun) h2:where(.astro-qw5dklun){font-family:var(--serif);font-weight:400;font-size:2rem;color:var(--text-primary)}#compare-drawer:where(.astro-qw5dklun) .close:where(.astro-qw5dklun){float:right;background:none;border:none;color:var(--text-muted);font-size:1.75rem;cursor:pointer;line-height:1;transition:color .3s ease}#compare-drawer:where(.astro-qw5dklun) .close:where(.astro-qw5dklun):hover{color:var(--accent)}.compare-table:where(.astro-qw5dklun){width:100%;margin-top:1.5rem;border-collapse:collapse;font-size:.85rem;border:1px solid var(--border)}.compare-table:where(.astro-qw5dklun) th:where(.astro-qw5dklun),.compare-table:where(.astro-qw5dklun) td:where(.astro-qw5dklun){padding:.6rem .75rem;border-bottom:1px solid var(--border);text-align:left;font-family:var(--sans);font-weight:300}.compare-table:where(.astro-qw5dklun) th:where(.astro-qw5dklun){font-family:var(--mono);font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted);background:var(--bg-card)}.compare-table:where(.astro-qw5dklun) th:where(.astro-qw5dklun):first-child,.compare-table:where(.astro-qw5dklun) td:where(.astro-qw5dklun):first-child{color:var(--text-muted);font-weight:500}.prose:where(.astro-qw5dklun){max-width:760px;margin:4rem 0 5rem}.prose:where(.astro-qw5dklun) h2:where(.astro-qw5dklun){font-family:var(--serif);font-weight:400;font-size:clamp(1.8rem,3vw,2.4rem);line-height:1.2;letter-spacing:-.02em;color:var(--text-primary);margin:3rem 0 1rem}.prose:where(.astro-qw5dklun) h2:where(.astro-qw5dklun):first-child{margin-top:0}.prose:where(.astro-qw5dklun) h3:where(.astro-qw5dklun){font-family:var(--serif);font-weight:400;font-size:1.4rem;color:var(--text-primary);margin:2rem 0 .75rem}.prose:where(.astro-qw5dklun) p:where(.astro-qw5dklun){font-family:var(--sans);font-weight:300;color:var(--text-secondary);line-height:1.85;margin-bottom:1.25rem;font-size:1.02rem}.prose:where(.astro-qw5dklun) strong:where(.astro-qw5dklun){font-weight:500;color:var(--text-primary)}.prose:where(.astro-qw5dklun) a:where(.astro-qw5dklun){color:var(--accent)}.prose:where(.astro-qw5dklun) a:where(.astro-qw5dklun):hover{color:var(--accent-hover);text-decoration:underline;text-underline-offset:3px}footer:where(.astro-qw5dklun){border-top:1px solid var(--border);padding:2.5rem 0;font-family:var(--mono);font-size:.7rem;letter-spacing:.05em;color:var(--text-muted);text-align:center}footer:where(.astro-qw5dklun) a:where(.astro-qw5dklun){color:var(--text-muted)}footer:where(.astro-qw5dklun) a:where(.astro-qw5dklun):hover{color:var(--accent)}
