/* EV tools: compare, cost calculator, incentives. Colours and sizes come from the theme tokens. */
.evp-badge[hidden]{display:none}
.evp-act{margin-top:12px;width:100%;justify-content:center;text-align:center;box-sizing:border-box}
.evp-cmp-btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;margin-top:12px;padding:0 16px;border:1px solid var(--evp-line,#dce5e2);border-radius:var(--evp-radius-sm,8px);background:var(--evp-surface,#fff);color:var(--evp-ink,#0c1b1a);font:500 var(--evp-fs-base,1rem) var(--evp-font-body,inherit);cursor:pointer}
.evp-cmp-btn[aria-pressed=true]{background:var(--evp-tint,#e1f7ee);border-color:var(--evp-accent-ink,#006b4b);color:var(--evp-accent-ink,#006b4b)}
.evp-cmp-bar{position:fixed;left:0;right:0;bottom:0;z-index:60;display:flex;flex-wrap:wrap;align-items:center;gap:12px;padding:12px max(16px,env(safe-area-inset-right)) calc(12px + env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left));background:var(--evp-footer-bg,#0c1b1a);color:#fff}
.evp-cmp-bar[hidden]{display:none}
.evp-cmp-bar>span{flex:1;min-width:140px}
.evp-cmp-clear{min-height:44px;padding:0 12px;border:0;background:transparent;color:inherit;text-decoration:underline;cursor:pointer;font:inherit}
.evp-cmp-clear[hidden],.evp-cmp-bar a[hidden]{display:none}

.evp-tool{max-width:var(--evp-container,1280px);margin:0 auto}
.evp-tool fieldset{border:1px solid var(--evp-line,#dce5e2);border-radius:var(--evp-radius,12px);background:var(--evp-surface,#fff);padding:8px 20px 20px;margin:0 0 16px}
.evp-tool legend{padding:0 8px;font-weight:700}
.evp-tool__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr));gap:16px}
.evp-ff{display:flex;flex-direction:column;gap:4px;font-size:var(--evp-fs-sm,.875rem);color:var(--evp-muted,#3f5551)}
.evp-ff input,.evp-ff select{height:44px;padding:0 12px;border:1px solid var(--evp-field-line,#687a76);border-radius:var(--evp-radius-sm,8px);background:var(--evp-surface,#fff);color:var(--evp-ink,#0c1b1a);font:inherit;font-size:var(--evp-fs-base,1rem)}
.evp-tool__result{margin-top:24px;scroll-margin-top:90px}
.evp-tool__hero{display:flex;flex-direction:column;gap:4px;padding:20px 24px;border-radius:var(--evp-radius,12px);background:var(--evp-footer-bg,#0c1b1a);color:var(--evp-band-ink,#eaf6f2);margin-bottom:16px}
.evp-tool__hero strong{font:var(--evp-head-weight,700) var(--evp-fs-xl,1.5rem)/1.2 var(--evp-font-head,inherit)}
.evp-tool__hero.is-good strong{color:var(--evp-accent,#2ee6a6)}
.evp-tool__hero span{color:var(--evp-band-muted,#9db8b1)}
.evp-bars{display:grid;gap:12px;margin-bottom:20px}
.evp-bar__top{display:flex;justify-content:space-between;gap:12px;margin-bottom:4px}
.evp-bar__track{height:16px;border-radius:8px;background:var(--evp-line,#dce5e2)}
.evp-bar__fill{height:16px;border-radius:8px}
.evp-bar__fill--ev{background:var(--evp-accent,#2ee6a6)}
.evp-bar__fill--ice{background:var(--evp-muted,#3f5551)}
.evp-tool__table{width:100%;border-collapse:collapse;background:var(--evp-surface,#fff);border:1px solid var(--evp-line,#dce5e2)}
.evp-tool__table th,.evp-tool__table td{padding:12px 14px;border-bottom:1px solid var(--evp-line,#dce5e2);text-align:right}
.evp-tool__table th[scope=row],.evp-tool__table td:first-child{text-align:left}
.evp-tool__table thead th{background:var(--evp-tint,#e1f7ee)}
.evp-tool__table .is-total th,.evp-tool__table .is-total td{font-weight:700;border-top:2px solid var(--evp-ink,#0c1b1a)}
.evp-tool__note{color:var(--evp-muted,#3f5551);font-size:var(--evp-fs-sm,.875rem)}
.evp-tool__result ul{padding-left:1.2em}

.evp-cmp__diff{display:inline-flex;align-items:center;gap:8px;min-height:44px;margin-bottom:8px}
.evp-cmp__scroll{overflow-x:auto;border:1px solid var(--evp-line,#dce5e2);border-radius:var(--evp-radius,12px);background:var(--evp-surface,#fff)}
.evp-cmp__table{width:100%;min-width:640px;border-collapse:separate;border-spacing:0}
.evp-cmp__table th,.evp-cmp__table td{padding:12px 14px;border-bottom:1px solid var(--evp-line,#dce5e2);text-align:left;vertical-align:top}
.evp-cmp__table tbody th[scope=row]{position:sticky;left:0;background:var(--evp-surface,#fff);font-weight:500;color:var(--evp-muted,#3f5551);min-width:150px;z-index:1}
.evp-cmp__table thead th{min-width:190px;font-weight:400}
.evp-cmp__img img{display:block;width:100%;height:auto;border-radius:var(--evp-radius-sm,8px)}
.evp-cmp__ph{display:block;aspect-ratio:16/10;background:var(--evp-tint,#e1f7ee);border-radius:var(--evp-radius-sm,8px)}
.evp-cmp__name{display:block;margin:8px 0 4px;font:var(--evp-head-weight,700) var(--evp-fs-lg,1.2rem)/1.2 var(--evp-font-head,inherit);color:var(--evp-ink,#0c1b1a);text-decoration:none}
.evp-cmp__remove{font-size:var(--evp-fs-sm,.875rem)}
.evp-cmp__group th{background:var(--evp-tint,#e1f7ee);font-weight:700;color:var(--evp-ink,#0c1b1a)}
.evp-cmp__table td.is-best{background:var(--evp-tint,#e1f7ee);font-weight:700;color:var(--evp-accent-ink,#006b4b)}
.evp-cmp__table.is-diff tr.is-same{display:none}
.evp-cmp__note{color:var(--evp-muted,#3f5551);font-size:var(--evp-fs-sm,.875rem)}

.evp-incentives{list-style:none;margin:0;padding:0;display:grid;gap:16px}
.evp-incentive{background:var(--evp-surface,#fff);border:1px solid var(--evp-line,#dce5e2);border-radius:var(--evp-radius,12px);padding:20px 24px}
.evp-incentive__head{display:flex;justify-content:space-between;align-items:center;gap:12px}
.evp-incentive__amount{font:var(--evp-head-weight,700) var(--evp-fs-lg,1.2rem) var(--evp-font-head,inherit)}
.evp-incentive h3{margin:8px 0}
.evp-incentive__notes{color:var(--evp-muted,#3f5551);font-size:var(--evp-fs-sm,.875rem)}
@media (max-width:640px){.evp-tool fieldset{padding:4px 14px 16px}}

/* Charging tracker: map, rating badges, reports */
.evp-map{height:clamp(300px,55vh,460px);margin-bottom:var(--evp-space,1rem);border-radius:var(--evp-radius,12px);overflow:hidden;background:var(--evp-tint,#e1f7ee)}
.evp-map[hidden]{display:none}
.evp-rate{display:inline-flex;align-items:center;gap:6px;padding:4px 12px;border-radius:999px;font-size:var(--evp-fs-sm,.875rem);font-weight:500;background:var(--evp-line,#dce5e2);color:var(--evp-ink,#0c1b1a)}
.evp-rate b{font-weight:700}
.evp-rate--good{background:var(--evp-good-soft,#dcf3e8);color:var(--evp-good,#0b7a55)}
.evp-rate--mixed{background:var(--evp-amber-soft,#fdf1d3);color:var(--evp-amber-ink,#8a5a00)}
.evp-rate--bad{background:var(--evp-bad-soft,#fde8dc);color:var(--evp-bad,#c2410c)}
.evp-rate--none{background:var(--evp-line,#dce5e2);color:var(--evp-muted,#3f5551)}
.evp-rate__n{font-size:var(--evp-fs-sm,.875rem);color:var(--evp-muted,#3f5551);margin:0 8px}
.evp-reports{list-style:none;margin:0 0 20px;padding:0;display:grid;gap:12px}
.evp-reports li{background:var(--evp-surface,#fff);border:1px solid var(--evp-line,#dce5e2);border-radius:var(--evp-radius-sm,8px);padding:12px 16px}
.evp-reports p{margin:6px 0 0}
.evp-reports__meta{color:var(--evp-muted,#3f5551);font-size:var(--evp-fs-sm,.875rem)}
.evp-rk{display:inline-block;padding:2px 10px;border-radius:999px;font-size:var(--evp-fs-sm,.875rem);font-weight:600;background:var(--evp-line,#dce5e2)}
.evp-rk--ok{background:var(--evp-good-soft,#dcf3e8);color:var(--evp-good,#0b7a55)}
.evp-rk--slow,.evp-rk--price{background:var(--evp-amber-soft,#fdf1d3);color:var(--evp-amber-ink,#8a5a00)}
.evp-rk--broken{background:var(--evp-bad-soft,#fde8dc);color:var(--evp-bad,#c2410c)}
.evp-report__opt{display:flex;align-items:center;gap:10px;min-height:44px}
.evp-report textarea{min-height:90px;padding:10px 12px;border:1px solid var(--evp-field-line,#687a76);border-radius:var(--evp-radius-sm,8px);font:inherit;background:var(--evp-surface,#fff);color:inherit}
.evp-report__msg{padding:12px 16px;border-radius:var(--evp-radius-sm,8px);background:var(--evp-tint,#e1f7ee);color:var(--evp-accent-ink,#006b4b)}
.evp-report__msg.is-bad{background:var(--evp-bad-soft,#fde8dc);color:var(--evp-bad,#c2410c)}
.evp-hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}

/* Battery health report */
.evp-bh__hero{gap:6px}
.evp-bh__hero>span:first-child{color:var(--evp-band-muted,#9db8b1);font-size:var(--evp-fs-sm,.875rem)}
.evp-bh__badge{display:inline-block;align-self:flex-start;margin-top:6px;padding:4px 12px;border-radius:999px;background:var(--evp-accent,#2ee6a6);color:var(--evp-on-accent,#06231a)!important;font-weight:600}
.evp-bh__flags{list-style:none;margin:0 0 16px;padding:0;display:grid;gap:8px}
.evp-bh__flags li{padding:10px 14px 10px 40px;position:relative;border-radius:var(--evp-radius-sm,8px);background:var(--evp-surface,#fff);border:1px solid var(--evp-line,#dce5e2)}
.evp-bh__flags li::before{position:absolute;left:14px;font-weight:700}
.evp-bh__flags .is-warn::before{content:"!";color:var(--evp-bad,#c2410c)}
.evp-bh__flags .is-info::before{content:"i";color:var(--evp-accent-ink,#006b4b)}
.evp-bh__link{width:100%;min-height:44px;padding:0 12px;border:1px solid var(--evp-line,#dce5e2);border-radius:var(--evp-radius-sm,8px);background:var(--evp-surface,#fff);font:inherit}

/* Phase 6: requests, garage, dealers, plans */
.evp-pill{display:inline-flex;align-items:center;min-height:24px;padding:0 10px;border-radius:999px;font-size:var(--evp-fs-sm,.85rem);font-weight:600;background:var(--evp-tint,#e1f7ee);color:var(--evp-accent-ink,#006b4b);vertical-align:middle}
.evp-pill--partner{background:var(--evp-footer-bg,#0c1b1a);color:var(--evp-band-ink,#eaf6f2)}
.evp-lead{max-width:960px}
.evp-lead fieldset{border:1px solid var(--evp-line,#dce5e2);border-radius:var(--evp-radius,12px);background:var(--evp-surface,#fff);padding:8px 20px 20px;margin:0 0 16px}
.evp-lead legend{padding:0 8px;font-weight:700}
.evp-lead__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr));gap:12px}
.evp-lead .evp-ff{margin-bottom:12px}
.evp-lead .evp-ff input[type=text],.evp-lead .evp-ff input[type=tel],.evp-lead .evp-ff input[type=email],.evp-lead textarea{font-size:16px}
.evp-lead textarea{min-height:90px;padding:10px 12px;border:1px solid var(--evp-field-line,#687a76);border-radius:var(--evp-radius-sm,8px);font:inherit;font-size:16px;background:var(--evp-surface,#fff);color:inherit}
.evp-lead__kinds{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}
.evp-lead__kind{position:relative}
.evp-lead__kind input{position:absolute;opacity:0}
.evp-lead__kind span{display:inline-flex;align-items:center;min-height:44px;padding:0 16px;border:1px solid var(--evp-line,#dce5e2);border-radius:999px;cursor:pointer}
.evp-lead__kind input:checked+span{background:var(--evp-tint,#e1f7ee);border-color:var(--evp-accent-ink,#006b4b);color:var(--evp-accent-ink,#006b4b);font-weight:600}
.evp-lead__kind input:focus-visible+span{outline:2px solid var(--evp-accent-ink,#006b4b);outline-offset:2px}
.evp-lead__consent{display:flex;gap:10px;align-items:flex-start;margin:4px 0 12px;font-size:var(--evp-fs-sm,.875rem);color:var(--evp-muted,#3f5551)}
.evp-lead__consent input{margin-top:3px;width:20px;height:20px;flex:none}
.evp-lead__send{width:100%;justify-content:center;min-height:48px;cursor:pointer}
@media (min-width:640px){.evp-lead__send{width:auto}}
.evp-gar-btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;margin-top:8px;box-sizing:border-box;padding:0 16px;border:1px solid var(--evp-line,#dce5e2);border-radius:var(--evp-radius-sm,8px);background:var(--evp-surface,#fff);color:inherit;font:inherit;cursor:pointer}
.evp-gar-btn[aria-pressed=true]{background:var(--evp-tint,#e1f7ee);border-color:var(--evp-accent-ink,#006b4b);color:var(--evp-accent-ink,#006b4b)}
.evp-gar-toast{position:fixed;left:50%;bottom:calc(16px + env(safe-area-inset-bottom));transform:translateX(-50%);z-index:70;max-width:min(92vw,420px);padding:12px 16px;border-radius:var(--evp-radius-sm,8px);background:var(--evp-ink,#0c1b1a);color:#fff;box-shadow:0 8px 24px rgba(12,27,26,.25)}
.evp-gar-toast[hidden]{display:none}
.evp-gar-toast a{color:var(--evp-accent,#2ee6a6)}
.evp-garage h2{margin:32px 0 12px}
.evp-gcar,.evp-gcard{background:var(--evp-surface,#fff);border:1px solid var(--evp-line,#dce5e2);border-radius:var(--evp-radius,12px);padding:16px;margin-bottom:12px}
.evp-gcar__head,.evp-gcard{display:flex;gap:12px;align-items:center}
.evp-gcar img,.evp-gcard img{border-radius:8px;object-fit:cover;flex:none;background:var(--evp-tint,#e1f7ee)}
.evp-gcar h3,.evp-gcard h3{margin:0;font-size:var(--evp-fs-base,1.06rem)}
.evp-gcard__body{flex:1;min-width:0}
.evp-gcard__sub,.evp-gcar__note{margin:4px 0 0;color:var(--evp-muted,#3f5551);font-size:var(--evp-fs-sm,.875rem)}
.evp-gcar__acts{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
.evp-gcar__acts .evp-btn{min-height:44px;font-size:var(--evp-fs-sm,.875rem)}
.evp-gcar__edit{margin-top:12px}
.evp-gcar__head{position:relative}
.evp-gcar__rm{margin-left:auto;align-self:flex-start;min-height:36px;color:var(--evp-muted,#3f5551);font-size:var(--evp-fs-sm,.875rem)}
.evp-gcar__rm:hover{color:var(--evp-ink,#0c1b1a)}
.evp-gcar__edit summary{min-height:44px;display:flex;align-items:center;gap:8px;cursor:pointer;font-weight:600;list-style:none}
.evp-gcar__edit summary::-webkit-details-marker{display:none}
.evp-gcar__edit summary::after{content:"";width:8px;height:8px;border:solid currentColor;border-width:0 2px 2px 0;transform:rotate(45deg) translateY(-2px);transition:transform .15s}
.evp-gcar__edit[open] summary::after{transform:rotate(-135deg)}
.evp-gcar__form{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,170px),1fr));gap:12px;align-items:end;margin-top:8px}
.evp-gadd{padding:16px;border:1px dashed var(--evp-line,#dce5e2);border-radius:var(--evp-radius,12px)}
.evp-gsaved{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,280px),1fr));gap:12px}
.evp-gsaved .evp-gcard{margin:0}
.evp-gate{padding:16px 20px;border:1px dashed var(--evp-accent-ink,#006b4b);border-radius:var(--evp-radius,12px);background:var(--evp-tint,#e1f7ee)}
.evp-gate p{margin:0 0 8px}
.evp-plans{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:16px}
.evp-plan{padding:24px;border:1px solid var(--evp-line,#dce5e2);border-radius:var(--evp-radius,12px);background:var(--evp-surface,#fff)}
.evp-plan--plus{border-color:var(--evp-accent-ink,#006b4b);border-width:2px}
.evp-plan h2{margin-top:0}
.evp-plan__price{margin:0;font:var(--evp-head-weight,700) var(--evp-fs-xl,1.5rem) var(--evp-font-head,inherit)}
.evp-plan__price span{font-size:var(--evp-fs-sm,.85rem);font-weight:400;color:var(--evp-muted,#3f5551)}
.evp-finder__list{list-style:none;margin:0 0 20px;padding:0;display:grid;gap:12px}
.evp-finder__item{display:flex;gap:12px;align-items:flex-start;padding:16px;border:1px solid var(--evp-line,#dce5e2);border-radius:var(--evp-radius,12px);background:var(--evp-surface,#fff)}
.evp-finder__pick{display:flex;align-items:center;justify-content:center;width:44px;height:44px;flex:none}
.evp-finder__pick input{width:24px;height:24px}
.evp-finder__main{flex:1;min-width:0}
.evp-finder__main h3{margin:0 0 4px;font-size:var(--evp-fs-base,1.06rem)}
.evp-finder__meta{margin:0 0 8px;color:var(--evp-muted,#3f5551)}
.evp-finder__tel{display:inline-flex;align-items:center;min-height:44px;font-weight:600}
.evp-partnerform__set{border:0;padding:0;margin:0 0 16px}
.evp-partnerform__set legend{padding:0;margin-bottom:8px;font-weight:600}
.evp-partnerform__checks{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,220px),1fr));gap:4px 12px}
.evp-partnerform__check{display:flex;align-items:center;gap:10px;min-height:44px}
.evp-partnerform__check input{width:20px;height:20px;flex:none}
.evp-partnerform{max-width:960px}

/* Status: colour + shape + text. Never colour alone. */
.evp-dot{display:inline-block;flex:none;width:10px;height:10px;box-sizing:border-box;border:2px solid var(--evp-muted,#4a605b);background:transparent;border-radius:50%}
.evp-dot--good{background:var(--evp-good,#0b7a55);border-color:var(--evp-good,#0b7a55)}
.evp-dot--mixed{border-color:var(--evp-amber,#e8a317);background:linear-gradient(90deg,var(--evp-amber,#e8a317) 50%,transparent 50%)}
.evp-dot--bad{background:var(--evp-bad,#c2410c);border-color:var(--evp-bad,#c2410c);border-radius:2px;transform:rotate(45deg) scale(.9)}
.evp-dot--none{border-color:var(--evp-muted,#4a605b)}
.evp-rate .evp-dot{margin-right:2px}

/* Map with a detail sheet and a legend */
.evp-mapwrap{position:relative}
.evp-mapwrap .evp-map{margin-bottom:8px}
.evp-legend{display:flex;flex-wrap:wrap;gap:6px 16px;list-style:none;margin:0 0 var(--evp-space,1rem);padding:0;font-size:var(--evp-fs-sm,.875rem);color:var(--evp-muted,#4a605b)}
.evp-legend li{display:inline-flex;align-items:center;gap:8px}
.evp-sheet{position:absolute;z-index:500;left:12px;right:12px;bottom:56px;max-width:380px;background:var(--evp-surface,#fff);color:var(--evp-ink,#0c1b1a);border:1px solid var(--evp-line,#d6e1de);border-radius:var(--evp-radius,16px);box-shadow:var(--evp-shadow,0 12px 32px rgba(12,27,26,.2));padding:20px 20px 16px}
.evp-sheet[hidden]{display:none}
.evp-sheet__x{position:absolute;top:8px;right:8px;width:36px;height:36px;border:0;border-radius:50%;background:var(--evp-surface-2,#e9f0ee);color:inherit;font-size:1.4rem;line-height:1;cursor:pointer}
.evp-sheet__x:focus-visible{outline:2px solid var(--evp-accent-ink,#006b4b);outline-offset:2px}
.evp-sheet__t{margin:0 40px 6px 0;font:700 1.1rem/1.25 var(--evp-font-head,inherit)}
.evp-sheet__st{display:flex;align-items:center;gap:8px;margin:0 0 4px;font-weight:600;font-size:.92rem}
.evp-sheet__c{margin:0 0 10px;color:var(--evp-muted,#4a605b);font-size:.9rem}
.evp-sheet__facts{margin:0 0 14px}
.evp-sheet__facts>div{display:flex;justify-content:space-between;gap:12px;padding:7px 0;border-bottom:1px solid var(--evp-line,#d6e1de);font-size:.92rem}
.evp-sheet__facts dt{color:var(--evp-muted,#4a605b)}
.evp-sheet__facts dd{margin:0;font-weight:600;text-align:right}
.evp-sheet__acts{display:flex;gap:8px;flex-wrap:wrap}
.evp-sheet__acts .evp-btn{min-height:40px;padding:0 16px;font-size:.9rem}
@media (max-width:640px){.evp-sheet{left:8px;right:8px;max-width:none;bottom:8px}}
@media (forced-colors:active){.evp-dot{forced-color-adjust:none}}

/* Calculators: form on the left, sticky live result on the right */
.evp-tool--split{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,400px);gap:32px;align-items:start}
.evp-tool--split>.evp-tool__note{grid-column:1/-1;margin:0}
.evp-tool__side{position:sticky;top:92px;min-width:0}
.admin-bar .evp-tool__side{top:124px}
.evp-tool__side .evp-tool__result{margin-top:0}
.evp-tool__side .evp-tool__table{font-size:.92rem}
.evp-tool__side .evp-tool__table th,.evp-tool__side .evp-tool__table td{padding:9px 10px}
.evp-tool__side[aria-busy=true],[data-evp-live-out][aria-busy=true]{opacity:.6;transition:opacity .15s}
.evp-tool__result--empty{border:1px dashed var(--evp-field-line,#687a76);border-radius:var(--evp-radius,16px);padding:24px;color:var(--evp-muted,#4a605b)}
.evp-tool__result--empty p{margin:0}
.evp-range{-webkit-appearance:none;appearance:none;width:100%;height:24px;margin:6px 0 0;padding:0;border:0;background:transparent;cursor:pointer}
.evp-range::-webkit-slider-runnable-track{height:6px;border-radius:9px;background:linear-gradient(90deg,var(--evp-accent,#2ee6a6) var(--p,50%),var(--evp-line,#d6e1de) var(--p,50%))}
.evp-range::-moz-range-track{height:6px;border-radius:9px;background:linear-gradient(90deg,var(--evp-accent,#2ee6a6) var(--p,50%),var(--evp-line,#d6e1de) var(--p,50%))}
.evp-range::-webkit-slider-thumb{-webkit-appearance:none;width:22px;height:22px;margin-top:-8px;border-radius:50%;background:#fff;border:2px solid var(--evp-accent,#2ee6a6);box-shadow:0 2px 8px rgba(0,0,0,.35)}
.evp-range::-moz-range-thumb{width:18px;height:18px;border-radius:50%;background:#fff;border:2px solid var(--evp-accent,#2ee6a6)}
@media (max-width:960px){.evp-tool--split{grid-template-columns:minmax(0,1fr)}.evp-tool__side{position:static}}
@media (prefers-reduced-motion:reduce){[data-evp-live-out][aria-busy=true]{transition:none}}

/* Inline validation: border, icon and words together */
.evp-ff input[aria-invalid=true],.evp-ff select[aria-invalid=true],.evp-ff textarea[aria-invalid=true],.evp-lead textarea[aria-invalid=true]{border-color:var(--evp-bad,#c2410c);box-shadow:0 0 0 1px var(--evp-bad,#c2410c)}
.evp-lead__consent input[aria-invalid=true]{outline:2px solid var(--evp-bad,#c2410c);outline-offset:2px}
.evp-ferr{display:flex;align-items:flex-start;gap:6px;margin-top:2px;color:var(--evp-bad,#c2410c);font-size:.85rem;font-weight:500;line-height:1.3}
.evp-ferr::before{content:"!";flex:none;width:16px;height:16px;margin-top:1px;border-radius:50%;background:var(--evp-bad,#c2410c);color:var(--evp-ground,#fff);font:700 .7rem/16px var(--evp-font-body,inherit);text-align:center}
.evp-lead__consent{display:flex;flex-wrap:wrap;align-items:flex-start;gap:8px}
.evp-lead__consent .evp-ferr{flex-basis:100%;margin-left:28px}
.evp-lead .evp-report__msg{margin-bottom:16px}
@media (forced-colors:active){.evp-ff input[aria-invalid=true],.evp-ff select[aria-invalid=true]{border-color:Mark}}

/* ===== 0.12.2 Layout and phones =====
   Tool pages use the full page width (the theme no longer squeezes them into the reading column).
   Single forms stay in a readable 960 px; results, tables and card lists use the whole width. */
.evp-tool{width:100%;min-width:0}
.evp-finder>form{max-width:960px}
.evp-lead .evp-lead__grid,.evp-partnerform .evp-lead__grid{gap:12px 16px}
.evp-tool__result{min-width:0}
.evp-tool__result>.evp-tool__table,.evp-tool__result .evp-tool__table{margin-bottom:16px}
.evp-incentives{grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr))}
.evp-finder__list{grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr))}
.evp-gcar,.evp-gcard{min-width:0}
.evp-gcar h3,.evp-gcard h3,.evp-cmp__name,.evp-incentive h3{overflow-wrap:anywhere}
.evp-tool__note{max-width:70ch}
/* Fixed compare bar must not cover the end of the page */
body:has(.evp-cmp-bar:not([hidden])){padding-bottom:84px}

@media (min-width:1100px){
.evp-tool--split{grid-template-columns:minmax(0,1fr) minmax(340px,420px);gap:40px}
}
@media (max-width:960px){
.evp-tool__side{margin-top:8px}
}
@media (max-width:640px){
.evp-tool__grid,.evp-lead__grid{grid-template-columns:minmax(0,1fr)}
.evp-tool fieldset,.evp-lead fieldset{margin-bottom:12px}
.evp-tool legend{font-size:var(--evp-fs-base,1rem)}
.evp-tool__result{margin-top:16px}
.evp-tool__hero{padding:16px;gap:2px}
.evp-tool__hero strong{font-size:1.3rem}
.evp-tool__table{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch}
.evp-tool__table th,.evp-tool__table td{padding:10px 8px;font-size:.9rem}
.evp-bar__top{flex-wrap:wrap;gap:4px 12px}
.evp-incentive{padding:16px}
.evp-incentive__head{flex-wrap:wrap}
.evp-incentives,.evp-finder__list,.evp-plans,.evp-gsaved{grid-template-columns:minmax(0,1fr)}
.evp-plan{padding:18px}
.evp-finder__item{padding:12px;gap:8px}
.evp-finder__item .evp-btn{width:100%}
.evp-tool .evp-btn,.evp-lead .evp-btn{width:100%}
.evp-cmp__scroll{margin-inline:-4px;border-radius:var(--evp-radius-sm,10px)}
.evp-cmp__table{min-width:0}
.evp-cmp__table thead th{min-width:156px}
.evp-cmp__table tbody th[scope=row]{min-width:100px;max-width:100px;font-size:.82rem;padding:10px 8px}
.evp-cmp__table th,.evp-cmp__table td{padding:10px 8px}
.evp-cmp__name{font-size:1rem}
.evp-gcar,.evp-gcard{padding:12px}
.evp-gcar__head{align-items:flex-start}
.evp-gcar__acts{flex-direction:column}
.evp-gcar__acts .evp-btn,.evp-gcar__acts .evp-gar-btn{width:100%}
.evp-gcar__form{grid-template-columns:minmax(0,1fr)}
.evp-gadd{padding:12px}
.evp-garage h2{margin:24px 0 10px}
.evp-partnerform__checks{grid-template-columns:minmax(0,1fr)}
.evp-lead__kinds span{min-height:44px}
.evp-sheet__acts .evp-btn{flex:1 1 100%}
}
@media (max-width:380px){
.evp-tool fieldset,.evp-lead fieldset{padding:4px 12px 12px}
.evp-cmp__table thead th{min-width:140px}
}

/* Battery report form: guidance, hints and field errors */
.evp-ff[hidden]{display:none}
.evp-ff__hint{color:var(--evp-muted,#3f5551);font-size:.8rem;line-height:1.35}
.evp-ff__err{color:var(--evp-bad,#c2410c);font-weight:600;font-size:.85rem}
.evp-ff.is-invalid input,.evp-ff.is-invalid select{border-color:var(--evp-bad,#c2410c);box-shadow:0 0 0 1px var(--evp-bad,#c2410c)}
.evp-tool__lead{margin:4px 0 14px;color:var(--evp-muted,#3f5551)}
.evp-howto{margin:0 0 20px;padding:18px 22px;border-radius:var(--evp-radius,12px);background:var(--evp-tint,#e1f7ee)}
.evp-howto p{margin:0 0 10px}
.evp-howto ol{margin:0 0 12px;padding-left:1.3em}
.evp-howto li+li{margin-top:4px}
.evp-help summary{cursor:pointer;font-weight:600;min-height:36px;display:flex;align-items:center}
.evp-help ul{margin:6px 0 0;padding-left:1.2em}
.evp-report__msg ul{margin:6px 0 0;padding-left:1.2em}
.evp-report__msg a{color:inherit;text-decoration:underline}
