:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media(prefers-color-scheme:light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;background:linear-gradient(135deg,#667eea,#764ba2);min-height:100vh}.app{max-width:1200px;margin:0 auto;padding:20px}header{text-align:center;color:#fff;margin-bottom:40px;padding:40px 20px}header h1{font-size:3rem;margin-bottom:10px}header p{font-size:1.2rem;opacity:.9}.container{background:#fff;border-radius:20px;padding:40px;box-shadow:0 20px 60px #0000004d}.trip-form{margin-bottom:40px}.form-group{margin-bottom:20px}.form-group label{display:block;margin-bottom:8px;font-weight:600;color:#333}.form-group input,.form-group select{width:100%;padding:12px;border:2px solid #e0e0e0;border-radius:8px;font-size:16px;transition:border-color .3s}.form-group input:focus,.form-group select:focus{outline:none;border-color:#667eea}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}.submit-btn{width:100%;padding:16px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:8px;font-size:18px;font-weight:600;cursor:pointer;transition:transform .2s}.submit-btn:hover:not(:disabled){transform:translateY(-2px)}.submit-btn:disabled{opacity:.6;cursor:not-allowed}.error{background:#fee;border:2px solid #fcc;padding:20px;border-radius:8px;margin-top:20px}.results{margin-top:40px}.results h2{font-size:2rem;margin-bottom:20px;color:#333}.summary{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:40px}.summary-item{background:#f8f9fa;padding:20px;border-radius:12px;display:flex;flex-direction:column;gap:8px}.summary-item .label{font-size:.9rem;color:#666;font-weight:500}.summary-item .value{font-size:1.5rem;font-weight:700;color:#667eea}.section{margin-bottom:40px}.section h3{font-size:1.5rem;margin-bottom:20px;color:#333}.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:20px}.card{border:2px solid #e0e0e0;border-radius:12px;padding:20px;transition:transform .2s,box-shadow .2s}.card:hover{transform:translateY(-4px);box-shadow:0 4px 12px #0000001a}.card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px;padding-bottom:15px;border-bottom:1px solid #e0e0e0}.airline,.hotel-name{font-weight:700;font-size:1.1rem}.price{color:#667eea;font-weight:700;font-size:1.2rem}.card-body{margin-bottom:15px}.card-body p{margin-bottom:8px;color:#666}.amenities{font-size:.9rem;color:#888}.book-btn{display:inline-block;width:100%;padding:10px;background:#667eea;color:#fff;text-align:center;text-decoration:none;border-radius:6px;font-weight:600;transition:background .2s}.book-btn:hover{background:#5568d3}.day-card{background:#f8f9fa;padding:24px;border-radius:12px;margin-bottom:16px}.day-card h4{color:#667eea;margin-bottom:16px;font-size:1.2rem}.day-schedule p{margin-bottom:12px;line-height:1.6;color:#333}.tips-list{list-style:none;padding:0}.tips-list li{background:#f8f9fa;border-radius:8px;margin-bottom:12px;padding:16px 16px 16px 40px;position:relative;color:#333}.tips-list li:before{content:"💡";position:absolute;left:16px}@media(max-width:768px){header h1{font-size:2rem}.form-row,.summary,.cards{grid-template-columns:1fr}}.loading{text-align:center;padding:60px 20px;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:20px;color:#fff;margin-top:40px}.loading h3{font-size:2rem;margin-bottom:30px}.loading-spinner{width:60px;height:60px;border:5px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 30px}@keyframes spin{to{transform:rotate(360deg)}}.loading-steps{max-width:500px;margin:0 auto}.loading-steps .step{font-size:1.1rem;margin:15px 0;opacity:0;animation:fadeInOut 8s ease-in-out infinite}.loading-steps .step:nth-child(1){animation-delay:0s}.loading-steps .step:nth-child(2){animation-delay:2s}.loading-steps .step:nth-child(3){animation-delay:4s}.loading-steps .step:nth-child(4){animation-delay:6s}@keyframes fadeInOut{0%,to{opacity:0}25%,75%{opacity:1}}.value-prop{margin:40px 0;text-align:center}.value-prop h3{font-size:1.8rem;margin-bottom:30px;color:#333}.benefits{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:30px;margin-top:20px}.benefit{padding:30px;background:#f8f9fa;border-radius:12px;transition:transform .2s}.benefit:hover{transform:translateY(-4px)}.benefit .icon{font-size:3rem;display:block;margin-bottom:15px}.benefit h4{font-size:1.2rem;margin-bottom:10px;color:#667eea}.benefit p{color:#666;line-height:1.5}.trip-actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:15px;margin:30px 0}.action-btn{padding:15px 25px;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s}.save-btn{background:#4caf50;color:#fff}.save-btn:hover{background:#45a049;transform:translateY(-2px)}.monitor-btn{background:#ff9800;color:#fff}.monitor-btn:hover{background:#f57c00;transform:translateY(-2px)}.share-btn{background:#2196f3;color:#fff}.share-btn:hover{background:#0b7dda;transform:translateY(-2px)}.best-deal{display:block;background:#4caf50;color:#fff;font-size:.7rem;padding:4px 8px;border-radius:4px;margin-top:4px;font-weight:600}.social-proof{margin:60px 0 20px;padding:40px 0;border-top:2px solid #e0e0e0}.social-proof h3{text-align:center;font-size:1.8rem;margin-bottom:30px;color:#333}.testimonials{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px}.testimonial{background:#f8f9fa;padding:25px;border-radius:12px;border-left:4px solid #667eea}.testimonial p{font-style:italic;color:#333;margin-bottom:15px;line-height:1.6}.testimonial span{color:#666;font-size:.9rem;font-weight:600}
