.itinerary-header{background:#fffffff2;padding:16px 32px 12px;box-shadow:0 2px 8px #0000000d;position:fixed;top:0;left:0;right:0;width:100%;z-index:100}.header-content{display:flex;justify-content:space-between;align-items:center;width:100%;margin-bottom:12px}.header-text h1{font-size:1.25rem;font-weight:600;color:var(--text-main);margin:0 0 2px}.header-text p{color:var(--text-muted);font-size:.8rem;margin:0}.header-actions{display:flex;gap:12px}.create-blank-btn,.create-ai-btn{display:flex;align-items:center;gap:6px;padding:8px 16px;border-radius:8px;font-size:.85rem;font-weight:500;border:none;cursor:pointer;transition:all .2s ease}.create-blank-btn{background:#fff;color:var(--text-main);border:1px solid var(--border-subtle)}.create-blank-btn:hover{background:#f8f9fa;transform:translateY(-1px);box-shadow:0 2px 8px #0000001a}.create-ai-btn{background:linear-gradient(135deg,#007bff,#0056b3);color:#fff}.create-ai-btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px #007bff66}.filter-tabs{display:flex;gap:8px;margin:0;padding:0}.filter-tab{padding:6px 16px;border-radius:99px;font-size:.9rem;font-weight:500;background:transparent;color:var(--text-secondary);border:none;cursor:pointer;transition:var(--transition-fast)}.filter-tab:hover{color:var(--text-main);background:var(--glass-bg-subtle)}.filter-tab.active{background-color:var(--primary-blue);color:#fff}[data-theme=dark] .itinerary-header{background:#1a1f2ef2;box-shadow:0 2px 8px #0000004d}[data-theme=dark] .create-blank-btn{background:var(--surface-dark);color:var(--text-main);border-color:var(--border-subtle)}[data-theme=dark] .create-blank-btn:hover{background:var(--surface-hover)}.time-picker-trigger{display:flex;align-items:center;justify-content:flex-start;gap:8px;padding:8px 12px;border:1px solid var(--border-subtle);border-radius:6px;background:var(--surface-white);cursor:pointer;transition:all .2s ease;-webkit-user-select:none;user-select:none;width:100%;box-sizing:border-box}.time-picker-trigger:hover{border-color:var(--primary-blue)}.time-picker-trigger svg{color:var(--text-tertiary);flex-shrink:0}.time-picker-trigger span{flex:1 1 0%;font-size:14px;color:var(--text-primary)}.time-picker-trigger span.placeholder{color:var(--text-tertiary)}.time-picker-dropdown{background:var(--surface-white);border:1px solid var(--border-subtle);border-radius:12px;box-shadow:0 8px 24px #0000001f;overflow:hidden;min-width:240px}.time-picker-dropdown--portal{z-index:var(--z-dropdown)}.time-picker-content{padding:16px}.time-columns{display:flex;gap:8px}.time-column{flex:1 1 0%;display:flex;flex-direction:column}.time-scroll{max-height:180px;overflow-y:auto;border:1px solid var(--border-subtle);border-radius:8px;background:var(--surface-subtle)}.time-scroll::-webkit-scrollbar{width:4px}.time-scroll::-webkit-scrollbar-track{background:transparent}.time-scroll::-webkit-scrollbar-thumb{background:var(--border-subtle);border-radius:4px}.time-scroll::-webkit-scrollbar-thumb:hover{background:var(--text-tertiary)}.time-option{padding:8px 12px;text-align:center;font-size:14px;color:var(--text-primary);cursor:pointer;transition:all .15s ease}.time-option:hover{background:var(--surface-hover)}.time-option.selected{background:var(--primary-blue);color:#fff;font-weight:600}.time-picker-footer{margin-top:12px;padding-top:12px;border-top:1px solid var(--border-subtle)}.time-apply-btn{width:100%;padding:8px 16px;background:var(--primary-blue);color:#fff;border:none;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease}.time-apply-btn:hover{background:#0052cc;transform:translateY(-1px)}.time-apply-btn:active{transform:translateY(0)}[data-theme=dark] .time-picker-trigger,[data-theme=dark] .time-picker-dropdown{background:var(--surface-dark)}[data-theme=dark] .time-scroll{background:var(--surface-subtle-dark)}.duration-picker-trigger{display:flex;align-items:center;justify-content:flex-start;gap:8px;padding:8px 12px;border:1px solid var(--border-subtle);border-radius:6px;background:var(--surface-white);cursor:pointer;transition:all .2s ease;-webkit-user-select:none;user-select:none;width:100%;box-sizing:border-box}.duration-picker-trigger:hover{border-color:var(--primary-blue)}.duration-picker-trigger svg{color:var(--text-tertiary);flex-shrink:0}.duration-picker-trigger span{flex:1 1 0%;font-size:14px;color:var(--text-primary)}.duration-picker-trigger span.placeholder{color:var(--text-tertiary)}.duration-picker-dropdown{background:var(--surface-white);border:1px solid var(--border-subtle);border-radius:12px;box-shadow:0 8px 24px #0000001f;overflow:hidden;min-width:200px}.duration-picker-dropdown--portal{z-index:var(--z-dropdown)}.duration-picker-content{padding:16px}.duration-columns{display:flex;gap:8px}.duration-column{flex:1 1 0%;display:flex;flex-direction:column}.column-label{font-size:11px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px;text-align:center}.duration-scroll{max-height:180px;overflow-y:auto;border:1px solid var(--border-subtle);border-radius:8px;background:var(--surface-subtle)}.duration-scroll::-webkit-scrollbar{width:4px}.duration-scroll::-webkit-scrollbar-track{background:transparent}.duration-scroll::-webkit-scrollbar-thumb{background:var(--border-subtle);border-radius:4px}.duration-scroll::-webkit-scrollbar-thumb:hover{background:var(--text-tertiary)}.duration-option{padding:8px 12px;text-align:center;font-size:14px;color:var(--text-primary);cursor:pointer;transition:all .15s ease}.duration-option:hover{background:var(--surface-hover)}.duration-option.selected{background:var(--primary-blue);color:#fff;font-weight:600}.duration-picker-footer{margin-top:12px;padding-top:12px;border-top:1px solid var(--border-subtle)}.duration-apply-btn{width:100%;padding:8px 16px;background:var(--primary-blue);color:#fff;border:none;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease}.duration-apply-btn:hover{background:#0052cc;transform:translateY(-1px)}.duration-apply-btn:active{transform:translateY(0)}[data-theme=dark] .duration-picker-trigger,[data-theme=dark] .duration-picker-dropdown{background:var(--surface-dark)}[data-theme=dark] .duration-scroll{background:var(--surface-subtle-dark)}.activity-editor{background:var(--surface-white);border:1px solid var(--border-subtle);border-radius:8px;padding:16px;margin-bottom:12px}.activity-editor-header{display:flex;align-items:flex-start;gap:12px;margin-bottom:12px}.title-input-wrapper{flex:1 1 0%;display:flex;flex-direction:column;gap:4px}.activity-title-input{width:100%;padding:10px 12px;border:1px solid var(--border-subtle);border-radius:6px;background:var(--surface-white);color:var(--text-primary);font-size:15px;font-weight:500;transition:border-color .2s ease}.activity-title-input:focus{outline:none;border-color:var(--primary-blue)}.activity-title-input::placeholder{color:var(--text-tertiary)}.activity-title-input.error{border-color:#ef4444}.remove-btn{padding:10px;background:transparent;border:1px solid var(--border-subtle);border-radius:6px;color:var(--text-secondary);cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.remove-btn:hover{background:#fee2e2;border-color:#ef4444;color:#ef4444}.activity-editor-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:12px}.input-group{display:flex;align-items:stretch;gap:8px;min-height:38px}.input-group:has(input){padding:8px 12px;border:1px solid var(--border-subtle);border-radius:6px;background:var(--surface-white);transition:border-color .2s ease}.input-group:has(input):focus-within{border-color:var(--primary-blue)}.input-group:has(.time-picker-trigger),.input-group:has(.duration-picker-trigger){padding:0;border:none;background:transparent}.input-group .time-picker-trigger,.input-group .duration-picker-trigger{width:100%;min-height:38px}.input-group.location-autocomplete{padding:0;border:none;background:transparent}.input-group.location-autocomplete .location-autocomplete-wrapper{width:100%}.input-group.location-autocomplete .input-with-icon{border:1px solid var(--border-subtle);border-radius:6px;background:var(--surface-white);transition:border-color .2s ease;padding:8px 12px}.input-group.location-autocomplete .input-with-icon:focus-within{border-color:var(--primary-blue)}.input-group.location-autocomplete .location-input{border:none;background:transparent;padding:0 0 0 8px}.input-group svg{color:var(--text-tertiary);flex-shrink:0}.input-group input{flex:1 1 0%;border:none;background:transparent;color:var(--text-primary);font-size:14px;outline:none}.input-group input::placeholder{color:var(--text-tertiary)}.input-group.full-width{grid-column:1 / -1}.activity-notes textarea{width:100%;padding:10px 12px;border:1px solid var(--border-subtle);border-radius:6px;background:var(--surface-white);color:var(--text-primary);font-family:inherit;font-size:14px;resize:vertical;transition:border-color .2s ease}.activity-notes textarea:focus{outline:none;border-color:var(--primary-blue)}.activity-notes textarea::placeholder{color:var(--text-tertiary)}[data-theme=dark] .activity-editor,[data-theme=dark] .activity-title-input,[data-theme=dark] .input-group,[data-theme=dark] .activity-notes textarea{background:var(--surface-dark)}[data-theme=dark] .remove-btn:hover{background:#ef44441a}.accommodation-editor{background:var(--surface-white);border:1px solid var(--border-subtle);border-radius:8px;padding:16px;margin-bottom:12px}.accommodation-editor-header{display:flex;align-items:flex-start;gap:12px;margin-bottom:12px}.name-input-wrapper{flex:1 1 0%;display:flex;flex-direction:column;gap:4px}.accommodation-name-input{width:100%;padding:10px 12px;border:1px solid var(--border-subtle);border-radius:6px;background:var(--surface-white);color:var(--text-primary);font-size:15px;font-weight:500;transition:border-color .2s ease}.accommodation-name-input:focus{outline:none;border-color:var(--primary-blue)}.accommodation-name-input::placeholder{color:var(--text-tertiary)}.accommodation-name-input.error{border-color:#ef4444}.accommodation-editor-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.time-input-wrapper{display:flex;flex-direction:column;gap:4px;flex:1 1 0%}.time-input-wrapper label{font-size:11px;color:var(--text-tertiary);font-weight:500}.time-input-wrapper input{border:none;background:transparent;color:var(--text-primary);font-size:14px;outline:none}[data-theme=dark] .accommodation-editor,[data-theme=dark] .accommodation-name-input,[data-theme=dark] .input-group{background:var(--surface-dark)}.transportation-editor{background:var(--surface-white);border:1px solid var(--border-subtle);border-radius:8px;padding:16px;margin-bottom:12px}.transportation-editor-header{display:flex;gap:12px;margin-bottom:12px}.mode-selector{flex:1 1 0%;display:flex;align-items:center;gap:10px;padding:10px 12px;border:1px solid var(--border-subtle);border-radius:6px;background:var(--surface-white);transition:border-color .2s ease}.mode-selector:focus-within{border-color:var(--primary-blue)}.mode-selector svg{color:var(--text-tertiary);flex-shrink:0}.mode-selector select{flex:1 1 0%;border:none;background:transparent;color:var(--text-primary);font-size:15px;font-weight:500;outline:none;cursor:pointer}.transportation-editor-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.input-group{display:flex;align-items:flex-start;gap:8px}.input-with-error{flex:1 1 0%;display:flex;flex-direction:column;gap:4px}.input-group input{flex:1 1 0%;padding:10px 12px;border:1px solid var(--border-subtle);border-radius:6px;background:var(--surface-white);color:var(--text-primary);font-size:14px;transition:border-color .2s ease}.input-group input:focus{outline:none;border-color:var(--primary-blue)}.input-group input.error{border-color:#ef4444}.error-message{font-size:.75rem;color:#ef4444;margin-top:2px}[data-theme=dark] .transportation-editor,[data-theme=dark] .mode-selector,[data-theme=dark] .input-group{background:var(--surface-dark)}.day-editor{background:var(--surface-white);border-radius:12px;padding:20px;margin-bottom:16px;border:1px solid var(--border-subtle)}.day-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:16px;border-bottom:1px solid var(--border-subtle)}.day-title-section{display:flex;align-items:center;gap:12px}.day-title-section svg{color:var(--primary-blue)}.day-title-section h3{margin:0;font-size:18px;font-weight:600;color:var(--text-primary)}.day-date{margin:4px 0 0;font-size:14px;color:var(--text-secondary)}.day-header-actions{display:flex;align-items:center;gap:12px}.day-budget{display:flex;align-items:center;gap:8px;font-size:14px;color:var(--text-secondary)}.day-budget svg{color:var(--primary-blue)}.day-budget .spent{font-weight:600;color:var(--text-primary)}.delete-day-btn{display:flex;align-items:center;justify-content:center;padding:8px;background:transparent;border:1px solid var(--border-subtle);border-radius:6px;color:#ef4444;cursor:pointer;transition:all .2s ease}.delete-day-btn:hover{background:#fef2f2;border-color:#ef4444;transform:scale(1.05)}.delete-day-btn:active{transform:scale(.95)}.time-section{margin-bottom:12px}.section-header{width:100%;display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:var(--surface-subtle);border:1px solid var(--border-subtle);border-radius:8px;cursor:pointer;transition:all .2s ease}.section-header:hover{background:var(--surface-hover)}.section-title{display:flex;align-items:center;gap:10px;font-weight:500;color:var(--text-primary)}.activity-count{font-size:12px;color:var(--text-secondary);font-weight:400;margin-left:8px}.section-content{padding:12px 16px;overflow:hidden}.activity-actions{display:flex;gap:8px;margin-top:8px}.add-activity-btn,.ai-suggest-btn,.find-travelle-btn{flex:1 1 0%;display:flex;align-items:center;justify-content:center;gap:8px;padding:10px 16px;background:transparent;border:1px dashed var(--border-subtle);border-radius:6px;color:var(--primary-blue);font-size:14px;cursor:pointer;transition:all .2s ease}.add-activity-btn:hover{background:var(--surface-subtle);border-color:var(--primary-blue)}.find-travelle-btn{border-style:solid;background:linear-gradient(135deg,#10b9811a,#3b82f61a);border-color:#10b9814d;color:#10b981}.find-travelle-btn:hover{background:linear-gradient(135deg,#10b98133,#3b82f633);border-color:#10b981}.ai-suggest-btn{border-style:solid;background:linear-gradient(135deg,#8b5cf61a,#3b82f61a);border-color:#8b5cf64d;color:#8b5cf6}.ai-suggest-btn:hover:not(:disabled){background:linear-gradient(135deg,#8b5cf633,#3b82f633);border-color:#8b5cf6}.ai-suggest-btn:disabled{opacity:.6;cursor:not-allowed}.day-notes-section{margin-top:16px}.day-notes-section label{display:block;font-size:14px;font-weight:500;color:var(--text-primary);margin-bottom:8px}.day-notes-section textarea{width:100%;padding:12px;border:1px solid var(--border-subtle);border-radius:8px;background:var(--surface-white);color:var(--text-primary);font-family:inherit;font-size:14px;resize:vertical;transition:border-color .2s ease}.day-notes-section textarea:focus{outline:none;border-color:var(--primary-blue)}.day-notes-section textarea::placeholder{color:var(--text-tertiary)}[data-theme=dark] .day-editor{background:var(--surface-dark)}[data-theme=dark] .section-header{background:var(--surface-subtle-dark)}[data-theme=dark] .section-header:hover{background:var(--surface-hover-dark)}[data-theme=dark] .day-notes-section textarea{background:var(--surface-dark)}.expanded-itinerary-card{overflow:hidden;border-top:1px solid var(--border-subtle);margin-top:16px;background:var(--surface-white);border-radius:12px}.expanded-header{display:flex;justify-content:space-between;align-items:center;padding:12px 20px;background:var(--surface-white);border-bottom:1px solid var(--border-subtle);border-radius:12px 12px 0 0}.expanded-header h3{font-size:1rem;font-weight:600;color:var(--text-main)}.header-actions{display:flex;align-items:center;gap:12px}.save-status{font-size:.75rem;font-weight:500;padding:4px 8px;border-radius:4px}.save-status.saving{color:var(--primary-blue);background:#1e3a8a1a}.save-status.saved{color:#10b981;background:#10b9811a}.save-status.error{color:#ef4444;background:#ef44441a}.close-expanded-btn{background:var(--surface-white);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);padding:6px;color:var(--text-secondary);transition:var(--transition-fast);display:flex;align-items:center;justify-content:center}.close-expanded-btn:hover{background:var(--surface-hover);color:var(--text-main)}.days-container{display:flex;flex-direction:column;gap:0;padding:20px 24px;background:var(--surface-white)}.loading-days,.no-days{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;color:var(--text-secondary)}.loading-days .spinner{animation:spin 1s linear infinite;color:var(--primary-blue);margin-bottom:16px}.no-days p{font-size:15px;color:var(--text-tertiary)}.add-day-btn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;max-width:200px;margin:20px auto;padding:12px 24px;background:linear-gradient(135deg,var(--primary-blue) 0%,#0056b3 100%);color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease;box-shadow:0 2px 8px #007bff33}.add-day-btn:hover{transform:translateY(-2px);box-shadow:0 4px 12px #007bff4d}.add-day-btn:active{transform:translateY(0)}[data-theme=dark] .add-day-btn{background:linear-gradient(135deg,#3b82f6,#2563eb)}@media(max-width:767px){.expanded-header{padding:12px 16px}.expanded-header h3{font-size:.9rem}.days-container{padding:12px 16px}}.itinerary-builder-overlay{position:fixed;inset:0;background:#0000007f;display:flex;align-items:center;justify-content:center;z-index:1000}.itinerary-builder-modal{background:#fff;border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);max-width:600px;width:90%;max-height:90vh;display:flex;flex-direction:column}.builder-step{display:flex;flex-direction:column;max-height:90vh;overflow-y:auto}.builder-step.completion-step{overflow:visible;max-height:none}.builder-header{display:flex;justify-content:space-between;align-items:center;padding:24px 32px;border-bottom:1px solid var(--border-subtle)}.builder-header h2{font-size:1.5rem;font-weight:700;color:var(--text-main)}.close-builder-btn{background:transparent;border:none;color:var(--text-muted);padding:4px;border-radius:var(--radius-sm);transition:var(--transition-fast)}.close-builder-btn:hover{background:#f1f5f9;color:var(--text-main)}.builder-content{padding:32px;display:flex;flex-direction:column;gap:24px}.form-group{display:flex;flex-direction:column;gap:8px}.form-group label{font-size:.9rem;font-weight:600;color:var(--text-main)}.date-input-wrapper,.traveler-input-wrapper{display:flex;align-items:center;gap:12px;padding:12px 16px;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);background:#fff;cursor:pointer;transition:var(--transition-fast)}.date-input-wrapper:hover,.traveler-input-wrapper:hover{border-color:var(--primary-blue);box-shadow:0 0 0 3px #007bff1a}.date-input-wrapper span,.traveler-input-wrapper span{font-size:.9rem;color:var(--text-main)}.builder-footer{display:flex;justify-content:flex-end;gap:12px;padding:24px 32px;border-top:1px solid var(--border-subtle)}.btn-primary{background:var(--primary-blue);color:#fff;padding:10px 20px;border-radius:var(--radius-sm);font-weight:600;font-size:.9rem;display:flex;align-items:center;gap:8px;transition:var(--transition-fast);border:none}.btn-primary:hover:not(:disabled){background:var(--primary-blue-hover);transform:translateY(-1px);box-shadow:var(--shadow-button-hover)}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.btn-secondary{background:#fff;border:1px solid var(--border-subtle);color:var(--text-secondary);padding:10px 20px;border-radius:var(--radius-sm);font-weight:500;font-size:.9rem;transition:var(--transition-fast)}.btn-secondary:hover{background:#f1f5f9;color:var(--text-main)}.building-step{min-height:500px;display:flex;align-items:center;justify-content:center}.building-animation{padding:48px 32px;text-align:center;width:100%}.building-animation h2{font-size:1.3rem;font-weight:600;color:var(--text-main);margin-bottom:24px}.progress-indicator{width:100%;height:4px;background:#e5e7eb;border-radius:99px;overflow:hidden;margin-bottom:32px}.progress-bar{height:100%;background:linear-gradient(90deg,var(--primary-blue),#667eea);transition:width .5s ease}.building-steps{display:flex;flex-direction:column;gap:12px;align-items:flex-start;max-width:400px;margin:0 auto}.building-step-item{display:flex;align-items:center;gap:12px;padding:12px 16px;background:#f5f7fa;border-radius:var(--radius-sm);width:100%}.step-icon{display:flex;align-items:center;justify-content:center}.building-step-item span{font-size:.9rem;color:var(--text-main);font-weight:500}.completion-step .builder-header{flex-direction:column;align-items:center;gap:16px;padding:32px}.success-icon{width:64px;height:64px;border-radius:50%;background:#dcfce7;color:#22c55e;display:flex;align-items:center;justify-content:center;animation:successPulse .5s ease-out}@keyframes successPulse{0%{transform:scale(0)}50%{transform:scale(1.1)}to{transform:scale(1)}}.itinerary-preview{padding:32px;min-height:300px}.preview-image-wrapper{width:100%;height:200px;border-radius:var(--radius-md);overflow:hidden;margin-bottom:20px}.preview-image{width:100%;height:100%;object-fit:cover}.itinerary-preview h3{font-size:1.3rem;font-weight:700;color:var(--text-main);margin-bottom:16px}.preview-meta{display:flex;flex-wrap:wrap;gap:16px;margin-bottom:24px}.preview-meta span{display:flex;align-items:center;gap:6px;font-size:.85rem;color:var(--text-secondary);font-weight:500}.preview-summary{display:flex;flex-direction:column;gap:10px;padding:20px;background:#f0f9ff;border-radius:var(--radius-md);border-left:4px solid var(--primary-blue)}.preview-summary p{font-size:.9rem;color:var(--text-main);margin:0;font-weight:500}.preview-days{display:flex;flex-direction:column;gap:8px;padding:16px;background:#f5f7fa;border-radius:var(--radius-sm)}.preview-day{font-size:.9rem;color:var(--text-main)}.preview-day strong{color:var(--primary-blue)}.builder-footer.three-buttons{display:flex;gap:12px}.builder-footer.three-buttons .btn-secondary{flex:0 0 auto}.builder-footer.three-buttons .btn-outline,.builder-footer.three-buttons .btn-primary{flex:1 1 0%}.builder-footer.two-buttons{display:flex;gap:12px}.builder-footer.two-buttons .btn-secondary{flex:0 0 auto}.builder-footer.two-buttons .btn-primary{flex:1 1 0%}.btn-outline{display:flex;align-items:center;justify-content:center;gap:8px;padding:12px 24px;border:2px solid var(--primary-blue);background:#fff;color:var(--primary-blue);border-radius:var(--radius-md);font-weight:600;font-size:.95rem;transition:var(--transition-fast)}.btn-outline:hover{background:#f0f9ff}.details-step{display:flex;flex-direction:column;max-height:90vh}.details-header{display:flex;align-items:center;gap:16px;padding:20px 24px;border-bottom:1px solid var(--border-subtle)}.details-header h2{font-size:1.25rem;font-weight:700;color:var(--text-main);margin:0}.back-btn{display:flex;align-items:center;gap:6px;background:transparent;border:none;color:var(--text-secondary);font-size:.9rem;font-weight:500;padding:8px 12px;border-radius:var(--radius-sm);cursor:pointer;transition:var(--transition-fast)}.back-btn:hover{background:#f1f5f9;color:var(--text-main)}.details-content{flex:1 1 0%;overflow-y:auto;padding:20px 24px}.details-overview{display:flex;gap:20px;margin-bottom:24px;padding-bottom:20px;border-bottom:1px solid var(--border-subtle)}.details-hero-image{width:180px;height:120px;object-fit:cover;border-radius:var(--radius-md)}.details-info{display:flex;flex-direction:column;gap:12px;justify-content:center}.info-item{display:flex;align-items:center;gap:10px;font-size:.9rem;color:var(--text-secondary);font-weight:500}.info-item svg{color:var(--primary-blue)}.details-days{display:flex;flex-direction:column;gap:16px}.details-day-card{background:#f8fafc;border:1px solid var(--border-subtle);border-radius:var(--radius-md);overflow:hidden}.day-card-header{display:flex;justify-content:space-between;align-items:center;padding:14px 16px;background:#fff;border-bottom:1px solid var(--border-subtle)}.day-card-header h4{font-size:.95rem;font-weight:700;color:var(--text-main);margin:0}.day-card-meta{display:flex;align-items:center;gap:12px}.weather-badge{display:flex;align-items:center;gap:4px;font-size:.8rem;color:var(--text-secondary);font-weight:500}.cost-badge{font-size:.75rem;padding:4px 10px;border-radius:99px;background:#eff6ff;color:var(--primary-blue);font-weight:600}.day-activities-compact{padding:8px 0}.activity-row{display:flex;align-items:center;padding:10px 16px;gap:16px;border-bottom:1px solid #e8ebef}.activity-row:last-child{border-bottom:none}.activity-row .activity-time{font-size:.8rem;font-weight:600;color:var(--text-muted);min-width:70px}.activity-row .activity-title{flex:1 1 0%;font-size:.85rem;font-weight:500;color:var(--text-main)}.activity-row .activity-cost{font-size:.8rem;font-weight:600;color:var(--text-secondary);min-width:60px;text-align:right}@media(max-width:767px){.itinerary-builder-modal{width:100%;max-width:100%;max-height:-webkit-fill-available;border-radius:0;margin:0}.builder-header{padding:16px 20px}.builder-header h2{font-size:1.2rem}.builder-content{padding:20px;gap:20px}.form-group label{font-size:.85rem}.form-input,.form-textarea,.form-select{font-size:.9rem;padding:10px 12px}.builder-footer{padding:16px 20px;gap:10px}.builder-footer.three-buttons{flex-direction:column}.builder-footer.three-buttons .btn-outline,.builder-footer.three-buttons .btn-primary,.builder-footer.three-buttons .btn-secondary{width:100%}.builder-footer.two-buttons{flex-direction:column-reverse}.builder-footer.two-buttons .btn-secondary,.builder-footer.two-buttons .btn-primary{width:100%}.btn-primary,.btn-secondary,.btn-outline{padding:12px 20px;font-size:.9rem}.building-animation{padding:32px 20px}.building-animation h2{font-size:1.1rem}.building-steps{max-width:100%}.building-step-item{padding:10px 14px}.building-step-item span{font-size:.85rem}.completion-step .builder-header{padding:24px 20px}.success-icon{width:56px;height:56px}.day-card{margin-bottom:12px}.day-card-header{padding:12px 14px;flex-wrap:wrap;gap:8px}.day-card-header h4{font-size:.9rem;width:100%}.day-card-meta{gap:8px;width:100%}.weather-badge,.cost-badge{font-size:.75rem}.activity-row{padding:10px 14px;gap:10px}.activity-row .activity-icon{width:32px;height:32px}.activity-row .activity-title{font-size:.8rem}.activity-row .activity-cost{font-size:.75rem;min-width:50px}}.date-picker-overlay.in-modal{position:fixed;z-index:1100}.date-picker-card{background:#fff;border-radius:20px;box-shadow:0 20px 60px #00000040;padding:24px;width:360px;border:1px solid rgb(0 0 0 / 5%);font-family:Inter,sans-serif}.date-picker-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;padding:0 8px}.month-year-label{font-weight:600;font-size:1.05rem;color:#1e293b;font-family:Outfit,sans-serif;flex:1 1 0%;text-align:center}.nav-btn{background:transparent;border:none;color:#64748b;cursor:pointer;padding:8px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:all .2s}.nav-btn:hover{background:#f1f5f9;color:#1e3a8a}.days-header{display:grid;grid-template-columns:repeat(7,1fr);margin-bottom:12px;text-align:center}.days-header span{font-size:.85rem;font-weight:600;color:#94a3b8}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px 0}.calendar-day-wrapper{position:relative;height:44px;display:flex;align-items:center;justify-content:center;cursor:pointer;margin-bottom:2px}.calendar-day-wrapper.empty{cursor:default}.calendar-day-wrapper.disabled{cursor:not-allowed;opacity:.4}.day-number{position:relative;z-index:2;font-size:.95rem;font-weight:500;color:#334155;pointer-events:none;transition:color .2s}.day-number.disabled-text{color:#cbd5e1;text-decoration:line-through}.selected-text{color:#fff;font-weight:600}.selection-circle{position:absolute;top:4px;left:50%;transform:translate(-50%);width:36px;height:36px;background-color:#1e3a8a;border-radius:50%;z-index:1;box-shadow:0 4px 12px #1e3a8a4d}[data-theme=dark] .date-picker-card{background:var(--surface-white);border:1px solid var(--border-subtle);box-shadow:var(--shadow-xl)}[data-theme=dark] .month-year-label{color:var(--text-main)}[data-theme=dark] .nav-btn{color:var(--text-secondary)}[data-theme=dark] .nav-btn:hover{background:var(--button-bg-hover);color:var(--primary-blue)}[data-theme=dark] .days-header span{color:var(--text-secondary)}[data-theme=dark] .day-number{color:var(--text-main)}[data-theme=dark] .selected-text{color:#fff}[data-theme=dark] .selection-circle{background-color:var(--primary-blue);box-shadow:0 4px 12px var(--glow-blue)}.modal-overlay{position:fixed;inset:0;background:#0000007f;display:flex;align-items:center;justify-content:center;z-index:1000;padding:16px}.edit-itinerary-modal{background:var(--surface-white);border-radius:12px;width:100%;max-width:500px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #0000004d}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--border-color)}.modal-header h2{margin:0;font-size:20px;font-weight:600;color:var(--text-primary)}.modal-close-btn{background:none;border:none;cursor:pointer;padding:6px;border-radius:6px;color:var(--text-secondary);transition:all .2s;display:flex;align-items:center;justify-content:center}.modal-close-btn:hover{background:var(--hover-bg);color:var(--text-primary)}.modal-body{padding:20px;overflow:visible}.form-group{margin-bottom:16px}.form-group label{display:block;font-size:13px;font-weight:500;color:var(--text-secondary);margin-bottom:6px}.form-group input,.form-group select{width:100%;padding:10px 12px;border:1px solid var(--border-subtle, #e5e7eb);border-radius:8px;font-size:14px;background:var(--surface-white);color:var(--text-main);transition:all .2s}.form-group input:focus,.form-group select:focus{outline:none;border-color:var(--primary-blue);box-shadow:0 0 0 3px #4a9eff1a}.form-group input::placeholder{color:var(--text-muted)}.form-group input:-webkit-autofill,.form-group input:-webkit-autofill:hover,.form-group input:-webkit-autofill:focus{box-shadow:0 0 0 1000px var(--surface-white) inset;-webkit-text-fill-color:var(--text-main);border:1px solid var(--border-subtle, #e5e7eb)}.location-input-wrapper,.date-input-wrapper{position:relative}.date-input-wrapper input{cursor:pointer}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.modal-footer{display:flex;gap:10px;justify-content:flex-end;padding-top:16px;border-top:1px solid var(--border-color);margin-top:16px}.btn-secondary,.btn-primary{padding:10px 20px;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s;display:flex;align-items:center;gap:8px;border:none}.btn-secondary{background:var(--button-bg-hover, #f3f4f6);color:var(--text-secondary)}.btn-secondary:hover{background:var(--button-bg-active, #e5e7eb)}.btn-primary{background:var(--primary-blue);color:#fff}.btn-primary:hover{background:var(--primary-blue-hover)}.btn-primary:disabled{background:#9ca3af;cursor:not-allowed;opacity:.6}.itinerary-list-container{min-height:-webkit-fill-available;overflow-y:auto;background:transparent;padding-top:var(--header-height, 120px);scrollbar-width:thin;scrollbar-color:transparent transparent}.itinerary-list-container::-webkit-scrollbar{width:6px}.itinerary-list-container::-webkit-scrollbar-track{background:transparent}.itinerary-list-container::-webkit-scrollbar-thumb{background:transparent;border-radius:10px;transition:background .3s ease}.itinerary-list-container:hover::-webkit-scrollbar-thumb{background:var(--primary-blue)}.itinerary-list-container::-webkit-scrollbar-thumb:hover{background:#1e3a8a}.itinerary-list-container:hover{scrollbar-color:var(--primary-blue) transparent}.itinerary-card-wrapper{background:transparent;border-radius:16px;overflow:visible;transition:all .3s ease;margin:0 auto 20px;max-width:1380px;width:calc(100% - 55px)}.itinerary-card-wrapper:first-of-type{margin-top:24px}.itinerary-card-wrapper:hover,.itinerary-card-wrapper.expanded,.itinerary-card-wrapper.expanded:hover{transform:none}.itinerary-card{display:flex;background:var(--surface-white);border:none;border-radius:16px;box-shadow:0 4px 20px #0000001a;overflow:hidden;height:180px;transition:all .3s ease}.itinerary-card:hover{transform:none;box-shadow:none}.itin-image-wrapper{width:240px;height:100%;flex-shrink:0;position:relative;cursor:pointer;overflow:hidden}.itin-image{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.itin-image-wrapper:hover .itin-image{transform:scale(1.05)}.image-overlay{position:absolute;inset:0;background:#0009;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;color:#fff;opacity:0;transition:opacity .3s ease}.itin-image-wrapper:hover .image-overlay{opacity:1}.image-overlay span{font-size:.85rem;font-weight:500}.itin-content{flex:1 1 0%;padding:20px 24px;display:flex;flex-direction:column;position:relative}.itin-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:8px}.itin-title{font-size:1.1rem;font-weight:700;color:var(--text-main);margin-bottom:8px;cursor:text;-webkit-user-select:text;user-select:text}.itin-title:hover{color:var(--primary-blue)}.itin-date{display:flex;align-items:center;gap:6px;color:var(--text-muted);font-size:.85rem;margin-bottom:12px}.itin-date span{cursor:pointer;transition:color .2s}.itin-date span:hover{color:var(--primary-blue);text-decoration:underline}.itin-meta-row{display:flex;align-items:center;gap:16px}.itin-meta-item{display:flex;align-items:center;gap:6px;color:var(--text-secondary);font-size:.85rem;font-weight:500}.itin-meta-item.clickable{cursor:pointer;transition:color .2s}.itin-meta-item.clickable:hover{color:var(--primary-blue)}.itin-header-right{display:flex;align-items:center;gap:12px}.status-dropdown-wrapper{position:relative}.status-badge{font-size:.7rem;padding:4px 10px 4px 12px;border-radius:99px;font-weight:600;text-transform:capitalize;display:flex;align-items:center;gap:4px;cursor:pointer;border:none;transition:all .2s ease}.status-badge:hover{transform:scale(1.05)}.status-dropdown{position:absolute;top:100%;right:0;margin-top:4px;background:#fff;border-radius:8px;box-shadow:0 4px 12px #00000026;overflow:hidden;z-index:10;min-width:120px}.status-option{display:block;width:100%;padding:8px 16px;border:none;background:#fff;color:var(--text-main);font-size:.85rem;text-align:left;cursor:pointer;transition:background .2s ease}.status-option:hover{background:#f8f9fa}.delete-itin-btn{background:transparent;border:none;color:var(--text-muted);cursor:pointer;padding:6px;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;transition:all .2s}.delete-itin-btn:hover{background:#ef44441a;color:#ef4444}.status-badge.upcoming{background-color:var(--glass-accent-bg);color:var(--primary-blue)}.status-badge.completed{background-color:var(--glass-bg-subtle);color:var(--text-secondary)}.status-badge.draft{background-color:var(--warning-bg, #fef9c3);color:var(--warning-text, #b45309)}.status-badge.booked{background-color:#dcfce7;color:#15803d}.status-badge.pending{background-color:#fef3c7;color:#d97706}.status-badge.bucket,.status-badge.bucket.list{background-color:var(--glass-accent-bg);color:var(--primary-blue)}.itin-footer{margin-top:auto;display:flex;justify-content:flex-end;align-items:center;gap:16px}.btn-link{background:none;border:none;color:var(--text-secondary);font-size:.85rem;font-weight:500;cursor:pointer;transition:color .2s}.btn-link:hover{color:var(--text-main)}.btn-link.primary{color:var(--primary-blue);display:flex;align-items:center;gap:4px}.btn-link.primary:hover{color:var(--primary-blue-hover);transform:translate(2px)}.btn-link.bucket{color:#e11d48;display:flex;align-items:center;gap:4px}.btn-link.bucket:hover{color:#be123c}.draft-actions{display:flex;align-items:center;gap:16px;width:100%}.draft-actions .btn-link{display:flex;align-items:center;gap:6px;padding:6px 12px;border-radius:var(--radius-sm);transition:all .2s}.draft-actions .btn-link:hover{background:var(--glass-bg-subtle)}.draft-actions .btn-link.primary{background:var(--primary-blue);color:#fff;padding:8px 14px}.draft-actions .btn-link.primary:hover{background:var(--primary-blue-hover);transform:none}.draft-actions .btn-link.bucket:hover{background:var(--error-bg, #fef2f2)}@media(max-width:767px){.itinerary-list-container{padding:12px;padding-top:var(--header-height, 120px);padding-bottom:calc(var(--bottom-nav-height) + var(--safe-area-bottom) + 80px);height:100dvh}.itinerary-header{flex-direction:column;gap:12px;margin-bottom:20px}.header-left h1{font-size:1.3rem}.header-left p{font-size:.85rem}.header-buttons{width:100%;flex-direction:column;gap:8px}.new-itinerary-btn{width:100%;justify-content:center;min-height:var(--touch-target-min);padding:12px 16px}.filter-tabs{overflow-x:auto;-webkit-overflow-scrolling:touch;padding-bottom:4px;margin-bottom:16px;scrollbar-width:none}.filter-tabs::-webkit-scrollbar{display:none}.filter-tab{white-space:nowrap;padding:6px 12px;font-size:.8rem;flex-shrink:0}.itinerary-card-wrapper{width:calc(100% - 20px);margin-bottom:12px}.itinerary-card{flex-direction:column;height:auto;border-radius:12px}.itin-image-wrapper{width:100%;height:180px}.itin-content{padding:14px}.itin-header{margin-bottom:6px}.itin-title{font-size:.95rem;margin-bottom:6px}.itin-date{font-size:.75rem;margin-bottom:8px}.itin-meta-row{flex-wrap:wrap;gap:8px}.itin-meta-item{font-size:.75rem}.status-badge{font-size:.7rem;padding:3px 8px}.itin-footer{flex-direction:column;gap:8px;margin-top:12px}.draft-actions{flex-direction:column;gap:8px}.draft-actions .btn-link,.btn-link{width:100%;justify-content:center;min-height:var(--touch-target-min);padding:10px 12px;font-size:.8rem}}@media(min-width:768px)and (max-width:1023px){.itinerary-list-container{padding:20px;padding-top:var(--header-height, 120px)}.itinerary-header{margin-bottom:24px}.header-left h1{font-size:1.6rem}.filter-tab{padding:7px 14px;font-size:.85rem}.itinerary-card-wrapper{width:calc(100% - 34px);margin-bottom:16px}.itin-image-wrapper{width:200px}.itin-content{padding:18px 20px}.itin-title{font-size:1.05rem}}@media(min-width:1024px)and (max-width:1279px){.itinerary-list-container{padding:var(--spacing-lg) 32px;padding-top:var(--header-height, 120px)}.itin-image-wrapper{width:220px}}@media(min-width:1280px){.itinerary-list-container{padding:var(--spacing-xl) 40px;padding-top:var(--header-height, 120px);max-width:1600px;margin:0 auto}.itin-image-wrapper{width:240px}.itin-content{padding:20px 24px}}@media(hover:none)and (pointer:coarse){.new-itinerary-btn,.filter-tab,.btn-link{min-height:var(--touch-target-min)}.itinerary-card:hover,.new-itinerary-btn:hover,.filter-tab:hover,.btn-link:hover{transform:none}.itinerary-card:active{opacity:.95}.filter-tab:active,.btn-link:active{opacity:.8}}@media(prefers-reduced-motion:reduce){.itinerary-card,.new-itinerary-btn,.filter-tab,.btn-link{transition:none}}.modal-overlay{position:fixed;inset:0;background:#0000007f;display:flex;align-items:center;justify-content:center;z-index:1000}.image-upload-modal{background:#fff;border-radius:16px;width:90%;max-width:500px;box-shadow:0 8px 32px #0003}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid var(--border-subtle)}.modal-header h3{font-size:1.1rem;font-weight:600;color:var(--text-main);margin:0}.modal-header button{background:transparent;border:none;color:var(--text-muted);cursor:pointer;padding:4px;border-radius:4px;display:flex;align-items:center;transition:all .2s}.modal-header button:hover{background:#0000000d;color:var(--text-main)}.upload-tabs{display:flex;border-bottom:1px solid var(--border-subtle)}.upload-tabs button{flex:1 1 0%;padding:12px 16px;border:none;background:transparent;color:var(--text-muted);font-size:.9rem;font-weight:500;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;transition:all .2s;border-bottom:2px solid transparent}.upload-tabs button:hover{background:#00000005;color:var(--text-main)}.upload-tabs button.active{color:#667eea;border-bottom-color:#667eea}.upload-content{padding:24px}.upload-area{border:2px dashed var(--border-subtle);border-radius:12px;padding:40px 20px;text-align:center;transition:all .2s}.upload-area:hover{border-color:#667eea;background:#667eea05}.upload-label{display:flex;flex-direction:column;align-items:center;gap:12px;cursor:pointer;color:var(--text-muted)}.upload-label p{font-size:.95rem;font-weight:500;color:var(--text-main);margin:0}.upload-label span{font-size:.8rem;color:var(--text-muted)}.url-input-area{display:flex;flex-direction:column;gap:16px}.url-input-area input{padding:12px 16px;border:1px solid var(--border-subtle);border-radius:8px;font-size:.9rem;transition:all .2s}.url-input-area input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.url-input-area button{padding:12px 24px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:8px;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s}.url-input-area button:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #667eea66}.url-input-area button:disabled{opacity:.5;cursor:not-allowed}.planner-popup{position:fixed;background:var(--surface-white);border:1px solid var(--border-subtle);border-radius:8px;box-shadow:0 8px 24px #0003;padding:8px;display:flex;flex-direction:column;gap:4px;z-index:9999;min-width:140px}.planner-popup button{padding:8px 12px;background:transparent;border:none;border-radius:6px;font-size:.85rem;font-weight:500;color:var(--text-primary);cursor:pointer;transition:all .2s ease;text-align:left}.planner-popup button:hover{background:var(--primary-blue);color:#fff}[data-theme=dark] .planner-popup{background:var(--surface-dark);border-color:#ffffff1a}[data-theme=dark] .itinerary-card{background:var(--surface-white);box-shadow:0 8px 20px #0000004d}[data-theme=dark] .itinerary-card:hover{box-shadow:0 8px 30px #0006}[data-theme=dark] .itinerary-list-container:hover::-webkit-scrollbar-thumb{background:#60a5fa}[data-theme=dark] .itinerary-list-container::-webkit-scrollbar-thumb:hover{background:#3b82f6}[data-theme=dark] .itinerary-list-container:hover{scrollbar-color:#60a5fa transparent}.empty-state{padding:60px 40px;text-align:center;background:var(--surface-white);border-radius:16px;box-shadow:0 4px 20px #0000001a;max-width:500px;margin:40px auto}.empty-state-icon{margin:0 auto 24px;opacity:.4;color:var(--primary-blue)}.empty-state-title{margin-bottom:12px;color:var(--text-main);font-size:1.5rem;font-weight:600}.empty-state-description{margin-bottom:32px;color:var(--text-secondary);font-size:1rem;line-height:1.5}.empty-state-buttons{display:flex;gap:16px;justify-content:center;align-items:center}.empty-state-buttons .new-itinerary-btn{flex:1 1 0%;max-width:200px;padding:12px 20px;border-radius:8px;font-size:.9rem;font-weight:600;display:flex;align-items:center;justify-content:center;gap:8px;transition:all .2s ease;border:none;cursor:pointer}.empty-state-buttons .new-itinerary-btn:first-child{background:var(--surface-white);color:var(--text-main);border:1px solid var(--border-subtle)}.empty-state-buttons .new-itinerary-btn:first-child:hover{background:var(--bg-page);transform:translateY(-1px);box-shadow:0 2px 8px #0000001a}.empty-state-buttons .new-itinerary-btn.ai-btn{background:linear-gradient(135deg,#007bff,#0056b3);color:#fff;border:none}.empty-state-buttons .new-itinerary-btn.ai-btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px #007bff66}[data-theme=dark] .empty-state-buttons .new-itinerary-btn:first-child{background:var(--surface-white);border-color:var(--border-subtle)}[data-theme=dark] .empty-state-buttons .new-itinerary-btn:first-child:hover{background:#2d333b}[data-theme=dark] .empty-state{box-shadow:0 8px 20px #0000004d}.smart-itinerary-generator{background:var(--bg-card);border-radius:var(--radius-lg);padding:var(--spacing-lg);box-shadow:var(--shadow-sm);border:1px solid var(--border-color);max-width:800px;margin:0 auto}.generator-header{margin-bottom:var(--spacing-lg);text-align:center}.generator-title{font-size:1.5rem;font-weight:700;color:var(--text-primary);margin-bottom:var(--spacing-xs);display:flex;align-items:center;justify-content:center;gap:var(--spacing-sm)}.generator-subtitle{color:var(--text-secondary);font-size:.9rem}.generator-form{display:grid;gap:var(--spacing-md)}.form-group{display:flex;flex-direction:column;gap:6px}.label-hint{font-size:.85rem;font-weight:400;color:var(--text-secondary);margin-left:8px}.form-hint{font-size:.85rem;color:var(--text-secondary);margin:4px 0 0}.form-label{font-size:.85rem;font-weight:500;color:var(--text-secondary)}.form-input,.form-select{padding:10px 12px;background:var(--bg-input);border:1px solid var(--border-input);border-radius:var(--radius-md);color:var(--text-primary);font-size:.95rem}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-md)}.interests-selector{display:flex;flex-wrap:wrap;gap:8px;margin-top:4px}.interest-tag{padding:4px 12px;border-radius:16px;background:var(--bg-secondary);color:var(--text-secondary);font-size:.85rem;cursor:pointer;border:1px solid transparent;transition:all .2s}.interest-tag.selected{background:rgb(var(--primary-rgb),.1);color:var(--primary-color);border-color:rgb(var(--primary-rgb),.3)}.generate-btn{background:var(--primary-color);color:#fff;border:none;padding:12px;border-radius:var(--radius-md);font-size:1rem;font-weight:600;cursor:pointer;margin-top:var(--spacing-md);display:flex;align-items:center;justify-content:center;gap:8px;transition:all .2s}.generate-btn:hover{background:var(--primary-hover);transform:translateY(-1px)}.generate-btn:disabled{opacity:.7;cursor:not-allowed;transform:none}.spinning{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.loading-tips{margin-top:var(--spacing-md);padding:var(--spacing-md);background:rgb(var(--primary-rgb),.05);border-radius:var(--radius-md);border-left:3px solid var(--primary-color)}.loading-tip{margin:8px 0;color:var(--text-secondary);font-size:.9rem;animation:fadeInOut 2s ease-in-out infinite}.loading-tip:nth-child(1){animation-delay:0s}.loading-tip:nth-child(2){animation-delay:.7s}.loading-tip:nth-child(3){animation-delay:1.4s}@keyframes fadeInOut{0%,to{opacity:.5}50%{opacity:1}}.error-banner{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-md);background:#ef44441a;border:1px solid rgb(239 68 68 / 30%);border-radius:var(--radius-md);margin-bottom:var(--spacing-md);color:#dc2626}.error-banner svg{flex-shrink:0}.error-content{flex:1 1 0%}.error-title{font-weight:600;margin:0 0 4px;font-size:.95rem}.error-message{margin:0;font-size:.9rem;opacity:.9}.retry-btn-inline{display:flex;align-items:center;gap:6px;padding:8px 16px;background:#fff;border:1px solid rgb(239 68 68 / 30%);border-radius:var(--radius-sm);color:#dc2626;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s}.retry-btn-inline:hover{background:#ef44440d;border-color:#ef44447f}.create-another-btn{display:flex;align-items:center;justify-content:center;gap:8px;padding:12px 24px;background:var(--primary-color);color:#fff;border:none;border-radius:var(--radius-md);font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s}.create-another-btn:hover{background:var(--primary-hover);transform:translateY(-1px);box-shadow:0 4px 12px rgb(var(--primary-rgb),.3)}.itinerary-results{margin-top:var(--spacing-xl)}.day-card{background:var(--bg-secondary);border-radius:var(--radius-md);padding:var(--spacing-md);margin-bottom:var(--spacing-md);border-left:4px solid var(--primary-color)}.day-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-md);padding-bottom:var(--spacing-sm);border-bottom:1px solid var(--border-color)}.day-title{font-weight:600;font-size:1.1rem}.activity-item{display:flex;gap:var(--spacing-md);padding:var(--spacing-sm) 0}.activity-time{font-weight:600;color:var(--text-secondary);font-size:.85rem;width:60px;flex-shrink:0}.activity-details{flex:1 1 0%}.activity-name{font-weight:600;margin-bottom:2px}.activity-desc{font-size:.85rem;color:var(--text-secondary);line-height:1.4}.action-buttons{display:flex;gap:var(--spacing-md);margin-top:var(--spacing-lg)}.save-btn{flex:1 1 0%;background:var(--success-color, #10b981);color:#fff;border:none;padding:12px;border-radius:var(--radius-md);font-weight:600;cursor:pointer}.loading-container{text-align:center;padding:var(--spacing-xl);color:var(--text-secondary)}
