:root{--indigo: #6366F1;--destination: #6366F1;--pink: #EC4899;--hotel: #EC4899;--green: #10B981;--activity: #10B981;--amber: #F59E0B;--poi: #F59E0B;--royal-blue: #007bff;--white: #fff;--gray-50: #f8f9fa;--gray-100: #e9ecef;--gray-200: #dee2e6;--gray-300: #e0e0e0;--gray-400: #ddd;--gray-500: #999;--gray-600: #6c757d;--gray-700: #5a6268;--gray-800: #555;--gray-850: #495057;--gray-900: #333;--blue-50: #e7f3ff;--blue-500: #007bff;--blue-700: #0056b3;--yellow-50: #fff9e6;--red-50: #fee;--red-100: #fcc;--red-500: #dc3545;--red-600: #c33;--red-700: #c82333;--green-500: #28a745;--green-700: #218838}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;height:100vh;overflow:hidden}#app{display:flex;height:100vh}.btn{padding:10px 16px;border:none;border-radius:6px;cursor:pointer;font-size:14px;font-size:.875rem;font-weight:500;transition:all .2s}.btn-primary{background:var(--blue-500);color:var(--white)}.btn-primary:hover{background:var(--blue-700)}.btn-secondary{background:var(--gray-600);color:var(--white)}.btn-secondary:hover{background:var(--gray-700)}.btn-danger{background:var(--red-500);color:var(--white)}.btn-danger:hover{background:var(--red-700)}.btn-success{background:var(--green-500);color:var(--white)}.btn-success:hover{background:var(--green-700)}.btn-sm{padding:6px 12px;font-size:12px;font-size:.75rem}.btn-icon{width:32px;height:32px;border:1px solid var(--gray-400);border-radius:4px;background:var(--white);font-size:16px;font-size:1rem;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center;color:var(--gray-900)}.btn-icon:hover{background:var(--gray-50);border-color:var(--blue-500);color:var(--blue-500)}.btn-icon:active{transform:scale(0.95)}#filters,#travel-plan-filters{padding:15px 20px;background:var(--white);border-bottom:1px solid var(--gray-400)}.filter-group{margin-bottom:12px}.filter-group label{display:block;font-size:12px;font-size:.75rem;font-weight:600;color:var(--gray-700);margin-bottom:6px;text-transform:uppercase;letter-spacing:.5px}.filter-group select{width:100%;padding:8px;border:1px solid var(--gray-400);border-radius:4px;font-size:14px;font-size:.875rem}.image-list{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.link-list .link-item{display:flex;align-items:center;gap:8px;font-size:12px;font-size:.75rem}.link-list .remove-link{background:rgba(220,53,69,.9);color:var(--white);border:none;border-radius:3px;width:20px;height:20px;cursor:pointer;font-size:12px;font-size:.75rem}.image-item{position:relative;width:80px;height:80px;border-radius:4px;overflow:hidden;border:1px solid var(--gray-400)}.image-item img{width:100%;height:100%;object-fit:cover}.image-item .remove-image{position:absolute;top:2px;right:2px;background:rgba(220,53,69,.9);color:var(--white);border:none;border-radius:3px;width:20px;height:20px;cursor:pointer;font-size:12px;font-size:.75rem;display:flex;align-items:center;justify-content:center;padding:0}.image-input-group{display:flex;gap:8px;margin-top:8px}.image-input-group input{flex:1}.location-images,.location-links{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.location-images img{width:100px;height:100px;object-fit:cover;border-radius:4px;border:1px solid var(--gray-400);cursor:pointer;transition:opacity .2s}.location-images img:hover{opacity:.8}.location-links a{font-size:12px;font-size:.75rem;color:var(--gray-900)}.popup-image{width:100%;max-width:200px;height:auto;margin-top:8px;border-radius:4px;cursor:pointer}.popup-image:hover{opacity:.8}.error{padding:10px;background:var(--red-50);border:1px solid var(--red-100);border-radius:4px;margin-bottom:16px;color:var(--red-600);font-size:14px;font-size:.875rem}.loading{text-align:center;padding:20px;color:var(--gray-700)}.empty-state{text-align:center;padding:40px 20px;color:var(--gray-500)}.empty-state h3{margin-bottom:16px;color:var(--gray-900);font-size:20px;font-size:1.25rem}@media only screen and (min-width: 768px){.empty-state h3{font-size:24px;font-size:1.5rem}}.empty-state p{margin-bottom:12px;color:var(--gray-700);font-size:14px;font-size:.875rem}@media only screen and (min-width: 768px){.empty-state p{font-size:16px;font-size:1rem}}.empty-state .btn{margin-top:24px}@media only screen and (min-width: 768px){.empty-state{padding:60px 20px}}.tabs{display:flex;gap:5px;margin-bottom:15px}.tab{flex:1;padding:8px 12px;background:var(--gray-100);border:none;border-radius:4px;cursor:pointer;font-size:13px;font-size:.8125rem;font-weight:500;color:var(--gray-700);transition:all .2s}.tab:hover{background:var(--gray-200)}.tab.active{background:var(--blue-500);color:var(--white)}.tab-content{display:none}.tab-content.active{display:block}#trip-controls{position:absolute;top:10px;right:10px;z-index:1000;display:flex;flex-direction:column;align-items:stretch;gap:6px;background:var(--white);padding:8px;border-radius:8px;box-shadow:0 2px 8px rgba(0,0,0,.15)}#trip-controls .btn-icon{width:100%}@media only screen and (min-width: 480px){#trip-controls .btn-icon{width:32px}}@media only screen and (min-width: 768px){#trip-controls .btn-icon{width:36px;height:36px;font-size:18px;font-size:1.125rem}}@media only screen and (min-width: 480px){#trip-controls{flex-direction:row;gap:8px}}@media only screen and (min-width: 768px){#trip-controls{top:20px;right:20px;padding:8px}}.trip-selector{min-width:auto;width:100%;padding:6px 10px;border:1px solid var(--gray-400);border-radius:4px;font-size:13px;font-size:.8125rem;font-weight:500;cursor:pointer;background:var(--white);transition:all .2s}.trip-selector:hover{border-color:var(--blue-500)}.trip-selector:focus{outline:none;border-color:var(--blue-500);box-shadow:0 0 0 3px rgba(0,123,255,.1)}@media only screen and (min-width: 480px){.trip-selector{min-width:140px;width:auto}}@media only screen and (min-width: 768px){.trip-selector{min-width:200px;padding:8px 12px;font-size:14px;font-size:.875rem}}.calendar-modal-content{max-width:95%;width:100%;max-height:90vh}#calendar-container{overflow-y:auto;max-height:calc(90vh - 100px)}.calendar-view-toggle{display:none}.calendar-vertical{display:flex;flex-direction:column;gap:15px}.calendar-day-card{background:var(--white);border:1px solid var(--gray-300);border-radius:8px;padding:15px}.calendar-day-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;padding-bottom:10px;border-bottom:2px solid var(--blue-500)}.calendar-day-number{font-size:32px;font-size:2rem;font-weight:700;color:var(--blue-500);line-height:1}.calendar-day-name{text-align:right}.calendar-day-name .day{font-size:18px;font-size:1.125rem;font-weight:600;color:var(--gray-900)}.calendar-day-name .month-year{font-size:13px;font-size:.8125rem;color:var(--gray-700)}.calendar-day-items{display:flex;flex-direction:column;gap:8px}.calendar-item{background:var(--gray-50);padding:10px 12px;border-radius:6px;border-left:4px solid;font-size:14px;font-size:.875rem}.calendar-item-travel{border-left-color:var(--blue-500)}.calendar-item-destination{border-left-color:var(--destination)}.calendar-item-activity{border-left-color:var(--activity)}.calendar-item-poi{border-left-color:var(--poi)}.calendar-item-type{font-size:11px;font-size:.6875rem;text-transform:uppercase;font-weight:600;color:var(--gray-700);letter-spacing:.5px;margin-bottom:4px}.calendar-item-title{font-weight:600;color:var(--gray-900);margin-bottom:4px}.calendar-item-details{font-size:13px;font-size:.8125rem;color:var(--gray-800)}.calendar-empty{text-align:center;padding:40px 20px;color:var(--gray-500)}.vertical-calendar-row{display:flex;flex-direction:row;flex-wrap:nowrap;align-items:center;justify-content:space-between}.vertical-calendar-row .weather-info{display:flex;flex-direction:row;align-items:center;gap:5px}.vertical-calendar-row .weather-icon{text-align:center;font-size:30px;font-size:1.875rem}.vertical-calendar-row .weather-temp{font-size:13px;font-size:.8125rem}@media(min-width: 1024px){.calendar-modal-content{max-width:1200px}.calendar-view-toggle{display:flex;gap:5px;background:var(--gray-100);padding:4px;border-radius:6px}.calendar-view-toggle .toggle-btn{display:flex;align-items:center;gap:6px;padding:6px 12px;border:none;background:rgba(0,0,0,0);border-radius:4px;cursor:pointer;font-size:13px;font-size:.8125rem;font-weight:500;color:var(--gray-700);transition:all .2s}.calendar-view-toggle .toggle-btn:hover{background:var(--gray-300)}.calendar-view-toggle .toggle-btn.active{background:var(--white);color:var(--blue-500);box-shadow:0 1px 3px rgba(0,0,0,.1)}.calendar-view-toggle .toggle-btn svg{width:16px;height:16px}.calendar-grid{display:grid;grid-template-columns:repeat(7, 1fr);gap:1px;background:var(--gray-300);border:1px solid var(--gray-300)}.calendar-month-header{grid-column:1/-1;background:var(--blue-500);color:var(--white);padding:15px;font-size:20px;font-size:1.25rem;font-weight:700;text-align:center}.calendar-weekday-header{background:var(--gray-50);padding:10px;text-align:center;font-weight:600;font-size:12px;font-size:.75rem;text-transform:uppercase;color:var(--gray-700)}.calendar-grid-day{background:var(--white);min-height:120px;padding:8px;position:relative}.calendar-grid-day.other-month{background:var(--gray-50);opacity:.5}.calendar-grid-day.today{background:var(--yellow-50)}.calendar-grid-day-number{font-weight:600;font-size:14px;font-size:.875rem;color:var(--gray-900);margin-bottom:6px}.calendar-grid-items{display:flex;flex-direction:column;gap:4px}.calendar-grid-item{font-size:11px;font-size:.6875rem;padding:4px 6px;border-radius:4px;border-left:3px solid;background:var(--gray-50);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;cursor:pointer}.calendar-grid-item:hover{opacity:.8}.calendar-grid-item.travel{border-left-color:var(--blue-500)}.calendar-grid-item.destination{border-left-color:var(--destination)}.calendar-grid-item.activity{border-left-color:var(--activity)}.calendar-grid-item.poi{border-left-color:var(--poi)}}.flatpickr-day.selected,.flatpickr-day.selected:hover{background:var(--blue-500);border-color:var(--blue-500)}.flatpickr-day.today{border-color:var(--blue-500)}.flatpickr-months .flatpickr-month{background:var(--blue-500)}.flatpickr-current-month .flatpickr-monthDropdown-months{background:var(--blue-500);color:var(--white) !important}.flatpickr-current-month .numInputWrapper{color:var(--white)}.flatpickr-weekdays{background:var(--blue-500)}.flatpickr-weekday{color:var(--white) !important}.flatpickr-prev-month,.flatpickr-next-month{color:var(--white) !important;fill:var(--white) !important}.flatpickr-prev-month:hover,.flatpickr-next-month:hover{color:var(--white) !important;fill:var(--white) !important}.flatpickr-prev-month:hover svg,.flatpickr-next-month:hover svg{fill:var(--white) !important}.form-group{margin-bottom:16px}.form-group label{display:block;font-size:14px;font-size:.875rem;font-weight:600;color:var(--gray-900);margin-bottom:6px}.form-group input,.form-group select,.form-group textarea{width:100%;padding:10px;border:1px solid var(--gray-400);border-radius:4px;font-size:14px;font-size:.875rem;font-family:inherit}.form-group textarea{resize:vertical;min-height:80px}.form-group small{display:block;margin-top:4px;font-size:12px;font-size:.75rem;color:var(--gray-700)}.form-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:20px}.geocode-result{padding:10px;background:var(--blue-50);border:1px solid #b3d9ff;border-radius:4px;margin-top:8px;font-size:13px;font-size:.8125rem}.slug-preview{font-family:monospace;padding:10px;background:var(--gray-50);border:1px solid var(--gray-400);border-radius:4px;color:var(--gray-850);font-size:13px;font-size:.8125rem;margin-top:5px}#sidebar{position:absolute;left:0;top:0;height:100%;z-index:1500;width:calc(100% - 32px);max-width:400px;background:var(--white);border-right:1px solid var(--gray-400);display:flex;flex-direction:column;overflow:visible;transition:margin-left .3s ease;box-shadow:2px 0 8px rgba(0,0,0,.15)}#sidebar.collapsed{margin-left:calc(-100% + 32px)}@media only screen and (min-width: 768px){#sidebar.collapsed{margin-left:-400px}}@media only screen and (min-width: 768px){#sidebar{position:relative;width:400px;max-width:none;box-shadow:none}}#sidebar-inner{display:flex;flex-direction:column;overflow-y:auto;overflow-x:hidden;flex:1}#sidebar-header{padding:20px;background:var(--gray-50);border-bottom:1px solid var(--gray-400)}#sidebar-header h1{font-size:24px;font-size:1.5rem;margin-bottom:15px;color:var(--gray-900)}#toggle-sidebar{position:absolute;top:10px;right:-32px;width:32px;height:32px;background:var(--white);border:1px solid var(--gray-400);border-left:none;border-radius:0 6px 6px 0;cursor:pointer;font-size:18px;font-size:1.125rem;line-height:1;box-shadow:2px 0 4px rgba(0,0,0,.1);display:flex;align-items:center;justify-content:center;z-index:1000}#toggle-sidebar:hover{background:var(--gray-50)}#toggle-sidebar .icon-close{display:block}#toggle-sidebar .icon-open{display:none}@media only screen and (min-width: 768px){#toggle-sidebar{top:20px}}#sidebar.collapsed #toggle-sidebar .icon-close{display:none}#sidebar.collapsed #toggle-sidebar .icon-open{display:block}.destination-group{margin-bottom:20px}.destination-header{background:var(--blue-500);color:var(--white);padding:12px 15px;font-weight:600;font-size:16px;font-size:1rem;border-radius:8px 8px 0 0;margin-bottom:0;cursor:pointer;display:flex;flex-direction:column;align-items:flex-start;transition:background .2s}.destination-header:hover{background:var(--blue-700)}@media only screen and (min-width: 768px){.destination-header{flex-direction:row;justify-content:space-between;align-items:center}}.destination-group:not(.expanded) .destination-header{margin-bottom:10px}.destination-title{display:flex;align-items:center;gap:10px}.destination-date{font-size:14px;font-size:.875rem;font-weight:400;opacity:.9;padding-left:20px}@media only screen and (min-width: 768px){.destination-date{padding-left:0}}.destination-details{display:none;padding:15px;background:var(--blue-50);border:1px solid var(--gray-300);border-top:none;border-radius:0 0 8px 8px;margin-bottom:10px}.destination-group.expanded .destination-details{display:block}.destination-items{padding:0 5px}.weather-forecast{display:flex;gap:5px;align-items:center;justify-content:flex-start;flex-wrap:wrap}.weather-forecast .weather-info{display:flex;flex-direction:column;align-items:center;flex:0 0 calc(25% - 15px)}.weather-forecast .weather-info .weather-icon{text-align:center;font-size:30px;font-size:1.875rem}.weather-forecast .weather-info .weather-temp{font-size:13px;font-size:.8125rem}#location-list{flex:1;overflow-y:auto;padding:10px}.location-item{background:var(--white);border:1px solid var(--gray-300);border-radius:8px;margin-bottom:10px;overflow:hidden;transition:box-shadow .2s}.location-item:hover{box-shadow:0 2px 8px rgba(0,0,0,.1)}.location-header{padding:12px 15px;cursor:pointer;display:flex;align-items:center;justify-content:space-between;background:var(--gray-50)}.location-header:hover{background:var(--gray-100)}.location-title{display:flex;align-items:center;gap:10px;flex:1}.location-marker{width:12px;height:12px;border-radius:50%;flex-shrink:0}.location-name{font-weight:600;font-size:14px;font-size:.875rem;color:var(--gray-900)}.location-category{font-size:11px;font-size:.6875rem;color:var(--gray-700);background:var(--gray-100);padding:2px 8px;border-radius:4px;text-transform:uppercase;letter-spacing:.5px;display:inline-block}.location-details{display:none;padding:15px;border-top:1px solid var(--gray-300)}.location-item.expanded .location-details{display:block}.location-info{margin-bottom:10px}.location-meta .location-info{margin-bottom:0}.location-meta{display:flex;justify-content:space-between;align-items:flex-start;margin:15px -15px -15px;padding:15px;border-top:1px solid var(--gray-300)}.location-info label{font-size:11px;font-size:.6875rem;font-weight:600;color:var(--gray-700);display:block;margin-bottom:4px;text-transform:uppercase}.location-info p{font-size:13px;font-size:.8125rem;color:var(--gray-900);line-height:1.5}.location-info.notes p{font-style:italic;font-size:15px;font-size:.9375rem;padding:10px;border-radius:4px;background:var(--gray-200)}.location-actions{display:flex;gap:8px;margin-top:12px}#map-container{flex:1;position:relative}#map{width:100%;height:100%}.leaflet-control-zoom{position:fixed;bottom:15px}.marker-category{font-size:0px;font-size:0rem;font-style:italic;margin-bottom:0}.marker-name{font-size:12px;font-size:.75rem;font-weight:bold;margin-bottom:5px}.marker-user{font-size:10px;font-size:.625rem}.map-legend{position:absolute;bottom:10px;right:10px;background:var(--white);padding:8px 10px;border-radius:8px;box-shadow:0 2px 8px rgba(0,0,0,.2);z-index:1000;font-size:11px;font-size:.6875rem}.map-legend h4{margin:0 0 6px 0;font-size:12px;font-size:.75rem;font-weight:600;color:var(--gray-900)}@media only screen and (min-width: 768px){.map-legend h4{font-size:14px;font-size:.875rem;margin-bottom:8px}}@media only screen and (min-width: 768px){.map-legend{bottom:30px;right:20px;padding:12px 15px;font-size:13px;font-size:.8125rem}}.legend-item{display:flex;align-items:center;gap:8px;margin-bottom:4px}.legend-item:last-child{margin-bottom:0}@media only screen and (min-width: 768px){.legend-item{margin-bottom:6px}}.legend-marker{width:12px;height:12px;border-radius:50%;border:2px solid var(--white);box-shadow:0 1px 3px rgba(0,0,0,.3);flex-shrink:0}@media only screen and (min-width: 768px){.legend-marker{width:14px;height:14px}}.legend-label{color:var(--gray-800)}.modal{display:none;position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,.5);z-index:2000;align-items:center;justify-content:center}.modal.active{display:flex}.modal-content{background:var(--white);border-radius:8px;padding:24px;width:90%;max-height:90vh;overflow-y:auto}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.modal-header h2{font-size:20px;font-size:1.25rem;color:var(--gray-900)}.close-modal:not(.btn){background:none;border:none;font-size:24px;font-size:1.5rem;cursor:pointer;color:var(--gray-500);padding:0;width:30px;height:30px;display:flex;align-items:center;justify-content:center}.close-modal:not(.btn):hover{color:var(--gray-900)}#image-modal{display:none;position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,.9);z-index:3000;align-items:center;justify-content:center;cursor:pointer}#image-modal.active{display:flex}#image-modal img{max-width:90%;max-height:90%;object-fit:contain;box-shadow:0 4px 20px rgba(0,0,0,.5)}#image-modal .close-image-modal{position:absolute;top:20px;right:30px;color:#fff;font-size:40px;font-size:2.5rem;font-weight:bold;cursor:pointer;z-index:3001;width:50px;height:50px;display:flex;align-items:center;justify-content:center;background:rgba(0,0,0,.5);border-radius:50%;transition:background .2s}#image-modal .close-image-modal:hover{background:rgba(0,0,0,.8)}#travel-plan-list{margin:10px}.travel-plan-item{background:var(--white);border:1px solid var(--gray-300);border-radius:8px;margin-bottom:10px;padding:15px}.travel-plan-item:hover{box-shadow:0 2px 8px rgba(0,0,0,.1)}.travel-plan-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:10px}.travel-plan-title{display:flex;align-items:center;gap:10px}.travel-type-badge{font-size:11px;font-size:.6875rem;color:var(--white);background:var(--blue-500);padding:4px 10px;border-radius:4px;text-transform:uppercase;letter-spacing:.5px;font-weight:600}.travel-plan-user{font-size:12px;font-size:.75rem;color:var(--gray-700)}.travel-plan-route{font-weight:600;font-size:14px;font-size:.875rem;color:var(--gray-900);margin-bottom:8px}.travel-plan-description{font-size:13px;font-size:.8125rem;color:var(--gray-800);line-height:1.5;margin-bottom:10px}.travel-plan-actions{display:flex;gap:8px}#booking-list{margin:10px}.bookings-total-cost{display:flex;justify-content:space-between;align-items:center;background:var(--gray-100);border:1px solid var(--gray-300);border-radius:8px;padding:12px 15px;margin-bottom:15px}.total-cost-label{font-size:14px;font-size:.875rem;font-weight:600;color:var(--gray-700)}.total-cost-amount{font-size:16px;font-size:1rem;font-weight:700;color:var(--gray-900)}.booking-item{background:var(--white);border:1px solid var(--gray-300);border-radius:8px;margin-bottom:10px;overflow:hidden}.booking-item:hover{box-shadow:0 2px 8px rgba(0,0,0,.1)}.booking-item.expanded .booking-details{display:block}.booking-header{display:flex;align-items:center;justify-content:space-between;padding:15px;cursor:pointer;gap:10px}.booking-header:hover{background:var(--gray-100)}.booking-title{display:flex;align-items:center;gap:10px;flex:1;min-width:0}.booking-name{font-weight:600;font-size:14px;font-size:.875rem;color:var(--gray-900);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.booking-type-badge{font-size:11px;font-size:.6875rem;padding:4px 8px;border-radius:4px;font-weight:600;white-space:nowrap;flex-shrink:0}.booking-dates{font-size:12px;font-size:.75rem;color:var(--gray-600);white-space:nowrap;flex-shrink:0}.booking-details{display:none;padding:15px 15px 15px;border-top:1px solid var(--gray-200)}.booking-detail-title{font-weight:600;font-size:15px;font-size:.9375rem;color:var(--gray-900);margin-bottom:10px}.booking-confirmation{font-size:13px;font-size:.8125rem;color:var(--gray-700);margin-bottom:10px}.booking-confirmation code{background:var(--gray-100);padding:2px 6px;border-radius:4px;font-family:monospace;font-size:12px;font-size:.75rem}.booking-cost{font-size:13px;font-size:.8125rem;color:var(--gray-700);margin-bottom:10px}.booking-notes{font-size:13px;font-size:.8125rem;color:var(--gray-800);line-height:1.5;margin-bottom:10px}.booking-links{font-size:13px;font-size:.8125rem;color:var(--gray-700);margin-bottom:10px}.booking-links-list{display:flex;flex-direction:column;gap:4px;margin-top:4px}.booking-links-list a{color:var(--primary);text-decoration:none;word-break:break-all;font-size:12px;font-size:.75rem}.booking-links-list a:hover{text-decoration:underline}.booking-linked-location{font-size:12px;font-size:.75rem;color:var(--gray-600);margin-bottom:10px}.booking-linked-location strong{color:var(--gray-800)}.booking-actions{display:flex;gap:8px;padding-top:10px}.linked-bookings{display:flex;flex-direction:column;gap:8px}.linked-booking-item{display:flex;align-items:center;gap:8px;font-size:13px;font-size:.8125rem;flex-wrap:wrap}.linked-booking-name{color:var(--gray-800);font-weight:500}.linked-booking-conf{background:var(--gray-100);padding:2px 6px;border-radius:4px;font-family:monospace;font-size:11px;font-size:.6875rem;color:var(--gray-600)}.currency-modal-content{max-width:400px}.currency-converter{padding:10px 0}.currency-input-group{margin-bottom:20px}.currency-input-group label{display:block;font-size:13px;font-size:.8125rem;font-weight:600;color:var(--gray-700);margin-bottom:6px}.currency-input-group input{width:100%;padding:12px 15px;font-size:18px;font-size:1.125rem;border:2px solid var(--gray-300);border-radius:8px;transition:border-color .2s ease}.currency-input-group input:focus{outline:none;border-color:var(--blue-500)}.currency-input-group input::placeholder{color:var(--gray-400)}.currency-direction-group{margin-bottom:25px}.currency-direction-group label{display:block;font-size:13px;font-size:.8125rem;font-weight:600;color:var(--gray-700);margin-bottom:6px}.currency-direction-group select{width:100%;padding:12px 15px;font-size:15px;font-size:.9375rem;border:2px solid var(--gray-300);border-radius:8px;background-color:var(--white);cursor:pointer;transition:border-color .2s ease}.currency-direction-group select:focus{outline:none;border-color:var(--blue-500)}.currency-direction-group .currency-rate-helper{display:block;margin-top:6px;font-size:13px;font-size:.8125rem;color:var(--gray-500);font-weight:500}.currency-result{background:var(--gray-100);border-radius:12px;padding:20px;text-align:center;margin-bottom:15px;min-height:70px;display:flex;align-items:center;justify-content:center;opacity:0;transform:translateY(-10px);transition:opacity .2s ease,transform .2s ease}.currency-result.visible{opacity:1;transform:translateY(0)}.conversion-input{font-size:16px;font-size:1rem;color:var(--gray-600)}.conversion-equals{font-size:18px;font-size:1.125rem;color:var(--gray-400);padding:0 12px}.conversion-output{font-size:24px;font-size:1.5rem;font-weight:700;color:var(--gray-900)}.currency-rates-info{text-align:center;font-size:12px;font-size:.75rem;color:var(--gray-500)}
