:root{--chat-accent: #1e6fd9;--chat-accent-dark: #1b63c0;--chat-width: 380px}.chat-tab{position:fixed;right:0;top:50%;transform:translateY(-50%);z-index:1000;display:flex;align-items:center;gap:9px;padding:13px 17px;border:none;border-radius:14px 0 0 14px;background:linear-gradient(135deg,var(--chat-accent),#2d83f0);color:#fff;font-size:14.5px;font-weight:700;letter-spacing:.01em;cursor:pointer;box-shadow:-5px 6px 22px #1e6fd96b;transition:box-shadow .18s ease,filter .18s ease,padding .12s ease;animation:chat-tab-pulse 3.2s ease-in-out infinite}.chat-tab:hover{filter:brightness(1.06);padding-right:21px;box-shadow:-7px 8px 30px #1e6fd98c}.chat-tab:focus-visible{outline:3px solid #fff;outline-offset:2px}.chat-tab-icon{font-size:17px;line-height:1}@keyframes chat-tab-pulse{0%,to{box-shadow:-5px 6px 22px #1e6fd96b}50%{box-shadow:-5px 6px 28px #1e6fd9a3}}.chat-backdrop{display:none}.chat-sidebar{position:fixed;top:0;right:0;bottom:0;z-index:1001;display:flex;flex-direction:column;width:var(--chat-width);max-width:100vw;background:#fff;border-left:1px solid #e2e8f2;box-shadow:-8px 0 30px #00000029;transform:translate(100%);transition:transform .22s ease;will-change:transform}.chat-sidebar[data-open=true]{transform:translate(0)}.chat-header{margin:0;display:flex;align-items:flex-start;justify-content:space-between;gap:8px;padding:16px 16px 14px;background:linear-gradient(135deg,var(--chat-accent),#2d83f0);color:#fff}.chat-header-text{display:flex;flex-direction:column;gap:3px}.chat-header-title{font-weight:700;font-size:16px}.chat-header-sub{font-size:12.5px;opacity:.9}.chat-close{flex-shrink:0;width:30px;height:30px;border:none;border-radius:8px;background:#ffffff2e;color:#fff;font-size:15px;line-height:1;cursor:pointer}.chat-close:hover{background:#ffffff4d}.chat-messages{flex:1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:10px;background:#f6f8fb;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}.chat-empty-lead{color:#5a6472;font-size:14px;line-height:1.5;margin:4px 0 14px}.chat-suggestions{display:flex;flex-direction:column;gap:8px}.chat-suggestion{text-align:left;padding:11px 13px;border:1px solid #d7deea;border-radius:12px;background:#fff;color:#1e3a5f;font-size:13.5px;cursor:pointer;transition:border-color .12s ease,background .12s ease}.chat-suggestion:hover{border-color:var(--chat-accent);background:#f0f6ff}.chat-bubble{max-width:88%;padding:10px 13px;border-radius:14px;font-size:14px;line-height:1.45;white-space:pre-wrap;word-break:break-word}.chat-bubble-user{align-self:flex-end;background:var(--chat-accent);color:#fff;border-bottom-right-radius:4px}.chat-bubble-assistant{align-self:flex-start;background:#fff;color:#1c2530;border:1px solid #e2e8f2;border-bottom-left-radius:4px}.chat-status{align-self:flex-start;display:flex;align-items:center;gap:8px;font-size:13px;color:#5a6472}.chat-status-spinner{width:14px;height:14px;border:2px solid #c7d2e4;border-top-color:var(--chat-accent);border-radius:50%;animation:chat-spin .7s linear infinite}@keyframes chat-spin{to{transform:rotate(360deg)}}.chat-error{align-self:stretch;padding:8px 10px;border-radius:8px;background:#fdecec;color:#b3261e;font-size:13px}.chat-input-row{display:flex;gap:8px;padding:12px;border-top:1px solid #e6ebf3;background:#fff;padding-bottom:max(12px,env(safe-area-inset-bottom))}.chat-input{flex:1;min-width:0;padding:11px 13px;border:1px solid #d7deea;border-radius:11px;font-size:16px;outline:none}.chat-input:focus{border-color:var(--chat-accent)}.chat-send{flex-shrink:0;padding:0 16px;border:none;border-radius:11px;background:var(--chat-accent);color:#fff;font-size:14px;font-weight:600;cursor:pointer}.chat-send:disabled{opacity:.5;cursor:not-allowed}@media(max-width:640px){:root{--chat-width: 100vw}.chat-backdrop{display:block;position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;background:#0f172a73;opacity:0;pointer-events:none;transition:opacity .22s ease}.chat-backdrop[data-open=true]{opacity:1;pointer-events:auto}.chat-tab{top:auto;bottom:calc(18px + env(safe-area-inset-bottom));right:16px;transform:none;border-radius:999px;padding:13px 19px;box-shadow:0 10px 26px #1e6fd980;animation:chat-tab-pulse-mobile 3.2s ease-in-out infinite}.chat-tab:hover{padding-right:19px;box-shadow:0 12px 30px #1e6fd99e}@keyframes chat-tab-pulse-mobile{0%,to{box-shadow:0 10px 26px #1e6fd980}50%{box-shadow:0 12px 32px #1e6fd9a8}}}@media(min-width:641px){body{padding-right:var(--chat-rail-width, 0px);transition:padding-right .22s ease}}html[data-chat-resizing=true] body,html[data-chat-resizing=true] .chat-sidebar{transition:none!important}.chat-resize-handle{position:absolute;left:0;top:0;bottom:0;width:8px;margin-left:-4px;cursor:ew-resize;z-index:2;touch-action:none}.chat-resize-handle:after{content:"";position:absolute;left:3px;top:0;bottom:0;width:2px;background:transparent;transition:background .12s ease}.chat-resize-handle:hover:after,.chat-sidebar[data-resizing=true] .chat-resize-handle:after{background:var(--chat-accent)}.chat-bubble .md>:first-child{margin-top:0}.chat-bubble .md>:last-child{margin-bottom:0}.chat-bubble .md p{margin:0 0 8px}.chat-bubble .md ul,.chat-bubble .md ol{margin:6px 0;padding-left:20px}.chat-bubble .md li{margin:3px 0}.chat-bubble .md strong{font-weight:700}.chat-bubble .md h3,.chat-bubble .md h4{margin:10px 0 4px;font-weight:700;line-height:1.3}.chat-bubble .md h3{font-size:1.05em}.chat-bubble .md h4{font-size:1em}.chat-bubble .md code{background:#eef2f7;padding:1px 5px;border-radius:5px;font-size:.9em}.chat-bubble .md a{color:var(--chat-accent);text-decoration:underline}.chat-bubble-assistant{white-space:normal}@media(max-width:640px){.chat-sidebar{width:100%!important;top:var(--chat-vv-top, 0px);bottom:auto;height:100vh;height:100dvh;height:var(--chat-vh, 100dvh);overscroll-behavior:contain}.chat-resize-handle{display:none}}@media(prefers-reduced-motion:reduce){.chat-sidebar,.chat-backdrop,body{transition:none}.chat-tab{animation:none}}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:#f5f5f5;color:#1a1a1a;line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.app{max-width:960px;margin:0 auto;padding:2rem 1rem}@media(min-width:701px)and (max-width:960px){.app{padding:1.5rem 1rem}.search-form{padding:1.25rem}.form-row{gap:.75rem}.time-chips,.day-chips{gap:.3rem}.trip-length-slider,.trip-length-scale{max-width:100%}}header{text-align:center;margin-bottom:2rem}header h1{font-size:2rem;font-weight:700;margin:0}.brand{display:inline-flex;flex-direction:column;align-items:center;line-height:1}.brand-mark{display:inline-flex;align-items:flex-start;font-weight:800;font-size:3rem;line-height:1;letter-spacing:-.04em;color:#1a73e8;padding-bottom:.45em}.brand-mark-pick{display:inline-block;margin-left:.02em;transform:translateY(.18em)}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}header p{color:#666;margin-top:.25rem}.header-toolbar{display:flex;justify-content:flex-end;align-items:center;gap:.85rem;margin-bottom:.4rem}.currency-picker{display:inline-flex;align-items:center;gap:.4rem}.currency-picker-label{font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:#6b7280}.currency-picker-select{-moz-appearance:none;appearance:none;-webkit-appearance:none;background:#fff url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'><path fill='%239ca3af' d='M0 0l5 6 5-6z'/></svg>") no-repeat right .6rem center;background-size:9px 6px;border:1px solid #e5e7eb;border-radius:999px;padding:.35rem 1.6rem .35rem .85rem;field-sizing:content;min-width:3.5rem;font-size:.85rem;font-weight:600;letter-spacing:.02em;color:#1a1a1a;cursor:pointer;box-shadow:0 1px 2px #0000000d;transition:border-color .15s,box-shadow .15s}.currency-picker-select:hover{border-color:#3b82f6}.currency-picker-select:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f626}.coverage-note{display:flex;flex-direction:column;gap:.4rem;background:#fff;border:1px solid #e5e7eb;color:#1a1a1a;border-radius:12px;padding:.75rem 1rem;margin-bottom:1.25rem;font-size:.88rem;line-height:1.35;box-shadow:0 1px 3px #0000000d}.coverage-row{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap}.freshness-note{display:flex;flex-direction:row;align-items:center;gap:.7rem;background:#eff6ff;border:1px solid #bfdbfe;color:#1e40af;border-radius:10px;padding:.7rem .9rem;margin-bottom:1rem;font-size:.85rem;line-height:1.4;text-align:left}.freshness-text{display:flex;flex-direction:column;gap:.3rem}.freshness-note p{margin:0}.freshness-verify{color:#1e3a8a;opacity:.8}.freshness-spinner{width:.85rem;height:.85rem;flex-shrink:0;border:2px solid #bfdbfe;border-top-color:#2563eb;border-radius:50%;animation:freshness-spin .8s linear infinite}.freshness-note--wide{background:#fffbeb;border-color:#fde68a;color:#92400e}.freshness-note--wide .freshness-verify{color:#78350f}.freshness-icon{display:flex;align-items:center;justify-content:center;width:1rem;height:1rem;flex-shrink:0;font-size:.95rem;color:#d97706}@keyframes freshness-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.freshness-spinner{animation:none}}.coverage-label{font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:#6b7280;min-width:9rem}.coverage-chips{display:flex;flex-wrap:wrap;gap:.4rem}.coverage-chip{display:inline-flex;align-items:center;gap:.4rem;background:#f3f4f6;border:1px solid #e5e7eb;border-radius:999px;padding:.25rem .65rem;font-size:.85rem;font-weight:500;color:#1a1a1a}.coverage-flag{font-size:.72rem;font-weight:600;line-height:1}svg.coverage-flag{height:14px;width:auto;border-radius:2px;vertical-align:middle}.coverage-airline-logo{width:18px;height:18px;border-radius:3px;object-fit:contain;background:#fff}.currency-chip{cursor:pointer;font-family:inherit;font-weight:600;letter-spacing:.02em;transition:all .15s}.currency-chip:hover{border-color:#3b82f6;color:#3b82f6}.currency-chip.active{background:#3b82f6;border-color:#3b82f6;color:#fff}.search-form{background:#fff;border-radius:12px;padding:1.5rem;box-shadow:0 1px 3px #0000001a;margin-bottom:2rem}.form-section{margin-bottom:1rem}.form-section:last-child{margin-bottom:0}.form-section-label{display:block;font-size:.8rem;font-weight:600;color:#888;text-transform:uppercase;letter-spacing:.04em;margin-bottom:.4rem}.form-connector{font-size:.9rem;color:#888;align-self:center;padding-top:.25rem}.form-row{display:flex;gap:1rem;margin-bottom:1rem;flex-wrap:wrap;align-items:flex-start}.form-row:last-child{margin-bottom:0}.form-row label{display:flex;flex-direction:column;font-size:.85rem;font-weight:500;color:#555;flex:1;min-width:100px}.form-row label.checkbox-label{flex-direction:row;min-width:auto}.form-row input{margin-top:.25rem;padding:.5rem .75rem;border:1px solid #ddd;border-radius:8px;font-size:1rem}.form-row input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f626}.airport-input-wrapper{position:relative;display:flex;flex-direction:column;font-size:.85rem;font-weight:500;color:#555;flex:1;min-width:100px}.airport-label{margin-bottom:.25rem}.airport-input-wrapper input{padding:.5rem .75rem;border:1px solid #ddd;border-radius:8px;font-size:1rem}.airport-input-wrapper input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f626}.airport-input-error input{border-color:#dc2626;background:#fef2f2}.airport-input-error input:focus{border-color:#dc2626;box-shadow:0 0 0 2px #dc26262e}.airport-input-error-msg{margin-top:.3rem;font-size:.78rem;font-weight:600;color:#b91c1c}.airport-input-cap-msg{margin-top:.3rem;font-size:.78rem;font-weight:500;color:#6b7280}.airport-dropdown{position:absolute;top:100%;left:0;right:0;background:#fff;border:1px solid #ddd;border-radius:8px;box-shadow:0 4px 12px #0000001f;margin:2px 0 0;padding:4px 0;z-index:100;max-height:360px;overflow-y:auto;overflow-x:hidden}.picker-list .country-group{padding-bottom:.25rem}.picker-list .country-group+.country-group{border-top:1px solid #f1f1f1;margin-top:.25rem;padding-top:.25rem}.picker-list .country-name{padding:.4rem .75rem .25rem;font-size:.72rem;text-transform:uppercase;letter-spacing:.05em;color:#6b7280;font-weight:600;display:flex;align-items:center;gap:.35rem}.picker-list .country-name-button{background:#f9fafb;border:none;width:100%;text-align:left;cursor:pointer;color:inherit;font:inherit;text-transform:uppercase;letter-spacing:.05em;font-weight:600;border-radius:4px;transition:background .12s,color .12s}.picker-list .country-name-button:hover,.picker-list .country-name-button:focus-visible{background:#dbeafe;color:#1e3a8a;outline:none}.picker-list .country-name-button:hover .country-all-tag,.picker-list .country-name-button:focus-visible .country-all-tag{color:#1d4ed8;opacity:1}.picker-list .country-name-text{flex:1}.picker-list .country-all-tag{font-size:.65rem;font-weight:500;letter-spacing:.04em;color:#6366f1;text-transform:none;opacity:.85}.picker-list .country-flag{font-size:.72rem;font-weight:600;line-height:1}.picker-list svg.country-flag{height:13px;width:auto;border-radius:2px;vertical-align:middle}.picker-list .city-list{list-style:none;margin:0;padding:0}.picker-list .city-section{padding:0;cursor:default}.picker-list .city-row{padding:.35rem .75rem;cursor:pointer;font-size:.92rem;color:#1a1a1a;display:flex;align-items:center;justify-content:space-between;gap:.5rem}.picker-list .city-row-text{flex:1;min-width:0;display:flex;flex-direction:column}.picker-list .city-row-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.picker-list .airport-name-text{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.picker-list .city-row:hover,.picker-list .city-section.highlighted>.city-row{background:#eff6ff}.picker-list .city-row strong{color:#1a1a1a}.picker-list .city-section.single .airport-subname{color:#6b7280;font-weight:400;font-size:.86rem}.picker-list .city-all-tag{flex:0 0 auto;font-size:.7rem;font-weight:600;letter-spacing:.02em;color:#2563eb;background:#eff6ff;border-radius:4px;padding:.1rem .4rem;text-transform:uppercase}.picker-list mark.picker-match{background:#fef3c7;color:inherit;padding:0 .1rem;border-radius:2px}.picker-list .airport-list{list-style:none;margin:0 0 .2rem 1.4rem;padding:.1rem 0 .1rem .75rem;border-left:2px solid #e5e7eb;font-size:.82rem;color:#444}.picker-list .airport-list li{padding:.25rem .5rem;cursor:pointer;display:flex;justify-content:space-between;align-items:center;border-radius:4px}.picker-list .airport-list li:before{content:"└";color:#cbd5e1;margin-right:.4rem;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.picker-list .airport-list li:not(:last-child):before{content:"├"}.picker-list .airport-list li:hover,.picker-list .airport-list li.highlighted{background:#eff6ff}.picker-list .airport-list .airport-name{flex:1}.picker-list .airport-list .iata,.picker-list .city-section.single .iata{display:inline-block;margin-left:.4rem;padding:.05rem .4rem;background:#eef2f7;border-radius:4px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.75rem;color:#1a1a1a;flex:0 0 auto}.picker-list .airport-meta,.airport-sheet .airport-meta{display:block;margin-top:.1rem;font-size:.76rem;font-weight:400;color:#6b7280;line-height:1.25}.picker-list .airport-meta .dot,.airport-sheet .airport-meta .dot{margin:0 .3rem;color:#cbd5e1}.picker-list .airport-distance,.airport-sheet .airport-distance{white-space:nowrap}.picker-list .city-row,.airport-sheet .city-row,.picker-list .airport-list li,.airport-sheet .airport-list li{align-items:flex-start}.picker-list .airport-list .airport-name,.airport-sheet .airport-list .airport-name{min-width:0}.airport-field-filled{display:flex;align-items:center;min-height:38px;padding:.3rem .4rem;border:1px solid #ddd;border-radius:8px;background:#fff;cursor:text}.airport-field-filled:focus-visible{outline:none;border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f626}.airport-input-error .airport-field-filled{border-color:#dc2626;background:#fef2f2}.airport-field-filled .airport-chip-solo{display:inline-flex;align-items:center;gap:.35rem;max-width:100%;background:#3b82f6;color:#fff;border:none;border-radius:6px;padding:.25rem .3rem .25rem .6rem;font-size:.9rem;font-weight:600}.airport-field-filled .airport-chip-solo .airport-chip-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.airport-field-filled .airport-chip-solo .airport-chip-x{display:inline-flex;align-items:center;justify-content:center;width:1.15rem;height:1.15rem;border-radius:999px;background:#ffffff40;font-size:.85rem;line-height:1;cursor:pointer;flex:0 0 auto}.airport-field-filled .airport-chip-solo .airport-chip-x:hover{background:#fff6}.airport-sheet{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;background:#fff;display:flex;flex-direction:column;padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom)}.airport-sheet-header{display:flex;align-items:center;gap:.5rem;padding:.6rem .75rem;border-bottom:1px solid #eee;flex:0 0 auto}.airport-sheet-input{flex:1;min-width:0;padding:.6rem .75rem;border:1px solid #ddd;border-radius:8px;font-size:1rem}.airport-sheet-input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f626}.airport-sheet-close{flex:0 0 auto;width:2.2rem;height:2.2rem;border:none;background:#f3f4f6;border-radius:999px;font-size:1.3rem;line-height:1;color:#374151;cursor:pointer}.airport-sheet-results{flex:1;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch}.airport-sheet-empty{padding:1.25rem .9rem;color:#9ca3af;font-size:.95rem;text-align:center}.airport-sheet .country-name,.airport-sheet .country-name-button{padding:.6rem .9rem .4rem;font-size:.78rem}.airport-sheet .city-row{padding:.7rem .9rem;font-size:1rem}.airport-sheet .airport-list{margin-left:.9rem;padding-left:.6rem;font-size:.92rem}.airport-sheet .airport-list li{padding:.55rem .4rem}.airport-sheet .airport-meta{font-size:.82rem}.checkbox-label{display:flex;align-items:center;gap:.4rem;font-size:.9rem;font-weight:500;color:#555;cursor:pointer;white-space:nowrap;height:38px;flex:0}.checkbox-label input[type=checkbox]{width:16px;height:16px;accent-color:#3b82f6;cursor:pointer}.expand-airports-toggle{height:auto;margin-top:.75rem}.return-same-city-toggle{height:auto;margin-bottom:.5rem}.time-filter-row{display:flex;align-items:center;gap:.75rem;margin-bottom:.5rem;flex-wrap:wrap}.time-filter-row:last-child{margin-bottom:0}.time-filter-label{font-size:.85rem;font-weight:500;color:#555;min-width:54px}.time-chips{display:flex;gap:.35rem;flex-wrap:wrap}.time-chip{padding:.3rem .7rem;border:1px solid #ddd;border-radius:16px;background:#fff;font-size:.8rem;font-weight:500;color:#555;cursor:pointer;white-space:nowrap;transition:all .15s}.time-chip:hover{border-color:#3b82f6;color:#3b82f6}.time-chip.active{background:#3b82f6;border-color:#3b82f6;color:#fff}.time-custom-range{display:flex;align-items:center;gap:.4rem}.time-custom-range input[type=time]{padding:.3rem .5rem;border:1px solid #ddd;border-radius:8px;font-size:.85rem}.time-custom-range input[type=time]:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f626}.day-chips{display:flex;gap:.35rem;flex-wrap:wrap}.form-hint{margin:.5rem 0 0;font-size:.75rem;color:#888;line-height:1.3}.form-error{margin:.5rem 0 0;font-size:.75rem;color:#d4351c;line-height:1.3}.day-chip{padding:.3rem .65rem;border:1px solid #ddd;border-radius:16px;background:#fff;font-size:.8rem;font-weight:500;color:#555;cursor:pointer;white-space:nowrap;transition:all .15s}.day-chip:hover{border-color:#3b82f6;color:#3b82f6}.day-chip.active{background:#3b82f6;border-color:#3b82f6;color:#fff}.day-chip.shortcut{border-style:dashed;margin-left:.25rem}.day-chip.shortcut.active{border-style:solid}.day-chip-sub{font-size:.72rem;color:#888;margin-left:.25rem;font-weight:400}.day-chip.active .day-chip-sub{color:#ffffffd9}.search-mode-row{display:flex;align-items:center;justify-content:space-between;gap:.6rem;margin-bottom:.4rem;flex-wrap:wrap}.search-mode-toggles{display:inline-flex;gap:.4rem}.search-mode-hint{font-size:.8rem;color:#6b7280;margin:0 0 .85rem;line-height:1.35}.flexible-toggle-icon{margin-right:.3rem}.airport-readonly-field{display:flex;align-items:center;min-height:2.35rem;padding:.3rem .7rem;background:#eff6ff;border:1px dashed #93c5fd;border-radius:8px;font-size:.9rem;font-weight:600;color:#1e3a8a}.flexible-toggle{font-family:inherit;font-size:.78rem;font-weight:600;letter-spacing:.02em;background:#fff;color:#1a1a1a;border:1px dashed #cbd5e1;border-radius:999px;padding:.3rem .85rem;cursor:pointer;transition:all .15s}.flexible-toggle:hover{border-color:#3b82f6;color:#3b82f6}.flexible-toggle.active{background:#3b82f6;border-color:#3b82f6;border-style:solid;color:#fff}.flexible-legs{display:flex;flex-direction:column;gap:.85rem}.flexible-leg{display:flex;flex-direction:column;gap:.4rem;padding:.65rem .75rem;background:#f9fafb;border:1px solid #e5e7eb;border-radius:10px}.flexible-leg-label{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:#6b7280}.airport-multi-field{display:flex;flex-wrap:wrap;align-items:center;gap:.3rem;padding:.3rem .4rem;border:1px solid #ddd;border-radius:8px;background:#fff}.airport-multi-field:focus-within{border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f626}.airport-input-error .airport-multi-field{border-color:#dc2626;background:#fef2f2}.airport-input-wrapper .airport-multi-field input.airport-multi-input{flex:1 1 6rem;min-width:6rem;border:none;padding:.2rem .35rem;background:transparent}.airport-input-wrapper .airport-multi-field input.airport-multi-input:focus{outline:none;border:none;box-shadow:none}.airport-chip{font-family:inherit;font-size:.78rem;font-weight:500;background:#eff6ff;color:#1d4ed8;border:1px solid #bfdbfe;border-radius:999px;padding:.2rem .6rem;cursor:pointer;transition:all .15s}.airport-chip:hover{background:#dbeafe;border-color:#93c5fd}.dr-calendar{position:relative;margin-top:.5rem}.dr-nav{display:flex;align-items:center;justify-content:center;gap:.4rem;margin-bottom:.4rem}.dr-jump{display:inline-flex;gap:.25rem}.dr-jump-select{-moz-appearance:none;appearance:none;-webkit-appearance:none;background:#fff url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='8' height='5' viewBox='0 0 10 6'><path fill='%239ca3af' d='M0 0l5 6 5-6z'/></svg>") no-repeat right .4rem center;background-size:7px 5px;border:1px solid #e5e7eb;border-radius:999px;padding:.2rem 1.3rem .2rem .6rem;font-family:inherit;font-size:.78rem;font-weight:600;color:#1a1a1a;cursor:pointer;height:28px}.dr-jump-select:hover{border-color:#3b82f6}.dr-jump-select:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f626}.dr-nav-btn{font-family:inherit;width:28px;height:28px;font-size:1.1rem;line-height:1;display:inline-flex;align-items:center;justify-content:center;background:#fff;color:#1a1a1a;border:1px solid #e5e7eb;border-radius:999px;cursor:pointer;transition:all .15s}.dr-nav-btn:hover:not(:disabled){border-color:#3b82f6;color:#3b82f6}.dr-nav-btn:disabled{opacity:.35;cursor:not-allowed}.dr-months{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem}@media(max-width:700px){.dr-months{grid-template-columns:1fr}}.dr-month{min-width:0}.dr-month-title{font-size:.85rem;font-weight:700;color:#1a1a1a;margin-bottom:.5rem;text-align:center}.dr-weekday-row,.dr-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}.dr-weekday{font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:#6b7280;text-align:center;padding:.3rem 0}.dr-cell{font-family:inherit;font-size:.85rem;font-weight:500;height:34px;display:inline-flex;align-items:center;justify-content:center;background:transparent;color:#1a1a1a;border:none;border-radius:8px;cursor:pointer;transition:background .1s,color .1s;padding:0}.dr-cell:hover:not(:disabled):not(.dr-from):not(.dr-to){background:#eff6ff;color:#1d4ed8}.dr-blank{cursor:default}.dr-disabled{color:#d1d5db;cursor:not-allowed}.dr-in-range{background:#dbeafe;color:#1d4ed8;border-radius:0}.dr-hover-edge{background:#bfdbfe;color:#1d4ed8}.dr-from,.dr-to{background:#3b82f6;color:#fff;font-weight:700}.dr-from{border-top-right-radius:0;border-bottom-right-radius:0}.dr-to{border-top-left-radius:0;border-bottom-left-radius:0}.dr-from.dr-to{border-radius:8px}.add-date-chip{display:inline-flex;align-items:center;gap:.35rem;border-style:dashed;border-color:#93c5fd;color:#2563eb;font-weight:600;cursor:pointer}.add-date-chip:hover{border-style:solid;border-color:#3b82f6;background:#eff6ff;color:#2563eb}.add-date-chip.active{background:#3b82f6;border-style:solid;border-color:#3b82f6;color:#fff}.add-date-icon{font-size:1rem;line-height:1;font-weight:700}.required-date-chip{cursor:pointer}.required-dates-popover-anchor{position:relative;height:0}.required-dates-calendar{position:absolute;top:.45rem;left:0;right:0;z-index:50;margin-top:0;background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:.65rem .75rem .75rem;box-shadow:0 8px 24px #0000001a}.required-dates-calendar .dr-nav-btn{width:22px;height:22px;font-size:.95rem}.required-dates-calendar .dr-months{gap:.75rem}.required-dates-calendar .dr-month-title{font-size:.78rem;margin-bottom:.3rem}.required-dates-calendar .dr-weekday{font-size:.62rem;padding:.2rem 0}.required-dates-calendar .dr-cell{height:26px;font-size:.78rem;border-radius:6px}.dr-required{background:#3b82f6;color:#fff;font-weight:700}.form-submit-row{display:flex;flex-direction:column;align-items:stretch;gap:.5rem;margin-top:.5rem}.submit-recap{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem;font-size:.85rem;color:#4b5563}.submit-recap-route{font-weight:600;color:#111827}.submit-recap-dot{color:#9ca3af}.submit-btn-wide{width:100%;height:48px;font-size:1.02rem;font-weight:600;border-radius:10px}.share-link-row{display:flex;justify-content:flex-end;margin-bottom:.6rem}.share-link-btn{display:inline-flex;align-items:center;gap:.4rem;padding:.4rem .7rem;font-size:.85rem;font-weight:600;color:#2563eb;background:#eff6ff;border:1px solid #bfdbfe;border-radius:8px;cursor:pointer;transition:background .15s ease}.share-link-btn:hover{background:#dbeafe}.search-skeleton{margin-top:1.25rem;padding:1.1rem 1rem;background:#fff;border-radius:12px;box-shadow:0 1px 2px #0000000a}.search-skeleton-header{display:flex;align-items:center;gap:.6rem;font-size:.92rem;color:#4b5563;margin-bottom:.9rem}.search-skeleton-spinner{width:14px;height:14px;border-radius:50%;border:2px solid #cbd5e1;border-top-color:#3b82f6;animation:search-skel-spin .8s linear infinite;flex-shrink:0}@keyframes search-skel-spin{to{transform:rotate(360deg)}}.search-skeleton-rows{display:flex;flex-direction:column;gap:.65rem}.search-skeleton-row{display:flex;gap:.6rem;padding:.7rem .8rem;border:1px solid #f3f4f6;border-radius:8px}.search-skeleton-bar{height:12px;border-radius:4px;background:linear-gradient(90deg,#f1f5f9,#e2e8f0,#f1f5f9);background-size:200% 100%;animation:search-skel-shimmer 1.4s ease-in-out infinite}.search-skeleton-bar.w30{width:30%}.search-skeleton-bar.w50{width:50%}.search-skeleton-bar.w60{width:60%}@keyframes search-skel-shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}.trip-length-heading{display:flex;align-items:baseline;gap:.75rem;margin-bottom:.4rem}.trip-length-heading .form-section-label{margin-bottom:0}.trip-length-summary{font-size:.95rem;font-weight:700;color:#1a1a1a}.trip-length-presets{margin-bottom:.25rem}.trip-length-manual-toggle{background:transparent;border:none;padding:.2rem 0;margin-top:.4rem;font-size:.8rem;color:#3b82f6;cursor:pointer;text-align:left}.trip-length-manual-toggle:hover{text-decoration:underline}.trip-length-manual{display:flex;align-items:flex-end;gap:.5rem;margin-top:.5rem;flex-wrap:wrap}.trip-length-manual-field{display:flex;flex-direction:column;gap:.25rem;font-size:.85rem;font-weight:500;color:#555}.trip-length-manual-label{font-size:.72rem;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.04em}.trip-length-manual-sep{font-size:1.05rem;color:#9ca3af;align-self:center;padding-bottom:.4rem}.trip-length-manual-unit{font-size:.8rem;color:#6b7280;align-self:center;padding-bottom:.5rem}.trip-length-manual-field input[type=number]{width:72px;padding:.5rem .75rem;border:1px solid #ddd;border-radius:8px;font-size:1rem;text-align:center;font-variant-numeric:tabular-nums}.trip-length-manual-field input[type=number]:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f626}.trip-length-slider{position:relative;height:36px;margin:.75rem 0 .25rem}.trip-length-scale{display:flex;justify-content:space-between;margin-top:.35rem;font-size:.72rem;color:#6b7280;letter-spacing:.02em}.trip-length-slider:before{content:"";position:absolute;left:11px;right:11px;top:50%;transform:translateY(-50%);height:5px;background:#e5e7eb;border-radius:999px;z-index:0}.trip-length-slider:after{content:"";position:absolute;left:calc(11px + (100% - 22px) * var(--min-frac, 0));width:calc((100% - 22px) * (var(--max-frac, 1) - var(--min-frac, 0)));top:50%;transform:translateY(-50%);height:5px;background:#3b82f6;border-radius:999px;z-index:1;pointer-events:none}.trip-length-slider .trip-range{position:absolute;left:0;right:0;width:100%;top:50%;transform:translateY(-50%);margin:0;padding:0;border:0;background:transparent;pointer-events:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;height:22px;z-index:2}.trip-length-slider .trip-range::-webkit-slider-runnable-track{background:transparent;height:22px}.trip-length-slider .trip-range::-moz-range-track{background:transparent;height:22px}.trip-length-slider .trip-range::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;pointer-events:auto;width:22px;height:22px;background:#fff;border:2px solid #3b82f6;box-shadow:0 1px 3px #0000002e;border-radius:50%;cursor:grab;position:relative;z-index:3;transition:transform .1s,box-shadow .1s}.trip-length-slider .trip-range::-webkit-slider-thumb:active{cursor:grabbing;transform:scale(1.1);box-shadow:0 2px 6px #3b82f666}.trip-length-slider .trip-range::-moz-range-thumb{pointer-events:auto;width:22px;height:22px;background:#fff;border:2px solid #3b82f6;box-shadow:0 1px 3px #0000002e;border-radius:50%;cursor:grab;transition:transform .1s,box-shadow .1s}.trip-length-slider .trip-range::-moz-range-thumb:active{cursor:grabbing;transform:scale(1.1);box-shadow:0 2px 6px #3b82f666}button[type=submit]{padding:.5rem 1.5rem;background:#3b82f6;color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:500;cursor:pointer;white-space:nowrap;height:38px}button[type=submit]:hover{background:#2563eb}button[type=submit]:disabled{opacity:.6;cursor:not-allowed}.error{background:#fef2f2;color:#dc2626;padding:.75rem 1rem;border-radius:8px;margin-bottom:1rem}.no-results{text-align:center;color:#666;padding:2rem 1rem}.no-results p{font-size:1.1rem;margin-bottom:.75rem}.hints{list-style:none;padding:0}.hints li{background:#fffbeb;color:#92400e;border:1px solid #fde68a;border-radius:8px;padding:.6rem 1rem;margin-bottom:.5rem;font-size:.9rem;text-align:left;max-width:600px;margin-left:auto;margin-right:auto}.price-overview{background:#fff;border:1px solid #dbe3ee;border-left:3px solid #3b82f6;border-radius:10px;padding:.85rem 1.25rem;margin-bottom:1.5rem;box-shadow:0 1px 2px #0f172a0a}.price-overview-title{font-size:.75rem;font-weight:700;color:#475569;text-transform:uppercase;letter-spacing:.05em;margin-bottom:.5rem}.price-overview-items{display:flex;gap:1.5rem;margin-bottom:.6rem}.price-overview-item{display:flex;flex-direction:column}.price-overview-label{font-size:.75rem;color:#888}.price-overview-value{font-size:1rem;font-weight:600;color:#555}.price-overview-total .price-overview-value{color:#1a1a1a}.price-overview-cta{font-size:.85rem;color:#555;font-style:italic}.duration-group{margin-bottom:2rem}.duration-group.collapsed{margin-bottom:.5rem}.duration-group-header{display:flex;align-items:baseline;justify-content:space-between;gap:.75rem;width:100%;background:transparent;border:none;border-bottom:1px solid #e5e7eb;padding:0 0 .4rem;margin-bottom:.75rem;cursor:pointer;text-align:left;font:inherit;color:inherit;transition:border-color .15s}.duration-group.collapsed .duration-group-header{margin-bottom:0}.duration-group-header:hover,.duration-group-header:focus-visible{border-bottom-color:#3b82f6;outline:none}.duration-group-header h2{font-size:1.15rem;font-weight:600;color:#333;margin:0;border:none;padding:0;display:inline-flex;align-items:baseline;gap:.5rem}.duration-group-count{font-size:.78rem;font-weight:500;color:#9ca3af;letter-spacing:.02em}.duration-group-meta{display:inline-flex;align-items:baseline;gap:.5rem;flex-shrink:0}.duration-group-price{display:inline-flex;align-items:center;gap:.25rem}.duration-group-price-prefix{font-size:.72rem;font-weight:700;color:#15803d;text-transform:lowercase}.duration-group-price-amount{font-size:1.05rem;font-weight:700;color:#16a34a;font-variant-numeric:tabular-nums}.duration-group-chevron{font-size:.72rem;color:#3b82f6}.country-group{margin-bottom:2.25rem}.country-group-header{display:flex;align-items:baseline;justify-content:space-between;gap:.75rem;padding:0 0 .35rem;margin-bottom:1rem;border-bottom:2px solid #d1d5db}.country-group-title{font-size:1.35rem;font-weight:700;color:#1f2937;margin:0;padding:0;border:none;display:inline-flex;align-items:baseline;gap:.6rem}.country-group-count{font-size:.78rem;font-weight:500;color:#9ca3af;letter-spacing:.02em}.country-group-meta{display:inline-flex;align-items:center;gap:.35rem;flex-shrink:0;color:#16a34a}.country-group-price-prefix{font-size:.72rem;font-weight:700;color:#15803d;text-transform:lowercase}.country-group-price-amount{font-size:1.05rem;font-weight:700;color:#16a34a;font-variant-numeric:tabular-nums}.country-group-cities{display:flex;flex-direction:column;gap:1.1rem;padding-left:.6rem;border-left:2px solid #e5e7eb}.city-group.nested{margin-bottom:0}.city-group.nested .city-group-header h2{font-size:1rem;font-weight:600;color:#374151}.city-group{margin-bottom:2rem}.city-group.collapsed{margin-bottom:.5rem}.city-group-header{display:flex;align-items:baseline;justify-content:space-between;gap:.75rem;width:100%;background:transparent;border:none;border-bottom:1px solid #e5e7eb;padding:0 0 .4rem;margin-bottom:.75rem;cursor:pointer;text-align:left;font:inherit;color:inherit;transition:border-color .15s}.city-group.collapsed .city-group-header{margin-bottom:0}.city-group-header:hover,.city-group-header:focus-visible{border-bottom-color:#3b82f6;outline:none}.city-group-header h2{font-size:1.15rem;font-weight:600;color:#333;margin:0;border:none;padding:0;display:inline-flex;align-items:baseline;gap:.5rem}.city-group-count{font-size:.78rem;font-weight:500;color:#9ca3af;letter-spacing:.02em}.city-group-airports{font-size:.72rem;font-weight:500;color:#9ca3af;letter-spacing:.02em}.city-group-meta{display:inline-flex;align-items:baseline;gap:.5rem;flex-shrink:0}.city-group-price{display:inline-flex;align-items:center;gap:.25rem}.city-group-price-prefix{font-size:.72rem;font-weight:700;color:#15803d;text-transform:lowercase}.city-group-price-amount{font-size:1.05rem;font-weight:700;color:#16a34a;font-variant-numeric:tabular-nums}.city-group-chevron{font-size:.72rem;color:#3b82f6}.trips-list{display:flex;flex-direction:column;gap:.75rem}.trip-card{background:#fff;border-radius:14px;padding:1.1rem 1.25rem;box-shadow:0 1px 3px #00000014;animation:trip-card-enter .28s ease-out;will-change:transform}@keyframes trip-card-enter{0%{opacity:0}to{opacity:1}}.trip-header{display:flex;justify-content:space-between;align-items:center;gap:.75rem;width:100%;margin-bottom:.75rem}.trip-header-left{display:flex;flex-direction:column;gap:.1rem;min-width:0}.trip-header-right{display:flex;flex-direction:column;align-items:flex-end;gap:.1rem;flex-shrink:0}.trip-dates{font-size:.98rem;font-weight:700;color:#1a1a1a;line-height:1.25}.trip-destination{margin-left:.5rem;font-size:.85rem;font-weight:500;color:#2563eb}.trip-from{font-size:.72rem;color:#9ca3af;font-weight:500}.trip-total{display:inline-flex;align-items:center;gap:.25rem;color:#16a34a}.trip-total-prefix{font-size:.72rem;font-weight:700;color:#15803d;text-transform:lowercase;letter-spacing:0}.trip-total-suffix{font-size:.7rem;font-weight:500;color:#6b7280;text-transform:lowercase;letter-spacing:0}.trip-total-amount{font-size:1.25rem;font-weight:800;color:#16a34a;line-height:1.1;font-variant-numeric:tabular-nums}.trip-total--flash .trip-total-amount,.duration-group-price--flash .duration-group-price-amount,.city-group-price--flash .city-group-price-amount,.flight-price--flash .flight-price-amount{animation:price-flash .9s ease-out}@keyframes price-flash{0%{color:#f59e0b}60%{color:#f59e0b}to{color:inherit}}.trip-flights{display:flex;flex-direction:column;gap:.6rem}.flight-row{display:grid;grid-template-columns:30px 1fr auto auto;grid-template-areas:"label body price book";align-items:center;column-gap:.85rem;padding:.85rem 1rem;background:#f9fafb;border-radius:10px}.flight-label{grid-area:label;font-weight:700;font-size:.68rem;text-transform:uppercase;color:#9ca3af;letter-spacing:.04em}.flight-ep-date{font-size:.7rem;color:#9ca3af;margin-top:1px}.flight-body{grid-area:body;display:flex;align-items:center;gap:.85rem}.flight-endpoint{display:flex;flex-direction:column;align-items:center;min-width:48px}.flight-time{font-size:1.1rem;font-weight:700;color:#1a1a1a;line-height:1.2}.flight-code{font-size:.75rem;color:#888;font-weight:500}.flight-city{font-size:.7rem;color:#6b7280;font-weight:500;text-align:center;line-height:1.2;max-width:90px}.flight-center{display:flex;flex-direction:column;align-items:center;flex:1 1 auto;min-width:0}.flight-duration{font-size:.75rem;color:#555;font-weight:500;margin-bottom:2px}.flight-line{display:flex;align-items:center;width:100%;gap:4px}.flight-line .line{flex:1;height:1px;background:#ccc}.flight-airline-badge{display:flex;align-items:center;gap:4px;flex-shrink:0}.airline-logo{width:24px;height:24px;border-radius:3px;object-fit:contain;flex-shrink:0;background:#fff}.flight-airline-name{font-size:.7rem;color:#555;font-weight:500;white-space:nowrap}.flight-stops{font-size:.72rem;color:#777;margin-top:1px}.flight-right{grid-area:price;display:flex;flex-direction:column;align-items:flex-end;justify-content:center;min-width:60px}.flight-price{display:inline-flex;flex-direction:column;align-items:flex-end;gap:.05rem;white-space:nowrap}.flight-price-line{display:inline-flex;align-items:center;gap:.25rem}.flight-price-prefix{font-size:.72rem;font-weight:700;color:#15803d;text-transform:lowercase}.flight-price-amount{font-size:1rem;font-weight:700;color:#1a1a1a;font-variant-numeric:tabular-nums}.flight-book{grid-area:book;font-size:.8rem;color:#fff;background:#16a34a;text-decoration:none;padding:.4rem .8rem;border-radius:6px;font-weight:600;white-space:nowrap}.flight-book:hover{background:#15803d}.trip-book-row{display:flex;justify-content:flex-end;margin-top:.6rem}.trip-book{font-size:.9rem;font-weight:600;color:#fff;background:#16a34a;text-decoration:none;padding:.55rem 1.1rem;border-radius:8px;white-space:nowrap;transition:background .15s}.trip-book:hover{background:#15803d}.app-footer{margin-top:2rem;padding-top:1rem;text-align:center;font-size:.75rem;color:#999;border-top:1px solid #eee}.footer-disclaimer{max-width:46rem;margin:0 auto .75rem;line-height:1.5;color:#888}.footer-contact{margin:0 0 .5rem;color:#888}.footer-contact a{color:#6366f1;text-decoration:none}.footer-contact a:hover{text-decoration:underline}.footer-version{margin:0}.home-intro{max-width:46rem;margin:2.5rem auto 0;text-align:left;color:#374151;line-height:1.6}.home-intro h2{font-size:1.15rem;color:#1a1a1a;margin:1.75rem 0 .5rem}.home-intro h2:first-child{margin-top:0}.home-intro p{margin:0 0 .5rem}.home-steps{margin:.5rem 0;padding-left:1.25rem}.home-steps li{margin:.35rem 0}.home-faq{margin:.5rem 0 0}.home-faq dt{font-weight:600;color:#1a1a1a;margin-top:.9rem}.home-faq dd{margin:.2rem 0 0}.footer-routes{margin:0 auto 1.25rem;max-width:46rem}.footer-routes-title{font-size:.9rem;font-weight:600;color:#6b7280;margin:0 0 .6rem}.footer-routes-links{list-style:none;padding:0;margin:0 0 .5rem;display:flex;flex-wrap:wrap;gap:.4rem .9rem;justify-content:center}.footer-routes-links a,.footer-routes-all a{color:#6366f1;text-decoration:none}.footer-routes-links a:hover,.footer-routes-all a:hover{text-decoration:underline}.footer-routes-all{margin:0}@media(max-width:700px){.app{padding:1rem .75rem}header{margin-bottom:1rem}header h1{font-size:1.6rem}.currency-picker{top:.6rem;right:.6rem}.currency-picker-label{display:none}.search-form{padding:1rem;border-radius:10px}.form-section{margin-bottom:.75rem}.search-mode-row{flex-direction:column;align-items:stretch;gap:.5rem}.search-mode-toggles{display:flex;width:100%}.search-mode-toggles .flexible-toggle{flex:1 1 0;text-align:center}.form-row{gap:.5rem;margin-bottom:.5rem}.form-row label{min-width:0;flex-basis:calc(50% - .25rem)}.airport-input-wrapper{flex-basis:100%}.form-row input[type=date]{font-size:.95rem;padding:.45rem .5rem;min-width:0;width:100%}.form-connector{display:none}.coverage-note{padding:.6rem .75rem}.coverage-row{gap:.4rem}.coverage-label{min-width:0;flex-basis:100%;margin-bottom:.1rem}.time-filter-row{flex-direction:column;align-items:stretch;gap:.35rem;margin-bottom:.4rem}.time-filter-label{min-width:0}.time-chip,.day-chip{padding:.4rem .7rem;font-size:.82rem}.trip-length-slider{height:44px;margin-top:.5rem}.trip-length-slider:after,.trip-length-slider:before{left:14px;right:14px}.trip-length-slider:after{left:calc(14px + (100% - 28px) * var(--min-frac, 0));width:calc((100% - 28px) * (var(--max-frac, 1) - var(--min-frac, 0)));right:auto}.trip-length-slider .trip-range::-webkit-slider-thumb{width:28px;height:28px}.trip-length-slider .trip-range::-moz-range-thumb{width:28px;height:28px}.form-submit-row{justify-content:stretch}.form-submit-row button[type=submit]{width:100%;height:44px;font-size:1.05rem}.flight-row{grid-template-columns:28px 1fr auto;grid-template-areas:"label body price" "book  book  book";column-gap:.5rem;row-gap:.4rem;padding:.8rem .85rem}.flight-center{flex:1}.flight-right{padding-left:.5rem}.flight-price-amount{font-size:.95rem}.flight-book{justify-self:stretch;text-align:center;margin-top:.5rem;padding:.6rem .75rem;font-size:.9rem}.flight-ep-date{display:none}.trip-card{padding:.85rem .9rem}.trip-header-right{flex-direction:column;align-items:flex-end;gap:.25rem}.trip-total{font-size:1.05rem}.trip-dates{font-size:.9rem}.duration-group-header h2,.duration-group-price-amount{font-size:1rem}.price-overview{padding:.7rem .9rem}.price-overview-items{gap:1rem;flex-wrap:wrap}}.passengers-row{display:flex;align-items:center;gap:.6rem;margin-top:.85rem;flex-wrap:wrap}.passengers-row .form-section-label{margin-bottom:0}.pax-selector{position:relative}.pax-trigger{font-family:inherit;font-size:.85rem;font-weight:600;display:inline-flex;align-items:center;gap:.4rem;background:#fff;color:#1a1a1a;border:1px solid #cbd5e1;border-radius:999px;padding:.4rem .85rem;cursor:pointer;transition:all .15s}.pax-trigger:hover{border-color:#3b82f6;color:#3b82f6}.pax-trigger.active{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f626}.pax-trigger-icon{font-size:.9rem}.pax-trigger-chevron{font-size:.65rem;color:#6b7280}.pax-popover{position:absolute;z-index:30;top:calc(100% + .5rem);left:0;width:min(20rem,86vw);background:#fff;border:1px solid #e5e7eb;border-radius:14px;box-shadow:0 12px 32px #0f172a2e;padding:.85rem;display:flex;flex-direction:column;gap:.4rem}.pax-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.35rem .1rem}.pax-row-text{display:flex;flex-direction:column}.pax-row-label{font-size:.9rem;font-weight:600;color:#1a1a1a}.pax-row-hint{font-size:.72rem;color:#9ca3af}.pax-stepper{display:inline-flex;align-items:center;gap:.65rem}.pax-step-btn{width:2rem;height:2rem;border-radius:999px;border:1px solid #cbd5e1;background:#fff;color:#3b82f6;font-size:1.25rem;line-height:1;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:all .12s}.pax-step-btn:hover:not(:disabled){border-color:#3b82f6;background:#eff6ff}.pax-step-btn:disabled{opacity:.4;cursor:not-allowed}.pax-step-value{min-width:1.25rem;text-align:center;font-size:.95rem;font-weight:700;color:#1a1a1a}.pax-note{font-size:.72rem;color:#6b7280;line-height:1.35;margin:.35rem 0 .1rem}.pax-done{align-self:stretch;font-family:inherit;font-size:.85rem;font-weight:600;background:#3b82f6;color:#fff;border:none;border-radius:10px;padding:.5rem;cursor:pointer;transition:background .12s}.pax-done:hover{background:#2563eb}.flight-price-per{display:block;font-size:.7rem;font-weight:500;color:#9ca3af;line-height:1.1}.trip-total-per{font-size:.72rem;font-weight:600;color:#6b7280}.price-overview-party{font-size:.78rem;font-weight:600;color:#6b7280}.group-toggle{display:inline-flex;gap:4px;padding:4px;margin:0 0 14px;background:#f1f3f5;border-radius:10px}.group-toggle-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;background:none;padding:6px 14px;font-size:.85rem;font-weight:600;color:#4b5563;border-radius:7px;cursor:pointer}.group-toggle-btn.active{background:#fff;color:#111827;box-shadow:0 1px 2px #00000014}.group-toggle-btn:focus-visible{outline:2px solid #3b82f6;outline-offset:1px}
