.cc-root{--cc-font-family:system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--cc-heading-font-family:var(--cc-font-family);--cc-font-size:16px;--cc-heading-weight:650;--cc-color-primary:#1f6feb;--cc-color-primary-hover:#1a5fd0;--cc-color-on-primary:#fff;--cc-color-bg:transparent;--cc-color-surface:#fff;--cc-color-surface-alt:#f5f7fa;--cc-color-border:#d8dee6;--cc-color-text:#1c232b;--cc-color-text-muted:#5b6672;--cc-color-success:#1a7f37;--cc-color-error:#c9354d;--cc-radius:12px;--cc-radius-button:10px;--cc-border-width:1px;--cc-shadow:0 1px 3px #0f172a14;--cc-shadow-hover:none;--cc-button-font-size:inherit;--cc-button-weight:600;--cc-button-transform:none;--cc-button-letter-spacing:0;--cc-space:8px;--cc-max-width:640px;--cc-focus-ring:0 0 0 3px color-mix(in srgb, var(--cc-color-primary) 30%, transparent);font-family:var(--cc-font-family);font-size:var(--cc-font-size);color:var(--cc-color-text);background:var(--cc-color-bg);max-width:var(--cc-max-width);padding:calc(var(--cc-space) * 2);box-sizing:border-box;margin:0 auto;line-height:1.5}.cc-root *,.cc-root :before,.cc-root :after{box-sizing:border-box}.cc-progress{align-items:center;gap:calc(var(--cc-space) * 1.5);margin-bottom:calc(var(--cc-space) * 3);display:flex}.cc-progress-track{background:var(--cc-color-surface-alt);border-radius:999px;flex:1;height:6px;overflow:hidden}.cc-progress-fill{background:var(--cc-color-primary);border-radius:999px;height:100%;transition:width .35s}.cc-progress-label{color:var(--cc-color-text-muted);white-space:nowrap;font-size:.8125rem}.cc-step-title{font-family:var(--cc-heading-font-family);font-weight:var(--cc-heading-weight);margin:0 0 calc(var(--cc-space) * .75);font-size:1.375rem}.cc-step-hint{color:var(--cc-color-text-muted);margin:0 0 calc(var(--cc-space) * 2.5);font-size:.9375rem}.cc-options{gap:calc(var(--cc-space) * 1.5);margin-bottom:calc(var(--cc-space) * 3);grid-template-columns:repeat(auto-fill,minmax(150px,1fr));display:grid}.cc-option{align-items:center;gap:var(--cc-space);padding:calc(var(--cc-space) * 2);background:var(--cc-color-surface);border:var(--cc-border-width) solid var(--cc-color-border);border-radius:var(--cc-radius);box-shadow:var(--cc-shadow);cursor:pointer;text-align:center;font:inherit;color:inherit;flex-direction:column;transition:border-color .15s,box-shadow .15s,transform .15s;display:flex}.cc-option:hover{border-color:var(--cc-color-primary);transform:translateY(-1px)}.cc-option:focus-visible{box-shadow:var(--cc-focus-ring);outline:none}.cc-option[aria-pressed=true]{border-color:var(--cc-color-primary);box-shadow:inset 0 0 0 1px var(--cc-color-primary), var(--cc-shadow);background:color-mix(in srgb, var(--cc-color-primary) 6%, var(--cc-color-surface))}.cc-option-icon{font-size:1.75rem;line-height:1}.cc-option-label{font-size:.9375rem;font-weight:600}.cc-option-sub{color:var(--cc-color-text-muted);font-size:.8125rem}.cc-field{margin-bottom:calc(var(--cc-space) * 2.5)}.cc-label{margin-bottom:calc(var(--cc-space) * .75);font-size:.9375rem;font-weight:600;display:block}.cc-input,.cc-select{width:100%;padding:calc(var(--cc-space) * 1.5) calc(var(--cc-space) * 1.75);font:inherit;color:var(--cc-color-text);background:var(--cc-color-surface);border:var(--cc-border-width) solid var(--cc-color-border);border-radius:var(--cc-radius);transition:border-color .15s,box-shadow .15s}.cc-input:focus,.cc-select:focus{border-color:var(--cc-color-primary);box-shadow:var(--cc-focus-ring);outline:none}.cc-input::placeholder{color:var(--cc-color-text-muted)}.cc-input[aria-invalid=true]{border-color:var(--cc-color-error)}.cc-field-row{gap:calc(var(--cc-space) * 1.5);grid-template-columns:1fr 1fr;display:grid}.cc-nav{justify-content:space-between;align-items:center;gap:calc(var(--cc-space) * 1.5);margin-top:calc(var(--cc-space) * 3);display:flex}.cc-btn{font:inherit;font-size:var(--cc-button-font-size);font-weight:var(--cc-button-weight);text-transform:var(--cc-button-transform);letter-spacing:var(--cc-button-letter-spacing);padding:calc(var(--cc-space) * 1.5) calc(var(--cc-space) * 3);border-radius:var(--cc-radius-button);border:var(--cc-border-width) solid transparent;cursor:pointer;transition:background .15s,border-color .15s,transform .1s}.cc-btn:focus-visible{box-shadow:var(--cc-focus-ring);outline:none}.cc-btn:hover:not(:disabled){box-shadow:var(--cc-shadow-hover)}.cc-btn:active{transform:translateY(1px)}.cc-btn:disabled{opacity:.55;cursor:default;transform:none}.cc-btn-primary{background:var(--cc-color-primary);color:var(--cc-color-on-primary)}.cc-btn-primary:hover{background:var(--cc-color-primary-hover)}.cc-btn-ghost{color:var(--cc-color-text-muted);border-color:var(--cc-color-border);background:0 0}.cc-btn-ghost:hover{color:var(--cc-color-text);border-color:var(--cc-color-text-muted)}.cc-result{text-align:center;padding:calc(var(--cc-space) * 2) 0}.cc-result-eyebrow{letter-spacing:.06em;text-transform:uppercase;color:var(--cc-color-text-muted);margin:0 0 var(--cc-space);font-size:.875rem;font-weight:600}.cc-price{font-family:var(--cc-heading-font-family);font-weight:var(--cc-heading-weight);color:var(--cc-color-primary);margin:0 0 var(--cc-space);font-size:2.75rem}.cc-result-summary{color:var(--cc-color-text-muted);margin:0 auto calc(var(--cc-space) * 2.5);max-width:42ch;font-size:.9375rem}.cc-disclaimer{color:var(--cc-color-text-muted);border-top:var(--cc-border-width) solid var(--cc-color-border);padding-top:calc(var(--cc-space) * 2);margin-top:calc(var(--cc-space) * 3);font-size:.8125rem}.cc-placeholder{padding:calc(var(--cc-space) * 4) calc(var(--cc-space) * 2);border:var(--cc-border-width) dashed var(--cc-color-border);border-radius:var(--cc-radius);background:var(--cc-color-surface-alt);color:var(--cc-color-text-muted);text-align:center;font-size:.9375rem}.cc-error-text{color:var(--cc-color-error);margin-top:calc(var(--cc-space) * .5);font-size:.8125rem}.cc-success-text{color:var(--cc-color-success)}.cc-hidden{display:none!important}@media (max-width:480px){.cc-root{padding:calc(var(--cc-space) * 1.5)}.cc-options{grid-template-columns:repeat(auto-fill,minmax(130px,1fr))}.cc-field-row{grid-template-columns:1fr}.cc-nav{flex-direction:column-reverse;align-items:stretch}.cc-nav .cc-btn{width:100%}}
