.vhs-tracker-flow {
    --vhs-primary: #b32025;
    --vhs-primary-hover: #8f171b;
    --vhs-border: #d8d8d8;
    max-width: 760px;
    margin: 2rem auto;
    padding: clamp(1.25rem, 4vw, 2.5rem);
    border: 1px solid var(--vhs-border);
    border-radius: 16px;
    background: #fff;
    box-shadow: 0 8px 28px rgba(0,0,0,.08);
    text-align: center;
}
.vhs-flow-image img {
    display:block;
    width:100%;
    max-height:320px;
    object-fit:scale-down;
    border-radius:12px;
    margin-bottom:1.5rem;
}
.vhs-flow-intro h2 { margin:0 0 .75rem; color: #000 !important;}
.vhs-flow-description { margin-bottom:1.75rem; color: #000 !important;}
.vhs-flow-step h3 { margin:0 0 1rem; }
.vhs-flow-choices { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1rem; }
.vhs-flow-button, .vhs-flow-reset, .vhs-flow-back {
    border-radius:8px; cursor:pointer; font:inherit; font-weight:700; min-height:48px; padding:.8rem 1.2rem;
}
.vhs-flow-intro h2 {
    color: #000;
}
.vhs-flow-description {
    color: #000;
}
.vhs-flow-button, .vhs-flow-reset { border:2px solid var(--vhs-primary); background:var(--vhs-primary); color:#fff; }
.vhs-flow-button:hover, .vhs-flow-button:focus, .vhs-flow-reset:hover, .vhs-flow-reset:focus { background:var(--vhs-primary-hover); border-color:var(--vhs-primary-hover); }
.vhs-flow-back { margin-top:1rem; border:2px solid var(--vhs-border); background:#fff; color:#222; }
.vhs-flow-reset { margin:1rem 0 0 .5rem; }
.vhs-flow-result { text-align:left; }
.vhs-flow-result > .vhs-flow-back, .vhs-flow-result > .vhs-flow-reset { display:inline-block; }
.vhs-flow-notice { padding:1rem; border-left:4px solid #dba617; background:#fff8dd; }
.vhs-flow-step[hidden] { display:none !important; }
@media (max-width:600px) { .vhs-flow-choices { grid-template-columns:1fr; } .vhs-tracker-flow { border-radius:10px; } }
