:root{--primary-color:#6b73ff;--primary-hover:#575fcf;--primary-active-glow:rgba(107,115,255,0.3);--bg-color:#f4f6f8;--text-color:#333;--text-muted-color:#6c757d;--text-inverted-color:#fff;--card-bg:#fff;--card-shadow:0 4px 6px rgba(0,0,0,0.1);--card-shadow-hover:0 6px 12px rgba(0,0,0,0.1);--border-color:#e0e5eb;--border-color-light:#f0f2f5;--input-border:#ccd0d5;--input-bg:#fff;--button-secondary-bg:#f8f9fa;--button-secondary-text:#495057;--button-secondary-hover-bg:#e9ecef;--success-color:#28a745;--success-hover:#218838;--danger-color:#dc3545;--header-bg:#011F5B;--header-text:#fff;--pill-bg:#f0f2f5;--pill-text:#333;--pill-border:#ccd0d5;--pill-hover-bg:#e6e9ff;--pill-hover-border:var(--primary-color);--pill-include-bg:#d1e7dd;--pill-include-border:#badbcc;--pill-include-text:#0f5132;--pill-exclude-bg:#f8d7da;--pill-exclude-border:#f5c2c7;--pill-exclude-text:#58151c;--link-color:#007bff;--link-hover:#0056b3;--table-row-hover:#f8f9fa;--table-active-row-shadow:0 4px 12px var(--primary-active-glow)}html.dark-mode{--primary-color:#7b83ff;--primary-hover:#8d94ff;--bg-color:#1a1b1e;--text-color:#e1e1e1;--text-muted-color:#9e9e9e;--text-inverted-color:#111;--card-bg:#2c2d30;--card-shadow:0 4px 8px rgba(0,0,0,0.4);--card-shadow-hover:0 6px 16px rgba(0,0,0,0.5);--border-color:#424242;--border-color-light:#3a3b3d;--input-border:#555;--input-bg:#3a3b3d;--button-secondary-bg:#4a4b4e;--button-secondary-text:#e1e1e1;--button-secondary-hover-bg:#5a5b5e;--success-color:#33c054;--success-hover:#3ed062;--danger-color:#e57373;--header-bg:#252a34;--header-text:#e1e1e1;--pill-bg:#3a3b3d;--pill-text:#e1e1e1;--pill-border:#555;--pill-hover-bg:#4a4b4e;--pill-hover-border:var(--primary-color);--pill-include-bg:#2e7d32;--pill-include-border:#4caf50;--pill-include-text:#e8f5e9;--pill-exclude-bg:#c62828;--pill-exclude-border:#e57373;--pill-exclude-text:#fdecea;--link-color:#82aaff;--link-hover:#a6c5ff;--table-row-hover:#3a3b3d}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Roboto,sans-serif;background-color:var(--bg-color);color:var(--text-color);line-height:1.6;transition:background-color .3s ease,color .3s ease}.container{width:90%;margin:auto;padding:20px 0;transition:width .5s ease,max-width .5s ease}.container.full-width{width:95%}@media (max-width:1200px){.container{width:96%}}@media (max-width:992px){.container{width:98%}}.hidden{display:none!important}header{background:var(--header-bg);padding:10px 0;color:var(--header-text);margin-bottom:20px;transition:background-color .3s ease}.header-container{justify-content:space-between}.header-container,.header-left{display:flex;align-items:center}.header-left{gap:20px}.logo-link{display:flex;align-items:center;text-decoration:none}.logo-text{color:var(--header-text);font-size:24px;font-weight:700;margin-left:0}.header-nav{display:flex;gap:10px}.header-actions{display:flex;align-items:center;gap:15px}.header-action-btn{background:none;border:2px solid var(--header-text);color:var(--header-text);padding:6px 16px;border-radius:20px;cursor:pointer;font-size:.9em;font-weight:500;display:flex;align-items:center;gap:8px;transition:all .3s ease;text-decoration:none}.header-action-btn:hover{background:color-mix(in oklab,var(--header-bg) 85%,var(--header-text) 15%);color:var(--header-text)}.header-action-btn.active{background:var(--header-text);color:var(--header-bg)}.header-nav .header-action-btn{border-color:transparent}.header-nav .header-action-btn.active{border-color:var(--header-text);background:none;color:var(--header-text)}.header-nav .header-action-btn.active:hover{background:color-mix(in oklab,var(--header-bg) 85%,var(--header-text) 15%);color:var(--header-text)}.header-actions .header-action-btn{border-color:transparent}.header-actions .header-action-btn.active{border-color:var(--header-text);background:none;color:var(--header-text)}.header-actions .header-action-btn.active:hover{background:color-mix(in oklab,var(--header-bg) 85%,var(--header-text) 15%);color:var(--header-text)}.header-actions .profile-btn,.header-actions .theme-toggle-btn{border-color:transparent}.header-actions .header-action-btn:focus-visible,.header-actions .profile-btn:focus-visible,.header-actions .theme-toggle-btn:focus-visible,.header-nav .header-action-btn:focus-visible{outline:3px solid var(--primary-active-glow);outline-offset:2px}.saved-trips-btn{position:relative;width:40px;height:40px;padding:0;justify-content:center;border-radius:50%;font-size:1.1em;gap:0}.account-section,.profile-btn{display:flex;align-items:center}.profile-btn{background:none;border:2px solid var(--header-text);color:var(--header-text);width:40px;height:40px;padding:0;border-radius:50%;cursor:pointer;justify-content:center}.profile-btn:hover{background:color-mix(in oklab,var(--header-bg) 85%,var(--header-text) 15%)}.profile-btn img{display:block;width:100%;height:100%;border-radius:50%;object-fit:cover}.logo-link .logo-img{height:50px;width:auto}.theme-toggle-btn{background:none;border:2px solid var(--header-text);color:var(--header-text);width:40px;height:40px;border-radius:50%;cursor:pointer;font-size:1.2em;display:flex;align-items:center;justify-content:center;transition:all .3s ease}.theme-toggle-btn:hover{background:color-mix(in oklab,var(--header-bg) 85%,var(--header-text) 15%);color:var(--header-text)}header h1{font-size:1.8em;font-weight:700}main{display:flex;flex-direction:column;gap:20px}.top-search{position:static;top:auto;z-index:30;background:var(--bg-color);background:color-mix(in oklab,var(--header-bg) 10%,var(--bg-color));border-bottom:1px solid var(--border-color-light);-webkit-backdrop-filter:saturate(160%) blur(6px);backdrop-filter:saturate(160%) blur(6px)}.top-search>.container{padding-top:12px;padding-bottom:12px}.top-search-summary{position:relative;display:flex;justify-content:center;align-items:center;gap:10px;padding:6px 0}.top-search-summary .reset-btn{position:absolute;right:0;top:50%;transform:translateY(-50%);width:auto;height:36px;padding:6px 12px;border-radius:999px}.top-search-form{background:var(--card-bg);border:1px solid var(--border-color-light);box-shadow:0 2px 10px rgba(0,0,0,.06);padding:12px;border-radius:14px;position:relative;overflow:visible}.top-search-row{display:grid;grid-gap:8px;gap:8px;grid-template-columns:1fr;grid-row-gap:8px;row-gap:8px;grid-column-gap:8px;column-gap:8px}.top-search-mode{align-self:center;grid-column:1/-1;justify-self:start;margin-bottom:0}.top-field label{display:block;font-weight:500;margin-bottom:6px}.top-actions{display:flex;gap:6px;align-items:center;justify-content:flex-end}.top-actions .btn{width:auto;white-space:nowrap}.top-actions .advanced-toggle{background:#fff;color:var(--text-color);border:1px solid var(--border-color);box-shadow:0 1px 2px rgba(0,0,0,.06);border-radius:8px}.top-actions .advanced-toggle:hover{background:var(--button-secondary-hover-bg)}html.dark-mode .top-actions .advanced-toggle{background:var(--input-bg);color:var(--text-color);border-color:var(--border-color)}.top-search .form-control{min-height:40px;padding:8px 12px;border-radius:8px;border:1px solid var(--input-border);background:var(--input-bg)}.top-search .form-group{margin-bottom:0}.top-search .link-button{font-size:.85em}.inline-label-pill{position:relative}.inline-label-pill:before{content:attr(data-label);position:absolute;left:14px;top:6px;transform:none;color:var(--text-muted-color);font-weight:600;font-size:.75em;z-index:2;pointer-events:none;white-space:nowrap;max-width:calc(100% - 28px);overflow:hidden;text-overflow:ellipsis}.inline-label-pill .rs__control{min-height:60px}.inline-label-pill .rs__value-container{padding-top:20px!important;padding-bottom:14px!important;padding-left:12px!important}.inline-label-pill .pill-input{min-height:60px;padding-top:24px;padding-left:12px}.top-field.pill-narrow{max-width:none;justify-self:stretch}.top-field.date-field.pill-narrow{max-width:none}.top-field:has(.inline-label-pill[data-label="Start Airports"]){grid-column:1}.top-field:has(.inline-label-pill[data-label="End Airports"]){grid-column:1}@media (min-width:769px){.top-field.pill-narrow:has(.inline-label-pill[data-label="End Airports"]),.top-field.pill-narrow:has(.inline-label-pill[data-label="Start Airports"]){justify-self:start;width:420px;max-width:420px}}.more-options .btn{height:36px;padding:6px 12px;border-radius:8px;background:#f4f6f8;color:var(--text-color);border:1px solid var(--border-color);box-shadow:0 1px 2px rgba(0,0,0,.06)}@media (min-width:769px){.top-search-row{grid-template-columns:420px auto minmax(280px,1fr) auto;grid-template-rows:auto auto auto;align-items:start;column-gap:10px}.top-search-row>.top-search-mode{grid-row:1;grid-column:1/-1}.top-search-row>:not(.top-search-mode){grid-row:2}.top-actions{justify-self:end}.top-field:has(.inline-label-pill[data-label="Start Airports"]){grid-column:1;grid-row:2}.top-field:has(.inline-label-pill[data-label="End Airports"]){grid-column:1;grid-row:3}.top-field:has(.inline-label-pill[data-label="Travel Dates"]){grid-column:2;grid-row:2}.top-actions{grid-column:4;grid-row:2}.top-search-row[data-mode=meetup] .top-field:has(.inline-label-pill[data-label="Person A's Airports"]){grid-column:1;grid-row:2}.top-search-row[data-mode=meetup] .top-field:has(.inline-label-pill[data-label="Person B's Airports"]){grid-column:2;grid-row:2}.top-search-row[data-mode=meetup] .top-field:has(.inline-label-pill[data-label="Travel Dates"]){grid-column:3;grid-row:2}.top-search-row[data-mode=meetup]{grid-template-columns:420px 420px minmax(280px,1fr) auto}}@media (max-width:1440px) and (min-width:1281px){.top-search-row[data-mode=meetup]{grid-template-columns:350px 350px minmax(280px,1fr) auto}}@media (max-width:1560px) and (min-width:1441px){.top-search-row[data-mode=meetup]{grid-template-columns:360px 360px minmax(280px,1fr) auto}}@media (max-width:1024px) and (min-width:769px){.top-search-row{grid-template-columns:420px minmax(200px,1fr) auto}.top-search-row>.top-actions{grid-column:1/-1;grid-row:3;justify-self:end}.top-search-row[data-mode=meetup] .top-field:has(.inline-label-pill[data-label="Person A's Airports"]){grid-column:1}.top-search-row[data-mode=meetup] .top-field:has(.inline-label-pill[data-label="Person B's Airports"]){grid-column:2}.top-search-row[data-mode=meetup] .top-field:has(.inline-label-pill[data-label="Travel Dates"]){grid-column:3}.top-search-row[data-mode=meetup]{grid-template-columns:420px 420px auto}}@media (max-width:1280px) and (min-width:769px){.top-field.pill-narrow:has(.inline-label-pill[data-label="End Airports"]),.top-field.pill-narrow:has(.inline-label-pill[data-label="Person A's Airports"]),.top-field.pill-narrow:has(.inline-label-pill[data-label="Person B's Airports"]),.top-field.pill-narrow:has(.inline-label-pill[data-label="Start Airports"]){width:360px;max-width:360px}.top-search-row{grid-template-columns:360px minmax(220px,1fr) auto}.top-search-row>.top-actions{grid-column:1/-1;grid-row:3;justify-self:end}.top-search-row[data-mode=meetup] .top-field:has(.inline-label-pill[data-label="Person A's Airports"]){grid-column:1}.top-search-row[data-mode=meetup] .top-field:has(.inline-label-pill[data-label="Person B's Airports"]){grid-column:2}.top-search-row[data-mode=meetup] .top-field:has(.inline-label-pill[data-label="Travel Dates"]){grid-column:3}.top-search-row[data-mode=meetup]{grid-template-columns:360px 360px auto}}@media (max-width:980px) and (min-width:769px){.top-search-row[data-mode=meetup]{grid-template-columns:280px 280px auto}.top-search-row>.top-actions{grid-column:1/-1!important;grid-row:3!important;justify-self:end}.top-field.pill-narrow:has(.inline-label-pill[data-label="Person A's Airports"]),.top-field.pill-narrow:has(.inline-label-pill[data-label="Person B's Airports"]){width:280px;max-width:280px}}@media (max-width:1424px) and (min-width:769px){.top-search-row>.top-actions{grid-column:1/-1!important;grid-row:3!important;justify-self:end}}@media (max-width:800px) and (min-width:769px){.top-search-row[data-mode=meetup]{grid-template-columns:260px 260px auto}.top-field.pill-narrow:has(.inline-label-pill[data-label="Person A's Airports"]),.top-field.pill-narrow:has(.inline-label-pill[data-label="Person B's Airports"]){width:260px;max-width:260px}}@media (max-width:640px){.inline-label-pill .rs__control{min-height:52px}.inline-label-pill .rs__value-container{padding-top:14px!important;padding-bottom:12px!important;padding-left:10px!important}.inline-label-pill .pill-input{min-height:52px;padding-top:18px;padding-left:10px}.inline-label-pill:before{left:12px;top:6px;font-size:.78em}}.top-search .date-field{position:relative}.top-search .date-field .date-range-picker-container{max-width:min(720px,95vw)}.top-search .date-field .date-range-scroll{max-height:70vh}.advanced-options .advanced-grid{display:grid;grid-template-columns:minmax(160px,200px) 1fr;grid-gap:12px;gap:12px;align-items:center;justify-items:stretch}.pill-range .range-pill{padding-top:18px}.inline-label-pill .range-pill .range-slider{margin-top:0}.advanced-options .form-group.pill-narrow{max-width:200px}.advanced-options .inline-label-pill .pill-input{padding-top:26px}.advanced-options .form-group.pill-range{justify-self:start}.advanced-options .form-group.pill-range .inline-label-pill{width:100%}.advanced-options .pill-range .range-pill{width:100%;max-width:560px}.advanced-options .day-selector-group.weekdays{display:grid;grid-template-columns:repeat(7,1fr);grid-gap:6px;gap:6px}.advanced-options .day-btn{border-radius:8px;height:32px;padding:0 10px;display:flex;align-items:center;justify-content:center}.advanced-options .day-selector-group.disabled{opacity:.6;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;filter:grayscale(.1)}.main-heading{text-align:center;font-size:2.8rem;font-weight:700;color:var(--text-color);padding:20px 10px 0;line-height:1.2;width:90%;margin-left:auto;margin-right:auto}.main-heading .highlight{color:var(--primary-color)}.main-container{transition:flex-direction 0s ease .5s}.left-panel,.main-container{display:flex;flex-direction:column;gap:20px}.left-panel,.right-panel{width:100%;transition:all .5s ease}.sticky-wrapper{position:-webkit-sticky;position:sticky;top:20px;z-index:10}.search-section{background-color:var(--card-bg);padding:20px;border-radius:6px;box-shadow:var(--card-shadow);transition:all .5s ease;width:100%;max-width:100%;overflow:hidden}.search-summary{display:flex;justify-content:space-between;padding:10px 14px;border:1px solid var(--border-color-light);background-color:var(--card-bg);box-shadow:0 2px 8px rgba(0,0,0,.06)}#edit-search-btn,.search-summary{align-items:center;border-radius:999px}#edit-search-btn{width:auto;height:36px;padding:6px 12px;flex-shrink:0;display:inline-flex;gap:8px;background-color:var(--button-secondary-bg);color:var(--button-secondary-text);border:1px solid var(--border-color);box-shadow:0 2px 6px rgba(0,0,0,.06);margin-left:16px}#edit-search-btn:hover{background-color:var(--button-secondary-hover-bg);color:var(--button-secondary-text)}#edit-search-btn:focus-visible{outline:3px solid var(--primary-active-glow);outline-offset:2px}#edit-search-btn i{margin-right:0;font-size:.95em;color:var(--text-muted-color)}#edit-search-btn .edit-label{font-weight:600}@media (max-width:640px){#edit-search-btn .edit-label{display:none}#edit-search-btn{padding:6px;width:36px;justify-content:center}}.summary-content{display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap}.articleImage{display:block;max-width:100%;height:auto;border-radius:6px;margin:12px 0}@media (min-width:768px){.articleImage{max-height:520px}}@media (max-width:767px){.articleImage{max-height:60vh}}.summary-item{display:flex;align-items:center;gap:6px;font-size:.95em}.summary-icon{color:var(--text-muted-color);display:inline-flex;align-items:center}.summary-value{font-weight:500;color:var(--text-color);display:flex;align-items:center;flex-wrap:wrap;gap:4px}.summary-airport-pill{background-color:var(--pill-bg);padding:2px 6px;border-radius:10px;font-size:.9em;font-family:monospace}.search-mode-switcher{display:flex;border:1px solid var(--input-border);border-radius:20px;margin-bottom:20px;overflow:hidden}.search-mode-switcher .mode-btn{flex:1 1;padding:10px;border:none;background-color:var(--button-secondary-bg);color:var(--button-secondary-text);cursor:pointer;font-size:.95em;font-weight:500;transition:background-color .2s ease,color .2s ease;display:flex;align-items:center;justify-content:center;gap:8px}.search-mode-switcher .mode-btn:first-child{border-right:1px solid var(--input-border)}.search-mode-switcher .mode-btn.active{background-color:var(--primary-color);color:var(--text-inverted-color)}.search-mode-switcher .mode-btn:not(.active):hover{background-color:var(--button-secondary-hover-bg)}.form-group{margin-bottom:15px}.form-group label{display:block;font-weight:500;margin-bottom:5px}.form-group input[type=date],.form-group input[type=number],.form-group input[type=text],.form-group select{width:100%;padding:10px;border:1px solid var(--input-border);border-radius:4px;transition:border .3s ease;background-color:var(--input-bg);color:var(--text-color)}.form-group input:focus,.form-group input[type=text]:focus,.form-group select:focus{border-color:var(--primary-color);outline:none}.checkbox-group{display:flex;align-items:center;gap:10px}.form-row{display:flex;gap:15px;flex-wrap:wrap}.form-row .form-group{flex:1 1;min-width:180px}.day-selector-group{display:flex;justify-content:space-between;gap:4px}.day-btn{flex:1 1;padding:8px 4px;border:1px solid var(--input-border);border-radius:4px;background-color:var(--button-secondary-bg);color:var(--button-secondary-text);text-align:center;font-size:.85em;font-weight:500;cursor:pointer;transition:all .2s ease;-webkit-user-select:none;-moz-user-select:none;user-select:none}.day-btn:hover{border-color:#aab1b9;background-color:var(--button-secondary-hover-bg)}html.dark-mode .day-btn:hover{border-color:var(--primary-hover)}.day-btn.active{background-color:var(--primary-color);color:var(--text-inverted-color);border-color:var(--primary-color)}.form-row .stop-days-group{flex:2 1;min-width:280px}.stop-days-group .form-group-label{display:block;font-weight:500;margin-bottom:5px}.range-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.range-header label{margin-bottom:0}.range-inputs{display:flex;align-items:center;gap:8px}.range-inputs input[type=number]{width:55px;padding:6px 8px;text-align:center;background-color:var(--button-secondary-bg);border:1px solid var(--border-color);border-radius:4px;font-size:.9em;-moz-appearance:textfield;color:var(--text-color)}.range-inputs input[type=number]::-webkit-inner-spin-button,.range-inputs input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.range-inputs span{color:var(--text-muted-color);font-weight:500}.range-slider{position:relative;height:20px}.range-slider .slider-track-background{width:100%;background:var(--button-secondary-hover-bg);z-index:1}.range-slider .slider-track-background,.range-slider .slider-track-range{position:absolute;height:5px;top:50%;transform:translateY(-50%);border-radius:3px}.range-slider .slider-track-range{background:var(--primary-color);z-index:2}.range-slider input[type=range]{position:absolute;top:0;left:0;width:100%;-webkit-appearance:none;-moz-appearance:none;appearance:none;pointer-events:none;background:transparent;z-index:3;height:100%;margin:0}.range-slider input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;pointer-events:all;width:18px;height:18px;background:var(--primary-color);border-radius:50%;cursor:pointer;margin-top:-6.5px;border:2px solid var(--card-bg);box-shadow:0 1px 3px rgba(0,0,0,.2);-webkit-transition:transform .2s ease,box-shadow .2s ease;transition:transform .2s ease,box-shadow .2s ease}.range-slider input[type=range]:hover::-webkit-slider-thumb{transform:scale(1.15);box-shadow:0 2px 6px rgba(0,0,0,.25)}.range-slider input[type=range]:active::-webkit-slider-thumb{transform:scale(1.2);box-shadow:0 0 0 4px var(--primary-active-glow)}.range-slider input[type=range]::-moz-range-thumb{pointer-events:all;-moz-appearance:none;appearance:none;width:14px;height:14px;background:var(--primary-color);border-radius:50%;cursor:pointer;border:2px solid var(--card-bg);box-shadow:0 1px 3px rgba(0,0,0,.2);-moz-transition:transform .2s ease,box-shadow .2s ease;transition:transform .2s ease,box-shadow .2s ease}.range-slider input[type=range]:hover::-moz-range-thumb{transform:scale(1.15);box-shadow:0 2px 6px rgba(0,0,0,.25)}.range-slider input[type=range]:active::-moz-range-thumb{transform:scale(1.2);box-shadow:0 0 0 4px var(--primary-active-glow)}.end-airports-toggle-group{margin-bottom:15px}.link-button{background:none;border:none;color:var(--link-color);cursor:pointer;font-size:.9em;font-weight:500;padding:5px 0;text-align:left;width:auto;display:inline-flex;align-items:center;gap:6px}.link-button:hover{color:var(--link-hover);text-decoration:underline}.small-link-button{font-size:.8em;padding:0}.end-airports-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:5px}.end-airports-header label{margin-bottom:0}.btn{position:relative;display:inline-block;background-color:var(--primary-color);color:var(--text-inverted-color);padding:10px 20px;border:none;border-radius:20px;cursor:pointer;font-size:1em;transition:background-color .3s ease,transform .3s ease,box-shadow .3s ease;width:100%;text-align:center;box-shadow:0 2px 4px rgba(0,0,0,.1)}.btn i{margin-right:5px}.btn:hover{background-color:var(--primary-hover);transform:translateY(-2px);box-shadow:0 4px 8px rgba(0,0,0,.15)}.btn:active{transform:translateY(0);box-shadow:0 2px 4px rgba(0,0,0,.1)}.btn-small{padding:6px 14px;font-size:.8em;border-radius:15px;width:auto;display:inline-flex;align-items:center;gap:4px;text-decoration:none;white-space:nowrap}.btn-small i{font-size:.85em;margin-right:3px}.btn-book-flight{background-color:var(--success-color);color:var(--text-inverted-color)}.btn.btn-secondary{background-color:var(--button-secondary-bg);color:var(--button-secondary-text)}.btn.btn-secondary:hover{background-color:var(--button-secondary-hover-bg);color:var(--button-secondary-text)}.top-search .search-mode-switcher{display:inline-flex;height:32px;border-radius:999px;align-items:stretch;border:1px solid var(--input-border)}.top-search .search-mode-switcher .mode-btn{height:100%;padding:0 10px;font-weight:600;font-size:.85em;flex:0 0 auto}.top-search .search-mode-switcher .mode-btn:first-child{border-right:1px solid var(--input-border)}.btn-book-flight:hover{background-color:var(--success-hover);color:var(--text-inverted-color)}.btn.btn-secondary{background-color:var(--text-muted-color);color:#fff}.btn.btn-secondary:hover{background-color:#5a6268;color:#fff}html.dark-mode .btn.btn-secondary:hover{background-color:var(--text-muted-color);filter:brightness(1.2)}.spinner{display:inline-block;width:16px;height:16px;border-radius:50%;border:3px solid rgba(255,255,255,.3);border-top:3px solid var(--text-inverted-color);animation:spin 1s ease-in-out infinite;margin-left:8px;vertical-align:middle}@keyframes spin{to{transform:rotate(1turn)}}.btn.loading{cursor:not-allowed;opacity:.7}.btn.loading .spinner{display:inline-block}.btn .spinner,.reset-btn{display:none}.reset-btn{margin-top:15px;background-color:#ff6b6b;border-radius:20px}.reset-btn:hover{background-color:#ff4c4c}.reset-btn.hidden{display:none}.map-section{background-color:var(--card-bg);padding:15px;border-radius:6px;box-shadow:var(--card-shadow);width:100%;max-width:100%;height:350px;margin-bottom:15px;transition:none}.map-section,.map-section.visible{opacity:1;transform:none}.map-section.hidden{display:none}#map{width:100%;height:100%}html.dark-mode .leaflet-tile-pane{filter:brightness(.6) invert(1) contrast(3) hue-rotate(200deg) saturate(.3) brightness(.7)}.example-results-section{background-color:var(--card-bg);padding:20px;border-radius:8px;box-shadow:0 4px 12px rgba(0,0,0,.08)}html.dark-mode .example-results-section{box-shadow:var(--card-shadow)}.example-results-section h2{font-size:1.5em;color:var(--text-color);margin:0 0 20px;font-weight:700;text-align:center}.example-results-container{display:grid;grid-template-columns:1fr;grid-gap:15px;gap:15px}.example-result-card{display:flex;flex-direction:column;background-color:var(--card-bg);border-radius:8px;text-decoration:none;color:inherit;transition:transform .2s ease,box-shadow .2s ease;text-align:left;overflow:hidden;box-shadow:0 2px 5px rgba(0,0,0,.05)}html.dark-mode .example-result-card{border:none}.example-result-card:hover{transform:translateY(-4px);box-shadow:var(--card-shadow-hover)}.example-result-card .card-image{position:relative;width:100%;height:180px;overflow:hidden;background:#000}.example-result-card .card-image img{width:100%;height:100%;object-fit:cover;display:block;opacity:.95}.example-result-card .image-nav{position:absolute;top:50%;transform:translateY(-50%);background:rgba(0,0,0,.5);color:#fff;border:none;width:32px;height:32px;border-radius:16px;display:flex;align-items:center;justify-content:center;cursor:pointer}.example-result-card .image-nav.left{left:10px}.example-result-card .image-nav.right{right:10px}.example-result-card .image-nav:hover{background:rgba(0,0,0,.7)}.example-result-card .image-caption{position:absolute;left:0;bottom:0;width:100%;padding:6px 10px;background:linear-gradient(180deg,rgba(0,0,0,0),rgba(0,0,0,.6) 60%);color:#fff;font-size:.9em;font-weight:500}.example-result-card .card-header{padding:12px 15px;border-bottom:1px solid var(--border-color-light)}.example-result-card .card-header h3{margin:0;font-size:1.1em;font-weight:500;color:var(--text-color)}.example-result-card .card-body{padding:15px;flex-grow:1}.example-result-card .card-body .route{margin:0;font-size:.9em;color:var(--text-color);display:flex;align-items:flex-start;gap:10px;line-height:1.5}.example-result-card .card-body .route i.fa-route{color:var(--primary-color);font-size:1.1em;margin-top:3px;flex-shrink:0}.example-result-card .card-body .route span{font-weight:500}.example-result-card .card-body .route .route-arrow{font-size:.7em;color:#888;vertical-align:middle;margin:0 4px}.example-result-card .card-footer{background-color:var(--button-secondary-bg);padding:12px 15px;text-align:right;margin-top:auto;border-top:1px solid var(--border-color)}.example-result-card .price-info{line-height:1.2}.example-result-card .price-amount{display:block;font-size:1.3em;font-weight:700;color:var(--success-color)}.example-result-card .price-detail{display:block;font-size:.8em;color:var(--text-muted-color);font-weight:500}.example-result-card.skeleton{pointer-events:none}.skeleton .card-body,.skeleton .card-footer,.skeleton .card-header{background:var(--card-bg)}.skeleton .card-body .route,.skeleton .card-header h3,.skeleton .price-amount,.skeleton .price-detail{background:linear-gradient(90deg,var(--border-color-light) 25%,var(--button-secondary-hover-bg) 50%,var(--border-color-light) 75%);background-size:200% 100%;animation:skeleton-loading 1.5s ease-in-out infinite;color:transparent;border-radius:4px}.skeleton .card-header h3{width:60%;height:20px}.skeleton .card-body .route{width:90%;height:40px}.skeleton .price-amount{width:50%;height:24px;margin-left:auto;margin-bottom:5px}.skeleton .price-detail{width:70%;height:16px;margin-left:auto}@keyframes skeleton-loading{0%{background-position:200% 0}to{background-position:-200% 0}}.skeleton-row td{padding:8px}.skeleton-row .skeleton-cell{background:linear-gradient(90deg,var(--border-color-light) 25%,var(--button-secondary-hover-bg) 50%,var(--border-color-light) 75%);background-size:200% 100%;animation:skeleton-loading 1.5s ease-in-out infinite;border-radius:4px;height:20px}.results-navigation{margin-bottom:15px;border-bottom:2px solid var(--border-color);padding-bottom:5px;transition:opacity .3s ease;opacity:1}.results-navigation .tab{display:inline-block;padding:8px 15px;cursor:pointer;background-color:transparent;color:var(--text-muted-color);font-weight:500;border:none;border-bottom:3px solid transparent;transition:color .2s ease,border-bottom-color .2s ease;position:relative}.results-navigation .tab:hover{color:var(--link-color)}.results-navigation .tab.active{color:var(--primary-color);border-bottom-color:var(--primary-color)}.results-navigation .tab .badge{background-color:var(--danger-color);color:white;font-size:.7em;padding:2px 5px;border-radius:8px;position:absolute;top:4px;right:2px;line-height:1}.saved-trips-btn .badge{top:-2px;right:-2px}.filters-section{background-color:var(--card-bg);padding:15px;border-radius:6px;box-shadow:var(--card-shadow);margin-top:20px}.filter-group{margin-bottom:15px}.filter-group:last-child{margin-bottom:0}.filter-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.filter-header h4{margin:0;font-size:1.05em;color:var(--text-color);font-weight:500}.filter-header .btn-small{padding:4px 8px;font-size:.75em}.filter-header div{display:flex;gap:5px}.airport-filter-pills-container{display:flex;flex-wrap:wrap;gap:6px;padding-bottom:3px}.airport-filter-pill{display:inline-flex;align-items:center;padding:4px 10px;border-radius:14px;border:1px solid var(--pill-border);cursor:pointer;font-size:.8em;transition:all .2s ease;background-color:var(--pill-bg);color:var(--pill-text);line-height:1.3;max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.airport-filter-pill:hover{border-color:var(--pill-hover-border);background-color:var(--pill-hover-bg)}.airport-filter-pill.include{background-color:var(--pill-include-bg);border-color:var(--pill-include-border)}.airport-filter-pill.include,.airport-filter-pill.include i{color:var(--pill-include-text)}.airport-filter-pill.exclude{background-color:var(--pill-exclude-bg);border-color:var(--pill-exclude-border)}.airport-filter-pill.exclude,.airport-filter-pill.exclude i{color:var(--pill-exclude-text)}.results-section{background-color:transparent;padding:0;border-radius:0;box-shadow:none;transition:all .5s ease;opacity:0;transform:translateY(0)}.results-section.visible{opacity:1;transform:translateY(0)}.results-section.hidden{display:none}.results-card-list{display:grid;grid-template-columns:1fr;grid-gap:12px;gap:12px}.results-card{background-color:var(--card-bg);border-radius:8px;box-shadow:0 2px 6px rgba(0,0,0,.08);overflow:hidden;position:relative;transition:box-shadow .2s ease,transform .2s ease;container-type:inline-size}.results-card:hover{box-shadow:var(--card-shadow-hover);transform:translateY(-2px)}.results-card.active{box-shadow:var(--table-active-row-shadow)}.results-card-body{display:flex;align-items:stretch;gap:14px;padding:12px;flex-wrap:nowrap}.results-card .card-left{position:relative;flex:0 0 260px;display:flex;align-items:center}.results-card .card-left .thumb{flex:1 1 auto;width:100%;height:150px;border-radius:6px;overflow:hidden}.results-card .route-header{flex:1 1 280px;justify-content:center}.results-card .route-header,.results-card .route-list{display:flex;flex-direction:column;gap:6px;margin:0;padding:0}.results-card .route-list.compact{gap:4px}.results-card .route-item{display:flex;align-items:flex-start;gap:8px;color:var(--text-color)}.results-card .route-item .bullet{font-size:.85em;color:var(--primary-color);transform:rotate(90deg);display:inline-block;line-height:1}.results-card .route-item .route-city{font-weight:400;font-size:.95em;line-height:1.1;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.results-card .route-item .route-destination{font-weight:700;font-size:1.15em;line-height:1.2;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.results-card .route-list.meetup .route-item:first-child{margin-bottom:6px}.results-card .card-right{flex:0 1 300px;min-width:200px;display:flex;flex-direction:column;align-items:flex-end;gap:12px}.results-card .date-range{display:flex;align-items:center;gap:8px;font-weight:600;color:var(--text-color);font-size:.95em;flex-wrap:wrap;justify-content:flex-end}.results-card .date-range .date-range-arrow{color:var(--primary-color)}.results-card .right-stats{width:auto;margin-left:auto;display:grid;grid-template-columns:auto auto;grid-template-rows:auto auto;grid-column-gap:8px;column-gap:8px;grid-row-gap:6px;row-gap:6px;justify-content:flex-end;align-items:end}.results-card .right-stats .stat{display:flex;flex-direction:column;min-width:84px}.results-card .right-stats .flights{display:none}.results-card .right-stats .duration{grid-column:1;grid-row:1;text-align:right}.results-card .right-stats .per-flight{grid-column:2;grid-row:1;text-align:right}.results-card .right-stats .total{grid-column:2;grid-row:2;text-align:right;justify-self:end}.results-card .metric-label{font-size:.75em;color:var(--text-muted-color);margin-bottom:2px}.results-card .metric-value{font-size:.95em;font-weight:400;color:var(--text-color)}.results-card .right-stats .total .metric-value{font-size:1.9em;font-weight:900;color:var(--success-color);white-space:nowrap;line-height:1}.results-card .right-stats .total .flights-count{font-size:.8em;color:var(--text-muted-color);margin-top:2px}.results-card .right-stats .total .alternatives-prompt{font-size:.8em;color:var(--link-color);text-decoration:none;cursor:pointer;display:inline-block;margin-top:2px}.results-card .right-stats .total .alternatives-prompt:hover{color:var(--link-hover);text-decoration:underline}@media (max-width:1180px){.results-card-body{flex-wrap:wrap;gap:12px}.results-card .card-left{flex:0 0 240px}.results-card .route-header{flex:1 1 250px}.results-card .card-right{flex:0 1 250px}}@media (max-width:1024px){.results-card-body{flex-wrap:wrap;gap:12px}.results-card .card-left{flex:0 0 220px}.results-card .route-header{flex:1 1 230px;align-self:flex-start}.results-card .card-right{flex:1 1 230px;align-items:flex-end}}@media (max-width:640px){.results-card-body{flex-wrap:wrap;gap:8px}.results-card .card-left{flex:1 1 100%}.results-card .card-left .thumb{width:100%;height:160px}.results-card .route-header{order:2;flex:1 1;min-width:0;align-self:flex-start;padding-right:6px;justify-content:center}.results-card .card-right{order:2;flex:0 1 170px;min-width:170px;align-items:flex-start;text-align:left;gap:6px}.results-card .date-range{justify-content:flex-start;font-size:.9em;flex-wrap:nowrap;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.results-card .right-stats{column-gap:6px;row-gap:6px;grid-template-columns:minmax(60px,1fr) max-content}.results-card .right-stats .stat{min-width:64px}.results-card .right-stats .total .metric-value{font-size:1.75em}}@container (max-width: 620px){.results-card-body{flex-wrap:wrap;gap:8px}.results-card .card-left{flex:1 1 100%}.results-card .card-left .thumb{width:100%;height:160px}.results-card .route-header{order:2;flex:1 1;min-width:0;align-self:flex-start;padding-right:6px;justify-content:center}.results-card .card-right{order:2;flex:0 1 180px;min-width:170px;align-items:flex-start;text-align:left;gap:6px}.results-card .date-range{justify-content:flex-start;font-size:.9em;flex-wrap:nowrap;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.results-card .right-stats{column-gap:6px;row-gap:6px;grid-template-columns:minmax(60px,1fr) max-content}.results-card .right-stats .stat{min-width:64px}.results-card .right-stats .total .metric-value{font-size:1.75em}}@container (max-width: 860px) and (min-width: 621px){.results-card-body{gap:12px;padding:10px;flex-wrap:nowrap}.results-card .card-left{flex:0 0 220px}.results-card .route-header{flex:1 1 240px}.results-card .card-right{flex:0 1 240px}}@container (min-width: 621px){.results-card-body{flex-wrap:nowrap}}.results-card.skeleton{box-shadow:none;border:1px solid var(--border-color)}.results-card .skeleton-bg{width:100%;height:100%}.results-card .skeleton-bg,.skeleton-line{background:var(--button-secondary-bg);border-radius:6px}.skeleton-line{height:10px;margin:6px 0}#results table{width:100%;border-collapse:separate;border-spacing:0 10px;margin-top:0}#results table thead{background-color:var(--primary-color);color:var(--text-inverted-color)}html.dark-mode #results table thead{background-color:#3a3b3d}#results table thead th{padding:10px 8px;text-align:center;font-weight:500;position:-webkit-sticky;position:sticky;top:0;z-index:5;font-size:.85em;white-space:nowrap}#results table thead th:first-child{border-top-left-radius:6px;width:40px}#results table thead th:nth-child(2){text-align:left}#results table thead th:last-child{border-top-right-radius:6px}#results table tbody tr.result-summary-row{background-color:var(--card-bg);border-radius:6px;box-shadow:0 2px 4px rgba(0,0,0,.07);transition:background-color .2s ease,box-shadow .2s ease,border-radius .2s ease;cursor:pointer;overflow:hidden}html.dark-mode #results table tbody tr.result-summary-row{box-shadow:0 2px 4px rgba(0,0,0,.2)}#results table tbody tr.result-summary-row:hover{background-color:var(--table-row-hover);box-shadow:0 4px 8px rgba(0,0,0,.1)}html.dark-mode #results table tbody tr.result-summary-row:hover{box-shadow:0 4px 8px rgba(0,0,0,.3)}#results table tbody tr.result-summary-row.active-row{box-shadow:var(--table-active-row-shadow);border-bottom-left-radius:0;border-bottom-right-radius:0}#results table tbody td{padding:8px;text-align:center;vertical-align:middle;font-size:.9em}#results table tbody td.star-cell{width:40px;padding:8px 0}#results table tbody td.flight-path-cell{text-align:left;position:relative}#results table tbody td.flight-path-cell .flight-path-content{display:flex;align-items:center;gap:12px}#results table tbody td.flight-path-cell .thumb{position:relative;width:120px;height:70px;border-radius:6px;overflow:hidden;background:#000;flex:0 0 auto}#results table tbody td.flight-path-cell .result-path-images{position:relative;width:100%;height:100%;border-radius:0;overflow:hidden;background:transparent;margin:0}#results table tbody td.flight-path-cell .result-path-images img{width:100%;height:100%;object-fit:cover;display:block;opacity:.95}.result-path-images .image-nav{position:absolute;top:50%;transform:translateY(-50%);background:rgba(0,0,0,.5);color:#fff;border:none;width:24px;height:24px;border-radius:12px;display:flex;align-items:center;justify-content:center;cursor:pointer}.result-path-images .image-nav.left{left:8px}.result-path-images .image-nav.right{right:8px}.result-path-images .image-nav:hover{background:rgba(0,0,0,.7)}.result-path-images .image-caption{position:absolute;left:0;bottom:0;width:100%;padding:4px 8px;background:linear-gradient(180deg,rgba(0,0,0,0),rgba(0,0,0,.55) 60%);color:#fff;font-size:.8em;font-weight:500}.flight-path-cities{display:flex;align-items:center;flex-wrap:wrap;gap:6px;line-height:1.4}.flight-path-city{font-weight:500;color:var(--text-color);max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.save-heart-btn{position:absolute;top:6px;left:8px;z-index:2;width:28px;height:28px;border-radius:50%;border:none;background:rgba(255,255,255,.9);color:#ff4d6d;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 1px 3px rgba(0,0,0,.2)}html.dark-mode .save-heart-btn{background:rgba(30,30,30,.9);color:#ff6b81}.save-heart-btn i{font-size:1.1em}.save-heart-btn.saved{color:#e03131}.save-heart-btn:hover{transform:translateY(-1px)}.save-heart-btn.saving{cursor:wait;opacity:.85}.save-heart-btn:disabled{opacity:.7;cursor:not-allowed}#results table tbody td.date-cell{white-space:nowrap;font-size:.85em}td[data-label="Total (€)"] .price-container{display:flex;flex-direction:column;align-items:center;justify-content:center;line-height:1.2}.price-container .price-main{font-weight:700;font-size:1.1em}.price-container .price-prefix{font-size:.8em;font-weight:400;color:var(--text-muted-color)}.price-container .price-local{font-size:.9em;color:var(--text-muted-color)}.price-container .alternatives-prompt{font-size:.8em;color:var(--link-color);text-decoration:none;font-weight:500;cursor:pointer;background:none;border:none;padding:2px 0}.price-container .alternatives-prompt:hover{color:var(--link-hover);text-decoration:underline}.save-star-icon{font-size:1.2em;color:#ffc107;cursor:pointer;transition:transform .2s ease,color .2s ease}.save-star-icon:hover{transform:scale(1.2)}.save-star-icon.fas{color:#ffc107}.save-star-icon.far{color:#adb5bd}.save-star-icon.far:hover{color:#ffc107}.flight-path-icon{margin:0 4px;color:var(--primary-color);font-size:.85em}.flight-details-row{background-color:var(--bg-color);box-shadow:var(--table-active-row-shadow);border-bottom-left-radius:6px;border-bottom-right-radius:6px;cursor:default}.flight-details-row td{padding:0;border:none}.integrated-details-content{padding:10px 15px 15px 40px;display:flex;flex-direction:column;gap:8px;position:relative}.integrated-details-content:before{content:"";position:absolute;left:20px;top:15px;bottom:15px;width:2px;background-color:var(--border-color);z-index:0}.results-card>.flight-details-row{background-color:var(--bg-color);border-top:1px solid var(--border-color);border-radius:0 0 8px 8px;padding:6px 8px 10px}.results-card>.flight-details-row .integrated-details-content{padding:10px 15px 15px 40px}.flight-segment,.stay-info{position:relative}.flight-segment:before,.stay-info:before{font-family:Font Awesome\ 6 Free;font-weight:900;position:absolute;left:-31px;top:12px;background-color:var(--card-bg);border:2px solid var(--primary-color);border-radius:50%;width:24px;height:24px;display:flex;align-items:center;justify-content:center;font-size:.8em;color:var(--primary-color);z-index:1}.flight-segment:before{content:"\f072"}.stay-info:before{content:"\f236"}.flight-segment{background-color:var(--button-secondary-bg);border-radius:4px;padding:6px 10px;border:1px solid var(--border-color);display:flex;justify-content:space-between;align-items:center;gap:8px}.segment-main{flex-grow:1}.segment-action{flex-shrink:0}.segment-airports{display:flex;justify-content:space-between;align-items:center;gap:10px}.airport{flex:1 1}.airport.from{text-align:left}.airport.to{text-align:right}.airport-code{display:block;font-size:.9em;font-weight:700}.airport-name{display:block;font-size:.75em;color:var(--text-muted-color);line-height:1.2}.airport-time{display:block;font-size:.8em;color:var(--text-color);font-weight:500}.segment-arrow{display:flex;flex-direction:column;align-items:center;text-align:center;color:var(--primary-color);margin:0 5px}.segment-arrow i{font-size:1.1em}.segment-duration{font-size:.75em;color:var(--text-muted-color);font-weight:500;white-space:nowrap}.segment-price{color:var(--success-color);font-weight:700;font-size:1.1em}.stay-info{display:flex;align-items:center;gap:10px;background-color:#e9f5ff;padding:6px 10px;border-radius:4px;border:1px solid #cce5ff;font-size:.85em}html.dark-mode .stay-info{background-color:#2c3e50;border-color:#34495e}.stay-details{flex-grow:1;line-height:1.2}.stay-location{display:block;font-weight:500;color:#333}html.dark-mode .stay-location{color:#ecf0f1}.stay-duration{display:inline-block;font-size:.9em;color:#555}html.dark-mode .stay-duration{color:#bdc3c7}.meetup-details.integrated-details-content{padding:15px;display:flex;flex-direction:column;gap:15px}.meetup-details.integrated-details-content:before{display:none}.person-itinerary{border:1px solid var(--border-color);border-radius:6px;padding:10px;background-color:var(--button-secondary-bg)}.person-itinerary h4{margin:0 0 10px;font-size:1em;font-weight:500;padding-bottom:8px;border-bottom:1px solid var(--border-color)}.person-itinerary .flight-segment{background-color:var(--card-bg);margin-bottom:8px}.person-itinerary .flight-segment:last-child{margin-bottom:0}.results-content-wrapper{display:flex;gap:20px;align-items:flex-start}.alternatives-panel{flex:0 0 320px;background-color:var(--card-bg);border-radius:8px;box-shadow:var(--card-shadow);max-height:80vh;display:flex;flex-direction:column;position:-webkit-sticky;position:sticky;top:20px}.alternatives-panel-header{padding:12px 15px;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;align-items:center;flex-shrink:0}.alternatives-panel-header h3{margin:0;font-size:1.1em;font-weight:500}.alternatives-panel-close{background:none;border:none;font-size:1.6em;line-height:1;cursor:pointer;color:var(--text-muted-color);padding:0 5px}.alternatives-panel-body{overflow-y:auto;padding:10px}.results-table-wrapper{flex-grow:1}.login-modal-container{max-width:420px;padding:0;position:relative;text-align:center}.login-modal-container .modal-close-btn{position:absolute;top:10px;right:10px;width:32px;height:32px;border-radius:50%;background-color:transparent;transition:background-color .2s ease;display:flex;align-items:center;justify-content:center;z-index:10}.login-modal-container .modal-close-btn:hover{background-color:var(--button-secondary-bg)}.login-modal-content{padding:48px 40px 32px;display:flex;flex-direction:column;align-items:center}.modal-logo{width:64px;height:64px;margin-bottom:24px}.login-modal-content h2{font-size:1.75em;font-weight:700;margin-bottom:8px;color:var(--text-color)}.modal-subheading{font-size:1em;color:var(--text-muted-color);margin-bottom:32px;max-width:300px;line-height:1.5}.login-options{width:100%;display:flex;flex-direction:column;gap:12px;margin-bottom:32px}.login-btn-social{display:flex;align-items:center;justify-content:center;position:relative;width:100%;padding:12px 20px;border:1px solid var(--border-color);border-radius:8px;background-color:var(--button-secondary-bg);color:var(--text-color);font-size:1em;font-weight:500;text-decoration:none;transition:background-color .2s ease,border-color .2s ease}.login-btn-social:hover{background-color:var(--button-secondary-hover-bg);border-color:var(--input-border)}.login-btn-social .login-icon{position:absolute;left:16px;top:50%;transform:translateY(-50%);width:20px;height:20px}.login-footer-note{font-size:.8em;color:var(--text-muted-color);line-height:1.6}.login-footer-note a{color:var(--text-muted-color);text-decoration:underline}.login-footer-note a:hover{color:var(--text-color)}.modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background-color:rgba(0,0,0,.6);z-index:1000;display:flex;justify-content:center;align-items:center;padding:20px}.modal-container{background-color:var(--card-bg);border-radius:8px;box-shadow:0 5px 15px rgba(0,0,0,.3);width:100%;max-width:600px;max-height:90vh;display:flex;flex-direction:column}.modal-header{padding:12px 15px;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;align-items:center}.modal-header h3{margin:0;font-size:1.2em;font-weight:500}.modal-close-btn{background:none;border:none;font-size:1.8em;line-height:1;cursor:pointer;color:var(--text-muted-color)}.modal-body{padding:15px;overflow-y:auto}.alternatives-table{width:100%;font-size:.9em;border-collapse:collapse}.alternatives-table thead{background-color:var(--button-secondary-bg)}.alternatives-table td,.alternatives-table th{padding:8px 6px;text-align:left;border-bottom:1px solid var(--border-color-light);vertical-align:middle}.alternatives-table th{font-weight:500;white-space:nowrap}.alternatives-table td:last-child{font-weight:700;text-align:right}.alternatives-table tbody tr{cursor:pointer;transition:background-color .2s ease}.alternatives-panel .alternatives-table tbody tr{display:table-row}.alternatives-table tbody tr:hover{background-color:var(--button-secondary-hover-bg)}.alternatives-table tbody tr.is-active-selection{background-color:var(--pill-include-bg);font-weight:500;cursor:default}.alternatives-table tbody tr.is-active-selection:hover{background-color:var(--pill-include-bg)}.alternatives-table tbody tr.is-active-selection .price-col:after{content:" (Selected)";font-weight:400;font-size:.9em;color:var(--pill-include-text)}.pagination-container{display:flex;justify-content:center;padding:20px 0;margin-top:10px}.pagination{display:flex;padding-left:0;list-style:none;border-radius:.25rem}.page-item{margin:0 2px}.page-item .page-link,.page-item span.page-link{position:relative;display:block;padding:.5rem .75rem;line-height:1.25;color:var(--primary-color);background-color:var(--card-bg);border:1px solid var(--border-color);text-decoration:none;transition:all .15s ease-in-out;cursor:pointer}.page-item:first-child .page-link,.page-item:first-child span.page-link{border-top-left-radius:.25rem;border-bottom-left-radius:.25rem}.page-item:last-child .page-link,.page-item:last-child span.page-link{border-top-right-radius:.25rem;border-bottom-right-radius:.25rem}.page-item .page-link:hover{z-index:2;color:var(--primary-hover);background-color:var(--button-secondary-hover-bg);border-color:var(--input-border)}.page-item.active .page-link,.page-item.active span.page-link{z-index:3;color:var(--text-inverted-color);background-color:var(--primary-color);border-color:var(--primary-color)}.page-item.disabled .page-link,.page-item.disabled span.page-link{color:var(--text-muted-color);pointer-events:none;cursor:auto;background-color:var(--card-bg);border-color:var(--border-color)}footer{background-color:var(--card-bg);padding:15px 0;text-align:center;margin-top:30px;border-top:1px solid var(--border-color)}footer p{color:var(--text-muted-color);font-size:.85em}footer p a{color:var(--link-color)}footer p a:hover{color:var(--link-hover)}html.dark-mode .select2-container--default .select2-selection--multiple{background-color:var(--input-bg);border:1px solid var(--input-border)}html.dark-mode .select2-container--default .select2-selection--multiple .select2-selection__choice{background-color:#5a5b5e;border:1px solid #777;color:var(--text-color)}html.dark-mode .select2-container--default .select2-selection--multiple .select2-selection__choice__remove{color:#ccc}html.dark-mode .select2-container--default .select2-selection--multiple .select2-selection__choice__remove:hover{color:#fff}html.dark-mode .select2-dropdown{background-color:var(--card-bg);border:1px solid var(--input-border)}html.dark-mode .select2-container--default .select2-results__option--highlighted.select2-results__option--selectable{background-color:var(--primary-color);color:var(--text-inverted-color)}html.dark-mode .select2-search--dropdown .select2-search__field{background-color:var(--button-secondary-hover-bg);border:1px solid var(--input-border);color:var(--text-color)}html.dark-mode .select2-container--default .select2-results__option{color:var(--text-color)}.time-filters-list{display:flex;flex-direction:column;gap:15px;margin-top:10px}.time-filter-instance{background-color:var(--button-secondary-bg);border:1px solid var(--border-color);border-radius:6px;padding:12px;display:flex;flex-direction:column;gap:10px}.time-filter-controls{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.time-filter-controls select{padding:6px 8px;font-size:.9em;border-radius:4px;border:1px solid var(--input-border);background-color:var(--input-bg);color:var(--text-color);flex-grow:1}.time-filter-controls .remove-time-filter-btn{margin-left:auto;background:none;border:none;color:var(--danger-color);cursor:pointer;font-size:1.2em;padding:5px;line-height:1}.time-filter-instance .range-slider-wrapper{margin-top:5px}.time-filter-instance .range-header{margin-bottom:12px}.time-filter-instance .range-header label{font-size:.9em;font-weight:500;color:var(--text-muted-color)}.time-filter-instance .range-inputs{font-family:monospace;font-size:1em;font-weight:500;color:var(--text-color)}.time-filter-instance .range-inputs span{color:var(--text-muted-color)}@media (min-width:769px){.main-container{flex-direction:row;gap:25px;align-items:stretch}.left-panel{align-self:stretch;width:35%;flex-shrink:0}.right-panel{width:65%;flex-grow:1}.main-container.search-active .left-panel{width:35%}.main-container.search-active .right-panel{width:65%}.main-container:not(.search-active) .left-panel{display:none}.main-container:not(.search-active) .right-panel{width:100%}.example-results-container{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}}@media (min-width:1024px) and (min-height:700px){.left-panel .sticky-wrapper{max-height:calc(100vh - 20px);display:flex;flex-direction:column}.left-panel .map-section{flex:0 0 auto}.left-panel .filters-section{flex:1 1 auto;min-height:0;overflow:auto;overscroll-behavior:contain}}@media (max-width:992px){.segment-airports{flex-direction:column;align-items:stretch;gap:5px}.airport.from,.airport.to{text-align:center}.segment-arrow i{transform:rotate(90deg)}.segment-arrow{margin:5px 0}.flight-segment{flex-direction:column;align-items:stretch}.segment-action{margin-top:8px;text-align:center}}@media (max-width:768px){.header-container{flex-wrap:wrap;row-gap:15px;justify-content:space-between}.header-left{display:contents}.header-nav{order:1;flex-basis:100%;display:flex;justify-content:center;gap:10px}.main-heading{font-size:2rem;padding-top:15px}.main-container{flex-direction:column}.left-panel,.right-panel{width:100%}.main-container.search-active .left-panel{position:static;width:100%;order:1}.main-container.search-active .left-panel .sticky-wrapper{position:static;top:auto;bottom:auto}.main-container.search-active .right-panel{width:100%;order:2}.map-section{height:280px;margin-top:0;transform:translateY(0);margin-bottom:15px}.results-section{max-width:100%}.results-navigation{margin-bottom:10px}.results-navigation .tab{padding:6px 10px;font-size:.9em}.pagination-container{padding:15px 5px}.page-item .page-link,.page-item span.page-link{padding:.4rem .6rem;font-size:.9em}.filter-header{flex-direction:column;align-items:flex-start;gap:8px}.filter-header h4{margin-bottom:5px;font-size:1em}.filter-header .btn-small{align-self:flex-start}.filter-header div{align-self:flex-end}.airport-filter-pill{font-size:.75em;padding:3px 8px;max-width:150px}.select2-container--default .select2-selection--multiple{height:auto;min-height:38px}.select2-container--default .select2-selection--multiple .select2-selection__rendered{display:flex;flex-wrap:wrap;padding:5px}.select2-container--default .select2-selection--multiple .select2-selection__choice{margin:2px 5px 2px 0}.select2-container--default .select2-selection--multiple .select2-search--inline{width:auto}.select2-container--default .select2-results__option{white-space:normal}#results table{border-spacing:0 5px}#results table thead{display:none}#results table tbody tr.result-summary-row{display:block;margin-bottom:0;border-radius:6px}#results table tbody tr.result-summary-row.active-row{border-radius:6px 6px 0 0}#results table tbody tr.result-summary-row td{display:block;text-align:right;position:relative;border:none;border-bottom:1px dotted var(--border-color);padding:8px 10px;border-radius:0!important;font-size:.9em}#results table tbody tr.result-summary-row td.star-cell{position:absolute;top:0;left:0;height:100%;width:40px;padding:0;display:flex;align-items:center;justify-content:center;border-bottom:none;background-color:var(--button-secondary-bg);border-right:1px dotted var(--border-color);border-radius:6px 0 0 6px!important}#results table tbody tr.result-summary-row.active-row td.star-cell{border-radius:6px 0 0 0!important}#results table tbody tr.result-summary-row td.star-cell:before{display:none}#results table tbody tr.result-summary-row td:not(.star-cell){padding-left:calc(40% + 40px)}#results table tbody tr.result-summary-row td:before{content:attr(data-label);position:absolute;left:48px;width:calc(40% - 16px);padding-right:5px;white-space:nowrap;text-align:left;font-weight:700;top:50%;transform:translateY(-50%);font-size:.9em}#results table tbody tr.result-summary-row td.flight-path-cell{text-align:left;padding-left:48px;font-weight:400;background-color:var(--button-secondary-bg);border-radius:0 6px 0 0!important;min-height:40px}#results table tbody tr.result-summary-row td.flight-path-cell:before{position:static;display:block;transform:none;width:auto;margin-bottom:3px;font-weight:700;padding-left:0}#results table tbody tr.result-summary-row td:last-child{border-bottom:none}.flight-details-row{display:block;border-radius:0 0 6px 6px;margin-bottom:10px;border-top:none}.flight-details-row td{display:block;width:100%}.integrated-details-content{padding:10px 10px 10px 30px}.integrated-details-content:before{left:15px}.flight-segment:before,.stay-info:before{left:-26px;width:20px;height:20px;font-size:.7em}.meetup-details.integrated-details-content,.results-content-wrapper{flex-direction:column}.alternatives-panel{width:100%;position:static;max-height:400px}.alternatives-panel .alternatives-table thead{display:none}.alternatives-panel .alternatives-table tr{display:block;margin-bottom:8px;border:1px solid var(--border-color);border-radius:4px;padding:5px;background-color:var(--button-secondary-bg)}.alternatives-panel .alternatives-table td{display:block;text-align:right!important;position:relative;padding-left:50%;border-bottom:1px dotted var(--border-color);white-space:normal;padding-top:6px;padding-bottom:6px}.alternatives-panel .alternatives-table tr td:last-child{border-bottom:none}.alternatives-panel .alternatives-table td:before{content:attr(data-label);position:absolute;left:8px;width:calc(50% - 16px);padding-right:5px;white-space:nowrap;text-align:left!important;font-weight:700;color:var(--text-color)}}.leaflet-control-attribution a[aria-label=Ukraine]{background-image:none!important;padding:0!important;width:0!important}html.dark-mode .rdrCalendarWrapper{background-color:var(--card-bg);color:var(--text-color)}.rdrMonthAndYearPickers{display:none!important}.date-range-picker-container{background:var(--card-bg);border:1px solid var(--border-color);border-radius:6px;padding:12px 12px 56px;box-shadow:var(--card-shadow)}.date-range-overlay{position:fixed;inset:0;background:rgba(0,0,0,.4);z-index:1000;touch-action:none}@media (min-width:641px){.date-range-picker-container .rdrMonthName{text-align:center;font-weight:600}.date-range-picker-container .rdrNextPrevButton{top:60px!important}.date-range-picker-container .rdrPprevButton{left:12px!important}.date-range-picker-container .rdrNextButton{right:12px!important}}.date-range-close-btn{position:absolute;top:-12px;right:-12px;width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:var(--card-bg);border:1px solid var(--border-color);color:var(--text-muted-color);border-radius:50%;cursor:pointer;font-size:18px;font-weight:600;line-height:1;box-shadow:var(--card-shadow);z-index:3}.date-range-close-btn:hover{background:var(--button-secondary-hover-bg);color:var(--text-color)}.rdrMonthAndYearPickers input,.rdrMonthAndYearPickers select{background-color:var(--input-bg);color:var(--text-color);border:1px solid var(--input-border);border-radius:6px;height:34px;padding:6px 10px}.rdrMonthAndYearPickers select{min-width:120px}.rdrMonthAndYearPickers input{width:84px;text-align:center}.rdrMonthAndYearPickers input:focus,.rdrMonthAndYearPickers select:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px rgba(107,115,255,.15)}html.dark-mode .rdrDateDisplay{background-color:var(--input-bg)}html.dark-mode .rdrDateDisplayItem{background-color:var(--bg-color);border-color:var(--border-color)}html.dark-mode .rdrDateDisplayItem input{color:var(--text-color)}html.dark-mode .rdrMonthAndYearPickers input,html.dark-mode .rdrMonthAndYearPickers select{background-color:var(--input-bg);color:var(--text-color);border-color:var(--border-color)}html.dark-mode .date-range-close-btn{background:var(--card-bg);border-color:var(--border-color);color:var(--text-muted-color)}html.dark-mode .date-range-close-btn:hover{background:var(--button-secondary-hover-bg);color:var(--text-color)}@media (max-width:640px){.date-range-picker-container{border-radius:12px;padding-bottom:12px;overflow-x:hidden}.date-range-scroll{max-height:70vh;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch}.rdrNextPrevButton{display:none!important}.date-range-close-btn{display:none}.date-range-actions{position:static;right:auto;bottom:auto;padding-top:8px;display:flex;justify-content:flex-end}.date-range-apply-btn{padding:10px 16px}.date-range-picker-container .rdrCalendarWrapper,.date-range-picker-container .rdrMonth,.date-range-picker-container .rdrMonths{width:100%!important;max-width:100%!important}}html.dark-mode .rdrMonthName{color:var(--text-color)}html.dark-mode .rdrWeekDays .rdrWeekDay{color:var(--text-muted-color)}html.dark-mode .rdrDay span{color:var(--text-color)}html.dark-mode .rdrDay:not(.rdrDayPassive) .rdrEndEdge~.rdrDayNumber span,html.dark-mode .rdrDay:not(.rdrDayPassive) .rdrInRange~.rdrDayNumber span,html.dark-mode .rdrDay:not(.rdrDayPassive) .rdrSelected~.rdrDayNumber span,html.dark-mode .rdrDay:not(.rdrDayPassive) .rdrStartEdge~.rdrDayNumber span{color:var(--text-inverted-color)}html.dark-mode .rdrDayPassive .rdrDayNumber span{color:var(--text-muted-color);opacity:.5}html.dark-mode .rdrDayDisabled{background-color:var(--card-bg);color:var(--text-muted-color)}html.dark-mode .rdrDayDisabled .rdrDayNumber span{color:#888}html.dark-mode .rdrDayToday .rdrDayNumber span:after{background:var(--primary-color)}html.dark-mode .rdrNextPrevButton{background:var(--button-secondary-bg);border-color:var(--border-color)}html.dark-mode .rdrNextPrevButton:hover{background:var(--button-secondary-hover-bg)}html.dark-mode .rdrPprevButton i{border-color:transparent var(--text-color) transparent transparent}html.dark-mode .rdrNextButton i{border-color:transparent transparent transparent var(--text-color)}html.dark-mode .rdrDefinedRangesWrapper{border-right-color:var(--border-color);background:var(--bg-color)}html.dark-mode .rdrStaticRange-selected .rdrStaticRangeLabel,html.dark-mode .rdrStaticRange:hover .rdrStaticRangeLabel{background:var(--button-secondary-hover-bg)}html.dark-mode .rdrStaticRangeLabel{color:var(--text-color)}.days-per-stop-slider .rc-slider-handle{width:22px;height:22px;margin-top:-9px;margin-left:-11px}.date-range-actions{position:absolute;right:12px;bottom:12px;display:flex;gap:8px}.date-range-apply-btn{background:var(--primary-color);color:var(--text-inverted-color);border:none;border-radius:20px;padding:8px 14px;font-weight:600;cursor:pointer;box-shadow:var(--card-shadow)}.date-range-apply-btn:hover{filter:brightness(.98)}.date-range-apply-btn:active{transform:translateY(1px)}.top-search .btn{height:44px;line-height:24px;border-radius:999px;white-space:nowrap;display:inline-flex;align-items:center;justify-content:center;gap:8px}.select-window-overlay{position:fixed;inset:0;background:rgba(0,0,0,.45);z-index:1500}.select-window-container{z-index:3000;background:var(--card-bg);border:1px solid var(--border-color);border-radius:12px;box-shadow:var(--card-shadow);padding:12px}.select-window-container.centered{position:fixed;left:50%;top:50%;transform:translate(-50%,-50%);width:min(840px,calc(100vw - 32px))}.select-window-container.anchored{position:absolute;transform:none}.select-window-header{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px;height:44px}.select-window-title{font-weight:700;color:var(--text-color)}.select-window-close{position:absolute;top:8px;right:8px;width:32px;height:32px;border-radius:50%;border:1px solid var(--border-color);background:var(--button-secondary-bg);color:var(--text-color);cursor:pointer;display:inline-flex;align-items:center;justify-content:center}.select-window-close:hover{background:var(--button-secondary-hover-bg)}.select-window-body{max-height:70vh;overflow:visible}.select-window-body .rs__menu{position:static!important;top:auto!important;left:auto!important;right:auto!important;bottom:auto!important;box-shadow:none;border:none;margin-top:8px;z-index:5}.select-window-body .rs__menu-list{max-height:60vh}.select-window-body .rs__menu{z-index:2}.select-window-container .rs__control{min-height:52px}@media (max-width:640px){.select-window-container{width:calc(100vw - 24px);border-radius:12px}.select-window-body{max-height:75vh}}.top-search-form.has-select-window{position:static;z-index:auto}.rs__dropdown-indicator svg{display:none!important}.rs__dropdown-indicator{cursor:pointer;padding:2px 6px;display:flex;align-items:center;justify-content:center}.inline-label-pill .rs__indicators{padding-right:2px}.inline-label-pill .rs__indicator-separator{margin:0 2px}.rs__dropdown-indicator i{color:var(--text-muted-color);font-size:12px;opacity:.85}