:root{--bg:#f6f8fb;--surface:#ffffff;--panel:#f9fbfe;--ink:#172033;--ink-2:#3a4459;--muted:#5a6478;--line:#e3e8f0;--line-strong:#c9d2df;--accent:#2457d6;--accent-bg:#eaf0fc;--accent-line:#c6d5f5;--accent-dark:#1a3f9c;--green:#17603b;--green-bg:#e7f4ec;--orange:#9a4a00;--orange-bg:#fff4e8;--orange-line:#f3d3ae;--campaign:#9db6f2;--renewal:#2457d6;--unknown:repeating-linear-gradient(45deg,#d98a3f,#d98a3f 4px,#fbe3c9 0,#fbe3c9 8px);--radius:12px;--radius-btn:10px}*{box-sizing:border-box}body,html{margin:0;padding:0}body{font-family:Instrument Sans,system-ui,-apple-system,Segoe UI,sans-serif;background:var(--bg);color:var(--ink);font-size:16px;line-height:1.45;-webkit-font-smoothing:antialiased}a{color:var(--accent)}a:hover{color:var(--accent-dark)}button,input,select,textarea{font-family:inherit;font-size:16px;color:inherit}:focus-visible{outline:3px solid var(--accent);outline-offset:2px}h1,h2,h3,h4{margin:0;line-height:1.2;letter-spacing:-.01em}h1{font-size:clamp(28px,4vw,42px);letter-spacing:-.02em}h2{font-size:clamp(22px,2.6vw,30px)}h3{font-size:20px}ol,p,ul{margin:0}.wrap{width:100%;max-width:1272px;margin:0 auto;padding:0 16px}.stack{display:flex;flex-direction:column}.gap-4{gap:4px}.gap-6{gap:6px}.gap-8{gap:8px}.gap-10{gap:10px}.gap-12{gap:12px}.gap-14{gap:14px}.gap-16{gap:16px}.gap-20{gap:20px}.gap-28{gap:28px}.gap-40{gap:40px}.row{display:flex;flex-wrap:wrap;align-items:center;gap:12px}.between{justify-content:space-between}.section{padding-top:28px;padding-bottom:28px}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius)}.card-pad{padding:20px}.muted{color:var(--muted)}.ink-2{color:var(--ink-2)}.small{font-size:14px}.tiny{font-size:12.5px}.eyebrow{font-size:13px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--muted)}.num{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.site-header{background:var(--surface);border-bottom:1px solid var(--line)}.site-header .bar{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:68px}.wordmark{display:inline-flex;align-items:center;text-decoration:none}.logo{height:28px}.footer-mark,.logo{display:block;width:auto}.footer-mark{height:22px}.nav{display:none;gap:4px}.nav,.nav a{align-items:center}.nav a{display:inline-flex;min-height:44px;padding:0 14px;border-radius:8px;text-decoration:none;color:var(--ink);font-size:15px;font-weight:600}.nav a[aria-current=page]{background:var(--accent-bg);color:var(--accent-dark)}.nav-toggle{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border:1px solid var(--line);border-radius:10px;background:var(--surface);cursor:pointer}.mobile-nav{display:flex;flex-direction:column;border-top:1px solid var(--line);padding-bottom:8px}.mobile-nav a{display:flex;align-items:center;min-height:48px;border-bottom:1px solid var(--line);text-decoration:none;font-size:16px;font-weight:600;color:var(--ink)}.demo-badge{padding:6px 10px;border-radius:6px;background:var(--orange-bg);color:var(--orange);font-size:13px;font-weight:600}.site-footer{border-top:1px solid var(--line);background:var(--surface);margin-top:40px}.site-footer .bar{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px 24px;padding:24px 0;font-size:14px;color:var(--muted)}.site-footer nav{display:flex;flex-wrap:wrap;gap:6px 20px}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 20px;border-radius:var(--radius-btn);border:1px solid transparent;font-size:15px;font-weight:700;text-decoration:none;cursor:pointer;text-align:center}.btn-primary{background:var(--accent);color:#fff}.btn-primary:hover{color:#fff}.btn-secondary{background:var(--surface);border-color:var(--line-strong)}.btn-secondary,.btn-secondary:hover{color:var(--ink)}.btn-small{padding:0 14px}.btn-ghost,.btn-small{min-height:44px;font-size:14px;font-weight:600}.btn-ghost{display:inline-flex;align-items:center;padding:0 10px;border:0;border-radius:6px;background:transparent;color:var(--accent);text-decoration:none;cursor:pointer;text-align:left}.btn-ghost[disabled],.btn[disabled]{opacity:.45;cursor:not-allowed}.seg{display:grid;grid-gap:4px;gap:4px;padding:4px;background:#f1f4f9;border:1px solid var(--line);border-radius:var(--radius-btn)}.seg button{min-height:42px;padding:0 8px;border:0;border-radius:7px;background:transparent;color:var(--muted);font-size:14px;font-weight:600;cursor:pointer;white-space:nowrap}.seg button[aria-pressed=true]{background:var(--surface);color:var(--ink);box-shadow:0 1px 2px rgba(23,32,51,.16)}.chips{display:flex;flex-wrap:wrap;gap:8px}.chip{min-height:44px;padding:0 18px;border-radius:999px;border:1px solid var(--line-strong);background:var(--surface);color:var(--ink);font-size:15px;font-weight:600;cursor:pointer;white-space:nowrap}.chip[aria-pressed=true]{background:var(--ink);border-color:var(--ink);color:#fff}.pill{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 14px 0 10px;border-radius:999px;border:1px solid var(--line-strong);background:var(--surface);font-size:14px;font-weight:600;cursor:pointer}.check input,.pill input{width:18px;height:18px;margin:0;flex-shrink:0;accent-color:var(--accent)}.tag{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:999px;font-size:13px;font-weight:700}.tag-green{background:var(--green-bg);color:var(--green)}.tag-accent{background:var(--accent-bg);color:var(--accent-dark)}.tag-orange{background:var(--orange-bg);color:var(--orange)}.note{display:flex;gap:10px;align-items:flex-start;padding:12px 16px;border-radius:var(--radius);background:var(--surface);border:1px solid var(--line);font-size:14px;color:var(--ink-2)}.note-warn{background:var(--orange-bg);border-color:var(--orange-line);color:var(--ink)}.feature-list,.plain-list{list-style:none;padding:0;display:flex;flex-direction:column;gap:6px}.feature-inline{list-style:none;padding:0;display:flex;flex-wrap:wrap;gap:6px 16px;font-size:14px}.feature-inline li,.feature-list li{display:flex;align-items:flex-start;gap:6px}.result{display:grid;grid-gap:20px;gap:20px;padding:20px}.result .price-block{display:flex;flex-direction:column;gap:10px}.total{font-size:30px;font-weight:700;line-height:1.12}.total-unknown{font-size:19px;font-weight:700;color:var(--orange)}.panel{border-top:1px solid var(--line);padding:16px 20px;background:var(--panel)}.dl{margin:0;display:grid;grid-template-columns:auto minmax(0,1fr);grid-gap:6px 14px;gap:6px 14px;font-size:14px}.dl dt{color:var(--muted)}.dl dd{margin:0}.timeline{display:flex;height:18px;border-radius:5px;overflow:hidden;background:var(--bg)}.timeline span{height:100%;box-shadow:inset -2px 0 0 var(--surface)}.grid-2,.grid-3,.grid-4{display:grid;grid-gap:16px;gap:16px;grid-template-columns:minmax(0,1fr)}.table{display:flex;flex-direction:column;overflow:hidden}.table .tr{display:grid;grid-gap:8px 16px;gap:8px 16px;padding:12px 20px;border-bottom:1px solid var(--line)}.cta-row>.btn{flex:1 1 200px}.table .head{background:var(--panel)}.table .head,.table .rowhead{font-weight:700;font-size:14px}.table .rowhead{color:var(--ink-2)}.unknown-value{color:var(--orange);font-weight:600}.option{display:flex;gap:12px;align-items:flex-start;min-height:56px;padding:14px 16px;border-radius:var(--radius-btn);border:1px solid var(--line-strong);background:var(--surface);cursor:pointer}.option input{width:20px;height:20px;margin:1px 0 0;flex-shrink:0;accent-color:var(--accent)}.option[data-checked=true]{border-color:var(--accent);background:var(--accent-bg);box-shadow:inset 0 0 0 1px var(--accent)}.check{display:flex;gap:10px;align-items:flex-start;min-height:44px;cursor:pointer}.check input{width:20px;height:20px;margin:2px 0 0;flex-shrink:0}fieldset{border:0;margin:0;padding:0;display:flex;flex-direction:column;gap:10px;min-width:0}legend{padding:0;margin-bottom:8px;font-size:16px;font-weight:700}.field{display:flex;flex-direction:column;gap:6px}.field label{font-size:14px;font-weight:700}.input,input[type=date],input[type=email],input[type=number],input[type=password],input[type=text],input[type=url],select,textarea{min-height:46px;padding:10px 12px;border:1px solid var(--line-strong);border-radius:var(--radius-btn);background:var(--surface);width:100%}textarea{min-height:90px;line-height:1.5}.stepper{display:flex;align-items:center;gap:6px}.stepper button{width:44px;height:44px;border:1px solid var(--line-strong);border-radius:var(--radius-btn);background:var(--surface);font-size:22px;line-height:1;cursor:pointer}.stepper output{min-width:36px;text-align:center;font-size:18px;font-weight:700}.cost-layout,.guide-layout,.tool-layout{display:grid;grid-template-columns:minmax(0,1fr);grid-gap:20px;gap:20px;align-items:start}.only-desktop{display:none!important}.filters-panel{display:none}.filters-panel[data-open=true]{display:flex}.filters-toggle{display:flex;justify-content:space-between;width:100%}.result-actions .btn-ghost{justify-content:center;width:100%}.guide-main{order:-1}.step-label{display:none}.controls{display:grid;grid-template-columns:minmax(0,1fr);grid-gap:12px;gap:12px;width:100%}.rtable .tr{grid-template-columns:repeat(var(--cols),minmax(0,1fr))}.rtable .tr>:first-child{grid-column:1/-1}.rtable .head>:first-child{display:none}.sort-row{display:grid;grid-template-columns:minmax(0,1fr);grid-gap:10px;gap:10px}@media (min-width:640px) and (max-width:899px){.result{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px}.result .price-block{padding-left:24px;border-left:1px solid var(--line)}.result .result-actions{grid-column:1/-1;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));grid-gap:8px;gap:8px;align-items:center}.result .result-actions>:first-child{grid-column:span 4}.result .result-actions>:nth-child(n+2){grid-column:span 2}.controls{grid-template-columns:repeat(2,minmax(0,1fr))}}.admin-shell{display:grid;grid-gap:24px;gap:24px;grid-template-columns:minmax(0,1fr);padding:24px 0 64px}.admin-nav{display:flex;flex-wrap:wrap;gap:6px}.admin-nav a{display:inline-flex;align-items:center;min-height:44px;padding:0 14px;border-radius:8px;border:1px solid var(--line);text-decoration:none;font-weight:600;color:var(--ink)}.admin-nav a,.admin-table{background:var(--surface);font-size:15px}.admin-table{width:100%;border-collapse:collapse}.admin-table td,.admin-table th{text-align:left;padding:10px 12px;border-bottom:1px solid var(--line);vertical-align:top}.admin-table th{background:var(--panel);font-size:13px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.scroll-x{overflow-x:auto}.badge{display:inline-flex;padding:2px 8px;border-radius:999px;font-size:12.5px;font-weight:700}.skip-link{position:absolute;left:-9999px}.skip-link:focus{position:static;display:inline-block;padding:8px 12px}@media (min-width:900px){.wrap{padding:0 24px}.nav{display:flex}.logo{height:32px}.mobile-nav,.nav-toggle{display:none}.section{padding-top:36px;padding-bottom:36px}.card-pad{padding:24px}.table .tr{padding:12px 24px}.cta-row>.btn{flex:0 0 auto}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}.result{grid-template-columns:minmax(0,1.35fr) minmax(0,1fr) 220px;gap:28px;padding:24px}.result .price-block{padding-left:28px;border-left:1px solid var(--line)}.tool-layout{grid-template-columns:290px minmax(0,1fr);grid-gap:24px;gap:24px}.guide-layout,.tool-layout{display:grid;align-items:start}.guide-layout{grid-template-columns:320px minmax(0,1fr);grid-gap:32px;gap:32px}.cost-layout{display:grid;grid-template-columns:400px minmax(0,1fr);grid-gap:24px;gap:24px;align-items:start}.only-mobile{display:none!important}.only-desktop{display:flex!important}.filters-panel{display:flex}.guide-main{order:0}.step-label{display:inline}.controls{display:flex;flex-wrap:wrap;width:auto}.controls .seg{min-width:220px}.rtable .tr{grid-template-columns:var(--label,200px) repeat(var(--cols),minmax(0,1fr))}.rtable .tr>:first-child{grid-column:auto}.rtable .head>:first-child{display:block}.sort-row{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap}}.desktop-table{display:none}.mobile-table{display:flex}@media (min-width:900px){.desktop-table{display:flex}.mobile-only-pairs,.mobile-table{display:none}}.choice{display:flex;align-items:center;gap:12px;width:100%;min-height:58px;padding:14px 16px;border:1px solid var(--line-strong);border-radius:12px;background:var(--surface);color:var(--ink);text-align:left;cursor:pointer;transition:background .15s,border-color .15s,box-shadow .15s}.choice:hover{border-color:#9fb3dd}.choice[aria-pressed=true]{border-color:var(--accent);background:var(--accent-bg);box-shadow:inset 0 0 0 1px var(--accent)}.choice-dot{display:grid;place-items:center;width:22px;height:22px;flex-shrink:0;border:2px solid #aab5c6;border-radius:50%}.choice-dot.on{border-color:var(--accent);background:var(--accent)}.guide-back{gap:4px;margin-left:-10px;font-size:15px}.guide-back[disabled]{color:#aab2c0;opacity:1;cursor:default}.guide-bar{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));grid-gap:6px;gap:6px}.guide-bar span{position:relative;height:6px;overflow:hidden;border-radius:3px;background:var(--line)}.guide-bar i{position:absolute;inset:0 auto 0 0;background:var(--accent);transition:width .3s ease}.guide-in{animation:guide-in .28s ease}.guide-in-back{animation:guide-in-back .28s ease}@keyframes guide-in{0%{opacity:0;transform:translateX(18px)}to{opacity:1;transform:none}}@keyframes guide-in-back{0%{opacity:0;transform:translateX(-18px)}to{opacity:1;transform:none}}.guide-toast{position:fixed;left:50%;bottom:calc(16px + env(safe-area-inset-bottom, 0px));z-index:50;display:flex;align-items:center;justify-content:space-between;gap:12px;width:min(440px,calc(100% - 32px));padding:10px 10px 10px 16px;border-radius:12px;background:var(--ink);color:#fff;font-size:15px;box-shadow:0 10px 30px rgba(15,20,32,.3);transform:translateX(-50%);animation:guide-toast .25s ease}.guide-toast span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.guide-toast button{flex-shrink:0;min-height:40px;padding:0 16px;border:0;border-radius:8px;background:#fff;color:var(--ink);font-size:14px;font-weight:700;cursor:pointer}@keyframes guide-toast{0%{opacity:0;transform:translate(-50%,10px)}to{opacity:1;transform:translate(-50%)}}@media (prefers-reduced-motion:reduce){.guide-in,.guide-in-back,.guide-toast{animation:none}.choice,.guide-bar i{transition:none}}