.vi-discovery{position:relative;margin:0 0 26px;padding:22px;border:1px solid #d9e5ed;border-radius:22px;background:linear-gradient(145deg,#fff,#f6fbfe);box-shadow:0 14px 36px rgba(11,61,93,.08)}
.vi-discovery-head{margin-bottom:15px}.vi-discovery-head h2{margin:0;color:#103f60;font-size:clamp(21px,3vw,31px)}.vi-discovery-head p{margin:5px 0 0;color:#587286;font-size:13px;white-space:normal!important}.vi-discovery-kicker{color:#d56716;font-size:10px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}
.vi-search-form{display:grid;grid-template-columns:minmax(220px,1fr) repeat(3,minmax(130px,.28fr)) auto;gap:9px}.vi-search-form input,.vi-search-form select{width:100%;min-width:0;height:48px;border:1px solid #cbdce7;border-radius:12px;background:#fff;padding:0 13px;color:#173f59;font:inherit}.vi-search-form input:focus,.vi-search-form select:focus{outline:3px solid rgba(18,111,168,.16);border-color:#287eaf}.vi-search-form select:disabled{background:#f2f6f8;color:#738897}.vi-search-submit{min-height:48px;padding:0 24px;border:0;border-radius:12px;background:#0b5f92;color:#fff;font-weight:900;cursor:pointer}
.vi-mode-switch{display:flex;gap:7px;margin-top:11px}.vi-mode{min-height:42px;border:1px solid #c7d9e5;border-radius:999px;background:#fff;color:#24506c;padding:9px 15px;font-weight:850;cursor:pointer}.vi-mode[aria-pressed="true"]{background:#103f60;border-color:#103f60;color:#fff}.vi-near{margin-left:auto}.vi-search-note{min-height:18px;margin:8px 3px 0;color:#647d8e;font-size:11px}
.vi-discovery-section{max-width:100%;margin:26px 0;overflow:hidden}.vi-section-head{display:flex;align-items:end;justify-content:space-between;gap:12px;margin-bottom:12px}.vi-section-head h2{margin:0;color:#133f5c;font-size:20px}.vi-section-head p{margin:3px 0 0;color:#6a8090;font-size:12px;white-space:normal!important}.vi-status{font-size:11px;color:#597487;text-align:right}.vi-result-grid{display:grid;max-width:100%;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;overflow:hidden}.vi-category-grid{display:flex;max-width:100%;gap:8px;overflow-x:auto;padding:2px 1px 8px}.vi-category-chip{flex:0 0 auto;min-height:42px;border:1px solid #cadae4;border-radius:999px;background:#fff;color:#174766;padding:10px 14px;font-weight:800;cursor:pointer}.vi-empty{grid-column:1/-1;min-width:0;padding:25px;border:1px dashed #c7d8e3;border-radius:16px;background:#f8fbfd;color:#607b8d;text-align:center;overflow-wrap:anywhere}.vi-empty strong,.vi-empty span{display:block;white-space:normal!important}.vi-empty strong{margin-bottom:5px;color:#264e68}
.vi-result-card{min-width:0;max-width:100%;overflow:hidden;border:1px solid #d9e5ed;border-radius:17px;background:#fff;box-shadow:0 8px 24px rgba(11,61,93,.07)}.vi-card-media{display:grid;max-width:100%;place-items:center;height:128px;overflow:hidden;background:linear-gradient(135deg,#e7f2f8,#f8fbfd);color:#1b5f88;font-size:28px;font-weight:900}.vi-card-media img{display:block;width:100%!important;min-width:0!important;max-width:100%!important;height:100%!important;object-fit:cover}.vi-card-body{min-width:0;padding:15px}.vi-card-category{display:block;color:#c65f17;font-size:10px;font-weight:900;text-transform:uppercase}.vi-card-body h3{margin:5px 0 2px;color:#173f59;font-size:17px}.vi-card-location{margin:0;color:#607b8d;font-size:12px}.vi-card-description{display:-webkit-box;min-height:38px;margin:10px 0 14px;overflow:hidden;color:#526c7d;font-size:12px;line-height:1.55;-webkit-box-orient:vertical;-webkit-line-clamp:2}.vi-card-action{width:100%;min-height:42px;border:1px solid #0b5f92;border-radius:11px;background:#fff;color:#0b5f92;font-weight:900;cursor:pointer}
@media(max-width:1050px){.vi-search-form{grid-template-columns:repeat(2,minmax(0,1fr))}.vi-search-form>input{grid-column:1/-1}.vi-search-submit{grid-column:2}.vi-result-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.vi-discovery{padding:16px;margin-left:-2px;margin-right:-2px;border-radius:17px}.vi-search-form{grid-template-columns:1fr}.vi-search-form>input,.vi-search-submit{grid-column:auto}.vi-mode-switch{display:grid;grid-template-columns:1fr 1fr}.vi-near{grid-column:1/-1;margin-left:0}.vi-result-grid{grid-template-columns:minmax(0,1fr)}.vi-section-head{align-items:start}.vi-status{max-width:42%}}
