.TimelineItem-module__HLnX-W__detailButton{cursor:pointer;background:#f3f4f6;border:1px solid #d1d5db;border-radius:6px;justify-content:center;align-items:center;transition:all .2s;display:flex}.TimelineItem-module__HLnX-W__detailButton:hover{background:#e5e7eb;border-color:#9ca3af}.TimelineItem-module__HLnX-W__modalOverlay{z-index:1000;background:#00000080;justify-content:center;align-items:center;animation:.2s ease-out TimelineItem-module__HLnX-W__fadeIn;display:flex;position:fixed;inset:0}@keyframes TimelineItem-module__HLnX-W__fadeIn{0%{opacity:0}to{opacity:1}}.TimelineItem-module__HLnX-W__modalContent{background:#fff;border-radius:12px;width:90%;max-width:600px;max-height:85vh;animation:.2s ease-out TimelineItem-module__HLnX-W__slideUp;overflow:hidden;box-shadow:0 25px 50px -12px #00000040}@keyframes TimelineItem-module__HLnX-W__slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.TimelineItem-module__HLnX-W__modalHeader{background:#f9fafb;border-bottom:1px solid #e5e7eb;justify-content:space-between;align-items:center;padding:1.5rem;display:flex}.TimelineItem-module__HLnX-W__modalTitle{color:#111827;margin:0;font-size:1.125rem;font-weight:600}.TimelineItem-module__HLnX-W__modalCloseButton{cursor:pointer;color:#6b7280;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;padding:.5rem;transition:all .2s;display:flex}.TimelineItem-module__HLnX-W__modalCloseButton:hover{color:#374151;background:#e5e7eb}.TimelineItem-module__HLnX-W__modalBody{max-height:calc(85vh - 80px);padding:1.5rem;overflow-y:auto}.TimelineItem-module__HLnX-W__photoSection{border-bottom:1px solid #e5e7eb;margin-bottom:1.5rem;padding-bottom:1.5rem}.TimelineItem-module__HLnX-W__photosLoading{color:#6b7280;justify-content:center;align-items:center;gap:.75rem;padding:2rem;font-size:.875rem;display:flex}.TimelineItem-module__HLnX-W__loadingSpinner{border:2px solid #e5e7eb;border-top-color:#3b82f6;border-radius:50%;width:1.25rem;height:1.25rem;animation:1s linear infinite TimelineItem-module__HLnX-W__spin}@keyframes TimelineItem-module__HLnX-W__spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.TimelineItem-module__HLnX-W__singlePhotoContainer{aspect-ratio:16/9;background:#f3f4f6;border-radius:8px;width:100%;max-width:400px;margin:0 auto;position:relative;overflow:hidden}.TimelineItem-module__HLnX-W__placePhoto{object-fit:cover;cursor:pointer;width:100%;height:100%;transition:transform .2s}.TimelineItem-module__HLnX-W__placePhoto:hover{transform:scale(1.02)}.TimelineItem-module__HLnX-W__photoError{text-align:center;color:#9ca3af;background:#f9fafb;border:1px dashed #d1d5db;border-radius:8px;padding:2rem;font-size:.875rem}.TimelineItem-module__HLnX-W__detailInfo{flex-direction:column;gap:.5rem;display:flex}.TimelineItem-module__HLnX-W__detailItem{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.TimelineItem-module__HLnX-W__detailLabel{color:#6b7280;flex-shrink:0;min-width:80px;font-size:.875rem;font-weight:500}.TimelineItem-module__HLnX-W__detailValue{color:#374151;text-align:right;word-break:break-word;flex:1;font-size:.875rem}.TimelineItem-module__HLnX-W__itemContainer{display:flex}.TimelineItem-module__HLnX-W__leftColumn{flex-direction:column;flex-shrink:0;align-items:center;width:9rem;display:flex}.TimelineItem-module__HLnX-W__timeContainer{text-align:center;flex-direction:column;flex-shrink:0;justify-content:center;margin-top:.5rem;margin-bottom:.5rem;display:flex}.TimelineItem-module__HLnX-W__timeArrival{color:#374151;margin:0;font-size:.875rem;font-weight:600}.TimelineItem-module__HLnX-W__timeDeparture{color:#6b7280;margin:0;font-size:.875rem;font-weight:600;line-height:1.25}.TimelineItem-module__HLnX-W__timeSeparator{color:#9ca3af;text-align:center;margin:.125rem 0;font-size:.75rem;font-weight:400;line-height:1.25}.TimelineItem-module__HLnX-W__timeEnd{color:#6b7280;margin:0;font-size:.875rem;font-weight:600;line-height:1.25}.TimelineItem-module__HLnX-W__timelineVisuals{flex-direction:column;flex-grow:1;align-items:center;width:100%;display:flex}.TimelineItem-module__HLnX-W__numberIcon{color:#fff;z-index:10;background-color:#2563eb;border:4px solid #f9fafb;border-radius:9999px;justify-content:center;align-items:center;width:2.25rem;height:2.25rem;font-weight:700;display:flex}.TimelineItem-module__HLnX-W__line{background-color:#d1d5db;flex-grow:1;width:1px;min-height:80px;position:relative}.TimelineItem-module__HLnX-W__travelContainer{flex-direction:column;align-items:center;gap:.25rem;margin-right:.75rem;display:flex;position:absolute;top:50%;right:100%;transform:translateY(-50%)}.TimelineItem-module__HLnX-W__travelIconWrapper{background-color:#fff;border:1px solid #e5e7eb;border-radius:9999px;padding:.5rem;box-shadow:0 1px 3px #0000001a,0 1px 2px -1px #0000001a}.TimelineItem-module__HLnX-W__travelIcon{color:#4b5563;width:1.25rem;height:1.25rem}.TimelineItem-module__HLnX-W__routeButton{color:#fff;cursor:pointer;background-color:#3b82f6;border:none;border-radius:.5rem;align-items:center;gap:.5rem;margin-top:.5rem;padding:.5rem 1rem;font-size:.875rem;font-weight:500;transition:background-color .2s;display:flex}.TimelineItem-module__HLnX-W__routeButton:hover{background-color:#2563eb}.TimelineItem-module__HLnX-W__cardColumn{flex-grow:1;padding-bottom:.75rem}.TimelineItem-module__HLnX-W__card{cursor:pointer;background-color:#fff;border:1px solid #f3f4f6;border-radius:.75rem;min-height:100px;margin-bottom:.75rem;padding:1rem 1.25rem;transition:all .3s;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -2px #0000001a}.TimelineItem-module__HLnX-W__card:hover{border-color:#93c5fd;box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a}.TimelineItem-module__HLnX-W__cardContent{justify-content:space-between;align-items:center;gap:1rem;display:flex}.TimelineItem-module__HLnX-W__mainContent{flex-grow:1;align-items:flex-start;display:flex}.TimelineItem-module__HLnX-W__categoryIcon{color:#3b82f6;flex-shrink:0;width:1.75rem;height:1.75rem;margin-top:.25rem;margin-right:1rem}.TimelineItem-module__HLnX-W__cardTextContainer{flex-grow:1}.TimelineItem-module__HLnX-W__cardTitle{color:#111827;margin:0;font-size:1.125rem;font-weight:700}.TimelineItem-module__HLnX-W__cardDescription{color:#4b5563;margin:.25rem 0 0;font-size:.875rem}.TimelineItem-module__HLnX-W__cardActions{flex-direction:column;flex-shrink:0;align-items:center;gap:.5rem;display:flex;position:relative}.TimelineItem-module__HLnX-W__actionButton{color:#4b5563;cursor:pointer;background-color:#f3f4f6;border:1px solid #e5e7eb;border-radius:9999px;justify-content:center;align-items:center;width:2rem;height:2rem;text-decoration:none;transition:background-color .2s,color .2s,box-shadow .2s;display:flex}.TimelineItem-module__HLnX-W__actionButton:hover{background-color:#e5e7eb;border-color:#d1d5db;box-shadow:0 1px 2px #0000000d}.TimelineItem-module__HLnX-W__mapButton{font-size:.875rem;font-weight:700}.TimelineItem-module__HLnX-W__deleteButton{color:#dc2626;background-color:#fef2f2;border-color:#fecaca}.TimelineItem-module__HLnX-W__deleteButton:hover{color:#b91c1c;background-color:#fee2e2;border-color:#fca5a5}.TimelineItem-module__HLnX-W__dragHandle{color:#6b7280;cursor:grab;background-color:#f3f4f6;border:1px solid #e5e7eb;border-radius:9999px;justify-content:center;align-items:center;width:2rem;height:2rem;transition:all .2s;display:flex}.TimelineItem-module__HLnX-W__dragHandle:hover{color:#4b5563;background-color:#e5e7eb}.TimelineItem-module__HLnX-W__dragHandle:active{cursor:grabbing}.TimelineItem-module__HLnX-W__menuButton{padding:0}.TimelineItem-module__HLnX-W__dropdownMenu{z-index:20;background-color:#fff;border:1px solid #e5e7eb;border-radius:.5rem;width:120px;margin-top:.5rem;position:absolute;top:100%;right:0;overflow:hidden;box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a}.TimelineItem-module__HLnX-W__dropdownItem{text-align:left;cursor:pointer;background:0 0;border:none;width:100%;padding:.5rem 1rem;font-size:.875rem;display:block}.TimelineItem-module__HLnX-W__dropdownItem:hover{background-color:#f3f4f6}.TimelineItem-module__HLnX-W__travelInfo{flex-direction:column;align-items:center;gap:.25rem;display:flex}.TimelineItem-module__HLnX-W__travelDuration{color:#6b7280;margin:0;font-size:.75rem;font-weight:500}.TimelineItem-module__HLnX-W__travelDistance{color:#9ca3af;margin:0;font-size:.6875rem;font-weight:400}.TimelineItem-module__HLnX-W__travelWarning{background-color:#fef3c7;border:1px solid #f59e0b;border-radius:.25rem;align-items:center;gap:.25rem;margin-top:.25rem;padding:.25rem .5rem;display:flex}.TimelineItem-module__HLnX-W__warningIcon{font-size:.75rem}.TimelineItem-module__HLnX-W__warningText{color:#d97706;font-size:.6875rem;font-weight:500}.TimelineItem-module__HLnX-W__transportDetails{border-top:1px solid #e5e7eb;margin-top:1rem;padding-top:1rem}.TimelineItem-module__HLnX-W__detailSectionHeader{align-items:center;gap:.5rem;margin-bottom:.75rem;display:flex}.TimelineItem-module__HLnX-W__accuracyBadge{color:#1e40af;background-color:#dbeafe;border:1px solid #93c5fd;border-radius:.25rem;padding:.125rem .375rem;font-size:.6875rem;font-weight:500}.TimelineItem-module__HLnX-W__routeDetails{background-color:#f8fafc;border:1px solid #e2e8f0;border-radius:.5rem;margin-top:.5rem;padding:.75rem}.TimelineItem-module__HLnX-W__routeSection{border-bottom:1px solid #e2e8f0;align-items:flex-start;gap:.75rem;padding:.5rem 0;display:flex}.TimelineItem-module__HLnX-W__routeSection:last-child{border-bottom:none;padding-bottom:0}.TimelineItem-module__HLnX-W__transportIcon{flex-shrink:0;margin-top:.125rem;font-size:1.25rem;line-height:1}.TimelineItem-module__HLnX-W__routeSectionInfo{flex-direction:column;flex:1;gap:.25rem;display:flex}.TimelineItem-module__HLnX-W__routeLine{color:#374151;font-size:.875rem;font-weight:500;line-height:1.25}.TimelineItem-module__HLnX-W__routeStations{color:#6b7280;font-size:.75rem;line-height:1.25}.TimelineItem-module__HLnX-W__routeFare{color:#059669;font-size:.75rem;font-weight:500;line-height:1.25}.TimelineItem-module__HLnX-W__seatOptions{flex-wrap:wrap;gap:.75rem;margin-top:.5rem;display:flex}.TimelineItem-module__HLnX-W__seatOption{background-color:#fff;border:1px solid #e5e7eb;border-radius:.375rem;flex-direction:column;align-items:center;min-width:80px;padding:.5rem;display:flex}.TimelineItem-module__HLnX-W__seatType{color:#6b7280;margin-bottom:.25rem;font-size:.75rem}.TimelineItem-module__HLnX-W__seatFare{color:#059669;font-size:.875rem;font-weight:600}.TimelineItem-module__HLnX-W__transportMethods{margin-top:.5rem}.TimelineItem-module__HLnX-W__transportMethod{color:#374151;background-color:#f3f4f6;border:1px solid #e5e7eb;border-radius:.375rem;align-items:center;gap:.25rem;margin:.25rem .5rem .25rem 0;padding:.25rem .5rem;font-size:.75rem;display:inline-flex}.TimelineItem-module__HLnX-W__transportFlags{flex-wrap:wrap;gap:.5rem;margin-top:.5rem;display:flex}.TimelineItem-module__HLnX-W__transportFlag{color:#fff;text-shadow:0 1px 2px #0000001a;border-radius:.375rem;padding:.125rem .5rem;font-size:.75rem;font-weight:500}.TimelineItem-module__HLnX-W__accuracyBadge{color:#fff;text-transform:uppercase;letter-spacing:.05em;background-color:#3b82f6;border-radius:.25rem;margin-left:.5rem;padding:.125rem .375rem;font-size:.625rem;font-weight:600;display:inline-block}.TimelineItem-module__HLnX-W__hotelInfoSection{background:linear-gradient(135deg,#fef9e7 0%,#fef3c7 100%);border:1px solid #e5e7eb;border-radius:8px;margin-top:1rem;padding:1rem}.TimelineItem-module__HLnX-W__hotelLoading{text-align:center;color:#6b7280;align-items:center;gap:.5rem;padding:1rem;font-size:.875rem;display:flex}.TimelineItem-module__HLnX-W__hotelDetails{flex-direction:column;gap:.75rem;display:flex}.TimelineItem-module__HLnX-W__hotelReservation{border-top:1px solid #d1d5db;margin-top:1rem;padding-top:1rem}.TimelineItem-module__HLnX-W__reservationButton{color:#fff;background:linear-gradient(135deg,#dc2626 0%,#b91c1c 100%);border-radius:6px;align-items:center;gap:.5rem;padding:.75rem 1rem;font-size:.875rem;font-weight:600;text-decoration:none;transition:all .2s;display:inline-flex;box-shadow:0 2px 4px #dc262633}.TimelineItem-module__HLnX-W__reservationButton:hover{color:#fff;background:linear-gradient(135deg,#b91c1c 0%,#991b1b 100%);transform:translateY(-1px);box-shadow:0 4px 8px #dc26264d}.TimelineItem-module__HLnX-W__hotelNoInfo{text-align:center;color:#6b7280;padding:1rem;font-size:.875rem;font-style:italic}.TimelineItem-module__HLnX-W__rakutenCredit{text-align:center;background-color:#fef2f2;border:1px solid #fecaca;border-radius:6px;margin-top:16px;padding:12px 16px}.TimelineItem-module__HLnX-W__rakutenLink{color:#bf0000;align-items:center;gap:4px;font-size:.875rem;font-weight:500;text-decoration:none;transition:all .2s;display:inline-flex}.TimelineItem-module__HLnX-W__rakutenLink:hover{color:#991b1b;text-decoration:underline}.TimelineItem-module__HLnX-W__rakutenLink:before{content:"🏨";font-size:1rem}
.MapView-module__xDyCiW__mapContainer{background-color:#f3f4f6;border:2px solid #e5e7eb;border-radius:1rem;flex-direction:column;width:100%;height:100%;display:flex;position:relative;overflow:hidden;box-shadow:inset 0 2px 4px #0000000d}.MapView-module__xDyCiW__mapHeader{background-color:#3b82f6;border-bottom:none;border-radius:1rem 1rem 0 0;flex-shrink:0;justify-content:space-between;align-items:center;padding:20px 25px;display:flex;position:relative;box-shadow:0 2px 10px #3b82f633}.MapView-module__xDyCiW__mapControls{align-items:center;gap:12px;display:flex}.MapView-module__xDyCiW__mapTitle{color:#fff;letter-spacing:0;text-transform:none;text-shadow:none;font-size:18px;font-weight:600}.MapView-module__xDyCiW__routeInfo{color:#ffffffe6;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background-color:#ffffff26;border-radius:20px;align-items:center;gap:8px;padding:8px 12px;font-size:14px;font-weight:500;display:flex}.MapView-module__xDyCiW__clearRouteButton{color:#fff;cursor:pointer;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background-color:#fff3;border:none;border-radius:20px;padding:8px 12px;font-size:16px;transition:all .3s}.MapView-module__xDyCiW__clearRouteButton:hover{background-color:#ffffff4d;transform:translateY(-1px);box-shadow:0 2px 10px #fff3}.MapView-module__xDyCiW__fitToAllButton{color:#fff;cursor:pointer;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background-color:#fff3;border:none;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;padding:8px;transition:all .3s;display:flex}.MapView-module__xDyCiW__fitToAllButton:hover{background-color:#ffffff4d;transform:translateY(-1px);box-shadow:0 2px 10px #fff3}.MapView-module__xDyCiW__realMap{background-color:#f8f9fa;border:none;border-radius:0 0 1rem 1rem;flex:1;min-height:400px;position:relative;overflow:hidden}.MapView-module__xDyCiW__mapBackground{opacity:.4;background-position:50%;background-size:cover;position:absolute;inset:0}.MapView-module__xDyCiW__mapText{color:#9ca3af;letter-spacing:.1em;justify-content:center;align-items:center;margin:0;font-size:1.5rem;font-weight:700;display:flex;position:absolute;inset:0}.MapView-module__xDyCiW__pin{transition:all .3s ease-out;position:absolute;transform:scale(1)translate(-50%,-50%)}.MapView-module__xDyCiW__pinHovered{transform:scale(1.5)translate(-33%,-50%)}.MapView-module__xDyCiW__pinIcon{color:#3b82f6;fill:#dbeafe;width:2rem;height:2rem;transition:color .3s,fill .3s}.MapView-module__xDyCiW__pinIconHovered{color:#ec4899;fill:#fce7f3}
.TravelMate-module__4WWMRG__pageContainer{color:#1f2937;background-color:#f9fafb;height:calc(100vh - 60px);font-family:sans-serif;position:fixed;inset:60px 0 0;overflow:hidden}.TravelMate-module__4WWMRG__mainContainer{flex-direction:column;max-width:1280px;height:100%;margin-left:auto;margin-right:auto;padding:1rem .5rem;display:flex}@media (min-width:768px){.TravelMate-module__4WWMRG__mainContainer{padding:1.5rem 1rem}}.TravelMate-module__4WWMRG__topSection{flex-direction:column;flex-shrink:0;gap:1rem;margin-bottom:1.5rem;display:flex}.TravelMate-module__4WWMRG__dayButtonsContainer{scrollbar-width:thin;scrollbar-color:#cbd5e1 #f1f5f9;flex-shrink:0;gap:1rem;padding-bottom:.5rem;display:flex;overflow:auto hidden}.TravelMate-module__4WWMRG__dayButtonsContainer::-webkit-scrollbar{height:6px}.TravelMate-module__4WWMRG__dayButtonsContainer::-webkit-scrollbar-track{background:#f1f5f9;border-radius:3px}.TravelMate-module__4WWMRG__dayButtonsContainer::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:3px}.TravelMate-module__4WWMRG__dayButtonsContainer::-webkit-scrollbar-thumb:hover{background:#94a3b8}.TravelMate-module__4WWMRG__dayButton{cursor:pointer;white-space:nowrap;border:2px solid;border-radius:.5rem;flex-shrink:0;padding:.5rem 1.5rem;font-size:.875rem;font-weight:600;line-height:1.25rem;transition:all .3s}.TravelMate-module__4WWMRG__dayButtonInactive{color:#374151;background-color:#fff;border-color:#e5e7eb}.TravelMate-module__4WWMRG__dayButtonInactive:hover{color:#2563eb;border-color:#93c5fd}.TravelMate-module__4WWMRG__dayButtonActive{color:#fff;background-color:#2563eb;border-color:#2563eb;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -2px #0000001a}.TravelMate-module__4WWMRG__planInfoContainer{scrollbar-width:thin;scrollbar-color:#cbd5e1 #f1f5f9;align-items:center;gap:.75rem;padding-bottom:.5rem;display:flex;overflow:auto hidden}@media (min-width:768px){.TravelMate-module__4WWMRG__planInfoContainer{gap:1.5rem}}.TravelMate-module__4WWMRG__planInfoContainer::-webkit-scrollbar{height:6px}.TravelMate-module__4WWMRG__planInfoContainer::-webkit-scrollbar-track{background:#f1f5f9;border-radius:3px}.TravelMate-module__4WWMRG__planInfoContainer::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:3px}.TravelMate-module__4WWMRG__planInfoContainer::-webkit-scrollbar-thumb:hover{background:#94a3b8}.TravelMate-module__4WWMRG__infoBlock{white-space:nowrap;background-color:#fff;border:1px solid #e5e7eb;border-radius:.5rem;flex-shrink:0;align-items:center;gap:.5rem;padding:.4rem .75rem;display:flex}@media (max-width:1024px){.TravelMate-module__4WWMRG__infoBlock{gap:.4rem;padding:.35rem .6rem}}@media (min-width:768px){.TravelMate-module__4WWMRG__infoBlock{gap:.75rem;padding:.5rem 1rem}}.TravelMate-module__4WWMRG__infoIcon{color:#6b7280;flex-shrink:0}@media (max-width:1024px){.TravelMate-module__4WWMRG__infoIcon{width:16px;height:16px}}.TravelMate-module__4WWMRG__infoLabel{color:#6b7280;margin:0;font-size:.75rem}@media (max-width:1024px){.TravelMate-module__4WWMRG__infoLabel{font-size:.7rem}}.TravelMate-module__4WWMRG__infoValue{color:#111827;margin:0;font-size:.875rem;font-weight:600}@media (max-width:1024px){.TravelMate-module__4WWMRG__infoValue{font-size:.8rem}}.TravelMate-module__4WWMRG__infoBlockLocked{opacity:.7;background-color:#f3f4f6;border-color:#d1d5db}.TravelMate-module__4WWMRG__infoBlockLocked .TravelMate-module__4WWMRG__infoIcon{color:#9ca3af}.TravelMate-module__4WWMRG__infoBlockLocked .TravelMate-module__4WWMRG__infoValue{color:#6b7280}.TravelMate-module__4WWMRG__lockedLabel{color:#ef4444;margin-left:.25rem;font-size:.625rem;font-weight:400}.TravelMate-module__4WWMRG__editModeNotice{background-color:#fef3c7;border:1px solid #fbbf24;border-radius:.5rem;flex-shrink:0;width:100%;margin-top:.75rem;padding:.5rem .75rem}@media (min-width:768px){.TravelMate-module__4WWMRG__editModeNotice{margin-top:1rem;padding:.75rem 1rem}}@media (max-width:1024px){.TravelMate-module__4WWMRG__editModeNotice{order:4;margin-top:.5rem}}.TravelMate-module__4WWMRG__editNoticeText{color:#92400e;font-size:.75rem;font-weight:500;line-height:1.5;display:block}@media (min-width:768px){.TravelMate-module__4WWMRG__editNoticeText{font-size:.875rem}}.TravelMate-module__4WWMRG__contentGrid{flex-grow:1;grid-template-columns:1fr;display:grid;overflow:hidden}@media (min-width:1024px){.TravelMate-module__4WWMRG__contentGrid{grid-template-columns:1fr 1fr;gap:3rem}}.TravelMate-module__4WWMRG__timelineColumn{width:100%;padding-right:.5rem;overflow-y:auto}@media (min-width:768px){.TravelMate-module__4WWMRG__timelineColumn{padding-right:1rem}}.TravelMate-module__4WWMRG__mapColumn{width:100%;height:100%;display:none;position:relative}@media (min-width:1024px){.TravelMate-module__4WWMRG__mapColumn{display:block}}.TravelMate-module__4WWMRG__timelineColumn::-webkit-scrollbar{width:6px}.TravelMate-module__4WWMRG__timelineColumn::-webkit-scrollbar-track{background:#f1f1f1}.TravelMate-module__4WWMRG__timelineColumn::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:3px}.TravelMate-module__4WWMRG__timelineColumn::-webkit-scrollbar-thumb:hover{background:#a1a1a1}.TravelMate-module__4WWMRG__planDetailsButton{color:#fff;cursor:pointer;background-color:#10b981;border:none;border-radius:.5rem;padding:.5rem 1rem;font-size:.875rem;font-weight:500;transition:background-color .2s}.TravelMate-module__4WWMRG__planDetailsButton:hover{background-color:#059669}.TravelMate-module__4WWMRG__planDetailsSection{background-color:#fff;border:1px solid #e5e7eb;border-radius:.5rem;margin-bottom:1rem;padding:1rem;box-shadow:0 1px 3px #0000001a}@media (min-width:768px){.TravelMate-module__4WWMRG__planDetailsSection{margin-bottom:1.5rem;padding:1.5rem}}.TravelMate-module__4WWMRG__planDetailsContent h3{color:#1f2937;margin:0 0 1rem;font-size:1.25rem;font-weight:600}.TravelMate-module__4WWMRG__planText{color:#4b5563;max-height:400px;font-size:.875rem;line-height:1.6;overflow-y:auto}.TravelMate-module__4WWMRG__planText p{margin:.5rem 0}.TravelMate-module__4WWMRG__planText::-webkit-scrollbar{width:6px}.TravelMate-module__4WWMRG__planText::-webkit-scrollbar-track{background:#f1f1f1}.TravelMate-module__4WWMRG__planText::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:3px}.TravelMate-module__4WWMRG__noEventsMessage{text-align:center;color:#6b7280;background-color:#fff;border:1px solid #e5e7eb;border-radius:.5rem;padding:2rem}.TravelMate-module__4WWMRG__loadingSection{background-color:#fff;border-radius:.5rem;flex-direction:column;justify-content:center;align-items:center;margin-bottom:1.5rem;padding:2rem;display:flex;box-shadow:0 1px 3px #0000001a}.TravelMate-module__4WWMRG__loadingSpinner{border:4px solid #f3f4f6;border-top-color:#3b82f6;border-radius:50%;width:40px;height:40px;margin-bottom:1rem;animation:1s linear infinite TravelMate-module__4WWMRG__spin}.TravelMate-module__4WWMRG__progressContainer{width:100%;max-width:300px;margin-top:1rem}.TravelMate-module__4WWMRG__progressBar{background-color:#e5e7eb;border-radius:4px;width:100%;height:8px;margin-top:.5rem;overflow:hidden}.TravelMate-module__4WWMRG__progressFill{background:linear-gradient(90deg,#3b82f6,#1d4ed8);border-radius:4px;height:100%;transition:width .3s}@keyframes TravelMate-module__4WWMRG__spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.TravelMate-module__4WWMRG__geminiRouteDescription{background:linear-gradient(135deg,#f3f4f6,#e5e7eb);border-left:3px solid #10b981;border-radius:8px;margin:8px 0;padding:8px 12px}.TravelMate-module__4WWMRG__routeDescription{color:#374151;margin:0;font-size:.9rem;line-height:1.4}.TravelMate-module__4WWMRG__geminiRouteSteps{flex-direction:column;gap:6px;margin:8px 0;display:flex}.TravelMate-module__4WWMRG__geminiRouteStep{background:#f8fafc;border-left:2px solid #3b82f6;border-radius:6px;align-items:flex-start;gap:8px;padding:8px 10px;font-size:.85rem;display:flex}.TravelMate-module__4WWMRG__stepNumber{color:#fff;text-align:center;background:#3b82f6;border-radius:50%;min-width:20px;padding:2px 6px;font-size:.75rem;font-weight:700}.TravelMate-module__4WWMRG__stepInfo{flex-direction:column;flex:1;gap:2px;display:flex}.TravelMate-module__4WWMRG__stepDetails{color:#374151;font-weight:500}.TravelMate-module__4WWMRG__fareBreakdown{color:#6b7280;font-size:.8rem;font-style:italic}.TravelMate-module__4WWMRG__stepFare{color:#059669;font-weight:600}.TravelMate-module__4WWMRG__geminiRecommendations{background:linear-gradient(135deg,#fef3c7,#fde68a);border-left:3px solid #f59e0b;border-radius:8px;margin:10px 0;padding:10px}.TravelMate-module__4WWMRG__recommendationsLabel{color:#92400e;margin:0 0 4px;font-size:.85rem;font-weight:600}.TravelMate-module__4WWMRG__recommendationsText{color:#92400e;margin:0;font-size:.85rem;line-height:1.4}@media (max-width:1024px){.TravelMate-module__4WWMRG__contentGrid{grid-template-columns:1fr}.TravelMate-module__4WWMRG__topSection{flex-direction:column;align-items:flex-start}.TravelMate-module__4WWMRG__planInfoContainer{flex-direction:row;gap:.5rem;width:100%;padding-bottom:.5rem;overflow-x:auto}.TravelMate-module__4WWMRG__dayButtonsContainer{flex-wrap:wrap;gap:.5rem}.TravelMate-module__4WWMRG__actionButtonsContainer{order:3;justify-content:flex-start;width:100%;margin-left:0}}.TravelMate-module__4WWMRG__actionButtonsContainer{flex-wrap:wrap;align-items:center;gap:.5rem;margin-left:auto;display:flex}@media (min-width:1025px){.TravelMate-module__4WWMRG__actionButtonsContainer{flex-wrap:nowrap;position:absolute;top:0;right:0}.TravelMate-module__4WWMRG__topSection{position:relative}}.TravelMate-module__4WWMRG__editButton,.TravelMate-module__4WWMRG__saveButton,.TravelMate-module__4WWMRG__cancelButton{cursor:pointer;border:none;border-radius:.375rem;align-items:center;gap:.25rem;padding:.4rem .75rem;font-size:.75rem;font-weight:500;transition:all .2s;display:flex}@media (min-width:768px){.TravelMate-module__4WWMRG__editButton,.TravelMate-module__4WWMRG__saveButton,.TravelMate-module__4WWMRG__cancelButton{gap:.5rem;padding:.5rem 1rem;font-size:.875rem}}.TravelMate-module__4WWMRG__editButton{color:#fff;background-color:#3b82f6}.TravelMate-module__4WWMRG__editButton:hover:not(:disabled){background-color:#2563eb}.TravelMate-module__4WWMRG__editButton:disabled{cursor:not-allowed;background-color:#9ca3af}.TravelMate-module__4WWMRG__saveButton{color:#fff;background-color:#10b981}.TravelMate-module__4WWMRG__saveButton:hover:not(:disabled){background-color:#059669}.TravelMate-module__4WWMRG__saveButton:disabled{cursor:not-allowed;background-color:#9ca3af}.TravelMate-module__4WWMRG__cancelButton{color:#fff;background-color:#ef4444}.TravelMate-module__4WWMRG__cancelButton:hover{background-color:#dc2626}.TravelMate-module__4WWMRG__editButtonGroup{gap:.5rem;display:flex}.TravelMate-module__4WWMRG__dragging{opacity:.5;transition:all .2s;transform:rotate(5deg)}.TravelMate-module__4WWMRG__dragOver{background-color:#3b82f60d;border:2px dashed #3b82f6;border-radius:.5rem;transition:all .2s;transform:scale(1.02)}.TravelMate-module__4WWMRG__addEventButton{color:#6b7280;cursor:pointer;background-color:#f9fafb;border:2px dashed #d1d5db;border-radius:.5rem;justify-content:center;align-items:center;gap:.5rem;width:100%;margin-top:1rem;padding:1rem;font-size:.875rem;font-weight:500;transition:all .2s;display:flex}.TravelMate-module__4WWMRG__addEventButton:hover{color:#3b82f6;background-color:#f3f4f6;border-color:#3b82f6}.TravelMate-module__4WWMRG__modalOverlay{z-index:1000;background-color:#00000080;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}@media (max-width:768px){.TravelMate-module__4WWMRG__modalOverlay{align-items:flex-start;padding:5vh .5rem .5rem}}.TravelMate-module__4WWMRG__addFormModal{background-color:#fff;border-radius:.75rem;flex-direction:column;width:90%;max-width:500px;max-height:90vh;display:flex;overflow:hidden;box-shadow:0 25px 50px -12px #00000040}@media (max-width:768px){.TravelMate-module__4WWMRG__addFormModal{border-radius:.5rem;width:95%;max-height:85vh}}.TravelMate-module__4WWMRG__addFormHeader{border-bottom:1px solid #e5e7eb;justify-content:space-between;align-items:center;padding:1rem;display:flex}@media (min-width:768px){.TravelMate-module__4WWMRG__addFormHeader{padding:1.5rem}}.TravelMate-module__4WWMRG__addFormHeader h3{color:#1f2937;margin:0;font-size:1.125rem;font-weight:600}.TravelMate-module__4WWMRG__closeModalButton{color:#6b7280;cursor:pointer;background-color:#f3f4f6;border:none;border-radius:.375rem;justify-content:center;align-items:center;width:2rem;height:2rem;transition:all .2s;display:flex}.TravelMate-module__4WWMRG__closeModalButton:hover{color:#374151;background-color:#e5e7eb}.TravelMate-module__4WWMRG__addFormBody{flex:1;padding:1rem;overflow-y:auto}@media (min-width:768px){.TravelMate-module__4WWMRG__addFormBody{padding:1.5rem}}@media (max-width:768px){.TravelMate-module__4WWMRG__addFormBody{padding:.75rem}}.TravelMate-module__4WWMRG__formGroup{margin-bottom:1rem}.TravelMate-module__4WWMRG__formRow{grid-template-columns:1fr 1fr;gap:1rem;display:grid}@media (max-width:768px){.TravelMate-module__4WWMRG__formRow{grid-template-columns:1fr;gap:.75rem}}.TravelMate-module__4WWMRG__formLabel{color:#374151;margin-bottom:.5rem;font-size:.875rem;font-weight:500;display:block}.TravelMate-module__4WWMRG__formInput,.TravelMate-module__4WWMRG__formTextarea,.TravelMate-module__4WWMRG__formSelect{box-sizing:border-box;border:1px solid #d1d5db;border-radius:.375rem;width:100%;padding:.75rem;font-size:.875rem;transition:border-color .2s}@media (max-width:768px){.TravelMate-module__4WWMRG__formInput,.TravelMate-module__4WWMRG__formTextarea,.TravelMate-module__4WWMRG__formSelect{padding:.625rem;font-size:16px}}.TravelMate-module__4WWMRG__formInput:focus,.TravelMate-module__4WWMRG__formTextarea:focus,.TravelMate-module__4WWMRG__formSelect:focus{border-color:#3b82f6;outline:none;box-shadow:0 0 0 3px #3b82f61a}.TravelMate-module__4WWMRG__formTextarea{resize:vertical;min-height:80px}@media (max-width:768px){.TravelMate-module__4WWMRG__formTextarea{min-height:60px}}.TravelMate-module__4WWMRG__addFormFooter{background-color:#f9fafb;border-top:1px solid #e5e7eb;flex-shrink:0;justify-content:flex-end;gap:.5rem;padding:1rem;display:flex}@media (min-width:768px){.TravelMate-module__4WWMRG__addFormFooter{gap:.75rem;padding:1.5rem}}@media (max-width:768px){.TravelMate-module__4WWMRG__addFormFooter{gap:.5rem;padding:.75rem}}.TravelMate-module__4WWMRG__addButton{color:#fff;cursor:pointer;background-color:#3b82f6;border:none;border-radius:.375rem;align-items:center;gap:.25rem;padding:.4rem 1rem;font-size:.75rem;font-weight:500;transition:all .2s;display:flex}@media (min-width:768px){.TravelMate-module__4WWMRG__addButton{gap:.5rem;padding:.5rem 1.5rem;font-size:.875rem}}.TravelMate-module__4WWMRG__addButton:hover:not(:disabled){background-color:#2563eb}.TravelMate-module__4WWMRG__addButton:disabled{cursor:not-allowed;background-color:#9ca3af}.TravelMate-module__4WWMRG__editModeButtons{background-color:#f8fafc;border:1px solid #e2e8f0;border-radius:.5rem;flex-direction:column;gap:.75rem;margin-top:1rem;padding:1rem;display:flex}.TravelMate-module__4WWMRG__recalculateButton{color:#fff;cursor:pointer;background-color:#8b5cf6;border:none;border-radius:.375rem;justify-content:center;align-items:center;gap:.5rem;padding:.75rem 1rem;font-size:.875rem;font-weight:500;transition:all .2s;display:flex}.TravelMate-module__4WWMRG__recalculateButton:hover:not(:disabled){background-color:#7c3aed;transform:translateY(-1px)}.TravelMate-module__4WWMRG__recalculateButton:disabled{cursor:not-allowed;background-color:#9ca3af;transform:none}.TravelMate-module__4WWMRG__recalculateButton:active{transform:translateY(0)}.TravelMate-module__4WWMRG__routeInfoBlock{background:linear-gradient(135deg,#eff6ff,#dbeafe);border-left:4px solid #3b82f6}.TravelMate-module__4WWMRG__routeDetails{flex:1}.TravelMate-module__4WWMRG__routeInfo{margin-top:.5rem}.TravelMate-module__4WWMRG__routeTitle{color:#1e40af;margin:0 0 .5rem;font-size:.9rem;font-weight:600}.TravelMate-module__4WWMRG__routeStats{flex-wrap:wrap;gap:.75rem;margin-bottom:.5rem;display:flex}.TravelMate-module__4WWMRG__routeStat{color:#1e40af;background:#3b82f61a;border-radius:.375rem;padding:.25rem .5rem;font-size:.8rem;font-weight:500}.TravelMate-module__4WWMRG__routeSections{flex-wrap:wrap;gap:.25rem;margin-top:.5rem;display:flex}.TravelMate-module__4WWMRG__routeSection{color:#059669;background:#10b9811a;border-radius:.25rem;padding:.2rem .4rem;font-size:.7rem}.TravelMate-module__4WWMRG__budgetInfoBlock{background:linear-gradient(135deg,#f0fdf4,#dcfce7);border-left:4px solid #10b981}.TravelMate-module__4WWMRG__budgetDetails{flex:1}.TravelMate-module__4WWMRG__budgetBreakdown{margin-top:.5rem}.TravelMate-module__4WWMRG__budgetRow{border-bottom:1px solid #10b9811a;justify-content:space-between;align-items:center;padding:.25rem 0;font-size:.85rem;display:flex}.TravelMate-module__4WWMRG__budgetRow:last-child{color:#059669;border-bottom:none;font-weight:600}.TravelMate-module__4WWMRG__budgetRow span:first-child{color:#374151}.TravelMate-module__4WWMRG__budgetRow span:last-child{color:#059669;font-weight:600}@media (max-width:768px){.TravelMate-module__4WWMRG__routeStats{flex-direction:column;gap:.5rem}.TravelMate-module__4WWMRG__routeStat{text-align:center}.TravelMate-module__4WWMRG__budgetRow{font-size:.8rem}}.TravelMate-module__4WWMRG__passwordContainer{z-index:1000;background:#fff;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.TravelMate-module__4WWMRG__passwordModal{text-align:center;background:#fff;border:1px solid #e5e7eb;border-radius:16px;width:100%;max-width:450px;padding:3rem 2.5rem;animation:.3s ease-out TravelMate-module__4WWMRG__fadeInScale;box-shadow:0 4px 20px #0000001a}@keyframes TravelMate-module__4WWMRG__fadeInScale{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.TravelMate-module__4WWMRG__passwordModal h2{color:#1f2937;margin:1rem 0 1.5rem;font-size:1.5rem;font-weight:600}.TravelMate-module__4WWMRG__passwordModal form{flex-direction:column;gap:1.25rem;margin-top:1.5rem;display:flex}.TravelMate-module__4WWMRG__passwordInput{text-align:center;letter-spacing:.05em;background-color:#f9fafb;border:2px solid #e5e7eb;border-radius:12px;padding:1rem 1.25rem;font-size:1rem;transition:all .3s}.TravelMate-module__4WWMRG__passwordInput:focus{background-color:#fff;border-color:#4285f4;outline:none;box-shadow:0 0 0 4px #4285f41a}.TravelMate-module__4WWMRG__passwordInput::placeholder{color:#9ca3af;letter-spacing:normal}.TravelMate-module__4WWMRG__submitButton{color:#fff;cursor:pointer;background-color:#4285f4;border:none;border-radius:12px;padding:1rem 2rem;font-size:1rem;font-weight:600;transition:all .3s;box-shadow:0 2px 8px #4285f44d}.TravelMate-module__4WWMRG__submitButton:hover{background-color:#3367d6;transform:translateY(-2px);box-shadow:0 4px 12px #4285f466}.TravelMate-module__4WWMRG__submitButton:active{background-color:#2952b3;transform:translateY(0)}.TravelMate-module__4WWMRG__errorText{color:#dc2626;background-color:#fee2e2;border-left:4px solid #dc2626;border-radius:8px;margin-top:.5rem;padding:.75rem;font-size:.875rem}@media (max-width:640px){.TravelMate-module__4WWMRG__passwordModal{padding:2rem 1.5rem}.TravelMate-module__4WWMRG__passwordModal h2{font-size:1.25rem}.TravelMate-module__4WWMRG__passwordInput,.TravelMate-module__4WWMRG__submitButton{padding:.875rem 1rem;font-size:.875rem}}.TravelMate-module__4WWMRG__mapModalOverlay{z-index:2000;background-color:#000000b3;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}@media (min-width:1024px){.TravelMate-module__4WWMRG__mapModalOverlay{display:none}}.TravelMate-module__4WWMRG__mapModalContent{background-color:#fff;border-radius:1rem;flex-direction:column;width:90%;max-width:500px;height:60vh;display:flex;position:relative;box-shadow:0 10px 40px #0000004d}.TravelMate-module__4WWMRG__mapModalHeader{background-color:#fff;border-bottom:1px solid #e5e7eb;flex-shrink:0;justify-content:space-between;align-items:center;padding:1rem;display:flex}.TravelMate-module__4WWMRG__mapModalTitle{color:#1f2937;margin:0;font-size:1rem;font-weight:600}.TravelMate-module__4WWMRG__mapModalCloseButton{color:#6b7280;cursor:pointer;background-color:#f3f4f6;border:none;border-radius:.375rem;justify-content:center;align-items:center;width:2rem;height:2rem;transition:all .2s;display:flex}.TravelMate-module__4WWMRG__mapModalCloseButton:hover{color:#374151;background-color:#e5e7eb}.TravelMate-module__4WWMRG__mapModalBody{flex:1;position:relative;overflow:hidden}
.ConfirmDialog-module__dLTK2q__backdrop{z-index:9999;background-color:#00000080;justify-content:center;align-items:center;animation:.2s ease-out ConfirmDialog-module__dLTK2q__fadeIn;display:flex;position:fixed;inset:0}@keyframes ConfirmDialog-module__dLTK2q__fadeIn{0%{opacity:0}to{opacity:1}}.ConfirmDialog-module__dLTK2q__dialog{background:#fff;border-radius:12px;width:90%;max-width:480px;animation:.3s ease-out ConfirmDialog-module__dLTK2q__slideUp;overflow:hidden;box-shadow:0 10px 40px #0003}@keyframes ConfirmDialog-module__dLTK2q__slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.ConfirmDialog-module__dLTK2q__header{border-bottom:1px solid #e5e7eb;padding:24px 24px 16px}.ConfirmDialog-module__dLTK2q__title{color:#111827;margin:0;font-size:20px;font-weight:600}.ConfirmDialog-module__dLTK2q__body{padding:24px}.ConfirmDialog-module__dLTK2q__message{color:#374151;margin:0;font-size:16px;line-height:1.6}.ConfirmDialog-module__dLTK2q__footer{justify-content:flex-end;gap:12px;padding:16px 24px 24px;display:flex}.ConfirmDialog-module__dLTK2q__cancelButton,.ConfirmDialog-module__dLTK2q__confirmButton{cursor:pointer;border:none;border-radius:8px;min-width:100px;padding:10px 20px;font-size:15px;font-weight:500;transition:all .2s}.ConfirmDialog-module__dLTK2q__cancelButton{color:#374151;background-color:#f3f4f6}.ConfirmDialog-module__dLTK2q__cancelButton:hover{background-color:#e5e7eb}.ConfirmDialog-module__dLTK2q__confirmButton{color:#fff}.ConfirmDialog-module__dLTK2q__confirmButton.ConfirmDialog-module__dLTK2q__danger{background-color:#ef4444}.ConfirmDialog-module__dLTK2q__confirmButton.ConfirmDialog-module__dLTK2q__danger:hover{background-color:#dc2626}.ConfirmDialog-module__dLTK2q__confirmButton.ConfirmDialog-module__dLTK2q__warning{background-color:#f59e0b}.ConfirmDialog-module__dLTK2q__confirmButton.ConfirmDialog-module__dLTK2q__warning:hover{background-color:#d97706}.ConfirmDialog-module__dLTK2q__confirmButton.ConfirmDialog-module__dLTK2q__info{background-color:#3b82f6}.ConfirmDialog-module__dLTK2q__confirmButton.ConfirmDialog-module__dLTK2q__info:hover{background-color:#2563eb}@media (max-width:640px){.ConfirmDialog-module__dLTK2q__dialog{width:95%;margin:16px}.ConfirmDialog-module__dLTK2q__header{padding:20px 20px 12px}.ConfirmDialog-module__dLTK2q__title{font-size:18px}.ConfirmDialog-module__dLTK2q__body{padding:20px}.ConfirmDialog-module__dLTK2q__message{font-size:15px}.ConfirmDialog-module__dLTK2q__footer{flex-direction:column-reverse;padding:12px 20px 20px}.ConfirmDialog-module__dLTK2q__cancelButton,.ConfirmDialog-module__dLTK2q__confirmButton{width:100%;min-width:auto}}
