@import "https://fonts.googleapis.com/css2?family=Montserrat:wght@400;500;600;700;800&display=swap";:root{--primary:#14352a;--primary-dark:#0c261b;--primary-light:#e6f5ef;--navy:#0c261b;--navy-light:#14352a;--blue:#1566a6;--text:#172033;--text-secondary:#344054;--text-muted:#7b8495;--text-light:#9aa3b2;--border:#e4e9f0;--border-light:#edf0f4;--background:#f6f8fc;--white:#fff;--success:#16a34a;--success-bg:#ecfdf3;--warning:#d97706;--warning-bg:#fffbeb;--danger:#dc2626;--danger-bg:#fff1f2;--shadow-sm:0 7px 25px #0f172a0b;--shadow-md:0 12px 30px #0f172a14;--shadow-lg:0 20px 45px #0f172a1f;--radius-sm:10px;--radius-md:14px;--radius-lg:18px;--radius-xl:24px;--radius-2xl:28px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--background);min-width:320px;color:var(--text);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:#eef1f6}::-webkit-scrollbar-thumb{background:#c5cedc;border-radius:20px}::-webkit-scrollbar-thumb:hover{background:#aeb9ca}.page,.app-page,.dashboard-page,.login-page,.register-page,.booking-page,.payment-page,.confirmation-page,.booking-details-page,.my-bookings-page,.flight-details-page,.seat-selection-page,.passenger-details-page{background:radial-gradient(circle at 10% 0%, #2563eb0f, transparent 30%), var(--background);min-height:100vh}.app-header,.page-header,.dashboard-header,.booking-header,.payment-header{z-index:50;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#fffffff0;border-bottom:1px solid #e7ebf2;justify-content:space-between;align-items:center;min-height:70px;padding:0 5%;display:flex;position:sticky;top:0}.brand,.app-brand,.page-brand{color:var(--text);letter-spacing:-.02em;align-items:center;gap:10px;font-size:21px;font-weight:800;display:flex}.brand-icon,.app-brand-icon,.page-brand-icon{background:var(--primary-light);width:38px;height:38px;color:var(--primary);border-radius:11px;justify-content:center;align-items:center;font-size:20px;display:flex}.page-container,.app-container,.dashboard-content,.booking-content,.payment-content,.confirmation-container{width:min(1240px,100% - 40px);margin:0 auto;padding:38px 0 70px}.card,.app-card,.content-card,.form-card,.summary-card,.booking-card,.payment-card{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--white);box-shadow:var(--shadow-sm)}.page-title,.section-title{color:var(--text);letter-spacing:-.025em;margin:0;font-size:28px;font-weight:800}.page-subtitle,.section-subtitle{color:var(--text-muted);margin:7px 0 0;font-size:13px;line-height:1.6}.form-group,.input-group,.form-field{flex-direction:column;gap:7px;display:flex}.form-group label,.input-group label,.form-field label{color:#475467;font-size:12px;font-weight:750}.form-group input,.form-group select,.form-group textarea,.input-group input,.input-group select,.input-group textarea,.form-field input,.form-field select,.form-field textarea{width:100%;min-height:45px;color:var(--text);background:#fff;border:1px solid #dce2eb;border-radius:10px;outline:none;padding:0 13px;font-size:13px;transition:border-color .2s,box-shadow .2s,background .2s}.form-group textarea,.input-group textarea,.form-field textarea{resize:vertical;min-height:100px;padding:12px 13px}.form-group input::placeholder,.input-group input::placeholder,.form-field input::placeholder{color:#a0a9b8}.form-group input:focus,.form-group select:focus,.form-group textarea:focus,.input-group input:focus,.input-group select:focus,.input-group textarea:focus,.form-field input:focus,.form-field select:focus,.form-field textarea:focus{background:#fff;border-color:#8fb0ef;box-shadow:0 0 0 3px #2563eb1a}.primary-button,.submit-button,.continue-button,.confirm-button{background:var(--primary);color:#fff;border:none;border-radius:10px;justify-content:center;align-items:center;gap:8px;min-height:44px;padding:0 18px;font-size:13px;font-weight:800;transition:background .2s,transform .2s,box-shadow .2s;display:inline-flex}.primary-button:hover,.submit-button:hover,.continue-button:hover,.confirm-button:hover{background:var(--primary-dark);transform:translateY(-1px);box-shadow:0 9px 20px #2563eb38}.primary-button:disabled,.submit-button:disabled,.continue-button:disabled,.confirm-button:disabled{opacity:.6;box-shadow:none;transform:none}.secondary-button,.cancel-button,.back-button{min-height:44px;color:var(--text-secondary);background:#fff;border:1px solid #dce3ee;border-radius:10px;justify-content:center;align-items:center;gap:7px;padding:0 17px;font-size:13px;font-weight:750;transition:background .2s,border-color .2s,transform .2s;display:inline-flex}.secondary-button:hover,.cancel-button:hover,.back-button:hover{background:#f8fafc;border-color:#b9c7dc;transform:translateY(-1px)}.status-badge{text-transform:capitalize;border-radius:20px;justify-content:center;align-items:center;padding:6px 10px;font-size:10px;font-weight:800;display:inline-flex}.status-confirmed,.status-success,.status-paid{background:var(--success-bg);color:#15803d}.status-pending{background:var(--warning-bg);color:#b45309}.status-cancelled,.status-failed{background:var(--danger-bg);color:#be123c}.error-message,.form-error,.page-error{color:#be123c;background:#fff1f2;border:1px solid #fecdd3;border-radius:11px;padding:13px 15px;font-size:12px;font-weight:650}.success-message{color:#15803d;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:11px;padding:13px 15px;font-size:12px;font-weight:650}.loading-container,.loading-state{min-height:250px;color:var(--text-muted);flex-direction:column;justify-content:center;align-items:center;gap:13px;display:flex}.loading-spinner{border:3px solid #e5eaf1;border-top-color:var(--primary);border-radius:50%;width:34px;height:34px;margin:0 auto 15px;animation:.8s linear infinite flight-spin}@keyframes flight-spin{to{transform:rotate(360deg)}}.auth-page,.login-page,.register-page{background:radial-gradient(circle at 15% 10%,#2563eb1f,#0000 28%),radial-gradient(circle at 90% 90%,#176fc014,#0000 30%),#f6f8fc;justify-content:center;align-items:center;min-height:100vh;padding:30px 20px;display:flex}.auth-container,.login-container,.register-container{width:min(100%,450px)}.auth-card,.login-card,.register-card{border:1px solid var(--border);box-shadow:var(--shadow-lg);background:#fff;border-radius:22px;padding:34px}.auth-brand,.login-brand,.register-brand{text-align:center;margin-bottom:27px}.auth-brand-icon,.login-brand-icon,.register-brand-icon{background:var(--primary-light);width:52px;height:52px;color:var(--primary);border-radius:15px;justify-content:center;align-items:center;margin:0 auto 13px;font-size:25px;display:flex}.auth-card h1,.login-card h1,.register-card h1{color:var(--text);text-align:center;letter-spacing:-.025em;margin:0 0 7px;font-size:26px}.auth-card>p,.login-card>p,.register-card>p{color:var(--text-muted);text-align:center;margin:0 0 25px;font-size:13px;line-height:1.5}.auth-form,.login-form,.register-form{flex-direction:column;gap:16px;display:flex}.auth-footer,.login-footer,.register-footer{color:var(--text-muted);text-align:center;margin-top:22px;font-size:12px}.dashboard-content{padding-top:35px}.dashboard-welcome{margin-bottom:28px}.dashboard-welcome h1{color:var(--text);letter-spacing:-.03em;margin:0 0 6px;font-size:clamp(26px,4vw,36px)}.dashboard-welcome p{color:var(--text-muted);margin:0;font-size:13px}.dashboard-grid{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.dashboard-card{border:1px solid var(--border);min-height:150px;box-shadow:var(--shadow-sm);background:#fff;border-radius:18px;padding:22px;transition:transform .2s,box-shadow .2s,border-color .2s}.dashboard-card:hover{box-shadow:var(--shadow-md);border-color:#d5dfef;transform:translateY(-3px)}.dashboard-card-icon{background:var(--primary-light);width:44px;height:44px;color:var(--primary);border-radius:12px;justify-content:center;align-items:center;margin-bottom:15px;display:flex}.dashboard-card h3{color:var(--text);margin:0 0 5px;font-size:15px}.dashboard-card p{color:var(--text-muted);margin:0;font-size:12px;line-height:1.5}.dashboard-card-button{text-align:left;cursor:pointer;border:none;width:100%;font-family:inherit;transition:transform .2s,box-shadow .2s}.dashboard-card-button:hover{transform:translateY(-3px);box-shadow:0 12px 30px #0000001a}.search-flights-page{background:radial-gradient(circle at 10% 0,#2563eb14,#0000 30%),#f6f8fc;min-height:100vh}.search-page-header{z-index:50;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#fffffff0;border-bottom:1px solid #e7ebf2;justify-content:space-between;align-items:center;min-height:70px;padding:0 5%;display:flex;position:sticky;top:0}.search-page-brand{color:#172033;letter-spacing:-.02em;align-items:center;gap:10px;font-size:21px;display:flex}.search-page-brand span{background:#e6f5ef;border-radius:11px;justify-content:center;align-items:center;width:38px;height:38px;font-size:20px;display:flex}.back-dashboard-button{color:#344054;cursor:pointer;background:#fff;border:1px solid #dce3ee;border-radius:10px;justify-content:center;align-items:center;min-height:40px;padding:0 15px;font-size:13px;font-weight:750;transition:all .2s;display:inline-flex}.back-dashboard-button:hover{background:#f8fafc;border-color:#b9c7dc;transform:translateY(-1px)}.search-flights-content{width:min(1240px,100% - 40px);margin:0 auto;padding:38px 0 70px}.search-hero{color:#fff;background:radial-gradient(circle at 85% 10%,#ffffff29,#0000 28%),linear-gradient(135deg,#0c261b 0%,#14352a 45%,#1566a6 100%);border-radius:28px;margin-bottom:32px;padding:42px 42px 32px;position:relative;box-shadow:0 24px 55px #0f27452e}.search-hero:after{content:"";pointer-events:none;border:1px solid #ffffff1a;border-radius:50%;width:180px;height:180px;position:absolute;top:30px;right:40px}.search-hero>div:first-child{z-index:2;position:relative}.search-eyebrow{color:#bfdbfe;letter-spacing:.16em;margin:0 0 9px;font-size:11px;font-weight:850}.search-hero h1{color:#fff;letter-spacing:-.035em;max-width:650px;margin:0 0 9px;font-size:clamp(28px,4vw,42px);line-height:1.12}.search-hero>div>p:last-child{color:#ffffffc2;max-width:650px;margin:0 0 30px;font-size:14px;line-height:1.6}.flight-search-form{z-index:5;color:#1f2937;background:#fffffffa;border:1px solid #ffffff59;border-radius:18px;grid-template-columns:1.05fr 1.05fr 1fr .7fr auto;align-items:stretch;gap:10px;padding:10px;display:grid;position:relative;box-shadow:0 18px 45px #0000002e}.search-field{background:#f8fafc;border-radius:12px;flex-direction:column;justify-content:center;min-width:0;padding:8px 13px;transition:background .2s,box-shadow .2s;display:flex;position:relative}.search-field:hover{background:#f3f6fa}.search-field:focus-within{background:#fff;box-shadow:0 0 0 2px #2563eb26}.search-field label{color:#667085;text-transform:uppercase;letter-spacing:.07em;align-items:center;gap:5px;margin-bottom:4px;font-size:10px;font-weight:850;display:flex}.search-field label svg{color:#14352a;width:13px;height:13px}.search-field input,.search-field select{box-sizing:border-box;color:#172033;background:0 0;border:none;outline:none;width:100%;min-height:28px;padding:0;font-size:14px;font-weight:700}.search-field input::placeholder{color:#a0a9b8;font-weight:500}.search-field input:focus,.search-field select:focus{box-shadow:none;border:none}.search-field select{cursor:pointer}.search-field span{color:#a0a9b8;margin-top:2px;font-size:9px}.flight-search-button{color:#fff;cursor:pointer;background:#14352a;border:none;border-radius:13px;justify-content:center;align-items:center;gap:8px;min-width:125px;min-height:58px;padding:0 20px;font-size:14px;font-weight:800;transition:transform .2s,background .2s,box-shadow .2s;display:flex;box-shadow:0 8px 18px #2563eb40}.flight-search-button:hover:not(:disabled){background:#0c261b;transform:translateY(-1px);box-shadow:0 11px 24px #2563eb4d}.flight-search-button:active:not(:disabled){transform:translateY(0)}.flight-search-button:disabled{opacity:.65;cursor:not-allowed}.flight-summary{background:#fff;border:1px solid #e5eaf1;border-radius:16px;align-items:center;gap:15px;margin-bottom:27px;padding:18px 21px;display:flex;box-shadow:0 8px 25px #0f172a0b}.summary-icon{color:#14352a;background:#e6f5ef;border-radius:13px;flex-shrink:0;justify-content:center;align-items:center;width:45px;height:45px;display:flex}.flight-summary h2{color:#172033;letter-spacing:-.01em;margin:0 0 4px;font-size:17px}.flight-summary h2 span{color:#14352a}.flight-summary p{color:#7b8495;margin:0;font-size:13px}.result-count{text-align:right;flex-direction:column;margin-left:auto;display:flex}.result-count strong{color:#172033;font-size:22px;line-height:1}.result-count span{color:#8992a2;margin-top:4px;font-size:11px}.results-section{width:100%}.results-header{justify-content:space-between;align-items:center;gap:20px;margin-bottom:17px;display:flex}.results-header h2{color:#172033;letter-spacing:-.02em;margin:0 0 4px;font-size:22px}.results-header p{color:#7b8495;margin:0;font-size:13px}.flight-filters{align-items:center;gap:10px;display:flex}.filter-title{color:#667085;align-items:center;gap:6px;font-size:12px;font-weight:700;display:flex}.flight-filters select{color:#344054;cursor:pointer;background:#fff;border:1px solid #dce2eb;border-radius:10px;outline:none;min-height:40px;padding:0 32px 0 12px;font-size:12px;font-weight:700;transition:border-color .2s}.flight-filters select:hover,.flight-filters select:focus{border-color:#9eb7ed}.flight-results{flex-direction:column;gap:13px;display:flex}.flight-card{background:#fff;border:1px solid #e4e9f0;border-radius:18px;padding:0;transition:transform .2s,box-shadow .2s,border-color .2s;position:relative;overflow:hidden;box-shadow:0 7px 25px #0f172a0b}.flight-card:hover{border-color:#d5dfef;transform:translateY(-3px);box-shadow:0 16px 35px #0f172a17}.flight-card-top{border-bottom:1px solid #edf0f4;justify-content:space-between;align-items:center;gap:15px;padding:17px 20px;display:flex}.airline-info{align-items:center;gap:11px;min-width:0;display:flex}.airline-logo{color:#14352a;background:linear-gradient(135deg,#e6f5ef,#dbeafe);border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:42px;height:42px;display:flex}.airline-info h3{color:#263247;text-overflow:ellipsis;white-space:nowrap;margin:0 0 3px;font-size:14px;font-weight:800;overflow:hidden}.airline-info p{color:#8992a2;margin:0;font-size:11px}.flight-status{color:#15803d;text-transform:capitalize;background:#ecfdf3;border-radius:20px;flex-shrink:0;padding:6px 10px;font-size:10px;font-weight:800}.flight-route{grid-template-columns:1fr minmax(170px,1.3fr) 1fr;align-items:center;gap:20px;padding:25px 30px;display:grid}.route-point{flex-direction:column;gap:4px;display:flex}.route-point strong{color:#172033;letter-spacing:-.03em;font-size:28px;line-height:1}.route-point span{color:#344054;font-size:13px;font-weight:750}.route-point small{color:#9aa3b2;font-size:10px}.route-arrival{text-align:right;align-items:flex-end}.route-middle{text-align:center;color:#8992a2;font-size:10px}.route-middle>span{align-items:center;gap:5px;font-weight:650;display:inline-flex}.route-line{background:repeating-linear-gradient(90deg,#d5dce7 0 6px,#0000 6px 11px);height:2px;margin:13px 0;position:relative}.route-line:before,.route-line:after{content:"";background:#fff;border:2px solid #14352a;border-radius:50%;width:8px;height:8px;position:absolute;top:50%;transform:translateY(-50%)}.route-line:before{left:0}.route-line:after{right:0}.flight-card-bottom{border-top:1px solid #edf0f4;align-items:center;gap:18px;padding:14px 20px 17px;display:flex}.availability{color:#7b8495;align-items:center;gap:6px;font-size:11px;display:flex}.availability svg{color:#16a34a}.flight-price{flex-direction:column;align-items:flex-end;gap:2px;margin-left:auto;display:flex}.flight-price small{color:#9aa3b2;font-size:9px}.flight-price strong{color:#172033;font-size:20px;line-height:1}.select-flight-button{color:#fff;cursor:pointer;background:#14352a;border:none;border-radius:10px;justify-content:center;align-items:center;gap:7px;min-height:40px;padding:0 15px;font-size:12px;font-weight:800;transition:background .2s,transform .2s;display:inline-flex}.select-flight-button:hover{background:#0c261b;transform:translateY(-1px)}.search-error{color:#be123c;background:#fff1f2;border:1px solid #fecdd3;border-radius:12px;align-items:center;margin-bottom:20px;padding:14px 16px;font-size:13px;font-weight:650;display:flex}.search-loading,.no-flights{text-align:center;background:#fff;border:1px solid #e4e9f0;border-radius:17px;padding:65px 20px;box-shadow:0 7px 25px #0f172a0a}.search-loading p,.no-flights p{color:#7b8495;margin:0;font-size:13px}.no-flights>div{margin-bottom:14px;font-size:42px}.no-flights h3{color:#172033;margin:0 0 7px;font-size:18px}.flight-details-content{width:min(1100px,100% - 40px);margin:0 auto;padding:35px 0 70px}.flight-details-card{border:1px solid var(--border);box-shadow:var(--shadow-md);background:#fff;border-radius:22px;overflow:hidden}.flight-details-hero{color:#fff;background:radial-gradient(circle at 90% 10%,#ffffff24,#0000 25%),linear-gradient(135deg,#0c261b,#1566a6);padding:28px}.flight-details-hero h1{color:#fff;margin:0 0 7px;font-size:28px}.flight-details-hero p{color:#ffffffbf;margin:0;font-size:13px}.flight-details-body{padding:28px}.flight-info-grid{grid-template-columns:repeat(3,1fr);gap:14px;display:grid}.flight-info-item{border:1px solid var(--border);background:#f8fafc;border-radius:13px;padding:17px}.flight-info-item span{color:var(--text-light);text-transform:uppercase;margin-bottom:6px;font-size:10px;font-weight:750;display:block}.flight-info-item strong{color:var(--text);font-size:14px}.seat-selection-content{width:min(1100px,100% - 40px);margin:0 auto;padding:35px 0 70px}.seat-selection-layout{grid-template-columns:1fr 320px;align-items:start;gap:20px;display:grid}.seat-map-card,.seat-summary-card{border:1px solid var(--border);box-shadow:var(--shadow-sm);background:#fff;border-radius:18px;padding:22px}.seat-map-card h2,.seat-summary-card h2{color:var(--text);margin:0 0 6px;font-size:18px}.seat-map-card p,.seat-summary-card p{color:var(--text-muted);font-size:12px}.seat-map{flex-direction:column;gap:9px;margin-top:20px;display:flex}.seat{color:#344054;background:#f8fafc;border:1px solid #d5dce7;border-radius:8px;width:37px;height:37px;font-size:10px;font-weight:750;transition:background .15s,transform .15s,border-color .15s}.seat:hover:not(:disabled){border-color:#8fb0ef;transform:translateY(-1px)}.seat.selected{border-color:var(--primary);background:var(--primary);color:#fff}.seat.booked,.seat:disabled{color:#9ca3af;cursor:not-allowed;background:#e5e7eb;border-color:#e5e7eb}.seat-legend{color:var(--text-muted);flex-wrap:wrap;gap:15px;margin-top:20px;font-size:11px;display:flex}.seat-legend-item{align-items:center;gap:6px;display:flex}.seat-legend-box{border:1px solid #d5dce7;border-radius:4px;width:15px;height:15px}.passenger-details-content{width:min(1000px,100% - 40px);margin:0 auto;padding:35px 0 70px}.passenger-form-card{border:1px solid var(--border);box-shadow:var(--shadow-sm);background:#fff;border-radius:18px;padding:25px}.passenger-form-card+.passenger-form-card{margin-top:16px}.passenger-card-header{justify-content:space-between;align-items:center;margin-bottom:20px;display:flex}.passenger-card-header h2{color:var(--text);margin:0;font-size:16px}.passenger-number{background:var(--primary-light);width:30px;height:30px;color:var(--primary);border-radius:9px;justify-content:center;align-items:center;font-size:12px;font-weight:800;display:flex}.passenger-form-grid{grid-template-columns:repeat(2,1fr);gap:15px;display:grid}.passenger-form-grid .full-width{grid-column:1/-1}.booking-content{width:min(1050px,100% - 40px);margin:0 auto}.booking-layout{grid-template-columns:1fr 330px;align-items:start;gap:20px;display:grid}.booking-main-card,.booking-summary-card{border:1px solid var(--border);box-shadow:var(--shadow-sm);background:#fff;border-radius:18px;padding:24px}.booking-main-card h2,.booking-summary-card h2{color:var(--text);margin:0 0 18px;font-size:18px}.booking-passenger{border:1px solid var(--border-light);background:#fafbfd;border-radius:12px;padding:15px}.booking-passenger+.booking-passenger{margin-top:10px}.booking-passenger-name{color:var(--text);font-size:14px;font-weight:800}.booking-passenger-meta{color:var(--text-muted);margin-top:5px;font-size:11px}.booking-price-row,.summary-price-row{color:var(--text-secondary);justify-content:space-between;align-items:center;padding:10px 0;font-size:12px;display:flex}.booking-price-total,.summary-total{border-top:1px solid var(--border);color:var(--text);justify-content:space-between;align-items:center;margin-top:10px;padding-top:15px;font-size:16px;font-weight:850;display:flex}.payment-content{width:min(1050px,100% - 40px);margin:0 auto}.payment-card{padding:24px}.payment-card h2{color:var(--text);margin:0 0 20px;font-size:19px}.payment-methods{grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:22px;display:grid}.payment-method{min-height:55px;color:var(--text-secondary);background:#fff;border:1px solid #dce2eb;border-radius:11px;font-size:11px;font-weight:750;transition:border-color .2s,background .2s}.payment-method:hover{border-color:#9eb7ed}.payment-method.active,.payment-method.selected{border-color:var(--primary);background:var(--primary-light);color:var(--primary)}.payment-form{flex-direction:column;gap:15px;display:flex}.payment-form-grid{grid-template-columns:repeat(2,1fr);gap:14px;display:grid}.payment-security{color:var(--text-muted);background:#f8fafc;border-radius:10px;align-items:center;gap:8px;margin-top:17px;padding:12px;font-size:11px;display:flex}.payment-security svg{color:var(--success)}.my-bookings-content{width:min(1100px,100% - 40px);margin:0 auto;padding:35px 0 70px}.bookings-list{flex-direction:column;gap:13px;display:flex}.booking-list-card,.my-booking-card{border:1px solid var(--border);box-shadow:var(--shadow-sm);background:#fff;border-radius:17px;padding:20px;transition:transform .2s,box-shadow .2s}.booking-list-card:hover,.my-booking-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.booking-list-top,.my-booking-top{border-bottom:1px solid var(--border-light);justify-content:space-between;align-items:center;gap:15px;padding-bottom:14px;display:flex}.booking-pnr{color:var(--text);letter-spacing:.04em;font-size:15px;font-weight:850}.booking-list-route,.my-booking-route{grid-template-columns:1fr auto 1fr;align-items:center;gap:18px;padding:20px 5px;display:grid}.booking-airport strong,.my-booking-airport strong{color:var(--text);font-size:22px;display:block}.booking-airport span,.my-booking-airport span{color:var(--text-muted);margin-top:4px;font-size:11px;display:block}.booking-route-line{background:#d5dce7;width:100px;height:1px}.booking-list-bottom,.my-booking-bottom{border-top:1px solid var(--border-light);justify-content:space-between;align-items:center;gap:15px;padding-top:14px;display:flex}.booking-list-meta,.my-booking-meta{color:var(--text-muted);flex-wrap:wrap;gap:15px;font-size:11px;display:flex}.booking-list-price,.my-booking-price{color:var(--text);font-size:17px;font-weight:850}.booking-details-content{width:min(1050px,100% - 40px);margin:0 auto;padding:35px 0 70px}.booking-details-card{border:1px solid var(--border);box-shadow:var(--shadow-md);background:#fff;border-radius:20px;overflow:hidden}.booking-details-header{color:#fff;background:radial-gradient(circle at 90% 0,#ffffff21,#0000 25%),linear-gradient(135deg,#0c261b,#1566a6);padding:25px}.booking-details-header h1{color:#fff;margin:0 0 6px;font-size:25px}.booking-details-header p{color:#ffffffbd;margin:0;font-size:12px}.booking-details-body{padding:25px}.booking-details-section{border-bottom:1px solid var(--border-light);padding:20px 0}.booking-details-section:first-child{padding-top:0}.booking-details-section:last-child{border-bottom:none}.booking-details-section h2{color:var(--text);margin:0 0 15px;font-size:16px}.booking-details-grid{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.booking-details-item{background:#f8fafc;border-radius:11px;padding:14px}.booking-details-item span{color:var(--text-light);text-transform:uppercase;margin-bottom:5px;font-size:9px;font-weight:750;display:block}.booking-details-item strong{color:var(--text);font-size:13px}.booking-details-actions{flex-wrap:wrap;gap:9px;margin-top:20px;display:flex}.confirmation-page{background:radial-gradient(circle at 50% 0,#2563eb12,#0000 35%),#f6f8fc;min-height:100vh}.confirmation-container{width:min(900px,100% - 40px);margin:0 auto;padding:45px 0 70px}.confirmation-success-card{text-align:center;box-shadow:var(--shadow-md);background:#fff;border:1px solid #dbeafe;border-radius:22px;margin-bottom:18px;padding:35px 25px}.confirmation-success-icon{color:#16a34a;background:#ecfdf3;border-radius:50%;justify-content:center;align-items:center;width:68px;height:68px;margin:0 auto 17px;font-size:30px;display:flex}.confirmation-eyebrow{color:#16a34a;letter-spacing:.15em;text-transform:uppercase;margin:0 0 8px;font-size:10px;font-weight:850}.confirmation-success-card h1{color:var(--text);letter-spacing:-.03em;margin:0 0 9px;font-size:clamp(25px,4vw,34px)}.confirmation-success-card>p{color:var(--text-muted);margin:0;font-size:13px}.confirmation-pnr{background:var(--primary-light);width:fit-content;color:var(--primary);letter-spacing:.08em;border-radius:11px;margin:20px auto;padding:10px 18px;font-size:18px;font-weight:900}.confirmation-status-row{justify-content:center;gap:30px;margin-top:20px;display:flex}.confirmation-status-item{flex-direction:column;gap:5px;display:flex}.confirmation-status-item span{color:var(--text-light);text-transform:uppercase;font-size:9px;font-weight:750}.confirmation-status-item strong{color:var(--text);font-size:12px}.confirmation-card{border:1px solid var(--border);box-shadow:var(--shadow-sm);background:#fff;border-radius:17px;margin-bottom:15px;padding:22px}.confirmation-card-heading{color:var(--text);margin:0 0 17px;font-size:16px}.confirmation-section-label{color:var(--text-light);letter-spacing:.08em;text-transform:uppercase;margin-bottom:9px;font-size:9px;font-weight:850}.confirmation-route{grid-template-columns:1fr auto 1fr;align-items:center;gap:20px;padding:20px 0;display:grid}.confirmation-airport strong{color:var(--text);font-size:27px;display:block}.confirmation-airport span{color:var(--text-muted);margin-top:4px;font-size:12px;display:block}.confirmation-airport:last-child{text-align:right}.confirmation-route-line{background:#d5dce7;width:130px;height:1px;position:relative}.confirmation-route-dot{border:2px solid var(--primary);background:#fff;border-radius:50%;width:8px;height:8px;position:absolute;top:50%;transform:translateY(-50%)}.confirmation-route-dot:first-child{left:0}.confirmation-route-dot:last-child{right:0}.confirmation-time{color:var(--text);margin-top:5px;font-size:13px;font-weight:750}.confirmation-date{color:var(--text-light);margin-top:3px;font-size:10px}.confirmation-passenger-list{flex-direction:column;gap:8px;display:flex}.confirmation-passenger{border:1px solid var(--border-light);background:#fafbfd;border-radius:11px;align-items:center;gap:12px;padding:13px;display:flex}.confirmation-passenger-number{background:var(--primary-light);width:30px;height:30px;color:var(--primary);border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;font-size:11px;font-weight:800;display:flex}.confirmation-passenger-info{flex:1;min-width:0}.confirmation-passenger-info strong{color:var(--text);font-size:13px;display:block}.confirmation-passenger-info span{color:var(--text-muted);margin-top:3px;font-size:10px;display:block}.confirmation-passenger-seat,.confirmation-passenger-class{color:var(--text-secondary);font-size:11px;font-weight:750}.confirmation-payment-grid{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.confirmation-payment-grid>div{background:#f8fafc;border-radius:10px;padding:13px}.confirmation-payment-grid span{color:var(--text-light);text-transform:uppercase;margin-bottom:5px;font-size:9px;display:block}.confirmation-payment-grid strong{color:var(--text);font-size:13px}.confirmation-payment-total{color:var(--primary)!important;font-size:18px!important}.confirmation-seat-summary{background:var(--primary-light);border-radius:11px;justify-content:space-between;align-items:center;padding:14px;display:flex}.confirmation-seat-count{color:var(--primary);font-size:16px;font-weight:850}.confirmation-actions-card{border:1px solid var(--border);background:#fff;border-radius:17px;padding:20px}.confirmation-actions{flex-wrap:wrap;gap:9px;display:flex}.confirmation-action-button,.confirmation-primary-button,.confirmation-secondary-button{border-radius:10px;justify-content:center;align-items:center;gap:7px;min-height:43px;padding:0 15px;font-size:12px;font-weight:800;display:inline-flex}.confirmation-primary-button{background:var(--primary);color:#fff;border:none}.confirmation-primary-button:hover{background:var(--primary-dark)}.confirmation-secondary-button,.confirmation-action-button{color:var(--text-secondary);background:#fff;border:1px solid #dce3ee}.confirmation-secondary-button:hover,.confirmation-action-button:hover{background:#f8fafc}.confirmation-footer-actions{justify-content:center;gap:10px;margin-top:18px;display:flex}.confirmation-empty-state{border:1px solid var(--border);text-align:center;background:#fff;border-radius:17px;padding:60px 20px}.confirmation-empty-icon{color:var(--text-light);margin-bottom:12px;font-size:42px}.confirmation-error{color:#be123c;background:#fff1f2;border:1px solid #fecdd3;border-radius:11px;margin-bottom:15px;padding:14px;font-size:12px}.confirmation-spinner{border:3px solid #e5eaf1;border-top-color:var(--primary);border-radius:50%;width:32px;height:32px;margin:50px auto;animation:.8s linear infinite flight-spin}.modal-overlay,.confirmation-modal-overlay{z-index:100;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0f172a73;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.modal,.confirmation-modal{background:#fff;border-radius:18px;width:min(100%,450px);padding:25px;box-shadow:0 25px 70px #0003}.modal h2,.confirmation-modal h2{color:var(--text);margin:0 0 8px;font-size:19px}.modal p,.confirmation-modal p{color:var(--text-muted);margin:0;font-size:12px;line-height:1.6}.modal-actions,.confirmation-modal-actions{justify-content:flex-end;gap:9px;margin-top:22px;display:flex}.empty-state,.no-results{border:1px solid var(--border);text-align:center;background:#fff;border-radius:17px;padding:60px 20px}.empty-state-icon{color:#aeb8c8;margin-bottom:13px;font-size:42px}.empty-state h2,.empty-state h3,.no-results h2,.no-results h3{color:var(--text);margin:0 0 7px;font-size:18px}.empty-state p,.no-results p{color:var(--text-muted);margin:0;font-size:12px}@media (width<=1050px){.flight-search-form{grid-template-columns:1fr 1fr 1fr;padding:12px}.flight-search-button{grid-column:span 3}.search-hero{padding:36px 32px 28px}.seat-selection-layout,.booking-layout,.payment-layout{grid-template-columns:1fr}.seat-summary-card,.booking-summary-card{order:-1}.dashboard-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=800px){.search-page-header,.app-header,.page-header,.dashboard-header,.booking-header,.payment-header{padding:0 20px}.search-flights-content,.page-container,.app-container,.dashboard-content,.booking-content,.payment-content,.confirmation-container,.flight-details-content,.seat-selection-content,.passenger-details-content,.my-bookings-content,.booking-details-content{width:min(100% - 28px,700px);padding:25px 0 50px}.search-hero{border-radius:22px;padding:30px 20px 22px}.search-hero:after{display:none}.search-hero h1{font-size:30px}.flight-search-form{grid-template-columns:1fr 1fr;gap:8px}.flight-search-button{grid-column:span 2;min-height:50px}.flight-summary{flex-wrap:wrap}.result-count{text-align:left;width:100%;margin-left:60px}.results-header{flex-direction:column;align-items:flex-start;gap:13px}.flight-filters{width:100%}.flight-filters select{flex:1;width:100%}.flight-route{gap:15px;padding:22px 20px}.route-point strong{font-size:25px}.flight-info-grid,.booking-details-grid{grid-template-columns:repeat(2,1fr)}.dashboard-grid{grid-template-columns:1fr 1fr}.payment-methods{grid-template-columns:repeat(2,1fr)}.confirmation-payment-grid{grid-template-columns:1fr 1fr}}@media (width<=600px){.search-page-header{min-height:62px;padding:0 14px}.search-page-brand{font-size:18px}.search-page-brand span{width:34px;height:34px;font-size:18px}.back-dashboard-button{min-height:36px;padding:0 11px;font-size:11px}.search-flights-content,.page-container,.app-container,.dashboard-content,.booking-content,.payment-content,.confirmation-container,.flight-details-content,.seat-selection-content,.passenger-details-content,.my-bookings-content,.booking-details-content{width:calc(100% - 24px);padding:18px 0 40px}.search-hero{border-radius:19px;padding:25px 14px 15px;box-shadow:0 15px 35px #0f274526}.search-eyebrow{font-size:9px}.search-hero h1{margin-bottom:8px;font-size:26px}.search-hero>div>p:last-child{margin-bottom:21px;font-size:12px}.flight-search-form{border-radius:15px;grid-template-columns:1fr;gap:7px;padding:8px}.search-field{min-height:52px;padding:7px 12px}.search-field input,.search-field select{font-size:14px}.flight-search-button{grid-column:auto;width:100%;min-height:48px}.flight-summary{border-radius:14px;align-items:flex-start;padding:15px}.summary-icon{width:40px;height:40px}.flight-summary h2{font-size:15px}.flight-summary p{font-size:11px;line-height:1.5}.result-count{width:auto;margin-left:55px}.result-count strong{font-size:20px}.results-header h2{font-size:19px}.results-header p{font-size:12px}.flight-filters{flex-direction:column;align-items:stretch;gap:7px}.flight-filters select{box-sizing:border-box;width:100%}.flight-card{border-radius:15px}.flight-card-top{align-items:flex-start;gap:10px;padding:14px}.airline-logo{width:38px;height:38px}.airline-info h3{max-width:180px;font-size:13px}.flight-status{padding:5px 8px;font-size:9px}.flight-route{grid-template-columns:1fr;gap:7px;padding:20px 16px}.route-point{text-align:left;align-items:flex-start}.route-point strong{font-size:27px}.route-point span{font-size:13px}.route-arrival{text-align:left;align-items:flex-start}.route-middle{text-align:left;order:3;align-items:center;gap:10px;width:100%;display:flex}.route-middle>span{flex-shrink:0}.route-line{flex:1;margin:0}.flight-card-bottom{flex-wrap:wrap;gap:10px;padding:13px 14px 15px}.availability{width:100%;font-size:11px}.flight-price{align-items:flex-start;margin-left:0}.flight-price strong{font-size:19px}.select-flight-button{flex:1;min-height:43px}.search-error{font-size:12px}.search-loading,.no-flights{padding:50px 18px}.auth-card,.login-card,.register-card{border-radius:18px;padding:25px 18px}.dashboard-grid,.passenger-form-grid,.payment-form-grid,.flight-info-grid,.booking-details-grid{grid-template-columns:1fr}.passenger-form-grid .full-width{grid-column:auto}.payment-methods{grid-template-columns:1fr 1fr}.confirmation-status-row{flex-direction:column;gap:10px}.confirmation-route{grid-template-columns:1fr;gap:12px}.confirmation-airport:last-child{text-align:left}.confirmation-route-line{width:100%}.confirmation-payment-grid{grid-template-columns:1fr}.confirmation-passenger{flex-wrap:wrap;align-items:flex-start}.confirmation-passenger-seat,.confirmation-passenger-class{margin-left:42px}.booking-list-route,.my-booking-route{grid-template-columns:1fr;gap:8px}.booking-route-line{width:100%}.booking-list-bottom,.my-booking-bottom{flex-direction:column;align-items:flex-start}.seat{width:32px;height:32px}.seat-row{gap:4px}.confirmation-actions,.confirmation-footer-actions,.booking-details-actions{flex-direction:column}.confirmation-action-button,.confirmation-primary-button,.confirmation-secondary-button,.primary-button,.secondary-button,.continue-button{width:100%}}@media (width<=380px){.search-page-brand strong{font-size:16px}.back-dashboard-button{padding:0 9px;font-size:10px}.search-hero h1{font-size:23px}.route-point strong{font-size:24px}.flight-status{display:none}.select-flight-button{font-size:11px}.seat{width:29px;height:29px;font-size:9px}}:root{--gold:#6fc6a6;--gold-dark:#1f6f55;--gold-deep:#14503d;--gold-light:#e6f5ef;--navy:#0c261b;--navy-light:#14352a;--background:#eef2f7}html,body,button,input,select,textarea{font-family:Be Vietnam Pro,system-ui,-apple-system,Segoe UI,Roboto,sans-serif}body{background:var(--background)}.flight-search-button,.select-flight-button,.continue-seat-button,.continue-passenger-button,.payment-pay-button,.seat-primary-button,.confirmation-primary-button,.auth-button,.dashboard-card-button,.profile-primary-button,.my-bookings-primary,.booking-action-primary,.booking-details-primary,.primary-details-button,.confirmation-action-button.primary{letter-spacing:.2px;transition:transform .2s,box-shadow .2s,filter .2s;color:#121!important;background:#8dd3ba!important;border:none!important;font-weight:700!important;box-shadow:0 10px 22px #8dd3ba73!important}.flight-search-button:hover,.select-flight-button:hover,.continue-seat-button:hover,.continue-passenger-button:hover,.payment-pay-button:hover,.seat-primary-button:hover,.confirmation-primary-button:hover,.auth-button:hover,.dashboard-card-button:hover,.profile-primary-button:hover,.my-bookings-primary:hover,.booking-action-primary:hover,.booking-details-primary:hover,.primary-details-button:hover,.confirmation-action-button.primary:hover{filter:brightness(1.03);transform:translateY(-2px);box-shadow:0 16px 30px #8dd3ba8c!important}.flight-search-button svg,.select-flight-button svg,.payment-pay-button svg,.continue-seat-button svg,.continue-passenger-button svg{color:#0c261b!important}.brand-icon,.auth-logo,.search-page-brand .brand-icon{box-shadow:0 6px 16px #8dd3ba59;background:linear-gradient(135deg, var(--gold), var(--gold-dark))!important;color:#0c261b!important}.search-hero{position:relative;overflow:hidden;background:linear-gradient(130deg,#08203a 0%,#14352a 55%,#14689a 100%)!important;box-shadow:0 26px 60px #08203a47!important}.search-hero:after{content:"";pointer-events:none;background:radial-gradient(circle,#8dd3ba47,#0000 70%);border-radius:50%;width:300px;height:300px;position:absolute;top:-70px;right:-70px}.search-hero *{z-index:1;position:relative}.airline-logo,.airline-details-logo{border:1px solid var(--border-light);border-radius:12px;position:relative;overflow:hidden;background:#fff!important}.airline-logo-fallback{color:var(--primary);margin:auto;position:absolute;inset:0}.airline-logo-img{z-index:1;object-fit:contain;background:#fff;width:100%;height:100%;padding:4px;position:relative}.selected-flight-badge{background:var(--gold-light)!important;color:var(--gold-deep)!important;border:1px solid #8dd3ba59!important}.seat.selected{box-shadow:0 6px 14px #8dd3ba66;background:linear-gradient(135deg, var(--gold), var(--gold-dark))!important;color:#0c261b!important;border-color:var(--gold-dark)!important}.legend-seat.selected{background:var(--gold)!important}.flight-card,.details-card,.dashboard-card,.profile-card,.confirmation-card,.booking-details-card{border:1px solid var(--border-light)!important;border-radius:18px!important;box-shadow:0 12px 30px #0c261b14!important}.flight-card{transition:transform .25s,box-shadow .25s}.flight-card:hover{transform:translateY(-3px);box-shadow:0 22px 46px #0c261b26!important}.fare-option:hover{border-color:var(--gold)!important}.progress-step.active .progress-step-index,.progress-step.completed .progress-step-index{background:var(--gold)!important;color:#0c261b!important}.aircraft-cabin{border:1px solid var(--border);background:linear-gradient(#fff,#f4f7fb);border-radius:28px 28px 20px 20px;max-width:560px;margin:24px auto;padding:26px 30px 34px;position:relative;box-shadow:0 18px 44px #0c261b1a}.aircraft-front{text-align:center;color:var(--text-muted);letter-spacing:6px;margin-bottom:18px;font-size:12px}.aircraft-front .cockpit-window{background:linear-gradient(#e3ecf6,#c3d1e0);border-radius:50%/100% 100% 0 0;width:58%;height:26px;margin:0 auto 10px;box-shadow:0 -10px 30px #96beff47}.seat-column-labels{color:var(--text-muted);justify-content:center;gap:8px;margin-bottom:14px;font-size:12px;font-weight:700;display:flex}.seat-column-labels span{text-align:center;width:40px}.seat-row .row-number{text-align:center;width:24px;color:var(--text-muted);font-size:12px;font-weight:700}.seat{border:1px solid var(--border);color:#14352a;cursor:pointer;background:#eef3f9;border-radius:10px 10px 6px 6px;justify-content:center;align-items:center;width:40px;height:40px;transition:transform .14s,box-shadow .14s,background .14s;display:flex;box-shadow:0 2px #0c261b24}.seat svg{width:16px;height:16px}.seat.available:hover{background:#e0ecf8;transform:translateY(-3px);box-shadow:0 9px 18px #14352a42}.seat.booked{cursor:not-allowed;box-shadow:none;color:#aab2bd!important;background:#e6e9ee!important}.seat.held{cursor:not-allowed;color:#1f6f55!important;background:#fdf3d6!important}.seat.selected{transform:translateY(-3px);color:#0c261b!important;border-color:var(--gold-dark)!important;background:linear-gradient(#8dd3ba,#6fc6a6)!important;box-shadow:0 10px 20px #8dd3ba73!important}.aisle{flex:0 0 30px;width:30px}.dashboard-page{background:var(--background);min-height:100vh}.dashboard-header{border-bottom:1px solid var(--border);z-index:20;background:#fff;justify-content:space-between;align-items:center;padding:16px 28px;display:flex;position:sticky;top:0}.dash-brand{color:var(--navy);align-items:center;gap:10px;font-size:20px;font-weight:800;display:flex}.dash-brand .brand-icon{border-radius:10px;justify-content:center;align-items:center;width:34px;height:34px;display:flex}.logout-button{border:1px solid var(--border);color:var(--text);cursor:pointer;background:#fff;border-radius:10px;padding:9px 16px;font-weight:600}.logout-button:hover{border-color:var(--gold);color:var(--gold-dark)}.dashboard-content{flex-direction:column;gap:40px;max-width:1120px;margin:0 auto;padding:26px 20px 60px;display:flex}.dash-hero{background:linear-gradient(130deg,#08203a 0%,#14352a 55%,#14689a 100%);border-radius:24px;padding:54px 48px;position:relative;overflow:hidden;box-shadow:0 26px 60px #08203a47}.dash-hero:after{content:"";background:radial-gradient(circle,#8dd3ba4d,#0000 70%);border-radius:50%;width:340px;height:340px;position:absolute;top:-80px;right:-80px}.dash-hero-inner{z-index:1;max-width:640px;position:relative}.dash-eyebrow{color:#8dd3ba;letter-spacing:4px;font-size:12px;font-weight:700}.dash-hero h1{color:#fff;margin:14px 0 12px;font-size:40px;font-weight:800;line-height:1.1}.dash-hero p{color:#d7e2ee;margin-bottom:24px;font-size:16px}.dash-hero-cta{cursor:pointer;border-radius:12px;align-items:center;gap:10px;padding:14px 26px;font-size:15px;display:inline-flex}.dash-quick{grid-template-columns:repeat(4,1fr);gap:16px;display:grid}.quick-tile{text-align:left;border:1px solid var(--border);cursor:pointer;background:#fff;border-radius:16px;align-items:center;gap:14px;padding:18px;transition:transform .2s,box-shadow .2s,border-color .2s;display:flex}.quick-tile:hover{border-color:#0000;transform:translateY(-4px);box-shadow:0 16px 34px #0c261b1f}.quick-ic{background:var(--primary-light);width:46px;height:46px;color:var(--primary);border-radius:12px;flex:0 0 46px;justify-content:center;align-items:center;display:flex}.quick-tile h3{color:var(--navy);margin:0 0 3px;font-size:15px;font-weight:700}.quick-tile p{color:var(--text-muted);margin:0;font-size:12.5px}.dash-section-head{justify-content:space-between;align-items:flex-end;margin-bottom:18px;display:flex}.dash-section-head h2{color:var(--navy);margin:0;font-size:24px;font-weight:800}.dash-section-head p{color:var(--text-muted);margin:4px 0 0;font-size:14px}.dash-link{color:var(--primary);cursor:pointer;background:0 0;border:none;align-items:center;gap:5px;font-weight:700;display:inline-flex}.dest-grid{grid-template-columns:repeat(4,1fr);gap:16px;display:grid}.dest-card{text-align:left;cursor:pointer;color:#fff;border:none;border-radius:18px;flex-direction:column;gap:4px;height:168px;padding:18px;transition:transform .22s,box-shadow .22s;display:flex;position:relative;overflow:hidden;box-shadow:0 12px 28px #0c261b29}.dest-card:after{content:"";background:linear-gradient(#0000 40%,#00000047);position:absolute;inset:0}.dest-card>*{z-index:1;position:relative}.dest-card:hover{transform:translateY(-5px);box-shadow:0 22px 44px #0c261b42}.dest-country{opacity:.92;align-items:center;gap:5px;font-size:12px;display:inline-flex}.dest-city{font-size:22px;font-weight:800;line-height:1.1}.dest-code{letter-spacing:2px;opacity:.8;font-size:12px}.dest-from{opacity:.95;margin-top:auto;font-size:13px}.dest-from strong{font-size:17px}.dest-arrow{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#ffffff2e;border-radius:50%;justify-content:center;align-items:center;width:34px;height:34px;display:flex;position:absolute;bottom:16px;right:16px}.deals-grid{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.deal-card{border:1px solid var(--border);background:#fff;border-radius:18px;padding:22px;position:relative;overflow:hidden}.deal-card:before{content:"";background:linear-gradient(var(--gold), var(--gold-dark));width:4px;position:absolute;top:0;bottom:0;left:0}.deal-ic{background:var(--gold-light);width:44px;height:44px;color:var(--gold-dark);border-radius:12px;justify-content:center;align-items:center;margin-bottom:12px;display:flex}.deal-tag{letter-spacing:1px;text-transform:uppercase;color:var(--gold-dark);margin-bottom:6px;font-size:11px;font-weight:700;display:inline-block}.deal-card h3{color:var(--navy);margin:0 0 8px;font-size:18px;font-weight:700}.deal-card p{color:var(--text-secondary);margin:0;font-size:14px;line-height:1.5}.member-band{background:linear-gradient(120deg,#0c261b,#14352a);border-radius:22px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:24px;padding:34px 40px;display:flex;position:relative;overflow:hidden}.member-band:after{content:"";background:radial-gradient(circle,#8dd3ba38,#0000 70%);border-radius:50%;width:260px;height:260px;position:absolute;bottom:-80px;left:-60px}.member-copy{z-index:1;max-width:620px;position:relative}.member-copy h2{color:#fff;margin:10px 0 8px;font-size:26px;font-weight:800}.member-copy p{color:#d7e2ee;margin:0;font-size:14.5px}.member-band .flight-search-button{z-index:1;border-radius:12px;align-items:center;gap:9px;padding:13px 24px;display:inline-flex;position:relative}.dash-stats{grid-template-columns:repeat(4,1fr);gap:16px;display:grid}.dash-stat{border:1px solid var(--border);text-align:center;background:#fff;border-radius:16px;padding:20px}.dash-stat .stat-ic{background:var(--primary-light);width:44px;height:44px;color:var(--primary);border-radius:12px;justify-content:center;align-items:center;margin:0 auto 10px;display:flex}.dash-stat strong{color:var(--navy);font-size:26px;font-weight:800;display:block}.dash-stat span{color:var(--text-muted);font-size:13px}.dash-footer{text-align:center;border-top:1px solid var(--border);color:var(--text-muted);padding:34px 20px 10px}.dash-foot-brand{color:var(--navy);align-items:center;gap:8px;font-size:18px;font-weight:800;display:inline-flex}.dash-footer p{margin:8px 0 6px;font-size:14px}.dash-foot-note{color:var(--text-light);font-size:12px}@media (width<=900px){.dash-quick,.dest-grid,.deals-grid,.dash-stats{grid-template-columns:repeat(2,1fr)}.dash-hero{padding:40px 26px}.dash-hero h1{font-size:30px}}@media (width<=520px){.dash-quick,.dest-grid,.deals-grid,.dash-stats{grid-template-columns:1fr}}html,body{max-width:100%;overflow-x:hidden}@media (width<=480px){.flight-search-form{grid-template-columns:1fr!important}.search-hero{padding:28px 18px 22px!important}.search-hero h1,.dash-hero h1{font-size:26px!important}.aircraft-cabin{padding:18px 10px 24px!important}.seat{width:34px!important;height:34px!important}.seat-row,.seat-group{gap:6px!important}.aisle{flex-basis:16px!important;width:16px!important}.dash-hero{padding:32px 18px!important}.dashboard-content{padding:18px 14px 48px!important}}:focus-visible{outline:2px solid var(--gold);outline-offset:2px;border-radius:4px}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.route-line{background:linear-gradient(90deg, var(--primary), var(--gold));border-radius:2px;height:2px;margin:8px 0;position:relative}.route-line>span{display:none}.route-plane{color:var(--gold);transition:left .55s cubic-bezier(.4,0,.2,1);position:absolute;top:50%;left:0;transform:translateY(-50%)rotate(45deg)}.flight-card:hover .route-plane{left:calc(100% - 16px)}.dest-card:before{content:"";z-index:0;background:linear-gradient(120deg,#ffffff24,#0000 42%);position:absolute;inset:0}.flight-status-badge.boarding{color:#1f6f55!important;background:#fff7e6!important}.flight-status-badge.delayed{color:#c2410c!important;background:#fdefe6!important}.flight-status-badge.cancelled{color:#c0362c!important;background:#fdecec!important}.skymiles-tiers{flex-wrap:wrap;gap:8px;margin-top:16px;display:flex}.skymiles-tiers .tier{letter-spacing:.3px;border-radius:999px;padding:5px 14px;font-size:12px;font-weight:700}.skymiles-tiers .silver{color:#334155;background:#cbd5e1eb}.skymiles-tiers .gold{color:#3a2c07;background:linear-gradient(135deg,#a7e0cb,#6fc6a6)}.skymiles-tiers .platinum{color:#0c261b;background:#e6ecf4f5;border:1px solid #cbd5e1}.empty-state{text-align:center;flex-direction:column;align-items:center;gap:12px;padding:48px 20px;display:flex}.empty-state .empty-ic{background:var(--primary-light);width:64px;height:64px;color:var(--primary);border-radius:50%;justify-content:center;align-items:center;display:flex}.empty-state h3{color:var(--navy);margin:0;font-size:20px}.empty-state p{color:var(--text-muted);max-width:360px;margin:0}@media (width<=560px){.passenger-grid{grid-template-columns:1fr}}.seat.zone-first{background:#f9f0d8}.seat.zone-business{background:#e8f0f9}.seat.zone-business:not(.selected):not(.booked):not(.held){background:#d8e6f5;box-shadow:inset 0 0 0 1px #14352a29,0 2px #0c261b1f}.seat.zone-first:not(.selected):not(.booked):not(.held){background:#f6ead0;box-shadow:inset 0 0 0 1px #8dd3ba4d,0 2px #0c261b1f}.checkout-page{background:radial-gradient(circle at 50% 0%, #2563eb12, transparent 35%), var(--background);min-height:100vh;padding:40px 20px 70px}.checkout-container{width:min(560px,100%);margin:0 auto}.checkout-card{padding:28px}.checkout-title{color:var(--text);letter-spacing:-.02em;margin:0 0 6px;font-size:24px;font-weight:800}.checkout-subtitle{color:var(--text-muted);margin:0 0 4px;font-size:13px}.checkout-meta{color:var(--text-secondary);margin:4px 0;font-size:13px}.checkout-total{color:var(--text);margin:14px 0;font-size:22px;font-weight:850}.checkout-form{flex-direction:column;gap:16px;margin-top:16px;display:flex}.checkout-passenger{border:1px solid var(--border);border-radius:var(--radius-md);background:#fafbfd;padding:16px}.checkout-passenger legend{color:var(--text);padding:0 4px;font-size:13px;font-weight:750}.checkout-passenger .passenger-form-grid{margin-top:10px}.checkout-field-hint{color:var(--text-light);font-size:11px}.checkout-field-error{color:var(--danger);font-size:11px;font-weight:650}.checkout-methods{flex-direction:column;gap:8px;display:flex}.checkout-method{color:var(--text-secondary);align-items:center;gap:8px;font-size:13px;display:flex}.checkout-pay-button{width:100%}.flight-details-page{min-height:100vh;color:var(--text,#172033);background:radial-gradient(1100px 380px at 85% -8%, #8dd3ba1a, transparent 60%), linear-gradient(180deg, #eef3f9 0%, var(--background,#f6f8fc) 320px)!important}.flight-details-header{z-index:20;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--border-light,#edf0f4);background:#ffffffdb;justify-content:space-between;align-items:center;gap:16px;padding:14px clamp(16px,5vw,56px);display:flex;position:sticky;top:0}.flight-details-brand{color:var(--navy,#0c261b);letter-spacing:-.01em;align-items:center;gap:10px;font-size:20px;font-weight:800;display:flex}.flight-details-brand svg{color:var(--gold,#6fc6a6)}.details-back-button{cursor:pointer;color:var(--navy,#0c261b);border:1px solid var(--border,#e4e9f0);background:#fff;border-radius:999px;align-items:center;gap:8px;padding:9px 16px;font-size:14px;font-weight:600;transition:all .18s;display:inline-flex}.details-back-button:hover{background:var(--navy,#0c261b);color:#fff;border-color:var(--navy,#0c261b);transform:translateY(-1px)}.flight-details-content{max-width:1120px;margin:0 auto;padding:30px clamp(16px,5vw,40px) 80px}.details-breadcrumb{color:var(--text-muted,#7b8495);align-items:center;gap:10px;margin-bottom:22px;font-size:13.5px;display:flex}.details-breadcrumb button{cursor:pointer;color:var(--gold-dark,#1f6f55);background:0 0;border:none;padding:0;font-size:13.5px;font-weight:600}.details-breadcrumb button:hover{text-decoration:underline}.details-breadcrumb strong{color:var(--navy,#0c261b);font-weight:600}.flight-details-title{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:26px;display:flex}.details-eyebrow{letter-spacing:2.5px;color:var(--gold-dark,#1f6f55);text-transform:uppercase;margin:0 0 6px;font-size:12px;font-weight:700}.flight-details-title h1{color:var(--navy,#0c261b);letter-spacing:-.02em;margin:0;font-size:clamp(30px,5vw,44px);font-weight:800;line-height:1.05}.flight-details-title p{color:var(--text-muted,#7b8495);margin:8px 0 0;font-size:14.5px}.selected-flight-badge{white-space:nowrap;background:var(--gold-light,#e6f5ef);color:var(--gold-deep,#14503d);border:1px solid #8dd3ba59;border-radius:999px;align-items:center;gap:8px;padding:9px 16px;font-size:13.5px;font-weight:700;display:inline-flex}.selected-flight-badge svg{color:var(--gold-dark,#1f6f55)}.details-layout{grid-template-columns:minmax(0,1fr) 360px;align-items:start;gap:26px;display:grid}.details-main{flex-direction:column;gap:20px;min-width:0;display:flex}.details-card{border:1px solid var(--border-light,#edf0f4);background:#fff;border-radius:20px;padding:26px;box-shadow:0 14px 34px #0c261b0f}.details-card-heading{border-bottom:1px solid var(--border-light,#edf0f4);align-items:center;gap:10px;margin-bottom:20px;padding-bottom:16px;display:flex}.details-card-heading svg{color:var(--gold-dark,#1f6f55)}.details-card-heading h2{color:var(--navy,#0c261b);margin:0;font-size:17px;font-weight:700}.airline-details-card{align-items:center;gap:16px;display:flex}.airline-details-logo{background:linear-gradient(135deg, var(--navy,#0c261b), var(--primary,#14352a));color:#fff;border-radius:16px;flex:0 0 58px;place-items:center;width:58px;height:58px;display:grid;box-shadow:0 10px 22px #14352a47}.airline-details-card>div:not(.details-status):not(.airline-details-logo){flex:1;min-width:0}.airline-details-card h2{color:var(--navy,#0c261b);margin:0;font-size:20px;font-weight:800}.airline-details-card p{color:var(--text-muted,#7b8495);margin:3px 0 0;font-size:13.5px}.details-status{text-transform:capitalize;color:#1f8a4c;white-space:nowrap;background:#e8f6ee;border:1px solid #1f8a4c33;border-radius:999px;padding:7px 14px;font-size:12.5px;font-weight:700}.schedule-date{color:var(--text-secondary,#344054);margin:-6px 0 20px;font-size:14.5px;font-weight:600}.details-route{grid-template-columns:1fr auto 1fr;align-items:center;gap:18px;display:grid}.details-route-point strong{color:var(--navy,#0c261b);letter-spacing:-.01em;font-variant-numeric:tabular-nums;font-size:30px;font-weight:800;display:block}.details-route-point h3{color:var(--primary,#14352a);margin:6px 0 2px;font-size:15px;font-weight:700}.details-route-point p{color:var(--text-muted,#7b8495);margin:0;font-size:12.5px}.details-route-point.arrival{text-align:right}.details-route-middle{flex-direction:column;align-items:center;gap:8px;min-width:130px;display:flex}.duration-label{color:var(--gold-deep,#14503d);background:var(--gold-light,#e6f5ef);border-radius:999px;align-items:center;gap:6px;padding:5px 12px;font-size:12.5px;font-weight:600;display:inline-flex}.details-route-line{background:linear-gradient(90deg, var(--primary,#14352a), var(--gold,#6fc6a6));border-radius:2px;width:100%;height:2px;position:relative}.details-route-line:before,.details-route-line:after{content:"";border-radius:50%;width:8px;height:8px;position:absolute;top:50%;transform:translateY(-50%)}.details-route-line:before{background:var(--primary,#14352a);left:-1px}.details-route-line:after{background:var(--gold,#6fc6a6);right:-1px}.details-route-line span{border:1px solid var(--border,#e4e9f0);background:#fff;border-radius:50%;place-items:center;width:26px;height:26px;display:grid;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)rotate(90deg);box-shadow:0 4px 10px #0c261b1f}.details-route-line span:after{content:"✈";color:var(--gold-dark,#1f6f55);font-size:13px;transform:rotate(0)}.details-route-middle small{color:var(--text-muted,#7b8495);font-size:11.5px}.information-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}.information-item{background:var(--primary-light,#e6f5ef);border-radius:13px;justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;display:flex}.information-item span{color:var(--text-muted,#7b8495);font-size:13px}.information-item strong{color:var(--navy,#0c261b);text-align:right;font-size:14.5px;font-weight:700}.information-item .status-text{text-transform:capitalize;color:#1f8a4c}.fare-options{flex-direction:column;gap:12px;display:flex}.fare-option{border:1.5px solid var(--border,#e4e9f0);cursor:pointer;background:#fff;border-radius:15px;justify-content:space-between;align-items:center;gap:14px;padding:16px 18px;transition:all .18s;display:flex}.fare-option:hover{transform:translateY(-1px);box-shadow:0 8px 20px #8dd3ba24;border-color:var(--gold,#6fc6a6)!important}.fare-option.active{border-color:var(--gold,#6fc6a6);background:var(--gold-light,#e6f5ef);box-shadow:0 8px 20px #8dd3ba29}.fare-option>div{flex-direction:column;gap:3px;display:flex}.fare-option>div>strong{color:var(--navy,#0c261b);font-size:15px;font-weight:700}.fare-option>div>span{color:var(--text-muted,#7b8495);font-size:12.5px}.fare-option>strong{color:var(--primary,#14352a);white-space:nowrap;font-variant-numeric:tabular-nums;font-size:18px;font-weight:800}.fare-option.active>strong{color:var(--gold-deep,#14503d)}.details-sidebar{position:sticky;top:92px}.price-summary-card{border:1px solid var(--border-light,#edf0f4);background:#fff;border-radius:20px;padding:24px;box-shadow:0 16px 40px #0c261b1a}.price-summary-card>h2{color:var(--navy,#0c261b);align-items:center;gap:8px;margin:0 0 16px;font-size:16px;font-weight:800;display:flex}.price-summary-route{color:var(--primary,#14352a);background:var(--primary-light,#e6f5ef);border-radius:12px;align-items:center;gap:8px;margin-bottom:16px;padding:12px 14px;font-weight:700;display:flex}.price-row{color:var(--text-secondary,#344054);justify-content:space-between;align-items:center;gap:12px;padding:7px 0;font-size:14px;display:flex}.price-row span:last-child{color:var(--navy,#0c261b);font-variant-numeric:tabular-nums;font-weight:600}.price-divider{background:var(--border-light,#edf0f4);border:0;height:1px;margin:12px 0}.price-total{justify-content:space-between;align-items:baseline;gap:12px;margin:6px 0 4px;display:flex}.price-total span:first-child{color:var(--navy,#0c261b);font-size:15px;font-weight:700}.price-total span:last-child,.price-total strong{color:var(--gold-deep,#14503d);font-variant-numeric:tabular-nums;font-size:26px;font-weight:800}.price-note{color:var(--text-muted,#7b8495);margin:10px 0 18px;font-size:12px;line-height:1.5}.continue-seat-button,.primary-details-button{cursor:pointer;color:#0c261b;background:linear-gradient(135deg, var(--gold,#6fc6a6), var(--gold-dark,#1f6f55));border:none;border-radius:14px;justify-content:center;align-items:center;gap:8px;width:100%;padding:15px 20px;font-size:15px;font-weight:700;transition:filter .18s,transform .18s;display:inline-flex;box-shadow:0 12px 26px #8dd3ba5c}.continue-seat-button:hover,.primary-details-button:hover{filter:brightness(.97);transform:translateY(-1px)}.flight-details-empty{text-align:center;max-width:560px;margin:0 auto;padding:90px 24px}.empty-icon{background:var(--primary-light,#e6f5ef);width:84px;height:84px;color:var(--primary,#14352a);border-radius:50%;place-items:center;margin:0 auto 22px;display:grid}.flight-details-empty h1{color:var(--navy,#0c261b);margin:0 0 10px;font-size:26px;font-weight:800}.flight-details-empty p{color:var(--text-muted,#7b8495);margin:0 0 24px}@media (width<=900px){.details-layout{grid-template-columns:1fr}.details-sidebar{position:static}}@media (width<=560px){.flight-details-title{flex-direction:column;align-items:flex-start}.information-grid{grid-template-columns:1fr}.details-route-point strong{font-size:24px}.details-route-middle{min-width:90px}.details-card{padding:20px}}.flight-details-page .airline-details-card .airline-details-logo{color:#fff!important;background:linear-gradient(135deg,#0c261b,#14352a)!important;flex:0 0 58px!important;width:58px!important;height:58px!important}.flight-details-page .airline-details-card .airline-details-logo svg{color:#fff!important;stroke:#fff!important}.mbk-page{background:var(--background);min-height:100vh}.mbk-container{width:min(1000px,100% - 40px);margin:0 auto;padding:34px 0 72px}.mbk-loading{text-align:center;min-height:60vh;color:var(--text-muted);flex-direction:column;justify-content:center;align-items:center;gap:6px;display:flex}.mbk-loading h2{color:var(--navy);margin:8px 0 0;font-size:20px}.mbk-spinner{color:var(--primary);animation:1s linear infinite mbk-spin}@keyframes mbk-spin{to{transform:rotate(360deg)}}.mbk-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:18px;margin-bottom:26px;display:flex}.mbk-eyebrow{color:var(--gold-dark);letter-spacing:3px;font-size:12px;font-weight:700}.mbk-header-copy h1{color:var(--navy);letter-spacing:-.01em;margin:8px 0 6px;font-size:32px;font-weight:800}.mbk-header-copy p{color:var(--text-muted);margin:0;font-size:15px}.mbk-header-actions{align-items:center;gap:12px;display:flex}.mbk-refresh{border:1px solid var(--border);color:var(--text);cursor:pointer;background:#fff;border-radius:11px;align-items:center;gap:8px;padding:10px 16px;font-weight:600;transition:border-color .18s,color .18s;display:inline-flex}.mbk-refresh:hover:not(:disabled){border-color:var(--gold);color:var(--gold-dark)}.mbk-refresh:disabled{opacity:.6;cursor:default}.mbk-error{color:#b42318;background:#fef2f2;border:1px solid #fecaca;border-radius:14px;align-items:center;gap:14px;margin-bottom:22px;padding:16px 18px;display:flex}.mbk-error strong{display:block}.mbk-error p{color:#9a2b23;margin:2px 0 0;font-size:13px}.mbk-error button{color:#fff;cursor:pointer;white-space:nowrap;background:#b42318;border:none;border-radius:9px;margin-left:auto;padding:8px 16px;font-weight:600}.mbk-empty{border:1px solid var(--border);text-align:center;box-shadow:var(--shadow-sm);background:#fff;border-radius:20px;padding:60px 30px}.mbk-empty-icon{background:var(--primary-light);width:80px;height:80px;color:var(--primary);border-radius:50%;justify-content:center;align-items:center;margin:0 auto 18px;display:flex}.mbk-empty h2{color:var(--navy);margin:0 0 8px;font-size:22px}.mbk-empty p{color:var(--text-muted);max-width:420px;margin:0 auto 22px}.mbk-primary{background:linear-gradient(135deg, var(--navy-light), var(--navy));color:#fff;cursor:pointer;border:none;border-radius:12px;align-items:center;gap:9px;padding:13px 26px;font-weight:700;display:inline-flex;box-shadow:0 12px 26px #0c261b38}.mbk-primary:hover{transform:translateY(-2px)}.mbk-list{flex-direction:column;gap:20px;display:flex}.mbk-pass{border:1px solid var(--border);box-shadow:var(--shadow-sm);background:#fff;border-radius:20px;transition:transform .2s,box-shadow .2s;display:flex;overflow:hidden}.mbk-pass:hover{box-shadow:var(--shadow-lg);transform:translateY(-3px)}.mbk-stub{background:linear-gradient(160deg, var(--navy-light), var(--navy));color:#fff;text-align:center;flex-direction:column;flex:0 0 158px;align-items:center;gap:8px;padding:22px 18px;display:flex}.mbk-stub-plane{width:46px;height:46px;color:var(--gold);background:#ffffff24;border-radius:13px;justify-content:center;align-items:center;margin-bottom:4px;display:flex;transform:rotate(45deg)}.mbk-stub-plane svg{transform:rotate(-45deg)}.mbk-stub-airline{font-size:15px;font-weight:700;line-height:1.25}.mbk-stub-flight{letter-spacing:2px;color:#8dd3ba;font-size:12px;font-weight:600}.mbk-perf{background:0 0;justify-content:center;align-items:center;width:2px;display:flex;position:relative}.mbk-perf-line{border-left:2px dashed var(--border);width:0;height:calc(100% - 32px)}.mbk-notch{background:var(--background);border:1px solid var(--border);border-radius:50%;width:18px;height:18px;position:absolute;left:50%;transform:translate(-50%)}.mbk-notch.top{top:-9px}.mbk-notch.bottom{bottom:-9px}.mbk-body{flex-direction:column;flex:1;gap:18px;min-width:0;padding:22px 26px;display:flex}.mbk-route{grid-template-columns:auto 1fr auto;align-items:center;gap:20px;display:grid}.mbk-airport strong{color:var(--navy);letter-spacing:1px;font-size:30px;font-weight:800;line-height:1;display:block}.mbk-airport span{letter-spacing:1.5px;text-transform:uppercase;color:var(--text-muted);margin-top:5px;font-size:10.5px;display:block}.mbk-airport.end{text-align:right}.mbk-route-line{color:var(--gold);align-items:center;gap:6px;display:flex}.mbk-route-line .mbk-line{background:repeating-linear-gradient(90deg, var(--gold) 0 6px, transparent 6px 12px);opacity:.55;flex:1;height:2px}.mbk-route-line .mbk-dot{background:var(--gold);border-radius:50%;flex:none;width:7px;height:7px}.mbk-route-line svg{flex:none}.mbk-meta{border-top:1px solid var(--border-light);border-bottom:1px solid var(--border-light);grid-template-columns:repeat(4,1fr);gap:14px 18px;padding:16px 0;display:grid}.mbk-meta-item{flex-direction:column;gap:4px;min-width:0;display:flex}.mbk-meta-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.3px;align-items:center;gap:5px;font-size:11px;display:inline-flex}.mbk-meta-item strong{color:var(--text);text-overflow:ellipsis;font-size:14px;font-weight:650;overflow:hidden}.mbk-pnr{letter-spacing:1px;font-family:SFMono-Regular,ui-monospace,Menlo,monospace;color:var(--navy)!important}.mbk-foot{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}.mbk-total{flex-direction:column;display:flex}.mbk-total span{text-transform:uppercase;letter-spacing:.5px;color:var(--text-muted);font-size:11px}.mbk-total strong{color:var(--navy);font-variant-numeric:tabular-nums;font-size:22px;font-weight:800}.mbk-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.mbk-btn{cursor:pointer;border-radius:11px;align-items:center;gap:7px;padding:10px 18px;font-size:14px;font-weight:700;transition:transform .16s,box-shadow .16s,background .16s;display:inline-flex}.mbk-btn.primary{background:linear-gradient(135deg, var(--navy-light), var(--navy));color:#fff;border:none;box-shadow:0 10px 22px #0c261b33}.mbk-btn.primary:hover{transform:translateY(-2px)}.mbk-btn.ghost{color:var(--gold-dark);border:1px solid var(--gold);background:#fff}.mbk-btn.ghost:hover{background:var(--gold-light)}.mbk-booked{color:var(--text-light);font-size:12px}.mbk-status{letter-spacing:.3px;border-radius:999px;margin-top:4px;padding:4px 12px;font-size:11px;font-weight:700}.mbk-status.confirmed,.mbk-status.paid{color:#15803d;background:#dcfce7}.mbk-status.completed{color:#fff;background:#ffffff29}.mbk-status.pending{color:#b45309;background:#fef3c7}.mbk-status.cancelled,.mbk-status.failed{color:#b91c1c;background:#fee2e2}@media (width<=720px){.mbk-pass{flex-direction:column}.mbk-stub{text-align:left;flex-direction:row;flex:none;justify-content:flex-start;gap:12px;padding:16px 20px}.mbk-stub-plane{margin-bottom:0}.mbk-stub-airline,.mbk-stub-flight{flex:none}.mbk-status{margin-top:0;margin-left:auto}.mbk-perf{display:none}.mbk-body{padding:20px}.mbk-meta{grid-template-columns:repeat(2,1fr)}.mbk-airport strong{font-size:26px}}@media (width<=440px){.mbk-meta{grid-template-columns:1fr 1fr}.mbk-foot{align-items:stretch}.mbk-actions{width:100%}.mbk-btn{flex:1;justify-content:center}}.profile-page{background:var(--background);min-height:100vh}.profile-topbar{border-bottom:1px solid var(--border);background:#fff;justify-content:space-between;align-items:center;padding:14px 22px;display:flex}.profile-brand{align-items:center;gap:12px;display:flex}.profile-brand-icon{background:linear-gradient(135deg, var(--navy-light), var(--navy));width:38px;height:38px;color:var(--gold);border-radius:11px;justify-content:center;align-items:center;display:flex}.profile-brand strong{color:var(--navy);font-size:17px;font-weight:800;line-height:1.1;display:block}.profile-brand span{color:var(--text-muted);font-size:12px;display:block}.profile-back-button{border:1px solid var(--border);color:var(--text);cursor:pointer;background:#fff;border-radius:11px;align-items:center;gap:7px;padding:9px 16px;font-weight:600;transition:border-color .18s,color .18s;display:inline-flex}.profile-back-button:hover{border-color:var(--gold);color:var(--gold-dark)}.profile-container{flex-direction:column;gap:20px;width:min(960px,100% - 40px);margin:0 auto;padding:28px 0 70px;display:flex}.profile-hero{background:linear-gradient(140deg, var(--navy-light), var(--navy));box-shadow:var(--shadow-md);border-radius:22px;align-items:center;gap:22px;padding:30px 32px;display:flex;position:relative;overflow:hidden}.profile-hero:after{content:"";background:radial-gradient(circle,#8dd3ba47,#0000 70%);border-radius:50%;width:240px;height:240px;position:absolute;top:-70px;right:-70px}.profile-avatar{background:linear-gradient(135deg, #a7e0cb, var(--gold));width:78px;height:78px;color:var(--navy);z-index:1;border-radius:50%;flex:none;justify-content:center;align-items:center;font-size:30px;font-weight:800;display:flex;box-shadow:0 10px 24px #00000038}.profile-avatar.lg{width:66px;height:66px;margin:0 auto 6px}.profile-hero-info{z-index:1;min-width:0;position:relative}.profile-hero-info h1{color:#fff;margin:6px 0 4px;font-size:28px;font-weight:800}.profile-hero-info p{color:#d7e2ee;word-break:break-word;margin:0;font-size:14.5px}.profile-status{z-index:1;color:#b7f5c9;background:#dcfce729;border:1px solid #b7f5c959;border-radius:999px;align-items:center;gap:6px;padding:6px 13px;font-size:12px;font-weight:700;display:inline-flex;position:absolute;top:18px;right:20px}.profile-label{color:var(--gold-dark);letter-spacing:2px;text-transform:uppercase;font-size:11px;font-weight:700;display:block}.profile-label.light{color:#8dd3ba}.profile-grid-2{grid-template-columns:1fr 1fr;gap:20px;display:grid}.profile-card{border:1px solid var(--border);box-shadow:var(--shadow-sm);background:#fff;border-radius:18px;padding:24px}.profile-card-head{margin-bottom:18px}.profile-card-head h2{color:var(--navy);margin:6px 0 0;font-size:19px;font-weight:800}.profile-fields{flex-direction:column;gap:8px;display:flex}.profile-field{border-radius:12px;align-items:center;gap:14px;padding:12px;transition:background .16s;display:flex}.profile-field:hover{background:var(--primary-light)}.profile-field-ic{background:var(--primary-light);width:38px;height:38px;color:var(--primary);border-radius:10px;flex:none;justify-content:center;align-items:center;display:flex}.profile-field>div{min-width:0}.profile-field span{color:var(--text-muted);text-transform:uppercase;letter-spacing:.3px;font-size:11.5px;display:block}.profile-field strong{color:var(--text);word-break:break-word;margin-top:2px;font-size:15px;font-weight:650;display:block}.profile-pref{justify-content:space-between;align-items:center;gap:14px;padding:16px 4px;display:flex}.profile-pref+.profile-pref{border-top:1px solid var(--border-light)}.profile-pref-copy{align-items:center;gap:12px;min-width:0;display:flex}.profile-pref-ic{background:var(--gold-light);width:38px;height:38px;color:var(--gold-dark);border-radius:10px;flex:none;justify-content:center;align-items:center;display:flex}.profile-pref-copy>span{color:var(--text);font-size:15px;font-weight:600}.profile-pref-text{flex-direction:column;display:flex}.profile-pref-text span{color:var(--text);font-size:15px;font-weight:600}.profile-pref-text small{color:var(--text-muted);margin-top:2px;font-size:12px}.profile-actions{grid-template-columns:1fr 1fr;gap:14px;display:grid}.profile-action{text-align:left;border:1px solid var(--border);cursor:pointer;background:#fff;border-radius:14px;align-items:center;gap:14px;padding:16px 18px;transition:transform .18s,box-shadow .18s,border-color .18s;display:flex}.profile-action:hover{box-shadow:var(--shadow-md);border-color:#0000;transform:translateY(-3px)}.profile-action-ic{background:var(--primary-light);width:46px;height:46px;color:var(--primary);border-radius:12px;flex:none;justify-content:center;align-items:center;display:flex}.profile-action>div{flex:1;min-width:0}.profile-action strong{color:var(--navy);font-size:15.5px;font-weight:700;display:block}.profile-action small{color:var(--text-muted);margin-top:2px;font-size:12.5px;display:block}.profile-action-arrow{color:var(--text-light);flex:none}.profile-action:hover .profile-action-arrow{color:var(--gold-dark)}.profile-login-card{text-align:center;max-width:420px;margin:70px auto 0}.profile-login-card .profile-avatar{background:var(--primary-light);color:var(--primary);box-shadow:none}.profile-login-card h2{color:var(--navy);margin:4px 0 8px;font-size:22px}.profile-login-card p{color:var(--text-muted);margin:0 0 22px}@media (width<=760px){.profile-grid-2,.profile-actions{grid-template-columns:1fr}.profile-hero{text-align:center;flex-direction:column;padding:28px 22px}.profile-status{margin-top:8px;position:static}.profile-hero-info h1{font-size:24px}}.seat-selection-page,.passenger-page,.booking-page{--fs-navy:#14352a;--fs-navy-deep:#0c261b;--fs-navy-soft:#e6f5ef;--fs-gold:#6fc6a6;--fs-gold-dark:#1f6f55;--fs-ground:#f6f8fc;--fs-card:#fff;--fs-text:#172033;--fs-muted:#6b7686;--fs-line:#e4e9f0;--fs-line-soft:#eef1f6;--fs-radius:16px;--fs-shadow:0 12px 34px #0f284612;--fs-shadow-sm:0 4px 14px #0f28460d;background:radial-gradient(1100px 420px at 100% -10%, #14352a0f, transparent 60%), var(--fs-ground);min-height:100vh;color:var(--fs-text);font-family:Be Vietnam Pro,Inter,system-ui,-apple-system,Segoe UI,sans-serif}.seat-selection-page .seat-selection-header,.passenger-page .seat-selection-header,.booking-page .seat-selection-header{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--fs-line);top:env(safe-area-inset-top,0px);z-index:20;background:#ffffffdb;justify-content:space-between;align-items:center;gap:16px;padding:16px clamp(16px,4vw,40px);display:flex;position:sticky}.seat-selection-brand{align-items:center;gap:12px;min-width:0;display:flex}.seat-selection-brand .brand-icon{background:linear-gradient(135deg, #1566a6, var(--fs-navy-deep));color:#fff;border-radius:12px;flex-shrink:0;place-items:center;width:42px;height:42px;font-size:20px;display:grid;box-shadow:0 8px 18px #14352a47}.seat-selection-brand strong{letter-spacing:-.2px;color:var(--fs-navy-deep);font-size:17px;font-weight:800;line-height:1.1;display:block}.seat-selection-brand small{color:var(--fs-muted);font-size:12px;display:block}.seat-back-button{border:1px solid var(--fs-line);color:var(--fs-navy);cursor:pointer;white-space:nowrap;background:#fff;border-radius:999px;align-items:center;gap:8px;padding:10px 16px;font-size:13.5px;font-weight:600;transition:border-color .18s,background .18s,transform .18s;display:inline-flex}.seat-back-button:hover{border-color:var(--fs-navy);background:var(--fs-navy-soft);transform:translate(-1px)}.seat-back-button:disabled{opacity:.5;cursor:not-allowed}.seat-selection-content,.passenger-content,.booking-content{width:100%;max-width:1180px;margin:0 auto;padding:clamp(20px,3vw,34px) clamp(16px,4vw,40px) 72px}.seat-breadcrumb{color:var(--fs-muted);flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:20px;font-size:13px;display:flex}.seat-breadcrumb button,.seat-breadcrumb span{font:inherit;color:var(--fs-muted);cursor:default;background:0 0;border:none;padding:0}.seat-breadcrumb button{cursor:pointer;transition:color .15s}.seat-breadcrumb button:hover{color:var(--fs-navy);text-decoration:underline}.seat-breadcrumb strong{color:var(--fs-navy-deep);font-weight:700}.seat-breadcrumb>span{opacity:.5}.seat-page-title,.passenger-title{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:24px;display:flex}.seat-page-title h1,.passenger-title h1{letter-spacing:-.5px;color:var(--fs-navy-deep);text-wrap:balance;margin:4px 0 6px;font-size:clamp(24px,3vw,32px);font-weight:800}.seat-page-title>div>p:not(.seat-eyebrow),.passenger-title>div>p:not(.seat-eyebrow){color:var(--fs-muted);max-width:52ch;margin:0;font-size:14.5px}.seat-eyebrow{letter-spacing:2.5px;text-transform:uppercase;color:var(--fs-gold-dark);margin:0;padding:3px 0;font-size:11.5px;font-weight:700;display:inline-block;position:relative}.seat-progress{border:1px solid var(--fs-line);box-shadow:var(--fs-shadow-sm);background:#fff;border-radius:999px;flex-wrap:wrap;align-items:center;gap:6px;padding:10px 14px;display:flex}.progress-step{color:var(--fs-muted);white-space:nowrap;align-items:center;gap:7px;font-size:13px;font-weight:600;display:inline-flex}.progress-step span,.progress-step svg{border-radius:50%;flex-shrink:0;place-items:center;width:24px;height:24px;display:grid}.progress-step span{color:var(--fs-muted);background:#eef1f6;font-size:12px;font-weight:700}.progress-step.active{color:var(--fs-navy-deep)}.progress-step.active span{background:linear-gradient(135deg, #1566a6, var(--fs-navy));color:#fff;box-shadow:0 4px 12px #14352a59}.progress-step.completed{color:var(--fs-navy-deep)}.progress-step.completed svg{background:linear-gradient(135deg, #8dd3ba, var(--fs-gold-dark));color:#fff;padding:4px}.progress-line{background:linear-gradient(90deg, var(--fs-line), #d9e0ea);border-radius:2px;flex-shrink:0;width:26px;height:2px}.selected-flight-card{background:var(--fs-card);border:1px solid var(--fs-line);border-radius:var(--fs-radius);box-shadow:var(--fs-shadow);margin-bottom:24px;overflow:hidden}.selected-flight-top{color:#fff;background:linear-gradient(120deg,#0c261b 0%,#14352a 100%);justify-content:space-between;align-items:center;gap:16px;padding:18px 22px;display:flex}.selected-flight-airline{align-items:center;gap:13px;min-width:0;display:flex}.selected-flight-card .selected-flight-airline .airline-logo{border:1px solid #ffffff47;border-radius:12px;flex-shrink:0;place-items:center;width:46px;height:46px;color:#fff!important;background:#ffffff29!important;display:grid!important}.selected-flight-airline h2{color:#fff;margin:0;font-size:16.5px;font-weight:700}.selected-flight-airline span{color:#ffffffbf;font-size:12.5px}.flight-status-badge{color:#eafff2;white-space:nowrap;background:#ffffff26;border:1px solid #ffffff40;border-radius:999px;align-items:center;gap:6px;padding:6px 13px;font-size:12px;font-weight:600;display:inline-flex}.selected-flight-main{grid-template-columns:1fr auto 1fr;align-items:center;gap:18px;padding:24px 22px;display:grid}.airport-block{flex-direction:column;gap:3px;display:flex}.airport-block.arrival{text-align:right;align-items:flex-end}.airport-label{letter-spacing:1.5px;color:var(--fs-muted);text-transform:uppercase;font-size:10.5px;font-weight:700}.airport-time{color:var(--fs-navy);font-size:15px;font-weight:600}.airport-code{letter-spacing:-1px;color:var(--fs-navy-deep);font-size:30px;font-weight:800;line-height:1}.airport-city{color:var(--fs-muted);align-items:center;gap:4px;font-size:12.5px;display:inline-flex}.flight-route-line{flex-direction:column;align-items:center;gap:6px;min-width:120px;display:flex}.route-duration{color:var(--fs-navy);background:var(--fs-navy-soft);border-radius:999px;align-items:center;gap:5px;padding:4px 11px;font-size:12px;font-weight:600;display:inline-flex}.route-line{width:100%;color:var(--fs-gold-dark);align-items:center;gap:6px;display:flex}.route-line span{background:repeating-linear-gradient(90deg,#cdd6e2 0 6px,#0000 6px 11px);flex:1;height:2px}.route-line svg{flex-shrink:0;transform:rotate(90deg)}.route-direct{letter-spacing:1px;text-transform:uppercase;color:var(--fs-muted);font-size:11px;font-weight:600}.selected-flight-bottom{border-top:1px dashed var(--fs-line);background:#fbfcfe;flex-wrap:wrap;gap:14px 28px;padding:16px 22px;display:flex}.flight-detail-item{color:var(--fs-navy);align-items:center;gap:10px;display:flex}.flight-detail-item small{color:var(--fs-muted);text-transform:uppercase;letter-spacing:.5px;font-size:11px;display:block}.flight-detail-item strong{color:var(--fs-navy-deep);font-size:14px;font-weight:700;display:block}.seat-layout,.passenger-layout,.booking-layout{grid-template-columns:minmax(0,1fr) 360px;align-items:start;gap:24px;display:grid}.seat-map-card,.passenger-form-card,.booking-review-card{background:var(--fs-card);border:1px solid var(--fs-line);border-radius:var(--fs-radius);box-shadow:var(--fs-shadow);padding:22px}.seat-card-header,.passenger-card-header,.booking-card-header{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:18px;display:flex}.seat-card-header h2,.passenger-card-header h2,.booking-card-header h2{color:var(--fs-navy-deep);margin:0 0 3px;font-size:18px;font-weight:700}.seat-card-header p,.passenger-card-header p{color:var(--fs-muted);margin:0;font-size:13px}.passenger-card-header svg,.booking-card-header svg{color:var(--fs-navy);flex-shrink:0}.available-seat-count{color:#16794c;white-space:nowrap;background:#ecfdf3;border:1px solid #c7f0d8;border-radius:999px;align-items:center;gap:7px;padding:6px 12px;font-size:12.5px;font-weight:600;display:inline-flex}.available-seat-count span{background:#16a34a;border-radius:50%;width:8px;height:8px}.seat-legend,.seat-map-legend{border:1px solid var(--fs-line-soft);background:#f8fafc;border-radius:12px;flex-wrap:wrap;gap:14px 18px;margin-bottom:18px;padding:12px 14px;display:flex}.legend-item,.seat-legend-item{color:var(--fs-text);align-items:center;gap:7px;font-size:12.5px;display:inline-flex}.legend-seat{border:1.5px solid var(--fs-navy);background:#fff;border-radius:5px;flex-shrink:0;width:18px;height:18px}.legend-seat.selected{background:var(--fs-navy);border-color:var(--fs-navy)}.legend-seat.occupied,.legend-seat.booked{background:#d6dbe3;border-color:#c2c9d4}.legend-seat.held{background:#fde9c8;border-color:#e7b765}.seat-map-wrapper{flex-direction:column;gap:16px;display:flex}.aircraft-cabin{border:1px solid var(--fs-line);background:linear-gradient(#fbfcfe,#f4f7fb);border-radius:26px;width:100%;max-width:460px;margin:0 auto;padding:8px clamp(10px,3vw,26px) 16px}.aircraft-front,.aircraft-rear{letter-spacing:2px;color:var(--fs-muted);text-transform:uppercase;flex-direction:column;align-items:center;gap:6px;padding:12px 0;font-size:10.5px;font-weight:700;display:flex}.aircraft-front{border-bottom:1px dashed var(--fs-line);background:linear-gradient(#eef3f9,#0000);border-radius:200px 200px 0 0/60px 60px 0 0;margin-bottom:8px}.aircraft-rear{border-top:1px dashed var(--fs-line);margin-top:8px}.cockpit-window{opacity:.85;background:linear-gradient(#1566a6,#0c261b);border-radius:200px 200px 0 0;width:46px;height:22px}.seat-column-labels{grid-template-columns:repeat(3,40px) 24px repeat(3,40px);justify-content:center;gap:8px;margin:4px 0 10px;padding-left:26px;display:grid}.seat-column-labels span{text-align:center;color:var(--fs-muted);font-size:11px;font-weight:700}.seat-rows{flex-direction:column;gap:9px;display:flex}.seat-row{justify-content:center;align-items:center;gap:8px;display:flex}.row-number{width:18px;color:var(--fs-text-light,#9aa3b2);text-align:center;flex-shrink:0;font-size:11px;font-weight:700}.seat-group{gap:8px;display:flex}.aisle{flex-shrink:0;width:24px}.seat{width:40px;height:40px;color:var(--fs-navy);cursor:pointer;background:#fff;border:1.5px solid #cdd6e2;border-radius:9px 9px 6px 6px;flex-direction:column;justify-content:center;align-items:center;gap:1px;font-size:0;transition:transform .14s,box-shadow .14s,background .14s,border-color .14s;display:inline-flex;position:relative}.seat span{letter-spacing:-.3px;font-size:8.5px;font-weight:700}.seat.available:hover{border-color:var(--fs-navy);transform:translateY(-2px);box-shadow:0 6px 14px #14352a33}.seat.selected{background:linear-gradient(135deg, #1566a6, var(--fs-navy));border-color:var(--fs-navy);color:#fff;box-shadow:0 6px 16px #14352a66}.seat.booked{color:#aab2be;cursor:not-allowed;background:#e7ebf1;border-color:#d6dbe3}.seat.held{color:#a97516;cursor:not-allowed;background:#fdecd0;border-color:#e7b765}.seat.zone-business{background:linear-gradient(#fffaf0,#fdf3dc);border-color:#d9bd77}.seat.zone-first{border-color:var(--fs-gold-dark);background:linear-gradient(#fff6e2,#f8e9c2);box-shadow:inset 0 0 0 1px #8dd3ba40}.seat.zone-business.available:hover,.seat.zone-first.available:hover{border-color:var(--fs-gold-dark);box-shadow:0 6px 14px #8dd3ba52}.seat.zone-business.selected,.seat.zone-first.selected{background:linear-gradient(135deg, #1566a6, var(--fs-navy));color:#fff}.seat.zone-business.booked,.seat.zone-first.booked{color:#aab2be;background:#e7ebf1}.selected-seat-message{background:var(--fs-navy-soft);color:var(--fs-navy);border-radius:999px;align-self:center;align-items:center;gap:8px;padding:9px 16px;font-size:13px;font-weight:600;display:inline-flex}.seat-summary-card,.passenger-summary-card,.booking-summary-card{background:var(--fs-card);border:1px solid var(--fs-line);border-radius:var(--fs-radius);box-shadow:var(--fs-shadow);top:calc(env(safe-area-inset-top,0px) + 90px);padding:22px;position:sticky}.passenger-summary-card>h2,.booking-summary-card>h2{color:var(--fs-navy-deep);margin:0 0 16px;font-size:17px;font-weight:700}.summary-heading{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:18px;display:flex}.summary-heading h2{color:var(--fs-navy-deep);margin:0 0 2px;font-size:17px;font-weight:700}.summary-heading p{color:var(--fs-muted);margin:0;font-size:12.5px}.summary-plane{background:var(--fs-navy-soft);width:40px;height:40px;color:var(--fs-navy);border-radius:11px;flex-shrink:0;place-items:center;display:grid}.seat-summary-route,.passenger-route,.booking-route{border:1px solid var(--fs-line-soft);background:linear-gradient(120deg,#f4f8fc,#eef4fa);border-radius:13px;justify-content:center;align-items:center;gap:16px;margin-bottom:16px;padding:16px;display:flex}.seat-summary-route>div{flex-direction:column;align-items:center;display:flex}.seat-summary-route strong,.passenger-route strong,.booking-route strong{color:var(--fs-navy-deep);letter-spacing:-.5px;font-size:22px;font-weight:800}.seat-summary-route small{color:var(--fs-muted);font-size:11.5px}.summary-route-arrow,.passenger-route svg,.booking-route svg{color:var(--fs-gold-dark)}.seat-summary-airline{color:var(--fs-muted);border-bottom:1px solid var(--fs-line-soft);align-items:center;gap:8px;margin-bottom:4px;padding-bottom:16px;font-size:12.5px;display:flex}.seat-summary-airline svg{color:var(--fs-navy);flex-shrink:0}.summary-section,.summary-info-row{justify-content:space-between;align-items:center;gap:12px;padding:9px 0;font-size:13.5px;display:flex}.summary-label,.summary-section .summary-label,.summary-info-row span{color:var(--fs-muted)}.summary-value,.summary-info-row strong{color:var(--fs-navy-deep);text-align:right;font-weight:700}.no-seat-selected{color:var(--fs-muted);padding:8px 0;font-size:12.5px;font-style:italic}.selected-seat-list{flex-wrap:wrap;gap:7px;padding-top:4px;display:flex}.selected-seat-list span{background:var(--fs-navy-soft);color:var(--fs-navy);border-radius:8px;align-items:center;gap:5px;padding:5px 10px;font-size:12.5px;font-weight:700;display:inline-flex}.summary-price-section,.booking-price-section{border-top:1px solid var(--fs-line-soft);margin-top:14px;padding-top:14px}.summary-price-row,.booking-price-row{color:var(--fs-muted);justify-content:space-between;align-items:center;gap:12px;padding:7px 0;font-size:13.5px;display:flex}.summary-price-row strong,.booking-price-row strong{color:var(--fs-navy-deep);font-weight:700}.summary-divider{background:var(--fs-line);height:1px;margin:8px 0}.summary-total-row,.booking-total-row{background:linear-gradient(120deg,#fff8e9,#fdf1d6);border:1px solid #efdcb0;border-radius:12px;justify-content:space-between;align-items:center;gap:12px;margin-top:6px;padding:12px 14px;display:flex}.summary-total-row span,.booking-total-row span{color:var(--fs-navy-deep);font-size:14px;font-weight:700}.summary-total-row strong,.booking-total-row strong{color:var(--fs-gold-dark);letter-spacing:-.5px;font-size:21px;font-weight:800}.seat-summary-note,.booking-price-note{color:var(--fs-muted);text-align:center;margin:12px 0 0;font-size:11.5px}.summary-security,.booking-secure-note{color:#16794c;background:#ecfdf3;border:1px solid #c7f0d8;border-radius:11px;align-items:center;gap:9px;margin-top:14px;padding:11px 13px;font-size:12px;display:flex}.summary-security svg,.booking-secure-note svg{color:#16a34a;flex-shrink:0}.continue-passenger-button,.seat-primary-button{cursor:pointer;color:#0c261b;background:linear-gradient(135deg,#8dd3ba 0%,#6fc6a6 45%,#1f6f55 100%);border:none;border-radius:13px;justify-content:center;align-items:center;gap:9px;width:100%;margin-top:18px;padding:15px 20px;font-size:15px;font-weight:700;transition:filter .18s,transform .18s,box-shadow .18s;display:inline-flex;box-shadow:0 12px 26px #8dd3ba5c}.continue-passenger-button svg,.seat-primary-button svg{color:#0c261b}.continue-passenger-button:hover:not(:disabled),.seat-primary-button:hover:not(:disabled){filter:brightness(1.04);transform:translateY(-1px);box-shadow:0 16px 30px #8dd3ba6b}.continue-passenger-button:disabled{color:#aab2be;box-shadow:none;cursor:not-allowed;background:#e7ebf1}.continue-passenger-button:disabled svg{color:#aab2be}.booking-spinner{animation:.9s linear infinite fs-spin}@keyframes fs-spin{to{transform:rotate(360deg)}}.passenger-flight-card{border-radius:var(--fs-radius);box-shadow:var(--fs-shadow);background:linear-gradient(120deg,#0c261b,#14352a);flex-wrap:wrap;gap:16px 40px;margin-bottom:24px;padding:18px 22px;display:flex}.passenger-flight-card>div{flex-direction:column;gap:3px;display:flex}.passenger-flight-card small{letter-spacing:1.2px;color:#fff9;font-size:10.5px;font-weight:700}.passenger-flight-card strong{color:#fff;letter-spacing:-.3px;font-size:18px;font-weight:800}.passenger-flight-card span{color:#fffc;font-size:12.5px}.passenger-block{border:1px solid var(--fs-line);background:#fbfcfe;border-radius:13px;margin-top:16px;padding:18px}.passenger-block-title{align-items:center;gap:12px;margin-bottom:16px;display:flex}.passenger-number,.booking-passenger-number{background:linear-gradient(135deg, #1566a6, var(--fs-navy));color:#fff;border-radius:50%;flex-shrink:0;place-items:center;width:32px;height:32px;font-size:14px;font-weight:800;display:grid}.passenger-block-title h3{color:var(--fs-navy-deep);margin:0;font-size:15px;font-weight:700}.passenger-block-title span{color:var(--fs-muted);font-size:12.5px}.passenger-grid{grid-template-columns:1fr 1fr;gap:14px;display:grid}.form-group{flex-direction:column;gap:6px;display:flex}.form-group label{color:var(--fs-text-secondary,#344054);font-size:12.5px;font-weight:600}.form-group input,.form-group select{border:1.5px solid var(--fs-line);width:100%;color:var(--fs-text);background:#fff;border-radius:10px;padding:11px 13px;font-family:inherit;font-size:14px;transition:border-color .16s,box-shadow .16s}.form-group input:focus,.form-group select:focus{border-color:var(--fs-navy);outline:none;box-shadow:0 0 0 3px #14352a24}.input-icon{align-items:center;display:flex;position:relative}.input-icon svg{color:var(--fs-muted);pointer-events:none;position:absolute;left:12px}.input-icon input{padding-left:38px}.booking-flight-card{background:var(--fs-card);border:1px solid var(--fs-line);border-radius:var(--fs-radius);box-shadow:var(--fs-shadow);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:18px;margin-bottom:24px;padding:20px 22px;display:flex}.booking-airline{align-items:center;gap:13px;display:flex}.booking-airline-icon{background:linear-gradient(135deg, #1566a6, var(--fs-navy-deep));color:#fff;border-radius:12px;flex-shrink:0;place-items:center;width:46px;height:46px;display:grid}.booking-airline strong{color:var(--fs-navy-deep);font-size:16px;font-weight:700;display:block}.booking-airline span{color:var(--fs-muted);font-size:12.5px}.booking-route{background:0 0;border:none;margin:0;padding:10px 18px}.booking-departure{text-align:right}.booking-departure small{letter-spacing:1px;color:var(--fs-muted);font-size:10.5px;font-weight:700;display:block}.booking-departure strong{color:var(--fs-navy-deep);font-size:14px}.booking-passenger-list{flex-direction:column;gap:10px;margin-bottom:18px;display:flex}.booking-passenger{border:1px solid var(--fs-line);background:#fbfcfe;border-radius:12px;align-items:center;gap:13px;padding:13px 15px;display:flex}.booking-passenger-main strong{color:var(--fs-navy-deep);font-size:14.5px;font-weight:700;display:block}.booking-passenger-main span{color:var(--fs-muted);text-transform:capitalize;font-size:12px;display:block}.booking-contact-section{border-top:1px solid var(--fs-line-soft);padding-top:16px}.booking-contact-section h3{color:var(--fs-navy-deep);margin:0 0 12px;font-size:14px;font-weight:700}.booking-contact-grid{grid-template-columns:1fr 1fr;gap:14px;display:grid}.booking-contact-grid small{color:var(--fs-muted);text-transform:uppercase;letter-spacing:.5px;margin-bottom:2px;font-size:11px;display:block}.booking-contact-grid strong{color:var(--fs-navy-deep);word-break:break-word;font-size:14px}.booking-hold-notice{background:#fffbeb;border:1px solid #f3e2b8;border-radius:12px;align-items:flex-start;gap:11px;margin-top:18px;padding:14px 16px;display:flex}.booking-hold-notice svg{color:var(--fs-gold-dark);flex-shrink:0;margin-top:1px}.booking-hold-notice strong{color:#8a6d1f;margin-bottom:2px;font-size:13.5px;display:block}.booking-hold-notice p{color:#96793a;margin:0;font-size:12.5px}.seat-empty-state{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:12px;min-height:62vh;padding:40px 20px;display:flex}.seat-empty-icon{background:var(--fs-navy-soft);width:72px;height:72px;color:var(--fs-navy);border-radius:20px;place-items:center;margin-bottom:4px;display:grid}.seat-empty-state h1{color:var(--fs-navy-deep);margin:0;font-size:22px;font-weight:800}.seat-empty-state p{color:var(--fs-muted);max-width:42ch;margin:0 0 8px;font-size:14px}.seat-empty-state .seat-primary-button{max-width:260px}.seat-loading{text-align:center;flex-direction:column;align-items:center;gap:8px;padding:48px 20px;display:flex}.loading-spinner{border:3px solid var(--fs-line);border-top-color:var(--fs-navy);border-radius:50%;width:40px;height:40px;margin-bottom:8px;animation:.85s linear infinite fs-spin}.seat-loading h3{color:var(--fs-navy-deep);margin:0;font-size:16px;font-weight:700}.seat-loading p{color:var(--fs-muted);margin:0;font-size:13px}.seat-error-message,.passenger-error{color:#b42318;background:#fef2f2;border:1px solid #f6cccc;border-radius:12px;margin-bottom:20px;padding:13px 16px;font-size:13.5px;font-weight:500}@media (width<=980px){.seat-layout,.passenger-layout,.booking-layout{grid-template-columns:1fr}.seat-summary-card,.passenger-summary-card,.booking-summary-card{position:static}.seat-page-title,.passenger-title{align-items:flex-start}}@media (width<=560px){.selected-flight-main{text-align:center;grid-template-columns:1fr;gap:14px}.airport-block,.airport-block.arrival{text-align:center;align-items:center}.flight-route-line{flex-direction:row;order:1;justify-content:center;width:100%;min-width:0}.route-line{width:90px}.passenger-grid,.booking-contact-grid{grid-template-columns:1fr}.seat-progress{border-radius:14px;justify-content:flex-start;overflow-x:auto}.progress-step span:not(:first-child),.progress-step{font-size:12px}.booking-flight-card{flex-direction:column;align-items:flex-start}.booking-departure{text-align:left}.aircraft-cabin{padding-inline:8px}.seat{width:34px;height:34px}.seat-column-labels{grid-template-columns:repeat(3,34px) 18px repeat(3,34px);gap:6px;padding-left:18px}.seat-group{gap:6px}.aisle{width:18px}}.payment-page{color:#0f172a;background:#f6f7f9;min-height:100vh}.payment-content{max-width:1120px;margin:0 auto;padding:26px 20px 64px}.payment-hold{color:#8a5a12;background:#fffaf0;border:1px solid #f0d8a8;border-radius:12px;align-items:center;gap:8px;margin:4px 0 20px;padding:11px 16px;font-size:.9rem;display:flex}.payment-hold strong{color:#6b4708;font-variant-numeric:tabular-nums}.payment-hold.expired{color:#b02525;background:#fdecec;border-color:#f3b4b4}.payment-layout{grid-template-columns:1fr 420px;align-items:start;gap:24px;display:grid}@media (width<=900px){.payment-layout{grid-template-columns:1fr}}.payment-ticket-card{background:#fff;border:1px solid #e5e9f0;border-radius:16px;padding:22px;box-shadow:0 10px 30px #14352a0f}.payment-ticket-head{border-bottom:1px dashed #dbe2ec;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;padding-bottom:16px;display:flex}.payment-airline{align-items:center;gap:12px;display:flex}.payment-airline .airline-logo{color:#fff;background:linear-gradient(135deg,#14352a,#0a2f4f);border-radius:11px;place-items:center;width:42px;height:42px;display:grid}.payment-airline strong{font-size:1rem;display:block}.payment-airline span{color:#64748b;font-size:.8rem}.payment-route{color:#14352a;align-items:center;gap:10px;font-size:1.15rem;font-weight:800;display:flex}.payment-route svg{color:#6fc6a6}.payment-ticket-rows{flex-direction:column;gap:9px;padding:14px 0;display:flex}.payment-row{justify-content:space-between;gap:12px;font-size:.9rem;display:flex}.payment-row span{color:#64748b}.payment-row strong{color:#0f172a;text-align:right}.payment-row.muted strong{color:#334155;font-weight:600}.payment-row.muted span{color:#94a3b8}.payment-total-row{background:linear-gradient(135deg,#fbf3df,#f5e7c4);border:1px solid #e8d6a8;border-radius:12px;justify-content:space-between;align-items:center;margin-top:8px;padding:14px 16px;display:flex}.payment-total-row span{color:#7a5a12;font-weight:700}.payment-total-row strong{color:#14352a;font-variant-numeric:tabular-nums;font-size:1.25rem}.payment-method-card{background:#fff;border:1px solid #e5e9f0;border-radius:16px;padding:18px;position:sticky;top:18px;box-shadow:0 10px 30px #14352a0f}.pay-method-tabs{grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:16px;display:grid}.pay-method-tab{color:#64748b;cursor:pointer;background:#fff;border:1.5px solid #e2e8f0;border-radius:11px;padding:10px 6px;font-size:.85rem;font-weight:700;transition:all .15s}.pay-method-tab:hover{border-color:#cbd5e1}.pay-method-tab.active.brand-vietqr{color:#be1128;background:#fdf1f2;border-color:#be1128}.pay-method-tab.active.brand-vnpay{color:#005baa;background:#eff6fd;border-color:#005baa}.pay-method-tab.active.brand-momo{color:#a50064;background:#fcf0f7;border-color:#a50064}.payment-qr-card{background:#fff;border:1px solid #e5e9f0;border-radius:14px;overflow:hidden}.payment-qr-band{color:#fff;justify-content:space-between;align-items:center;padding:10px 16px;display:flex}.brand-vietqr .payment-qr-band{background:linear-gradient(90deg,#be1128,#0a1a3f)}.brand-vnpay .payment-qr-band{background:linear-gradient(90deg,#005baa,#0a2f6b)}.brand-momo .payment-qr-band{background:linear-gradient(90deg,#a50064,#6d1150)}.payment-qr-brand{letter-spacing:-.02em;font-size:1.15rem;font-style:italic;font-weight:800}.payment-qr-tag{border:1px solid #ffffff8c;border-radius:5px;padding:2px 7px;font-size:.68rem;font-weight:700}.payment-qr-body{flex-direction:column;align-items:center;padding:18px 16px 12px;display:flex}.payment-qr-img{width:220px;height:220px}.payment-qr-placeholder{color:#94a3b8;place-items:center;gap:8px;width:220px;height:220px;display:grid}.payment-qr-amount{color:#14352a;font-variant-numeric:tabular-nums;margin:10px 0 2px;font-size:1.4rem;font-weight:800}.payment-qr-hint{color:#64748b;text-align:center;font-size:.78rem}.payment-qr-beneficiary{border-top:1px solid #eef2f7;flex-direction:column;gap:7px;padding:12px 16px;display:flex}.payment-error{color:#b02525;background:#fdecec;border:1px solid #f3b4b4;border-radius:10px;margin-top:14px;padding:11px 14px;font-size:.88rem}.payment-confirm-button{color:#121;cursor:pointer;background:linear-gradient(135deg,#8dd3ba,#6fc6a6);border:none;border-radius:999px;justify-content:center;align-items:center;gap:9px;width:100%;margin-top:16px;padding:14px;font-size:.95rem;font-weight:800;transition:transform .12s,box-shadow .12s;display:flex;box-shadow:0 8px 22px #8dd3ba59}.payment-confirm-button:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 10px 26px #8dd3ba73}.payment-confirm-button:active:not(:disabled){transform:scale(.99)}.payment-confirm-button:disabled{opacity:.55;cursor:not-allowed;box-shadow:none}.payment-sandbox-note{color:#94a3b8;text-align:center;margin-top:12px;font-size:.72rem;line-height:1.5}.spin{animation:.9s linear infinite pay-spin}@keyframes pay-spin{to{transform:rotate(360deg)}}.seat.other-class{opacity:.32;filter:grayscale(.5);cursor:not-allowed;pointer-events:none}@media (width<=480px){.payment-qr-img,.payment-qr-placeholder{width:180px;height:180px}}.lang-toggle{background:#ffffff1a;border:1px solid #ffffff2e;border-radius:999px;gap:2px;padding:3px;display:inline-flex}.lang-toggle button{color:#cbd5e1;letter-spacing:.04em;cursor:pointer;background:0 0;border:none;border-radius:999px;padding:4px 10px;font-size:.72rem;font-weight:800;line-height:1;transition:all .15s}.lang-toggle button:hover{color:#fff}.lang-toggle button.active{color:#121;background:linear-gradient(135deg,#8dd3ba,#6fc6a6)}.search-page-header .lang-toggle{background:#14352a14;border-color:#14352a2e}.search-page-header .lang-toggle button{color:#14352a}.search-page-header .lang-toggle button.active{color:#121}.header-actions{align-items:center;gap:12px;display:inline-flex}.toggle-cluster{align-items:center;gap:8px;display:inline-flex}.readonly-field{color:#0f172a;background:#eef2f7;border:1px solid #e2e8f0;border-radius:10px;padding:11px 14px;font-size:.92rem;font-weight:600}.dashboard-header .lang-toggle,.mbk-header-actions .lang-toggle,.profile-pref .lang-toggle,.profile-login-card .lang-toggle{background:#14352a12;border-color:#14352a2e}.dashboard-header .lang-toggle button,.mbk-header-actions .lang-toggle button,.profile-pref .lang-toggle button,.profile-login-card .lang-toggle button{color:#14352a}.dashboard-header .lang-toggle button.active,.mbk-header-actions .lang-toggle button.active,.profile-pref .lang-toggle button.active,.profile-login-card .lang-toggle button.active{color:#121}:root{--g-mint:#8dd3ba;--g-mint-strong:#6fc6a6;--g-mint-tint:#e6f5ef;--g-green:#121;--g-green-2:#14352a;--g-coral:#fa7e70;--g-coral-dark:#e75f50;--g-ink:#0f1b16;--g-paper:#fafafa;--primary:#14352a;--primary-dark:#0c261b;--primary-light:var(--g-mint-tint);--navy:#0c261b;--navy-light:#14352a;--gold:#2f9e79;--gold-dark:#1f6f55;--gold-deep:#14503d;--gold-light:var(--g-mint-tint);--text:#0f1b16;--text-secondary:#2b3a33;--text-muted:#6b7a72;--text-light:#9aa8a0;--border:#e2e8e4;--border-light:#eef2ef;--background:var(--g-paper);--shadow-sm:0 8px 26px #1122110d;--shadow-md:0 14px 34px #11221117;--shadow-lg:0 24px 50px #11221124}body{background:var(--g-paper);color:var(--g-ink);font-family:Montserrat,system-ui,-apple-system,Be Vietnam Pro,sans-serif}h1,h2,h3,h4,h5,.dash-hero h1,.mbk-header-copy h1{letter-spacing:-.01em;font-family:Montserrat,system-ui,sans-serif}.flight-search-button,.mbk-primary,.mbk-btn.primary,.dash-hero-cta,.golobe-cta{background:var(--g-mint)!important;color:var(--g-green)!important;background-image:none!important;border:none!important;border-radius:8px!important;font-weight:700!important;box-shadow:0 10px 22px #8dd3ba73!important}.flight-search-button:hover:not(:disabled),.mbk-primary:hover,.mbk-btn.primary:hover,.dash-hero-cta:hover,.golobe-cta:hover{transform:translateY(-2px);background:var(--g-mint-strong)!important}.flight-search-button svg,.mbk-primary svg,.mbk-btn.primary svg{color:var(--g-green)!important}.select-flight-button,.continue-seat-button,.continue-passenger-button,.payment-pay-button,.profile-primary-button,.booking-action-primary{border-radius:8px!important}.lang-toggle{background:#eef2ef;border-color:#dbe4de}.lang-toggle button{color:var(--g-green-2)}.lang-toggle button.active{background:var(--g-mint)!important;color:var(--g-green)!important;background-image:none!important}.dashboard-header .lang-toggle button.active,.mbk-header-actions .lang-toggle button.active,.profile-pref .lang-toggle button.active,.golobe-nav .lang-toggle button.active{color:var(--g-green)!important}.deal-card,.dash-stat,.profile-card,.mbk-pass,.quick-tile,.flight-card,.booking-list-card{border-radius:14px}.dash-eyebrow{color:var(--gold);letter-spacing:3px}.dash-eyebrow.gold{color:var(--g-mint-strong)}.golobe-nav{z-index:50;border-bottom:1px solid var(--border);background:#fff;justify-content:space-between;align-items:center;gap:18px;padding:16px 28px;display:flex;position:sticky;top:0}.golobe-nav.transparent{background:0 0;border-bottom:none;position:absolute;top:0;left:0;right:0}.golobe-nav-left,.golobe-nav-right,.golobe-links{align-items:center;gap:22px;display:flex}.golobe-links a{color:var(--g-green-2);border-bottom:2px solid #0000;align-items:center;gap:7px;padding:6px 2px;font-size:14px;font-weight:600;text-decoration:none;display:inline-flex}.golobe-links a:hover{color:var(--g-mint-strong)}.golobe-links a.active{border-bottom-color:var(--g-mint);color:var(--g-green)}.golobe-nav.transparent .golobe-links a,.golobe-nav.transparent .golobe-brand{color:#fff}.golobe-nav.transparent .golobe-links a:hover{color:var(--g-mint)}.golobe-brand{color:var(--g-green);letter-spacing:-.02em;align-items:center;gap:8px;font-size:22px;font-weight:800;display:inline-flex}.golobe-brand .brand-dot{background:var(--g-mint);width:26px;height:26px;color:var(--g-green);border-radius:50%;justify-content:center;align-items:center;display:inline-flex}.golobe-nav.transparent .golobe-brand .brand-dot{background:var(--g-mint);color:var(--g-green)}.golobe-auth-link{color:var(--g-green-2);cursor:pointer;background:0 0;border:none;font-size:14px;font-weight:600;text-decoration:none}.golobe-nav.transparent .golobe-auth-link{color:#fff}.golobe-btn-signup{background:var(--g-mint);color:var(--g-green);cursor:pointer;border:none;border-radius:8px;padding:10px 20px;font-size:14px;font-weight:700}.golobe-btn-signup:hover{background:var(--g-mint-strong)}.golobe-user{position:relative}.golobe-user-btn{cursor:pointer;color:inherit;font:inherit;background:0 0;border:none;align-items:center;gap:9px;display:inline-flex}.golobe-user-avatar{background:var(--g-mint);width:34px;height:34px;color:var(--g-green);border-radius:50%;justify-content:center;align-items:center;font-size:15px;font-weight:800;display:flex}.golobe-user-name{font-size:14px;font-weight:600}.golobe-nav.transparent .golobe-user-name{color:#fff}.golobe-menu{border:1px solid var(--border);min-width:190px;box-shadow:var(--shadow-md);z-index:60;background:#fff;border-radius:12px;padding:6px;position:absolute;top:calc(100% + 10px);right:0}.golobe-menu button{text-align:left;cursor:pointer;width:100%;color:var(--g-ink);background:0 0;border:none;border-radius:8px;align-items:center;gap:10px;padding:10px 12px;font-size:14px;font-weight:600;display:flex}.golobe-menu button:hover{background:var(--g-mint-tint);color:var(--g-green)}.golobe-menu button.danger:hover{color:var(--g-coral-dark);background:#fdecea}.golobe-menu-sep{background:var(--border-light);height:1px;margin:4px 6px}@media (width<=640px){.golobe-nav{padding:12px 16px}.golobe-links{gap:12px}.golobe-links a span.lbl,.golobe-user-name{display:none}}.golobe-home{background:var(--g-paper);min-height:100vh}.golobe-hero{background:linear-gradient(#0000008c 0%,#0000 100%),url(https://images.unsplash.com/photo-1507525428034-b723cf961d3e?q=80&w=1600&auto=format&fit=crop) 50%/cover no-repeat;padding:150px 20px 190px;position:relative;overflow:hidden}.golobe-hero-inner{text-align:center;color:#fff;max-width:1180px;margin:0 auto}.golobe-hero .kick{text-shadow:0 2px 18px #00000059;margin:0;font-size:30px;font-weight:700}.golobe-hero h1{letter-spacing:.06em;text-transform:uppercase;text-shadow:0 4px 26px #0006;margin:6px 0 10px;font-size:clamp(44px,8vw,92px);font-weight:800}.golobe-hero .sub{opacity:.95;text-shadow:0 2px 14px #00000059;margin:0;font-size:18px;font-weight:600}.golobe-searchwrap{z-index:5;max-width:1180px;margin:-120px auto 0;padding:0 20px;position:relative}.golobe-search{box-shadow:var(--shadow-lg);border:1px solid var(--border);background:#fff;border-radius:16px;padding:22px}.golobe-tabs{gap:10px;margin-bottom:18px;display:flex}.golobe-tab{border:1px solid var(--border);color:var(--text-muted);cursor:pointer;background:#fff;border-radius:8px;align-items:center;gap:8px;padding:12px 20px;font-weight:700;display:inline-flex}.golobe-tab.active{border-color:var(--g-mint);color:var(--g-mint-strong);box-shadow:0 0 0 1px var(--g-mint) inset}.golobe-triptype{gap:22px;margin-bottom:14px;display:flex}.golobe-triptype label{color:var(--text-secondary);cursor:pointer;align-items:center;gap:8px;font-size:14px;font-weight:600;display:inline-flex}.golobe-triptype input{accent-color:var(--g-mint-strong)}.golobe-fields{grid-template-columns:1.6fr 1fr 1fr;align-items:stretch;gap:16px;display:grid}.golobe-fieldgroup{border:1px solid var(--border);border-radius:10px;gap:10px;padding:14px 16px;display:flex;position:relative}.golobe-fieldgroup>.glabel{letter-spacing:.4px;color:var(--text-muted);text-transform:uppercase;background:#fff;padding:0 6px;font-size:11px;font-weight:700;position:absolute;top:-9px;left:14px}.golobe-field{flex-direction:column;flex:1;min-width:0;display:flex}.golobe-field label{color:var(--text-muted);margin-bottom:3px;font-size:11px}.golobe-field input,.golobe-field select{color:var(--g-ink);background:0 0;border:none;outline:none;width:100%;padding:0;font-size:18px;font-weight:700}.golobe-field input::placeholder{color:#c2ccc6}.golobe-field .hint{color:var(--text-muted);margin-top:2px;font-size:12px}.golobe-swap{background:var(--g-mint-tint);width:42px;height:42px;color:var(--g-green-2);cursor:pointer;border:none;border-radius:50%;flex:none;justify-content:center;align-self:center;align-items:center;display:flex}.golobe-swap:hover{background:var(--g-mint)}.golobe-search-actions{justify-content:flex-end;margin-top:18px;display:flex}.golobe-search-actions .flight-search-button{width:auto;padding:13px 26px}@media (width<=860px){.golobe-fields{grid-template-columns:1fr}.golobe-hero{padding:120px 18px 170px}.golobe-searchwrap{margin-top:-110px}}.golobe-footer{background:var(--g-green);color:#cfe6db;margin-top:60px}.golobe-footer-inner{grid-template-columns:1.4fr 1fr 1fr 1fr;gap:30px;max-width:1180px;margin:0 auto;padding:46px 24px 20px;display:grid}.golobe-foot-brand .golobe-brand{color:#fff}.golobe-foot-brand p{color:#9db8ac;max-width:260px;margin:12px 0 0;font-size:13.5px;line-height:1.6}.golobe-foot-col h4{color:#fff;margin:0 0 14px;font-size:15px;font-weight:700}.golobe-foot-col a{color:#a9c3b7;cursor:pointer;margin-bottom:10px;font-size:13.5px;text-decoration:none;display:block}.golobe-foot-col a:hover{color:var(--g-mint)}.golobe-foot-bottom{color:#8fab9f;border-top:1px solid #ffffff1a;flex-wrap:wrap;justify-content:space-between;gap:12px;max-width:1180px;margin:0 auto;padding:16px 24px 6px;font-size:12.5px;display:flex}.golobe-foot-bottom a{color:#cfe6db;text-decoration:none}@media (width<=760px){.golobe-footer-inner{grid-template-columns:1fr 1fr}}@media (width<=440px){.golobe-footer-inner{grid-template-columns:1fr}}.golobe-shell{background:var(--g-paper);flex-direction:column;min-height:100vh;display:flex}.golobe-main{flex:1}.golobe-popular{max-width:1180px;margin:70px auto 0;padding:0 24px}.golobe-pop-head h2{color:var(--g-green);margin:0;font-size:30px;font-weight:800}.golobe-pop-head p{color:var(--text-muted);margin:6px 0 22px}.golobe-pop-grid{grid-template-columns:repeat(4,1fr);gap:18px;display:grid}.golobe-pop-card{cursor:pointer;color:#fff;text-align:left;background-position:50%;background-size:cover;border:none;border-radius:16px;flex-direction:column;justify-content:flex-end;align-items:flex-start;height:220px;padding:18px;transition:transform .2s,box-shadow .2s;display:flex;position:relative;overflow:hidden}.golobe-pop-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-4px)}.golobe-pop-city{font-size:20px;font-weight:800}.golobe-pop-code{opacity:.9;letter-spacing:1px;align-items:center;gap:6px;font-size:13px;font-weight:700;display:inline-flex}@media (width<=860px){.golobe-pop-grid{grid-template-columns:1fr 1fr}}@media (width<=440px){.golobe-pop-grid{grid-template-columns:1fr}}.golobe-main .dashboard-header,.golobe-main .search-page-header,.golobe-main .profile-topbar,.golobe-main .seat-selection-header,.golobe-main .flight-details-header{display:none!important}.golobe-main .mbk-header-actions .lang-toggle{display:none}.golobe-main .dashboard-page,.golobe-main .search-flights-page,.golobe-main .seat-selection-page,.golobe-main .flight-details-page,.golobe-main .passenger-details-page,.golobe-main .booking-page,.golobe-main .payment-page,.golobe-main .my-bookings-page,.golobe-main .mbk-page,.golobe-main .profile-page,.golobe-main .booking-details-page,.golobe-main .booking-confirmation-page{min-height:auto}.auth-page,.login-page,.register-page{justify-content:center;align-items:center;min-height:100vh;display:flex;background:linear-gradient(120deg,#0c261bd1 0%,#14352a8c 55%,#11221140 100%),url(https://images.unsplash.com/photo-1436491865332-7a61a109cc05?q=80&w=1600&auto=format&fit=crop) 50%/cover no-repeat!important;padding:40px 20px!important}.auth-card,.login-card,.register-card{width:min(100%,440px);background:#fff!important;border:none!important;border-radius:18px!important;padding:36px 34px!important;box-shadow:0 30px 70px #0c261b59!important}.auth-logo{background:var(--g-mint);border-radius:50%;justify-content:center;align-items:center;width:56px;height:56px;margin:0 auto 4px;font-size:26px;display:flex}.auth-brand-icon,.login-brand-icon,.register-brand-icon{background:var(--g-mint)!important;color:var(--g-green)!important;border-radius:50%!important}.auth-card h1,.login-card h1,.register-card h1{color:var(--g-green)!important;margin-top:10px!important;font-size:28px!important;font-weight:800!important}.auth-card>p,.auth-subtitle{color:var(--text-muted)!important;font-size:13.5px!important}.auth-page .form-group input,.auth-page .form-group select,.login-page .form-group input,.register-page .form-group input{border-radius:10px!important}.auth-page .form-group input:focus,.login-page .form-group input:focus,.register-page .form-group input:focus{border-color:var(--g-mint-strong)!important;box-shadow:0 0 0 3px #8dd3ba47!important}.auth-button{width:100%;border-radius:10px!important;padding:13px!important}.auth-footer a,.login-footer a,.register-footer a{color:var(--g-mint-strong)!important;font-weight:700!important}.auth-footer a:hover,.login-footer a:hover,.register-footer a:hover{color:var(--gold-dark)!important}.golobe-hero{background:linear-gradient(#0000008c 0%,#0000 100%),url(https://images.unsplash.com/photo-1476514525535-07fb3b4ae5f1?q=80&w=1600&auto=format&fit=crop) 50% 40%/cover no-repeat;padding:170px 20px 210px}.gl-sec-title h2{color:#0b1a12;margin:0 0 8px;font-size:32px;font-weight:700}.gl-sec-title p{color:#55635c;margin:0 0 26px;font-size:15px}.gl-bigcards{grid-template-columns:1fr 1fr;gap:22px;max-width:1180px;margin:72px auto 0;padding:0 24px;display:grid}.gl-bigcard{color:#fff;background-position:50%;background-size:cover;border-radius:20px;align-items:flex-end;height:420px;display:flex;position:relative;overflow:hidden}.gl-bigcard:after{content:"";background:linear-gradient(#0c121200 45%,#0c1212cc 100%);position:absolute;inset:0}.gl-bigcard-body{z-index:1;text-align:center;width:100%;padding:28px 24px;position:relative}.gl-bigcard-body h3{margin:0 0 8px;font-size:38px;font-weight:800}.gl-bigcard-body p{opacity:.92;margin:0 0 18px;max-width:360px;margin-inline:auto;font-size:14.5px}.gl-bigcard-btn{background:var(--g-mint);color:var(--g-green);cursor:pointer;border:none;border-radius:8px;align-items:center;gap:8px;padding:12px 26px;font-size:14px;font-weight:700;display:inline-flex}.gl-bigcard-btn:hover{background:var(--g-mint-strong)}@media (width<=760px){.gl-bigcards{grid-template-columns:1fr}.gl-bigcard{height:340px}}.gl-reviews{max-width:1180px;margin:72px auto 0;padding:0 24px}.gl-review-grid{grid-template-columns:repeat(3,1fr);gap:20px;display:grid}.gl-review-card{border:1px solid var(--border);box-shadow:var(--shadow-sm);background:#fff;border-radius:16px;padding:24px}.gl-review-stars{color:#f6b100;letter-spacing:2px;margin-bottom:10px;font-size:15px}.gl-review-text{color:var(--text-secondary);margin:0 0 18px;font-size:14.5px;line-height:1.6}.gl-review-author{align-items:center;gap:12px;display:flex}.gl-review-avatar{background:var(--g-mint);width:42px;height:42px;color:var(--g-green);border-radius:50%;justify-content:center;align-items:center;font-weight:800;display:flex}.gl-review-author strong{color:var(--g-green);font-size:14px;display:block}.gl-review-author span{color:var(--text-muted);font-size:12.5px}@media (width<=860px){.gl-review-grid{grid-template-columns:1fr}}.gl-auth{background:#fff;align-items:stretch;min-height:100vh;display:flex}.gl-auth-photo{background-position:50%;background-size:cover;border-radius:26px;flex:0 0 42%;max-width:520px;margin:22px;position:relative;overflow:hidden}.gl-auth-photo:after{content:"";background:linear-gradient(160deg,#0c261b26,#0c261b59);position:absolute;inset:0}.gl-auth-body{flex-direction:column;flex:1;width:100%;max-width:720px;margin:0 auto;padding:40px clamp(22px,6vw,96px);display:flex}.gl-auth-top{justify-content:space-between;align-items:center;margin-bottom:clamp(28px,6vh,60px);display:flex}.gl-auth-brand{color:var(--g-green);letter-spacing:-.02em;align-items:center;gap:8px;font-size:22px;font-weight:800;display:inline-flex}.gl-auth-brand .brand-dot{background:var(--g-mint);width:26px;height:26px;color:var(--g-green);border-radius:50%;justify-content:center;align-items:center;display:inline-flex}.gl-auth h2{color:#0b1a12;margin:0 0 10px;font-size:clamp(28px,4vw,38px);font-weight:800}.gl-auth-sub{color:var(--text-muted);margin:0 0 28px;font-size:15px}.gl-auth-err{color:#b02525;background:#fdecec;border:1px solid #f3b4b4;border-radius:10px;margin-bottom:18px;padding:11px 14px;font-size:14px}.gl-field{margin-bottom:20px}.gl-field label{color:#2b3a33;margin-bottom:7px;font-size:13px;font-weight:600;display:block}.gl-field input{width:100%;color:var(--g-ink);background:#fff;border:1px solid #d7e0da;border-radius:10px;padding:14px 16px;font-size:15px;transition:border-color .15s,box-shadow .15s}.gl-field input:focus{border-color:var(--g-mint-strong);outline:none;box-shadow:0 0 0 3px #8dd3ba47}.gl-field input::placeholder{color:#aab6b0}.gl-forgot{text-align:right;margin:-8px 0 6px}.gl-forgot button{color:var(--g-coral-dark);cursor:pointer;background:0 0;border:none;font-size:13.5px;font-weight:600}.gl-auth-btn{background:var(--g-mint);width:100%;color:var(--g-green);cursor:pointer;border:none;border-radius:10px;margin-top:14px;padding:15px;font-size:15px;font-weight:800;transition:transform .15s,background .15s;box-shadow:0 12px 24px #8dd3ba66}.gl-auth-btn:hover:not(:disabled){background:var(--g-mint-strong);transform:translateY(-2px)}.gl-auth-btn:disabled{opacity:.6;cursor:default}.gl-auth-switch{text-align:center;color:var(--text-secondary);margin-top:18px;font-size:14px;font-weight:500}.gl-auth-switch button{color:var(--g-coral-dark);cursor:pointer;background:0 0;border:none;font-size:14px;font-weight:700}.gl-or{color:var(--text-muted);align-items:center;gap:14px;margin:26px 0 18px;font-size:13px;display:flex}.gl-or:before,.gl-or:after{content:"";background:var(--border);flex:1;height:1px}.gl-social{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.gl-social button{cursor:pointer;color:#2b3a33;background:#fff;border:1px solid #d7e0da;border-radius:10px;justify-content:center;align-items:center;gap:8px;padding:12px;font-size:13.5px;font-weight:600;display:inline-flex}.gl-social button:hover{border-color:var(--g-mint-strong);background:var(--g-mint-tint)}@media (width<=900px){.gl-auth-photo{display:none}.gl-auth-body{max-width:480px}}.golobe-main .booking-details-page{background:var(--g-paper)}.booking-details-container{width:min(1000px,100% - 40px);margin:0 auto;padding:26px 0 70px}.booking-details-header{color:#fff;border-radius:20px;margin-bottom:22px;padding:24px 28px;background:linear-gradient(140deg, var(--navy-light), var(--navy))!important}.booking-details-back{color:#fff;cursor:pointer;background:#ffffff24;border:none;border-radius:9px;align-items:center;gap:7px;margin-bottom:16px;padding:8px 14px;font-weight:600;display:inline-flex}.booking-details-back:hover{background:#ffffff3d}.booking-details-heading{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.booking-details-eyebrow{color:#cdb877;letter-spacing:2px;text-transform:uppercase;font-size:11px;font-weight:700;display:block}.booking-details-heading h1{color:#fff;margin:8px 0 4px;font-size:26px;font-weight:800}.booking-details-heading p{color:#d7e2ee;margin:0;font-size:14px}.booking-details-heading p strong{color:#fff;letter-spacing:1px}.booking-details-status{text-transform:capitalize;border-radius:999px;padding:6px 14px;font-size:12px;font-weight:700}.booking-details-status.confirmed{color:#15803d;background:#dcfce7}.booking-details-status.completed{color:#fff;background:#ffffff29}.booking-details-status.pending{color:#b45309;background:#fef3c7}.booking-details-status.cancelled{color:#b91c1c;background:#fee2e2}.booking-details-warning,.booking-details-cancelled-notice{border-radius:14px;align-items:center;gap:14px;margin-bottom:20px;padding:16px 18px;display:flex}.booking-details-warning{color:#92400e;background:#fffbeb;border:1px solid #fde68a}.booking-details-cancelled-notice{color:#b42318;background:#fef2f2;border:1px solid #fecaca}.booking-details-warning strong,.booking-details-cancelled-notice strong{display:block}.booking-details-warning p,.booking-details-cancelled-notice p{opacity:.85;margin:2px 0 0;font-size:13px}.booking-details-warning button{background:var(--g-mint);color:var(--g-green);cursor:pointer;white-space:nowrap;border:none;border-radius:9px;margin-left:auto;padding:9px 16px;font-weight:700}.booking-details-card{border:1px solid var(--border);box-shadow:var(--shadow-sm);background:#fff;border-radius:16px;margin-bottom:18px;padding:22px 24px}.booking-details-card-header{justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:18px;display:flex}.booking-details-section-label{color:var(--gold);letter-spacing:2px;text-transform:uppercase;font-size:11px;font-weight:700;display:block}.booking-details-card-header h2{color:var(--navy);margin:6px 0 0;font-size:19px;font-weight:800}.booking-details-confirmed{color:#15803d;background:#dcfce7;border-radius:999px;align-items:center;gap:6px;padding:6px 13px;font-size:12px;font-weight:700;display:inline-flex}.booking-details-route{grid-template-columns:auto 1fr auto;align-items:center;gap:20px;padding:6px 0 16px;display:grid}.booking-details-route strong{color:var(--navy);letter-spacing:1px;font-size:30px;font-weight:800;line-height:1;display:block}.booking-details-route span{letter-spacing:1.5px;text-transform:uppercase;color:var(--text-muted);margin-top:5px;font-size:10.5px;display:block}.booking-details-arrival{text-align:right}.booking-details-route-line{color:var(--gold);align-items:center;gap:6px;display:flex}.booking-details-route-line>div{background:repeating-linear-gradient(90deg, var(--g-mint-strong) 0 6px, transparent 6px 12px);opacity:.6;flex:1;height:2px}.booking-details-flight-info{border-top:1px solid var(--border-light);flex-wrap:wrap;gap:22px;padding-top:14px;display:flex}.booking-details-flight-info>div{color:var(--text-secondary);align-items:center;gap:8px;font-size:14px;font-weight:600;display:inline-flex}.booking-details-flight-info svg{color:var(--g-mint-strong)}.booking-details-passengers{flex-direction:column;gap:12px;display:flex}.booking-details-passenger{border:1px solid var(--border-light);background:#fbfdfc;border-radius:12px;grid-template-columns:auto 1.4fr 1fr 1fr 1fr;align-items:center;gap:16px;padding:14px 16px;display:grid}.booking-details-user-icon{background:var(--g-mint-tint);width:40px;height:40px;color:var(--g-green-2);border-radius:10px;justify-content:center;align-items:center;display:flex}.booking-details-passenger-main strong{color:var(--navy);font-size:15px;font-weight:700;display:block}.booking-details-passenger-main span{color:var(--text-muted);margin-top:2px;font-size:12.5px;display:block}.booking-details-passenger>div:not(.booking-details-passenger-main):not(.booking-details-user-icon){flex-direction:column;gap:3px;display:flex}.booking-details-passenger>div span{color:var(--text-muted);text-transform:uppercase;letter-spacing:.3px;font-size:11px}.booking-details-passenger>div strong{color:var(--text);font-size:14px;font-weight:650}@media (width<=720px){.booking-details-passenger{grid-template-columns:auto 1fr 1fr}}.booking-details-contact{grid-template-columns:1fr 1fr;gap:16px;display:grid}.booking-details-contact>div{flex-direction:column;gap:4px;display:flex}.booking-details-contact span{color:var(--text-muted);text-transform:uppercase;letter-spacing:.3px;font-size:11px}.booking-details-contact strong{color:var(--text);font-size:15px;font-weight:650}.booking-details-payment-status{text-transform:capitalize;border-radius:999px;padding:6px 14px;font-size:12px;font-weight:700}.booking-details-payment-status.paid,.booking-details-payment-status.confirmed{color:#15803d;background:#dcfce7}.booking-details-payment-status.pending{color:#b45309;background:#fef3c7}.booking-details-payment-status.failed{color:#b91c1c;background:#fee2e2}.booking-details-fare{flex-direction:column;gap:10px;padding:4px 0 14px;display:flex}.booking-details-fare>div{justify-content:space-between;font-size:14px;display:flex}.booking-details-fare span{color:var(--text-muted)}.booking-details-fare strong{color:var(--text);font-variant-numeric:tabular-nums}.booking-details-total{border-top:1px solid var(--border-light);justify-content:space-between;align-items:center;padding-top:14px;display:flex}.booking-details-total span{color:var(--text-secondary);font-weight:600}.booking-details-total strong{color:var(--navy);font-variant-numeric:tabular-nums;font-size:22px;font-weight:800}.booking-details-actions{flex-wrap:wrap;gap:12px;display:flex}.booking-details-actions button{cursor:pointer;border-radius:10px;align-items:center;gap:8px;padding:12px 20px;font-size:14px;font-weight:700;display:inline-flex}.booking-action-secondary,.booking-action-refresh{border:1px solid var(--border);color:var(--text);background:#fff}.booking-action-secondary:hover,.booking-action-refresh:hover{border-color:var(--g-mint-strong);color:var(--g-green)}.booking-action-danger{color:#b91c1c;background:#fff;border:1px solid #fecaca}.booking-action-danger:hover{background:#fef2f2}.booking-cancel-overlay{z-index:100;background:#0c261b80;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.booking-cancel-modal{text-align:center;max-width:420px;box-shadow:var(--shadow-lg);background:#fff;border-radius:18px;padding:30px}.booking-cancel-icon{color:#b91c1c;background:#fee2e2;border-radius:50%;justify-content:center;align-items:center;width:64px;height:64px;margin:0 auto 14px;display:flex}.booking-cancel-modal h2{color:var(--navy);margin:0 0 8px;font-size:20px}.booking-cancel-modal p{color:var(--text-muted);margin:0 0 22px;font-size:14px}.booking-cancel-actions{gap:12px;display:flex}.booking-cancel-actions button{cursor:pointer;border-radius:10px;flex:1;padding:12px;font-weight:700}.booking-cancel-back{border:1px solid var(--border);color:var(--text);background:#fff}.booking-cancel-confirm{color:#fff;background:#b91c1c;border:none}.golobe-pop-country{opacity:.95;align-items:center;gap:5px;font-size:12px;font-weight:600;display:inline-flex;position:absolute;top:16px;left:16px}.golobe-pop-from{opacity:.95;margin-top:3px;font-size:13px}.golobe-pop-from strong{font-size:16px}.golobe-pop-arrow{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#fff3;border-radius:50%;justify-content:center;align-items:center;width:34px;height:34px;display:flex;position:absolute;bottom:16px;right:16px}.gl-hotels{max-width:1180px;margin:72px auto 0;padding:0 24px}.gl-places-grid{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.gl-place-card{border:1px solid var(--border);box-shadow:var(--shadow-sm);cursor:pointer;text-align:left;background:#fff;border-radius:16px;align-items:center;gap:16px;padding:14px;transition:transform .18s,box-shadow .18s,border-color .18s;display:flex}.gl-place-card:hover{box-shadow:var(--shadow-md);border-color:var(--g-mint-strong);transform:translateY(-3px)}.gl-place-card img{object-fit:cover;border-radius:10px;flex:none;width:84px;height:84px}.gl-place-info strong{color:var(--navy);font-size:16px;font-weight:700;display:block}.gl-place-info span{color:var(--text-muted);margin-top:4px;font-size:13px;display:block}.gl-dot{color:var(--g-mint-strong);margin:0 4px;font-style:normal}@media (width<=860px){.gl-places-grid{grid-template-columns:1fr 1fr}}@media (width<=520px){.gl-places-grid{grid-template-columns:1fr}}.gl-stay-hero{background:linear-gradient(90deg,#0c261b99 10%,#0c261b00 78%),url(https://images.unsplash.com/photo-1566073771259-6a8506099945?q=80&w=1600&auto=format&fit=crop) 50%/cover no-repeat!important}.golobe-hero.gl-stay-hero .golobe-hero-inner{text-align:left;max-width:1180px}.gl-stay-fields{grid-template-columns:1.4fr 1.3fr 1fr}.gl-hotel-grid{grid-template-columns:repeat(3,1fr);gap:20px;display:grid}.gl-hotel-card{text-align:left;border:1px solid var(--border);cursor:pointer;box-shadow:var(--shadow-sm);background:#fff;border-radius:16px;flex-direction:column;padding:0;transition:transform .18s,box-shadow .18s;display:flex;overflow:hidden}.gl-hotel-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-4px)}.gl-hotel-img{background-position:50%;background-size:cover;height:180px;position:relative}.gl-hotel-badge{background:var(--g-coral);color:#fff;border-radius:7px;padding:4px 10px;font-size:12px;font-weight:700;position:absolute;top:12px;left:12px}.gl-hotel-badge.static{margin-bottom:8px;display:inline-block;position:static}.gl-hotel-body{flex-direction:column;gap:4px;padding:16px;display:flex}.gl-hotel-rating{color:#f6b100;align-items:center;gap:5px;font-size:13.5px;font-weight:700;display:inline-flex}.gl-hotel-rating span{color:var(--text-muted);font-weight:500}.gl-hotel-body strong{color:var(--navy);font-size:16px;font-weight:700}.gl-hotel-city{color:var(--text-muted);align-items:center;gap:5px;font-size:13px;display:inline-flex}.gl-hotel-price{color:var(--g-coral-dark);margin-top:6px;font-size:18px;font-weight:800}.gl-hotel-price small{color:var(--text-muted);font-size:12px;font-weight:500}@media (width<=860px){.gl-hotel-grid{grid-template-columns:1fr 1fr}}@media (width<=560px){.gl-hotel-grid,.gl-stay-fields{grid-template-columns:1fr}}.gl-hres-page{background:var(--g-paper);min-height:60vh}.gl-hres-container{width:min(1120px,100% - 40px);margin:0 auto;padding:28px 0 70px}.gl-hres-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:22px;display:flex}.gl-sec-eyebrow{color:var(--gold);letter-spacing:2px;text-transform:uppercase;font-size:11px;font-weight:700}.gl-hres-head h1{color:var(--navy);margin:6px 0 4px;font-size:28px;font-weight:800}.gl-hres-head p{color:var(--text-muted);margin:0}.gl-hres-sort{color:var(--text-secondary);align-items:center;gap:8px;font-size:14px;display:inline-flex}.gl-hres-sort select{border:1px solid var(--border);color:var(--g-ink);background:#fff;border-radius:9px;padding:9px 12px;font-weight:600}.gl-hres-list{flex-direction:column;gap:18px;display:flex}.gl-hotel-row{border:1px solid var(--border);box-shadow:var(--shadow-sm);background:#fff;border-radius:16px;display:flex;overflow:hidden}.gl-hotel-row-img{background-position:50%;background-size:cover;flex:0 0 300px;min-height:220px;position:relative}.gl-hotel-row-body{flex:1;gap:16px;padding:18px 20px;display:flex}.gl-hotel-row-main{flex:1;min-width:0}.gl-hotel-row-main h3{color:var(--navy);margin:0 0 4px;font-size:20px;font-weight:800}.gl-hotel-row-addr{color:var(--text-muted);align-items:center;gap:5px;margin:0 0 12px;font-size:13px;display:flex}.gl-hotel-chips{flex-wrap:wrap;gap:7px;margin-bottom:12px;display:flex}.gl-hotel-chips span{background:var(--g-mint-tint);color:var(--g-green-2);border-radius:999px;padding:4px 10px;font-size:12px;font-weight:600}.gl-chip-more{color:var(--g-coral-dark)!important;background:0 0!important;font-weight:700!important}.gl-hotel-row-rating{color:#f6b100;align-items:center;gap:6px;display:inline-flex}.gl-hotel-row-rating strong{color:var(--navy)}.gl-hotel-row-rating span{color:var(--text-muted);font-size:13px}.gl-hotel-row-price{border-left:1px solid var(--border-light);text-align:right;flex-direction:column;flex:0 0 190px;align-items:flex-end;gap:2px;padding-left:18px;display:flex}.gl-price-was{color:var(--text-light);font-size:14px;text-decoration:line-through}.gl-price-now{color:var(--g-coral-dark);font-size:24px;font-weight:800}.gl-price-unit{color:var(--text-muted);font-size:13px}.gl-price-tax{color:var(--text-light);font-size:11.5px}.gl-rooms-left{color:#b45309;margin-top:6px;font-size:12px;font-weight:700}.gl-hotel-view{background:var(--g-mint);color:var(--g-green);cursor:pointer;border:none;border-radius:9px;align-items:center;gap:6px;margin-top:10px;padding:10px 16px;font-weight:700;display:inline-flex}.gl-hotel-view:hover{background:var(--g-mint-strong)}.gl-hres-empty{text-align:center;color:var(--text-muted);padding:60px 20px}.gl-hres-empty-icon{margin-bottom:12px;font-size:44px}@media (width<=760px){.gl-hotel-row{flex-direction:column}.gl-hotel-row-img{flex-basis:200px}.gl-hotel-row-body{flex-direction:column}.gl-hotel-row-price{border-left:none;border-top:1px solid var(--border-light);text-align:left;flex-basis:auto;align-items:flex-start;padding-top:14px;padding-left:0}}.gl-hdetail-page{background:var(--g-paper)}.gl-hdetail-container{width:min(1120px,100% - 40px);margin:0 auto;padding:22px 0 70px}.gl-back-link{color:var(--g-green-2);cursor:pointer;background:0 0;border:none;align-items:center;gap:7px;margin-bottom:16px;font-weight:600;display:inline-flex}.gl-back-link:hover{color:var(--g-mint-strong)}.gl-gallery{gap:10px;margin-bottom:26px;display:grid}.gl-gallery-main{background-position:50%;background-size:cover;border-radius:18px;height:380px}.gl-gallery-thumbs{grid-template-columns:repeat(4,1fr);gap:10px;display:grid}.gl-gallery-thumb{cursor:pointer;background-position:50%;background-size:cover;border:2px solid #0000;border-radius:11px;height:84px}.gl-gallery-thumb.active{border-color:var(--g-mint-strong)}.gl-hdetail-grid{grid-template-columns:1fr 320px;align-items:start;gap:26px;display:grid}.gl-hdetail-head{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:22px;display:flex}.gl-hdetail-head h1{color:var(--navy);margin:0 0 6px;font-size:30px;font-weight:800}.gl-hdetail-addr{color:var(--text-muted);align-items:center;gap:6px;margin:0;display:flex}.gl-hdetail-rating{text-align:right;color:var(--text-secondary);align-items:center;gap:10px;font-size:13px;display:inline-flex}.gl-rating-badge{background:var(--g-green);color:#fff;border-radius:10px;align-items:center;gap:5px;padding:8px 12px;font-size:15px;font-weight:800;display:inline-flex}.gl-hdetail-sec{margin-top:26px}.gl-hdetail-sec h2{color:var(--navy);margin:0 0 14px;font-size:20px;font-weight:800}.gl-amen-grid{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.gl-amen{color:var(--text-secondary);align-items:center;gap:8px;font-size:14px;display:flex}.gl-amen svg{color:var(--g-mint-strong)}.gl-rooms{flex-direction:column;gap:12px;display:flex}.gl-room{border:1px solid var(--border);background:#fff;border-radius:14px;justify-content:space-between;align-items:center;gap:16px;padding:16px 18px;display:flex}.gl-room-info strong{color:var(--navy);font-size:15.5px;font-weight:700;display:block}.gl-room-info span{color:var(--text-muted);align-items:center;gap:5px;margin-top:3px;font-size:13px;display:inline-flex}.gl-room-cta{align-items:center;gap:14px;display:flex}.gl-room-price{color:var(--g-coral-dark);white-space:nowrap;font-size:17px;font-weight:800}.gl-room-price small{color:var(--text-muted);font-size:12px;font-weight:500}.gl-room-cta .flight-search-button{width:auto;padding:11px 18px}.gl-hdetail-side{position:sticky;top:90px}.gl-book-card{border:1px solid var(--border);box-shadow:var(--shadow-md);text-align:right;background:#fff;border-radius:16px;padding:22px}.gl-book-price{color:var(--g-coral-dark);font-size:28px;font-weight:800}.gl-book-price small{color:var(--text-muted);font-size:13px;font-weight:500}.gl-book-rating{color:#f6b100;align-items:center;gap:6px;margin:10px 0 16px;font-weight:700;display:inline-flex}.gl-book-btn{justify-content:center;width:100%}@media (width<=860px){.gl-hdetail-grid{grid-template-columns:1fr}.gl-amen-grid{grid-template-columns:1fr 1fr}.gl-hdetail-side{position:static}.gl-gallery-main{height:260px}}.gl-hbook-page{background:var(--g-paper);min-height:70vh}.gl-hbook-container{width:min(1000px,100% - 40px);margin:0 auto;padding:26px 0 70px}.gl-hbook-grid{grid-template-columns:1fr 340px;align-items:start;gap:24px;display:grid}.gl-hbook-form{border:1px solid var(--border);box-shadow:var(--shadow-sm);background:#fff;border-radius:16px;padding:26px}.gl-hbook-form h2{color:var(--navy);margin:0 0 18px;font-size:20px;font-weight:800}.gl-hbook-form textarea{resize:vertical;border:1px solid #d7e0da;border-radius:10px;width:100%;padding:12px 14px;font-family:inherit;font-size:15px}.gl-hbook-form textarea:focus{border-color:var(--g-mint-strong);outline:none;box-shadow:0 0 0 3px #8dd3ba47}.gl-hbook-form .gl-book-btn{margin-top:8px}.gl-hbook-summary{border:1px solid var(--border);box-shadow:var(--shadow-sm);background:#fff;border-radius:16px;position:sticky;top:90px;overflow:hidden}.gl-summary-img{background-position:50%;background-size:cover;height:150px}.gl-summary-body{padding:18px}.gl-summary-body>strong{color:var(--navy);font-size:17px;font-weight:800}.gl-summary-city{color:var(--text-muted);align-items:center;gap:5px;margin:4px 0;font-size:13px;display:inline-flex}.gl-summary-rating{color:#f6b100;align-items:center;gap:6px;font-size:13.5px;font-weight:700;display:inline-flex}.gl-summary-rows{border-top:1px solid var(--border-light);flex-direction:column;gap:10px;margin:16px 0;padding-top:14px;display:flex}.gl-summary-rows>div{justify-content:space-between;gap:10px;font-size:14px;display:flex}.gl-summary-rows span{color:var(--text-muted)}.gl-summary-rows strong{color:var(--text);text-align:right}.gl-summary-total{border-top:1px solid var(--border-light);justify-content:space-between;align-items:center;padding-top:14px;display:flex}.gl-summary-total span{color:var(--text-secondary);font-weight:600}.gl-summary-total strong{color:var(--g-coral-dark);font-size:22px;font-weight:800}@media (width<=800px){.gl-hbook-grid{grid-template-columns:1fr}.gl-hbook-summary{position:static}}.gl-hbook-success{text-align:center;border:1px solid var(--border);max-width:480px;box-shadow:var(--shadow-md);background:#fff;border-radius:20px;margin:60px auto;padding:40px 30px}.gl-success-icon{color:#15803d;background:#dcfce7;border-radius:50%;justify-content:center;align-items:center;width:76px;height:76px;margin:0 auto 14px;display:flex}.gl-demo-badge{background:var(--g-mint-tint);color:var(--g-green-2);letter-spacing:1px;border-radius:6px;margin-bottom:10px;padding:3px 10px;font-size:11px;font-weight:800;display:inline-block}.gl-hbook-success h1{color:var(--navy);margin:0 0 8px;font-size:26px;font-weight:800}.gl-hbook-success>p{color:var(--text-muted);margin:0 0 22px}.gl-success-card{background:var(--g-paper);text-align:left;border-radius:14px;margin-bottom:22px;padding:18px}.gl-success-card>strong{color:var(--navy);font-size:16px;display:block}.gl-success-card>span{color:var(--text-muted);font-size:13.5px}.gl-success-total{border-top:1px solid var(--border);justify-content:space-between;align-items:center;margin-top:14px;padding-top:14px;display:flex}.gl-success-total strong{color:var(--g-coral-dark);font-size:20px;font-weight:800}.gl-hbook-success .flight-search-button{justify-content:center;width:100%}.gl-ticket-card{position:relative;overflow:hidden;border:1px solid var(--border)!important;box-shadow:var(--shadow-sm)!important;border-radius:18px!important;padding:0!important}.gl-ticket-card:before{content:"";background:linear-gradient(var(--g-mint), var(--g-mint-strong));width:5px;position:absolute;top:0;bottom:0;left:0}.gl-ticket-head{border-bottom:1px dashed var(--border);align-items:flex-start;gap:16px;padding:22px 24px 20px;display:flex}.gl-ticket-ic{background:var(--g-mint-tint);width:48px;height:48px;color:var(--g-green-2);border-radius:13px;flex:none;justify-content:center;align-items:center;display:flex}.gl-ticket-head .confirmation-section-label{color:var(--gold);letter-spacing:2px;text-transform:uppercase;font-size:11px;font-weight:700}.gl-ticket-head h2{color:var(--navy);margin:6px 0 4px;font-size:19px;font-weight:800}.gl-ticket-head p{color:var(--text-muted);max-width:520px;margin:0;font-size:13.5px;line-height:1.5}.gl-ticket-actions{grid-template-columns:repeat(3,1fr);padding:18px 24px 22px;gap:12px!important;display:grid!important}.gl-ticket-actions .confirmation-action-button{cursor:pointer;gap:9px;width:100%;border-radius:12px!important;min-height:50px!important;padding:0 16px!important;font-size:14px!important;font-weight:700!important}.gl-ticket-actions .confirmation-action-button:not(.primary){border:1.5px solid var(--border)!important;color:var(--g-green-2)!important;box-shadow:none!important;background:#fff!important}.gl-ticket-actions .confirmation-action-button:not(.primary):hover{border-color:var(--g-mint-strong)!important;background:var(--g-mint-tint)!important;color:var(--g-green)!important}.gl-ticket-actions .confirmation-action-button:disabled{opacity:.55;cursor:default}@media (width<=620px){.gl-ticket-actions{grid-template-columns:1fr}.gl-ticket-head{padding:18px 18px 16px}}.confirmation-status-row{flex-wrap:wrap;gap:16px}.confirmation-status-item{border:1px solid var(--border);background:#fff;border-radius:12px;flex-direction:row;align-items:center;gap:11px;padding:12px 16px}.confirmation-status-item>svg{color:var(--g-mint-strong);flex:none}.confirmation-status-item>div{text-align:left;flex-direction:column;gap:3px;display:flex}.confirmation-status-item span{color:var(--text-muted);letter-spacing:.4px;font-size:10.5px}.confirmation-status-item strong{color:var(--navy);text-transform:capitalize;font-size:14px}.confirmation-seat-summary>div:not(.confirmation-seat-count){align-items:baseline;gap:8px;display:inline-flex}.confirmation-seat-summary>div:not(.confirmation-seat-count) span{color:var(--text-muted)}.confirmation-seat-summary>div:not(.confirmation-seat-count) strong{color:var(--navy);letter-spacing:.5px}.gl-book-card .gl-hotel-badge.static{width:fit-content;margin:0 0 6px auto;display:block}.gl-book-card .gl-price-was{display:block}.confirmation-pnr span{opacity:.68;letter-spacing:1px;margin-right:9px;font-weight:700}.confirmation-passenger-seat span,.confirmation-passenger-class span{color:var(--text-muted);margin-right:5px;font-weight:700}.confirmation-page{background:var(--g-paper)!important}.confirmation-container{width:min(920px,100% - 40px)!important}.confirmation-success-card{position:relative;overflow:hidden;background:linear-gradient(140deg, var(--navy-light), var(--navy))!important;border:none!important;border-radius:22px!important;padding:46px 28px 40px!important;box-shadow:0 26px 54px #0c261b4d!important}.confirmation-success-card:after{content:"";background:radial-gradient(circle,#8dd3ba4d,#0000 70%);border-radius:50%;width:260px;height:260px;position:absolute;top:-80px;right:-70px}.confirmation-success-card>*{z-index:1;position:relative}.confirmation-success-icon{width:84px!important;height:84px!important;color:var(--g-mint)!important;background:#8dd3ba29!important;box-shadow:0 0 0 12px #8dd3ba14!important}.confirmation-eyebrow{color:var(--g-mint)!important;letter-spacing:.2em!important}.confirmation-success-card h1{color:#fff!important;font-size:30px!important;font-weight:800!important}.confirmation-success-card>div p,.confirmation-success-card>div>p{color:#d7e6dd!important}.confirmation-pnr{color:#fff!important;letter-spacing:2px!important;background:#ffffff1f!important;border:1px dashed #ffffff6b!important;border-radius:12px!important}.confirmation-pnr span{color:var(--g-mint)!important;opacity:1!important;margin-right:10px!important}.confirmation-route{align-items:center;grid-template-columns:auto 1fr auto!important;gap:28px!important}.confirmation-route .confirmation-airport:last-of-type{text-align:right}.confirmation-route .confirmation-airport strong{color:var(--navy);letter-spacing:1px;font-size:30px;line-height:1.05}.confirmation-route .confirmation-airport span{color:var(--text-muted);text-transform:uppercase;letter-spacing:1px;font-size:10.5px}.confirmation-route .confirmation-airport p{color:var(--text-secondary);margin:2px 0 10px;font-size:13px}.confirmation-route-line{flex-direction:column;align-items:center;gap:5px;min-width:130px;display:flex;background:0 0!important;width:auto!important;height:auto!important}.confirmation-duration{color:var(--navy);font-size:12.5px;font-weight:700}.confirmation-route-bar{align-items:center;gap:6px;width:100%;display:flex}.confirmation-route-bar .confirmation-route-dot{border-radius:50%;flex:none;width:9px;height:9px;border:2px solid var(--g-mint-strong)!important;background:#fff!important;position:static!important;top:auto!important;left:auto!important;right:auto!important;transform:none!important}.confirmation-route-seg{background:repeating-linear-gradient(90deg, var(--g-mint-strong) 0 5px, transparent 5px 10px);opacity:.65;flex:1;height:2px}.confirmation-route-plane{color:var(--g-green-2);flex:none}.confirmation-route-direct{color:var(--g-mint-strong);text-transform:uppercase;letter-spacing:.5px;font-size:11px;font-weight:700}.confirmation-time,.confirmation-date{align-items:center;gap:6px;display:inline-flex}.confirmation-route .confirmation-airport:last-of-type .confirmation-time,.confirmation-route .confirmation-airport:last-of-type .confirmation-date{flex-direction:row-reverse}@media (width<=620px){.confirmation-route{grid-template-columns:1fr auto 1fr!important;gap:12px!important}.confirmation-route .confirmation-airport strong{font-size:24px}.confirmation-route-line{min-width:70px}}
