:root{color-scheme:light dark;--brand-navy: #16356a;--brand-navy-deep: #0f2851;--brand-teal: #1aa0a6;--brand-teal-soft: #e3f3f4;--accent: #16356a;--accent-hover: #0f2851;--accent-soft: #e7edf7;--bg: #f7f8fa;--bg-subtle: #f0f2f6;--surface: #ffffff;--surface-raised: #f6f8fb;--border: #e2e6ed;--border-input: #c0c5d0;--text: #1c1f24;--text-secondary: #4a4f59;--muted: #6c7280;--ok: #1d7a34;--ok-soft: #d3e8d6;--warn: #7a5d00;--warn-soft: #fff3cd;--danger: #b53a3a;--danger-soft: #fdecec;--neutral-soft: #eef1f6;--radius: 8px;--radius-sm: 5px;--shadow: 0 4px 18px rgba(15, 17, 22, .1);--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-6: 1.5rem;--tap: 44px;--font-ui: -apple-system, "Segoe UI", system-ui, sans-serif;--font-mono: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;--chart-surface: var(--surface);--chart-grid: var(--border);--chart-axis: var(--border-input);--chart-text: var(--muted);--chart-sat: var(--brand-navy);--chart-rh: var(--brand-teal);--chart-rh-label: color-mix(in srgb, var(--brand-teal) 70%, var(--text));--chart-h: var(--muted);--chart-wb: color-mix(in srgb, var(--brand-navy) 55%, var(--surface));--chart-process: var(--danger);--chart-process-soft: var(--danger-soft);--chart-explore: var(--brand-navy);--chart-comfort-fill: var(--accent-soft);--chart-comfort-stroke: color-mix(in srgb, var(--brand-navy) 60%, var(--surface));--chart-halo: var(--surface);--chart-bins: color-mix(in srgb, var(--brand-navy) 45%, var(--surface));--chart-marker: var(--brand-teal);--chart-q: var(--muted);--chart-q-label: var(--text-secondary)}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--brand-navy: #2c4f8a;--brand-navy-deep: #1a3a6b;--brand-teal: #3fc5cb;--brand-teal-soft: #123234;--accent: #6f9be6;--accent-hover: #8bb0ee;--accent-soft: #22304a;--bg: #15171c;--bg-subtle: #0f1116;--surface: #1c1f24;--surface-raised: #20242c;--border: #303440;--border-input: #3a3f4d;--text: #e8eaf0;--text-secondary: #c7c9d1;--muted: #8b91a0;--ok: #7fbf8a;--ok-soft: #24422a;--warn: #e8d48a;--warn-soft: #4a3d10;--danger: #e08a8a;--danger-soft: #46262a;--neutral-soft: #262b34;--shadow: 0 4px 18px rgba(0, 0, 0, .45);--chart-sat: var(--accent-hover);--chart-rh-label: color-mix(in srgb, var(--brand-teal) 80%, var(--text));--chart-wb: color-mix(in srgb, var(--accent) 55%, var(--surface));--chart-explore: var(--accent-hover);--chart-comfort-stroke: color-mix(in srgb, var(--accent) 60%, var(--surface));--chart-bins: color-mix(in srgb, var(--accent) 55%, var(--surface));--chart-marker: var(--brand-teal)}}:root[data-theme=dark]{--brand-navy: #2c4f8a;--brand-navy-deep: #1a3a6b;--brand-teal: #3fc5cb;--brand-teal-soft: #123234;--accent: #6f9be6;--accent-hover: #8bb0ee;--accent-soft: #22304a;--bg: #15171c;--bg-subtle: #0f1116;--surface: #1c1f24;--surface-raised: #20242c;--border: #303440;--border-input: #3a3f4d;--text: #e8eaf0;--text-secondary: #c7c9d1;--muted: #8b91a0;--ok: #7fbf8a;--ok-soft: #24422a;--warn: #e8d48a;--warn-soft: #4a3d10;--danger: #e08a8a;--danger-soft: #46262a;--neutral-soft: #262b34;--shadow: 0 4px 18px rgba(0, 0, 0, .45);--chart-sat: var(--accent-hover);--chart-rh-label: color-mix(in srgb, var(--brand-teal) 80%, var(--text));--chart-wb: color-mix(in srgb, var(--accent) 55%, var(--surface));--chart-explore: var(--accent-hover);--chart-comfort-stroke: color-mix(in srgb, var(--accent) 60%, var(--surface));--chart-bins: color-mix(in srgb, var(--accent) 55%, var(--surface));--chart-marker: var(--brand-teal)}*{box-sizing:border-box}[hidden]{display:none!important}html{height:100%}body{min-height:100%;margin:0;font-family:var(--font-ui);font-size:15px;line-height:1.45;background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased}h1,h2,h3,h4{margin:0;font-weight:600;line-height:1.25}h1{font-size:1.15rem}h2{font-size:1rem}h3{font-size:.85rem;color:var(--text-secondary);text-transform:none}p{margin:0 0 .6rem}a{color:var(--accent)}a:hover{color:var(--brand-teal)}.muted{color:var(--muted)}.hint{color:var(--muted);font-size:.8rem}.mono{font-family:var(--font-mono);font-variant-numeric:tabular-nums}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}input[type=number],input[type=text],select{background:var(--surface);color:inherit;border:1px solid var(--border-input);border-radius:var(--radius-sm);font:inherit;padding:.35rem .5rem}input[type=range]{width:100%;accent-color:var(--accent);margin:.3rem 0}.btn{font:inherit;cursor:pointer;border-radius:var(--radius-sm);border:1px solid transparent;transition:background .12s ease,border-color .12s ease,color .12s ease;color:inherit;background:transparent;padding:.45rem .9rem;font-size:.88rem;min-height:36px}.btn-primary{background:var(--accent);color:#fff}.btn-primary:hover{background:var(--accent-hover)}.btn-ghost{border-color:var(--border-input)}.btn-ghost:hover{background:var(--surface-raised);border-color:var(--accent)}.btn-sm{padding:.25rem .6rem;font-size:.8rem;min-height:30px;border-radius:4px}.btn:disabled{opacity:.5;cursor:default}.btn.is-active{background:var(--accent-soft);border-color:var(--accent);color:var(--accent)}.btn:focus-visible,a:focus-visible,[tabindex]:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.panel,.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1rem 1.1rem}.tag{display:inline-block;background:var(--neutral-soft);color:var(--muted);border-radius:10px;padding:.05rem .5rem;font-size:.72rem;letter-spacing:.01em}.tag.accent{background:var(--accent-soft);color:var(--accent)}.seg{display:inline-flex;border:1px solid var(--border-input);border-radius:var(--radius-sm);overflow:hidden}.seg .btn{border-radius:0;border:0;min-height:32px;padding:.3rem .7rem;font-size:.82rem}.seg .btn+.btn{border-left:1px solid var(--border-input)}.seg .btn.is-active{background:var(--accent);color:#fff}.field{display:block;margin-bottom:.75rem}.field-label{display:flex;justify-content:space-between;align-items:baseline;font-size:.8rem;color:var(--muted);margin-bottom:.15rem}.field-label strong{color:var(--text);font-weight:600;font-variant-numeric:tabular-nums}.field-row{display:flex;gap:.5rem;align-items:center}.field-row input[type=number]{width:5.5rem}table.data{width:100%;border-collapse:collapse;font-size:.8rem;font-variant-numeric:tabular-nums}table.data th,table.data td{padding:.35rem .4rem;text-align:right;border-bottom:1px solid var(--border);white-space:nowrap}table.data th{color:var(--muted);font-weight:500;font-size:.72rem}table.data th:first-child,table.data td:first-child,table.data th:nth-child(2),table.data td:nth-child(2){text-align:left}table.data tr.is-active td{background:var(--accent-soft)}table.data .n{display:inline-block;min-width:1.35rem;height:1.35rem;line-height:1.25rem;text-align:center;border-radius:50%;border:1.5px solid var(--chart-process);color:var(--chart-process);font-size:.7rem;font-weight:600;background:var(--chart-process-soft)}.props{list-style:none;margin:0;padding:0}.props li{display:flex;justify-content:space-between;align-items:baseline;padding:.35rem 0;border-bottom:1px solid var(--border);font-size:.85rem}.props li:last-child{border-bottom:0}.props .k{color:var(--muted)}.props .v{font-variant-numeric:tabular-nums;font-weight:600}.props .u{color:var(--muted);font-weight:400;margin-left:.25rem;font-size:.78rem}.takeaways{margin:.5rem 0 .9rem;padding:.6rem .8rem;background:var(--brand-teal-soft);border-radius:var(--radius-sm)}.takeaways h3{color:var(--brand-teal);font-size:.72rem;letter-spacing:.04em;text-transform:uppercase;margin-bottom:.3rem}.takeaways ul{margin:0;padding-left:1.1rem;font-size:.85rem}.takeaways li{margin:.15rem 0}.prose p{font-size:.86rem;color:var(--text-secondary)}.prose p strong{color:var(--text)}@media(prefers-reduced-motion:reduce){*{transition-duration:.01ms!important;animation-duration:.01ms!important}}.topnav{position:sticky;top:0;z-index:10;background:var(--brand-navy);color:#fff;border-bottom:1px solid var(--brand-navy-deep)}.topnav-inner{max-width:1240px;margin:0 auto;padding:.55rem 16px;display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.brand{display:flex;align-items:center;gap:.6rem;color:#fff;text-decoration:none}.brand img{width:30px;height:30px}.brand-name{font-weight:600;font-size:.95rem;letter-spacing:.01em}.brand-sub{font-size:.72rem;color:var(--brand-teal);font-weight:500}.nav-tabs{display:flex;gap:.25rem;margin-left:auto}.nav-tabs .btn{color:#fff;border-color:transparent;min-height:34px;font-size:.85rem}.nav-tabs .btn:hover{background:#ffffff14}.nav-tabs .btn.is-active{background:#ffffff24;border-color:#ffffff59;color:#fff}.theme-btn{color:#fff;border-color:#ffffff59;min-height:34px;padding:.3rem .6rem}main.app{max-width:1240px;margin:0 auto;padding:1.25rem 16px 2.5rem}.hero{margin-bottom:1.25rem}.hero h1{font-size:1.5rem;margin-bottom:.25rem}.hero p{color:var(--text-secondary);max-width:62ch;font-size:.95rem}.grid{display:grid;grid-template-columns:380px minmax(0,1fr);gap:1.25rem;align-items:start}@media(max-width:1080px){.grid{grid-template-columns:1fr}}.stack>*+*{margin-top:1rem}.panel h2{margin-bottom:.75rem}.panel-head{display:flex;align-items:baseline;justify-content:space-between;gap:.5rem;margin-bottom:.75rem}.panel-head h2{margin:0}.field input[type=number],.field input[type=text],.field input[type=email],.field input[type=tel],.field select,.field textarea{width:100%}input[type=email],input[type=tel],textarea{background:var(--surface);color:inherit;border:1px solid var(--border-input);border-radius:var(--radius-sm);font:inherit;padding:.35rem .5rem}textarea{min-height:5.5rem;resize:vertical}input:focus-visible,textarea:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:.5rem .75rem}@media(max-width:420px){.two-col{grid-template-columns:1fr}}.unit{color:var(--muted);font-size:.78rem;margin-left:.3rem}.inline-note{font-size:.78rem;color:var(--muted);margin-top:.25rem}.toggles{display:flex;flex-wrap:wrap;gap:.4rem}.toggle{display:inline-flex;align-items:center;gap:.35rem;font-size:.82rem;padding:.25rem .55rem;border:1px solid var(--border-input);border-radius:999px;cursor:pointer;background:var(--surface)}.toggle input{margin:0;accent-color:var(--accent)}.toggle.is-on{border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}.toggle select{font-size:.8rem;padding:.1rem .3rem;border:0;background:transparent;color:inherit}.peer-badge{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;margin-top:.75rem;font-size:.84rem}.callout{padding:.6rem .8rem;border-radius:var(--radius-sm);font-size:.84rem;border:1px solid transparent}.callout.warn{background:var(--warn-soft);border-color:color-mix(in srgb,var(--warn) 35%,transparent);color:var(--text)}.callout.danger{background:var(--danger-soft);color:var(--text)}.callout.ok{background:var(--ok-soft);color:var(--text)}.callout.info{background:var(--accent-soft);color:var(--text)}.callout .btn{margin-left:.5rem}.headline{display:flex;flex-wrap:wrap;align-items:baseline;gap:.5rem 1rem;margin-bottom:.5rem}.headline .big{font-size:2.4rem;font-weight:700;line-height:1;font-variant-numeric:tabular-nums}.headline .big small{font-size:1rem;font-weight:500;color:var(--muted);margin-left:.25rem}.pill{display:inline-block;padding:.2rem .65rem;border-radius:999px;font-size:.8rem;font-weight:600}.pill.ok{background:var(--ok-soft);color:var(--ok)}.pill.warn{background:var(--warn-soft);color:var(--warn)}.pill.danger{background:var(--danger-soft);color:var(--danger)}.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:.6rem;margin:.75rem 0}.stat{background:var(--surface-raised);border:1px solid var(--border);border-radius:var(--radius-sm);padding:.55rem .7rem}.stat .k{font-size:.72rem;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}.stat .v{font-size:1.15rem;font-weight:600;font-variant-numeric:tabular-nums}.stat .v small{font-size:.75rem;color:var(--muted);font-weight:400;margin-left:.2rem}.empty{color:var(--muted);padding:2rem 1rem;text-align:center}.skeleton{height:8rem;border-radius:var(--radius);background:linear-gradient(90deg,var(--surface-raised),var(--neutral-soft),var(--surface-raised));background-size:200% 100%;animation:shimmer 1.4s infinite}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.table-wrap{overflow-x:auto}table.data th button{all:unset;cursor:pointer}table.data th button:hover{color:var(--text)}table.data th button:focus-visible{outline:2px solid var(--accent)}table.data tr.tier-poor td{background:var(--danger-soft)}table.data tr.tier-below td{background:color-mix(in srgb,var(--warn-soft) 55%,transparent)}table.data td.err{color:var(--danger);white-space:normal}table.data td:nth-child(2),table.data td:nth-child(3){white-space:normal;min-width:7rem}table.data .pill{white-space:nowrap;font-size:.72rem;padding:.1rem .5rem}.errors{margin:.5rem 0 0;padding-left:1.1rem;font-size:.82rem;color:var(--danger)}.file-row{display:flex;gap:.5rem;align-items:center;flex-wrap:wrap}.cta{border:1px solid var(--brand-teal);background:color-mix(in srgb,var(--brand-teal-soft) 60%,var(--surface))}.cta h2{font-size:1.15rem}.services{display:grid;grid-template-columns:1fr 1fr;gap:.75rem;margin:.75rem 0 1rem}@media(max-width:640px){.services{grid-template-columns:1fr}}.service{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:.85rem 1rem}.service.is-primary{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-soft)}.service h3{font-size:.95rem;color:var(--text);margin-bottom:.2rem}.service .tag{margin-bottom:.4rem}.service p{font-size:.84rem;color:var(--text-secondary)}.service .fit{font-size:.78rem;color:var(--muted);font-style:italic}.lead-form .field{margin-bottom:.6rem}.lead-actions{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap;margin-top:.5rem}.privacy{font-size:.75rem;color:var(--muted)}.hp{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}.prose{max-width:72ch}.prose h2{margin:1.25rem 0 .5rem}.prose h3{margin:.9rem 0 .3rem;color:var(--text)}.prose ul{padding-left:1.2rem}.prose li{margin:.25rem 0;font-size:.9rem;color:var(--text-secondary)}.prose p{font-size:.92rem}footer.site{max-width:1240px;margin:0 auto;padding:1.25rem 16px 2rem;display:flex;align-items:center;gap:1rem;flex-wrap:wrap;color:var(--muted);font-size:.8rem;border-top:1px solid var(--border)}footer.site img{height:28px}footer.site a{color:inherit}.print-only{display:none}@media print{.topnav,.hero,.cta,footer.site,.no-print,.grid>.stack:first-child,.chart-legend,.callout.warn .btn{display:none!important}.print-only{display:block}main.app{padding:0;max-width:none}.grid{display:block}.panel{border:0;padding:0;box-shadow:none;page-break-inside:avoid}body{background:#fff;color:#000;font-size:12px}.stat{border:1px solid #ccc;background:#fff}.print-header{display:flex;align-items:center;gap:.75rem;border-bottom:2px solid #16356a;padding-bottom:.5rem;margin-bottom:.75rem}.print-header img{height:36px}.print-header .t{font-weight:700;font-size:1rem;color:#16356a}.print-header .d{margin-left:auto;font-size:.75rem;color:#555}.print-footer{margin-top:1rem;border-top:1px solid #ccc;padding-top:.4rem;font-size:.7rem;color:#555}}.chart{width:100%;display:block;overflow:visible}.chart .bin{fill:var(--chart-bins)}.chart .bin.is-user{fill:var(--chart-marker)}.chart .axis{stroke:var(--chart-axis);stroke-width:1}.chart .tick{fill:var(--chart-text);font-size:11px;font-family:var(--font-ui)}.chart .q{stroke:var(--chart-q);stroke-width:1;stroke-dasharray:3 3}.chart .q-label{fill:var(--chart-q-label);font-size:10.5px;font-family:var(--font-ui)}.chart .marker{stroke:var(--chart-marker);stroke-width:2.5}.chart .marker-label{fill:var(--chart-marker);font-size:12px;font-weight:600;font-family:var(--font-ui)}.chart .marker-halo{stroke:var(--chart-halo);stroke-width:4;fill:none}.chart .overflow{fill:var(--chart-text);font-size:10.5px;font-family:var(--font-ui)}.chart-legend{display:flex;gap:1rem;flex-wrap:wrap;font-size:.76rem;color:var(--muted);margin-top:.35rem}.chart-legend .sw{display:inline-block;width:12px;height:12px;border-radius:2px;vertical-align:-2px;margin-right:.3rem}.chart-legend .sw.bins{background:var(--chart-bins)}.chart-legend .sw.marker{background:var(--chart-marker)}.chart-legend .sw.q{background:transparent;border-top:2px dashed var(--chart-q);height:0;vertical-align:3px}.strip{width:100%;display:block}.strip .dot{fill:var(--chart-bins)}.strip .dot.tier-poor{fill:var(--danger)}.strip .dot.tier-below{fill:var(--warn)}.strip .dot.tier-good,.strip .dot.tier-top{fill:var(--ok)}
