:root{
  --surface:#FFFFFF;
  --surface-soft:#EAF7F4;
  --surface-note:#F6F6F2;
  --danger:#B42318;
  --success:#147D6C;
  --radius-card:18px;
  --radius-control:12px;
  --content-wide:1362px;
  --content-tool:1060px;
}
/* v196 — shared visual system for tools */
.decision,.trip-breadcrumbs,.trip-hero,.trip-wizard,.vettool-breadcrumbs,.vettool-hero,.vettool-wizard,.weight-breadcrumbs,.weight-hero,.weight-tool{font-family:var(--body)}
.decision h1,.decision__question,.decision__result h2,.trip-hero h1,.trip-intro h2,.vettool-hero h1,.vetstep-intro h2,.weight-hero h1,.weight-result h2,.weight-form__head strong{font-family:var(--display)}
.decision__card,.trip-options button,.vet-option,.vet-field input,.vet-field select,.vet-field textarea,.vet-note-card textarea,.weight-result,.bcs-card span,.mcs-options span,.type-toggle span{border-radius:var(--radius-control)}
.decision__card{background:var(--surface)}
.decision__option,.trip-options button,.vet-option{color:var(--ink)}
.decision__option:hover,.decision__option.is-selected,.trip-options button:hover,.trip-options button.is-selected,.vet-option:hover,.vet-option.is-selected,.type-toggle input:checked+span,.bcs-card input:checked+span,.mcs-options input:checked+span,.vet-segment button.is-selected{background:var(--surface-soft);border-color:var(--teal)}
.decision__btn,.trip-primary,.vet-primary,.weight-next,.weight-submit{font-family:var(--body);font-weight:700}
.decision__btn,.trip-primary,.trip-secondary,.vet-primary,.vet-secondary,.weight-next,.weight-submit,.weight-back{min-height:44px;border-radius:var(--radius-control)}
.decision__note,.step-note,.bcs-tip,.result-advice{background:var(--surface-note)}
.lh-export-bar{font-family:var(--body);}
.lh-export-bar button{min-height:44px;border-radius:var(--radius-control);font-family:var(--body);font-size:11px;letter-spacing:.01em}
.lh-export-bar button.secondary{border:1px solid var(--line)}
.lh-export-status{font-family:var(--body)}
.trip-options strong,.vet-option strong,.weight-form__head strong,.weight-result h2{font-family:var(--display)}
.trip-options span,.vet-option span,.trip-hero p,.trip-intro p,.vetstep-intro p,.vet-field>span,.vet-field>label,.weight-hero p,.weight-result__content>p{font-family:var(--body)}
@media(max-width:650px){
  .decision__actions,.trip-actions,.trip-final-actions,.vetstep-actions,.vet-note-actions{grid-template-columns:1fr;}
  .lh-export-bar{grid-template-columns:1fr 1fr;}
}

/* Universal Core question and result components */
.core-tool-eligibility>p,.core-tool-description{color:var(--muted);font-size:12px;line-height:1.6}
.core-tool-actions{display:flex;gap:10px;align-items:center;margin-top:24px}
.core-tool-question{animation:coreToolFade .2s ease}
@keyframes coreToolFade{from{opacity:.4;transform:translateY(4px)}to{opacity:1;transform:none}}
.core-tool-question__head{display:flex;flex-direction:column;gap:14px;padding-bottom:22px;border-bottom:1px solid var(--ink)}
.core-tool-question__head span{color:var(--muted);font-size:9px;font-weight:600;letter-spacing:.09em}
.core-tool-question__head strong{font-family:var(--display);font-size:30px;line-height:1;letter-spacing:-.04em}
.core-tool-button{min-height:44px;padding:14px 18px;border:1px solid transparent;border-radius:var(--radius-control);font-family:var(--body);font-size:10px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;cursor:pointer}
.core-tool-button--primary{background:var(--teal);color:#fff}
.core-tool-button--secondary{background:transparent;color:var(--muted);border-color:var(--line)}
.core-tool-button:disabled{cursor:wait;opacity:.6}
.core-tool-button:focus-visible,.core-tool-option:focus-within,.core-tool-field input:focus-visible,.core-tool-field textarea:focus-visible{outline:2px solid var(--teal);outline-offset:2px}
.core-tool-form{margin-top:24px}
.core-tool-options{display:grid;gap:9px;margin:0;padding:0;border:0}
.core-tool-options legend{margin-bottom:10px}
.core-tool-option{display:flex;align-items:flex-start;gap:12px;padding:15px 17px;border:1px solid var(--line);border-radius:var(--radius-control);cursor:pointer;background:var(--surface)}
.core-tool-option:has(input:checked){border-color:var(--teal);background:var(--surface-soft)}
.core-tool-option input{flex:0 0 auto;width:18px;height:18px;margin:1px 0 0;accent-color:var(--teal)}
.core-tool-option span{font-size:12px;line-height:1.5}
.core-tool-options--scale{grid-template-columns:repeat(auto-fit,minmax(52px,1fr))}
.core-tool-options--scale .core-tool-option{justify-content:center;padding:12px 8px;text-align:center}
.core-tool-field{display:grid;gap:8px;font-size:12px;font-weight:600}
.core-tool-field input,.core-tool-field textarea{width:100%;min-height:50px;padding:12px;border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface);font:inherit;font-weight:400;color:var(--ink)}
.core-tool-field textarea{min-height:120px;resize:vertical}
.core-tool-status{margin:0 0 18px;color:var(--muted);font-size:12px;line-height:1.5}
.core-tool-status[hidden]{display:none}
.core-tool-status[data-kind="error"]{color:var(--danger)}
.core-tool-status[data-kind="success"]{color:var(--success)}
.core-tool-status-action{margin:8px 8px 0 0}
.core-tool-error{padding:14px;background:var(--surface-note);color:var(--danger);font-size:12px;line-height:1.5}
.core-tool-validation{min-height:18px;margin:10px 0 0;color:var(--danger);font-size:11px}
.core-tool-validation[hidden]{display:none}
.core-result{display:grid;gap:14px}
.core-result-empty{min-height:300px;display:flex;flex-direction:column;justify-content:center;align-items:flex-start}
.core-result-empty b{width:68px;height:68px;display:grid;place-items:center;border-radius:50%;background:var(--surface-soft);color:var(--teal);font-family:var(--display);font-size:36px}
.core-result-empty p{max-width:300px;margin:22px 0 0;color:var(--muted);font-size:13px;line-height:1.55}
.core-result-status{margin:22px 0 0;color:var(--teal);font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.core-result h2{margin:0}
.core-result-summary{color:var(--muted);font-size:13px;line-height:1.6}
.core-result-section{padding-top:14px;border-top:1px solid rgba(19,78,74,.2)}
.core-result-section h3{margin:0 0 8px;font-size:12px}
.core-result-section ul{margin:0;padding-left:19px;color:var(--muted);font-size:11px;line-height:1.6}
.core-result-records{display:grid;gap:8px;margin:0}
.core-result-record dt{font-size:10px;font-weight:700}
.core-result-record dd{margin:3px 0 0;color:var(--teal);font-size:13px;font-weight:600;overflow-wrap:anywhere}
.core-result-record p{margin:4px 0 0;color:var(--muted);font-size:10px;line-height:1.5}
.core-result-section a{color:var(--teal);font-size:11px;overflow-wrap:anywhere}
.core-result-disclaimer{margin:0;padding:12px;background:rgba(255,255,255,.55);color:var(--muted);font-size:10px;line-height:1.5}
.weight-result__empty[hidden]{display:none}
@media(max-width:650px){.core-tool-actions{flex-wrap:wrap}.core-tool-actions>*{flex:1}.core-tool-options--scale{grid-template-columns:repeat(3,1fr)}}
