@import url("https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap");:root{--primary:#6b21a8;--primary-hover:#581c87;--primary-light:#faf5ff;--accent:#f59e0b;--accent-hover:#d97706;--text:#18181b;--text-secondary:#52525b;--text-muted:#a1a1aa;--bg:#fafafa;--surface:#fff;--border:#e4e4e7;--border-light:#f4f4f5;--shadow-sm:0 1px 2px rgba(0,0,0,.04);--shadow:0 4px 12px rgba(0,0,0,.06);--shadow-lg:0 12px 32px rgba(0,0,0,.08);--radius-sm:8px;--radius:16px;--radius-lg:20px;--radius-xl:24px}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;line-height:1.5;font-size:15px}.container{max-width:1120px;margin:0 auto;padding:0 20px}.header{background:var(--surface);border-bottom:1px solid var(--border);position:-webkit-sticky;position:sticky;top:0;z-index:100}.header-inner{display:flex;justify-content:space-between;align-items:center;height:64px;gap:20px}.logo{gap:10px;text-decoration:none;font-size:20px;color:var(--primary);letter-spacing:-.3px}.logo,.logo-icon{display:flex;align-items:center;font-weight:800}.logo-icon{width:36px;height:36px;background:var(--primary);border-radius:10px;justify-content:center;color:#fff;font-size:18px}.nav{display:flex;align-items:center;gap:2px}.nav a{color:var(--text-secondary);text-decoration:none;font-weight:500;font-size:14px;padding:8px 14px;border-radius:var(--radius-sm);transition:all .15s}.nav a:hover{background:var(--border-light);color:var(--text)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 24px;border:none;border-radius:12px;font-size:15px;font-weight:600;font-family:inherit;cursor:pointer;transition:all .15s;text-decoration:none;white-space:nowrap}.btn:active{transform:scale(.97)}.btn-primary{background:var(--accent);color:#18181b}.btn-primary:hover{background:var(--accent-hover)}.btn-secondary{background:var(--primary);color:#fff}.btn-secondary:hover{background:var(--primary-hover)}.btn-outline{background:transparent;border:1px solid var(--border);color:var(--text)}.btn-outline:hover{background:var(--border-light)}.btn-lg{padding:16px 32px;font-size:17px;border-radius:14px}.btn-sm{padding:8px 16px;font-size:13px;border-radius:10px}.btn-block{width:100%}.hero{padding:48px 0 0;text-align:center}.hero h1{font-size:44px;font-weight:800;letter-spacing:-1px;line-height:1.15;margin-bottom:8px}.hero h1 span{color:var(--primary)}.hero p{font-size:17px;color:var(--text-secondary);margin-bottom:32px}.search-wrapper{max-width:960px;margin:0 auto 60px}.search-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);padding:24px}.search-tabs{display:flex;gap:4px;margin-bottom:20px;background:var(--border-light);border-radius:10px;padding:3px;width:-moz-fit-content;width:fit-content}.search-tab{padding:10px 20px;font-weight:600;font-size:13px;border:none;background:transparent;cursor:pointer;border-radius:8px;color:var(--text-secondary);transition:all .15s}.search-tab.active{background:var(--surface);color:var(--primary);box-shadow:var(--shadow-sm)}.search-grid{display:flex;flex-wrap:wrap;gap:12px;align-items:flex-end}.search-grid .form-group{flex:1 1 160px;min-width:140px}.search-grid .form-group:last-child{flex:0 0 180px}@media (max-width:900px){.search-grid .form-group,.search-grid .form-group:last-child{flex:1 1 140px}}@media (max-width:600px){.search-grid .form-group{flex:1 1 100%}}.form-group{display:flex;flex-direction:column;gap:4px}.form-label{font-size:12px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.3px}.form-input,.form-select{padding:12px 14px;border:1px solid var(--border);border-radius:10px;font-size:15px;font-family:inherit;font-weight:500;background:var(--surface);color:var(--text);outline:none;transition:all .15s;width:100%}.form-input:focus,.form-select:focus{border-color:var(--primary);box-shadow:0 0 0 3px rgba(107,33,168,.08)}.form-select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg width='10' height='6' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%23a1a1aa' stroke-width='1.5' fill='none'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-right:36px;cursor:pointer}.form-input:disabled{opacity:.4;cursor:not-allowed;background:var(--border-light)}.passenger-wrap{position:relative}.passenger-trigger{width:100%;padding:12px 14px;border:1px solid var(--border);border-radius:10px;font-size:15px;font-family:inherit;font-weight:500;background:var(--surface);cursor:pointer;text-align:left;color:var(--text);transition:all .15s;display:flex;justify-content:space-between}.passenger-trigger:hover{border-color:#d4d4d8}.passenger-menu{position:absolute;top:calc(100% + 4px);left:0;min-width:260px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:6px;box-shadow:var(--shadow-lg);z-index:50}.passenger-item{display:flex;justify-content:space-between;align-items:center;padding:12px;border-radius:10px}.passenger-item:hover{background:var(--border-light)}.passenger-label{font-weight:600;font-size:14px}.passenger-desc{font-size:12px;color:var(--text-muted)}.passenger-counter{display:flex;align-items:center;gap:12px}.passenger-counter button{width:30px;height:30px;border-radius:50%;border:1px solid var(--border);background:var(--surface);cursor:pointer;font-size:18px;font-weight:600;display:flex;align-items:center;justify-content:center;color:var(--text);transition:all .15s}.passenger-counter button:hover:not(:disabled){background:var(--border-light);border-color:#d4d4d8}.passenger-counter button:disabled{opacity:.2;cursor:not-allowed}.passenger-counter span{font-weight:600;min-width:22px;text-align:center}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:24px;margin-bottom:12px}.card-title{font-size:20px;font-weight:700;margin-bottom:16px}.flight-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:20px 24px;margin-bottom:10px;transition:all .15s}.flight-card:hover{border-color:#d4d4d8;box-shadow:var(--shadow)}.flight-row{display:flex;align-items:center;gap:24px;flex-wrap:wrap}.flight-time{font-size:28px;font-weight:700;letter-spacing:-.5px}.flight-city{font-size:14px;font-weight:600}.flight-iata{font-size:12px;color:var(--text-muted)}.flight-route{flex:1 1;display:flex;align-items:center;gap:10px;min-width:80px}.flight-route-line{flex:1 1;height:1px;background:#d4d4d8}.flight-route-duration{font-size:12px;color:var(--text-muted);white-space:nowrap}.flight-price-block{text-align:right}.flight-price{font-size:24px;font-weight:700;color:var(--text)}.flight-meta{font-size:12px;color:var(--text-muted);margin:2px 0 8px}.seat{width:34px;height:34px;border-radius:7px;display:inline-flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;cursor:pointer;transition:all .15s}.seat.available{background:#f0fdf4;border:1px solid #86efac;color:#166534}.seat.available:hover{background:#dcfce7}.seat.occupied{background:#f9fafb;border:1px solid #e4e4e7;color:#d4d4d8;cursor:not-allowed}.seat.selected{background:var(--primary);border-color:var(--primary);color:#fff}.seat.business{background:#faf5ff;border:1px solid #c084fc;color:#7c3aed}.seat.business.available:hover{background:#f3e8ff}.skeleton{background:linear-gradient(90deg,#f4f4f5 25%,#e4e4e7 50%,#f4f4f5 75%);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:var(--radius-sm)}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.table{width:100%;border-collapse:collapse;border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}.table th{background:#fafafa;font-weight:600;font-size:12px;text-transform:uppercase;letter-spacing:.3px;padding:10px 12px;text-align:left;color:var(--text-secondary);border-bottom:1px solid var(--border)}.table td{padding:10px 12px;border-bottom:1px solid var(--border-light);font-size:14px;background:var(--surface)}@media (max-width:768px){.hero h1{font-size:30px}.search-card{padding:16px}.flight-time{font-size:22px}}