.ecu-tco{--tco-blue:#1858cf;--tco-ink:#142f40;--tco-muted:#52636c;--tco-green:#ddeb99;color:var(--tco-ink);font-size:1rem;line-height:1.6;max-width:100%;scroll-margin-top:11rem}
.ecu-tco *{box-sizing:border-box;min-width:0}
.ecu-tco [hidden]{display:none!important}
.ecu-tco h2{font-size:clamp(1.65rem,3vw,2.4rem);line-height:1.2}
.ecu-tco h3{font-size:1.4rem;line-height:1.3;margin:0 0 1rem}
.ecu-tco h4{font-size:1.1rem;line-height:1.35;margin:0 0 .65rem}
.ecu-tco__eyebrow{color:var(--tco-blue);font-weight:700;font-size:.82rem;text-transform:uppercase;letter-spacing:.06em}
.ecu-tco__notice{padding:1rem 1.2rem;background:#edf3ff;border:1px solid #9baac0;border-radius:12px;font-weight:600}
.ecu-tco__actions{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center;margin:1.25rem 0}
.ecu-tco button,.ecu-tco__actions>a{font:inherit;font-weight:650;line-height:1.45;display:inline-block;padding:.8rem 1rem;max-width:100%;min-height:44px;border:2px solid var(--tco-ink);border-radius:9px;cursor:pointer;text-decoration:none;text-align:center;white-space:normal;overflow-wrap:anywhere;background:var(--tco-blue);color:#fff}
.ecu-tco button.secondary{background:#fff;color:var(--tco-ink)}
.ecu-tco button:disabled{opacity:.6;cursor:not-allowed}
.ecu-tco :is(button,a,input,select,textarea,summary):focus-visible{outline:3px solid var(--tco-ink);outline-offset:3px}
.ecu-tco__common,.ecu-tco__vehicle,.ecu-tco__results,.ecu-tco__sensitivity{padding:clamp(1rem,2.5vw,1.8rem);border:1px solid #a9b8c3;border-radius:15px;background:#fff;margin:1.5rem 0}
.ecu-tco__vehicles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem;align-items:start}
.ecu-tco__vehicle{margin:0}
.ecu-tco__vehicle[data-side=b]{border-top:5px solid #839948}
.ecu-tco__vehicle[data-side=a]{border-top:5px solid var(--tco-blue)}
.ecu-tco__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem 1rem}
.ecu-tco__field{margin:.7rem 0 1rem}
.ecu-tco label{display:block;font-size:.94rem;font-weight:650;margin:0 0 .35rem;overflow-wrap:anywhere}
.ecu-tco :is(input:not([type=checkbox]),select,textarea){width:100%;max-width:100%;min-height:46px;padding:.65rem .75rem;border:1px solid #52636c;border-radius:7px;background:#fff;color:var(--tco-ink);font:inherit;font-size:max(16px,1rem)!important;line-height:1.4}
.ecu-tco select{padding-right:1.75rem;text-overflow:ellipsis}
.ecu-tco textarea{min-height:100px;resize:vertical}
.ecu-tco__check{display:flex!important;gap:.65rem;align-items:flex-start}
.ecu-tco input[type=checkbox]{flex:0 0 20px;min-height:20px;width:20px;margin:.2rem 0;accent-color:var(--tco-blue)}
.ecu-tco small,.ecu-tco__small{display:block;font-size:.84rem;line-height:1.55;color:var(--tco-muted);margin:.25rem 0}
.ecu-tco__error{color:#93251c!important;font-weight:600}
.ecu-tco [aria-invalid=true]{border:2px solid #93251c!important}
.ecu-tco details{border-top:1px solid #c3ced5;padding:.85rem 0;margin:.7rem 0}
.ecu-tco summary{font-weight:700;cursor:pointer;min-height:44px;padding:.4rem 0;overflow-wrap:anywhere}
.ecu-tco__cost{border:0;border-top:1px solid #d7dfe3;padding:.7rem 0;margin:.8rem 0}
.ecu-tco__cost legend{font-weight:700;font-size:1rem;line-height:1.4;padding:0 .4rem 0 0;max-width:100%}
.ecu-tco__results{scroll-margin-top:11rem;background:#edf3ff}
.ecu-tco__status{font-weight:700;margin:1rem 0}
.ecu-tco__totals{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}
.ecu-tco__total{background:#fff;border:1px solid #a9b8c3;border-radius:12px;padding:1.1rem}
.ecu-tco__amount{font-size:clamp(1.8rem,4vw,2.75rem);font-weight:750;line-height:1.2;overflow-wrap:anywhere;margin:.7rem 0}
.ecu-tco__difference{padding:1rem;background:var(--tco-green);border:1px solid var(--tco-ink);border-radius:10px;font-weight:650}
.ecu-tco__table{border-collapse:collapse;width:100%;font-size:.9rem;margin:1rem 0;table-layout:fixed}
.ecu-tco__table th,.ecu-tco__table td{text-align:left;vertical-align:top;padding:.65rem .5rem;border-bottom:1px solid #bdcbd5;overflow-wrap:anywhere;font-variant-numeric:tabular-nums}
.ecu-tco__table th:first-child{width:48%}
.ecu-tco__table caption{text-align:left;font-weight:700;margin-bottom:.5rem}
.ecu-tco__chart{margin:1.3rem 0}
.ecu-tco__bar{position:relative;height:30px;margin:.35rem 0 1rem;background:#fff;border-radius:4px;border:1px solid #a9b8c3;overflow:hidden}
.ecu-tco__segment{position:absolute;top:0;height:100%;border:1px solid #142f40}
.ecu-tco__zero{position:absolute;top:0;bottom:0;border-left:2px solid #142f40;z-index:1}
.ecu-tco__legend{display:flex;gap:.6rem 1rem;flex-wrap:wrap;font-size:.8rem;line-height:1.4}
.ecu-tco__legend span{display:inline-flex;gap:.4rem;align-items:center}
.ecu-tco__swatch{display:inline-block;flex:0 0 13px;height:13px;border:1px solid #142f40}
.ecu-tco__issues{padding-left:1.3rem}
.ecu-tco__issues a{color:#144eaf;text-decoration:underline}
.ecu-tco__privacy{font-size:.86rem;color:var(--tco-muted)}
.ecu-tco__print{display:none}
@media(max-width:850px){.ecu-tco__vehicles{grid-template-columns:1fr}}
@media(max-width:540px){.ecu-tco__grid,.ecu-tco__totals{grid-template-columns:1fr}.ecu-tco__table{font-size:.78rem}.ecu-tco__table th,.ecu-tco__table td{padding:.5rem .2rem}.ecu-tco__table th:first-child{width:40%}.ecu-tco__actions{align-items:stretch}.ecu-tco__actions>*{flex:1 1 100%}.ecu-tco__results,.ecu-tco{scroll-margin-top:7rem}}
@media print{
 body.ecu-tco-printing>*{display:none!important}
 body.ecu-tco-printing>.ecu-tco-print-sheet{display:block!important;color:#111;background:#fff;font:10pt/1.4 Arial,sans-serif}
 .ecu-tco-print-sheet h1{font-size:20pt}.ecu-tco-print-sheet h2{font-size:14pt;margin-top:18pt}
 .ecu-tco-print-sheet table{width:100%;border-collapse:collapse;table-layout:fixed;font-size:9pt;margin:12pt 0}
 .ecu-tco-print-sheet td,.ecu-tco-print-sheet th{text-align:left;vertical-align:top;padding:5pt;border-bottom:1px solid #888;overflow-wrap:anywhere}
 .ecu-tco-print-sheet th:first-child{width:45%}.ecu-tco-print-sheet tr{break-inside:avoid}
 .ecu-tco-print-sheet p,.ecu-tco-print-sheet li{overflow-wrap:anywhere}.ecu-tco-print-sheet h2{break-after:avoid}
}
@media screen{.ecu-tco-print-sheet{display:none}}
