.segment-container a,.segment-container button{position:relative;z-index:10}.segment-container{background-color:var(--rdt-segment-bg);border:1px solid var(--rdt-segment-border);border-radius:8px;margin:6px;padding:8px;transition:background-color .2s ease,border-color .2s ease,box-shadow .2s ease}.flight-segment-card,.layover-card,.layover-container,.segment-card,.segment-container,.selected-arrive-card,.selected-depart-card,.selected-flight-card,.selected-layover-card{scroll-margin-top:30px}.segment-container[role=button]{cursor:pointer}.segment-container[role=button]:hover{background-color:var(--rdt-segment-bg-hover);box-shadow:0 2px 8px rgba(0,0,0,.2)}.segment-container[role=button]:focus{outline:2px solid var(--color-brand-primary-light);outline-offset:2px}.layover-card.journey-strip-highlight,.layover-container.journey-strip-highlight,.selected-route-container[data-active-segment="0"] .segment-card[data-route-index="0"],.selected-route-container[data-active-segment="0"] .segment-container[data-route-index="0"],.selected-route-container[data-active-segment="0"] .selected-flight-card[data-segment-index="0"],.selected-route-container[data-active-segment="1"] .segment-card[data-route-index="1"],.selected-route-container[data-active-segment="1"] .segment-container[data-route-index="1"],.selected-route-container[data-active-segment="1"] .selected-flight-card[data-segment-index="1"],.selected-route-container[data-active-segment="2"] .segment-card[data-route-index="2"],.selected-route-container[data-active-segment="2"] .segment-container[data-route-index="2"],.selected-route-container[data-active-segment="2"] .selected-flight-card[data-segment-index="2"],.selected-route-container[data-active-segment="3"] .segment-card[data-route-index="3"],.selected-route-container[data-active-segment="3"] .segment-container[data-route-index="3"],.selected-route-container[data-active-segment="3"] .selected-flight-card[data-segment-index="3"],.selected-route-container[data-active-segment="4"] .segment-card[data-route-index="4"],.selected-route-container[data-active-segment="4"] .segment-container[data-route-index="4"],.selected-route-container[data-active-segment="4"] .selected-flight-card[data-segment-index="4"]{border:1px solid var(--color-brand-primary-light,#528eff);box-shadow:0 0 0 1px var(--color-brand-primary,#528eff);transition:border-color .3s ease,box-shadow .3s ease}.segment-header{border-bottom:1px solid var(--color-divider);justify-content:space-between;margin-bottom:8px;padding-bottom:8px}.airline-info,.segment-header{align-items:center;display:flex}.airline-info{gap:12px}.airline-logo{border-radius:4px;height:32px;-o-object-fit:contain;object-fit:contain;width:32px}.airline-name{color:var(--text-primary);font-size:14px;font-weight:500}.airline-flight-icon,.airline-location-icon{display:block;flex-shrink:0;height:24px;width:24px}.airline-flight-icon{margin-left:6px;opacity:.95}.flight-arc{align-items:flex-start;display:flex;height:38px;justify-content:center;margin-top:0;overflow:visible;position:relative}.flight-arc-svg{display:block;height:24px;overflow:visible;width:100%}.flight-arc-path{stroke:hsla(0,0%,100%,.18);stroke-dasharray:3 4;stroke-linecap:round;vector-effect:non-scaling-stroke}.flight-arc-icon{height:20px;top:0;transform:translateX(-50%) rotate(90deg);width:20px}.arc-day-offset,.flight-arc-icon{left:50%;position:absolute;z-index:3}.arc-day-offset{color:var(--color-text-secondary);font-size:12px;font-weight:600;text-shadow:0 1px 2px rgba(0,0,0,.3);top:22px;transform:translateX(-50%);white-space:nowrap}.arc-day-offset.positive{color:var(--color-accent-blue)}.arc-day-offset.negative{color:var(--color-warning)}.flight-details-grid{align-items:center;display:flex;gap:24px;justify-content:space-between;margin:0 auto;text-align:center;width:min(420px,100%)}.flight-detail-value{align-items:center;color:var(--color-text-primary);display:inline-flex;font-size:14px;font-variant-numeric:tabular-nums;font-weight:700;justify-content:center;line-height:1.1;min-width:11ch;white-space:nowrap}.flight-day-offset{color:var(--color-text-secondary);display:block;font-size:12px;font-weight:600;line-height:1;margin-top:4px}.flight-detail-value .flight-day-offset{color:#ccc;display:block;font-size:12px;font-weight:600;margin-top:2px}.distance-toggle{align-items:center;align-self:flex-start;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent!important;border:none;border-radius:0;box-shadow:none;color:inherit;cursor:pointer;display:inline-flex;gap:0;justify-content:center;line-height:1;min-width:12ch;padding:0;position:relative;top:1px;transition:transform .15s ease;vertical-align:middle}.distance-toggle:hover{transform:scale(1.05)}.distance-toggle:active{transform:scale(.98)}.distance-toggle:focus-visible{outline:2px solid var(--color-accent-blue);outline-offset:2px}.flight-distance{align-items:center;background:transparent;display:inline-flex;flex-wrap:nowrap;white-space:nowrap}.distance-number{font-variant-numeric:tabular-nums}.distance-unit{align-items:center;background:var(--color-selection-bg,hsla(0,0%,100%,.12));border-radius:999px;display:inline-flex;font-size:11px;font-weight:700;justify-content:center;line-height:1;min-width:2.5ch;padding:2px 8px;white-space:nowrap}@media (max-width:640px){.flight-details-grid{gap:12px;justify-content:space-between;width:92%}}.flight-info-row{align-items:stretch;flex:0 0 auto;flex-direction:column;gap:6px;overflow:visible;width:auto}.flight-info-row,.flight-time-info{display:flex;min-width:0;white-space:nowrap}.flight-time-info{align-items:flex-start;flex-direction:column;gap:2px;max-width:100%;overflow:hidden}.departure-row{margin-left:auto}.departure-row .flight-time-info{align-items:flex-end;text-align:right}.arrival-row{margin-left:0}.arrival-row .flight-time-info{align-items:flex-start;text-align:left}.time-large{flex-shrink:0;font-size:14px;font-weight:600;line-height:1}.location-code,.time-large{color:var(--color-text-primary);white-space:nowrap}.location-code{flex-shrink:1;font-size:12px;font-weight:500;overflow:hidden;text-overflow:ellipsis}.arrive-date,.depart-date{color:var(--color-text-secondary);flex-shrink:0;font-size:12px;font-weight:400;white-space:nowrap}.segment-badge{align-self:center;background-color:var(--color-selection-bg);border-radius:4px;color:var(--color-accent-blue);font-size:11px;font-weight:600;letter-spacing:.5px;margin-left:12px;padding:4px 8px;text-transform:uppercase;white-space:nowrap}.segment-header-right{align-items:center;display:flex;gap:8px}.segment-footer{border-top:1px solid var(--color-divider);justify-content:space-between;margin-top:8px;padding-top:12px}.aircraft-info,.segment-footer{align-items:center;display:flex}.aircraft-info{color:var(--color-text-secondary);font-size:12px;gap:6px}.amenities{align-items:center;display:flex;gap:12px}.day-night-icon{display:block;height:20px;width:20px}.sun-icon{filter:none}.moon-icon{filter:brightness(.55) saturate(80%)}.layover-container{background-color:var(--color-bg-layover);border-radius:8px;margin:6px;padding:8px;transition:background-color .2s ease,box-shadow .2s ease}.layover-container[role=button],.stay-container[role=button]{cursor:pointer}.layover-container[role=button]:hover{background-color:var(--color-bg-layover-hover,rgba(251,191,36,.15));box-shadow:0 2px 8px rgba(0,0,0,.2)}.layover-container[role=button]:focus{outline:2px solid var(--color-warning);outline-offset:2px}.layover-container.stay-container{background-color:var(--color-bg-stay)}.layover-container.stay-container .layover-icon,.layover-container.stay-container .layover-location{color:var(--color-brand-primary-light)}.layover-header{align-items:center;border-bottom:1px solid var(--color-divider);display:flex;gap:12px;margin-bottom:8px;padding-bottom:8px}.layover-icon{color:var(--color-warning);flex-shrink:0;height:24px;width:24px}.layover-header-info{align-items:center;display:flex;flex:1;gap:12px;min-width:0}.layover-location{color:var(--color-text-secondary);font-size:13px;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.layover-body{display:flex;gap:6px}.layover-info-row{align-items:stretch;flex:0 0 auto;flex-direction:column;gap:6px;overflow:visible;width:auto}.layover-info-row,.layover-time-info{display:flex;min-width:0;white-space:nowrap}.layover-time-info{align-items:flex-start;flex-direction:column;gap:2px;max-width:100%;overflow:hidden}.layover-start-row{margin-left:auto}.layover-start-row .layover-time-info{align-items:flex-end;text-align:right}.layover-end-row{margin-left:0}.layover-end-row .layover-time-info{align-items:flex-start;text-align:left}.layover-date{color:var(--color-text-secondary);flex-shrink:0;font-size:12px;font-weight:400;white-space:nowrap}.layover-visual{align-items:center;display:flex;flex:1 1 auto;justify-content:center;max-width:none;width:100%}.layover-timeline{width:100%}.layover-summary{align-items:flex-start;display:flex;flex-direction:column;width:100%}.layover-divider{align-items:center;display:flex;gap:10px;padding:4px 0;width:100%}.layover-divider-line{align-items:center;display:flex;flex:1;height:16px;justify-content:center;position:relative}.layover-divider-line:before{border-top:1px dashed var(--color-divider);content:"";left:0;position:absolute;right:0;top:50%}.hourglass-icon{background:var(--color-bg-layover);border-radius:50%;height:24px;-o-object-fit:contain;object-fit:contain;padding:2px;position:relative;width:24px;z-index:1}.layover-container.stay-container .hourglass-icon{background:var(--color-bg-stay)}.divider-icon{height:18px;width:18px}.layover-lounge-list{display:flex;flex-direction:column;gap:6px;width:100%}.layover-lounge-list[hidden]{display:none!important}.acc-detail-lounges .layover-lounge-list{padding:0 10px 10px}.layover-lounges{align-items:center;display:flex;flex-direction:column;gap:8px;width:100%}.lounge-row{background:hsla(0,0%,100%,.04);border:none;border-radius:6px;padding:8px 10px}.lounge-name-row{align-items:center;display:flex;gap:8px;justify-content:space-between}.lounge-name{color:var(--color-text-primary);font-size:13px;font-weight:700}.lounge-meta{color:var(--color-text-secondary);font-size:12px;margin-top:2px}.lounge-program-icon{border-radius:3px;flex-shrink:0;height:20px;max-width:40px;-o-object-fit:contain;object-fit:contain;opacity:.85;width:auto}.lounge-empty,.lounge-loading{color:var(--color-text-secondary);font-size:12px;text-align:center}.flight-details-grid{position:relative;transform:translateY(-6px);transition:transform .16s ease}@media (max-width:640px){.flight-details-grid{transform:translateY(-4px)}}.segment-card{background:var(--color-bg-card,#0d192b);border:1px solid var(--color-divider);border-radius:8px;margin-bottom:10px;padding:8px;transition:all .2s ease}.segment-card:hover{box-shadow:0 4px 14px rgba(0,0,0,.3)}.sc-header{border-bottom:1px solid var(--color-divider);justify-content:space-between;margin-bottom:12px;padding-bottom:6px}.airline-badge,.sc-header{align-items:center;display:flex}.airline-badge{gap:10px}.airline-badge .airline-logo{align-items:center;background:none;border-radius:0;color:#fff;display:flex;flex-shrink:0;font-size:14px;font-weight:700;height:35px;justify-content:center;-o-object-fit:cover;object-fit:cover;width:35px}.airline-badge .airline-logo img{height:100%;-o-object-fit:cover;object-fit:cover;width:100%}.airline-badge .airline-name{color:var(--text-primary);font-size:14px;font-weight:600}.flight-num{color:var(--text-secondary);font-size:12px}.sc-header-right{align-items:flex-end;display:flex;flex-direction:column;gap:3px}.seg-badge{background:rgba(82,142,255,.3);border-radius:3px;color:var(--primitive-blue-200,#528eff);display:inline-flex;font-size:9px;font-weight:600;letter-spacing:.3px;padding:2px 8px;text-transform:uppercase}.seg-badge,.segment-edit-btn{align-items:center;height:auto}.segment-edit-btn{background:none;border:1px solid hsla(0,0%,100%,.2);border-radius:5px;color:var(--primitive-gray-300);cursor:pointer;display:flex;font-size:12px;gap:6px;justify-content:center;padding:4px 10px;transition:all .15s ease;white-space:nowrap}.segment-edit-btn:hover{background:rgba(82,142,255,.12);border-color:#528eff;color:#ddd}.segment-edit-btn:focus-visible{outline:2px solid var(--color-brand-primary,#528eff);outline-offset:2px}.segment-edit-btn svg{flex-shrink:0;height:14px;width:14px}.timeline-row{align-items:flex-start;display:flex;position:relative}.time-col{display:flex;flex:0 0 auto;flex-direction:column;gap:2px;min-width:60px}.time-col.dep{align-items:flex-end;text-align:right}.time-col.arr{align-items:flex-start;text-align:left}.t-time{color:var(--text-primary);font-size:18px;font-weight:700;line-height:1}.t-date{color:var(--text-secondary);font-size:11px}.t-code{color:var(--primitive-blue-500,#09f);font-size:12px;font-weight:600}.arc{align-items:center;display:flex;flex:1;flex-direction:column;padding:0 6px;position:relative}.arc svg{height:30px;overflow:visible;width:100%}.arc-path{fill:none;stroke:rgba(82,142,255,.3);stroke-dasharray:3 4;stroke-linecap:round;stroke-width:1.5}.arc svg.arc-plane-icon{height:20px;width:20px}.arc-plane-icon{filter:brightness(.8);height:16px;left:50%;opacity:.9;position:absolute;transform:translateX(-50%) rotate(90deg);width:16px}.arc-stats{color:var(--text-secondary);font-size:12px;gap:16px}.arc-stat,.arc-stats{align-items:center;display:flex}.arc-stat{font-weight:500;gap:4px}.distance-button{align-items:center;background:none;border:1px solid hsla(0,0%,100%,.2);border-radius:5px;color:var(--text-tertiary,#6b7280);cursor:pointer;display:flex;font-family:inherit;font-size:12px;height:auto;justify-content:center;transition:all .15s ease;white-space:nowrap}.distance-button:hover{background:rgba(82,142,255,.08);border:1px solid rgba(82,142,255,.8);color:var(--color-brand-primary,#528eff)}.distance-button:focus-visible{outline:2px solid rgba(82,142,255,.35);outline-offset:2px}.arc-stat .val{color:var(--text-primary);font-variant-numeric:tabular-nums;font-weight:700}.dn-icon-wrapper{height:16px;pointer-events:none;position:absolute;top:4px;width:16px;z-index:1}.dn-icon-wrapper.dn-icon-dep{left:6px}.dn-icon-wrapper.dn-icon-arr{right:6px}.dn-icon-wrapper .dn-icon{height:16px;width:16px}.sc-footer{border-top:1px solid var(--color-divider);color:var(--text-tertiary);font-size:12px;gap:12px;margin-top:10px;padding-top:10px}.aircraft-chip,.sc-footer{align-items:center;display:flex}.aircraft-chip{background:hsla(0,0%,100%,.04);border-radius:6px;gap:4px;padding:3px 8px}.layover-card{background:var(--color-warning-bg,rgba(251,191,36,.2));border-radius:10px;margin-bottom:10px;padding:12px 180px 12px 14px;position:relative}.layover-card .lounges-toggle{align-items:center;background:rgba(0,0,0,.3);border:1px solid hsla(0,0%,100%,.12);border-radius:6px;color:var(--text-secondary);cursor:pointer;display:flex;font-family:inherit;font-size:12px;gap:6px;padding:4px 10px;position:absolute;right:8px;top:0;transition:all .2s ease}.layover-card .lounges-toggle:hover{background:rgba(0,0,0,.5);border-color:hsla(0,0%,100%,.2)}.layover-card .lounges-toggle .lounges-icon{flex-shrink:0;height:20px;opacity:.8;width:20px}.layover-card .lounges-toggle:hover .lounges-icon{opacity:1}.layover-card .lounges-toggle .lounges-text{font-weight:500}.layover-card .lounges-toggle .lounges-chevron{font-size:14px;transition:transform .2s ease}.layover-card .lounges-toggle[aria-expanded=true]{background:rgba(82,142,255,.15);border-color:var(--color-brand-primary,#528eff)}.layover-card .lounges-toggle[aria-expanded=true] .lounges-chevron{transform:rotate(90deg)}.layover-card .lounges-toggle:focus-visible{outline:2px solid var(--color-brand-primary,#528eff);outline-offset:2px;z-index:10}.layover-card .layover-lounge-list{margin-left:-14px;margin-right:-180px;margin-top:8px;padding-left:14px;padding-right:14px;width:calc(100% + 194px)}.lay-header{align-items:flex-start;display:flex;gap:6px}.lay-info{display:flex;flex:1;flex-direction:column;gap:2px}.lay-time{color:var(--color-warning,#fbbf24);font-size:13px;font-weight:600;line-height:14px;margin-bottom:8px}.lounges-toggle{align-items:center;background:none;border:1px solid hsla(0,0%,100%,.12);border-radius:6px;color:var(--text-secondary);cursor:pointer;display:flex;font-family:inherit;font-size:12px;gap:6px;margin:8px auto 0;padding:4px 10px;transition:all .15s ease;width:-moz-fit-content;width:fit-content}.lounges-toggle:hover{background:rgba(255,138,76,.08);border-color:var(--color-warning,#fbbf24)}.lounges-toggle:focus-visible{outline:2px solid var(--color-warning,#fbbf24);outline-offset:2px}.lounges-icon{height:20px;opacity:.8;width:20px}.lounges-toggle:hover .lounges-icon{opacity:1}.lounges-text{font-weight:500}.lounges-chevron{font-size:14px;transition:transform .2s ease}.lounges-toggle[data-expanded=true] .lounges-chevron{transform:rotate(90deg)}@media (max-width:480px){.segment-card .t-time{font-size:16px}.segment-card .t-date{font-size:10px}.segment-card .t-code{font-size:11px}.time-col{min-width:50px}.arc-stats{font-size:11px;gap:40px}.sc-header .airline-name{font-size:13px}.seg-badge{font-size:8px;margin-bottom:4px;padding:2px 6px}.segment-edit-btn{font-size:11px;gap:4px;padding:3px 8px}.segment-edit-btn svg{height:12px;width:12px}}@media (max-width:390px){.segment-card{padding:8px}.segment-card .t-time{font-size:14px}.time-col{min-width:44px}.arc-stats{font-size:10px;gap:6px}.dn-icon-wrapper,.dn-icon-wrapper .dn-icon{height:14px;width:14px}}@media (prefers-reduced-motion:reduce){.lounges-chevron,.lounges-toggle,.segment-card,.segment-edit-btn{transition:none}}.segments-accordion{display:flex;flex-direction:column;gap:8px;padding:8px 10px 12px}.acc-item{background:var(--color-bg-card);border:1px solid var(--card-border,hsla(0,0%,100%,.08));border-radius:0;overflow:hidden;scroll-margin-top:30px;transition:border-color .2s ease,box-shadow .2s ease}.acc-item:hover{border-color:rgba(82,142,255,.35);box-shadow:0 2px 8px rgba(0,0,0,.2)}.acc-item.selected-arrive-card,.acc-item.selected-depart-card,.acc-item.selected-layover-card{background:var(--color-bg-card);margin-bottom:0;padding:0}.acc-item.selected-layover-card{background:rgba(251,191,36,.05);border-color:rgba(251,191,36,.25)}.acc-item.selected-layover-card:hover{border-color:rgba(251,191,36,.5);box-shadow:0 2px 8px rgba(251,191,36,.08)}.acc-item.selected-layover-card .acc-icon{color:#f59e0b}.acc-item.selected-layover-card .acc-title{color:#fbbf24}.acc-item.selected-layover-card .acc-lounges-label{color:#d97706}.acc-lounges-label{align-items:center;color:var(--color-text-secondary,#9ca3af);display:flex;font-size:12px;font-weight:600;gap:8px;letter-spacing:.05em;padding:10px 14px 6px;text-transform:uppercase}.acc-lounges-label .lounges-icon{height:16px;opacity:.7;width:16px}.acc-item.selected-arrive-card .lounges-toggle,.acc-item.selected-depart-card .lounges-toggle,.acc-item.selected-layover-card .lounges-toggle{display:none}.acc-item.journey-strip-highlight,.selected-route-container[data-active-segment="0"] .acc-item[data-segment-index="0"],.selected-route-container[data-active-segment="1"] .acc-item[data-segment-index="1"],.selected-route-container[data-active-segment="2"] .acc-item[data-segment-index="2"],.selected-route-container[data-active-segment="3"] .acc-item[data-segment-index="3"],.selected-route-container[data-active-segment="4"] .acc-item[data-segment-index="4"]{border-color:var(--color-brand-primary-light,#528eff);box-shadow:0 0 0 1px var(--color-brand-primary,#528eff)}.acc-summary{align-items:center;box-sizing:border-box;cursor:pointer;display:flex;gap:10px;min-height:60px;padding:8px 12px;-webkit-user-select:none;-moz-user-select:none;user-select:none}.acc-icon{flex-shrink:0;height:20px;opacity:.8;width:20px}.acc-summary-text{flex:1;min-width:0}.acc-title{color:var(--color-text-primary,#e3e3e3);font-size:14px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.acc-subtitle{color:var(--color-text-secondary,#9ca3af);font-size:12px;margin-top:2px}.acc-flight-summary{align-items:center;display:grid;flex:1;gap:8px;grid-template-columns:auto 1fr auto;min-width:0}.acc-endpoint{display:flex;flex-direction:column;gap:1px}.acc-endpoint--arr{align-items:flex-end;text-align:right}.acc-iata{color:var(--color-text-primary,#e3e3e3);font-size:15px;font-weight:700;letter-spacing:.02em;line-height:1.2}.acc-hhmm{color:var(--color-text-tertiary);font-size:12px;line-height:1.2}.acc-date-small{color:var(--color-text-tertiary,#6b7280);font-size:11px;line-height:1.2}.acc-route-mid{align-items:center;display:flex;flex:1;gap:6px;min-width:0}.acc-route-mid:after,.acc-route-mid:before{background:var(--color-divider,hsla(0,0%,100%,.12));content:"";flex:1;height:1px}.acc-dur-row{align-items:center;display:flex;flex-direction:column;flex-shrink:0;gap:2px;white-space:nowrap}.acc-dur{color:var(--color-text-tertiary,#6b7280);font-size:11px;white-space:nowrap}.acc-day-offset{background:rgba(82,142,255,.12);color:var(--color-brand-primary,#528eff);font-size:10px;font-weight:600;padding:1px 5px;white-space:nowrap}.acc-chevron{color:var(--color-text-tertiary,#6b7280);flex-shrink:0;height:18px;transition:transform .22s ease;width:18px}.acc-item.acc-open>.acc-summary .acc-chevron{transform:rotate(180deg)}.acc-detail{border-top:1px solid var(--color-divider,hsla(0,0%,100%,.06))}.acc-item:not(.acc-open) .acc-detail{display:none}.acc-detail-bar{justify-content:space-between;padding:10px 14px 6px}.acc-airline,.acc-detail-bar{align-items:center;display:flex;gap:8px}.acc-airline-logo{border-radius:4px;flex-shrink:0;height:28px;-o-object-fit:contain;object-fit:contain;width:28px}.acc-airline-name{color:var(--color-text-primary,#e3e3e3);font-size:13px;font-weight:600;line-height:1.3}.acc-flight-num{font-size:11px;line-height:1.3;margin-top:1px}.acc-change-btn,.acc-flight-num{color:var(--color-text-secondary,#9ca3af)}.acc-change-btn{align-items:center;background:none;border:1px solid hsla(0,0%,100%,.12);border-radius:7px;cursor:pointer;display:flex;flex-shrink:0;font-family:inherit;font-size:12px;font-weight:500;gap:5px;height:34px;padding:0 10px;transition:all .15s ease;white-space:nowrap}.acc-change-btn:hover{background:var(--color-bg-hover,rgba(82,142,255,.12));border-color:var(--color-brand-primary,#528eff);color:var(--primitive-gray-200,#e3e3e3)}.acc-change-btn svg{flex-shrink:0;height:14px;width:14px}.acc-timeline{padding:4px 14px 14px}.acc-timeline-row{align-items:center;display:flex;gap:4px}.acc-time-col{align-items:center;display:flex;flex-direction:column;flex-shrink:0;min-width:56px}.acc-time-col .t-time{color:var(--color-text-primary,#e3e3e3);font-size:18px;font-weight:700;line-height:1.2}.acc-time-col .t-date{color:var(--color-text-secondary,#9ca3af);font-size:11px;margin-top:2px;text-align:center}.acc-time-col .t-code{color:var(--color-text-secondary,#9ca3af);font-size:13px;font-weight:600;margin-top:4px}.acc-arc-wrap{flex:1;min-width:0}.acc-detail-lounges{padding:0}.acc-aircraft-chip{align-items:center;color:var(--color-text-secondary,#9ca3af);display:flex;font-size:11px;gap:4px;margin-top:6px}@media (max-width:480px){.acc-summary{min-height:60px;padding:6px 10px}.acc-detail-bar{flex-wrap:wrap;gap:6px;padding:8px 12px 4px}.acc-timeline{padding:4px 12px 12px}.acc-iata{font-size:14px}}@media (prefers-reduced-motion:reduce){.acc-chevron{transition:none}}.selected-route-container{color:var(--color-text-secondary);font-family:Google Sans,Roboto,Helvetica Neue,Arial,sans-serif;padding:0}.flight-header{align-items:center;display:flex;flex-wrap:wrap;gap:var(--space-2-5);height:auto;min-height:40px;position:relative;z-index:5}.back-button .change-route-button,.share-button{align-items:center;background-color:transparent;border:1px solid var(--rdt-selected-action-border);border-radius:var(--radius-sm);box-sizing:border-box;color:var(--rdt-selected-action-text);cursor:pointer;display:flex;height:36px;padding:var(--space-1-5);transition:all .2s ease;white-space:nowrap;width:-moz-fit-content;width:fit-content;z-index:6}.back-button .change-route-button{max-width:150px;position:relative}.back-button .change-route-button svg{flex-shrink:0;height:16px;width:16px}.share-button-container{order:3;position:relative;z-index:10}.share-button{justify-content:center;min-width:36px;order:3;padding:var(--space-1-5) var(--space-2-5)}.share-button svg{flex-shrink:0;height:20px;width:20px}.back-button .change-route-button:hover,.share-button:hover{background-color:var(--rdt-selected-action-bg-hover);border-color:var(--color-brand-accent)}.back-button .change-route-button:active,.share-button:active{transform:translateY(1px)}.back-button .change-route-button:focus,.share-button:focus{box-shadow:0 0 0 3px var(--color-focus-ring);outline:none}.back-button{width:auto}.flight-price{background-color:var(--rdt-selected-price-bg);border-radius:var(--radius-sm);color:var(--rdt-selected-price-text);font-size:20px;font-weight:600;margin-left:auto;padding:0 var(--space-4);white-space:nowrap}.flight-price,.route-remove-button{align-items:center;box-sizing:border-box;display:flex;flex-shrink:0;height:36px;justify-content:center}.route-remove-button{background-color:var(--rdt-selected-remove-bg);border:none;border-radius:var(--radius-base);cursor:pointer;max-width:40px;min-width:40px;padding:0;transition:all .2s ease;width:40px}.route-remove-button:hover{background-color:var(--rdt-selected-remove-bg-hover)}.route-remove-button img,.route-remove-button svg{filter:none;height:20px;order:4;width:20px}.selected-route-container .time-large{color:var(--text-primary);flex-shrink:0;font-size:12px;font-weight:600;line-height:1;white-space:nowrap}.selected-route-container .location-code{color:var(--text-primary);flex-shrink:1;font-size:11px;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.baggage-accordion-card .baggage-grid{display:flex;flex-direction:column;gap:0;padding:10px 14px}.baggage-accordion-card .baggage-item-simple{align-items:center;border-bottom:1px solid var(--color-divider,hsla(0,0%,100%,.06));display:flex;gap:10px;justify-content:space-between;padding:10px 0}.baggage-accordion-card .baggage-item-simple:last-child{border-bottom:none;padding-bottom:0}.baggage-accordion-card .baggage-item-simple:first-child{padding-top:0}.baggage-accordion-card .baggage-item-simple .baggage-icon{flex-shrink:0;font-size:18px;line-height:1}.baggage-label{color:var(--color-text-secondary);flex:1}.baggage-label,.baggage-status{font-size:13px;white-space:nowrap}.baggage-status{color:var(--color-brand-primary);font-weight:600}.baggage-status.included{color:var(--color-status-success)}@media (max-width:480px){.selected-route-container .segment-body{gap:var(--space-3)}.selected-route-container .time-large{font-size:11px}.selected-route-container .location-code{font-size:10px}.selected-route-container{padding-bottom:var(--space-2-5)}}.flight-header{background:var(--rdt-selected-header-bg);display:block;margin:0;padding:0;position:sticky;top:0;width:100%;z-index:60}.fullFlight-info-container{margin:0 auto;max-width:640px;padding:0 8px}.flight-header+.fullFlight-info-container{margin-top:8px}.fullFlight-info-container .layover-card,.fullFlight-info-container .segment-card{margin-left:0;margin-right:0}.fullFlight-info-container .baggage-accordion-card{margin:0 10px 10px}.fullFlight-info-container .booking-section{margin:0 10px 40px}@media (max-width:480px){.fullFlight-info-container{padding:0 6px 16px}.fullFlight-info-container .booking-section{margin:0 10px 40px}}@media (max-width:390px){.fullFlight-info-container{padding:0 4px 12px}.fullFlight-info-container .booking-section{margin:0 10px 40px}}@media (max-width:480px){.layover-container{padding:12px}.layover-icon{height:18px;width:18px}.layover-location{font-size:12px}}.booking-section{margin-top:0}.booking-dropdown{display:inline-block;position:relative;width:100%}.booking-button{align-items:center;background:var(--primitive-blue-600);border:1px solid var(--card-border,hsla(0,0%,100%,.08));border-radius:var(--radius-base);box-shadow:var(--shadow-sm);color:var(--color-text-inverse);cursor:pointer;display:flex;flex-direction:column;font-size:var(--text-sm);font-weight:var(--weight-medium);gap:var(--space-0-5);justify-content:center;padding:var(--space-2) var(--space-4);position:relative;text-decoration:none;transition:all .2s ease;width:100%}.booking-button:hover{border-color:rgba(82,142,255,.35);box-shadow:0 2px 8px rgba(0,0,0,.2);color:var(--color-text-inverse)}.booking-button.expanded,.booking-button:hover{background:linear-gradient(135deg,var(--color-button-primary-hover),var(--color-button-primary))}.booking-button.expanded{border-color:rgba(82,142,255,.5);border-radius:var(--radius-base) var(--radius-base) 0 0}.booking-button-main{font-size:var(--text-sm);font-weight:var(--weight-medium);line-height:var(--leading-tight)}.booking-button-price{color:var(--color-brand-accent-light);font-size:var(--text-xs);font-weight:var(--weight-semibold)}.booking-dropdown-arrow{color:var(--color-text-inverse);flex-shrink:0;height:18px;position:absolute;right:var(--space-3);top:50%;transform:translateY(-50%);transition:transform .22s ease;width:18px}.booking-button.expanded .booking-dropdown-arrow{transform:translateY(-50%) rotate(180deg)}.booking-options-container{background:var(--color-bg-card);border:1px solid rgba(82,142,255,.5);border-radius:0 0 var(--radius-base) var(--radius-base);border-top:none;box-shadow:0 4px 12px rgba(0,0,0,.3);opacity:1;overflow:visible;transition:opacity var(--transition-normal)}.booking-options-container.collapsed{border:none;max-height:0;opacity:0;overflow:hidden}.booking-options-container:not(.collapsed){padding:var(--space-2)}@media (max-width:480px){.booking-options-container:not(.collapsed){padding:var(--space-1-5,6px)}}.route-cards-container{background-color:var(--rdt-cards-bg);box-sizing:border-box;display:flex;flex-direction:column;overflow-x:hidden;overflow-y:visible;padding:5px;width:100%}.route-card{background:var(--rdt-card-bg);border:1px solid var(--rdt-card-border);box-shadow:0 2px 8px var(--rdt-card-shadow);margin-top:8px;padding:4px 10px;position:relative;transition:all .25s cubic-bezier(.4,0,.2,1);z-index:10}.route-card:hover{background:var(--rdt-card-bg-hover);border-color:var(--rdt-card-border-hover);box-shadow:0 4px 16px var(--rdt-card-shadow-hover)}.route-card.route-info-card{background-color:var(--rdt-card-expanded-inner-bg)}.route-card.route-info-card-header{background:var(--rdt-card-expanded-bg);border:1px solid var(--rdt-card-expanded-accent);border-bottom:0}.route-card.route-info-card-header:hover{background:var(--rdt-card-expanded-bg-hover);border-color:var(--rdt-card-expanded-accent)}.card-price{align-items:center;color:var(--color-text-inverse);display:inline-flex;font-size:1.15rem;font-weight:600;min-width:-moz-fit-content;min-width:fit-content;order:1;white-space:nowrap}.price-label{color:var(--color-text-secondary);font-size:.7rem;font-weight:500;letter-spacing:.5px;margin-bottom:-2px;order:0;text-transform:uppercase}.price-per-person{color:var(--color-text-tertiary);font-size:.7rem;margin-top:-2px;order:2}.duration-label{color:var(--color-text-secondary);display:flex;flex-direction:column;font-size:.875rem;gap:.25rem}.edit-return-button{align-items:center;background:transparent;border-radius:var(--radius-md);color:inherit;cursor:pointer;display:flex;flex-direction:column;padding:4px 0 0}.edit-return-button .edit-icon{display:block;height:20px;opacity:.95;width:20px}.edit-return-button .chevron-icon{color:var(--color-accent-blue-dark);fill:none!important;filter:none!important;flex-shrink:0;height:32px;stroke:var(--color-accent-blue)!important;stroke-width:2!important;transition:transform .2s;width:32px}.edit-return-button.expanded .chevron-icon{transform:rotate(180deg)}.edit-return-button{box-sizing:border-box;transition:border-color .12s ease,background-color .12s ease}.edit-return-button:hover{background:var(--primitive-blue-800);border-radius:var(--radius-md)}.select-button:hover{background-color:var(--rdt-select-btn-bg-hover);color:var(--rdt-select-btn-text)}.route-card .destination,.route-card .duration,.route-card .layover,.route-card .origin{flex:1;padding:5px 5px 0;text-align:left;white-space:nowrap;width:auto}.route-card .duration{align-items:flex-end;color:var(--color-text-secondary);display:flex;font-size:.7rem;justify-content:center;min-width:80px}.route-card .duration img{background-color:var(--rdt-skeleton-bg)}.segments{align-items:flex-start;display:flex;flex-direction:row;flex-wrap:nowrap}:root{--route-indicator-width:45%}.card-content{gap:2px;width:100%}.airline-section,.card-content{align-items:center;display:flex}.airline-section{flex-shrink:0;justify-content:flex-start;margin-right:10px}.airline-section.multi-airline{display:grid;gap:2px;grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr;height:32px;width:32px}.airline-logo-grid{border-radius:2px;height:15px;-o-object-fit:contain;object-fit:contain;width:15px}.journey-section{align-items:center;display:flex;flex:1;gap:10px;min-width:0}.arrival-section,.departure-section{display:flex;flex:1 1 0;flex-direction:column;margin-top:2px;min-width:0;position:relative}.departure-section{align-items:flex-end}.departure-section>*{text-align:right}.arrival-section{align-items:flex-start}.arrival-section>*{text-align:left}.arrival-time,.departure-time{color:var(--color-text-secondary);font-size:1rem;font-weight:600;white-space:nowrap}.arrival-code,.departure-code{color:var(--color-text-muted);font-size:.8rem;overflow:visible;white-space:nowrap}.departure-code{direction:rtl;text-align:right}.arrival-code{text-align:left}.arrival-date,.departure-date{color:var(--color-text-muted);display:block;font-size:.8rem;font-weight:400;overflow:visible;white-space:nowrap}.route-indicator{align-items:center;color:var(--color-text-tertiary);display:flex;flex:0 0 var(--route-indicator-width);flex-direction:column;font-size:1.2rem;width:var(--route-indicator-width)}.route-arrow-svg{height:40px;width:100%}.route-arrow-line{stroke:var(--color-border-medium);stroke-width:1}.route-arrow-dot{fill:var(--primitive-blue-500);r:4}.route-arrow-head{fill:var(--color-border-medium)}.route-arrow-iata{dominant-baseline:hanging;fill:var(--color-text-secondary);font-size:.7rem;text-anchor:middle}.route-card .price-section,.route-card .right-bar{align-items:flex-end;display:flex;flex-direction:column;flex-shrink:0;min-width:-moz-fit-content;min-width:fit-content}.route-card .right-bar{justify-content:space-between}.route-card .layover{font-weight:700}.card-content.round-trip .journey-section{display:flex;flex-direction:column;gap:0;grid-column:1;grid-row:1;width:100%}.card-content.round-trip .arrival-section,.card-content.round-trip .departure-section{flex:1 1 0;min-width:0}.outbound-journey,.return-journey{align-items:center;display:flex;flex-direction:row;gap:10px;min-width:0;width:100%}.return-journey-placeholder{align-items:center;display:flex;flex-direction:row;min-height:60px;position:relative;width:100%}.card-content.round-trip .return-journey-placeholder{grid-column:1/-1;grid-row:2}.return-placeholder-container{align-items:center;background:transparent;border:1px solid var(--color-accent-blue);border-radius:var(--radius-sm);box-sizing:border-box;display:flex;gap:8px;justify-content:center;min-height:60px;padding:6px 44px 6px 0;position:relative;width:100%}.return-placeholder-container .airline-section-spacer{margin-right:10px}.return-placeholder-container .return-placeholder-text{border:none;color:var(--color-accent-blue);flex:1;font-size:.9rem;font-weight:500;line-height:1.2;text-align:center}.airline-section-spacer{flex-shrink:0;margin-right:10px;width:32px}.return-placeholder-text{display:block}.outbound-journey .departure-section,.return-journey .departure-section{align-items:flex-end;text-align:right}.outbound-journey .departure-section>*,.return-journey .departure-section>*{text-align:right}.outbound-journey .arrival-section,.return-journey .arrival-section{align-items:flex-start;text-align:left}.outbound-journey .arrival-section>*,.return-journey .arrival-section>*{text-align:left}.journey-details{align-items:center;display:flex;flex:1;gap:0;min-width:0;width:100%}.journey-details .arrival-section,.journey-details .departure-section{flex:1 1 0;min-width:0;overflow:visible}.journey-details .route-indicator{flex:0 0 var(--route-indicator-width);width:var(--route-indicator-width)}.journey-details .departure-section{align-items:flex-end}.journey-details .departure-section>*{text-align:right}.journey-details .arrival-section{align-items:flex-start}.journey-details .arrival-section>*{text-align:left}.card-content.round-trip .outbound-journey{margin-bottom:14px;position:relative}.card-content.round-trip .outbound-journey:after{border-top:1px dashed var(--color-divider);bottom:-12px;content:"";height:0;left:42px;position:absolute;right:0}.card-content.round-trip{align-items:start;display:grid;gap:8px;grid-template-columns:1fr auto;grid-template-rows:auto auto;height:100%}.card-content.round-trip .price-section{justify-content:flex-start;margin-top:6px}.card-content.round-trip .price-section,.card-content.round-trip .right-bar{align-items:flex-end;display:flex;flex-direction:column;grid-column:2;grid-row:1}.card-content.round-trip .right-bar{height:100%;justify-content:space-between}.right-bar .edit-section{align-items:center;display:flex;justify-content:center;margin-bottom:18px;width:100%}@media (max-width:767px){.card-price{flex-shrink:0;font-size:.9rem;order:1;text-align:right}.arrival-time,.departure-time{font-size:.8rem}.arrival-date,.departure-date{font-size:.7rem;max-width:none;overflow:visible;white-space:nowrap;width:auto}.route-card .arrival-section,.route-card .departure-section{width:100%}.route-card .departure-section,.route-card .departure-section>*{align-items:flex-end;margin-top:4px;text-align:right;width:100%}.route-card .arrival-section,.route-card .arrival-section>*{align-items:flex-start;margin-top:4px;text-align:left;width:100%}}@media (min-width:768px){:root{--route-indicator-width:60%}.route-card .card-content{gap:15px}.journey-section{gap:20px}.route-indicator{min-width:100px}.journey-details{gap:20px}}@container infoPane (max-width: 480px){.route-card{--route-indicator-width:48%;padding:4px 8px}.route-card .card-content,.route-card .journey-details,.route-card .journey-section{gap:8px}.route-card .airline-section{margin-right:6px}.route-card .route-indicator{min-width:72px}.route-card .route-arrow-svg{height:30px}.route-card .arrival-time,.route-card .departure-time{font-size:.88rem}.route-card .arrival-code,.route-card .arrival-date,.route-card .departure-code,.route-card .departure-date{font-size:.72rem;max-width:100%;overflow:hidden;text-overflow:ellipsis}.route-card .card-price{font-size:.95rem}.route-card .duration-label,.route-card .price-label,.route-card .price-per-person{font-size:.68rem}}@container infoPane (max-width: 420px){.route-card{--route-indicator-width:44%;padding:4px 7px}.route-card .route-indicator{min-width:64px}.route-card .route-arrow-svg{height:26px}.route-card .arrival-time,.route-card .departure-time{font-size:.82rem}.route-card .card-price{font-size:.88rem}}.route-info-card .journey-section{display:flex}.route-info-card .layover-container .journey-section{justify-content:center}.return-placeholder-container .expand-return-wrapper{position:absolute;right:12px;top:50%;transform:translateY(-50%);z-index:10}.card-content.round-trip{position:relative}.expand-return-flights{align-items:center;background:transparent;border:none;color:inherit;cursor:default;display:flex;height:32px;justify-content:center;padding:0;pointer-events:none;width:32px}.expand-return-flights.expanded:hover,.expand-return-flights:hover{background:transparent}.expand-return-flights .chevron-icon{color:var(--color-accent-blue-dark);flex-shrink:0;height:32px;transition:transform .2s;width:32px}.expand-return-flights.expanded .chevron-icon{transform:rotate(180deg)}.expand-return-wrapper .chevron-icon,.route-card .expand-return-flights .chevron-icon{fill:none!important;filter:none!important;stroke:var(--color-accent-blue)!important;stroke-width:2!important}.return-flights-container{background-color:var(--rdt-card-expanded-bg);border:1px solid var(--primitive-blue-920);border-top:none;box-shadow:0 4px 8px var(--rdt-card-shadow);margin:0 0 5px;max-height:1000px;opacity:1;overflow:hidden;padding:12px;transition:max-height .3s ease,opacity .3s ease,padding .3s ease;width:100%}.return-flights-container.collapsed{border:none;margin:0;max-height:0;opacity:0;padding:0 12px}.route-card.return-expanded{border:1px solid var(--route-card-border,var(--color-border-accent));border-bottom:0}.route-card.route-info-card-header.return-expanded{--route-card-border:var(--rdt-card-expanded-accent)}.return-flights-container:not(.collapsed){border:1px solid var(--route-card-border,var(--color-border-accent));border-top:none}.route-card.route-info-card-header.return-expanded+.return-flights-container:not(.collapsed){--route-card-border:var(--rdt-card-expanded-accent)}.return-flights-container .loading-return-flights{padding:30px 20px}.return-flights-container .error,.return-flights-container .loading,.return-flights-container .no-results{color:var(--color-text-tertiary);font-size:.9rem;padding:20px;text-align:center}.return-flights-container .error{color:var(--color-price-down)}.return-flight-card{background:var(--color-bg-surface-raised);box-shadow:0 2px 4px var(--rdt-card-shadow);cursor:pointer;margin-bottom:5px;padding:0 10px;transition:all .2s ease}.return-flight-card:last-child{margin-bottom:0}.return-flight-card:hover{background:var(--color-bg-surface);box-shadow:0 4px 8px var(--rdt-card-shadow-hover);transform:translateY(-2px)}.return-flight-card .price-section{align-items:flex-end;display:flex;flex-direction:column;flex-shrink:0;margin-top:-6px;min-width:-moz-fit-content;min-width:fit-content}.return-flight-card .journey-section{gap:0}.return-flight-card .route-indicator .duration{align-items:flex-end;color:var(--color-text-secondary);display:flex;font-size:.7rem;justify-content:center;min-width:80px}.return-flight-card .arrival-section,.return-flight-card .departure-section{margin-top:2px}.price-actions{align-items:flex-end;display:flex;flex-direction:column;margin-top:auto;order:4}.price-actions .edit-icon{display:block;height:20px;opacity:.95;width:20px}@keyframes dealCardHighlightFade{0%{outline-color:var(--color-accent-blue,#4a9eff)}80%{outline-color:var(--color-accent-blue,#4a9eff)}to{outline-color:transparent}}.deal-card-highlight{animation:dealCardHighlightFade 2s ease-out forwards;outline:2px solid var(--color-accent-blue,#4a9eff);outline-offset:2px}.airlines-filter-reset,.date-slider-reset,.deck-scroll-button,.filter-button,.layover-cities-filter-reset,.popup-close-button,.popup-reset-all-button,.resetIcon,.slider-reset,.sort-button,.time-slider-reset{-webkit-touch-callout:none;-webkit-tap-highlight-color:var(--color-interactive-hover-bg-mid);touch-action:manipulation}.filter-controls,.filter-popup,.sort-dropdown{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.filter-buttons-container{-webkit-overflow-scrolling:touch}#currentSort,.filter-label,.filter-text,.filter-value{-webkit-user-select:none;-moz-user-select:none;user-select:none}.hidden{display:none!important}[class*=Icon],[id*=Icon]{cursor:pointer;height:16px;width:16px}[class*=Icon]:hover,[id*=Icon]:hover{color:var(--color-brand-primary-light)}.filterIcon:hover{color:initial}.resetIcon{align-items:center;color:var(--color-text-muted);cursor:pointer;display:inline-flex;font-size:15px;justify-content:center;min-height:44px;min-width:28px;padding:var(--space-1-5) var(--space-2) var(--space-2) var(--space-2);pointer-events:auto;position:relative;transition:color .2s,transform .1s;z-index:25;-webkit-touch-callout:none}@media (hover:hover) and (pointer:fine){.resetIcon:hover{color:var(--color-text-primary)}}.resetIcon:active{color:var(--color-text-primary);transform:scale(.9)}.time-reset-icon{align-items:center;color:var(--color-text-muted);cursor:pointer;display:inline-flex;font-size:15px;justify-content:center;margin:-4px;min-height:28px;min-width:28px;padding:4px;position:relative;transition:color .2s,transform .1s;-webkit-user-select:none;-moz-user-select:none;user-select:none;z-index:30;-webkit-touch-callout:none;touch-action:manipulation}@media (hover:hover) and (pointer:fine){.time-reset-icon:hover{color:var(--color-text-inverse)}}.time-reset-icon:active{color:var(--color-text-inverse);transform:scale(.85)}.date-reset-icon{align-items:center;color:var(--color-text-secondary);cursor:pointer;display:inline-flex;font-size:15px;justify-content:center;margin:-4px;min-height:28px;min-width:28px;padding:4px;position:relative;transition:color .2s,transform .1s;-webkit-user-select:none;-moz-user-select:none;user-select:none;z-index:30;-webkit-touch-callout:none;touch-action:manipulation}@media (hover:hover) and (pointer:fine){.date-reset-icon:hover{color:var(--color-text-inverse)}}.date-reset-icon:active{color:var(--color-text-inverse);transform:scale(.85)}.price-slider{width:200px}.popup-close-button{align-items:center;color:var(--color-text-secondary);cursor:pointer;display:inline-flex;font-size:15px;justify-content:center;min-height:44px;min-width:44px;padding:var(--space-1-5) var(--space-2);position:absolute;right:0;top:0;transition:color .2s,transform .1s;z-index:26;-webkit-touch-callout:none;background:transparent;border:none;touch-action:manipulation}.filter-popup .popup-close-button{display:none}.filter-popup .airlines-filter-reset,.filter-popup .cabin-filter-reset,.filter-popup .date-slider-reset,.filter-popup .layover-cities-filter-reset,.filter-popup .lounges-filter-reset,.filter-popup .popup-reset-all-button,.filter-popup .slider-reset,.filter-popup .time-slider-reset{display:none!important}@media (hover:hover) and (pointer:fine){.popup-close-button:hover{color:var(--color-text-inverse)}}.popup-close-button:active{color:var(--color-text-inverse);transform:scale(.9)}.popup-reset-all-button{align-items:center;background:var(--rdt-card-bg);border:1px solid var(--rdt-card-border);border-radius:var(--radius-sm);color:var(--color-text-secondary);cursor:pointer;display:inline-flex;font-size:11px;font-weight:500;justify-content:center;min-height:32px;min-width:44px;padding:var(--space-1) var(--space-2);transition:all .25s cubic-bezier(.4,0,.2,1);visibility:hidden;-webkit-touch-callout:none;touch-action:manipulation}.popup-reset-all-button.visible{visibility:visible}@media (hover:hover) and (pointer:fine){.popup-reset-all-button:hover{background:var(--color-brand-primary);border-color:var(--rdt-card-border-hover);color:var(--color-text-primary)}}.popup-reset-all-button:active{background:var(--color-brand-primary);border-color:var(--rdt-card-border-hover);color:var(--color-text-primary);transform:scale(.95)}.filter-popup-header{align-items:center;display:flex;gap:var(--space-2);justify-content:space-between;min-height:28px}.filter-popup-actions{align-items:center;display:flex;gap:var(--space-1-5);justify-content:flex-end;margin-left:auto}.filter-popup-title{color:var(--color-text-primary);font-size:13px;font-weight:700;letter-spacing:.01em;line-height:1.2}.popup-header-reset{align-items:center;background:hsla(0,0%,100%,.03);border:1px solid var(--rdt-card-border);color:var(--color-text-secondary);display:inline-flex;justify-content:center;visibility:hidden}.popup-header-action,.popup-header-reset{border-radius:999px;cursor:pointer;font-size:11px;min-height:28px;min-width:44px;padding:var(--space-1) var(--space-2);transition:all .25s cubic-bezier(.4,0,.2,1);-webkit-touch-callout:none;touch-action:manipulation}.popup-header-action{border:1px solid transparent}.popup-header-action.secondary{background:var(--rdt-card-bg);border-color:var(--rdt-card-border);color:var(--color-text-secondary)}.popup-header-action.primary{background:var(--gradient-button-primary);box-shadow:var(--shadow-sm);color:var(--color-text-inverse)}@media (hover:hover) and (pointer:fine){.popup-header-action.secondary:hover{background:var(--color-brand-primary);border-color:var(--rdt-card-border-hover);color:var(--color-text-primary)}.popup-header-action.primary:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}}.popup-header-action.primary:active,.popup-header-action.secondary:active{transform:scale(.97)}.popup-header-reset.visible{visibility:visible}@media (hover:hover) and (pointer:fine){.popup-header-reset:hover{background:var(--color-brand-primary);border-color:var(--rdt-card-border-hover);color:var(--color-text-primary)}}.popup-header-reset:active{background:var(--color-brand-primary);border-color:var(--rdt-card-border-hover);color:var(--color-text-primary);transform:scale(.95)}.filter-popup{background:var(--gradient-card-dark);border:1px solid var(--rdt-card-border);border-radius:var(--radius-lg);box-shadow:0 8px 24px var(--rdt-card-shadow-hover);display:flex;flex-direction:column;gap:var(--space-3);max-height:calc(100dvh - env(safe-area-inset-top, 0px) - env(safe-area-inset-bottom, 0px) - 100px);min-height:110px;overflow:visible;padding:var(--space-3) var(--space-4) var(--space-4);padding-left:max(var(--space-4),env(safe-area-inset-left,0px));padding-right:max(var(--space-4),env(safe-area-inset-right,0px));position:fixed;width:min(300px,calc(100vw - 20px));z-index:75;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}.filter-value-label{color:var(--color-text-secondary);flex-shrink:0;font-size:12px;font-weight:500;margin-left:auto;margin-right:auto;text-align:center}.slider-label-container{align-items:center;display:flex;gap:var(--space-1-5);justify-content:space-between;min-height:20px;width:100%}.date-slider-label,.slider-label,.time-slider-label{color:var(--color-text-secondary);font-size:14px;font-weight:500}.date-slider-reset,.slider-reset,.time-slider-reset{background:var(--color-brand-primary);border:none;border-radius:var(--radius-sm);color:var(--color-text-primary);cursor:pointer;font-size:11px;font-weight:500;min-height:32px;min-width:44px;padding:var(--space-1) var(--space-2);transition:all .25s cubic-bezier(.4,0,.2,1);visibility:hidden;-webkit-touch-callout:none;touch-action:manipulation}@media (hover:hover) and (pointer:fine){.date-slider-reset:hover,.slider-reset:hover,.time-slider-reset:hover{background:var(--color-brand-primary-hover);box-shadow:0 2px 6px var(--color-focus-ring)}}.date-slider-reset:active,.slider-reset:active,.time-slider-reset:active{background:var(--color-brand-primary-hover);transform:scale(.95)}.date-slider-reset.visible,.slider-reset.visible,.time-slider-reset.visible{visibility:visible}.date-slider-wrapper,.time-slider-wrapper{display:flex;flex-direction:column;margin-bottom:var(--space-4);padding-bottom:var(--space-4);position:relative}.date-slider-wrapper:after,.time-slider-wrapper:after{background:var(--rdt-card-border);bottom:0;content:"";height:1px;left:-1rem;position:absolute;right:-1rem}.date-slider-wrapper:last-child,.time-slider-wrapper:last-child{margin-bottom:0;padding-bottom:0}.date-slider-wrapper:last-child:after,.time-slider-wrapper:last-child:after{display:none}.noUi-target{box-sizing:border-box!important;margin:40px auto 0!important;width:calc(100% - 20px)!important}.noUi-base,.noUi-target{border:none!important;border-radius:2px!important;box-shadow:none!important}.noUi-base,.noUi-connect,.noUi-target{background:var(--color-accent-blue-dark)!important;box-sizing:border-box!important;height:4px!important}.noUi-tooltip{background-color:var(--color-accent-blue-hover)!important;border:none!important;border-radius:4px!important;bottom:100%!important;box-shadow:0 3px 6px rgba(0,0,0,.1)!important;color:var(--color-bg-surface)!important;font-size:12px!important;font-weight:500!important;left:50%!important;padding:2px 6px!important;pointer-events:none!important;position:absolute!important;transform:translateX(-50%) translateY(-8px)!important;white-space:nowrap!important;z-index:1000!important}.noUi-touch-area{background:transparent!important;margin:-15px!important;padding:22px!important;z-index:1!important;-webkit-touch-callout:none}.noUi-handle,.slider-handle{background-color:var(--color-accent-blue)!important;border:none!important;border-radius:50%!important;box-shadow:0 2px 4px rgba(0,0,0,.3)!important;cursor:pointer!important;height:24px!important;outline:none!important;right:-12px!important;top:-10px!important;transition:box-shadow .2s,border .2s,background .2s,transform .1s;width:24px!important;-webkit-touch-callout:none}.noUi-handle:focus-visible,.slider-handle:focus-visible{background-color:var(--color-accent-blue-hover)!important;border:2px solid #fff!important;box-shadow:0 0 0 3px #fff,0 0 0 6px hsla(0,0%,100%,.25);z-index:10}.noUi-target.slider-focused .noUi-tooltip{border:2px solid #fff!important;box-shadow:0 0 0 4px hsla(0,0%,100%,.25)}.noUi-tooltip:focus-visible{box-shadow:0 0 0 4px var(--color-focus-ring);outline:2px solid var(--color-accent-blue-hover)!important}.noUi-handle:after,.noUi-handle:before,.slider-handle:after,.slider-handle:before{content:none!important}.slider-histogram-wrap{margin-top:2px;position:relative}.slider-histogram-wrap .noUi-target{margin:12px auto 0!important}.slider-histogram{display:block;height:28px;margin:0 auto;overflow:visible;pointer-events:none;width:calc(100% - 20px)}.slider-histogram-bar{fill:var(--color-accent-blue);opacity:.22;transition:opacity .1s ease}.slider-histogram-bar.active{opacity:.6}.dates-sliders-container,.times-sliders-container{display:flex;flex-direction:column;width:100%}.date-slider,.date-slider-wrap,.time-slider,.time-slider-wrap{width:100%}.date-slider-wrap .noUi-target,.time-slider-wrap .noUi-target{width:calc(100% - 20px)!important}.date-slider-wrap .slider-histogram,.time-slider-wrap .slider-histogram{width:calc(100% - 20px)}.filter-controls{align-items:center;background:var(--primitive-blue-960);box-shadow:inset 0 4px 8px rgba(0,0,0,.3);display:flex;flex-wrap:nowrap;height:44px;justify-content:space-between;min-height:44px;padding-left:max(0px,env(safe-area-inset-left,0px));padding-right:max(0px,env(safe-area-inset-right,0px))}.filter-button.skeleton>*{visibility:hidden}.filter-button.skeleton:before{background:var(--rdt-skeleton-bg,#21272e);border-radius:6px;content:"";inset:8px 4px;overflow:hidden;position:absolute}.filter-button.skeleton:after{animation:shimmer 1.5s infinite;background:linear-gradient(90deg,transparent,var(--rdt-skeleton-shimmer,hsla(0,0%,100%,.06)),transparent);border-radius:6px;content:"";inset:8px 4px;position:absolute}@media (prefers-reduced-motion:reduce){.filter-button.skeleton:after{animation:none}}.filter-buttons-container-wrapper{overflow:hidden;position:relative}.filter-buttons-container{align-items:center;display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;-ms-overflow-style:none;min-width:0;position:relative;touch-action:pan-x pan-y}.filter-buttons-container::-webkit-scrollbar{display:none}.sort-button{min-width:-moz-max-content;min-width:max-content;padding:.5rem 1rem;white-space:nowrap;width:-moz-fit-content;width:fit-content}.sort-button>span{align-items:center;display:flex;flex-wrap:nowrap;gap:.4em}.filter-button{align-items:center;background:none;border:none;color:var(--color-text-secondary);cursor:pointer;display:flex;flex-shrink:0;font-size:.9rem;height:44px;min-height:44px;min-width:-moz-fit-content;min-width:fit-content;position:relative;scroll-snap-align:start;transition:color .2s;width:-moz-fit-content;width:fit-content}.filter-button:hover{background:none;color:var(--color-text-primary)}.filter-button>*{pointer-events:auto}@media (hover:hover) and (pointer:fine){.filter-buttons-container button.filter-button:hover,.filter-controls button.filter-button:hover,button.filter-button:hover{background:none;color:var(--color-text-primary)}}button.filter-button:active{transform:scale(.98)}button.filter-button.active,button.filter-button:active{background:none;border:none;color:var(--color-brand-primary-light)}button.filter-button:focus{background:none;border:none;outline:none}.filter-text{align-items:center;display:inline-flex;gap:.25em;white-space:nowrap}.filter-label,.filter-value{color:var(--color-text-secondary);transition:color .2s}.filter-button.active .filter-label,.filter-button.active .filter-value,.filter-text:hover .filter-label,.filter-text:hover .filter-value{color:var(--color-text-primary)}.filter-button:hover .filterIcon,.filter-text:hover~.filterIcon,.filterIcon:hover{filter:brightness(0) invert(1);opacity:1}#currentSort{display:inline-block;overflow:hidden;text-overflow:ellipsis;vertical-align:middle;white-space:nowrap}.sort-button{align-items:center;background:none;border:none;border-radius:0;color:var(--color-text-secondary);cursor:pointer;display:flex;font-size:.9rem;gap:.2rem;margin-left:auto;min-height:44px;padding:0 var(--space-2-5) 0 var(--space-1);position:relative;transition:color .2s,transform .1s;-webkit-touch-callout:none;touch-action:manipulation}.sort-button .sort-icon{height:16px;vertical-align:middle;width:16px}.sort-button:hover .sort-icon{filter:brightness(1.2)}.sort-button.active .sort-icon{filter:brightness(1.5)}.sort-icon:hover{opacity:.8}@media (hover:hover) and (pointer:fine){.sort-button:hover{background:none;color:var(--color-text-primary)}}.sort-button:active{color:var(--color-brand-primary-light);transform:scale(.98)}.sort-button.active{background:none;color:var(--color-brand-primary-light)}.sort-dropdown{background:var(--color-bg-surface-raised);border:1px solid var(--rdt-card-border);border-radius:var(--radius-sm);box-shadow:0 4px 16px var(--rdt-card-shadow-hover);display:none;max-height:calc(100dvh - 120px);min-width:150px;overflow-y:auto;padding-bottom:env(safe-area-inset-bottom,0);position:fixed;z-index:75;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}.sort-dropdown:not(.hidden){display:block}.sort-option{align-items:center;cursor:pointer;display:flex;gap:.5rem;justify-content:space-between;min-height:44px;padding:.75rem 1rem;transition:background .2s;-webkit-touch-callout:none;touch-action:manipulation}.sort-option .menu-icon{height:18px;opacity:.7;width:18px}@media (hover:hover) and (pointer:fine){.sort-option:hover .menu-icon{opacity:1}.sort-option:hover{background:var(--color-interactive-hover-bg)}}.sort-option:active{background:var(--color-interactive-hover-bg-mid)}.sort-option.selected .menu-icon,.sort-option:active .menu-icon{opacity:1}.sort-option.selected{background:var(--color-bg-surface-highest)}.sort-option-best{position:relative}.sort-option-best .menu-label{color:var(--color-brand-primary-light);font-weight:600}.sort-option-best .menu-icon{filter:brightness(0) saturate(100%) invert(52%) sepia(98%) saturate(3599%) hue-rotate(239deg) brightness(95%) contrast(92%);opacity:1}.sort-option-best.selected .menu-label{color:var(--color-brand-primary-light)}.sort-dropdown-divider{background:var(--rdt-card-border);height:1px;margin:2px .75rem}.sort-icon{margin-left:auto}.filter-label,.no-results{color:var(--color-text-muted)}.no-results{align-items:center;display:flex;flex-direction:column;font-size:1.1rem;justify-content:center;min-height:200px;padding:3rem 2rem;text-align:center}.no-results:before{content:"✈️";font-size:3rem;margin-bottom:1rem;opacity:.5}.no-results-suggestions{color:var(--color-text-muted);font-size:.95rem;line-height:1.5;margin:1rem 0 0;max-width:460px;padding-left:1.1rem;text-align:left}.no-results-suggestion+.no-results-suggestion{margin-top:.45rem}.no-results .error-icon{font-size:3rem;margin-bottom:1rem;opacity:.6}.no-results .error-title{color:var(--color-text-muted);font-size:1.3rem;font-weight:600;margin-bottom:.75rem}.no-results .error-message{color:var(--color-text-muted);font-size:1rem;line-height:1.5;max-width:400px}.no-results:has(.error-icon):before{content:none}.cabin-empty-state{align-items:center;display:flex;flex-direction:column;gap:.6rem;justify-content:center;min-height:200px;padding:3rem 2rem;text-align:center}.cabin-empty-state__icon{color:var(--color-text-muted);margin-bottom:.4rem;opacity:.75}.cabin-empty-state__title{color:var(--color-text-primary);font-size:1.15rem;font-weight:600}.cabin-empty-state__hint{color:var(--color-text-muted);font-size:.95rem;line-height:1.5;max-width:320px}.cabin-empty-state__btn{background:var(--color-brand-primary);border:none;border-radius:var(--radius-sm);color:var(--color-text-primary);cursor:pointer;font-size:.9rem;font-weight:500;margin-top:.75rem;min-height:36px;padding:.5rem 1.25rem;touch-action:manipulation;transition:background .2s ease,transform .1s ease}@media (hover:hover) and (pointer:fine){.cabin-empty-state__btn:hover{background:var(--color-brand-primary-hover);box-shadow:0 2px 6px var(--color-focus-ring)}}.cabin-empty-state__btn:active{background:var(--color-brand-primary-hover);transform:scale(.97)}.no-filter-needed{color:var(--color-text-muted);font-size:.95rem;font-style:italic;padding:1.5rem;text-align:center}.deck-scroll-buttons{display:flex;flex-direction:column;gap:8px;justify-content:space-between;opacity:0;pointer-events:none;position:fixed;right:-10px;transition:opacity .3s ease,visibility .3s ease;visibility:hidden;z-index:70}.deck-scroll-buttons.visible{display:flex!important;opacity:.6;pointer-events:none;visibility:visible}.deck-scroll-buttons.visible .deck-scroll-button{pointer-events:auto}.deck-scroll-button{align-items:center;background:linear-gradient(135deg,var(--rdt-btn-gradient-a) 0,var(--rdt-btn-gradient-b) 100%);border:1px solid hsla(0,0%,100%,.15);border-radius:8px 0 0 8px;box-shadow:0 4px 12px rgba(0,0,0,.4);color:var(--color-text-primary);cursor:pointer;display:flex;height:44px;margin-right:10px;padding:0;transition:all .2s ease;-webkit-user-select:none;-moz-user-select:none;user-select:none;width:22px;-webkit-touch-callout:none;touch-action:manipulation}@media (hover:hover) and (pointer:fine){.deck-scroll-button:hover{background:linear-gradient(135deg,var(--rdt-btn-gradient-a-hover) 0,var(--rdt-btn-gradient-b-hover) 100%);border-color:var(--color-focus-ring);box-shadow:0 6px 16px rgba(0,0,0,.5);transform:scale(1.05)}}.deck-scroll-button:active{background:linear-gradient(135deg,var(--rdt-btn-gradient-a-hover) 0,var(--rdt-btn-gradient-b-hover) 100%);box-shadow:0 2px 8px rgba(0,0,0,.3);transform:scale(.92)}.deck-scroll-button svg{fill:currentColor;height:24px;margin:0;width:24px}.deck-scroll-button.hidden{opacity:.3;pointer-events:none}.alliance-filter-container{display:flex;flex-direction:column;gap:6px;margin-bottom:4px}.alliance-filter-label{color:var(--color-text-secondary);font-size:14px;font-weight:500}.alliance-filter-list{display:flex;flex-direction:column;gap:6px}.alliance-checkbox-wrapper{align-items:center;border-radius:4px;cursor:pointer;display:flex;gap:8px;min-height:36px;padding:4px;transition:background .2s;-webkit-touch-callout:none;position:relative;touch-action:manipulation}@media (hover:hover) and (pointer:fine){.alliance-checkbox-wrapper:hover{background:var(--rdt-card-bg)}}.alliance-checkbox-wrapper:active{background:var(--rdt-card-bg)}.alliance-checkbox{align-items:center;-moz-appearance:none;appearance:none;-webkit-appearance:none;background:var(--rdt-card-expanded-inner-bg);border:2px solid var(--color-brand-primary);border-radius:6px;box-shadow:0 1px 2px rgba(0,0,0,.12);cursor:pointer;display:inline-flex;flex-shrink:0;height:24px;justify-content:center;margin:0 0 0 auto;min-height:24px;min-width:24px;order:2;outline:none;position:relative;transition:border-color .2s,background .2s,transform .1s;width:24px}.alliance-checkbox:checked{background:linear-gradient(135deg,var(--color-brand-primary) 60%,var(--color-brand-primary-hover) 100%);border-color:var(--rdt-card-border-hover)}.alliance-checkbox:checked:after{border:solid #fff;border-radius:1px;border-width:0 3px 3px 0;content:"";display:block;height:13px;left:6px;position:absolute;top:2px;transform:rotate(45deg);width:7px}@media (hover:hover) and (pointer:fine){.alliance-checkbox:hover{background:var(--rdt-card-expanded-bg);border-color:var(--rdt-card-border-hover)}}.alliance-checkbox:active{background:var(--rdt-card-expanded-inner-bg);border-color:var(--color-brand-primary);transform:scale(.92)}.alliance-filter-logo{flex-shrink:0;height:20px;-o-object-fit:contain;object-fit:contain;width:20px}.alliance-filter-name{color:var(--color-text-secondary);font-size:13px;white-space:nowrap}.airlines-checkboxes-container,.cabin-checkboxes-container{display:flex;flex-direction:column;gap:10px;max-height:300px}.airlines-filter-label,.cabin-filter-label,.layover-cities-filter-label{color:var(--color-text-secondary);font-size:14px;font-weight:500}.airlines-filter-reset,.cabin-filter-reset,.layover-cities-filter-reset{background:var(--color-brand-primary);border:none;border-radius:4px;color:var(--color-text-primary);cursor:pointer;font-size:11px;font-weight:500;min-height:32px;min-width:44px;padding:6px 10px;transition:background .25s,box-shadow .25s,transform .1s;visibility:hidden;-webkit-touch-callout:none;touch-action:manipulation}.airlines-filter-reset.visible,.cabin-filter-reset.visible,.layover-cities-filter-reset.visible{visibility:visible}@media (hover:hover) and (pointer:fine){.airlines-filter-reset:hover,.cabin-filter-reset:hover,.layover-cities-filter-reset:hover{background:var(--color-brand-primary-hover);box-shadow:0 2px 6px var(--color-focus-ring)}}.airlines-filter-reset:active,.cabin-filter-reset:active,.layover-cities-filter-reset:active{background:var(--color-brand-primary-hover);transform:scale(.95)}.airlines-checkbox-list,.cabin-checkbox-list,.layover-cities-checkbox-list{display:flex;flex-direction:column;gap:8px;overflow-x:hidden;overflow-y:auto;padding-right:5px}.airlines-checkbox-list{max-height:250px}.airlines-checkbox-list::-webkit-scrollbar,.cabin-checkbox-list::-webkit-scrollbar,.layover-cities-checkbox-list::-webkit-scrollbar{width:6px}.airlines-checkbox-list::-webkit-scrollbar-track,.cabin-checkbox-list::-webkit-scrollbar-track,.layover-cities-checkbox-list::-webkit-scrollbar-track{background:var(--rdt-panel-bg);border-radius:3px}.airlines-checkbox-list::-webkit-scrollbar-thumb,.cabin-checkbox-list::-webkit-scrollbar-thumb,.layover-cities-checkbox-list::-webkit-scrollbar-thumb{background:var(--color-scrollbar-thumb);border-radius:3px}.airlines-checkbox-list::-webkit-scrollbar-thumb:hover,.cabin-checkbox-list::-webkit-scrollbar-thumb:hover,.layover-cities-checkbox-list::-webkit-scrollbar-thumb:hover{background:var(--color-scrollbar-thumb-hover)}.airline-checkbox-wrapper,.cabin-checkbox-wrapper,.layover-city-checkbox-wrapper{align-items:center;border-radius:4px;cursor:pointer;display:flex;gap:8px;min-height:44px;padding:8px 4px;position:relative;transition:background .2s;-webkit-touch-callout:none;touch-action:manipulation}@media (hover:hover) and (pointer:fine){.airline-checkbox-wrapper:hover,.cabin-checkbox-wrapper:hover,.layover-city-checkbox-wrapper:hover{background:var(--rdt-card-bg)}}.airline-checkbox-wrapper:active,.cabin-checkbox-wrapper:active,.layover-city-checkbox-wrapper:active{background:var(--rdt-card-bg)}.airline-checkbox-wrapper input[type=checkbox],.cabin-checkbox-wrapper input[type=checkbox],.layover-city-checkbox-wrapper input[type=checkbox]{align-items:center;-moz-appearance:none;appearance:none;-webkit-appearance:none;background:var(--rdt-card-expanded-inner-bg);border:2px solid var(--color-brand-primary);border-radius:6px;box-shadow:0 1px 2px rgba(0,0,0,.12);display:inline-flex;flex-shrink:0;height:24px;justify-content:center;margin:0 0 0 auto;min-height:24px;min-width:24px;order:2;outline:none;position:relative;transition:border-color .2s,background .2s,transform .1s;vertical-align:middle;width:24px;-webkit-touch-callout:none}.airline-checkbox-wrapper input[type=checkbox]:checked,.cabin-checkbox-wrapper input[type=checkbox]:checked,.layover-city-checkbox-wrapper input[type=checkbox]:checked{background:linear-gradient(135deg,var(--color-brand-primary) 60%,var(--color-brand-primary-hover) 100%);border-color:var(--rdt-card-border-hover)}.airline-checkbox-wrapper input[type=checkbox]:focus,.cabin-checkbox-wrapper input[type=checkbox]:focus,.layover-city-checkbox-wrapper input[type=checkbox]:focus{border-color:var(--rdt-card-border-hover);box-shadow:0 0 0 2px var(--color-focus-ring)}.airline-checkbox-wrapper input[type=checkbox]:checked:after,.cabin-checkbox-wrapper input[type=checkbox]:checked:after,.layover-city-checkbox-wrapper input[type=checkbox]:checked:after{border:solid #fff;border-radius:1px;border-width:0 3px 3px 0;content:"";display:block;height:13px;left:6px;position:absolute;top:2px;transform:rotate(45deg);width:7px}@media (hover:hover) and (pointer:fine){.airline-checkbox-wrapper input[type=checkbox]:hover,.cabin-checkbox-wrapper input[type=checkbox]:hover,.layover-city-checkbox-wrapper input[type=checkbox]:hover{background:var(--rdt-card-expanded-bg);border-color:var(--rdt-card-border-hover)}}.airline-checkbox-wrapper input[type=checkbox]:active,.cabin-checkbox-wrapper input[type=checkbox]:active,.layover-city-checkbox-wrapper input[type=checkbox]:active{background:var(--rdt-card-expanded-inner-bg);border-color:var(--color-brand-primary);transform:scale(.92)}.airline-only-button,.cabin-only-button,.layover-city-only-button{right:4px}.airline-only-button,.alliance-only-button,.cabin-only-button,.layover-city-only-button{color:var(--color-brand-primary-light);cursor:pointer;display:none;font-size:14px;font-weight:500;margin:-8px -12px;order:2;padding:8px 12px;position:absolute;transition:color .2s,transform .1s;z-index:10;-webkit-touch-callout:none;touch-action:manipulation}.alliance-only-button{right:40px}.alliance-only-button.hidden-only{display:none}@media (hover:hover) and (pointer:fine){.airline-checkbox-wrapper:hover .airline-only-button:not(.hidden-only),.alliance-checkbox-wrapper:hover .alliance-only-button:not(.hidden-only),.cabin-checkbox-wrapper:hover .cabin-only-button:not(.hidden-only),.layover-city-checkbox-wrapper:hover .layover-city-only-button:not(.hidden-only){display:block}.airline-only-button:hover,.alliance-only-button:hover,.cabin-only-button:hover,.layover-city-only-button:hover{color:var(--color-text-primary)}}@media (hover:none) and (pointer:coarse){.airline-only-button:not(.hidden-only),.alliance-only-button:not(.hidden-only),.cabin-only-button:not(.hidden-only),.layover-city-only-button:not(.hidden-only){display:block}}.airline-only-button:active,.alliance-only-button:active,.cabin-only-button:active,.layover-city-only-button:active{color:var(--color-text-primary);transform:scale(.95)}@keyframes checkbox-item-spinner-spin{0%{transform:translateY(-50%) rotate(0deg)}to{transform:translateY(-50%) rotate(1turn)}}.checkbox-item-spinner{animation:checkbox-item-spinner-spin .7s linear infinite;border-bottom:2px solid transparent;border-left:2px solid transparent;border-radius:50%;border-right:2px solid transparent;border-right-color:var(--color-brand-primary-light);border-top:2px solid transparent;border-top-color:var(--color-brand-primary-light);display:none;height:14px;pointer-events:none;position:absolute;right:8px;top:50%;transform:translateY(-50%);width:14px;z-index:10}.checkbox-item-spinner.active{display:block}.airline-checkbox-logo{flex-shrink:0;height:24px;-o-object-fit:contain;object-fit:contain;order:1;width:24px}.airline-checkbox-label,.cabin-checkbox-label{align-items:center;color:var(--color-text-secondary);display:flex;flex:1;font-size:13px;gap:6px;min-width:0;order:2;-webkit-user-select:none;-moz-user-select:none;user-select:none}.airline-name-full{color:var(--color-text-secondary);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.airline-code{color:var(--color-text-muted);flex-shrink:0;font-size:11px}.layover-city-checkbox-label{order:1}.layover-city-name{color:var(--color-text-secondary);flex-shrink:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.layover-city-iata{color:var(--color-text-muted);flex-shrink:0;font-size:11px}.layover-cities-checkboxes-container{border-top:1px solid var(--rdt-card-border);display:flex;flex-direction:column;gap:10px;margin-top:20px;max-height:300px;padding-top:15px}.layover-cities-filter-label{color:var(--color-text-secondary);font-size:14px;font-weight:500}.layover-cities-filter-reset{background:var(--color-brand-primary);border:none;border-radius:4px;color:var(--color-text-primary);cursor:pointer;font-size:10px;font-weight:500;height:16px;padding:2px 4px;transition:background .25s,box-shadow .25s;visibility:hidden}.layover-cities-filter-reset.visible{visibility:visible}.layover-cities-filter-reset:hover{background:var(--color-brand-primary-hover);box-shadow:0 2px 6px var(--color-focus-ring)}.layover-cities-checkbox-list{display:flex;flex-direction:column;gap:8px;max-height:200px;overflow-y:auto;padding-right:5px}.layover-cities-checkbox-list::-webkit-scrollbar{width:6px}.layover-cities-checkbox-list::-webkit-scrollbar-track{background:var(--rdt-panel-bg);border-radius:3px}.layover-cities-checkbox-list::-webkit-scrollbar-thumb{background:var(--color-scrollbar-thumb);border-radius:3px}.layover-cities-checkbox-list::-webkit-scrollbar-thumb:hover{background:var(--color-scrollbar-thumb-hover)}.layover-city-checkbox-wrapper{align-items:center;border-radius:4px;cursor:pointer;display:flex;gap:8px;padding:4px;position:relative;transition:background .2s}.layover-city-checkbox-wrapper:hover{background:var(--rdt-card-bg)}.layover-city-checkbox-wrapper input[type=checkbox]{-moz-appearance:none;appearance:none;-webkit-appearance:none;background:var(--rdt-card-expanded-inner-bg);border:2px solid var(--color-brand-primary);border-radius:5px;box-shadow:0 1px 2px rgba(0,0,0,.12);display:inline-block;flex-shrink:0;height:18px;margin:0 0 0 auto;order:2;outline:none;position:relative;transition:border-color .2s,background .2s;vertical-align:middle;width:18px}.layover-city-checkbox-wrapper input[type=checkbox]:checked{background:linear-gradient(135deg,var(--color-brand-primary) 60%,var(--color-brand-primary-hover) 100%);border-color:var(--rdt-card-border-hover)}.layover-city-checkbox-wrapper input[type=checkbox]:focus{border-color:var(--rdt-card-border-hover);box-shadow:0 0 0 2px var(--color-focus-ring)}.layover-city-checkbox-wrapper input[type=checkbox]:checked:after{border:solid #fff;border-radius:1px;border-width:0 2.5px 2.5px 0;content:"";display:block;height:11px;left:4px;position:absolute;top:1px;transform:rotate(45deg);width:6px}.layover-city-checkbox-wrapper input[type=checkbox]:hover{background:var(--rdt-card-expanded-bg);border-color:var(--rdt-card-border-hover)}.layover-city-checkbox-wrapper input[type=checkbox]:active{background:var(--rdt-card-expanded-inner-bg);border-color:var(--color-brand-primary)}@supports selector(:has(*)){.layover-city-checkbox-wrapper:has(.layover-city-only-button:not(.hidden-only)) input[type=checkbox]{display:none}}.layover-city-only-button{color:var(--color-brand-primary-light);cursor:pointer;display:none;font-size:14px;font-weight:500;order:2;position:absolute;right:4px;transition:color .2s;z-index:10}.layover-city-only-button.hidden-only{display:none}.layover-city-checkbox-wrapper:hover .layover-city-only-button:not(.hidden-only){display:block}.layover-city-only-button:hover{color:var(--color-text-primary)}.layover-city-checkbox-label{align-items:center;color:var(--color-text-secondary);display:flex;flex:1;font-size:13px;gap:6px;min-width:0;order:2;-webkit-user-select:none;-moz-user-select:none;user-select:none}.lounges-checkboxes-container{display:flex;flex-direction:column;gap:10px;max-height:350px}.lounges-filter-label{color:var(--color-text-secondary);font-size:14px;font-weight:500}.lounges-filter-reset{background:var(--color-brand-primary);border:none;border-radius:4px;color:var(--color-text-primary);cursor:pointer;font-size:11px;font-weight:500;min-height:32px;min-width:44px;padding:6px 10px;transition:background .25s,box-shadow .25s,transform .1s;visibility:hidden;-webkit-touch-callout:none;touch-action:manipulation}.lounges-filter-reset.visible{visibility:visible}@media (hover:hover) and (pointer:fine){.lounges-filter-reset:hover{background:var(--color-brand-primary-hover);box-shadow:0 2px 6px var(--color-focus-ring)}}.lounges-filter-reset:active{background:var(--color-brand-primary-hover);transform:scale(.95)}.lounges-checkbox-list{display:flex;flex-direction:column;gap:8px;max-height:280px;overflow-y:auto;padding-right:5px}.lounges-checkbox-list::-webkit-scrollbar{width:6px}.lounges-checkbox-list::-webkit-scrollbar-track{background:var(--rdt-panel-bg);border-radius:3px}.lounges-checkbox-list::-webkit-scrollbar-thumb{background:var(--color-scrollbar-thumb);border-radius:3px}.lounges-checkbox-list::-webkit-scrollbar-thumb:hover{background:var(--color-scrollbar-thumb-hover)}.lounge-checkbox-wrapper{align-items:center;border-radius:4px;cursor:pointer;display:flex;gap:8px;min-height:44px;padding:8px 4px;position:relative;transition:background .2s;-webkit-touch-callout:none;touch-action:manipulation}@media (hover:hover) and (pointer:fine){.lounge-checkbox-wrapper:hover{background:var(--rdt-card-bg)}}.lounge-checkbox-wrapper:active{background:var(--rdt-card-bg)}.lounge-checkbox-wrapper input[type=checkbox]{align-items:center;-moz-appearance:none;appearance:none;-webkit-appearance:none;background:var(--rdt-card-expanded-inner-bg);border:2px solid var(--color-brand-primary);border-radius:6px;box-shadow:0 1px 2px rgba(0,0,0,.12);display:inline-flex;flex-shrink:0;height:24px;justify-content:center;margin:0 0 0 auto;min-height:24px;min-width:24px;order:3;outline:none;position:relative;transition:border-color .2s,background .2s,transform .1s;vertical-align:middle;width:24px;-webkit-touch-callout:none}.lounge-checkbox-wrapper input[type=checkbox]:checked{background:linear-gradient(135deg,var(--color-brand-primary) 60%,var(--color-brand-primary-hover) 100%);border-color:var(--rdt-card-border-hover)}.lounge-checkbox-wrapper input[type=checkbox]:focus{border-color:var(--rdt-card-border-hover);box-shadow:0 0 0 2px var(--color-focus-ring)}.lounge-checkbox-wrapper input[type=checkbox]:checked:after{border:solid #fff;border-radius:1px;border-width:0 3px 3px 0;content:"";display:block;height:13px;left:6px;position:absolute;top:2px;transform:rotate(45deg);width:7px}@media (hover:hover) and (pointer:fine){.lounge-checkbox-wrapper input[type=checkbox]:hover{background:var(--rdt-card-expanded-bg);border-color:var(--rdt-card-border-hover)}}.lounge-checkbox-wrapper input[type=checkbox]:active{background:var(--rdt-card-expanded-inner-bg);border-color:var(--color-brand-primary);transform:scale(.92)}@supports selector(:has(*)){.lounge-checkbox-wrapper:has(.lounge-only-button:not(.hidden-only)) input[type=checkbox]{display:none}}.lounge-only-button{color:var(--color-brand-primary-light);cursor:pointer;display:none;font-size:14px;font-weight:500;margin:-8px -12px;order:3;padding:8px 12px;position:absolute;right:4px;transition:color .2s,transform .1s;z-index:10;-webkit-touch-callout:none;touch-action:manipulation}.lounge-only-button.hidden-only{display:none}@media (hover:hover) and (pointer:fine){.lounge-checkbox-wrapper:hover .lounge-only-button:not(.hidden-only){display:block}.lounge-only-button:hover{color:var(--color-text-primary)}}@media (hover:none) and (pointer:coarse){.lounge-only-button:not(.hidden-only){display:block}}.lounge-only-button:active{color:var(--color-text-primary);transform:scale(.95)}.lounge-program-logo{border-radius:3px;flex-shrink:0;height:24px;-o-object-fit:contain;object-fit:contain;order:1;width:24px}.lounge-checkbox-label{flex:1;font-size:13px;gap:6px;min-width:0;order:2;-webkit-user-select:none;-moz-user-select:none;user-select:none}.lounge-checkbox-label,.lounges-loading{align-items:center;color:var(--color-text-secondary);display:flex}.lounges-loading{gap:10px;justify-content:center;padding:20px}.no-lounges-message{color:var(--color-text-muted);font-size:13px;padding:20px;text-align:center}.sort-controls{align-items:center;display:flex;flex-wrap:nowrap;gap:.5rem}:root{--card-border:var(--color-border-card);--text-primary:var(--color-text-primary);--text-secondary:var(--color-text-secondary)}.route-info-card:not(.route-info-card-header){border-bottom:1px solid var(--rdt-card-expanded-accent);border-left:1px solid var(--rdt-card-expanded-accent);border-right:1px solid var(--rdt-card-expanded-accent)}.route-info-card .segments-container{border-radius:0}.route-info-card .route-info-card-content,.route-info-card .segments-container{background-color:var(--rdt-panel-bg);padding:8px}.route-info-card .baggage-card{margin-left:8px;margin-right:8px}.route-info-card .segment-card{margin-bottom:8px}.route-info-card .segment-card:last-child{margin-bottom:0}.route-info-card .layover-card{margin-bottom:8px}.route-info-card .segment-container .card-content{gap:15px}.route-info-card .segment-container .airline-section{margin-right:0}.route-info-card .segment-container .airline-logo{border-radius:5px;height:40px;width:40px}.route-info-card .segment-container .arrival-section,.route-info-card .segment-container .departure-section{gap:2px;min-width:90px;width:90px}.route-info-card .segment-container .arrival-time,.route-info-card .segment-container .departure-time{font-size:1.1rem;font-weight:600}.route-info-card .segment-container .arrival-date,.route-info-card .segment-container .departure-date{font-size:.85rem}.route-info-card .segment-container .arrival-code,.route-info-card .segment-container .departure-code{font-size:.9rem;font-weight:500}.route-info-card .segment-container .route-indicator{flex:1;min-height:80px}.route-info-card .price-section{align-items:center;display:flex}.baggage-card{background-color:var(--rdt-baggage-bg);border:1px solid var(--rdt-baggage-border);border-radius:var(--radius-md);margin-bottom:6px;overflow:hidden}.baggage-card-header{align-items:center;cursor:pointer;display:flex;justify-content:space-between;padding:12px 16px;transition:background-color .2s ease;-webkit-user-select:none;-moz-user-select:none;user-select:none}.baggage-card-header:hover{background-color:var(--color-hover-light)}.baggage-info-left{align-items:center;display:flex;gap:10px}.baggage-info-left img{opacity:.7}.baggage-label{color:var(--color-text-primary);font-size:14px;font-weight:500}.baggage-info-right{align-items:center;display:flex;gap:12px}.baggage-price{color:var(--color-text-secondary);font-size:14px;font-weight:600}.baggage-expand-icon{color:var(--color-text-secondary);height:16px;transition:transform .3s ease;width:16px}.baggage-card.expanded .baggage-expand-icon{transform:rotate(180deg)}.baggage-card-content{max-height:0;overflow:hidden;transition:max-height .3s ease,padding .3s ease}.baggage-card.expanded .baggage-card-content{max-height:200px;padding:0 16px 12px}.baggage-details{display:flex;flex-direction:column;gap:8px}.baggage-item{align-items:center;border-bottom:1px solid var(--color-divider);display:flex;justify-content:space-between;padding:8px 0}.baggage-item:last-child{border-bottom:none}.baggage-item-label{color:var(--color-text-secondary);font-size:13px}.baggage-item-value{color:var(--color-text-primary);font-size:13px;font-weight:600}.booking-container{align-items:center;display:flex;justify-content:center;margin:8px}.route-info-card .booking-container .select-button{align-items:center;background-color:var(--rdt-select-btn-bg);border:none;border-radius:8px;color:var(--rdt-select-btn-text);cursor:pointer;display:flex;flex-direction:column;justify-content:center;min-height:60px;padding:8px;text-align:center;transition:all .2s ease;width:100%}.route-info-card .booking-container .select-button:hover{background-color:var(--rdt-select-btn-bg-hover);transform:translateY(-1px)}.route-info-card .booking-container .select-button:active{background-color:var(--rdt-select-btn-bg);transform:translateY(0)}.route-info-card .booking-container .price-info{color:var(--color-text-inverse);display:block;font-size:1.6rem;font-weight:700}.route-info-card .booking-container .select-label{display:block;font-size:16px;font-weight:500;opacity:.9}.route-info-card .booking-container .price-per-person{font-size:1rem;font-weight:400;opacity:.85}.nomad-destination-divider{align-items:center;display:flex;justify-content:center;margin:20px 0;position:relative}.nomad-destination-divider:before{background:linear-gradient(to right,transparent,var(--color-border-medium),transparent);content:"";flex:1;height:1px;margin-right:15px}.nomad-destination-divider:after{background:linear-gradient(to left,transparent,var(--color-border-medium),transparent);content:"";flex:1;height:1px;margin-left:15px}.destination-info{align-items:center;background:var(--color-bg-surface);border:1px solid var(--color-border-default);border-radius:var(--radius-lg);box-shadow:0 2px 8px var(--color-shadow);display:flex;flex-direction:column;gap:5px;padding:10px 20px}.destination-name{color:var(--color-text-inverse);font-size:16px;font-weight:600;letter-spacing:.5px}.stay-duration{color:var(--color-text-secondary);font-size:12px;font-weight:400}@media (max-width:768px){.route-info-card .segment-container .card-content{gap:10px;padding:12px 0}.route-info-card .segment-container .airline-logo{height:35px;width:35px}.route-info-card .segment-container .arrival-section,.route-info-card .segment-container .departure-section{min-width:65px;width:65px}.route-info-card .segment-container .arrival-time,.route-info-card .segment-container .departure-time{font-size:1rem}.route-info-card .segment-container .arrival-date,.route-info-card .segment-container .departure-date{font-size:.8rem}.route-info-card .segment-container .arrival-code,.route-info-card .segment-container .departure-code{font-size:.85rem}.route-info-card .segment-container{padding:6px}.route-info-card .segment-body{gap:6px}.route-info-card .time-large{font-size:13px}.route-info-card .location-code{font-size:12px}.route-info-card .layover-container{border-radius:8px;flex-direction:column;gap:12px;padding:8px}.route-info-card .booking-container{flex-direction:column}}@media (max-width:480px){.route-info-card .segment-container{padding:8px}.route-info-card .segment-header{margin-bottom:8px;padding-bottom:8px}.route-info-card .segment-container .airline-logo{height:28px;width:28px}.route-info-card .airline-name{font-size:13px}.route-info-card .segment-body{gap:6px}.route-info-card .time-large{font-size:12px}.route-info-card .duration-label,.route-info-card .location-code{font-size:11px}.route-info-card .segment-footer{align-items:flex-start;flex-direction:column;gap:8px}.route-info-card .amenities{gap:10px}.route-info-card .booking-container .price-info{font-size:1.4rem}}.save-flight-button,.save-flight-button-container{align-items:center;display:flex}.save-flight-button{background:transparent;border:none;border-radius:4px;cursor:pointer;justify-content:center;padding:6px;transition:all .2s ease}@media (hover:hover) and (pointer:fine){.save-flight-button:hover{background:var(--color-hover-light);transform:scale(1.05)}}.save-flight-button.saved{animation:pulse .3s ease}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.15)}}.save-flight-icon{filter:brightness(0) invert(1);height:22px;transition:filter .2s ease;width:22px}@media (hover:hover) and (pointer:fine){.save-flight-button:hover .save-flight-icon{filter:brightness(0) invert(1) drop-shadow(0 0 4px var(--color-hover-medium))}}.save-flight-button[data-is-saved=true] .save-flight-icon{filter:brightness(0) saturate(100%) invert(38%) sepia(97%) saturate(3291%) hue-rotate(334deg) brightness(99%) contrast(94%)}@media (hover:hover) and (pointer:fine){.save-flight-button[data-is-saved=true]:hover .save-flight-icon{filter:brightness(0) saturate(100%) invert(38%) sepia(97%) saturate(3291%) hue-rotate(334deg) brightness(99%) contrast(94%) drop-shadow(0 0 4px var(--color-status-danger))}}:root{--line-popup-bg-start:var(--primitive-gray-980);--line-popup-bg-end:var(--primitive-gray-950);--line-popup-border:hsla(0,0%,100%,.12);--line-popup-price-color:var(--color-status-success)}.line-hover-popup{backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);background:linear-gradient(145deg,var(--line-popup-bg-start),var(--line-popup-bg-end));border:1px solid var(--line-popup-border);border-radius:var(--radius-lg);box-shadow:0 8px 28px rgba(0,0,0,.7),0 4px 10px rgba(0,0,0,.5),inset 0 1px 0 hsla(0,0%,100%,.08);line-height:1.3;max-width:320px;min-width:160px;padding:var(--space-2-5)}.route-info-tooltip{pointer-events:none;position:fixed;z-index:10000}.line-popup .leaflet-popup-content-wrapper{background:transparent!important;border:none!important;border-radius:0!important;box-shadow:none!important;padding:0!important}.line-popup .leaflet-popup-close-button,.line-popup .leaflet-popup-tip{display:none!important}.line-popup .leaflet-popup-content{contain:layout style paint;margin:0!important;padding:0!important}.line-hover-popup>*{display:block}.line-hover-price{color:var(--line-popup-price-color);font:700 22px/1.1 system-ui,-apple-system,sans-serif;letter-spacing:.4px;margin:0 0 var(--space-2);text-shadow:0 2px 4px rgba(93,216,121,.35),0 1px 2px rgba(0,0,0,.4)}.line-hover-divider{background:linear-gradient(90deg,transparent,hsla(0,0%,100%,.15) 10%,hsla(0,0%,100%,.15) 90%,transparent);border:none;height:1px;margin:var(--space-2) 0}.line-hover-destination{color:var(--color-text-primary);font-size:13px;font-weight:500;line-height:1.5;padding-left:var(--space-4-5);position:relative}.line-hover-destination:before{background:linear-gradient(180deg,rgba(66,135,245,.4),rgba(66,135,245,.6),rgba(66,135,245,.4))}.line-hover-destination.has-active-segment:after,.line-hover-destination:before{border-radius:var(--space-0-5);bottom:var(--space-2-5);content:"";left:var(--space-1-5);position:absolute;top:var(--space-2-5);width:2px}.line-hover-destination.has-active-segment:after{background:linear-gradient(to bottom,transparent 0,transparent var(--active-start),hsla(0,0%,100%,.95) var(--active-start),hsla(0,0%,100%,.95) var(--active-end),transparent var(--active-end),transparent 100%);z-index:0}.city-segment{color:var(--color-text-primary);font-weight:600;letter-spacing:.2px;padding:var(--space-1) 0;position:relative;text-shadow:var(--shadow-sm);white-space:nowrap}.iata-code{color:var(--color-text-tertiary);font-size:11px;font-weight:500;letter-spacing:.5px}.city-segment:before{background:var(--color-warning);border:2px solid var(--color-border-strong);border-radius:50%;content:"";height:10px;left:-16px;position:absolute;top:50%;transform:translateY(-50%);width:10px;z-index:1}.city-segment:first-child:before{background:var(--primitive-gray-200);height:12px;left:-17px;width:12px}.city-segment.last:before{background:var(--primitive-green-300);height:12px;left:-17px;width:12px}.arrow{display:none}.line-route-popup{background:linear-gradient(145deg,var(--line-popup-bg-start),var(--line-popup-bg-end));border:1px solid var(--line-popup-border);border-radius:var(--radius-lg);box-shadow:0 8px 28px rgba(0,0,0,.7),0 4px 10px rgba(0,0,0,.5),inset 0 1px 0 hsla(0,0%,100%,.08);max-width:340px;overflow:hidden}.line-popup-price{background:rgba(93,216,121,.08);border-bottom:1px solid hsla(0,0%,100%,.08);padding:var(--space-2-5) var(--space-2-5) 0 var(--space-2-5)}.line-popup-info-row{display:flex;gap:var(--space-3-5)}.line-popup-info-column{display:flex;flex:1;flex-direction:column}.line-popup-date-wrapper{align-items:baseline;display:flex;gap:var(--space-0-5)}.line-popup-price-label{color:var(--primitive-gray-300);font-size:13px;font-weight:500;letter-spacing:.3px}.line-popup-price-value{color:var(--color-status-success);font-size:24px;font-weight:700;letter-spacing:.5px;text-shadow:0 2px 6px rgba(93,216,121,.4),0 1px 2px rgba(0,0,0,.5)}.line-popup-flight-type{align-self:flex-end;border-radius:var(--radius-sm);color:var(--primitive-gray-600);font-size:11px;font-weight:600;letter-spacing:.5px;padding:0 var(--space-1);text-transform:uppercase;white-space:nowrap}.line-popup-flight-type.direct{background:rgba(93,216,121,.2);border:1px solid rgba(93,216,121,.3);color:var(--color-status-success)}.line-popup-flight-type.indirect{background:rgba(255,152,0,.2);border:1px solid rgba(255,152,0,.3);color:var(--color-warning)}.line-popup-date-label{letter-spacing:.3px}.line-popup-date-label,.line-popup-date-value{color:var(--primitive-gray-300);font-size:13px;font-weight:500}.line-popup-button-bar{border-top:1px solid hsla(0,0%,100%,.1);display:flex;max-height:28px}.line-popup-icon{align-items:center;background:hsla(0,0%,100%,.02);border-right:1px solid hsla(0,0%,100%,.1);cursor:pointer;display:flex;flex:1;justify-content:center;opacity:.7;padding:var(--space-0-5) var(--space-2);transition:all .2s ease}.line-popup-icon:last-child{border-right:none}.line-popup-icon img,.line-popup-icon svg{filter:drop-shadow(0 1px 2px rgba(0,0,0,.3));height:22px;width:22px}.line-popup-icon:hover{background:hsla(0,0%,100%,.08);opacity:1}.line-popup-icon:active{background:hsla(0,0%,100%,.12);transform:scale(.98)}.line-popup-icon.spinning{animation:spin 1s linear infinite}.line-popup-header{background:hsla(0,0%,100%,.03);border-bottom:1px solid hsla(0,0%,100%,.1);padding:var(--space-1-5) var(--space-3)}.line-popup-route{color:var(--primitive-gray-100);font-size:13px;font-weight:500;line-height:1.5;padding-left:var(--space-4-5);position:relative}.line-popup-route:before{background:linear-gradient(180deg,rgba(66,135,245,.4),rgba(66,135,245,.6),rgba(66,135,245,.4));border-radius:var(--space-0-5);bottom:var(--space-1-5);content:"";left:var(--space-1-5);position:absolute;top:var(--space-1-5);width:2px}.line-popup-route .city-segment{color:var(--primitive-white);font-weight:600;letter-spacing:.2px;padding:var(--space-1) 0;position:relative;text-shadow:0 1px 2px rgba(0,0,0,.3);white-space:nowrap}.line-popup-route .city-segment:before{background:var(--color-warning);border:2px solid var(--line-popup-bg-start);border-radius:50%;box-shadow:0 0 0 2px rgba(255,167,38,.2),0 2px 4px rgba(0,0,0,.3);content:"";height:8px;left:-16px;position:absolute;top:50%;transform:translateY(-50%);width:8px;z-index:1}.line-popup-route .city-segment:first-child:before{background:var(--primitive-gray-200);box-shadow:0 0 0 2px hsla(0,0%,100%,.3),0 2px 4px rgba(0,0,0,.4);height:10px;width:10px}.line-popup-route .city-segment.last:before{background:var(--color-brand-primary-bright);box-shadow:0 0 0 2px rgba(90,157,255,.3),0 2px 4px rgba(0,0,0,.4);height:10px;width:10px}.line-popup-layovers{background:rgba(255,152,0,.1);border-left:3px solid var(--color-warning-dark);border-radius:var(--radius-sm);box-shadow:inset 0 1px 0 rgba(255,152,0,.1);margin-top:var(--space-2-5);padding:var(--space-2) var(--space-3);padding-left:30px;position:relative}.line-popup-layover{color:var(--color-warning-light);font-size:12px;line-height:1.4;margin:var(--space-0-5) 0;position:relative}.line-popup-layover:before{background:var(--color-warning);border:2px solid var(--line-popup-bg-start);border-radius:50%;box-shadow:0 0 0 2px rgba(255,167,38,.2),0 2px 4px rgba(0,0,0,.3);content:"";height:8px;left:-19px;position:absolute;top:50%;transform:translateY(-50%);width:8px;z-index:1}.line-popup-layover strong{color:var(--color-warning);font-weight:600}.price-visualization-container{height:4px;position:relative;width:100%}.price-visualization-bar{border-radius:var(--radius-xs);box-shadow:0 1px 3px rgba(0,0,0,.3),inset 0 1px 0 hsla(0,0%,100%,.1);height:100%;overflow:hidden;width:100%}.price-marker{background:#fff;border:2px solid var(--primitive-gray-900);border-radius:50%;box-shadow:0 2px 4px rgba(0,0,0,.5),0 0 0 2px hsla(0,0%,100%,.3);cursor:help;height:8px;position:absolute;top:50%;transform:translate(-50%,-50%);width:8px;z-index:10}.price-marker:hover{border-width:2px;height:10px;width:10px}.line-popup-status-badge{align-items:center;background:rgba(66,135,245,.08);display:flex;font-size:12px;font-weight:500;gap:var(--space-1-5);margin:0;padding:var(--space-2) var(--space-3-5);position:relative}.line-popup-status-badge:before{animation:badgeShimmer 3s ease-in-out infinite;background:linear-gradient(90deg,transparent,hsla(0,0%,100%,.05),transparent);content:"";inset:0 0 0 -100%;position:absolute}.line-popup-status-icon{height:16px;width:16px;z-index:1}.line-popup-status-icon img{filter:brightness(0) saturate(100%) invert(52%) sepia(98%) saturate(3290%) hue-rotate(88deg) brightness(98%) contrast(89%) drop-shadow(0 1px 2px rgba(0,0,0,.3));height:100%;width:100%}.line-popup-status-text{flex:1;z-index:1}.line-popup-status-remove-btn{background:rgba(244,67,54,.15);border:none;border-radius:var(--radius-sm);cursor:pointer;height:24px;transition:all .2s;width:24px;z-index:1}.line-popup-status-remove-btn:hover{background:rgba(244,67,54,.25);transform:scale(1.05)}.line-popup-status-remove-icon{filter:brightness(0) saturate(100%) invert(52%) sepia(98%) saturate(2571%) hue-rotate(341deg);height:14px;opacity:.8;width:14px}.line-popup-button{align-items:center;background:linear-gradient(135deg,var(--color-brand-primary) 0,var(--color-brand-primary-dark) 100%);border:1px solid rgba(41,98,204,.5);border-radius:0 0 var(--radius-lg) var(--radius-lg);box-shadow:0 2px 8px rgba(66,135,245,.3),inset 0 1px 0 hsla(0,0%,100%,.2);color:var(--primitive-white);cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:var(--space-2);justify-content:center;letter-spacing:.4px;margin:0;overflow:hidden;padding:var(--space-1-5) var(--space-3);position:relative;transition:all .2s cubic-bezier(.4,0,.2,1);width:100%}.line-popup-button:before{content:"+";font-size:20px;font-weight:700;line-height:1;position:relative;z-index:2}.line-popup-button:after{background:linear-gradient(135deg,hsla(0,0%,100%,.1),transparent);bottom:0;content:"";left:0;opacity:0;position:absolute;right:0;top:0;transition:opacity .2s cubic-bezier(.4,0,.2,1);z-index:1}.line-popup-button:hover:after{opacity:1}.line-popup-button>span{position:relative;z-index:2}.line-popup-button:hover{background:linear-gradient(135deg,var(--color-brand-primary-bright) 0,var(--color-brand-primary-hover) 100%);box-shadow:0 6px 20px rgba(66,135,245,.5),inset 0 1px 0 hsla(0,0%,100%,.3);transform:translateY(-2px)}.line-popup-button:active{box-shadow:0 2px 6px rgba(66,135,245,.4),inset 0 1px 2px rgba(0,0,0,.2);transform:translateY(0) scale(.98);transition-duration:.05s}.airline-network .line-hover-price{color:var(--color-info);font-size:16px;text-shadow:0 2px 4px rgba(66,165,245,.35),0 1px 2px rgba(0,0,0,.4)}@media (max-width:768px){.line-route-popup{max-width:300px;min-width:240px}.line-popup-price-value{font-size:18px}.line-popup-icon{height:22px;width:22px}.line-popup-button{font-size:14px}}.line-popup-button:focus-visible{outline:2px solid var(--color-brand-primary);outline-offset:calc(var(--space-0-5)*-1)}.line-popup-icon:focus-visible{border-radius:var(--radius-sm);outline:2px solid var(--color-brand-primary);outline-offset:var(--space-0-5)}@media (prefers-reduced-motion:reduce){.line-popup-button,.line-popup-icon,.line-popup-icon.spinning{animation:none;transition:none}.line-popup-button:hover,.line-popup-icon:hover{transform:none}}@media (prefers-contrast:high){.line-popup .leaflet-popup-content-wrapper{border-width:2px!important}.line-popup-button{border-width:2px}}.custom-popup .leaflet-popup-content-wrapper{background:linear-gradient(145deg,var(--primitive-gray-980),var(--primitive-gray-950))!important;border:1px solid hsla(0,0%,100%,.08)!important;border-radius:var(--radius-lg)!important;box-shadow:0 6px 24px rgba(0,0,0,.6),0 2px 6px rgba(0,0,0,.4),inset 0 1px 0 hsla(0,0%,100%,.05)!important;margin:0!important;max-height:var(--popup-max-height,350px);overflow-x:hidden;overflow-y:auto;padding:0!important}.custom-popup .leaflet-popup-content-wrapper::-webkit-scrollbar{width:6px}.custom-popup .leaflet-popup-content-wrapper::-webkit-scrollbar-track{background:rgba(0,0,0,.2);border-radius:3px}.custom-popup .leaflet-popup-content-wrapper::-webkit-scrollbar-thumb{background:hsla(0,0%,100%,.2);border-radius:3px}.custom-popup .leaflet-popup-content-wrapper::-webkit-scrollbar-thumb:hover{background:hsla(0,0%,100%,.3)}.custom-popup .leaflet-popup-tip{display:none!important;margin:0;padding:0}.custom-popup .leaflet-popup-content{background:transparent!important;margin:0!important;padding:0!important;width:auto!important}.custom-popup .leaflet-popup-close-button{display:none}.popup-card{animation:popupFadeIn .2s cubic-bezier(.34,1.56,.64,1);background:linear-gradient(145deg,var(--primitive-gray-980),var(--primitive-gray-950));border:1px solid hsla(0,0%,100%,.08);border-radius:var(--radius-lg);box-shadow:0 6px 24px rgba(0,0,0,.6),0 2px 6px rgba(0,0,0,.4),inset 0 1px 0 hsla(0,0%,100%,.05);max-width:300px;min-width:220px;overflow:hidden;transform-origin:center bottom}.custom-popup .leaflet-popup-content>.popup-hover-card{animation:popupFadeIn .15s cubic-bezier(.34,1.56,.64,1)!important;background:linear-gradient(145deg,var(--primitive-gray-980),var(--primitive-gray-950))!important;border:1px solid hsla(0,0%,100%,.15)!important;border-radius:var(--radius-md)!important;box-shadow:0 4px 16px rgba(0,0,0,.6),0 2px 6px rgba(0,0,0,.4),inset 0 1px 0 hsla(0,0%,100%,.08)!important;display:block!important;max-width:280px!important;min-width:180px!important;padding:var(--space-2-5) var(--space-2-5)!important;transform-origin:center bottom!important}.custom-popup .leaflet-popup-content>.popup-hover-card>*{display:block!important;white-space:normal!important}.popup-header{align-items:center;background:hsla(0,0%,100%,.02);border-bottom:1px solid hsla(0,0%,100%,.06);display:flex;gap:var(--space-2-5);padding:var(--space-3) var(--space-3-5)}.popup-icon{filter:drop-shadow(0 1px 2px rgba(0,0,0,.3));flex-shrink:0;height:20px;opacity:.85;width:20px}.popup-title{flex:1;min-width:0}.popup-iata-city{align-items:baseline;color:var(--color-text-primary);display:flex;font-size:15px;font-weight:600;gap:var(--space-2);letter-spacing:.2px;overflow:hidden;text-overflow:ellipsis;text-shadow:var(--shadow-sm);white-space:nowrap}.popup-iata-city .iata-code{color:var(--color-text-tertiary);font-size:11px;font-weight:500;letter-spacing:.5px}.popup-airport-name{color:var(--color-text-tertiary);font-size:11px;line-height:1.3;margin-top:var(--space-0-5);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.custom-popup .leaflet-popup-content>.popup-hover-card .popup-city{color:var(--color-text-primary)!important;display:block!important;font-size:15px!important;font-weight:600!important;letter-spacing:.3px!important;line-height:1.2!important;margin:0 0 var(--space-1) 0!important;padding:0!important;text-shadow:var(--shadow-md)!important}.custom-popup .leaflet-popup-content>.popup-hover-card .popup-iata{color:var(--color-brand-accent-light)!important;display:block!important;font-size:11px!important;font-weight:600!important;letter-spacing:1.2px!important;margin:0 0 var(--space-1-5) 0!important;padding:0!important;text-shadow:0 1px 2px rgba(0,0,0,.4)!important;text-transform:uppercase!important}.custom-popup .leaflet-popup-content>.popup-hover-card .popup-airport-name{color:var(--color-text-tertiary)!important;display:block!important;font-size:12px!important;font-weight:400!important;line-height:1.3!important;margin:0!important;padding:0!important}.popup-hover-card .popup-type-badge{background:rgba(66,135,245,.15);border:1px solid rgba(66,135,245,.3);border-radius:var(--radius-base);color:var(--color-brand-accent-bright);display:inline-block;font-size:11px;font-weight:500;letter-spacing:.6px;margin-top:var(--space-2);padding:var(--space-0-5) var(--space-2-5);text-transform:uppercase}.popup-status-badge{align-items:center;background:rgba(66,135,245,.08);display:flex;font-size:12px;font-weight:500;gap:var(--space-1-5);margin:0 0 var(--space-2) 0;overflow:hidden;padding:var(--space-2) var(--space-3-5)!important;position:relative}.popup-status-badge:before{animation:badgeShimmer 3s ease-in-out infinite;background:linear-gradient(90deg,transparent,hsla(0,0%,100%,.05),transparent);content:"";height:100%;left:-100%;position:absolute;top:0;width:100%}@keyframes badgeShimmer{0%,to{left:-100%}50%{left:100%}}.popup-status-badge.origin{background:rgba(76,175,80,.08);border-left-color:var(--primitive-green-300);color:var(--color-status-success-hover)}.popup-status-badge.destination{background:rgba(255,152,0,.08);border-left-color:var(--color-warning-dark);color:var(--color-warning)}.popup-status-badge.nomad{background:rgba(156,39,176,.08);border-left-color:var(--color-accent-purple);color:var(--color-accent-purple-light)}.popup-status-badge.multi-city{background:rgba(33,150,243,.08);border-left-color:var(--color-info);color:var(--color-info)}.popup-status-badge-icon{align-items:center;animation:iconPulse 2s ease-in-out infinite;display:flex;font-size:14px;justify-content:center;line-height:1;position:relative;z-index:1}.popup-status-badge-icon img{filter:drop-shadow(0 1px 2px rgba(0,0,0,.3));height:16px;width:16px}.popup-status-badge.origin .popup-status-badge-icon img{filter:brightness(0) saturate(100%) invert(52%) sepia(98%) saturate(3290%) hue-rotate(88deg) brightness(98%) contrast(89%) drop-shadow(0 1px 2px rgba(0,0,0,.3))}.popup-status-badge.destination .popup-status-badge-icon img{filter:brightness(0) saturate(100%) invert(63%) sepia(68%) saturate(4462%) hue-rotate(1turn) brightness(102%) contrast(87%) drop-shadow(0 1px 2px rgba(0,0,0,.3))}.popup-status-badge-text{flex:1;position:relative;z-index:1}.popup-route-number{font-weight:600;opacity:.9}.popup-status-badges-container{display:flex;flex-direction:column;gap:var(--space-1-5);margin-bottom:var(--space-2)}.popup-status-remove-btn{align-items:center;background:rgba(244,67,54,.15);border:none;border-radius:var(--radius-sm);cursor:pointer;display:flex;height:24px;justify-content:center;margin-left:auto;transition:all .2s;width:24px}.popup-status-remove-btn:hover{background:rgba(244,67,54,.25);transform:scale(1.05)}.popup-status-remove-icon{filter:brightness(0) saturate(100%) invert(52%) sepia(98%) saturate(2571%) hue-rotate(341deg);height:14px;opacity:.8;width:14px}.popup-lounges-section{border-bottom:1px solid hsla(0,0%,100%,.06);border-top:1px solid hsla(0,0%,100%,.06)}.popup-lounges-header{align-items:center;cursor:pointer;display:flex;height:32px;padding:0 var(--space-3-5);transition:background .2s ease;-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}.popup-lounges-header:hover{background:hsla(0,0%,100%,.03)}.popup-lounges-header:focus-visible{outline:2px solid var(--color-brand-primary);outline-offset:-2px}.popup-lounges-label{color:var(--color-text-secondary);font-size:12px;font-weight:500;letter-spacing:.3px;padding:var(--space-1)}.popup-lounges-badge{background:rgba(66,135,245,.15);border-radius:var(--radius-base);color:var(--color-brand-accent-bright);display:inline-flex;font-size:11px;font-weight:600;margin-left:var(--space-2);min-width:20px;padding:0 var(--space-1)}.popup-lounges-badge,.popup-lounges-chevron{align-items:center;height:18px;justify-content:center}.popup-lounges-chevron{color:var(--color-text-tertiary);display:flex;margin-left:auto;transition:transform .25s cubic-bezier(.4,0,.2,1);width:18px}.popup-lounges-chevron svg{height:18px;width:18px}.popup-lounges-section.expanded .popup-lounges-chevron{transform:rotate(90deg)}.popup-lounges-content{max-height:0;overflow:hidden;transition:max-height .3s cubic-bezier(.4,0,.2,1)}.popup-lounges-section.expanded .popup-lounges-content{max-height:var(--max-lounges-height,200px);overflow-y:auto}.popup-lounges-list{padding:var(--space-1) var(--space-3);padding-bottom:var(--space-2)}.popup-lounges-terminal-group{margin-bottom:var(--space-2)}.popup-lounges-terminal-group:last-child{margin-bottom:0}.popup-lounges-terminal-header{background:hsla(0,0%,100%,.08);border-radius:var(--radius-sm);color:var(--color-text-secondary);display:inline-block;font-size:10px;font-weight:600;letter-spacing:.3px;margin-bottom:var(--space-1-5);padding:var(--space-0-5) var(--space-1-5);text-transform:none}.popup-lounge-item{border-bottom:1px solid hsla(0,0%,100%,.03);padding:var(--space-1-5) 0}.popup-lounge-item:last-child{border-bottom:none}.popup-lounge-name{color:var(--color-text-primary);font-size:12px;font-weight:500;line-height:1.3;margin-bottom:var(--space-0-5)}.popup-lounge-location{color:var(--color-text-tertiary);font-size:10px;margin-bottom:var(--space-1)}.popup-lounge-programs{display:flex;flex-wrap:wrap;gap:var(--space-1)}.popup-lounge-program-tag{background:hsla(0,0%,100%,.06);border-radius:var(--radius-sm);color:var(--color-text-secondary);display:inline-block;font-size:9px;font-weight:500;letter-spacing:.2px;padding:var(--space-0-5) var(--space-1-5)}.popup-lounges-loading{color:var(--color-text-tertiary);font-style:italic}.popup-lounges-error,.popup-lounges-loading{font-size:11px;padding:var(--space-2);text-align:center}.popup-lounges-error{color:var(--color-status-error-light)}.popup-lounges-content::-webkit-scrollbar{width:4px}.popup-lounges-content::-webkit-scrollbar-track{background:transparent}.popup-lounges-content::-webkit-scrollbar-thumb{background:hsla(0,0%,100%,.15);border-radius:2px}.popup-lounges-content::-webkit-scrollbar-thumb:hover{background:hsla(0,0%,100%,.25)}.popup-actions{display:flex;gap:var(--space-1-5);padding:var(--space-2-5)}.popup-actions:empty{display:none;padding:0}.popup-button{align-items:center;background:linear-gradient(145deg,var(--primitive-gray-950),var(--primitive-gray-950));border:1px solid hsla(0,0%,100%,.08);border-radius:var(--radius-md);box-shadow:0 1px 3px rgba(0,0,0,.2),inset 0 1px 0 hsla(0,0%,100%,.05);color:var(--primitive-gray-100);cursor:pointer;display:flex;flex:1;font-size:12px;font-weight:600;gap:var(--space-1);justify-content:center;letter-spacing:.3px;min-height:36px;overflow:hidden;padding:var(--space-2) var(--space-3);position:relative;transition:all .2s cubic-bezier(.4,0,.2,1)}.popup-button-icon{display:block;filter:drop-shadow(0 1px 1px rgba(0,0,0,.2));flex-shrink:0;height:24px;opacity:.9;transition:transform .2s cubic-bezier(.34,1.56,.64,1);width:24px}.popup-button:hover .popup-button-icon{transform:scale(1.1)}.popup-button:active .popup-button-icon{transform:scale(.95)}.popup-button-text-container{display:inline;line-height:1}.popup-button-text{font-size:12px;font-weight:600;letter-spacing:.3px}.popup-button-subtitle{display:none}.popup-button:after{background:hsla(0,0%,100%,.4);border-radius:50%;content:"";height:0;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);transition:width .6s,height .6s;width:0}.popup-button:active:after{height:200px;transition:width 0s,height 0s;width:200px}.popup-button:before{background:linear-gradient(135deg,hsla(0,0%,100%,.1),transparent);bottom:0;content:"";left:0;opacity:0;position:absolute;right:0;top:0;transition:opacity .2s cubic-bezier(.4,0,.2,1);z-index:1}.popup-button:hover:before{opacity:1}.popup-button>*{position:relative;z-index:2}.popup-button:hover{border-color:hsla(0,0%,100%,.15);box-shadow:0 4px 12px rgba(0,0,0,.4),inset 0 1px 0 hsla(0,0%,100%,.1);transform:translateY(-1px)}.popup-button:active{box-shadow:0 1px 2px rgba(0,0,0,.3),inset 0 1px 2px rgba(0,0,0,.2);transform:translateY(0) scale(.98);transition-duration:.05s}.popup-button img{filter:drop-shadow(0 1px 1px rgba(0,0,0,.2));opacity:.9;transition:transform .2s cubic-bezier(.34,1.56,.64,1)}.popup-button:hover img{transform:scale(1.1)}.popup-button:active img{transform:scale(.95)}.popup-button.primary{background:linear-gradient(135deg,var(--color-brand-primary) 0,var(--color-brand-primary-dark) 100%);border-color:rgba(41,98,204,.5);box-shadow:0 2px 8px rgba(66,135,245,.3),inset 0 1px 0 hsla(0,0%,100%,.2);color:var(--primitive-white);padding:4px}.popup-button.primary:hover{background:linear-gradient(135deg,var(--color-brand-primary-bright) 0,var(--color-brand-primary-hover) 100%);box-shadow:0 6px 20px rgba(66,135,245,.5),inset 0 1px 0 hsla(0,0%,100%,.3);transform:translateY(-2px)}.popup-button.primary:active{transform:translateY(0) scale(.98)}.popup-button.primary .popup-button-icon{filter:brightness(0) invert(1) drop-shadow(0 1px 2px rgba(0,0,0,.3))}.popup-button.scan{background:linear-gradient(135deg,var(--color-accent-purple) 0,var(--color-accent-purple-dark) 100%);border-color:rgba(123,31,162,.5);box-shadow:0 2px 8px rgba(156,39,176,.3),inset 0 1px 0 hsla(0,0%,100%,.2);color:var(--primitive-white)}.popup-button.scan:hover{background:linear-gradient(135deg,var(--color-accent-purple-hover) 0,var(--color-accent-purple-active) 100%);border-color:rgba(123,31,162,.7);box-shadow:0 6px 20px rgba(156,39,176,.5),inset 0 1px 0 hsla(0,0%,100%,.3);transform:translateY(-2px)}.popup-button.scan:active{transform:translateY(0) scale(.98)}.popup-button.scan .popup-button-icon{filter:brightness(0) invert(1) drop-shadow(0 1px 2px rgba(0,0,0,.3))}.popup-button.danger{background:linear-gradient(145deg,var(--primitive-gray-950),var(--primitive-gray-950));border-color:rgba(244,67,54,.3);color:var(--color-status-error-light)}.popup-button.danger:hover{background:linear-gradient(135deg,var(--color-button-danger),var(--color-button-danger-hover));border-color:var(--color-button-danger-hover);color:var(--primitive-white)}.popup-button.danger:hover img{filter:brightness(0) invert(1)}.popup-button.full-width{flex:1 1 100%;width:100%}.popup-button:disabled{cursor:not-allowed;opacity:.5;transform:none!important}.popup-help{align-items:center;background:hsla(0,0%,100%,.01);color:var(--primitive-gray-650);display:flex;font-size:11px;font-style:italic;gap:var(--space-1);justify-content:center;padding:var(--space-1-5) var(--space-3-5) var(--space-2-5);text-align:center}.popup-help-icon{font-size:12px;opacity:.7}.popup-loading{align-items:center;color:var(--primitive-gray-300);display:flex;flex-direction:column;gap:var(--space-3);justify-content:center;padding:var(--space-7) var(--space-4)}.popup-loading-spinner{animation:spin .8s linear infinite;border:3px solid rgba(66,135,245,.1);border-radius:50%;border-top:3px solid var(--color-brand-primary);height:32px;width:32px}.popup-loading-text{font-size:13px;font-weight:500}@keyframes spin{to{transform:rotate(1turn)}}.popup-success{animation:successPulse .5s ease-out;background:linear-gradient(145deg,var(--color-status-success-bg-dark),var(--color-status-success-bg));border-color:rgba(76,175,80,.3);max-width:300px;min-width:220px;padding:var(--space-6) var(--space-5);text-align:center}.popup-success-content{align-items:center;display:flex;flex-direction:column;gap:var(--space-2-5)}.popup-success-icon{animation:successScale .5s cubic-bezier(.34,1.56,.64,1);font-size:40px}.popup-success-text{color:var(--color-status-success-hover);font-size:16px;font-weight:600;letter-spacing:.3px}.popup-success-timer{color:var(--primitive-green-300);font-size:11px;margin-top:var(--space-1);opacity:.7}@keyframes successPulse{0%{opacity:0;transform:scale(.95)}50%{transform:scale(1.02)}to{opacity:1;transform:scale(1)}}@keyframes successScale{0%{transform:scale(0)}50%{transform:scale(1.2)}to{transform:scale(1)}}@keyframes popupFadeIn{0%{opacity:0;transform:scale(.9) translateY(8px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes iconPulse{0%,to{transform:scale(1)}50%{transform:scale(1.15)}}@media (max-width:768px){.popup-card{max-width:280px}.popup-hover-card{min-width:150px}.popup-button{font-size:14px;min-height:42px;padding:var(--space-2-5) var(--space-3-5)}.popup-actions{gap:var(--space-1-5)}.popup-button img{height:18px;width:18px}.popup-iata-city{font-size:14px}.popup-status-badge{font-size:11px;padding:var(--space-1-5) var(--space-3)}.popup-lounges-section.expanded .popup-lounges-content{max-height:180px}}@media (max-width:480px){.popup-card{max-width:260px;min-width:200px}.popup-header{padding:var(--space-2-5) var(--space-3)}.popup-actions{padding:var(--space-2)}.popup-lounges-section.expanded .popup-lounges-content{max-height:150px}}@media (hover:none) and (pointer:coarse){.popup-button{min-height:48px}.popup-button:active{transform:scale(.98)}.popup-button:hover:before{opacity:0}.popup-lounges-header:active{background:hsla(0,0%,100%,.05)}.custom-popup .leaflet-popup-content-wrapper{backface-visibility:hidden;transform:translateZ(0)}.popup-card,.popup-hover-card{-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none}.popup-card{display:block!important;position:relative;z-index:1}}.popup-button:focus-visible{box-shadow:0 0 0 4px rgba(66,135,245,.3),0 4px 12px rgba(0,0,0,.4),inset 0 1px 0 hsla(0,0%,100%,.1);outline:3px solid var(--color-brand-primary);outline-offset:var(--space-0-5)}.popup-card:focus-within{box-shadow:0 8px 32px rgba(0,0,0,.6),0 0 0 2px rgba(66,135,245,.3)}.popup-button:focus-visible:after{animation:focusPulse 2s ease-in-out infinite;background:radial-gradient(circle,rgba(66,135,245,.15) 0,transparent 70%);border-radius:var(--radius-lg);content:"";inset:calc(var(--space-0-5)*-1);position:absolute}@keyframes focusPulse{0%,to{opacity:.5}50%{opacity:1}}@media (prefers-reduced-motion:reduce){.popup-button,.popup-button img,.popup-button:after,.popup-button:before,.popup-card,.popup-hover-card,.popup-loading-spinner,.popup-lounges-chevron,.popup-lounges-content,.popup-status-badge-icon,.popup-status-badge:before,.popup-success{animation:none!important;transition:none!important}.popup-button:active,.popup-button:hover{transform:none}}@media (prefers-contrast:high){.popup-card,.popup-hover-card{border-color:currentColor;border-width:2px}.popup-button{border-width:2px}}@media print{.leaflet-popup,.popup-card,.popup-hover-card{display:none}}.price-alert-form{display:flex;flex-direction:column;gap:12px}#price-alert-modal.modal-container{background:radial-gradient(circle at 100% 0,rgba(70,128,219,.14),transparent 38%),linear-gradient(180deg,hsla(0,0%,100%,.04),hsla(0,0%,100%,.01)),var(--color-bg-surface,#16243a);border:1px solid var(--color-border-modal,rgba(58,123,213,.3));border-radius:18px;box-shadow:0 22px 64px rgba(0,0,0,.48)}#price-alert-modal .modal-header{background:linear-gradient(180deg,hsla(0,0%,100%,.025),hsla(0,0%,100%,0));border-bottom:1px solid var(--color-border-subtle,hsla(0,0%,100%,.06));padding:16px 20px}#price-alert-modal .modal-title{font-size:1.32rem;font-weight:700;letter-spacing:-.02em}#price-alert-modal .modal-body{padding:16px 20px 18px}.price-alert-modal-header-block{display:flex;flex-direction:column;gap:5px;min-width:0}.price-alert-modal-title-row{align-items:center;display:flex;flex-wrap:wrap;gap:10px;min-width:0}.price-alert-modal-title-text{color:var(--color-text-strong,#fff);font-weight:700;white-space:nowrap}.price-alert-modal-route-line{align-items:center;background:hsla(0,0%,100%,.04);border:1px solid var(--color-border-subtle,hsla(0,0%,100%,.06));border-radius:999px;color:var(--color-text-primary,#d2dce8);display:inline-flex;font-size:.8rem;font-weight:700;gap:.16em;letter-spacing:.03em;min-width:0;padding:5px 10px;text-transform:uppercase}.price-alert-modal-route-line span{color:var(--color-brand-accent-light,#a8d4f0)}.price-alert-modal-subtitle{color:var(--color-text-secondary,#96a8be);font-size:.8rem;line-height:1.35;padding-left:40px}.price-alert-modal-title-icon{background-color:var(--color-text-light-blue,#dceeff);display:inline-block;flex:0 0 18px;height:18px;mask-position:center;-webkit-mask-position:center;mask-repeat:no-repeat;-webkit-mask-repeat:no-repeat;mask-size:contain;-webkit-mask-size:contain;width:18px}.price-alert-modal-title-icon-edit{mask-image:url(/assets/icons/ui/edit-alert-icon.svg?v=8c74258a);-webkit-mask-image:url(/assets/icons/ui/edit-alert-icon.svg?v=8c74258a)}.price-alert-modal-title-icon-add{mask-image:url(/assets/icons/ui/add-alert-icon.svg?v=4a757ac6);-webkit-mask-image:url(/assets/icons/ui/add-alert-icon.svg?v=4a757ac6)}.price-alert-section{background:linear-gradient(180deg,hsla(0,0%,100%,.03),hsla(0,0%,100%,.01));border:1px solid var(--color-border-subtle,hsla(0,0%,100%,.06));border-radius:14px;padding:12px}.price-alert-section-heading{color:var(--color-text-secondary,#96a8be);font-size:.72rem;font-weight:700;letter-spacing:.1em;margin:0 0 9px;text-transform:uppercase}.price-alert-rule-grid{display:grid;gap:10px;grid-template-columns:1.25fr 1fr;margin-bottom:10px}.price-alert-current-low{background:linear-gradient(160deg,rgba(20,40,66,.88),rgba(16,30,51,.96));border:1px solid rgba(122,169,230,.3);border-radius:12px;padding:12px;position:relative}.price-alert-current-low:before{background:radial-gradient(circle at 100% 0,rgba(119,166,243,.18),transparent 42%);border-radius:inherit;content:"";inset:0;pointer-events:none;position:absolute}.price-alert-current-low-label,.price-alert-current-low-note,.price-alert-current-low-value{position:relative;z-index:1}.price-alert-current-low-label{color:rgba(198,214,237,.8);font-size:.7rem;font-weight:700;letter-spacing:.09em;text-transform:uppercase}.price-alert-current-low-value{color:#f4f8ff;font-size:1.65rem;font-weight:760;letter-spacing:-.03em;line-height:1;margin-top:4px}.price-alert-current-low-note{color:rgba(198,212,234,.77);font-size:.75rem;line-height:1.4;margin-top:4px}.price-alert-current-low.is-ready{border-color:rgba(116,168,246,.5)}.price-alert-current-low.is-muted{opacity:.9}.price-alert-field{display:flex;flex-direction:column;gap:6px}.price-alert-field label{color:var(--color-text-primary,#d2dce8);font-size:.86rem;font-weight:620}.price-alert-field .required{color:var(--color-status-danger,#ff7f7f)}.price-alert-field input[type=date],.price-alert-field input[type=email],.price-alert-field input[type=number]{background:var(--color-bg-input,#1a2840);border:1px solid var(--color-border-default,hsla(0,0%,100%,.12));border-radius:12px;box-sizing:border-box;color:var(--color-text-strong,#fff);font-family:inherit;font-size:.95rem;height:44px;padding:10px 12px;transition:border-color .2s ease,box-shadow .2s ease,background-color .2s ease}.price-alert-field input::-moz-placeholder{color:rgba(170,185,208,.7)}.price-alert-field input::placeholder{color:rgba(170,185,208,.7)}.price-alert-field input:focus{background:var(--color-bg-input-focus,#203a5c);border-color:var(--color-focus-border,#3a7bd5);box-shadow:0 0 0 3px rgba(58,123,213,.24);outline:none}.price-alert-field input.input-error{border-color:var(--color-status-danger,#ff7f7f)}.price-alert-option-card{background:hsla(0,0%,100%,.02);border:1px solid hsla(0,0%,100%,.05);border-radius:12px;padding:10px 12px}.price-alert-toggle{align-items:center;cursor:pointer;display:flex;gap:12px;justify-content:space-between}.price-alert-option-copy{display:flex;flex-direction:column;gap:3px;min-width:0}.price-alert-option-title{color:var(--color-text-strong,#fff);font-size:.9rem;font-weight:680}.price-alert-option-text{color:var(--color-text-secondary,#96a8be);font-size:.76rem;line-height:1.35}.price-alert-switch-wrap{flex:0 0 auto;position:relative}.price-alert-switch-wrap input[type=checkbox]{cursor:pointer;height:24px;inset:0;opacity:0;position:absolute;width:42px}.price-alert-switch-ui{background:hsla(0,0%,100%,.16);border:1px solid hsla(0,0%,100%,.16);border-radius:999px;display:block;height:24px;transition:background-color .2s ease,border-color .2s ease;width:42px}.price-alert-switch-ui:after{background:#f5f8ff;border-radius:50%;box-shadow:0 2px 8px rgba(0,0,0,.28);content:"";height:18px;left:2px;position:absolute;top:2px;transition:transform .2s ease;width:18px}.price-alert-switch-wrap input[type=checkbox]:checked+.price-alert-switch-ui{background:var(--gradient-blue-primary,linear-gradient(135deg,#2d78c8 0,#2569b0 100%));border-color:rgba(126,176,250,.6)}.price-alert-switch-wrap input[type=checkbox]:checked+.price-alert-switch-ui:after{transform:translateX(18px)}.price-alert-mode-toggle{display:grid;gap:8px;grid-template-columns:repeat(2,minmax(0,1fr))}.price-alert-mode-option{cursor:pointer;display:block;position:relative}.price-alert-mode-option input{inset:0;margin:0;opacity:0;position:absolute}.price-alert-mode-label{background:hsla(0,0%,100%,.03);border:1px solid hsla(0,0%,100%,.08);border-radius:10px;display:flex;flex-direction:column;gap:2px;justify-content:center;min-height:52px;padding:8px 10px;transition:border-color .2s ease,background-color .2s ease,box-shadow .2s ease}.price-alert-mode-title{color:var(--color-text-strong,#fff);font-size:.86rem;font-weight:670}.price-alert-mode-subtitle{color:var(--color-text-secondary,#96a8be);font-size:.72rem;line-height:1.3}.price-alert-mode-option input:checked+.price-alert-mode-label{background:rgba(58,123,213,.15);border-color:rgba(111,168,246,.55);box-shadow:inset 0 1px 0 hsla(0,0%,100%,.04)}.price-alert-mode-option input:focus-visible+.price-alert-mode-label{box-shadow:0 0 0 3px rgba(58,123,213,.24)}#priceAlertThresholdFields[hidden]{display:none}.price-alert-price-row{align-items:center;display:flex;gap:8px}.price-alert-price-row input[type=number]{flex:1}.price-alert-price-row input[type=number].is-disabled{cursor:not-allowed;opacity:.5}.price-alert-currency-select-wrap{min-width:108px;position:relative}.price-alert-currency-label,.price-alert-currency-trigger{border-radius:12px;height:44px;min-height:44px}.price-alert-currency-trigger{align-items:center;background:var(--color-bg-input,#1a2840);border:1px solid var(--color-border-default,hsla(0,0%,100%,.12));color:var(--color-text-primary,#d2dce8);cursor:pointer;display:inline-flex;font-size:.84rem;font-weight:700;justify-content:space-between;padding:0 10px;width:100%}.price-alert-currency-trigger-main{align-items:center;display:inline-flex;gap:8px}.price-alert-currency-option-flag,.price-alert-currency-trigger-flag{max-height:13px;-o-object-fit:contain;object-fit:contain;width:18px}.price-alert-currency-trigger:focus-visible{border-color:var(--color-focus-border,#3a7bd5);box-shadow:0 0 0 3px rgba(58,123,213,.24);outline:none}.price-alert-currency-trigger-caret{border-bottom:2px solid rgba(220,232,250,.86);border-right:2px solid rgba(220,232,250,.86);height:8px;transform:rotate(45deg) translateY(-1px);transition:transform .2s ease;width:8px}.price-alert-currency-picker.is-open .price-alert-currency-trigger-caret{transform:rotate(-135deg) translateY(-1px)}.price-alert-currency-menu{background:linear-gradient(180deg,rgba(19,32,53,.98),rgba(14,24,41,.99));border:1px solid rgba(113,160,228,.3);border-radius:14px;box-shadow:0 14px 32px rgba(0,0,0,.45);display:flex;flex-direction:column;gap:3px;max-height:260px;overflow-y:auto;padding:6px;position:fixed;z-index:10001}.price-alert-currency-menu[hidden]{display:none!important}.price-alert-currency-option{align-items:center;background:transparent;border:1px solid transparent;border-radius:10px;color:var(--color-text-primary,#d2dce8);cursor:pointer;display:grid;gap:8px;grid-template-columns:auto auto;padding:9px 10px;text-align:left;width:100%}.price-alert-currency-option:focus-visible,.price-alert-currency-option:hover{background:rgba(58,123,213,.15);border-color:rgba(113,160,228,.35);outline:none}.price-alert-currency-option.is-selected{background:rgba(58,123,213,.22);border-color:rgba(113,160,228,.5)}.price-alert-currency-option-code{font-size:.81rem;font-weight:700;letter-spacing:.03em}.price-alert-currency-label{align-items:center;background:var(--color-bg-input,#1a2840);border:1px solid var(--color-border-default,hsla(0,0%,100%,.12));color:var(--color-text-primary,#d2dce8);display:inline-flex;font-size:.85rem;font-weight:700;justify-content:center;min-width:52px;padding:0 10px}.price-alert-hint{color:var(--color-text-secondary,#96a8be);font-size:.76rem;line-height:1.4}.price-alert-error{color:var(--color-status-danger,#ff7f7f);font-size:.76rem;min-height:1em}.price-alert-meta-grid{display:grid;gap:8px;grid-template-columns:repeat(3,minmax(0,1fr))}.price-alert-meta-item{background:rgba(8,16,29,.36);border:1px solid hsla(0,0%,100%,.05);border-radius:10px;padding:8px 10px}.price-alert-meta-label{color:rgba(176,194,221,.75);font-size:.66rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase}.price-alert-meta-value{color:var(--color-text-primary,#d2dce8);font-size:.82rem;font-weight:600;line-height:1.35;margin-top:4px}.price-alert-actions{display:flex;gap:10px;margin-top:2px}.price-alert-cancel-btn,.price-alert-remove-btn,.price-alert-submit-btn{border-radius:12px;font-size:.92rem;font-weight:700;min-height:44px}.price-alert-cancel-btn{background:hsla(0,0%,100%,.02);border:1px solid var(--color-border-default,hsla(0,0%,100%,.12));color:var(--color-text-primary,#d2dce8);cursor:pointer;flex:0 0 auto;padding:0 16px}.price-alert-cancel-btn:hover{background:hsla(0,0%,100%,.06)}.price-alert-submit-btn{background:var(--gradient-blue-primary,linear-gradient(135deg,#2d78c8 0,#2569b0 100%));border:0;box-shadow:0 10px 22px rgba(30,75,145,.36);color:#fff;cursor:pointer;flex:1;padding:0 20px}.price-alert-submit-btn:hover:not(:disabled){filter:brightness(1.08)}.price-alert-remove-btn:disabled,.price-alert-submit-btn:disabled{cursor:not-allowed;opacity:.68}.price-alert-remove-btn{background:hsla(0,0%,100%,.02);border:1px solid hsla(0,0%,100%,.12);color:var(--color-text-primary,#d2dce8);cursor:pointer;min-width:60px;width:60px}.price-alert-remove-btn img{height:18px;width:18px}.price-alert-submit-btn .submit-loading:after{animation:spin .8s linear infinite;border:2px solid transparent;border-radius:50%;border-top-color:#fff;content:"";display:inline-block;height:12px;margin-left:6px;vertical-align:middle;width:12px}.price-alert-message{background:hsla(0,0%,100%,.03);border:1px solid hsla(0,0%,100%,.1);border-radius:12px;font-size:.86rem;padding:10px 12px;text-align:center}.price-alert-message.success{background:rgba(33,78,44,.45);border-color:rgba(90,188,116,.42);color:#8fe4a4}.price-alert-message.error{background:rgba(89,31,38,.45);border-color:hsla(0,68%,65%,.42);color:#ffacab}.price-alert-message-action{background:transparent;border:1px solid;border-radius:999px;color:inherit;cursor:pointer;font-size:.74rem;font-weight:700;margin-top:8px;padding:7px 11px}.price-alert-footer-note{color:var(--color-text-secondary,#96a8be);font-size:.75rem;line-height:1.36;margin:0 2px;text-align:center}@media (max-width:900px){.price-alert-rule-grid{grid-template-columns:1fr}.price-alert-meta-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:768px){#price-alert-modal .modal-header{padding:14px 16px}#price-alert-modal .modal-body{padding:14px 16px 16px}#price-alert-modal .modal-title{font-size:1.16rem}.price-alert-modal-subtitle{padding-left:28px}.price-alert-current-low-value{font-size:1.45rem}.price-alert-mode-label{min-height:48px}.price-alert-actions{flex-direction:column}.price-alert-cancel-btn,.price-alert-remove-btn,.price-alert-submit-btn{width:100%}.price-alert-actions-edit{display:grid;gap:10px;grid-template-areas:"submit remove" "cancel cancel";grid-template-columns:1fr auto}.price-alert-actions-edit .price-alert-submit-btn{grid-area:submit}.price-alert-actions-edit .price-alert-remove-btn{grid-area:remove;min-width:56px;width:56px}.price-alert-actions-edit .price-alert-cancel-btn{grid-area:cancel}.price-alert-meta-grid{grid-template-columns:1fr}}