/* V4 IA component ownership; approved V2 card theme remains the imported base. */
@import url('./visual-system.css?v=0454805d1b1b954da81f7faec4f4fa5ef51ab1220788df80518feafb79701fe8');
.visual-v4 .ia-tools [hidden] {display:none;}
.visual-v4 .sr-only {position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;}
.visual-v4 .discovery-hero .lede {max-width:85ch;}
.visual-v4 .selected-tray-content {grid-template-columns:repeat(2,minmax(0,1fr));max-height:30dvh;overflow:auto;overscroll-behavior:contain;min-width:0;}
.visual-v4 .selected-tray-group {min-width:0;width:auto;}
.visual-v4 .selected-tray-row {min-width:0;grid-template-columns:minmax(0,1fr) 44px;}
.visual-v4 .selected-tray-row>span {min-width:0;overflow-wrap:anywhere;}
.visual-v4 .selected-tray-row :is(strong,small) {white-space:normal;text-overflow:clip;overflow:visible;}
.visual-v4 .results-hero {margin-bottom:8px;}
.visual-v4 .results-hero h1 {margin-block:8px;}
.visual-v4 .trip-summary-line {display:block;padding:0;margin-top:8px;}
.ia-order-preview {display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:4px 16px;font-size:1rem;}
.ia-order-preview>span {flex:1 1 250px;min-width:0;}
.ia-order-preview>div {display:flex;gap:8px;flex-wrap:wrap;}
.visual-v4 :is(.ia-order-preview,.ia-tools,.ia-dialog,.ia-context,#ia-empty) button {font:inherit;min-width:44px;min-height:44px;border:1px solid var(--vs-border);background:var(--vs-card);color:var(--vs-action);border-radius:10px;padding:8px 12px;line-height:1.4;white-space:normal;}
.visual-v4 .ia-tools {display:flex;gap:8px;flex-wrap:wrap;align-items:center;}
.ia-search {position:relative;flex:1 1 230px;min-width:0;}
.ia-search input {width:100%;min-height:44px;padding:8px 56px 8px 12px;border:1px solid var(--vs-border);border-radius:10px;background:var(--vs-card);}
.ia-search input::-webkit-search-cancel-button {display:none;}
.visual-v4 .ia-search [data-ia-clear-search] {position:absolute;inset-block-start:0;inset-inline-end:0;width:44px;height:44px;min-width:44px;padding:0;border:0;background:transparent;font-size:1.35rem;}
.ia-tools button[aria-pressed=true] {border-color:var(--vs-action);font-weight:600;}
.ia-context {position:fixed;z-index:15;top:0;left:0;right:0;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px max(16px,calc((100% - 1112px)/2));background:var(--vs-page);border-bottom:1px solid var(--vs-border);}
.ia-context strong {min-width:0;overflow-wrap:break-word;}
.visual-v4 .ia-context [hidden] {display:none;}
.ia-context>[data-ia-current] {flex:0 1 24%;}
.ia-context-actions {display:contents;}
.ia-global-search {display:flex;align-items:center;gap:8px;flex:1 1 260px;min-width:0;max-width:620px;}
.ia-global-search .ia-search {flex:1 1 160px;}
.ia-global-search input {font:inherit;color:inherit;}
.visual-v4 .ia-global-search [data-ia-global-clear] {position:absolute;inset-inline-end:0;inset-block-start:0;width:44px;min-height:44px;padding:0;border:0;background:transparent;font-size:1.35rem;}
.visual-v4 .ia-global-search [data-ia-global-open] {display:none;}
.visual-v4 .ia-global-results {position:absolute;top:100%;inset-inline: max(12px,calc((100% - 1112px)/2));width:auto;max-height:60dvh;overflow:auto;overscroll-behavior:contain;padding:12px;background:var(--vs-page);border:1px solid var(--vs-border);box-shadow:0 4px 10px #0001;}
.ia-global-results>[data-ia-global-count] {margin:0 0 8px;font-weight:600;}
.ia-global-results .discovery-city-group {margin-block:12px;}
.visual-v4 .ia-global-results .discovery-place-grid {grid-template-columns:repeat(auto-fit,minmax(min(260px,100%),1fr));}
.ia-global-results .discovery-place {min-width:0;}
.ia-global-results .is-navigation-result {cursor:pointer;}
@media(max-width:700px){
 .ia-context {gap:8px;flex-wrap:wrap;}
 .ia-context>[data-ia-current] {flex:1 0 auto;min-width:min-content;max-width:100%;overflow-wrap:normal;word-break:normal;}
 .ia-context-actions {display:flex;align-items:center;gap:8px;flex-wrap:wrap;flex:0 1 auto;width:max-content;max-width:100%;min-width:0;}
 .ia-context-actions>[data-ia-open="jump"] {flex:0 1 auto;min-width:min-content;max-width:100%;}
 .ia-global-search {flex:0 0 auto;min-width:min-content;}
 .visual-v4 .ia-global-search [data-ia-global-open] {display:block;}
 .ia-global-search #ia-global-field {display:none;}
 .ia-context.is-global-search>[data-ia-current],.ia-context.is-global-search [data-ia-global-open] {display:none;}
 .ia-context.is-global-search {flex-wrap:wrap;}
 .ia-context.is-global-search .ia-context-actions {flex:1 1 100%;width:100%;}
 .ia-context.is-global-search .ia-global-search {flex:1 1 100%;min-width:0;max-width:100%;flex-wrap:wrap;}
 .ia-context.is-global-search #ia-global-field {flex:1 1 160px;min-width:0;max-width:100%;}
 .ia-context.is-global-search [data-ia-global-close] {flex:0 0 auto;min-width:min-content;}
 .ia-context.is-global-search #ia-global-field {display:block;}
 .ia-context .ia-jump-long {display:none;}
 .ia-context .ia-jump-short {display:inline;}
 .ia-global-results {max-height:55dvh;}
}
.ia-jump-short {display:none;}
.visual-v4 .results-view::after {content:"";display:block;height:var(--ia-scroll-tail,0px);}
.ia-destination-section {margin-block:16px 24px;scroll-margin-top:80px;}
.visual-v4 .consumer-city-header {padding-block:4px;margin-bottom:12px;}
.visual-v4 .consumer-city-header .consumer-city-identity>span {font-size:.875rem;}
.ia-dialog {box-sizing:border-box;width:min(620px,calc(100% - 24px));max-height:calc(100dvh - 32px);padding:20px;border:1px solid var(--vs-border);background:white;color:var(--vs-ink);overflow:auto;overscroll-behavior:contain;}
.ia-dialog header {display:flex;justify-content:space-between;align-items:start;gap:12px;}
.ia-dialog header h2 {margin:0;font:600 1.375rem/1.4 var(--sans);}
.ia-dialog footer {display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap;margin-top:16px;}
.visual-v4 .ia-dialog .primary-button {background:var(--vs-action);color:white;}
.ia-panel-list {display:grid;gap:8px;margin-top:16px;}
.ia-order-item,.ia-jump-item,.ia-focus-item {display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:44px;padding:8px 0;border-bottom:1px solid var(--vs-border);}
.ia-order-item>span,.ia-jump-item>span,.ia-focus-item>span {min-width:0;text-align:left;}
.ia-order-item small,.ia-jump-item small,.ia-focus-item small {display:block;font-size:.875rem;color:var(--vs-secondary);}
.ia-order-item>div {display:flex;gap:4px;flex-shrink:0;}
.ia-focus-item {justify-content:flex-start;}
.ia-focus-item input {width:22px;height:22px;accent-color:var(--vs-action);flex-shrink:0;}
.ia-dialog button:disabled {opacity:.45;cursor:not-allowed;}
.visual-v4 .choice-supporting-facts {font-weight:400;color:var(--vs-secondary);border:0;padding:0 0 0 20px;background:transparent;}
.visual-v4 .choice-supporting-facts li {font-size:1rem;font-weight:400;line-height:1.6;}
/* Explicit existing secondary/reference containers, never provider-brand inference. */
.visual-v4 .consumer-detail :is(.secondary-execution-path,.secondary-action,.official-channel-role) :is(.phase4-primary-link,.action-link,.visual-primary-copy) {background:transparent;border:1px solid var(--vs-border);color:var(--vs-action);font-weight:400;}
.visual-v4 .consumer-detail [data-cta-type="EXTERNAL_OFFICIAL_INFO"] {background:transparent;border:1px solid var(--vs-border);color:var(--vs-action);font-weight:400;}
/* Search counts belong to the actual result heading; browse totals stay secondary. */
.visual-v4 #discovery-city-chips.search-active [data-discovery-province="all"] b {display:none;}
@media(min-width:768px){
 .visual-v4 .ia-destination-section .execution-card {max-width:100%;}
 .visual-v4 .ia-destination-section .execution-card :is(p,ul,ol) {max-width:70ch;}
}
@media(max-width:767px){
 .visual-v4 .selected-tray-content {grid-template-columns:minmax(0,1fr);max-height:28dvh;}
 .visual-v4 .results-view {padding-top:12px;}
 .visual-v4 .results-hero .back-button {min-height:44px;padding-block:4px;}
 .visual-v4 .presentation-nav {margin-block:8px;padding:0;background:transparent;}
 .visual-v4 .travel-help {display:block;padding:0;border:0;margin:4px 0;}
 .visual-v4 .travel-help :is(.travel-help-heading,.travel-help-shortcuts){display:none;}
 .visual-v4 .travel-help .travel-help-open {min-height:44px;padding:8px 0;border:0;background:transparent;font-size:1rem;}
 .visual-v4 .action-summary-header {padding-block:8px;}
 .visual-v4 .action-summary-metrics {gap:4px 8px;}
 .visual-v4 .ia-tools {gap:4px 8px;}
 .ia-search {flex-basis:100%;}
 .ia-order-preview {gap:4px;}
 .visual-v4 .ia-destination-section {margin-top:8px;}
 .ia-dialog {padding:16px;}
}
@media(max-height:600px){.visual-v4 .selection-bottom-region:has(.is-expanded){position:static;} .visual-v4 .selected-tray-content{max-height:35dvh;}}
@media(max-width:359px){.ia-context .ia-jump-long{display:none;}.ia-context .ia-jump-short{display:inline;}.ia-context strong{overflow-wrap:normal;word-break:normal;}}
