@media (prefers-color-scheme:light){:root:not([data-theme=dark]){--bg-app:#f6f6f4;--bg-subtle:#efeeeb;--bg-card:#fff;--bg-card-hover:#fafaf9;--bg-glass:#fffffff0;--bg-elevated:#fff;--bg-input:#fff;--border-subtle:#e7e5e4;--border-card:#e7e5e4;--border-medium:#d6d3d1;--border-strong:#a8a29e;--border-active:#1c1917;--text-primary:#1c1917;--text-secondary:#57534e;--text-muted:#6b6560;--text-inverse:#fafaf9;--ink:#1c1917;--on-ink:#fff;--primary:#e11d48;--primary-hover:#be123c;--primary-light:#e11d4814;--primary-subtle:#e11d480d;--primary-glow:#e11d4833;--primary-solid:#e11d48;--primary-gradient:#e11d48;--accent-coral:#be123c;--accent-coral-light:#e11d4814;--accent-emerald:#047857;--accent-emerald-light:#04785714;--accent-amber:#b45309;--accent-amber-light:#b4530914;--accent-cyan:#0e7490;--accent-cyan-light:#0e749014;--cat-flight:#2563eb;--cat-flight-bg:#2563eb14;--cat-hotel:#7c3aed;--cat-hotel-bg:#7c3aed14;--cat-activity:#047857;--cat-activity-bg:#04785714;--cat-dining:#c2410c;--cat-dining-bg:#c2410c14;--cat-transit:#0f766e;--cat-transit-bg:#0f766e14;--cat-rental:#57534e;--cat-rental-bg:#57534e14;--cat-note:#be185d;--cat-note-bg:#be185d14;--shadow-xs:0 1px 2px #1c19170d;--shadow-sm:0 1px 3px #1c191712, 0 1px 2px #1c19170a;--shadow-card:0 1px 2px #1c19170a;--shadow-md:0 4px 12px -2px #1c191714, 0 2px 4px #1c19170a;--shadow-lg:0 12px 32px -8px #1c191729, 0 2px 6px #1c19170d;--shadow-xl:0 24px 48px -12px #1c191738}}@keyframes shimmer-sweep{0%{background-position:-200% 0}to{background-position:200% 0}}@media (width>=768px){.shimmer-hero-container{height:240px;padding:32px}}@media (width<=640px){.shimmer-hero-container{border-radius:var(--radius-lg);height:auto;min-height:180px;margin-bottom:14px;padding:16px 14px 14px}.shimmer-hero-content{flex-direction:column;align-items:stretch;gap:10px}}@media (width>=900px){.app-container{padding-bottom:0}}@media (width>=900px){.main-content{padding:28px 24px 60px}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@supports (-webkit-touch-callout:none){input,select,textarea{font-size:var(--fs-lg)!important}}@media (width<=640px){.navbar-inner{gap:6px;padding:8px 12px}.navbar-brand-group{flex:auto;gap:6px;min-width:0}.brand-logo{flex-shrink:0}.brand-logo span{display:none}.navbar-trip-selector-wrapper{flex:0 auto;min-width:0;max-width:160px}.navbar-trip-btn{font-size:var(--fs-sm);gap:5px;max-width:100%;padding:5px 8px}.navbar-trip-title{max-width:130px;font-size:var(--fs-xs)}.navbar-actions-group{flex-shrink:0;gap:4px}.navbar-actions-group .sync-pill,.navbar-share-btn,.navbar-ai-btn{display:none!important}.navbar-actions-group .btn-icon{width:34px!important;height:34px!important}}@media (width<=380px){.navbar-inner{gap:6px;padding:6px 10px}.navbar-trip-selector-wrapper{flex:1;min-width:0;max-width:165px}.navbar-trip-btn{gap:4px;padding:4px 8px}.navbar-trip-title{max-width:110px;font-size:var(--fs-xs)}.navbar-actions-group{gap:3px}.navbar-actions-group .btn-icon{width:30px!important;height:30px!important}}@media (width>=900px){.bottom-nav{display:none}}@media (width<=899px){.mobile-fab-add-btn{right:18px;bottom:calc(64px + var(--sab,0px) + 14px);z-index:1500;border-radius:var(--radius-full,9999px);background:var(--primary-gradient);color:#fff;cursor:pointer;width:48px;height:48px;transition:transform var(--transition-fast), box-shadow var(--transition-fast);border:none;justify-content:center;align-items:center;position:fixed;box-shadow:0 4px 18px #ff385c73,0 2px 6px #00000029;display:flex!important}.mobile-fab-add-btn:active{transform:scale(.92);box-shadow:0 2px 8px #ff385c59}}@keyframes slideUpSheet{0%{opacity:0;transform:translateY(14px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@media (width>=900px){.bottom-nav-sheet-backdrop,.bottom-nav-more-sheet{display:none!important}}@media (width<=640px){.desktop-pulse-wrapper{display:none!important}.mobile-pulse-page{width:100%;margin-top:4px;padding-bottom:32px}}@media (width<=640px){.hide-on-mobile{display:none!important}}@media (width>=900px){.all-trips-link{display:inline-flex}}@media (width<=640px){.trip-pulse-tabs{scrollbar-width:none;-webkit-overflow-scrolling:touch;flex-wrap:nowrap;overflow-x:auto}.trip-pulse-tabs::-webkit-scrollbar{display:none}.trip-pulse-chip{font-size:var(--fs-xs);flex-shrink:0;gap:5px;padding:5px 9px}.trip-pulse-chip-label-full{display:none}.trip-pulse-chip-label-short{display:inline}}@media (width<=767px){.desktop-tabs-bar{display:none}.trip-tabs-secondary{justify-content:flex-start;width:100%;margin-left:0}}@media (width>=768px){.trip-hero{padding:20px 24px}}@media (width<=480px){.trip-hero-reposition-hint span{display:none}}@media (width<=640px){.day-step-text{display:none}.day-step-btn{padding:8px 10px}}.timeline-container,.timeline-cards-list{flex-direction:column;gap:14px;display:flex;position:relative}.timeline-card-wrapper:hover .timeline-insert-marker,.timeline-card-wrapper:focus-within .timeline-insert-marker,:is(.timeline-card-wrapper:has(+.timeline-card-wrapper:hover) .timeline-insert-marker.insert-after,.timeline-card-wrapper:has(+.timeline-card-wrapper:focus-within) .timeline-insert-marker.insert-after){opacity:1}.timeline-card-wrapper:has(+.timeline-card-wrapper:hover) .timeline-insert-line{opacity:.85;transform:scaleX(1)}@keyframes pulse-live{0%{opacity:.8;transform:scale(.9)}50%{opacity:1;transform:scale(1.3)}to{opacity:.8;transform:scale(.9)}}@media (width<=420px){.item-when-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.item-when-label{grid-column:1/-1}.item-span-option{grid-template-columns:minmax(0,1fr)}}@media (width<=640px){.timeline-item-card{border-radius:var(--radius-sm);gap:12px;padding:14px 15px}.card-header-meta{align-items:flex-start}.timeline-item-card.has-bg-image .card-mobile-bg-fade{pointer-events:none;z-index:0;width:62%;display:block;position:absolute;top:0;bottom:0;right:0;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,#0000 0%,#00000040 20%,#000000d9 70%,#000 100%);mask-image:linear-gradient(90deg,#0000 0%,#00000040 20%,#000000d9 70%,#000 100%)}.card-mobile-bg-img{object-fit:cover;object-position:center right;opacity:.35;filter:saturate(1.15);width:100%;height:100%}[data-theme=light] .card-mobile-bg-img{opacity:.22}.timeline-item-card.has-bg-image .card-media-slot{display:none}.card-title{font-size:var(--fs-lg)}.nav-controls-unified{flex-direction:column;align-items:flex-start;gap:8px}.nav-modes-group{justify-content:flex-start;width:100%}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}@media (width<=640px){.modal-backdrop{align-items:flex-end;padding:0}.modal-sheet{border-bottom:none;border-left:none;border-right:none;border-radius:24px 24px 0 0;width:100%;max-height:90vh;padding-bottom:0;animation:.3s cubic-bezier(.16,1,.3,1) modalSheetSlideUp;max-width:100%!important}.modal-sheet-handle{z-index:11;display:block;position:sticky;top:0}.modal-footer{padding-bottom:calc(16px + var(--sab,0px))}}@keyframes modalSheetSlideUp{0%{opacity:.8;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}@media (width<=500px){.input-row{grid-template-columns:1fr}}@keyframes beaconPulse{0%{opacity:.8;transform:scale(.9);box-shadow:0 0 #38bdf8b3}70%{opacity:1;transform:scale(1.2);box-shadow:0 0 0 6px #38bdf800}to{opacity:.8;transform:scale(.9);box-shadow:0 0 #38bdf800}}@media (width<=600px){.flight-telemetry-grid{grid-template-columns:repeat(2,1fr)}.flight-route-card{flex-direction:column;align-items:stretch;gap:12px}.flight-airport-box.dest{text-align:left;align-items:flex-start}.flight-route-spine{width:100%}}@media (width<=640px){.poi-card-thumb{border-radius:var(--radius-sm);width:88px;height:68px}.timeline-item-body-row{gap:10px}}@keyframes dropdownFadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}@media (width<=640px){.trip-hero{border-radius:var(--radius-lg);min-height:62vw;box-shadow:var(--shadow-md);flex-direction:column;justify-content:flex-end;margin-bottom:12px;padding:14px 12px 12px;display:flex;height:auto!important}.trip-hero-overlay{background:linear-gradient(#080c1400 0% 25%,#080c14b3 55%,#080c14f0 100%)}.trip-hero-content{flex-direction:column;align-items:stretch;gap:8px;width:100%;display:flex}.trip-hero-main-info{flex-direction:column;gap:4px;width:100%;min-width:0;display:flex}.trip-hero-badges{flex-wrap:wrap;align-items:center;gap:6px;margin-bottom:0;display:flex}.hero-dest-pill,.hero-date-pill{font-size:var(--fs-2xs);border-radius:var(--radius-full);-webkit-backdrop-filter:blur(8px);color:#fff;background:#000000a6;border:1px solid #ffffff26;gap:4px;padding:3px 8px;font-weight:600}.hero-dest-pill span:last-child{text-overflow:ellipsis;white-space:nowrap;max-width:130px;overflow:hidden}.hero-date-desktop{display:none}.hero-date-mobile{display:inline}.hero-stay-pill,.hero-timezone-pill,.hero-art-pill,.hero-saving-cover-pill{display:none!important}.trip-hero-title{white-space:normal;word-break:break-word;color:#fff;text-shadow:0 2px 8px #00000080;max-width:100%;margin:1px 0 2px;font-weight:700;line-height:1.25;overflow:visible;font-size:var(--fs-2xl)!important}.trip-hero-bottom-bar{justify-content:space-between;align-items:center;gap:8px;width:100%;margin-top:2px;display:flex;flex-wrap:nowrap!important}.trip-hero-meta-row{align-items:center;gap:6px;min-width:0;margin-top:0;display:flex;overflow:hidden;flex-wrap:nowrap!important}.hero-tripmates-group{cursor:pointer;flex-shrink:0;align-items:center;gap:6px;min-height:28px;display:inline-flex}.hero-tripmates-count{font-size:var(--fs-xs);color:#fffffff2;white-space:nowrap;font-weight:600}@media (width<=380px){.hero-tripmates-count{display:none!important}}.hero-stops-pill{font-size:var(--fs-2xs);border-radius:var(--radius-full);-webkit-backdrop-filter:blur(8px);color:#fff;white-space:nowrap;background:#000000a6;border:1px solid #ffffff26;flex-shrink:0;align-items:center;gap:4px;padding:3px 8px;display:inline-flex}.hero-stops-duration,.hero-budget-pill{display:none!important}.trip-hero-actions{flex-shrink:0;justify-content:flex-end;align-items:center;gap:6px;margin-top:0;margin-left:auto;display:flex}.hero-ai-btn{display:none!important}.hero-btn-main{border-radius:var(--radius-sm);align-items:center;gap:4px;min-height:32px;font-weight:700;display:inline-flex;font-size:var(--fs-xs)!important;height:32px!important;padding:0 12px!important}.hero-btn-add-manual{border-radius:var(--radius-sm);min-height:32px;height:32px!important;font-size:var(--fs-xs)!important;padding:0 10px!important}.trip-hero .hero-share-btn,.trip-hero .hero-more-btn,.trip-hero .hero-add-stop-btn{-webkit-backdrop-filter:blur(8px);justify-content:center;align-items:center;display:inline-flex;border-radius:var(--radius-full)!important;color:#fff!important;background:#0000008c!important;border:1px solid #fff3!important;width:32px!important;min-width:32px!important;height:32px!important;min-height:32px!important;padding:0!important}.trip-hero .hero-share-btn:active,.trip-hero .hero-more-btn:active,.trip-hero .hero-add-stop-btn:active{transform:scale(.93);background:#000c!important}.day-tabs-scroll{gap:8px;margin-bottom:12px;padding-bottom:4px}.day-tab-btn{border-radius:var(--radius-sm);background:var(--bg-card);border:1px solid var(--border-card);min-height:44px;box-shadow:var(--shadow-xs);flex-direction:column;justify-content:center;align-items:center;gap:2px;padding:8px 13px;display:inline-flex}.day-tab-btn.active{background:var(--selected-bg);border-color:var(--selected-border);box-shadow:none}.day-tab-label{font-size:var(--fs-2xs);letter-spacing:.02em;text-transform:uppercase;font-weight:700}.day-tab-date{font-size:var(--fs-xs);font-weight:600}.timeline-desktop-actions{display:none!important}.timeline-mobile-search-toggle{border-radius:var(--radius-full);background:var(--bg-card);border:1px solid var(--border-card);width:36px;height:36px;box-shadow:var(--shadow-xs);flex-shrink:0;justify-content:center;align-items:center;position:relative;display:inline-flex!important}.timeline-mobile-add-btn{border-radius:var(--radius-full);height:36px;font-size:var(--fs-sm);color:#fff;background:var(--primary-gradient);border:none;flex-shrink:0;justify-content:center;align-items:center;gap:4px;padding:0 12px;font-weight:700;box-shadow:0 2px 8px #ff385c59;display:inline-flex!important}.timeline-mobile-add-btn:active{filter:brightness(.92);transform:scale(.95)}.timeline-category-chip{font-size:var(--fs-sm);border-radius:var(--radius-full);background:var(--bg-card);border:1px solid var(--border-card);min-height:34px;box-shadow:var(--shadow-xs);padding:7px 14px;font-weight:600}.timeline-category-chip.active{background:var(--selected-bg);color:var(--selected-text);border-color:var(--selected-border);box-shadow:none}.timeline-item-card{background:var(--bg-card)!important;border:1px solid var(--border-card)!important;box-shadow:var(--shadow-sm)!important;border-radius:var(--radius-md)!important;gap:13px!important;padding:16px!important}.card-action-btn{border-radius:var(--radius-xs)!important;width:36px!important;min-width:36px!important;height:36px!important;min-height:36px!important}.card-action-btn svg{width:15px!important;height:15px!important}.poi-card-thumb{border-radius:var(--radius-xs)!important;width:76px!important;height:76px!important}.flight-track-desktop{display:none!important}.flight-track-mobile{display:inline!important}.track-flight-btn{border-radius:var(--radius-full);min-height:28px;font-size:var(--fs-xs)!important;padding:4px 9px!important}.category-badge,.status-badge{border-radius:var(--radius-full);font-weight:600;font-size:var(--fs-xs)!important;padding:3px 8px!important}.card-time-badge{font-size:var(--fs-xs);padding:4px 10px;font-weight:700}.nav-mode-pill{font-size:var(--fs-xs);min-height:32px;padding:6px 12px}.timeline-day-header{flex-direction:row;justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px}.timeline-day-date{font-size:var(--fs-base)}.day-weather-badge{font-size:var(--fs-2xs);gap:5px;padding:3px 8px}.weather-badge-desc{display:none}}@media (width<=640px){.card-header-with-thumb,.timeline-item-header-group{gap:8px}.timeline-item-title{margin-bottom:3px;line-height:1.25;font-size:var(--fs-md)!important}.timeline-item-location{font-size:var(--fs-xs)!important}.poi-card-thumb{flex-shrink:0;border-radius:var(--radius-sm)!important;width:50px!important;height:44px!important}.timeline-item-notes{line-height:1.4;font-size:var(--fs-xs)!important}.timeline-item-notes-wrapper{margin-top:5px}.nav-controls-desktop{display:none!important}.nav-controls-mobile{border-top:1px dashed var(--border-subtle);justify-content:space-between;align-items:center;gap:6px;width:100%;margin-top:5px;padding-top:6px;display:flex!important}.nav-mobile-main-btn{border-radius:var(--radius-sm);background:var(--primary-light);color:var(--primary);font-size:var(--fs-2xs);white-space:nowrap;transition:all var(--transition-fast);border:1px solid #6366f140;align-items:center;gap:4px;padding:4px 9px;font-weight:700;text-decoration:none;display:inline-flex}.nav-mobile-main-btn:active{transform:scale(.97)}.nav-mobile-alt-modes{align-items:center;gap:4px;display:flex}.nav-mobile-chip{border-radius:var(--radius-xs);background:var(--bg-card);border:1px solid var(--border-subtle);font-size:var(--fs-2xs);color:var(--text-secondary);white-space:nowrap;align-items:center;gap:2px;padding:3px 6px;font-weight:600;text-decoration:none;display:inline-flex}.nav-mobile-chip.walk{color:#34d399}.nav-mobile-chip.transit{color:#a78bfa}.nav-mobile-chip.drive{color:#38bdf8}}@keyframes weather-sun-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes weather-sun-pulse{0%,to{opacity:.92;filter:drop-shadow(0 0 6px #f59e0b73);transform:scale(1)}50%{opacity:1;filter:drop-shadow(0 0 14px #f59e0bcc);transform:scale(1.08)}}@keyframes weather-cloud-drift{0%,to{transform:translate(0)translateY(0)}50%{transform:translate(3px)translateY(-2px)}}@keyframes weather-cloud-float{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}@keyframes weather-rain-drop{0%{opacity:0;transform:translateY(-4px)scaleY(.6)}30%{opacity:.9;transform:translateY(2px)scaleY(1)}70%{opacity:.9;transform:translateY(8px)scaleY(1)}to{opacity:0;transform:translateY(14px)scaleY(.6)}}@keyframes weather-snow-swirl{0%{opacity:0;transform:translateY(-3px)translate(-2px)rotate(0)}30%{opacity:1}70%{opacity:1}to{opacity:0;transform:translateY(12px)translate(2px)rotate(180deg)}}@keyframes weather-lightning-flash{0%,88%,94%,to{opacity:0;filter:drop-shadow(0 0 #0000)}90%,96%{opacity:1;filter:drop-shadow(0 0 10px #eab308e6)}}@keyframes weather-fog-shift{0%,to{opacity:.4;transform:translate(-4px)}50%{opacity:.85;transform:translate(4px)}}@keyframes weather-live-glow{0%,to{opacity:.6;transform:scale(.95)}50%{opacity:1;transform:scale(1.2)}}@media (width<=640px){.animated-weather-card{flex-direction:column;align-items:stretch;gap:8px;padding:10px 28px 10px 12px;position:relative}.animated-weather-card .animated-weather-main{align-items:center;gap:10px;width:100%}.animated-weather-card .animated-weather-icon-box{width:40px;height:40px}.animated-weather-card .animated-weather-live-indicator{position:absolute;top:10px;right:12px}.animated-weather-card .animated-weather-side{justify-content:flex-start;align-items:center;width:100%;display:flex}.animated-weather-card .animated-weather-advice{text-align:center;width:100%;font-size:var(--fs-2xs);justify-content:center;padding:3.5px 8px}}@media (width<=768px){.calendar-days-grid{gap:3px}.calendar-cell{min-height:80px;padding:4px}.calendar-cell-number{font-size:var(--fs-2xs)}.calendar-cell-trip-day{display:none}.calendar-event-chip{font-size:var(--fs-2xs);padding:1px 3px}.calendar-span-bar{--span-bleed:6.5px;height:15px;font-size:var(--fs-2xs);padding:0 3px}.chip-time{display:none}.calendar-month-title{font-size:var(--fs-base);min-width:110px}.hourly-slot-time{width:52px;font-size:var(--fs-2xs);padding:8px 4px}}@keyframes tooltipPopIn{0%{opacity:0;filter:blur(2px)}to{opacity:1;filter:blur()}}@keyframes card-flash{0%,30%{box-shadow:0 0 0 3px var(--primary)}to{box-shadow:0 0 0 3px #0000}}@media (prefers-reduced-motion:reduce){.timeline-card-wrapper.is-flash>.timeline-item-card{outline:3px solid var(--primary);animation:none}}@media (width<=640px){.ai-summary-style-pills{scrollbar-width:none;flex-wrap:nowrap;order:3;width:100%;overflow-x:auto}.ai-summary-style-pills::-webkit-scrollbar{display:none}.ai-style-pill{flex-shrink:0}.ai-metric-label{display:none}.ai-summary-title-group{flex:1 1 0;gap:6px;min-width:0}.ai-summary-label{flex-shrink:0}.ai-summary-stage-pill{white-space:nowrap;text-overflow:ellipsis;min-width:0;overflow:hidden}.ai-summary-controls{gap:0}.ai-summary-callout{padding-left:0}}@media (width<=640px){.day-weather-badge,.day-accommodation-chip,.day-rain-chip{min-height:24px;font-size:var(--fs-2xs);gap:5px;padding:3px 8px}}@keyframes location-card-fade-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}@keyframes split-card-pulse{0%{transform:scale(1)}20%{transform:scale(1.02)}40%{transform:scale(1)}60%{transform:scale(1.01)}to{transform:scale(1)}}@media (width<=960px){.split-trip-container{grid-template-columns:1fr;gap:16px}.split-map-pane{order:1;height:380px;min-height:340px;position:static}.split-timeline-pane{order:2;max-height:none;padding-right:0}}@keyframes sync-pill-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.sync-pill-spin{animation:none}}@media (width<=640px){.sync-pill{padding:5px}.sync-pill:not(.sync-pill--failed):not(.sync-pill--offline) .sync-pill-label{display:none}.sync-pill--failed,.sync-pill--offline{padding:4px 8px}}@media (width<=899px){.floating-sync-container{bottom:calc(76px + var(--sab,0px));left:14px}}.floating-sync-pill--dot-mode .floating-sync-label,.floating-sync-pill--dot-mode .floating-sync-icon{display:none}@keyframes sync-ring-pulse{0%{opacity:.9;transform:scale(.8)}70%{opacity:0;transform:scale(2.3)}to{opacity:0;transform:scale(2.3)}}@keyframes floatingSyncPopoverFade{0%{opacity:0;transform:translateY(6px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}@media (width<=640px){.floating-sync-pill{border-radius:50%!important;justify-content:center!important;gap:0!important;width:34px!important;height:34px!important;padding:7px!important}.floating-sync-pill .floating-sync-label,.floating-sync-pill .floating-sync-icon{display:none!important}.floating-sync-pill .floating-sync-dot{width:10px!important;height:10px!important}.floating-sync-popover{width:auto!important;max-width:calc(100vw - 28px)!important;left:14px!important;right:14px!important;bottom:calc(120px + var(--sab,0px))!important;position:fixed!important}}@media (width<=640px){.notes-panel-container{gap:12px}.notes-top-header{flex-wrap:nowrap;justify-content:space-between;align-items:center;gap:8px}.notes-title{font-size:var(--fs-lg);gap:6px}.notes-title-full{display:none}.notes-title-short{display:inline}.notes-subtitle{display:none}.notes-action-btn{flex-shrink:0;font-size:var(--fs-xs)!important;gap:4px!important;padding:5px 10px!important}.notes-action-label-full{display:none}.notes-action-label-short{display:inline}.notes-toolbar{flex-direction:column;align-items:stretch;gap:8px}.notes-search-box{flex:none;width:100%}.notes-category-chips{-webkit-overflow-scrolling:touch;scrollbar-width:none;flex-wrap:nowrap;padding-bottom:2px;overflow-x:auto}.notes-category-chips::-webkit-scrollbar{display:none}.notes-category-chip{white-space:nowrap;flex-shrink:0}.notes-chip-full{display:none}.notes-chip-short{display:inline}.packing-category-chips{-webkit-overflow-scrolling:touch!important;scrollbar-width:none!important;flex-wrap:nowrap!important;overflow-x:auto!important}.packing-category-chips::-webkit-scrollbar{display:none}.packing-category-chips>button{white-space:nowrap!important;flex-shrink:0!important}}@media (width<=640px){.trip-list-header{flex-direction:column;align-items:flex-start;gap:12px}.trip-list-actions{-webkit-overflow-scrolling:touch;scrollbar-width:none;gap:8px;width:100%;min-width:0;padding:2px 2px 6px;overflow-x:auto}.trip-list-actions::-webkit-scrollbar{display:none}.trip-list-action-btn{font-size:var(--fs-sm);padding:7px 11px}.trip-btn-label-full{display:none}.trip-btn-label-short{display:inline}.converter-input{font-size:var(--fs-lg)!important;padding:10px!important}.converter-output{white-space:nowrap;text-overflow:ellipsis;overflow:hidden;font-size:var(--fs-lg)!important;padding:10px!important}.converter-select{font-size:var(--fs-xs)!important;flex-shrink:0!important;max-width:105px!important;padding:0 6px!important}.hero-stay-pill{text-overflow:ellipsis;white-space:nowrap;max-width:210px;overflow:hidden}}@media (width<=480px){.gap-idea{flex-wrap:wrap}.gap-idea-thumb{width:56px;height:56px}.gap-idea-main{flex-basis:calc(100% - 68px)}.gap-idea>.btn{margin-left:68px}.gap-ideas-map.leaflet-container{height:170px}}@media (width<=640px){.travel-doc-row{border-bottom:1px solid var(--border-subtle);grid-template-columns:1fr 1fr;padding-bottom:8px}.travel-doc-name,.travel-doc-status{grid-column:1/-1}}@media (width<=520px){.entry-req-item{flex-direction:column}.entry-req-item .btn{max-width:none}}@media (width<=520px){.phrasebook-generate{width:100%}.phrasebook-generate input{flex:1;width:auto;min-width:0}}@media (width<=520px){.ai-plan-row{grid-template-columns:22px minmax(0,1fr) auto}.ai-plan-row .ai-plan-icon{display:none}.ai-plan-row .ai-plan-time,.ai-plan-row .ai-plan-title{grid-column:2}.ai-plan-row .ai-plan-swap,.ai-plan-row .ai-plan-tag{grid-area:1/3}.ai-plan-segment{grid-template-columns:minmax(0,1fr)}}@media (width<=640px){.modal-sheet.settings-modal{height:90vh}}@media (width<=480px){.doc-scan-fields{grid-template-columns:minmax(0,1fr)}}@media (width<=520px){.route-opt-row{grid-template-columns:78px 16px minmax(0,1fr)}.route-opt-leg{padding-left:98px}}@media (width<=900px){.sights-layout{grid-template-columns:minmax(0,1fr)}.sights-map-wrap{order:-1;height:260px;position:relative;top:0}}@media (width<=560px){.sight-card{grid-template-columns:minmax(0,1fr)}.sight-photo{min-height:180px}.sights-head{flex-direction:column}}@media (width<=640px){.map-wrapper{height:380px}}@media (width>=1024px){.map-wrapper{height:580px}}@keyframes next-pin-pulse{0%{box-shadow:0 0 0 3px var(--primary), 0 4px 14px #ff385c80}50%{box-shadow:0 0 0 6px var(--primary), 0 6px 24px #ff385cd9}to{box-shadow:0 0 0 3px var(--primary), 0 4px 14px #ff385c80}}@keyframes current-pin-pulse{0%{box-shadow:0 0 0 3px var(--accent-emerald,#10b981), 0 4px 14px #10b98180}50%{box-shadow:0 0 0 6px var(--accent-emerald,#10b981), 0 6px 24px #10b981d9}to{box-shadow:0 0 0 3px var(--accent-emerald,#10b981), 0 4px 14px #10b98180}}@keyframes pulse-dot{0%,to{opacity:.3;transform:scale(.8)}50%{opacity:1;transform:scale(1.3)}}@media (width<=640px){.map-view-container{gap:10px}.map-top-header{flex-direction:row;justify-content:space-between;align-items:center;gap:8px}.map-title{font-size:var(--fs-lg);gap:6px}.map-title-text-full{display:none}.map-title-text-short{display:inline}.map-subtitle{font-size:var(--fs-xs)}.map-top-actions{flex-shrink:0;gap:6px}.map-action-btn{font-size:var(--fs-xs)!important;gap:4px!important;padding:5px 8px!important}.optimize-btn-full,.offline-btn-full{display:none}.optimize-btn-short,.offline-btn-short{display:inline}.map-route-bar{flex-wrap:nowrap;justify-content:space-between;align-items:center;gap:6px}.route-mode-label{display:none}.map-route-mode-group{flex-shrink:0}.map-route-segmented{padding:2px}.map-route-segmented .btn{font-size:var(--fs-2xs);gap:3px;padding:4px 6px}.map-route-summary-pill{font-size:var(--fs-2xs);white-space:nowrap;flex-shrink:0;gap:5px;max-width:50%;margin-left:auto;padding:4px 7px}}.swap-modal-sheet{flex-direction:column;gap:18px;display:flex}.swap-quick-chips{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.swap-quick-label{font-size:var(--fs-xs);color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;font-weight:600}.swap-quick-btn{font-size:var(--fs-xs);border-radius:var(--radius-full,9999px);background:var(--bg-surface-elevated,#ffffff0d);border:1px solid var(--border-subtle);color:var(--text-secondary);cursor:pointer;align-items:center;gap:6px;padding:5px 10px;font-weight:600;transition:all .15s;display:inline-flex}.swap-quick-btn:hover{background:var(--primary-subtle,#38bdf81f);color:var(--primary);border-color:var(--primary);transform:translateY(-1px)}.swap-preview-container{background:var(--bg-surface,#0003);border:1px solid var(--border-subtle);border-radius:var(--radius-lg,12px);grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;padding:14px;display:grid;position:relative}@media (width<=640px){.swap-preview-container{grid-template-columns:1fr;gap:10px}}.swap-preview-card{background:var(--bg-card);border-radius:var(--radius-md,8px);border:1px solid var(--border-subtle);flex-direction:column;gap:10px;padding:14px;display:flex;box-shadow:0 2px 8px #0000000f}.swap-preview-card.is-active-card{background:linear-gradient(145deg, var(--bg-card), var(--bg-surface-elevated,var(--bg-card)));border-color:#38bdf866}.swap-preview-header{justify-content:space-between;align-items:center;gap:8px;display:flex}.swap-stop-tag{font-size:var(--fs-2xs);text-transform:uppercase;letter-spacing:.05em;color:var(--primary);font-weight:700}.swap-category-chip{font-size:var(--fs-2xs);background:var(--bg-surface);border-radius:6px;align-items:center;gap:5px;padding:2px 7px;font-weight:600;display:inline-flex}.swap-preview-title{font-size:var(--fs-base);color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;margin:0;font-weight:700;line-height:1.35;overflow:hidden}.swap-preview-times{font-size:var(--fs-xs);flex-direction:column;gap:6px;display:flex}.swap-time-row{font-size:var(--fs-xs);border-radius:6px;justify-content:space-between;align-items:center;gap:8px;padding:4px 8px;display:flex}.swap-time-row.row-before{background:var(--bg-surface);color:var(--text-muted)}.swap-time-row.row-after{color:#10b981;background:#10b9811f;border:1px solid #10b98140;font-weight:600}.swap-center-divider{justify-content:center;align-items:center;display:flex}.swap-center-badge{background:var(--primary);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;animation:2s ease-in-out infinite swap-pulse;display:flex;box-shadow:0 2px 10px #38bdf859}@keyframes swap-pulse{0%,to{transform:scale(1);box-shadow:0 0 #38bdf866}50%{transform:scale(1.08);box-shadow:0 0 0 6px #38bdf800}}.swap-selector-section{flex-direction:column;gap:10px;display:flex}.swap-controls-bar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.swap-search-wrap{flex:1;min-width:180px;position:relative}.swap-search-icon{color:var(--text-muted);pointer-events:none;position:absolute;top:50%;left:10px;transform:translateY(-50%)}.swap-search-input{width:100%;font-size:var(--fs-sm);border-radius:var(--radius-md,8px);border:1px solid var(--border-subtle);background:var(--bg-card);color:var(--text-primary);outline:none;padding:7px 10px 7px 32px;transition:border-color .15s}.swap-search-input:focus{border-color:var(--primary)}.swap-filter-pills{gap:6px;display:flex}.swap-filter-pill{font-size:var(--fs-xs);border-radius:var(--radius-full,9999px);background:var(--bg-card);border:1px solid var(--border-subtle);color:var(--text-secondary);cursor:pointer;padding:5px 10px;font-weight:600;transition:all .15s}.swap-filter-pill.active{background:var(--primary);color:#fff;border-color:var(--primary)}.swap-stops-list{flex-direction:column;gap:6px;max-height:220px;padding-right:4px;display:flex;overflow-y:auto}.swap-stop-option{border-radius:var(--radius-md,8px);background:var(--bg-card);border:1px solid var(--border-subtle);cursor:pointer;text-align:left;justify-content:space-between;align-items:center;gap:10px;width:100%;padding:8px 12px;transition:all .15s;display:flex}.swap-stop-option:hover{border-color:var(--primary);background:var(--bg-surface-elevated,var(--bg-card));transform:translate(2px)}.swap-stop-option.is-selected{border-color:var(--primary);box-shadow:inset 0 0 0 1px var(--primary);background:#38bdf814}.swap-option-left{align-items:center;gap:10px;min-width:0;display:flex}.swap-option-icon{border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;display:flex}.swap-option-title{font-size:var(--fs-sm);color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-weight:600;overflow:hidden}.swap-option-meta{font-size:var(--fs-xs);color:var(--text-muted);align-items:center;gap:6px;display:flex}.swap-option-right{flex-shrink:0;align-items:center;gap:8px;display:flex}.swap-option-time{font-size:var(--fs-xs);color:var(--text-primary);background:var(--bg-surface);border-radius:4px;padding:2px 7px;font-weight:600}.swap-mode-box{border-radius:var(--radius-md,8px);background:#eab30814;border:1px solid #eab30840;flex-direction:column;gap:8px;padding:10px 12px;display:flex}.swap-mode-title{font-size:var(--fs-xs);color:#eab308;align-items:center;gap:6px;font-weight:700;display:flex}.swap-mode-options{flex-wrap:wrap;gap:8px;display:flex}.swap-mode-radio-btn{font-size:var(--fs-xs);background:var(--bg-card);border:1px solid var(--border-subtle);color:var(--text-secondary);cursor:pointer;border-radius:6px;align-items:center;gap:6px;padding:6px 10px;transition:all .15s;display:flex}.swap-mode-radio-btn.is-active{color:var(--text-primary);background:#eab30826;border-color:#eab308;font-weight:600}.swap-modal-actions{justify-content:flex-end;align-items:center;gap:10px;margin-top:6px;display:flex}.card-attachment-chip.has-barcode{border-color:#0ea5e980}.attachment-barcode-icon{color:var(--primary);margin-left:2px}.attachment-viewer-footer{justify-content:space-between;align-items:center;gap:8px;width:100%;display:flex}.attachment-pager{font-size:var(--fs-sm);color:var(--text-secondary);font-variant-numeric:tabular-nums;align-items:center;gap:2px;font-weight:600;display:inline-flex}.attachment-viewer-actions{flex:1;justify-content:flex-end;align-items:center;gap:8px;min-width:0;display:flex}.attachment-viewer-actions .btn{white-space:nowrap;gap:6px;text-decoration:none}.attachment-scan-status{font-size:var(--fs-xs);color:var(--text-muted);align-items:center;gap:6px;display:inline-flex}.btn-scanner-mode{white-space:nowrap;background:linear-gradient(135deg,#0284c7,#0ea5e9);border:1px solid #ffffff40;align-items:center;gap:7px;font-weight:700;transition:all .2s cubic-bezier(.16,1,.3,1);display:inline-flex;box-shadow:0 2px 10px #0ea5e959;color:#fff!important}.btn-scanner-mode:hover{background:linear-gradient(135deg,#0369a1,#0284c7);transform:translateY(-1px);box-shadow:0 4px 16px #0ea5e980}@media (width<=640px){.attachment-viewer-footer{padding:12px 12px calc(12px + var(--sab,0px))!important}.attachment-viewer-actions .btn{font-size:var(--fs-sm);padding:9px 12px}}.barcode-modal-sheet{flex-direction:column;gap:12px;padding:0 24px 24px;display:flex}.barcode-light-container{box-sizing:border-box;background:#fff;border:3px solid #fff;border-radius:16px;flex-direction:column;justify-content:center;align-items:center;width:100%;padding:20px;transition:all .2s;display:flex;box-shadow:0 0 50px #ffffff59,0 10px 30px #00000040}.barcode-light-container.is-inverted{background:#000;border-color:#333;box-shadow:0 0 50px #00000080}.barcode-image-frame{justify-content:center;align-items:center;width:100%;max-width:100%;min-height:200px;display:flex}.barcode-crisp-img{object-fit:contain;max-width:100%;max-height:320px;image-rendering:pixelated;image-rendering:-moz-crisp-edges;image-rendering:crisp-edges;filter:contrast(110%)}.barcode-light-container.is-inverted .barcode-crisp-img{filter:invert()contrast(110%)}.barcode-pager{justify-content:space-between;align-items:center;gap:8px;display:flex}.barcode-pager-btn{border:1px solid var(--border-subtle);background:var(--bg-card);width:40px;height:40px;color:var(--text-primary);cursor:pointer;transition:background var(--transition-fast), border-color var(--transition-fast);border-radius:50%;justify-content:center;align-items:center;display:inline-flex}.barcode-pager-btn:hover{background:var(--bg-card-hover);border-color:var(--border-active)}.barcode-pager-label{font-size:var(--fs-sm);color:var(--text-secondary);font-variant-numeric:tabular-nums;font-weight:600}.barcode-payload-row{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-md,8px);align-items:center;gap:4px;padding:4px 4px 4px 12px;display:flex}.barcode-payload-text{min-width:0;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:var(--fs-sm);color:var(--text-primary);word-break:break-all;flex:1;max-height:48px;font-weight:600;overflow-y:auto}.barcode-tools{justify-content:space-between;align-items:center;gap:8px;display:flex}.barcode-tool-buttons{align-items:center;gap:4px;margin-left:auto;display:flex}.barcode-source-toggle{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:8px;padding:2px;display:inline-flex}.barcode-source-btn{font-size:var(--fs-xs);color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-radius:6px;padding:5px 12px;font-weight:600;transition:all .15s}.barcode-source-btn.is-active{background:var(--bg-card);color:var(--text-primary);box-shadow:0 1px 3px #0000001a}.barcode-awake-note{font-size:var(--fs-xs);color:var(--text-muted);text-align:center}@media (width<=640px){.barcode-modal-sheet{padding:0 12px calc(12px + var(--sab,0px));gap:10px}.barcode-light-container{border-radius:12px;padding:14px 10px;box-shadow:0 0 25px #fff6,0 4px 16px #0003}.barcode-image-frame{min-height:160px}.barcode-crisp-img{max-height:220px}}.attachment-dropzone{border:1px dashed var(--border-subtle);border-radius:var(--radius-sm);background:var(--bg-input);color:var(--text-secondary);font-size:var(--fs-xs);text-align:center;cursor:pointer;transition:all var(--transition-fast);flex-direction:column;align-items:center;gap:4px;padding:14px 12px;display:flex}.attachment-dropzone:hover,.attachment-dropzone:focus-visible,.attachment-dropzone.drag-over{border-color:var(--primary);color:var(--primary);background:var(--primary-light);outline:none}.attachment-hint{font-size:var(--fs-2xs);color:var(--text-muted)}.attachment-error{font-size:var(--fs-2xs);color:var(--accent-coral);align-items:center;gap:5px;margin-top:6px;display:flex}.attachment-list{flex-direction:column;gap:6px;margin:8px 0 0;padding:0;list-style:none;display:flex}.attachment-row{border-radius:var(--radius-sm);background:var(--bg-elevated);border:1px solid var(--border-subtle);font-size:var(--fs-xs);min-width:0;transition:border-color var(--transition-fast);align-items:flex-start;gap:10px;padding:8px 10px;display:flex}.attachment-row:hover{border-color:var(--border-medium)}.attachment-col{flex-direction:column;flex:1;gap:5px;min-width:0;display:flex}.attachment-header-line{justify-content:space-between;align-items:center;gap:8px;display:flex}.attachment-label-field{align-items:center;gap:6px;width:100%;display:flex}.attachment-label-tag{color:var(--text-muted);flex-shrink:0}.attachment-label-input{min-width:0;height:25px;font-size:var(--fs-xs);border-radius:var(--radius-xs,4px);border:1px solid var(--border-subtle);background:var(--bg-input);color:var(--text-primary);transition:all var(--transition-fast);flex:1;padding:2px 8px;font-family:inherit}.attachment-label-input:focus{border-color:var(--primary);background:var(--bg-surface);box-shadow:0 0 0 2px var(--primary-light);outline:none}.attachment-label-input::placeholder{color:var(--text-muted);font-size:var(--fs-2xs)}.attachment-quick-labels{flex-wrap:wrap;align-items:center;gap:4px;margin-top:1px;display:flex}.attachment-quick-badge{font-size:var(--fs-2xs);border-radius:var(--radius-full);background:var(--bg-surface);border:1px solid var(--border-subtle);color:var(--text-muted);cursor:pointer;transition:all var(--transition-fast);-webkit-user-select:none;user-select:none;padding:1px 7px;font-family:inherit}.attachment-quick-badge:hover{border-color:var(--primary);color:var(--primary);background:var(--primary-light)}.attachment-thumb{background:var(--bg-input);width:26px;height:26px;color:var(--text-secondary);border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex;overflow:hidden}.attachment-thumb img{object-fit:cover;width:100%;height:100%}.attachment-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--text-primary);flex:1;overflow:hidden}a.attachment-name:hover{color:var(--primary)}.attachment-size{font-size:var(--fs-2xs);color:var(--text-muted);flex-shrink:0}.attachment-progress{background:var(--bg-input);border-radius:2px;flex:0 0 60px;height:4px;overflow:hidden}.attachment-progress span{background:var(--primary-solid);height:100%;transition:width .2s;display:block}.attachment-remove{flex-shrink:0}.card-attachments{z-index:1;flex-wrap:wrap;align-items:center;gap:6px;display:flex;position:relative}.card-attachments-icon{color:var(--text-muted);flex-shrink:0}.card-attachment-chip{border-radius:var(--radius-full);max-width:240px;font-size:var(--fs-xs);background:var(--bg-elevated);border:1px solid var(--border-subtle);color:var(--text-secondary);transition:all var(--transition-fast);align-items:center;gap:5px;padding:2px 8px 2px 2px;display:inline-flex}button.card-attachment-chip{cursor:pointer;font-family:inherit}.card-attachment-chip:hover{border-color:var(--primary);color:var(--primary)}.card-attachment-chip.has-label{color:var(--text-primary);border-color:var(--border-medium);background:var(--bg-surface);font-weight:500}.card-attachment-chip.has-label:hover{border-color:var(--primary);color:var(--primary)}.card-attachment-chip .attachment-thumb{border-radius:var(--radius-full);width:20px;height:20px}.card-attachment-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.card-attachment-size{font-size:var(--fs-2xs);color:var(--text-muted);opacity:.85;flex-shrink:0}.card-attachment-chip:hover .card-attachment-size{color:var(--text-secondary);opacity:1}.attachment-viewer{border-radius:var(--radius-sm);background:var(--bg-input);justify-content:center;align-items:center;min-height:240px;margin:0 20px;display:flex;position:relative;overflow:hidden}.attachment-viewer-image{object-fit:contain;max-width:100%;max-height:70vh;display:block}.pdf-preview{overscroll-behavior:contain;align-self:stretch;width:100%;height:70vh;overflow-y:auto}.pdf-preview-pages{flex-direction:column;gap:8px;display:flex}.pdf-preview-page{background:#fff;width:100%;height:auto;display:block}.pdf-preview-note{font-size:var(--fs-xs);color:var(--text-secondary);text-align:center;justify-content:center;align-items:center;gap:6px;padding:12px;display:flex}.pdf-preview-note.is-error{height:100%;color:var(--text-primary)}.pdf-preview-note.is-error svg{color:var(--accent-amber);flex-shrink:0}.attachment-viewer-loading{color:var(--text-muted);pointer-events:none;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}@media (width<=600px){.attachment-viewer{margin:0 12px}.pdf-preview{height:60vh}}.attachment-convert-btn{border-radius:var(--radius-full);font-size:var(--fs-2xs);color:var(--primary);background:var(--primary-light);cursor:pointer;transition:all var(--transition-fast);border:1px solid #0000;align-items:center;gap:4px;padding:2px 7px;font-weight:500;display:inline-flex}.attachment-convert-btn:hover{background:var(--primary);color:#fff;border-color:var(--primary)}.convert-modal-body{flex-direction:column;gap:16px;padding:4px 20px 16px;display:flex}.convert-loading-state{color:var(--text-secondary);font-size:var(--fs-base);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:48px 16px;display:flex}.convert-error-box{border-radius:var(--radius-sm);color:#f87171;font-size:var(--fs-sm);background:#ef44441a;border:1px solid #ef44444d;align-items:center;gap:8px;padding:10px 14px;display:flex}.convert-metrics-grid{border-radius:var(--radius-sm);background:var(--bg-elevated);border:1px solid var(--border-subtle);justify-content:space-between;align-items:center;gap:8px;padding:14px;display:flex}.convert-metric-card{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.convert-metric-label{font-size:var(--fs-2xs);text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);font-weight:500}.convert-metric-value{font-size:var(--fs-lg);color:var(--text-primary);font-variant-numeric:tabular-nums;align-items:center;gap:4px;font-weight:700;display:inline-flex}.convert-metric-value.savings-value{color:var(--accent-emerald,#10b981)}.convert-metric-badge{font-size:var(--fs-2xs);color:var(--text-muted);font-weight:600;display:inline-block}.convert-metric-badge.webp{color:var(--primary)}.convert-metric-badge.savings{color:var(--accent-emerald,#10b981)}.convert-metric-arrow{color:var(--text-muted);flex-shrink:0;justify-content:center;align-items:center;display:flex}.convert-view-tabs{border-bottom:1px solid var(--border-subtle);align-items:center;gap:6px;padding-bottom:8px;display:flex}.convert-tab-btn{border-radius:var(--radius-full);font-size:var(--fs-sm);color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:1px solid #0000;align-items:center;gap:6px;padding:5px 12px;font-weight:500;display:inline-flex}.convert-tab-btn:hover{color:var(--text-primary);background:var(--bg-surface)}.convert-tab-btn.active{color:var(--primary);background:var(--primary-light);border-color:var(--primary);font-weight:600}.convert-preview-viewport{border-radius:var(--radius-sm);background:var(--bg-input);border:1px solid var(--border-subtle);flex-direction:column;min-height:240px;max-height:52vh;display:flex;position:relative;overflow:auto}.convert-preview-single{flex-direction:column;align-items:center;gap:8px;width:100%;padding:12px;display:flex}.convert-preview-img{object-fit:contain;border-radius:var(--radius-xs,4px);max-width:100%;max-height:42vh;box-shadow:0 4px 12px #00000026}.convert-preview-caption{font-size:var(--fs-xs);color:var(--text-muted);align-items:center;gap:5px;display:inline-flex}.convert-preview-caption .text-emerald{color:var(--accent-emerald,#10b981)}.convert-preview-split{grid-template-columns:repeat(2,1fr);gap:12px;width:100%;padding:12px;display:grid}.convert-split-pane{flex-direction:column;gap:8px;display:flex}.convert-split-header{font-size:var(--fs-xs);color:var(--text-secondary);text-align:center;border-radius:var(--radius-xs,4px);background:var(--bg-surface);padding:4px 0;font-weight:600}.convert-split-header.highlight{color:var(--primary);background:var(--primary-light)}.convert-split-content{justify-content:center;align-items:center;min-height:180px;display:flex}@media (width<=640px){.convert-metrics-grid{text-align:center;flex-direction:column;align-items:stretch}.convert-metric-arrow{transform:rotate(90deg)}.convert-preview-split{grid-template-columns:1fr}}.import-dropzone{border:1px dashed var(--border-subtle);border-radius:var(--radius-sm);background:var(--bg-input);color:var(--text-secondary);font-size:var(--fs-sm);text-align:center;transition:all var(--transition-fast);flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;margin-bottom:14px;padding:16px 12px;display:flex}.import-dropzone.dragging{border-color:var(--primary);color:var(--primary);background:var(--primary-light)}.import-file-chip{min-width:0;color:var(--text-primary);align-items:center;gap:8px;display:flex}.import-file-chip span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.import-reading-status{width:100%;color:var(--primary);font-size:var(--fs-sm);flex-direction:column;align-items:center;gap:6px;padding:6px 0;font-weight:500;display:flex}.import-progress-bar{background:var(--bg-subtle,#7d7d7d33);border-radius:999px;width:100%;max-width:280px;height:6px;margin-top:2px;overflow:hidden}.import-progress-fill{background:var(--primary);border-radius:999px;height:100%;transition:width .3s}.import-review{flex-direction:column;gap:10px;display:flex}.import-review-hint{font-size:var(--fs-xs);color:var(--text-secondary);align-items:center;gap:6px;margin:0;display:flex}.import-row{border-radius:var(--radius-sm);background:var(--bg-elevated);border:1px solid var(--border-subtle);transition:opacity var(--transition-fast);flex-direction:column;gap:8px;padding:12px;display:flex}.import-row.deselected{opacity:.5}.import-row-head{align-items:center;gap:8px;display:flex}.import-row-head input[type=checkbox]{flex-shrink:0;width:18px;height:18px}.import-row-head select{width:auto}.import-code{font-size:var(--fs-xs);color:var(--text-secondary);margin-left:auto;font-family:ui-monospace,monospace}.import-row-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.import-row-address{background:var(--bg-surface);border-radius:var(--radius-xs);border:1px solid var(--border-subtle);font-size:var(--fs-xs);color:var(--text-secondary);flex-direction:column;gap:3px;padding:6px 9px;line-height:1.35;display:flex}.import-row-address-item{text-overflow:ellipsis;white-space:normal;align-items:baseline;gap:4px;display:flex;overflow:hidden}.import-row-address-label{color:var(--text-muted);flex-shrink:0;font-weight:600}.import-row-meta{font-size:var(--fs-xs);color:var(--text-secondary);flex-wrap:wrap;gap:4px 12px;display:flex}.import-row-meta:empty{display:none}.import-row-notes{color:var(--text-muted)}.import-row-warning,.import-error{font-size:var(--fs-xs);color:var(--accent-coral);align-items:center;gap:6px;display:flex}.import-row-warning{color:var(--accent-amber)}.import-error{margin-top:10px}.import-from-booking-btn{justify-content:center;width:100%;margin-bottom:14px}:root{--bg-app:#0f0e0d;--bg-subtle:#171615;--bg-card:#1c1b19;--bg-card-hover:#242220;--bg-glass:#171615f0;--bg-elevated:#232120;--bg-input:#1c1b19;--bg-surface:var(--bg-card);--bg-surface-elevated:var(--bg-elevated);--bg-secondary:var(--bg-subtle);--border-subtle:#ffffff14;--border-card:#ffffff1a;--border-medium:#ffffff24;--border-strong:#ffffff38;--border-active:#fff6;--text-primary:#f5f5f4;--text-secondary:#b5afaa;--text-muted:#8f8984;--text-inverse:#1c1917;--ink:#f5f5f4;--on-ink:#1c1917;--selected-bg:var(--ink);--selected-text:var(--on-ink);--selected-border:var(--ink);--primary:#fb7185;--primary-hover:#fda4af;--primary-light:#fb71851f;--primary-subtle:#fb718514;--primary-glow:#e11d4840;--primary-solid:#e11d48;--primary-gradient:#e11d48;--accent-coral:#fb7185;--accent-coral-light:#fb71851f;--accent-emerald:#34d399;--accent-emerald-light:#34d3991f;--accent-amber:#fbbf24;--accent-amber-light:#fbbf241f;--accent-cyan:#22d3ee;--accent-cyan-light:#22d3ee1f;--cat-flight:#60a5fa;--cat-flight-bg:#60a5fa1f;--cat-hotel:#a78bfa;--cat-hotel-bg:#a78bfa1f;--cat-activity:#34d399;--cat-activity-bg:#34d3991f;--cat-dining:#fb923c;--cat-dining-bg:#fb923c1f;--cat-transit:#2dd4bf;--cat-transit-bg:#2dd4bf1f;--cat-rental:#a8a29e;--cat-rental-bg:#a8a29e1f;--cat-note:#f472b6;--cat-note-bg:#f472b61f;--font-sans:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-display:var(--font-sans);--font-body:var(--font-sans);--font-mono:ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;--fs-2xs:11px;--fs-xs:12px;--fs-sm:13px;--fs-base:14px;--fs-md:15px;--fs-lg:16px;--fs-xl:18px;--fs-2xl:20px;--fs-3xl:24px;--fs-4xl:30px;--fs-5xl:40px;--fw-regular:400;--fw-medium:500;--fw-semibold:600;--fw-bold:700;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--shadow-xs:0 1px 2px #0000004d;--shadow-sm:0 1px 3px #00000059;--shadow-card:0 1px 2px #0000004d;--shadow-md:0 4px 12px -2px #0006;--shadow-lg:0 12px 32px -6px #0000008c;--shadow-xl:0 24px 48px -12px #000000a6;--shadow-glow:0 0 0 3px var(--primary-glow);--radius-xs:6px;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:20px;--radius-full:9999px;--min-touch-target:44px;--glass-blur:blur(12px) saturate(140%);--transition-fast:.15s cubic-bezier(.16, 1, .3, 1);--transition-normal:.25s cubic-bezier(.16, 1, .3, 1);--transition-smooth:.4s cubic-bezier(.16, 1, .3, 1);--sat:env(safe-area-inset-top,0px);--sab:env(safe-area-inset-bottom,0px);--sal:env(safe-area-inset-left,0px);--sar:env(safe-area-inset-right,0px)}[data-theme=light]{--bg-app:#f6f6f4;--bg-subtle:#efeeeb;--bg-card:#fff;--bg-card-hover:#fafaf9;--bg-glass:#fffffff0;--bg-elevated:#fff;--bg-input:#fff;--border-subtle:#e7e5e4;--border-card:#e7e5e4;--border-medium:#d6d3d1;--border-strong:#a8a29e;--border-active:#1c1917;--text-primary:#1c1917;--text-secondary:#57534e;--text-muted:#6b6560;--text-inverse:#fafaf9;--ink:#1c1917;--on-ink:#fff;--primary:#e11d48;--primary-hover:#be123c;--primary-light:#e11d4814;--primary-subtle:#e11d480d;--primary-glow:#e11d4833;--primary-solid:#e11d48;--primary-gradient:#e11d48;--accent-coral:#be123c;--accent-coral-light:#e11d4814;--accent-emerald:#047857;--accent-emerald-light:#04785714;--accent-amber:#b45309;--accent-amber-light:#b4530914;--accent-cyan:#0e7490;--accent-cyan-light:#0e749014;--cat-flight:#2563eb;--cat-flight-bg:#2563eb14;--cat-hotel:#7c3aed;--cat-hotel-bg:#7c3aed14;--cat-activity:#047857;--cat-activity-bg:#04785714;--cat-dining:#c2410c;--cat-dining-bg:#c2410c14;--cat-transit:#0f766e;--cat-transit-bg:#0f766e14;--cat-rental:#57534e;--cat-rental-bg:#57534e14;--cat-note:#be185d;--cat-note-bg:#be185d14;--shadow-xs:0 1px 2px #1c19170d;--shadow-sm:0 1px 3px #1c191712, 0 1px 2px #1c19170a;--shadow-card:0 1px 2px #1c19170a;--shadow-md:0 4px 12px -2px #1c191714, 0 2px 4px #1c19170a;--shadow-lg:0 12px 32px -8px #1c191729, 0 2px 6px #1c19170d;--shadow-xl:0 24px 48px -12px #1c191738}@media (prefers-color-scheme:light){:root:not([data-theme=dark]){--bg-app:#f6f6f4;--bg-subtle:#efeeeb;--bg-card:#fff;--bg-card-hover:#fafaf9;--bg-glass:#fffffff0;--bg-elevated:#fff;--bg-input:#fff;--border-subtle:#e7e5e4;--border-card:#e7e5e4;--border-medium:#d6d3d1;--border-strong:#a8a29e;--border-active:#1c1917;--text-primary:#1c1917;--text-secondary:#57534e;--text-muted:#6b6560;--text-inverse:#fafaf9;--ink:#1c1917;--on-ink:#fff;--primary:#e11d48;--primary-hover:#be123c;--primary-light:#e11d4814;--primary-subtle:#e11d480d;--primary-glow:#e11d4833;--primary-solid:#e11d48;--primary-gradient:#e11d48;--accent-coral:#be123c;--accent-coral-light:#e11d4814;--accent-emerald:#047857;--accent-emerald-light:#04785714;--accent-amber:#b45309;--accent-amber-light:#b4530914;--accent-cyan:#0e7490;--accent-cyan-light:#0e749014;--cat-flight:#2563eb;--cat-flight-bg:#2563eb14;--cat-hotel:#7c3aed;--cat-hotel-bg:#7c3aed14;--cat-activity:#047857;--cat-activity-bg:#04785714;--cat-dining:#c2410c;--cat-dining-bg:#c2410c14;--cat-transit:#0f766e;--cat-transit-bg:#0f766e14;--cat-rental:#57534e;--cat-rental-bg:#57534e14;--cat-note:#be185d;--cat-note-bg:#be185d14;--shadow-xs:0 1px 2px #1c19170d;--shadow-sm:0 1px 3px #1c191712, 0 1px 2px #1c19170a;--shadow-card:0 1px 2px #1c19170a;--shadow-md:0 4px 12px -2px #1c191714, 0 2px 4px #1c19170a;--shadow-lg:0 12px 32px -8px #1c191729, 0 2px 6px #1c19170d;--shadow-xl:0 24px 48px -12px #1c191738}}.shimmer-base{border-radius:var(--radius-sm);background:linear-gradient(90deg,#ffffff0a 0%,#ffffff1f 50%,#ffffff0a 100%) 0 0/200% 100%;animation:1.6s ease-in-out infinite shimmer-sweep;display:block}[data-theme=light] .shimmer-base{background:linear-gradient(90deg,#0000000d 0%,#0000001f 50%,#0000000d 100%) 0 0/200% 100%}.shimmer-line{width:100%;height:14px;margin-bottom:8px}.shimmer-line.title{border-radius:var(--radius-sm);width:65%;height:22px}.shimmer-line.subtitle{border-radius:var(--radius-xs);width:45%;height:14px}.shimmer-line.short{width:30%}.shimmer-circle{border-radius:50%;flex-shrink:0;width:32px;height:32px}.shimmer-badge{border-radius:var(--radius-full);width:72px;height:22px}.shimmer-thumb{border-radius:var(--radius-md) var(--radius-md) 0 0;width:100%;height:140px}.shimmer-hero-container{border-radius:var(--radius-xl);border:1px solid var(--border-subtle);background:var(--bg-card);flex-direction:column;justify-content:flex-end;height:200px;margin-bottom:24px;padding:24px;display:flex;position:relative;overflow:hidden}@media (width>=768px){.shimmer-hero-container{height:240px;padding:32px}}@media (width<=640px){.shimmer-hero-container{border-radius:var(--radius-lg);height:auto;min-height:180px;margin-bottom:14px;padding:16px 14px 14px}.shimmer-hero-content{flex-direction:column;align-items:stretch;gap:10px}}.shimmer-hero-overlay{background:linear-gradient(#080c144d 0%,#080c14cc 100%);position:absolute;inset:0}.shimmer-hero-content{z-index:2;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;width:100%;display:flex;position:relative}.shimmer-timeline-card{background:var(--bg-card);border:1px solid var(--border-card);border-radius:var(--radius-md);box-sizing:border-box;align-items:flex-start;gap:16px;min-height:185px;margin-bottom:14px;padding:16px 18px;display:flex}.shimmer-timeline-vertical{flex-direction:column;flex-shrink:0;align-items:flex-end;gap:4px;min-width:82px;padding-right:6px;display:flex;position:relative}.shimmer-timeline-content{flex-direction:column;flex:1;gap:10px;min-width:0;display:flex}.shimmer-trip-card{background:var(--bg-card);border:1px solid var(--border-card);border-radius:var(--radius-lg);flex-direction:column;min-height:275px;display:flex;overflow:hidden}.shimmer-trip-card-body{flex-direction:column;flex:1;gap:10px;padding:16px;display:flex}.shimmer-map-container{border-radius:var(--radius-lg);width:100%;position:relative;overflow:hidden}.shimmer-ai-pulse{border-radius:var(--radius-md);border:1px dashed var(--border-active);background:linear-gradient(90deg,#6366f114 0%,#6366f138 50%,#6366f114 100%) 0 0/200% 100%;padding:24px;animation:1.4s ease-in-out infinite shimmer-sweep}*,:before,:after{box-sizing:border-box;-webkit-tap-highlight-color:transparent;margin:0;padding:0}html,body{background-color:var(--bg-app);width:100%;min-height:100%;color:var(--text-primary);font-family:var(--font-body);font-size:var(--fs-md);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1.5;overflow-x:hidden}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);color:var(--text-primary);letter-spacing:-.02em;font-weight:700;line-height:1.25}p{color:var(--text-secondary)}button{cursor:pointer;background:0 0;border:none;outline:none;font-family:inherit}input,textarea,select{font-family:inherit;font-size:var(--fs-base);color:var(--text-primary);background:var(--bg-input);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);transition:border-color var(--transition-fast), box-shadow var(--transition-fast);outline:none;padding:10px 14px}input:focus,textarea:focus,select:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-light)}input::placeholder,textarea::placeholder{color:var(--text-muted)}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--border-subtle);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}.app-container{min-height:100dvh;padding-bottom:calc(86px + var(--sab));flex-direction:column;display:flex;position:relative}@media (width>=900px){.app-container{padding-bottom:0}}.main-content{width:100%;max-width:1280px;padding:16px 16px calc(80px + var(--sab,0px));flex:1;margin:0 auto}@media (width>=900px){.main-content{padding:28px 24px 60px}}.flex{display:flex}.flex-col{flex-direction:column;display:flex}.items-center{align-items:center}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-2{gap:8px}.gap-3{gap:12px}.gap-4{gap:16px}.gap-6{gap:24px}.flex-1{flex:1}.w-full{width:100%}.animate-spin{transform-origin:50%;will-change:transform;animation:1s linear infinite spin;display:inline-block}.text-primary{color:var(--primary)!important}.text-secondary{color:var(--text-secondary)!important}.text-muted{color:var(--text-muted)!important}.text-emerald{color:var(--accent-emerald,#10b981)!important}.text-coral{color:var(--accent-coral,#f43f5e)!important}@supports (-webkit-touch-callout:none){input,select,textarea{font-size:var(--fs-lg)!important}}.btn{font-size:var(--fs-base);border-radius:var(--radius-sm);transition:all var(--transition-fast);white-space:nowrap;-webkit-user-select:none;user-select:none;justify-content:center;align-items:center;gap:8px;padding:9px 18px;font-weight:600;display:inline-flex}.btn:active{transform:scale(.97)}.btn-primary{background:var(--primary-gradient);color:#fff;box-shadow:0 2px 10px #ff385c59}.btn-primary:hover{filter:brightness(1.08);box-shadow:0 4px 16px #ff385c80}.btn-secondary{background:var(--bg-elevated);color:var(--text-primary);border:1px solid var(--border-subtle)}.btn-secondary:hover{background:var(--bg-card-hover);border-color:var(--border-active)}.btn-ghost{color:var(--text-secondary);background:0 0}.btn-ghost:hover{color:var(--text-primary);background:var(--bg-elevated)}.btn-glass{background:var(--bg-glass);-webkit-backdrop-filter:blur(12px);border:1px solid var(--border-subtle);color:var(--text-primary)}.btn-glass:hover{background:var(--bg-card-hover);border-color:var(--border-active)}.btn-icon{border-radius:var(--radius-sm);width:38px;height:38px;color:var(--text-secondary);transition:all var(--transition-fast);justify-content:center;align-items:center;padding:0;display:inline-flex}.btn-icon:hover{color:var(--text-primary);background:var(--bg-elevated)}.btn-sm{font-size:var(--fs-sm);border-radius:var(--radius-xs);padding:6px 12px}.btn-lg{font-size:var(--fs-md);border-radius:var(--radius-md);padding:12px 24px}.navbar{z-index:1500;background:var(--bg-glass);-webkit-backdrop-filter:blur(16px);border-bottom:1px solid var(--border-subtle);width:100%;padding-top:var(--sat);position:sticky;top:0}.navbar-inner{justify-content:space-between;align-items:center;gap:16px;max-width:1280px;margin:0 auto;padding:12px 16px;display:flex}.brand-logo{font-family:var(--font-display);font-size:var(--fs-2xl);letter-spacing:-.03em;color:var(--text-primary);align-items:center;gap:10px;font-weight:700;text-decoration:none;display:flex}.brand-badge{font-size:var(--fs-2xs);text-transform:uppercase;letter-spacing:.05em;background:var(--primary-light);color:var(--primary);border-radius:var(--radius-full);padding:2px 6px;font-weight:700}.navbar-brand-group{flex:auto;align-items:center;gap:12px;min-width:0;display:flex}.navbar-trip-selector-wrapper{flex:0 auto;min-width:0;max-width:220px;position:relative}.navbar-trip-btn{box-sizing:border-box;white-space:nowrap;align-items:center;gap:8px;min-width:0;max-width:100%;display:inline-flex}.navbar-actions-group{flex-shrink:0;align-items:center;gap:8px;display:flex}.navbar-trip-title{text-overflow:ellipsis;white-space:nowrap;flex:0 auto;min-width:0;max-width:160px;font-weight:600;overflow:hidden}@media (width<=640px){.navbar-inner{gap:6px;padding:8px 12px}.navbar-brand-group{flex:auto;gap:6px;min-width:0}.brand-logo{flex-shrink:0}.brand-logo span{display:none}.navbar-trip-selector-wrapper{flex:0 auto;min-width:0;max-width:160px}.navbar-trip-btn{font-size:var(--fs-sm);gap:5px;max-width:100%;padding:5px 8px}.navbar-trip-title{max-width:130px;font-size:var(--fs-xs)}.navbar-actions-group{flex-shrink:0;gap:4px}.navbar-actions-group .sync-pill,.navbar-share-btn,.navbar-ai-btn{display:none!important}.navbar-actions-group .btn-icon{width:34px!important;height:34px!important}}@media (width<=380px){.navbar-inner{gap:6px;padding:6px 10px}.navbar-trip-selector-wrapper{flex:1;min-width:0;max-width:165px}.navbar-trip-btn{gap:4px;padding:4px 8px}.navbar-trip-title{max-width:110px;font-size:var(--fs-xs)}.navbar-actions-group{gap:3px}.navbar-actions-group .btn-icon{width:30px!important;height:30px!important}}.bottom-nav{z-index:2000;background:var(--bg-glass);-webkit-backdrop-filter:var(--glass-blur,blur(20px) saturate(180%));border-top:1px solid var(--border-subtle);padding-bottom:var(--sab,0px);height:calc(64px + var(--sab,0px));justify-content:space-around;align-items:center;display:flex;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -4px 20px #0000000d}@media (width>=900px){.bottom-nav{display:none}}@media (width<=899px){.mobile-fab-add-btn{right:18px;bottom:calc(64px + var(--sab,0px) + 14px);z-index:1500;border-radius:var(--radius-full,9999px);background:var(--primary-gradient);color:#fff;cursor:pointer;width:48px;height:48px;transition:transform var(--transition-fast), box-shadow var(--transition-fast);border:none;justify-content:center;align-items:center;position:fixed;box-shadow:0 4px 18px #ff385c73,0 2px 6px #00000029;display:flex!important}.mobile-fab-add-btn:active{transform:scale(.92);box-shadow:0 2px 8px #ff385c59}}.bottom-nav-item{min-height:var(--min-touch-target,44px);height:100%;color:var(--text-muted);font-size:var(--fs-2xs);cursor:pointer;transition:color var(--transition-fast), transform var(--transition-fast);-webkit-tap-highlight-color:transparent;background:0 0;border:none;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:3px;font-weight:600;display:flex}.bottom-nav-item:active{transform:scale(.94)}.bottom-nav-item.active{color:var(--primary)}.bottom-nav-icon-container{border-radius:var(--radius-full);transition:all var(--transition-fast);justify-content:center;align-items:center;padding:4px 14px;display:flex;position:relative}.bottom-nav-item.active .bottom-nav-icon-container{background:var(--primary-light);color:var(--primary)}.bottom-nav-action .bottom-nav-icon-container{background:var(--primary-gradient);color:#fff}.bottom-nav-sheet-backdrop{-webkit-backdrop-filter:blur(4px);z-index:1990;background:#00000080;animation:.18s fadeIn;position:fixed;inset:0}.bottom-nav-more-sheet{bottom:calc(72px + var(--sab,0px));background:var(--bg-card);border:1px solid var(--border-card);border-radius:var(--radius-xl,20px);z-index:1995;max-width:400px;margin:0 auto;padding:12px 14px 14px;animation:.22s cubic-bezier(.16,1,.3,1) slideUpSheet;position:fixed;left:12px;right:12px;box-shadow:0 16px 40px #00000047,0 0 0 1px #ffffff0d}.bottom-nav-sheet-handle{background:var(--border-active);border-radius:var(--radius-full);opacity:.5;width:32px;height:4px;margin:0 auto 8px}.bottom-nav-sheet-header{border-bottom:1px solid var(--border-subtle);justify-content:space-between;align-items:center;margin-bottom:8px;padding:0 2px 8px;display:flex}.bottom-nav-sheet-title{font-size:var(--fs-base);color:var(--text-primary);letter-spacing:-.01em;font-weight:700}.bottom-nav-sheet-close{background:var(--bg-elevated);border:1px solid var(--border-subtle);color:var(--text-muted);cursor:pointer;width:26px;height:26px;transition:all var(--transition-fast);border-radius:50%;justify-content:center;align-items:center;display:flex}.bottom-nav-sheet-close:active{transform:scale(.9)}.bottom-nav-sheet-items{flex-direction:column;gap:6px;display:flex}.bottom-nav-sheet-btn{border-radius:var(--radius-lg,14px);background:var(--bg-elevated);border:1px solid var(--border-subtle);cursor:pointer;text-align:left;width:100%;transition:all var(--transition-fast);-webkit-tap-highlight-color:transparent;align-items:center;gap:12px;padding:10px 12px;display:flex}.bottom-nav-sheet-btn:hover,.bottom-nav-sheet-btn:active{background:var(--bg-card-hover);border-color:var(--border-active)}.bottom-nav-sheet-btn.active{background:var(--primary-light);border-color:#ff385c4d}.bottom-nav-sheet-icon{background:var(--bg-card);border:1px solid var(--border-subtle);width:38px;height:38px;color:var(--text-secondary);transition:all var(--transition-fast);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.bottom-nav-sheet-btn.active .bottom-nav-sheet-icon{background:var(--primary-gradient);color:#fff;border-color:#0000}.bottom-nav-sheet-text{flex-direction:column;flex:1;gap:2px;display:flex}.bottom-nav-sheet-text .title{font-size:var(--fs-base);color:var(--text-primary);font-weight:600}.bottom-nav-sheet-text .subtitle{font-size:var(--fs-xs);color:var(--text-muted)}.bottom-nav-sheet-btn.active .bottom-nav-sheet-text .title{color:var(--primary)}@media (width>=900px){.bottom-nav-sheet-backdrop,.bottom-nav-more-sheet{display:none!important}}@media (width<=640px){.desktop-pulse-wrapper{display:none!important}.mobile-pulse-page{width:100%;margin-top:4px;padding-bottom:32px}}.trip-hero-title-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.hero-more-btn{padding-left:10px;padding-right:10px}.timeline-menu-dropdown.hero-more-menu{z-index:2050;width:min(300px,100vw - 24px);min-width:0;position:fixed}@media (width<=640px){.hide-on-mobile{display:none!important}}.all-trips-link{border-radius:var(--radius-full,9999px);font-size:var(--fs-sm);color:var(--text-secondary);cursor:pointer;background:0 0;border:1px solid #0000;align-items:center;gap:6px;margin-bottom:6px;padding:4px 10px 4px 8px;font-weight:600;transition:all .18s cubic-bezier(.16,1,.3,1);display:none}.all-trips-link:hover{color:var(--text-primary);background:var(--bg-card-hover);border-color:var(--border-subtle)}@media (width>=900px){.all-trips-link{display:inline-flex}}.trip-pulse{border-radius:var(--radius-lg,16px);background:var(--bg-card);border:1px solid var(--border-card);box-shadow:var(--shadow-sm);flex-direction:column;gap:10px;margin:0 0 12px;padding:10px 12px;display:flex}.trip-pulse-tabs{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.trip-pulse-chip{border-radius:var(--radius-full,9999px);font-size:var(--fs-sm);color:var(--text-secondary);background:var(--bg-elevated);border:1px solid var(--border-subtle);cursor:pointer;align-items:center;gap:6px;padding:5px 12px;font-weight:600;transition:all .18s cubic-bezier(.16,1,.3,1);display:inline-flex}.trip-pulse-chip-label-short{display:none}@media (width<=640px){.trip-pulse-tabs{scrollbar-width:none;-webkit-overflow-scrolling:touch;flex-wrap:nowrap;overflow-x:auto}.trip-pulse-tabs::-webkit-scrollbar{display:none}.trip-pulse-chip{font-size:var(--fs-xs);flex-shrink:0;gap:5px;padding:5px 9px}.trip-pulse-chip-label-full{display:none}.trip-pulse-chip-label-short{display:inline}}.trip-pulse-chip:hover{color:var(--text-primary);background:var(--bg-card-hover)}.trip-pulse-chip.is-ghost{color:var(--text-muted);background:0 0;border-style:dashed}.trip-pulse-chip-badge{border-radius:var(--radius-full,9999px);min-width:18px;font-size:var(--fs-2xs);text-align:center;color:var(--text-secondary);background:var(--bg-card-hover);padding:0 5px;font-weight:700;line-height:16px}.trip-pulse-chip.active .trip-pulse-chip-badge{color:#fff;background:#ffffff3d}.trip-pulse-body{flex-direction:column;gap:8px;display:flex}.trip-pulse-body>.today-card,.trip-pulse-body>.daily-briefing,.trip-pulse-body>.recent-changes,.trip-pulse-body>.ai-summary{box-shadow:none;background:0 0;border:none;margin:0;padding:0}.trip-pulse-body>.today-card+.daily-briefing{border-top:1px solid var(--border-subtle);margin-top:8px;padding-top:14px}.ai-summary.is-embedded .ai-summary-top{margin-bottom:8px}.trip-tabs-bar{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:12px;display:flex}.trip-tabs-secondary{flex-wrap:wrap;align-items:center;gap:10px;margin-left:auto;display:flex}.desktop-tabs-bar{background:var(--bg-elevated);border-radius:var(--radius-full);border:1px solid var(--border-subtle);box-shadow:var(--shadow-xs);align-items:center;gap:4px;width:fit-content;padding:4px;display:inline-flex}@media (width<=767px){.desktop-tabs-bar{display:none}.trip-tabs-secondary{justify-content:flex-start;width:100%;margin-left:0}}.desktop-tab{border-radius:var(--radius-full);min-height:36px;font-size:var(--fs-sm);color:var(--text-secondary);cursor:pointer;-webkit-user-select:none;user-select:none;background:0 0;border:1px solid #0000;align-items:center;gap:7px;padding:7px 16px;font-weight:600;transition:all .2s cubic-bezier(.16,1,.3,1);display:inline-flex}.desktop-tab.active{color:var(--selected-text);background:var(--selected-bg);box-shadow:none}.category-badge{border-radius:var(--radius-full);font-size:var(--fs-xs);text-transform:capitalize;align-items:center;gap:5px;padding:3px 9px;font-weight:600;display:inline-flex}.category-flight{color:var(--cat-flight);background:var(--cat-flight-bg);border:1px solid #38bdf840}.category-hotel{color:var(--cat-hotel);background:var(--cat-hotel-bg);border:1px solid #818cf840}.category-activity{color:var(--cat-activity);background:var(--cat-activity-bg);border:1px solid #34d39940}.category-dining{color:var(--cat-dining);background:var(--cat-dining-bg);border:1px solid #fb923c40}.category-transit{color:var(--cat-transit);background:var(--cat-transit-bg);border:1px solid #a78bfa40}.category-rental{color:var(--cat-rental);background:var(--cat-rental-bg);border:1px solid #94a3b84d}.category-note{color:var(--cat-note);background:var(--cat-note-bg);border:1px solid #f472b640}.status-badge{border-radius:var(--radius-full);font-size:var(--fs-2xs);text-transform:uppercase;letter-spacing:.04em;align-items:center;gap:4px;padding:2px 8px;font-weight:600;display:inline-flex}.status-booked{color:var(--accent-emerald);background:#10b9811f}.status-planned{color:var(--cat-flight);background:#38bdf81f}.status-completed{color:var(--text-muted);background:#94a3b81f}.glass-card{background:var(--bg-card);-webkit-backdrop-filter:blur(12px);border:1px solid var(--border-card);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);transition:all var(--transition-normal)}.glass-card:hover{background:var(--bg-card-hover);border-color:var(--border-active);box-shadow:var(--shadow-md)}.trip-hero{border-radius:var(--radius-xl);border:1px solid var(--border-subtle);background-position:50%;background-size:cover;flex-direction:column;justify-content:flex-end;min-height:clamp(150px,42vw,360px);margin-bottom:16px;padding:18px;display:flex;position:relative;overflow:hidden}@media (width>=768px){.trip-hero{padding:20px 24px}}.trip-hero-overlay{transition:opacity var(--transition-fast);background:linear-gradient(#080c1400 0% 35%,#080c148c 65%,#080c14e6 100%);position:absolute;inset:0}.trip-hero.is-repositioning{cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none}.trip-hero.is-repositioning.is-dragging{cursor:grabbing}.trip-hero.is-repositioning .trip-hero-overlay{opacity:0}.trip-hero.is-repositioning .trip-hero-content{visibility:hidden}.trip-hero-reposition-bar{z-index:3;border-radius:var(--radius-full);-webkit-backdrop-filter:blur(8px);color:#fff;max-width:calc(100% - 24px);font-size:var(--fs-sm);cursor:default;background:#000000a6;align-items:center;gap:8px;padding:6px 6px 6px 12px;font-weight:600;display:flex;position:absolute;bottom:14px;left:50%;transform:translate(-50%)}.trip-hero-reposition-hint{white-space:nowrap;align-items:center;gap:6px;display:inline-flex}@media (width<=480px){.trip-hero-reposition-hint span{display:none}}.trip-hero-content{z-index:2;flex-direction:column;justify-content:flex-end;gap:12px;width:100%;display:flex;position:relative}.trip-hero-bottom-bar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;width:100%;display:flex}.trip-hero .btn-glass{-webkit-backdrop-filter:blur(8px);color:#fff;background:#0000008c;border:1px solid #fff3}.trip-hero .btn-glass:hover{color:#fff;background:#000000bf;border-color:#ffffff59}.trip-hero-main-info{flex-direction:column;gap:6px;min-width:0;display:flex}.trip-hero-badges{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.hero-dest-pill,.hero-date-pill{border-radius:var(--radius-full);-webkit-backdrop-filter:blur(8px);font-size:var(--fs-xs);color:#fff;background:#0000008c;border:1px solid #ffffff26;align-items:center;gap:4px;padding:3px 10px;font-weight:600;display:inline-flex}.hero-date-mobile{display:none}.hero-date-desktop{display:inline}.trip-hero-title{color:#fff;text-shadow:0 2px 10px #00000080;font-size:clamp(22px,4vw,32px);font-weight:700;line-height:1.25}.trip-hero-meta-row{flex-wrap:wrap;align-items:center;gap:16px;margin-top:4px;display:flex}.hero-tripmates-group{cursor:pointer;align-items:center;gap:8px;display:flex}.hero-tripmates-count{font-size:var(--fs-xs);color:#ffffffd9;font-weight:600}.hero-stops-pill{border-radius:var(--radius-full);-webkit-backdrop-filter:blur(8px);font-size:var(--fs-xs);color:#fff;background:#0000008c;border:1px solid #ffffff26;align-items:center;gap:6px;padding:4px 12px;font-weight:500;display:inline-flex}.hero-budget-pill{border-radius:var(--radius-full);-webkit-backdrop-filter:blur(8px);font-size:var(--fs-xs);color:#fff;background:#0000008c;border:1px solid #ffffff26;align-items:center;gap:6px;padding:4px 12px;display:flex}.hero-budget-bar{background:#fff3;border-radius:3px;width:50px;height:6px;margin-left:4px;overflow:hidden}.trip-hero-actions{flex-shrink:0;align-items:center;gap:8px;display:flex}.day-tabs-nav-bar{align-items:center;gap:8px;width:100%;margin-bottom:16px;display:flex;position:relative}.day-tabs-nav-bar.is-flush{margin-bottom:0}.day-tabs-scroll-wrapper{flex:1;align-items:center;min-width:0;display:flex;position:relative}.day-tabs-scroll{scrollbar-width:none;-ms-overflow-style:none;scroll-behavior:smooth;-webkit-overflow-scrolling:touch;gap:8px;margin-bottom:0;padding:4px 2px 6px;display:flex;overflow-x:auto}.day-tabs-scroll::-webkit-scrollbar{display:none}.day-scroll-fade{pointer-events:none;z-index:3;opacity:0;width:40px;transition:opacity .2s;position:absolute;top:0;bottom:0}.day-scroll-fade.left{background:linear-gradient(to right, var(--bg-app) 0%, transparent 100%);left:0}.day-scroll-fade.right{background:linear-gradient(to left, var(--bg-app) 0%, transparent 100%);right:0}.day-scroll-fade.visible{opacity:1}.day-tabs-scroll.can-scroll-left.can-scroll-right{-webkit-mask-image:linear-gradient(90deg,#0000 0,#000 36px calc(100% - 36px),#0000 100%);mask-image:linear-gradient(90deg,#0000 0,#000 36px calc(100% - 36px),#0000 100%)}.day-tabs-scroll.can-scroll-left:not(.can-scroll-right){-webkit-mask-image:linear-gradient(90deg,#0000 0,#000 36px 100%);mask-image:linear-gradient(90deg,#0000 0,#000 36px 100%)}.day-tabs-scroll.can-scroll-right:not(.can-scroll-left){-webkit-mask-image:linear-gradient(90deg,#000 0 calc(100% - 36px),#0000 100%);mask-image:linear-gradient(90deg,#000 0 calc(100% - 36px),#0000 100%)}.day-scroll-arrow{background:var(--bg-elevated);border:1px solid var(--border-active);width:28px;height:28px;color:var(--text-primary);cursor:pointer;z-index:5;opacity:0;pointer-events:none;border-radius:50%;justify-content:center;align-items:center;transition:opacity .2s,transform .2s cubic-bezier(.16,1,.3,1),background .15s,color .15s,border-color .15s;display:flex;position:absolute;top:50%;transform:translateY(-50%)scale(.9);box-shadow:0 4px 12px #00000040}.day-scroll-arrow.visible{opacity:1;pointer-events:auto;transform:translateY(-50%)scale(1)}.day-scroll-arrow.left{left:4px}.day-scroll-arrow.right{right:4px}.day-scroll-arrow:hover{background:var(--primary-solid);color:#fff;border-color:var(--primary);transform:translateY(-50%)scale(1.14);box-shadow:0 4px 14px #6366f173}.day-scroll-arrow:active{transform:translateY(-50%)scale(.95)}.day-step-btn{border-radius:var(--radius-lg);background:var(--bg-card);border:1px solid var(--border-subtle);color:var(--text-secondary);font-size:var(--fs-sm);cursor:pointer;white-space:nowrap;height:48px;box-shadow:var(--shadow-xs);transition:all var(--transition-fast);-webkit-user-select:none;user-select:none;flex-shrink:0;justify-content:center;align-items:center;gap:6px;padding:8px 14px;font-weight:600;display:inline-flex}.day-step-btn:hover:not(:disabled){background:var(--bg-card-hover);border-color:var(--border-active);color:var(--text-primary);box-shadow:var(--shadow-sm);transform:translateY(-1px)}.day-step-btn:active:not(:disabled){transform:translateY(0)}.day-step-btn:disabled{opacity:.35;cursor:not-allowed;pointer-events:none}.day-tab-btn{border-radius:var(--radius-lg);background:var(--bg-card);border:1px solid var(--border-subtle);color:var(--text-secondary);cursor:pointer;white-space:nowrap;transition:all var(--transition-fast);min-height:48px;box-shadow:var(--shadow-xs);-webkit-user-select:none;user-select:none;flex-direction:column;flex-shrink:0;justify-content:center;align-items:center;padding:7px 16px;display:flex}.day-tab-btn:hover{background:var(--bg-card-hover);color:var(--text-primary);border-color:var(--border-active);transform:translateY(-1px)}.day-tab-btn.active,.day-tab-btn.day-tab-overview.active{background:var(--selected-bg);border-color:var(--selected-border);color:var(--selected-text);box-shadow:none}.day-tab-label{font-size:var(--fs-xs);color:var(--text-primary);font-weight:700;line-height:1.2}.day-tab-btn.active .day-tab-label{color:var(--selected-text)}.day-tab-date{font-size:var(--fs-xs);color:var(--text-muted);margin-top:2px;font-weight:500;line-height:1.2}.day-tab-btn.active .day-tab-date{color:var(--selected-text);opacity:.75}.day-tab-today-badge{font-size:var(--fs-2xs);text-transform:uppercase;letter-spacing:.04em;background:var(--primary);color:#fff;border-radius:9999px;align-items:center;padding:1px 5px;font-weight:700;line-height:1.1;display:inline-flex}.day-tab-btn.is-today:not(.active){border-color:#ff385c66}@media (width<=640px){.day-step-text{display:none}.day-step-btn{padding:8px 10px}}.timeline-container,.timeline-cards-list{flex-direction:column;gap:14px;display:flex;position:relative}.timeline-card-wrapper{position:relative}.timeline-card-wrapper:hover{z-index:5}.timeline-card-wrapper:hover .timeline-item-card{border-color:var(--border-active);background:var(--bg-card-hover);box-shadow:var(--shadow-md)}.timeline-insert-marker{z-index:15;pointer-events:none;opacity:0;justify-content:center;align-items:center;height:0;transition:opacity .2s cubic-bezier(.16,1,.3,1);display:flex;position:absolute;left:0;right:0}.timeline-insert-marker.insert-before{top:0}.timeline-insert-marker.insert-after{bottom:-7px}.timeline-card-wrapper:hover .timeline-insert-marker,.timeline-card-wrapper:focus-within .timeline-insert-marker,:is(.timeline-card-wrapper:has(+.timeline-card-wrapper:hover) .timeline-insert-marker.insert-after,.timeline-card-wrapper:has(+.timeline-card-wrapper:focus-within) .timeline-insert-marker.insert-after){opacity:1}.timeline-insert-line{background:var(--border-medium);opacity:.6;height:1px;transition:opacity .2s,transform .2s;position:absolute;left:18px;right:18px;transform:scaleX(.92)}.timeline-card-wrapper:hover .timeline-insert-line{opacity:.85;transform:scaleX(1)}.timeline-card-wrapper:has(+.timeline-card-wrapper:hover) .timeline-insert-line{opacity:.85;transform:scaleX(1)}.timeline-add-between-btn{z-index:2;background:var(--bg-card);border:1px solid var(--border-medium);width:26px;height:26px;color:var(--text-secondary);cursor:pointer;pointer-events:none;box-shadow:var(--shadow-sm);border-radius:50%;justify-content:center;align-items:center;transition:transform .2s cubic-bezier(.16,1,.3,1),background .15s,color .15s,border-color .15s,box-shadow .2s;display:flex;position:relative;transform:scale(.9)}.timeline-add-between-btn:before{content:"";border-radius:50%;position:absolute;inset:-6px}:is(.timeline-card-wrapper:hover .timeline-add-between-btn,.timeline-card-wrapper:focus-within .timeline-add-between-btn,.timeline-card-wrapper:has(+.timeline-card-wrapper:hover) .timeline-add-between-btn.add-after,.timeline-card-wrapper:has(+.timeline-card-wrapper:focus-within) .timeline-add-between-btn.add-after){pointer-events:auto;transform:scale(1)}.timeline-add-between-btn:hover{background:var(--selected-bg);color:var(--selected-text);border-color:var(--selected-border);box-shadow:var(--shadow-md);transform:scale(1.1)!important}.timeline-add-between-btn:active{transform:scale(.96)!important}.timeline-item-card{background:var(--bg-card);border:1px solid var(--border-card);border-radius:var(--radius-md);transition:all var(--transition-fast);box-shadow:var(--shadow-sm);flex-direction:column;gap:14px;padding:18px 20px;display:flex;position:relative;overflow:hidden}.timeline-item-card:hover{border-color:var(--border-active);background:var(--bg-card-hover);box-shadow:var(--shadow-md)}.timeline-item-card.is-passed{opacity:.52;border-color:var(--border-subtle);background:var(--bg-card);transition:opacity var(--transition-fast), filter var(--transition-fast), border-color var(--transition-fast)}.timeline-item-card.is-passed:hover{opacity:.9;border-color:var(--border-card)}.timeline-item-card.is-passed .poi-card-thumb,.timeline-item-card.is-passed .card-mobile-bg-img{filter:grayscale(40%)contrast(.9);opacity:.7}.timeline-item-card.is-next{border:1.5px solid var(--primary);background:linear-gradient(135deg, #ff385c14 0%, var(--bg-card) 65%);position:relative;box-shadow:0 4px 20px #ff385c29,0 0 0 1px #ff385c40}.timeline-item-card.is-next:before{content:"";background:var(--primary-gradient,var(--primary));border-top-left-radius:var(--radius-md);border-bottom-left-radius:var(--radius-md);width:4px;position:absolute;top:0;bottom:0;left:0}.timeline-item-card.is-next:hover{border-color:var(--primary);box-shadow:0 6px 24px #ff385c3d, 0 0 0 1px var(--primary)}.timeline-item-card.is-current{border:1.5px solid var(--accent-emerald,#10b981);background:linear-gradient(135deg, #10b98117 0%, var(--bg-card) 65%);position:relative;box-shadow:0 4px 20px #10b9812e,0 0 0 1px #10b98140}.timeline-item-card.is-current:before{content:"";background:var(--accent-emerald,#10b981);border-top-left-radius:var(--radius-md);border-bottom-left-radius:var(--radius-md);width:4px;position:absolute;top:0;bottom:0;left:0}.card-timing-badge{font-size:var(--fs-2xs);text-transform:uppercase;letter-spacing:.05em;border-radius:var(--radius-full,9999px);align-items:center;gap:5px;padding:3px 8px;font-weight:700;line-height:1.2;display:inline-flex}.card-timing-badge.is-next{background:var(--primary);color:#fff;box-shadow:0 2px 8px #ff385c59}.card-timing-badge.is-current{background:var(--accent-emerald,#10b981);color:#fff;box-shadow:0 2px 8px #10b98159}.card-timing-badge.is-passed{background:var(--bg-elevated);color:var(--text-muted);border:1px solid var(--border-subtle);font-weight:600}.timing-pulse-dot{background:#fff;border-radius:50%;width:6px;height:6px;animation:1.8s ease-in-out infinite pulse-live;box-shadow:0 0 6px #fff}.card-mobile-bg-fade{display:none}.card-header-meta{z-index:1;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex;position:relative}.card-meta-left{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.card-time-badge{background:var(--bg-elevated);border:1px solid var(--border-subtle);border-radius:var(--radius-full);font-size:var(--fs-xs);color:var(--text-primary);font-feature-settings:"tnum";align-items:center;gap:6px;padding:4px 10px;font-weight:700;display:inline-flex}.card-time-icon{color:var(--text-muted)}.card-time-text{letter-spacing:-.01em}.card-duration-chip{font-size:var(--fs-2xs);color:var(--text-secondary);background:var(--bg-card);border-radius:var(--radius-full);border:1px solid var(--border-subtle);padding:1px 6px;font-weight:600}.item-when-row{grid-template-columns:76px minmax(0,1fr) minmax(0,1fr);align-items:center;gap:6px;display:grid}.item-when-row+.item-when-row{margin-top:6px}.item-when-label{font-size:var(--fs-xs);color:var(--text-secondary);font-weight:600}.item-when-date{width:100%;min-width:0}.item-when-time{align-items:center;gap:4px;min-width:0;display:flex}.item-when-time input{flex:1;min-width:0}.item-when-error{font-size:var(--fs-xs);color:var(--accent-coral);margin-top:6px}.item-when-hint{font-size:var(--fs-xs);color:var(--text-muted);margin-top:6px}.item-span-option{grid-template-columns:76px minmax(0,1fr);align-items:center;gap:6px;margin-top:8px;display:grid}.item-span-option-label{font-size:var(--fs-xs);color:var(--text-secondary);font-weight:600}.item-span-chips{flex-wrap:wrap;gap:6px;display:flex}.item-span-chip{border:1px solid var(--border-subtle);background:var(--bg-input);color:var(--text-secondary);font-size:var(--fs-xs);cursor:pointer;border-radius:999px;padding:5px 10px;font-weight:600}.item-span-chip.is-selected{border-color:var(--primary);background:var(--primary-light);color:var(--primary)}.location-field-label{justify-content:space-between;align-items:center;gap:8px;display:flex}.add-end-location-btn{font-size:var(--fs-xs);gap:5px;margin:-6px 0 14px}@media (width<=420px){.item-when-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.item-when-label{grid-column:1/-1}.item-span-option{grid-template-columns:minmax(0,1fr)}}.card-day-span-chip{font-size:var(--fs-2xs);border-radius:var(--radius-full);color:var(--primary);background:var(--primary-light);white-space:nowrap;align-items:center;padding:2px 8px;font-weight:700;display:inline-flex}.card-actions-group{flex-shrink:0;align-items:center;gap:4px;display:flex}.card-action-btn{border-radius:var(--radius-xs);color:var(--text-secondary);background:var(--bg-glass);-webkit-backdrop-filter:blur(8px);border:1px solid var(--border-subtle);transition:all var(--transition-fast);width:30px!important;height:30px!important}.card-action-btn:hover{color:var(--text-primary);background:var(--bg-elevated);border-color:var(--border-active)}.card-action-btn.delete:hover{color:#f43f5e;background:#f43f5e1a;border-color:#f43f5e4d}.card-main-body{z-index:1;justify-content:space-between;align-items:flex-start;gap:18px;display:flex;position:relative}.card-text-col{flex-direction:column;flex:1;gap:6px;min-width:0;display:flex}.card-title{font-size:var(--fs-xl);color:var(--text-primary);letter-spacing:-.015em;margin:0;font-weight:700;line-height:1.35}.card-location{font-size:var(--fs-sm);color:var(--text-secondary);align-items:center;gap:6px;margin-top:2px;display:flex}.card-location-link{color:var(--text-secondary);transition:color var(--transition-fast);word-break:break-word;align-items:center;gap:5px;font-weight:500;line-height:1.35;text-decoration:none;display:inline-flex}.card-location-link:hover{color:var(--primary);text-decoration:underline}.card-notes-wrapper{margin-top:2px}.card-notes-text{font-size:var(--fs-base);color:var(--text-secondary);white-space:pre-line;margin:0;line-height:1.55}.card-notes-text.clamped{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.card-notes-text.expanded{display:block}.card-inline-link{color:var(--primary,#0ea5e9);text-underline-offset:2.5px;cursor:pointer;word-break:break-word;overflow-wrap:anywhere;font-weight:500;-webkit-text-decoration:underline #0ea5e973;text-decoration:underline #0ea5e973;transition:color .15s,text-decoration-color .15s;display:inline}.card-inline-link:hover{color:var(--primary-hover,#0284c7);text-decoration-color:currentColor}.card-inline-link:focus-visible{outline:2px solid var(--primary);outline-offset:1px;border-radius:2px}.card-media-slot{flex-shrink:0}.poi-card-thumb{border-radius:var(--radius-sm);border:1px solid var(--border-subtle);background:var(--bg-elevated);width:124px;height:88px;box-shadow:var(--shadow-sm);transition:transform var(--transition-fast), box-shadow var(--transition-fast);position:relative;overflow:hidden}.timeline-item-card:hover .poi-card-thumb{box-shadow:var(--shadow-md);transform:scale(1.02)}.nav-controls-unified{background:var(--bg-elevated);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);font-size:var(--fs-xs);z-index:1;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:8px 12px;display:flex;position:relative}.nav-commute-info{color:var(--text-muted);font-size:var(--fs-xs);align-items:center;gap:6px;display:flex}.nav-lead-icon{color:var(--primary);flex-shrink:0}.nav-origin-text{color:var(--text-secondary);font-size:var(--fs-xs)}.nav-origin-name{color:var(--text-primary);font-weight:600}.nav-dot-sep{color:var(--text-muted);opacity:.5}.nav-distance-text{color:var(--text-primary);font-weight:700}.nav-modes-group{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.nav-mode-pill{border-radius:var(--radius-full);font-size:var(--fs-xs);border:1px solid var(--border-subtle);background:var(--bg-card);color:var(--text-secondary);transition:all var(--transition-fast);-webkit-user-select:none;user-select:none;align-items:center;gap:5px;padding:4px 10px;font-weight:600;text-decoration:none;display:inline-flex}.nav-leave-time{color:var(--text-muted);font-weight:500}.nav-mode-pill:hover{background:var(--bg-card-hover);color:var(--text-primary);border-color:var(--border-active);transform:translateY(-1px)}.nav-mode-pill.drive:hover{color:#38bdf8;border-color:#38bdf866}.nav-mode-pill.transit:hover{color:#a78bfa;border-color:#a78bfa66}.nav-mode-pill.walk:hover{color:#34d399;border-color:#34d39966}.nav-mode-pill.ride:hover{color:var(--text-primary);border-color:var(--border-active)}.nav-mode-pill.ride-estimate{cursor:pointer;font:inherit;font-size:var(--fs-xs);border-style:dashed;font-weight:600}.nav-mode-pill.ride-estimate:disabled{cursor:progress;opacity:.7}.nav-ext-icon{opacity:.5}.nav-app-picker{position:relative}.nav-app-toggle-btn{border-radius:var(--radius-full);font-size:var(--fs-2xs);color:var(--text-muted);border:1px solid var(--border-subtle);cursor:pointer;transition:all var(--transition-fast);background:0 0;align-items:center;gap:4px;padding:4px 8px;font-weight:600;display:inline-flex}.nav-app-toggle-btn:hover{color:var(--text-primary);background:var(--bg-card)}.nav-app-dropdown{background:var(--bg-elevated);border:1px solid var(--border-card);border-radius:var(--radius-sm);box-shadow:var(--shadow-lg);z-index:100;min-width:120px;margin-top:4px;position:absolute;top:100%;right:0;overflow:hidden}.nav-app-item{text-align:left;width:100%;font-size:var(--fs-xs);color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;padding:8px 12px;font-weight:500;display:block}.nav-app-item:hover{background:var(--bg-card-hover);color:var(--text-primary)}.nav-app-item.active{color:var(--primary);font-weight:600}.card-footer-meta{border-top:1px solid var(--border-subtle);z-index:1;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;padding-top:10px;display:flex;position:relative}.card-ref-badge{border-radius:var(--radius-full);font-size:var(--fs-xs);background:var(--bg-elevated);border:1px solid var(--border-subtle);color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);align-items:center;gap:5px;padding:4px 9px;display:inline-flex}.card-ref-badge:hover{background:var(--bg-card-hover);border-color:var(--border-active);color:var(--text-primary)}.card-price-display{align-items:center;gap:6px;margin-left:auto;display:flex}.card-price-amount{font-size:var(--fs-base);color:var(--accent-emerald);font-weight:700}@media (width<=640px){.timeline-item-card{border-radius:var(--radius-sm);gap:12px;padding:14px 15px}.card-header-meta{align-items:flex-start}.timeline-item-card.has-bg-image .card-mobile-bg-fade{pointer-events:none;z-index:0;width:62%;display:block;position:absolute;top:0;bottom:0;right:0;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,#0000 0%,#00000040 20%,#000000d9 70%,#000 100%);mask-image:linear-gradient(90deg,#0000 0%,#00000040 20%,#000000d9 70%,#000 100%)}.card-mobile-bg-img{object-fit:cover;object-position:center right;opacity:.35;filter:saturate(1.15);width:100%;height:100%}[data-theme=light] .card-mobile-bg-img{opacity:.22}.timeline-item-card.has-bg-image .card-media-slot{display:none}.card-title{font-size:var(--fs-lg)}.nav-controls-unified{flex-direction:column;align-items:flex-start;gap:8px}.nav-modes-group{justify-content:flex-start;width:100%}}.modal-backdrop{z-index:9999;-webkit-backdrop-filter:blur(8px);background:#04070dbf;justify-content:center;align-items:center;padding:16px;animation:.2s ease-out fadeIn;display:flex;position:fixed;inset:0}.modal-sheet-handle{background:var(--border-subtle);border-radius:9999px;flex-shrink:0;width:38px;height:4px;margin:10px auto 2px;display:none}.modal-sheet:focus{outline:none}.modal-sheet{background:var(--bg-elevated);border:1px solid var(--border-card);border-radius:var(--radius-xl);width:100%;max-width:540px;max-height:90vh;box-shadow:var(--shadow-lg);flex-direction:column;animation:.25s cubic-bezier(.16,1,.3,1) slideUp;display:flex;overflow-y:auto}@media (width<=640px){.modal-backdrop{align-items:flex-end;padding:0}.modal-sheet{border-bottom:none;border-left:none;border-right:none;border-radius:24px 24px 0 0;width:100%;max-height:90vh;padding-bottom:0;animation:.3s cubic-bezier(.16,1,.3,1) modalSheetSlideUp;max-width:100%!important}.modal-sheet-handle{z-index:11;display:block;position:sticky;top:0}.modal-footer{padding-bottom:calc(16px + var(--sab,0px))}}.modal-header{border-bottom:1px solid var(--border-subtle);background:var(--bg-elevated);z-index:10;border-top-left-radius:inherit;border-top-right-radius:inherit;flex-shrink:0;justify-content:space-between;align-items:center;padding:20px 24px;display:flex;position:sticky;top:0}.modal-body{flex-direction:column;gap:18px;padding:20px 24px;display:flex}.modal-footer{border-top:1px solid var(--border-subtle);background:var(--bg-elevated);z-index:10;border-bottom-left-radius:inherit;border-bottom-right-radius:inherit;flex-shrink:0;justify-content:flex-end;align-items:center;gap:12px;margin-top:auto;padding:16px 24px;display:flex;position:sticky;bottom:0;box-shadow:0 -4px 16px #0000000d}.form-group{flex-direction:column;gap:6px;display:flex}.form-label{font-size:var(--fs-sm);color:var(--text-secondary);font-weight:600}.input-row{grid-template-columns:1fr 1fr;gap:12px;display:grid}@media (width<=500px){.input-row{grid-template-columns:1fr}}.avatar-stack{align-items:center;display:flex}.avatar-stack img,.avatar-stack .avatar-initial{border:2px solid var(--bg-app);object-fit:cover;background:var(--bg-elevated);width:30px;height:30px;font-size:var(--fs-xs);color:var(--text-primary);border-radius:50%;justify-content:center;align-items:center;margin-left:-8px;font-weight:700;display:inline-flex}.avatar-stack img:first-child,.avatar-stack .avatar-initial:first-child{margin-left:0}.nav-controls-wrapper{border-top:1px dashed var(--border-subtle);flex-direction:column;gap:8px;width:100%;margin-top:8px;padding-top:8px;display:flex}.nav-estimate-bar{background:var(--bg-elevated);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);font-size:var(--fs-2xs);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:6px;padding:5px 8px;display:flex}.nav-estimate-left{color:var(--text-secondary);align-items:center;gap:5px;display:flex}.nav-estimate-tag{font-size:var(--fs-2xs);text-transform:uppercase;letter-spacing:.04em;border-radius:var(--radius-xs);color:var(--primary);background:#6366f126;padding:1px 5px;font-weight:700}.nav-estimate-origin{text-overflow:ellipsis;white-space:nowrap;max-width:130px;color:var(--text-muted);overflow:hidden}.nav-estimate-distance{color:var(--text-primary);font-weight:700}.nav-estimate-times{align-items:center;gap:6px;display:flex}.nav-time-chip{font-size:var(--fs-2xs);border-radius:var(--radius-xs);white-space:nowrap;align-items:center;gap:3px;padding:1px 6px;font-weight:600;display:inline-flex}.nav-time-chip.drive{color:#38bdf8;background:#38bdf81a}.nav-time-chip.transit{color:#a78bfa;background:#a78bfa1f}.nav-time-chip.walk{color:#34d399;background:#34d3991a}.nav-buttons-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.nav-buttons-row.compact{gap:4px}.nav-label-group{font-size:var(--fs-2xs);color:var(--text-muted);align-items:center;gap:4px;font-weight:600;display:flex}.nav-lead-icon{color:var(--primary);opacity:.85}.nav-actions-group{flex-wrap:wrap;align-items:center;gap:5px;display:flex}.nav-mode-btn{font-size:var(--fs-2xs);border-radius:var(--radius-sm);border:1px solid var(--border-subtle);background:var(--bg-card);transition:all var(--transition-fast);white-space:nowrap;align-items:center;gap:5px;padding:4px 9px;font-weight:600;text-decoration:none;display:inline-flex}.nav-mode-btn:hover{transform:translateY(-1px);box-shadow:0 2px 8px #00000026}.nav-mode-btn.drive{color:#38bdf8;border-color:#38bdf840}.nav-mode-btn.drive:hover{background:#38bdf81f;border-color:#38bdf8}.nav-mode-btn.transit{color:#a78bfa;border-color:#a78bfa40}.nav-mode-btn.transit:hover{background:#a78bfa1f;border-color:#a78bfa}.nav-mode-btn.walk{color:#34d399;border-color:#34d39940}.nav-mode-btn.walk:hover{background:#34d3991f;border-color:#34d399}.nav-btn-text{font-weight:600}.nav-btn-time{font-size:var(--fs-2xs);opacity:.8;border-radius:var(--radius-xs);background:#ffffff14;padding:0 3px}.nav-btn-ext{opacity:.5;margin-left:1px}.nav-app-picker{display:inline-block;position:relative}.nav-app-toggle-btn{border:1px solid var(--border-subtle);color:var(--text-muted);border-radius:var(--radius-sm);font-size:var(--fs-2xs);cursor:pointer;transition:all var(--transition-fast);background:0 0;align-items:center;gap:3px;padding:4px 6px;font-weight:600;display:flex}.nav-app-toggle-btn:hover{color:var(--text-primary);border-color:var(--border-active)}.nav-app-dropdown{background:var(--bg-elevated);border:1px solid var(--border-card);border-radius:var(--radius-sm);box-shadow:var(--shadow-md);z-index:100;flex-direction:column;gap:2px;min-width:105px;padding:4px;animation:.15s ease-out fadeIn;display:flex;position:absolute;bottom:calc(100% + 4px);right:0}.nav-app-item{font-size:var(--fs-2xs);color:var(--text-secondary);border-radius:var(--radius-xs);text-align:left;cursor:pointer;background:0 0;border:none;width:100%;padding:6px 8px;font-weight:500}.nav-app-item:hover,.nav-app-item.active{background:var(--primary-light);color:var(--primary);font-weight:700}.flight-modal-sheet{background:var(--bg-elevated);border:1px solid var(--border-card);box-shadow:0 20px 50px #00000080}.flight-modal-plane-badge{border-radius:var(--radius-md);color:#38bdf8;background:#38bdf826;border:1px solid #38bdf84d;justify-content:center;align-items:center;width:44px;height:44px;display:flex;box-shadow:0 0 16px #38bdf833}.flight-live-status-pill{font-size:var(--fs-2xs);border-radius:var(--radius-full);letter-spacing:.04em;border:1px solid;align-items:center;gap:6px;padding:3px 9px;font-weight:700;display:inline-flex}.live-beacon-dot{border-radius:50%;width:7px;height:7px;animation:1.8s infinite beaconPulse}.flight-route-card{background:var(--bg-card);border:1px solid var(--border-card);border-radius:var(--radius-lg);justify-content:space-between;align-items:center;gap:16px;padding:18px 20px;display:flex;position:relative;overflow:hidden}.flight-airport-box{flex-direction:column;gap:3px;min-width:100px;display:flex}.flight-airport-box.dest{text-align:right;align-items:flex-end}.flight-iata-code{font-family:var(--font-display);font-size:var(--fs-4xl);color:var(--text-primary);letter-spacing:-.03em;font-weight:700;line-height:1}.flight-airport-city{font-size:var(--fs-sm);color:var(--text-secondary);font-weight:500}.flight-time-box{font-size:var(--fs-base);color:var(--primary);align-items:center;gap:5px;margin-top:4px;font-weight:700;display:flex}.flight-gate-info{font-size:var(--fs-2xs);color:var(--text-muted)}.flight-route-spine{flex-direction:column;flex:1;align-items:center;gap:8px;padding:0 10px;display:flex}.flight-spine-time{font-size:var(--fs-2xs);color:var(--text-muted);background:var(--bg-elevated);border-radius:var(--radius-full);border:1px solid var(--border-subtle);padding:2px 8px;font-weight:700}.flight-spine-track{background:var(--border-card);border-radius:var(--radius-full);width:100%;height:4px;position:relative}.flight-spine-fill{background:linear-gradient(90deg, #38bdf8, var(--primary));border-radius:var(--radius-full);height:100%;transition:width .3s}.flight-spine-airplane{color:#38bdf8;background:var(--bg-app);border-radius:50%;justify-content:center;align-items:center;padding:3px;display:flex;position:absolute;top:50%;transform:translate(-50%,-50%)rotate(90deg);box-shadow:0 0 10px #38bdf8cc}.flight-spine-sub{font-size:var(--fs-2xs);color:#38bdf8;font-weight:600}.flight-telemetry-grid{grid-template-columns:repeat(4,1fr);gap:10px;display:grid}@media (width<=600px){.flight-telemetry-grid{grid-template-columns:repeat(2,1fr)}.flight-route-card{flex-direction:column;align-items:stretch;gap:12px}.flight-airport-box.dest{text-align:left;align-items:flex-start}.flight-route-spine{width:100%}}.flight-telemetry-card{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:var(--radius-md);align-items:center;gap:10px;padding:10px 12px;display:flex}.telemetry-icon-box{border-radius:var(--radius-sm);background:var(--bg-elevated);width:32px;height:32px;color:var(--primary);flex-shrink:0;justify-content:center;align-items:center;display:flex}.telemetry-label{font-size:var(--fs-2xs);text-transform:uppercase;color:var(--text-muted);letter-spacing:.04em;font-weight:700;display:block}.telemetry-val{font-size:var(--fs-sm);color:var(--text-primary);margin-top:1px;font-weight:700;display:block}.flight-radar-map-wrapper{border-radius:var(--radius-md);border:1px solid var(--border-card);isolation:isolate;contain:paint;z-index:1;height:240px;position:relative;overflow:hidden;box-shadow:inset 0 0 20px #0006}.flight-radar-badge{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#38bdf8;border-radius:var(--radius-full);font-size:var(--fs-2xs);z-index:1000;background:#0f172ad9;border:1px solid #38bdf84d;align-items:center;gap:6px;padding:4px 10px;font-weight:700;display:flex;position:absolute;top:10px;right:10px;box-shadow:0 4px 12px #0000004d}.live-pulse{animation:1.5s infinite pulse}.flight-external-radar-bar{border-top:1px solid var(--border-subtle);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;padding-top:8px;display:flex}.track-flight-btn{color:var(--cat-flight);border-radius:var(--radius-sm);font-size:var(--fs-2xs);cursor:pointer;transition:all var(--transition-fast);background:#38bdf81f;border:1px solid #38bdf84d;align-items:center;gap:5px;padding:3px 8px;font-weight:700;display:inline-flex}.track-flight-btn:hover{background:#38bdf838;border-color:#38bdf8;transform:translateY(-1px);box-shadow:0 2px 8px #38bdf840}.timeline-item-body-row{flex-direction:column;gap:6px;width:100%;margin-bottom:8px;display:flex}.timeline-item-text-col{flex:1;min-width:0}.poi-card-thumb{border-radius:var(--radius-md);border:1px solid var(--border-card);background:var(--bg-elevated);width:130px;height:90px;transition:transform var(--transition-fast), box-shadow var(--transition-fast);flex-shrink:0;position:relative;overflow:hidden;box-shadow:0 4px 14px #0003}.timeline-item-card:hover .poi-card-thumb{transform:scale(1.03);box-shadow:0 6px 18px #0000004d}.poi-thumb-img{object-fit:cover;width:100%;height:100%;display:block}@media (width<=640px){.poi-card-thumb{border-radius:var(--radius-sm);width:88px;height:68px}.timeline-item-body-row{gap:10px}}.poi-thumb-mini{border-radius:var(--radius-sm);border:1px solid var(--border-subtle);flex-shrink:0;width:48px;height:48px;position:relative;overflow:hidden}.currency-converter-card{background:var(--bg-card);-webkit-backdrop-filter:blur(12px);border:1px solid var(--border-card);border-radius:var(--radius-lg);flex-direction:column;gap:12px;padding:16px 18px;display:flex;position:relative;overflow:hidden;box-shadow:0 4px 18px #00000026}.currency-converter-card:before{content:"";background:linear-gradient(90deg,#10b981 0%,#ff385c 50%,#38bdf8 100%);height:3px;position:absolute;top:0;left:0;right:0}.currency-converter-card.compact{gap:10px;padding:12px 14px}.converter-header{justify-content:space-between;align-items:center;display:flex}.converter-badge{border-radius:var(--radius-sm);color:#10b981;background:#10b98126;border:1px solid #10b9814d;justify-content:center;align-items:center;width:32px;height:32px;display:flex}.converter-body{flex-direction:column;gap:8px;display:flex}.converter-input-group{flex-direction:column;gap:4px;display:flex}.converter-label{font-size:var(--fs-2xs);color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;font-weight:700}.converter-field{background:var(--bg-elevated);border:1px solid var(--border-subtle);border-radius:var(--radius-md);transition:border-color var(--transition-fast);align-items:stretch;display:flex;overflow:hidden}.converter-field:focus-within{border-color:var(--primary);box-shadow:0 0 0 2px #6366f133}.converter-input{min-width:0;font-size:var(--fs-xl);color:var(--text-primary);background:0 0;border:none;outline:none;flex:1;padding:10px 14px;font-weight:700}.converter-output{min-width:0;font-size:var(--fs-xl);color:var(--accent-emerald);-webkit-user-select:all;user-select:all;flex:1;align-items:center;padding:10px 14px;font-weight:700;display:flex}.converter-select{background:var(--bg-card-hover);border:none;border-left:1px solid var(--border-subtle);font-size:var(--fs-sm);color:var(--text-primary);cursor:pointer;transition:background var(--transition-fast);outline:none;padding:0 12px;font-weight:700}.converter-select:hover{background:var(--bg-elevated)}.converter-swap-wrapper{z-index:2;justify-content:center;margin:-4px 0;display:flex}.converter-swap-btn{background:var(--bg-elevated);border:1px solid var(--border-subtle);width:30px;height:30px;color:var(--primary);cursor:pointer;transition:all var(--transition-fast);border-radius:50%;justify-content:center;align-items:center;display:inline-flex;box-shadow:0 2px 8px #0000002e}.converter-swap-btn:hover{background:var(--primary-solid);color:#fff;border-color:var(--primary);transform:rotate(180deg)scale(1.1)}.converter-presets-row{flex-wrap:wrap;align-items:center;gap:8px;padding-top:4px;display:flex}.converter-preset-chip{font-size:var(--fs-2xs);border-radius:var(--radius-xs);background:var(--bg-elevated);border:1px solid var(--border-subtle);color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);padding:3px 8px;font-weight:600}.converter-preset-chip:hover{color:var(--primary);border-color:var(--primary);background:#6366f126;transform:translateY(-1px)}.converter-rate-bar{border-top:1px solid var(--border-subtle);font-size:var(--fs-2xs);color:var(--text-muted);justify-content:space-between;align-items:center;margin-top:4px;padding-top:8px;display:flex}.dual-currency-tag{font-size:var(--fs-2xs);color:var(--text-muted);background:var(--bg-elevated);border:1px solid var(--border-subtle);border-radius:var(--radius-xs);align-items:center;gap:4px;margin-left:6px;padding:1px 6px;font-weight:600;display:inline-flex}.timeline-filter-toolbar{justify-content:space-between;align-items:center;gap:12px;width:100%;display:flex}.timeline-categories-scroll{scrollbar-width:none;flex:1;gap:6px;min-width:0;padding-bottom:2px;display:flex;overflow-x:auto}.timeline-categories-scroll::-webkit-scrollbar{display:none}.timeline-category-chip{border-radius:var(--radius-full);font-size:var(--fs-xs);background:var(--bg-card);color:var(--text-secondary);border:1px solid var(--border-subtle);cursor:pointer;white-space:nowrap;transition:all var(--transition-fast);flex-shrink:0;padding:6px 12px;font-weight:600}.timeline-category-chip:hover{background:var(--bg-card-hover);color:var(--text-primary)}.timeline-category-chip.active{background:var(--selected-bg);color:var(--selected-text);border-color:var(--selected-border)}.timeline-mobile-search-toggle{display:none}.timeline-mobile-search-bar{background:var(--bg-card);border:1px solid var(--primary);border-radius:var(--radius-full);width:100%;box-shadow:0 0 0 3px var(--primary-light);align-items:center;gap:8px;padding:4px 10px;display:flex}.timeline-mobile-search-input{font-size:var(--fs-sm);color:var(--text-primary);background:0 0;border:none;outline:none;flex:1;padding:4px}.timeline-desktop-actions{flex-shrink:0;align-items:center;gap:8px;display:flex}.timeline-tools-wrapper,.timeline-split-wrapper{align-items:center;display:inline-flex;position:relative}.timeline-tools-trigger{font-size:var(--fs-xs);border-radius:var(--radius-sm);transition:all var(--transition-fast);align-items:center;gap:6px;padding:6px 12px;font-weight:600;display:inline-flex}.timeline-tools-trigger.active{background:var(--bg-card-hover);border-color:var(--primary);color:var(--text-primary)}.timeline-split-btn-group{background:var(--primary-gradient);border-radius:var(--radius-sm);white-space:nowrap;height:34px;transition:all var(--transition-fast);flex-shrink:0;align-items:stretch;display:inline-flex;overflow:hidden;box-shadow:0 2px 10px #ff385c59}.timeline-split-btn-group:hover{filter:brightness(1.06);box-shadow:0 4px 16px #ff385c80}.timeline-split-main{color:#fff;height:100%;font-family:inherit;font-size:var(--fs-sm);cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap;transition:background var(--transition-fast);background:0 0;border:none;border-right:1px solid #ffffff47;flex-shrink:0;align-items:center;gap:6px;padding:0 14px;font-weight:600;display:inline-flex}.timeline-split-main *,.timeline-split-caret *{pointer-events:none}.timeline-split-main:hover{background:#ffffff24}.timeline-split-main:active{background:#0000001f}.timeline-split-caret{color:#fff;cursor:pointer;-webkit-user-select:none;user-select:none;min-width:32px;height:100%;transition:background var(--transition-fast);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;padding:0 10px;display:inline-flex}.timeline-split-caret:hover{background:#ffffff2e}.timeline-split-caret:active,.timeline-split-caret.active{background:#0003}.timeline-menu-dropdown{z-index:120;background:var(--bg-elevated);border:1px solid var(--border-card);border-radius:var(--radius-md);box-shadow:var(--shadow-xl);-webkit-backdrop-filter:blur(16px);flex-direction:column;gap:2px;min-width:280px;padding:6px;animation:.15s ease-out dropdownFadeIn;display:flex;position:absolute;top:calc(100% + 6px)}.timeline-menu-dropdown-right{left:auto;right:0}.timeline-menu-header{font-size:var(--fs-2xs);text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);padding:6px 10px 4px;font-weight:700}.timeline-menu-item{border-radius:var(--radius-xs);cursor:pointer;text-align:left;width:100%;transition:background var(--transition-fast);background:0 0;border:none;align-items:center;gap:10px;padding:8px 10px;display:flex}.timeline-menu-item:hover{background:var(--bg-card-hover)}.timeline-menu-item-icon{border-radius:var(--radius-xs);background:var(--bg-card);border:1px solid var(--border-subtle);flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;display:flex}.timeline-menu-item-content{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.timeline-menu-item-title{font-size:var(--fs-sm);color:var(--text-primary);font-weight:600}.timeline-menu-item-desc{font-size:var(--fs-2xs);color:var(--text-muted);line-height:1.3}.timeline-menu-divider{background:var(--border-subtle);height:1px;margin:4px 6px}.timeline-menu-reminders-row{border-radius:var(--radius-xs);justify-content:space-between;align-items:center;gap:12px;padding:8px 10px;display:flex}.search-active-dot{background:var(--primary-solid);border-radius:50%;width:6px;height:6px;position:absolute;top:3px;right:3px}.flight-track-mobile{display:none}.flight-track-desktop{display:inline}.timeline-mobile-add-btn,.mobile-fab-add-btn{display:none}@media (width<=640px){.trip-hero{border-radius:var(--radius-lg);min-height:62vw;box-shadow:var(--shadow-md);flex-direction:column;justify-content:flex-end;margin-bottom:12px;padding:14px 12px 12px;display:flex;height:auto!important}.trip-hero-overlay{background:linear-gradient(#080c1400 0% 25%,#080c14b3 55%,#080c14f0 100%)}.trip-hero-content{flex-direction:column;align-items:stretch;gap:8px;width:100%;display:flex}.trip-hero-main-info{flex-direction:column;gap:4px;width:100%;min-width:0;display:flex}.trip-hero-badges{flex-wrap:wrap;align-items:center;gap:6px;margin-bottom:0;display:flex}.hero-dest-pill,.hero-date-pill{font-size:var(--fs-2xs);border-radius:var(--radius-full);-webkit-backdrop-filter:blur(8px);color:#fff;background:#000000a6;border:1px solid #ffffff26;gap:4px;padding:3px 8px;font-weight:600}.hero-dest-pill span:last-child{text-overflow:ellipsis;white-space:nowrap;max-width:130px;overflow:hidden}.hero-date-desktop{display:none}.hero-date-mobile{display:inline}.hero-stay-pill,.hero-timezone-pill,.hero-art-pill,.hero-saving-cover-pill{display:none!important}.trip-hero-title{white-space:normal;word-break:break-word;color:#fff;text-shadow:0 2px 8px #00000080;max-width:100%;margin:1px 0 2px;font-weight:700;line-height:1.25;overflow:visible;font-size:var(--fs-2xl)!important}.trip-hero-bottom-bar{justify-content:space-between;align-items:center;gap:8px;width:100%;margin-top:2px;display:flex;flex-wrap:nowrap!important}.trip-hero-meta-row{align-items:center;gap:6px;min-width:0;margin-top:0;display:flex;overflow:hidden;flex-wrap:nowrap!important}.hero-tripmates-group{cursor:pointer;flex-shrink:0;align-items:center;gap:6px;min-height:28px;display:inline-flex}.hero-tripmates-count{font-size:var(--fs-xs);color:#fffffff2;white-space:nowrap;font-weight:600}@media (width<=380px){.hero-tripmates-count{display:none!important}}.hero-stops-pill{font-size:var(--fs-2xs);border-radius:var(--radius-full);-webkit-backdrop-filter:blur(8px);color:#fff;white-space:nowrap;background:#000000a6;border:1px solid #ffffff26;flex-shrink:0;align-items:center;gap:4px;padding:3px 8px;display:inline-flex}.hero-stops-duration,.hero-budget-pill{display:none!important}.trip-hero-actions{flex-shrink:0;justify-content:flex-end;align-items:center;gap:6px;margin-top:0;margin-left:auto;display:flex}.hero-ai-btn{display:none!important}.hero-btn-main{border-radius:var(--radius-sm);align-items:center;gap:4px;min-height:32px;font-weight:700;display:inline-flex;font-size:var(--fs-xs)!important;height:32px!important;padding:0 12px!important}.hero-btn-add-manual{border-radius:var(--radius-sm);min-height:32px;height:32px!important;font-size:var(--fs-xs)!important;padding:0 10px!important}.trip-hero .hero-share-btn,.trip-hero .hero-more-btn,.trip-hero .hero-add-stop-btn{-webkit-backdrop-filter:blur(8px);justify-content:center;align-items:center;display:inline-flex;border-radius:var(--radius-full)!important;color:#fff!important;background:#0000008c!important;border:1px solid #fff3!important;width:32px!important;min-width:32px!important;height:32px!important;min-height:32px!important;padding:0!important}.trip-hero .hero-share-btn:active,.trip-hero .hero-more-btn:active,.trip-hero .hero-add-stop-btn:active{transform:scale(.93);background:#000c!important}.day-tabs-scroll{gap:8px;margin-bottom:12px;padding-bottom:4px}.day-tab-btn{border-radius:var(--radius-sm);background:var(--bg-card);border:1px solid var(--border-card);min-height:44px;box-shadow:var(--shadow-xs);flex-direction:column;justify-content:center;align-items:center;gap:2px;padding:8px 13px;display:inline-flex}.day-tab-btn.active{background:var(--selected-bg);border-color:var(--selected-border);box-shadow:none}.day-tab-label{font-size:var(--fs-2xs);letter-spacing:.02em;text-transform:uppercase;font-weight:700}.day-tab-date{font-size:var(--fs-xs);font-weight:600}.timeline-desktop-actions{display:none!important}.timeline-mobile-search-toggle{border-radius:var(--radius-full);background:var(--bg-card);border:1px solid var(--border-card);width:36px;height:36px;box-shadow:var(--shadow-xs);flex-shrink:0;justify-content:center;align-items:center;position:relative;display:inline-flex!important}.timeline-mobile-add-btn{border-radius:var(--radius-full);height:36px;font-size:var(--fs-sm);color:#fff;background:var(--primary-gradient);border:none;flex-shrink:0;justify-content:center;align-items:center;gap:4px;padding:0 12px;font-weight:700;box-shadow:0 2px 8px #ff385c59;display:inline-flex!important}.timeline-mobile-add-btn:active{filter:brightness(.92);transform:scale(.95)}.timeline-category-chip{font-size:var(--fs-sm);border-radius:var(--radius-full);background:var(--bg-card);border:1px solid var(--border-card);min-height:34px;box-shadow:var(--shadow-xs);padding:7px 14px;font-weight:600}.timeline-category-chip.active{background:var(--selected-bg);color:var(--selected-text);border-color:var(--selected-border);box-shadow:none}.timeline-item-card{background:var(--bg-card)!important;border:1px solid var(--border-card)!important;box-shadow:var(--shadow-sm)!important;border-radius:var(--radius-md)!important;gap:13px!important;padding:16px!important}.card-action-btn{border-radius:var(--radius-xs)!important;width:36px!important;min-width:36px!important;height:36px!important;min-height:36px!important}.card-action-btn svg{width:15px!important;height:15px!important}.poi-card-thumb{border-radius:var(--radius-xs)!important;width:76px!important;height:76px!important}.flight-track-desktop{display:none!important}.flight-track-mobile{display:inline!important}.track-flight-btn{border-radius:var(--radius-full);min-height:28px;font-size:var(--fs-xs)!important;padding:4px 9px!important}.category-badge,.status-badge{border-radius:var(--radius-full);font-weight:600;font-size:var(--fs-xs)!important;padding:3px 8px!important}.card-time-badge{font-size:var(--fs-xs);padding:4px 10px;font-weight:700}.nav-mode-pill{font-size:var(--fs-xs);min-height:32px;padding:6px 12px}.timeline-day-header{flex-direction:row;justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px}.timeline-day-date{font-size:var(--fs-base)}.day-weather-badge{font-size:var(--fs-2xs);gap:5px;padding:3px 8px}.weather-badge-desc{display:none}}.card-header-with-thumb,.timeline-item-header-group{justify-content:space-between;align-items:flex-start;gap:12px;width:100%;display:flex}.timeline-item-title-col{flex:1;min-width:0}.timeline-item-title{font-size:var(--fs-lg);color:var(--text-primary);margin-bottom:4px;font-weight:700;line-height:1.3}.timeline-item-location{font-size:var(--fs-sm);color:var(--text-secondary);align-items:center;gap:5px;display:flex}.timeline-location-link{color:inherit;text-overflow:ellipsis;white-space:nowrap;align-items:center;gap:4px;max-width:100%;text-decoration:none;display:inline-flex;overflow:hidden}.timeline-location-link:hover{color:var(--primary)}.location-name-text{text-overflow:ellipsis;white-space:nowrap;font-weight:500;overflow:hidden}.timeline-item-notes-wrapper{width:100%;margin-top:6px}.timeline-item-notes{font-size:var(--fs-sm);color:var(--text-secondary);white-space:pre-line;margin:0;line-height:1.45}.timeline-item-notes.clamped{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.timeline-item-notes.expanded{display:block}.notes-expand-btn{font-size:var(--fs-xs);color:var(--primary);cursor:pointer;background:0 0;border:none;margin-top:2px;padding:2px 0;font-weight:600}.notes-expand-btn:hover{text-decoration:underline}.nav-controls-mobile{display:none}.nav-controls-desktop{width:100%;display:block}@media (width<=640px){.card-header-with-thumb,.timeline-item-header-group{gap:8px}.timeline-item-title{margin-bottom:3px;line-height:1.25;font-size:var(--fs-md)!important}.timeline-item-location{font-size:var(--fs-xs)!important}.poi-card-thumb{flex-shrink:0;border-radius:var(--radius-sm)!important;width:50px!important;height:44px!important}.timeline-item-notes{line-height:1.4;font-size:var(--fs-xs)!important}.timeline-item-notes-wrapper{margin-top:5px}.nav-controls-desktop{display:none!important}.nav-controls-mobile{border-top:1px dashed var(--border-subtle);justify-content:space-between;align-items:center;gap:6px;width:100%;margin-top:5px;padding-top:6px;display:flex!important}.nav-mobile-main-btn{border-radius:var(--radius-sm);background:var(--primary-light);color:var(--primary);font-size:var(--fs-2xs);white-space:nowrap;transition:all var(--transition-fast);border:1px solid #6366f140;align-items:center;gap:4px;padding:4px 9px;font-weight:700;text-decoration:none;display:inline-flex}.nav-mobile-main-btn:active{transform:scale(.97)}.nav-mobile-alt-modes{align-items:center;gap:4px;display:flex}.nav-mobile-chip{border-radius:var(--radius-xs);background:var(--bg-card);border:1px solid var(--border-subtle);font-size:var(--fs-2xs);color:var(--text-secondary);white-space:nowrap;align-items:center;gap:2px;padding:3px 6px;font-weight:600;text-decoration:none;display:inline-flex}.nav-mobile-chip.walk{color:#34d399}.nav-mobile-chip.transit{color:#a78bfa}.nav-mobile-chip.drive{color:#38bdf8}}.schedule-view-toggle{background:var(--bg-elevated);border:1px solid var(--border-subtle);border-radius:var(--radius-full);box-shadow:var(--shadow-xs);align-items:center;gap:4px;padding:4px;display:inline-flex}.schedule-view-toggle-btn{border-radius:var(--radius-full);min-height:36px;color:var(--text-secondary);font-size:var(--fs-sm);cursor:pointer;transition:all var(--transition-fast);-webkit-user-select:none;user-select:none;background:0 0;border:1px solid #0000;align-items:center;gap:6px;padding:6px 14px;font-weight:600;display:inline-flex}.schedule-view-toggle-btn:hover{color:var(--text-primary);background:var(--bg-card-hover)}.schedule-view-toggle-btn.active{background:var(--bg-card);color:var(--text-primary);border-color:var(--border-subtle);box-shadow:var(--shadow-xs)}.schedule-view-toggle-btn.active svg{color:var(--text-primary)}.schedule-view-meta{align-items:center;gap:8px;display:flex}.schedule-trip-count{background:var(--bg-elevated);border:1px solid var(--border-subtle);border-radius:var(--radius-full);min-height:36px;font-size:var(--fs-xs);color:var(--text-secondary);white-space:nowrap;box-shadow:var(--shadow-xs);align-items:center;padding:6px 14px;font-weight:600;display:inline-flex}.timeline-day-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;padding:0 4px;display:flex}.timeline-day-title-group{align-items:center;gap:10px;display:flex}.timeline-day-dot{background:var(--primary-solid);border-radius:50%;width:8px;height:8px;box-shadow:0 0 8px #ff385c66}.timeline-day-date{font-size:var(--fs-md);color:var(--text-primary);font-weight:700}.timeline-day-stop-count{font-size:var(--fs-xs);color:var(--text-muted);font-weight:500}.day-weather-badge{border-radius:var(--radius-full);background:var(--bg-card);border:1px solid var(--border-card);box-shadow:var(--shadow-xs);font-size:var(--fs-xs);color:var(--text-primary);-webkit-user-select:none;user-select:none;transition:all var(--transition-fast);align-items:center;gap:6px;padding:4px 10px;font-weight:600;display:inline-flex}.day-weather-badge:hover{border-color:var(--border-active);background:var(--bg-card-hover);box-shadow:var(--shadow-sm);transform:translateY(-1px)}.weather-badge-icon{justify-content:center;align-items:center;display:flex}.weather-badge-temps{font-feature-settings:"tnum";align-items:baseline;gap:2px;display:inline-flex}.weather-temp-max{color:var(--text-primary);font-weight:700}.weather-temp-sep{opacity:.4;font-size:var(--fs-2xs)}.weather-temp-min{font-size:var(--fs-2xs);color:var(--text-muted)}.weather-badge-desc{color:var(--text-secondary);font-size:var(--fs-xs)}.weather-badge-rain{color:#0284c7;font-size:var(--fs-2xs);border-radius:var(--radius-full);background:#0284c71a;align-items:center;gap:3px;padding:1px 5px;font-weight:700;display:inline-flex}.weather-typical-tag{font-size:var(--fs-2xs);text-transform:uppercase;letter-spacing:.04em;border-radius:var(--radius-full);background:var(--accent-amber-light,#f59e0b26);color:var(--accent-amber,#f59e0b);padding:1px 5px;font-weight:700}.day-tab-weather-mini{border-radius:var(--radius-full);font-size:var(--fs-2xs);color:var(--text-secondary);background:#0000000d;align-items:center;gap:3px;padding:1px 5px;font-weight:700;display:inline-flex}[data-theme=dark] .day-tab-weather-mini{background:#ffffff14}.weather-mini-temp{font-size:var(--fs-2xs);font-feature-settings:"tnum";font-weight:700}.weather-animated-svg{display:block;overflow:visible}.weather-sun-rays{transform-origin:32px 32px;animation:14s linear infinite weather-sun-spin}.weather-sun-core{transform-origin:32px 32px;animation:3s ease-in-out infinite weather-sun-pulse}.weather-cloud-drift{animation:4s ease-in-out infinite alternate weather-cloud-drift}.weather-cloud-float{animation:3.5s ease-in-out infinite alternate weather-cloud-float}.weather-rain-drop{animation:.9s cubic-bezier(.4,0,.6,1) infinite weather-rain-drop}.weather-rain-drop.drop-1{animation-delay:0s}.weather-rain-drop.drop-2{animation-delay:.3s}.weather-rain-drop.drop-3{animation-delay:.6s}.weather-snow-particle{animation:2.5s ease-in-out infinite weather-snow-swirl}.weather-snow-particle.flake-1{animation-delay:0s}.weather-snow-particle.flake-2{animation-delay:.8s}.weather-snow-particle.flake-3{animation-delay:1.6s}.weather-lightning-bolt{animation:3.2s ease-in-out infinite weather-lightning-flash}.weather-fog-line{animation:3s ease-in-out infinite alternate weather-fog-shift}.weather-fog-line.line-2{animation-delay:.5s}.weather-fog-line.line-3{animation-delay:1s}.animated-weather-card{border-radius:var(--radius-md,12px);background:var(--bg-card);border:1px solid var(--border-subtle);box-shadow:var(--shadow-xs);transition:border-color var(--transition-fast), box-shadow var(--transition-fast);justify-content:space-between;align-items:center;gap:14px;margin-bottom:10px;padding:10px 28px 10px 14px;display:flex;position:relative;overflow:hidden}.animated-weather-card:hover{border-color:var(--border-medium);box-shadow:var(--shadow-sm)}.animated-weather-card.weather-theme-sun{background:linear-gradient(135deg, #f59e0b14 0%, #fbbf2405 100%), var(--bg-card);border-color:#f59e0b38}.animated-weather-card.weather-theme-rain{background:linear-gradient(135deg, #38bdf817 0%, #6366f10a 100%), var(--bg-card);border-color:#38bdf842}.animated-weather-card.weather-theme-cloud{background:linear-gradient(135deg, #94a3b814 0%, #64748b05 100%), var(--bg-card);border-color:#94a3b838}.animated-weather-card.weather-theme-snow{background:linear-gradient(135deg, #bae6fd1f 0%, #e0e7ff0a 100%), var(--bg-card);border-color:#bae6fd4d}.animated-weather-card.weather-theme-storm{background:linear-gradient(135deg, #8b5cf61a 0%, #eab3080a 100%), var(--bg-card);border-color:#8b5cf647}.animated-weather-main{flex:1;align-items:center;gap:12px;min-width:0;display:flex}.animated-weather-icon-box{border-radius:var(--radius-md);background:var(--bg-elevated);border:1px solid var(--border-subtle);width:44px;height:44px;box-shadow:var(--shadow-xs);flex-shrink:0;justify-content:center;align-items:center;display:flex;position:relative}.animated-weather-details{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.animated-weather-top-row{flex-wrap:wrap;align-items:baseline;gap:8px;display:flex}.animated-weather-temp{font-size:var(--fs-xl);color:var(--text-primary);white-space:nowrap;font-weight:700;line-height:1.2}.animated-weather-condition{font-size:var(--fs-base);color:var(--text-primary);white-space:nowrap;font-weight:600}.animated-weather-range{font-size:var(--fs-xs);color:var(--text-muted);white-space:nowrap;font-weight:500}.animated-weather-sub-row{font-size:var(--fs-xs);color:var(--text-secondary);flex-wrap:wrap;align-items:center;gap:6px 8px;display:flex}.animated-weather-label{color:var(--text-secondary);white-space:nowrap;font-weight:600}.animated-weather-location{white-space:nowrap;align-items:center;gap:3px;font-weight:500;display:inline-flex}.animated-weather-location svg{flex-shrink:0}.animated-weather-rain-badge{border-radius:var(--radius-full);color:#0284c7;font-size:var(--fs-2xs);white-space:nowrap;background:#38bdf826;align-items:center;gap:3px;padding:1px 7px;font-weight:600;display:inline-flex}[data-theme=dark] .animated-weather-rain-badge{color:#38bdf8;background:#38bdf833}.weather-typical-tag{white-space:nowrap}.animated-weather-side{flex-shrink:0;align-items:center;gap:8px;display:flex}.animated-weather-advice{border-radius:var(--radius-full);font-size:var(--fs-xs);background:var(--bg-elevated);border:1px solid var(--border-subtle);color:var(--text-secondary);white-space:nowrap;align-items:center;gap:5px;padding:4px 10px;font-weight:600;display:inline-flex}.animated-weather-advice.is-rain{color:#0369a1;background:#38bdf826;border-color:#38bdf859}[data-theme=dark] .animated-weather-advice.is-rain{color:#7dd3fc}.animated-weather-live-indicator{z-index:2;justify-content:center;align-items:center;display:flex;position:absolute;top:10px;right:12px}.animated-weather-live-dot{background:#10b981;border-radius:50%;width:7px;height:7px;animation:2s ease-in-out infinite weather-live-glow;display:inline-block;box-shadow:0 0 6px #10b981b3}@media (width<=640px){.animated-weather-card{flex-direction:column;align-items:stretch;gap:8px;padding:10px 28px 10px 12px;position:relative}.animated-weather-card .animated-weather-main{align-items:center;gap:10px;width:100%}.animated-weather-card .animated-weather-icon-box{width:40px;height:40px}.animated-weather-card .animated-weather-live-indicator{position:absolute;top:10px;right:12px}.animated-weather-card .animated-weather-side{justify-content:flex-start;align-items:center;width:100%;display:flex}.animated-weather-card .animated-weather-advice{text-align:center;width:100%;font-size:var(--fs-2xs);justify-content:center;padding:3.5px 8px}}.trip-calendar-wrapper{flex-direction:column;gap:16px;display:flex}.trip-calendar-toolbar{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;display:flex}.calendar-nav-group{align-items:center;gap:12px;display:flex}.calendar-month-controls{align-items:center;gap:8px;display:flex}.calendar-month-title{font-size:var(--fs-lg);color:var(--text-primary);text-align:center;letter-spacing:-.01em;min-width:140px;font-weight:700}.calendar-jump-btn{font-size:var(--fs-xs);padding:5px 10px}.calendar-view-controls{align-items:center;gap:10px;display:flex}.calendar-subview-toggle{background:var(--bg-elevated);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);align-items:center;gap:2px;padding:2px;display:inline-flex}.calendar-subview-btn{border-radius:var(--radius-xs);color:var(--text-secondary);font-size:var(--fs-xs);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;align-items:center;gap:5px;padding:4px 10px;font-weight:600;display:inline-flex}.calendar-subview-btn:hover{color:var(--text-primary)}.calendar-subview-btn.active{background:var(--bg-card);color:var(--primary);box-shadow:0 1px 3px #0000001a}.calendar-day-chips-scroll{scrollbar-width:none;gap:6px;padding-bottom:4px;display:flex;overflow-x:auto}.calendar-day-chips-scroll::-webkit-scrollbar{display:none}.calendar-day-chip{border-radius:var(--radius-sm);background:var(--bg-card);border:1px solid var(--border-subtle);color:var(--text-secondary);cursor:pointer;white-space:nowrap;transition:all var(--transition-fast);flex-direction:column;align-items:center;padding:6px 12px;display:flex}.calendar-day-chip:hover{background:var(--bg-card-hover);color:var(--text-primary)}.calendar-day-chip.active{background:var(--primary-light);border-color:var(--primary);color:var(--primary)}.day-chip-num{font-size:var(--fs-2xs);text-transform:uppercase;font-weight:700}.day-chip-date{font-size:var(--fs-xs);align-items:center;gap:4px;font-weight:600;display:flex}.day-chip-badge{background:var(--primary-solid);color:#fff;border-radius:var(--radius-full);font-size:var(--fs-2xs);padding:1px 5px;font-weight:700;line-height:1}.calendar-month-container{flex-direction:column;gap:16px;display:flex}.calendar-weekday-row{text-align:center;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;display:grid}.calendar-weekday-cell{font-size:var(--fs-2xs);color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;padding:6px 0;font-weight:700}.calendar-days-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;display:grid}.calendar-cell{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:var(--radius-md);cursor:pointer;min-height:110px;transition:all var(--transition-fast);flex-direction:column;gap:6px;padding:8px;display:flex;position:relative}.calendar-cell:hover{border-color:var(--border-active);background:var(--bg-card-hover)}.calendar-cell.outside-month{opacity:.35;background:0 0}.calendar-cell.in-trip{background:#6366f10a;border-color:#6366f166}.calendar-cell.in-trip:hover{background:#6366f114}.calendar-cell.today{box-shadow:inset 0 0 0 1.5px var(--accent-emerald)}.calendar-cell.selected{border-color:var(--primary);background:#6366f114;box-shadow:0 0 0 2px #6366f140}.calendar-cell-header{justify-content:space-between;align-items:center;display:flex}.calendar-cell-day-meta{align-items:center;gap:4px;display:flex}.calendar-cell-number{font-size:var(--fs-sm);color:var(--text-primary);font-weight:700}.calendar-cell-trip-day{font-size:var(--fs-2xs);text-transform:uppercase;color:var(--primary);background:var(--primary-light);border-radius:var(--radius-full);padding:1px 5px;font-weight:700}.calendar-quick-add-btn{opacity:0;background:var(--bg-elevated);border:none;border:1px solid var(--border-subtle);color:var(--text-secondary);cursor:pointer;width:18px;height:18px;transition:all var(--transition-fast);border-radius:50%;justify-content:center;align-items:center;display:flex}.calendar-cell:hover .calendar-quick-add-btn{opacity:1}.calendar-quick-add-btn:hover{background:var(--primary-solid);color:#fff;border-color:var(--primary)}.calendar-cell-events{flex-direction:column;flex:1;gap:3px;display:flex}.calendar-event-chip{border-radius:var(--radius-xs);font-size:var(--fs-2xs);text-overflow:ellipsis;white-space:nowrap;cursor:pointer;transition:transform var(--transition-fast), filter var(--transition-fast);align-items:center;gap:4px;padding:2px 5px;line-height:1.3;display:flex;overflow:hidden}.calendar-span-bar{--span-bleed:12px;min-width:0;height:18px;margin:0 calc(var(--span-bleed) * -1);font-size:var(--fs-2xs);white-space:nowrap;cursor:pointer;flex-shrink:0;align-items:center;gap:4px;padding:0 5px;line-height:1;display:flex;overflow:hidden}.calendar-span-bar.is-start{border-left:3px solid var(--span-color,currentColor);border-top-left-radius:var(--radius-xs);border-bottom-left-radius:var(--radius-xs);margin-left:0}.calendar-span-bar.is-end{border-top-right-radius:var(--radius-xs);border-bottom-right-radius:var(--radius-xs);margin-right:0}.calendar-span-bar.is-row-start{margin-left:0}.calendar-span-bar.is-row-end{margin-right:0}.calendar-span-bar.is-empty{visibility:hidden}.calendar-span-bar:hover{filter:brightness(1.08)}.calendar-span-bar .span-end-time{margin-left:auto}.calendar-event-chip:hover{filter:brightness(1.08);transform:translateY(-1px)}.chip-time{font-size:var(--fs-2xs);opacity:.8;flex-shrink:0;font-weight:700}.chip-title{text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.calendar-overflow-badge{font-size:var(--fs-2xs);color:var(--primary);border-radius:var(--radius-xs);cursor:pointer;padding:1px 4px;font-weight:700}.calendar-overflow-badge:hover{text-decoration:underline}.calendar-day-inspector{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);flex-direction:column;gap:14px;padding:18px;display:flex}.inspector-header{border-bottom:1px solid var(--border-subtle);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding-bottom:12px;display:flex}.inspector-day-tag{font-size:var(--fs-2xs);text-transform:uppercase;color:var(--primary);letter-spacing:.05em;font-weight:700}.inspector-date-title{font-size:var(--fs-lg);color:var(--text-primary);margin-top:2px;font-weight:700}.inspector-actions{align-items:center;gap:8px;display:flex}.inspector-items-list{flex-direction:column;gap:8px;display:flex}.inspector-empty-state{text-align:center;color:var(--text-muted);font-size:var(--fs-sm);flex-direction:column;justify-content:center;align-items:center;gap:10px;padding:24px;display:flex}.inspector-item-card{background:var(--bg-elevated);border:1px solid var(--border-subtle);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);align-items:center;gap:12px;padding:10px 14px;display:flex}.inspector-item-card:hover{background:var(--bg-card-hover);border-color:var(--border-active)}.inspector-item-icon{border-radius:var(--radius-sm);flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;display:flex}.inspector-item-content{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.inspector-item-title-row{justify-content:space-between;align-items:center;gap:8px;display:flex}.inspector-item-title{font-size:var(--fs-base);color:var(--text-primary);font-weight:700}.inspector-item-time{font-size:var(--fs-xs);color:var(--text-secondary);font-weight:600}.inspector-item-location{font-size:var(--fs-xs);color:var(--text-muted);align-items:center;gap:4px;display:flex}.inspector-item-notes{font-size:var(--fs-xs);color:var(--text-secondary);opacity:.85}.inspector-item-actions{align-items:center;gap:4px;display:flex}.calendar-day-schedule-view{flex-direction:column;gap:16px;display:flex}.day-schedule-header{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:var(--radius-md);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:14px 18px;display:flex}.day-schedule-nav{align-items:center;gap:12px;display:flex}.day-schedule-badge{font-size:var(--fs-2xs);text-transform:uppercase;color:var(--primary);font-weight:700}.day-schedule-title{font-size:var(--fs-lg);color:var(--text-primary);font-weight:700}.day-schedule-right-actions{align-items:center;gap:8px;display:flex}.day-schedule-untimed-box{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:var(--radius-md);flex-direction:column;gap:8px;padding:12px 16px;display:flex}.untimed-label{font-size:var(--fs-xs);color:var(--text-muted);text-transform:uppercase;align-items:center;gap:6px;font-weight:700;display:flex}.untimed-cards-row{flex-wrap:wrap;gap:8px;display:flex}.untimed-stop-pill{border-radius:var(--radius-sm);font-size:var(--fs-sm);cursor:pointer;transition:transform var(--transition-fast);align-items:center;gap:6px;padding:6px 12px;font-weight:600;display:inline-flex}.untimed-stop-pill:hover{transform:translateY(-1px)}.hourly-schedule-grid{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);flex-direction:column;display:flex;overflow:hidden}.hourly-slot-row{border-bottom:1px solid var(--border-subtle);min-height:60px;display:flex}.hourly-slot-row:last-child{border-bottom:none}.hourly-slot-time{width:70px;font-size:var(--fs-2xs);color:var(--text-muted);border-right:1px solid var(--border-subtle);background:var(--bg-elevated);text-align:right;flex-shrink:0;padding:12px 10px;font-weight:700}.hourly-slot-events{flex-direction:column;flex:1;gap:6px;padding:6px 10px;display:flex;position:relative}.hourly-event-card{border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast);flex-direction:column;gap:4px;padding:8px 12px;display:flex}.hourly-event-card:hover{box-shadow:var(--shadow-sm);transform:translateY(-1px)}.hourly-card-header{justify-content:space-between;align-items:center;display:flex}.hourly-badge{font-size:var(--fs-2xs);text-transform:uppercase;align-items:center;gap:4px;font-weight:700;display:flex}.hourly-time-pill{font-size:var(--fs-2xs);color:var(--text-secondary);font-weight:600}.hourly-card-title{font-size:var(--fs-base);color:var(--text-primary);font-weight:700}.hourly-card-location{font-size:var(--fs-xs);color:var(--text-muted);align-items:center;gap:4px;display:flex}.hourly-card-notes{font-size:var(--fs-2xs);color:var(--text-secondary)}.hourly-card-actions{align-items:center;gap:6px;margin-top:4px;display:flex}.hourly-empty-line{cursor:pointer;border-radius:var(--radius-xs);height:100%;min-height:48px;transition:background var(--transition-fast);flex:1}.hourly-empty-line:hover{background:#6366f10a}@media (width<=768px){.calendar-days-grid{gap:3px}.calendar-cell{min-height:80px;padding:4px}.calendar-cell-number{font-size:var(--fs-2xs)}.calendar-cell-trip-day{display:none}.calendar-event-chip{font-size:var(--fs-2xs);padding:1px 3px}.calendar-span-bar{--span-bleed:6.5px;height:15px;font-size:var(--fs-2xs);padding:0 3px}.chip-time{display:none}.calendar-month-title{font-size:var(--fs-base);min-width:110px}.hourly-slot-time{width:52px;font-size:var(--fs-2xs);padding:8px 4px}}.calendar-trip-length-view{flex-direction:column;gap:16px;display:flex}.trip-length-banner{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:14px 18px;display:flex}.trip-length-banner-title{align-items:center;gap:10px;display:flex}.trip-length-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px;display:grid}.trip-length-day-card{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);flex-direction:column;gap:10px;padding:14px;display:flex}.trip-length-day-card:hover{border-color:var(--border-active);box-shadow:var(--shadow-sm);transform:translateY(-2px)}.trip-length-day-card.selected{border-color:var(--primary);background:#6366f10a;box-shadow:0 0 0 2px #6366f133}.trip-length-card-header{border-bottom:1px solid var(--border-subtle);justify-content:space-between;align-items:center;gap:8px;padding-bottom:8px;display:flex}.trip-length-day-badge{font-size:var(--fs-2xs);text-transform:uppercase;color:var(--primary);background:var(--primary-light);border-radius:var(--radius-full);padding:2px 7px;font-weight:700}.trip-length-day-date{font-size:var(--fs-sm);color:var(--text-primary);flex:1;font-weight:700}.trip-length-items-list{flex-direction:column;gap:8px;min-height:80px;display:flex}.trip-length-empty-day{border:1px dashed var(--border-subtle);border-radius:var(--radius-sm);color:var(--text-muted);font-size:var(--fs-xs);transition:all var(--transition-fast);flex-direction:column;justify-content:center;align-items:center;gap:4px;padding:24px 12px;display:flex}.trip-length-empty-day:hover{background:var(--bg-card-hover);border-color:var(--primary);color:var(--primary)}.empty-add-action{font-size:var(--fs-2xs);color:var(--primary);font-weight:700}.trip-length-item-pill{border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast);flex-direction:column;gap:3px;padding:8px 10px;display:flex}.trip-length-item-pill:hover{filter:brightness(1.05);transform:translate(2px)}.item-pill-header{justify-content:space-between;align-items:center;gap:6px;display:flex}.item-pill-category{font-size:var(--fs-2xs);text-transform:uppercase;align-items:center;gap:4px;font-weight:700;display:flex}.item-pill-cost{font-size:var(--fs-2xs);color:var(--text-secondary);font-weight:700}.item-pill-title{font-size:var(--fs-sm);color:var(--text-primary);font-weight:700;line-height:1.3}.item-pill-location{font-size:var(--fs-2xs);color:var(--text-muted);align-items:center;gap:3px;display:flex}.item-pill-actions{justify-content:flex-end;align-items:center;gap:4px;margin-top:2px;display:flex}.calendar-week-container{padding-bottom:8px;overflow-x:auto}.calendar-week-columns-grid{grid-template-columns:repeat(7,minmax(140px,1fr));gap:8px;min-width:900px;display:grid}.calendar-week-column{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);flex-direction:column;gap:8px;min-height:380px;padding:10px;display:flex}.calendar-week-column:hover{border-color:var(--border-active)}.calendar-week-column.in-trip{background:#6366f108;border-color:#6366f159}.calendar-week-column.today{box-shadow:inset 0 0 0 1.5px var(--accent-emerald)}.calendar-week-column.selected{border-color:var(--primary);box-shadow:0 0 0 2px #6366f140}.week-column-header{border-bottom:1px solid var(--border-subtle);flex-direction:column;gap:4px;padding-bottom:8px;display:flex}.week-column-day-row{justify-content:space-between;align-items:baseline;display:flex}.week-column-weekday{font-size:var(--fs-2xs);text-transform:uppercase;color:var(--text-muted);letter-spacing:.05em;font-weight:700}.week-column-daynum{font-size:var(--fs-md);color:var(--text-primary);font-weight:700}.week-column-sub-row{justify-content:space-between;align-items:center;display:flex}.week-trip-badge{font-size:var(--fs-2xs);color:var(--primary);background:var(--primary-light);border-radius:var(--radius-full);padding:1px 5px;font-weight:700}.week-date-muted{font-size:var(--fs-2xs);color:var(--text-muted)}.week-column-events{flex-direction:column;flex:1;gap:6px;display:flex}.week-column-empty{border:1px dashed var(--border-subtle);border-radius:var(--radius-sm);color:var(--text-muted);font-size:var(--fs-2xs);flex-direction:column;justify-content:center;align-items:center;gap:4px;height:100%;min-height:80px;padding:20px 8px;display:flex}.week-column-empty:hover{background:var(--bg-card-hover);border-color:var(--primary);color:var(--primary)}.week-add-link{font-size:var(--fs-2xs);color:var(--primary);font-weight:700}.week-event-card{border-radius:var(--radius-xs);cursor:pointer;transition:transform var(--transition-fast);flex-direction:column;gap:2px;padding:6px 8px;display:flex}.week-event-card:hover{filter:brightness(1.06);transform:translateY(-1px)}.week-card-time-row{align-items:center;display:flex}.week-card-time{font-size:var(--fs-2xs);text-transform:uppercase;align-items:center;gap:3px;font-weight:700;display:flex}.week-card-title{font-size:var(--fs-xs);color:var(--text-primary);font-weight:700;line-height:1.25}.week-card-location{font-size:var(--fs-2xs);color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.tripster-tooltip{pointer-events:none;z-index:999999;-webkit-backdrop-filter:blur(12px);color:#fff;max-width:280px;font-family:var(--font-sans,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif);font-size:var(--fs-xs);letter-spacing:.015em;text-align:center;-webkit-user-select:none;user-select:none;background:#0f172af0;border:1px solid #ffffff29;border-radius:7px;justify-content:center;align-items:center;padding:6px 11px;font-weight:500;line-height:1.35;animation:.12s cubic-bezier(.16,1,.3,1) forwards tooltipPopIn;display:inline-flex;position:fixed;box-shadow:0 4px 20px -2px #00000073,0 2px 8px -1px #00000040}.tripster-tooltip-text{z-index:2;white-space:normal;word-break:break-word;position:relative}.tripster-tooltip-arrow{z-index:1;background:#0f172af0;width:9px;height:9px;position:absolute}.tripster-tooltip--top .tripster-tooltip-arrow{bottom:-5px;left:var(--arrow-offset,50%);border-bottom:1px solid #ffffff29;border-right:1px solid #ffffff29;transform:translate(-50%)rotate(45deg)}.tripster-tooltip--bottom .tripster-tooltip-arrow{top:-5px;left:var(--arrow-offset,50%);border-top:1px solid #ffffff29;border-left:1px solid #ffffff29;transform:translate(-50%)rotate(45deg)}.tripster-tooltip--left .tripster-tooltip-arrow{border-top:1px solid #ffffff29;border-right:1px solid #ffffff29;top:50%;right:-5px;transform:translateY(-50%)rotate(45deg)}.tripster-tooltip--right .tripster-tooltip-arrow{border-bottom:1px solid #ffffff29;border-left:1px solid #ffffff29;top:50%;left:-5px;transform:translateY(-50%)rotate(45deg)}[data-css-tooltip]{position:relative}[data-css-tooltip]:before{content:attr(data-css-tooltip);-webkit-backdrop-filter:blur(12px);color:#fff;font-size:var(--fs-xs);white-space:nowrap;pointer-events:none;opacity:0;visibility:hidden;z-index:99999;background:#0f172af0;border:1px solid #ffffff29;border-radius:6px;padding:5px 10px;font-weight:500;transition:opacity .15s,transform .15s,visibility .15s;position:absolute;bottom:calc(100% + 7px);left:50%;transform:translate(-50%)scale(.95);box-shadow:0 4px 18px -2px #00000073}[data-css-tooltip]:after{content:"";pointer-events:none;opacity:0;visibility:hidden;z-index:99999;background:#0f172af0;border-bottom:1px solid #ffffff29;border-right:1px solid #ffffff29;width:8px;height:8px;transition:opacity .15s,visibility .15s;position:absolute;bottom:calc(100% + 2px);left:50%;transform:translate(-50%)rotate(45deg)}[data-css-tooltip]:hover:before,[data-css-tooltip]:focus-visible:before{opacity:1;visibility:visible;transform:translate(-50%)scale(1)}[data-css-tooltip]:hover:after,[data-css-tooltip]:focus-visible:after{opacity:1;visibility:visible}.day-accommodation-chip{border-radius:var(--radius-full);font-size:var(--fs-xs);background:var(--bg-card);color:var(--text-secondary);border:1px solid var(--border-card);box-shadow:var(--shadow-xs);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap;align-items:center;gap:6px;padding:4px 10px;font-weight:600;line-height:normal;display:inline-flex}.day-accommodation-chip:hover{background:var(--bg-card-hover);color:var(--text-primary);border-color:#818cf866;transform:translateY(-1px)}.day-accommodation-chip.active{color:var(--cat-hotel);background:#818cf81f;border-color:#818cf859}.day-accommodation-chip.active:hover{background:#818cf833;border-color:#818cf880}.day-accommodation-chip-text{text-overflow:ellipsis;max-width:220px;overflow:hidden}.day-accommodation-chip.is-warning{background:var(--accent-amber-light);color:var(--accent-amber);border-color:#f59e0b66}.stay-anchor-row{border-radius:var(--radius-md);width:100%;color:var(--text-secondary);font:inherit;font-size:var(--fs-sm);text-align:left;cursor:pointer;transition:all var(--transition-fast);background:#818cf80f;border:1px dashed #818cf866;align-items:flex-start;gap:10px;padding:7px 12px;display:flex}.stay-anchor-row:hover,.stay-anchor-row:focus-visible{border-color:var(--cat-hotel);background:#818cf81f;outline:none}.stay-anchor-row.is-compact{font-size:var(--fs-xs);padding:5px 10px}.stay-anchor-icon{color:var(--cat-hotel);flex-shrink:0;margin-top:1px;display:inline-flex}.stay-anchor-time{font-variant-numeric:tabular-nums;min-width:44px;color:var(--text-primary);flex-shrink:0;font-weight:700}.stay-anchor-text{flex-direction:column;gap:1px;min-width:0;display:flex}.stay-anchor-label{color:var(--text-primary);overflow-wrap:anywhere;font-weight:600}.stay-anchor-details{font-size:var(--fs-2xs);color:var(--text-muted)}.stay-anchor-warning{font-size:var(--fs-2xs);color:var(--accent-amber);align-items:center;gap:4px;font-weight:600;display:inline-flex}.travel-continuation-row.category-flight{background:#38bdf812;border-color:#38bdf873}.travel-continuation-row.category-flight .stay-anchor-icon{color:var(--cat-flight)}.travel-continuation-row.category-transit{background:#a78bfa12;border-color:#a78bfa73}.travel-continuation-row.category-transit .stay-anchor-icon{color:var(--cat-transit)}.travel-continuation-row.category-flight:hover,.travel-continuation-row.category-flight:focus-visible{border-color:var(--cat-flight);background:#38bdf824}.travel-continuation-row.category-transit:hover,.travel-continuation-row.category-transit:focus-visible{border-color:var(--cat-transit);background:#a78bfa24}.span-reminder-row{border-color:var(--border-subtle);background:0 0}.span-reminder-row .stay-anchor-icon{color:var(--row-accent,var(--text-muted))}.span-reminder-row:hover,.span-reminder-row:focus-visible{border-color:var(--row-accent,var(--text-muted));background:var(--bg-input)}.timeline-card-wrapper.is-flash>.timeline-item-card{animation:1.6s ease-out card-flash}@media (prefers-reduced-motion:reduce){.timeline-card-wrapper.is-flash>.timeline-item-card{outline:3px solid var(--primary);animation:none}}.stay-anchors-modal{gap:16px}.stay-switch-row{border-radius:var(--radius-md);border:1px solid var(--border-subtle);background:var(--bg-elevated);cursor:pointer;justify-content:space-between;align-items:center;gap:14px;padding:12px 14px;display:flex}.stay-switch-row>span{flex-direction:column;gap:2px;display:flex}.stay-switch-title{font-size:var(--fs-base);color:var(--text-primary);font-weight:700}.stay-switch-sub,.stay-anchors-hint,.stay-anchors-muted{font-size:var(--fs-xs);color:var(--text-muted);margin:0}.stay-switch{appearance:none;border-radius:var(--radius-full);background:var(--border-strong);cursor:pointer;width:40px;height:22px;transition:background var(--transition-fast);flex-shrink:0;position:relative}.stay-switch:after{content:"";width:16px;height:16px;box-shadow:var(--shadow-xs);transition:transform var(--transition-fast);background:#fff;border-radius:50%;position:absolute;top:3px;left:3px}.stay-switch:checked{background:var(--primary-solid)}.stay-switch:checked:after{transform:translate(18px)}.stay-switch:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.stay-anchors-section{flex-direction:column;gap:10px;display:flex}.stay-anchors-section h4{font-size:var(--fs-2xs);text-transform:uppercase;letter-spacing:.4px;color:var(--text-muted);margin:0;font-weight:700}.stay-anchors-section-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.stay-anchors-times{grid-template-columns:1fr 1fr;gap:12px;display:grid}.stay-anchors-times label{font-size:var(--fs-xs);color:var(--text-secondary);flex-direction:column;gap:6px;font-weight:600;display:flex}.stay-anchors-times label>span{align-items:center;gap:5px;display:inline-flex}.stay-anchors-day-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.stay-anchors-day-row input[type=time]{width:150px}.stay-anchors-check{min-width:200px;font-size:var(--fs-sm);color:var(--text-primary);cursor:pointer;flex:1;align-items:flex-start;gap:8px;display:flex}.stay-anchors-check input{accent-color:var(--primary);margin-top:2px}.stay-anchors-stays{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.stay-anchors-stays li{font-size:var(--fs-sm);color:var(--cat-hotel);flex-wrap:wrap;align-items:center;gap:4px 8px;display:flex}.stay-anchors-stay-name{color:var(--text-primary);font-weight:600}.stay-anchors-warning{font-size:var(--fs-xs);color:var(--accent-amber);align-items:center;gap:6px;margin:0;font-weight:600;display:flex}.anchor-badge{font-size:var(--fs-2xs);border-radius:var(--radius-full);letter-spacing:.2px;align-items:center;gap:4px;padding:2px 7px;font-weight:700;display:inline-flex}.anchor-badge-start{color:#38bdf8;background:#38bdf824;border:1px solid #38bdf84d}.anchor-badge-end{color:#a78bfa;background:#a78bfa24;border:1px solid #a78bfa4d}body.trip-read-only .edit-control{display:none!important}.plain-fieldset{border:0;min-width:0;margin:0;padding:0}.read-only-toast{z-index:2000;border-radius:var(--radius-md);background:var(--bg-elevated);max-width:calc(100vw - 32px);color:var(--text-primary);border:1px solid var(--accent-amber);box-shadow:var(--shadow-lg);font-size:var(--fs-sm);text-align:center;padding:10px 16px;font-weight:600;position:fixed;bottom:88px;left:50%;transform:translate(-50%)}.schedule-issue{border-radius:var(--radius-sm);font-size:var(--fs-xs);align-items:flex-start;gap:6px;margin-top:8px;padding:6px 10px;font-weight:600;line-height:1.35;display:flex}.schedule-issue svg{flex-shrink:0;margin-top:1px}.schedule-issue.overlap{color:var(--accent-coral);background:#ef44441a;border:1px solid #ef44444d}.schedule-issue.tight{color:var(--accent-amber);background:#f59e0b1a;border:1px solid #f59e0b4d}.day-rain-chip{border-radius:var(--radius-full);box-shadow:var(--shadow-xs);color:var(--cat-flight);font-size:var(--fs-xs);white-space:nowrap;cursor:pointer;transition:all var(--transition-fast);background:#38bdf81f;border:1px solid #38bdf866;align-items:center;gap:6px;padding:4px 10px;font-weight:600;line-height:normal;display:inline-flex}.day-rain-chip:hover{background:#38bdf833;transform:translateY(-1px)}.rain-plan{flex-direction:column;gap:12px;display:flex}.rain-plan-forecast{border-radius:var(--radius-md);background:var(--bg-elevated);border:1px solid var(--border-subtle);font-size:var(--fs-sm);align-items:center;gap:12px;padding:12px 14px;display:flex}.rain-plan-heading{font-size:var(--fs-sm);color:var(--text-secondary);align-items:center;gap:6px;margin:4px 0 0;font-weight:700;display:flex}.rain-plan-list{flex-direction:column;gap:8px;display:flex}.rain-plan-stop,.rain-plan-suggestion{border-radius:var(--radius-sm);background:var(--bg-card);border:1px solid var(--border-subtle);font-size:var(--fs-sm);padding:10px 12px}.rain-plan-stop{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.rain-plan-suggestion p{color:var(--text-secondary);margin:6px 0 8px;line-height:1.4}.rain-plan-title{color:var(--text-primary);font-weight:700}.rain-plan-muted{font-size:var(--fs-xs);color:var(--text-muted)}.rain-plan-move{color:var(--text-secondary);align-items:center;gap:6px;display:inline-flex}.rain-plan-move select{height:32px;font-size:var(--fs-xs)}.rain-plan-actions{flex-wrap:wrap;gap:8px;display:flex}.rain-plan-done{font-size:var(--fs-xs);color:var(--accent-emerald);font-weight:700}.rain-plan-error{font-size:var(--fs-xs);color:var(--accent-coral);margin:0}.split-type-toggle{border-radius:var(--radius-full);background:var(--bg-elevated);border:1px solid var(--border-subtle);align-self:flex-start;gap:3px;padding:3px;display:inline-flex}.split-type-option{border-radius:var(--radius-full);color:var(--text-secondary);font-size:var(--fs-xs);cursor:pointer;background:0 0;border:0;padding:5px 12px;font-weight:600}.split-type-option.active{background:var(--primary-solid);color:#fff}.split-members{grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:6px;margin-top:8px;display:grid}.split-member{border-radius:var(--radius-sm);background:var(--bg-elevated);border:1px solid var(--border-subtle);font-size:var(--fs-sm);justify-content:space-between;align-items:center;gap:8px;padding:6px 10px;display:flex}.split-member.excluded{opacity:.55}.split-member label{cursor:pointer;align-items:center;gap:8px;min-width:0;display:flex}.split-member label span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.split-member input[type=number]{width:90px;height:30px;font-size:var(--fs-sm)}.split-member-share{font-size:var(--fs-xs);color:var(--text-secondary);white-space:nowrap}.split-error{font-size:var(--fs-xs);color:var(--accent-coral);margin-top:6px;font-weight:600}.settle-up{border-top:1px solid var(--border-subtle);flex-direction:column;gap:8px;margin-top:16px;padding-top:14px;display:flex}.settle-up-title{font-size:var(--fs-base);align-items:center;gap:6px;font-weight:700;display:flex}.settle-up-empty{font-size:var(--fs-sm);color:var(--accent-emerald);align-items:center;gap:6px;display:flex}.settle-up-row{border-radius:var(--radius-sm);background:var(--bg-elevated);border:1px solid var(--border-subtle);font-size:var(--fs-sm);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 12px;padding:8px 12px;display:flex}.settle-up-row>span:first-child{flex:1;align-items:center;gap:6px;min-width:0;display:inline-flex}.settle-up-amount{flex-direction:column;align-items:flex-end;font-weight:700;display:inline-flex}.settle-up-home{font-size:var(--fs-2xs);color:var(--text-muted);font-weight:600}.expense-settlement{opacity:.8;border-style:dashed!important}.btn.reminders-on{color:var(--accent-emerald);border-color:#10b98173}.public-link-panel{border-radius:var(--radius-md);background:var(--bg-input);border:1px solid var(--border-subtle);flex-direction:column;gap:10px;padding:14px;display:flex}.public-link-panel>.btn{align-self:flex-start}.public-link-header{align-items:flex-start;gap:10px;display:flex}.public-link-header svg{color:var(--primary);flex-shrink:0;margin-top:2px}.public-link-title{font-size:var(--fs-sm);font-weight:700}.public-link-help{font-size:var(--fs-xs);color:var(--text-secondary);line-height:1.4}.public-link-url{font-size:var(--fs-2xs);color:var(--text-secondary);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.public-link-actions{flex-wrap:wrap;gap:8px;display:flex}.public-link-panel>.calendar-section{border-top:1px solid var(--border-subtle);flex-direction:column;align-items:flex-start;gap:8px;min-width:0;padding-top:10px;display:flex}.calendar-section .public-link-url{max-width:100%}.calendar-section-title{font-size:var(--fs-sm);align-items:center;gap:6px;font-weight:700;display:flex}.public-link-error{font-size:var(--fs-xs);color:var(--accent-coral)}.shared-trip-page{max-width:880px;min-height:100vh;margin:0 auto;padding:16px}.shared-trip-status{text-align:center;color:var(--text-secondary);flex-direction:column;justify-content:center;align-items:center;gap:12px;display:flex}.shared-trip-status h2{font-size:var(--fs-2xl);color:var(--text-primary)}.shared-trip-hero .trip-hero-title{margin-top:10px}.shared-trip-note{font-size:var(--fs-xs);color:#fffc;margin-top:4px;font-weight:600}.shared-trip-days{flex-direction:column;gap:20px;display:flex}.shared-trip-day h2{font-size:var(--fs-md);margin-bottom:8px;font-weight:700}.shared-trip-stops{flex-direction:column;gap:8px;display:flex}.shared-stop{border-radius:var(--radius-sm);background:var(--bg-card);border:1px solid var(--border-subtle);border-left:4px solid;padding:12px 14px}.shared-stop.is-background{background:0 0;padding:7px 14px}.shared-stop.is-background .shared-stop-time{flex-wrap:wrap}.shared-stop-span-details{color:var(--text-muted);margin-left:auto;font-weight:500}.shared-stop-time{font-size:var(--fs-xs);color:var(--text-secondary);align-items:center;gap:6px;font-weight:600;display:flex}.shared-stop-category{text-transform:capitalize;color:var(--text-muted);margin-left:auto}.shared-stop-title{font-size:var(--fs-md);margin-top:4px;font-weight:700}.shared-stop-place{font-size:var(--fs-xs);color:var(--text-secondary);align-items:center;gap:4px;margin-top:2px;display:flex}.shared-stop-notes{font-size:var(--fs-sm);color:var(--text-secondary);margin:6px 0 0;line-height:1.45}.shared-trip-empty{color:var(--text-muted)}.shared-trip-footer{font-size:var(--fs-xs);color:var(--text-muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin:28px 0 12px;display:flex}.shared-trip-hero .trip-hero-content{flex-direction:column;justify-content:flex-end;align-items:flex-start}.ai-summary{border-radius:var(--radius-lg,16px);background:linear-gradient(135deg,#6366f117 0%,#8b5cf612 50%,#3b82f60d 100%);border:1px solid #8b5cf647;margin:-6px 0 14px;padding:12px 14px;transition:all .25s cubic-bezier(.16,1,.3,1);position:relative;box-shadow:0 4px 24px #00000008,0 1px 3px #8b5cf614}.ai-summary.collapsed{padding:12px 18px}.ai-summary-reopen-container{align-items:center;margin:-6px 0 18px;display:flex}.ai-summary-reopen-btn{border-radius:var(--radius-full);color:var(--text-primary);font-size:var(--fs-xs);cursor:pointer;transition:all var(--transition-fast);background:linear-gradient(135deg,#6366f11f 0%,#8b5cf61f 100%);border:1px solid #8b5cf652;align-items:center;gap:8px;padding:6px 14px;font-family:inherit;font-weight:600;display:inline-flex;box-shadow:0 2px 8px #00000008}.ai-summary-reopen-btn:hover{background:linear-gradient(135deg,#6366f12e 0%,#8b5cf62e 100%);border-color:#8b5cf6;transform:translateY(-1px);box-shadow:0 4px 14px #8b5cf633}.ai-reopen-sparkle{color:#8b5cf6}.ai-reopen-title{font-weight:700}.ai-reopen-pill{font-size:var(--fs-2xs);border-radius:var(--radius-full);color:#8b5cf6;background:#8b5cf62e;align-items:center;gap:4px;padding:1px 7px;font-weight:500;display:inline-flex}.ai-reopen-action{font-size:var(--fs-2xs);color:var(--text-muted);align-items:center;gap:2px;margin-left:2px;display:inline-flex}.ai-summary-top{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.ai-summary-title-group{flex-shrink:0;align-items:center;gap:8px;display:flex}.ai-summary-label{font-size:var(--fs-xs);letter-spacing:.05em;text-transform:uppercase;color:#8b5cf6;align-items:center;gap:5px;font-weight:700;display:inline-flex}.ai-summary-icon{color:#8b5cf6}.ai-summary-stage-pill{font-size:var(--fs-2xs);border-radius:var(--radius-full);color:#8b5cf6;background:#8b5cf624;border:1px solid #8b5cf638;align-items:center;gap:5px;padding:2px 8px;font-weight:600;display:inline-flex}.stage-dot{background:#8b5cf6;border-radius:50%;width:6px;height:6px;box-shadow:0 0 6px #8b5cf699}.ai-summary-style-pills{flex-wrap:wrap;align-items:center;gap:4px;display:flex}.ai-style-pill{border-radius:var(--radius-full);font-size:var(--fs-xs);background:var(--bg-surface);border:1px solid var(--border-subtle);color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);-webkit-user-select:none;user-select:none;align-items:center;gap:4px;padding:3px 8px;font-family:inherit;font-weight:500;display:inline-flex}.ai-style-pill:hover{border-color:var(--border-medium);color:var(--text-primary);background:var(--bg-elevated)}.ai-style-pill.active{color:var(--text-primary);background:linear-gradient(135deg,#6366f12e 0%,#8b5cf638 100%);border-color:#8b5cf6;font-weight:700;box-shadow:0 2px 8px #8b5cf62e}.ai-style-pill-icon{color:#8b5cf6;flex-shrink:0}.ai-summary-controls{flex-shrink:0;align-items:center;gap:4px;display:flex}.ai-summary-control-btn{border-radius:var(--radius-sm);width:26px;height:26px;color:var(--text-muted);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:1px solid #0000;justify-content:center;align-items:center;font-family:inherit;display:inline-flex}.ai-summary-control-btn:hover{background:var(--bg-surface);color:var(--text-primary);border-color:var(--border-subtle)}.ai-dismiss-btn:hover{color:var(--accent-coral)}.ai-summary-metrics-strip{scrollbar-width:none;align-items:center;gap:10px;margin:8px 0;display:flex;overflow-x:auto}.ai-summary-metrics-strip::-webkit-scrollbar{display:none}.ai-metric-item{font-size:var(--fs-xs);flex-shrink:0;align-items:center;gap:5px;display:inline-flex}.ai-metric-icon{color:#8b5cf6;flex-shrink:0}.ai-metric-val{color:var(--text-primary);font-weight:700}.ai-metric-label{font-size:var(--fs-2xs);color:var(--text-muted)}.ai-metric-divider{background:var(--border-subtle);flex-shrink:0;width:1px;height:14px}.ai-summary-body{animation:.2s ease-out fadeIn}.ai-summary-headline-wrap{margin-bottom:8px}.ai-summary-headline{font-size:var(--fs-base);color:var(--text-primary);align-items:center;gap:6px;margin:0 0 4px;font-weight:700;line-height:1.35;display:flex}.headline-icon{color:#8b5cf6;flex-shrink:0}.ai-summary-callout{padding-left:20px}.ai-summary-text{font-size:var(--fs-sm);color:var(--text-secondary);margin:0;line-height:1.5}.ai-summary-cards-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:6px;margin:8px 0;display:grid}.ai-summary-card-item{border-radius:var(--radius-sm);background:var(--bg-surface);border:1px solid var(--border-subtle);transition:border-color var(--transition-fast);flex-direction:column;gap:2px;padding:7px 10px;display:flex}.ai-summary-card-item:hover{border-color:#8b5cf666}.ai-card-item-top{justify-content:space-between;align-items:center;gap:6px;display:flex}.ai-card-item-title{font-size:var(--fs-xs);color:var(--text-primary);font-weight:700}.ai-card-item-badge{font-size:var(--fs-2xs);border-radius:var(--radius-full);color:#6366f1;white-space:nowrap;background:#6366f11f;flex-shrink:0;padding:1px 6px;font-weight:600}.ai-card-item-content{font-size:var(--fs-xs);color:var(--text-secondary);margin:0;line-height:1.4}.ai-summary-highlights-box{margin:8px 0 0}.ai-highlights-title{font-size:var(--fs-2xs);letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted);margin-bottom:4px;font-weight:700;display:block}.ai-summary-highlights-list{flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex}.ai-highlight-li{font-size:var(--fs-sm);color:var(--text-primary);align-items:baseline;gap:7px;line-height:1.4;display:flex}.ai-highlight-bullet{background:#8b5cf6;border-radius:50%;flex-shrink:0;width:5px;height:5px;transform:translateY(-1px)}.ai-summary-meta{border-top:1px solid var(--border-subtle);font-size:var(--fs-2xs);color:var(--text-muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin-top:8px;padding-top:6px;display:flex}.ai-meta-timestamp{color:var(--text-muted)}.ai-summary-outdated{color:#8b5cf6;font:inherit;cursor:pointer;background:0 0;border:0;padding:0;font-weight:700;text-decoration:underline}.ai-summary-copy-btn{border-radius:var(--radius-xs,4px);font-size:var(--fs-2xs);color:var(--text-muted);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:1px solid #0000;align-items:center;gap:4px;padding:3px 8px;font-family:inherit;font-weight:600;display:inline-flex}.ai-summary-copy-btn:hover{color:var(--text-primary);background:var(--bg-surface);border-color:var(--border-subtle)}.ai-summary-inline-loading{font-size:var(--fs-xs);color:#8b5cf6;align-items:center;gap:8px;margin-top:8px;font-weight:500;display:flex}.ai-summary-error{border-radius:var(--radius-sm);font-size:var(--fs-xs);color:var(--accent-coral);background:#ef444414;border:1px solid #ef444433;justify-content:space-between;align-items:center;gap:8px;margin-top:8px;padding:6px 10px;display:flex}.ai-summary-error button{color:#8b5cf6;font:inherit;cursor:pointer;background:0 0;border:0;padding:0;font-weight:700;text-decoration:underline}@media (width<=640px){.ai-summary-style-pills{scrollbar-width:none;flex-wrap:nowrap;order:3;width:100%;overflow-x:auto}.ai-summary-style-pills::-webkit-scrollbar{display:none}.ai-style-pill{flex-shrink:0}.ai-metric-label{display:none}.ai-summary-title-group{flex:1 1 0;gap:6px;min-width:0}.ai-summary-label{flex-shrink:0}.ai-summary-stage-pill{white-space:nowrap;text-overflow:ellipsis;min-width:0;overflow:hidden}.ai-summary-controls{gap:0}.ai-summary-callout{padding-left:0}}.day-weather-badge,.day-accommodation-chip,.day-rain-chip{box-sizing:border-box;min-height:28px}@media (width<=640px){.day-weather-badge,.day-accommodation-chip,.day-rain-chip{min-height:24px;font-size:var(--fs-2xs);gap:5px;padding:3px 8px}}.time-clear-all-btn{font-size:var(--fs-2xs);color:var(--primary);cursor:pointer;transition:color var(--transition-fast), opacity var(--transition-fast);background:0 0;border:none;padding:0;font-weight:500}.time-clear-all-btn:hover{opacity:.85;text-decoration:underline}.time-field-clear-btn{border-radius:var(--radius-full);border:1px solid var(--border-subtle);background:var(--bg-surface);width:22px;height:22px;color:var(--text-muted);cursor:pointer;transition:all var(--transition-fast);flex-shrink:0;justify-content:center;align-items:center;padding:0;display:inline-flex}.time-field-clear-btn:hover{background:var(--bg-card-hover);color:var(--accent-coral,#ef4444);border-color:var(--accent-coral,#ef4444);transform:scale(1.06)}.location-match-extras{font-size:var(--fs-xs);flex-direction:column;gap:6px;margin-top:-8px;margin-bottom:14px;display:flex}.location-approximate-note{color:var(--text-secondary);align-items:flex-start;gap:5px;line-height:1.4;display:flex}.location-approximate-note svg{color:var(--accent-amber);flex-shrink:0;margin-top:2px}.location-candidates-toggle{color:var(--primary);font-size:var(--fs-xs);cursor:pointer;background:0 0;border:none;align-self:flex-start;align-items:center;gap:4px;padding:0;font-weight:600;display:inline-flex}.location-candidates{border:1px solid var(--border-subtle);border-radius:var(--radius-md,10px);background:var(--bg-card);flex-direction:column;display:flex;overflow:hidden}.location-candidate{border:none;border-bottom:1px solid var(--border-subtle);width:100%;color:var(--text-muted);text-align:left;cursor:pointer;background:0 0;align-items:flex-start;gap:8px;padding:8px 10px;display:flex}.location-candidate:last-child{border-bottom:none}.location-candidate:hover,.location-candidate:focus-visible{background:var(--bg-card-hover)}.location-candidate svg{flex-shrink:0;margin-top:2px}.location-candidate-text{flex-direction:column;min-width:0;display:flex}.location-candidate-name{font-size:var(--fs-sm);color:var(--text-primary);font-weight:600}.location-candidate-addr{font-size:var(--fs-xs);color:var(--text-secondary);word-break:break-word}.location-suggestion-card{border-radius:var(--radius-md,10px);background:linear-gradient(135deg, #6366f11a 0%, #8b5cf60d 100%), var(--bg-elevated);border:1.5px solid #6366f161;flex-direction:column;gap:10px;margin-top:-4px;margin-bottom:16px;padding:12px 14px;animation:.25s cubic-bezier(.16,1,.3,1) location-card-fade-in;display:flex;position:relative;box-shadow:0 4px 16px #00000014,0 1px 3px #6366f11f}[data-theme=light] .location-suggestion-card{background:linear-gradient(135deg,#eef2ff 0%,#f5f3ff 100%);border-color:#818cf8;box-shadow:0 4px 18px #6366f129,0 1px 4px #0000000a}.location-suggestion-header{justify-content:space-between;align-items:center;gap:8px;display:flex}.location-suggestion-badge{font-size:var(--fs-2xs);text-transform:uppercase;letter-spacing:.04em;color:var(--primary);border-radius:var(--radius-full);background:#6366f11f;align-items:center;gap:5px;padding:2px 8px;font-weight:600;display:inline-flex}[data-theme=light] .location-suggestion-badge{color:#4338ca;background:#6366f126}.location-suggestion-body{align-items:flex-start;gap:10px;display:flex}.location-suggestion-icon-wrap{border-radius:var(--radius-md,8px);background:var(--primary-solid);color:#fff;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;display:flex;box-shadow:0 2px 6px #6366f14d}.location-suggestion-content{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.location-suggestion-title{font-size:var(--fs-base);color:var(--text-primary);word-break:break-word;font-weight:600;line-height:1.35}.location-suggestion-addr{font-size:var(--fs-xs);color:var(--text-secondary);word-break:break-word;line-height:1.4}.location-suggestion-actions{border-top:1px solid #6366f126;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;padding-top:6px;display:flex}.location-suggestion-apply-btn{font-size:var(--fs-xs);background:var(--primary-solid);color:#fff;border-radius:var(--radius-md,6px);cursor:pointer;transition:all var(--transition-fast);border:none;align-items:center;gap:6px;padding:6px 14px;font-weight:600;display:inline-flex;box-shadow:0 2px 6px #6366f140}.location-suggestion-apply-btn:hover{filter:brightness(1.1);transform:translateY(-1px);box-shadow:0 4px 10px #6366f159}.location-suggestion-apply-btn:active{transform:translateY(0)}.location-suggestion-dismiss-btn{font-size:var(--fs-xs);color:var(--text-muted);border-radius:var(--radius-md,6px);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:1px solid #0000;align-items:center;gap:4px;padding:6px 10px;display:inline-flex}.location-suggestion-dismiss-btn:hover{color:var(--text-primary);background:#0000000d}[data-theme=dark] .location-suggestion-dismiss-btn:hover{background:#ffffff0f}.split-trip-view-wrapper{flex-direction:column;width:100%;display:flex}.split-view-top-bar{flex-direction:column;gap:8px;margin-bottom:8px;display:flex}.split-view-action-row{flex-wrap:wrap;align-items:center;gap:10px;padding:4px 0;display:flex}.split-route-mode-group{align-items:center;gap:6px;display:inline-flex}.split-mode-pill{background:var(--bg-elevated);border-radius:var(--radius-sm);border:1px solid var(--border-subtle);gap:2px;padding:2px;display:inline-flex}.split-filter-row{justify-content:space-between;align-items:center;gap:10px;display:flex}.split-trip-container{grid-template-columns:minmax(360px,1fr) minmax(360px,1fr);align-items:start;gap:18px;display:grid}.split-timeline-pane{scrollbar-width:thin;scrollbar-color:var(--border-subtle) transparent;min-height:480px;max-height:calc(100vh - 210px);padding-right:6px;overflow:hidden auto}.split-timeline-pane::-webkit-scrollbar{width:5px}.split-timeline-pane::-webkit-scrollbar-thumb{background:var(--border-subtle);border-radius:var(--radius-full)}.split-map-pane{border-radius:var(--radius-lg);border:1px solid var(--border-card);height:calc(100vh - 210px);min-height:480px;box-shadow:var(--shadow-md);isolation:isolate;position:sticky;top:76px;overflow:hidden}.split-map-card{width:100%;height:100%;position:relative}.split-map-card .leaflet-container{width:100%;height:100%}.split-map-attribution{z-index:500;font-size:var(--fs-2xs);color:var(--text-muted);pointer-events:none;background:#00000073;border-radius:4px;padding:2px 6px;position:absolute;bottom:4px;right:8px}.split-empty-pane{background:var(--bg-card);border:1px dashed var(--border-active);border-radius:var(--radius-lg);color:var(--text-primary);flex-direction:column;justify-content:center;align-items:center;padding:48px 24px;display:flex}.split-marker-wrapper{background:0 0!important;border:none!important}.split-custom-map-pin{cursor:pointer;width:30px;height:30px;font-size:var(--fs-xs);color:#fff;border:2px solid #fff;border-radius:50%;justify-content:center;align-items:center;font-weight:700;transition:transform .2s cubic-bezier(.16,1,.3,1),box-shadow .2s;display:flex;box-shadow:0 3px 10px #00000073}.split-custom-map-pin:hover,.split-custom-map-pin.is-active-pin{transform:scale(1.25);box-shadow:0 4px 16px #0009,0 0 0 4px #6366f173;z-index:1000!important}.stay-map-pin{cursor:pointer;border:2px solid #fff;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;transition:transform .22s cubic-bezier(.16,1,.3,1),box-shadow .22s;display:flex;position:relative;box-shadow:0 4px 14px #00000073}.stay-map-pin:hover,.stay-map-pin.is-active-pin{transform:scale(1.22);box-shadow:0 6px 20px #0009,0 0 0 4px #818cf880;z-index:1000!important}.stay-map-pin.is-base-pin{background:linear-gradient(135deg,#4f46e5 0%,#7c3aed 100%)}.stay-map-pin.is-start-pin{background:linear-gradient(135deg,#f59e0b 0%,#d97706 100%)}.stay-map-pin.is-end-pin{background:linear-gradient(135deg,#6366f1 0%,#4338ca 100%)}.stay-pin-badge{color:#fff;font-size:var(--fs-2xs);text-transform:uppercase;letter-spacing:.3px;background:#0f172a;border:1px solid #ffffff59;border-radius:999px;justify-content:center;align-items:center;gap:2px;padding:1.5px 5px;font-weight:700;line-height:1.1;display:flex;position:absolute;bottom:-5px;right:-5px;box-shadow:0 2px 5px #0006}.stay-map-popup{font-family:var(--font-body,system-ui, -apple-system, sans-serif);min-width:220px;max-width:260px;padding:4px 6px}.stay-map-popup-header{font-size:var(--fs-2xs);text-transform:uppercase;letter-spacing:.5px;align-items:center;gap:4px;margin-bottom:3px;font-weight:700;display:flex}.stay-map-popup-title{font-size:var(--fs-base);color:var(--text-primary,#0f172a);margin-bottom:4px;font-weight:700;line-height:1.3}.stay-map-popup-times{font-size:var(--fs-xs);color:var(--text-secondary,#475569);flex-direction:column;gap:2px;margin-bottom:6px;display:flex}.stay-map-popup-addr{font-size:var(--fs-2xs);color:var(--text-muted,#64748b);margin-bottom:8px;line-height:1.3}.stay-map-popup-actions{flex-wrap:wrap;align-items:center;gap:5px;display:flex}.split-card-item{transition:transform .2s cubic-bezier(.16,1,.3,1),box-shadow .2s}.split-card-highlighted{border-radius:var(--radius-lg);animation:1.8s cubic-bezier(.16,1,.3,1) split-card-pulse;box-shadow:0 0 0 2px var(--primary), 0 6px 24px #6366f14d!important}.split-locate-pin-btn{z-index:2;border-radius:var(--radius-full);font-size:var(--fs-2xs);background:var(--bg-elevated);border:1px solid var(--border-subtle);color:var(--primary);cursor:pointer;box-shadow:var(--shadow-sm);align-items:center;gap:4px;padding:2px 7px;font-weight:700;transition:all .15s;display:inline-flex;position:absolute;top:10px;right:12px}.split-locate-pin-btn:hover{background:var(--primary-solid);color:#fff;border-color:var(--primary);transform:translateY(-1px)}@media (width<=960px){.split-trip-container{grid-template-columns:1fr;gap:16px}.split-map-pane{order:1;height:380px;min-height:340px;position:static}.split-timeline-pane{order:2;max-height:none;padding-right:0}}.sync-pill{font-size:var(--fs-xs);white-space:nowrap;cursor:default;color:var(--text-secondary);background:var(--bg-elevated);border:1px solid var(--border-subtle);border-radius:999px;flex-shrink:0;align-items:center;gap:5px;padding:4px 9px;font-weight:600;display:inline-flex}.sync-pill--synced{color:var(--accent-emerald);background:var(--accent-emerald-light);border-color:#0000}.sync-pill--saving{color:var(--accent-cyan);background:var(--accent-cyan-light);border-color:#0000}.sync-pill--offline{color:var(--accent-amber);background:var(--accent-amber-light);border-color:#0000}.sync-pill--failed{color:var(--accent-coral);background:var(--accent-coral-light);border-color:#0000}.sync-pill-spin{animation:1s linear infinite sync-pill-spin}@media (prefers-reduced-motion:reduce){.sync-pill-spin{animation:none}}@media (width<=640px){.sync-pill{padding:5px}.sync-pill:not(.sync-pill--failed):not(.sync-pill--offline) .sync-pill-label{display:none}.sync-pill--failed,.sync-pill--offline{padding:4px 8px}}.floating-sync-container{z-index:1400;pointer-events:auto;-webkit-user-select:none;user-select:none;font-family:var(--font-sans,system-ui, -apple-system, sans-serif);flex-direction:column;align-items:flex-start;display:flex;position:fixed;bottom:20px;left:20px}@media (width<=899px){.floating-sync-container{bottom:calc(76px + var(--sab,0px));left:14px}}.floating-sync-pill{font-size:var(--fs-xs);letter-spacing:-.01em;white-space:nowrap;cursor:pointer;background:var(--bg-glass);-webkit-backdrop-filter:blur(16px);border:1px solid var(--border-subtle);color:var(--text-primary);border-radius:999px;align-items:center;gap:7px;padding:6px 12px 6px 10px;font-weight:600;transition:all .22s cubic-bezier(.16,1,.3,1);display:inline-flex;box-shadow:0 4px 18px #0000001f,0 1px 3px #0000000f}.floating-sync-pill:hover{border-color:var(--border-active);transform:translateY(-2px);box-shadow:0 8px 24px #0000002e,0 2px 6px #00000014}.floating-sync-pill:active{transform:translateY(0)}.floating-sync-pill--dot-mode{border-radius:50%;justify-content:center;gap:0;width:34px;height:34px;padding:7px}.floating-sync-pill--dot-mode .floating-sync-label,.floating-sync-pill--dot-mode .floating-sync-icon{display:none}.floating-sync-pill--dot-mode .floating-sync-dot{width:10px;height:10px}.floating-sync-pill--synced{color:var(--accent-emerald);background:#10b98114;border-color:#10b9814d}.floating-sync-pill--synced:hover{background:#10b98124;border-color:#10b98180}.floating-sync-pill--saving{color:var(--accent-cyan);background:#06b6d41a;border-color:#06b6d459}.floating-sync-pill--saving:hover{border-color:#06b6d48c}.floating-sync-pill--offline{color:var(--accent-amber);background:#f59e0b1f;border-color:#f59e0b66}.floating-sync-pill--offline:hover{border-color:#f59e0b99}.floating-sync-pill--failed{color:var(--accent-coral);background:#ef44441f;border-color:#ef444473}.floating-sync-pill--failed:hover{border-color:#ef4444a6}.floating-sync-pill--local{color:var(--text-secondary);border-color:var(--border-subtle);background:var(--bg-elevated)}.floating-sync-pill--local:hover{border-color:var(--border-active);color:var(--text-primary)}.floating-sync-dot{background-color:currentColor;border-radius:50%;flex-shrink:0;width:8px;height:8px;position:relative}.floating-sync-dot--glow{box-shadow:0 0 8px}.floating-sync-dot--pulse:after{content:"";opacity:.8;border:2px solid;border-radius:50%;animation:1.8s cubic-bezier(.24,0,.38,1) infinite sync-ring-pulse;position:absolute;inset:-3px}.floating-sync-popover{background:var(--bg-elevated);border:1px solid var(--border-active);border-radius:var(--radius-md);width:290px;box-shadow:var(--shadow-xl);-webkit-backdrop-filter:blur(20px);z-index:1450;flex-direction:column;gap:12px;padding:14px 16px;animation:.2s cubic-bezier(.16,1,.3,1) floatingSyncPopoverFade;display:flex;position:absolute;bottom:calc(100% + 12px);left:0}.floating-sync-popover-header{flex-direction:column;gap:4px;display:flex}.floating-sync-popover-title-row{justify-content:space-between;align-items:center;gap:8px;display:flex}.floating-sync-badge{font-size:var(--fs-xs);border:1px solid;border-radius:999px;align-items:center;gap:6px;padding:3px 8px;font-weight:700;display:inline-flex}.floating-sync-close-btn{border-radius:var(--radius-xs);width:26px;height:26px;color:var(--text-muted);cursor:pointer;transition:all var(--transition-fast);justify-content:center;align-items:center;display:flex}.floating-sync-close-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.floating-sync-popover-body{flex-direction:column;gap:8px;display:flex}.floating-sync-popover-heading{font-size:var(--fs-sm);color:var(--text-primary);font-weight:700}.floating-sync-popover-desc{font-size:var(--fs-xs);color:var(--text-secondary);margin:0;line-height:1.45}.floating-sync-action-btn{width:100%;font-size:var(--fs-xs);justify-content:center;gap:7px;margin-top:4px}.floating-sync-status-good{font-size:var(--fs-xs);color:var(--text-muted);align-items:center;gap:6px;margin-top:2px;display:flex}.floating-sync-popover-footer{border-top:1px solid var(--border-subtle);font-size:var(--fs-2xs);color:var(--text-muted);justify-content:space-between;align-items:center;padding-top:10px;display:flex}.floating-sync-footer-label{text-transform:uppercase;letter-spacing:.04em;font-weight:600;font-size:var(--fs-2xs)}.floating-sync-mode-toggle-group{background:var(--bg-input);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);align-items:center;gap:2px;padding:2px;display:inline-flex}.floating-sync-mode-btn{font-size:var(--fs-2xs);color:var(--text-muted);cursor:pointer;transition:all var(--transition-fast);border-radius:4px;align-items:center;gap:4px;padding:2px 7px;font-weight:600;display:inline-flex}.floating-sync-mode-btn.active{background:var(--bg-card);color:var(--text-primary);box-shadow:var(--shadow-sm)}.floating-sync-mode-btn:hover:not(.active){color:var(--text-secondary)}@media (width<=640px){.floating-sync-pill{border-radius:50%!important;justify-content:center!important;gap:0!important;width:34px!important;height:34px!important;padding:7px!important}.floating-sync-pill .floating-sync-label,.floating-sync-pill .floating-sync-icon{display:none!important}.floating-sync-pill .floating-sync-dot{width:10px!important;height:10px!important}.floating-sync-popover{width:auto!important;max-width:calc(100vw - 28px)!important;left:14px!important;right:14px!important;bottom:calc(120px + var(--sab,0px))!important;position:fixed!important}}.prep-view-toggle{-webkit-overflow-scrolling:touch;scrollbar-width:none;flex-wrap:nowrap;align-items:center;max-width:100%;padding:4px;display:inline-flex;overflow-x:auto}.prep-subtab-pill{white-space:nowrap;flex-shrink:0}.notes-panel-container{flex-direction:column;gap:16px;display:flex}.notes-top-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.notes-title-block{flex-direction:column;gap:2px;display:flex}.notes-title{font-size:var(--fs-xl);color:var(--text-primary);align-items:center;gap:8px;margin:0;font-weight:700;display:flex}.notes-title-short,.notes-action-label-short,.notes-chip-short{display:none}.notes-subtitle{font-size:var(--fs-xs);color:var(--text-muted)}.notes-toolbar{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.notes-search-box{flex:240px;align-items:center;display:flex;position:relative}.notes-category-chips{flex-wrap:wrap;gap:6px;padding-bottom:2px;display:flex;overflow-x:auto}@media (width<=640px){.notes-panel-container{gap:12px}.notes-top-header{flex-wrap:nowrap;justify-content:space-between;align-items:center;gap:8px}.notes-title{font-size:var(--fs-lg);gap:6px}.notes-title-full{display:none}.notes-title-short{display:inline}.notes-subtitle{display:none}.notes-action-btn{flex-shrink:0;font-size:var(--fs-xs)!important;gap:4px!important;padding:5px 10px!important}.notes-action-label-full{display:none}.notes-action-label-short{display:inline}.notes-toolbar{flex-direction:column;align-items:stretch;gap:8px}.notes-search-box{flex:none;width:100%}.notes-category-chips{-webkit-overflow-scrolling:touch;scrollbar-width:none;flex-wrap:nowrap;padding-bottom:2px;overflow-x:auto}.notes-category-chips::-webkit-scrollbar{display:none}.notes-category-chip{white-space:nowrap;flex-shrink:0}.notes-chip-full{display:none}.notes-chip-short{display:inline}.packing-category-chips{-webkit-overflow-scrolling:touch!important;scrollbar-width:none!important;flex-wrap:nowrap!important;overflow-x:auto!important}.packing-category-chips::-webkit-scrollbar{display:none}.packing-category-chips>button{white-space:nowrap!important;flex-shrink:0!important}}.trip-list-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.trip-list-actions{align-items:center;gap:10px;max-width:100%;display:flex}.trip-list-action-btn{white-space:nowrap;flex-shrink:0}.trip-btn-label-short{display:none}@media (width<=640px){.trip-list-header{flex-direction:column;align-items:flex-start;gap:12px}.trip-list-actions{-webkit-overflow-scrolling:touch;scrollbar-width:none;gap:8px;width:100%;min-width:0;padding:2px 2px 6px;overflow-x:auto}.trip-list-actions::-webkit-scrollbar{display:none}.trip-list-action-btn{font-size:var(--fs-sm);padding:7px 11px}.trip-btn-label-full{display:none}.trip-btn-label-short{display:inline}.converter-input{font-size:var(--fs-lg)!important;padding:10px!important}.converter-output{white-space:nowrap;text-overflow:ellipsis;overflow:hidden;font-size:var(--fs-lg)!important;padding:10px!important}.converter-select{font-size:var(--fs-xs)!important;flex-shrink:0!important;max-width:105px!important;padding:0 6px!important}.hero-stay-pill{text-overflow:ellipsis;white-space:nowrap;max-width:210px;overflow:hidden}}.gap-chip-row{align-items:center;gap:8px;margin:2px 0 6px;display:flex}.gap-chip-line{border-top:1px dashed var(--border-subtle);flex:1}.gap-chip{border-radius:var(--radius-full);border:1px dashed var(--border-subtle);background:var(--bg-input);color:var(--text-secondary);font-size:var(--fs-xs);cursor:pointer;transition:all var(--transition-fast);align-items:center;gap:6px;padding:4px 10px;display:inline-flex}.gap-chip:hover,.gap-chip:focus-visible{border-color:var(--primary);color:var(--primary);outline:none}.gap-chip-action{color:var(--primary);align-items:center;gap:4px;font-weight:600;display:inline-flex}.gap-ideas{flex-direction:column;gap:10px;display:flex}.gap-ideas-weather,.gap-ideas-status{font-size:var(--fs-sm);color:var(--text-secondary);align-items:center;gap:8px;display:flex}.gap-ideas-error{font-size:var(--fs-sm);color:var(--accent-coral)}.gap-ideas-map.leaflet-container{border-radius:var(--radius-sm);border:1px solid var(--border-subtle);flex-shrink:0;height:200px;overflow:hidden}.gap-map-stop,.gap-map-idea{font-size:var(--fs-xs);border:2px solid #fff;border-radius:50%;justify-content:center;align-items:center;font-weight:700;display:flex;box-shadow:0 2px 8px #00000059}.gap-map-stop{background:var(--text-secondary);color:#fff}.gap-map-idea{background:var(--primary);color:#fff;cursor:pointer;transition:transform var(--transition-fast)}.gap-map-idea.is-selected{background:var(--accent-amber);transform:scale(1.25)}.gap-idea{border-radius:var(--radius-sm);background:var(--bg-elevated);border:1px solid var(--border-subtle);transition:border-color var(--transition-fast), box-shadow var(--transition-fast);align-items:flex-start;gap:12px;padding:12px;scroll-margin:12px;display:flex}.gap-idea.is-selected{border-color:var(--accent-amber);box-shadow:0 0 0 1px var(--accent-amber)}.gap-idea-thumb{border-radius:var(--radius-sm);background:var(--bg-card);border:1px solid var(--border-subtle);width:72px;height:72px;color:var(--text-muted);flex-shrink:0;justify-content:center;align-items:center;display:flex;position:relative}.gap-idea-thumb img{object-fit:cover;border-radius:inherit;width:100%;height:100%}.gap-idea-number{border:2px solid var(--bg-elevated);background:var(--primary);color:#fff;width:22px;height:22px;font-size:var(--fs-2xs);border-radius:50%;justify-content:center;align-items:center;font-weight:700;display:flex;position:absolute;top:-6px;left:-6px}.gap-idea.is-selected .gap-idea-number{background:var(--accent-amber)}.gap-idea-links{flex-wrap:wrap;gap:4px 14px;margin-top:2px;display:flex}.gap-idea-links a{font-size:var(--fs-xs);color:var(--primary);align-items:center;gap:4px;font-weight:600;text-decoration:none;display:inline-flex}.gap-idea-links a:hover{text-decoration:underline}.gap-idea-rating{font-size:var(--fs-xs);color:var(--text-secondary);flex-wrap:wrap;align-items:center;gap:4px;display:flex}.gap-idea-rating svg{color:var(--accent-amber);fill:var(--accent-amber)}.gap-idea-rating-value{color:var(--text-primary);font-weight:700}.gap-idea-rating-source{font-size:var(--fs-2xs);color:var(--text-muted)}.gap-idea-rating-source:before{content:"· "}.gap-idea-thumb-btn{border-radius:inherit;cursor:zoom-in;background:0 0;border:none;width:100%;height:100%;padding:0}.gap-idea-thumb-btn img{object-fit:cover;border-radius:inherit;width:100%;height:100%}.gap-idea-photo-large{margin:4px 0 0}.gap-idea-photo-large img{object-fit:cover;border-radius:var(--radius-sm);width:100%;max-height:260px;display:block}.gap-idea-photo-large figcaption{font-size:var(--fs-2xs);color:var(--text-muted);margin-top:4px}.gap-idea-photo-large figcaption a{color:var(--text-secondary)}.gap-idea-reviews-toggle{font-size:var(--fs-xs);color:var(--primary);cursor:pointer;background:0 0;border:none;align-self:flex-start;align-items:center;gap:4px;padding:0;font-weight:600;display:inline-flex}.place-reviews ul{flex-direction:column;gap:10px;margin:2px 0 0;padding:0;list-style:none;display:flex}.place-review{border-radius:var(--radius-sm);background:var(--bg-card);border:1px solid var(--border-subtle);padding:8px 10px}.place-review-head{font-size:var(--fs-xs);color:var(--text-muted);flex-wrap:wrap;align-items:center;gap:4px 8px;display:flex}.place-review-avatar{object-fit:cover;background:var(--bg-elevated);width:20px;height:20px;color:var(--text-secondary);font-size:var(--fs-2xs);border-radius:50%;justify-content:center;align-items:center;font-weight:700;display:inline-flex}.place-review-author{color:var(--text-primary);font-weight:600;text-decoration:none}a.place-review-author:hover{text-decoration:underline}.place-review-stars{color:var(--text-secondary);align-items:center;gap:2px;display:inline-flex}.place-review-stars svg{color:var(--accent-amber);fill:var(--accent-amber)}.place-review-text{font-size:var(--fs-sm);color:var(--text-secondary);white-space:pre-line;margin:6px 0 0;line-height:1.45}.place-review-text.is-clamped{-webkit-line-clamp:4;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.place-review-more{font-size:var(--fs-xs);color:var(--primary);cursor:pointer;background:0 0;border:none;margin-top:2px;padding:0;font-weight:600}.place-reviews-source{font-size:var(--fs-2xs);color:var(--text-muted);margin-top:6px}.gap-idea>.btn{white-space:nowrap;flex-shrink:0}.gap-idea-main{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.gap-idea-title{font-weight:700;font-size:var(--fs-base)}.gap-idea-meta{font-size:var(--fs-xs);color:var(--text-secondary);flex-wrap:wrap;align-items:center;gap:4px 10px;display:flex}.gap-idea-badge{border-radius:var(--radius-full);background:var(--primary-light);color:var(--primary);padding:1px 8px;font-weight:600}.gap-idea-desc{font-size:var(--fs-sm);color:var(--text-secondary);line-height:1.4}.gap-idea-place{font-size:var(--fs-xs);color:var(--text-muted);align-items:flex-start;gap:4px;display:flex}.gap-idea-place svg{flex-shrink:0;margin-top:2px}@media (width<=480px){.gap-idea{flex-wrap:wrap}.gap-idea-thumb{width:56px;height:56px}.gap-idea-main{flex-basis:calc(100% - 68px)}.gap-idea>.btn{margin-left:68px}.gap-ideas-map.leaflet-container{height:170px}}.recent-changes{border-radius:var(--radius-lg,16px);background:var(--bg-card);border:1px solid var(--border-card);margin:-4px 0 14px;padding:10px 14px}.recent-changes-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:6px;display:flex}.recent-changes-title{font-size:var(--fs-sm);align-items:center;gap:7px;font-weight:700;display:flex}.recent-changes-title svg{color:var(--primary)}.recent-changes-badge{border-radius:var(--radius-full);background:var(--primary-solid);color:#fff;font-size:var(--fs-2xs);padding:1px 8px;font-weight:700}.recent-changes-actions{gap:4px;display:flex}.recent-changes-actions .btn{font-size:var(--fs-xs);gap:3px;padding:3px 8px}.recent-changes-list{flex-direction:column;gap:2px;margin:8px 0 0;padding:0;list-style:none;display:flex}.recent-change{border-radius:var(--radius-xs);font-size:var(--fs-sm);color:var(--text-secondary);align-items:flex-start;gap:8px;padding:5px 8px;display:flex}.recent-change.is-new{background:var(--primary-light);color:var(--text-primary)}.recent-change-icon{color:var(--text-muted);flex-shrink:0;margin-top:2px}.recent-change-text{overflow-wrap:anywhere;flex:1;min-width:0}.recent-change-text strong{color:var(--text-primary);font-weight:600}.recent-change-time{font-size:var(--fs-2xs);color:var(--text-muted);flex-shrink:0}.todo-overdue-count{color:var(--accent-coral);font-weight:600}.todo-form{flex-direction:column;gap:8px;display:flex}.todo-form input[type=text]{height:36px;font-size:var(--fs-sm)}.todo-form-row{gap:8px;display:flex}.todo-form-row select,.todo-form-row input{min-width:0;height:36px;font-size:var(--fs-xs);flex:1}.todo-form-row .btn{padding:0 12px}.todo-row{border-left:3px solid #0000;align-items:flex-start;gap:10px;padding:10px 14px;transition:all .2s;display:flex}.todo-row.due-overdue{border-left-color:var(--accent-coral)}.todo-row.due-soon{border-left-color:var(--accent-amber)}.todo-row.is-done{opacity:.65}.todo-check{cursor:pointer;background:0 0;border:none;margin-top:1px;padding:0;display:flex}.todo-body{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.todo-title{font-size:var(--fs-sm);color:var(--text-primary);overflow-wrap:anywhere;font-weight:600}.todo-row.is-done .todo-title{color:var(--text-muted);font-weight:400;text-decoration:line-through}.todo-meta{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.todo-inline-select{width:auto;height:22px;font-size:var(--fs-2xs);border-radius:var(--radius-full);padding:0 6px}.todo-due{border-radius:var(--radius-full);background:var(--bg-elevated);height:22px;font-size:var(--fs-2xs);color:var(--text-muted);align-items:center;gap:4px;padding:0 8px;display:inline-flex;position:relative}.todo-due input{opacity:0;cursor:pointer;width:100%;height:100%;padding:0;position:absolute;inset:0}.todo-due.due-overdue{color:var(--accent-coral);background:#f43f5e1f;font-weight:600}.todo-due.due-soon{background:var(--accent-amber-light);color:var(--accent-amber);font-weight:600}.travel-docs{border-radius:var(--radius-lg,16px);background:var(--bg-card);border:1px solid var(--border-card);flex-direction:column;grid-column:1/-1;gap:14px;padding:16px;display:flex}.travel-docs-head h3{font-size:var(--fs-xl);align-items:center;gap:8px;font-weight:700;display:flex}.travel-docs-sub{font-size:var(--fs-xs);color:var(--text-muted)}.travel-docs-travelers{flex-direction:column;gap:8px;display:flex}.travel-doc-row{grid-template-columns:minmax(90px,1fr) minmax(140px,1.3fr) minmax(130px,1fr) minmax(160px,1.6fr);align-items:center;gap:8px;display:grid}.travel-doc-row select,.travel-doc-row input{height:36px;font-size:var(--fs-sm);min-width:0;padding-top:0;padding-bottom:0}.travel-doc-name{font-size:var(--fs-sm);text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.travel-doc-status{font-size:var(--fs-xs);color:var(--text-muted);align-items:center;gap:5px;display:flex}.travel-doc-status svg{flex-shrink:0}.travel-doc-status.level-ok{color:var(--accent-emerald)}.travel-doc-status.level-warning{color:var(--accent-amber);font-weight:600}.travel-doc-status.level-danger{color:var(--accent-coral);font-weight:600}@media (width<=640px){.travel-doc-row{border-bottom:1px solid var(--border-subtle);grid-template-columns:1fr 1fr;padding-bottom:8px}.travel-doc-name,.travel-doc-status{grid-column:1/-1}}.travel-docs-check{border-top:1px solid var(--border-subtle);flex-direction:column;gap:10px;padding-top:12px;display:flex}.travel-docs-check-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.travel-docs-check-title{font-size:var(--fs-base);font-weight:700}.travel-docs-check-head .btn{gap:6px}.travel-docs-error{font-size:var(--fs-sm);color:var(--accent-coral)}.travel-docs-disclaimer{border-radius:var(--radius-xs);background:var(--accent-amber-light);color:var(--accent-amber);font-size:var(--fs-xs);align-items:center;gap:6px;padding:8px 10px;font-weight:600;display:flex}.travel-docs-disclaimer svg{flex-shrink:0}.entry-req-group{flex-direction:column;gap:6px;display:flex}.entry-req-group-title{font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.03em;color:var(--text-secondary);align-items:center;gap:6px;font-weight:700;display:flex}.entry-req-item{border-radius:var(--radius-sm);background:var(--bg-elevated);border:1px solid var(--border-subtle);justify-content:space-between;align-items:flex-start;gap:10px;padding:10px 12px;display:flex}.entry-req-item .btn{text-align:left;flex-shrink:0;gap:4px;max-width:45%}.entry-req-main{flex-direction:column;gap:3px;min-width:0;display:flex}.entry-req-title{font-size:var(--fs-sm);font-weight:600}.entry-req-applies{border-radius:var(--radius-full);background:var(--primary-light);color:var(--primary);font-size:var(--fs-2xs);margin-left:6px;padding:1px 7px;font-weight:600}.entry-req-detail{font-size:var(--fs-xs);color:var(--text-secondary);line-height:1.4}@media (width<=520px){.entry-req-item{flex-direction:column}.entry-req-item .btn{max-width:none}}.travel-docs-sources{font-size:var(--fs-xs);color:var(--text-muted)}.travel-docs-sources a{color:var(--primary);text-decoration:none}.travel-docs-sources a svg{vertical-align:-1px;display:inline}.packing-suggest{flex-direction:column;gap:10px;display:flex}.packing-suggest-status{font-size:var(--fs-sm);color:var(--text-secondary);align-items:center;gap:8px;display:flex}.packing-suggest-error{font-size:var(--fs-sm);color:var(--accent-coral)}.packing-suggest-bar{font-size:var(--fs-xs);color:var(--text-muted);justify-content:space-between;align-items:center;display:flex}.packing-suggest-list{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.packing-suggest-item{border-radius:var(--radius-sm);border:1px solid var(--border-subtle);background:var(--bg-elevated);width:100%;color:inherit;text-align:left;cursor:pointer;transition:all var(--transition-fast);align-items:flex-start;gap:10px;padding:10px 12px;display:flex}.packing-suggest-item.is-selected{border-color:var(--border-active);background:var(--primary-light)}.packing-suggest-text{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.packing-suggest-name{font-size:var(--fs-sm);font-weight:600}.packing-suggest-reason{font-size:var(--fs-xs);color:var(--text-secondary)}.packing-suggest-cat{border-radius:var(--radius-full);background:var(--bg-input);font-size:var(--fs-2xs);text-transform:uppercase;color:var(--text-muted);flex-shrink:0;padding:2px 7px;font-weight:700}.daily-briefing{border-radius:var(--radius-lg,16px);background:linear-gradient(135deg,#f59e0b1a 0%,#ff385c0f 100%);border:1px solid #f59e0b4d;flex-direction:column;gap:6px;margin:-6px 0 14px;padding:12px 14px;display:flex}.daily-briefing-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:4px 10px;display:flex}.daily-briefing-title{font-size:var(--fs-base);align-items:center;gap:7px;font-weight:700;display:flex}.daily-briefing-title svg{color:var(--accent-amber);align-self:center}.daily-briefing-date{font-size:var(--fs-xs);color:var(--text-secondary)}.daily-briefing-weather{font-size:var(--fs-sm);color:var(--text-secondary);flex-wrap:wrap;align-items:center;gap:6px 8px;display:flex}.daily-briefing-lines{font-size:var(--fs-sm);flex-direction:column;gap:3px;display:flex}.daily-briefing-leave{flex-wrap:wrap;align-items:center;gap:5px;display:flex}.daily-briefing-muted{color:var(--text-muted);font-size:var(--fs-xs)}.daily-briefing-chips{flex-wrap:wrap;gap:6px;display:flex}.briefing-chip{border-radius:var(--radius-full);border:1px solid var(--border-subtle);background:var(--bg-card);max-width:100%;color:var(--text-secondary);font-size:var(--fs-xs);cursor:pointer;align-items:center;gap:5px;padding:3px 10px;display:inline-flex}button.briefing-chip:hover{border-color:var(--primary);color:var(--primary)}span.briefing-chip{cursor:default}.briefing-chip.is-warning{color:var(--accent-amber);border-color:#f59e0b73;font-weight:600}.briefing-chip code{font-size:var(--fs-2xs);color:var(--text-primary)}.briefing-chip-text{text-overflow:ellipsis;white-space:nowrap;max-width:180px;overflow:hidden}.briefing-chip-alert{border-radius:var(--radius-full);background:var(--accent-coral);color:#fff;font-size:var(--fs-2xs);padding:0 6px;font-weight:700}.daily-briefing-lines .briefing-chip-alert{margin-left:6px}.today-card{border-radius:var(--radius-lg,16px);background:linear-gradient(135deg,#10b9811a 0%,#6366f10f 100%);border:1px solid #10b98152;flex-direction:column;gap:8px;margin:-6px 0 14px;padding:12px 14px;display:flex}.today-card .daily-briefing-title svg{color:var(--accent-emerald)}.today-block{border-radius:var(--radius-sm);background:var(--bg-card);border:1px solid var(--border-subtle);flex-direction:column;gap:4px;padding:10px 12px;display:flex}.today-block.is-now{border-color:#10b98173}.today-card-done{border-radius:var(--radius-sm);background:var(--bg-card);border:1px solid var(--border-subtle);font-size:var(--fs-sm);color:var(--text-secondary);align-items:center;gap:8px;padding:10px 14px;font-weight:500;display:flex}.today-card-done svg{color:var(--accent-emerald);flex-shrink:0}.today-label{font-size:var(--fs-2xs);text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);font-weight:700}.today-block.is-now .today-label{color:var(--accent-emerald)}.today-title{font-size:var(--fs-md);font-weight:700}.today-timing{font-size:var(--fs-sm);color:var(--text-secondary);flex-wrap:wrap;align-items:center;gap:4px 12px;display:flex}.today-timing>svg{margin-right:-8px}.today-leave{color:var(--text-primary);flex-wrap:wrap;align-items:center;gap:4px;font-weight:600;display:inline-flex}.today-leave.is-soon{color:var(--accent-amber)}.today-leave.is-late{color:var(--accent-coral)}.today-actions{flex-wrap:wrap;gap:6px;margin-top:4px;display:flex}.today-actions .btn{gap:5px;max-width:100%;text-decoration:none}.today-actions code{font-size:var(--fs-xs)}.today-file-name{text-overflow:ellipsis;white-space:nowrap;max-width:160px;overflow:hidden}.today-late{font-size:var(--fs-xs);color:var(--text-secondary);flex-wrap:wrap;align-items:center;gap:6px;display:flex}.today-late .btn{padding:3px 10px}.today-undo{border-radius:var(--radius-xs);background:var(--bg-elevated);font-size:var(--fs-xs);color:var(--text-secondary);justify-content:space-between;align-items:center;gap:8px;padding:6px 10px;display:flex}.navbar-sos{color:var(--accent-coral)}.sos{flex-direction:column;gap:14px;display:flex}.sos-country{color:var(--accent-coral);align-items:center;gap:8px;display:flex}.sos-country select{flex:1;height:36px;padding-top:0;padding-bottom:0}.sos-numbers{grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:8px;display:grid}.sos-number{border-radius:var(--radius-md);color:var(--accent-coral);text-align:center;background:#f43f5e14;border:1px solid #f43f5e59;flex-direction:column;align-items:center;gap:2px;padding:12px 8px;text-decoration:none;display:flex}.sos-number.is-primary{background:var(--accent-coral);border-color:var(--accent-coral);color:#fff;grid-column:1/-1}.sos-number-label{font-size:var(--fs-xs);font-weight:600}.sos-number-value{font-size:var(--fs-4xl);letter-spacing:.02em;font-weight:700;line-height:1.1}.sos-hint{font-size:var(--fs-xs);color:var(--text-muted)}.sos-error{font-size:var(--fs-sm);color:var(--accent-coral)}.sos-section{flex-direction:column;gap:6px;display:flex}.sos-section-title{font-size:var(--fs-sm);justify-content:space-between;align-items:center;gap:8px;font-weight:700;display:flex}.sos-section-title .btn{font-size:var(--fs-xs);gap:4px}.sos-section>.btn{align-self:flex-start;gap:6px}.sos-location{font-size:var(--fs-sm);flex-wrap:wrap;align-items:center;gap:8px;display:flex}.sos-location .btn{text-decoration:none}.sos-stay{border-radius:var(--radius-sm);background:var(--bg-elevated);border:1px solid var(--border-subtle);justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;display:flex}.sos-stay .btn{flex-shrink:0;gap:5px}.sos-stay-main{flex-direction:column;gap:2px;min-width:0;display:flex}.sos-stay-name{font-size:var(--fs-base);font-weight:700}.sos-stay-local{font-size:var(--fs-sm);color:var(--text-primary)}.sos-driver{z-index:5000;color:#000;background:#fff;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.sos-driver-close{top:calc(12px + var(--sat,0px));color:#000;cursor:pointer;background:0 0;border:none;padding:8px;position:absolute;right:12px}.sos-driver-content{text-align:center;overflow-wrap:anywhere;flex-direction:column;gap:16px;max-width:900px;display:flex}.sos-driver-name{font-size:clamp(32px,8vw,64px);font-weight:700;line-height:1.15}.sos-driver-address{font-size:clamp(24px,6vw,44px);line-height:1.3}.sos-driver-orig{font-size:var(--fs-lg);color:#555}.phrasebook{border-radius:var(--radius-lg,16px);background:var(--bg-card);border:1px solid var(--border-card);flex-direction:column;grid-column:1/-1;gap:12px;padding:16px;display:flex}.phrasebook-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.phrasebook-head h3{font-size:var(--fs-xl);align-items:center;gap:8px;font-weight:700;display:flex}.phrasebook-generate,.phrasebook-translate{gap:8px;display:flex}.phrasebook-generate input{width:190px}.phrasebook-generate input,.phrasebook-translate input{height:34px;font-size:var(--fs-sm);padding-top:0;padding-bottom:0}.phrasebook-translate input{flex:1;min-width:0}.phrasebook-generate .btn,.phrasebook-translate .btn{flex-shrink:0;gap:5px}@media (width<=520px){.phrasebook-generate{width:100%}.phrasebook-generate input{flex:1;width:auto;min-width:0}}.phrasebook-cats{flex-wrap:wrap;gap:6px;display:flex}.phrasebook-cat{border-radius:var(--radius-full);border:1px solid var(--border-subtle);background:var(--bg-input);color:var(--text-secondary);font-size:var(--fs-xs);cursor:pointer;padding:3px 12px}.phrasebook-cat.is-active{background:var(--primary-solid);border-color:var(--primary);color:#fff}.phrasebook-list{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:8px;display:grid}.phrase-row{border-radius:var(--radius-sm);background:var(--bg-elevated);border:1px solid var(--border-subtle);justify-content:space-between;align-items:flex-start;gap:8px;padding:10px 12px;display:flex}.phrase-row.is-result{border-color:var(--border-active);background:var(--primary-light)}.phrase-text{overflow-wrap:anywhere;flex-direction:column;gap:2px;min-width:0;display:flex}.phrase-english{font-size:var(--fs-xs);color:var(--text-muted)}.phrase-local{font-size:var(--fs-lg);color:var(--text-primary);font-weight:600}.phrase-romanized{font-size:var(--fs-xs);color:var(--text-secondary);font-style:italic}.phrase-actions{flex-shrink:0;align-items:center;gap:2px;display:flex}.phrase-actions .btn-icon{width:30px;height:30px}.phrase-actions .btn{gap:4px;margin-left:4px}.prep-view-toggle{background:var(--bg-elevated);border:1px solid var(--border-subtle);border-radius:var(--radius-full);box-shadow:var(--shadow-xs);scrollbar-width:none;align-items:center;gap:4px;padding:4px;display:inline-flex;overflow-x:auto}.prep-view-toggle::-webkit-scrollbar{display:none}.prep-subtab-pill{border-radius:var(--radius-full);min-height:36px;color:var(--text-secondary);font-size:var(--fs-sm);cursor:pointer;white-space:nowrap;transition:all var(--transition-fast);-webkit-user-select:none;user-select:none;background:0 0;border:1px solid #0000;align-items:center;gap:6px;padding:6px 14px;font-weight:600;display:inline-flex}.prep-subtab-pill:hover{color:var(--text-primary);background:var(--bg-card-hover)}.prep-subtab-pill.active{background:var(--bg-card);color:var(--primary);border-color:var(--border-subtle);box-shadow:var(--shadow-xs)}.prep-subtab-pill.active svg{color:var(--primary)}.prep-subtab-pill .prep-subtab-badge{font-size:var(--fs-2xs);border-radius:var(--radius-full);background:var(--bg-card-hover);color:var(--text-muted);padding:1px 6px;font-weight:700;line-height:1.3}.prep-subtab-pill.active .prep-subtab-badge{color:var(--primary);background:#ff385c1a}.prep-subtab-pill .prep-subtab-badge.is-complete{color:var(--accent-emerald);background:#10b98126}.prep-subtab-pill .prep-subtab-badge.is-alert{color:var(--accent-coral);background:#ef444426}.prep-subtabs-bar{scrollbar-width:none;-ms-overflow-style:none}.prep-subtabs-bar::-webkit-scrollbar{display:none}.prep-subtab-btn{border-radius:var(--radius-md);min-height:38px;color:var(--text-secondary);font-size:var(--fs-sm);cursor:pointer;white-space:nowrap;transition:all var(--transition-fast);-webkit-user-select:none;user-select:none;background:0 0;border:1px solid #0000;align-items:center;gap:7px;padding:7px 14px;font-weight:600;display:inline-flex}.prep-subtab-btn:hover{color:var(--text-primary);background:var(--bg-card-hover)}.prep-subtab-btn.active{background:var(--bg-card-hover);color:var(--text-primary);border-color:var(--border-medium);box-shadow:var(--shadow-sm)}.prep-subtab-btn.active svg{color:var(--primary)}.prep-subtab-badge{font-size:var(--fs-2xs);border-radius:var(--radius-full);background:var(--bg-elevated);color:var(--text-muted);padding:1px 7px;font-weight:700;line-height:1.3}.prep-subtab-badge.is-complete{color:var(--accent-emerald);background:#10b98126}.prep-subtab-badge.is-alert{color:var(--accent-coral);background:#ef444426;align-items:center;gap:3px;display:inline-flex}.note-card{transition:transform var(--transition-fast), box-shadow var(--transition-fast), border-color var(--transition-fast)}.note-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.faq-panel{border-radius:var(--radius-lg,16px);background:var(--bg-card);border:1px solid var(--border-card);flex-direction:column;gap:16px;padding:18px;display:flex}.faq-header{border-bottom:1px solid var(--border-subtle);flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;padding-bottom:14px;display:flex}.faq-header-info h3{font-size:var(--fs-xl);color:var(--text-primary);align-items:center;gap:8px;margin:0 0 4px;font-weight:700;display:flex}.faq-header-info p{font-size:var(--fs-sm);color:var(--text-secondary);max-width:600px;margin:0;line-height:1.4}.faq-error-notice{border-radius:var(--radius-sm);color:var(--accent-coral);font-size:var(--fs-xs);background:#ef44441a;border:1px solid #ef444440;justify-content:space-between;align-items:center;gap:8px;padding:8px 12px;display:flex}.faq-error-notice button{color:inherit;cursor:pointer;background:0 0;border:none;padding:2px}.faq-ask-box{align-items:center;gap:8px;display:flex}.faq-ask-input-wrap{flex:1;align-items:center;display:flex;position:relative}.faq-ask-search-icon{color:var(--text-muted);pointer-events:none;position:absolute;left:12px}.faq-ask-input{width:100%;height:40px;font-size:var(--fs-sm);border-radius:var(--radius-md,10px)!important;padding-left:36px!important;padding-right:32px!important}.faq-ask-clear{color:var(--text-muted);cursor:pointer;background:0 0;border:none;padding:4px;position:absolute;right:10px}.faq-ask-btn{height:40px;font-weight:600;font-size:var(--fs-sm);border-radius:var(--radius-md,10px);flex-shrink:0;align-items:center;gap:6px;padding:0 16px;display:inline-flex}.faq-suggestions-section{background:var(--bg-elevated);border:1px solid var(--border-subtle);border-radius:var(--radius-md,12px);flex-direction:column;gap:8px;padding:12px 14px;display:flex}.faq-suggestions-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:6px;display:flex}.faq-suggestions-title{font-size:var(--fs-xs);color:var(--text-primary);align-items:center;gap:6px;font-weight:700;display:flex}.faq-suggestions-subtitle{font-size:var(--fs-2xs);color:var(--text-muted)}.faq-suggestions-scroll{gap:8px;padding-bottom:4px;display:flex;overflow-x:auto}.faq-suggestion-chip{border-radius:var(--radius-full);background:var(--bg-card);border:1px solid var(--border-subtle);color:var(--text-secondary);font-size:var(--fs-xs);cursor:pointer;white-space:nowrap;transition:all var(--transition-fast,.15s ease);align-items:center;gap:6px;padding:5px 10px;font-weight:600;display:inline-flex}.faq-suggestion-chip:hover{background:var(--bg-card-hover);border-color:var(--border-medium);color:var(--text-primary);transform:translateY(-1px)}.faq-suggestion-chip .chip-plus{color:var(--primary)}.faq-filter-bar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.faq-categories{flex-wrap:wrap;gap:6px;display:flex}.faq-cat-btn{border-radius:var(--radius-full);background:var(--bg-elevated);border:1px solid var(--border-subtle);color:var(--text-secondary);font-size:var(--fs-xs);cursor:pointer;transition:all var(--transition-fast,.15s ease);align-items:center;gap:5px;padding:4px 12px;font-weight:600;display:inline-flex}.faq-cat-btn:hover{background:var(--bg-card-hover);color:var(--text-primary)}.faq-cat-btn.active{background:var(--primary);border-color:var(--primary);color:#fff}.faq-cat-btn .cat-count{font-size:var(--fs-2xs);border-radius:var(--radius-full);background:#0003;padding:1px 5px;font-weight:700}.faq-search-inline{align-items:center;display:flex;position:relative}.faq-search-inline input{border-radius:var(--radius-full);height:30px;font-size:var(--fs-xs);background:var(--bg-input);border:1px solid var(--border-subtle);color:var(--text-primary);width:160px;padding-left:26px;padding-right:22px;transition:width .2s}.faq-search-inline input:focus{width:200px}.faq-search-inline svg{pointer-events:none;position:absolute;left:8px}.faq-search-inline button{color:var(--text-muted);cursor:pointer;background:0 0;border:none;position:absolute;right:6px}.faq-list{flex-direction:column;gap:10px;display:flex}.faq-card{border-radius:var(--radius-md,12px);background:var(--bg-elevated);border:1px solid var(--border-subtle);transition:border-color var(--transition-fast,.15s ease), box-shadow var(--transition-fast,.15s ease);overflow:hidden}.faq-card:hover{border-color:var(--border-medium)}.faq-card.is-expanded{border-color:var(--border-card);box-shadow:var(--shadow-sm)}.faq-card-header{cursor:pointer;-webkit-user-select:none;user-select:none;transition:background var(--transition-fast,.15s ease);background:0 0;flex-direction:column;align-items:stretch;gap:10px;padding:14px 16px;display:flex}.faq-card-header:hover{background:#ffffff05}.faq-card-top-bar{justify-content:space-between;align-items:center;gap:8px;width:100%;display:flex}.faq-category-badge{font-size:var(--fs-2xs);border-radius:var(--radius-full,9999px);white-space:nowrap;text-transform:uppercase;letter-spacing:.03em;flex-shrink:0;align-items:center;gap:5px;padding:3px 8px;font-weight:700;line-height:1;display:inline-flex}.faq-category-badge svg{flex-shrink:0}.faq-question-title{font-size:var(--fs-md);color:var(--text-primary);word-break:break-word;width:100%;margin:0;font-weight:600;line-height:1.42}.faq-card-header-actions{flex-shrink:0;align-items:center;gap:5px;display:flex}.faq-action-btn{border-radius:var(--radius-full,9999px);background:var(--bg-surface,#ffffff0a);border:1px solid var(--border-subtle,#ffffff14);width:28px;height:28px;color:var(--text-muted);cursor:pointer;transition:all var(--transition-fast,.15s ease);justify-content:center;align-items:center;display:inline-flex}.faq-action-btn:hover:not(:disabled){background:var(--bg-card-hover,#ffffff1a);border-color:var(--border-medium,#ffffff29);color:var(--text-primary);transform:translateY(-1px)}.faq-action-btn:active:not(:disabled){transform:translateY(0)}.faq-action-btn:disabled{opacity:.5;cursor:not-allowed}.faq-action-btn.is-delete:hover:not(:disabled){color:var(--accent-coral,#f87171);background:#ef444426;border-color:#ef44444d}.faq-toggle-btn{border-radius:var(--radius-full,9999px);background:var(--bg-surface,#ffffff0a);border:1px solid var(--border-subtle,#ffffff14);width:28px;height:28px;color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast,.15s ease);justify-content:center;align-items:center;display:inline-flex}.faq-toggle-btn:hover{background:var(--bg-card-hover,#ffffff1a);color:var(--text-primary);transform:translateY(-1px)}.faq-card-body{border-top:1px solid var(--border-subtle);margin-top:-2px;padding:12px 16px 14px}.faq-answer-content{font-size:var(--fs-base);color:var(--text-primary);line-height:1.55}.faq-answer-content p{margin:0 0 8px}.faq-answer-content p:last-child{margin-bottom:0}.faq-loading-answer{font-size:var(--fs-sm);color:var(--text-muted);align-items:center;gap:8px;padding:10px 0;display:flex}.faq-footer-meta{border-top:1px dashed var(--border-subtle);font-size:var(--fs-2xs);color:var(--text-muted);justify-content:space-between;align-items:center;margin-top:12px;padding-top:8px;display:flex}.faq-source-badge{color:var(--text-secondary);align-items:center;gap:4px;font-weight:600;display:inline-flex}.faq-verify-row{font-size:var(--fs-2xs);flex-wrap:wrap;align-items:center;gap:4px 12px;margin-top:8px;display:flex}.faq-verify-label{color:var(--text-muted);font-weight:600}.faq-verify-link{color:var(--primary);align-items:center;gap:3px;font-weight:600;text-decoration:none;display:inline-flex}.faq-verify-link:hover{text-decoration:underline}.faq-verify-hint{color:var(--accent-emerald);flex-basis:100%;align-items:center;gap:4px;font-weight:600;display:inline-flex}.faq-empty-state{text-align:center;background:var(--bg-elevated);border:1px dashed var(--border-subtle);border-radius:var(--radius-md,12px);padding:36px 16px}.faq-empty-icon{border-radius:var(--radius-full);background:var(--bg-card);width:54px;height:54px;color:var(--primary);justify-content:center;align-items:center;margin-bottom:12px;display:inline-flex}.faq-empty-state h4{font-size:var(--fs-lg);margin:0 0 6px;font-weight:700}.faq-empty-state p{max-width:440px;font-size:var(--fs-sm);color:var(--text-secondary);margin:0 auto}.faq-edit-form{padding:14px 16px}.check-in{flex-direction:column;gap:6px;display:flex}.check-in-btn{align-self:flex-start;gap:6px}.check-in-here{border-radius:var(--radius-sm);background:var(--bg-card);border:1px solid #10b98173;align-items:center;gap:10px;padding:10px 12px;display:flex}.check-in-here>svg{color:var(--accent-emerald);flex-shrink:0}.check-in-here .today-label{color:var(--accent-emerald)}.check-in-here-text{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.check-in-here .btn{flex-shrink:0;gap:5px}.check-in-undo-actions{flex-shrink:0;gap:4px;display:flex}.check-in-picker{flex-direction:column;gap:16px;display:flex}.check-in-group{flex-direction:column;gap:6px;display:flex}.check-in-option{text-align:left;border-radius:var(--radius-sm);background:var(--bg-card);border:1px solid var(--border-subtle);width:100%;color:var(--text-primary);cursor:pointer;align-items:center;gap:10px;padding:10px 12px;display:flex}.check-in-option:hover,.check-in-option:focus-visible{border-color:var(--accent-emerald)}.check-in-option>svg{color:var(--text-muted);flex-shrink:0}.check-in-option-main{flex-direction:column;gap:2px;min-width:0;display:flex}.check-in-option-name{font-size:var(--fs-base);text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.check-in-option-meta{font-size:var(--fs-xs);color:var(--text-secondary)}.check-in-custom{flex-wrap:wrap;gap:6px;display:flex}.check-in-custom input{flex:180px;min-width:0}.check-in-custom select{flex:0 150px}.check-in-attribution{font-size:var(--fs-2xs);color:var(--text-muted)}.ai-plan{flex-direction:column;gap:16px;display:flex}.ai-plan-gate{text-align:center;color:var(--text-secondary);flex-direction:column;align-items:center;gap:10px;padding:28px 16px;display:flex}.ai-plan-gate h3{font-size:var(--fs-xl);color:var(--text-primary);margin:0}.ai-plan-gate p{max-width:380px;font-size:var(--fs-base);margin:0}.ai-plan-gate-actions{gap:10px;margin-top:6px;display:flex}.ai-plan-context{border-radius:var(--radius-md);border:1px solid var(--border-active);background:var(--primary-light);padding:12px 14px}.ai-plan-context-title{font-size:var(--fs-sm);color:var(--primary);align-items:center;gap:6px;margin-bottom:8px;font-weight:700;display:flex}.ai-plan-context ul{gap:5px;margin:0;padding:0;list-style:none;display:grid}.ai-plan-context li{font-size:var(--fs-sm);color:var(--text-secondary);align-items:flex-start;gap:7px;display:flex}.ai-plan-context li svg{color:var(--text-muted);flex-shrink:0;margin-top:2px}.ai-plan-days{grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:6px;display:grid}.ai-plan-day-chip{border-radius:var(--radius-sm);border:1px solid var(--border-subtle);background:var(--bg-input);color:var(--text-secondary);font:inherit;text-align:left;cursor:pointer;flex-direction:column;align-items:flex-start;gap:2px;padding:7px 10px;display:flex}.ai-plan-day-chip.is-selected{border-color:var(--primary);background:var(--primary-light);color:var(--primary)}.ai-plan-day-chip:disabled{cursor:not-allowed;opacity:.5}.ai-plan-day-name{font-size:var(--fs-xs);font-weight:700}.ai-plan-day-free{font-size:var(--fs-2xs);color:var(--text-muted)}.ai-plan-segment{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;display:grid}.ai-plan-segment button{border-radius:var(--radius-sm);border:1px solid var(--border-subtle);background:var(--bg-input);color:var(--text-secondary);font:inherit;text-align:left;cursor:pointer;flex-direction:column;gap:2px;padding:8px 10px;display:flex}.ai-plan-segment button strong{font-size:var(--fs-sm)}.ai-plan-segment button span{font-size:var(--fs-2xs);color:var(--text-muted)}.ai-plan-segment button.is-selected{border-color:var(--primary);background:var(--primary-light);color:var(--primary)}.ai-plan-interests{flex-wrap:wrap;gap:6px;display:flex}.ai-plan-error{border-radius:var(--radius-sm);background:var(--accent-coral-light);color:var(--accent-coral);font-size:var(--fs-sm);padding:8px 12px}.ai-plan-go{justify-content:center}.ai-plan-lead{font-size:var(--fs-sm);color:var(--text-secondary);margin:0}.ai-plan-review{flex-direction:column;gap:12px;max-height:min(56vh,520px);padding-right:4px;display:flex;overflow-y:auto}.ai-plan-day{border:1px solid var(--border-subtle);border-radius:var(--radius-md);overflow:hidden}.ai-plan-day-head{background:var(--bg-elevated);font-size:var(--fs-xs);color:var(--text-muted);flex-wrap:wrap;align-items:center;gap:4px 12px;padding:8px 12px;display:flex}.ai-plan-day-head strong{font-size:var(--fs-sm);color:var(--text-primary)}.ai-plan-day-head span{align-items:center;gap:4px;display:inline-flex}.ai-plan-rows{margin:0;padding:0;list-style:none}.ai-plan-row{border-top:1px solid var(--border-subtle);font-size:var(--fs-sm);grid-template-columns:22px 82px 18px minmax(0,1fr) auto;align-items:start;gap:8px;padding:8px 12px;display:grid}.ai-plan-row.is-existing{color:var(--text-muted)}.ai-plan-row.is-existing .ai-plan-time{grid-column:2}.ai-plan-row.is-idea:not(.is-checked) .ai-plan-title{opacity:.55}.ai-plan-check input{width:16px;height:16px;accent-color:var(--primary);margin:1px 0 0}.ai-plan-time{font-variant-numeric:tabular-nums;color:var(--text-secondary);font-weight:700}.ai-plan-icon{color:var(--text-muted);margin-top:1px;display:inline-flex}.ai-plan-title{min-width:0;color:var(--text-primary);overflow-wrap:anywhere;flex-direction:column;gap:2px;font-weight:600;display:flex}.ai-plan-row.is-existing .ai-plan-title{color:var(--text-muted);font-weight:500}.ai-plan-meta{font-size:var(--fs-xs);color:var(--text-muted);flex-wrap:wrap;align-items:center;gap:3px;font-weight:500;display:inline-flex}.ai-plan-row.is-existing .ai-plan-meta{display:inline}.ai-plan-why{font-size:var(--fs-xs);color:var(--text-secondary);font-weight:400}.ai-plan-tag{font-size:var(--fs-2xs);text-transform:uppercase;letter-spacing:.03em;color:var(--text-muted);font-weight:700}.ai-plan-swap{font-size:var(--fs-xs);gap:4px}.ai-plan-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}@media (width<=520px){.ai-plan-row{grid-template-columns:22px minmax(0,1fr) auto}.ai-plan-row .ai-plan-icon{display:none}.ai-plan-row .ai-plan-time,.ai-plan-row .ai-plan-title{grid-column:2}.ai-plan-row .ai-plan-swap,.ai-plan-row .ai-plan-tag{grid-area:1/3}.ai-plan-segment{grid-template-columns:minmax(0,1fr)}}.destination-pin{min-height:18px;font-size:var(--fs-xs);flex-wrap:wrap;align-items:center;gap:4px 10px;margin-top:6px;display:flex}.destination-pin-place,.destination-pin-muted,.destination-pin-warning{align-items:center;gap:4px;display:inline-flex}.destination-pin-place{color:var(--text-secondary);font-weight:600}.destination-pin-muted{color:var(--text-muted);font-weight:500}.destination-pin-warning{color:var(--accent-amber);flex-wrap:wrap}.destination-pin-link{color:var(--primary);font:inherit;cursor:pointer;background:0 0;border:none;padding:0;font-weight:600}.destination-pin-options{flex-direction:column;gap:4px;margin-top:6px;display:flex}.destination-pin-option{border-radius:var(--radius-sm);border:1px solid var(--border-subtle);background:var(--bg-input);color:var(--text-secondary);font:inherit;font-size:var(--fs-xs);text-align:left;cursor:pointer;align-items:center;gap:5px;padding:6px 10px;font-weight:600;display:flex}.destination-pin-option:hover{border-color:var(--primary);color:var(--text-primary)}.modal-sheet.settings-modal{height:min(720px,90vh);overflow:hidden}.settings-modal .settings-tabs{flex-shrink:0}.settings-modal .modal-body{flex:1;min-height:0;overflow-y:auto}@media (width<=640px){.modal-sheet.settings-modal{height:90vh}}.attachment-scan-btn{align-self:flex-start;gap:6px;margin-top:8px}.doc-scan{gap:14px}.doc-scan-pick{text-align:center;color:var(--text-secondary);flex-direction:column;align-items:center;gap:12px;padding:24px 12px;display:flex}.doc-scan-pick p{max-width:360px;font-size:var(--fs-base);margin:0}.doc-scan-pick-actions,.doc-scan-actions{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.doc-scan-actions{justify-content:flex-end}.doc-scan-hint{font-size:var(--fs-sm);color:var(--text-secondary);align-items:center;gap:6px;margin:0;display:flex}.doc-scan-note{border-radius:var(--radius-sm);color:var(--accent-amber);font-size:var(--fs-sm);background:#f59e0b1f;padding:8px 12px}.doc-scan-saved{font-size:var(--fs-sm);color:var(--accent-emerald);align-items:center;gap:6px;font-weight:600;display:flex}.doc-scan-editor{border-radius:var(--radius-sm);touch-action:none;-webkit-user-select:none;user-select:none;background:#000;margin:0 auto;position:relative;overflow:hidden}.doc-scan-editor img,.doc-scan-editor svg{width:100%;height:100%;position:absolute;inset:0}.doc-scan-editor img{object-fit:fill;pointer-events:none}.doc-scan-editor svg{pointer-events:none}.doc-scan-shade{fill:#00000073}.doc-scan-outline{fill:none;stroke:var(--primary-solid,#e00b41)}.doc-scan-handle{background:var(--primary-solid,#e00b41);cursor:grab;touch-action:none;border:3px solid #fff;border-radius:50%;width:28px;height:28px;margin:-14px 0 0 -14px;padding:0;position:absolute;box-shadow:0 1px 6px #00000080}.doc-scan-handle:focus-visible{outline-offset:2px;outline:3px solid #fff}.doc-scan-pages{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:12px;display:grid}.doc-scan-page{flex-direction:column;gap:8px;margin:0;display:flex}.doc-scan-page img{object-fit:contain;border-radius:var(--radius-sm);border:1px solid var(--border-subtle);background:var(--bg-input);width:100%;max-height:320px}.doc-scan-page figcaption{flex-direction:column;gap:6px;display:flex}.doc-scan-modes,.doc-scan-split{flex-wrap:wrap;align-items:center;gap:5px;display:flex}.doc-scan-page-tools{gap:4px;display:flex}.doc-scan-toggle{font-size:var(--fs-sm);color:var(--text-secondary);cursor:pointer;align-items:center;gap:8px;display:flex}.doc-scan-toggle input{width:16px;height:16px;accent-color:var(--primary)}.doc-scan-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.doc-scan-fields label,.doc-scan-expense label{font-size:var(--fs-xs);color:var(--text-secondary);flex-direction:column;gap:4px;font-weight:600;display:flex}.doc-scan-expense{border-top:1px solid var(--border-subtle);flex-direction:column;gap:10px;padding-top:10px;display:flex}.doc-scan-split>span{font-size:var(--fs-xs);color:var(--text-secondary);margin-right:4px;font-weight:600}@media (width<=480px){.doc-scan-fields{grid-template-columns:minmax(0,1fr)}}.route-opt{gap:14px}.route-opt-days{scrollbar-width:thin;gap:6px;padding-bottom:4px;display:flex;overflow-x:auto}.route-opt-day{border-radius:var(--radius-sm);border:1px solid var(--border-subtle);background:var(--bg-input);color:var(--text-secondary);font:inherit;cursor:pointer;flex-direction:column;flex-shrink:0;align-items:flex-start;gap:1px;padding:6px 10px;display:flex}.route-opt-day strong{font-size:var(--fs-xs)}.route-opt-day span{font-size:var(--fs-2xs);color:var(--text-muted)}.route-opt-day.is-selected{border-color:var(--primary);background:var(--primary-light);color:var(--primary)}.route-opt-settings{border-radius:var(--radius-md);border:1px solid var(--border-subtle);background:var(--bg-card);flex-direction:column;gap:10px;padding:12px 14px;display:flex}.route-opt-stay{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 16px;display:flex}.route-opt-check{font-size:var(--fs-sm);color:var(--text-primary);cursor:pointer;align-items:center;gap:7px;display:flex}.route-opt-check input{width:16px;height:16px;accent-color:var(--primary)}.route-opt-times{gap:10px;display:flex}.route-opt-times label{font-size:var(--fs-xs);color:var(--text-secondary);align-items:center;gap:6px;font-weight:600;display:flex}.route-opt-times input{height:30px;font-size:var(--fs-xs);padding:2px 6px}.route-opt-modes{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.route-opt-modes>span{font-size:var(--fs-xs);color:var(--text-secondary);margin-right:4px;font-weight:600}.route-opt-modes .item-span-chip{align-items:center;gap:4px;display:inline-flex}.route-opt-muted{font-size:var(--fs-xs);color:var(--text-muted);align-items:flex-start;gap:6px;margin:0;display:flex}.route-opt-muted svg{flex-shrink:0;margin-top:2px}.route-opt-banner{border-radius:var(--radius-md);font-size:var(--fs-sm);align-items:flex-start;gap:8px;padding:10px 12px;display:flex}.route-opt-banner svg{flex-shrink:0;margin-top:2px}.route-opt-banner span{display:inline}.route-opt-banner.is-good{color:var(--accent-emerald);background:#10b9811f}.route-opt-banner.is-info{color:var(--text-secondary);background:#38bdf81a}.route-opt-banner.is-warning{color:var(--accent-amber);background:#f59e0b1f}.route-opt-timeline{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.route-opt-row{border-radius:var(--radius-sm);border:1px solid var(--border-subtle);background:var(--bg-elevated);font-size:var(--fs-sm);color:var(--text-secondary);grid-template-columns:92px 16px minmax(0,1fr);align-items:center;gap:8px;padding:8px 12px;display:grid}.route-opt-row.is-locked{background:var(--bg-input)}.route-opt-row.is-stay{background:0 0;border-style:dashed}.route-opt-time{font-variant-numeric:tabular-nums;font-weight:700}.route-opt-title{min-width:0;color:var(--text-primary);flex-wrap:wrap;align-items:center;gap:6px;font-weight:600;display:flex}.route-opt-tag{background:var(--bg-card);border:1px solid var(--border-subtle);font-size:var(--fs-2xs);color:var(--text-muted);border-radius:999px;padding:1px 7px;font-weight:700}.route-opt-tag.is-moved{border-color:var(--primary);color:var(--primary)}.route-opt-leg{font-size:var(--fs-2xs);color:var(--text-muted);padding:3px 0 3px 112px}@media (width<=520px){.route-opt-row{grid-template-columns:78px 16px minmax(0,1fr)}.route-opt-leg{padding-left:98px}}.route-opt-lock{width:24px;height:24px;color:var(--text-muted);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:6px;justify-content:center;align-items:center;margin:-4px;padding:0;display:inline-flex}.route-opt-lock:hover:not(:disabled){border-color:var(--border-subtle);color:var(--text-primary)}.route-opt-lock.is-locked{color:var(--accent-amber)}.route-opt-lock:disabled{cursor:default}.sights{flex-direction:column;gap:14px;display:flex}.sights-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.sights-head h2{font-size:var(--fs-2xl);margin:0 0 4px}.sights-muted{font-size:var(--fs-sm);color:var(--text-muted);margin:0}.sights-muted a{color:inherit;text-decoration:underline}.sights-note{border-radius:var(--radius-sm);color:var(--accent-amber);font-size:var(--fs-sm);background:#f59e0b1f;padding:8px 12px}.sights-empty{text-align:center;color:var(--text-secondary);flex-direction:column;align-items:center;gap:12px;padding:48px 16px;display:flex}.sights-empty p{max-width:420px;margin:0}.sights-tools{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.sights-search{border-radius:var(--radius-sm);border:1px solid var(--border-subtle);background:var(--bg-input);min-width:200px;max-width:340px;color:var(--text-muted);flex:1;align-items:center;gap:6px;padding:0 10px;display:flex}.sights-search input{background:0 0;border:none;flex:1;min-width:0;height:34px;padding:0}.sights-sort{gap:6px;display:flex}.sights-layout{grid-template-columns:minmax(0,1fr) minmax(280px,40%);align-items:start;gap:16px;display:grid}.sights-list{flex-direction:column;gap:12px;margin:0;padding:0;list-style:none;display:flex}.sights-map-wrap{border-radius:var(--radius-md);border:1px solid var(--border-subtle);height:min(70vh,620px);position:sticky;top:12px;overflow:hidden}.sights-map{width:100%;height:100%}.sights-map-credit{z-index:500;color:#333;font-size:var(--fs-2xs);background:#fffc;border-radius:4px;padding:1px 6px;position:absolute;bottom:4px;right:6px}.sight-pin{background:var(--primary-solid,#e00b41);color:#fff;width:26px;height:26px;font-size:var(--fs-2xs);border:2px solid #fff;border-radius:50%;justify-content:center;align-items:center;font-weight:700;display:flex;box-shadow:0 1px 4px #0006}.sight-pin.is-planned{background:var(--accent-emerald)}.sight-pin.is-stay{background:var(--cat-hotel);font-size:var(--fs-base)}.sight-card{border-radius:var(--radius-md);border:1px solid var(--border-card);background:var(--bg-card);box-shadow:var(--shadow-xs);transition:border-color var(--transition-fast);grid-template-columns:200px minmax(0,1fr);display:grid;overflow:hidden}.sight-card.is-focused{border-color:var(--primary)}.sight-photo{background:var(--bg-input);min-height:160px;position:relative}.sight-photo img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.sight-photo-empty{color:var(--text-muted);justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.sight-photo-credit{color:#ffffffe6;font-size:var(--fs-2xs);white-space:nowrap;text-overflow:ellipsis;background:linear-gradient(#0000,#000000b3);padding:3px 6px;text-decoration:none;position:absolute;bottom:0;left:0;right:0;overflow:hidden}.sight-photo-dots{justify-content:center;gap:5px;display:flex;position:absolute;top:8px;left:0;right:0}.sight-photo-dots button{cursor:pointer;background:#ffffff59;border:1px solid #fff;border-radius:50%;width:8px;height:8px;padding:0}.sight-photo-dots button.is-active{background:#fff}.sight-body{flex-direction:column;gap:6px;min-width:0;padding:12px 14px;display:flex}.sight-title-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.sight-title-row h3{font-size:var(--fs-lg);margin:0}.sight-badge{color:var(--accent-emerald);font-size:var(--fs-2xs);background:#10b98124;border-radius:999px;align-items:center;gap:3px;padding:1px 8px;font-weight:700;display:inline-flex}.sight-summary{font-size:var(--fs-sm);color:var(--text-secondary);-webkit-line-clamp:3;-webkit-box-orient:vertical;margin:0;line-height:1.5;display:-webkit-box;overflow:hidden}.sight-summary.is-open{display:block}.sight-facts{font-size:var(--fs-xs);color:var(--text-secondary);flex-wrap:wrap;gap:4px 14px;display:flex}.sight-facts span{align-items:flex-start;gap:5px;display:inline-flex}.sight-facts svg{color:var(--text-muted);flex-shrink:0;margin-top:2px}.sight-more{flex-direction:column;gap:10px;padding-top:6px;display:flex}.sight-tips{border-radius:var(--radius-sm);background:var(--primary-light);font-size:var(--fs-sm);grid-template-columns:auto minmax(0,1fr);gap:4px 12px;margin:0;padding:10px 12px;display:grid}.sight-tips-head{font-size:var(--fs-xs);color:var(--primary);grid-column:1/-1;align-items:center;gap:5px;font-weight:700;display:flex}.sight-tips dt{color:var(--text-secondary);font-weight:700}.sight-tips dd{color:var(--text-primary);margin:0}.sight-links{font-size:var(--fs-xs);flex-wrap:wrap;gap:6px 14px;display:flex}.sight-links a{color:var(--primary);align-items:center;gap:4px;font-weight:600;text-decoration:none;display:inline-flex}.sight-actions{flex-wrap:wrap;gap:6px;margin-top:auto;padding-top:4px;display:flex}@media (width<=900px){.sights-layout{grid-template-columns:minmax(0,1fr)}.sights-map-wrap{order:-1;height:260px;position:relative;top:0}}@media (width<=560px){.sight-card{grid-template-columns:minmax(0,1fr)}.sight-photo{min-height:180px}.sights-head{flex-direction:column}}.sight-tips-refresh{color:var(--primary);font:inherit;font-size:var(--fs-2xs);cursor:pointer;background:0 0;border:none;align-items:center;gap:3px;margin-left:auto;padding:0;font-weight:600;display:inline-flex}.sight-price-home{color:var(--text-primary);font-weight:700}.sight-travel{flex-wrap:wrap;align-items:center;gap:4px 10px;display:inline-flex}.sight-travel-mode{align-items:center;gap:4px;display:inline-flex}.sight-travel-km{color:var(--text-muted)}.sight-card-number{z-index:1;cursor:pointer;padding:0;position:absolute;top:8px;left:8px}.map-wrapper{border-radius:var(--radius-lg);border:1px solid var(--border-card);width:100%;height:480px;box-shadow:var(--shadow-md);z-index:1;isolation:isolate;contain:paint;position:relative;overflow:hidden}@media (width<=640px){.map-wrapper{height:380px}}@media (width>=1024px){.map-wrapper{height:580px}}.leaflet-container{width:100%;height:100%;background-color:var(--bg-subtle)!important;font-family:var(--font-body)!important}[data-theme=dark] .leaflet-tile-pane,:root:not([data-theme=light]) .leaflet-tile-pane{filter:brightness(.7)invert()contrast(1.1)hue-rotate(200deg)saturate(.35)}.custom-map-pin{cursor:pointer;border:2px solid #fff;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;transition:transform .2s cubic-bezier(.16,1,.3,1);display:flex;box-shadow:0 4px 14px #00000073}.custom-map-pin:hover{transform:scale(1.18);z-index:1000!important}.custom-map-pin.is-passed-pin,.split-custom-map-pin.is-passed-pin{opacity:.45!important;filter:grayscale(50%)contrast(.9)!important;border-color:#ffffff80!important;box-shadow:0 2px 6px #00000040!important}.custom-map-pin.is-passed-pin:hover,.split-custom-map-pin.is-passed-pin:hover{opacity:.9!important;filter:none!important;transform:translate(-50%,-50%)scale(1.15)!important}.split-custom-map-pin.is-passed-pin:hover{transform:scale(1.15)!important}.custom-map-pin.is-next-pin{animation:2.2s ease-in-out infinite next-pin-pulse;box-shadow:0 0 0 4px var(--primary), 0 6px 20px #ff385ca6!important;z-index:1000!important;border:2.5px solid #fff!important;transform:translate(-50%,-50%)scale(1.18)!important}.split-custom-map-pin.is-next-pin{animation:2.2s ease-in-out infinite next-pin-pulse;box-shadow:0 0 0 4px var(--primary), 0 6px 20px #ff385ca6!important;z-index:1000!important;border:2.5px solid #fff!important;transform:scale(1.22)!important}.custom-map-pin.is-current-pin{animation:2.2s ease-in-out infinite current-pin-pulse;box-shadow:0 0 0 4px var(--accent-emerald,#10b981), 0 6px 20px #10b981a6!important;z-index:1000!important;border:2.5px solid #fff!important;transform:translate(-50%,-50%)scale(1.18)!important}.split-custom-map-pin.is-current-pin{animation:2.2s ease-in-out infinite current-pin-pulse;box-shadow:0 0 0 4px var(--accent-emerald,#10b981), 0 6px 20px #10b981a6!important;z-index:1000!important;border:2.5px solid #fff!important;transform:scale(1.22)!important}.custom-map-pin-status-tag{font-size:var(--fs-2xs);text-transform:uppercase;letter-spacing:.05em;background:var(--primary);color:#fff;white-space:nowrap;pointer-events:none;border:1px solid #ffffff80;border-radius:9999px;padding:1px 5px;font-weight:700;line-height:1.1;position:absolute;top:-12px;left:50%;transform:translate(-50%);box-shadow:0 2px 6px #00000059}.custom-map-pin-status-tag.is-current{background:var(--accent-emerald,#10b981)}.leaflet-popup-content-wrapper{overflow:hidden;background:var(--bg-card)!important;-webkit-backdrop-filter:blur(16px)!important;border:1px solid var(--border-card)!important;border-radius:var(--radius-md)!important;color:var(--text-primary)!important;box-shadow:var(--shadow-lg)!important;padding:0!important}.leaflet-popup-content{margin:14px 16px!important;line-height:1.4!important}.leaflet-popup-tip{background:var(--bg-card)!important;border:1px solid var(--border-card)!important}.leaflet-popup-close-button{color:var(--text-muted)!important;padding:6px 8px!important}.leaflet-popup-close-button:hover{color:var(--text-primary)!important}.map-popup-header{align-items:center;gap:8px;margin-bottom:6px;display:flex}.map-popup-title{font-family:var(--font-display);font-size:var(--fs-base);color:var(--text-primary);font-weight:700}.map-popup-time{font-size:var(--fs-xs);color:var(--text-muted);font-weight:500}.map-popup-location{font-size:var(--fs-xs);color:var(--text-secondary);margin-top:4px}.map-route-tooltip{background:var(--bg-card)!important;color:var(--text-primary)!important;border:1px solid var(--border-card)!important;border-radius:var(--radius-sm)!important;font-family:var(--font-body)!important;font-size:var(--fs-xs)!important;box-shadow:var(--shadow-md)!important;-webkit-backdrop-filter:blur(12px)!important;padding:6px 10px!important;font-weight:600!important}.map-route-summary-pill{background:var(--bg-card);border:1px solid var(--border-card);border-radius:var(--radius-sm);font-size:var(--fs-xs);color:var(--text-primary);box-shadow:var(--shadow-xs);transition:all var(--transition-fast);align-items:center;gap:7px;padding:5px 10px;font-weight:600;display:inline-flex}.map-route-summary-pill:hover{border-color:var(--border-strong)}.route-calculating-dot{background:#38bdf8;border-radius:50%;width:6px;height:6px;animation:1.2s ease-in-out infinite pulse-dot;display:inline-block}.map-view-container{flex-direction:column;gap:14px;display:flex}.map-top-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.map-title-block{flex-direction:column;gap:2px;display:flex}.map-title{font-size:var(--fs-2xl);color:var(--text-primary);align-items:center;gap:8px;margin:0;font-weight:700;display:flex}.map-title-text-short{display:none}.map-subtitle{font-size:var(--fs-sm);color:var(--text-secondary);margin:0}.map-top-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.map-action-btn{font-size:var(--fs-xs);gap:6px;padding:5px 12px;font-weight:700}.map-action-btn.edit-control{color:#eab308;background:#eab30814;border-color:#eab30866}.optimize-btn-short,.offline-btn-short{display:none}.map-route-bar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.map-route-mode-group{align-items:center;gap:8px;display:flex}.route-mode-label{font-size:var(--fs-xs);color:var(--text-muted);font-weight:700}.map-route-segmented{background:var(--bg-elevated);border-radius:var(--radius-sm);border:1px solid var(--border-subtle);flex-wrap:nowrap;gap:3px;padding:3px;display:flex}.map-route-segmented .btn{font-size:var(--fs-xs);gap:4px;padding:4px 8px}@media (width<=640px){.map-view-container{gap:10px}.map-top-header{flex-direction:row;justify-content:space-between;align-items:center;gap:8px}.map-title{font-size:var(--fs-lg);gap:6px}.map-title-text-full{display:none}.map-title-text-short{display:inline}.map-subtitle{font-size:var(--fs-xs)}.map-top-actions{flex-shrink:0;gap:6px}.map-action-btn{font-size:var(--fs-xs)!important;gap:4px!important;padding:5px 8px!important}.optimize-btn-full,.offline-btn-full{display:none}.optimize-btn-short,.offline-btn-short{display:inline}.map-route-bar{flex-wrap:nowrap;justify-content:space-between;align-items:center;gap:6px}.route-mode-label{display:none}.map-route-mode-group{flex-shrink:0}.map-route-segmented{padding:2px}.map-route-segmented .btn{font-size:var(--fs-2xs);gap:3px;padding:4px 6px}.map-route-summary-pill{font-size:var(--fs-2xs);white-space:nowrap;flex-shrink:0;gap:5px;max-width:50%;margin-left:auto;padding:4px 7px}}.stop-card{column-gap:var(--space-4);background:var(--bg-card);border:1px solid var(--border-card);border-radius:var(--radius-md);transition:border-color var(--transition-fast), box-shadow var(--transition-fast);grid-template-columns:52px minmax(0,1fr) auto;padding:14px 16px;display:grid;position:relative}.stop-card:hover{border-color:var(--border-medium);box-shadow:var(--shadow-sm)}.stop-card.is-next,.stop-card.is-current{border-color:var(--border-strong)}.stop-card.is-cancelled .stop-card-title{color:var(--text-muted);text-decoration:line-through}.stop-card-time{flex-direction:column;align-items:flex-start;gap:2px;min-width:0;padding-top:1px;display:flex}.stop-time-start{font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--text-primary);font-variant-numeric:tabular-nums;line-height:1.35}.stop-time-end{font-size:var(--fs-xs);color:var(--text-muted);font-variant-numeric:tabular-nums;line-height:1.3}.stop-timing{font-size:var(--fs-2xs);font-weight:var(--fw-semibold);align-items:center;gap:4px;margin-top:6px;line-height:1;display:inline-flex}.stop-timing.is-passed{color:var(--text-muted)}.stop-timing.is-next{color:var(--primary)}.stop-timing.is-current{color:var(--accent-emerald)}.stop-timing-dot{background:currentColor;border-radius:50%;width:6px;height:6px;animation:2s ease-in-out infinite stop-pulse}@keyframes stop-pulse{0%,to{opacity:1}50%{opacity:.35}}@media (prefers-reduced-motion:reduce){.stop-timing-dot{animation:none}}.stop-card-body{flex-direction:column;gap:4px;min-width:0;display:flex}.stop-card-head{align-items:flex-start;gap:8px;padding-right:4px;display:flex}.stop-cat-icon{border-radius:var(--radius-xs);width:22px;height:22px;color:var(--text-secondary);background:var(--bg-subtle);flex-shrink:0;place-items:center;margin-top:-1px;display:inline-grid}.stop-cat-icon.cat-flight{color:var(--cat-flight);background:var(--cat-flight-bg)}.stop-cat-icon.cat-hotel{color:var(--cat-hotel);background:var(--cat-hotel-bg)}.stop-cat-icon.cat-activity{color:var(--cat-activity);background:var(--cat-activity-bg)}.stop-cat-icon.cat-dining{color:var(--cat-dining);background:var(--cat-dining-bg)}.stop-cat-icon.cat-transit{color:var(--cat-transit);background:var(--cat-transit-bg)}.stop-cat-icon.cat-rental{color:var(--cat-rental);background:var(--cat-rental-bg)}.stop-cat-icon.cat-note{color:var(--cat-note);background:var(--cat-note-bg)}.stop-card-title{min-width:0;font-family:var(--font-sans);font-size:var(--fs-md);font-weight:var(--fw-semibold);letter-spacing:-.01em;color:var(--text-primary);overflow-wrap:anywhere;flex:1;line-height:1.35}.stop-card-price{font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--text-primary);font-variant-numeric:tabular-nums;flex-shrink:0;line-height:1.5}.stop-card-place{font-size:var(--fs-sm);color:var(--text-secondary);align-items:flex-start;gap:5px;min-width:0;line-height:1.4;text-decoration:none;display:flex}.stop-card-place svg{color:var(--text-muted);flex-shrink:0;margin-top:2px}.stop-card-place span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.stop-card-place:hover span{color:var(--text-primary);text-decoration:underline;-webkit-text-decoration-color:var(--border-strong);text-decoration-color:var(--border-strong);text-underline-offset:2px}.stop-card-notes{align-items:baseline;gap:6px;min-width:0;display:flex}.stop-card-notes p{font-size:var(--fs-sm);color:var(--text-secondary);white-space:pre-line;min-width:0;line-height:1.45}.stop-card-notes p.clamped{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.stop-text-btn{font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--text-primary);flex-shrink:0;padding:0}.stop-card-meta{font-size:var(--fs-xs);color:var(--text-secondary);flex-wrap:wrap;align-items:center;gap:4px 14px;margin-top:4px;display:flex}.stop-card-meta>*{align-items:center;gap:4px;display:inline-flex}.stop-meta-ok{color:var(--accent-emerald);font-weight:var(--fw-medium)}.stop-meta-warn{color:var(--accent-amber);font-weight:var(--fw-medium)}.stop-meta-btn{font-size:var(--fs-xs);color:var(--text-secondary);font-variant-numeric:tabular-nums;padding:0}.stop-meta-btn:hover{color:var(--text-primary)}.stop-card .schedule-issue,.stop-card-files{margin-top:6px}.stop-card-files .card-attachments{border:0;margin:0;padding:0}.stop-card-media{align-self:start}.stop-card .stop-card-media .poi-card-thumb{border-radius:var(--radius-sm);width:72px;height:72px;box-shadow:none;border:0}.stop-card .stop-card-media .poi-card-thumb img{object-fit:cover;width:100%;height:100%}.stop-card-actions{border-radius:var(--radius-sm);background:var(--bg-elevated);border:1px solid var(--border-card);box-shadow:var(--shadow-sm);opacity:0;transition:opacity var(--transition-fast);z-index:2;gap:2px;padding:2px;display:flex;position:absolute;top:8px;right:8px}.stop-card:hover .stop-card-actions,.stop-card:focus-within .stop-card-actions{opacity:1}.stop-card-actions:has([aria-expanded=true]){opacity:1}.stop-action-btn{width:30px;height:30px;color:var(--text-secondary);border-radius:6px;place-items:center;display:inline-grid}.stop-action-btn:hover{background:var(--bg-card-hover);color:var(--text-primary)}.stop-menu{background:var(--bg-elevated);border:1px solid var(--border-card);border-radius:var(--radius-sm);min-width:168px;box-shadow:var(--shadow-lg);z-index:20;padding:4px;position:absolute;top:calc(100% + 4px);right:0}.stop-menu button{width:100%;font-size:var(--fs-sm);color:var(--text-primary);text-align:left;border-radius:6px;align-items:center;gap:10px;padding:8px 10px;display:flex}.stop-menu button svg{color:var(--text-muted)}.stop-menu button:hover{background:var(--bg-card-hover)}.stop-menu button.danger,.stop-menu button.danger svg{color:var(--accent-coral)}.stop-menu-sep{background:var(--border-subtle);height:1px;margin:4px 2px}.stop-leg{margin:0 0 8px;padding-left:16px}.stop-leg-line{min-height:28px;font-size:var(--fs-xs);color:var(--text-secondary);align-items:center;gap:12px;display:flex}.stop-leg-summary{align-items:center;gap:6px;min-width:0;display:inline-flex}.stop-leg-summary svg{color:var(--text-muted);flex-shrink:0}.stop-leg-sep{color:var(--text-muted)}.stop-leg-toggle{font-size:var(--fs-xs);font-weight:var(--fw-medium);color:var(--text-primary);align-items:center;gap:3px;padding:0;display:inline-flex}.stop-leg-toggle svg{color:var(--text-muted);transition:transform var(--transition-fast)}.stop-leg.is-open .stop-leg-toggle svg{transform:rotate(180deg)}.stop-leg-toggle:hover{text-decoration:underline;-webkit-text-decoration-color:var(--border-strong);text-decoration-color:var(--border-strong);text-underline-offset:3px}.stop-leg-panel{margin-top:6px}.stop-leg-panel .nav-controls-unified{margin:0}@media (hover:none){.stop-card-actions{opacity:1;box-shadow:none;background:0 0;border-color:#0000}.stop-card-actions .stop-action-btn:first-child{display:none}}@media (width<=767px){.stop-card{grid-template-rows:auto auto 1fr;grid-template-columns:44px minmax(0,1fr) auto;column-gap:12px;padding:12px}.stop-card-time,.stop-card-body{grid-row:1/span 3}.stop-card-media{grid-area:1/3}.stop-card .stop-card-media .poi-card-thumb{width:56px;height:56px}.stop-card-actions{opacity:1;box-shadow:none;background:0 0;border-color:#0000;grid-area:2/3;justify-self:end;margin-right:-6px;position:relative;top:auto;right:auto}.stop-card-actions .stop-action-btn:first-child{display:none}.stop-card-place span{white-space:normal;-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box}.stop-leg{padding-left:12px}}.stop-meta-price{display:none!important}@media (width<=767px){.stop-card-price{display:none}.stop-meta-price{color:var(--text-primary);font-weight:var(--fw-semibold);font-variant-numeric:tabular-nums;display:inline-flex!important}}.stop-card-title-btn{font:inherit;color:inherit;letter-spacing:inherit;text-align:left;cursor:pointer;padding:0}.stop-card-title-btn:hover{text-decoration:underline;-webkit-text-decoration-color:var(--border-strong);text-decoration-color:var(--border-strong);text-underline-offset:3px}@media (width<=767px){.stop-card{cursor:pointer;-webkit-tap-highlight-color:transparent}.stop-card:active{background:var(--bg-card-hover)}.stop-card-title-btn:hover{text-decoration:none}.stop-card-notes p.clamped{-webkit-line-clamp:1}.stop-card-notes .stop-text-btn,.stop-card-files{display:none}}.modal-sheet.stop-sheet{max-width:560px}.stop-sheet .modal-header{align-items:flex-start;gap:12px;padding:16px 20px 14px}.stop-sheet .modal-header h3{letter-spacing:-.02em;line-height:1.25;font-size:var(--fs-2xl)!important;font-weight:var(--fw-bold)!important}.stop-sheet .modal-header p{font-size:var(--fs-sm)!important;margin-top:4px!important}.stop-sheet-body{padding:16px 20px calc(20px + var(--sab,0px));flex-direction:column;gap:18px;display:flex}.stop-sheet-tags{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.stop-sheet-cat{border-radius:var(--radius-xs);height:26px;font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--text-secondary);background:var(--bg-subtle);align-items:center;gap:6px;padding:0 9px;display:inline-flex}.stop-sheet-cat.cat-flight{color:var(--cat-flight);background:var(--cat-flight-bg)}.stop-sheet-cat.cat-hotel{color:var(--cat-hotel);background:var(--cat-hotel-bg)}.stop-sheet-cat.cat-activity{color:var(--cat-activity);background:var(--cat-activity-bg)}.stop-sheet-cat.cat-dining{color:var(--cat-dining);background:var(--cat-dining-bg)}.stop-sheet-cat.cat-transit{color:var(--cat-transit);background:var(--cat-transit-bg)}.stop-sheet-cat.cat-rental{color:var(--cat-rental);background:var(--cat-rental-bg)}.stop-sheet-cat.cat-note{color:var(--cat-note);background:var(--cat-note-bg)}.stop-sheet-status{font-size:var(--fs-sm);font-weight:var(--fw-medium);color:var(--text-secondary);align-items:center;gap:4px;display:inline-flex}.stop-sheet-status.is-booked,.stop-sheet-status.is-completed{color:var(--accent-emerald)}.stop-sheet-status.is-cancelled{color:var(--accent-amber)}.stop-sheet .stop-sheet-photo.poi-card-thumb{border-radius:var(--radius-md);box-shadow:none;border:0;width:100%!important;max-width:none!important;height:168px!important}.stop-sheet .stop-sheet-photo img{object-fit:cover;width:100%;height:100%}.stop-sheet-actions{grid-template-columns:repeat(auto-fit,minmax(0,1fr));grid-auto-flow:column;gap:8px;display:grid}.stop-sheet-action{border-radius:var(--radius-md);border:1px solid var(--border-card);background:var(--bg-card);min-height:64px;color:var(--text-primary);font-size:var(--fs-xs);font-weight:var(--fw-medium);flex-direction:column;justify-content:center;align-items:center;gap:6px;padding:10px 4px;text-decoration:none;display:flex}.stop-sheet-action svg{color:var(--text-secondary)}.stop-sheet-action:hover{background:var(--bg-card-hover)}.stop-sheet-action.is-primary{background:var(--ink);border-color:var(--ink);color:var(--on-ink)}.stop-sheet-action.is-primary svg{color:var(--on-ink)}.stop-sheet-section{flex-direction:column;gap:8px;display:flex}.stop-sheet-h{font-family:var(--font-sans);font-size:var(--fs-xs);font-weight:var(--fw-semibold);letter-spacing:.05em;text-transform:uppercase;color:var(--text-muted)}.stop-sheet-list{border:1px solid var(--border-card);border-radius:var(--radius-md);overflow:hidden}.stop-sheet-row{font-size:var(--fs-base);color:var(--text-primary);align-items:flex-start;gap:10px;padding:12px;line-height:1.4;text-decoration:none;display:flex}.stop-sheet-row+.stop-sheet-row{border-top:1px solid var(--border-subtle)}.stop-sheet-row svg{color:var(--text-muted);flex-shrink:0;margin-top:2px}.stop-sheet-notes{font-size:var(--fs-base);color:var(--text-primary);white-space:pre-line;line-height:1.55}.stop-sheet .card-attachments{border:0;margin:0;padding:0}.stop-sheet .nav-controls-unified{margin:0}.stop-sheet-kv{background:var(--bg-elevated);border:1px solid var(--border-card);border-radius:var(--radius-md);grid-template-columns:1fr 1fr;gap:0;margin:0;display:grid;overflow:hidden}.stop-sheet-kv>div{box-shadow:.5px .5px 0 .5px var(--border-subtle);padding:10px 12px}.stop-sheet-kv dt{font-size:var(--fs-xs);color:var(--text-muted)}.stop-sheet-kv dd{font-size:var(--fs-base);font-weight:var(--fw-semibold);color:var(--text-primary);font-variant-numeric:tabular-nums;margin:2px 0 0}.stop-sheet-sub{font-size:var(--fs-xs);font-weight:var(--fw-regular);color:var(--text-secondary);display:block}.stop-sheet-copy{font:inherit;color:inherit;align-items:center;gap:6px;padding:0;display:inline-flex}.stop-sheet-copy svg{color:var(--text-muted)}.stop-sheet-footer{border-top:1px solid var(--border-subtle);justify-content:space-between;gap:12px;padding-top:14px;display:flex}.stop-sheet-text-btn{font-size:var(--fs-sm);font-weight:var(--fw-medium);color:var(--text-secondary);align-items:center;gap:6px;padding:6px 0;display:inline-flex}.stop-sheet-text-btn.is-danger{color:var(--accent-coral);margin-left:auto}.modal-backdrop:has(>.stop-sheet){-webkit-backdrop-filter:none;background:#0c0a0973}.trip-cover{border-radius:var(--radius-lg);background-color:var(--bg-subtle);color:#fff;isolation:isolate;background-position:50%;background-size:cover;flex-direction:column;justify-content:space-between;min-height:220px;padding:16px 24px 20px;display:flex;position:relative;overflow:hidden}.trip-cover.is-repositioning{cursor:grab;outline:2px solid var(--ink);outline-offset:2px}.trip-cover.is-dragging{cursor:grabbing}.trip-cover-shade{z-index:-1;background:linear-gradient(#0c0a0966 0%,#0c0a090d 30%,#0c0a0973 55%,#0c0a09db 100%);position:absolute;inset:0}.trip-cover.is-repositioning .trip-cover-top,.trip-cover.is-repositioning .trip-cover-bottom{visibility:hidden}.trip-cover-top{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.trip-cover-flags{flex-wrap:wrap;gap:6px;display:flex}.trip-cover-flag{border-radius:var(--radius-sm);color:#1c1917;height:28px;font-size:var(--fs-xs);font-weight:var(--fw-medium);background:#ffffffeb;align-items:center;gap:6px;padding:0 10px;display:inline-flex}.trip-cover-actions{gap:8px;margin-left:auto;display:flex}.trip-cover-btn{border-radius:var(--radius-sm);color:#1c1917;height:34px;font-size:var(--fs-sm);font-weight:var(--fw-medium);transition:background var(--transition-fast);background:#ffffffeb;align-items:center;gap:6px;padding:0 12px;display:inline-flex}.trip-cover-btn:hover{background:#fff}.trip-cover-btn.is-icon{justify-content:center;width:34px;padding:0}.trip-cover-btn.is-solid{background:var(--primary-solid);color:#fff}.trip-cover-bottom{flex-direction:column;gap:6px;margin-top:40px;display:flex}.trip-cover-title{font-family:var(--font-sans);font-size:var(--fs-4xl);font-weight:var(--fw-bold);letter-spacing:-.025em;color:#fff;text-shadow:0 1px 12px #00000040;max-width:820px;line-height:1.12}.trip-cover-facts{font-size:var(--fs-base);color:#ffffffeb;text-shadow:0 1px 6px #00000059;flex-wrap:wrap;align-items:center;display:flex}.trip-cover-facts>span{align-items:center;gap:5px;display:inline-flex}.trip-cover-facts>span+span:before{content:"·";color:#ffffff8c;margin:0 9px}.trip-cover-meta{justify-content:space-between;align-items:flex-end;gap:16px;margin-top:8px;display:flex}.trip-cover-people{white-space:nowrap;color:#ffffffe6;min-width:0;font-size:var(--fs-sm);align-items:center;gap:8px;padding:0;display:inline-flex}.trip-cover-people:hover{color:#fff}.trip-cover-people .avatar-stack{display:inline-flex}.trip-cover-people .avatar-stack img,.trip-cover-people .avatar-stack .avatar-initial{object-fit:cover;width:26px;height:26px;font-size:var(--fs-2xs);font-weight:var(--fw-semibold);color:#fff;background:#57534e;border:2px solid #ffffffe6;border-radius:50%;place-items:center;margin-left:-8px;display:inline-grid}.trip-cover-people .avatar-stack>:first-child{margin-left:0}.trip-cover-sep{color:#ffffff8c}.trip-cover-budget{white-space:nowrap;min-width:180px;font-size:var(--fs-sm);color:#ffffffd9;font-variant-numeric:tabular-nums;flex-direction:column;align-items:flex-end;gap:6px;display:flex}.trip-cover-budget strong{color:#fff;font-weight:var(--fw-semibold)}.trip-cover-budget-bar{background:#ffffff47;border-radius:4px;width:100%;height:4px;overflow:hidden}.trip-cover-budget-bar>span{background:#fff;border-radius:4px;height:100%;display:block}.trip-cover-budget.is-over .trip-cover-budget-bar>span{background:#fb7185}.trip-cover-budget.is-over strong{color:#fecdd3}.trip-cover .trip-hero-reposition-bar{z-index:3;position:absolute;bottom:16px;left:16px;right:16px}@media (width<=767px){.trip-cover{border-radius:var(--radius-md);min-height:196px;padding:12px 16px 16px}.trip-cover-btn-label{display:none}.trip-cover-btn{justify-content:center;width:34px;padding:0}.trip-cover-btn.is-solid{width:auto;padding:0 12px}.trip-cover-bottom{gap:4px;margin-top:28px}.trip-cover-title{font-size:var(--fs-3xl)}.trip-cover-facts{font-size:var(--fs-sm)}.trip-cover-fact-stay,.trip-cover-fact-weather{display:none!important}.trip-cover-meta{align-items:center;margin-top:6px}.trip-cover-budget{min-width:0;font-size:var(--fs-xs);flex:none}.trip-cover-people{font-size:var(--fs-xs);gap:6px}}.all-trips-link{color:var(--text-secondary);font-weight:var(--fw-medium)}.trip-pulse{box-shadow:none;background:0 0;border:0;border-radius:0;margin:14px 0 4px;padding:0}.trip-pulse-chip{border-radius:var(--radius-sm);height:30px;font-size:var(--fs-sm);font-weight:var(--fw-medium);background:var(--bg-card);border:1px solid var(--border-card);box-shadow:none;padding:0 11px}.trip-pulse-chip.active{color:var(--selected-text);background:var(--selected-bg);border-color:var(--selected-border);box-shadow:none}.trip-pulse-chip.active svg{color:inherit}.trip-tabs-bar{border-bottom:1px solid var(--border-subtle);align-items:flex-end;gap:16px;margin:12px 0 16px}.desktop-tabs-bar{box-shadow:none;background:0 0;border:0;border-radius:0;gap:24px;padding:0}.desktop-tab{min-height:0;font-size:var(--fs-base);font-weight:var(--fw-medium);color:var(--text-secondary);background:0 0;border:0;border-radius:0;gap:7px;padding:12px 0 13px;position:relative}.desktop-tab svg{width:16px;height:16px;color:var(--text-muted)}.desktop-tab:hover{color:var(--text-primary);background:0 0}.desktop-tab.active{color:var(--text-primary);box-shadow:none;background:0 0}.desktop-tab.active svg{color:var(--text-primary)}.desktop-tab.active:after{content:"";background:var(--ink);border-radius:2px 2px 0 0;height:2px;position:absolute;bottom:-1px;left:0;right:0}.trip-tabs-secondary{padding-bottom:8px}.schedule-view-toggle{border-radius:var(--radius-sm);background:var(--bg-subtle);box-shadow:none;border:0;gap:2px;padding:3px;display:inline-flex}.schedule-view-toggle-btn{min-height:28px;font-size:var(--fs-sm);font-weight:var(--fw-medium);border-radius:6px;padding:0 10px}.schedule-view-toggle-btn.active{background:var(--bg-card);color:var(--text-primary);box-shadow:var(--shadow-xs);border-color:#0000}@media (width<=767px){.trip-tabs-bar{border-bottom:0;margin:12px 0}.trip-tabs-secondary{padding-bottom:0}.schedule-view-toggle{width:100%}.schedule-view-toggle-btn{flex:1;justify-content:center}}.day-tab-btn{border-radius:var(--radius-sm);min-height:52px;box-shadow:none;background:0 0;border:1px solid #0000;padding:7px 14px}.day-tab-btn:hover{background:var(--bg-card);border-color:var(--border-card);transform:none}.day-tab-label{font-size:var(--fs-xs);font-weight:var(--fw-semibold)}.day-tab-date{font-size:var(--fs-xs)}.day-tab-btn.day-tab-overview:not(.active){border-color:var(--border-card);background:var(--bg-card)}.day-step-btn{box-shadow:none;border-radius:var(--radius-sm)}.day-step-btn:hover:not(:disabled){box-shadow:none;border-color:var(--border-medium);transform:none}@media (width<=767px){.day-tab-btn{border-radius:var(--radius-sm);box-shadow:none;background:0 0;border-color:#0000}}.timeline-category-chip{border-radius:var(--radius-sm);min-height:30px;box-shadow:none;font-size:var(--fs-sm);font-weight:var(--fw-medium);color:var(--text-secondary);background:0 0;border:1px solid #0000;padding:0 10px}.timeline-category-chip:hover{color:var(--text-primary);background:var(--bg-card);border-color:var(--border-card)}@media (width<=767px){.timeline-category-chip{min-height:32px;box-shadow:none;font-size:var(--fs-sm);background:0 0;border-color:#0000;padding:0 10px}}.split-view-top-bar{gap:10px;margin-bottom:12px}.split-view-action-row{gap:12px;padding:0}.split-mode-pill{border-radius:var(--radius-sm);background:var(--bg-subtle);border:0;gap:2px;padding:3px;display:inline-flex}.split-mode-btn{height:28px;font-size:var(--fs-sm);font-weight:var(--fw-medium);color:var(--text-secondary);border-radius:6px;align-items:center;gap:5px;padding:0 10px;display:inline-flex}.split-mode-btn svg{color:var(--text-muted)}.split-mode-btn:hover{color:var(--text-primary)}.split-mode-btn.active{background:var(--bg-card);color:var(--text-primary);box-shadow:var(--shadow-xs)}.split-mode-btn.active svg{color:var(--text-primary)}.split-route-summary{font-size:var(--fs-sm);color:var(--text-secondary);font-variant-numeric:tabular-nums;align-items:center;gap:4px;display:inline-flex}.split-route-summary strong{color:var(--text-primary);font-weight:var(--fw-semibold)}.split-actions{flex-wrap:wrap;align-items:center;gap:8px;margin-left:auto;display:flex}.split-actions .btn{height:34px;font-size:var(--fs-sm);gap:6px}.split-actions .btn svg{color:inherit}.split-filter-row{gap:12px}.split-filter-row .form-control{border-radius:var(--radius-sm)!important;height:32px!important;font-size:var(--fs-sm)!important}.split-trip-container{grid-template-columns:minmax(460px,5fr) minmax(0,6fr);gap:20px}.split-timeline-pane{max-height:calc(100vh - 150px);padding-right:8px}.split-map-pane{border-radius:var(--radius-lg);border:1px solid var(--border-card);height:calc(100vh - 150px);box-shadow:none;top:72px}.split-map-attribution{color:#57534e;background:#ffffffd9}.split-custom-map-pin{box-shadow:0 1px 4px #00000059}.split-custom-map-pin:hover,.split-custom-map-pin.is-active-pin{box-shadow:0 0 0 3px #fff, 0 0 0 5px var(--ink);transform:scale(1.18)}.split-card-highlighted .stop-card{border-color:var(--ink);box-shadow:0 0 0 1px var(--ink)}@media (width<=960px){.split-trip-container{grid-template-columns:1fr}.split-map-pane{height:360px;position:static}.split-timeline-pane{max-height:none}}.stop-map-num{background:var(--ink);min-width:22px;height:22px;color:var(--on-ink);font-size:var(--fs-2xs);font-weight:var(--fw-semibold);font-variant-numeric:tabular-nums;border-radius:11px;place-items:center;margin-top:8px;padding:0 6px;display:inline-grid}.stop-map-num:hover{outline:2px solid var(--border-strong);outline-offset:1px}.split-filter-row .form-control{width:100%!important;min-width:0!important}.lp{background:var(--bg-app);min-height:100dvh;color:var(--text-primary);flex-direction:column;display:flex}.lp main{flex:1}.lp-wrap{width:100%;max-width:1160px;margin:0 auto;padding-left:24px;padding-right:24px}.lp-nav{padding-top:var(--sat)}.lp-nav-inner{align-items:center;height:64px;display:flex}.lp-brand{font-size:var(--fs-xl);font-weight:var(--fw-bold);letter-spacing:-.02em;align-items:center;gap:9px;display:flex}.lp-brand img{border-radius:7px}.lp-nav-actions{align-items:center;gap:8px;margin-left:auto;display:flex}.lp-icon-btn{border-radius:var(--radius-sm);width:36px;height:36px;color:var(--text-secondary);place-items:center;display:inline-grid}.lp-icon-btn:hover{background:var(--bg-card);color:var(--text-primary)}.lp-btn{border-radius:var(--radius-sm);height:38px;font-size:var(--fs-base);font-weight:var(--fw-semibold);transition:background var(--transition-fast), border-color var(--transition-fast);justify-content:center;align-items:center;gap:10px;padding:0 16px;display:inline-flex}.lp-btn-quiet{border:1px solid var(--border-card);background:var(--bg-card);color:var(--text-primary)}.lp-btn-quiet:hover{border-color:var(--border-medium)}.lp-btn-primary{border-radius:var(--radius-md);background:var(--ink);height:50px;color:var(--on-ink);font-size:var(--fs-md);padding:0 22px}.lp-btn-primary:hover{opacity:.92}.lp-btn-primary svg{background:#fff;border-radius:50%;width:23px;height:23px;padding:3px}.lp-link{font-size:var(--fs-md);font-weight:var(--fw-medium);color:var(--text-primary);align-items:center;gap:6px;padding:8px 4px;display:inline-flex}.lp-link svg{transition:transform var(--transition-fast)}.lp-link:hover svg{transform:translate(3px)}.lp-hero{grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);align-items:center;gap:56px;padding-top:56px;padding-bottom:72px;display:grid}.lp-eyebrow{font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--primary)}.lp-title{font-family:var(--font-sans);font-size:56px;font-weight:var(--fw-bold);letter-spacing:-.04em;color:var(--text-primary);margin-top:14px;line-height:1.02}.lp-lede{max-width:460px;font-size:var(--fs-xl);color:var(--text-secondary);margin-top:20px;line-height:1.5}.lp-cta{flex-wrap:wrap;align-items:center;gap:12px 20px;margin-top:32px;display:flex}.lp-legal{font-size:var(--fs-xs);color:var(--text-muted);margin-top:18px}.lp-legal button{font:inherit;color:var(--text-secondary);text-decoration:underline;-webkit-text-decoration-color:var(--border-strong);text-decoration-color:var(--border-strong);text-underline-offset:2px;padding:0}.lp-shot{aspect-ratio:5/4.4;border-radius:var(--radius-xl);background:var(--bg-subtle);position:relative;overflow:hidden}.lp-shot-photo{object-fit:cover;width:100%;height:100%;display:block}.lp-shot-card{border-radius:var(--radius-lg);background:var(--bg-elevated);max-width:400px;color:var(--text-primary);box-shadow:var(--shadow-xl);padding:14px 16px 6px;position:absolute;bottom:20px;left:20px;right:20px}.lp-shot-head{border-bottom:1px solid var(--border-subtle);justify-content:space-between;align-items:center;padding-bottom:10px;display:flex}.lp-shot-day{font-size:var(--fs-sm);font-weight:var(--fw-semibold)}.lp-shot-people{display:flex}.lp-shot-people i{border:2px solid var(--bg-elevated);width:24px;height:24px;font-size:var(--fs-2xs);font-style:normal;font-weight:var(--fw-semibold);color:#fff;background:#7c3aed;border-radius:50%;place-items:center;margin-left:-6px;display:inline-grid}.lp-shot-people i:nth-child(2){background:#0f766e}.lp-shot-people i:nth-child(3){background:#c2410c}.lp-shot-row{align-items:center;gap:12px;padding:10px 0;display:flex}.lp-shot-row+.lp-shot-row{border-top:1px solid var(--border-subtle)}.lp-shot-time{width:40px;font-size:var(--fs-sm);font-weight:var(--fw-semibold);font-variant-numeric:tabular-nums}.lp-shot-icon{border-radius:50%;flex-shrink:0;place-items:center;width:28px;height:28px;display:inline-grid}.lp-shot-icon.cat-dining{color:var(--cat-dining);background:var(--cat-dining-bg)}.lp-shot-icon.cat-activity{color:var(--cat-activity);background:var(--cat-activity-bg)}.lp-shot-icon.cat-transit{color:var(--cat-transit);background:var(--cat-transit-bg)}.lp-shot-text{flex-direction:column;min-width:0;display:flex}.lp-shot-text strong{font-size:var(--fs-sm);font-weight:var(--fw-semibold)}.lp-shot-text small{font-size:var(--fs-xs);color:var(--text-muted)}.lp-features{grid-template-columns:repeat(3,minmax(0,1fr));gap:40px;padding-top:40px;padding-bottom:80px;display:grid;position:relative}.lp-features:before{content:"";border-top:1px solid var(--border-subtle);position:absolute;top:0;left:24px;right:24px}.lp-feature svg{color:var(--text-secondary)}.lp-feature h2{font-family:var(--font-sans);font-size:var(--fs-lg);font-weight:var(--fw-semibold);letter-spacing:-.01em;margin-top:14px}.lp-feature p{font-size:var(--fs-base);color:var(--text-secondary);margin-top:6px;line-height:1.55}.lp-footer{border-top:1px solid var(--border-subtle);padding-bottom:var(--sab)}.lp-footer-inner{min-height:64px;font-size:var(--fs-sm);color:var(--text-muted);justify-content:space-between;align-items:center;gap:16px;display:flex}.lp-footer nav{gap:20px;display:flex}.lp-footer nav button{font-size:var(--fs-sm);color:var(--text-secondary);padding:0}.lp-footer nav button:hover{color:var(--text-primary)}@media (width<=960px){.lp-hero{grid-template-columns:1fr;gap:36px;padding-top:32px;padding-bottom:48px}.lp-title{font-size:46px}.lp-shot{aspect-ratio:4/3}}@media (width<=640px){.lp-wrap{padding-left:20px;padding-right:20px}.lp-nav-inner{height:56px}.lp-hero{gap:28px;padding-top:24px}.lp-title{font-size:38px;line-height:1.05}.lp-lede{font-size:var(--fs-lg);margin-top:14px}.lp-cta{flex-direction:column;align-items:stretch;gap:6px;margin-top:24px}.lp-cta .lp-link{justify-content:center}.lp-legal{text-align:center}.lp-shot{aspect-ratio:4/4.3;border-radius:var(--radius-lg)}.lp-shot-card{padding:12px 12px 4px;bottom:12px;left:12px;right:12px}.lp-features:before{left:20px;right:20px}.lp-features{grid-template-columns:1fr;gap:28px;padding-top:32px;padding-bottom:48px}.lp-footer-inner{flex-direction:column-reverse;justify-content:center;gap:10px;padding:18px 0}}
