body{margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.auth-container{align-items:center;background:linear-gradient(135deg,#f5f7fa,#c3cfe2);display:flex;justify-content:center;min-height:100vh;padding:2rem}.auth-card{background:#fff;border-radius:10px;box-shadow:0 4px 6px #0000001a;max-width:400px;padding:2rem;width:100%}.auth-header{margin-bottom:2rem;text-align:center}.auth-header h1{color:#2c3e50;font-size:2rem;margin-bottom:.5rem}.auth-header p{color:#7f8c8d;font-size:1rem}.auth-form{gap:1.5rem}.auth-form,.form-group{display:flex;flex-direction:column}.form-group{gap:.5rem}.form-group label{font-weight:500}.form-group input{border:1px solid #ddd;border-radius:5px;font-size:1rem;padding:.75rem;transition:border-color .3s ease}.form-group input:focus{border-color:#3498db;outline:none}.btn{padding:.75rem;transition:background-color .3s ease}.btn-primary:disabled{background-color:#bdc3c7}.error-message{background-color:#fee2e2;border-radius:5px;margin-bottom:1rem;padding:.75rem}.auth-footer{color:#7f8c8d;margin-top:1.5rem;text-align:center}.auth-footer a{color:#3498db;font-weight:500;text-decoration:none}.auth-footer a:hover{text-decoration:underline}.dashboard-container{margin:0 auto;max-width:1200px;padding:2rem}.dashboard-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:2rem}.dashboard-header h1{color:#2c3e50;font-size:2rem;margin:0}.btn{border-radius:5px;display:inline-flex;font-weight:500;gap:.5rem;text-decoration:none}.btn-primary{background-color:#3498db}.btn-primary:hover{background-color:#2980b9}.dashboard-content{display:flex;flex-direction:column;gap:2rem}.dashboard-stats{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.stat-card{background:#fff;border-radius:10px;box-shadow:0 2px 4px #0000001a;padding:1.5rem;transition:transform .3s ease}.stat-card:hover{box-shadow:0 4px 8px #0000001a}.stat-card h3{color:#7f8c8d;font-size:1rem;margin:0 0 .5rem}.stat-number{color:#2c3e50;font-size:2rem;font-weight:600;margin:0}.trip-list-container{background:#fff;border-radius:10px;box-shadow:0 2px 4px #0000001a;padding:1.5rem}.trip-list-container h2{color:#2c3e50;font-size:1.5rem;margin:0 0 1.5rem}@media (max-width:768px){.dashboard-container{padding:1rem}.dashboard-header{flex-direction:column;gap:1rem;text-align:center}.dashboard-stats{grid-template-columns:1fr}}.trip-form-container{animation:fadeIn .3s ease-in-out;background:#f8f9fa;margin:0 auto;max-width:1200px;min-height:100vh;padding:2rem}.form-header{background:linear-gradient(135deg,#fff,#f8f9fa);border-radius:15px;box-shadow:0 4px 15px #0000001a;margin-bottom:3rem;padding:2rem;text-align:center}.form-header h1{-webkit-text-fill-color:#0000;background:linear-gradient(120deg,#2c3e50,#3498db);-webkit-background-clip:text;color:#2c3e50;font-size:2.5rem;margin-bottom:1rem}.form-header p{color:#7f8c8d;font-size:1.1rem}.trip-form{background:#fff;border:1px solid #0000000d;border-radius:15px;box-shadow:0 4px 15px #0000001a;padding:2rem}.form-group{margin-bottom:1.5rem}.form-group label{color:#2c3e50;display:block;font-size:1.1rem;font-weight:600;margin-bottom:.5rem}.form-group input,.form-group select,.form-group textarea{background:#f8f9fa;border:1px solid #e0e0e0;border-radius:8px;color:#2c3e50;font-size:1rem;padding:.75rem 1rem;transition:all .3s ease;width:100%}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{background:#fff;border-color:#3498db;box-shadow:0 0 0 3px #3498db1a;outline:none}.form-group input::placeholder,.form-group textarea::placeholder{color:#95a5a6}.form-row{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(2,1fr)}.itinerary-list{gap:1rem}.itinerary-day{box-shadow:0 2px 8px #0000000d}.day-number{font-size:1.1rem;font-weight:600}.remove-day{background:#e74c3c;border:none;border-radius:20px;color:#fff;cursor:pointer;font-size:.875rem;padding:.5rem 1rem;transition:all .3s ease}.remove-day:hover{background:#c0392b;transform:translateY(-2px)}.add-day{background:#3498db1a;border:2px dashed #3498db;border-radius:8px;color:#3498db;cursor:pointer;font-size:1rem;font-weight:600;padding:1rem;text-align:center;transition:all .3s ease;width:100%}.add-day:hover{background:#3498db33;transform:translateY(-2px)}.form-actions{border-top:1px solid #e0e0e0;display:flex;gap:1rem;justify-content:flex-end;margin-top:2rem;padding-top:2rem}.btn{padding:.75rem 2rem}.btn-primary:disabled{background:#95a5a6;box-shadow:none;cursor:not-allowed;transform:none}.btn-secondary{background:#ecf0f1;color:#7f8c8d}.btn-secondary:hover{background:#bdc3c7;color:#2c3e50;transform:translateY(-2px)}.error-message{background:#fef2f2;border:1px solid #fecaca;border-radius:8px;color:#dc2626;gap:1rem;margin-bottom:2rem;padding:1rem}.error-icon{font-size:1.5rem}@media (max-width:768px){.trip-form-container{padding:1rem}.form-header{padding:1.5rem}.form-header h1{font-size:2rem}.trip-form{padding:1.5rem}.form-row{grid-template-columns:1fr}.form-actions{flex-direction:column}.btn{width:100%}}.trip-detail-container{animation:fadeIn .3s ease-in-out;background:#f8f9fa;margin:0 auto;max-width:1200px;min-height:100vh;padding:2rem}.trip-header{background:linear-gradient(135deg,#fff,#f8f9fa);border:1px solid #0000000d;border-radius:15px;box-shadow:0 4px 15px #0000001a;margin-bottom:2rem;padding:2rem}.trip-header-content{margin-bottom:1.5rem}.trip-title{align-items:center;display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:1rem}.trip-title h1{-webkit-text-fill-color:#0000;background:linear-gradient(120deg,#2c3e50,#3498db);-webkit-background-clip:text;color:#2c3e50;font-size:2.5rem;font-weight:700;margin:0}.trip-status{border-radius:25px;box-shadow:0 2px 4px #0000001a;font-size:.875rem;font-weight:600;letter-spacing:.5px;padding:.5rem 1.5rem;text-transform:uppercase}.trip-status.planning{background:linear-gradient(120deg,#f1c40f,#f39c12);color:#fff}.trip-status.ongoing{background:linear-gradient(120deg,#2ecc71,#27ae60);color:#fff}.trip-status.completed{background:linear-gradient(120deg,#95a5a6,#7f8c8d);color:#fff}.trip-meta{color:#7f8c8d;display:flex;flex-wrap:wrap;gap:2rem}.trip-meta span{align-items:center;background:#3498db1a;border-radius:8px;display:flex;gap:.75rem;padding:.5rem 1rem;transition:all .3s ease}.trip-meta span:hover{background:#3498db33;transform:translateY(-2px)}.icon{font-size:1.5rem}.trip-actions{display:flex;gap:1rem;margin-top:1.5rem}.btn{align-items:center;border:none;border-radius:8px;cursor:pointer;display:flex;font-size:1rem;font-weight:600;gap:.75rem;letter-spacing:.5px;padding:.75rem 1.5rem;text-transform:uppercase;transition:all .3s ease}.btn-primary{background:linear-gradient(120deg,#3498db,#2980b9);color:#fff}.btn-primary:hover{background:linear-gradient(120deg,#2980b9,#2472a4);box-shadow:0 4px 6px #0000001a;transform:translateY(-2px)}.btn-danger{background:linear-gradient(120deg,#e74c3c,#c0392b);color:#fff}.btn-danger:hover{background:linear-gradient(120deg,#c0392b,#a93226);box-shadow:0 4px 6px #0000001a;transform:translateY(-2px)}.trip-tabs{background:#fff;border:1px solid #0000000d;border-radius:10px;box-shadow:0 2px 8px #0000001a;display:flex;gap:1rem;margin-bottom:2rem;padding:1rem}.tab-btn{background:none;border:none;border-radius:8px;color:#7f8c8d;cursor:pointer;flex:1 1;font-size:1rem;font-weight:600;letter-spacing:.5px;padding:.75rem 1.5rem;text-align:center;text-transform:uppercase;transition:all .3s ease}.tab-btn:hover{background:#f8f9fa;color:#2c3e50}.tab-btn.active{background:#ebf5fb;box-shadow:inset 0 2px 4px #0000000d;color:#3498db}.trip-content{animation:fadeIn .3s ease-in-out;background:#fff;border:1px solid #0000000d;border-radius:15px;box-shadow:0 4px 15px #0000001a;padding:2rem}.overview-section{display:flex;flex-direction:column;gap:2rem}.trip-description{background:#f8f9fa;border:1px solid #0000000d;border-radius:12px;padding:2rem}.trip-description h3{-webkit-text-fill-color:#0000;background:linear-gradient(120deg,#2c3e50,#3498db);-webkit-background-clip:text;color:#2c3e50;font-size:1.75rem;margin:0 0 1.5rem}.trip-description p{color:#34495e;font-size:1.1rem;line-height:1.8;margin:0}.trip-stats{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.stat-card{background:linear-gradient(135deg,#fff,#f8f9fa);border:1px solid #0000000d;border-radius:12px;box-shadow:0 4px 6px #0000000d;padding:2rem;text-align:center;transition:all .3s ease}.stat-card:hover{box-shadow:0 8px 15px #0000001a;transform:translateY(-5px)}.stat-card .icon{font-size:2.5rem;margin-bottom:1rem}.stat-card h4{color:#7f8c8d;font-size:1.1rem;letter-spacing:.5px;margin:.5rem 0;text-transform:uppercase}.stat-value{-webkit-text-fill-color:#0000;background:linear-gradient(120deg,#2c3e50,#3498db);-webkit-background-clip:text;color:#2c3e50;font-size:2rem;font-weight:700;margin:0}.itinerary-list,.itinerary-section{display:flex;flex-direction:column;gap:1.5rem}.itinerary-day{background:linear-gradient(135deg,#fff,#f8f9fa);border:1px solid #0000000d;border-radius:12px;box-shadow:0 4px 6px #0000000d;padding:1.5rem;transition:all .3s ease}.itinerary-day:hover{box-shadow:0 6px 12px #0000001a;transform:translateX(5px)}.day-header{align-items:center;border-bottom:1px solid #0000000d;display:flex;justify-content:space-between;margin-bottom:1rem;padding-bottom:1rem}.day-number{-webkit-text-fill-color:#0000;background:linear-gradient(120deg,#2c3e50,#3498db);-webkit-background-clip:text;color:#2c3e50;font-size:1.5rem;font-weight:700}.day-date{background:#3498db1a;border-radius:20px;color:#7f8c8d;font-size:1rem;font-weight:500;padding:.5rem 1rem}.day-content p{color:#34495e;font-size:1.1rem;line-height:1.8;margin:0}.no-itinerary{background:linear-gradient(135deg,#fff,#f8f9fa);border:2px dashed #0000001a;border-radius:12px;color:#7f8c8d;padding:4rem 2rem;text-align:center}.no-itinerary .icon{font-size:4rem;margin-bottom:1.5rem;opacity:.5}.no-itinerary p{color:#95a5a6;font-size:1.25rem;font-weight:500}.expenses-section{display:flex;flex-direction:column;gap:2rem}.budget-overview{background:linear-gradient(135deg,#fff,#f8f9fa);border:1px solid #0000000d;border-radius:12px;box-shadow:0 4px 6px #0000000d;padding:2rem}.budget-overview h3{-webkit-text-fill-color:#0000;background:linear-gradient(120deg,#2c3e50,#3498db);-webkit-background-clip:text;color:#2c3e50;font-size:1.75rem;margin:0 0 1.5rem}.budget-progress{display:flex;flex-direction:column;gap:1rem}.progress-bar{background:#ecf0f1;border-radius:6px;box-shadow:inset 0 2px 4px #0000000d;height:12px;overflow:hidden}.progress{background:linear-gradient(120deg,#3498db,#2980b9);border-radius:6px;height:100%;transition:width .3s ease}.budget-stats{color:#7f8c8d;display:flex;font-size:1rem;font-weight:500;justify-content:space-between}.expense-categories{background:linear-gradient(135deg,#fff,#f8f9fa);border:1px solid #0000000d;border-radius:12px;box-shadow:0 4px 6px #0000000d;padding:2rem}.expense-categories h3{-webkit-text-fill-color:#0000;background:linear-gradient(120deg,#2c3e50,#3498db);-webkit-background-clip:text;color:#2c3e50;font-size:1.75rem;margin:0 0 1.5rem}.category-list{display:flex;flex-direction:column;gap:1rem}.category-item{align-items:center;background:#fff;border:1px solid #0000000d;border-radius:8px;display:flex;justify-content:space-between;padding:1.25rem;transition:all .3s ease}.category-item:hover{box-shadow:0 4px 8px #0000001a;transform:translateX(5px)}.category-name{color:#2c3e50;font-size:1.1rem;font-weight:600}.category-amount{background:#3498db1a;border-radius:20px;color:#3498db;font-size:1.1rem;font-weight:700;padding:.5rem 1rem}.loading-spinner{align-items:center;display:flex;flex-direction:column;justify-content:center;min-height:400px}.spinner{animation:spin 1s linear infinite;border:4px solid #f3f3f3;border-radius:50%;border-top-color:#3498db;height:50px;margin-bottom:1.5rem;width:50px}.loading-spinner p{color:#7f8c8d;font-size:1.25rem;font-weight:500}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.error-message{align-items:center;background:#fff;border-radius:12px;box-shadow:0 4px 15px #0000001a;display:flex;flex-direction:column;justify-content:center;min-height:400px;padding:3rem;text-align:center}.error-icon{font-size:4rem;margin-bottom:1.5rem}.error-message p{color:#e74c3c;font-size:1.5rem;font-weight:500;line-height:1.6;max-width:500px}@media (max-width:768px){.trip-detail-container{padding:1rem}.trip-header{padding:1.5rem}.trip-title{align-items:flex-start;flex-direction:column;gap:1rem}.trip-title h1{font-size:2rem}.trip-meta{flex-direction:column;gap:1rem}.trip-meta span{width:100%}.trip-actions{flex-direction:column;width:100%}.btn{justify-content:center;width:100%}.trip-tabs{flex-direction:column;gap:.5rem}.tab-btn{text-align:left;width:100%}.budget-overview,.expense-categories,.stat-card,.trip-content{padding:1.5rem}.day-header{align-items:flex-start;flex-direction:column;gap:.5rem}}*{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f8f9fa;color:#2c3e50;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}.app{display:flex;flex-direction:column;min-height:100vh}a{color:inherit;text-decoration:none}button{cursor:pointer;font-family:inherit}.container{margin:0 auto;max-width:1200px;padding:0 1rem}::-webkit-scrollbar{height:8px;width:8px}::-webkit-scrollbar-track{background:#f1f1f1;border-radius:4px}::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#a8a8a8}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.fade-in{animation:fadeIn .3s ease-in-out}.text-center{text-align:center}.mt-1{margin-top:.5rem}.mt-2{margin-top:1rem}.mt-3{margin-top:1.5rem}.mt-4{margin-top:2rem}.mb-1{margin-bottom:.5rem}.mb-2{margin-bottom:1rem}.mb-3{margin-bottom:1.5rem}.mb-4{margin-bottom:2rem}.mx-1{margin-left:.5rem;margin-right:.5rem}.mx-2{margin-left:1rem;margin-right:1rem}.mx-3{margin-left:1.5rem;margin-right:1.5rem}.mx-4{margin-left:2rem;margin-right:2rem}.my-1{margin-bottom:.5rem;margin-top:.5rem}.my-2{margin-bottom:1rem;margin-top:1rem}.my-3{margin-bottom:1.5rem;margin-top:1.5rem}.my-4{margin-bottom:2rem;margin-top:2rem}@media (max-width:768px){.container{padding:0 .5rem}}
/*# sourceMappingURL=main.5e229530.css.map*/