/*! tailwindcss v4.0.17 | MIT License | https://tailwindcss.com */.container{width:100%}.hidden{display:none}.inline-flex{display:inline-flex}.w-full{width:100%}.items-center{align-items:center}.justify-center{justify-content:center}.border{border-style:var(--tw-border-style);border-width:1px}.text-center{text-align:center}.whitespace-nowrap{white-space:nowrap}.no-underline{text-decoration-line:none}.underline-offset-4{text-underline-offset:4px}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,ease);transition-duration:var(--tw-duration,0s)}@media (hover:hover){.hover\:underline:hover{text-decoration-line:underline}}.focus-visible\:ring-2:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(2px + var(--tw-ring-offset-width))var(--tw-ring-color,currentColor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus-visible\:ring-offset-2:focus-visible{--tw-ring-offset-width:2px;--tw-ring-offset-shadow:var(--tw-ring-inset,)0 0 0 var(--tw-ring-offset-width)var(--tw-ring-offset-color)}.focus-visible\:outline-none:focus-visible{--tw-outline-style:none;outline-style:none}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:opacity-50:disabled{opacity:.5}.\[\&_svg\]\:pointer-events-none svg{pointer-events:none}.\[\&_svg\]\:shrink-0 svg{flex-shrink:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}.logo{height:6em;padding:1.5em;will-change:filter;transition:filter .3s}.logo:hover{filter:drop-shadow(0 0 2em #646cffaa)}.logo.react:hover{filter:drop-shadow(0 0 2em #61dafbaa)}@keyframes logo-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (prefers-reduced-motion: no-preference){a:nth-of-type(2) .logo{animation:logo-spin infinite 20s linear}}.card{padding:2em}.read-the-docs{color:#888}.hero{--primary-color: #f56551;--primary-hover: #e04b3a;--secondary-color: #a855f7;--text-color: #333;--light-text: #6b7280;--light-bg: #f9fafb;--shadow-sm: 0 1px 3px rgba(0, 0, 0, .1);--shadow-md: 0 4px 6px rgba(0, 0, 0, .1);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1);--border-radius: 12px;--container-padding: 5%;width:100%;margin:0 auto;font-family:Inter,sans-serif;color:var(--text-color)}.hero__main{display:flex;justify-content:center;align-items:center;padding:6rem var(--container-padding) 4rem;background:linear-gradient(to bottom,#fff,var(--light-bg))}.hero__content-wrapper{max-width:1200px;width:100%;text-align:center}.hero__title{font-size:clamp(1.5rem,4vw,3rem);font-weight:700;line-height:1.2;margin-bottom:1.5rem}.hero__highlight{color:var(--primary-color);position:relative;display:inline-block}.hero__highlight:after{content:"";position:absolute;bottom:-5px;left:0;width:100%;height:3px;background-color:var(--primary-color);opacity:.3}.hero__break{display:none}@media (min-width: 640px){.hero__break{display:block}}.hero__description{font-size:clamp(1rem,2vw,1.25rem);color:var(--light-text);max-width:700px;margin:0 auto 2.5rem;line-height:1.6}.hero__cta-link{text-decoration:none}.hero__cta-button{padding:1rem 2rem;background-color:var(--primary-color);color:#fff;font-weight:600;font-size:1.125rem;border-radius:var(--border-radius);border:none;box-shadow:var(--shadow-md);transition:all .3s ease;cursor:pointer;position:relative;overflow:hidden}.hero__cta-button:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(to right,transparent,rgba(255,255,255,.2),transparent);transition:all .6s ease}.hero__cta-button:hover{background-color:var(--primary-hover);transform:translateY(-2px);box-shadow:var(--shadow-lg)}.hero__cta-button:hover:before{left:100%}.info-section{background-color:#fff;padding:5rem var(--container-padding)}.info-section__container{max-width:1200px;margin:0 auto;text-align:center}.info-section__tagline{font-size:.875rem;font-weight:700;letter-spacing:1.5px;color:var(--secondary-color);text-transform:uppercase;display:inline-block;padding:.5rem 1.5rem;background-color:#a855f71a;border-radius:100px;margin-bottom:1.5rem}.info-section__heading{font-size:clamp(1.75rem,4vw,2.5rem);font-weight:800;margin-bottom:1rem;background:linear-gradient(45deg,var(--primary-color),var(--secondary-color));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.info-section__description{font-size:clamp(1rem,1.5vw,1.125rem);color:var(--light-text);max-width:700px;margin:0 auto 3rem;line-height:1.6}.features{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;margin:0 auto}.feature-card{background-color:#fff;border-radius:var(--border-radius);padding:2rem;box-shadow:var(--shadow-sm);transition:transform .3s ease,box-shadow .3s ease;border:1px solid rgba(245,101,81,.1);height:100%;display:flex;flex-direction:column;align-items:center}.feature-card:hover{transform:translateY(-8px);box-shadow:var(--shadow-lg);border-color:var(--primary-color)}.feature-card__image-container{width:100px;height:100px;margin-bottom:1.5rem;display:flex;justify-content:center;align-items:center}.feature-card__image{max-width:100%;max-height:100%;-o-object-fit:contain;object-fit:contain}.feature-card__title{font-size:1.25rem;font-weight:700;margin-bottom:1rem;color:var(--text-color)}.feature-card__description{font-size:1rem;color:var(--light-text);line-height:1.6}.testimonials{background-color:var(--light-bg);padding:5rem var(--container-padding)}.testimonials__header{max-width:700px;margin:0 auto 3rem;text-align:center}.testimonials__title{font-size:clamp(1.75rem,4vw,2.5rem);font-weight:800;margin-bottom:1rem;color:var(--text-color)}.testimonials__subtitle{font-size:clamp(1rem,1.5vw,1.125rem);color:var(--light-text);line-height:1.6}.testimonials__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:2rem;max-width:1200px;margin:0 auto}.testimonial-card{background-color:#fff;border-radius:var(--border-radius);padding:1.5rem;box-shadow:var(--shadow-sm);transition:transform .3s ease,box-shadow .3s ease;border:1px solid rgba(245,101,81,.2);height:100%;display:flex;flex-direction:column}.testimonial-card:hover{transform:translateY(-5px);box-shadow:var(--shadow-md)}.testimonial-card__header{display:flex;align-items:center;margin-bottom:1rem}.testimonial-card__avatar{width:50px;height:50px;border-radius:50%;-o-object-fit:cover;object-fit:cover;box-shadow:var(--shadow-sm);border:2px solid var(--primary-color)}.testimonial-card__user-info{margin-left:1rem}.testimonial-card__name{font-size:1.125rem;font-weight:600;margin:0;color:var(--text-color)}.testimonial-card__role{font-size:.875rem;color:var(--light-text);margin:.25rem 0 0}.testimonial-card__content{flex:1;display:flex;flex-direction:column}.testimonial-card__rating{display:flex;margin-bottom:.75rem}.testimonial-card__star{color:#fbbf24;margin-right:.25rem}.testimonial-card__text{font-size:.9375rem;line-height:1.6;color:var(--text-color);flex:1;font-style:italic;position:relative}.testimonial-card__text:before{content:'"';font-size:1.5rem;color:var(--primary-color);opacity:.5;position:absolute;left:-.5rem;top:-.5rem}@media (max-width: 1024px){.hero__main{padding-top:4rem;padding-bottom:3rem}.info-section,.testimonials{padding:4rem var(--container-padding)}}@media (max-width: 768px){.hero__main{padding-top:3rem;padding-bottom:2rem}.info-section,.testimonials{padding:3rem var(--container-padding)}.features{grid-template-columns:1fr;max-width:500px;margin:0 auto}.testimonials__grid{grid-template-columns:1fr;max-width:500px}}@media (max-width: 480px){.hero__main{padding-top:2rem}.hero__cta-button{padding:.75rem 1.5rem;font-size:1rem}.feature-card,.testimonial-card{padding:1.25rem}}:root{--primary-color: #f56551;--primary-light: #f89783;--primary-dark: #e04b3a;--secondary-color: #3490dc;--secondary-light: #6db8e6;--neutral-100: #f9fafb;--neutral-200: #edf2f7;--neutral-300: #e2e8f0;--neutral-400: #cbd5e0;--neutral-500: #a0aec0;--neutral-600: #718096;--neutral-700: #4a5568;--neutral-800: #2d3748;--card-shadow: 0 10px 25px rgba(0, 0, 0, .06);--transition-base: all .3s cubic-bezier(.25, .8, .25, 1)}*{box-sizing:border-box;margin:0;padding:0}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;line-height:1.6;color:var(--neutral-700);background-color:#f5f7fa}.main-container{min-height:100vh;background:linear-gradient(135deg,#f5f7fa,#e4e8ef);padding:3rem 1rem;display:flex;justify-content:center;align-items:flex-start;position:relative;overflow-x:hidden}.main-container:before{content:"";position:absolute;top:0;right:0;width:100%;height:100%;background-image:radial-gradient(circle at 20% 15%,rgba(245,101,81,.06) 0%,transparent 40%),radial-gradient(circle at 80% 85%,rgba(52,144,220,.06) 0%,transparent 40%);pointer-events:none}.trip-form-container{width:100%;max-width:1200px;background-color:#fff;border-radius:24px;box-shadow:var(--card-shadow);padding:3rem;margin:0 auto;position:relative;z-index:1;overflow:hidden}.trip-form-container:before{content:"";position:absolute;top:-50%;right:-50%;width:100%;height:100%;background:linear-gradient(135deg,#f565510d,#3490dc0d);border-radius:50%;z-index:-1}.header-section{text-align:center;margin-bottom:3rem;padding-bottom:2rem;border-bottom:1px solid var(--neutral-200);position:relative}.header-section:after{content:"";position:absolute;bottom:-1px;left:50%;transform:translate(-50%);width:100px;height:3px;background:linear-gradient(90deg,var(--primary-color),var(--primary-light));border-radius:3px}.main-title{font-size:2.75rem;font-weight:800;color:var(--neutral-800);margin-bottom:.75rem;background:linear-gradient(120deg,var(--primary-color),var(--secondary-color));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;letter-spacing:-.5px;line-height:1.2}.main-description{font-size:1.2rem;color:var(--neutral-600);max-width:650px;margin:0 auto;line-height:1.6}.destinations-section{display:flex;flex-direction:column;gap:2rem;margin-bottom:3rem;padding:2rem;background-color:var(--neutral-100);border-radius:16px;box-shadow:0 4px 12px #00000008;position:relative}.destinations-section:before{content:"✈️";position:absolute;top:-15px;left:-15px;background-color:var(--primary-color);color:#fff;width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.2rem;box-shadow:0 4px 8px #f565514d}@media (min-width: 768px){.destinations-section{flex-direction:row;align-items:flex-start}.input-group{flex:1}}.input-group{display:flex;flex-direction:column;gap:1rem;position:relative}.input-label{display:flex;align-items:center;gap:.75rem;margin-bottom:.25rem}.input-label h2{font-size:1.3rem;font-weight:600;color:var(--neutral-700);transition:var(--transition-base)}.input-group:hover .input-label h2{color:var(--primary-color)}.input-icon{color:var(--primary-color);font-size:1.3rem;filter:drop-shadow(0 2px 3px rgba(245,101,81,.2))}.google-places-wrapper{width:100%;position:relative}.google-places-wrapper:after{content:"🔍";position:absolute;right:12px;top:50%;transform:translateY(-50%);pointer-events:none;opacity:.7}.days-input{width:100%;padding:1rem 1.2rem;border:2px solid var(--neutral-300);border-radius:12px;font-size:1rem;box-shadow:0 2px 6px #0000000d;transition:var(--transition-base);background-color:#fff}.days-input:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 4px #f5655126}.days-input::-moz-placeholder{color:var(--neutral-500)}.days-input::placeholder{color:var(--neutral-500)}.preferences-section{display:grid;grid-template-columns:1fr;gap:2rem;margin-bottom:3rem}@media (min-width: 768px){.preferences-section{grid-template-columns:repeat(2,1fr)}}@media (min-width: 1024px){.preferences-section{grid-template-columns:repeat(3,1fr)}}.preference-card{background-color:var(--neutral-100);border-radius:16px;padding:1.75rem;box-shadow:0 3px 12px #0000000a;transition:var(--transition-base);border:1px solid transparent;position:relative;overflow:hidden}.preference-card:before{content:"";position:absolute;top:0;left:0;width:4px;height:0;background:linear-gradient(to bottom,var(--primary-color),var(--primary-light));transition:var(--transition-base)}.preference-card:hover:before{height:100%}.preference-card:hover{box-shadow:0 8px 20px #00000012;transform:translateY(-5px);border-color:var(--neutral-200)}.preference-title{font-size:1.2rem;font-weight:700;color:var(--neutral-700);margin-bottom:1.5rem;text-align:center;position:relative;padding-bottom:.9rem;transition:var(--transition-base)}.preference-card:hover .preference-title{color:var(--primary-color)}.preference-title:after{content:"";position:absolute;bottom:0;left:50%;transform:translate(-50%);width:60px;height:3px;background:linear-gradient(90deg,var(--primary-color),var(--primary-light));border-radius:3px}.options-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.9rem}@media (min-width: 500px){.options-grid{grid-template-columns:repeat(3,1fr)}}.option-item{background-color:#fff;border:2px solid var(--neutral-200);border-radius:12px;padding:1rem .75rem;display:flex;flex-direction:column;align-items:center;justify-content:center;cursor:pointer;transition:var(--transition-base);height:100%;min-height:100px;position:relative;overflow:hidden}.option-item:after{content:"";position:absolute;bottom:0;left:0;width:0;height:3px;background:linear-gradient(90deg,var(--primary-color),var(--primary-light));transition:var(--transition-base)}.option-item:hover{background-color:#f8fafc;border-color:var(--neutral-300);box-shadow:0 6px 12px #0000000f;transform:translateY(-3px)}.option-item:hover:after{width:100%}.option-item.selected{border:2px solid var(--primary-color);background-color:#f565510d;box-shadow:0 5px 15px #f5655126}.option-item.selected:after{width:100%;height:4px}.option-icon{font-size:1.7rem;color:var(--primary-color);margin-bottom:.75rem;transition:var(--transition-base)}.option-item:hover .option-icon{transform:scale(1.15)}.option-text{font-size:.9rem;font-weight:600;color:var(--neutral-700);text-align:center;transition:var(--transition-base)}.option-item:hover .option-text{color:var(--primary-color)}.action-section{display:flex;justify-content:center;margin-top:3rem;position:relative}.action-section:before{content:"";position:absolute;top:-1.5rem;left:50%;transform:translate(-50%);width:100px;height:2px;background:linear-gradient(90deg,transparent,var(--neutral-300),transparent)}.generate-button{padding:1.2rem 2.5rem;background:linear-gradient(90deg,var(--primary-color),var(--primary-dark));color:#fff;border-radius:50px;font-size:1.2rem;font-weight:700;border:none;cursor:pointer;transition:var(--transition-base);display:flex;align-items:center;gap:1rem;box-shadow:0 6px 15px #f565514d;position:relative;overflow:hidden;z-index:1}.generate-button:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,var(--primary-dark),var(--primary-color));transition:var(--transition-base);z-index:-1}.generate-button:hover:before{left:0}.generate-button:hover{transform:translateY(-3px);box-shadow:0 8px 20px #f5655166}.generate-button:active{transform:translateY(1px);box-shadow:0 3px 8px #f5655166}.generate-button:disabled{background:linear-gradient(90deg,#ccc,#ddd);cursor:not-allowed;transform:none;box-shadow:none}.loading-icon{font-size:1.3rem}.spin{animation:spin 1s linear infinite}.dialog-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#000000b3;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;justify-content:center;align-items:center;z-index:1000;animation:fadeIn .3s ease-out}.dialog-box{background:#fff;border-radius:24px;padding:3rem;width:90%;max-width:480px;box-shadow:0 15px 35px #0003;text-align:center;animation:slideUp .4s cubic-bezier(.19,1,.22,1);position:relative;overflow:hidden}.dialog-box:before{content:"";position:absolute;top:0;left:0;width:100%;height:8px;background:linear-gradient(90deg,var(--primary-color),var(--primary-light))}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.dialog-logo{height:80px;margin-bottom:2rem;filter:drop-shadow(0 4px 6px rgba(0,0,0,.1));animation:pulse 2s infinite}@keyframes pulse{0%{transform:scale(1)}50%{transform:scale(1.05)}to{transform:scale(1)}}.dialog-title{font-size:2rem;font-weight:800;color:var(--primary-color);margin-bottom:1rem;letter-spacing:-.5px}.dialog-text{font-size:1.15rem;color:var(--neutral-700);margin-bottom:2rem;line-height:1.6}.dialog-buttons{display:flex;justify-content:center;gap:1.2rem;flex-wrap:wrap}.google-signin-button{display:flex;align-items:center;gap:.8rem;padding:1rem 1.8rem;background-color:var(--primary-color);color:#fff;border:none;border-radius:50px;font-size:1.1rem;font-weight:600;cursor:pointer;transition:var(--transition-base);box-shadow:0 5px 12px #f565514d;position:relative;overflow:hidden;z-index:1}.google-signin-button:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,var(--primary-dark),var(--primary-color));transition:var(--transition-base);z-index:-1}.google-signin-button:hover:before{left:0}.google-signin-button:hover{transform:translateY(-3px);box-shadow:0 8px 16px #f5655159}.google-icon{font-size:1.3rem;filter:drop-shadow(0 2px 3px rgba(0,0,0,.2))}.back-button{padding:1rem 1.8rem;background-color:var(--neutral-200);color:var(--neutral-700);border:none;border-radius:50px;font-size:1.1rem;font-weight:600;cursor:pointer;transition:var(--transition-base);position:relative;overflow:hidden;z-index:1}.back-button:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,var(--neutral-300),var(--neutral-200));transition:var(--transition-base);z-index:-1}.back-button:hover:before{left:0}.back-button:hover{background-color:var(--neutral-300);transform:translateY(-2px)}@media (max-width: 992px){.trip-form-container{padding:2.5rem 2rem}.main-title{font-size:2.25rem}}@media (max-width: 768px){.main-container{padding:2rem 1rem}.trip-form-container{padding:2rem 1.5rem;border-radius:20px}.main-title{font-size:2rem}.main-description{font-size:1.05rem}.preference-title{font-size:1.1rem}.option-icon{font-size:1.4rem}.option-text{font-size:.85rem}.generate-button{padding:1rem 2rem;font-size:1.1rem}.dialog-box{padding:2.5rem}}@media (max-width: 480px){.main-container{padding:1.5rem .75rem}.trip-form-container{padding:1.5rem 1rem;border-radius:16px}.main-title{font-size:1.8rem}.main-description{font-size:1rem}.header-section{margin-bottom:2rem;padding-bottom:1.5rem}.destinations-section{padding:1.5rem}.preference-card{padding:1.25rem}.options-grid{grid-template-columns:repeat(2,1fr);gap:.75rem}.option-item{min-height:90px;padding:.75rem .5rem}.input-label h2{font-size:1.1rem}.dialog-box{padding:2rem 1.5rem}.dialog-title{font-size:1.6rem}.dialog-text{font-size:1rem}.dialog-buttons{flex-direction:column;gap:1rem}.google-signin-button,.back-button{width:100%;justify-content:center;padding:.9rem 1rem}.generate-button{width:100%;justify-content:center;padding:1rem;font-size:1rem}}::-webkit-scrollbar{width:10px}::-webkit-scrollbar-track{background:var(--neutral-100);border-radius:10px}::-webkit-scrollbar-thumb{background:linear-gradient(to bottom,var(--primary-light),var(--primary-color));border-radius:10px}::-webkit-scrollbar-thumb:hover{background:linear-gradient(to bottom,var(--primary-color),var(--primary-dark))}:focus-visible{outline:2px solid var(--primary-color);outline-offset:2px}.option-item input[type=radio]{position:absolute;opacity:0}input:-webkit-autofill,input:-webkit-autofill:hover,input:-webkit-autofill:focus{-webkit-box-shadow:0 0 0px 1000px white inset;-webkit-text-fill-color:var(--neutral-700);-webkit-transition:background-color 5000s ease-in-out 0s;transition:background-color 5000s ease-in-out 0s}:root{--primary-color: #f56551;--primary-color-dark: #e04b3a;--secondary-color: #2c3e50;--accent-color: #3498db;--light-gray: #f8f9fa;--medium-gray: #e9ecef;--dark-gray: #6c757d;--shadow-sm: 0 2px 4px rgba(0, 0, 0, .08);--shadow-md: 0 4px 8px rgba(0, 0, 0, .12);--shadow-lg: 0 8px 16px rgba(0, 0, 0, .15);--border-radius-sm: 4px;--border-radius-md: 8px;--border-radius-lg: 12px;--transition-fast: .2s ease;--transition-normal: .3s ease}.container{width:100%;max-width:1200px;margin:0 auto;padding:0 20px}.header{background-color:#fff;box-shadow:var(--shadow-sm);position:sticky;top:0;z-index:100;padding:12px 0;border-bottom:1px solid var(--medium-gray)}.header-wrapper{display:flex;justify-content:space-between;align-items:center}.logo-container{display:flex;align-items:center}.logo{height:40px;width:auto;transition:transform var(--transition-normal)}.logo:hover{transform:scale(1.05)}.nav-container{display:flex;align-items:center;gap:20px}.nav-links{display:flex;align-items:center;gap:12px}.nav-link{text-decoration:none}.nav-button{padding:10px 18px;border-radius:var(--border-radius-md);font-weight:500;font-size:15px;border:none;cursor:pointer;transition:all var(--transition-normal);background-color:transparent;color:var(--secondary-color)}.nav-button:hover{background-color:var(--light-gray);transform:translateY(-2px)}.signin-button{background-color:var(--primary-color);color:#fff}.signin-button:hover{background-color:var(--primary-color-dark);box-shadow:var(--shadow-sm)}.logout-button{color:var(--dark-gray)}.logout-button:hover{color:#dc3545;background-color:#dc35451a}.user-profile{display:flex;align-items:center}.user-avatar{height:42px;width:42px;border-radius:50%;-o-object-fit:cover;object-fit:cover;border:2px solid var(--medium-gray);transition:all var(--transition-normal);box-shadow:var(--shadow-sm)}.user-avatar:hover{transform:scale(1.08);box-shadow:var(--shadow-md);border-color:var(--primary-color)}.dialog-overlay{position:fixed;top:0;left:0;width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:#0009;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);z-index:1000;animation:fadeIn .3s ease}.dialog-box{background:#fff;border-radius:var(--border-radius-lg);box-shadow:var(--shadow-lg);width:90%;max-width:420px;overflow:hidden;animation:slideUp .4s ease}@keyframes slideUp{0%{transform:translateY(30px);opacity:0}to{transform:translateY(0);opacity:1}}.dialog-header{padding:25px 30px 15px;text-align:center;border-bottom:1px solid var(--medium-gray)}.dialog-logo{height:55px;margin-bottom:12px}.dialog-title{font-size:24px;font-weight:600;color:var(--secondary-color);margin:0}.dialog-content{padding:25px 30px}.dialog-text{font-size:16px;line-height:1.5;color:var(--dark-gray);margin-bottom:25px;text-align:center}.dialog-buttons{display:flex;flex-direction:column;gap:12px}.google-signin-button{display:flex;align-items:center;justify-content:center;gap:10px;padding:12px 20px;border-radius:var(--border-radius-md);background-color:#4285f4;color:#fff;border:none;cursor:pointer;font-weight:500;font-size:16px;transition:all var(--transition-normal);width:100%}.google-signin-button:hover{background-color:#3367d6;transform:translateY(-2px);box-shadow:var(--shadow-sm)}.google-icon{font-size:20px;background-color:#fff;border-radius:50%;padding:2px}.back-button{padding:12px 20px;border-radius:var(--border-radius-md);background-color:transparent;border:1px solid var(--medium-gray);color:var(--dark-gray);cursor:pointer;font-weight:500;font-size:16px;transition:all var(--transition-normal);width:100%}.back-button:hover{background-color:var(--light-gray)}@media (max-width: 768px){.header{padding:10px 0}.nav-container{gap:10px}.nav-links{gap:8px}.nav-button{padding:8px 12px;font-size:14px}.user-avatar{height:36px;width:36px}}@media (max-width: 576px){.header-wrapper{flex-direction:column;gap:12px}.logo{height:34px}.nav-container{width:100%;justify-content:space-between}.nav-links{flex-wrap:wrap;justify-content:center}.nav-button{padding:6px 10px;font-size:13px}.dialog-box{width:95%}.dialog-header,.dialog-content{padding:20px}}@media (max-width: 320px){.header-wrapper{flex-direction:column;gap:2px}.logo{height:24px}.nav-container{width:100%;justify-content:space-between}.nav-links{flex-wrap:wrap;justify-content:center}.nav-button{padding:4px 7px;font-size:10px}.dialog-box{width:95%}.dialog-header,.dialog-content{padding:20px}}.info-section{width:100%;border-radius:16px;overflow:hidden;box-shadow:0 10px 30px #0000001a;margin-bottom:2rem;background:linear-gradient(135deg,#fff,#f0f4f8)}.info-banner{display:flex;flex-direction:column;width:100%}.trip-image-container{width:100%;height:300px;overflow:hidden;position:relative}.trip-image{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;transition:transform .5s ease}.trip-image:hover{transform:scale(1.05)}.image-skeleton{width:100%;height:100%;background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0,#f0f0f0 75%);background-size:200% 100%;animation:shimmer 1.5s infinite}.trip-info-container{padding:2rem;display:flex;flex-direction:column;align-items:center;gap:1.5rem}.trip-title{font-size:clamp(1.5rem,5vw,2.5rem);font-weight:700;color:#f56551;text-align:center;padding:.5rem 1.5rem;border-radius:12px;background:#f565511a;box-shadow:0 4px 15px #f5655133;display:flex;align-items:center;gap:.5rem;margin:0}.trip-tags{display:flex;flex-wrap:wrap;justify-content:center;gap:.75rem;width:100%}.tag{padding:.5rem 1rem;border-radius:30px;background:linear-gradient(135deg,#f56551,#ff7b69);color:#fff;font-weight:500;font-size:.9rem;display:flex;align-items:center;gap:.5rem;box-shadow:0 2px 5px #f565514d;transition:all .2s ease}.tag:hover{transform:translateY(-2px);box-shadow:0 4px 8px #f5655166}.share-trip-btn{padding:.75rem 1.5rem;border-radius:30px;background:linear-gradient(135deg,#082d0f,#0a4016);color:#fff;font-weight:600;border:none;cursor:pointer;display:flex;align-items:center;gap:.5rem;box-shadow:0 4px 10px #082d0f4d;transition:all .3s ease}.share-trip-btn:hover{transform:translateY(-3px);box-shadow:0 6px 15px #082d0f66}.share-trip-btn:active{transform:translateY(-1px)}@media (min-width: 768px){.info-banner{flex-direction:row;min-height:400px}.trip-image-container{width:50%;height:auto}.trip-info-container{width:50%;justify-content:center}}@media (min-width: 1024px){.trip-tags{max-width:90%}}.hotel-card{height:100%;border-radius:12px;overflow:hidden;background-color:#fff;box-shadow:0 10px 20px #0000001a;transition:transform .3s ease,box-shadow .3s ease;position:relative}.hotel-card:hover{transform:translateY(-8px);box-shadow:0 15px 30px #00000026}.hotel-link{text-decoration:none;color:inherit;display:flex;flex-direction:column;height:100%}.hotel-image-container{position:relative;height:200px;overflow:hidden}.hotel-image{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;transition:transform .5s ease}.hotel-card:hover .hotel-image{transform:scale(1.1)}.hotel-image-skeleton{width:100%;height:100%;background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0,#f0f0f0 75%);background-size:200% 100%;animation:shimmer 1.5s infinite}.hotel-view-map{position:absolute;top:10px;right:10px;background:#0009;color:#fff;padding:6px 12px;border-radius:20px;font-size:.8rem;display:flex;align-items:center;gap:5px;opacity:0;transform:translateY(-10px);transition:opacity .3s ease,transform .3s ease}.hotel-card:hover .hotel-view-map{opacity:1;transform:translateY(0)}.hotel-content{padding:1.25rem;flex-grow:1;display:flex;flex-direction:column;gap:.75rem}.hotel-name{font-size:1.25rem;font-weight:700;color:#333;margin:0;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis}.hotel-rating{display:flex;align-items:center;gap:.5rem}.star-rating{display:flex;gap:2px}.star{font-size:.9rem}.star.filled{color:#ffc107}.star.empty{color:#e0e0e0}.rating-text{font-size:.9rem;color:#666}.hotel-price{font-size:1.1rem;font-weight:700;color:#688e26;display:flex;align-items:center;gap:4px}.hotel-address{display:flex;align-items:flex-start;gap:.5rem;font-size:.9rem;color:#666;margin-top:auto}.address-icon{margin-top:3px;color:#f56551;flex-shrink:0}@media (max-width: 768px){.hotel-image-container{height:180px}.hotel-name{font-size:1.1rem}.hotel-view-map{opacity:1;transform:translateY(0)}}.hotels-section{width:100%;padding:2rem 1rem;background-color:#fff;border-radius:16px;box-shadow:0 4px 20px #00000014}.hotels-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:2rem;width:100%;padding:1rem}@media (min-width: 768px){.hotels-section{padding:3rem 2rem}}@media (min-width: 1024px){.hotels-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}}@media (min-width: 1280px){.hotels-grid{grid-template-columns:repeat(4,1fr)}}.place-card{width:100%;background-color:#fff;border-radius:12px;overflow:hidden;box-shadow:0 4px 15px #00000014;margin-bottom:1.5rem;transition:all .3s ease}.place-card:hover{box-shadow:0 8px 20px #0000001f;transform:translateY(-3px)}.place-card-content{display:flex;flex-direction:column}.place-image-container{width:100%;height:180px;overflow:hidden}.place-image{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;transition:transform .5s ease}.place-card:hover .place-image{transform:scale(1.05)}.place-image-skeleton{width:100%;height:100%;background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0,#f0f0f0 75%);background-size:200% 100%;animation:shimmer 1.5s infinite}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.place-info{padding:1.25rem;display:flex;flex-direction:column;gap:.75rem}.place-name{font-size:1.25rem;font-weight:700;color:#f56551;margin:0;line-height:1.3}.place-meta{display:flex;flex-wrap:wrap;gap:1rem}.meta-item{display:flex;align-items:center;gap:6px;font-size:.9rem;color:#666}.meta-icon{color:#f56551}.place-details-preview{font-size:.95rem;color:#555;line-height:1.5}.place-details-preview p{margin:0}.place-card-actions{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;margin-top:.5rem}.expand-btn,.maps-link{padding:.5rem 1rem;border-radius:30px;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s ease;text-align:center}.expand-btn{background-color:transparent;border:1px solid #f56551;color:#f56551}.expand-btn:hover{background-color:#f56551;color:#fff}.maps-link{background-color:#f56551;color:#fff;text-decoration:none;display:flex;align-items:center;gap:.5rem;box-shadow:0 2px 8px #f565514d}.maps-link:hover{background-color:#e05547;transform:translateY(-2px)}.place-expanded-content{padding:0 1.25rem 1.25rem;border-top:1px solid #eee;animation:fadeIn .3s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.place-details-full{font-size:.95rem;color:#444;line-height:1.6}.place-details-full h4{font-size:1.1rem;color:#333;margin:1rem 0 .5rem}.place-details-full p{margin:.5rem 0}@media (min-width: 768px){.place-card-content{flex-direction:row}.place-image-container{width:40%;height:220px}.place-info{width:60%}}@media (min-width: 1024px){.place-image-container{width:35%}.place-info{width:65%}}.places-section{width:100%;padding:2rem 1rem;background-color:#fff;border-radius:16px;box-shadow:0 4px 20px #00000014}.section-header{text-align:center;margin-bottom:2rem;position:relative}.section-title{color:#f56551;font-size:clamp(1.5rem,4vw,2rem);font-weight:700;margin:0;padding-bottom:.75rem;display:inline-block}.section-divider{width:80px;height:4px;background:linear-gradient(90deg,#f56551,#ff8674);margin:0 auto;border-radius:2px}.itinerary-container{display:flex;flex-direction:column;gap:1.5rem;width:100%}.day-container{width:100%;border-radius:12px;overflow:hidden;box-shadow:0 4px 12px #00000014}.day-header{width:100%;background:linear-gradient(135deg,#f56551,#ff7b69);padding:1rem 1.5rem;color:#fff;display:flex;justify-content:space-between;align-items:center;cursor:pointer;border:none;transition:all .3s ease}.day-header:hover{background:linear-gradient(135deg,#ff7b69,#f56551)}.day-header.active{background:linear-gradient(135deg,#e05547,#f56551)}.day-title{margin:0;font-size:1.2rem;font-weight:600}.day-content{max-height:0;overflow:hidden;transition:max-height .5s ease;background-color:#f8f9fa}.day-content.expanded{max-height:5000px}@media (min-width: 768px){.places-section{padding:3rem 2rem}.day-header{padding:1.25rem 2rem}.day-title{font-size:1.4rem}}.site-footer{background:linear-gradient(135deg,#f8f9fa,#e9ecef);border-radius:16px;padding:2rem 1rem;margin-top:3rem;width:100%;box-shadow:0 -4px 20px #0000000d}.footer-container{display:flex;flex-direction:column;align-items:center;gap:2rem;max-width:1200px;margin:0 auto}.footer-branding{display:flex;flex-direction:column;align-items:center;gap:.5rem}.footer-logo{height:50px;width:auto;transition:transform .3s ease}.footer-logo:hover{transform:scale(1.05)}.footer-slogan{font-size:.9rem;color:#666;margin:0}.footer-message{text-align:center;padding:1rem 2rem;background:linear-gradient(135deg,#f56551,#ff7b69);color:#fff;border-radius:12px;box-shadow:0 4px 15px #f5655133;max-width:600px;width:100%}.journey-wish{font-size:1.1rem;font-weight:500;margin:0;display:flex;align-items:center;justify-content:center;gap:.5rem}.emoji{font-size:1.3rem}.footer-credits{display:flex;flex-direction:column;align-items:center;gap:1rem;width:100%}.copyright{font-size:.9rem;color:#666;margin:0;display:flex;align-items:center;gap:.5rem}.heart-icon{color:#f56551;animation:heartbeat 1.5s infinite}@keyframes heartbeat{0%{transform:scale(1)}15%{transform:scale(1.2)}30%{transform:scale(1)}45%{transform:scale(1.2)}60%{transform:scale(1)}}.social-links{display:flex;gap:1rem}.social-link{width:36px;height:36px;border-radius:50%;background-color:#f56551;color:#fff;display:flex;align-items:center;justify-content:center;text-decoration:none;transition:all .3s ease}.social-link:hover{transform:translateY(-3px);box-shadow:0 5px 10px #f565514d;background-color:#e05547}@media (min-width: 768px){.site-footer{padding:3rem 2rem}.footer-container{flex-direction:row;justify-content:space-between;align-items:center;flex-wrap:wrap}.footer-branding{align-items:flex-start}.footer-message{order:0}.footer-credits{flex-direction:row;justify-content:space-between}}@media (min-width: 1024px){.footer-container{flex-wrap:nowrap}.footer-message{order:0;margin:0 2rem}}.view-trip-container{width:100%;max-width:1600px;margin:0 auto;background-color:#f8f9fa;min-height:100vh;display:flex;flex-direction:column;gap:2rem;padding:clamp(1rem,5vw,one)}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;height:50vh;width:100%}.loader{width:48px;height:48px;border:5px solid #f56551;border-bottom-color:transparent;border-radius:50%;animation:rotation 1s linear infinite;margin-bottom:1rem}@keyframes rotation{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.user-card{background-color:#eff6ff;padding:clamp(12px,3vw,20px);border-radius:12px;display:flex;flex-direction:column;align-items:center;gap:clamp(10px,1.5vw,16px);max-width:380px;border:1px solid #d1d5db;text-align:center;text-decoration:none;transition:all .3s ease}.user-card:hover{transform:scale(1.02);box-shadow:0 8px 16px #0000001a}.user-card img{-o-object-fit:cover;object-fit:cover;border-radius:10px;width:100%;aspect-ratio:16/10;box-shadow:0 3px 6px #0000001a}.user-card-title{font-weight:700;font-size:clamp(18px,2vw,24px);color:#f56551;margin:0}.user-card-description{font-size:clamp(14px,1.5vw,18px);color:#4b5563;line-height:1.4;margin:0}.user-card-description span{font-weight:600}@media (max-width: 600px){.user-card{max-width:100%}}.my-trips-container{width:min(100%,1200px);margin:0 auto;padding:2rem 1.5rem;display:flex;flex-direction:column;min-height:85vh}.trips-header{text-align:center;margin-bottom:2.5rem;padding-bottom:1.5rem;position:relative}.trips-header:after{content:"";position:absolute;bottom:0;left:50%;transform:translate(-50%);width:80px;height:3px;background:linear-gradient(90deg,#ff7e5f,#feb47b);border-radius:2px}.my-trips-title{font-size:2.5rem;font-weight:700;color:#2d3748;margin-bottom:.75rem;letter-spacing:-.5px}.trips-subtitle{font-size:1.125rem;color:#718096;margin:0}.trips-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:2rem;width:100%}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 0;flex-grow:1}.loader{border:4px solid rgba(245,101,81,.2);border-left:4px solid #f56551;border-radius:50%;width:50px;height:50px;animation:spin 1s linear infinite;margin-bottom:1rem}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.no-trips-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 0;background-color:#f9fafb;border-radius:12px;border:1px dashed #d1d5db;flex-grow:1}.no-trips-icon{font-size:4rem;margin-bottom:1rem}.no-trips-container h3{font-size:1.5rem;color:#4b5563;margin-bottom:.5rem}.no-trips-container p{color:#6b7280;margin:0}.user-card{background:#fff;border-radius:12px;overflow:hidden;transition:all .3s ease;box-shadow:0 4px 12px #00000014;height:100%;display:flex;flex-direction:column;position:relative}.user-card:hover{transform:translateY(-5px);box-shadow:0 12px 20px #0000001f}.user-card img{width:100%;height:200px;-o-object-fit:cover;object-fit:cover;border-bottom:3px solid #f56551}.user-card>div{padding:1.25rem;display:flex;flex-direction:column;flex-grow:1}.user-card-title{font-size:1.25rem;font-weight:700;color:#2d3748;margin-bottom:.75rem;position:relative;display:inline-block}.user-card-title:after{content:"";position:absolute;bottom:-4px;left:0;width:40px;height:2px;background-color:#f56551}.user-card-description{font-size:.95rem;color:#718096;line-height:1.5;flex-grow:1}.user-card-description span{color:#f56551;font-weight:600}.no-underline{text-decoration:none;color:inherit;display:block;height:100%}@media screen and (max-width: 1024px){.my-trips-title{font-size:2.25rem}.trips-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}}@media screen and (max-width: 768px){.my-trips-container{padding:1.5rem 1rem}.my-trips-title{font-size:2rem}.trips-subtitle{font-size:1rem}.trips-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:1.5rem}}@media screen and (max-width: 480px){.my-trips-container{padding:1.25rem .875rem}.my-trips-title{font-size:1.75rem}.trips-header{margin-bottom:2rem}.trips-grid{grid-template-columns:1fr;gap:1.25rem}.user-card img{height:180px}}
