@charset "UTF-8";:root{--cf-color-body-bg: #0c1524;--cf-color-body-text: #e2e8f0;--cf-color-surface: rgba(17, 25, 40, .92);--cf-color-surface-raised: rgba(20, 30, 48, .95);--cf-color-surface-overlay: rgba(17, 25, 40, .97);--cf-color-surface-solid: rgba(30, 41, 59, .8);--cf-color-surface-solid-dim: rgba(30, 41, 59, .55);--cf-color-surface-input: rgba(30, 41, 59, .6);--cf-color-search-pill-bg: rgba(15, 23, 42, .35);--cf-color-search-input-bg: rgba(255, 255, 255, .05);--cf-color-search-input-focus: rgba(255, 255, 255, .1);--cf-color-dropdown-bg: #111928;--cf-color-dropdown-card: rgba(255, 255, 255, .06);--cf-color-dropdown-card-hover: rgba(255, 255, 255, .12);--cf-color-hover: rgba(30, 41, 59, .5);--cf-color-hover-subtle: rgba(30, 41, 59, .35);--cf-color-active-highlight: rgba(14, 165, 233, .1);--cf-color-border: rgba(51, 65, 85, .45);--cf-color-border-subtle: rgba(51, 65, 85, .25);--cf-color-text-heading: #ffffff;--cf-color-text-primary: #e2e8f0;--cf-color-text-secondary: #cbd5e1;--cf-color-text-muted: #94a3b8;--cf-color-text-dimmed: #64748b;--cf-color-text-ghost: #334155;--cf-color-text-placeholder: #64748b;--cf-color-accent: #0ea5e9;--cf-color-accent-text: #38bdf8;--cf-color-accent-muted: rgba(14, 165, 233, .5);--cf-color-accent-subtle: rgba(14, 165, 233, .3);--cf-color-accent-ghost: rgba(14, 165, 233, .2);--cf-color-origin-bg: rgba(14, 165, 233, .2);--cf-color-origin-text: #38bdf8;--cf-color-dest-bg: rgba(244, 63, 94, .2);--cf-color-dest-text: #fb7185;--cf-color-header-bg: #0F1B2D;--cf-color-header-border: rgba(255, 255, 255, .04);--cf-color-loading-bg: #020617;--cf-color-handle: #475569;--cf-shadow-sm: 0 1px 3px rgba(0, 0, 0, .3);--cf-shadow-md: 0 4px 16px rgba(0, 0, 0, .35);--cf-shadow-lg: 0 8px 32px rgba(0, 0, 0, .4);--cf-shadow-control: 0 6px 18px rgba(0, 0, 0, .25), 0 2px 6px rgba(0, 0, 0, .15);--cf-shadow-control-hover: 0 8px 24px rgba(0, 0, 0, .35), 0 2px 8px rgba(0, 0, 0, .2);--cf-color-scrollbar: rgba(148, 163, 184, .2);--cf-color-scrollbar-hover: rgba(148, 163, 184, .4);--cf-color-popup-bg: rgba(17, 25, 40, .97);--cf-color-popup-text: #e2e8f0;--cf-color-popup-border: rgba(148, 163, 184, .12);--cf-color-popup-shadow: rgba(0, 0, 0, .4);--cf-color-popup-close: #94a3b8;--cf-color-popup-close-hover: #e2e8f0;--cf-color-ctrl-bg: rgba(17, 25, 40, .92);--cf-color-ctrl-border: rgba(148, 163, 184, .12);--cf-color-ctrl-btn-bg: rgba(255, 255, 255, .12);--cf-color-ctrl-btn-hover: rgba(255, 255, 255, .2);--cf-ctrl-invert: invert(1)}html[data-theme=light]{--cf-color-body-bg: #f0f2f5;--cf-color-body-text: #1e293b;--cf-color-surface: #ffffff;--cf-color-surface-raised: #ffffff;--cf-color-surface-overlay: #ffffff;--cf-color-surface-solid: #ffffff;--cf-color-surface-solid-dim: #f5f7fa;--cf-color-surface-input: #ffffff;--cf-color-search-pill-bg: rgba(255, 255, 255, .35);--cf-color-search-input-bg: rgba(0, 0, 0, .04);--cf-color-search-input-focus: rgba(0, 0, 0, .08);--cf-color-dropdown-bg: #f5f7fa;--cf-color-dropdown-card: rgba(255, 255, 255, .55);--cf-color-dropdown-card-hover: rgba(255, 255, 255, .8);--cf-color-hover: rgba(0, 0, 0, .04);--cf-color-hover-subtle: rgba(0, 0, 0, .03);--cf-color-active-highlight: rgba(14, 165, 233, .08);--cf-color-border: rgba(0, 0, 0, .1);--cf-color-border-subtle: rgba(0, 0, 0, .06);--cf-color-text-heading: #0f172a;--cf-color-text-primary: #1e293b;--cf-color-text-secondary: #334155;--cf-color-text-muted: #64748b;--cf-color-text-dimmed: #94a3b8;--cf-color-text-ghost: #e2e8f0;--cf-color-text-placeholder: #94a3b8;--cf-color-accent: #0284c7;--cf-color-accent-text: #0284c7;--cf-color-accent-muted: rgba(2, 132, 199, .5);--cf-color-accent-subtle: rgba(2, 132, 199, .25);--cf-color-accent-ghost: rgba(2, 132, 199, .1);--cf-color-origin-bg: rgba(14, 165, 233, .12);--cf-color-origin-text: #0284c7;--cf-color-dest-bg: rgba(244, 63, 94, .12);--cf-color-dest-text: #e11d48;--cf-color-header-bg: #ffffff;--cf-color-header-border: rgba(0, 0, 0, .06);--cf-color-loading-bg: #f0f2f5;--cf-color-handle: #d1d5db;--cf-shadow-sm: 0 1px 2px rgba(0, 0, 0, .05);--cf-shadow-md: 0 4px 12px rgba(0, 0, 0, .08);--cf-shadow-lg: 0 8px 24px rgba(0, 0, 0, .1);--cf-shadow-control: 0 6px 18px rgba(0, 0, 0, .08), 0 2px 6px rgba(0, 0, 0, .04);--cf-shadow-control-hover: 0 8px 24px rgba(0, 0, 0, .12), 0 2px 8px rgba(0, 0, 0, .06);--cf-color-scrollbar: rgba(0, 0, 0, .1);--cf-color-scrollbar-hover: rgba(0, 0, 0, .18);--cf-color-popup-bg: #ffffff;--cf-color-popup-text: #1e293b;--cf-color-popup-border: rgba(0, 0, 0, .08);--cf-color-popup-shadow: rgba(0, 0, 0, .1);--cf-color-popup-close: #94a3b8;--cf-color-popup-close-hover: #1e293b;--cf-color-ctrl-bg: #ffffff;--cf-color-ctrl-border: rgba(0, 0, 0, .08);--cf-color-ctrl-btn-bg: rgba(0, 0, 0, .05);--cf-color-ctrl-btn-hover: rgba(0, 0, 0, .1);--cf-ctrl-invert: none}.header{flex-shrink:0;background:var(--cf-color-header-bg);border-bottom:1px solid var(--cf-color-header-border);z-index:20}.header__inner{display:flex;align-items:center;gap:12px;padding:0 16px;height:48px}.header__logo{flex-shrink:0;display:flex;align-items:center;gap:8px;text-decoration:none;color:inherit}.header__logo-icon{width:22px;height:22px;color:var(--cf-color-accent-text)}.header__logo-text{font-weight:500;color:var(--cf-color-text-heading);font-size:16px;white-space:nowrap;display:none}@media(min-width:640px){.header__logo-text{display:inline}}.settings{flex-shrink:0;display:flex;align-items:center;gap:4px}.settings__btn{padding:8px;color:var(--cf-color-text-muted);background:none;border:none;border-radius:8px;transition:all .15s ease;cursor:pointer}.settings__btn:hover{color:var(--cf-color-accent-text);background:var(--cf-color-hover)}.settings__icon{width:18px;height:18px}.settings__lang-btn{padding:4px 10px;font-size:12px;font-weight:700;color:var(--cf-color-text-muted);background:none;border:1px solid var(--cf-color-border-subtle);border-radius:8px;letter-spacing:.025em;transition:all .15s ease;cursor:pointer}.settings__lang-btn:hover{color:var(--cf-color-accent-text);background:var(--cf-color-hover)}@media(max-width:767px){.header__inner{padding:0 12px}}.leftnav{display:none;flex-direction:column;align-items:center;width:64px;flex-shrink:0;background:var(--cf-color-header-bg);border-right:1px solid var(--cf-color-header-border);z-index:20;padding:12px 0}@media(min-width:768px){.leftnav{display:flex}}.leftnav__logo{display:flex;align-items:center;justify-content:center;width:40px;height:40px;margin-bottom:24px;text-decoration:none;color:var(--cf-color-accent-text);flex-shrink:0}.leftnav__logo-icon{width:24px;height:24px}.leftnav__items{display:flex;flex-direction:column;align-items:center;gap:4px;flex:1}.leftnav__item{position:relative;display:flex;flex-direction:column;align-items:center;gap:2px;width:52px;padding:8px 0;border-radius:12px;border:none;background:transparent;color:var(--cf-color-text-muted);text-decoration:none;font-family:inherit;transition:all .15s ease;cursor:pointer}.leftnav__item:hover{color:var(--cf-color-text-primary);background:var(--cf-color-hover)}.leftnav__item:focus-visible{outline:2px solid var(--cf-color-accent);outline-offset:2px}.leftnav__item.is-active{color:var(--cf-color-accent-text);background:var(--cf-color-active-highlight)}.leftnav__item.is-active:before{content:"";position:absolute;left:-8px;top:8px;bottom:8px;width:3px;border-radius:2px;background:var(--cf-color-accent)}.leftnav__item-icon{width:20px;height:20px;flex-shrink:0}.leftnav__item-label{font-size:10px;font-weight:500;letter-spacing:.025em;line-height:1}.leftnav__bottom{display:flex;flex-direction:column;align-items:center;gap:8px;margin-top:auto;padding-top:16px}.leftnav__theme-btn{display:flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;border:none;border-radius:8px;background:transparent;color:var(--cf-color-text-muted);transition:all .15s ease;cursor:pointer}.leftnav__theme-btn:hover{color:var(--cf-color-accent-text);background:var(--cf-color-hover)}.leftnav__theme-icon{width:18px;height:18px}.leftnav__lang-btn{display:flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;font-size:12px;font-weight:700;color:var(--cf-color-text-muted);background:transparent;border:1px solid var(--cf-color-border-subtle);border-radius:8px;letter-spacing:.025em;font-family:inherit;transition:all .15s ease;cursor:pointer}.leftnav__lang-btn:hover{color:var(--cf-color-accent-text);background:var(--cf-color-hover)}.mobile-nav{display:flex;align-items:center;justify-content:space-around;height:56px;padding-bottom:env(safe-area-inset-bottom);box-sizing:content-box;background:var(--cf-color-header-bg);border-top:1px solid var(--cf-color-header-border);position:sticky;bottom:0;z-index:20;flex-shrink:0}@media(min-width:768px){.mobile-nav{display:none}}.mobile-nav__item{display:flex;flex-direction:column;align-items:center;gap:2px;padding:4px 12px;border:none;background:transparent;color:var(--cf-color-text-muted);text-decoration:none;font-family:inherit;transition:color .15s ease;cursor:pointer}.mobile-nav__item:hover{color:var(--cf-color-text-primary)}.mobile-nav__item:focus-visible{outline:2px solid var(--cf-color-accent);outline-offset:-2px;border-radius:8px}.mobile-nav__item.is-active{position:relative;color:var(--cf-color-accent-text)}.mobile-nav__item.is-active:before{content:"";position:absolute;top:0;left:50%;transform:translate(-50%);width:24px;height:3px;border-radius:0 0 2px 2px;background:var(--cf-color-accent)}.mobile-nav__icon{width:20px;height:20px}.mobile-nav__label{font-size:10px;font-weight:500;letter-spacing:.025em}.search-pill{position:absolute;top:20px;left:50%;transform:translate(-50%);z-index:15;width:min(620px,100% - 100px);pointer-events:none}.map-reset{position:absolute;top:20px;right:20px;z-index:15;display:inline-flex;align-items:center;gap:6px;height:36px;padding:0 12px;border:1px solid var(--cf-color-border);border-radius:9999px;background:var(--cf-color-surface-overlay);backdrop-filter:blur(20px) saturate(1.4);-webkit-backdrop-filter:blur(20px) saturate(1.4);box-shadow:var(--cf-shadow-control);color:var(--cf-color-text-heading);font-size:14px;font-weight:600;font-family:inherit;cursor:pointer;transition:background .15s ease,border-color .15s ease,transform .15s ease}.map-reset:hover{background:var(--cf-color-hover);border-color:var(--cf-color-accent-muted);transform:translateY(-1px)}.map-reset.is-hidden{display:none}@media(max-width:768px){.map-reset{top:12px;right:12px;height:32px;padding:0 10px}}.search-pill .search{display:flex;align-items:center;gap:6px;max-width:none;background:var(--cf-color-search-pill-bg);backdrop-filter:blur(24px) saturate(1.4);-webkit-backdrop-filter:blur(24px) saturate(1.4);border:none;box-shadow:var(--cf-shadow-control);border-radius:9999px;padding:6px 8px;pointer-events:auto;position:relative;transition:box-shadow .2s ease,transform .2s ease}.search-pill .search:hover{box-shadow:var(--cf-shadow-control-hover);transform:translateY(-1px)}.search-pill .search__field{position:relative;flex:1;min-width:0}.search-pill .search__field-inner{position:relative}.search-pill .search__icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);width:18px;height:18px;pointer-events:none;z-index:1}.search-pill .search__icon svg{width:100%;height:100%}.search-pill .search__icon--origin{color:var(--cf-color-origin-text)}.search-pill .search__icon--dest{color:var(--cf-color-dest-text)}.search-pill .search__input{width:100%;height:48px;padding:16px 38px 4px 34px;background:var(--cf-color-search-input-bg);border:none;border-radius:9999px;color:var(--cf-color-text-primary);font-size:15px;font-weight:500;transition:background-color .15s ease}.search-pill .search__input::placeholder{color:transparent}.search-pill .search__input:focus{outline:none;box-shadow:none;background:var(--cf-color-search-input-focus)}.search-pill .search__label{position:absolute;left:34px;top:50%;transform:translateY(-50%);font-size:14px;color:var(--cf-color-text-muted);pointer-events:none;transition:top .15s ease,font-size .15s ease,color .15s ease;transform-origin:left center}.search-pill .search__input:focus~.search__label,.search-pill .search__input:not(:placeholder-shown)~.search__label{top:10px;transform:none;font-size:11px;color:var(--cf-color-text-dimmed)}.search-pill .search__clear{position:absolute;right:12px;top:50%;transform:translateY(-50%);display:flex;align-items:center;justify-content:center;width:20px;height:20px;color:var(--cf-color-text-dimmed);background:none;border:none;padding:0;transition:color .15s ease;cursor:pointer}.search-pill .search__clear:hover{color:var(--cf-color-text-secondary)}.search-pill .search__clear-icon{width:14px;height:14px}.search-pill .search__swap{flex-shrink:0;width:30px;height:30px;padding:0;border-radius:9999px;border:1px solid var(--cf-color-border-subtle);background:var(--cf-color-search-input-bg);color:var(--cf-color-text-dimmed);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease;z-index:3}.search-pill .search__swap:hover{color:var(--cf-color-accent-text);border-color:var(--cf-color-accent-subtle);background:var(--cf-color-search-input-focus)}.search-pill .search__swap:hover .search__swap-icon{transform:rotate(180deg)}.search-pill .search__swap-icon{width:14px;height:14px;transition:transform .3s ease-out}.search-pill .search__results{position:absolute;top:calc(100% + 8px);left:0;min-width:320px;background:var(--cf-color-dropdown-bg);border:none;border-radius:16px;overflow:hidden;box-shadow:var(--cf-shadow-control);z-index:50;max-height:320px;overflow-y:auto;animation:dropdown-enter .15s ease;padding:6px;pointer-events:auto}.map-wrapper:has(.search__results:not(.is-hidden)) #map{filter:brightness(.9);transition:filter .2s ease}#map{transition:filter .2s ease}@keyframes dropdown-enter{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}@media(max-width:767px){.search-pill{left:12px;right:12px;transform:none;width:auto}.search-pill .search{flex-direction:column;gap:6px;border-radius:16px;padding:6px}.search-pill .search:after{display:none}.search-pill .search__field{width:100%;flex:none}.search-pill .search__input{height:46px;padding:16px 32px 4px 34px;font-size:16px;border-radius:12px}.search-pill .search__input:focus{box-shadow:none;background:var(--cf-color-search-input-focus)}.search-pill .search__swap{position:absolute;right:12px;top:50%;left:auto;transform:translateY(-50%);width:30px;height:30px;background:var(--cf-color-surface-solid);border:1px solid var(--cf-color-border)}.search-pill .search__swap-icon{width:14px;height:14px}.search-pill .search__results{left:0;right:0}}.filterbar{position:absolute;top:84px;left:50%;transform:translate(-50%);z-index:14;width:min(960px,100% - 32px);pointer-events:none}.filterbar__inner{pointer-events:auto;display:flex;align-items:stretch;flex-wrap:wrap;justify-content:center;gap:8px;padding:2px}@media(min-width:1100px){.filterbar__inner{flex-wrap:nowrap;overflow-x:auto;overflow-y:visible;scrollbar-width:none}.filterbar__inner::-webkit-scrollbar{display:none}}.filterbar__pill{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;background:var(--cf-color-search-pill-bg);backdrop-filter:blur(24px) saturate(1.4);-webkit-backdrop-filter:blur(24px) saturate(1.4);border-radius:9999px;border:1px solid var(--cf-color-border);box-shadow:var(--cf-shadow-sm);cursor:pointer;white-space:nowrap;flex-shrink:0;font:inherit;color:var(--cf-color-text-heading);transition:box-shadow .15s ease,border-color .15s ease,transform .15s ease}.filterbar__pill:hover{box-shadow:var(--cf-shadow-md);border-color:var(--cf-color-border);transform:translateY(-1px)}.filterbar__pill.is-open{border-color:var(--cf-color-accent-muted);box-shadow:0 0 0 2px var(--cf-color-accent-ghost),0 4px 16px #00000014}.filterbar__pill--more{border-style:dashed;border-color:var(--cf-color-border)}.filterbar__reset{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;background:transparent;border-radius:9999px;border:1px solid transparent;color:var(--cf-color-text-muted);font-size:12px;font-weight:500;cursor:pointer;white-space:nowrap;flex-shrink:0;transition:background .15s ease,color .15s ease}.filterbar__reset:hover{background:var(--cf-color-hover);color:var(--cf-color-text-heading)}.filterbar__reset svg{stroke:currentColor}.filterbar__icon{display:inline-flex;align-items:center;justify-content:center;color:var(--cf-color-text-muted);flex-shrink:0}.filterbar__pill-text{display:flex;flex-direction:column;gap:1px;text-align:left;line-height:1.2}.filterbar__pill-label{font-size:12px;font-weight:500;color:var(--cf-color-text-heading)}.filterbar__pill-value{font-size:12px;color:var(--cf-color-text-muted)}.filterbar__chevron{color:var(--cf-color-text-dimmed);flex-shrink:0;transition:transform .15s ease}.filterbar__pill.is-open .filterbar__chevron{transform:rotate(180deg)}.filterbar-popover{position:absolute;top:0;left:0;z-index:25;pointer-events:auto;min-width:280px}.filterbar-popover.is-hidden{display:none}.popover{background:var(--cf-color-surface-solid);backdrop-filter:blur(24px) saturate(1.4);-webkit-backdrop-filter:blur(24px) saturate(1.4);border-radius:12px;border:1px solid var(--cf-color-border);box-shadow:var(--cf-shadow-lg);padding:16px;display:flex;flex-direction:column;gap:12px;font-size:14px}.popover--wide{min-width:360px}.popover__header{font-size:14px;font-weight:600;color:var(--cf-color-text-heading)}.popover__row{display:flex;gap:4px}.popover__toggle{flex:1 1 0;padding:6px 12px;border-radius:9999px;border:1px solid var(--cf-color-border-subtle);background:transparent;color:var(--cf-color-text-secondary);font-size:14px;font-weight:500;cursor:pointer;transition:all .15s ease}.popover__toggle:hover{background:var(--cf-color-hover)}.popover__toggle.is-active{background:var(--cf-color-accent-ghost);border-color:var(--cf-color-accent-subtle);color:var(--cf-color-accent-text)}.popover__field-row{display:flex;gap:8px}.popover__field{flex:1 1 0;display:flex;flex-direction:column;gap:4px}.popover__field.is-disabled{opacity:.5}.popover__field-label{font-size:12px;font-weight:500;color:var(--cf-color-text-muted);text-transform:uppercase;letter-spacing:.05em}.popover__date{padding:8px 12px;border-radius:8px;border:1px solid var(--cf-color-border-subtle);background:var(--cf-color-surface-solid-dim);color:var(--cf-color-text-heading);font-size:14px;font-family:inherit}.popover__date:focus{outline:none;border-color:var(--cf-color-accent-muted)}.popover__stepper{display:flex;justify-content:space-between;align-items:center}.popover__stepper-label{font-size:14px;font-weight:500;color:var(--cf-color-text-heading)}.popover__stepper-sub{font-size:12px;color:var(--cf-color-text-muted)}.popover__stepper-controls{display:inline-flex;align-items:center;gap:12px}.popover__stepper-btn{width:32px;height:32px;border-radius:50%;border:1px solid var(--cf-color-border-subtle);background:transparent;color:var(--cf-color-text-heading);font-size:16px;font-weight:500;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:background .15s ease}.popover__stepper-btn:hover:not(:disabled){background:var(--cf-color-hover)}.popover__stepper-btn:disabled{opacity:.4;cursor:not-allowed}.popover__stepper-value{min-width:18px;text-align:center;font-variant-numeric:tabular-nums;font-weight:500}.popover__radio-list{display:flex;flex-direction:column}.popover__radio{display:flex;align-items:center;gap:12px;padding:8px 0;cursor:pointer;font-size:14px;color:var(--cf-color-text-heading);border-radius:8px}.popover__radio input[type=radio]{accent-color:var(--cf-color-accent)}.popover__radio:hover{color:var(--cf-color-accent-text)}.popover__search{padding:8px 12px;border-radius:8px;border:1px solid var(--cf-color-border-subtle);background:var(--cf-color-surface-solid-dim);color:var(--cf-color-text-heading);font-size:14px;font-family:inherit}.popover__search:focus{outline:none;border-color:var(--cf-color-accent-muted)}.popover__checklist{max-height:240px;overflow-y:auto;display:flex;flex-direction:column}.popover__check{display:flex;align-items:center;gap:12px;padding:8px;cursor:pointer;border-radius:8px;font-size:14px;color:var(--cf-color-text-heading)}.popover__check:hover{background:var(--cf-color-hover)}.popover__check input[type=checkbox]{accent-color:var(--cf-color-accent)}.popover__check-label{flex:1;font-family:ui-monospace,Cascadia Code,Source Code Pro,monospace;font-size:12px;font-weight:600}.popover__check-count{font-size:12px;color:var(--cf-color-text-muted);font-variant-numeric:tabular-nums}.popover__range{width:100%;appearance:none;-webkit-appearance:none;height:4px;background:var(--cf-color-border-subtle);border-radius:2px;outline:none;cursor:pointer}.popover__range::-webkit-slider-thumb{appearance:none;width:20px;height:20px;border-radius:50%;background:var(--cf-color-accent);border:2px solid var(--cf-color-surface-solid);cursor:pointer}.popover__range::-moz-range-thumb{width:20px;height:20px;border-radius:50%;background:var(--cf-color-accent);border:2px solid var(--cf-color-surface-solid);cursor:pointer}.popover__range-labels{display:flex;justify-content:space-between;font-size:12px;color:var(--cf-color-text-muted);margin-top:-8px}.popover__price-display{font-size:16px;color:var(--cf-color-text-secondary)}.popover__price-display strong{color:var(--cf-color-text-heading);font-weight:600}.popover__group{display:flex;flex-direction:column;gap:8px;padding-top:12px;border-top:1px solid var(--cf-color-border)}.popover__group:first-child{padding-top:0;border-top:none}.popover__group-label{font-size:12px;font-weight:500;color:var(--cf-color-text-muted);text-transform:uppercase;letter-spacing:.05em}.popover__chips{display:flex;flex-wrap:wrap;gap:4px}.popover__chip{padding:4px 12px;border-radius:9999px;border:1px solid var(--cf-color-border-subtle);background:transparent;color:var(--cf-color-text-secondary);font-size:12px;font-weight:500;cursor:pointer;transition:all .15s ease}.popover__chip:hover{background:var(--cf-color-hover);color:var(--cf-color-text-heading)}.popover__chip.is-active{background:var(--cf-color-accent-ghost);border-color:var(--cf-color-accent-subtle);color:var(--cf-color-accent-text)}.popover__footer{display:flex;align-items:center;justify-content:space-between;gap:8px;padding-top:8px;border-top:1px solid var(--cf-color-border)}.popover__footer--single{justify-content:flex-end}.popover__clear{background:transparent;border:none;color:var(--cf-color-text-muted);font-size:14px;font-weight:500;cursor:pointer;padding:4px 8px;border-radius:8px}.popover__clear:hover{color:var(--cf-color-text-heading);background:var(--cf-color-hover)}.popover__apply{padding:8px 16px;background:var(--cf-color-accent);color:var(--cf-color-on-accent, #fff);border:none;border-radius:9999px;font-size:14px;font-weight:600;cursor:pointer;transition:filter .15s ease}.popover__apply:hover{filter:brightness(1.05)}.popover__empty{font-size:14px;color:var(--cf-color-text-muted);text-align:center;padding:16px 0}@media(max-width:640px){.filterbar{top:80px;width:calc(100% - 16px)}.filterbar-popover{max-width:calc(100vw - 32px)}}.popover--dates{width:580px;max-width:calc(100vw - 32px)}.cal__date-summary{display:grid;grid-template-columns:1fr 1fr;gap:8px}.cal__date-pill{display:flex;flex-direction:column;gap:2px;padding:8px 12px;border-radius:8px;border:1px solid var(--cf-color-border-subtle);background:var(--cf-color-surface-solid-dim)}.cal__date-pill.is-filled{border-color:var(--cf-color-accent-subtle);background:var(--cf-color-accent-ghost)}.cal__date-pill.is-disabled{opacity:.45}.cal__date-pill-label{font-size:12px;font-weight:500;color:var(--cf-color-text-muted);text-transform:uppercase;letter-spacing:.05em}.cal__date-pill-value{font-size:14px;font-weight:600;color:var(--cf-color-text-heading)}.cal__date-pill:not(.is-filled) .cal__date-pill-value{color:var(--cf-color-text-muted);font-weight:500}.cal__presets{display:flex;gap:4px;flex-wrap:wrap}.cal__preset{padding:4px 10px;border-radius:9999px;border:1px solid var(--cf-color-border-subtle);background:transparent;color:var(--cf-color-text-secondary);font-size:12px;font-weight:500;cursor:pointer;transition:background .15s ease,color .15s ease,border-color .15s ease}.cal__preset:hover{background:var(--cf-color-hover);color:var(--cf-color-text-heading);border-color:var(--cf-color-border)}.cal__nav{display:flex;justify-content:flex-end;gap:4px}.cal__nav-btn{width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;border:1px solid var(--cf-color-border-subtle);background:transparent;color:var(--cf-color-text-muted);cursor:pointer;transition:background .15s ease,color .15s ease}.cal__nav-btn:hover{background:var(--cf-color-hover);color:var(--cf-color-text-heading)}.cal__months{display:grid;grid-template-columns:1fr 1fr;gap:12px}@media(max-width:560px){.cal__months{grid-template-columns:1fr}}.cal__month{display:flex;flex-direction:column;gap:4px}.cal__month-label{font-size:14px;font-weight:600;color:var(--cf-color-text-heading);text-align:center;margin-bottom:4px}.cal__weekdays{display:grid;grid-template-columns:repeat(7,1fr);gap:2px;font-size:10px;font-weight:500;color:var(--cf-color-text-muted);text-transform:uppercase;letter-spacing:.04em;text-align:center}.cal__weekdays span{padding:4px 0}.cal__grid{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}.cal__cell{min-height:48px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;background:transparent;border:1px solid transparent;border-radius:8px;color:var(--cf-color-text-secondary);font-size:14px;font-weight:500;cursor:pointer;font-variant-numeric:tabular-nums;padding:4px 0;transition:background .15s ease,color .15s ease}.cal__cell:hover:not(:disabled):not(.cal__cell--blank){background:var(--cf-color-hover);color:var(--cf-color-text-heading)}.cal__cell--blank{pointer-events:none;cursor:default}.cal__cell--past{color:var(--cf-color-text-dimmed);cursor:not-allowed;opacity:.4}.cal__cell--today{color:var(--cf-color-accent-text);font-weight:600}.cal__cell--in-range{background:var(--cf-color-accent-ghost);border-radius:0;color:var(--cf-color-text-heading)}.cal__cell--start,.cal__cell--end{background:var(--cf-color-accent);color:var(--cf-color-on-accent, #fff);font-weight:600}.cal__cell--start:hover,.cal__cell--end:hover{background:var(--cf-color-accent);color:var(--cf-color-on-accent, #fff)}.cal__cell--start{border-top-right-radius:0;border-bottom-right-radius:0}.cal__cell--end{border-top-left-radius:0;border-bottom-left-radius:0}.cal__cell-day{line-height:1}.cal__cell-price{font-size:9px;font-weight:600;letter-spacing:0;line-height:1}.cal__cell--has-price.cal__cell--price-lo .cal__cell-price{color:#16a34a}.cal__cell--has-price.cal__cell--price-mid .cal__cell-price{color:#b48200}.cal__cell--has-price.cal__cell--price-hi .cal__cell-price{color:#be3c32}.cal__cell--has-price.cal__cell--start .cal__cell-price,.cal__cell--has-price.cal__cell--end .cal__cell-price{color:var(--cf-color-on-accent, #fff);opacity:.85}.floating-panel{position:absolute;top:148px;left:16px;width:min(420px,100% - 16px * 2);max-height:calc(100vh - 188px);z-index:15;pointer-events:auto;box-sizing:border-box;display:flex;flex-direction:column;background:var(--cf-color-search-pill-bg);backdrop-filter:blur(24px) saturate(1.4);-webkit-backdrop-filter:blur(24px) saturate(1.4);border-radius:12px;border:1px solid var(--cf-color-border);box-shadow:var(--cf-shadow-lg)}.floating-panel.is-hidden{display:none}@media(max-width:768px){.floating-panel{display:none}.floating-panel.is-shown-mobile{display:flex}}.floating-panel__content{flex:1;overflow-y:auto;overflow-x:hidden;padding:0;min-width:0}.results-card{display:flex;flex-direction:column;gap:12px;padding:16px}.results-card__header{display:flex;flex-direction:column;gap:2px}.results-card__title{display:flex;align-items:center;gap:8px;font-size:20px;font-weight:600;color:var(--cf-color-text-heading)}.results-card__arrow{color:var(--cf-color-text-muted);font-weight:400}.results-card__sub{font-size:12px;color:var(--cf-color-text-muted);font-family:ui-monospace,Cascadia Code,Source Code Pro,monospace}.results-card__banner{padding:8px 12px;border-radius:8px;font-size:12px;font-weight:500;display:inline-flex;align-items:center;gap:6px}.results-card__banner--ok{background:#22c55e1a;color:#16a34a;border:1px solid rgba(34,197,94,.2)}.results-card__banner--warn{background:var(--cf-color-accent-ghost);color:var(--cf-color-accent-text);border:1px solid var(--cf-color-accent-subtle)}.results-card__banner--info{background:var(--cf-color-surface-solid-dim);color:var(--cf-color-text-secondary);border:1px solid var(--cf-color-border-subtle)}.results-card__empty-block{display:flex;flex-direction:column;align-items:flex-start;gap:12px;padding:12px;border:1px solid var(--cf-color-border-subtle);border-radius:12px;background:var(--cf-color-surface-solid-dim)}.results-card__empty-msg{margin:0;font-size:14px;color:var(--cf-color-text-secondary);line-height:1.625}.results-card__source{font-size:12px;color:var(--cf-color-text-dimmed)}.results-card__list{display:flex;flex-direction:column;gap:0;border:1px solid var(--cf-color-border-subtle);border-radius:12px;overflow:hidden;background:var(--cf-color-surface)}.results-card__row{display:grid;grid-template-columns:1fr auto;grid-template-areas:"airline price" "times   cta";gap:4px 12px;padding:12px;border-top:1px solid var(--cf-color-border-subtle);text-decoration:none;color:inherit;transition:background .15s ease}.results-card__row:first-child{border-top:none}.results-card__row:hover{background:var(--cf-color-hover-subtle)}.results-card__airline,.results-card__via{grid-area:airline;display:flex;align-items:baseline;gap:6px;flex-wrap:wrap;min-width:0}.results-card__airline-code{font-family:ui-monospace,Cascadia Code,Source Code Pro,monospace;font-size:12px;font-weight:600;padding:.1rem .4rem;border-radius:4px;background:var(--cf-color-surface-2, rgba(0, 0, 0, .05));color:var(--cf-color-text-heading)}.results-card__airline-name{font-size:14px;font-weight:500;color:var(--cf-color-text-heading);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.results-card__flight-num{font-family:ui-monospace,Cascadia Code,Source Code Pro,monospace;font-size:12px;color:var(--cf-color-text-muted)}.results-card__via-label{color:var(--cf-color-text-muted);font-size:12px}.results-card__times{grid-area:times;display:flex;align-items:center;gap:6px;flex-wrap:wrap;font-size:12px;color:var(--cf-color-text-muted);font-variant-numeric:tabular-nums}.results-card__time{font-weight:500;color:var(--cf-color-text-secondary)}.results-card__duration{color:var(--cf-color-text-secondary)}.results-card__stops{color:var(--cf-color-text-muted)}.results-card__arrow-mini{color:var(--cf-color-text-dimmed)}.results-card__aircraft{padding:.1rem .4rem;border-radius:4px;background:var(--cf-color-surface-2, rgba(0, 0, 0, .05))}.results-card__price{grid-area:price;text-align:right;font-size:14px;color:var(--cf-color-text-heading);font-variant-numeric:tabular-nums;align-self:start}.results-card__price strong{font-weight:600}.results-card__cta{grid-area:cta;display:inline-flex;align-items:center;justify-self:end;padding:4px 12px;background:var(--cf-color-accent);color:var(--cf-color-on-accent, #fff);border-radius:9999px;font-size:12px;font-weight:600;text-decoration:none;white-space:nowrap;transition:filter .15s ease}.results-card__cta:hover{filter:brightness(1.05)}.results-card__footer{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px;font-size:12px;color:var(--cf-color-text-muted)}.results-card__main-cta,.results-card__more{color:var(--cf-color-accent-text);text-decoration:none;font-weight:500;font-size:14px}.results-card__main-cta:hover,.results-card__more:hover{text-decoration:underline}.results-card__main-cta{padding:8px 12px;background:var(--cf-color-accent);color:var(--cf-color-on-accent, #fff);border-radius:9999px}.results-card__main-cta:hover{filter:brightness(1.05);text-decoration:none}.results-card__empty{font-size:14px;color:var(--cf-color-text-muted);text-align:center;padding:16px 0}.results-card__empty a{color:var(--cf-color-accent-text);text-decoration:underline;text-underline-offset:2px}.results-card__loading{display:flex;align-items:center;justify-content:center;gap:8px;padding:24px 0;font-size:14px;color:var(--cf-color-text-muted)}.results-card__spinner{width:14px;height:14px;border:2px solid var(--cf-color-border-subtle);border-top-color:var(--cf-color-accent);border-radius:50%;animation:results-spin .8s linear infinite}@keyframes results-spin{to{transform:rotate(360deg)}}.pcal{margin:0}.pcal__nav{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.pcal__nav-btn{width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;border:1px solid var(--cf-color-border-subtle);background:transparent;color:var(--cf-color-text-muted);cursor:pointer;transition:background .15s ease,color .15s ease}.pcal__nav-btn:hover{background:var(--cf-color-hover);color:var(--cf-color-text-heading)}.pcal__month-label{font-size:14px;font-weight:600;color:var(--cf-color-text-heading)}.pcal__weekdays{display:grid;grid-template-columns:repeat(7,1fr);gap:2px;font-size:10px;font-weight:500;color:var(--cf-color-text-muted);text-transform:uppercase;letter-spacing:.04em;text-align:center;margin-bottom:2px}.pcal__weekdays span{padding:2px 0}.pcal__grid{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}.pcal__cell{min-height:44px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;background:transparent;border:1px solid transparent;border-radius:8px;color:var(--cf-color-text-secondary);font-size:14px;font-weight:500;cursor:pointer;font-variant-numeric:tabular-nums;padding:4px 0;transition:background .15s ease,color .15s ease,border-color .15s ease}.pcal__cell:hover:not(:disabled):not(.pcal__cell--blank){background:var(--cf-color-hover);color:var(--cf-color-text-heading)}.pcal__cell--blank{pointer-events:none;cursor:default}.pcal__cell--past{color:var(--cf-color-text-dimmed);cursor:not-allowed;opacity:.4}.pcal__cell--today{color:var(--cf-color-accent-text);font-weight:600}.pcal__cell--selected{background:var(--cf-color-accent);color:var(--cf-color-on-accent, #fff);border-color:var(--cf-color-accent)}.pcal__cell--selected:hover{background:var(--cf-color-accent);color:var(--cf-color-on-accent, #fff)}.pcal__day{line-height:1}.pcal__price{font-size:11px;font-weight:600;line-height:1;letter-spacing:-.02em}.pcal__cell--has-price.pcal__cell--lo .pcal__price{color:#16a34a}.pcal__cell--has-price.pcal__cell--mid .pcal__price{color:#b48200}.pcal__cell--has-price.pcal__cell--hi .pcal__price{color:#be3c32}.pcal__cell--has-price.pcal__cell--selected .pcal__price{color:var(--cf-color-on-accent, #fff);opacity:.85}.pcal__summary{margin-top:12px;padding:8px 12px;background:var(--cf-color-surface-solid-dim);border-radius:8px;font-size:14px;color:var(--cf-color-text-secondary)}.pcal__summary strong{color:var(--cf-color-text-heading);font-weight:600}.pcal__cheapest-jump{display:flex;align-items:center;gap:8px;width:100%;padding:0;background:none;border:0;font:inherit;color:inherit;text-align:left;cursor:pointer}.pcal__cheapest-jump:hover .pcal__cheapest-go,.pcal__cheapest-jump:focus-visible .pcal__cheapest-go{background:var(--cf-color-accent);color:#fff}.pcal__cheapest-go{margin-left:auto;flex-shrink:0;padding:2px 8px;border-radius:9999px;background:var(--cf-color-accent-ghost);color:var(--cf-color-accent-text);font-size:12px;font-weight:600;transition:background .15s ease,color .15s ease}.pcal__cta{display:inline-flex;align-items:center;justify-content:center;margin-top:12px;padding:10px 16px;background:var(--cf-color-accent);color:var(--cf-color-on-accent, #fff);border-radius:9999px;font-size:14px;font-weight:600;text-decoration:none;transition:filter .15s ease}.pcal__cta:hover{filter:brightness(1.05)}.tool-card{padding:20px;border:1px solid var(--cf-color-border-subtle);border-radius:16px;background:var(--cf-color-surface-solid)}.tool-card__grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}@media(max-width:720px){.tool-card__grid{grid-template-columns:1fr}}.tool-card__col-title{font-size:14px;font-weight:600;color:var(--cf-color-text-heading);margin:0 0 12px}.tool-card__inputs{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:8px;align-items:end}.tool-card__field{display:flex;flex-direction:column;gap:4px}.tool-card__field-label{font-size:12px;color:var(--cf-color-text-muted);font-weight:500;text-transform:uppercase;letter-spacing:.05em}.tool-card__input{height:44px;padding:0 12px;border:1px solid var(--cf-color-border-subtle);border-radius:12px;background:var(--cf-color-surface-solid-dim);color:var(--cf-color-text-heading);font-size:14px;font-family:inherit;font-weight:500;outline:none;transition:border-color .15s ease}.tool-card__input:focus{border-color:var(--cf-color-accent-muted)}.tool-card__input--iata{text-transform:uppercase;font-family:ui-monospace,Cascadia Code,Source Code Pro,monospace;font-size:16px;letter-spacing:.05em}.tool-card__cta{height:44px;padding:0 20px;background:var(--cf-color-accent);color:var(--cf-color-on-accent, #fff);border:none;border-radius:12px;font-size:14px;font-weight:600;cursor:pointer;font-family:inherit;transition:filter .15s ease}.tool-card__cta:hover{filter:brightness(1.05)}.tool-card__add{display:inline-flex;align-items:center;justify-content:center;gap:6px;width:100%;padding:8px 12px;margin-top:8px;border:1px dashed var(--cf-color-border);border-radius:12px;background:transparent;color:var(--cf-color-text-secondary);font-size:14px;font-weight:500;cursor:pointer;transition:background .15s ease,border-color .15s ease}.tool-card__add:hover{background:var(--cf-color-hover);border-color:var(--cf-color-border);color:var(--cf-color-text-heading)}.tool-card__error{margin-top:12px;padding:12px;background:var(--cf-color-warn-surface, rgba(220, 60, 50, .08));border:1px solid var(--cf-color-warn-border, rgba(220, 60, 50, .25));border-radius:12px;font-size:14px;color:#be3c32}.tool-card__hint{margin:0;padding:16px 0;font-size:14px;color:var(--cf-color-text-muted);text-align:center}.tool-card__col--result{padding:16px;border:1px solid var(--cf-color-border-subtle);border-radius:12px;background:var(--cf-color-surface-solid-dim)}.tool-card__result-label{font-size:12px;color:var(--cf-color-text-muted);text-transform:uppercase;letter-spacing:.05em;font-weight:500}.tool-card__result-big{font-size:2rem;font-weight:700;color:var(--cf-color-text-heading);line-height:1.1;font-variant-numeric:tabular-nums;margin-top:4px}.tool-card__result-unit{font-size:16px;font-weight:500;color:var(--cf-color-text-muted)}.tool-card__result-msg{margin:12px 0 0;font-size:14px;color:var(--cf-color-text-secondary);line-height:1.5}.tool-card__result-sub{margin:8px 0 0;font-size:12px;color:var(--cf-color-text-muted)}.tool-card__result-grid{margin-top:16px;display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:8px}.tool-card__result-grid.is-hidden{display:none}.tool-card__result-stat{padding:12px 16px;border:1px solid var(--cf-color-border-subtle);border-radius:12px;background:var(--cf-color-surface-solid-dim)}.tool-card__route{margin-top:12px}.tool-card__route.is-hidden{display:none}.schengen-card{padding:20px;border:1px solid var(--cf-color-border-subtle);border-radius:16px;background:var(--cf-color-surface-solid)}.schengen-card__grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}@media(max-width:760px){.schengen-card__grid{grid-template-columns:1fr;gap:20px}}.schengen-panel{display:flex;flex-direction:column;gap:12px}.schengen-panel__head{display:flex;align-items:center;gap:10px;margin-bottom:4px}.schengen-panel__head--inline{margin-bottom:0}.schengen-panel__title{margin:0;font-size:16px;font-weight:600;color:var(--cf-color-text-heading)}.schengen-icon-circle{width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;flex-shrink:0}.schengen-icon-circle--blue{background:#0ea5e91f;color:#0284c7}.schengen-icon-circle--amber{background:#f59e0b24;color:#d97706}.schengen-field{display:flex;flex-direction:column;gap:6px}.schengen-field__label{font-size:12px;font-weight:500;color:var(--cf-color-text-secondary)}.schengen-field__input{height:44px;padding:0 12px;border:1px solid var(--cf-color-border);border-radius:12px;background:var(--cf-color-surface-solid);color:var(--cf-color-text-heading);font-size:14px;font-family:inherit;font-weight:500;outline:none;transition:border-color .15s ease,box-shadow .15s ease}.schengen-field__input:focus{border-color:var(--cf-color-accent-muted)}.schengen-date{position:relative;display:flex;align-items:center;height:48px;padding:0 12px;gap:10px;border:1px solid var(--cf-color-border);border-radius:12px;background:var(--cf-color-surface-solid);transition:border-color .15s ease,box-shadow .15s ease}.schengen-date:focus-within{border-color:var(--cf-color-accent-muted);box-shadow:0 0 0 3px var(--cf-color-accent-ghost)}.schengen-date__icon{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;background:#0ea5e91a;color:var(--cf-color-accent-text);flex-shrink:0}.schengen-date__input{flex:1;height:100%;border:none!important;background:transparent!important;padding:0!important;font-size:16px;font-weight:600;color:var(--cf-color-text-heading);font-variant-numeric:tabular-nums;outline:none;box-shadow:none!important;font-family:inherit;letter-spacing:.02em;cursor:pointer}.schengen-date__input::-webkit-calendar-picker-indicator{cursor:pointer;opacity:.55;filter:invert(40%) sepia(98%) saturate(2000%) hue-rotate(180deg) brightness(.95);transition:opacity .15s ease}.schengen-date__input:hover::-webkit-calendar-picker-indicator,.schengen-date__input:focus::-webkit-calendar-picker-indicator{opacity:1}.schengen-date__input::-webkit-datetime-edit{padding:0}.schengen-window-pill{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;background:#22c55e1a;border:1px solid rgba(34,197,94,.25);border-radius:12px;font-size:12px;color:#15803d;align-self:flex-start}.schengen-window-pill strong{font-weight:600}.schengen-update-btn{margin-top:8px;height:44px;padding:0 20px;background:var(--cf-color-accent);color:#fff;border:none;border-radius:12px;font-size:14px;font-weight:600;cursor:pointer;font-family:inherit;transition:filter .15s ease;align-self:flex-start}.schengen-update-btn:hover{filter:brightness(1.05)}.schengen-bigcount{display:flex;align-items:baseline;gap:8px;margin-top:4px}.schengen-bigcount__num{font-size:2.5rem;font-weight:700;color:#15803d;line-height:1;font-variant-numeric:tabular-nums}.schengen-bigcount__total{font-size:16px;font-weight:500;color:var(--cf-color-text-muted)}.schengen-bar{height:10px;background:var(--cf-color-border-subtle);border-radius:9999px;overflow:hidden}.schengen-bar__fill{height:100%;background:#22c55e;border-radius:9999px;transition:width .3s ease,background .3s ease}.schengen-bar__fill.is-warn{background:#d97706}.schengen-bar__fill.is-over{background:#be3c32}.schengen-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:8px}@media(max-width:520px){.schengen-stats{grid-template-columns:1fr}}.schengen-stat{display:flex;flex-direction:column;gap:4px;padding:12px;border-radius:12px;border:1px solid transparent}.schengen-stat--green{background:#22c55e14;border-color:#22c55e2e}.schengen-stat--green .schengen-stat__icon,.schengen-stat--green .schengen-stat__value{color:#15803d}.schengen-stat--blue{background:#0ea5e914;border-color:#0ea5e92e}.schengen-stat--blue .schengen-stat__icon,.schengen-stat--blue .schengen-stat__value{color:#0284c7}.schengen-stat--purple{background:#8b5cf614;border-color:#8b5cf62e}.schengen-stat--purple .schengen-stat__icon,.schengen-stat--purple .schengen-stat__value{color:#7c3aed}.schengen-stat__icon{display:inline-flex}.schengen-stat__label{font-size:12px;color:var(--cf-color-text-secondary);font-weight:500}.schengen-stat__value{font-size:16px;font-weight:700;font-variant-numeric:tabular-nums}.schengen-msg{margin:8px 0 0;font-size:14px;color:var(--cf-color-text-secondary);line-height:1.5}.schengen-trips-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px;flex-wrap:wrap}.schengen-import-btn{display:inline-flex;align-items:center;gap:6px;height:36px;padding:0 12px;background:var(--cf-color-surface-solid-dim);border:1px solid var(--cf-color-border);border-radius:12px;color:var(--cf-color-text-secondary);font-size:12px;font-weight:500;cursor:pointer;font-family:inherit;transition:background .15s ease,color .15s ease}.schengen-import-btn:hover{background:var(--cf-color-hover);color:var(--cf-color-text-heading)}.schengen-trips{display:flex;flex-direction:column;gap:8px}.schengen-trip{display:grid;grid-template-columns:24px 1fr 16px 1fr 80px 32px;gap:8px;align-items:center;padding:8px 12px;background:var(--cf-color-surface-solid-dim);border:1px solid var(--cf-color-border-subtle);border-radius:12px}@media(max-width:560px){.schengen-trip{grid-template-columns:24px 1fr 1fr 32px;grid-template-areas:"icon from to remove" ".    days days ."}.schengen-trip .schengen-trip__icon{grid-area:icon}.schengen-trip .schengen-trip__from{grid-area:from}.schengen-trip .schengen-trip__to{grid-area:to}.schengen-trip .schengen-trip__arrow{display:none}.schengen-trip .schengen-trip__days{grid-area:days;text-align:left}.schengen-trip .schengen-trip__remove{grid-area:remove}}.schengen-trip__icon{display:inline-flex;align-items:center;justify-content:center;color:var(--cf-color-accent)}.schengen-trip__arrow{text-align:center;color:var(--cf-color-text-muted);font-size:14px}.schengen-trip__days{text-align:right;font-size:12px;color:var(--cf-color-text-muted);font-variant-numeric:tabular-nums;font-weight:500}.schengen-trip__remove{width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--cf-color-border-subtle);border-radius:50%;background:transparent;color:var(--cf-color-text-muted);cursor:pointer}.schengen-trip__remove:hover{background:var(--cf-color-hover);color:#be3c32}.schengen-add-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;width:100%;margin-top:12px;padding:10px 12px;border:1px dashed var(--cf-color-border);border-radius:12px;background:transparent;color:var(--cf-color-text-secondary);font-size:14px;font-weight:500;cursor:pointer;font-family:inherit;transition:background .15s ease,color .15s ease}.schengen-add-btn:hover{background:var(--cf-color-hover);color:var(--cf-color-text-heading)}.schengen-info-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}@media(max-width:760px){.schengen-info-grid{grid-template-columns:1fr}}.schengen-info-card{padding:20px;border:1px solid var(--cf-color-border-subtle);border-radius:16px;background:var(--cf-color-surface-solid)}.schengen-info-card p{margin:0 0 12px;font-size:14px;line-height:1.625;color:var(--cf-color-text-secondary)}.schengen-info-card p:last-child{margin-bottom:0}.schengen-tips{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px}.schengen-tips li{display:flex;gap:8px;font-size:14px;line-height:1.625;color:var(--cf-color-text-secondary)}.schengen-tips__check{flex-shrink:0;width:22px;height:22px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;background:#22c55e1f;color:#15803d;margin-top:1px}.airport-results{margin-top:12px;display:flex;flex-direction:column;gap:6px}.airport-result{display:grid;grid-template-columns:64px 1fr auto;gap:12px;align-items:center;padding:12px 16px;border:1px solid var(--cf-color-border-subtle);border-radius:12px;background:var(--cf-color-surface-solid);text-decoration:none;color:inherit;transition:border-color .15s ease,background .15s ease}.airport-result:hover{border-color:var(--cf-color-accent-muted);background:var(--cf-color-hover-subtle)}.airport-result__iata{font-family:ui-monospace,Cascadia Code,Source Code Pro,monospace;font-size:16px;font-weight:700;color:var(--cf-color-accent-text);text-align:center;padding:4px 8px;border:1px solid var(--cf-color-accent-subtle);border-radius:8px;background:var(--cf-color-accent-ghost)}.airport-result__body{min-width:0}.airport-result__name{font-size:14px;font-weight:600;color:var(--cf-color-text-heading);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.airport-result__meta{font-size:12px;color:var(--cf-color-text-muted);margin-top:2px}.airport-result__pill{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;padding:2px 8px;border-radius:9999px;white-space:nowrap}.airport-result__pill--hub{background:var(--cf-color-accent-ghost);color:var(--cf-color-accent-text)}.airport-result__pill--large{background:var(--cf-color-accent-ghost);color:var(--cf-color-accent-text);opacity:.8}.airport-result__pill--regional{background:var(--cf-color-surface-solid-dim);color:var(--cf-color-text-secondary)}.airport-result__pill--minor{background:var(--cf-color-surface-solid-dim);color:var(--cf-color-text-muted)}.apl-layout{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:20px;align-items:start}@media(max-width:980px){.apl-layout{grid-template-columns:1fr}}.apl-main,.apl-side{display:flex;flex-direction:column;gap:16px;min-width:0}.apl-side{gap:12px}.apl-hero{padding-bottom:0}.apl-search{position:relative;display:flex;align-items:center}.apl-search__icon{position:absolute;left:16px;color:var(--cf-color-text-muted);display:inline-flex;pointer-events:none}.apl-search__input{width:100%;height:56px;padding:0 16px 0 40px;border:1px solid var(--cf-color-border);border-radius:12px;background:var(--cf-color-surface-solid);color:var(--cf-color-text-heading);font-size:16px;font-family:inherit;outline:none;transition:border-color .15s ease,box-shadow .15s ease}.apl-search__input:focus{border-color:var(--cf-color-accent-muted);box-shadow:0 0 0 3px var(--cf-color-accent-ghost)}.apl-search__input::placeholder{color:var(--cf-color-text-placeholder)}.apl-search__hint{margin:8px 0 0;font-size:12px;color:var(--cf-color-text-muted)}.apl-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;padding:16px;border:1px solid var(--cf-color-border-subtle);border-radius:16px;background:var(--cf-color-surface-solid)}@media(max-width:720px){.apl-stats{grid-template-columns:repeat(2,1fr)}}.apl-stat{display:flex;align-items:center;gap:10px;padding:8px}.apl-stat__icon{width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;flex-shrink:0}.apl-stat__icon--blue{background:#0ea5e91f;color:#0284c7}.apl-stat__icon--green{background:#22c55e24;color:#15803d}.apl-stat__icon--purple{background:#8b5cf624;color:#7c3aed}.apl-stat__icon--amber{background:#f59e0b24;color:#d97706}.apl-stat__body{display:flex;flex-direction:column;min-width:0}.apl-stat__value{font-size:16px;font-weight:700;color:var(--cf-color-text-heading);line-height:1.2}.apl-stat__label{font-size:12px;color:var(--cf-color-text-muted)}.apl-card{padding:20px;border:1px solid var(--cf-color-border-subtle);border-radius:16px;background:var(--cf-color-surface-solid)}.apl-card__head{display:flex;align-items:center;gap:10px;margin-bottom:12px}.apl-card__head-icon{width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;background:#0ea5e91f;color:#0284c7;flex-shrink:0}.apl-card__title{margin:0;font-size:16px;font-weight:600;color:var(--cf-color-text-heading)}.apl-card__lead{margin:0 0 12px;font-size:14px;font-weight:600;color:var(--cf-color-text-heading)}.apl-card__link{display:inline-flex;align-items:center;gap:6px;margin-top:12px;font-size:14px;font-weight:600;color:var(--cf-color-accent-text);text-decoration:none}.apl-card__link:hover{text-decoration:underline}.apl-chips{display:flex;flex-wrap:wrap;gap:8px}.apl-chip{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border:1px solid var(--cf-color-accent-subtle);border-radius:9999px;background:var(--cf-color-accent-ghost);color:var(--cf-color-accent-text);font-size:14px;font-weight:500;font-family:inherit;cursor:pointer;transition:background .15s ease,border-color .15s ease}.apl-chip:hover{background:var(--cf-color-accent-subtle);border-color:var(--cf-color-accent-muted)}.apl-bullets{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}.apl-bullets li{display:flex;gap:8px;font-size:14px;line-height:1.625;color:var(--cf-color-text-secondary)}.apl-bullets__dot{flex-shrink:0;width:8px;height:8px;margin-top:8px;border-radius:50%}.apl-bullets__dot--blue{background:#0284c7}.apl-bullets__dot--rose{background:#e11d48}.apl-codes{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px}.apl-codes li{display:flex;gap:10px}.apl-codes li>div{display:flex;flex-direction:column;gap:2px;min-width:0}.apl-codes__icon{flex-shrink:0;width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;border-radius:8px;margin-top:2px}.apl-codes__icon--blue{background:#0ea5e91f;color:#0284c7}.apl-codes__icon--rose{background:#f43f5e24;color:#e11d48}.apl-codes__icon--green{background:#22c55e24;color:#15803d}.apl-codes__icon--amber{background:#f59e0b24;color:#d97706}.apl-codes__name{font-size:14px;font-weight:600;color:var(--cf-color-text-heading)}.apl-codes__desc{font-size:12px;color:var(--cf-color-text-muted);line-height:1.625}.apl-tip{display:flex;gap:10px;padding:16px;border:1px solid rgba(14,165,233,.2);border-radius:16px;background:#0ea5e90f}.apl-tip__icon{flex-shrink:0;display:inline-flex;color:#0284c7;margin-top:1px}.apl-tip__title{display:block;font-size:14px;font-weight:600;color:var(--cf-color-text-heading);margin-bottom:2px}.apl-tip__body{margin:0;font-size:12px;color:var(--cf-color-text-secondary);line-height:1.625}.apl-tip__body a{color:var(--cf-color-accent-text);font-weight:600;text-decoration:none}.apl-tip__body a:hover{text-decoration:underline}.apl-faq{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.apl-faq__item{border:1px solid var(--cf-color-border-subtle);border-radius:12px;background:var(--cf-color-surface-solid);overflow:hidden}.apl-faq__item.is-open{border-color:var(--cf-color-accent-subtle)}.apl-faq__item.is-open .apl-faq__a{display:block}.apl-faq__item.is-open .apl-faq__chev{transform:rotate(180deg)}.apl-faq__q{width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;background:transparent;border:none;text-align:left;font-size:14px;font-weight:600;font-family:inherit;color:var(--cf-color-text-heading);cursor:pointer}.apl-faq__q:hover{background:var(--cf-color-hover-subtle)}.apl-faq__chev{flex-shrink:0;color:var(--cf-color-text-muted);transition:transform .15s ease}.apl-faq__a{display:none;font-size:14px;line-height:1.625;color:var(--cf-color-text-secondary);border-left:2px solid var(--cf-color-accent-subtle);margin:0 0 0 16px;padding:0 16px 12px 12px}.ftc-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px}@media(max-width:900px){.ftc-grid{grid-template-columns:1fr}}.ftc-card{padding:20px;border:1px solid var(--cf-color-border-subtle);border-radius:16px;background:var(--cf-color-surface-solid)}.ftc-pair{display:grid;grid-template-columns:1fr auto 1fr;gap:8px;align-items:end}.ftc-airport{display:flex;flex-direction:column;gap:6px;min-width:0}.ftc-airport__label{font-size:12px;color:var(--cf-color-text-muted);font-weight:500}.ftc-airport__row{display:flex;align-items:center;gap:8px;padding:8px 12px;border:1px solid var(--cf-color-border);border-radius:12px;background:var(--cf-color-surface-solid);transition:border-color .15s ease,box-shadow .15s ease}.ftc-airport__row:focus-within{border-color:var(--cf-color-accent-muted);box-shadow:0 0 0 3px var(--cf-color-accent-ghost)}.ftc-airport__pin{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;background:#0ea5e91a;color:var(--cf-color-accent-text);flex-shrink:0}.ftc-airport__main{display:flex;flex-direction:column;min-width:0;flex:1}.ftc-airport__iata{border:none;outline:none;background:transparent;padding:0;margin:0;width:100%;font-family:ui-monospace,Cascadia Code,Source Code Pro,monospace;font-size:20px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--cf-color-text-heading)}.ftc-airport__iata::placeholder{color:var(--cf-color-text-placeholder)}.ftc-airport__city{font-size:12px;color:var(--cf-color-text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ftc-swap{width:36px;height:36px;margin-bottom:4px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--cf-color-border);border-radius:50%;background:var(--cf-color-surface-solid);color:var(--cf-color-text-secondary);cursor:pointer;transition:background .15s ease,color .15s ease}.ftc-swap:hover{background:var(--cf-color-hover);color:var(--cf-color-text-heading)}.ftc-calc-btn{margin-top:16px;width:100%;height:48px;display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--cf-color-accent);color:#fff;border:none;border-radius:12px;font-size:14px;font-weight:600;cursor:pointer;font-family:inherit;transition:filter .15s ease}.ftc-calc-btn:hover{filter:brightness(1.05)}.ftc-popular-label{margin:16px 0 8px;font-size:14px;font-weight:600;color:var(--cf-color-text-heading)}.ftc-routes{display:flex;flex-wrap:wrap;gap:8px}.ftc-route-chip{padding:6px 12px;border:1px solid var(--cf-color-accent-subtle);border-radius:9999px;background:var(--cf-color-accent-ghost);color:var(--cf-color-accent-text);font-size:14px;font-weight:500;font-family:inherit;cursor:pointer;transition:background .15s ease}.ftc-route-chip:hover{background:var(--cf-color-accent-subtle)}.ftc-route-chip span{opacity:.7;margin:0 4px}.ftc-result{display:flex;flex-direction:column;gap:12px;padding:16px;border:1px solid var(--cf-color-border-subtle);border-radius:16px;background:var(--cf-color-surface-solid)}.ftc-result__hero{padding:16px;border-radius:12px;background:#22c55e1a;border:1px solid rgba(34,197,94,.2);display:flex;flex-direction:column;gap:4px}.ftc-result__label{font-size:12px;color:#15803d;font-weight:600;text-transform:uppercase;letter-spacing:.025em}.ftc-result__time{font-size:2.5rem;font-weight:700;color:#15803d;line-height:1.05;font-variant-numeric:tabular-nums}.ftc-result__sub{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:var(--cf-color-text-secondary)}.ftc-result__split{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:12px;border:1px solid var(--cf-color-border-subtle);border-radius:12px;background:var(--cf-color-surface-solid)}.ftc-result__stat{display:grid;grid-template-columns:36px 1fr;grid-template-rows:auto auto auto;column-gap:10px;align-items:center}.ftc-result__stat-icon{grid-row:1/span 3;width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%}.ftc-result__stat-icon--blue{background:#0ea5e91f;color:#0284c7}.ftc-result__stat-label{grid-column:2;font-size:12px;color:var(--cf-color-text-muted);font-weight:500}.ftc-result__stat-value{grid-column:2;font-size:16px;font-weight:700;color:var(--cf-color-text-heading);font-variant-numeric:tabular-nums}.ftc-result__stat-sub{grid-column:2;font-size:12px;color:var(--cf-color-text-muted)}.ftc-result__note{display:inline-flex;align-items:center;gap:8px;padding:10px 12px;background:#0ea5e914;border:1px solid rgba(14,165,233,.18);border-radius:12px;font-size:12px;color:var(--cf-color-text-secondary)}.ftc-result__note svg{color:var(--cf-color-accent-text);flex-shrink:0}.ftc-explain{position:relative;padding:8px 0 12px}.ftc-explain__head{display:flex;align-items:center;gap:8px;margin-bottom:8px}.ftc-explain__title{margin:0;font-size:20px;font-weight:700;color:var(--cf-color-text-heading)}.ftc-explain__info{display:inline-flex;color:var(--cf-color-text-muted)}.ftc-explain p{margin:0 0 12px;font-size:14px;line-height:1.625;color:var(--cf-color-text-secondary);max-width:720px}.ftc-formula{display:inline-block;padding:12px 16px;margin:4px 0 12px;background:var(--cf-color-surface-solid);border:1px solid var(--cf-color-border-subtle);border-radius:12px;font-family:ui-monospace,Cascadia Code,Source Code Pro,monospace;font-size:14px;color:var(--cf-color-text-heading);white-space:pre;overflow-x:auto;max-width:100%}.ftc-block-title{margin:0 0 12px;font-size:20px}.ftc-not-included{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}@media(max-width:900px){.ftc-not-included{grid-template-columns:repeat(2,1fr)}}@media(max-width:480px){.ftc-not-included{grid-template-columns:1fr}}.ftc-noi-card{padding:16px;border:1px solid var(--cf-color-border-subtle);border-radius:16px;background:var(--cf-color-surface-solid)}.ftc-noi-card__icon{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;margin-bottom:12px}.ftc-noi-card__icon--blue{background:#0ea5e91f;color:#0284c7}.ftc-noi-card__icon--green{background:#22c55e24;color:#15803d}.ftc-noi-card__icon--purple{background:#8b5cf624;color:#7c3aed}.ftc-noi-card__icon--amber{background:#f59e0b24;color:#d97706}.ftc-noi-card__title{margin:0 0 6px;font-size:14px;font-weight:600;color:var(--cf-color-text-heading)}.ftc-noi-card__body{margin:0;font-size:12px;line-height:1.625;color:var(--cf-color-text-secondary)}.ftc-noi-foot{display:inline-flex;align-items:center;gap:8px;margin-top:12px;font-size:12px;color:var(--cf-color-text-muted)}.ftc-noi-foot svg{color:var(--cf-color-accent-text);flex-shrink:0}.ftc-tip{display:flex;align-items:center;gap:12px;padding:12px 16px;border:1px solid rgba(14,165,233,.2);border-radius:12px;background:#0ea5e90f;flex-wrap:wrap}.ftc-tip__icon{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;background:#f59e0b29;color:#d97706;flex-shrink:0}.ftc-tip__body{margin:0;flex:1;font-size:14px;color:var(--cf-color-text-secondary)}.ftc-tip__body strong{color:var(--cf-color-text-heading);font-weight:600}.ftc-tip__cta{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;background:var(--cf-color-surface-solid);border:1px solid var(--cf-color-border);border-radius:12px;color:var(--cf-color-accent-text);font-size:14px;font-weight:600;text-decoration:none}.ftc-tip__cta:hover{background:var(--cf-color-hover);text-decoration:none}.airport-autofill{position:absolute;top:calc(100% + 4px);left:0;right:0;z-index:30;list-style:none;margin:0;padding:4px;border:1px solid var(--cf-color-border);border-radius:12px;background:var(--cf-color-surface-solid);box-shadow:var(--cf-shadow-md);max-height:320px;overflow-y:auto}.airport-autofill[hidden]{display:none}.airport-autofill__item{display:grid;grid-template-columns:56px 1fr;align-items:center;gap:10px;padding:8px 10px;border-radius:8px;cursor:pointer;user-select:none}.airport-autofill__item:hover,.airport-autofill__item.is-active{background:var(--cf-color-hover)}.airport-autofill__iata{font-family:ui-monospace,Cascadia Code,Source Code Pro,monospace;font-size:14px;font-weight:700;letter-spacing:.04em;color:var(--cf-color-accent-text);text-align:center;padding:4px 6px;border-radius:8px;background:var(--cf-color-accent-ghost)}.airport-autofill__city{display:flex;flex-direction:column;min-width:0;font-size:14px}.airport-autofill__city strong{font-weight:600;color:var(--cf-color-text-heading);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.airport-autofill__meta{font-size:12px;color:var(--cf-color-text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ppi-card{padding:20px;border:1px solid var(--cf-color-border-subtle);border-radius:16px;background:var(--cf-color-surface-solid)}.ppi-podium{display:flex;flex-direction:column;gap:6px}.ppi-podium__row{display:grid;grid-template-columns:56px 32px 1fr auto;align-items:center;gap:12px;padding:12px 16px;border:1px solid var(--cf-color-border-subtle);border-radius:12px;background:var(--cf-color-surface-solid-dim)}.ppi-podium__row--rank-1{background:#f59e0b14;border-color:#f59e0b40}.ppi-podium__row--rank-2{background:#94a3b81a;border-color:#94a3b84d}.ppi-podium__row--rank-3{background:#b4530914;border-color:#b4530938}.ppi-podium__rank{font-family:ui-monospace,Cascadia Code,Source Code Pro,monospace;font-size:20px;font-weight:700;color:var(--cf-color-text-heading);text-align:center}.ppi-podium__flag{font-size:22px;line-height:1}.ppi-podium__name{font-size:16px;font-weight:600;color:var(--cf-color-text-heading);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ppi-podium__score{display:inline-flex;align-items:baseline;gap:6px;font-size:12px;color:var(--cf-color-text-muted)}.ppi-podium__score strong{font-size:20px;color:#15803d;font-weight:700;font-variant-numeric:tabular-nums}.ppi-controls{display:grid;grid-template-columns:minmax(220px,320px) 1fr;gap:12px;align-items:center;margin-bottom:12px}@media(max-width:720px){.ppi-controls{grid-template-columns:1fr}}.ppi-search{display:flex;align-items:center;gap:8px;height:40px;padding:0 12px;border:1px solid var(--cf-color-border);border-radius:12px;background:var(--cf-color-surface-solid);color:var(--cf-color-text-muted)}.ppi-search input{flex:1;border:none;outline:none;background:transparent;font-family:inherit;font-size:14px;color:var(--cf-color-text-heading)}.ppi-search input::placeholder{color:var(--cf-color-text-placeholder)}.ppi-region-chips{display:flex;flex-wrap:wrap;gap:6px}.ppi-region-chip{padding:4px 10px;border:1px solid var(--cf-color-border);border-radius:9999px;background:var(--cf-color-surface-solid);color:var(--cf-color-text-secondary);font-size:12px;font-weight:500;font-family:inherit;cursor:pointer;transition:background .15s ease,color .15s ease,border-color .15s ease}.ppi-region-chip:hover{background:var(--cf-color-hover)}.ppi-region-chip.is-active{background:var(--cf-color-accent-ghost);color:var(--cf-color-accent-text);border-color:var(--cf-color-accent-subtle)}.ppi-table-wrap{overflow-x:auto;border:1px solid var(--cf-color-border-subtle);border-radius:12px}.ppi-table{width:100%;border-collapse:collapse;font-size:14px}.ppi-table th,.ppi-table td{padding:8px 12px;text-align:left;border-bottom:1px solid var(--cf-color-border-subtle)}.ppi-table th{font-size:12px;font-weight:600;color:var(--cf-color-text-muted);text-transform:uppercase;letter-spacing:.025em;background:var(--cf-color-surface-solid-dim)}.ppi-table tr:last-child td{border-bottom:none}.ppi-table tbody tr:hover{background:var(--cf-color-hover-subtle)}.ppi-table__rank{font-family:ui-monospace,Cascadia Code,Source Code Pro,monospace;font-weight:700;color:var(--cf-color-text-heading);width:80px}.ppi-table__num{text-align:right;font-variant-numeric:tabular-nums}.ppi-table__country{display:inline-flex;align-items:center;gap:8px;color:var(--cf-color-text-heading);text-decoration:none;font-weight:500}.ppi-table__country span:first-child{font-size:16px}.ppi-table__country:hover{color:var(--cf-color-accent-text);text-decoration:underline}.ppi-empty{margin:16px 0 0;text-align:center;font-size:14px;color:var(--cf-color-text-muted)}.ppi-empty.is-hidden{display:none}.dnv-filters{display:flex;flex-direction:column;gap:12px}.dnv-filter{max-width:480px}.dnv-filter-group{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.dnv-filter-group__label{font-size:12px;font-weight:600;color:var(--cf-color-text-muted);text-transform:uppercase;letter-spacing:.025em;flex-shrink:0}.dnv-filter-group__chips{display:flex;flex-wrap:wrap;gap:6px}.dnv-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:12px}.dnv-card{display:flex;flex-direction:column;gap:12px;padding:16px;border:1px solid var(--cf-color-border-subtle);border-radius:16px;background:var(--cf-color-surface-solid);transition:border-color .15s ease,transform .15s ease}.dnv-card:hover{border-color:var(--cf-color-accent-muted);transform:translateY(-2px)}.dnv-card__head{display:grid;grid-template-columns:36px 1fr auto;gap:10px;align-items:center}.dnv-card__flag{font-size:26px;line-height:1}.dnv-card__heading{display:flex;flex-direction:column;min-width:0}.dnv-card__country{margin:0;font-size:16px;font-weight:600;color:var(--cf-color-text-heading)}.dnv-card__visa{font-size:12px;color:var(--cf-color-text-muted)}.dnv-card__confidence{font-size:10px;font-weight:600;padding:2px 8px;border-radius:9999px;white-space:nowrap}.dnv-card__confidence--medium{background:#f59e0b24;color:#b45309}.dnv-card__confidence--low{background:#f43f5e24;color:#be123c}.dnv-card__stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;padding:12px;border-radius:12px;background:var(--cf-color-surface-solid-dim);border:1px solid var(--cf-color-border-subtle)}@media(max-width:480px){.dnv-card__stats{grid-template-columns:1fr}}.dnv-stat{display:flex;flex-direction:column;gap:2px;min-width:0}.dnv-stat__label{font-size:10px;text-transform:uppercase;letter-spacing:.025em;font-weight:600;color:var(--cf-color-text-muted)}.dnv-stat__value{font-size:14px;font-weight:700;color:var(--cf-color-text-heading);font-variant-numeric:tabular-nums}.dnv-stat__sub{font-size:11px;color:var(--cf-color-text-muted)}.dnv-card__pills{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:4px}.dnv-pill{font-size:11px;font-weight:600;padding:3px 8px;border-radius:9999px}.dnv-pill--green{background:#22c55e1f;color:#15803d}.dnv-pill--blue{background:#0ea5e91f;color:#0284c7}.dnv-pill--amber{background:#f59e0b24;color:#b45309}.dnv-card__notes{margin:0;font-size:12px;line-height:1.625;color:var(--cf-color-text-secondary)}.dnv-card__foot{display:flex;align-items:center;justify-content:space-between;gap:8px;padding-top:8px;border-top:1px solid var(--cf-color-border-subtle)}.dnv-card__as-of{font-size:11px;color:var(--cf-color-text-muted)}.dnv-card__official{display:inline-flex;align-items:center;gap:4px;font-size:12px;font-weight:600;color:var(--cf-color-accent-text);text-decoration:none}.dnv-card__official:hover{text-decoration:underline}.vc-pair{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;align-items:end;gap:8px}@media(max-width:720px){.vc-pair{grid-template-columns:1fr}.vc-pair .dst-calc{width:100%}}.vc-flag{font-size:18px;background:transparent!important;width:28px;height:28px;text-align:center;line-height:28px;padding:0!important}.vc-flag-cell{background:transparent!important;font-size:18px!important;padding:0!important;font-family:inherit!important;letter-spacing:0!important}.vc-country-input{border:none;outline:none;background:transparent;padding:0;margin:0;width:100%;font-family:inherit;font-size:16px;font-weight:600;color:var(--cf-color-text-heading)}.vc-country-input::placeholder{color:var(--cf-color-text-placeholder);font-weight:400}.vc-result-empty{display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;min-height:240px;background:var(--cf-color-surface-solid);border-color:var(--cf-color-border-subtle)}.vc-result-empty.is-hidden{display:none}.vc-empty-msg{margin:8px 0 0;font-size:14px;color:var(--cf-color-text-muted)}.vc-result{display:flex;flex-direction:column;gap:12px;padding:20px;border:1px solid var(--cf-color-border-subtle);border-radius:16px;background:var(--cf-color-surface-solid)}.vc-result.is-hidden{display:none}.vc-result__hero{padding:16px;border-radius:12px;display:flex;flex-direction:column;gap:4px}.vc-result__hero[data-color=green]{background:#22c55e1a;border:1px solid rgba(34,197,94,.2)}.vc-result__hero[data-color=green] .vc-result__status,.vc-result__hero[data-color=green] .vc-result__headline{color:#15803d}.vc-result__hero[data-color=blue]{background:#0ea5e91a;border:1px solid rgba(14,165,233,.2)}.vc-result__hero[data-color=blue] .vc-result__status,.vc-result__hero[data-color=blue] .vc-result__headline{color:#0284c7}.vc-result__hero[data-color=amber]{background:#f59e0b1a;border:1px solid rgba(245,158,11,.22)}.vc-result__hero[data-color=amber] .vc-result__status,.vc-result__hero[data-color=amber] .vc-result__headline{color:#b45309}.vc-result__hero[data-color=rose]{background:#f43f5e1a;border:1px solid rgba(244,63,94,.22)}.vc-result__hero[data-color=rose] .vc-result__status,.vc-result__hero[data-color=rose] .vc-result__headline{color:#be123c}.vc-result__status{font-size:12px;font-weight:700;letter-spacing:.05em;text-transform:uppercase}.vc-result__headline{font-size:20px;font-weight:700;line-height:1.2}.vc-result__duration{font-size:12px;color:var(--cf-color-text-secondary)}.vc-result__grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:12px;border:1px solid var(--cf-color-border-subtle);border-radius:12px;background:var(--cf-color-surface-solid-dim)}@media(max-width:480px){.vc-result__grid{grid-template-columns:1fr}}.vc-stat{display:flex;flex-direction:column;gap:2px;min-width:0}.vc-stat__label{font-size:12px;color:var(--cf-color-text-muted)}.vc-stat__val{font-size:14px;font-weight:600;color:var(--cf-color-text-heading);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.vc-tips{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px}.vc-tips li{display:flex;gap:8px;font-size:14px;line-height:1.625;color:var(--cf-color-text-secondary)}.dst-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:16px}@media(max-width:980px){.dst-grid{grid-template-columns:1fr}}.dst-form{padding:20px;border:1px solid var(--cf-color-border-subtle);border-radius:16px;background:var(--cf-color-surface-solid)}.dst-pair{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) auto;align-items:end;gap:8px}@media(max-width:720px){.dst-pair{grid-template-columns:1fr auto 1fr}.dst-pair .dst-calc{grid-column:1/-1;margin-top:8px}}.dst-clear{width:24px;height:24px;display:inline-flex;align-items:center;justify-content:center;border:none;background:transparent;color:var(--cf-color-text-muted);cursor:pointer;border-radius:50%;flex-shrink:0;margin-left:auto}.dst-clear:hover{background:var(--cf-color-hover);color:var(--cf-color-text-heading)}.dst-calc{height:56px;padding:0 20px;display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--cf-color-accent);color:#fff;border:none;border-radius:12px;font-size:14px;font-weight:600;font-family:inherit;cursor:pointer;white-space:nowrap;margin-bottom:0;transition:filter .15s ease}.dst-calc:hover{filter:brightness(1.05)}.dst-popular{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:16px}.dst-popular__label{font-size:14px;font-weight:500;color:var(--cf-color-text-secondary)}.dst-popular__chips{display:flex;flex-wrap:wrap;gap:8px}.dst-route-chip{padding:6px 12px;border:1px solid var(--cf-color-accent-subtle);border-radius:9999px;background:var(--cf-color-accent-ghost);color:var(--cf-color-accent-text);font-size:14px;font-weight:500;font-family:inherit;cursor:pointer;transition:background .15s ease}.dst-route-chip:hover{background:var(--cf-color-accent-subtle)}.dst-route-chip span{opacity:.7;margin:0 4px}.dst-result{position:relative;padding:20px;border:1px solid rgba(34,197,94,.2);border-radius:16px;background:radial-gradient(circle at 85% 35%,rgba(34,197,94,.08),transparent 55%),#22c55e0d;display:flex;flex-direction:column;gap:8px}.dst-result__label{font-size:12px;color:#15803d;font-weight:600;text-transform:uppercase;letter-spacing:.025em}.dst-result__big{font-size:2.75rem;font-weight:700;color:#15803d;line-height:1;font-variant-numeric:tabular-nums}.dst-result__sub{font-size:16px;color:#15803d;font-weight:500}.dst-result__sub strong{font-weight:600}.dst-result__dot{margin:0 6px;color:var(--cf-color-text-muted)}.dst-result__chips{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:12px;padding:12px;border-radius:12px;background:var(--cf-color-surface-solid);border:1px solid var(--cf-color-border-subtle)}@media(max-width:560px){.dst-result__chips{grid-template-columns:1fr}}.dst-result__chip{display:flex;align-items:center;gap:8px;min-width:0}.dst-result__chip>div{display:flex;flex-direction:column;min-width:0}.dst-result__chip-icon{width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;background:#0ea5e91f;color:#0284c7;flex-shrink:0}.dst-result__chip-label{font-size:12px;color:var(--cf-color-text-muted)}.dst-result__chip-val{font-size:14px;font-weight:600;color:var(--cf-color-text-heading);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dst-result__note{display:inline-flex;align-items:center;gap:8px;margin-top:8px;padding:10px 12px;background:#0ea5e914;border:1px solid rgba(14,165,233,.18);border-radius:12px;font-size:12px;color:var(--cf-color-text-secondary)}.dst-result__note svg{color:var(--cf-color-accent-text);flex-shrink:0}.dst-info-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:16px}@media(max-width:980px){.dst-info-grid{grid-template-columns:1fr}}.dst-card{padding:20px;border:1px solid var(--cf-color-border-subtle);border-radius:16px;background:var(--cf-color-surface-solid)}.dst-card__head{display:flex;align-items:center;gap:10px;margin-bottom:12px}.dst-card__head-icon{width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;flex-shrink:0}.dst-card__head-icon--blue{background:#0ea5e91f;color:#0284c7}.dst-card__head-icon--green{background:#22c55e24;color:#15803d}.dst-card__head-pi{font-family:ui-monospace,Cascadia Code,Source Code Pro,monospace;font-size:20px;font-weight:700;line-height:1}.dst-card__title{margin:0;font-size:16px;font-weight:600;color:var(--cf-color-text-heading)}.dst-card p{margin:0 0 12px;font-size:14px;line-height:1.625;color:var(--cf-color-text-secondary)}.dst-card p:last-child{margin-bottom:0}.dst-card__small{font-size:12px;color:var(--cf-color-text-muted)}.dst-formula{display:block;padding:12px 16px;margin:4px 0 12px;background:#0ea5e90f;border:1px solid rgba(14,165,233,.18);border-radius:12px;font-family:ui-monospace,Cascadia Code,Source Code Pro,monospace;font-size:12px;color:var(--cf-color-text-heading);white-space:pre;overflow-x:auto}.dst-uses{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px}.dst-uses li{display:flex;gap:10px}.dst-uses li>div{display:flex;flex-direction:column;gap:2px;min-width:0}.dst-uses__icon{flex-shrink:0;width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%}.dst-uses__icon--blue{background:#0ea5e91f;color:#0284c7}.dst-uses__icon--green{background:#22c55e24;color:#15803d}.dst-uses__icon--amber{background:#f59e0b24;color:#d97706}.dst-uses__title{font-size:14px;font-weight:600;color:var(--cf-color-text-heading)}.dst-uses__body{font-size:12px;color:var(--cf-color-text-muted);line-height:1.625}.tools-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;list-style:none;padding:0;margin:0}@media(max-width:720px){.tools-grid{grid-template-columns:1fr}}.tool-card-tile{display:grid;grid-template-columns:56px 1fr 28px;align-items:center;gap:12px;padding:16px;border:1px solid var(--cf-color-border-subtle);border-radius:16px;background:var(--cf-color-surface-solid);text-decoration:none;color:inherit;transition:border-color .15s ease,transform .15s ease}.tool-card-tile:hover:not(.tool-card-tile--soon){border-color:var(--cf-color-accent-muted);transform:translateY(-2px)}.tool-card-tile:hover:not(.tool-card-tile--soon) .tool-card-tile__chev{color:var(--cf-color-accent-text);transform:translate(2px)}.tool-card-tile--soon{opacity:.65;cursor:default;pointer-events:none}.tool-card-tile__icon{width:44px;height:44px;display:inline-flex;align-items:center;justify-content:center;border-radius:12px;flex-shrink:0}.tool-card-tile__icon--blue{background:#0ea5e91f;color:#0284c7}.tool-card-tile__icon--green{background:#22c55e24;color:#15803d}.tool-card-tile__icon--purple{background:#8b5cf624;color:#7c3aed}.tool-card-tile__icon--amber{background:#f59e0b24;color:#d97706}.tool-card-tile__icon--rose{background:#f43f5e24;color:#e11d48}.tool-card-tile__body{display:flex;flex-direction:column;gap:2px;min-width:0}.tool-card-tile__name{margin:0;font-size:16px;font-weight:700;color:var(--cf-color-text-heading);line-height:1.2}.tool-card-tile__desc{margin:0;font-size:14px;color:var(--cf-color-text-secondary);line-height:1.5}.tool-card-tile__meta{margin-top:4px;font-size:12px;font-weight:600;color:var(--cf-color-accent-text)}.tool-card-tile__meta--soon{color:#15803d}.tool-card-tile__chev{display:inline-flex;align-items:center;justify-content:center;color:var(--cf-color-text-muted);transition:color .15s ease,transform .15s ease}.tools-callout{position:relative;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 20px;border:1px solid rgba(14,165,233,.2);border-radius:16px;background:#0ea5e90f;overflow:hidden}.tools-callout__head{display:flex;align-items:center;gap:12px;z-index:1}.tools-callout__icon{width:40px;height:40px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;background:#f59e0b2e;color:#d97706;flex-shrink:0}.tools-callout__title{font-size:16px;font-weight:600;color:var(--cf-color-text-heading);display:block}.tools-callout__body{margin:2px 0 0;font-size:14px;color:var(--cf-color-text-secondary)}.tools-callout__plane{color:var(--cf-color-accent-muted);opacity:.5;flex-shrink:0}@media(max-width:720px){.tools-callout__plane{display:none}}.tools-more{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:12px}@media(max-width:900px){.tools-more{grid-template-columns:repeat(2,1fr)}}@media(max-width:480px){.tools-more{grid-template-columns:1fr}}.tools-more__tile{display:grid;grid-template-columns:36px 1fr 16px;align-items:center;gap:10px;padding:12px 16px;border:1px solid var(--cf-color-border-subtle);border-radius:16px;background:var(--cf-color-surface-solid);text-decoration:none;color:inherit;transition:border-color .15s ease,transform .15s ease}.tools-more__tile:hover{border-color:var(--cf-color-accent-muted);transform:translateY(-2px);text-decoration:none}.tools-more__tile:hover .tools-more__chev{color:var(--cf-color-accent-text)}.tools-more__tile>div{display:flex;flex-direction:column;min-width:0}.tools-more__icon{width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;border-radius:12px;background:var(--cf-color-accent-ghost);color:var(--cf-color-accent-text);flex-shrink:0}.tools-more__label{font-size:14px;font-weight:600;color:var(--cf-color-text-heading)}.tools-more__desc{font-size:12px;color:var(--cf-color-text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tools-more__chev{color:var(--cf-color-text-muted);display:inline-flex;transition:color .15s ease}.tool-tile{display:flex;align-items:flex-start;gap:12px;padding:16px;border:1px solid var(--cf-color-border-subtle);border-radius:16px;background:var(--cf-color-surface-solid);text-decoration:none;color:inherit;transition:border-color .15s ease,transform .15s ease}.tool-tile:hover:not(.tool-tile--soon){border-color:var(--cf-color-accent-muted);transform:translateY(-2px)}.tool-tile--soon{opacity:.55;cursor:default;pointer-events:none}.tool-tile__icon{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:12px;background:var(--cf-color-accent-ghost);color:var(--cf-color-accent-text);flex-shrink:0}.tool-tile__body{min-width:0}.tool-tile__head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:4px}.tool-tile__name{margin:0;font-size:14px;font-weight:600;color:var(--cf-color-text-heading)}.tool-tile__badge{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;padding:2px 8px;border-radius:9999px;background:var(--cf-color-surface-solid-dim);color:var(--cf-color-text-muted);white-space:nowrap}.tool-tile__badge--soon{background:var(--cf-color-accent-ghost);color:var(--cf-color-accent-text)}.tool-tile__desc{margin:0;font-size:12px;color:var(--cf-color-text-muted);line-height:1.5}.sidebar{display:none;flex-shrink:0;width:340px;background:var(--cf-color-surface);border-right:1px solid var(--cf-color-border-subtle);box-shadow:var(--cf-shadow-sm);flex-direction:column;overflow:hidden}@media(min-width:768px){.sidebar{display:flex}}.sidebar__content{flex:1;overflow-y:auto;display:flex;flex-direction:column}.discovery{display:flex;flex-direction:column;flex:1;padding:24px 20px;gap:24px}.discovery__section{display:flex;flex-direction:column}.discovery__section--center{align-items:center;margin-top:8px}.discovery__heading{font-size:24px;font-weight:600;color:var(--cf-color-text-heading);margin-bottom:4px}.discovery__subtitle{font-size:14px;color:var(--cf-color-text-dimmed)}.discovery__label{font-size:14px;font-weight:500;color:var(--cf-color-text-dimmed);margin-bottom:12px}.discovery__ranking{display:flex;flex-direction:column}.discovery__rank-item{display:flex;align-items:center;gap:12px;padding:8px 12px;border-radius:12px;border:none;background:transparent;color:inherit;font:inherit;text-align:left;transition:background-color .15s ease;cursor:pointer}.discovery__rank-item:hover{background:var(--cf-color-hover)}.discovery__rank-item:hover .discovery__rank-city{color:var(--cf-color-text-heading)}.discovery__rank-num{width:18px;font-size:12px;font-weight:600;color:var(--cf-color-text-dimmed);text-align:center;flex-shrink:0}.discovery__rank-info{flex:1;min-width:0}.discovery__rank-city{display:block;font-size:14px;color:var(--cf-color-text-primary)}.discovery__rank-meta{display:block;font-size:12px;color:var(--cf-color-text-dimmed)}.discovery__rank-count{font-size:12px;font-weight:500;color:var(--cf-color-text-muted);flex-shrink:0}.discovery__routes{display:flex;flex-direction:column;gap:4px}.discovery__route{display:flex;align-items:center;padding:10px 12px;border-radius:8px;border:none;background:transparent;cursor:pointer;transition:all .15s ease}.discovery__route:hover{background:var(--cf-color-hover)}.discovery__route-pair{display:flex;align-items:center;gap:6px}.discovery__route-city{font-size:14px;color:var(--cf-color-text-secondary)}.discovery__route-arrow{color:var(--cf-color-text-dimmed);flex-shrink:0}.discovery__surprise{display:inline-flex;align-items:center;gap:8px;padding:10px 20px;border-radius:9999px;border:1px solid var(--cf-color-accent-subtle);background:transparent;color:var(--cf-color-accent-text);font-size:14px;font-weight:500;cursor:pointer;transition:all .15s ease}.discovery__surprise:hover{background:var(--cf-color-accent-ghost);border-color:var(--cf-color-accent-muted)}.discovery__surprise-icon{flex-shrink:0}.profile{display:flex;flex-direction:column;flex:1;padding:24px 20px;gap:24px;overflow-y:auto}.profile__coverage{display:flex;align-items:center;gap:16px}.profile__coverage-info{display:flex;flex-direction:column;gap:2px}.profile__coverage-label{font-size:12px;font-weight:500;color:var(--cf-color-text-dimmed);text-transform:uppercase;letter-spacing:.05em}.profile__coverage-desc{font-size:14px;color:var(--cf-color-text-primary);font-weight:500}.profile__ring-wrapper{position:relative;width:56px;height:56px;flex-shrink:0}.profile__ring{width:56px;height:56px;transform:rotate(-90deg)}.profile__ring-bg{fill:none;stroke:var(--cf-color-border-subtle);stroke-width:3.5}.profile__ring-progress{fill:none;stroke:var(--cf-color-accent);stroke-width:3.5;stroke-linecap:round;transition:stroke-dashoffset 1s ease-out}.profile__ring-text{position:absolute;inset:0;display:flex;align-items:center;justify-content:center}.profile__ring-value{font-size:12px;font-weight:700;color:var(--cf-color-text-heading);line-height:1}.profile__quick-stats{display:flex;align-items:center;padding:16px 0;border-top:1px solid var(--cf-color-border-subtle);border-bottom:1px solid var(--cf-color-border-subtle)}.profile__quick-stat{display:flex;flex-direction:column;align-items:center;gap:4px;flex:1}.profile__quick-stat-value{font-size:20px;font-weight:700;color:var(--cf-color-text-heading);line-height:1}.profile__quick-stat-label{font-size:12px;color:var(--cf-color-text-dimmed);line-height:1}.profile__quick-stat-divider{width:1px;height:28px;background:var(--cf-color-border-subtle);flex-shrink:0}.profile__section{display:flex;flex-direction:column;gap:12px}.profile__section-header{display:flex;align-items:center;justify-content:space-between}.profile__section-title{font-size:12px;font-weight:500;color:var(--cf-color-text-dimmed);text-transform:uppercase;letter-spacing:.05em}.profile__destinations{display:flex;flex-direction:column;gap:4px}.profile__dest-chip{display:flex;align-items:center;gap:12px;padding:8px 12px;background:transparent;border:none;border-radius:8px;font-family:inherit;text-align:left;color:inherit;transition:background-color .15s ease;cursor:pointer}.profile__dest-chip:hover{background:var(--cf-color-hover)}.profile__dest-chip:hover .profile__dest-name{color:var(--cf-color-text-heading)}.profile__dest-code{font-family:ui-monospace,Cascadia Code,Source Code Pro,monospace;font-size:12px;font-weight:600;color:var(--cf-color-accent-text);min-width:30px}.profile__dest-name{font-size:14px;color:var(--cf-color-text-primary);transition:color .15s ease;cursor:pointer}.profile__add-btn{display:inline-flex;align-items:center;gap:6px;padding:4px 12px;border-radius:9999px;border:1px solid var(--cf-color-accent-subtle);background:transparent;color:var(--cf-color-accent-text);font-size:12px;font-weight:500;font-family:inherit;transition:all .15s ease;cursor:pointer}.profile__add-btn:hover{background:var(--cf-color-accent-ghost);border-color:var(--cf-color-accent-muted)}.profile__add-icon{width:14px;height:14px;flex-shrink:0}.profile__continents{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.profile__continent{display:flex;align-items:center;gap:6px;padding:8px 10px;border-radius:8px;background:transparent;border:none;font-size:12px;font-family:inherit;color:var(--cf-color-text-dimmed);cursor:default;transition:all .15s ease;cursor:pointer}.profile__continent--reached{color:var(--cf-color-text-primary);cursor:pointer}.profile__continent--reached:hover{background:var(--cf-color-hover);color:var(--cf-color-text-heading)}.profile__continent--active{background:var(--cf-color-active-highlight);color:var(--cf-color-accent-text)}.profile__continent--active:hover{background:var(--cf-color-active-highlight)}.profile__continent-dot{width:5px;height:5px;border-radius:50%;background:var(--cf-color-text-ghost);flex-shrink:0}.profile__continent--reached .profile__continent-dot{background:var(--cf-color-accent)}.profile__continent--active .profile__continent-dot{background:var(--cf-color-accent-text)}.profile__highlights{display:flex;flex-direction:column;gap:8px}.profile__highlight{display:flex;flex-direction:column;gap:4px;padding:12px;border-radius:8px;background:var(--cf-color-surface-solid);border:1px solid var(--cf-color-border-subtle)}.profile__highlight-top{display:flex;align-items:center;justify-content:space-between}.profile__highlight-label{font-size:12px;color:var(--cf-color-text-dimmed)}.profile__highlight-duration{font-size:12px;font-weight:500;color:var(--cf-color-text-muted)}.profile__highlight-route{display:flex;align-items:center;gap:6px}.profile__highlight-code{font-family:ui-monospace,Cascadia Code,Source Code Pro,monospace;font-size:14px;font-weight:600;color:var(--cf-color-text-heading)}.profile__highlight-arrow{color:var(--cf-color-text-dimmed);flex-shrink:0}.profile__highlight-cities{font-size:12px;color:var(--cf-color-text-muted)}.profile__highlight-value{font-size:16px;font-weight:600;color:var(--cf-color-text-heading)}.profile__share{margin-top:auto;padding-top:8px}.profile__share-btn{display:flex;align-items:center;gap:12px;width:100%;padding:12px 16px;border-radius:12px;border:1px solid var(--cf-color-border-subtle);background:var(--cf-color-surface-solid);font-family:inherit;text-align:left;transition:all .15s ease;cursor:pointer}.profile__share-btn:hover{border-color:var(--cf-color-accent-subtle);background:var(--cf-color-active-highlight)}.profile__share-icon-ring{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;background:var(--cf-color-accent-ghost);color:var(--cf-color-accent-text);flex-shrink:0}.profile__share-text{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}.profile__share-title{font-size:14px;font-weight:500;color:var(--cf-color-text-heading)}.profile__share-desc{font-size:12px;color:var(--cf-color-text-dimmed)}.profile__share-chevron{color:var(--cf-color-text-dimmed);flex-shrink:0}.profile__empty{display:flex;flex-direction:column;align-items:center;text-align:center;gap:16px;padding:40px 16px}.profile__empty-icon{width:48px;height:48px;color:var(--cf-color-text-ghost)}.profile__empty-title{font-size:20px;font-weight:600;color:var(--cf-color-text-heading)}.profile__empty-desc{font-size:14px;color:var(--cf-color-text-muted);line-height:1.625;max-width:240px}.profile__empty-cta{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:12px 20px;border-radius:9999px;border:1px solid var(--cf-color-accent-subtle);background:var(--cf-color-accent-ghost);color:var(--cf-color-accent-text);font-size:14px;font-weight:600;font-family:inherit;transition:all .15s ease;cursor:pointer}.profile__empty-cta:hover{background:var(--cf-color-accent-subtle);border-color:var(--cf-color-accent-muted)}.profile__empty-secondary{display:inline-flex;align-items:center;gap:6px;padding:10px 16px;border-radius:9999px;border:1px solid var(--cf-color-border);background:transparent;color:var(--cf-color-text-secondary);font-size:14px;font-weight:500;font-family:inherit;transition:all .15s ease;cursor:pointer}.profile__empty-secondary:hover{background:var(--cf-color-hover);border-color:var(--cf-color-border);color:var(--cf-color-text-heading)}.add-trip{display:flex;flex-direction:column;flex:1;padding:20px;gap:20px;overflow-y:auto}.add-trip__back{display:flex;align-items:center;gap:8px;padding:0;border:none;background:transparent;color:var(--cf-color-text-muted);font-size:14px;font-family:inherit;transition:color .15s ease;cursor:pointer}.add-trip__back:hover{color:var(--cf-color-text-heading)}.add-trip__back-icon{width:16px;height:16px}.add-trip__title{font-size:20px;font-weight:600;color:var(--cf-color-text-heading)}.add-trip__tabs{display:flex;gap:4px;background:var(--cf-color-surface-solid);border-radius:8px;padding:2px}.add-trip__tab{flex:1;padding:8px 12px;border-radius:6px;border:none;background:transparent;color:var(--cf-color-text-muted);font-size:14px;font-weight:500;font-family:inherit;transition:all .15s ease;cursor:pointer}.add-trip__tab.is-active{background:var(--cf-color-surface);color:var(--cf-color-text-heading);box-shadow:var(--cf-shadow-sm)}.add-trip__form{display:flex;flex-direction:column;gap:12px}.add-trip__input{width:100%;padding:12px 16px;border-radius:8px;border:1px solid var(--cf-color-border);background:var(--cf-color-surface-input);color:var(--cf-color-text-primary);font-size:14px;font-family:inherit;transition:border-color .15s ease;cursor:pointer}.add-trip__input::placeholder{color:var(--cf-color-text-placeholder)}.add-trip__input:focus{outline:none;border-color:var(--cf-color-accent-muted);box-shadow:0 0 0 2px var(--cf-color-accent-subtle)}.add-trip__input-row{display:flex;gap:8px}.add-trip__input-row .add-trip__input{flex:1}.add-trip__input-group{position:relative}.add-trip__input-hint{position:absolute;right:12px;top:50%;transform:translateY(-50%);font-size:12px;color:var(--cf-color-text-dimmed)}.add-trip__stopover-btn{display:inline-flex;align-items:center;gap:6px;align-self:flex-start;padding:6px 12px;border-radius:9999px;border:1px dashed var(--cf-color-border);background:transparent;color:var(--cf-color-text-muted);font-size:12px;font-family:inherit;transition:all .15s ease;cursor:pointer}.add-trip__stopover-btn:hover{border-color:var(--cf-color-accent-subtle);color:var(--cf-color-accent-text);background:var(--cf-color-active-highlight)}.add-trip__submit{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:12px;border-radius:8px;border:1px solid var(--cf-color-accent-subtle);background:var(--cf-color-accent-ghost);color:var(--cf-color-accent-text);font-size:14px;font-weight:600;font-family:inherit;transition:all .15s ease;cursor:pointer}.add-trip__submit:hover{background:var(--cf-color-accent-subtle);border-color:var(--cf-color-accent-muted)}.add-trip__recent{display:flex;flex-direction:column;gap:12px}.add-trip__recent-title{font-size:12px;font-weight:500;color:var(--cf-color-text-dimmed);text-transform:uppercase;letter-spacing:.05em}.add-trip__flights{display:flex;flex-direction:column;gap:6px}.add-trip__flight{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:8px;background:var(--cf-color-surface-solid);border:1px solid var(--cf-color-border-subtle)}.add-trip__flight-route{flex:1;min-width:0}.add-trip__flight-cities{font-size:14px;font-weight:500;color:var(--cf-color-text-primary)}.add-trip__flight-meta{font-size:12px;color:var(--cf-color-text-dimmed);display:flex;align-items:center;gap:6px;margin-top:2px}.add-trip__flight-number{font-family:ui-monospace,Cascadia Code,Source Code Pro,monospace;font-size:12px;color:var(--cf-color-text-muted)}.add-trip__flight-date{font-size:12px;color:var(--cf-color-text-dimmed);flex-shrink:0}.add-trip__empty{text-align:center;padding:24px 16px}.add-trip__empty-text{font-size:14px;color:var(--cf-color-text-muted);margin-bottom:4px}.add-trip__empty-hint{font-size:12px;color:var(--cf-color-text-dimmed)}.share-overlay{position:fixed;inset:0;z-index:60;display:flex;align-items:center;justify-content:center;opacity:0;pointer-events:none;transition:opacity .3s ease-out}.share-overlay.is-open{opacity:1;pointer-events:auto}.share-overlay.is-open .share-overlay__container{transform:translateY(0) scale(1);opacity:1}.share-overlay__backdrop{position:absolute;inset:0;background:#000000a6;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);opacity:0;transition:opacity .3s ease-out;cursor:pointer}.share-overlay.is-open .share-overlay__backdrop{opacity:1}.share-overlay__container{position:relative;display:flex;flex-direction:column;align-items:center;gap:20px;padding:16px;max-width:400px;width:100%;transform:translateY(12px) scale(.97);opacity:0;transition:transform .3s ease-out,opacity .3s ease-out}@media(min-width:768px){.share-overlay__container{max-width:420px}}.share-overlay__close{position:absolute;top:0;right:0;display:flex;align-items:center;justify-content:center;width:36px;height:36px;border:none;border-radius:9999px;background:#ffffff1a;color:#ffffffb3;transition:all .15s ease;cursor:pointer}.share-overlay__close:hover{background:#ffffff2e;color:#fff}.share-card{width:100%;border-radius:20px;overflow:hidden;background:linear-gradient(145deg,#0f172af7,#141e32f2,#0a1423f7);border:1px solid rgba(255,255,255,.08);box-shadow:0 8px 32px #00000073,0 0 0 1px #ffffff0a inset;padding:24px 20px 20px}.share-card__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.share-card__user{display:flex;align-items:center;gap:12px}.share-card__avatar{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:9999px;background:var(--cf-color-accent);color:#fff;font-size:14px;font-weight:700;flex-shrink:0}.share-card__user-info{display:flex;flex-direction:column;gap:1px}.share-card__name{font-size:14px;font-weight:600;color:#fff;line-height:1.2}.share-card__handle{font-size:10px;color:#ffffff73;line-height:1.2}.share-card__plane{color:#ffffff40}.share-card__hero{display:flex;align-items:center;justify-content:center;padding:16px 0 20px}.share-card__ring-wrapper{position:relative;width:110px;height:110px}.share-card__ring{width:100%;height:100%;transform:rotate(-90deg)}.share-card__ring-bg{fill:none;stroke:#ffffff0f;stroke-width:5}.share-card__ring-progress{fill:none;stroke:var(--cf-color-accent);stroke-width:5;stroke-linecap:round;transition:stroke-dashoffset .6s ease-out}.share-card__ring-text{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:2px}.share-card__ring-label{font-size:10px;color:#ffffff73;letter-spacing:.025em;text-transform:uppercase}.share-card__ring-value{font-size:26px;font-weight:700;color:#fff;line-height:1}.share-card__stats{display:flex;align-items:center;justify-content:center;gap:0;padding:16px 0;border-top:1px solid rgba(255,255,255,.06);border-bottom:1px solid rgba(255,255,255,.06)}.share-card__stat{flex:1;display:flex;flex-direction:column;align-items:center;gap:2px}.share-card__stat-value{font-size:20px;font-weight:700;color:#fff;line-height:1}.share-card__stat-label{font-size:10px;color:#ffffff73;text-transform:uppercase;letter-spacing:.05em}.share-card__stat-divider{width:1px;height:28px;background:#ffffff14;flex-shrink:0}.share-card__journey{display:flex;flex-direction:column;gap:6px;padding:16px;margin-top:16px;border-radius:8px;background:#ffffff0a;border:1px solid rgba(255,255,255,.06)}.share-card__journey-header{display:flex;align-items:center;gap:6px}.share-card__journey-icon{color:#ffffff59;flex-shrink:0}.share-card__journey-label{font-size:10px;color:#ffffff73;text-transform:uppercase;letter-spacing:.05em}.share-card__journey-route{display:flex;align-items:center;gap:8px;color:#ffffff59}.share-card__journey-code{font-family:ui-monospace,Cascadia Code,Source Code Pro,monospace;font-size:16px;font-weight:700;color:#fff}.share-card__journey-duration{margin-left:auto;font-size:12px;font-weight:500;color:#ffffff8c}.share-card__journey-cities{font-size:12px;color:#fff6}.share-card__destinations{display:flex;flex-wrap:wrap;gap:8px;padding:16px 0 12px}.share-card__dest{display:inline-flex;align-items:center;gap:6px;padding:4px 12px;background:#ffffff0f;border-radius:9999px;font-size:12px;color:#ffffffbf}.share-card__dest-code{font-family:ui-monospace,Cascadia Code,Source Code Pro,monospace;font-weight:600;color:var(--cf-color-accent-text);font-size:10px}.share-card__continents{display:flex;gap:8px;padding:4px 0 16px}.share-card__continent{padding:4px 8px;border-radius:6px;font-size:10px;font-weight:600;letter-spacing:.025em;color:#ffffff40;background:#ffffff08}.share-card__continent--reached{color:var(--cf-color-accent-text);background:var(--cf-color-accent-ghost)}.share-card__brand{display:flex;align-items:center;justify-content:center;gap:6px;padding-top:16px;font-size:10px;color:#ffffff4d;letter-spacing:.025em}.share-overlay__actions{display:flex;gap:12px}.share-overlay__action{display:flex;align-items:center;justify-content:center;gap:8px;padding:10px 16px;border:1px solid rgba(255,255,255,.12);border-radius:9999px;background:#ffffff14;color:#ffffffd9;font-size:12px;font-weight:500;font-family:Inter,system-ui,-apple-system,sans-serif;transition:all .15s ease;cursor:pointer}.share-overlay__action:hover{background:#ffffff24;border-color:#fff3;color:#fff}.share-overlay__action--primary{background:var(--cf-color-accent);border-color:transparent;color:#fff}.share-overlay__action--primary:hover{filter:brightness(1.12);background:var(--cf-color-accent);border-color:transparent}.share-overlay__toast{position:absolute;bottom:16px;display:flex;align-items:center;justify-content:center;gap:8px;padding:8px 16px;background:#10b981eb;color:#fff;border-radius:9999px;font-size:12px;font-weight:500;box-shadow:0 4px 12px #0000004d;animation:toast-in .2s ease-out}.share-overlay__toast.is-hidden{display:none!important}@keyframes toast-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.email-scan{display:flex;flex-direction:column;flex:1;padding:20px;gap:20px;overflow-y:auto}.email-scan__back{display:flex;align-items:center;gap:8px;padding:0;border:none;background:transparent;color:var(--cf-color-text-muted);font-size:14px;font-family:inherit;transition:color .15s ease;cursor:pointer}.email-scan__back:hover{color:var(--cf-color-text-heading)}.email-scan__back-icon{width:16px;height:16px}.email-scan__header{display:flex;flex-direction:column;align-items:center;text-align:center;gap:12px;padding:16px 0 8px}.email-scan__icon-ring{display:flex;align-items:center;justify-content:center;width:56px;height:56px;border-radius:50%;background:var(--cf-color-accent-ghost);color:var(--cf-color-accent-text)}.email-scan__title{font-size:20px;font-weight:600;color:var(--cf-color-text-heading)}.email-scan__desc{font-size:14px;color:var(--cf-color-text-muted);line-height:1.625;max-width:260px}.email-scan__providers{display:flex;flex-direction:column;gap:8px}.email-scan__provider{display:flex;align-items:center;gap:12px;width:100%;padding:12px 16px;border-radius:12px;border:1px solid var(--cf-color-border);background:var(--cf-color-surface-solid);color:var(--cf-color-text-primary);font-size:14px;font-weight:500;font-family:inherit;transition:all .15s ease;cursor:pointer}.email-scan__provider:hover{border-color:var(--cf-color-accent-subtle);background:var(--cf-color-active-highlight)}.email-scan__provider-icon{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:8px;background:var(--cf-color-surface-solid-dim);color:var(--cf-color-text-muted);flex-shrink:0}.email-scan__provider-name{flex:1;text-align:left}.email-scan__provider-arrow{color:var(--cf-color-text-dimmed);flex-shrink:0}.email-scan__privacy{display:flex;align-items:center;justify-content:center;gap:6px;font-size:12px;color:var(--cf-color-text-dimmed);padding-top:8px}.email-scan__scanning{display:flex;flex-direction:column;align-items:center;gap:32px;padding:32px 0 16px}.email-scan__scan-visual{display:flex;flex-direction:column;align-items:center;gap:16px}.email-scan__scan-ring{position:relative;display:flex;align-items:center;justify-content:center;width:72px;height:72px;border-radius:50%;background:var(--cf-color-accent-ghost);color:var(--cf-color-accent-text)}.email-scan__scan-ring-pulse{position:absolute;inset:-4px;border-radius:50%;border:2px solid var(--cf-color-accent-muted);animation:email-scan-pulse 1.8s ease-out infinite}@keyframes email-scan-pulse{0%{transform:scale(.9);opacity:1}to{transform:scale(1.4);opacity:0}}.email-scan__scan-label{font-size:14px;font-weight:500;color:var(--cf-color-text-secondary)}.email-scan__provider-list{display:flex;flex-direction:column;gap:8px;width:100%}.email-scan__provider-row{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:8px;background:var(--cf-color-surface-solid);border:1px solid var(--cf-color-border-subtle);transition:all .15s ease;cursor:pointer}.email-scan__provider-row--scanning{border-color:var(--cf-color-accent-subtle);background:var(--cf-color-active-highlight)}.email-scan__provider-row--done{opacity:.6}.email-scan__provider-icon-sm{display:flex;align-items:center;justify-content:center;width:24px;height:24px;color:var(--cf-color-text-muted);flex-shrink:0}.email-scan__provider-name-sm{flex:1;font-size:14px;color:var(--cf-color-text-primary)}.email-scan__provider-status{display:flex;align-items:center;justify-content:center;width:20px;height:20px;flex-shrink:0}.email-scan__spinner{width:16px;height:16px;border:2px solid var(--cf-color-accent-ghost);border-top-color:var(--cf-color-accent);border-radius:50%;animation:email-scan-spin .7s linear infinite}@keyframes email-scan-spin{to{transform:rotate(360deg)}}.email-scan__check{color:var(--cf-color-accent-text)}.email-scan__results-header{display:flex;flex-direction:column;align-items:center;text-align:center;gap:12px;padding-bottom:8px}.email-scan__results-badge{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;background:var(--cf-color-accent-ghost);color:var(--cf-color-accent-text)}.email-scan__select-all{padding:10px 12px;border-radius:8px;background:var(--cf-color-surface-solid);border:1px solid var(--cf-color-border-subtle)}.email-scan__checkbox-label{display:flex;align-items:center;gap:10px;cursor:pointer;font-size:14px;color:var(--cf-color-text-secondary)}.email-scan__checkbox{position:absolute;opacity:0;width:0;height:0;pointer-events:none}.email-scan__checkbox-custom{display:flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:6px;border:1.5px solid var(--cf-color-border);background:var(--cf-color-surface-input);flex-shrink:0;transition:all .15s ease}.email-scan__checkbox-custom:after{content:"";display:block;width:10px;height:6px;border-left:2px solid #fff;border-bottom:2px solid #fff;transform:rotate(-45deg) translateY(-1px);opacity:0}.email-scan__checkbox:checked+.email-scan__checkbox-custom{background:var(--cf-color-accent);border-color:var(--cf-color-accent)}.email-scan__checkbox:checked+.email-scan__checkbox-custom:after{opacity:1}.email-scan__checkbox:focus-visible+.email-scan__checkbox-custom{box-shadow:0 0 0 2px var(--cf-color-accent-subtle)}.email-scan__flight-list{display:flex;flex-direction:column;gap:6px}.email-scan__flight{display:flex;align-items:center;gap:10px;padding:12px;border-radius:8px;background:var(--cf-color-surface-solid);border:1px solid var(--cf-color-border-subtle);transition:all .15s ease;cursor:pointer}.email-scan__flight:hover{border-color:var(--cf-color-border);background:var(--cf-color-hover)}.email-scan__flight-info{flex:1;min-width:0}.email-scan__flight-route{display:flex;align-items:center;gap:8px}.email-scan__flight-cities{font-size:14px;font-weight:500;color:var(--cf-color-text-primary)}.email-scan__flight-number{font-family:ui-monospace,Cascadia Code,Source Code Pro,monospace;font-size:12px;color:var(--cf-color-text-muted)}.email-scan__flight-meta{display:flex;align-items:center;gap:6px;margin-top:2px;font-size:12px;color:var(--cf-color-text-dimmed)}.email-scan__flight-dot{color:var(--cf-color-text-dimmed)}.email-scan__import{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:12px;border-radius:8px;border:none;background:var(--cf-color-accent);color:#fff;font-size:14px;font-weight:600;font-family:inherit;transition:all .15s ease;cursor:pointer}.email-scan__import:hover:not(:disabled){filter:brightness(1.1)}.email-scan__import:disabled{opacity:.4;cursor:not-allowed}.email-scan__done{display:flex;flex-direction:column;align-items:center;text-align:center;gap:16px;padding:40px 16px 32px}.email-scan__done-icon{display:flex;align-items:center;justify-content:center;width:64px;height:64px;border-radius:50%;background:var(--cf-color-accent-ghost);color:var(--cf-color-accent-text);animation:email-scan-pop .4s ease-out}@keyframes email-scan-pop{0%{transform:scale(.6);opacity:0}70%{transform:scale(1.1)}to{transform:scale(1);opacity:1}}.email-scan__done-title{font-size:20px;font-weight:600;color:var(--cf-color-text-heading)}.email-scan__done-desc{font-size:14px;color:var(--cf-color-text-muted);line-height:1.625;max-width:260px}.email-scan__done-btn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:12px 20px;border-radius:8px;border:none;background:var(--cf-color-accent);color:#fff;font-size:14px;font-weight:600;font-family:inherit;transition:all .15s ease;cursor:pointer}.email-scan__done-btn:hover{filter:brightness(1.1)}.panel__header{display:flex;align-items:flex-start;justify-content:space-between;padding:20px 20px 12px}.panel__info{min-width:0;flex:1}.panel__name{font-size:24px;font-weight:600;color:var(--cf-color-text-heading);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.panel__meta{display:flex;align-items:center;gap:10px;margin-top:6px}.panel__location{font-size:14px;color:var(--cf-color-text-muted)}.panel__connections{display:flex;align-items:center;gap:8px;margin-top:12px}.panel__connections-dot{width:10px;height:10px;border-radius:9999px}.panel__connections-count{font-size:12px;color:var(--cf-color-text-muted)}.panel__close{color:var(--cf-color-text-dimmed);padding:6px;background:none;border:none;border-radius:8px;transition:background-color .15s ease;cursor:pointer}.panel__close:hover{background:var(--cf-color-hover);color:var(--cf-color-text-secondary)}.panel__close-icon{width:18px;height:18px}.panel__divider{border:none;border-top:1px solid var(--cf-color-border-subtle);margin:0 20px}.panel__section-header{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:16px 20px 10px}.panel__section-title{font-size:14px;font-weight:500;color:var(--cf-color-text-muted)}.onestop-toggle{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border:1px solid var(--cf-color-border);border-radius:9999px;background:var(--cf-color-surface-solid);color:var(--cf-color-text-secondary);font-size:12px;font-weight:500;font-family:inherit;cursor:pointer;white-space:nowrap;transition:background .15s ease,color .15s ease,border-color .15s ease}.onestop-toggle:hover{background:var(--cf-color-hover);color:var(--cf-color-text-heading)}.onestop-toggle.is-active,.onestop-toggle[aria-pressed=true]{background:#f59e0b24;border-color:#f59e0b4d;color:#b45309}.explore-bar{padding:0 20px 12px;transition:opacity .15s ease}.explore-bar.is-hidden{display:none}.explore-bar__btn{display:inline-flex;align-items:center;gap:8px;padding:8px 16px;border-radius:9999px;border:1px solid var(--cf-color-accent-subtle);background:var(--cf-color-accent-ghost);color:var(--cf-color-accent-text);font-size:14px;font-weight:500;transition:background-color .15s ease,border-color .15s ease;cursor:pointer}.explore-bar__btn:hover{background:var(--cf-color-accent-subtle);border-color:var(--cf-color-accent-muted)}.explore-bar__icon{flex-shrink:0}.panel__dest-list{padding:0 12px 20px}.dest-row{width:100%;padding:10px 12px;display:flex;align-items:center;gap:12px;border-radius:12px;text-align:left;background:none;border:none;color:inherit;font:inherit;transition:background-color .15s ease;cursor:pointer}.dest-row:hover,.dest-row.is-hovered{background:var(--cf-color-hover)}.dest-row:hover .dest-row__city,.dest-row.is-hovered .dest-row__city{color:var(--cf-color-text-heading)}.dest-row.is-highlighted{background:var(--cf-color-active-highlight)}.dest-row.is-active{background:var(--cf-color-accent-ghost)}.dest-row.is-active .dest-row__city{color:var(--cf-color-accent-text)}.dest-row.is-active .dest-row__meta{color:var(--cf-color-accent-text);opacity:.7}.dest-row.is-active .badge{background:var(--cf-color-accent);color:#fff}.dest-row__info{min-width:0;flex:1}.dest-row__city{display:block;font-size:14px;color:var(--cf-color-text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dest-row__meta{display:block;font-size:12px;color:var(--cf-color-text-dimmed);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dest-row__density{display:flex;align-items:center;gap:6px;flex-shrink:0;margin-left:auto;padding-left:8px}.dest-row__density-dot{width:6px;height:6px;border-radius:9999px;flex-shrink:0}.dest-row__density-count{font-size:11px;color:var(--cf-color-text-ghost);font-variant-numeric:tabular-nums;min-width:18px;text-align:right}.hubs{padding:12px 20px 20px}.hubs__banner{display:flex;align-items:center;gap:8px;padding:10px 12px;border-radius:12px;font-size:14px;font-weight:500;margin-bottom:8px}.hubs__banner--miss{background:#f43f5e1a;border:1px solid rgba(244,63,94,.22);color:#be123c}.hubs__banner--found{background:#22c55e1a;border:1px solid rgba(34,197,94,.22);color:#15803d}.hubs__banner--empty{background:#f59e0b1a;border:1px solid rgba(245,158,11,.22);color:#b45309}.hubs__banner svg{flex-shrink:0}.hubs__intro{margin:16px 0 8px}.hubs__title{margin:0 0 4px;font-size:14px;font-weight:600;color:var(--cf-color-text-heading)}.hubs__lead{margin:0;font-size:12px;color:var(--cf-color-text-muted);line-height:1.5}.hubs__list{margin-top:8px;display:flex;flex-direction:column;gap:4px}.hub-row{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px 12px;border:1px solid var(--cf-color-border-subtle);border-radius:12px;background:var(--cf-color-surface-solid);font-family:inherit;cursor:pointer;transition:background .15s ease,border-color .15s ease}.hub-row:hover{background:var(--cf-color-hover);border-color:var(--cf-color-accent-muted)}.hub-row__via{font-size:14px;color:var(--cf-color-text-secondary)}.hub-row__via strong{color:var(--cf-color-text-heading);font-weight:600}.hub-row__time{display:inline-flex;align-items:center;gap:4px;font-size:12px;color:var(--cf-color-text-muted);font-variant-numeric:tabular-nums}.hub-row{position:relative;transition:background .15s ease,border-color .15s ease}.hub-row.is-selected{background:var(--cf-color-accent-ghost);border-color:var(--cf-color-accent-subtle)}.hub-row.is-selected .hub-row__via,.hub-row.is-selected .hub-row__via strong,.hub-row.is-selected .hub-row__time{color:var(--cf-color-accent-text)}.hub-row__close{width:22px;height:22px;display:inline-flex;align-items:center;justify-content:center;margin-left:6px;border:none;border-radius:50%;background:var(--cf-color-accent);color:#fff;cursor:pointer;flex-shrink:0;transition:filter .15s ease}.hub-row__close:hover{filter:brightness(1.1)}.hub-detail:empty{display:none}.hub-detail__head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:16px 0 8px}.hub-detail__title{margin:0;font-size:16px;font-weight:700;color:var(--cf-color-text-heading)}.hub-detail__title span{margin:0 6px;color:var(--cf-color-text-muted);font-weight:500}.hub-detail__leg{display:grid;grid-template-columns:16px 1fr;gap:10px;align-items:start;padding:12px;border:1px solid var(--cf-color-border-subtle);border-radius:12px;background:var(--cf-color-surface-solid);margin-bottom:8px}.hub-detail__dot{width:10px;height:10px;margin-top:6px;border-radius:50%;background:var(--cf-color-text-ghost);border:2px solid var(--cf-color-text-ghost)}.hub-detail__leg-body{min-width:0;display:flex;flex-direction:column;gap:6px}.hub-detail__leg-row{display:flex;align-items:center;gap:6px;flex-wrap:wrap;font-size:14px;color:var(--cf-color-text-heading)}.hub-detail__leg-row strong{font-weight:600}.hub-detail__arrow{color:var(--cf-color-text-muted);font-size:14px}.hub-detail__leg-meta{display:inline-flex;align-items:center;gap:4px;font-size:12px;color:var(--cf-color-text-muted);font-variant-numeric:tabular-nums}.hub-detail__leg-meta svg{margin:0 0 0 4px}.hub-detail__sep{margin:0 2px;opacity:.6}.hub-detail__cta{margin-top:12px;padding:12px;border:1px solid var(--cf-color-border-subtle);border-radius:12px;background:var(--cf-color-surface-solid);display:flex;flex-direction:column;gap:12px}.hub-detail__selects{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}@media(max-width:480px){.hub-detail__selects{grid-template-columns:1fr}}.hub-detail__select{display:flex;flex-direction:column;gap:2px;min-width:0}.hub-detail__select-label{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.025em;color:var(--cf-color-text-muted)}.hub-detail__select select{height:36px;padding:0 28px 0 10px;border:1px solid var(--cf-color-border);border-radius:8px;background:var(--cf-color-surface-solid);color:var(--cf-color-text-heading);font-family:inherit;font-size:14px;font-weight:500;cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg width='10' height='6' viewBox='0 0 10 6' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%2364748b' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center}.hub-detail__select select:focus{outline:none;border-color:var(--cf-color-accent-muted)}.hub-detail__check{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:44px;padding:0 20px;background:#16a34a;color:#fff;border:none;border-radius:12px;font-family:inherit;font-size:16px;font-weight:700;cursor:pointer;transition:background .15s ease,transform .15s ease;box-shadow:0 1px 2px #16a34a33}.hub-detail__check:hover{background:#15803d;transform:translateY(-1px)}.hub-detail__check:active{transform:translateY(0)}.hub-detail__more{margin-top:16px}.hub-detail__more-title{margin:0 0 8px;font-size:14px;font-weight:700;color:var(--cf-color-text-heading)}.hub-detail__more-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}.hub-detail__more-list li{padding-left:12px;position:relative}.hub-detail__more-list li:before{content:"↳";position:absolute;left:0;top:1px;color:var(--cf-color-text-muted);font-size:12px}.hub-detail__more-list a{display:inline-flex;align-items:center;gap:4px;font-size:14px;color:var(--cf-color-accent-text);text-decoration:none}.hub-detail__more-list a:hover{text-decoration:underline}.hub-detail__more-list a svg{flex-shrink:0;opacity:.7}.hub-detail__leg-airlines{display:flex;flex-wrap:wrap;align-items:center;gap:4px;margin-top:6px;font-size:12px;color:var(--cf-color-text-muted)}.hub-detail__leg-airlines-label{font-weight:500;margin-right:4px}.hub-detail__leg-airlines-empty,.hub-detail__leg-airlines-skel{font-size:12px;color:var(--cf-color-text-dimmed);font-style:italic}.hub-detail__airline-pill{display:inline-flex;padding:2px 8px;border-radius:9999px;background:var(--cf-color-accent-ghost);color:var(--cf-color-accent-text);font-size:11px;font-weight:600;white-space:nowrap}.hub-detail__airline-pill--more{background:var(--cf-color-surface-solid-dim);color:var(--cf-color-text-muted)}.hub-detail__leg-today{margin-top:8px}.hub-detail__leg-today:empty{display:none}.hub-detail__leg-today-label{font-size:12px;color:var(--cf-color-text-secondary)}.hub-detail__leg-today-label strong{color:var(--cf-color-text-heading);font-weight:600}.hub-detail__leg-today-skel,.hub-detail__leg-today-empty{font-size:12px;color:var(--cf-color-text-dimmed);font-style:italic}.hub-detail__today-pills{display:flex;flex-wrap:wrap;gap:4px;margin-top:4px}.hub-detail__today-pill{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:8px;background:var(--cf-color-surface-solid-dim);border:1px solid var(--cf-color-border-subtle);font-size:11px;font-variant-numeric:tabular-nums;white-space:nowrap}.hub-detail__today-pill strong{color:var(--cf-color-text-heading);font-weight:600}.hub-detail__today-pill span{color:var(--cf-color-text-muted)}.hub-detail__dates{display:grid;grid-template-columns:1fr 1fr;gap:8px}@media(max-width:480px){.hub-detail__dates{grid-template-columns:1fr}}.hub-detail__dates input[type=date]{height:36px;padding:0 10px;border:1px solid var(--cf-color-border);border-radius:8px;background:var(--cf-color-surface-solid);color:var(--cf-color-text-heading);font-family:inherit;font-size:14px;font-weight:500}.hub-detail__dates input[type=date]:focus{outline:none;border-color:var(--cf-color-accent-muted)}.hub-detail__price-hint{margin-bottom:4px}.hub-detail__price-hint-skel,.hub-detail__price-hint-empty{font-size:12px;color:var(--cf-color-text-dimmed);font-style:italic}.hub-detail__price-hint-btn{display:inline-flex;align-items:center;gap:6px;padding:5px 10px;border:1px solid rgba(34,197,94,.3);border-radius:9999px;background:#22c55e14;color:#15803d;font-family:inherit;font-size:12px;font-weight:500;cursor:pointer;transition:background .15s ease,border-color .15s ease}.hub-detail__price-hint-btn:hover{background:#22c55e29;border-color:#22c55e80}.hub-detail__price-hint-btn strong{font-weight:700}.hub-detail__price-hint-cta{margin-left:4px;padding:0 6px;border-radius:9999px;background:#22c55e2e;font-weight:700;font-size:10px;text-transform:uppercase;letter-spacing:.04em}.hub-hero{margin-bottom:12px;padding:16px;border:1px solid var(--cf-color-accent-subtle);border-radius:16px;background:linear-gradient(180deg,rgba(14,165,233,.04) 0%,transparent 60%),var(--cf-color-surface-solid);display:flex;flex-direction:column;gap:12px}.hub-hero__head{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}.hub-hero__tag{display:inline-flex;align-items:center;gap:4px;padding:3px 10px;border-radius:9999px;background:#0ea5e924;color:var(--cf-color-accent-text);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.hub-hero__title{margin:0;flex:1;font-size:16px;font-weight:700;color:var(--cf-color-text-heading)}.hub-hero__time{font-size:14px;color:var(--cf-color-text-secondary);font-variant-numeric:tabular-nums}.hubs-list-section{border-top:1px solid var(--cf-color-border-subtle);margin-top:8px}.hubs-list-toggle{width:100%;display:flex;align-items:center;justify-content:space-between;padding:12px 4px;background:transparent;border:none;font-family:inherit;font-size:14px;font-weight:600;color:var(--cf-color-text-heading);cursor:pointer}.hubs-list-toggle:hover{color:var(--cf-color-accent-text)}.hubs-list-toggle__chev{transition:transform .15s ease;color:var(--cf-color-text-muted)}.hubs-list-section.is-open .hubs-list-toggle__chev{transform:rotate(180deg)}.hubs-list-body{display:none;padding-bottom:12px}.hubs-list-section.is-open .hubs-list-body{display:block}.hubs-sort{display:flex;align-items:center;gap:4px;flex-wrap:wrap;margin-bottom:8px;padding:4px 0}.hubs-sort__label{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--cf-color-text-muted);margin-right:4px}.hubs-sort__chip{padding:3px 9px;border:1px solid var(--cf-color-border);border-radius:9999px;background:var(--cf-color-surface-solid);color:var(--cf-color-text-secondary);font-family:inherit;font-size:11px;font-weight:500;cursor:pointer;transition:background .15s ease,color .15s ease,border-color .15s ease}.hubs-sort__chip:hover:not(.hubs-sort__chip--disabled){background:var(--cf-color-hover);color:var(--cf-color-text-heading)}.hubs-sort__chip.is-active{background:var(--cf-color-accent-ghost);border-color:var(--cf-color-accent-subtle);color:var(--cf-color-accent-text)}.hubs-sort__chip--disabled{opacity:.5;cursor:not-allowed;text-decoration:line-through}.hub-row__meta{display:inline-flex;align-items:center;gap:8px}.hub-row__carriers{font-size:11px;font-weight:500;color:var(--cf-color-text-muted);font-variant-numeric:tabular-nums}.hub-detail__price-hint{display:flex;flex-direction:column;gap:4px}.hub-detail__price-hint:empty{display:none}.hub-detail__price-hint-yours{display:inline-flex;align-items:center;gap:4px;padding:5px 10px;border-radius:9999px;background:#0ea5e91a;border:1px solid rgba(14,165,233,.25);color:var(--cf-color-accent-text);font-size:12px;font-weight:500;align-self:flex-start}.hub-detail__price-hint-yours strong{color:var(--cf-color-text-heading);font-size:14px;font-weight:700}.hubs-sticky{position:sticky;top:0;z-index:5;display:flex;flex-direction:column;gap:8px;padding:12px;margin:0 0 12px;background:var(--cf-color-surface-solid);border-radius:16px;border:1px solid var(--cf-color-border);box-shadow:0 4px 16px -8px #0000002e}.hubs-sticky__dates{display:grid;grid-template-columns:1fr 1fr;gap:8px}.hubs-sticky__date{display:flex;flex-direction:column;gap:2px;padding:6px 10px;background:var(--cf-color-surface);border-radius:12px;border:1px solid var(--cf-color-border);transition:border-color .15s ease}.hubs-sticky__date:focus-within{border-color:var(--cf-color-accent)}.hubs-sticky__date.is-disabled{opacity:.45;pointer-events:none}.hubs-sticky__date input[type=date]{background:transparent;border:0;color:var(--cf-color-text-primary);font-size:14px;font-weight:500;padding:0;width:100%}.hubs-sticky__date input[type=date]:focus{outline:none}.hubs-sticky__date input[type=date]::-webkit-calendar-picker-indicator{opacity:.55;cursor:pointer}.hubs-sticky__date-label{font-size:12px;color:var(--cf-color-text-dimmed);text-transform:uppercase;letter-spacing:.04em;font-weight:500}.hubs-sticky__pills{display:flex;flex-wrap:wrap;gap:6px}.hubs-sticky__pill{position:relative;display:inline-flex;align-items:center}.hubs-sticky__pill:hover .hubs-sticky__pill-select{background:var(--cf-color-hover)}.hubs-sticky__pill-select{appearance:none;-webkit-appearance:none;background:var(--cf-color-surface);border:1px solid var(--cf-color-border);border-radius:9999px;padding:4px 22px 4px 10px;font-size:12px;font-weight:500;color:var(--cf-color-text-primary);cursor:pointer;transition:background .15s ease,border-color .15s ease}.hubs-sticky__pill-select:focus-visible{outline:none;border-color:var(--cf-color-accent);box-shadow:0 0 0 3px var(--cf-color-accent-ghost)}.hubs-sticky__pill-chev{position:absolute;right:8px;top:50%;transform:translateY(-50%);pointer-events:none;color:var(--cf-color-text-dimmed)}.hubs-price-strip{--tile-min-width: 44px;margin-top:4px}.hubs-price-strip__skel{display:block;font-size:12px;color:var(--cf-color-text-dimmed);padding:8px 0;text-align:center}.hubs-price-strip__row{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}.hubs-price-strip__tile{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;padding:6px 4px;min-width:var(--tile-min-width);background:var(--cf-color-surface);border:1px solid var(--cf-color-border);border-radius:12px;cursor:pointer;position:relative;transition:background .15s ease,border-color .15s ease,transform .15s ease}.hubs-price-strip__tile:hover:not(:disabled){background:var(--cf-color-hover);border-color:var(--cf-color-accent-muted);transform:translateY(-1px)}.hubs-price-strip__tile.is-selected{background:var(--cf-color-accent-ghost);border-color:var(--cf-color-accent)}.hubs-price-strip__tile.is-best:not(.is-selected){border-color:var(--cf-color-accent-muted)}.hubs-price-strip__tile.is-past,.hubs-price-strip__tile:disabled{opacity:.4;cursor:not-allowed}.hubs-price-strip__dow{font-size:10px;letter-spacing:.04em;text-transform:uppercase;color:var(--cf-color-text-dimmed);font-weight:500}.hubs-price-strip__day{font-size:14px;font-weight:700;color:var(--cf-color-text-primary);line-height:1}.hubs-price-strip__price{font-size:11px;font-weight:500;color:var(--cf-color-accent-text);line-height:1}.hubs-price-strip__tag{position:absolute;top:-7px;right:-2px;background:var(--cf-color-accent);color:#fff;font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;padding:1px 5px;border-radius:9999px;line-height:1.2}@media(max-width:380px){.hubs-price-strip{--tile-min-width: 38px}.hubs-price-strip__tile{padding:5px 2px}}.dest-filter{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:8px 20px}.dest-filter+.dest-filter{padding-top:0}.dest-filter__chips{display:flex;flex-wrap:wrap;gap:5px;flex:1 1 auto;min-width:0}.dest-filter__chip{display:inline-flex;align-items:center;gap:5px;padding:3px 9px;border:1px solid var(--cf-color-border);border-radius:9999px;background:var(--cf-color-surface-solid);color:var(--cf-color-text-secondary);font-family:inherit;font-size:11px;font-weight:500;line-height:1.4;white-space:nowrap;cursor:pointer;transition:background .15s ease,color .15s ease,border-color .15s ease}.dest-filter__chip:hover{background:var(--cf-color-hover);color:var(--cf-color-text-heading)}.dest-filter__chip.is-active{background:var(--cf-color-accent-ghost);border-color:var(--cf-color-accent-subtle);color:var(--cf-color-accent-text)}.dest-filter__chip.is-hidden{display:none}.dest-filter__count{font-size:10px;font-weight:600;color:var(--cf-color-text-dimmed);background:none;padding:0}.dest-filter__chip.is-active .dest-filter__count{color:var(--cf-color-accent-text)}.dest-filter--service{padding-top:2px;padding-bottom:8px}.dest-filter__sort{display:inline-flex;align-items:center;gap:6px;flex-shrink:0}.dest-filter__sort-label{font-size:10px;text-transform:uppercase;letter-spacing:.04em;color:var(--cf-color-text-dimmed);font-weight:500}.dest-filter__sort-select{appearance:none;-webkit-appearance:none;border:1px solid var(--cf-color-border);border-radius:9999px;background:var(--cf-color-surface-solid);color:var(--cf-color-text-secondary);font-family:inherit;font-size:11px;font-weight:500;padding:3px 9px;cursor:pointer;transition:border-color .15s ease,background .15s ease}.dest-filter__sort-select:hover{background:var(--cf-color-hover)}.dest-filter__sort-select:focus-visible{outline:none;border-color:var(--cf-color-accent)}.search-result{width:100%;padding:10px 12px;display:flex;align-items:center;gap:12px;text-align:left;background:var(--cf-color-dropdown-card);border:none;border-radius:0;color:inherit;font:inherit;cursor:pointer;transition:background-color .15s ease}.search-result:hover,.search-result.is-active{background:var(--cf-color-dropdown-card-hover)}.search-result:first-of-type{border-radius:12px 12px 0 0}.search-result:last-of-type{border-radius:0 0 12px 12px}.search-result:first-of-type:last-of-type{border-radius:12px}.search-result__info{min-width:0}.search-result__city{display:block;font-size:14px;font-weight:500;color:var(--cf-color-text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.search-result__meta{display:block;font-size:12px;color:var(--cf-color-text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.search-section-label{padding:8px 12px 4px;font-size:10px;font-weight:600;color:var(--cf-color-text-dimmed);text-transform:uppercase;letter-spacing:.05em}.search-empty{padding:20px 16px;text-align:center}.search-empty__text{font-size:14px;color:var(--cf-color-text-muted)}.legend{position:absolute;bottom:32px;left:20px;z-index:10;background:var(--cf-color-surface-raised);border:1px solid var(--cf-color-border-subtle);box-shadow:var(--cf-shadow-md);border-radius:16px;padding:16px;font-size:12px}.legend__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.legend__title{font-weight:600;color:var(--cf-color-text-primary)}.legend__close{color:var(--cf-color-text-dimmed);background:none;border:none;padding:4px;border-radius:6px;margin-left:16px;font-size:14px;line-height:1;transition:background-color .15s ease;cursor:pointer}.legend__close:hover{color:var(--cf-color-text-secondary);background:var(--cf-color-hover)}.legend__items{display:flex;flex-direction:column;gap:8px}.legend__item{display:flex;align-items:center;gap:10px}.legend__dot{width:16px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.legend__dot:after{content:"";border-radius:9999px;display:block}.legend__dot--hub:after{width:14px;height:14px;background:#1e3a5f;box-shadow:0 0 0 1.5px #fff6}.legend__dot--large:after{width:10px;height:10px;background:#3b82f6;opacity:.9}.legend__dot--regional:after{width:7px;height:7px;background:#7dd3fc;opacity:.7}.legend__dot--minor:after{width:4px;height:4px;background:#94a3b8;opacity:.45}.legend__label{color:var(--cf-color-text-secondary)}.mobile-sheet{position:fixed;bottom:0;left:0;right:0;z-index:30;transform:translateY(100%);transition:transform .3s ease-out}@media(min-width:768px){.mobile-sheet{display:none}}.mobile-sheet.is-open{transform:translateY(0)}.mobile-sheet__inner{background:var(--cf-color-surface-overlay);border-top:1px solid var(--cf-color-border-subtle);box-shadow:var(--cf-shadow-lg);border-radius:20px 20px 0 0;max-height:65vh;overflow:hidden;display:flex;flex-direction:column}.mobile-sheet__handle{display:flex;justify-content:center;padding:16px 0 8px;cursor:grab;touch-action:none}.mobile-sheet__handle:active{cursor:grabbing}.mobile-sheet__handle-bar{width:44px;height:5px;background:var(--cf-color-handle);border-radius:9999px}.mobile-sheet__content{flex:1;overflow-y:auto;padding-bottom:env(safe-area-inset-bottom,0)}.loading{position:absolute;inset:0;z-index:20;background:var(--cf-color-loading-bg);display:flex;align-items:center;justify-content:center}.loading__inner{text-align:center}.loading__spinner{width:36px;height:36px;border:2.5px solid var(--cf-color-accent-subtle);border-top-color:var(--cf-color-accent);border-radius:9999px;animation:spin .8s linear infinite;margin:0 auto 16px}@keyframes spin{to{transform:rotate(360deg)}}.loading__text{color:var(--cf-color-text-muted);font-size:14px}.deals{flex:1;display:flex;flex-direction:column;overflow:hidden;background:var(--cf-color-body-bg)}.deals__inner{flex:1;display:flex;flex-direction:column;overflow:hidden}.deals__header{display:flex;align-items:flex-start;justify-content:space-between;padding:20px 24px 12px;gap:16px;flex-shrink:0}@media(min-width:768px){.deals__header{padding:28px 32px 16px}}.deals__header-left{min-width:0}.deals__title{display:flex;align-items:center;gap:8px;font-size:20px;font-weight:700;color:var(--cf-color-body-text);line-height:1.2}@media(min-width:768px){.deals__title{font-size:24px}}.deals__title-icon{width:22px;height:22px;color:var(--cf-color-accent);flex-shrink:0}@media(min-width:768px){.deals__title-icon{width:26px;height:26px}}.deals__subtitle{margin-top:4px;font-size:14px;color:var(--cf-color-text-muted)}.deals__map-toggle{display:none;align-items:center;gap:6px;padding:8px 14px;border:1px solid var(--cf-color-border);border-radius:12px;background:var(--cf-color-surface);color:var(--cf-color-body-text);font-size:14px;font-weight:500;font-family:inherit;white-space:nowrap;transition:color .15s ease;cursor:pointer}@media(min-width:768px){.deals__map-toggle{display:inline-flex}}.deals__map-toggle-icon{width:16px;height:16px}.deals__toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 24px 12px;flex-shrink:0;overflow-x:auto;-webkit-overflow-scrolling:touch}@media(min-width:768px){.deals__toolbar{padding:0 32px 16px}}.deals__filters{display:flex;gap:8px;flex-shrink:0}.deals__filter{padding:6px 14px;border:1px solid var(--cf-color-border);border-radius:9999px;background:transparent;color:var(--cf-color-text-muted);font-size:12px;font-weight:500;font-family:inherit;cursor:pointer;white-space:nowrap;transition:all .2s ease}.deals__filter:hover{border-color:var(--cf-color-accent);color:var(--cf-color-accent)}.deals__filter.is-active{background:var(--cf-color-accent);border-color:var(--cf-color-accent);color:#fff}.deals__sort-wrap{display:flex;align-items:center;gap:8px;flex-shrink:0}.deals__sort-label{font-size:12px;color:var(--cf-color-text-muted);white-space:nowrap;display:none}@media(min-width:768px){.deals__sort-label{display:inline}}.deals__sort{padding:6px 10px;border:1px solid var(--cf-color-border);border-radius:8px;background:var(--cf-color-surface);color:var(--cf-color-body-text);font-size:12px;font-family:inherit;cursor:pointer}.deals__sort:focus-visible{outline:none;border-color:var(--cf-color-accent-muted);box-shadow:0 0 0 2px var(--cf-color-accent-subtle)}.deals__body{flex:1;display:flex;overflow:hidden}.deals__main{flex:1;overflow-y:auto;padding:0 24px 24px;min-width:0}@media(min-width:768px){.deals__main{padding:0 32px 32px}}.deals__count{font-size:12px;color:var(--cf-color-text-muted);margin-bottom:12px}.deals__grid{display:grid;grid-template-columns:1fr;gap:20px}@media(min-width:540px){.deals__grid{grid-template-columns:repeat(2,1fr)}}@media(min-width:768px){.deals__grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:24px}}@media(min-width:768px){.deals__grid--with-map{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}}.deals__card{border-radius:16px;overflow:hidden;background:var(--cf-color-surface);border:1px solid var(--cf-color-border);transition:transform .2s ease,box-shadow .2s ease;cursor:default}.deals__card:hover{transform:translateY(-2px);box-shadow:var(--cf-shadow-lg)}.deals__card-image{position:relative;aspect-ratio:4/3;overflow:hidden;background:var(--cf-color-surface-solid-dim)}.deals__card-image img{width:100%;height:100%;object-fit:cover;display:block}.deals__card-save-pct{position:absolute;top:10px;left:10px;padding:4px 10px;border-radius:9999px;background:#fff;color:#111;font-size:12px;font-weight:700;z-index:2;box-shadow:0 1px 4px #00000026}.deals__card-badges{position:absolute;top:42px;left:10px;display:flex;flex-wrap:wrap;gap:6px;z-index:2}.deals__card-tier-dot{position:absolute;bottom:10px;left:10px;display:flex;align-items:center;gap:5px;padding:4px 10px;border-radius:9999px;background:#0000008c;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);color:#fff;font-size:11px;font-weight:600;z-index:2}.deals__card-tier-indicator{width:8px;height:8px;border-radius:50%;flex-shrink:0}.deals__tier--amazing .deals__card-tier-indicator{background:#10b981}.deals__tier--great .deals__card-tier-indicator{background:#3b82f6}.deals__tier--good .deals__card-tier-indicator{background:#6b7280}.deals__badge{padding:3px 8px;border-radius:6px;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.5px}.deals__badge--error{background:#ef4444;color:#fff}.deals__badge--weekend{background:#8b5cf6;color:#fff}.deals__badge--peak{background:#f59e0b;color:#1a1a1a}.deals__badge--default{background:#0009;color:#fff}.deals__tier{padding:3px 8px;border-radius:6px;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.5px}.deals__tier--amazing{background:#10b981;color:#fff}.deals__tier--great{background:#3b82f6;color:#fff}.deals__tier--good{background:#6b7280;color:#fff}.deals__save{position:absolute;top:10px;right:10px;width:32px;height:32px;display:flex;align-items:center;justify-content:center;padding:0;border:none;border-radius:50%;background:#0006;color:#fff;cursor:pointer;transition:background .2s ease,transform .2s ease;z-index:2}.deals__save svg{width:16px;height:16px}.deals__save:hover{background:#0009;transform:scale(1.1)}.deals__save.is-saved{color:#ef4444;background:#ffffffe6}.deals__card-body{padding:14px 16px 16px}.deals__card-dest-row{display:flex;align-items:baseline;justify-content:space-between;gap:8px;margin-bottom:4px}.deals__card-dest{font-size:16px;font-weight:700;color:var(--cf-color-body-text);line-height:1.3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.deals__card-iata{font-size:11px;font-weight:600;color:var(--cf-color-text-muted);letter-spacing:.5px;flex-shrink:0}.deals__card-route{font-size:12px;color:var(--cf-color-text-muted);margin-bottom:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.deals__card-dates{font-size:12px;color:var(--cf-color-text-muted);margin-bottom:12px}.deals__card-footer{display:flex;align-items:flex-end;justify-content:space-between;gap:12px}.deals__card-price{display:flex;align-items:baseline;gap:6px}.deals__card-price-label{font-size:11px;color:var(--cf-color-text-muted)}.deals__card-price-amount{font-size:20px;font-weight:800;color:var(--cf-color-accent);line-height:1}.deals__card-price-orig{font-size:12px;color:var(--cf-color-text-muted);text-decoration:line-through}.deals__card-cta{padding:8px 16px;border:none;border-radius:9999px;background:var(--cf-color-body-text);color:var(--cf-color-body-bg);font-size:14px;font-weight:600;font-family:inherit;white-space:nowrap;transition:color .15s ease;cursor:pointer}.deals__card-cta:hover{opacity:.85}.deals__card-urgency{display:block;font-size:11px;font-weight:600;color:#ef4444;margin-top:6px}.deals__empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:64px 24px;text-align:center;color:var(--cf-color-text-muted)}.deals__empty-icon{width:48px;height:48px;opacity:.4}.deals__empty-reset{padding:8px 16px;border:1px solid var(--cf-color-border);border-radius:12px;background:transparent;color:var(--cf-color-accent);font-size:14px;font-weight:500;font-family:inherit;transition:color .15s ease;cursor:pointer}.deals__map-drawer{width:0;flex-shrink:0;overflow:hidden;border-left:1px solid var(--cf-color-border);background:var(--cf-color-surface);transition:width .3s ease;display:none}@media(min-width:768px){.deals__map-drawer{display:block}}.deals__map-drawer.is-open{width:380px;padding:16px}.deals__map-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.deals__map-title{font-size:14px;font-weight:600;color:var(--cf-color-body-text)}.deals__map-close{width:28px;height:28px;display:flex;align-items:center;justify-content:center;padding:0;border:none;border-radius:50%;background:var(--cf-color-surface-solid-dim);color:var(--cf-color-text-muted);font-size:18px;transition:color .15s ease;cursor:pointer}.deals__map-canvas{border-radius:12px;overflow:hidden;border:1px solid var(--cf-color-border)}.deals__map-svg{width:100%;height:auto;display:block}.deals__map-dot{cursor:pointer;transition:r .2s ease}.deals__map-dot:hover{r:8}.deals__map-dot--amazing{fill:#10b981}.deals__map-dot--great{fill:#3b82f6}.deals__map-dot--good{fill:#6b7280}.deals__bottom-bar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 24px;border-top:1px solid var(--cf-color-border);background:var(--cf-color-surface);flex-shrink:0;flex-wrap:wrap}@media(min-width:768px){.deals__bottom-bar{padding:12px 32px}}.deals__bottom-text,.deals__bottom-origin{font-size:11px;color:var(--cf-color-text-muted)}.deals__bottom-origin strong{color:var(--cf-color-body-text);font-weight:600}.deals__detail{flex:1;overflow-y:auto;display:flex;flex-direction:column}.deals__detail-hero{position:relative;width:100%;aspect-ratio:21/9;min-height:200px;max-height:360px;overflow:hidden;background:var(--cf-color-surface-solid-dim);flex-shrink:0}.deals__detail-hero img{width:100%;height:100%;object-fit:cover;display:block}@media(max-width:540px){.deals__detail-hero{aspect-ratio:16/10}}.deals__detail-hero-overlay{position:absolute;top:0;left:0;right:0;display:flex;align-items:flex-start;justify-content:space-between;padding:16px;z-index:2;background:linear-gradient(180deg,rgba(0,0,0,.45) 0%,transparent 100%)}.deals__detail-back{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border:none;border-radius:12px;background:#00000080;backdrop-filter:blur(8px);color:#fff;font-size:14px;font-weight:600;font-family:inherit;cursor:pointer;transition:background .2s ease}.deals__detail-back:hover{background:#000000b3}.deals__detail-save{width:40px;height:40px;background:#00000080;backdrop-filter:blur(8px)}.deals__detail-save svg{width:20px;height:20px}.deals__detail-save.is-saved{background:#ffffffe6}.deals__detail-hero-badges{position:absolute;bottom:16px;left:16px;display:flex;flex-wrap:wrap;gap:6px;z-index:2}.deals__detail-content{flex:1;padding:24px;max-width:800px;width:100%;margin:0 auto}@media(min-width:768px){.deals__detail-content{padding:32px 40px}}.deals__detail-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:24px}.deals__detail-city{font-size:28px;font-weight:800;color:var(--cf-color-body-text);line-height:1.15}@media(min-width:768px){.deals__detail-city{font-size:34px}}.deals__detail-country{font-size:16px;color:var(--cf-color-text-muted);margin-top:4px}.deals__detail-price-block{text-align:right;flex-shrink:0}.deals__detail-price{font-size:32px;font-weight:800;color:var(--cf-color-accent);line-height:1}@media(min-width:768px){.deals__detail-price{font-size:38px}}.deals__detail-price-label{display:block;font-size:11px;color:var(--cf-color-text-muted);margin-top:4px}.deals__detail-route{display:flex;align-items:center;justify-content:center;gap:24px;padding:20px 24px;border:1px solid var(--cf-color-border);border-radius:16px;background:var(--cf-color-surface);margin-bottom:24px}@media(max-width:540px){.deals__detail-route{gap:16px;padding:16px}}.deals__detail-route-leg{text-align:center}.deals__detail-iata{display:block;font-size:24px;font-weight:800;color:var(--cf-color-body-text);line-height:1;letter-spacing:1px}@media(min-width:768px){.deals__detail-iata{font-size:28px}}.deals__detail-city-label{display:block;font-size:11px;color:var(--cf-color-text-muted);margin-top:4px}.deals__detail-route-arrow{display:flex;flex-direction:column;align-items:center;gap:4px;color:var(--cf-color-text-muted)}.deals__detail-stops-label{font-size:10px;color:var(--cf-color-text-muted);font-weight:500}.deals__detail-info{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-bottom:28px}@media(max-width:540px){.deals__detail-info{grid-template-columns:1fr;gap:12px}}.deals__detail-info-item{display:flex;align-items:flex-start;gap:12px;padding:14px 16px;border:1px solid var(--cf-color-border);border-radius:12px;background:var(--cf-color-surface)}.deals__detail-info-item svg{color:var(--cf-color-accent);flex-shrink:0;margin-top:2px}.deals__detail-info-label{display:block;font-size:11px;color:var(--cf-color-text-muted);margin-bottom:2px}.deals__detail-info-value{display:block;font-size:14px;font-weight:600;color:var(--cf-color-body-text)}.deals__detail-info-value--savings{color:#10b981}.deals__detail-cta-row{margin-bottom:32px}.deals__detail-book{display:inline-flex;align-items:center;gap:8px;width:100%;justify-content:center;padding:14px 24px;border:none;border-radius:12px;background:var(--cf-color-accent);color:#fff;font-size:16px;font-weight:700;font-family:inherit;cursor:pointer;transition:opacity .2s ease,transform .2s ease}.deals__detail-book:hover{opacity:.9;transform:translateY(-1px)}.deals__detail-book:active{transform:translateY(0)}.deals__detail-cta-note{margin-top:10px;font-size:11px;color:var(--cf-color-text-muted);text-align:center}.deals__detail-similar{border-top:1px solid var(--cf-color-border);padding-top:24px}.deals__detail-similar-title{font-size:16px;font-weight:700;color:var(--cf-color-body-text);margin-bottom:16px}.deals__detail-similar-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}@media(max-width:540px){.deals__detail-similar-grid{grid-template-columns:1fr}}.deals__detail-similar-card{display:block;border:1px solid var(--cf-color-border);border-radius:12px;overflow:hidden;background:var(--cf-color-surface);cursor:pointer;padding:0;font-family:inherit;text-align:left;color:inherit;transition:transform .2s ease,box-shadow .2s ease}.deals__detail-similar-card:hover{transform:translateY(-2px);box-shadow:var(--cf-shadow-lg)}.deals__detail-similar-img{aspect-ratio:16/10;overflow:hidden;background:var(--cf-color-surface-solid-dim)}.deals__detail-similar-img img{width:100%;height:100%;object-fit:cover;display:block}.deals__detail-similar-info{display:flex;align-items:center;justify-content:space-between;padding:10px 12px}.deals__detail-similar-city{font-size:14px;font-weight:600;color:var(--cf-color-body-text)}.deals__detail-similar-price{font-size:14px;font-weight:700;color:var(--cf-color-accent)}.deals__detail-similar-price small{font-weight:400;font-size:10px;color:var(--cf-color-text-muted)}.deals__detail-section{border-top:1px solid var(--cf-color-border);padding-top:24px;margin-top:24px}.deals__detail-section-title{font-size:16px;font-weight:700;color:var(--cf-color-body-text);margin:0 0 16px}.deals__detail-section-link{display:inline-block;margin-top:12px;font-size:14px;font-weight:600;color:var(--cf-color-accent);text-decoration:none;transition:color .15s ease;cursor:pointer}.deals__detail-section-link:hover{text-decoration:underline}.deals__detail-urgency{font-size:12px;font-weight:600;color:#ef4444;margin-top:8px}.deals__tiktok-scroll{display:flex;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;padding-bottom:4px;scrollbar-width:thin}.deals__tiktok-scroll::-webkit-scrollbar{height:4px}.deals__tiktok-scroll::-webkit-scrollbar-thumb{background:var(--cf-color-border);border-radius:9999px}.deals__tiktok-card{flex:0 0 200px;scroll-snap-align:start;border-radius:12px;overflow:hidden;background:var(--cf-color-surface);border:1px solid var(--cf-color-border);text-decoration:none;color:inherit;transition:transform .2s ease,box-shadow .2s ease}.deals__tiktok-card:hover{transform:translateY(-2px);box-shadow:var(--cf-shadow-lg)}.deals__tiktok-thumb{position:relative;aspect-ratio:9/12;overflow:hidden;background:var(--cf-color-surface-solid-dim)}.deals__tiktok-thumb img{width:100%;height:100%;object-fit:cover;display:block}.deals__tiktok-play{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:#00000040;font-size:32px;opacity:0;transition:opacity .2s ease}.deals__tiktok-card:hover .deals__tiktok-play{opacity:1}.deals__tiktok-info{padding:10px 12px}.deals__tiktok-caption{font-size:12px;color:var(--cf-color-body-text);line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin-bottom:4px}.deals__tiktok-creator{font-size:11px;color:var(--cf-color-text-muted);font-weight:500}.deals__faq-list{display:flex;flex-direction:column;gap:0}.deals__faq-item{border-bottom:1px solid var(--cf-color-border)}.deals__faq-item:first-child{border-top:1px solid var(--cf-color-border)}.deals__faq-item[open] .deals__faq-question:after{transform:rotate(180deg)}.deals__faq-question{display:flex;align-items:center;justify-content:space-between;padding:14px 0;font-size:14px;font-weight:600;color:var(--cf-color-body-text);cursor:pointer;list-style:none;user-select:none}.deals__faq-question::-webkit-details-marker{display:none}.deals__faq-question:after{content:"▾";font-size:14px;color:var(--cf-color-text-muted);transition:transform .2s ease;flex-shrink:0;margin-left:12px}.deals__faq-question:hover{color:var(--cf-color-accent)}.deals__faq-answer{font-size:14px;color:var(--cf-color-text-muted);line-height:1.6;padding:0 0 16px}.deals__nearby-list{display:flex;flex-direction:column;gap:0}.deals__nearby-item{display:flex;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid var(--cf-color-border);text-decoration:none;color:inherit;transition:background .2s ease}.deals__nearby-item:first-child{border-top:1px solid var(--cf-color-border)}.deals__nearby-item:hover{background:var(--cf-color-surface-solid-dim);margin:0 -16px;padding-left:16px;padding-right:16px}.deals__nearby-iata{display:flex;align-items:center;justify-content:center;width:44px;height:32px;border-radius:8px;background:var(--cf-color-surface-solid-dim);font-size:12px;font-weight:700;color:var(--cf-color-accent);letter-spacing:.5px;flex-shrink:0}.deals__nearby-info{flex:1;min-width:0}.deals__nearby-name{font-size:14px;font-weight:600;color:var(--cf-color-body-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.deals__nearby-city{font-size:12px;color:var(--cf-color-text-muted)}.deals__nearby-arrow{font-size:14px;color:var(--cf-color-text-muted);flex-shrink:0}.deals__seo-links{display:flex;flex-wrap:wrap;gap:8px}.deals__seo-chip{display:inline-block;padding:6px 14px;border-radius:9999px;border:1px solid var(--cf-color-border);background:var(--cf-color-surface);font-size:12px;font-weight:500;color:var(--cf-color-body-text);text-decoration:none;transition:background .2s ease,border-color .2s ease}.deals__seo-chip:hover{background:var(--cf-color-surface-solid-dim);border-color:var(--cf-color-accent);color:var(--cf-color-accent)}.trip-create{display:flex;flex-direction:column;gap:24px;padding:24px 20px;overflow-y:auto}.trip-create__header{display:flex;flex-direction:column;gap:4px}.trip-create__title{font-size:20px;font-weight:600;color:var(--cf-color-text-heading);line-height:1.2}.trip-create__subtitle{font-size:14px;color:var(--cf-color-text-dimmed)}.trip-create__form{display:flex;flex-direction:column;gap:16px}.trip-create__field{display:flex;flex-direction:column;gap:6px}.trip-create__field-row{display:flex;gap:12px}.trip-create__field--half{flex:1;min-width:0}.trip-create__label{font-size:12px;font-weight:500;color:var(--cf-color-text-dimmed);text-transform:uppercase;letter-spacing:.05em}.trip-create__hint{font-weight:400;text-transform:none;letter-spacing:normal;color:var(--cf-color-text-ghost)}.trip-create__input-wrap{position:relative;display:flex;align-items:center}.trip-create__field-icon{position:absolute;left:12px;color:var(--cf-color-text-dimmed);pointer-events:none;flex-shrink:0}.trip-create__input{width:100%;padding:10px 12px 10px 36px;font-size:14px;font-family:Inter,system-ui,-apple-system,sans-serif;color:var(--cf-color-text-primary);background:var(--cf-color-surface-input);border:1px solid var(--cf-color-border);border-radius:8px;outline:none;transition:border-color .15s ease;cursor:pointer}.trip-create__input::placeholder{color:var(--cf-color-text-placeholder)}.trip-create__input:focus{outline:none;border-color:var(--cf-color-accent-muted);box-shadow:0 0 0 2px var(--cf-color-accent-subtle)}.trip-create__input--date{padding-left:12px;cursor:pointer}.trip-create__input--date::-webkit-calendar-picker-indicator{opacity:.4;cursor:pointer}.trip-create__input-clear{position:absolute;right:8px;display:flex;align-items:center;justify-content:center;width:24px;height:24px;border:none;border-radius:9999px;background:transparent;color:var(--cf-color-text-dimmed);transition:all .15s ease;cursor:pointer}.trip-create__input-clear:hover{background:var(--cf-color-hover);color:var(--cf-color-text-heading)}.trip-create__search-results{display:flex;flex-direction:column;background:var(--cf-color-surface-raised);border:1px solid var(--cf-color-border);border-radius:8px;overflow:hidden;max-height:240px;overflow-y:auto}.trip-create__search-results.is-hidden{display:none}.trip-create__search-item{display:flex;align-items:center;gap:10px;padding:8px 12px;border:none;background:transparent;font-family:Inter,system-ui,-apple-system,sans-serif;color:inherit;text-align:left;width:100%;transition:background-color .15s ease;cursor:pointer}.trip-create__search-item:hover,.trip-create__search-item.is-active{background:var(--cf-color-hover)}.trip-create__search-iata{font-family:ui-monospace,Cascadia Code,Source Code Pro,monospace;font-size:12px;font-weight:700;color:var(--cf-color-accent-text);background:var(--cf-color-accent-ghost);padding:2px 6px;border-radius:6px;flex-shrink:0;min-width:36px;text-align:center}.trip-create__search-info{display:flex;flex-direction:column;gap:1px;min-width:0}.trip-create__search-city{font-size:14px;font-weight:500;color:var(--cf-color-text-primary)}.trip-create__search-country{font-size:12px;color:var(--cf-color-text-dimmed)}.trip-create__search-empty{padding:12px;font-size:12px;color:var(--cf-color-text-dimmed);text-align:center}.trip-create__route{min-height:0}.trip-create__route-empty{display:flex;align-items:center;gap:8px;padding:12px;border:1px dashed var(--cf-color-border);border-radius:8px;color:var(--cf-color-text-dimmed);font-size:12px}.trip-create__route-empty svg{flex-shrink:0;opacity:.5}.trip-create__route-stops{display:flex;flex-direction:column;padding-left:4px}.trip-create__route-stop{display:flex;align-items:center;gap:12px;padding:8px;border-radius:8px;transition:background-color .15s ease;cursor:pointer}.trip-create__route-stop--origin .trip-create__route-iata{color:var(--cf-color-accent-text)}.trip-create__route-stop--dest:hover{background:var(--cf-color-hover)}.trip-create__route-stop--dest:hover .trip-create__route-remove{opacity:1}.trip-create__route-dot{width:10px;height:10px;border-radius:9999px;flex-shrink:0}.trip-create__route-dot--origin{background:var(--cf-color-accent);box-shadow:0 0 0 3px var(--cf-color-accent-ghost)}.trip-create__route-dot--dest{background:var(--cf-color-text-dimmed);border:2px solid var(--cf-color-border)}.trip-create__route-dot--add{background:transparent;border:2px dashed var(--cf-color-border)}.trip-create__route-stop-info{display:flex;align-items:baseline;gap:8px;min-width:0;flex:1}.trip-create__route-iata{font-family:ui-monospace,Cascadia Code,Source Code Pro,monospace;font-size:14px;font-weight:700;color:var(--cf-color-text-heading)}.trip-create__route-city{font-size:14px;color:var(--cf-color-text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.trip-create__route-remove{display:flex;align-items:center;justify-content:center;width:20px;height:20px;border:none;border-radius:9999px;background:transparent;color:var(--cf-color-text-dimmed);opacity:0;transition:all .15s ease;cursor:pointer;flex-shrink:0}.trip-create__route-remove:hover{background:var(--cf-color-hover);color:var(--cf-color-text-heading)}.trip-create__route-connector{display:flex;align-items:center;gap:6px;padding-left:12px;height:20px}.trip-create__route-line{width:1px;height:100%;background:var(--cf-color-border)}.trip-create__route-line--dashed{background:none;border-left:1px dashed var(--cf-color-border)}.trip-create__route-plane{color:var(--cf-color-text-ghost);transform:rotate(90deg)}.trip-create__route-add{display:flex;align-items:center;gap:12px;padding:8px}.trip-create__route-add-text{font-size:12px;color:var(--cf-color-text-ghost);font-style:italic}.trip-create__trip-name{display:flex;align-items:center;gap:8px;padding:8px 12px;background:var(--cf-color-accent-ghost);border:1px solid var(--cf-color-accent-subtle);border-radius:8px;font-size:14px;font-weight:500;color:var(--cf-color-accent-text)}.trip-create__trip-name svg{flex-shrink:0;opacity:.6}.trip-create__stepper{display:flex;align-items:center;gap:12px;padding:4px 0}.trip-create__stepper-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:1px solid var(--cf-color-border);border-radius:9999px;background:transparent;color:var(--cf-color-text-secondary);transition:all .15s ease;cursor:pointer}.trip-create__stepper-btn:hover:not(:disabled){background:var(--cf-color-hover);border-color:var(--cf-color-border);color:var(--cf-color-text-heading)}.trip-create__stepper-btn:disabled{opacity:.3;cursor:not-allowed}.trip-create__stepper-btn svg{width:14px;height:14px}.trip-create__stepper-value{min-width:28px;text-align:center;font-size:16px;font-weight:600;color:var(--cf-color-text-heading)}.trip-create__vibes{display:flex;flex-wrap:wrap;gap:6px}.trip-create__vibe{display:inline-flex;align-items:center;gap:4px;padding:6px 12px;font-size:12px;font-family:Inter,system-ui,-apple-system,sans-serif;font-weight:500;color:var(--cf-color-text-secondary);background:transparent;border:1px solid var(--cf-color-border);border-radius:9999px;transition:all .15s ease;cursor:pointer;white-space:nowrap;user-select:none}.trip-create__vibe:hover{border-color:var(--cf-color-accent-subtle);color:var(--cf-color-accent-text);background:var(--cf-color-accent-ghost)}.trip-create__vibe.is-selected{background:var(--cf-color-active-highlight);border-color:var(--cf-color-accent-subtle);color:var(--cf-color-accent-text)}.trip-create__start{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:12px 16px;font-size:14px;font-family:Inter,system-ui,-apple-system,sans-serif;font-weight:600;color:var(--cf-color-accent-text);background:var(--cf-color-accent-ghost);border:1px solid var(--cf-color-accent-subtle);border-radius:8px;transition:all .15s ease;cursor:pointer}.trip-create__start:hover:not(:disabled){background:var(--cf-color-accent-subtle);border-color:var(--cf-color-accent-muted)}.trip-create__start:disabled{opacity:.35;cursor:not-allowed}.trip-create__start svg{flex-shrink:0}.trip-create__recent{display:flex;flex-direction:column;gap:12px;padding-top:16px;border-top:1px solid var(--cf-color-border-subtle)}.trip-create__recent-title{font-size:12px;font-weight:500;color:var(--cf-color-text-dimmed);text-transform:uppercase;letter-spacing:.05em}.trip-create__recent-list{display:flex;flex-direction:column;gap:4px}.trip-create__recent-item{display:flex;align-items:center;gap:12px;padding:10px 12px;background:transparent;border:none;border-radius:8px;transition:background-color .15s ease;cursor:pointer;text-align:left;font-family:Inter,system-ui,-apple-system,sans-serif;color:inherit;width:100%}.trip-create__recent-item:hover{background:var(--cf-color-hover)}.trip-create__recent-item:hover .trip-create__recent-name{color:var(--cf-color-text-heading)}.trip-create__recent-emoji{font-size:20px;flex-shrink:0}.trip-create__recent-info{display:flex;flex-direction:column;gap:1px;min-width:0;flex:1}.trip-create__recent-name{font-size:14px;font-weight:500;color:var(--cf-color-text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.trip-create__recent-dates{font-size:12px;color:var(--cf-color-text-dimmed)}.trip-create__recent-arrow{color:var(--cf-color-text-dimmed);flex-shrink:0;transition:transform .15s ease}.trip-create__recent-item:hover .trip-create__recent-arrow{transform:translate(2px)}.trip-search-pill{width:100%}.trip-search-pill__container{display:flex;flex-direction:column;gap:8px;background:var(--cf-color-search-pill-bg);backdrop-filter:blur(24px) saturate(1.4);-webkit-backdrop-filter:blur(24px) saturate(1.4);border-radius:16px;padding:6px;box-shadow:var(--cf-shadow-control)}.trip-search-pill__container .search__field{position:relative;width:100%}.trip-search-pill__container .search__field-inner{position:relative}.trip-search-pill__container .search__icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);width:18px;height:18px;pointer-events:none;z-index:1}.trip-search-pill__container .search__icon svg{width:100%;height:100%}.trip-search-pill__container .search__icon--origin{color:var(--cf-color-origin-text)}.trip-search-pill__container .search__icon--dest{color:var(--cf-color-dest-text)}.trip-search-pill__container .search__input{width:100%;height:48px;padding:16px 38px 4px 34px;background:var(--cf-color-search-input-bg);border:none;border-radius:12px;color:var(--cf-color-text-primary);font-size:15px;font-weight:500;font-family:Inter,system-ui,-apple-system,sans-serif;transition:background-color .15s ease}.trip-search-pill__container .search__input::placeholder{color:transparent}.trip-search-pill__container .search__input:focus{outline:none;box-shadow:none;background:var(--cf-color-search-input-focus)}.trip-search-pill__container .search__label{position:absolute;left:34px;top:50%;transform:translateY(-50%);font-size:14px;color:var(--cf-color-text-muted);pointer-events:none;transition:top .15s ease,font-size .15s ease,color .15s ease;transform-origin:left center}.trip-search-pill__container .search__input:focus~.search__label,.trip-search-pill__container .search__input:not(:placeholder-shown)~.search__label{top:10px;transform:none;font-size:11px;color:var(--cf-color-text-dimmed)}.trip-search-pill__container .search__clear{position:absolute;right:12px;top:50%;transform:translateY(-50%);display:flex;align-items:center;justify-content:center;width:20px;height:20px;color:var(--cf-color-text-dimmed);background:none;border:none;padding:0;transition:color .15s ease;cursor:pointer}.trip-search-pill__container .search__clear:hover{color:var(--cf-color-text-secondary)}.trip-search-pill__container .search__clear-icon{width:14px;height:14px}.trip-search-pill__container .search__results{position:relative;top:auto;left:auto;min-width:auto;width:100%;background:var(--cf-color-dropdown-bg);border:none;border-radius:12px;overflow:hidden;box-shadow:none;border-top:1px solid var(--cf-color-border-subtle);max-height:240px;overflow-y:auto;padding:4px}.trip-search-pill__container .search__results.is-hidden{display:none}.trip-search-pill__destinations{display:flex;flex-direction:column;gap:8px}.main-content.is-trip-fullwidth .sidebar,.main-content.is-trip-fullwidth .map-wrapper{display:none!important}.trip-planner-fullwidth{flex:1;display:flex;flex-direction:column;overflow-y:auto;background:var(--cf-color-body-bg)}.trip-header{display:flex;align-items:center;gap:16px;padding:16px 24px;background:var(--cf-color-surface);border-bottom:1px solid var(--cf-color-border);flex-shrink:0;min-height:64px}@media(min-width:768px){.trip-header{padding:16px 32px}}.trip-header__left{display:flex;align-items:center;gap:12px;flex-shrink:0}.trip-header__back{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border:1px solid var(--cf-color-border);border-radius:8px;background:transparent;color:var(--cf-color-text-secondary);cursor:pointer;transition:all .15s ease}.trip-header__back:hover{background:var(--cf-color-hover);color:var(--cf-color-body-text);border-color:var(--cf-color-border)}.trip-header__info{display:flex;flex-direction:column;gap:2px;min-width:0}.trip-header__name{font-size:16px;font-weight:700;color:var(--cf-color-body-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:220px}.trip-header__meta{font-size:12px;color:var(--cf-color-text-muted)}.trip-header__tabs{display:flex;gap:4px;margin-left:auto;background:var(--cf-color-surface-solid-dim);padding:4px;border-radius:8px}.trip-header__tab{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;font-size:14px;font-family:Inter,system-ui,-apple-system,sans-serif;font-weight:500;color:var(--cf-color-text-muted);background:transparent;border:none;border-radius:6px;cursor:pointer;transition:all .15s ease;white-space:nowrap}.trip-header__tab:hover:not(.is-active){color:var(--cf-color-body-text);background:var(--cf-color-hover-subtle)}.trip-header__tab.is-active{color:var(--cf-color-body-text);background:var(--cf-color-surface);box-shadow:var(--cf-shadow-sm);font-weight:600}.trip-header__badge{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;font-size:10px;font-weight:700;color:#fff;background:var(--cf-color-accent);border-radius:9999px;line-height:1}.trip-header__actions{flex-shrink:0;margin-left:16px}.trip-header__add-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;font-size:14px;font-family:Inter,system-ui,-apple-system,sans-serif;font-weight:600;color:#fff;background:var(--cf-color-accent);border:none;border-radius:8px;cursor:pointer;transition:opacity .15s ease,transform .15s ease}.trip-header__add-btn:hover{opacity:.9}.trip-header__add-btn:active{transform:scale(.97)}.trip-screen{flex:1;overflow-y:auto;padding:24px}@media(min-width:768px){.trip-screen{padding:32px}}.itinerary{max-width:860px;margin:0 auto}.itinerary__destinations{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:24px}.itinerary__dest-badge{display:flex;align-items:center;gap:8px;padding:8px 16px;background:var(--cf-color-accent-ghost);border:1px solid var(--cf-color-accent-subtle);border-radius:9999px;font-size:14px}.itinerary__dest-badge--secondary{background:var(--cf-color-surface-solid-dim);border-color:var(--cf-color-border-subtle)}.itinerary__dest-dot{width:8px;height:8px;border-radius:50%;background:var(--cf-color-accent);flex-shrink:0}.itinerary__dest-badge--secondary .itinerary__dest-dot{background:var(--cf-color-text-muted)}.itinerary__dest-name{font-weight:600;color:var(--cf-color-body-text)}.itinerary__dest-dates{font-size:12px;color:var(--cf-color-text-muted)}.itinerary__dest-via{font-size:12px;color:var(--cf-color-text-dimmed);font-style:italic}.itinerary__day{margin-bottom:24px}.itinerary__day:last-child{margin-bottom:0}.itinerary__day-header{display:flex;align-items:center;gap:12px;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid var(--cf-color-border-subtle)}.itinerary__day-badge{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;background:var(--cf-color-accent);color:#fff;font-size:14px;font-weight:700;flex-shrink:0}.itinerary__day-info{display:flex;flex-direction:column;gap:1px}.itinerary__day-label{font-size:14px;font-weight:600;color:var(--cf-color-body-text)}.itinerary__day-date{font-size:12px;color:var(--cf-color-text-muted)}.itinerary__timeline{display:flex;flex-direction:column;gap:12px;padding-left:16px;margin-left:18px;border-left:2px solid var(--cf-color-border-subtle)}.itinerary__item{display:flex;align-items:flex-start;gap:12px;padding:12px 16px;background:var(--cf-color-surface-solid-dim);border:1px solid var(--cf-color-border-subtle);border-radius:12px;position:relative;transition:border-color .15s ease}.itinerary__item:hover{border-color:var(--cf-color-border)}.itinerary__item-time{font-size:12px;font-weight:600;color:var(--cf-color-text-muted);font-family:ui-monospace,Cascadia Code,Source Code Pro,monospace;min-width:48px;flex-shrink:0;padding-top:2px}.itinerary__item-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0;margin-top:5px}.itinerary__item-dot--flight{background:#3b82f6}.itinerary__item-dot--hotel{background:#f59e0b}.itinerary__item-dot--food{background:#ef4444}.itinerary__item-dot--sight{background:#8b5cf6}.itinerary__item-dot--train{background:#10b981}.itinerary__item-dot--activity{background:#06b6d4}.itinerary__item-dot--transfer{background:#6366f1}.itinerary__item-body{display:flex;flex-direction:column;gap:4px;min-width:0;flex:1}.itinerary__item-name{font-size:14px;font-weight:600;color:var(--cf-color-body-text)}.itinerary__item-desc{font-size:12px;color:var(--cf-color-text-muted);line-height:1.5}.itinerary__item-tags{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-top:4px}.itinerary__tag{display:inline-block;padding:2px 8px;font-size:10px;font-weight:500;color:var(--cf-color-text-muted);background:var(--cf-color-surface-solid);border:1px solid var(--cf-color-border-subtle);border-radius:9999px}.itinerary__status{display:inline-block;padding:2px 8px;font-size:10px;font-weight:600;border-radius:9999px}.itinerary__status--booked{color:#10b981;background:#10b9811f;border:1px solid rgba(16,185,129,.25)}.itinerary__status--pending{color:var(--cf-color-text-muted);background:var(--cf-color-surface-solid);border:1px solid var(--cf-color-border-subtle)}.itinerary__empty-day{padding:20px 16px;text-align:center}.itinerary__empty-text{font-size:14px;color:var(--cf-color-text-dimmed);font-style:italic}.bookings{max-width:960px;margin:0 auto}.bookings__summary{display:flex;gap:16px;margin-bottom:24px;padding:20px;background:var(--cf-color-surface-solid-dim);border:1px solid var(--cf-color-border-subtle);border-radius:12px}.bookings__summary-stat{display:flex;flex-direction:column;gap:2px;flex:1;text-align:center}.bookings__summary-stat:not(:last-child){border-right:1px solid var(--cf-color-border-subtle)}.bookings__summary-value{font-size:24px;font-weight:700;color:var(--cf-color-body-text)}.bookings__summary-label{font-size:12px;color:var(--cf-color-text-muted);text-transform:uppercase;letter-spacing:.04em}.bookings__grid{display:grid;grid-template-columns:1fr;gap:16px}@media(min-width:640px){.bookings__grid{grid-template-columns:repeat(2,1fr)}}@media(min-width:1024px){.bookings__grid{grid-template-columns:repeat(3,1fr)}}.bookings__card{display:flex;flex-direction:column;background:var(--cf-color-surface);border:1px solid var(--cf-color-border);border-radius:12px;overflow:hidden;transition:border-color .15s ease,box-shadow .15s ease}.bookings__card:hover{border-color:var(--cf-color-accent-subtle);box-shadow:var(--cf-shadow-sm)}.bookings__card-header{display:flex;align-items:center;gap:12px;padding:16px;border-bottom:1px solid var(--cf-color-border-subtle)}.bookings__card-type{display:inline-block;padding:2px 8px;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;border-radius:6px}.bookings__card-type--flight{color:#3b82f6;background:#3b82f61f}.bookings__card-type--hotel{color:#f59e0b;background:#f59e0b1f}.bookings__card-type--activity{color:#10b981;background:#10b9811f}.bookings__card-type--transport,.bookings__card-type--train{color:#6366f1;background:#6366f11f}.bookings__card-type--restaurant,.bookings__card-type--food{color:#ef4444;background:#ef44441f}.bookings__card-name{font-size:14px;font-weight:600;color:var(--cf-color-body-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bookings__card-details{display:flex;flex-direction:column;gap:4px;padding:12px 16px;flex:1}.bookings__card-details span{font-size:12px;color:var(--cf-color-text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bookings__card-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;border-top:1px solid var(--cf-color-border-subtle);background:var(--cf-color-surface-solid-dim)}.bookings__card-price{font-size:16px;font-weight:700;color:var(--cf-color-body-text)}.bookings__card-code{font-size:12px;font-family:ui-monospace,Cascadia Code,Source Code Pro,monospace;color:var(--cf-color-text-muted)}.bookings__card-reserved{display:inline-flex;align-items:center;padding:4px 10px;font-size:10px;font-weight:600;color:#10b981;background:#10b9811f;border:1px solid rgba(16,185,129,.25);border-radius:9999px}.bookings__card-book{padding:6px 12px;font-size:12px;font-family:Inter,system-ui,-apple-system,sans-serif;font-weight:600;color:#fff;background:var(--cf-color-accent);border:none;border-radius:8px;cursor:pointer;transition:opacity .15s ease}.bookings__card-book:hover{opacity:.9}.trip-share{display:flex;justify-content:center;align-items:flex-start;padding:32px 0}.trip-share__card{display:flex;flex-direction:column;align-items:center;gap:20px;max-width:440px;width:100%;padding:32px 24px;background:var(--cf-color-surface);border:1px solid var(--cf-color-border);border-radius:16px;text-align:center}.trip-share__icon{color:var(--cf-color-accent)}.trip-share__title{font-size:20px;font-weight:700;color:var(--cf-color-body-text)}.trip-share__desc{font-size:14px;color:var(--cf-color-text-muted);line-height:1.5;max-width:320px}.trip-share__stats{display:flex;gap:24px;width:100%;padding:16px 0;border-top:1px solid var(--cf-color-border-subtle);border-bottom:1px solid var(--cf-color-border-subtle)}.trip-share__stat{display:flex;flex-direction:column;gap:2px;flex:1;text-align:center}.trip-share__stat-value{font-size:20px;font-weight:700;color:var(--cf-color-body-text)}.trip-share__stat-label{font-size:12px;color:var(--cf-color-text-muted)}.trip-share__link{display:flex;width:100%;border:1px solid var(--cf-color-border);border-radius:8px;overflow:hidden}.trip-share__link-input{flex:1;padding:10px 12px;font-size:14px;font-family:ui-monospace,Cascadia Code,Source Code Pro,monospace;color:var(--cf-color-text-muted);background:var(--cf-color-surface-solid-dim);border:none;outline:none;min-width:0}.trip-share__link-copy{padding:10px 16px;font-size:14px;font-family:Inter,system-ui,-apple-system,sans-serif;font-weight:600;color:var(--cf-color-accent-text);background:transparent;border:none;border-left:1px solid var(--cf-color-border);cursor:pointer;transition:background .15s ease;white-space:nowrap}.trip-share__link-copy:hover{background:var(--cf-color-hover-subtle)}.trip-share__invite{width:100%;padding:12px 16px;font-size:14px;font-family:Inter,system-ui,-apple-system,sans-serif;font-weight:600;color:#fff;background:var(--cf-color-accent);border:none;border-radius:8px;cursor:pointer;transition:opacity .15s ease,transform .15s ease}.trip-share__invite:hover{opacity:.9}.trip-share__invite:active{transform:scale(.98)}.invite-modal{position:fixed;inset:0;z-index:60;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .3s ease-out}.invite-modal.is-open{opacity:1}.invite-modal.is-open .invite-modal__card{transform:translateY(0) scale(1);opacity:1}.invite-modal__backdrop{position:absolute;inset:0;background:#00000080;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}.invite-modal__card{position:relative;width:100%;max-width:480px;max-height:85vh;overflow-y:auto;display:flex;flex-direction:column;gap:20px;padding:24px;background:var(--cf-color-surface);border:1px solid var(--cf-color-border);border-radius:16px;box-shadow:var(--cf-shadow-lg);transform:translateY(16px) scale(.97);opacity:0;transition:transform .3s ease-out,opacity .3s ease-out}.invite-modal__header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.invite-modal__header-text{display:flex;flex-direction:column;gap:4px}.invite-modal__title{font-size:20px;font-weight:700;color:var(--cf-color-body-text)}.invite-modal__subtitle{font-size:14px;color:var(--cf-color-text-muted)}.invite-modal__close{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;border-radius:8px;background:transparent;color:var(--cf-color-text-muted);cursor:pointer;flex-shrink:0;transition:all .15s ease}.invite-modal__close:hover{background:var(--cf-color-hover);color:var(--cf-color-body-text)}.invite-modal__input-section{display:flex;flex-direction:column;gap:8px}.invite-modal__label{font-size:14px;font-weight:600;color:var(--cf-color-body-text)}.invite-modal__input-wrapper{display:flex;flex-wrap:wrap;align-items:center;gap:8px;min-height:44px;padding:8px 12px;background:var(--cf-color-surface-solid-dim);border:1px solid var(--cf-color-border);border-radius:8px;cursor:text;transition:border-color .15s ease}.invite-modal__input-wrapper:focus-within{border-color:var(--cf-color-accent)}.invite-modal__input{flex:1;min-width:140px;padding:4px 0;font-size:14px;font-family:Inter,system-ui,-apple-system,sans-serif;color:var(--cf-color-body-text);background:transparent;border:none;outline:none}.invite-modal__input::placeholder{color:var(--cf-color-text-dimmed)}.invite-modal__hint{font-size:10px;color:var(--cf-color-text-dimmed)}.invite-modal__tags{display:contents}.invite-modal__tag{display:inline-flex;align-items:center;gap:4px;padding:4px 4px 4px 10px;background:var(--cf-color-accent-ghost);border:1px solid var(--cf-color-accent-subtle);border-radius:9999px;font-size:12px;color:var(--cf-color-accent-text);line-height:1;animation:tag-pop .15s ease-out}@keyframes tag-pop{0%{transform:scale(.8);opacity:0}to{transform:scale(1);opacity:1}}.invite-modal__tag-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:180px}.invite-modal__tag-remove{display:flex;align-items:center;justify-content:center;width:18px;height:18px;padding:0;border:none;border-radius:50%;background:transparent;color:var(--cf-color-accent-text);cursor:pointer;opacity:.6;transition:opacity .15s ease,background .15s ease}.invite-modal__tag-remove:hover{opacity:1;background:#00000014}.invite-modal__permissions{display:flex;align-items:center;justify-content:space-between;gap:12px}.invite-modal__perm-label{font-size:14px;color:var(--cf-color-text-muted)}.invite-modal__perm-toggle{display:flex;gap:4px;padding:4px;background:var(--cf-color-surface-solid-dim);border-radius:8px}.invite-modal__perm-btn{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;font-size:12px;font-family:Inter,system-ui,-apple-system,sans-serif;font-weight:500;color:var(--cf-color-text-muted);background:transparent;border:none;border-radius:6px;cursor:pointer;transition:all .15s ease;white-space:nowrap}.invite-modal__perm-btn:hover:not(.is-active){color:var(--cf-color-body-text)}.invite-modal__perm-btn.is-active{color:var(--cf-color-body-text);background:var(--cf-color-surface);box-shadow:var(--cf-shadow-sm);font-weight:600}.invite-modal__send{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:12px 16px;font-size:14px;font-family:Inter,system-ui,-apple-system,sans-serif;font-weight:600;color:#fff;background:var(--cf-color-accent);border:none;border-radius:8px;cursor:pointer;transition:opacity .15s ease,transform .15s ease}.invite-modal__send:hover:not(:disabled){opacity:.9}.invite-modal__send:active:not(:disabled){transform:scale(.98)}.invite-modal__send:disabled{opacity:.5;cursor:not-allowed}.invite-modal__spinner{animation:invite-spin .8s linear infinite}@keyframes invite-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.invite-modal__divider{display:flex;align-items:center;gap:12px}.invite-modal__divider:before,.invite-modal__divider:after{content:"";flex:1;height:1px;background:var(--cf-color-border-subtle)}.invite-modal__divider span{font-size:12px;color:var(--cf-color-text-dimmed);white-space:nowrap}.invite-modal__link{display:flex;border:1px solid var(--cf-color-border);border-radius:8px;overflow:hidden}.invite-modal__link-input{flex:1;padding:10px 12px;font-size:14px;font-family:ui-monospace,Cascadia Code,Source Code Pro,monospace;color:var(--cf-color-text-muted);background:var(--cf-color-surface-solid-dim);border:none;outline:none;min-width:0}.invite-modal__link-copy{padding:10px 16px;font-size:14px;font-family:Inter,system-ui,-apple-system,sans-serif;font-weight:600;color:var(--cf-color-accent-text);background:transparent;border:none;border-left:1px solid var(--cf-color-border);cursor:pointer;transition:background .15s ease;white-space:nowrap}.invite-modal__link-copy:hover{background:var(--cf-color-hover-subtle)}.invite-modal__members{display:flex;flex-direction:column;gap:12px}.invite-modal__members-title{font-size:12px;font-weight:600;color:var(--cf-color-text-muted);text-transform:uppercase;letter-spacing:.04em}.invite-modal__member{display:flex;align-items:center;gap:12px;padding:8px 0}.invite-modal__member:not(:last-child){border-bottom:1px solid var(--cf-color-border-subtle);padding-bottom:12px}.invite-modal__member-avatar{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;background:var(--cf-color-accent-ghost);color:var(--cf-color-accent-text);font-size:12px;font-weight:700;flex-shrink:0}.invite-modal__member-info{display:flex;flex-direction:column;gap:1px;min-width:0;flex:1}.invite-modal__member-name{font-size:14px;font-weight:600;color:var(--cf-color-body-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.invite-modal__member-email{font-size:12px;color:var(--cf-color-text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.invite-modal__member-role{flex-shrink:0;padding:4px 8px;font-size:10px;font-weight:600;border-radius:9999px;text-transform:capitalize}.invite-modal__member-role--owner{color:var(--cf-color-accent-text);background:var(--cf-color-accent-ghost)}.invite-modal__member-role--editor{color:#f59e0b;background:#f59e0b1f}.invite-modal__member-role--viewer{color:var(--cf-color-text-muted);background:var(--cf-color-surface-solid-dim);border:1px solid var(--cf-color-border-subtle)}.invite-modal__toast{position:fixed;bottom:24px;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:8px;padding:12px 20px;background:var(--cf-color-surface-solid);border:1px solid var(--cf-color-border);border-radius:9999px;box-shadow:var(--cf-shadow-lg);font-size:14px;font-weight:500;color:var(--cf-color-body-text);z-index:61;animation:toast-slide .25s ease-out}.invite-modal__toast.is-hidden{display:none}.invite-modal__toast svg{color:#10b981}@keyframes toast-slide{0%{transform:translate(-50%) translateY(8px);opacity:0}to{transform:translate(-50%) translateY(0);opacity:1}}@media(max-width:767px){.trip-header{flex-wrap:wrap;gap:12px;padding:12px 16px}.trip-header__left{gap:8px}.trip-header__back{width:32px;height:32px}.trip-header__tabs{order:3;width:100%;margin-left:0;justify-content:center}.trip-header__tab{flex:1;justify-content:center;padding:8px 12px;font-size:12px}.trip-header__actions{margin-left:auto}.trip-header__name{max-width:140px;font-size:14px}.trip-header__meta{font-size:10px}.trip-header__add-btn{padding:8px 12px;font-size:12px}.trip-screen{padding:16px}.itinerary__destinations{gap:8px;flex-direction:column}.itinerary__dest-badge{width:100%}.itinerary__day-header{gap:8px}.itinerary__day-badge{width:28px;height:28px;font-size:12px}.itinerary__timeline{margin-left:8px;padding-left:12px}.itinerary__item{flex-direction:column;gap:8px}.itinerary__item-time{min-width:0;font-size:11px}.itinerary__item-name{font-size:14px}.itinerary__item-tags{flex-wrap:wrap}.itinerary__empty-day{padding:16px 12px}.bookings__summary{gap:12px;padding:16px}.bookings__summary-value{font-size:20px}.bookings__grid{grid-template-columns:1fr;gap:12px}.bookings__card-details{gap:4px;font-size:11px}.trip-share__card{padding:20px 16px}.trip-share__title{font-size:20px}.trip-share__stats{gap:12px}.trip-share__link{flex-direction:column;gap:8px}.trip-share__link-copy{width:100%}.trip-share__invite{font-size:14px}.invite-modal{align-items:flex-end}.invite-modal__card{max-width:100%;max-height:92vh;border-radius:16px 16px 0 0;padding:20px 16px;gap:16px}.invite-modal__header{gap:12px}.invite-modal__title{font-size:16px}.invite-modal__subtitle{font-size:12px}.invite-modal__close{width:32px;height:32px}.invite-modal__input{font-size:16px}.invite-modal__perm-toggle{width:100%}.invite-modal__perm-btn{flex:1;justify-content:center;font-size:12px;padding:8px 12px}.invite-modal__send{font-size:14px}.invite-modal__link{flex-direction:column;gap:8px}.invite-modal__link-copy{width:100%}.invite-modal__member{padding:8px 0}.invite-modal__member-avatar{width:28px;height:28px;font-size:12px}.invite-modal__member-name{font-size:14px}.invite-modal__member-email{font-size:10px}.invite-modal__toast{width:calc(100% - 32px);left:16px;transform:translate(0) translateY(0);bottom:16px}}.booking-drawer{position:fixed;inset:0;z-index:60;display:flex;flex-direction:column;justify-content:flex-end;pointer-events:none}.booking-drawer__backdrop{position:absolute;inset:0;background:#00000080;opacity:0;transition:opacity .3s ease-out;pointer-events:auto;cursor:pointer}.booking-drawer.is-open .booking-drawer__backdrop{opacity:1}.booking-drawer__panel{position:relative;display:flex;flex-direction:column;height:70vh;max-height:70vh;background:var(--cf-color-surface-overlay);border-top-left-radius:16px;border-top-right-radius:16px;box-shadow:var(--cf-shadow-lg);transform:translateY(100%);transition:transform .3s ease-out;pointer-events:auto;overflow:hidden}.booking-drawer.is-open .booking-drawer__panel{transform:translateY(0)}.booking-drawer__header{flex-shrink:0;padding:12px 20px 0}.booking-drawer__handle{width:36px;height:4px;margin:0 auto 12px;background:var(--cf-color-handle);border-radius:9999px}.booking-drawer__header-row{display:flex;align-items:center;justify-content:space-between;padding-bottom:12px}.booking-drawer__title{font-size:20px;font-weight:700;color:var(--cf-color-body-text)}.booking-drawer__close{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;border-radius:8px;background:transparent;color:var(--cf-color-text-muted);cursor:pointer;transition:background .15s ease,color .15s ease}.booking-drawer__close:hover{background:var(--cf-color-hover);color:var(--cf-color-body-text)}.booking-drawer__tabs{display:flex;gap:4px;padding:0 20px;border-bottom:1px solid var(--cf-color-border);flex-shrink:0}.booking-drawer__tab{display:inline-flex;align-items:center;gap:6px;padding:12px 16px;font-size:14px;font-family:Inter,system-ui,-apple-system,sans-serif;font-weight:500;color:var(--cf-color-text-muted);background:transparent;border:none;border-bottom:2px solid transparent;cursor:pointer;transition:color .15s ease,border-color .15s ease;white-space:nowrap}.booking-drawer__tab svg{flex-shrink:0}.booking-drawer__tab:hover:not(.is-active){color:var(--cf-color-body-text)}.booking-drawer__tab.is-active{color:var(--cf-color-accent-text);border-bottom-color:var(--cf-color-accent);font-weight:600}.booking-drawer__content{flex:1;overflow-y:auto;padding:20px}.drawer-search{display:flex;flex-direction:column;gap:12px;padding:16px;margin-bottom:16px;background:var(--cf-color-surface-solid-dim);border:1px solid var(--cf-color-border-subtle);border-radius:12px}.drawer-search__row{display:flex;gap:12px}.drawer-search__row--modes{gap:8px}.drawer-search__field{display:flex;flex-direction:column;gap:4px;flex:1;min-width:0}.drawer-search__label{font-size:10px;font-weight:600;color:var(--cf-color-text-muted);text-transform:uppercase;letter-spacing:.04em}.drawer-search__input{width:100%;padding:8px 12px;font-size:14px;font-family:Inter,system-ui,-apple-system,sans-serif;color:var(--cf-color-body-text);background:var(--cf-color-surface-solid);border:1px solid var(--cf-color-border);border-radius:8px;outline:none;transition:border-color .15s ease}.drawer-search__input::placeholder{color:var(--cf-color-text-placeholder)}.drawer-search__input:focus{border-color:var(--cf-color-accent)}.drawer-search__input:read-only{background:var(--cf-color-surface-solid-dim);cursor:default}.drawer-search__mode{display:inline-flex;align-items:center;gap:4px;padding:8px 12px;font-size:12px;font-family:Inter,system-ui,-apple-system,sans-serif;font-weight:500;color:var(--cf-color-text-muted);background:var(--cf-color-surface-solid);border:1px solid var(--cf-color-border);border-radius:9999px;cursor:pointer;transition:all .15s ease;white-space:nowrap}.drawer-search__mode:hover:not(.is-active){border-color:var(--cf-color-accent-subtle);color:var(--cf-color-body-text)}.drawer-search__mode.is-active{background:var(--cf-color-accent);border-color:var(--cf-color-accent);color:#fff;font-weight:600}.drawer-results{display:flex;flex-direction:column;gap:12px}.drawer-results__header{display:flex;align-items:center;justify-content:space-between;padding-bottom:8px}.drawer-results__count{font-size:12px;font-weight:600;color:var(--cf-color-body-text)}.drawer-results__sort{font-size:12px;color:var(--cf-color-text-muted)}.drawer-result{display:flex;align-items:center;gap:16px;padding:16px;background:var(--cf-color-surface);border:1px solid var(--cf-color-border);border-radius:12px;transition:border-color .15s ease,box-shadow .15s ease}.drawer-result:hover{border-color:var(--cf-color-accent-subtle);box-shadow:var(--cf-shadow-sm)}.drawer-result__main{display:flex;flex-direction:column;gap:4px;flex:1;min-width:0}.drawer-result__header{display:flex;align-items:center;gap:8px}.drawer-result__provider{font-size:14px;font-weight:600;color:var(--cf-color-body-text)}.drawer-result__badge{display:inline-block;padding:2px 8px;font-size:10px;font-weight:600;border-radius:6px}.drawer-result__badge--flight{color:#3b82f6;background:#3b82f61f}.drawer-result__badge--transport{color:#6366f1;background:#6366f11f}.drawer-result__route{font-size:14px;color:var(--cf-color-body-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.drawer-result__meta{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--cf-color-text-muted)}.drawer-result__dot{color:var(--cf-color-text-dimmed)}.drawer-result__action{display:flex;flex-direction:column;align-items:flex-end;gap:8px;flex-shrink:0}.drawer-result__price{font-size:16px;font-weight:700;color:var(--cf-color-body-text)}.drawer-result__add{display:inline-flex;align-items:center;gap:4px;padding:6px 12px;font-size:12px;font-family:Inter,system-ui,-apple-system,sans-serif;font-weight:600;color:#fff;background:var(--cf-color-accent);border:none;border-radius:8px;cursor:pointer;transition:opacity .15s ease,transform .15s ease,background .15s ease;white-space:nowrap}.drawer-result__add svg{flex-shrink:0}.drawer-result__add:hover:not(:disabled){opacity:.9}.drawer-result__add:active:not(:disabled){transform:scale(.95)}.drawer-result__add:disabled{cursor:default}.drawer-result__add.is-added{background:#10b981}.drawer-filters{display:flex;gap:8px;margin-bottom:16px}.drawer-filter{display:inline-flex;align-items:center;gap:4px;padding:6px 12px;font-size:12px;font-family:Inter,system-ui,-apple-system,sans-serif;font-weight:500;color:var(--cf-color-text-secondary);background:var(--cf-color-surface-solid);border:1px solid var(--cf-color-border);border-radius:9999px;cursor:pointer;transition:all .15s ease;white-space:nowrap}.drawer-filter:hover:not(.is-active){border-color:var(--cf-color-accent-subtle);color:var(--cf-color-accent-text)}.drawer-filter.is-active{background:var(--cf-color-accent);border-color:var(--cf-color-accent);color:#fff;font-weight:600}.drawer-activities{display:flex;flex-direction:column;gap:12px}.drawer-activity{display:flex;align-items:center;gap:12px;padding:12px 16px;background:var(--cf-color-surface);border:1px solid var(--cf-color-border);border-radius:12px;transition:border-color .15s ease,box-shadow .15s ease}.drawer-activity:hover{border-color:var(--cf-color-accent-subtle);box-shadow:var(--cf-shadow-sm)}.drawer-activity__emoji{font-size:24px;flex-shrink:0;line-height:1}.drawer-activity__info{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}.drawer-activity__name{font-size:14px;font-weight:600;color:var(--cf-color-body-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.drawer-activity__meta{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--cf-color-text-muted)}.drawer-activity__source{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.drawer-activity__dot{color:var(--cf-color-text-dimmed);flex-shrink:0}.drawer-activity__action{display:flex;flex-direction:column;align-items:flex-end;gap:8px;flex-shrink:0}.drawer-activity__price{font-size:14px;font-weight:700;color:var(--cf-color-body-text)}.drawer-activity__add{display:inline-flex;align-items:center;gap:4px;padding:6px 12px;font-size:12px;font-family:Inter,system-ui,-apple-system,sans-serif;font-weight:600;color:#fff;background:var(--cf-color-accent);border:none;border-radius:8px;cursor:pointer;transition:opacity .15s ease,transform .15s ease,background .15s ease;white-space:nowrap}.drawer-activity__add svg{flex-shrink:0}.drawer-activity__add:hover:not(:disabled){opacity:.9}.drawer-activity__add:active:not(:disabled){transform:scale(.95)}.drawer-activity__add:disabled{cursor:default}.drawer-activity__add.is-added{background:#10b981}.drawer-hotel{display:flex;align-items:center;gap:16px;padding:16px;background:var(--cf-color-surface);border:1px solid var(--cf-color-border);border-radius:12px;transition:border-color .15s ease,box-shadow .15s ease}.drawer-hotel:hover{border-color:var(--cf-color-accent-subtle);box-shadow:var(--cf-shadow-sm)}.drawer-hotel__info{display:flex;flex-direction:column;gap:6px;flex:1;min-width:0}.drawer-hotel__header{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.drawer-hotel__name{font-size:14px;font-weight:600;color:var(--cf-color-body-text)}.drawer-hotel__rating{font-size:12px;color:#f59e0b;letter-spacing:1px;line-height:1}.drawer-hotel__location{font-size:12px;color:var(--cf-color-text-muted)}.drawer-hotel__features{display:flex;flex-wrap:wrap;gap:4px;margin-top:4px}.drawer-hotel__feature{display:inline-block;padding:2px 8px;font-size:10px;font-weight:500;color:var(--cf-color-text-muted);background:var(--cf-color-surface-solid-dim);border:1px solid var(--cf-color-border-subtle);border-radius:9999px}.drawer-hotel__action{display:flex;flex-direction:column;align-items:flex-end;gap:4px;flex-shrink:0}.drawer-hotel__price{font-size:16px;font-weight:700;color:var(--cf-color-body-text)}.drawer-hotel__per-night{font-size:10px;color:var(--cf-color-text-muted)}.drawer-hotel__add{display:inline-flex;align-items:center;gap:4px;padding:6px 12px;font-size:12px;font-family:Inter,system-ui,-apple-system,sans-serif;font-weight:600;color:#fff;background:var(--cf-color-accent);border:none;border-radius:8px;cursor:pointer;transition:opacity .15s ease,transform .15s ease,background .15s ease;white-space:nowrap;margin-top:8px}.drawer-hotel__add svg{flex-shrink:0}.drawer-hotel__add:hover:not(:disabled){opacity:.9}.drawer-hotel__add:active:not(:disabled){transform:scale(.95)}.drawer-hotel__add:disabled{cursor:default}.drawer-hotel__add.is-added{background:#10b981}@media(max-width:767px){.booking-drawer__panel{height:85vh;max-height:85vh;border-top-left-radius:12px;border-top-right-radius:12px}.booking-drawer__header{padding:8px 16px 0}.booking-drawer__tabs{padding:0 16px;overflow-x:auto;-webkit-overflow-scrolling:touch}.booking-drawer__tabs::-webkit-scrollbar{display:none}.booking-drawer__tab{padding:8px 12px;font-size:12px}.booking-drawer__content{padding:16px}.drawer-search{padding:12px}.drawer-search__row{flex-direction:column;gap:8px}.drawer-search__row--modes{flex-direction:row}.drawer-result{flex-direction:column;align-items:flex-start;gap:12px}.drawer-result__action{flex-direction:row;align-items:center;gap:12px;width:100%;justify-content:space-between}.drawer-hotel{flex-direction:column;align-items:flex-start;gap:12px}.drawer-hotel__action{flex-direction:row;align-items:center;gap:12px;width:100%;justify-content:space-between}}.maplibregl-canvas-container,.maplibregl-canvas{position:absolute!important;top:0!important;left:0!important}.maplibregl-map{position:relative!important;width:100%!important;height:100%!important;overflow:hidden!important}.maplibregl-popup-content{background:var(--cf-color-popup-bg)!important;color:var(--cf-color-popup-text)!important;border-radius:12px!important;padding:10px 14px!important;font-size:13px;box-shadow:var(--cf-shadow-md)!important;border:1px solid var(--cf-color-popup-border)!important}.maplibregl-popup-tip{border-top-color:var(--cf-color-popup-bg)!important}.maplibregl-popup-close-button{color:var(--cf-color-popup-close);font-size:16px;padding:2px 6px}.maplibregl-popup-close-button:hover{color:var(--cf-color-popup-close-hover);background:transparent}.maplibregl-ctrl-group{background:var(--cf-color-search-pill-bg)!important;backdrop-filter:blur(24px) saturate(1.4)!important;-webkit-backdrop-filter:blur(24px) saturate(1.4)!important;border:none!important;border-radius:12px!important;box-shadow:var(--cf-shadow-control)!important;overflow:hidden;padding:4px!important;display:flex;flex-direction:column;gap:0}.maplibregl-ctrl-group button{filter:var(--cf-ctrl-invert);background:var(--cf-color-ctrl-btn-bg)!important;border-radius:0!important;transition:background-color .15s ease;width:28px!important;height:28px!important}.maplibregl-ctrl-group button:hover{background:var(--cf-color-ctrl-btn-hover)!important}.maplibregl-ctrl-group button .maplibregl-ctrl-icon{background-size:14px 14px!important}.maplibregl-ctrl-group button:first-child{border-radius:8px 8px 0 0!important;border-bottom:1px solid rgba(255,255,255,.2)!important}.maplibregl-ctrl-group button:last-child{border-radius:0 0 8px 8px!important}.maplibregl-ctrl-group button+button{border-top:none!important}#sidebar-content::-webkit-scrollbar,#mobile-sidebar-content::-webkit-scrollbar{width:5px}#sidebar-content::-webkit-scrollbar-track,#mobile-sidebar-content::-webkit-scrollbar-track{background:transparent}#sidebar-content::-webkit-scrollbar-thumb,#mobile-sidebar-content::-webkit-scrollbar-thumb{background:var(--cf-color-scrollbar);border-radius:3px}#sidebar-content::-webkit-scrollbar-thumb:hover,#mobile-sidebar-content::-webkit-scrollbar-thumb:hover{background:var(--cf-color-scrollbar-hover)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body{height:100%;width:100%;overflow:hidden;background-color:var(--cf-color-body-bg);color:var(--cf-color-body-text);font-family:Inter,system-ui,-apple-system,sans-serif}.is-hidden{display:none!important}.app-shell{height:100vh;width:100vw;display:flex;flex-direction:column;overflow:hidden}@media(min-width:768px){.app-shell{flex-direction:row}}.main-content{flex:1;display:flex;overflow:hidden}#map{width:100%;height:100%}.map-wrapper{flex:1;position:relative;min-width:0}.map-wrapper #map{position:absolute;inset:0}.pulse-marker{position:relative;width:28px;height:28px;cursor:pointer}.pulse-marker-dot{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:14px;height:14px;background:#fff;border:2.5px solid #3b82f6;border-radius:50%;z-index:2}.pulse-marker-ring{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:14px;height:14px;border:2px solid rgba(59,130,246,.7);border-radius:50%;animation:pulse-expand 1.8s ease-out infinite;z-index:1}@keyframes pulse-expand{0%{width:14px;height:14px;opacity:1}to{width:52px;height:52px;opacity:0}}.airport-badge{display:flex;flex-direction:column;align-items:stretch;background:var(--cf-color-accent);color:#fff;border-radius:8px;font-size:13px;font-weight:600;font-family:inherit;white-space:nowrap;box-shadow:0 2px 8px #0000004d;cursor:default;pointer-events:auto;overflow:hidden}.airport-badge__row{display:flex;align-items:center;gap:6px;padding:6px 10px}.airport-badge__close{display:flex;align-items:center;justify-content:center;width:18px;height:18px;padding:0;margin-left:2px;border:none;border-radius:50%;background:#ffffff40;color:#fff;font-size:14px;line-height:1;cursor:pointer;transition:background .15s}.airport-badge__close:hover{background:#ffffff73}.airport-badge__cta{display:flex;align-items:center;justify-content:space-between;gap:4px;padding:5px 10px;background:#0000002e;color:#fff;font-size:12px;font-weight:600;text-decoration:none;border-top:1px solid rgba(255,255,255,.18);transition:background .15s}.airport-badge__cta:hover{background:#00000047;text-decoration:none}.airport-badge__cta svg{flex-shrink:0;opacity:.85}.chain-badge{display:flex;align-items:center;gap:4px;padding:4px 6px 4px 8px;background:var(--cf-color-accent);color:#fff;border-radius:8px;font-family:inherit;white-space:nowrap;box-shadow:0 2px 8px #0000004d;cursor:default;pointer-events:auto;opacity:0;transform:translateY(4px);animation:chain-badge-in .25s ease-out forwards}@keyframes chain-badge-in{to{opacity:1;transform:translateY(0)}}.chain-badge__text{display:flex;flex-direction:column;line-height:1.2}.chain-badge__label{font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;opacity:.7}.chain-badge__city{font-size:12px;font-weight:600}.chain-badge__close{display:flex;align-items:center;justify-content:center;width:16px;height:16px;padding:0;margin-left:2px;border:none;border-radius:50%;background:#fff3;color:#fff;cursor:pointer;transition:background .15s}.chain-badge__close:hover{background:#fff6}.badge{display:inline-block;padding:3px 8px;background:var(--cf-color-surface-solid);border:1px solid var(--cf-color-border);border-radius:6px;font-family:ui-monospace,Cascadia Code,Source Code Pro,monospace;font-weight:600;font-size:12px;color:var(--cf-color-accent-text);line-height:1}.badge--small{background:var(--cf-color-surface-solid-dim);border-color:var(--cf-color-border-subtle);font-size:10px;padding:2px 6px;color:var(--cf-color-text-muted)}@keyframes cta-pulse{0%{box-shadow:0 0 #16a34a73,var(--cf-shadow-control)}60%{box-shadow:0 0 0 12px #16a34a00,var(--cf-shadow-control)}to{box-shadow:0 0 #16a34a00,var(--cf-shadow-control)}}.cta-pulse{animation:cta-pulse 2.6s cubic-bezier(.4,0,.2,1) infinite}.cta-pulse:hover{animation-play-state:paused}@media(prefers-reduced-motion:reduce){.cta-pulse{animation:none}}.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
