.report-section{border:1px solid var(--border);border-radius:var(--border-radius-card);background:var(--card);transition:box-shadow var(--transition);overflow:hidden}.report-section:hover{box-shadow:var(--shadow)}.report-section-header{cursor:pointer;-webkit-user-select:none;user-select:none;transition:background var(--transition);align-items:center;gap:12px;padding:16px 18px;font-size:16px;font-weight:700;list-style:none;display:flex}.report-section-header::-webkit-details-marker{display:none}.report-section-header:hover{background:var(--card-muted)}.report-section-icon{color:var(--muted);transition:transform var(--transition);text-align:center;flex-shrink:0;width:16px;font-size:14px}.report-section[open] .report-section-icon{transform:rotate(90deg)}.report-section-title{flex:1}.report-section-toggle{background:var(--card-muted);border-radius:6px;flex-shrink:0;width:20px;height:20px;position:relative}.report-section-toggle:before,.report-section-toggle:after{content:"";background:var(--muted);transition:transform var(--transition),opacity var(--transition);position:absolute}.report-section-toggle:before{width:10px;height:2px;top:50%;left:50%;transform:translate(-50%,-50%)}.report-section-toggle:after{width:2px;height:10px;top:50%;left:50%;transform:translate(-50%,-50%)}.report-section[open] .report-section-toggle:after{opacity:0;transform:translate(-50%,-50%)rotate(90deg)}.report-section-content{padding:0 18px 18px;animation:.2s ease-out section-expand}@keyframes section-expand{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.report-section-content{animation:none}.report-section-icon,.report-section-toggle:before,.report-section-toggle:after{transition:none}}.report-section-content p{margin:0 0 12px;line-height:1.6}.report-section-content p:last-child{margin-bottom:0}.report-section-content ul{margin:0;padding-left:20px}.report-section-content li{margin-bottom:8px}.report-section-content li:last-child{margin-bottom:0}
.coli-comparison-bars{flex-direction:column;gap:16px;margin-top:16px;display:flex}.coli-legend{color:var(--muted);flex-wrap:wrap;gap:16px;font-size:13px;display:flex}.coli-legend-item{align-items:center;gap:6px;display:flex}.coli-legend-dot{border-radius:3px;width:12px;height:12px}.coli-legend-origin{background:var(--color-chart-bar-dark)}.coli-legend-destination{background:repeating-linear-gradient(45deg,var(--color-chart-bar-light),var(--color-chart-bar-light)2px,var(--color-chart-bar-lighter)2px,var(--color-chart-bar-lighter)4px)}.coli-legend-line{background:var(--muted);border-style:dashed;width:16px;height:2px}.coli-legend-baseline{margin-left:auto}.coli-legend-label{font-weight:500}.coli-categories-comparison{flex-direction:column;gap:14px;display:flex}.coli-category-row{flex-direction:column;gap:6px;display:flex}.coli-category-header{justify-content:space-between;align-items:center;display:flex}.coli-category-label{font-size:14px;font-weight:600}.coli-delta{border-radius:10px;padding:2px 8px;font-size:12px;font-weight:700}.coli-delta.delta-lower,.coli-delta.delta-higher{color:#374151;background:#6b728026}.coli-delta.delta-same{background:var(--card-muted);color:var(--muted)}.coli-bars-container{background:var(--card-muted);border:1px solid var(--border);box-sizing:border-box;border-radius:8px;flex-direction:column;gap:4px;width:100%;padding:8px 12px;display:flex;position:relative}.coli-baseline-marker{background:var(--muted);opacity:.4;z-index:1;border-radius:1px;width:2px;position:absolute;top:4px;bottom:4px}.coli-bar-wrapper{align-items:center;gap:8px;width:100%;height:18px;display:flex}.coli-bar{border-radius:4px;min-width:4px;height:100%;transition:width .15s ease-out}.coli-bar-origin{background:var(--color-chart-bar-dark)}.coli-bar-destination{background:repeating-linear-gradient(45deg,var(--color-chart-bar-light),var(--color-chart-bar-light)3px,var(--color-chart-bar-lighter)3px,var(--color-chart-bar-lighter)6px)}.coli-bar-lower{opacity:1}.coli-bar-higher{opacity:.85}.coli-bar-value{color:var(--muted);min-width:28px;font-size:12px;font-weight:600}.coli-note{margin-top:8px;font-size:13px}@media (max-width:640px){.coli-legend{flex-direction:column;gap:8px}.coli-legend-baseline{margin-left:0}.coli-category-label{font-size:13px}.coli-bars-container{width:100%}.coli-bar-wrapper{width:100%;height:14px}.coli-bar-value{font-size:11px}}
.timeline-projection{flex-direction:column;gap:12px;margin-top:16px;display:flex}.timeline-table-wrapper{border:1px solid var(--border);border-radius:10px;overflow-x:auto}.timeline-table{border-collapse:collapse;width:100%;font-size:14px}.timeline-table th,.timeline-table td{text-align:right;padding:12px 16px}.timeline-header-label{width:140px;text-align:left!important}.timeline-header{color:var(--muted);background:var(--card-muted);border-bottom:1px solid var(--border);font-size:13px;font-weight:600}.timeline-row{border-bottom:1px solid var(--border)}.timeline-row:last-child{border-bottom:none}.timeline-label{background:var(--card-muted);font-weight:600;text-align:left!important}.timeline-value{font-family:var(--font-sans);background:var(--card);font-weight:600}.timeline-note{margin-top:8px;font-size:13px}.timeline-empty-state,.timeline-preview{position:relative}.timeline-table-preview{opacity:.3;filter:blur(2px);-webkit-user-select:none;user-select:none;pointer-events:none}.timeline-row-preview{color:var(--muted)}.timeline-value-preview{font-weight:500}.timeline-preview-overlay{background:rgba(var(--background-rgb,255,255,255),.6);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);border-radius:10px;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.timeline-coming-soon{background:var(--card);border:2px solid var(--border);border-radius:var(--border-radius-card);box-shadow:var(--shadow);text-align:center;flex-direction:column;align-items:center;gap:8px;padding:24px 32px;display:flex}.timeline-coming-soon-icon{font-size:32px}.timeline-coming-soon-text{color:var(--color-info);font-size:18px;font-weight:700}.timeline-coming-soon-desc{max-width:280px;color:var(--muted);margin:4px 0 0;font-size:14px;line-height:1.5}.timeline-landscape-hint{background:var(--card);border:2px solid var(--border);border-radius:var(--border-radius-card);margin-bottom:16px;padding:24px 16px;display:none}.landscape-hint-content{text-align:center;flex-direction:column;align-items:center;gap:12px;display:flex}.landscape-hint-icon{line-height:1}.landscape-hint-text{color:var(--foreground);margin:0;font-size:14px;line-height:1.5}.landscape-hint-text strong{color:var(--color-info);margin-bottom:4px;font-size:16px;display:block}@media (max-width:640px){.timeline-table th,.timeline-table td{padding:10px 12px;font-size:13px}.timeline-header-label{width:100px}.timeline-coming-soon{padding:16px 20px}.timeline-coming-soon-icon{font-size:24px}.timeline-coming-soon-text{font-size:16px}.timeline-coming-soon-desc{max-width:200px;font-size:13px}}@media (max-width:768px) and (orientation:portrait){.timeline-landscape-hint{display:block}.timeline-table-wrapper,.timeline-note,.timeline-empty-state .timeline-preview{display:none}}@media print{.timeline-landscape-hint{display:none!important}.timeline-table-wrapper,.timeline-note,.timeline-empty-state .timeline-preview{display:block!important}}
.scenario-switcher{flex-wrap:wrap;gap:16px;margin-bottom:16px;display:flex}.scenario-switcher__fieldset{border:none;margin:0;padding:0}.scenario-switcher__legend{text-transform:uppercase;letter-spacing:.5px;color:var(--muted);margin-bottom:8px;font-size:12px;font-weight:600;display:block}.scenario-switcher__group{background:var(--card-muted);border-radius:8px;gap:2px;padding:3px;display:inline-flex}.scenario-switcher__option{cursor:pointer;transition:background var(--transition),color var(--transition);background:0 0;border-radius:6px;justify-content:center;align-items:center;padding:6px 14px;display:flex}.scenario-switcher__option:hover:not(.scenario-switcher__option--selected){background:var(--card)}.scenario-switcher__option--selected{background:var(--card);box-shadow:0 1px 3px #0000001a}.scenario-switcher__radio{opacity:0;width:0;height:0;position:absolute}.scenario-switcher__label{color:var(--text-secondary);white-space:nowrap;font-size:13px;font-weight:500}.scenario-switcher__option--selected .scenario-switcher__label{color:var(--text)}.scenario-switcher__fieldset:disabled .scenario-switcher__option{cursor:not-allowed;opacity:.6}.scenario-switcher__radio:focus-visible+.scenario-switcher__label{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}@media (max-width:480px){.scenario-switcher{flex-direction:column;gap:12px}.scenario-switcher__group{justify-content:stretch;width:100%}.scenario-switcher__option{flex:1}}
.break-even-analysis{background:var(--card-muted);border:1px solid var(--border);border-radius:8px;margin-top:20px;padding:16px}.break-even-analysis__title{color:var(--text);margin:0 0 16px;font-size:.875rem;font-weight:600}.break-even-analysis__grid{grid-template-columns:repeat(2,1fr);gap:12px;margin-bottom:16px;display:grid}.break-even-analysis__item{flex-direction:column;gap:4px;display:flex}.break-even-analysis__item--total{border-top:1px solid var(--border);grid-column:1/-1;margin-top:4px;padding-top:12px}.break-even-analysis__label{color:var(--muted);text-transform:uppercase;letter-spacing:.5px;font-size:.75rem}.break-even-analysis__subtitle{color:var(--muted);font-size:.75rem;line-height:1.3}.break-even-analysis__value{color:var(--text);font-size:1rem;font-weight:600}.break-even-analysis__value--savings{color:var(--text-secondary)}.break-even-analysis__value--positive{color:var(--color-success)}.break-even-analysis__value--negative{color:var(--color-warning)}.break-even-analysis__result{border-radius:6px;align-items:flex-start;gap:12px;padding:12px;display:flex}.break-even-analysis__result--positive{background:#10b9811a;border:1px solid #10b98133}.break-even-analysis__result--negative{background:#f59e0b1a;border:1px solid #f59e0b33}.break-even-analysis__result-icon{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;font-size:.875rem;font-weight:700;display:flex}.break-even-analysis__result--positive .break-even-analysis__result-icon{background:var(--color-success);color:#fff}.break-even-analysis__result--negative .break-even-analysis__result-icon{background:var(--color-warning);color:#fff}.break-even-analysis__result-text{flex-direction:column;gap:2px;display:flex}.break-even-analysis__result-headline{color:var(--text);font-size:.875rem;font-weight:600}.break-even-analysis__result-detail{color:var(--muted);font-size:.8125rem}@media (max-width:480px){.break-even-analysis__grid{grid-template-columns:1fr}.break-even-analysis__item--total{grid-column:1}}
.provenance-tooltip{display:inline-block;position:relative}.provenance-tooltip-button{cursor:pointer;color:var(--muted);opacity:.7;background:0 0;border:none;padding:0 4px;font-size:14px}.provenance-tooltip-button:hover{opacity:1}.provenance-tooltip-button:focus-visible{outline:2px solid var(--accent);outline-offset:2px;opacity:1}.provenance-tooltip-content{background-color:var(--card);border:1px solid var(--border);box-shadow:var(--shadow);white-space:nowrap;color:var(--text);border-radius:6px;padding:8px 12px 12px;font-size:13px}.provenance-tooltip-portal{z-index:var(--z-tooltip);transform:translate(-50%,-100%)translateY(-8px)}.provenance-tooltip-org{margin-bottom:4px;font-weight:600}.provenance-tooltip-version,.provenance-tooltip-region{color:var(--muted);margin-bottom:4px}.provenance-tooltip-link{color:var(--accent);text-decoration:underline}
.hover-tooltip{display:inline-block;position:relative}.hover-tooltip-trigger{font:inherit;color:inherit}.hover-tooltip-content-base{z-index:var(--z-tooltip)}
.lead-consent-section{flex-direction:column;gap:16px;display:flex}.lead-consent-intro-top{color:var(--muted,#6b7280);text-align:left;margin:0;font-size:16px;line-height:1.6}.lead-consent-intro-bottom{color:var(--muted,#6b7280);text-align:center;margin:0;font-size:16px;line-height:1.6}.lead-consent-partners{flex-direction:column;gap:12px;display:flex}.lead-consent-card{border-radius:var(--border-radius-card);border:1px solid var(--border,#64748b33);background:var(--card,#fff);transition:border-color var(--transition);cursor:pointer;align-items:flex-start;gap:14px;padding:14px 16px;display:flex}.lead-consent-card:has(.lead-consent-toggle:checked){background:#22c55e08;border-color:#22c55e66}.lead-consent-card-icon{background:#64748b14;border-radius:8px;flex-shrink:0;place-items:center;width:36px;height:36px;font-size:18px;display:grid}.lead-consent-card-body{flex:1;min-width:0}.lead-consent-card-header{justify-content:space-between;align-items:center;gap:12px;margin-bottom:4px;display:flex}.lead-consent-card-title{margin:0;font-size:15px;font-weight:600}.lead-consent-card-description{color:var(--muted,#6b7280);margin:0;font-size:13px;line-height:1.5}.lead-consent-toggle-wrapper{flex-shrink:0;align-items:center;display:inline-flex;position:relative}.lead-consent-toggle{appearance:none;border-radius:var(--border-radius-card);background:var(--border,#64748b4d);cursor:pointer;width:44px;height:24px;transition:background-color var(--transition);border:none;outline:none;position:relative}.lead-consent-toggle:after{content:"";width:20px;height:20px;transition:transform var(--transition);background:#fff;border-radius:50%;position:absolute;top:2px;left:2px;box-shadow:0 1px 3px #00000026}.lead-consent-toggle:checked{background:var(--color-viable,#22c55e)}.lead-consent-toggle:checked:after{transform:translate(20px)}.lead-consent-toggle:focus-visible{outline:2px solid var(--accent,#3a8fde);outline-offset:2px}.lead-consent-toggle:disabled{opacity:.5;cursor:not-allowed}.lead-consent-loading{border:2px solid #64748b33;border-top-color:var(--muted,#6b7280);border-radius:50%;width:16px;height:16px;margin-left:8px;animation:.6s linear infinite lead-consent-spin;display:inline-block}@keyframes lead-consent-spin{to{transform:rotate(360deg)}}.lead-consent-error{color:var(--color-error,#b91c1c);margin:0;font-size:13px}@media (max-width:640px){.lead-consent-card{flex-direction:column;gap:10px}.lead-consent-card-body{width:100%}.lead-consent-card-header{flex-wrap:wrap}}
.tax-comparison{flex-direction:column;gap:16px;display:flex}.tax-comparison-grid{grid-template-columns:1fr 1fr;gap:16px;display:grid}.tax-comparison-column{background:var(--card-muted);border:1px solid var(--border);border-radius:10px;padding:14px}.tax-comparison-column-header{margin:0 0 12px;font-size:15px;font-weight:700}.tax-breakdown-rows{flex-direction:column;gap:8px;display:flex}.tax-breakdown-row{justify-content:space-between;align-items:baseline;font-size:14px;line-height:1.5;display:flex}.tax-breakdown-label{color:var(--muted)}.tax-breakdown-value{text-align:right;font-weight:600}.tax-breakdown-row--note{flex-direction:column;gap:2px}.tax-breakdown-row--note .tax-breakdown-value{text-align:left;font-size:13px;font-style:italic;font-weight:400}.tax-savings-banner{border-radius:10px;justify-content:space-between;align-items:center;padding:12px 16px;font-size:14px;font-weight:600;display:flex}.tax-savings-banner--positive{background:var(--color-viable-bg);border:1px solid var(--color-viable-border);color:var(--color-viable)}.tax-savings-banner--negative{background:var(--color-caution-bg);border:1px solid var(--color-caution-border);color:var(--color-caution)}.tax-savings-banner--neutral{background:var(--color-neutral-bg);border:1px solid var(--color-neutral-border);color:var(--muted)}.visa-options{flex-direction:column;gap:16px;display:flex}.visa-options-heading{margin:0;font-size:16px;font-weight:700}.visa-cards{flex-direction:column;gap:12px;display:flex}.visa-card{background:var(--card-muted);border:1px solid var(--border);border-radius:10px;padding:14px}.visa-card-header{margin:0 0 8px;font-size:15px;font-weight:700}.visa-card-summary{color:var(--text);margin:0 0 12px;font-size:14px;line-height:1.6}.visa-card-details{grid-template-columns:1fr 1fr;gap:8px 16px;font-size:13px;display:grid}.visa-detail-item{flex-direction:column;gap:2px;display:flex}.visa-detail-label{color:var(--muted);text-transform:uppercase;letter-spacing:.02em;font-size:12px;font-weight:600}.visa-detail-value{font-weight:500}.visa-detail-item--full-width{grid-column:1/-1}.visa-source-link{color:var(--link);align-items:center;gap:4px;margin-top:10px;font-size:13px;text-decoration:none;display:inline-flex}.visa-source-link:hover{text-decoration:underline}@media (max-width:640px){.tax-comparison-grid,.visa-card-details{grid-template-columns:1fr}}
.report-header{text-align:left;background:var(--hero-illustration);border:1px solid var(--border);border-radius:16px;justify-content:flex-start;align-items:center;gap:28px;min-height:148px;padding:24px;display:flex}.report-header-main{text-align:left;flex-direction:column;flex:1;align-items:flex-start;gap:8px;min-width:0;display:flex}.report-title{margin:0;font-size:28px}.report-meta{color:var(--muted);flex-wrap:wrap;justify-content:flex-start;gap:16px;font-size:14px;display:flex}.report-route{font-weight:600}.report-footer{border-top:1px solid var(--border);text-align:center;margin-top:24px;padding-top:16px}.report-date{color:var(--muted);font-size:13px}.report-score-banner{flex-shrink:0;justify-content:flex-start;align-items:center;gap:0;padding:0;display:flex}.score-ring{appearance:none;background:var(--card);cursor:pointer;border-style:solid;border-width:10px;border-radius:50%;flex-shrink:0;place-items:center;width:100px;height:100px;margin:0;padding:0;display:grid}.score-ring:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.score-value{font-size:32px;font-weight:800;font-family:var(--font-sans)}.score-label{margin:0 0 4px;font-size:20px}.score-assessment{color:var(--muted);margin:0;font-size:16px;font-weight:600}.score-tooltip-content{background-color:var(--card);border:1px solid var(--border);box-shadow:var(--shadow);white-space:nowrap;color:var(--text);border-radius:6px;padding:8px 12px 12px;font-size:13px}.score-tooltip-portal{transform:translate(-50%,-100%)translateY(-8px)}.score-tooltip-title{margin:0 0 4px;font-size:14px;font-weight:600}.score-tooltip-assessment{color:var(--muted);margin:0;font-size:13px}
.report-sections{flex-direction:column;gap:12px;display:flex}.executive-assessment{margin-bottom:16px;font-size:16px;line-height:1.7}.executive-points{margin:0 0 16px;padding-left:20px}.executive-points li{margin-bottom:10px;line-height:1.6}.executive-callouts{flex-direction:column;gap:10px;margin-top:16px;display:flex}.callout{border-radius:10px;align-items:flex-start;gap:12px;padding:12px 16px;font-size:14px;line-height:1.5;display:flex}.callout-icon{border-radius:50%;flex-shrink:0;place-items:center;width:20px;height:20px;font-size:12px;font-weight:700;display:grid}.callout-positive{background:#22c55e1a;border:1px solid #22c55e4d}.callout-positive .callout-icon{background:var(--color-viable);color:#fff}.callout-attention{background:#d4b2001a;border:1px solid #d4b2004d}.callout-attention .callout-icon{background:var(--color-caution);color:#fff}.callout-info{background:#64748b1a;border:1px solid #64748b4d}.callout-info .callout-icon{background:var(--color-chart-bar);color:#fff}.renter-considerations{flex-direction:column;display:flex}.renter-info-box{align-items:flex-start}.renter-points{flex-direction:column;gap:8px;margin:0;padding-left:16px;display:flex}.renter-points li{line-height:1.5}.tax-visa-info-box{align-items:flex-start}.tax-visa-content{flex:1}.tax-visa-content h4{margin:0 0 12px;font-size:16px}.tax-visa-points{flex-direction:column;gap:8px;margin:0;padding-left:16px;display:flex}.tax-visa-points li{line-height:1.5}.visa-notes{border-top:1px solid #64748b33;margin-top:16px;padding-top:12px}.methodology-breakdown{flex-direction:column;gap:16px;margin-top:16px;display:flex}.methodology-item{background:var(--card-muted);border:1px solid var(--border);border-radius:10px;padding:14px}.methodology-header{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.methodology-name{font-weight:700}.methodology-score{font-family:var(--font-sans);background:var(--card);border:1px solid var(--border);border-radius:6px;padding:4px 10px;font-weight:700}.methodology-item p{margin:0;font-size:14px;line-height:1.5}.coli-breakdown{flex-direction:column;gap:16px;display:flex}.coli-comparison-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;display:grid}.coli-metric{background:var(--card-muted);border:1px solid var(--border);border-radius:10px;flex-direction:column;gap:4px;padding:14px;display:flex}.coli-metric-highlight{background:linear-gradient(135deg,#22c55e1a,#22c55e0d);border-color:#22c55e4d}.coli-metric-label{color:var(--muted);font-size:13px;font-weight:600}.coli-metric-value{font-size:24px;font-weight:700}.coli-metric-note{color:var(--muted);font-size:12px}.category-grid{flex-direction:column;gap:10px;display:flex}.category-bar-item{flex-direction:column;gap:4px;display:flex}.category-bar-header{justify-content:space-between;align-items:center;font-size:13px;display:flex}.category-bar-label{font-weight:600}.category-bar-value{color:var(--muted)}.category-bar-track{background:var(--card-muted);border-radius:4px;height:8px;display:flex;overflow:hidden}.category-bar-fill{border-radius:4px;height:100%;transition:width .3s ease-out}.category-bar-fill.lower{background:var(--color-viable)}.category-bar-fill.higher{background:var(--color-caution)}.category-bar-overflow{background:var(--color-concern);height:100%}.projection-loading-placeholder{border:1px dashed var(--border);border-radius:var(--border-radius-card);background:var(--card-muted);min-height:52px;color:var(--muted);align-items:center;margin:16px 0;padding:14px 16px;display:flex}
.financial-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;display:grid}.financial-item{background:var(--card-muted);border:1px solid var(--border);border-radius:10px;flex-direction:column;gap:4px;padding:12px;display:flex}.financial-item-highlight{background:linear-gradient(135deg,#4b55631a,#4b55630d);border-color:#4b55634d}.financial-label{color:var(--muted);font-size:13px;font-weight:600}.financial-value{font-size:20px;font-weight:700}.financial-bars{flex-direction:column;gap:10px;margin-top:16px;display:flex}.financial-bar-row{background:var(--card-muted);border:1px solid var(--border);border-radius:8px;grid-template-columns:minmax(140px,180px) 1fr minmax(100px,130px);align-items:center;gap:12px;padding:8px 12px;display:grid}.financial-bar-row-total{background:linear-gradient(135deg,#4b55631a,#4b55630d);border-color:#4b55634d;margin-top:4px}.financial-bar-label{font-size:14px;font-weight:600}.financial-bar-container{background:#8080801a;border-radius:4px;height:24px;overflow:hidden}.financial-bar{background:var(--color-chart-bar);border-radius:4px;height:100%;transition:width .4s ease-out}.financial-bar-total{background:var(--color-chart-bar-dark)}.financial-bar-value{font-family:var(--font-sans);text-align:right;font-size:15px;font-weight:700}.financial-bar-row-total .financial-bar-value{font-size:18px}.financial-starting-point{flex-direction:column;gap:12px;display:flex}.net-position-header{background:linear-gradient(135deg,#4b55631a,#4b55630d);border:1px solid #4b55634d;border-radius:8px;justify-content:space-between;align-items:baseline;padding:12px 16px;display:flex}.net-position-label{font-size:15px;font-weight:600}.net-position-value{font-family:var(--font-sans);font-size:22px;font-weight:800}.stacked-bar{background:#8080801a;border-radius:6px;height:28px;display:flex;overflow:hidden}.stacked-bar-segment{height:100%;transition:width .4s ease-out}.stacked-bar-liquid{background:var(--color-chart-bar-medium)}.stacked-bar-equity{background:var(--color-chart-bar-light)}.stacked-bar-legend{flex-wrap:wrap;gap:16px;margin-top:4px;display:flex}.legend-item{align-items:center;gap:8px;font-size:14px;display:flex}.legend-swatch{border-radius:3px;flex-shrink:0;width:14px;height:14px}.legend-swatch-liquid{background:var(--color-chart-bar-medium)}.legend-swatch-equity{background:var(--color-chart-bar-light)}.legend-label{color:var(--muted)}.legend-value{font-family:var(--font-sans);font-weight:600}.equity-explanation{margin-top:4px;font-size:13px}
.home-sale-breakdown{flex-direction:column;gap:12px;display:flex}.net-proceeds-header{background:linear-gradient(135deg,#4b55631a,#4b55630d);border:1px solid #4b55634d;border-radius:8px;justify-content:space-between;align-items:baseline;padding:12px 16px;display:flex}.net-proceeds-label{font-size:15px;font-weight:600}.net-proceeds-label-row{align-items:center;gap:8px;display:inline-flex}.estimated-indicator{color:#92400e;letter-spacing:.02em;background:#d977061f;border:1px solid #d9770673;border-radius:9999px;align-items:center;padding:2px 8px;font-size:12px;font-weight:700;display:inline-flex}.net-proceeds-value{font-family:var(--font-sans);font-size:22px;font-weight:800}.home-sale-bar{background:#8080801a;border-radius:6px;height:28px;display:flex;overflow:hidden}.home-sale-bar-segment{height:100%;transition:width .4s ease-out}.home-sale-bar-proceeds{background:var(--color-chart-bar-dark)}.home-sale-bar-mortgage{background:var(--color-chart-bar-light)}.home-sale-bar-closing{background:var(--color-chart-bar-lighter)}.home-sale-bar-agent-commission{background:#d97706}.home-sale-bar-transfer-taxes{background:#64748b}.home-sale-bar-capital-gains{background:repeating-linear-gradient(45deg,#4b5563,#4b5563 2px,#6b7280 2px 4px)}.home-sale-legend{flex-wrap:wrap;gap:16px;margin-top:4px;display:flex}.legend-swatch-proceeds{background:var(--color-chart-bar-dark)}.legend-swatch-mortgage{background:var(--color-chart-bar-light)}.legend-swatch-closing{background:var(--color-chart-bar-lighter)}.legend-swatch-agent-commission{background:#d97706}.legend-swatch-transfer-taxes{background:#64748b}.legend-swatch-capital-gains{background:repeating-linear-gradient(45deg,#4b5563,#4b5563 2px,#6b7280 2px 4px)}.home-sale-calculation{margin-top:4px;font-size:13px}.total-available-summary{background:var(--card-muted);border:1px solid var(--border);border-radius:8px;margin-top:8px;padding:14px 16px}.total-available-header{justify-content:space-between;align-items:baseline;display:flex}.total-available-label{font-size:14px;font-weight:600}.total-available-value{font-family:var(--font-sans);font-size:20px;font-weight:800}.total-available-note{margin-top:6px;font-size:13px}
.viability-report{flex-direction:column;gap:20px;display:flex}@media (max-width:640px){.report-header{text-align:center;flex-direction:column;gap:16px;min-height:0;padding:20px 16px;display:flex}.report-header-main{align-items:center;width:100%}.report-title{font-size:22px}.report-meta{flex-direction:column;justify-content:center;gap:8px}.report-score-banner{text-align:center;flex-direction:column;width:auto;padding:8px 0 0}.score-ring{border-width:8px;width:90px;height:90px}.score-value{font-size:28px}.financial-grid{grid-template-columns:1fr}.financial-bar-row{grid-template-columns:1fr;gap:8px}.financial-bar-container{height:20px}.financial-bar-value{text-align:left;font-size:14px}.financial-bar-row-total .financial-bar-value{font-size:16px}.net-position-header{flex-direction:column;align-items:flex-start;gap:4px}.net-position-value{font-size:20px}.stacked-bar{height:24px}.stacked-bar-legend{flex-direction:column;gap:8px}.legend-item{font-size:13px}.net-proceeds-header{flex-direction:column;align-items:flex-start;gap:4px}.net-proceeds-value{font-size:20px}.home-sale-bar{height:24px}.home-sale-legend{flex-direction:column;gap:8px}.total-available-header{flex-direction:column;align-items:flex-start;gap:4px}.total-available-value{font-size:18px}.coli-comparison-grid{grid-template-columns:1fr}}
.editable-report-title{flex-direction:column;align-items:center;gap:4px;display:flex}.editable-title-container{align-items:center;gap:8px;display:flex}.editable-title-button{cursor:pointer;font:inherit;color:inherit;background:0 0;border:none;border-radius:8px;align-items:center;gap:6px;margin:-4px -8px;padding:4px 8px;transition:background-color .15s;display:inline-flex}.editable-title-button:hover{background-color:var(--hover-bg,#0000000d)}.editable-title-button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.editable-title-text{font-weight:600}.editable-title-edit-icon{opacity:0;color:var(--muted);flex-shrink:0;transition:opacity .15s}.editable-title-button:hover .editable-title-edit-icon,.editable-title-button:focus-visible .editable-title-edit-icon{opacity:1}.editable-title-input{font:inherit;text-align:center;border:1px solid var(--accent);background:var(--card);border-radius:8px;min-width:200px;max-width:100%;margin:-4px -8px;padding:4px 8px;font-weight:600}.editable-title-input:focus{box-shadow:0 0 0 3px var(--accent-light,#3b82f633);outline:none}.editable-title-error{color:#b91c1c;margin:0;font-size:12px}.auto-save-status{white-space:nowrap;border-radius:999px;align-items:center;gap:4px;padding:2px 8px;font-size:12px;display:inline-flex}.auto-save-status-text{font-weight:500}.auto-save-status-saving{color:var(--muted);background:var(--hover-bg,#0000000d)}.auto-save-status-saved{color:#047857;background:#0478571a}.auto-save-status-error{color:#b91c1c;background:#b91c1c1a}.auto-save-icon{flex-shrink:0}.auto-save-spinner{animation:1s linear infinite spin}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (max-width:640px){.editable-title-input{min-width:150px}.auto-save-status-text{display:none}.auto-save-status{padding:2px 4px}}
.auto-save-report-wrapper{flex-direction:column;gap:20px;display:flex}
.waterfall-chart{flex-direction:column;gap:12px;margin:16px 0;display:flex}.waterfall-title{margin:0;font-size:15px;font-weight:600}.waterfall-bars{flex-direction:column;gap:10px;display:flex}.waterfall-row{background:var(--card-muted);border:1px solid var(--border);border-radius:8px;grid-template-columns:minmax(140px,200px) 1fr minmax(100px,130px);align-items:center;gap:12px;padding:8px 12px;display:grid}.waterfall-label{white-space:nowrap;text-overflow:ellipsis;font-size:14px;font-weight:600;overflow:hidden}.waterfall-bar-container{background:#8080801a;border-radius:4px;height:24px;position:relative;overflow:visible}.waterfall-bar{border-radius:4px;height:100%;transition:width .4s ease-out;position:absolute;top:0;left:0}.waterfall-bar-start,.waterfall-bar-subtract{background:var(--color-chart-bar)}.waterfall-bar-total{background:var(--color-chart-bar-dark)}.waterfall-connector{background:var(--border);height:2px;position:absolute;top:50%;left:0;transform:translateY(-50%)}.waterfall-value{font-family:var(--font-sans);text-align:right;font-size:15px;font-weight:700}.waterfall-row-start .waterfall-value{color:var(--foreground)}.waterfall-row-subtract{color:var(--muted)}.waterfall-row-subtract .waterfall-value{color:var(--color-text-strong)}.waterfall-row-total{background:linear-gradient(135deg,#64748b1a,#64748b0d);border-color:#64748b4d;margin-top:4px}.waterfall-row-total .waterfall-value{color:var(--color-text-total);font-size:18px}@media (max-width:640px){.waterfall-row{grid-template-columns:1fr;gap:8px}.waterfall-bar-container{height:20px}.waterfall-label{font-size:13px}.waterfall-value{text-align:left;font-size:14px}.waterfall-row-total .waterfall-value{font-size:16px}}
.modal-dialog{border-radius:var(--border-radius-card);background:var(--card);width:calc(100% - 32px);max-width:480px;color:var(--text);box-shadow:var(--shadow);border:none;margin:auto;padding:0}.modal-dialog::backdrop{background:#00000080}.modal-dialog-content{padding:24px}.modal-dialog-header{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.modal-dialog-header h2{margin:0;font-size:18px;font-weight:600}.modal-dialog-close{width:32px;height:32px;color:var(--muted);cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;padding:0;transition:background-color .15s,color .15s;display:flex}.modal-dialog-close:hover{background:var(--card-muted);color:var(--text)}.modal-dialog-body{min-height:80px}.modal-dialog-loading{flex-direction:column;align-items:center;gap:12px;padding:24px 0;display:flex}.modal-dialog-spinner{border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;width:32px;height:32px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.modal-dialog-loading p{color:var(--muted);margin:0}.modal-dialog-error{text-align:center;padding:16px 0}.modal-dialog-error .error-message{color:var(--color-error);margin:0 0 16px}.modal-dialog-actions{justify-content:flex-end;gap:8px;display:flex}.modal-dialog-success p{color:var(--text-secondary);margin:0 0 12px}.share-url-container{gap:8px;display:flex}.share-url-input{border:1px solid var(--border);background:var(--card-muted);color:var(--text);border-radius:6px;flex:1;min-width:0;padding:10px 12px;font-family:inherit;font-size:14px}.share-url-input:focus{border-color:var(--accent);outline:none;box-shadow:0 0 0 2px #2fd0b333}.share-copy-btn{white-space:nowrap;flex-shrink:0;align-items:center;gap:6px;display:inline-flex}.share-copy-btn.copied{background:var(--color-viable);border-color:var(--color-viable);color:#fff}@media (max-width:480px){.modal-dialog-content{padding:20px}.share-url-container{flex-direction:column}.share-copy-btn{justify-content:center}}
.report-actions h3{margin:0 0 16px;font-size:16px}.report-actions-toolbar{background:#64748b14;border:1px solid #64748b33;border-radius:8px;justify-content:flex-end;align-items:center;gap:.75rem;padding:.75rem 1rem;display:flex}.report-actions-toolbar .report-actions-buttons{flex-wrap:wrap;gap:.75rem;display:flex}.report-actions-buttons{flex-wrap:wrap;gap:12px;display:flex}.report-actions-buttons .btn{align-items:center;gap:8px;display:inline-flex}.report-action-icon{flex-shrink:0}.report-signin-prompt{text-align:center;margin-top:16px;font-size:.875rem}@media (max-width:640px){.report-actions-buttons{flex-direction:column}.report-actions-buttons .btn{justify-content:center}.report-actions-toolbar{flex-wrap:wrap}.report-actions-toolbar .report-actions-buttons{flex-direction:row;justify-content:center;width:100%}}
.sample-report-banner{background:#64748b1a;border:1px solid #64748b4d;border-radius:8px;justify-content:space-between;align-items:center;gap:1rem;padding:.875rem 1rem;display:flex}.sample-banner-content{align-items:flex-start;gap:.75rem;display:flex}.sample-banner-icon{background:var(--color-chart-bar);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:20px;height:20px;font-size:.75rem;font-style:italic;font-weight:600;display:flex}.sample-banner-text{flex-direction:column;gap:.125rem;display:flex}.sample-banner-text strong{color:var(--text);font-size:.875rem}.sample-banner-description{color:var(--muted);font-size:.8125rem}.sample-banner-cta{flex-shrink:0;padding:.375rem .75rem;font-size:.8125rem}@media (max-width:600px){.sample-report-banner{flex-direction:column;align-items:stretch}.sample-banner-cta{text-align:center}}
