:root{--avp-ink:#17263b;--avp-muted:#708098;--avp-brand:#ed6b32;--avp-bg:#f6f8fb;--avp-line:#e4eaf2;--avp-blue:#1556c0;--avp-green:#098462}
*{box-sizing:border-box}body.avp-body{margin:0;background:var(--avp-bg);font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;color:var(--avp-ink)}
.avp-top{background:#fff;border-bottom:1px solid var(--avp-line)}.avp-top-in{max-width:1260px;margin:auto;min-height:74px;padding:14px 24px;display:flex;justify-content:space-between;align-items:center;gap:18px}.avp-logo{font-weight:850;font-size:22px;text-decoration:none;color:#16233b;letter-spacing:-1px}.avp-logo span{color:var(--avp-brand)}.avp-headlinks{display:flex;gap:20px;align-items:center;flex-wrap:wrap}.avp-headlinks a{color:#5d6b7f;text-decoration:none;font-size:13px;font-weight:650}.avp-headlinks a:hover{color:var(--avp-brand)}
.avp-wrap{max-width:1260px;margin:auto;padding:30px 24px 75px}.avp-crumb{font-size:12px;color:var(--avp-muted);margin-bottom:22px}.avp-crumb a{color:var(--avp-blue);text-decoration:none}.avp-hero{background:linear-gradient(115deg,#152940 8%,#173c5d 58%,#164e6e);color:#fff;border-radius:21px;padding:31px 37px;display:flex;justify-content:space-between;align-items:center;gap:20px;overflow:hidden;position:relative}.avp-hero:after{content:"";position:absolute;right:-105px;top:-125px;width:390px;height:390px;border-radius:50%;border:62px solid #ffffff11;pointer-events:none}.avp-hero h1{font-size:clamp(25px,3.3vw,36px);margin:9px 0 10px;letter-spacing:-.8px}.avp-hero p{color:#d4e5f1;font-size:14px;max-width:690px;line-height:1.7;margin:0}.avp-overline{text-transform:uppercase;font-weight:800;font-size:11px;letter-spacing:2px;color:#f6ac76}.avp-hero-symbol{font-size:64px;font-weight:850;color:#f9bf822c;z-index:1;letter-spacing:-8px;padding:12px}
.avp-stats{display:flex;gap:10px;flex-wrap:wrap;margin:22px 0}.avp-chip{display:flex;align-items:center;gap:9px;background:#fff;border:1px solid var(--avp-line);border-radius:12px;padding:11px 16px;font-size:12px;color:var(--avp-muted)}.avp-chip strong{font-weight:800;font-size:14px;color:var(--avp-ink)}.avp-dot{width:8px;height:8px;border-radius:50%;display:inline-block;background:var(--avp-brand)}
.avp-card{background:#fff;border:1px solid var(--avp-line);box-shadow:0 3px 24px #152d4211;border-radius:16px}.avp-form-card{padding:25px 27px}.avp-section-top{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}.avp-section-top h2{font-size:18px;margin:0 0 6px}.avp-sub{margin:0;color:var(--avp-muted);font-size:13px;line-height:1.6}.avp-form{display:grid;grid-template-columns:1fr 1fr 1fr auto;gap:16px;align-items:end;margin-top:23px}.avp-field{display:flex;flex-direction:column;gap:8px;min-width:0}.avp-field label{font-size:12px;font-weight:750;color:#506079}.avp-field input,.avp-field select{width:100%;font-family:inherit;min-height:45px;border:1px solid #dbe4ef;background:#fff;border-radius:9px;padding:10px 13px;outline:none;font-size:14px;color:#1d3049}.avp-field input:focus,.avp-field select:focus{border-color:#6e9be7;box-shadow:0 0 0 3px #5d91da22}.avp-btn{border:0;background:var(--avp-brand);color:#fff;border-radius:9px;min-height:45px;padding:11px 19px;font-size:13px;font-weight:800;cursor:pointer;white-space:nowrap}.avp-btn:disabled{opacity:.45;cursor:not-allowed}.avp-btn:hover:not(:disabled){filter:brightness(.96)}.avp-btn-ghost{background:#eff3f8;color:#2e4665}.avp-btn-green{background:var(--avp-green)}.avp-alert{margin:17px 0 0;padding:13px 15px;border-radius:10px;font-size:13px;line-height:1.6;background:#fff5ed;border:1px solid #f8e0c6;color:#85511f}.avp-alert.error{background:#fff0f0;border-color:#fed6d6;color:#a22931}.avp-alert.success{background:#effaf5;border-color:#ccead8;color:#176047}.avp-hidden{display:none!important}
.avp-result{margin-top:25px}.avp-result-top{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:16px;flex-wrap:wrap}.avp-result-top h2{font-size:18px;margin:0}.avp-result-tools{display:flex;align-items:center;gap:11px;flex-wrap:wrap}.avp-switch{border:1px solid var(--avp-line);background:white;border-radius:9px;padding:9px 12px;font-weight:650;font-size:12px;color:#54647d;cursor:pointer}.avp-switch.active{border-color:#87adeb;color:#1a55a4;background:#eaf3ff}.avp-store{padding:23px 26px}.avp-store-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;flex-wrap:wrap}.avp-store-title{font-size:23px;font-weight:820;letter-spacing:-.4px;margin:5px 0 11px}.avp-kicker{font-size:11px;color:#7388a2;text-transform:uppercase;letter-spacing:1.5px;font-weight:850}.avp-route-badge{padding:11px 15px;background:#eaf5ff;color:#2356a0;border-radius:12px;text-align:center;min-width:130px}.avp-route-badge strong{display:block;font-size:19px;margin-top:4px}.avp-shop-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;border-top:1px solid var(--avp-line);padding-top:16px;margin-top:15px}.avp-fact span{font-size:11px;color:var(--avp-muted)}.avp-fact strong{display:block;margin-top:4px;font-size:13px;overflow-wrap:anywhere}.avp-fact.wide{grid-column:span 2}.avp-program-intro{display:flex;align-items:center;gap:12px;justify-content:space-between;margin:25px 0 13px}.avp-program-intro h3{margin:0;font-size:17px}.avp-program-intro p{margin:5px 0 0;color:var(--avp-muted);font-size:12px}.avp-program-count{font-size:12px;font-weight:800;color:var(--avp-blue)}
.avp-groups{display:flex;flex-direction:column;gap:22px}.avp-group{margin:0}.avp-group-title{font-size:13px;color:#1f496d;font-weight:850;letter-spacing:.5px;text-transform:uppercase;margin:0 0 11px;display:flex;align-items:center;gap:8px}.avp-group-title:before{content:"";height:16px;width:4px;background:var(--avp-brand);border-radius:10px}.avp-program-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.avp-program{border:1px solid #e0e8f2;border-radius:13px;background:#fff;padding:15px 16px;min-width:0;position:relative}.avp-program:before{position:absolute;content:"";height:3px;top:0;left:16px;right:16px;background:linear-gradient(90deg,#ef8c55,#ffd0a9);border-radius:0 0 6px 6px}.avp-program small{display:block;font-size:11px;color:#73839b;line-height:1.4}.avp-program h4{font-size:13px;line-height:1.45;margin:5px 0 11px;overflow-wrap:anywhere}.avp-program-value{background:#eff7ff;border:1px solid #e3efff;color:#1456a0;font-weight:750;font-size:14px;border-radius:8px;padding:11px 12px;white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.55}.avp-program-note{font-size:11px;color:#9c5d28;margin-top:9px;line-height:1.55}.avp-empty{border:1px dashed #cad7e7;padding:35px 20px;background:#fcfdff;border-radius:15px;text-align:center;color:#61738b;font-size:13px;line-height:1.7}.avp-footer{text-align:center;padding:25px 16px;color:#8590a2;font-size:12px}.avp-micro{color:#7e8ca0;font-size:12px;line-height:1.7;margin-top:18px}.avp-micro a{color:#426eaf}
.avp-admin-form{display:grid;gap:14px}.avp-admin-input{width:100%;padding:12px 14px;min-height:46px;border:1px solid #d5dfec;border-radius:9px;background:#fff;font:inherit;font-size:14px}.avp-admin-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.avp-progress{height:12px;background:#e5ebf4;border-radius:99px;overflow:hidden}.avp-progress>div{height:100%;background:linear-gradient(90deg,#eb7242,#34a6a4);width:0;transition:width .15s}.avp-admin-step{padding:21px;margin:17px 0}.avp-admin-step h2{font-size:17px;margin:0 0 12px}.avp-admin-help{font-size:12px;color:#607188;line-height:1.75}.avp-preview-table{overflow:auto;max-height:380px;border:1px solid var(--avp-line);border-radius:9px}.avp-preview-table table{width:100%;min-width:650px;border-collapse:collapse;font-size:11px}.avp-preview-table td,.avp-preview-table th{padding:9px;border-bottom:1px solid #ebeff5;text-align:left;max-width:200px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.avp-preview-table th{background:#edf3fa;position:sticky;top:0;z-index:1}.avp-warn{color:#8b421c;background:#fff3e8;border:1px solid #f2d7c3;border-radius:9px;padding:14px;font-size:12px;line-height:1.6}
@media(max-width:900px){.avp-form{grid-template-columns:repeat(2,1fr)}.avp-form .avp-btn{grid-column:span 2}.avp-program-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.avp-shop-facts{grid-template-columns:repeat(2,minmax(0,1fr))}.avp-admin-grid{grid-template-columns:1fr 1fr}}
@media(max-width:610px){.avp-top-in{padding:14px 16px}.avp-headlinks{gap:10px}.avp-headlinks a{font-size:11px}.avp-wrap{padding:17px 13px 50px}.avp-hero{padding:24px 22px;border-radius:15px}.avp-hero-symbol{display:none}.avp-hero p{font-size:13px}.avp-stats{margin:14px 0}.avp-chip{padding:10px 12px}.avp-form-card{padding:19px 16px}.avp-form{grid-template-columns:1fr;gap:13px}.avp-form .avp-btn{grid-column:auto}.avp-store{padding:20px 15px}.avp-program-grid{grid-template-columns:1fr}.avp-store-title{font-size:21px}.avp-shop-facts{grid-template-columns:1fr 1fr}.avp-fact.wide{grid-column:span 2}.avp-admin-grid{grid-template-columns:1fr}.avp-result-tools{width:100%}.avp-switch{flex:1}}
@media print{.avp-top,.avp-form-card,.avp-result-tools,.avp-footer,.avp-micro,.avp-crumb{display:none!important}.avp-wrap{padding:0}.avp-hero{background:#fff!important;color:#111!important;padding:5px 0 20px}.avp-hero p{color:#555}.avp-program-grid{grid-template-columns:1fr 1fr}.avp-program{break-inside:avoid}.avp-group{break-inside:avoid}}

/* Cascade selectors: native dropdowns work equally well on Android, iOS, desktop. */
.avp-field select{min-height:49px;max-width:100%;appearance:auto;text-overflow:ellipsis;background:#fff;cursor:pointer;padding-right:6px}
.avp-field select:disabled{background:#f1f5fa;color:#8795a8;cursor:not-allowed}
.avp-select-help{margin:12px 0 0;color:#61758c;font-size:12px;line-height:1.6}
.avp-form-card .avp-field label{color:#24527c;font-size:12px}
@media(max-width:610px){.avp-field select{font-size:16px;min-height:52px}}

/* Dense all-visible dashboard v4 — no collapsed groups; show the entire program text. */
.avp-wrap{max-width:1410px;padding:18px 24px 44px}
.avp-crumb{margin-bottom:11px}
.avp-hero{padding:17px 23px;border-radius:13px}
.avp-hero h1{font-size:26px;margin:4px 0 5px}
.avp-hero p{font-size:12px;line-height:1.45;max-width:900px}
.avp-hero-symbol{font-size:38px}
.avp-overline{font-size:9px;letter-spacing:1.4px}
.avp-stats{margin:11px 0;gap:7px}
.avp-chip{padding:7px 11px;font-size:11px;border-radius:8px}
.avp-chip strong{font-size:12px}
.avp-form-card{padding:15px 18px}
.avp-section-top h2{font-size:15px;margin-bottom:2px}
.avp-sub{font-size:11px}
.avp-form{gap:10px;margin-top:11px}
.avp-field{gap:5px}
.avp-field label,.avp-form-card .avp-field label{font-size:11px}
.avp-field select{min-height:39px;font-size:12px;padding:8px 9px}
.avp-form .avp-btn{min-height:39px;padding:9px 15px}
.avp-select-help{margin-top:8px}
.avp-alert{margin-top:9px;padding:8px 12px}
.avp-result{margin-top:14px}
.avp-result-top{margin-bottom:8px}
.avp-result-top h2{font-size:16px}
.avp-result-tools{gap:6px}
.avp-result-tools .avp-switch,.avp-result-tools .avp-btn{font-size:11px;padding:7px 10px;min-height:32px;border-radius:7px}
.avp-store-dense{padding:15px}
.avp-shop-compact-head{display:flex;justify-content:space-between;align-items:center;gap:12px}
.avp-store-main{display:flex;flex-wrap:wrap;align-items:baseline;column-gap:11px;row-gap:3px;min-width:0}
.avp-store-main .avp-kicker{font-size:10px}
.avp-store-main .avp-store-title{font-size:19px;margin:0;display:inline;line-height:1.25}
.avp-shop-address{color:#748298;font-size:11px;overflow-wrap:anywhere}
.avp-shop-compact-head .avp-route-badge{flex:0 0 auto;min-width:85px;padding:7px 12px;border-radius:9px}
.avp-shop-compact-head .avp-route-badge span{font-size:10px;font-weight:700}
.avp-shop-compact-head .avp-route-badge strong{font-size:15px;margin-top:1px}
.avp-shop-facts.avp-facts-dense{display:flex;flex-wrap:wrap;column-gap:20px;row-gap:4px;border-top:1px solid #e9edf4;margin-top:8px;padding-top:9px}
.avp-facts-dense .avp-fact{display:flex;gap:5px;align-items:baseline;min-width:0}
.avp-facts-dense .avp-fact span{font-size:10px;white-space:nowrap}
.avp-facts-dense .avp-fact strong{font-size:11px;margin:0}
.avp-dense-summary{display:flex;gap:12px;align-items:center;justify-content:space-between;margin:11px 0 9px;border-top:1px solid #e9edf4;padding-top:9px}
.avp-dense-summary h3{font-size:14px;margin:0}
.avp-dense-summary span{font-size:11px;color:#61738b}
.avp-dense-groups{column-count:3;column-gap:11px}
.avp-dense-group{background:#fff;display:inline-block;width:100%;vertical-align:top;break-inside:avoid;page-break-inside:avoid;margin:0 0 11px;border:1px solid #dce6f0;border-radius:10px;overflow:hidden}
.avp-dense-group-head{background:#eef5fc;padding:8px 10px;display:flex;justify-content:space-between;align-items:baseline;gap:6px;border-bottom:1px solid #dce6f0}
.avp-dense-group-head h3{font-size:11px;font-weight:800;color:#174a76;margin:0;line-height:1.35;overflow-wrap:anywhere}
.avp-dense-group-head span{font-size:10px;flex:0 0 auto;color:#306290;font-weight:800;background:white;border-radius:99px;padding:1px 7px}
.avp-mini-indicator{display:grid;grid-template-columns:minmax(0,1.17fr) minmax(0,1fr);align-items:start;gap:9px;padding:7px 9px;border-top:1px solid #edf1f6;line-height:1.35}
.avp-mini-indicator:first-child{border-top:0}
.avp-mini-descrip{min-width:0}
.avp-mini-label{font-size:11px;font-weight:670;color:#273950;overflow-wrap:anywhere}
.avp-mini-note{display:block;color:#96663d;font-size:10px;margin-top:2px;overflow-wrap:anywhere}
.avp-mini-val{font-size:11px;font-weight:760;color:#1654a1;background:#f0f6ff;padding:5px 7px;border-radius:5px;white-space:pre-wrap;overflow-wrap:anywhere;min-width:0;line-height:1.35}
.avp-micro{font-size:10px;margin-top:9px}
@media(max-width:1040px){.avp-dense-groups{column-count:2}.avp-wrap{padding:17px 18px 45px}}
@media(max-width:680px){.avp-dense-groups{column-count:1}.avp-wrap{padding:12px 10px 34px}.avp-hero{padding:14px 15px}.avp-hero h1{font-size:22px}.avp-stats{gap:6px}.avp-chip{padding:6px 9px}.avp-form-card{padding:12px}.avp-form{grid-template-columns:1fr;gap:8px}.avp-form .avp-btn{grid-column:auto}.avp-field select{font-size:16px;min-height:44px}.avp-store-dense{padding:11px}.avp-shop-compact-head{align-items:start}.avp-store-main .avp-store-title{font-size:17px}.avp-shop-address{font-size:10px}.avp-shop-facts.avp-facts-dense{column-gap:10px}.avp-facts-dense .avp-fact span{font-size:9px}.avp-dense-group{margin-bottom:8px}.avp-mini-indicator{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr)}.avp-dense-summary{align-items:start}}
@media print{
 .avp-dense-groups{column-count:2;column-gap:8px}
 .avp-dense-group{break-inside:avoid}
 .avp-mini-indicator{break-inside:avoid}
 .avp-result{display:block!important}
 .avp-mini-val,.avp-dense-group-head{-webkit-print-color-adjust:exact;print-color-adjust:exact}
}

/* Route visit dropdown · v5: four linked selects + action, responsive */
@media(min-width:1041px){.avp-form{grid-template-columns:repeat(4,minmax(0,1fr)) auto;gap:9px}.avp-form .avp-btn{grid-column:auto}}
@media(min-width:681px) and (max-width:1040px){.avp-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.avp-form .avp-btn{grid-column:span 2}}
@media(max-width:680px){.avp-form{grid-template-columns:1fr;gap:9px}.avp-form .avp-btn{grid-column:auto}}
.avp-route-field select{border-color:#a4c7ed;background:#f6fbff}
.avp-route-field select:focus{background:white}
