.booking-confirmation{background:var(--bg-secondary);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);overflow:hidden;margin:0;width:100%;box-shadow:none;animation:slideIn .5s ease}.bc-hero-image-container{position:relative;width:100%;aspect-ratio:6 / 4;overflow:hidden;border-radius:var(--radius-lg) var(--radius-lg) 0 0;background:#0000004d}.bc-hero-image{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.bc-hero-carousel-controls{position:absolute;top:0;left:0;right:0;bottom:0;pointer-events:none;z-index:2}.bc-image-nav-btn{position:absolute;top:50%;transform:translateY(-50%);background:var(--surface-overlay);backdrop-filter:none;-webkit-backdrop-filter:none;color:var(--text-primary);border:1px solid var(--border-subtle);width:40px;height:40px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;opacity:0;pointer-events:auto;outline:none;-webkit-tap-highlight-color:transparent}.bc-hero-image-container:hover .bc-image-nav-btn{opacity:1}.bc-image-nav-btn:hover{background:#00000080;border-color:#fff3;transform:translateY(-50%) scale(1.05)}.bc-image-nav-btn:active,.bc-image-nav-btn:focus{background:#00000080;border-color:#fff3;outline:none;-webkit-tap-highlight-color:transparent}.bc-image-nav-prev{left:12px}.bc-image-nav-next{right:12px}.bc-image-dots,.bc-image-dot,.bc-image-dot:hover,.bc-image-dot.active{display:none}.bc-hero-overlay{position:absolute;bottom:var(--space-4);left:var(--space-4);right:auto;max-width:calc(100% - var(--space-8));padding:var(--space-4) var(--space-6);background:#14141499;backdrop-filter:none;-webkit-backdrop-filter:none;border:1px solid var(--border-subtle);border-radius:var(--radius-xl);display:flex;justify-content:flex-start;align-items:flex-start;gap:var(--space-4);z-index:1;box-shadow:none}.bc-hero-content{flex:1;min-width:0}.bc-hero-hotel-name{font-size:calc(var(--text-2xl) * 1.2);font-weight:var(--font-bold);color:var(--text-primary);margin:0 0 var(--space-1) 0;text-shadow:0 2px 4px rgba(0,0,0,.2);letter-spacing:-.5px;line-height:1.1}.bc-hero-location{display:flex;align-items:center;gap:var(--space-2);color:#ffffffd9;font-size:var(--text-base);text-shadow:none;font-weight:var(--font-medium)}.bc-hero-location-icon{flex-shrink:0;color:#fffffff2}.bc-hero-rating{font-size:var(--text-base);color:#fffffff2;text-shadow:none;flex-shrink:0;white-space:nowrap;letter-spacing:2px;display:inline-flex;align-items:center;line-height:1}.bc-header.hotel-header-compact{padding:var(--space-4) var(--space-6)}.bc-header-compact-content{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);width:100%}.bc-header-compact-left{display:flex;flex-direction:column;gap:var(--space-1);flex:1;min-width:0}.bc-title-compact{color:var(--text-primary);font-weight:var(--font-semibold);font-size:var(--text-lg);margin:0;letter-spacing:-.3px;display:flex;align-items:center;gap:var(--space-2)}.bc-ref-row-compact{display:flex;align-items:baseline;gap:var(--space-2)}.bc-header-compact-right{display:flex;flex-direction:column;align-items:flex-end;gap:var(--space-0-5);flex-shrink:0}.bc-total-paid-compact{color:var(--text-primary);font-size:var(--text-lg);font-weight:var(--font-bold);letter-spacing:-.3px}.bc-total-label-compact{color:#ffffffb3;font-size:var(--text-xs);font-weight:var(--font-semibold);letter-spacing:.2px}.bc-header{display:grid;grid-template-columns:1fr auto;gap:var(--space-6);padding:var(--space-5) var(--space-6);border-bottom:1px solid var(--border-subtle);background:var(--bg-primary);align-items:start}.bc-header-left{display:grid;grid-template-columns:auto 1fr;gap:var(--space-4);align-items:start}.bc-logo-box{width:100px;height:100px;border-radius:var(--radius-md);overflow:hidden;border:1px solid var(--border-subtle);background:var(--bg-primary);transition:var(--transition-base);flex-shrink:0;display:flex;align-items:center;justify-content:center;padding:0}.bc-logo-box.hotel-image{width:180px;height:140px;border-radius:var(--radius-lg);box-shadow:none}.bc-logo{max-width:100%;max-height:100%;-o-object-fit:contain;object-fit:contain}.bc-header-info{display:flex;flex-direction:column;gap:var(--space-2)}.bc-status-row{display:flex;align-items:center;gap:var(--space-3)}.bc-check-circle{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;background:var(--text-primary);color:var(--bg-primary);flex-shrink:0;animation:popIn .4s cubic-bezier(.175,.885,.32,1.275) forwards}@keyframes popIn{0%{transform:scale(0);opacity:0}to{transform:scale(1);opacity:1}}.bc-title{color:var(--text-primary);font-weight:var(--font-bold);font-size:var(--text-2xl);margin:0;letter-spacing:-.5px;line-height:1.2}.bc-copy-btn{background:transparent;border:1px solid rgba(255,255,255,.2);color:#fff9;cursor:pointer;padding:4px;border-radius:var(--radius-sm);display:inline-flex;align-items:center;justify-content:center;transition:all .2s ease;margin-left:var(--space-2)}.bc-copy-btn:hover{background:#ffffff1a;color:#fff;border-color:#fff}.bc-copy-btn:active{transform:scale(.95)}.bc-route-main{color:var(--text-primary);font-weight:var(--font-normal);font-size:var(--text-xl);letter-spacing:-.3px;opacity:.9;margin-top:var(--space-1)}.booking-confirmation:has(.hotel-image) .bc-route-main{font-size:calc(var(--text-xl) * 1.4)}.bc-ref-row{display:flex;align-items:baseline;gap:var(--space-2);margin-top:var(--space-1)}.bc-ref-label{color:#fff9;font-size:var(--text-sm);font-weight:var(--font-semibold)}.bc-ref-code{color:#ffffffe6;font-size:var(--text-sm);font-weight:var(--font-normal)}.bc-header-right{display:grid;justify-items:end;align-content:start;gap:var(--space-1);text-align:right}.bc-total-paid{color:var(--text-primary);font-size:var(--text-xl);font-weight:var(--font-semibold);letter-spacing:-.5px;text-shadow:0 2px 8px rgba(0,0,0,.3)}.booking-confirmation:has(.hotel-image) .bc-total-paid{font-size:calc(var(--text-xl) * 1.4);font-weight:var(--font-bold)}.bc-total-label{color:#ffffffb3;font-size:var(--text-xs);font-weight:var(--font-semibold);letter-spacing:.2px}.bc-section{padding:var(--space-5) var(--space-6);border-bottom:1px solid var(--border-subtle);background:var(--bg-primary)}.bc-section:last-child{border-bottom:none}.bc-section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-3);gap:var(--space-4)}.bc-section-title{color:var(--text-primary);font-weight:var(--font-bold);font-size:var(--text-base);letter-spacing:.5px;text-transform:uppercase;margin-bottom:var(--space-3)}.bc-section-header .bc-section-title{margin-bottom:0}.bc-section-actions{display:flex;justify-content:flex-end;margin-top:0}.bc-payment-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4)}.bc-view-booking-btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-3) var(--space-5);background:var(--bg-primary);color:#000;border:1px solid #d0d0d0;border-radius:var(--radius-md);font-size:var(--text-base);font-weight:var(--font-bold);font-family:inherit;letter-spacing:.2px;text-transform:none;text-decoration:none;cursor:pointer;transition:var(--transition-base);white-space:nowrap;flex-shrink:0;box-shadow:none;height:100%;min-height:56px}.bc-view-booking-btn:hover{background:#f5f5f5;transform:none;box-shadow:none}.bc-view-booking-btn:active{transform:none;box-shadow:none}.bc-view-booking-btn svg{flex-shrink:0}@media (max-width: 640px){.bc-payment-row{flex-direction:column;align-items:stretch;gap:var(--space-4)}.bc-section-actions{justify-content:stretch;width:100%}.bc-view-booking-btn{width:100%;justify-content:center;padding:14px 18px;font-size:var(--text-sm)}}.bc-subtitle{color:#fffc;font-weight:var(--font-bold);font-size:var(--text-sm);letter-spacing:.5px;text-transform:uppercase;margin-bottom:var(--space-3)}.bc-flight{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-2) 0 var(--space-3) 0}.bc-flight+.bc-flight{border-top:1px solid rgba(255,255,255,.1);padding-top:var(--space-4)}.bc-flight-main{display:flex;flex-direction:column;gap:var(--space-4)}.bc-flight-header-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-4)}.bc-flight-airline{display:flex;align-items:center;gap:var(--space-2)}.bc-airline-logo-small{width:24px;height:24px;border-radius:50%;background:var(--text-primary);overflow:hidden;display:flex;align-items:center;justify-content:center;padding:2px}.bc-airline-logo-small img,.bc-airline-logo-small svg{max-width:100%;max-height:100%;-o-object-fit:contain;object-fit:contain}.bc-airline-logo-small .airline-logo-container{background:#fff;width:100%;height:100%;border-radius:inherit;display:flex;align-items:center;justify-content:center;overflow:hidden;padding:2px;box-sizing:border-box}.bc-airline-logo-small .airline-logo-fallback{background:#fff}.bc-airline-name{color:var(--text-primary);font-weight:var(--font-semibold);font-size:var(--text-sm)}.bc-operated-by{font-size:var(--text-xs);color:#fff9}.bc-flight-times{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--space-4);position:relative;margin-bottom:var(--space-4)}.bc-time-block{flex:0 0 auto;display:flex;flex-direction:column;gap:var(--space-1);min-width:120px}.bc-time-block-right{align-items:flex-end;text-align:right}.bc-flight-path{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative;margin-top:var(--space-1);min-width:140px}.bc-path-duration{font-size:12px;font-weight:var(--font-bold);color:var(--text-primary);letter-spacing:.5px;margin-bottom:6px}.bc-path-visual{position:relative;width:100%;height:20px;display:flex;align-items:center;justify-content:center}.bc-path-line{position:absolute;left:0;right:0;height:2px;background:#fff3;border-radius:2px}.bc-path-dot{width:6px;height:6px;border-radius:50%;background:var(--text-primary);position:absolute;z-index:1}.bc-path-dot.start{left:0}.bc-path-dot.end{right:0}.bc-path-plane-icon{position:absolute;background:var(--surface-card);padding:0 6px;color:var(--text-primary);z-index:2;transform:rotate(90deg)}.bc-path-stops{font-size:10px;color:#ffffff80;margin-top:6px;text-transform:uppercase;letter-spacing:.5px}.bc-flight-footer{display:flex;align-items:center;justify-content:flex-start;border-top:1px solid rgba(255,255,255,.08);padding-top:var(--space-3)}.bc-flight-number{color:var(--text-primary);font-size:var(--text-base);font-weight:var(--font-semibold)}.bc-chips{display:flex;gap:var(--space-2);flex-wrap:wrap}.chip{display:inline-flex;align-items:center;padding:var(--space-0-5) var(--space-1-5);border-radius:var(--radius-full);background:#ffffff14;color:var(--text-primary);font-size:var(--text-xs);font-weight:var(--font-bold);border:1px solid rgba(255,255,255,.12);letter-spacing:.5px;text-transform:uppercase}.chip.subtle{background:transparent;color:#fff9;border-color:#ffffff26;font-weight:var(--font-semibold)}.bc-flight-meta{display:grid;grid-template-columns:1fr;gap:var(--space-2);padding:var(--space-2) 0 0 0}.bc-meta-item{display:flex;flex-direction:column;gap:var(--space-1);font-size:var(--text-sm)}.bc-meta-label{color:#ffffff80;font-weight:var(--font-bold);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.8px}.bc-meta-value{color:#ffffffd9;font-weight:var(--font-medium)}.bc-info-grid{display:grid;grid-template-columns:1fr 1fr;gap:0}.bc-info-grid .bc-section{border-bottom:none;border-right:1px solid var(--border-subtle)}.bc-info-grid .bc-section:last-child{border-right:none}.bc-info-content{display:flex;flex-direction:column;gap:var(--space-3)}.bc-payment-detail{display:flex;justify-content:space-between;align-items:center;gap:var(--space-4);padding:var(--space-3) var(--space-4);min-height:40px;border-radius:var(--radius-sm);transition:background .15s ease}.bc-payment-detail:hover{background:#ffffff0a}.bc-payment-detail.bc-payment-total{margin-top:var(--space-4);padding:var(--space-3) var(--space-5);background:var(--bg-primary);border-radius:var(--radius-md);color:#000;border:none;box-shadow:none;min-width:200px}.bc-payment-detail.bc-payment-total:hover{transform:none;box-shadow:none;background:var(--bg-secondary)}.bc-payment-label{color:#fff9;font-size:var(--text-sm);font-weight:var(--font-semibold);text-transform:uppercase;letter-spacing:.8px;flex-shrink:0}.bc-payment-total .bc-payment-label{color:var(--text-primary);opacity:.6;font-size:var(--text-sm);font-weight:var(--font-bold);letter-spacing:1px}.bc-payment-value{color:var(--text-primary);font-size:var(--text-xl);font-weight:var(--font-semibold);letter-spacing:-.5px;text-align:right;white-space:nowrap;flex-shrink:0}.bc-payment-total .bc-payment-value{font-size:var(--text-2xl);font-weight:var(--font-bold);color:var(--text-primary);letter-spacing:-.5px}.bc-passenger-info{display:flex;flex-direction:column;gap:var(--space-2)}.bc-passenger-card{background:var(--surface-card-soft);border:1px solid var(--border-subtle);border-radius:var(--radius-md);padding:var(--space-3);display:grid;gap:var(--space-2)}.bc-passenger-name{color:var(--text-primary);font-size:var(--text-base);font-weight:var(--font-semibold)}.bc-passenger-detail{display:flex;flex-direction:column;gap:var(--space-1-5);color:#fffc;font-size:var(--text-sm)}.bc-passenger-detail strong{color:var(--text-primary);font-weight:var(--font-semibold)}.bc-contact-info{display:flex;flex-direction:column;gap:var(--space-2)}.bc-contact-row{display:flex;align-items:center;gap:var(--space-2);color:#ffffffbf;font-size:var(--text-sm)}.bc-contact-label{color:#fff9;font-weight:var(--font-bold);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.6px;min-width:90px}.bc-contact-value{color:var(--text-primary);font-weight:var(--font-medium)}.bc-instructions{display:flex;flex-direction:column;gap:var(--space-2)}.bc-instructions p{margin:0;color:#fffc;line-height:1.6;font-size:var(--text-sm)}.bc-instructions ul{margin:0;padding-left:var(--space-4);color:#fffc;line-height:1.6}.bc-instructions li{margin-bottom:var(--space-1)}.bc-footer{padding:var(--space-4) var(--space-5);background:var(--bg-primary);border-top:1px solid var(--border-subtle);display:flex;flex-direction:column;gap:var(--space-2)}.bc-footer-note{color:var(--text-tertiary);font-size:var(--text-xs);letter-spacing:.8px;text-transform:uppercase;font-weight:var(--font-bold)}.bc-footer-help{color:var(--text-secondary);font-size:var(--text-sm);line-height:1.6}.bc-footer-actions{display:flex;gap:var(--space-2);flex-wrap:wrap}.bc-footer-actions .btn{min-width:140px}@media (max-width: 1024px){.bc-header{grid-template-columns:1fr;gap:var(--space-4)}.bc-header-right{justify-items:start;text-align:left}.bc-info-grid{grid-template-columns:1fr}.bc-info-grid .bc-section{border-right:none;border-bottom:1px solid var(--border-subtle)}.bc-info-grid .bc-section:last-child{border-bottom:none}.bc-flight-times{grid-template-columns:1fr;gap:var(--space-3)}.bc-arrow{display:none}.bc-footer-actions{flex-direction:column;align-items:stretch}}@media (max-width: 768px){.bc-hero-image-container{aspect-ratio:6 / 4;border-radius:var(--radius-md) var(--radius-md) 0 0}.bc-hero-hotel-name{font-size:calc(var(--text-xl) * 1.3)}.bc-hero-location{font-size:var(--text-base)}.bc-hero-overlay{padding:var(--space-4);left:var(--space-3);bottom:var(--space-3);max-width:calc(100% - var(--space-6))}.bc-hero-rating{font-size:var(--text-xs);letter-spacing:.5px;padding:4px 8px}.amenities-list{grid-template-columns:1fr}.review-header{flex-direction:column;align-items:flex-start;gap:var(--space-1)}.hotel-reviews{flex-direction:column;align-items:flex-start;gap:var(--space-3)}.policy-grid{grid-template-columns:1fr}}@media (max-width: 640px){.booking-confirmation{border-radius:var(--radius-md)}.bc-header,.bc-section,.bc-footer{padding:var(--space-3) var(--space-4)}.bc-logo-box{width:72px;height:72px}.bc-logo-box.hotel-image{width:120px;height:90px}.bc-title{font-size:var(--text-lg)}.booking-confirmation:has(.hotel-image) .bc-title{font-size:calc(var(--text-lg) * 1.4)}.bc-total-paid{font-size:var(--text-lg)}.bc-flight-number{font-size:var(--text-sm)}.bc-footer-actions .btn{width:100%}.bc-hero-image-container{aspect-ratio:16 / 9}.bc-hero-hotel-name{font-size:calc(var(--text-lg) * 1.3)}.bc-hero-location{font-size:var(--text-sm)}.bc-hero-overlay{left:var(--space-2);bottom:var(--space-2);max-width:calc(100% - var(--space-4));padding:var(--space-3)}.bc-hero-rating{font-size:var(--text-xs);letter-spacing:.5px;padding:3px 6px}.bc-image-nav-btn{width:36px;height:36px}.amenities-list{grid-template-columns:1fr;padding:var(--space-3)}.hotel-description,.hotel-location,.hotel-reviews,.policy-section,.price-breakdown-table{padding:var(--space-3)}.bc-payment-detail{padding:var(--space-2-5) var(--space-3)}.bc-payment-detail.bc-payment-total{padding:var(--space-4) var(--space-3)}.total-amount{font-size:var(--text-xl)}.bc-accordion-content{padding:0 var(--space-4) var(--space-4) var(--space-4)}}.bc-accordion-group{padding:0;border-bottom:none}.bc-accordion{border:1px solid var(--border-subtle);background:transparent;border-radius:var(--radius-md);margin-bottom:var(--space-3);overflow:hidden;transition:border-color .2s ease}.bc-accordion:last-child{margin-bottom:0}.bc-accordion:hover{border-color:#ffffff4d}.bc-accordion[open]{border-color:#fff6;background:#0003}.bc-accordion-summary{display:flex;align-items:center;justify-content:space-between;padding:var(--space-4) var(--space-5);cursor:pointer;transition:background .2s ease;list-style:none;gap:var(--space-4);background:transparent;-webkit-user-select:none;-moz-user-select:none;user-select:none}.bc-accordion-summary::-webkit-details-marker{display:none}.bc-accordion-summary:hover{background:#ffffff08}.bc-accordion[open] .bc-accordion-summary{background:transparent;border-bottom:1px solid var(--border-subtle)}.bc-acc-left{display:flex;align-items:center;gap:var(--space-3);flex:1;min-width:0}.bc-acc-title{color:var(--text-primary);font-weight:var(--font-bold);font-size:var(--text-sm);letter-spacing:1px;text-transform:uppercase;white-space:nowrap;opacity:.9}.bc-acc-chips{display:flex;gap:var(--space-2);flex-wrap:wrap}.bc-acc-chip{display:inline-flex;align-items:center;padding:var(--space-0-5) var(--space-1-5);border-radius:var(--radius-sm);background:#ffffff14;color:var(--text-primary);font-size:var(--text-xs);font-weight:var(--font-bold);border:1px solid rgba(255,255,255,.12);letter-spacing:.5px;text-transform:uppercase}.bc-acc-chip.subtle{background:#ffffff0d;color:#fffc;border-color:#ffffff14}.bc-acc-subtle{color:#fff9;font-size:var(--text-sm);font-weight:var(--font-medium);letter-spacing:.3px}.bc-acc-chevron{color:#ffffffb3;font-size:var(--text-xl);font-weight:var(--font-bold);transition:all .25s cubic-bezier(.4,0,.2,1);flex-shrink:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);background:#ffffff0d}.bc-accordion-summary:hover .bc-acc-chevron{background:#ffffff1a;color:#ffffffe6}.bc-accordion[open] .bc-acc-chevron{transform:rotate(90deg);background:#ffffff1a;color:var(--accent)}.bc-accordion-content{padding:var(--space-6);background:#00000026;animation:slideDown .3s ease-out}@keyframes slideDown{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.hotel-description{margin-bottom:var(--space-6);padding:var(--space-4);background:#ffffff05;border-radius:var(--radius-md);border:1px solid rgba(255,255,255,.06)}.hotel-description p{color:#ffffffe6;font-size:var(--text-base);line-height:1.7;margin:0}.hotel-location{display:flex;gap:var(--space-3);margin-bottom:var(--space-6);align-items:flex-start;padding:var(--space-5);background:#ffffff0a;border-radius:var(--radius-md);border:1px solid rgba(255,255,255,.1)}.location-icon{color:var(--accent);flex-shrink:0;margin-top:2px}.location-text{color:var(--text-primary);font-size:var(--text-lg);font-weight:var(--font-semibold);margin-bottom:var(--space-2);line-height:1.4}.distance-text{color:#ffffffbf;font-size:var(--text-sm)}.hotel-reviews{display:flex;align-items:center;gap:var(--space-5);margin-bottom:var(--space-6);padding:var(--space-5);border-radius:var(--radius-md);background:#ffffff08;border:1px solid rgba(255,255,255,.08)}.review-header{display:flex;align-items:baseline;gap:var(--space-2)}.review-score{color:var(--accent);font-size:var(--text-3xl);font-weight:var(--font-bold);line-height:1}.review-out-of{color:#ffffff80;font-size:var(--text-xl);font-weight:var(--font-medium)}.review-details{display:flex;flex-direction:column;gap:var(--space-1-5)}.review-count{color:var(--text-primary);font-size:var(--text-base);font-weight:var(--font-semibold)}.review-source{color:#fff9;font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.8px;font-weight:var(--font-bold)}.hotel-amenities{margin-bottom:var(--space-5)}.amenities-title{color:var(--text-primary);font-size:var(--text-base);font-weight:var(--font-bold);text-transform:uppercase;letter-spacing:.8px;margin-bottom:var(--space-4)}.amenities-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:var(--space-3);padding:var(--space-4);background:#ffffff05;border-radius:var(--radius-md);border:1px solid rgba(255,255,255,.06)}.amenity-item{display:flex;align-items:center;gap:var(--space-2-5);font-size:var(--text-sm);color:#ffffffe6;font-weight:var(--font-medium)}.amenity-check{color:var(--accent);flex-shrink:0;opacity:.8}.price-breakdown-table{display:flex;flex-direction:column;gap:var(--space-2);padding:0;background:transparent;border-radius:var(--radius-md)}.price-row{display:flex;justify-content:space-between;align-items:center;padding:var(--space-3-5) var(--space-4);color:#ffffffe6;font-size:var(--text-base);border-radius:var(--radius-sm);transition:all .15s ease;background:#ffffff05;border:1px solid rgba(255,255,255,.05)}.price-row:hover{background:#ffffff0a;border-color:#ffffff14;transform:translate(2px)}.price-label{color:#ffffffbf;font-weight:var(--font-medium);font-size:var(--text-sm)}.price-value{color:var(--text-primary);font-weight:var(--font-semibold);text-align:right;font-size:var(--text-base)}.price-row.comparison-price{background:#ffffff08;border-radius:var(--radius-sm);margin-bottom:var(--space-1);border-color:#ffffff14;opacity:.7}.price-row.comparison-price .price-label{color:#ffffff80;font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.8px;font-weight:var(--font-semibold)}.price-row.comparison-price .price-value{color:#ffffff80;text-decoration:line-through;font-size:var(--text-sm);font-weight:var(--font-medium)}.price-row.highlight-row{background:#ffffff0f;padding:var(--space-4) var(--space-4);border-color:#ffffff1f;border-left:3px solid rgba(255,255,255,.2)}.price-row.highlight-row .price-label{color:#fffffff2;font-weight:var(--font-semibold);font-size:var(--text-base)}.price-row.discount-row{padding-left:var(--space-5);background:rgba(var(--accent-rgb, 255, 215, 0),.12);border-left:3px solid var(--accent);border-color:rgba(var(--accent-rgb, 255, 215, 0),.2)}.price-row.discount-row:hover{background:rgba(var(--accent-rgb, 255, 215, 0),.15)}.price-row.discount-row .price-label{color:var(--accent);font-size:var(--text-sm);font-weight:var(--font-bold);letter-spacing:.5px}.discount-value{color:var(--accent);font-weight:var(--font-bold);font-size:var(--text-lg)}.price-row.total-row{margin-top:var(--space-4);padding:var(--space-5) var(--space-4);background:#ffffff14;border-top:2px solid rgba(255,255,255,.2);border-left:none;border-right:none;border-bottom:none;border-radius:var(--radius-md)}.price-row.total-row:hover{background:#ffffff1a;transform:none}.price-row.total-row .price-label{color:var(--text-primary);font-size:var(--text-lg);font-weight:var(--font-bold);text-transform:uppercase;letter-spacing:.5px}.total-amount{color:var(--accent);font-size:var(--text-2xl);font-weight:var(--font-bold);letter-spacing:-.5px}.price-savings-note{margin-top:var(--space-5);padding:var(--space-4) var(--space-5);background:rgba(var(--accent-rgb, 255, 215, 0),.15);border-radius:var(--radius-md);border-left:4px solid var(--accent);color:var(--accent);font-size:var(--text-base);text-align:left;font-weight:var(--font-bold);font-style:normal;letter-spacing:.3px;box-shadow:none}.policy-section{margin-bottom:var(--space-5);padding:var(--space-5);background:#ffffff08;border-radius:var(--radius-md);border:1px solid rgba(255,255,255,.08);transition:all .2s ease}.policy-section:hover{background:#ffffff0a;border-color:#ffffff1f}.policy-section:last-child{margin-bottom:0}.policy-title{color:var(--text-primary);font-size:var(--text-base);font-weight:var(--font-bold);text-transform:uppercase;letter-spacing:.8px;margin-bottom:var(--space-4)}.policy-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-4)}.policy-item{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-4);background:#ffffff08;border-radius:var(--radius-sm);border:1px solid rgba(255,255,255,.08);transition:all .15s ease}.policy-item:hover{background:#ffffff0d;border-color:#ffffff1f;transform:translateY(-1px)}.policy-label{color:#fff9;font-size:var(--text-xs);font-weight:var(--font-bold);text-transform:uppercase;letter-spacing:.8px}.policy-value{color:var(--text-primary);font-size:var(--text-base);font-weight:var(--font-semibold)}.policy-text{color:#ffffffe6;font-size:var(--text-base);line-height:1.7;margin:0;padding:var(--space-4);background:#ffffff08;border-radius:var(--radius-sm);border-left:3px solid rgba(255,255,255,.15)}.charges-list{margin-top:var(--space-3)}.charges-json{color:#fffc;font-size:var(--text-xs);font-family:Monaco,Menlo,Courier New,monospace;background:#0006;padding:var(--space-4);border-radius:var(--radius-md);border:1px solid rgba(255,255,255,.1);overflow-x:auto;margin:0;white-space:pre-wrap;word-wrap:break-word}@media (max-width: 540px){.images-grid{grid-template-columns:1fr}.hotel-gallery-image{height:200px}.review-score{font-size:var(--text-2xl)}.review-out-of,.location-text{font-size:var(--text-base)}}.hotel-confirmation-minimal{background:var(--bg-primary);border:1px solid var(--border-subtle);border-radius:12px;overflow:hidden;width:100%;max-width:540px;opacity:0;transform:translateY(16px);transition:opacity .4s ease,transform .4s cubic-bezier(.4,0,.2,1);box-shadow:none}.hotel-confirmation-minimal.visible{opacity:1;transform:translateY(0)}.hcm-image-container{position:relative;width:100%;aspect-ratio:16 / 9;overflow:hidden;background:var(--bg-secondary)}.hcm-image{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;-o-object-position:center;object-position:center}.hcm-image-controls{position:absolute;top:0;left:0;right:0;bottom:0;pointer-events:none;opacity:0;transition:opacity .2s ease}.hcm-image-container:hover .hcm-image-controls{opacity:1}.hcm-nav-btn{position:absolute;top:50%;transform:translateY(-50%);background:#00000080;backdrop-filter:none;-webkit-backdrop-filter:none;color:var(--text-primary);border:1px solid var(--border-subtle);width:36px;height:36px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;pointer-events:auto}.hcm-nav-btn:hover{background:#000000b3;border-color:#ffffff4d}[data-theme=light] .hcm-nav-btn{background:#0009;color:#fff;border-color:#ffffff4d}[data-theme=light] .hcm-nav-btn:hover{background:#000c;border-color:#ffffff80}.hcm-nav-prev{left:12px}.hcm-nav-next{right:12px}.hcm-image-overlay{position:absolute;bottom:0;left:0;right:0;padding:24px 20px;background:linear-gradient(to top,rgba(0,0,0,.85) 0%,rgba(0,0,0,.4) 70%,transparent 100%)}.hcm-hotel-name{font-size:24px;font-weight:var(--font-bold);color:var(--text-primary);margin:0 0 6px;line-height:1.2;letter-spacing:-.5px}[data-theme=light] .hcm-hotel-name{color:#fff;text-shadow:0 2px 4px rgba(0,0,0,.3)}[data-theme=light] .hcm-location{color:#ffffffe6}[data-theme=light] .hcm-location svg{color:#ffffffe6}[data-theme=light] .hcm-stars{color:#fff}.hcm-location{display:flex;align-items:center;gap:6px;color:var(--text-secondary);font-size:14px;font-weight:var(--font-medium)}.hcm-location svg{flex-shrink:0;color:var(--text-tertiary)}.hcm-stars{color:var(--text-primary);font-size:12px;letter-spacing:2px;margin-left:8px}.hcm-info{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;background:var(--bg-secondary);border-bottom:1px solid var(--border-subtle)}.hcm-info-left{display:flex;flex-direction:column;gap:2px}.hcm-status-row{display:flex;align-items:center;gap:10px}.hcm-status{font-size:18px;font-weight:var(--font-bold);color:var(--text-primary);letter-spacing:-.3px}.hcm-check-icon{color:#22c55e;background:#22c55e26;border-radius:50%;padding:3px}.hcm-info-right{text-align:right;display:flex;flex-direction:column;align-items:flex-end;gap:2px}.hcm-price{font-size:26px;font-weight:var(--font-bold);color:var(--text-primary);letter-spacing:-.75px;line-height:1}.hcm-price-label{font-size:10px;color:var(--text-quaternary);text-transform:uppercase;letter-spacing:.8px;font-weight:var(--font-bold)}.hcm-stay{padding:20px 24px;background:var(--bg-primary)}.hcm-section-label{font-size:10px;font-weight:var(--font-bold);color:var(--text-quaternary);text-transform:uppercase;letter-spacing:1.2px;margin-bottom:16px}.hcm-dates{display:flex;align-items:flex-start;gap:0;margin-bottom:20px}.hcm-date-block{display:flex;flex-direction:column;gap:4px;flex:1}.hcm-date-block:last-of-type{text-align:left}.hcm-date{font-size:17px;font-weight:var(--font-bold);color:var(--text-primary);letter-spacing:-.3px}.hcm-date-label{font-size:11px;color:var(--text-quaternary);font-weight:var(--font-medium);text-transform:capitalize}.hcm-date-arrow{color:var(--text-quaternary);font-size:18px;padding:0 20px;align-self:center;margin-top:-8px}.hcm-room-info{display:flex;flex-wrap:wrap;align-items:center;gap:10px;padding-top:16px;border-top:1px solid var(--border-subtle)}.hcm-room-type{font-size:15px;font-weight:var(--font-semibold);color:var(--text-primary);letter-spacing:-.2px}.hcm-chip{display:inline-flex;align-items:center;padding:5px 12px;border-radius:6px;background:var(--bg-secondary);color:var(--text-primary);font-size:11px;font-weight:var(--font-bold);border:1px solid var(--border-subtle);text-transform:uppercase;letter-spacing:.5px}.hcm-chip.subtle{background:transparent;color:var(--text-secondary);border-color:var(--border-subtle);font-weight:var(--font-semibold)}.hcm-actions{padding:20px 24px;display:flex;justify-content:center}.hcm-view-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 28px;background:var(--bg-primary);color:#000;border:none;border-radius:var(--radius-md);font-size:13px;font-weight:var(--font-bold);cursor:pointer;transition:all .2s ease;letter-spacing:.3px}.hcm-view-btn:hover{background:var(--accent-hover);transform:none;box-shadow:none}[data-theme=light] .hcm-view-btn:hover{background:var(--bg-secondary);color:var(--text-primary)}.hcm-view-btn:active{transform:translateY(0);box-shadow:none}.hcm-view-btn svg{transition:transform .2s ease;opacity:.7}.hcm-view-btn:hover svg{transform:translate(3px);opacity:1}@media (max-width: 640px){.hotel-confirmation-minimal{max-width:100%;border-radius:10px}.hcm-hotel-name{font-size:20px}.hcm-location{font-size:13px}.hcm-image-overlay{padding:20px 16px}.hcm-info{padding:16px 18px}.hcm-stay,.hcm-actions{padding:18px}.hcm-price{font-size:22px}.hcm-status{font-size:16px}.hcm-date{font-size:15px}.hcm-date-arrow{padding:0 14px}.hcm-view-btn{padding:11px 24px;font-size:12px}}.flight-confirmation-minimal{background:var(--bg-primary);border:1px solid var(--border-subtle);border-radius:16px;overflow:hidden;width:100%;max-width:540px;opacity:0;transform:translateY(16px);transition:opacity .4s ease,transform .4s cubic-bezier(.4,0,.2,1);box-shadow:none}.flight-confirmation-minimal.visible{opacity:1;transform:translateY(0)}.fcm-header{display:flex;justify-content:space-between;align-items:flex-start;padding:24px;background:var(--bg-primary);border-bottom:1px solid var(--border-subtle);gap:20px}.fcm-header-left{display:flex;align-items:flex-start;gap:18px;flex:1;min-width:0}.fcm-airline-logo{width:126px;height:78px;border-radius:var(--radius-md);overflow:hidden;background:#fff;flex-shrink:0;display:flex;align-items:center;justify-content:center;padding:0;box-shadow:none;border:1px solid var(--border-subtle)}.fcm-airline-logo img,.fcm-airline-logo svg{max-width:100%;max-height:100%;-o-object-fit:contain;object-fit:contain}.fcm-airline-logo .airline-logo-container{background:#fff;width:100%;height:100%;border-radius:inherit;display:flex;align-items:center;justify-content:center;overflow:hidden;padding:0 12px;box-sizing:border-box}.fcm-airline-logo .airline-logo-fallback{background:#fff}.fcm-header-info{display:flex;flex-direction:column;gap:8px;min-width:0}.fcm-status-row{display:flex;align-items:center;gap:10px}.fcm-check-icon{color:#22c55e;background:#22c55e26;border-radius:50%;padding:6px;flex-shrink:0}.fcm-status{font-size:18px;font-weight:var(--font-bold);color:var(--text-primary);letter-spacing:-.3px}.fcm-route{font-size:15px;color:var(--text-primary);font-weight:var(--font-medium)}.fcm-ref-row{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.fcm-ref-label{font-size:11px;color:#fff6;font-weight:var(--font-medium)}.fcm-ref-code{font-size:12px;color:#ffffffb3;font-family:monospace;letter-spacing:.3px}.fcm-copy-btn{background:transparent;border:1px solid rgba(255,255,255,.15);color:#ffffff80;width:20px;height:20px;border-radius:4px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;padding:0}.fcm-copy-btn:hover{background:var(--bg-secondary);border-color:var(--border-light);color:var(--text-primary)}.fcm-header-right{display:flex;flex-direction:column;align-items:flex-end;gap:4px;flex-shrink:0}.fcm-price{font-size:28px;font-weight:var(--font-bold);color:var(--text-primary);letter-spacing:-.75px;line-height:1}.fcm-price-label{font-size:10px;color:var(--text-primary);text-transform:uppercase;letter-spacing:1px;font-weight:var(--font-bold)}.fcm-flight{padding:12px 24px;background:var(--bg-primary)}.fcm-flight:first-child{padding-top:12px}.fcm-section-label{font-size:11px;font-weight:var(--font-bold);color:#ffffff73;text-transform:uppercase;letter-spacing:1.5px;margin-bottom:18px}.fcm-flight-segment{margin-top:0;padding-top:0}.fcm-flight-segment:not(:first-child){margin-top:12px;padding-top:12px;border-top:1px solid rgba(255,255,255,.1)}.fcm-flight-label{font-size:14px;font-weight:var(--font-bold);color:var(--text-primary);text-transform:uppercase;letter-spacing:1.2px;margin-top:0;margin-bottom:12px;padding-top:0;padding-bottom:4px;border-bottom:1px solid var(--border-subtle);text-align:center}.fcm-flight-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:20px}.fcm-flight-row-left{display:flex;align-items:center;gap:12px;flex:1;min-width:0;margin-left:-8px}.fcm-airline-logo-small{width:82px;height:51px;border-radius:var(--radius-md);background:#fff;overflow:hidden;display:flex;align-items:center;justify-content:center;flex-shrink:0;padding:0;border:1px solid var(--border-subtle)}.fcm-airline-logo-small img,.fcm-airline-logo-small svg{max-width:100%;max-height:100%;-o-object-fit:contain;object-fit:contain}.fcm-airline-logo-small .airline-logo-container{background:#fff;width:100%;height:100%;border-radius:inherit;display:flex;align-items:center;justify-content:center;overflow:hidden;padding:0 12px;box-sizing:border-box}.fcm-airline-logo-small .airline-logo-fallback{background:#fff}.fcm-flight-number{font-size:15px;font-weight:var(--font-semibold);color:var(--text-primary);letter-spacing:-.2px}.fcm-times{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;margin-bottom:0}.fcm-times>.fcm-time-block{flex:1 1 0;min-width:120px}.fcm-times>.fcm-path{flex:0 1 auto;min-width:120px;max-width:180px}.fcm-time-block{display:flex;flex-direction:column;gap:6px;min-width:120px;flex:1 1 0}.fcm-time-block-right{text-align:right;align-items:flex-end}.fcm-time{font-size:15px;font-weight:var(--font-bold);color:var(--text-primary);letter-spacing:-.5px;line-height:1}.fcm-time-block-right .fcm-time{color:var(--text-primary)}.fcm-airport-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:6px;min-width:0}.fcm-time-block-right .fcm-airport-row{justify-content:flex-end}.fcm-airport{font-size:15px;font-weight:var(--font-bold);color:var(--text-primary);letter-spacing:.3px;flex-shrink:1;min-width:0}.fcm-date-row{display:flex;align-items:center;gap:8px}.fcm-time-block-right .fcm-date-row{justify-content:flex-end}.fcm-date{font-size:15px;color:var(--text-primary);font-weight:var(--font-semibold);margin-top:0;margin-bottom:0}.fcm-terminal{font-size:10px;color:#fbbf24;background:#fbbf2426;padding:3px 8px;border-radius:4px;font-weight:var(--font-bold);letter-spacing:.3px;flex-shrink:0;white-space:nowrap}.fcm-path{flex:1 1 auto;display:flex;flex-direction:column;align-items:center;gap:4px;padding-top:4px}.fcm-duration{font-size:13px;font-weight:var(--font-bold);color:var(--text-primary);letter-spacing:.3px}.fcm-path-visual{display:flex;align-items:center;width:100%;height:50px;gap:0}.fcm-path-dot{width:8px;height:8px;background:#ffffff80;border-radius:50%;flex-shrink:0;border:1px solid rgba(255,255,255,.2)}.fcm-path-line{flex:1;height:2px;background:#fff3}.fcm-flight-icon{transform:rotate(90deg);color:var(--text-secondary);background:var(--bg-primary);padding:4px 6px;flex-shrink:0;display:flex;align-items:center;justify-content:center}.fcm-stops{font-size:11px;color:#ffffff73;text-transform:uppercase;letter-spacing:.8px;font-weight:var(--font-semibold)}.fcm-chips{display:flex;flex-wrap:wrap;align-items:center;gap:8px;flex-shrink:0}.fcm-chip{display:inline-flex;align-items:center;padding:4px 10px;border-radius:4px;background:var(--bg-secondary);color:var(--text-primary);font-size:10px;font-weight:var(--font-bold);border:1px solid var(--border-subtle);text-transform:uppercase;letter-spacing:.5px;white-space:nowrap}.fcm-chip.subtle{background:transparent;color:#fff9;border-color:#ffffff1f;font-weight:var(--font-semibold);font-size:9px}.fcm-actions{padding:24px;display:flex;justify-content:center;border-top:1px solid rgba(255,255,255,.06)}.fcm-view-btn{background:#fff;color:#000;border:1px solid #d0d0d0;padding:var(--space-2) var(--space-4);border-radius:var(--radius-sm);font-size:13px;font-weight:var(--font-bold);cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);letter-spacing:.3px;text-transform:uppercase;box-shadow:none;position:relative;overflow:hidden;min-width:120px;display:flex;align-items:center;justify-content:center;gap:var(--space-1-5)}.fcm-view-btn:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:#0000001a;transform:translate(-50%,-50%);transition:width .6s ease,height .6s ease}.fcm-view-btn:hover{transform:translateY(-2px);box-shadow:none;background:#f0f0f0}.fcm-view-btn:hover:before{width:300px;height:300px}.fcm-view-btn:active{transform:translateY(0) scale(.98)}.fcm-view-btn svg{transition:transform .2s ease;opacity:.7}.fcm-view-btn:hover svg{transform:translate(4px);opacity:1}@media (max-width: 640px){.flight-confirmation-minimal{max-width:100%;border-radius:10px}.fcm-header{flex-direction:column;gap:18px;padding:20px}.fcm-header-right{align-items:flex-start;flex-direction:row;gap:8px;align-items:baseline}.fcm-price{font-size:24px}.fcm-price-label{font-size:10px;margin-top:2px}.fcm-airline-logo{width:104px;height:63px;border-radius:var(--radius-md);padding:0}.fcm-airline-logo-small{width:74px;height:46px;border-radius:var(--radius-md);padding:0}[data-theme=light] .fcm-airline-logo-small{padding:0}.fcm-status{font-size:16px}.fcm-flight{padding:12px 20px}.fcm-flight-segment:not(:first-child){margin-top:10px;padding-top:10px}.fcm-flight-label{font-size:12px;margin-bottom:10px;padding-bottom:3px}.fcm-flight-row{flex-wrap:wrap;gap:10px}.fcm-chips{gap:6px}.fcm-chip{font-size:9px;padding:3px 8px}.fcm-chip.subtle{font-size:8px}.fcm-times{gap:10px}.fcm-time,.fcm-date{font-size:13px}.fcm-time-block{min-width:100px;flex:1 1 0}.fcm-times>.fcm-path{min-width:80px;max-width:120px;flex:0 1 auto}.fcm-actions{padding:20px}.fcm-view-btn{padding:12px 26px;font-size:13px}.fcm-path{min-width:80px}.fcm-flight-icon{padding:2px 3px}}[data-theme=light] .bc-total-label-compact,[data-theme=light] .bc-operated-by{color:var(--text-secondary)}[data-theme=light] .fcm-ref-label{color:var(--text-quaternary)}[data-theme=light] .fcm-ref-code{color:var(--text-secondary)}[data-theme=light] .fcm-copy-btn{border:1px solid var(--border-subtle);color:var(--text-quaternary)}[data-theme=light] .fcm-copy-btn:hover{background:var(--surface-card-soft);border-color:var(--border);color:var(--text-primary)}[data-theme=light] .fcm-section-label{color:var(--text-quaternary)}[data-theme=light] .fcm-flight-segment:not(:first-child){border-top:1px solid var(--border-subtle)}[data-theme=light] .fcm-path-dot{background:var(--text-quaternary);border:1px solid var(--border-subtle)}[data-theme=light] .fcm-path-line{background:var(--border-subtle)}[data-theme=light] .fcm-stops{color:var(--text-quaternary)}[data-theme=light] .fcm-chip.subtle{color:var(--text-secondary);border-color:var(--border-subtle)}[data-theme=light] .fcm-actions{border-top:1px solid var(--border-subtle)}[data-theme=light] .fcm-airline-logo{background:var(--bg-primary);border:none}[data-theme=light] .fcm-airline-logo .airline-logo-container{background:var(--bg-primary)}[data-theme=light] .fcm-airline-logo img,[data-theme=light] .fcm-airline-logo svg,[data-theme=light] .fcm-airline-logo .airline-logo-image{filter:brightness(.98) contrast(.98)}[data-theme=light] .fcm-airline-logo .airline-logo-fallback,[data-theme=light] .fcm-header{background:var(--bg-primary)}[data-theme=light] .fcm-airline-logo-small{background:var(--bg-primary);border:none;padding:0}[data-theme=light] .fcm-airline-logo-small .airline-logo-container{background:var(--bg-primary)}[data-theme=light] .fcm-airline-logo-small img,[data-theme=light] .fcm-airline-logo-small svg,[data-theme=light] .fcm-airline-logo-small .airline-logo-image{filter:brightness(.98) contrast(.98)}[data-theme=light] .fcm-airline-logo-small .airline-logo-fallback{background:var(--bg-primary)}[data-theme=light] .bc-copy-btn{border:1px solid var(--border-subtle);color:var(--text-quaternary)}[data-theme=light] .bc-copy-btn:hover{background:var(--surface-card-soft);color:var(--text-primary);border-color:var(--border)}[data-theme=light] .bc-airline-logo-small .airline-logo-container{background:var(--bg-primary)}[data-theme=light] .bc-airline-logo-small .airline-logo-image,[data-theme=light] .bc-airline-logo-small img,[data-theme=light] .bc-airline-logo-small svg{filter:brightness(.98) contrast(.98)}[data-theme=light] .bc-airline-logo-small .airline-logo-fallback{background:var(--bg-primary)}[data-theme=light] .bc-ref-label{color:var(--text-secondary)}[data-theme=light] .bc-ref-code{color:var(--text-primary)}[data-theme=light] .bc-total-label,[data-theme=light] .bc-operated-by{color:var(--text-secondary)}[data-theme=light] .bc-path-line{background:var(--border-subtle)}[data-theme=light] .bc-path-stops{color:var(--text-quaternary)}[data-theme=light] .bc-flight-footer{border-top:1px solid var(--border-subtle)}[data-theme=light] .chip{background:var(--bg-secondary);border:1px solid var(--border-subtle)}[data-theme=light] .chip.subtle{background:transparent;color:var(--text-secondary);border-color:var(--border-subtle)}[data-theme=light] .hcm-price{color:var(--text-primary)}[data-theme=light] .hcm-price-label,[data-theme=light] .hcm-section-label,[data-theme=light] .hcm-date-label,[data-theme=light] .hcm-date-arrow{color:var(--text-quaternary)}[data-theme=light] .hcm-room-info{border-top:1px solid var(--border-subtle)}.loader{display:flex;align-items:center;justify-content:center}.loader-spinner{border:3px solid rgba(255,255,255,.2);border-top-color:#fff;border-radius:50%;animation:spin 1s linear infinite}.loader-small .loader-spinner{width:var(--space-5);height:var(--space-5);border-width:2px}.loader-medium .loader-spinner{width:var(--space-7);height:var(--space-7);border-width:3px}.loader-large .loader-spinner{width:var(--space-9);height:var(--space-9);border-width:4px}.baggage-popover-content{display:flex;flex-direction:column;gap:12px;min-width:260px;padding:4px}.baggage-stepper-row{display:flex;align-items:center;justify-content:space-between;padding:8px 0}.baggage-stepper-row+.baggage-stepper-row{border-top:1px solid var(--border-subtle)}.baggage-label-group{display:flex;flex-direction:column;gap:2px}.baggage-label{font-size:.9rem;font-weight:600;color:var(--text-primary)}.baggage-sublabel{font-size:.75rem;color:var(--text-tertiary)}.baggage-stepper{display:flex;align-items:center;gap:12px}.stepper-btn{width:28px;height:28px;border-radius:50%;border:1px solid var(--border-light);background:transparent;color:var(--text-primary);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease;padding:0}.stepper-btn:hover:not(:disabled){border-color:var(--text-primary);background:var(--surface-card-soft)}.stepper-btn:disabled{opacity:.3;cursor:not-allowed;border-color:var(--border-subtle)}.stepper-value{font-size:1rem;font-weight:600;color:var(--text-primary);min-width:16px;text-align:center;font-variant-numeric:tabular-nums}@media (max-width: 640px){.baggage-selector{padding:10px 14px}}.flight-options-card{background:var(--surface-card);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);overflow:visible;margin:0;box-shadow:none;width:77%;transition:var(--transition-base)}.flight-filter-toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:8px;padding:12px 16px;border-bottom:1px solid var(--border-subtle);min-height:56px}.filter-pill-minimal{display:inline-flex;align-items:center;gap:6px;height:38px;padding:0 12px;background:transparent;border:1px solid transparent;color:var(--text-tertiary);font-size:.85rem;cursor:pointer;border-radius:999px;transition:all .2s ease}.filter-pill-minimal:hover{color:var(--text-secondary);background:var(--surface-card-soft)}.filter-pill-minimal.active{color:var(--text-primary);background:var(--bg-secondary);border-color:var(--border-subtle)}.info-icon{font-size:1.1rem;display:flex}.info-text{font-weight:500;letter-spacing:.02em;font-size:.85rem}.flex-spacer{flex:1}.flight-why-panel{display:flex;flex-direction:column;min-height:400px;background:var(--surface-card);border-top:1px solid var(--border-subtle);animation:fadeIn .2s ease}.flight-why-panel-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-4);border-bottom:1px solid var(--border-subtle)}.flight-why-panel-title{margin:0;font-size:1rem;font-weight:var(--font-semibold);color:var(--text-primary)}.flight-why-panel-close{background:transparent;border:none;padding:4px;color:var(--text-secondary);cursor:pointer;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-md);transition:all .15s ease}.flight-why-panel-close:hover{background:var(--surface-card-soft);color:var(--text-primary)}.flight-why-panel-content{flex:1;overflow-y:auto;padding:var(--space-4)}.flight-why-intro{margin-bottom:var(--space-4);padding-bottom:var(--space-4);border-bottom:1px solid var(--border-subtle)}.flight-why-intro p{margin:0;font-size:.9rem;line-height:1.6;color:var(--text-secondary)}.flight-why-panel-footer{display:flex;align-items:center;justify-content:space-between;padding:var(--space-4);border-top:1px solid var(--border-subtle);gap:var(--space-3)}.flight-why-back-btn{background:transparent;border:1px solid var(--border-subtle);padding:var(--space-2) var(--space-3);color:var(--text-secondary);font-size:.85rem;font-weight:var(--font-semibold);cursor:pointer;border-radius:var(--radius-md);transition:all .15s ease}.flight-why-back-btn:hover{background:var(--surface-card-soft);border-color:var(--border);color:var(--text-primary)}.flight-why-prefs-btn{background:var(--surface-card-soft);border:1px solid var(--border-subtle);padding:var(--space-2) var(--space-3);color:var(--text-primary);font-size:.85rem;font-weight:var(--font-semibold);cursor:pointer;border-radius:var(--radius-md);transition:all .15s ease}.flight-why-prefs-btn:hover{background:var(--bg-secondary);border-color:var(--border)}.flight-why-loading{display:flex;align-items:center;gap:var(--space-2);font-size:.85rem;color:var(--text-secondary);padding:var(--space-4) 0}.flight-why-error{font-size:.85rem;color:var(--status-error-text);padding:var(--space-4) 0}.flight-why-content{display:flex;flex-direction:column;gap:var(--space-3)}.flight-why-list{list-style:none;padding:0;margin:0 0 var(--space-3) 0;color:var(--text-secondary);font-size:.9rem;line-height:1.5}.flight-why-list li{margin-bottom:var(--space-2);padding-left:var(--space-3);position:relative}.flight-why-list li:before{content:"•";position:absolute;left:0;color:var(--text-tertiary)}.flight-why-section{display:flex;flex-direction:column;gap:var(--space-4)}.flight-why-section-title{font-size:.75rem;font-weight:var(--font-semibold);color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.08em;padding-bottom:var(--space-2);border-bottom:1px solid var(--border-subtle)}.flight-why-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-3) var(--space-4)}.flight-why-item{display:flex;flex-direction:column;gap:2px}.flight-why-item-label{font-size:.7rem;font-weight:var(--font-medium);color:var(--text-quaternary);text-transform:uppercase;letter-spacing:.05em}.flight-why-item-value{font-size:.9rem;font-weight:var(--font-semibold);color:var(--text-primary)}.flight-why-airlines{display:flex;flex-direction:column;gap:var(--space-2)}.flight-why-airlines-label{font-size:.7rem;font-weight:var(--font-medium);color:var(--text-quaternary);text-transform:uppercase;letter-spacing:.05em}.flight-why-airlines-list{display:flex;flex-wrap:wrap;gap:6px}.flight-why-airline-tag{padding:4px 10px;background:var(--surface-card-soft);border:1px solid var(--border-subtle);border-radius:4px;font-size:.8rem;font-weight:var(--font-medium);color:var(--text-primary)}.flight-why-airline-tag.flight-why-airline-avoid{background:var(--bg-tertiary);border-color:var(--border-subtle);color:var(--text-tertiary);text-decoration:line-through}.flight-why-airline-tag.flight-why-airline-hidden{background:var(--bg-quaternary);border-color:var(--border-subtle);color:var(--text-quaternary);text-decoration:line-through}.flight-why-airlines-avoid .flight-why-airlines-label,.flight-why-airlines-hidden .flight-why-airlines-label{color:var(--text-quaternary)}.flight-why-chips{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-bottom:var(--space-3)}.flight-why-loyalty-title{width:100%;font-size:.75rem;font-weight:var(--font-semibold);color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.08em;margin-bottom:var(--space-2)}.flight-why-chip{display:flex;flex-direction:column;gap:2px;padding:var(--space-2) var(--space-3);background:var(--surface-card-soft);border:1px solid var(--border-subtle);border-radius:var(--radius-md);font-size:.8rem}.flight-why-chip .label{font-size:.7rem;color:var(--text-quaternary);text-transform:uppercase;letter-spacing:.05em}.flight-why-chip .value{font-size:.85rem;color:var(--text-primary);font-weight:var(--font-semibold)}.flight-why-loyalty{margin-top:var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--border-subtle)}.flight-why-loyalty-title{font-size:.85rem;font-weight:var(--font-semibold);color:var(--text-secondary);margin-bottom:var(--space-2)}.flight-why-loyalty-list{display:flex;flex-direction:column;gap:var(--space-1)}.flight-why-loyalty-item{display:flex;align-items:center;gap:var(--space-2);font-size:.8rem;padding:var(--space-1) 0}.flight-why-loyalty-program{color:var(--text-primary);font-weight:var(--font-semibold)}.flight-why-loyalty-tier{color:var(--text-secondary);font-size:.75rem;padding:2px 6px;background:#ffffff0d;border-radius:var(--radius-md)}.flight-why-loyalty-badge{color:var(--text-tertiary);font-size:.7rem;padding:2px 6px;background:#ffffff08;border-radius:var(--radius-md);text-transform:uppercase;letter-spacing:.05em}.flight-why-ranking{margin-top:var(--space-3);padding-top:var(--space-3);border-top:1px solid rgba(255,255,255,.05)}.flight-why-ranking-title{font-size:.85rem;font-weight:var(--font-semibold);color:var(--text-secondary);margin-bottom:var(--space-2)}.flight-why-ranking-list{display:flex;flex-direction:column;gap:var(--space-1)}.flight-why-ranking-item{display:flex;justify-content:space-between;align-items:center;font-size:.8rem;padding:var(--space-1) 0}.flight-why-ranking-label{color:var(--text-tertiary)}.flight-why-ranking-value{color:var(--text-secondary);font-weight:var(--font-semibold)}.flight-why-empty{padding:var(--space-3) 0;text-align:center}.flight-why-empty p{margin:0;font-size:.85rem;color:var(--text-tertiary);line-height:1.5}.flight-why-empty p:first-child{margin-bottom:var(--space-1);padding:4px 8px;border-radius:999px;background:#ffffff0a;border:1px solid rgba(255,255,255,.06);font-size:.75rem;color:var(--text-secondary)}.flight-options-title{display:flex;align-items:center;justify-content:space-between;padding:var(--space-3-5) var(--space-4);border-bottom:1px solid var(--border-subtle);background:var(--bg-primary);color:var(--text-primary);font-weight:var(--font-semibold);font-size:var(--text-base);letter-spacing:.3px}.flight-option-card{position:relative;background:var(--surface-card);transition:all .2s cubic-bezier(.4,0,.2,1);border-radius:0;overflow:hidden;border-top:1px solid var(--border-subtle)}.flight-option-card:first-child{border-top:none}.flight-option-card+.flight-option-card{border-top:1px solid var(--border-subtle)}.flight-option-card:hover{background:var(--surface-card-soft);z-index:1}.flight-option-card.flight-option-selected{background:#9ca3af0d;border-left:3px solid var(--status-default-text);padding-left:calc(var(--space-4) - 3px)}.flight-option-card.flight-option-selected .flight-option-badge{background:var(--status-default-bg);border-color:var(--status-default-border);color:var(--status-default-text)}.flight-option-card.flight-option-disabled{opacity:.5;pointer-events:none;filter:grayscale(.3)}.flight-option-header{display:flex;align-items:stretch;cursor:pointer;position:relative;transition:background .15s ease;min-height:140px}.flight-option-header:hover{background:#ffffff08}.flight-option-header:focus{outline:2px solid rgba(255,255,255,.3);outline-offset:-2px}.leg-container{display:flex;align-items:center;gap:var(--space-4)}.leg-logo-column{display:flex;align-items:center;flex-shrink:0;background:#fff;border-radius:var(--radius-sm);padding:var(--space-1)}[data-theme=light] .leg-logo-column{background:#fff}.leg-logo-box{width:80px;height:80px;min-width:80px;min-height:80px;border-radius:8px;overflow:hidden;display:flex;align-items:center;justify-content:center;background:transparent;border:none;padding:0;box-sizing:border-box;margin-top:0}.leg-logo-box>div{max-width:80px;max-height:80px;width:80px;height:80px}.leg-logo-box img{width:100%;height:100%;-o-object-fit:contain;object-fit:contain;display:block;max-width:100%;max-height:100%}.airline-logo-container{background:transparent;width:100%;height:100%;border-radius:inherit;display:flex;align-items:center;justify-content:center;overflow:hidden;padding:var(--space-2);box-sizing:border-box}[data-theme=light] .airline-logo-image{filter:brightness(.98) contrast(.98)}.leg-logo-box .airline-logo-fallback{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:16px;font-weight:var(--font-bold);color:var(--bg-primary);text-transform:uppercase;letter-spacing:.5px;background:transparent}.leg-content-column{display:flex;flex-direction:column;gap:var(--space-1);flex:1;min-width:0}.flight-option-main-grid{flex:1;display:grid;grid-template-columns:1fr auto;gap:var(--space-6);align-items:start;padding:var(--space-6) var(--space-5) var(--space-5) var(--space-5)}.flight-option-info{display:flex;flex-direction:column;gap:var(--space-3);min-width:0}.flight-legs-container{display:flex;flex-direction:column;gap:var(--space-3)}.flight-option-leg{display:flex;flex-direction:column;gap:var(--space-1)}.flight-option-leg-return{padding-top:var(--space-3);border-top:1px solid var(--border-subtle);margin-top:var(--space-1)}.leg-primary-row{display:flex;align-items:baseline;gap:var(--space-2);flex-wrap:wrap}.leg-time{font-size:18px;font-weight:var(--font-bold);color:var(--text-primary);line-height:1;letter-spacing:-.5px}.leg-airport{font-size:13px;font-weight:var(--font-semibold);color:var(--text-tertiary);text-transform:uppercase;margin-right:var(--space-1)}.leg-arrow{font-size:14px;color:var(--text-quaternary);margin:0 var(--space-1);transform:translateY(-1px)}.leg-secondary-row{display:flex;align-items:center;gap:var(--space-1-5);font-size:12px;color:var(--text-tertiary);font-weight:var(--font-medium)}.leg-dot{color:var(--text-quaternary);font-weight:700}.leg-date{color:var(--text-secondary)}.flight-option-pills{display:flex;flex-wrap:wrap;gap:6px;margin-top:var(--space-1)}.attribute-pill{display:inline-flex;align-items:center;padding:4px 10px;border-radius:4px;font-size:11px;font-weight:600;letter-spacing:.03em;transition:var(--transition-base);text-transform:uppercase;border:none}.attribute-pill.cabin{background:var(--surface-card-soft);color:var(--text-primary)}.attribute-pill.fare,.attribute-pill.trip-type{background:var(--bg-tertiary);color:var(--text-tertiary)}.attribute-pill.loyalty-highlight{background:#3b82f626;color:#60a5fa}[data-theme=light] .attribute-pill.loyalty-highlight{background:#2563eb26;color:#2563eb}[data-theme=light] .flight-option-right{border-left-color:var(--border-subtle)}[data-theme=light] .flight-option-price-breakdown{color:var(--text-secondary)}.attribute-pill:hover{transform:translateY(-1px);filter:brightness(1.2)}.flight-option-right{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:0;min-width:140px;align-self:stretch;padding-left:var(--space-4);padding-right:var(--space-6);border-left:1px solid rgba(255,255,255,.06)}.flight-option-price-block{display:flex;flex-direction:column;align-items:center;gap:var(--space-1);margin-bottom:8px}.flight-option-price{color:var(--text-primary);font-size:21.6px;font-weight:var(--font-bold);letter-spacing:-.5px;text-shadow:none;line-height:1}.flight-option-price-breakdown{font-size:11px;color:#ffffff8c;font-weight:var(--font-medium);text-align:center;line-height:1.4}.flight-option-cta{background:var(--bg-primary);color:#000;border:1px solid #d0d0d0;padding:var(--space-2) var(--space-4);border-radius:var(--radius-md);font-size:13px;font-weight:var(--font-bold);cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);letter-spacing:.3px;text-transform:uppercase;box-shadow:none;position:relative;overflow:hidden;min-width:120px;display:flex;align-items:center;justify-content:center;gap:var(--space-1-5);margin-top:0}[data-theme=dark] .flight-option-cta{background:#fff;color:#000;border:1px solid rgba(255,255,255,.2)}[data-theme=dark] .flight-option-cta:hover{background:#f5f5f5;border-color:#ffffff4d}.flight-option-cta:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:#0000000d;transform:translate(-50%,-50%);transition:width .6s ease,height .6s ease}.flight-option-cta:hover{transform:none;box-shadow:none;background:#f5f5f5}.flight-option-cta:hover:before{width:300px;height:300px}.flight-option-cta:active{transform:translateY(0) scale(.98)}.flight-option-cta:disabled{opacity:.4;cursor:not-allowed;transform:none}.flight-option-cta.selected{background:#f5f5f5;color:#000;box-shadow:none}.flight-option-cta.selected:hover{background:#e5e5e5;box-shadow:none}[data-theme=dark] .flight-option-cta.selected{background:#fff;color:#000;border-color:#ffffff4d}[data-theme=dark] .flight-option-cta.selected:hover{background:#f5f5f5;border-color:#fff6}.cta-checkmark{font-size:var(--text-lg);line-height:1}.flight-option-chevron{position:absolute;right:var(--space-4);top:50%;transform:translateY(-50%);transition:all .25s cubic-bezier(.4,0,.2,1);font-size:20px;color:var(--text-quaternary);pointer-events:none}.flight-option-chevron.open{transform:translateY(-50%) rotate(90deg);color:var(--text-secondary)}.flight-option-details{background:var(--bg-tertiary);border-top:1px solid var(--border-subtle);overflow:hidden;max-height:0;opacity:0;transition:max-height .3s cubic-bezier(.4,0,.2,1),opacity .25s ease}.flight-option-details.open{max-height:1200px;opacity:1}.flight-option-details-inner{padding:var(--space-6) var(--space-5);animation:fadeInUp .4s ease}@keyframes fadeInUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.flight-option-meta-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-5) var(--space-8);color:var(--text-secondary);font-size:var(--text-sm)}.meta-row{display:grid;grid-template-columns:100px minmax(0,1fr);align-items:start;-moz-column-gap:var(--space-4);column-gap:var(--space-4);row-gap:var(--space-1);min-width:0;padding:var(--space-1) 0;border-bottom:none}.meta-row:last-child{border-bottom:none}.meta-label{color:var(--text-quaternary);white-space:nowrap;font-weight:var(--font-semibold);font-size:11px;text-transform:uppercase;letter-spacing:.8px;padding-top:3px}.meta-value{color:var(--text-primary);font-weight:var(--font-medium);font-size:14px;white-space:normal;overflow-wrap:break-word;word-break:normal;min-width:0;line-height:1.5}.meta-value.terminal{white-space:nowrap;font-weight:var(--font-bold)}.meta-value.wrap{white-space:normal}.eco-badge{color:#22c55e;font-weight:var(--font-semibold)}.slice-summary{padding:var(--space-1-5) 0;font-size:var(--text-xs);color:var(--text-secondary);font-weight:var(--font-medium);border-left:2px solid var(--border-subtle);padding-left:var(--space-3);margin-left:var(--space-1)}.flight-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-8) var(--space-4);text-align:center;min-height:280px;animation:fadeIn .3s ease}.flight-empty-icon{width:80px;height:80px;border-radius:50%;background:#ffffff08;border:1px solid rgba(255,255,255,.08);display:flex;align-items:center;justify-content:center;margin-bottom:var(--space-4);color:#ffffff4d}.flight-empty-title{font-size:1.1rem;font-weight:var(--font-semibold);color:#fff;margin-bottom:var(--space-2);letter-spacing:-.01em}.flight-empty-description{font-size:.9rem;color:#ffffff80;max-width:280px;line-height:1.5;margin-bottom:var(--space-5)}.flight-empty-reset-btn{display:inline-flex;align-items:center;gap:8px;padding:10px 20px;background:transparent;border:1px solid rgba(255,255,255,.2);border-radius:999px;color:#fff;font-size:.85rem;font-weight:500;cursor:pointer;transition:all .2s ease}.flight-empty-reset-btn:hover{background:var(--bg-primary);border-color:var(--bg-primary);color:#000}[data-theme=light] .flight-empty-state{background:var(--bg-primary);color:var(--text-primary)}[data-theme=light] .flight-empty-icon{background:#0000000a;border:1px solid var(--border-subtle);color:#00000059}[data-theme=light] .flight-empty-title{color:var(--text-primary)}[data-theme=light] .flight-empty-description{color:var(--text-secondary)}[data-theme=light] .flight-empty-reset-btn{border:1px solid var(--border);color:var(--text-primary)}[data-theme=light] .flight-empty-reset-btn:hover{background:var(--text-primary);color:var(--bg-primary);border-color:var(--text-primary)}.flight-results-container{display:flex;flex-direction:column;animation:resultsAppear .5s ease}@keyframes resultsAppear{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.flight-results-container>.flight-option-card{animation:cardSlideIn .4s ease forwards;opacity:0}.flight-results-container>.flight-option-card:nth-child(1){animation-delay:.05s}.flight-results-container>.flight-option-card:nth-child(2){animation-delay:.1s}.flight-results-container>.flight-option-card:nth-child(3){animation-delay:.15s}@keyframes cardSlideIn{0%{opacity:0;transform:translate(-15px)}to{opacity:1;transform:translate(0)}}.flight-pagination-controls{display:flex;align-items:center;justify-content:space-between;padding:var(--space-4) var(--space-5);border-top:1px solid var(--border-subtle);background:var(--bg-primary);margin-top:0}.flight-pagination-info{font-size:var(--text-sm);color:#ffffffb3;font-weight:var(--font-semibold);letter-spacing:.3px}.flight-pagination-buttons{display:flex;gap:var(--space-3)}.flight-pagination-btn{padding:var(--space-2-5) var(--space-5);font-size:var(--text-sm);font-weight:var(--font-bold);border:1px solid #d0d0d0;border-radius:var(--radius-md);background:var(--bg-primary);color:#000;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);letter-spacing:.3px;text-transform:uppercase;box-shadow:none}.flight-pagination-btn:hover:not(:disabled){transform:none;box-shadow:none;background:#f5f5f5}.flight-pagination-btn:active:not(:disabled){transform:translateY(0)}.flight-pagination-btn:disabled{opacity:.35;cursor:not-allowed;background:#ffffff80;transform:none}[data-theme=dark] .flight-pagination-btn{background:#fff;color:#000;border:1px solid rgba(255,255,255,.2)}[data-theme=dark] .flight-pagination-btn:hover:not(:disabled){background:#f5f5f5;border-color:#ffffff4d}[data-theme=dark] .flight-pagination-btn:disabled{background:#ffffff80;opacity:.5}.flight-options-disabled{pointer-events:none}.flight-options-faded{opacity:.35;filter:grayscale(.4)}@media (max-width: 1024px){.flight-options-card{width:92%}.flight-option-main-grid{gap:var(--space-4)}.flight-filter-toolbar{gap:8px}}@media (max-width: 900px){.flight-option-meta-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 768px){.flight-options-card{width:95%}.flight-option-header{padding:var(--space-4) var(--space-3)}.flight-option-main-grid{grid-template-columns:1fr;gap:var(--space-4)}.leg-logo-box{width:70px;height:70px;min-width:70px;min-height:70px;padding:0}.leg-logo-box>div{max-width:70px;max-height:70px;width:70px;height:70px}.leg-logo-box .airline-logo-fallback{font-size:13px}.flight-option-right{flex-direction:row;align-items:center;justify-content:space-between;width:100%;height:auto}.flight-option-price-block{align-items:flex-start}.flight-option-cta{min-width:120px;margin-top:0}.flight-option-details-inner{padding:var(--space-4)}.flight-option-meta-grid{grid-template-columns:1fr;gap:var(--space-3)}.flight-pagination-controls{flex-direction:column;gap:var(--space-3);padding:var(--space-4)}.flight-pagination-buttons{width:100%}.flight-pagination-btn{flex:1}.leg-time{font-size:18px}}@media (max-width: 640px){.flight-options-card{width:100%;border-radius:var(--radius-md)}.flight-option-header{padding:var(--space-3)}.flight-option-badge{top:var(--space-1-5);left:var(--space-2);font-size:10px;padding:2px var(--space-1-5)}.leg-logo-box{width:64px;height:64px;min-width:64px;min-height:64px;padding:0}.leg-logo-box>div{max-width:64px;max-height:64px;width:64px;height:64px}.leg-logo-box>div>div{padding:var(--space-1-5)!important}.leg-logo-box .airline-logo-fallback{font-size:11px}.flight-option-price{font-size:18px}.leg-primary-row{gap:var(--space-1)}.leg-time{font-size:16px}.leg-airport{font-size:12px}}.time-filter-container,.baggage-filter-container{position:relative;display:inline-block}.filter-pill{display:inline-flex;align-items:center;gap:8px;height:38px;padding:0 16px;background:var(--bg-secondary);border:1px solid var(--border-subtle);border-radius:999px;color:var(--text-tertiary);font-size:.85rem;font-weight:500;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);white-space:nowrap}.filter-pill:hover:not(:disabled){background:var(--bg-tertiary);border-color:var(--border-light);color:var(--text-primary)}.filter-pill.active{background:var(--text-primary);border-color:var(--text-primary);color:var(--bg-primary);box-shadow:none}.filter-pill.active .filter-pill-arrow{transform:rotate(180deg);color:var(--bg-primary)}.filter-pill.active .filter-pill-icon{opacity:1}.filter-pill.has-value{border-color:var(--border-light);color:var(--text-primary);background:var(--surface-card-soft)}.filter-pill.active.has-value{background:var(--text-primary);color:var(--bg-primary)}.filter-pill.active.has-value:hover:not(:disabled){background:var(--text-primary);color:var(--bg-primary);opacity:.9}.filter-pill:disabled{opacity:.35;cursor:not-allowed}.filter-pill-icon{display:flex;align-items:center;justify-content:center;font-size:1rem;line-height:1;opacity:.7;transition:opacity .2s ease}.filter-pill-label{font-variant-numeric:tabular-nums}.filter-pill-arrow{display:flex;align-items:center;font-size:.6rem;opacity:.4;margin-left:2px;transition:transform .2s ease,opacity .2s ease}.filter-pill:hover .filter-pill-arrow{opacity:.7}[data-theme=light] .filter-pill{background:transparent}[data-theme=light] .filter-pill:hover:not(:disabled){background:#0000000d}[data-theme=light] .filter-pill.active{background:#1a1a1a;color:#fbf9f5;border-color:#1a1a1a}[data-theme=light] .filter-pill.active:hover:not(:disabled){background:#1a1a1a;color:#fbf9f5;opacity:.9}[data-theme=light] .filter-pill.active .filter-pill-arrow,[data-theme=light] .filter-pill.active .filter-pill-icon{color:#fbf9f5}[data-theme=light] .filter-pill.has-value{background:transparent;color:var(--text-primary)}[data-theme=light] .filter-pill.has-value:hover:not(:disabled){background:#0000000d;color:var(--text-primary)}[data-theme=light] .filter-pill.active.has-value{background:#1a1a1a;color:#fbf9f5;border-color:#1a1a1a}[data-theme=light] .filter-pill.active.has-value:hover:not(:disabled){background:#1a1a1a;color:#fbf9f5;opacity:.9}.filter-popover{position:absolute;top:calc(100% + 8px);left:0;z-index:100;background:var(--bg-primary);border:1px solid var(--border-subtle);border-radius:20px;box-shadow:none;padding:16px;min-width:280px;animation:popoverFadeIn .2s cubic-bezier(.16,1,.3,1);color:var(--text-primary)}[data-theme=dark] .filter-popover{background:var(--bg-primary);border:1px solid var(--border-subtle);color:var(--text-primary)}[data-theme=light] .filter-popover{background:#fbf9f5;border:1px solid #e0e0e0;color:#000;box-shadow:0 12px 32px #00000014}@keyframes popoverFadeIn{0%{opacity:0;transform:translateY(-8px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}.time-range-slider{display:flex;flex-direction:column;width:100%;color:inherit}.trs-track{position:relative;width:100%;height:24px;display:flex;align-items:center;--track-bg: var(--border-subtle);--track-fill: var(--text-primary);background:transparent;padding:0 10px;box-sizing:border-box}[data-theme=dark] .trs-track{--track-bg: var(--border-subtle);--track-fill: var(--text-primary)}[data-theme=light] .trs-track{--track-bg: rgba(0, 0, 0, .08);--track-fill: #1a1a1a}.trs-track:before{content:"";position:absolute;left:10px;right:10px;top:50%;height:4px;border-radius:4px;background:var(--track-bg);transform:translateY(-50%)}.trs-track:after{content:"";position:absolute;left:calc(10px + (100% - 20px) * var(--trs-start, 0) / 100);right:calc(10px + (100% - 20px) * (100 - var(--trs-end, 100)) / 100);top:50%;height:4px;border-radius:4px;background:var(--track-fill);transform:translateY(-50%);pointer-events:none}.trs-input{position:absolute;left:10px;right:10px;width:calc(100% - 20px);margin:0;background:transparent;pointer-events:none;-webkit-appearance:none;z-index:2;height:24px;top:0}.trs-input::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;pointer-events:auto;width:18px;height:18px;border-radius:50%;background:var(--text-primary);border:1px solid var(--border-subtle);box-shadow:none;cursor:grab;margin-top:0;-webkit-transition:transform .15s ease,box-shadow .15s ease;transition:transform .15s ease,box-shadow .15s ease}[data-theme=dark] .trs-input::-webkit-slider-thumb{background:var(--text-primary);border:1px solid var(--border-subtle)}[data-theme=light] .trs-input::-webkit-slider-thumb{background:#1a1a1a;border:1px solid rgba(0,0,0,.15)}.trs-input::-webkit-slider-thumb:hover{transform:scale(1.15);box-shadow:none}.trs-input::-webkit-slider-thumb:active{cursor:grabbing;transform:scale(1.1);box-shadow:none}.trs-input::-moz-range-thumb{pointer-events:auto;width:18px;height:18px;border-radius:50%;background:var(--text-primary);border:1px solid var(--border-subtle);box-shadow:none;cursor:grab;-moz-transition:transform .15s ease,box-shadow .15s ease;transition:transform .15s ease,box-shadow .15s ease}[data-theme=dark] .trs-input::-moz-range-thumb{background:var(--text-primary);border:1px solid var(--border-subtle)}[data-theme=light] .trs-input::-moz-range-thumb{background:#1a1a1a;border:1px solid rgba(0,0,0,.15)}.trs-input::-moz-range-thumb:hover{transform:scale(1.15);box-shadow:none}.trs-input::-moz-range-thumb:active{cursor:grabbing;transform:scale(1.1)}.form-card{background:var(--bg-primary);border:1px solid var(--border-subtle);border-radius:var(--radius-md);overflow:visible;margin:0;width:-moz-fit-content;width:fit-content;min-width:min(100%,280px);max-width:100%;box-shadow:none;animation:slideIn .4s ease;transition:background-color .3s ease,border-color .3s ease}.form-card.form-onboarding{margin:0 auto}.form-narrow{width:-moz-fit-content;width:fit-content;min-width:280px;max-width:var(--content-max-width-medium)}.form-wide{width:-moz-fit-content;width:fit-content;min-width:280px;max-width:1100px}.form-title{display:flex;align-items:center;justify-content:space-between;padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border-subtle);background:var(--bg-primary);color:var(--text-primary);font-weight:var(--font-bold);font-size:var(--text-base);letter-spacing:.4px;text-transform:uppercase;margin:0}.dynamic-form{display:flex;flex-direction:column;gap:0}.dynamic-form-no-header{padding-top:0}.form-subtitle{color:var(--text-secondary);font-size:var(--text-xs);margin:0 0 var(--space-4) 0;line-height:1.5;padding:0 var(--space-4)}.form-section{padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border-subtle);background:var(--bg-primary)}.form-section:last-of-type{border-bottom:none}.form-section-no-title{padding-top:var(--space-2)}.form-section-title{color:var(--text-primary);font-weight:var(--font-bold);font-size:var(--text-sm);letter-spacing:.4px;text-transform:uppercase;margin:0 0 var(--space-3) 0}.form-fields-grid{display:grid;grid-template-columns:repeat(2,minmax(160px,1fr));gap:var(--space-3) var(--space-4)}.form-fields-grid-centered{grid-template-columns:repeat(2,minmax(160px,1fr));gap:var(--space-3) var(--space-4)}@media (max-width: 768px){.form-fields-grid,.form-fields-grid-centered{grid-template-columns:1fr;gap:var(--space-4)}.form-section{padding:var(--space-4) var(--space-3)}.form-field-input,.form-field-select{font-size:16px;padding:8px 12px}}@media (max-width: 640px){.form-card{border-radius:var(--radius-sm)}.form-section,.form-title{padding:var(--space-3)}}.form-section-repeating{border:1px solid var(--border-subtle);border-radius:var(--radius-sm);padding:var(--space-3);margin:0 0 var(--space-3) 0;background:transparent;transition:var(--transition-base)}.form-section-repeating:last-of-type{margin-bottom:0}.form-section-repeating:hover{border-color:var(--border)}.form-section-repeating.accordion{padding:0;overflow:hidden}.form-section-repeating.accordion .form-fields-grid{padding:var(--space-3)}.form-section-repeating .form-section-title{color:var(--text-primary);font-size:var(--text-sm);font-weight:var(--font-bold);margin:0 0 var(--space-3) 0;text-transform:uppercase;letter-spacing:.4px}.form-section-repeating.accordion .form-section-title{margin:0;padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border-subtle)}.accordion-header{display:flex;justify-content:space-between;align-items:center;transition:background .2s ease;cursor:pointer}.accordion-header:hover{background:var(--surface-card-soft)}.accordion-icon{color:var(--text-tertiary);font-size:var(--text-xs);transition:transform .2s ease}.form-actions{display:flex;justify-content:flex-end;gap:var(--space-2);padding:var(--space-3) var(--space-4);border-top:1px solid var(--border-subtle);margin:0;background:var(--bg-primary)}.form-actions-centered{justify-content:center}.form-actions .btn{min-width:110px;padding:var(--space-2) var(--space-4);font-size:var(--text-sm)}.form-actions .btn.secondary{background:var(--bg-primary);color:#000;border:1px solid #d0d0d0}.form-actions .btn.secondary:hover:not(:disabled){background:#f5f5f5;border-color:#b0b0b0;transform:none}[data-theme=dark] .form-actions .btn.secondary{background:#fff;color:#000;border:1px solid rgba(255,255,255,.2)}[data-theme=dark] .form-actions .btn.secondary:hover:not(:disabled){background:#f5f5f5;border-color:#ffffff4d}.form-submitted-indicator{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-3);background:var(--bg-primary);border:1px solid var(--status-confirmed-border);border-radius:var(--radius-sm);color:var(--status-confirmed-text);font-size:var(--text-sm);font-weight:var(--font-semibold)}.submitted-checkmark{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;background:var(--status-confirmed-bg);border:1px solid var(--status-confirmed-border);border-radius:50%;color:var(--status-confirmed-text);font-size:var(--text-xs);font-weight:var(--font-bold)}fieldset:disabled input,fieldset:disabled select,fieldset:disabled textarea{opacity:.6;cursor:not-allowed;background:#ffffff0d!important}.checkbox-field{grid-column:1 / -1;margin:0;padding:0;margin-bottom:calc(-1 * var(--space-1))}.checkbox-label{display:flex;align-items:center;gap:var(--space-2);cursor:pointer;padding:var(--space-1-5);border-radius:var(--radius-sm);transition:background .15s ease}.checkbox-label:hover{background:var(--surface-card-soft)}.form-checkbox{width:16px;height:16px;min-width:16px;cursor:pointer;margin:0;background:transparent;border:1px solid var(--border);border-radius:3px;-moz-appearance:none;appearance:none;-webkit-appearance:none;transition:all .15s ease;position:relative}.form-checkbox:checked{background:var(--text-primary);border-color:var(--text-primary)}.form-checkbox:checked:before{content:"✓";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:var(--bg-primary);font-size:11px;font-weight:700}.form-checkbox:hover{border-color:var(--border-light)}.checkbox-text{-webkit-user-select:none;-moz-user-select:none;user-select:none;color:var(--text-primary);font-size:var(--text-xs);font-weight:var(--font-medium);line-height:1.4}.checkbox-field .field-description{display:block;margin-top:var(--space-0-5);margin-left:24px;font-size:10px;color:var(--text-tertiary);font-weight:var(--font-normal)}.change-flight-readonly-passenger{border-left:2px solid rgba(255,255,255,.2)}.change-flight-readonly-content{padding:var(--space-3);animation:fadeIn .3s ease}.readonly-fields{margin-bottom:var(--space-3)}.form-field.readonly{display:flex;flex-direction:column;gap:var(--space-1-5)}.form-field.readonly .form-label{font-size:9px;text-transform:uppercase;letter-spacing:.6px;color:var(--text-tertiary);font-weight:var(--font-bold)}.readonly-value{padding:var(--space-2) var(--space-3);background:var(--surface-card-soft);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);color:var(--text-primary);font-size:14px;min-height:32px;display:flex;align-items:center;min-width:-moz-fit-content;min-width:fit-content}.change-flight-readonly-footer{margin-top:var(--space-3);padding-top:var(--space-3);border-top:1px solid rgba(255,255,255,.08)}.change-flight-readonly-footer p{margin:0;font-size:var(--text-xs);color:var(--text-tertiary);line-height:1.5}.form-field-divider{grid-column:1 / -1;margin-top:var(--space-2);margin-bottom:var(--space-1);padding-top:var(--space-2);border-top:1px solid var(--border-subtle)}.loyalty-section-collapsible{margin-top:var(--space-2);padding-top:var(--space-2);border-top:1px solid rgba(255,255,255,.1)}[data-theme=light] .loyalty-section-collapsible{border-top:1px solid var(--border-subtle)}.loyalty-section-header{display:flex;justify-content:space-between;align-items:center;padding:var(--space-2);cursor:pointer;border-radius:var(--radius-sm);transition:background .15s ease;-webkit-user-select:none;-moz-user-select:none;user-select:none}.loyalty-section-header:hover{background:var(--surface-card-soft)}.loyalty-section-title{font-size:10px;font-weight:var(--font-semibold);text-transform:uppercase;letter-spacing:.4px;color:var(--text-tertiary)}.loyalty-section-toggle{font-size:8px;color:var(--text-quaternary);transition:transform .2s ease}.loyalty-section-content{display:grid;grid-template-columns:repeat(2,minmax(140px,1fr));gap:var(--space-3) var(--space-4);padding:var(--space-3) var(--space-2);animation:fadeIn .2s ease}@media (max-width: 640px){.loyalty-section-content{grid-template-columns:1fr;gap:var(--space-3)}}@keyframes fadeIn{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}.form-field-group{display:flex;flex-direction:column;gap:var(--space-1-5)}.form-field-label{display:flex;justify-content:space-between;align-items:center;gap:var(--space-2);font-size:9px;text-transform:uppercase;letter-spacing:.6px;color:var(--text-tertiary);font-weight:var(--font-bold);white-space:nowrap;min-width:0}.form-onboarding .form-field-label{font-size:10.35px}.label-required-indicator{background:transparent;border:1px solid rgba(239,68,68,.4);color:#ef4444;padding:1px 4px;border-radius:3px;font-size:8px;font-weight:var(--font-bold);letter-spacing:.4px;text-transform:uppercase;flex-shrink:0}.form-field-input,.form-field-select,.form-field-textarea{width:100%;background:transparent;border:1px solid var(--border-subtle);color:var(--text-primary);padding:var(--space-2) var(--space-3);font-size:14px;border-radius:var(--radius-sm);outline:none;transition:all .2s ease;font-family:inherit;min-width:-moz-fit-content;min-width:fit-content}.form-field-input::-moz-placeholder,.form-field-textarea::-moz-placeholder{color:var(--text-quaternary);font-size:14px}.form-field-input::placeholder,.form-field-textarea::placeholder{color:var(--text-quaternary);font-size:14px}.form-field-textarea{resize:vertical;min-height:36px;overflow-y:auto;line-height:1.4}.form-field-textarea-group{grid-column:1 / -1}.form-field-input:-webkit-autofill,.form-field-input:-webkit-autofill:hover,.form-field-input:-webkit-autofill:focus,.form-field-input:-webkit-autofill:active{-webkit-box-shadow:0 0 0 1000px var(--bg-primary) inset!important;-webkit-text-fill-color:var(--text-primary)!important;caret-color:var(--text-primary)!important;border:1px solid var(--border-subtle)!important;-webkit-transition:background-color 5000s ease-in-out 0s;transition:background-color 5000s ease-in-out 0s}.form-field-textarea:-webkit-autofill,.form-field-textarea:-webkit-autofill:hover,.form-field-textarea:-webkit-autofill:focus,.form-field-textarea:-webkit-autofill:active{-webkit-box-shadow:0 0 0 1000px var(--bg-primary) inset!important;-webkit-text-fill-color:var(--text-primary)!important;caret-color:var(--text-primary)!important;border:1px solid var(--border-subtle)!important;-webkit-transition:background-color 5000s ease-in-out 0s;transition:background-color 5000s ease-in-out 0s}.form-field-input:focus,.form-field-select:focus,.form-field-textarea:focus{border-color:var(--border-light);background-color:var(--surface-card-soft)}.form-field-input.field-error,.form-field-select.field-error,.form-field-textarea.field-error{border-color:#ef4444;background-color:#ef44440d}.form-field-select{appearance:none;-webkit-appearance:none;-moz-appearance:none;background-color:var(--bg-primary);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath fill='rgba(255,255,255,0.5)' d='M1.17 0L5 3.82 8.83 0 10 1.18l-5 5-5-5z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;background-size:10px 6px;padding-right:28px;cursor:pointer}[data-theme=light] .form-field-select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath fill='rgba(0,0,0,0.5)' d='M1.17 0L5 3.82 8.83 0 10 1.18l-5 5-5-5z'/%3E%3C/svg%3E")}.form-field-select:focus{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath fill='%23ffffff' d='M1.17 0L5 3.82 8.83 0 10 1.18l-5 5-5-5z'/%3E%3C/svg%3E")}[data-theme=light] .form-field-select:focus{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath fill='%23000000' d='M1.17 0L5 3.82 8.83 0 10 1.18l-5 5-5-5z'/%3E%3C/svg%3E")}.field-helper-text{font-size:10px;color:var(--text-quaternary);margin-top:-1px;font-weight:var(--font-medium);line-height:1.4}.field-error-text{font-size:10px;color:#ef4444;font-weight:var(--font-semibold);margin-top:2px;animation:slideDown .2s ease-out}@keyframes slideDown{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}input[type=date].form-field-input{position:relative}input[type=date].form-field-input::-webkit-calendar-picker-indicator{cursor:pointer;opacity:.5;-webkit-transition:opacity .15s ease;transition:opacity .15s ease;filter:invert(1)}input[type=date].form-field-input::-webkit-calendar-picker-indicator:hover{opacity:1}input[type=tel].form-field-input{font-variant-numeric:tabular-nums}fieldset:disabled .form-field-input,fieldset:disabled .form-field-select,fieldset:disabled .form-field-textarea,fieldset:disabled .form-checkbox{opacity:.5;cursor:not-allowed}fieldset:disabled .checkbox-label{opacity:.5;cursor:not-allowed}fieldset:disabled .checkbox-text{opacity:.5}fieldset:disabled .form-field-label{opacity:.5}fieldset:disabled .field-description{opacity:.5}fieldset:disabled .field-helper-text{opacity:.5}.phone-input-wrapper{width:100%;min-width:-moz-fit-content;min-width:fit-content;display:flex;align-items:center;gap:var(--space-1);background:transparent;border:1px solid var(--border-subtle)!important;border-radius:var(--radius-sm);padding:0;transition:all .2s ease;min-height:36px}.phone-input-wrapper:focus-within{border-color:var(--border-light)!important;background-color:var(--surface-card-soft)}.phone-input-wrapper.field-error{border-color:#ef4444!important;background-color:#ef44440d}.phone-input-wrapper .PhoneInputCountry{position:relative;display:flex;align-items:center;gap:var(--space-1);padding:var(--space-2) var(--space-2-5);border-right:1px solid var(--border-subtle);cursor:pointer;transition:background .2s ease;min-width:-moz-fit-content;min-width:fit-content}.phone-input-wrapper .PhoneInputCountry:hover{background:#ffffff0d}.phone-input-wrapper .PhoneInputCountryIcon{width:20px;height:14px;margin-right:0;border-radius:2px;box-shadow:0 1px 2px #00000080}.phone-input-wrapper .PhoneInputCountrySelect{position:absolute;top:0;left:0;width:100%;height:100%;z-index:1;opacity:0;cursor:pointer;appearance:none;-webkit-appearance:none;-moz-appearance:none;border:none}.phone-input-wrapper .PhoneInputCountrySelectArrow{opacity:.5;margin-left:var(--space-1);transition:opacity .15s ease;font-size:8px;border-color:#ffffff transparent transparent transparent}.phone-input-wrapper .PhoneInputCountry:hover .PhoneInputCountrySelectArrow{opacity:1}.phone-input-wrapper .PhoneInputInput{flex:1;background:transparent;border:none;color:#fff;padding:var(--space-2) var(--space-2-5);font-size:14px;font-family:inherit;font-variant-numeric:tabular-nums;outline:none;width:100%;min-width:-moz-fit-content;min-width:fit-content}.phone-input-wrapper .PhoneInputInput::-moz-placeholder{color:#ffffff4d;font-size:14px}.phone-input-wrapper .PhoneInputInput::placeholder{color:#ffffff4d;font-size:14px}[data-theme=light] .phone-input-wrapper{border:1px solid var(--border-subtle)!important;background:var(--bg-primary)!important;min-height:36px;box-shadow:none;border-width:1px!important;border-style:solid!important}[data-theme=light] .phone-input-wrapper:focus-within{border-color:var(--border)!important;background:var(--bg-primary)!important;box-shadow:none}[data-theme=light] .phone-input-wrapper.field-error{border-color:#ef4444;background:#ef44440d}[data-theme=light] .phone-input-wrapper .PhoneInputCountry{border-right:1px solid var(--border-subtle)}[data-theme=light] .phone-input-wrapper .PhoneInputCountry:hover{background:var(--surface-card-soft)}[data-theme=light] .phone-input-wrapper .PhoneInputCountrySelectArrow{border-color:#000000 transparent transparent transparent}[data-theme=light] .phone-input-wrapper .PhoneInputInput{color:var(--text-primary);background:transparent}[data-theme=light] .phone-input-wrapper .PhoneInputInput::-moz-placeholder{color:var(--text-quaternary)}[data-theme=light] .phone-input-wrapper .PhoneInputInput::placeholder{color:var(--text-quaternary)}[data-theme=light] .phone-input-wrapper .PhoneInputCountryIcon--border{box-shadow:0 0 0 1px #00000026}[data-theme=light] .PhoneInputCountryOptions{background:var(--bg-primary);border:1px solid var(--border-subtle);box-shadow:0 8px 24px #00000026}[data-theme=light] .PhoneInputCountryOption{color:var(--text-primary)}[data-theme=light] .PhoneInputCountryOption:hover,[data-theme=light] .PhoneInputCountryOption--selected{background:var(--surface-card-soft);color:var(--text-primary)}[data-theme=light] .PhoneInputCountryOptionsSearch{border-bottom:1px solid var(--border-subtle);background:var(--bg-primary)}[data-theme=light] .PhoneInputCountryOptionsSearchInput{background:var(--bg-secondary);border:1px solid var(--border-subtle);color:var(--text-primary)}[data-theme=light] .PhoneInputCountryOptionsSearchInput:focus{border-color:var(--border)}[data-theme=light] .PhoneInputCountryOptionsSearchInput::-moz-placeholder{color:var(--text-quaternary)}[data-theme=light] .PhoneInputCountryOptionsSearchInput::placeholder{color:var(--text-quaternary)}.phone-input-wrapper .PhoneInputCountryIcon--border{border:none;box-shadow:0 0 0 1px #ffffff26}.PhoneInputCountryOptions{background:#000;border:1px solid rgba(255,255,255,.15);border-radius:var(--radius-sm);box-shadow:0 8px 24px #000c;max-height:250px;overflow-y:auto;z-index:1000}.PhoneInputCountryOption{padding:8px 10px;cursor:pointer;display:flex;align-items:center;gap:8px;transition:background .15s ease;color:#ffffffe6;font-size:12px}.PhoneInputCountryOption:hover{background:#ffffff1a;color:#fff}.PhoneInputCountryOption--selected{background:#ffffff26;color:#fff;font-weight:700}.PhoneInputCountryOptionsSearch{padding:var(--space-2);border-bottom:1px solid rgba(255,255,255,.12);background:#000}.PhoneInputCountryOptionsSearchInput{width:100%;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:4px;color:#fff;padding:6px 10px;font-size:12px;font-family:inherit;outline:none;transition:border-color .2s ease}.PhoneInputCountryOptionsSearchInput:focus{border-color:#fff}.PhoneInputCountryOptionsSearchInput::-moz-placeholder{color:#ffffff4d}.PhoneInputCountryOptionsSearchInput::placeholder{color:#ffffff4d}.loyalty-searchable-select{position:relative;width:100%;min-width:-moz-fit-content;min-width:fit-content}.loyalty-searchable-select-input-wrapper{position:relative;display:flex;align-items:center}.loyalty-searchable-select-input{width:100%;padding:8px 48px 8px 12px;font-size:14px;font-weight:var(--font-normal);border:1px solid rgba(255,255,255,.12);border-radius:var(--radius-sm);background:transparent;color:#fff;transition:all .2s ease;outline:none;min-width:-moz-fit-content;min-width:fit-content}.loyalty-searchable-select-input::-moz-placeholder{color:#ffffff4d;font-size:14px}.loyalty-searchable-select-input::placeholder{color:#ffffff4d;font-size:14px}.loyalty-searchable-select-input:focus{border-color:#fff;background:#ffffff05}.loyalty-searchable-select.error .loyalty-searchable-select-input{border-color:#ef4444;background:#ef44440d}.loyalty-searchable-select.disabled{opacity:.6;cursor:not-allowed}.loyalty-searchable-select.disabled .loyalty-searchable-select-input{cursor:not-allowed;background:#ffffff0d}.loyalty-searchable-select-clear{position:absolute;right:28px;top:50%;transform:translateY(-50%);width:16px;height:16px;border:none;background:#fff3;color:#000;border-radius:50%;font-size:11px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;padding:0}.loyalty-searchable-select-clear:hover{background:#fff6}.loyalty-searchable-select-arrow{position:absolute;right:10px;top:50%;transform:translateY(-50%);color:#fff6;font-size:8px;pointer-events:none}.loyalty-searchable-select-dropdown{position:absolute;top:calc(100% + 4px);left:0;right:0;max-height:220px;overflow-y:auto;background:#000;border:1px solid rgba(255,255,255,.12);border-radius:var(--radius-sm);box-shadow:0 8px 24px #000c;z-index:1000;margin:0;padding:2px 0;list-style:none}.loyalty-searchable-select-option{padding:8px 12px;cursor:pointer;transition:background .15s ease;font-size:14px;color:#ffffffe6}.loyalty-searchable-select-option:hover,.loyalty-searchable-select-option.highlighted{background:#ffffff14;color:#fff}.loyalty-searchable-select-option.selected{background:#ffffff26;color:#fff;font-weight:var(--font-semibold)}.loyalty-searchable-select-option.selected:hover,.loyalty-searchable-select-option.selected.highlighted{background:#fff3}.loyalty-option-content{display:flex;align-items:center;justify-content:space-between;gap:8px}.loyalty-option-label{flex:1;font-weight:var(--font-normal);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:14px}.loyalty-option-code{font-size:10px;color:#ffffff80;font-weight:var(--font-bold);font-family:SF Mono,Monaco,Courier New,monospace;background:#ffffff14;padding:1px 4px;border-radius:3px}.loyalty-searchable-select-no-results{padding:12px;text-align:center;color:#fff6;font-size:11px}.loyalty-searchable-select-dropdown::-webkit-scrollbar{width:8px}.loyalty-searchable-select-dropdown::-webkit-scrollbar-track{background:transparent;border-radius:4px}.loyalty-searchable-select-dropdown::-webkit-scrollbar-thumb{background:#ffffff26;border-radius:4px}.loyalty-searchable-select-dropdown::-webkit-scrollbar-thumb:hover{background:#ffffff4d}[data-theme=light] .loyalty-searchable-select-input{border:1px solid var(--border-subtle)!important;background:var(--bg-primary)!important;color:var(--text-primary)!important}[data-theme=light] .loyalty-searchable-select-input::-moz-placeholder{color:var(--text-quaternary)!important}[data-theme=light] .loyalty-searchable-select-input::placeholder{color:var(--text-quaternary)!important}[data-theme=light] .loyalty-searchable-select-input:focus{border-color:var(--border)!important;background:var(--bg-primary)!important}[data-theme=light] .loyalty-searchable-select.error .loyalty-searchable-select-input{border-color:#ef4444!important;background:#ef44440d!important}[data-theme=light] .loyalty-searchable-select.disabled .loyalty-searchable-select-input{background:var(--bg-secondary)!important}[data-theme=light] .loyalty-searchable-select-clear{background:#0000001a!important;color:var(--text-primary)!important}[data-theme=light] .loyalty-searchable-select-clear:hover{background:#0003!important}[data-theme=light] .loyalty-searchable-select-arrow{color:var(--text-quaternary)!important}[data-theme=light] .loyalty-searchable-select-dropdown{background:var(--bg-primary)!important;border:1px solid var(--border-subtle)!important;box-shadow:0 8px 24px #00000026!important}[data-theme=light] .loyalty-searchable-select-option{color:var(--text-primary)!important}[data-theme=light] .loyalty-searchable-select-option:hover,[data-theme=light] .loyalty-searchable-select-option.highlighted,[data-theme=light] .loyalty-searchable-select-option.selected{background:var(--surface-card-soft)!important;color:var(--text-primary)!important}[data-theme=light] .loyalty-searchable-select-option.selected:hover,[data-theme=light] .loyalty-searchable-select-option.selected.highlighted{background:var(--bg-secondary)!important}[data-theme=light] .loyalty-option-code{color:var(--text-secondary)!important;background:var(--bg-secondary)!important}[data-theme=light] .loyalty-searchable-select-no-results{color:var(--text-quaternary)!important}[data-theme=light] .loyalty-searchable-select-dropdown::-webkit-scrollbar-thumb{background:#0003!important}[data-theme=light] .loyalty-searchable-select-dropdown::-webkit-scrollbar-thumb:hover{background:#0000004d!important}.hotel-options-container{--hotel-border-strong: rgba(255, 255, 255, .1);--hotel-border-subtle: rgba(255, 255, 255, .06);--hotel-card-shadow: 0 0 0 1px rgba(255, 255, 255, .03);--hotel-soft-surface: rgba(255, 255, 255, .02);--hotel-soft-strong: rgba(255, 255, 255, .15);--hotel-muted: rgba(255, 255, 255, .7);--hotel-muted-strong: rgba(255, 255, 255, .85);display:grid;grid-template-columns:minmax(595px,809px) 575px;grid-template-rows:auto auto;gap:0;margin:16px 0;width:100%;max-width:var(--content-max-width-chat);position:relative}[data-theme=light] .hotel-options-container{--hotel-border-strong: rgba(0, 0, 0, .08);--hotel-border-subtle: rgba(0, 0, 0, .05);--hotel-card-shadow: 0 0 0 1px rgba(0, 0, 0, .04);--hotel-soft-surface: rgba(0, 0, 0, .03);--hotel-soft-strong: rgba(0, 0, 0, .08);--hotel-muted: rgba(0, 0, 0, .65);--hotel-muted-strong: rgba(0, 0, 0, .8)}.mobile-view-toggle{display:none}.hotel-options-card{grid-column:1;grid-row:1}.hotel-right-panel{grid-column:2;grid-row:1}.hotel-rooms-fullwidth-container{grid-column:1 / -1;grid-row:2;width:100%;margin-top:0;position:relative;z-index:2;animation:roomsSlideUp .35s cubic-bezier(.4,0,.2,1)}@keyframes roomsSlideUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.hotel-options-card{background:var(--surface-card);border:1px solid var(--hotel-border-strong);border-radius:12px 0 0 12px;overflow:hidden;display:flex;flex-direction:column;align-items:center;border-right:none;box-shadow:var(--hotel-card-shadow)}.hotel-controls-row{display:flex;align-items:center;justify-content:flex-end;padding:12px 20px;border-bottom:1px solid var(--border);gap:8px}.hotel-about-btn{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border:1px solid var(--hotel-border-subtle);border-radius:4px;background:var(--hotel-soft-surface);color:var(--text-secondary);font-size:.75rem;font-weight:500;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;transition:all .18s ease;text-transform:uppercase;letter-spacing:.05em;white-space:nowrap}.hotel-about-btn:hover:not(.disabled):not(.active){border-color:var(--hotel-border-strong);background:var(--hotel-soft-strong);color:var(--text-primary)}.hotel-about-btn.active{background:var(--hotel-soft-strong);border-color:var(--hotel-border-strong);color:var(--text-primary)}.hotel-about-btn.active:hover:not(.disabled){background:var(--hotel-soft-strong);border-color:var(--hotel-border-strong)}.hotel-about-btn.disabled{opacity:.3;cursor:not-allowed;pointer-events:none}.hotel-about-icon{display:flex;align-items:center;justify-content:center;flex-shrink:0;opacity:.7}.hotel-about-btn.active .hotel-about-icon{opacity:1}.hotel-about-icon svg{width:16px;height:16px}.hotel-about-label{font-weight:600}.hotel-about-btn:focus-visible{outline:2px solid var(--text-primary);outline-offset:2px}.hotel-why-panel{display:flex;flex-direction:column;min-height:400px;background:var(--surface-card);border-top:1px solid var(--border);animation:fadeIn .2s ease}.hotel-why-panel-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-4);border-bottom:1px solid var(--border-subtle)}.hotel-why-panel-title{margin:0;font-size:1rem;font-weight:var(--font-semibold);color:var(--text-primary)}.hotel-why-panel-close{background:transparent;border:none;padding:4px;color:var(--text-secondary);cursor:pointer;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);transition:all .15s ease}.hotel-why-panel-close:hover{background:var(--hotel-soft-surface);color:var(--text-primary)}.hotel-why-panel-content{flex:1;overflow-y:auto;padding:var(--space-4)}.hotel-why-intro{margin-bottom:var(--space-4);padding-bottom:var(--space-4);border-bottom:1px solid var(--border)}.hotel-why-intro p{margin:0;font-size:.9rem;line-height:1.6;color:var(--text-secondary)}.hotel-why-panel-footer{display:flex;align-items:center;justify-content:space-between;padding:var(--space-4);border-top:1px solid var(--border);gap:var(--space-3)}.hotel-why-back-btn{background:transparent;border:1px solid var(--border);padding:var(--space-2) var(--space-3);color:var(--text-secondary);font-size:.85rem;font-weight:var(--font-semibold);cursor:pointer;border-radius:var(--radius-sm);transition:all .15s ease}.hotel-why-back-btn:hover{background:var(--hotel-soft-surface);border-color:var(--border);color:var(--text-primary)}.hotel-why-prefs-btn{background:var(--hotel-soft-surface);border:1px solid var(--border);padding:var(--space-2) var(--space-3);color:var(--text-primary);font-size:.85rem;font-weight:var(--font-semibold);cursor:pointer;border-radius:var(--radius-sm);transition:all .15s ease}.hotel-why-prefs-btn:hover{background:var(--hotel-soft-strong);border-color:var(--border)}.hotel-why-loading{display:flex;align-items:center;gap:8px;font-size:.85rem;color:var(--text-secondary);padding:var(--space-4) 0}.hotel-why-error{font-size:.85rem;color:var(--status-error-text);padding:var(--space-4) 0}.hotel-why-content{display:flex;flex-direction:column;gap:var(--space-3)}.hotel-why-list{list-style:none;padding:0;margin:0 0 var(--space-3) 0;color:var(--text-secondary);font-size:.9rem;line-height:1.5}.hotel-why-list li{margin-bottom:var(--space-2);padding-left:var(--space-3);position:relative}.hotel-why-list li:before{content:"•";position:absolute;left:0;color:var(--text-tertiary)}.hotel-why-section{display:flex;flex-direction:column;gap:var(--space-4)}.hotel-why-section-title{font-size:.75rem;font-weight:var(--font-semibold);color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.08em;padding-bottom:var(--space-2);border-bottom:1px solid var(--hotel-border-subtle)}.hotel-why-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-3) var(--space-4)}.hotel-why-item{display:flex;flex-direction:column;gap:2px}.hotel-why-item-label{font-size:.7rem;font-weight:var(--font-medium);color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.05em}.hotel-why-item-value{font-size:.9rem;font-weight:var(--font-semibold);color:var(--text-primary)}.hotel-why-amenities{display:flex;flex-direction:column;gap:var(--space-2)}.hotel-why-amenities-label{font-size:.7rem;font-weight:var(--font-medium);color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.05em}.hotel-why-amenities-list{display:flex;flex-wrap:wrap;gap:6px}.hotel-why-amenity-tag{padding:4px 10px;background:var(--hotel-soft-surface);border:1px solid var(--hotel-border-subtle);border-radius:4px;font-size:.8rem;font-weight:var(--font-medium);color:var(--text-primary)}.hotel-why-amenity-tag.hotel-why-amenity-soft{background:var(--hotel-soft-surface);border-color:var(--hotel-border-subtle);color:var(--text-secondary)}.hotel-why-amenity-tag.hotel-why-amenity-avoid{background:var(--hotel-soft-surface);border-color:var(--hotel-border-subtle);color:var(--text-tertiary);text-decoration:line-through}.hotel-why-amenities-avoid .hotel-why-amenities-label{color:var(--text-tertiary)}.hotel-why-chips{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-bottom:var(--space-3)}.hotel-why-chip{display:flex;flex-direction:column;gap:2px;padding:var(--space-2) var(--space-3);background:var(--hotel-soft-surface);border:1px solid var(--hotel-border-subtle);border-radius:var(--radius-sm)}.hotel-why-chip .label{font-size:.7rem;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.05em}.hotel-why-chip .value{font-size:.85rem;color:var(--text-primary);font-weight:var(--font-semibold)}.hotel-why-chip-avoid{background:var(--hotel-soft-surface);border-color:var(--hotel-border-subtle)}.hotel-why-chip-avoid .value{color:var(--text-tertiary)}.hotel-why-loyalty-title{width:100%;font-size:.75rem;font-weight:var(--font-semibold);color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.08em;margin-bottom:var(--space-2)}.hotel-why-loyalty-list{display:flex;flex-direction:column;gap:var(--space-1)}.hotel-why-loyalty-item{display:flex;align-items:center;gap:var(--space-2);font-size:.8rem;padding:var(--space-1) 0}.hotel-why-loyalty-program{color:var(--text-primary);font-weight:var(--font-semibold)}.hotel-why-loyalty-tier{color:var(--text-secondary);font-size:.75rem;padding:2px 6px;background:var(--hotel-soft-surface);border-radius:var(--radius-sm)}.hotel-why-loyalty-badge{color:var(--text-tertiary);font-size:.7rem;padding:2px 6px;background:var(--hotel-soft-surface);border-radius:var(--radius-sm);text-transform:uppercase;letter-spacing:.05em}.hotel-why-ranking{margin-top:var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--hotel-border-subtle)}.hotel-why-ranking-title{font-size:.85rem;font-weight:var(--font-semibold);color:var(--text-secondary);margin-bottom:var(--space-2)}.hotel-why-ranking-list{display:flex;flex-direction:column;gap:var(--space-1)}.hotel-why-ranking-item{display:flex;justify-content:space-between;align-items:center;font-size:.8rem;padding:var(--space-1) 0}.hotel-why-ranking-label{color:var(--text-tertiary)}.hotel-why-ranking-value{color:var(--text-secondary);font-weight:var(--font-semibold)}.hotel-why-explanations{margin-top:var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--hotel-border-subtle)}.hotel-why-explanations-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:var(--space-2)}.hotel-why-explanations-list li{font-size:.85rem;color:var(--text-secondary);line-height:1.5;padding-left:var(--space-3);position:relative}.hotel-why-explanations-list li:before{content:"";position:absolute;left:0;top:8px;width:4px;height:4px;background:var(--text-tertiary);border-radius:50%}.hotel-why-empty{padding:var(--space-3) 0;text-align:center}.hotel-why-empty p{margin:0;font-size:.85rem;color:var(--text-tertiary);line-height:1.5}.hotel-why-empty p:first-child{margin-bottom:var(--space-1);color:var(--text-secondary)}.hotel-options-disabled{pointer-events:none}.hotel-options-faded{opacity:.6}.hotel-pagination-controls{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-top:1px solid var(--border);background:var(--surface-card);width:100%}.hotel-pagination-info{font-size:.875rem;color:var(--text-secondary);font-weight:500}.hotel-pagination-buttons{display:flex;gap:12px}.hotel-pagination-btn{padding:8px 16px;font-size:.875rem;font-weight:var(--font-semibold);color:var(--text-primary);background:var(--surface-card);border:1px solid var(--border);border-radius:6px;cursor:pointer;transition:all .2s ease}.hotel-pagination-btn:hover:not(:disabled){background:var(--hotel-soft-strong);border-color:var(--border)}.hotel-pagination-btn:disabled{opacity:.4;cursor:not-allowed;background:var(--surface-card)}[data-theme=dark] .hotel-pagination-btn{background:#fff;color:#000;border:1px solid rgba(255,255,255,.2)}[data-theme=dark] .hotel-pagination-btn:hover:not(:disabled){background:#f5f5f5;border-color:#ffffff4d}[data-theme=dark] .hotel-pagination-btn:disabled{background:#ffffff80;opacity:.5}.hotel-option-item{position:relative;margin:0 auto;background:var(--surface-card);border:none;border-radius:12px 0 0 12px;overflow:hidden;transition:all .25s cubic-bezier(.4,0,.2,1);width:100%;height:100%;display:flex;flex-direction:column}.hotel-option-item:last-of-type{margin-bottom:0}.hotel-option-item:hover{box-shadow:none}.hotel-image-skeleton{position:relative;width:100%;height:320px;background:var(--bg-secondary);overflow:hidden}.skeleton-shimmer{width:100%;height:100%;background:var(--bg-secondary);animation:pulse 1.5s infinite}.hotel-image-placeholder{display:flex;align-items:center;justify-content:center;width:100%;height:320px;background:var(--bg-secondary);color:var(--text-tertiary);border-radius:12px}@keyframes pulse{0%{background-color:var(--bg-secondary)}50%{background-color:var(--bg-tertiary)}to{background-color:var(--bg-secondary)}}.hotel-image-carousel{position:relative;width:100%;flex-shrink:0;overflow:hidden;background:var(--bg-secondary);border-radius:12px 0 0}.hotel-image-carousel .hotel-image{position:relative;width:100%;height:320px;overflow:hidden;background:var(--bg-secondary)}.hotel-image-carousel .hotel-image img{position:absolute;top:0;left:0;width:100%;height:100%;-o-object-fit:cover;object-fit:cover;-o-object-position:center;object-position:center;display:block}.hotel-image-carousel-controls{position:absolute;top:0;left:0;right:0;bottom:0;pointer-events:none;z-index:2}.image-nav-btn{position:absolute;top:50%;transform:translateY(-50%);background:#ffffffe6;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);color:var(--bg-primary);border:none;width:42px;height:42px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .25s cubic-bezier(.4,0,.2,1);opacity:0;pointer-events:auto;outline:none;-webkit-tap-highlight-color:transparent}.hotel-image-carousel:hover .image-nav-btn{opacity:1}.image-nav-btn:hover{background:var(--bg-primary);transform:translateY(-50%) scale(1.08);box-shadow:0 4px 16px #0003}.image-nav-btn:active,.image-nav-btn:focus{background:var(--bg-primary);transform:translateY(-50%) scale(1);outline:none;-webkit-tap-highlight-color:transparent}[data-theme=light] .image-nav-btn{background:#0009;color:#fff;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}[data-theme=light] .image-nav-btn:hover{background:#000c;color:#fff;box-shadow:0 4px 16px #0000004d}[data-theme=light] .image-nav-btn:active,[data-theme=light] .image-nav-btn:focus{background:#000c;color:#fff}.image-nav-prev{left:8px}.image-nav-next{right:8px}.image-dots{position:absolute;bottom:16px;left:50%;transform:translate(-50%);display:flex;gap:6px;z-index:3;padding:6px 10px;background:#0006;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border-radius:16px;opacity:0;transition:opacity .25s ease}.hotel-image-carousel:hover .image-dots{opacity:1}.image-dot{width:7px;height:7px;border-radius:50%;background:#fff6;border:none;cursor:pointer;transition:all .2s ease;padding:0}.image-dot:hover{background:#ffffffb3}.image-dot.active{background:var(--bg-primary);width:20px;border-radius:4px}.hotel-review-row{display:flex;align-items:center;gap:8px;margin:0;flex-shrink:0}.hotel-review-score{font-size:.9375rem;font-weight:var(--font-bold);color:var(--primary)}.hotel-review-category{font-size:.875rem;font-weight:var(--font-semibold);color:var(--text-primary)}.hotel-review-count{font-size:.8125rem;color:var(--text-secondary)}.hotel-review-count-inline{font-size:.8125rem;color:var(--text-secondary);font-weight:var(--font-medium);flex-shrink:0;white-space:nowrap}.hotel-option-selected{background:var(--bg-secondary)}.hotel-option-card{position:relative;display:flex;flex-direction:column;padding:0;cursor:pointer;transition:background-color .2s ease;flex:1}.hotel-option-card:hover{background:#ffffff05}.hotel-card-left{display:flex;flex-direction:column;gap:0;flex:1;min-width:0}.hotel-image{position:relative;width:100%;height:400px;flex-shrink:0;border-radius:0;overflow:hidden;background:var(--bg-secondary)}.hotel-image img{position:absolute;top:0;left:0;width:100%;height:100%;-o-object-fit:cover;object-fit:cover;-o-object-position:center;object-position:center;display:block}.hotel-map-card{position:relative;background:var(--surface-card);border:1px solid var(--border);border-radius:0 8px 8px 0;overflow:hidden;flex-shrink:0;width:575px;display:flex;flex-direction:column;align-items:stretch;justify-content:stretch;height:auto;align-self:stretch}.hotel-map-container{position:relative;width:100%;height:100%;overflow:hidden;background:var(--bg-secondary);display:flex;align-items:center;justify-content:center}.hotel-map-image{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;display:block;filter:contrast(1.1) brightness(.95)}.hotel-map-card-overlay{position:absolute;bottom:0;left:0;right:0;background:#000000e6;border-top:1px solid var(--hotel-border-subtle);padding:20px 24px;pointer-events:none}.hotel-map-card-location{font-size:1rem;font-weight:var(--font-semibold);color:var(--text-primary);letter-spacing:.2px}[data-theme=light] .hotel-map-card-overlay{background:#ffffffe6}@media (max-width: 1200px){.hotel-options-container{display:flex;flex-direction:column;gap:16px}.hotel-map-card,.hotel-right-panel{width:100%;max-width:575px;height:552px;border-radius:8px}.hotel-options-card{width:100%;max-width:809px;border-radius:8px;border-right:1px solid var(--border)}}@media (max-width: 768px){.hotel-options-container{display:flex;flex-direction:column;gap:0;margin:12px 0;position:relative}.hotel-controls-row{justify-content:space-between;gap:12px;padding:12px 16px}.mobile-view-toggle{display:flex;align-items:center;justify-content:center;gap:8px;padding:8px 12px;background:var(--hotel-soft-surface);border:1px solid var(--hotel-border-subtle);border-radius:4px;color:var(--text-primary);font-size:.75rem;font-weight:var(--font-semibold);cursor:pointer;transition:all .2s ease;z-index:10;text-transform:uppercase;letter-spacing:.05em}.mobile-view-toggle.active{background:var(--hotel-soft-strong);border-color:var(--hotel-border-strong)}.mobile-view-toggle:active{background:var(--hotel-soft-strong)}.mobile-view-toggle svg{flex-shrink:0}.hotel-options-card.mobile-hide,.hotel-right-panel{display:none}.hotel-right-panel.mobile-show{display:flex;width:100%;min-height:400px;border-radius:0 0 12px 12px}.hotel-right-panel.mobile-show .panel-slide-container,.hotel-right-panel.mobile-show .panel-view{width:100%}.hotel-right-panel.mobile-show .map-view{display:flex}.hotel-right-panel.mobile-show .details-view{display:none}.hotel-options-card,.hotel-right-panel,.hotel-map-card{width:100%;max-width:100%;border-radius:12px}.hotel-option-card{border-radius:12px}.hotel-image-carousel .hotel-image,.hotel-image-skeleton,.hotel-image-placeholder{height:240px}.hotel-name-centered{font-size:1.35rem;line-height:1.25}.hotel-date-section{font-size:1.05rem;gap:8px}.hotel-stars-inline{display:none}.hotel-stars-fallback{display:inline}.hotel-specs{font-size:.75rem;gap:5px;padding:0 8px}.hotel-meta-row{gap:12px;margin-top:6px}.hotel-review-badge .review-score{font-size:.875rem}.hotel-review-badge .review-descriptor{font-size:.75rem}.hotel-review-badge .review-count,.hotel-refundable-badge{font-size:.6875rem}.hotel-card-footer{flex-direction:column;padding:14px 16px;gap:14px;align-items:stretch}.price-top-row,.price-main-row,.price-sub-row{width:100%}.hotel-action-buttons{width:100%;display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:10px}.hotel-pagination-buttons-inline{flex-shrink:0;display:flex;gap:8px}.hotel-choose-btn{flex:1;min-width:0;max-width:none;width:auto}.hotel-price-simple{width:100%;align-items:center;text-align:center}.price-top-row,.price-main-row,.price-sub-row{justify-content:center}.hotel-action-buttons{width:100%;flex-direction:column;gap:12px}.hotel-pagination-btn-inline{width:44px;height:44px;flex-shrink:0}.hotel-choose-btn{flex:1 1 auto;min-width:0;max-width:240px;height:44px;font-size:.875rem;padding:10px 14px;letter-spacing:.3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hotel-details{padding:16px;gap:12px}.hotel-chevron{right:12px;width:28px;height:28px;font-size:20px}.hotel-right-panel{min-height:400px}.hotel-map-card-overlay{padding:20px 16px}.hotel-map-card-location{font-size:1.05rem}.hotel-details-panel{padding:16px;gap:16px}.panel-hotel-name{font-size:1.25rem}.stay-grid{grid-template-columns:1fr;gap:12px}.stay-item,.stay-item.full-width{grid-column:1}.image-nav-btn{width:36px;height:36px;opacity:.9}.image-dots{opacity:1}}.hotel-details{flex:1;min-width:0;padding:16px 12px;display:flex;flex-direction:column;gap:10px;position:relative}.hotel-header-row{display:flex;align-items:center;justify-content:center}.hotel-name-centered{font-size:1.7325rem;font-weight:var(--font-bold);color:var(--text-primary);margin:0;line-height:1.2;letter-spacing:-.5px;text-align:center}.hotel-stars-inline{font-size:1.2rem;color:var(--text-primary);margin-left:var(--space-3);letter-spacing:2px}.hotel-stars-fallback{display:none;font-size:.9rem;color:var(--text-primary);margin-left:var(--space-2);letter-spacing:1px}.hotel-date-section{display:flex;align-items:center;justify-content:center;gap:12px;font-size:1.3365rem;font-weight:var(--font-semibold)}.hotel-date-text{color:var(--text-primary);letter-spacing:.3px}.hotel-date-arrow{color:var(--text-tertiary);font-size:1.25rem}.hotel-specs{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:6px;font-size:.8125rem;letter-spacing:.2px}.hotel-spec-item{color:var(--text-secondary);font-weight:var(--font-medium)}.hotel-spec-amenities{color:var(--text-secondary)}.hotel-spec-amenities .facility-searched{color:#fbbf24;font-weight:var(--font-semibold)}.hotel-spec-separator{color:var(--text-tertiary);font-weight:400}.hotel-meta-row{display:flex;align-items:center;justify-content:center;gap:16px;margin-top:8px}.hotel-review-badge{display:flex;align-items:center;gap:8px}.hotel-review-badge .review-score{font-size:.9375rem;font-weight:var(--font-bold);color:var(--text-primary)}.hotel-review-badge .review-descriptor{font-size:.8125rem;font-weight:var(--font-medium);color:var(--text-secondary)}.hotel-review-badge .review-count{font-size:.75rem;font-weight:var(--font-normal);color:var(--text-tertiary)}.hotel-refundable-badge{font-size:.75rem;font-weight:var(--font-medium);color:#4ade80;letter-spacing:.2px}.hotel-card-footer{display:flex;flex-direction:row;align-items:center;justify-content:space-between;padding:16px 20px;background:transparent;border-top:1px solid var(--hotel-border-subtle);gap:var(--space-6);flex-wrap:nowrap;margin-top:auto}.hotel-price-simple{display:flex;flex-direction:column;gap:0;flex:1;align-items:flex-start;justify-content:center;transform:translateY(-2px)}.price-top-row{display:flex;align-items:center;gap:12px;height:24px;margin-bottom:2px}.price-top-spacer{height:24px;margin-bottom:2px}.price-strikethrough-simple{font-size:.95rem;color:var(--text-tertiary);text-decoration:line-through;font-weight:var(--font-medium)}@media (max-width: 768px){.price-strikethrough-simple{font-size:.9rem}}.price-discount-badge-simple{background:var(--bg-primary);color:#000;padding:5px 12px;border-radius:4px;font-size:12px;font-weight:var(--font-bold);text-transform:uppercase;letter-spacing:.5px;line-height:1;display:inline-flex;align-items:center;white-space:nowrap}.price-main-row{display:flex;align-items:baseline}.price-current-simple{font-size:2.25rem;font-weight:var(--font-bold);color:var(--text-primary);line-height:1;letter-spacing:-.02em}@media (max-width: 768px){.price-current-simple{font-size:2rem}}.price-sub-row{display:flex;align-items:baseline;gap:6px}.price-per-night-simple{font-size:var(--text-sm);color:var(--text-secondary);font-weight:var(--font-medium)}.price-total-label{font-size:.75rem;color:var(--text-tertiary);text-transform:uppercase}.hotel-action-buttons{display:flex;align-items:center;gap:var(--space-3);flex-shrink:0}.hotel-pagination-buttons-inline{display:flex;gap:12px}.hotel-pagination-btn-inline{padding:0;width:46px;height:46px;display:flex;align-items:center;justify-content:center;color:var(--text-primary);background:transparent;border:1px solid var(--hotel-border-subtle);border-radius:8px;cursor:pointer;transition:all .2s ease}.hotel-pagination-btn-inline:hover:not(:disabled){background:var(--hotel-soft-surface);border-color:var(--hotel-border-strong)}.hotel-pagination-btn-inline:active:not(:disabled){transform:scale(.96)}.hotel-pagination-btn-inline:disabled{opacity:.3;cursor:not-allowed;transform:none}[data-theme=dark] .hotel-pagination-btn-inline{background:#fff;color:#000;border:1px solid rgba(255,255,255,.2)}[data-theme=dark] .hotel-pagination-btn-inline:hover:not(:disabled){background:#f5f5f5;border-color:#ffffff4d}[data-theme=dark] .hotel-pagination-btn-inline:disabled{background:#ffffff80;opacity:.5}.hotel-choose-btn{background:var(--bg-primary);color:#000;border:none;padding:12px 28px;height:54px;border-radius:8px;font-size:.9375rem;font-weight:var(--font-bold);cursor:pointer;transition:all .25s cubic-bezier(.4,0,.2,1);letter-spacing:.8px;text-transform:uppercase;box-shadow:0 0 0 1px #ffffff1a;position:relative;overflow:hidden;white-space:nowrap;flex-shrink:0;display:flex;align-items:center;justify-content:center}.hotel-choose-btn:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:#00000014;transform:scaleX(0);transform-origin:left;transition:transform .3s ease}.hotel-choose-btn:hover:before{transform:scaleX(1)}.hotel-choose-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 0 0 1px #fff3,0 12px 32px #ffffff1a}.hotel-choose-btn:active:not(:disabled){transform:translateY(0) scale(.98)}.hotel-choose-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}[data-theme=dark] .hotel-choose-btn{background:#fff;color:#000;border:1px solid rgba(255,255,255,.2);box-shadow:0 0 0 1px #fff3}[data-theme=dark] .hotel-choose-btn:before{background:#0000000d}[data-theme=dark] .hotel-choose-btn:hover:not(:disabled){background:#f5f5f5;border-color:#ffffff4d;box-shadow:0 0 0 1px #ffffff4d,0 12px 32px #00000026}[data-theme=dark] .hotel-choose-btn:disabled{background:#ffffff80;opacity:.5}[data-theme=light] .hotel-choose-btn{border:1px solid rgba(0,0,0,.12);box-shadow:none}[data-theme=light] .hotel-choose-btn:hover:not(:disabled){border-color:#0003;box-shadow:0 0 0 1px #0003,0 12px 32px #00000014}[data-theme=light] .hotel-pagination-btn-inline{border-color:#0000001f}[data-theme=light] .hotel-pagination-btn-inline:hover:not(:disabled){border-color:#0003}.hotel-chevron{position:absolute;right:16px;top:50%;transform:translateY(-50%) rotate(0);font-size:24px;color:var(--text-tertiary);transition:transform .3s cubic-bezier(.4,0,.2,1),color .2s ease;pointer-events:none;display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;background:#ffffff0d}.hotel-chevron.open{transform:translateY(-50%) rotate(90deg);color:var(--text-primary);background:var(--hotel-soft-surface)}.hotel-right-panel{position:relative;background:var(--surface-card);border:1px solid var(--hotel-border-strong);border-left:none;border-radius:0 12px 12px 0;overflow:hidden;flex-shrink:0;width:575px;height:auto;align-self:stretch;min-height:552px;box-shadow:var(--hotel-card-shadow)}.panel-slide-container{display:flex;width:200%;height:100%;transition:transform .4s cubic-bezier(.25,1,.5,1);transform:translate(0)}.panel-slide-container.show-details{transform:translate(-50%)}.panel-view{width:50%;height:100%;position:relative;overflow:hidden}.hotel-details-panel{padding:16px 20px;height:100%;overflow-y:auto;background:#0a0a0a;color:#f5f5f5;display:flex;flex-direction:column;gap:16px}.details-section{display:flex;flex-direction:column;gap:8px}.details-header{display:flex;align-items:center;gap:8px;margin-bottom:2px}.details-icon{color:#fff}.details-title{font-size:.7rem;font-weight:var(--font-bold);letter-spacing:1px;color:#fff;text-transform:uppercase}.details-content{display:flex;flex-direction:column;gap:4px}.details-divider{height:1px;background:#ffffff14;width:100%;flex-shrink:0}.panel-header-row{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap}.panel-hotel-name{font-size:1.1rem;font-weight:var(--font-bold);color:#fff;margin:0;line-height:1.2}.location-row{display:flex;align-items:center;gap:6px;margin-top:4px}.location-icon{color:#fff9;flex-shrink:0}.location-text{font-size:.9rem;line-height:1.4;font-weight:var(--font-medium);color:#fffc}.rating-row{display:flex;align-items:center;gap:8px}.rating-stars{color:#fff;letter-spacing:2px;font-size:.85rem}.rating-score{font-weight:var(--font-semibold);color:#fff;font-size:.85rem}.rating-count{font-weight:400;color:#ffffff80;margin-left:4px}.stay-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px 20px}.stay-item{display:flex;flex-direction:column;gap:2px}.stay-item.full-width{grid-column:1 / -1}.stay-label{font-size:.65rem;color:#fff6;text-transform:uppercase;letter-spacing:.5px;font-weight:var(--font-medium)}.stay-value{font-size:.9rem;color:#fff;font-weight:var(--font-medium)}.text-green{color:#4ade80}.amenities-grid{display:flex;flex-wrap:wrap;gap:6px}.amenity-tag{padding:4px 10px;background:#ffffff14;border-radius:16px;font-size:.75rem;color:#ffffffe6;border:1px solid rgba(255,255,255,.05);white-space:nowrap}.amenity-tag.more-tag{background:transparent;color:#ffffff80;border:1px solid rgba(255,255,255,.1)}.description-text-long{font-size:.85rem;line-height:1.5;color:#fffc;margin:0}.price-breakdown-section{margin-top:auto}.price-receipt{background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:8px;padding:12px;display:flex;flex-direction:column;gap:6px}.receipt-row{display:flex;justify-content:space-between;align-items:center}.receipt-label{font-size:.85rem;color:#fff9}.receipt-value{font-size:.85rem;color:#fff;font-weight:var(--font-medium);font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.receipt-value.strikethrough{text-decoration:line-through;color:#fff6}.receipt-row.highlight-green .receipt-label,.receipt-row.highlight-green .receipt-value{color:#4ade80}.receipt-divider{height:1px;background:#ffffff1a;margin:6px 0}.receipt-row.total-row{margin-top:2px}.receipt-row.total-row .receipt-label{color:#fff;font-weight:var(--font-bold);font-size:.95rem}.receipt-row.total-row .receipt-value.main-total{font-size:1.2rem;font-weight:var(--font-bold);font-family:var(--font-sans)}.receipt-sub-row{display:flex;justify-content:space-between;font-size:.75rem;margin-top:-2px}.receipt-sub-label{color:#fff6}.receipt-sub-value{color:#fff9}.hotel-details-panel::-webkit-scrollbar{width:6px}.hotel-details-panel::-webkit-scrollbar-track{background:transparent}.hotel-details-panel::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:3px}.hotel-details-panel::-webkit-scrollbar-thumb:hover{background:#fff3}[data-theme=light] .hotel-details-panel{background:var(--bg-primary);color:#000}[data-theme=light] .details-icon{color:#000}[data-theme=light] .details-title{color:#4a4a4a}[data-theme=light] .details-divider{background:#0000001a}[data-theme=light] .panel-hotel-name{color:#000}[data-theme=light] .location-icon{color:#0009}[data-theme=light] .location-text{color:#000c}[data-theme=light] .rating-stars,[data-theme=light] .rating-score{color:#000}[data-theme=light] .rating-count{color:#00000080}[data-theme=light] .stay-label{color:#0006}[data-theme=light] .stay-value{color:#000}[data-theme=light] .amenity-tag{background:var(--bg-primary);color:#000;border:1px solid rgba(0,0,0,.12)}[data-theme=light] .amenity-tag.more-tag{background:transparent;color:#00000080;border:1px solid rgba(0,0,0,.12)}[data-theme=light] .description-text-long{color:#000c}[data-theme=light] .price-receipt{background:#00000008;border:1px solid rgba(0,0,0,.1)}[data-theme=light] .receipt-label{color:#0009}[data-theme=light] .receipt-value{color:#000}[data-theme=light] .receipt-value.strikethrough{color:#0006}[data-theme=light] .receipt-divider{background:#0000001a}[data-theme=light] .receipt-row.total-row .receipt-label{color:#000}[data-theme=light] .receipt-sub-label{color:#0006}[data-theme=light] .receipt-sub-value{color:#0009}[data-theme=light] .hotel-details-panel::-webkit-scrollbar-thumb{background:#0000001a}[data-theme=light] .hotel-details-panel::-webkit-scrollbar-thumb:hover{background:#0003}.room-rate-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#000c;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:9999;padding:24px;opacity:0;animation:modalFadeIn .25s forwards}.room-rate-modal-container{background:var(--bg-primary);border:1px solid rgba(255,255,255,.1);border-radius:16px;width:100%;max-width:820px;max-height:90vh;overflow-y:auto;box-shadow:0 0 0 1px #ffffff0d,0 24px 80px #0009;display:flex;flex-direction:column;position:relative;transform:scale(.96) translateY(10px);opacity:0;animation:modalScaleIn .3s .05s cubic-bezier(.4,0,.2,1) forwards}@keyframes modalFadeIn{to{opacity:1}}@keyframes modalScaleIn{to{opacity:1;transform:scale(1) translateY(0)}}.room-rate-modal-container::-webkit-scrollbar{width:6px}.room-rate-modal-container::-webkit-scrollbar-track{background:transparent}.room-rate-modal-container::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:3px}.room-rate-modal-container::-webkit-scrollbar-thumb:hover{background:#fff3}.room-rate-modal-header{position:relative}.modal-close-btn{position:absolute;top:16px;right:16px;z-index:10;background:#00000080;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.1);border-radius:50%;width:40px;height:40px;display:flex;align-items:center;justify-content:center;color:#fff;cursor:pointer;transition:all .2s ease}.modal-close-btn:hover{background:#000000b3;border-color:#fff3;transform:scale(1.05)}.modal-room-carousel{height:380px;background:var(--bg-secondary);position:relative;overflow:hidden;border-radius:16px 16px 0 0}.modal-room-image{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;-o-object-position:center;object-position:center}.carousel-nav-btn{position:absolute;top:50%;transform:translateY(-50%);background:#ffffffe6;border:none;width:44px;height:44px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--bg-primary);transition:all .2s ease;opacity:0}.modal-room-carousel:hover .carousel-nav-btn{opacity:1}.carousel-nav-btn:hover{background:var(--bg-primary);transform:translateY(-50%) scale(1.05);box-shadow:0 4px 16px #0003}.carousel-nav-btn.prev{left:16px}.carousel-nav-btn.next{right:16px}.carousel-dots{position:absolute;bottom:20px;left:0;right:0;display:flex;justify-content:center;gap:8px;opacity:0;transition:opacity .2s ease}.modal-room-carousel:hover .carousel-dots{opacity:1}.carousel-dot{width:8px;height:8px;border-radius:50%;background:#fff6;border:none;padding:0;cursor:pointer;transition:all .2s ease}.carousel-dot:hover{background:#ffffffb3}.carousel-dot.active{background:var(--bg-primary);width:24px;border-radius:4px}.room-rate-modal-content{padding:28px 32px 32px}.modal-room-title{font-size:26px;font-weight:var(--font-semibold);margin:0 0 24px;color:var(--text-primary);letter-spacing:-.5px;line-height:1.2}.modal-amenities-section{margin-bottom:28px;display:flex;flex-direction:column;gap:14px}.modal-section-title{font-size:12px;font-weight:var(--font-semibold);margin:0;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:1.2px}.modal-amenities-grid{display:flex;flex-wrap:wrap;gap:8px}.modal-amenity-item{display:inline-flex;align-items:center;gap:8px;font-size:13px;color:var(--text-secondary);padding:6px 12px;background:#ffffff0a;border:1px solid rgba(255,255,255,.08);border-radius:20px;transition:all .15s ease}.modal-amenity-item:hover{background:#ffffff0f;border-color:#ffffff1f}.modal-amenity-item svg{color:var(--text-primary);opacity:.6;flex-shrink:0;width:14px;height:14px}.amenities-toggle-btn{align-self:flex-start;background:transparent;border:none;color:var(--text-primary);font-size:13px;font-weight:var(--font-medium);cursor:pointer;display:flex;align-items:center;gap:6px;padding:8px 0;transition:opacity .2s ease;opacity:.7;margin-top:4px}.amenities-toggle-btn:hover{opacity:1}.modal-rates-section{display:flex;flex-direction:column;gap:12px}.modal-rates-section .modal-section-title{margin-bottom:6px}.rate-option-card{background:transparent;border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:20px 24px;display:flex;align-items:center;justify-content:space-between;gap:24px;transition:all .2s ease;position:relative}.rate-option-card:hover{border-color:#ffffff26;background:#ffffff05}.rate-card-details{display:flex;flex-direction:column;gap:10px;flex:1;min-width:0}.rate-card-boarding{font-size:17px;font-weight:var(--font-semibold);color:var(--text-primary);display:flex;align-items:center;gap:10px}.rate-card-boarding svg{opacity:.7}.rate-card-tags{display:flex;flex-wrap:wrap;gap:8px}.rate-tag{font-size:10px;font-weight:var(--font-semibold);padding:5px 10px;border-radius:4px;display:flex;align-items:center;gap:5px;text-transform:uppercase;letter-spacing:.5px}.rate-tag.refundable{background:#4ade801f;color:#4ade80}.rate-tag.non-refundable{background:#f871711f;color:#f87171}.rate-tag.payment{background:#ffffff0f;color:var(--text-tertiary)}.rate-card-action-row{display:flex;align-items:center;gap:20px;flex-shrink:0}.rate-pricing-info{display:flex;flex-direction:column;align-items:flex-end;gap:2px;text-align:right}.rate-price-main{display:flex;align-items:baseline}.rate-price-sub{display:flex;flex-direction:column;align-items:flex-end;gap:1px}.rate-total-price{font-size:24px;font-weight:var(--font-bold);color:var(--text-primary);line-height:1.1;letter-spacing:-.5px}.rate-price-night{font-size:12px;color:var(--text-tertiary);font-weight:var(--font-medium)}.rate-taxes-note{font-size:10px;color:var(--text-quaternary);letter-spacing:.1px}.modal-select-btn{min-width:130px;padding:14px 24px;background:var(--bg-primary);color:#000;border:none;border-radius:8px;font-size:13px;font-weight:var(--font-bold);cursor:pointer;transition:all .2s ease;white-space:nowrap;letter-spacing:.5px;text-transform:uppercase}.modal-select-btn:hover{background:#ffffffe6;transform:translateY(-1px);box-shadow:0 4px 16px #ffffff1a}.modal-select-btn:active{transform:translateY(0) scale(.98)}.room-image-placeholder{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--bg-secondary);color:var(--text-quaternary);font-size:13px;font-weight:var(--font-medium);letter-spacing:.5px;text-transform:uppercase}@media (max-width: 768px){.room-rate-modal-overlay{padding:0;align-items:flex-end}.room-rate-modal-container{max-height:95vh;border-radius:20px 20px 0 0;width:100%;max-width:100%}.modal-room-carousel{height:260px;border-radius:20px 20px 0 0}.room-rate-modal-content{padding:24px 20px 32px}.modal-room-title{font-size:22px;margin-bottom:20px}.modal-amenities-grid{gap:6px}.modal-amenity-item{font-size:12px;padding:5px 10px}.rate-option-card{flex-direction:column;align-items:stretch;padding:18px 16px;gap:14px}.rate-card-action-row{flex-direction:row;justify-content:space-between;align-items:center;padding-top:14px;border-top:1px solid rgba(255,255,255,.06);gap:16px}.rate-pricing-info{align-items:flex-start;text-align:left}.rate-price-sub{align-items:flex-start}.rate-total-price{font-size:22px}.modal-select-btn{padding:14px 20px;min-width:120px}.carousel-nav-btn{width:40px;height:40px;opacity:.9}.carousel-nav-btn.prev{left:12px}.carousel-nav-btn.next{right:12px}.carousel-dots{opacity:1;bottom:16px}.modal-close-btn{top:12px;right:12px;width:36px;height:36px}}@media (max-width: 480px){.modal-amenities-grid{gap:5px}.modal-amenity-item{font-size:11px;padding:4px 8px}.rate-card-tags{gap:6px}.rate-tag{font-size:9px;padding:4px 8px}}.room-selection-fullwidth{--room-border: rgba(255, 255, 255, .12);--room-border-subtle: rgba(255, 255, 255, .08);--room-border-soft: rgba(255, 255, 255, .06);--room-border-minimal: rgba(255, 255, 255, .04);--room-surface-soft: rgba(255, 255, 255, .03);--room-surface-subtle: rgba(255, 255, 255, .02);--room-surface-hover: rgba(255, 255, 255, .05);--room-shadow: 0 0 0 1px rgba(255, 255, 255, .05), 0 8px 32px rgba(0, 0, 0, .4);width:100%;background:var(--bg-primary);border-radius:12px;overflow:hidden;border:1px solid var(--room-border);box-shadow:var(--room-shadow)}[data-theme=light] .room-selection-fullwidth{--room-border: rgba(0, 0, 0, .1);--room-border-subtle: rgba(0, 0, 0, .08);--room-border-soft: rgba(0, 0, 0, .06);--room-border-minimal: rgba(0, 0, 0, .04);--room-surface-soft: rgba(0, 0, 0, .03);--room-surface-subtle: rgba(0, 0, 0, .02);--room-surface-hover: rgba(0, 0, 0, .03);--room-shadow: 0 0 0 1px rgba(0, 0, 0, .05), 0 8px 32px rgba(0, 0, 0, .1)}.room-selection-header{display:flex;justify-content:space-between;align-items:flex-start;padding:28px 28px 24px;border-bottom:1px solid var(--room-border-subtle);background:var(--bg-primary)}.room-selection-summary{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 28px 12px;border-bottom:1px solid var(--room-border-soft);background:var(--bg-primary)}.summary-meta{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.summary-pill{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border:1px solid var(--room-border);border-radius:999px;color:var(--text-primary);background:var(--room-surface-soft);font-size:13px;font-weight:var(--font-semibold)}.summary-pill svg{opacity:.7}.summary-pill.subtle{color:var(--text-secondary);background:var(--room-surface-subtle)}.summary-price{display:flex;flex-direction:column;align-items:flex-end;gap:2px;text-align:right}.summary-label{font-size:12px;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.5px;font-weight:var(--font-semibold)}.summary-value{font-size:22px;font-weight:var(--font-bold);color:var(--text-primary);letter-spacing:-.4px}.summary-sub{font-size:12px;color:var(--text-tertiary)}.room-selection-title-group{flex:1;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;display:flex;flex-direction:column;gap:0;transition:opacity .2s ease;background:transparent;border:none;padding:0;text-align:left;color:inherit;font:inherit}.room-selection-title-group:hover{opacity:.9}.room-selection-title-group:focus{outline:none}.room-selection-title-group:focus-visible{outline:2px solid var(--text-tertiary);outline-offset:4px;border-radius:4px}.room-selection-title-row{display:flex;align-items:center;gap:14px;margin-bottom:10px}.room-selection-title{font-size:26px;font-weight:var(--font-semibold);color:var(--text-primary);margin:0;line-height:1.2;letter-spacing:-.5px}.room-selection-collapse-icon{color:var(--text-tertiary);transition:color .2s ease,transform .2s ease;opacity:.6}.room-selection-title-group:hover .room-selection-collapse-icon{color:var(--text-primary);opacity:1}.room-selection-dates{font-size:15px;color:var(--text-tertiary);margin:0;font-weight:var(--font-medium);letter-spacing:.2px}.room-selection-multi-room{color:var(--accent-color, #4f9eff);font-weight:var(--font-semibold)}.room-selection-multi-room-note{font-size:13px;color:var(--accent-color, #4f9eff);margin:4px 0 0;font-weight:var(--font-medium)}.room-selection-close-btn{background:transparent;border:1px solid var(--room-border-subtle);color:var(--text-primary);cursor:pointer;padding:10px;margin:-4px -4px 0 0;display:flex;align-items:center;justify-content:center;border-radius:8px;transition:all .2s ease;opacity:.7}.room-selection-close-btn:hover{opacity:1;background:var(--room-surface-hover);border-color:var(--room-border)}.room-selection-close-btn:active{transform:scale(.95)}.room-selection-error,.room-loading-spinner,.no-rooms-message{padding:48px 28px;text-align:center;color:var(--text-secondary)}.room-selection-error p,.no-rooms-message p{margin:0 0 20px;font-size:15px;line-height:1.6}.close-rooms-btn{background:transparent;color:var(--text-primary);border:1px solid var(--room-border);padding:12px 24px;border-radius:8px;font-size:14px;font-weight:var(--font-semibold);cursor:pointer;transition:all .2s ease;letter-spacing:.3px}.close-rooms-btn:hover{background:var(--room-surface-hover);border-color:var(--text-tertiary)}.room-list-single{display:flex;flex-direction:column;gap:0;padding:0;animation:slideDown .35s cubic-bezier(.4,0,.2,1)}@keyframes slideDown{0%{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:translateY(0)}}.room-card-compact{display:flex;background:var(--bg-primary);border-top:1px solid var(--room-border-soft);overflow:hidden;transition:all .25s cubic-bezier(.4,0,.2,1);min-height:180px;position:relative}.room-card-compact:first-child{border-top:none}.room-card-compact:before{content:"";position:absolute;left:0;top:0;bottom:0;width:0;background:var(--room-surface-soft);transition:width .3s ease}.room-card-compact:hover{background:var(--room-surface-subtle)}.room-card-compact:hover:before{width:4px;background:var(--text-tertiary)}.room-image-small-container{width:200px;min-width:200px;height:auto;position:relative;background:var(--bg-secondary);overflow:hidden;flex-shrink:0}.room-image-small{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;-o-object-position:center;object-position:center;transition:transform .4s cubic-bezier(.4,0,.2,1)}.room-card-compact:hover .room-image-small{transform:scale(1.03)}.room-image-placeholder.small{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;color:var(--text-quaternary);font-size:12px;font-weight:var(--font-medium);letter-spacing:.5px;text-transform:uppercase;background:var(--bg-secondary)}.room-content-compact{flex:1;padding:24px 28px;display:flex;justify-content:space-between;gap:24px;min-width:0}.room-info-main{flex:1;display:flex;flex-direction:column;gap:12px;min-width:0}.room-name-compact{font-size:20px;font-weight:var(--font-semibold);color:var(--text-primary);margin:0;line-height:1.3;letter-spacing:-.3px}.room-meta-pills{display:flex;flex-wrap:wrap;gap:6px;margin:6px 0 8px}.room-chip{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:999px;font-size:12px;font-weight:var(--font-semibold);border:1px solid var(--room-border-subtle);background:var(--room-surface-soft);color:var(--text-secondary)}.room-chip.success{color:#22c55e;border-color:#22c55e4d;background:#22c55e1a}.room-chip.highlight{color:var(--text-primary);border-color:var(--room-border)}.room-chip.neutral{color:var(--text-tertiary)}.room-amenities-inline{display:flex;flex-wrap:wrap;gap:6px 16px;margin-top:4px}.amenity-icon-item{display:flex;align-items:center;gap:7px;font-size:13px;color:var(--text-tertiary);transition:all .2s ease}.amenity-icon-item svg{opacity:.7;flex-shrink:0}.room-card-compact:hover .amenity-icon-item{color:var(--text-secondary)}.amenity-icon-item.amenity-unique{color:var(--text-primary);font-weight:var(--font-medium)}.amenity-icon-item.amenity-unique svg{opacity:1}.more-amenities-btn{background:transparent;border:none;color:var(--text-primary);font-size:13px;font-weight:var(--font-medium);cursor:pointer;padding:0;text-decoration:none;opacity:.8;transition:opacity .2s ease}.more-amenities-btn:hover{opacity:1;text-decoration:underline;text-underline-offset:2px}.room-pricing-action{display:flex;flex-direction:column;align-items:flex-end;justify-content:center;gap:16px;min-width:180px;flex-shrink:0}.price-range-display{text-align:right;display:flex;flex-direction:column;gap:4px}.price-range-text{font-size:22px;font-weight:var(--font-bold);color:var(--text-primary);letter-spacing:-.5px;line-height:1.2}.price-range-text.muted{color:var(--text-tertiary);font-weight:var(--font-semibold)}.rate-count-label{font-size:12px;color:var(--text-tertiary);font-weight:var(--font-medium);letter-spacing:.2px}.view-options-btn{background:transparent;color:var(--text-primary);border:1px solid var(--room-border);padding:12px 24px;border-radius:8px;font-size:14px;font-weight:var(--font-semibold);cursor:pointer;transition:all .2s ease;white-space:nowrap;letter-spacing:.3px}.view-options-btn:hover{border-color:var(--text-tertiary);background:var(--room-surface-hover)}.view-options-btn:active{transform:scale(.98)}.view-options-btn:disabled{opacity:.55;cursor:not-allowed;border-color:var(--room-border-soft);background:var(--room-surface-soft);transform:none}@media (max-width: 768px){.room-selection-fullwidth{border-radius:0;border-left:none;border-right:none}.room-selection-header{padding:24px 20px 20px}.room-selection-title{font-size:22px;margin-bottom:0}.room-selection-dates{font-size:14px}.room-list-single{padding:0;gap:0}.room-card-compact{flex-direction:column;min-height:auto;border-top:1px solid var(--room-border-soft)}.room-card-compact:before{display:none}.room-image-small-container{width:100%;height:220px;min-width:unset}.room-content-compact{flex-direction:column;gap:16px;padding:20px}.room-name-compact{font-size:18px}.room-amenities-inline{gap:6px 14px}.amenity-icon-item{font-size:12px}.room-pricing-action{width:100%;flex-direction:row;justify-content:space-between;align-items:center;gap:16px;border-top:1px solid rgba(255,255,255,.06);padding-top:16px;margin-top:4px;min-width:unset}.price-range-display{text-align:left;align-items:flex-start}.price-range-text{font-size:20px}.rate-count-label{font-size:11px}.view-options-btn{padding:14px 24px;font-size:14px;flex-shrink:0}.room-selection-summary{flex-direction:column;align-items:flex-start;gap:10px;padding:12px 20px 10px}.summary-price{align-items:flex-start;text-align:left}}.room-selection-fullwidth.loading{min-height:200px}.room-loading-spinner{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;padding:48px 28px}.room-loading-spinner p{color:var(--text-tertiary);font-size:14px;margin:0;letter-spacing:.2px}.room-skeleton-list{margin-top:18px;display:flex;flex-direction:column;gap:12px}.room-card-compact.skeleton{border-top:1px solid rgba(255,255,255,.04)}.skeleton-block{background:#ffffff0d;height:160px}.skeleton-line{height:12px;border-radius:6px;background:#ffffff14;margin-bottom:8px}.skeleton-line.wide{width:75%}.skeleton-line.short{width:45%}.skeleton-line.price{width:90px;height:18px;margin-bottom:12px}.skeleton-pill{width:120px;height:36px;border-radius:10px;background:#ffffff14}.chat-container{flex:1;overflow-y:auto;overflow-x:hidden;padding:var(--space-5) var(--space-6);padding-bottom:var(--space-9);display:flex;flex-direction:column;align-items:center;background:var(--bg-primary);will-change:scroll-position;-webkit-overflow-scrolling:touch;position:relative;scrollbar-width:thin;scrollbar-color:var(--border) transparent}.chat-container::-webkit-scrollbar{width:4px}.chat-container::-webkit-scrollbar-track{background:transparent}.chat-container::-webkit-scrollbar-thumb{background:var(--border);border-radius:2px}@media (max-width: 768px){.chat-container{scrollbar-width:none;-ms-overflow-style:none}.chat-container::-webkit-scrollbar{width:0;display:none;background:transparent}.chat-container::-webkit-scrollbar-thumb{display:none}.chat-container::-webkit-scrollbar-track{display:none}}.chat-content{width:100%;max-width:var(--content-max-width-chat);display:flex;flex-direction:column;gap:var(--space-5);align-self:center;contain:layout style}@media (max-width: 768px){.chat-container{padding:var(--space-4) var(--space-4);padding-bottom:var(--space-7);width:100%;max-width:100vw}.chat-content{gap:var(--space-4);width:100%;max-width:100%}}.chat-content-child{width:100%;display:flex;flex-direction:column;gap:var(--space-4);margin-bottom:var(--space-4);contain:layout;content-visibility:auto;contain-intrinsic-size:100px}.chat-content-child:last-child{margin-bottom:0}.ephemeral-status-container{margin-top:-8px;margin-bottom:var(--space-4);align-self:flex-start}.ephemeral-status-container.fading-out{opacity:0;transform:translateY(-8px)}.ephemeral-status{display:inline-flex;align-items:center;gap:var(--space-1);font-size:var(--text-xs);letter-spacing:.25em;text-transform:uppercase;color:var(--text-tertiary);animation:slideUpFadeIn .8s cubic-bezier(.16,1,.3,1)}.ephemeral-status:before{content:""}@keyframes slideUpFadeIn{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}.flight-options-container,.hotel-options-container,.form-container,.inline-ui-container{width:100%;align-self:flex-start;margin-bottom:var(--space-4);transform:translateZ(0);backface-visibility:hidden}.flight-options-container,.hotel-options-container{max-width:var(--content-max-width-flight-options-chat)}.form-container{max-width:100%}.inline-ui-container{max-width:var(--content-max-width-medium)}@keyframes messageSlide{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.chat-date-separator{display:flex;justify-content:center;align-items:center;margin:var(--space-4) 0 var(--space-6);padding:var(--space-2) var(--space-4);font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--text-tertiary);letter-spacing:.5px;text-transform:uppercase;position:relative;width:100%}.chat-date-separator:before,.chat-date-separator:after{content:"";flex:1;height:1px;background:var(--border-subtle)}.chat-date-separator:before{margin-right:var(--space-3)}.chat-date-separator:after{margin-left:var(--space-3)}.chat-content>div:first-of-type .chat-date-separator{margin-top:0}.chat-date-header-sticky-wrapper{position:sticky;top:var(--space-3);z-index:10;height:0;display:flex;justify-content:center;pointer-events:none}.chat-date-header-sticky{position:relative;display:flex;justify-content:center;align-items:center;padding:var(--space-3) var(--space-4);margin:0 var(--space-6);margin-bottom:var(--space-2);background:var(--surface-overlay);backdrop-filter:none;-webkit-backdrop-filter:none;border-radius:var(--radius-md);font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--text-secondary);letter-spacing:.5px;text-transform:uppercase;box-shadow:none;opacity:0;transform:translateY(-10px);transition:opacity .65s cubic-bezier(.4,0,.2,1),transform .55s cubic-bezier(.4,0,.2,1);pointer-events:none}.chat-date-header-sticky.visible{opacity:1;transform:translateY(0)}@media (max-width: 768px){.chat-date-header-sticky{margin:0 var(--space-4);font-size:var(--text-xs);padding:var(--space-2) var(--space-3)}.chat-date-separator{margin:var(--space-4) 0;font-size:var(--text-xs)}}.chat-loading-skeleton{padding:var(--space-6) var(--space-4);display:flex;flex-direction:column;gap:var(--space-5);width:100%;max-width:var(--chat-max-width);margin:0 auto}.chat-loading-message{display:flex;width:100%;opacity:0;transform:translateY(16px);animation:skeletonEnter .5s cubic-bezier(.16,1,.3,1) forwards}.chat-loading-message:nth-child(1){animation-delay:0ms}.chat-loading-message:nth-child(2){animation-delay:60ms}.chat-loading-message:nth-child(3){animation-delay:.12s}.chat-loading-message:nth-child(4){animation-delay:.18s}.chat-loading-message:nth-child(5){animation-delay:.24s}.chat-loading-message:nth-child(6){animation-delay:.3s}@keyframes skeletonEnter{to{opacity:1;transform:translateY(0)}}.chat-loading-skeleton.exiting{opacity:1}.chat-loading-skeleton.exiting .chat-loading-message{animation:skeletonExit .25s ease-out forwards}.chat-loading-skeleton.exiting .chat-loading-message:nth-child(6){animation-delay:0ms}.chat-loading-skeleton.exiting .chat-loading-message:nth-child(5){animation-delay:30ms}.chat-loading-skeleton.exiting .chat-loading-message:nth-child(4){animation-delay:60ms}.chat-loading-skeleton.exiting .chat-loading-message:nth-child(3){animation-delay:90ms}.chat-loading-skeleton.exiting .chat-loading-message:nth-child(2){animation-delay:.12s}.chat-loading-skeleton.exiting .chat-loading-message:nth-child(1){animation-delay:.15s}@keyframes skeletonExit{to{opacity:0;transform:translateY(-8px) scale(.97)}}.chat-loading-message.user{justify-content:flex-end}.chat-loading-message.assistant{justify-content:flex-start}.chat-loading-message .message-bubble{border-radius:var(--radius-lg);height:48px;position:relative;overflow:hidden;background:#ffffff09;animation:skeletonBreathing 2.5s ease-in-out infinite;box-shadow:inset 0 0 0 1px #ffffff0a,0 2px 8px #00000026}.chat-loading-message .message-bubble:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(105deg,transparent 30%,rgba(255,255,255,.06) 42%,rgba(255,255,255,.1) 50%,rgba(255,255,255,.06) 58%,transparent 70%);transform:translate(-100%);animation:shimmerSweep 2.2s ease-in-out infinite}.chat-loading-message .message-bubble:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse 50% 60% at 50% 50%,rgba(255,255,255,.05) 0%,transparent 60%);opacity:0;animation:glowPulse 3s ease-in-out infinite;animation-delay:1s}@keyframes skeletonBreathing{0%,to{background:#ffffff09}50%{background:#ffffff0e}}@keyframes shimmerSweep{0%{transform:translate(-100%)}60%{transform:translate(100%)}to{transform:translate(100%)}}@keyframes glowPulse{0%,to{opacity:0}50%{opacity:1}}.chat-loading-message.user .message-bubble{background:#ffffff0f;box-shadow:inset 0 0 0 1px #ffffff14,0 2px 8px #0000001f;animation:skeletonBreathingUser 2.5s ease-in-out infinite}@keyframes skeletonBreathingUser{0%,to{background:#ffffff0f}50%{background:#ffffff14}}.chat-loading-message.user:nth-child(1) .message-bubble{width:65%;max-width:300px}.chat-loading-message.user:nth-child(3) .message-bubble{width:40%;max-width:180px}.chat-loading-message.user:nth-child(5) .message-bubble{width:52%;max-width:240px}.chat-loading-message.assistant:nth-child(2) .message-bubble{width:75%;max-width:400px}.chat-loading-message.assistant:nth-child(4) .message-bubble{width:60%;max-width:340px}.chat-loading-message.assistant:nth-child(6) .message-bubble{width:38%;max-width:180px}.chat-loading-message:nth-child(1) .message-bubble:after{animation-delay:0s}.chat-loading-message:nth-child(2) .message-bubble:after{animation-delay:.15s}.chat-loading-message:nth-child(3) .message-bubble:after{animation-delay:.3s}.chat-loading-message:nth-child(4) .message-bubble:after{animation-delay:.45s}.chat-loading-message:nth-child(5) .message-bubble:after{animation-delay:.6s}.chat-loading-message:nth-child(6) .message-bubble:after{animation-delay:.75s}.chat-loading-message.short .message-bubble{height:36px}.chat-loading-message.medium .message-bubble{height:44px}.chat-loading-message.long .message-bubble{height:58px}@media (max-width: 768px){.chat-loading-message.user:nth-child(1) .message-bubble{width:75%;max-width:260px}.chat-loading-message.user:nth-child(3) .message-bubble{width:50%;max-width:160px}.chat-loading-message.user:nth-child(5) .message-bubble{width:62%;max-width:200px}.chat-loading-message.assistant:nth-child(2) .message-bubble{width:85%;max-width:320px}.chat-loading-message.assistant:nth-child(4) .message-bubble{width:70%;max-width:280px}.chat-loading-message.assistant:nth-child(6) .message-bubble{width:48%;max-width:160px}}.btn{padding:var(--space-3) var(--space-5);border-radius:var(--radius-sm);font-size:var(--text-base);font-weight:var(--font-bold);cursor:pointer;transition:var(--transition-base);border:none;letter-spacing:.2px;display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);text-transform:none}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--bg-primary);color:#000;box-shadow:none;font-weight:var(--font-bold);border:1px solid #d0d0d0}.btn-primary:hover:not(:disabled){background:var(--bg-secondary);transform:none;box-shadow:none}[data-theme=dark] .btn-primary{background:#fff;color:#000;border:1px solid rgba(255,255,255,.2)}[data-theme=dark] .btn-primary:hover:not(:disabled){background:#f5f5f5;border-color:#ffffff4d}.btn-secondary{background:var(--bg-primary);color:#000;border:1px solid #d0d0d0;font-weight:600}.btn-secondary:hover:not(:disabled){background:var(--bg-secondary);border-color:#b0b0b0}[data-theme=dark] .btn-secondary{background:#fff;color:#000;border:1px solid rgba(255,255,255,.2)}[data-theme=dark] .btn-secondary:hover:not(:disabled){background:#f5f5f5;border-color:#ffffff4d}.btn-white{background:var(--bg-primary);color:#000;border:1px solid #d0d0d0;font-weight:var(--font-bold);box-shadow:none}.btn-white:hover:not(:disabled){background:var(--bg-secondary);transform:none;box-shadow:none}[data-theme=dark] .btn-white{background:#fff;color:#000;border:1px solid rgba(255,255,255,.2)}[data-theme=dark] .btn-white:hover:not(:disabled){background:#f5f5f5;border-color:#ffffff4d}.btn-danger{background:#dc2626;color:#fff;box-shadow:0 4px 12px #dc262666;font-weight:600;letter-spacing:.3px}.btn-danger:hover:not(:disabled){background:#b91c1c;transform:translateY(-1px);box-shadow:0 6px 16px #dc262680}.message{max-width:var(--content-max-width-message);width:-moz-fit-content;width:fit-content;padding:var(--space-4) var(--space-5) var(--space-7) var(--space-5);border-radius:var(--radius-md);font-size:var(--text-base);line-height:1.5;position:relative;word-wrap:break-word;box-shadow:none;transition:none;letter-spacing:.15px;font-weight:var(--font-normal)}.user-message{background:var(--bg-tertiary);color:var(--text-primary);align-self:flex-end;margin-left:auto;border-bottom-right-radius:0;font-weight:var(--font-medium);border:1px solid var(--border-subtle)}.user-message ::selection{background:#00000026;color:var(--text-primary)}.user-message ::-moz-selection{background:#00000026;color:var(--text-primary)}.bot-message{background:var(--surface-card);color:var(--text-primary);align-self:flex-start;margin-right:auto;border-bottom-left-radius:0;border:1px solid var(--border);font-weight:var(--font-normal)}.chat-content-child .bot-message{align-self:flex-start}.chat-content-child .user-message{align-self:flex-end}.bot-message ::selection{background:#00000026;color:var(--text-primary)}.bot-message ::-moz-selection{background:#00000026;color:var(--text-primary)}[data-theme=dark] .user-message{background:#fff;color:#000;border:1px solid rgba(255,255,255,.15)}[data-theme=dark] .user-message ::-moz-selection{background:#ffffff4d;color:#000}[data-theme=dark] .user-message ::selection,[data-theme=dark] .user-message ::-moz-selection{background:#ffffff4d;color:#000}[data-theme=dark] .bot-message ::-moz-selection{background:#fff3;color:#fff}[data-theme=dark] .bot-message ::selection,[data-theme=dark] .bot-message ::-moz-selection{background:#fff3;color:#fff}[data-theme=light] .user-message ::-moz-selection,[data-theme=light] .bot-message ::-moz-selection{background:#0000001f;color:#000}[data-theme=light] .user-message ::selection,[data-theme=light] .user-message ::-moz-selection,[data-theme=light] .bot-message ::selection,[data-theme=light] .bot-message ::-moz-selection{background:#0000001f;color:#000}.message-timestamp{position:absolute;bottom:var(--space-2);right:var(--space-2);font-size:10px;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-weight:500;letter-spacing:.02em;text-transform:uppercase;font-variant-numeric:tabular-nums;pointer-events:none;transition:opacity .15s ease-out}.bot-message .message-timestamp{color:var(--text-primary);opacity:.8}.bot-message:hover .message-timestamp{opacity:.95}.user-message .message-timestamp{color:var(--text-primary);opacity:.8}.user-message:hover .message-timestamp{opacity:.75}.message-content{margin:0}.markdown-content{display:block;position:relative;min-height:1.5em;transform:translateZ(0)}.streaming-text-content{display:inline-block;width:100%;white-space:pre-wrap;word-wrap:break-word;line-height:1.6}.streaming-message .markdown-content{display:inline-block;width:100%}.streaming-message .markdown-content>*:last-of-type{margin-bottom:0;display:inline}.streaming-message .markdown-content p:last-of-type{display:inline;margin-bottom:0}.streaming-message .markdown-content ul,.streaming-message .markdown-content ol{display:block;margin:12px 0}.streaming-cursor{display:inline-block;margin-left:1px;color:#b0b0b0;font-weight:600;animation:cursorBlink .8s infinite;transform:translateY(0);line-height:inherit;font-size:.95em;vertical-align:baseline;transition:opacity .15s ease-out}@keyframes cursorBlink{0%,40%{opacity:1}50%{opacity:0}60%,to{opacity:1}}.bot-message h1,.bot-message h2,.bot-message h3{color:var(--text-primary);margin:12px 0 10px;font-weight:600;letter-spacing:.3px}.bot-message h1{font-size:18px;border-bottom:2px solid var(--border);padding-bottom:8px}.bot-message h2{font-size:16px;border-bottom:1px solid var(--border-subtle);padding-bottom:6px}.bot-message h3{font-size:15px}.bot-message p{margin:var(--space-2) 0;line-height:1.5;font-weight:var(--font-normal);letter-spacing:.15px;color:var(--text-primary)}.bot-message p:first-child{margin-top:0}.bot-message p:last-child{margin-bottom:0}.bot-message strong{color:var(--text-primary);font-weight:600;letter-spacing:.2px}.bot-message em{color:var(--text-primary);font-style:italic;opacity:.85}.bot-message code{background:var(--surface-card-soft);color:#60d8ff;padding:3px 6px;border-radius:6px;font-family:SF Mono,Monaco,Cascadia Code,monospace;font-size:13px;border:1px solid var(--border-subtle);font-weight:500;letter-spacing:0}.bot-message pre{background:var(--bg-tertiary);border:1px solid var(--border);border-radius:6px;padding:11px;margin:11px 0;overflow-x:auto}.bot-message pre code{background:none;border:none;padding:0;color:var(--text-secondary)}.bot-message ul,.bot-message ol{margin:8px 0;padding-left:17px}.bot-message li{margin:4px 0}.bot-message a{color:var(--accent);text-decoration:underline}.bot-message a:hover{color:var(--accent-hover);will-change:color}.chat-content-child .message+.message{margin-top:var(--space-3)}@media (min-width: 1200px){.message{max-width:60%}}@media (max-width: 768px){.message{max-width:82%;padding:var(--space-4) var(--space-4-5);font-size:var(--text-sm)}}@media (max-width: 640px){.message{max-width:85%;padding:12px 14px 18px;font-size:15px}}.voice-recorder{position:relative;display:flex;flex-direction:column;align-items:center;gap:8px}.voice-record-button{position:relative;width:64px;height:64px;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--bg-primary);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s ease,border-color .2s ease;-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;flex-shrink:0}.voice-record-button:hover:not(.disabled){background:var(--bg-secondary);border-color:var(--border-light)}.voice-record-button:active:not(.disabled){transform:translateY(0)}.voice-record-button.recording{background:#ef4444;border-color:#f87171;box-shadow:0 0 20px #ef444499,0 0 40px #ef444466;animation:recording-glow 1.5s ease-in-out infinite}.voice-record-button.disabled{opacity:.5;cursor:not-allowed}.mic-icon{width:24px;height:24px;color:var(--text-primary);stroke:var(--text-primary);transition:opacity .2s ease;z-index:1}.voice-record-button.recording .mic-icon{color:#dc2626}@keyframes recording-glow{0%,to{box-shadow:0 0 20px #ef444499,0 0 40px #ef444466}50%{box-shadow:0 0 30px #ef4444cc,0 0 60px #ef444499}}.recording-pulse{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:100%;height:100%;pointer-events:none}.pulse-ring{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:100%;height:100%;border:2px solid rgba(239,68,68,.5);border-radius:50%;opacity:0;animation:pulse-ring 1.5s ease-out infinite}.pulse-ring-2{animation-delay:.75s}@keyframes pulse{0%,to{box-shadow:0 0 #ffffff40}50%{box-shadow:0 0 0 8px #fff0}}@keyframes pulse-ring{0%{transform:translate(-50%,-50%) scale(1);opacity:.35}to{transform:translate(-50%,-50%) scale(1.2);opacity:0}}.transcription-error{position:absolute;top:calc(100% + 8px);left:50%;transform:translate(-50%);padding:6px 12px;background:var(--error-bg, #fee);color:var(--error-text, #c33);border:1px solid var(--error-border, #fcc);border-radius:var(--radius-sm);font-size:12px;white-space:nowrap;animation:slideDown .2s ease-out}@keyframes slideDown{0%{opacity:0;transform:translate(-50%) translateY(-10px)}to{opacity:1;transform:translate(-50%) translateY(0)}}@media (max-width: 768px){.voice-record-button{width:48px;height:48px}.mic-icon{width:20px;height:20px}}@media (hover: none) and (pointer: coarse){.voice-record-button:active:not(.disabled){transform:translateY(0)}}.chat-input-container{padding:var(--space-4) var(--space-6) var(--space-6);background:var(--bg-primary);border-top:1px solid var(--border);position:relative;transition:background-color .3s ease}.recording-chip{position:absolute;top:-12px;left:50%;transform:translate(-50%);background:#dc2626;color:var(--text-primary);padding:var(--space-2) var(--space-4);border-radius:var(--radius-full);font-size:var(--text-sm);font-weight:500;display:flex;align-items:center;gap:var(--space-2);box-shadow:0 4px 12px #dc26264d;z-index:10;max-width:80%;min-width:120px;justify-content:center}.recording-dot{width:8px;height:8px;background:var(--text-primary);border-radius:50%;animation:recording-pulse 1.5s ease-in-out infinite}.recording-text{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}@keyframes recording-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.6;transform:scale(.8)}}.chat-input-form{display:flex;gap:var(--space-3);align-items:center;max-width:var(--content-max-width-chat);margin:0 auto;width:100%}.chat-input{flex:1;background:var(--surface-card);border:1px solid var(--border);border-radius:var(--radius-sm);padding:21px var(--space-5);font-size:var(--text-base);line-height:1.5;color:var(--text-primary);font-family:Inter,sans-serif;resize:none;min-height:64px;max-height:240px;transition:border-color .2s ease,background .2s ease,color .2s ease;overflow-y:auto;overflow-x:hidden;word-wrap:break-word;white-space:pre-wrap;scrollbar-width:none;-ms-overflow-style:none;display:block;box-sizing:border-box;outline:none!important}.chat-input::-webkit-scrollbar{display:none}.chat-input:focus{outline:none!important;outline-offset:0!important;border-color:var(--border-light)}.chat-input:focus-visible{outline:none!important;outline-offset:0!important}.chat-input::-moz-placeholder{color:var(--text-tertiary)}.chat-input::placeholder{color:var(--text-tertiary)}.chat-input:disabled{opacity:.6;cursor:not-allowed}.chat-input-actions{display:flex;gap:var(--space-3);align-items:center;flex-shrink:0}.chat-send-btn{background:var(--surface-card);color:var(--text-primary);border:1px solid var(--border);border-radius:var(--radius-sm);width:64px;height:64px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .2s ease,border-color .2s ease,color .2s ease;flex-shrink:0;filter:none!important;-webkit-filter:none!important;outline:none!important}.chat-send-btn:hover:not(:disabled){background:var(--bg-secondary);border-color:var(--border-light);outline:none!important}.chat-send-btn:active:not(:disabled){background:var(--bg-secondary);outline:none!important}.chat-send-btn svg{color:var(--text-primary);stroke:var(--text-primary);transition:opacity .2s ease}.chat-send-btn:hover:not(:disabled) svg{color:var(--text-primary);stroke:var(--text-primary)}.chat-send-btn:disabled{filter:none!important;-webkit-filter:none!important;opacity:1;cursor:not-allowed;outline:none!important}.chat-send-btn:disabled svg{color:var(--text-primary);stroke:var(--text-primary);opacity:.35}.chat-send-btn:focus,.chat-send-btn:focus-visible{outline:none!important}.chat-new-chat-btn{background:var(--surface-card);color:var(--text-primary);border:1px solid var(--border);border-radius:var(--radius-sm);width:64px;height:64px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .2s ease,border-color .2s ease,color .2s ease;flex-shrink:0;filter:none;outline:none!important}.chat-new-chat-btn svg{color:var(--text-primary);stroke:var(--text-primary);transition:opacity .2s ease}.chat-new-chat-btn:hover{background:var(--bg-secondary);color:var(--text-primary);border-color:var(--border-light);outline:none!important}.chat-new-chat-btn:hover svg{color:var(--text-primary);stroke:var(--text-primary)}.chat-new-chat-btn:active{background:var(--bg-secondary);outline:none!important}.chat-new-chat-btn:focus,.chat-new-chat-btn:focus-visible{outline:none!important}@media (max-width: 768px){.chat-input-container{padding:var(--space-3) var(--space-4);position:relative;background:var(--bg-primary);border-top:1px solid var(--border);width:100%;max-width:100vw;overflow-x:hidden}.chat-input-form{gap:var(--space-2);align-items:center;width:100%;max-width:100%}.chat-input{font-size:16px;line-height:1.5;padding:12px 14px;min-height:48px;max-height:120px;overflow-y:scroll;overflow-x:hidden;scrollbar-width:none;-ms-overflow-style:none;word-wrap:break-word;white-space:pre-wrap}.chat-input::-webkit-scrollbar{display:none;width:0;height:0;background:transparent}.chat-input::-webkit-scrollbar-thumb{display:none}.chat-input::-webkit-scrollbar-track{display:none}.chat-input-actions{gap:8px;align-items:center;flex-shrink:0;display:flex;height:48px}.chat-send-btn,.chat-new-chat-btn{width:48px;height:48px;min-height:48px;flex-shrink:0;border-radius:8px;display:flex;align-items:center;justify-content:center;padding:0}.chat-input-actions>div{height:48px;display:flex;align-items:center}.chat-input-actions .voice-recorder{height:48px;display:flex;align-items:center}.chat-input-actions .voice-record-button{width:48px;height:48px;min-height:48px;margin:0}}[data-novu-element=actionButton],[data-novu-element=primaryActionButton],[data-novu-element=secondaryActionButton],.nv-actionButton,.nv-primaryActionButton,.nv-secondaryActionButton,button[class*=action],a[class*=action],.nv-notificationItem button,.nv-notificationItem a[role=button],.nv-notificationItem [class*=action]{border-radius:8px!important}[data-theme=light] [data-novu-element=notificationIcon] svg{color:#0009!important;fill:#0009!important;stroke:#0009!important}[data-theme=dark] [data-novu-element=notificationIcon] svg{color:#ffffffe6!important;fill:#ffffffe6!important;stroke:#ffffffe6!important}.header{background:var(--bg-primary);border-bottom:1px solid var(--border);padding:0 48px;height:var(--header-h);display:flex;align-items:center;justify-content:space-between;position:relative;z-index:var(--z-header);box-shadow:none;transition:background-color .5s cubic-bezier(.34,1.56,.64,1),border-color .5s ease}.header:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;border-bottom:1px solid var(--border-subtle)}.header-left{display:flex;align-items:center;gap:16px}.header-logo-wrap{display:flex;align-items:center;justify-content:center;height:48px;cursor:pointer}.header-logo{display:block;height:100%;width:auto;-o-object-fit:contain;object-fit:contain}.header-brand{display:flex;flex-direction:column;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.brand-title{font-size:18px;font-weight:var(--font-bold);letter-spacing:2px;color:var(--text-primary);line-height:1.1;transition:color .3s ease}.brand-subtitle{font-size:10px;font-weight:var(--font-semibold);letter-spacing:1.5px;color:var(--text-tertiary);line-height:1.1;margin-top:1px;transition:color .3s ease}.user-honorific{font-size:16px;font-weight:600;letter-spacing:3.5px;color:var(--text-primary);opacity:.82;white-space:nowrap}.header-controls{display:flex;align-items:center;gap:12px;margin-left:auto}.header-actions{display:flex;align-items:center;gap:12px}.header-nav-container{position:relative;display:flex;align-items:center;gap:12px}.menu-toggle-btn{display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:var(--radius-sm);background:var(--bg-primary);border:1px solid var(--border);cursor:pointer;transition:all .35s cubic-bezier(.34,1.56,.64,1);box-shadow:none;z-index:2;position:relative;overflow:hidden}.menu-toggle-btn:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:var(--surface-card-soft);opacity:0;transition:opacity .3s ease}.menu-toggle-btn:hover:before{opacity:1}.menu-toggle-btn:hover{border-color:var(--border-light);background:var(--bg-secondary);transform:none;box-shadow:none}.menu-toggle-btn:active{transform:translateY(-1px) scale(1.02)}.hamburger-icon{width:22px;height:18px;display:flex;flex-direction:column;justify-content:space-between;position:relative}.hamburger-icon span{display:block;height:2px;width:100%;background:var(--text-primary);border-radius:2px;transition:all .3s cubic-bezier(.68,-.55,.265,1.55);transform-origin:center;opacity:.95}.menu-toggle-btn.expanded .hamburger-icon span:nth-child(1){transform:translateY(8px) rotate(45deg)}.menu-toggle-btn.expanded .hamburger-icon span:nth-child(2){opacity:0;transform:scaleX(0)}.menu-toggle-btn.expanded .hamburger-icon span:nth-child(3){transform:translateY(-8px) rotate(-45deg)}.header-nav{position:absolute;top:calc(100% + 12px);right:0;display:flex;flex-direction:column;gap:8px;min-width:200px;max-height:0;overflow:hidden;opacity:0;background:var(--bg-primary);border:1px solid var(--border);border-radius:var(--radius-md);padding:0;box-shadow:none;transition:all .4s cubic-bezier(.34,1.56,.64,1);z-index:1000}.header-nav.expanded{max-height:300px;opacity:1;padding:12px}.header-nav .nav-item{white-space:nowrap;transform:translateY(-10px);opacity:0;transition:all .3s cubic-bezier(.34,1.56,.64,1);width:100%}.header-nav.expanded .nav-item{transform:translateY(0);opacity:1}.header-nav.expanded .nav-item:nth-child(1){transition-delay:.08s}.header-nav.expanded .nav-item:nth-child(2){transition-delay:.14s}.header-nav.expanded .nav-item:nth-child(3){transition-delay:.2s}.header-nav .header-action-btn{justify-content:flex-start}.header-action-btn{display:inline-flex;align-items:center;gap:10px;padding:12px 24px;height:48px;border-radius:var(--radius-sm);font-size:var(--text-base);font-weight:600;letter-spacing:1.2px;text-transform:uppercase;color:var(--text-primary);background:var(--bg-primary);border:1px solid var(--border);cursor:pointer;transition:all .3s ease;box-shadow:none}.header-action-btn:hover{color:var(--text-primary);border-color:var(--border-light);background:var(--bg-secondary);transform:none;box-shadow:none}.header-action-btn:active{transform:none;box-shadow:none}.header-action-btn.active{background:var(--surface-card-soft);border-color:var(--border-light);color:var(--text-primary);box-shadow:none}.theme-toggle-btn{min-width:48px;padding:12px}.theme-toggle-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:0 16px;height:48px;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--bg-primary);transition:all .3s ease;cursor:default}.theme-toggle-row:hover{border-color:var(--border-light);background:var(--bg-secondary)}.theme-toggle-copy{display:flex;flex-direction:column;gap:0;line-height:1.2}.theme-toggle-title{font-size:var(--text-base);font-weight:600;letter-spacing:1.2px;text-transform:uppercase;color:var(--text-primary)}.theme-toggle-state{display:none}.theme-switch{position:relative;display:inline-flex;align-items:center;justify-content:center;width:52px;height:28px;cursor:pointer}.theme-switch input{opacity:0;width:0;height:0;position:absolute}.theme-switch-slider{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--text-tertiary);border:1px solid var(--border);border-radius:var(--radius-full);transition:background-color .5s cubic-bezier(.34,1.56,.64,1),border-color .3s ease;box-shadow:inset 0 1px 3px #0000001a}[data-theme=light] .theme-switch-slider{background:#d0d0d0}.theme-switch-slider:after{content:"";position:absolute;width:22px;height:22px;left:2px;top:2px;border-radius:50%;background:#fff;box-shadow:0 2px 4px #0003;transition:transform .5s cubic-bezier(.34,1.56,.64,1),background-color .3s ease}.theme-switch input:checked+.theme-switch-slider{background:var(--text-primary);border-color:var(--text-primary)}.theme-switch input:checked+.theme-switch-slider:after{transform:translate(24px);background:var(--bg-primary)}@media (max-width: 768px){.header{padding:0 16px}.header-left{gap:10px}.header-logo-wrap{height:42px}.header-controls,.header-actions{gap:8px}.header-actions .header-action-btn{padding:12px;height:48px;min-width:48px}.header-actions .header-action-btn svg{width:22px;height:22px}.menu-toggle-btn{width:48px;height:48px}.hamburger-icon{width:22px;height:18px}.menu-toggle-btn.expanded .hamburger-icon span:nth-child(1){transform:translateY(6px) rotate(45deg)}.menu-toggle-btn.expanded .hamburger-icon span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}.header-nav{min-width:180px;right:-10px}.header-nav.expanded{max-height:250px;padding:10px}.header-nav .header-action-btn{padding:10px 14px;font-size:11px}.theme-toggle-row{padding:0 14px}}.header-bookings-btn{position:relative}.notification-badge{position:absolute;top:-4px;right:-4px;background:var(--text-primary);color:var(--bg-primary);font-size:10px;font-weight:var(--font-bold);min-width:18px;height:18px;border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center;padding:0 4px;box-shadow:none}[data-theme=light] .notification-badge{background:var(--bg-primary);color:#000;border:1px solid #d0d0d0}@media (max-width: 768px){.header-bookings-btn .notification-badge{top:2px;right:2px}}.sidebar-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--surface-overlay);z-index:calc(var(--z-header) + 1);animation:fadeIn .2s ease}[data-theme=light] .sidebar-overlay{background:#0000004d}.sidebar-overlay.closing{animation:fadeOut .2s ease}.conversation-sidebar{position:fixed;top:0;left:0;height:100vh;width:400px;background:var(--bg-primary);border-right:1px solid var(--border);z-index:calc(var(--z-header) + 2);display:flex;flex-direction:column;animation:slideInFromLeft .3s ease;box-shadow:var(--shadow-xl);transition:background-color .3s ease}[data-theme=light] .conversation-sidebar{box-shadow:0 4px 16px #0000001a}.conversation-sidebar.closing{animation:slideOutToLeft .3s ease}.sidebar-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-6);background:var(--bg-primary);border-bottom:1px solid var(--border-subtle)}.sidebar-title{font-size:24px;font-weight:var(--font-bold);color:var(--text-primary);letter-spacing:-.5px;margin:0}.sidebar-close-btn{width:32px;height:32px;border-radius:50%;background:transparent;border:1px solid var(--border-subtle);color:var(--text-primary);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease}.sidebar-close-btn:hover{background:var(--text-primary);color:var(--bg-primary);border-color:var(--text-primary)}.sidebar-content{flex:1;overflow-y:auto;padding:var(--space-4);display:flex;flex-direction:column;gap:var(--space-3)}.sidebar-loading,.sidebar-error,.sidebar-empty{text-align:center;padding:var(--space-8);color:var(--text-tertiary);font-size:14px}.sidebar-error{color:#ef4444}.conversation-list{display:flex;flex-direction:column;gap:var(--space-3);padding-bottom:var(--space-6)}.conversation-card{background:var(--bg-primary);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-5);cursor:pointer;transition:all .2s ease;text-align:left;width:100%;position:relative;display:flex;flex-direction:column;gap:var(--space-2)}.conversation-card:hover{border-color:var(--border-light);transform:translateY(-2px);box-shadow:var(--shadow-lg)}.conversation-card.active{border-color:var(--border-light);background:var(--surface-card-soft)}.conversation-card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-3)}.conversation-booking-icon-wrapper{display:flex;align-items:center;flex-shrink:0;margin-top:2px;margin-left:auto}.conversation-booking-icon{color:var(--text-tertiary);opacity:.8}.conversation-card-title-wrapper{flex:1;display:flex;flex-direction:column;gap:2px;min-width:0}.conversation-card-title{font-size:16px;font-weight:var(--font-bold);color:var(--text-primary);line-height:1.3}.conversation-card-subtitle{font-size:12px;font-weight:var(--font-medium);color:var(--text-tertiary);line-height:1.3}.conversation-card-meta{font-size:11px;font-weight:var(--font-bold);letter-spacing:1px;text-transform:uppercase;color:var(--text-tertiary);display:flex;align-items:center;gap:6px}.conversation-card-time{font-size:13px;font-weight:var(--font-medium);color:var(--text-quaternary);display:block;margin-top:2px}.conversation-processing-indicator{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:var(--radius-md);font-size:var(--text-sm);font-weight:var(--font-bold);letter-spacing:.2px;background:var(--text-primary);color:var(--bg-primary);margin-top:6px;box-shadow:var(--shadow-md);width:-moz-fit-content;width:fit-content;animation:processingGlow 2s ease-in-out infinite}.pulsing-dot{width:5px;height:5px;border-radius:50%;background:var(--bg-primary);animation:pulse 1.5s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(1.3)}}@keyframes processingGlow{0%,to{box-shadow:var(--shadow-md)}50%{box-shadow:0 6px 16px #0006}}@keyframes slideInFromLeft{0%{transform:translate(-100%)}to{transform:translate(0)}}@keyframes slideOutToLeft{0%{transform:translate(0)}to{transform:translate(-100%)}}@media (max-width: 768px){.conversation-sidebar{width:100%;box-shadow:none}}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000d9;z-index:var(--z-modal);display:flex;align-items:center;justify-content:center;padding:20px;animation:fadeIn .3s ease;overflow-y:auto;overflow-x:hidden}[data-theme=light] .modal-overlay{background:#00000080}@keyframes slideIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.modal-content{position:relative;background:var(--surface-card);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);max-width:900px;width:100%;max-height:calc(90vh - 40px);overflow:hidden;display:flex;flex-direction:column;box-shadow:var(--shadow-lg);animation:slideIn .4s ease;margin:auto}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-5) var(--space-6);border-bottom:1px solid var(--border-subtle)}.modal-title{font-size:var(--text-2xl);font-weight:var(--font-semibold);color:var(--text-primary);margin:0;letter-spacing:-.5px}.modal-close{background:#ffffff14;border:1px solid var(--border-subtle);border-radius:var(--radius-md);color:var(--text-secondary);font-size:var(--text-xl);line-height:1;cursor:pointer;padding:0;width:36px;height:36px;display:flex;align-items:center;justify-content:center;transition:var(--transition-base)}.modal-close:hover{background:var(--bg-secondary);border-color:var(--border-strong);color:var(--text-primary)}[data-theme=light] .modal-close{background:#0000000d;color:var(--text-tertiary)}[data-theme=light] .modal-close:hover{background:var(--bg-secondary);color:var(--text-primary)}.modal-body{flex:1;overflow-y:auto;padding:var(--space-6)}.modal-body p{color:var(--text-secondary);font-size:var(--text-base);font-weight:var(--font-medium);line-height:1.6;margin:0}.modal-footer{padding:var(--space-5) var(--space-6);border-top:1px solid var(--border-subtle);display:flex;gap:var(--space-3);justify-content:flex-end}.toast-container{position:fixed;top:var(--space-12);right:var(--space-5);z-index:var(--z-toast);display:flex;flex-direction:column;gap:var(--space-3);pointer-events:none}.toast{background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-4) var(--space-5);display:flex;align-items:center;gap:var(--space-3);min-width:300px;max-width:400px;box-shadow:var(--shadow-md);animation:slideInFromRight .3s ease;pointer-events:auto}.toast-message{flex:1;color:var(--text-primary);font-size:var(--text-base);line-height:1.5}.toast-close{background:none;border:none;color:var(--text-tertiary);font-size:var(--text-xl);line-height:1;cursor:pointer;padding:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;transition:color .2s ease}.toast-close:hover{color:var(--text-primary)}.toast-success{border-left:4px solid var(--success)}.toast-error{border-left:4px solid var(--error)}.toast-warning{border-left:4px solid var(--warning)}.toast-info{border-left:4px solid var(--info)}.app-container{height:100dvh;width:100vw;display:flex;flex-direction:column;position:relative;background:var(--bg-primary);transition:background-color .3s ease}@supports not (height: 100dvh){.app-container{height:100vh}}.app-loader{height:100dvh;width:100vw;display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--bg-primary);transition:background-color .3s ease}@supports not (height: 100dvh){.app-loader{height:100vh}}.app-loader p{margin-top:20px;color:var(--text-primary);font-size:var(--text-base);font-weight:var(--font-semibold)}.app-loader button{margin-top:20px;padding:16px 32px;background:var(--bg-primary);color:var(--text-primary);border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;font-size:var(--text-base);font-weight:var(--font-bold);letter-spacing:.5px;text-transform:uppercase;transition:all .25s ease}.app-loader button:hover{background:var(--bg-secondary);border-color:var(--border-light)}.main-content{flex:1;display:flex;flex-direction:column;overflow:hidden;position:relative;width:100%;max-width:100vw}.auth-brand-header{display:flex;align-items:center;justify-content:center;margin-bottom:32px}.auth-logo-wrap{display:flex;align-items:center;justify-content:center;height:48px;flex-shrink:0}.auth-logo{display:block;height:100%;width:auto;-o-object-fit:contain;object-fit:contain}@media (max-width: 768px){.auth-logo-wrap{height:40px}}:root{--bg-primary: #000000;--bg-secondary: #050505;--bg-tertiary: #0a0a0a;--bg-quaternary: #111111;--surface-card: #000000;--surface-card-soft: rgba(20, 20, 20, .5);--surface-overlay: rgba(0, 0, 0, .95);--text-primary: #ffffff;--text-secondary: #e5e5e5;--text-tertiary: #a3a3a3;--text-quaternary: #737373;--accent: #ffffff;--accent-hover: #e5e5e5;--border: #333333;--border-light: #404040;--border-subtle: #262626;--border-strong: #525252;--shadow: rgba(0, 0, 0, .8);--shadow-strong: #000000;--status-confirmed-bg: #14532d;--status-confirmed-border: #22c55e;--status-confirmed-text: #ffffff;--status-pending-bg: #451a03;--status-pending-border: #fbbf24;--status-pending-text: #ffffff;--status-cancelled-bg: #450a0a;--status-cancelled-border: #ef4444;--status-cancelled-text: #ffffff;--status-completed-bg: #1e3a8a;--status-completed-border: #93c5fd;--status-completed-text: #ffffff;--status-default-bg: #374151;--status-default-border: #9ca3af;--status-default-text: #ffffff;--input-h: 64px;--header-h: 80px;--space-0-5: 2px;--space-1: 4px;--space-1-5: 6px;--space-2: 8px;--space-2-5: 10px;--space-3: 12px;--space-3-5: 14px;--space-4: 16px;--space-4-5: 18px;--space-5: 20px;--space-6: 24px;--space-7: 28px;--space-8: 32px;--space-9: 36px;--space-10: 40px;--space-12: 48px;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 20px;--radius-2xl: 24px;--radius-full: 999px;--text-xs: 11px;--text-sm: 13px;--text-base: 15px;--text-lg: 17px;--text-xl: 18px;--text-2xl: 24px;--text-3xl: 28px;--font-normal: 400;--font-medium: 500;--font-semibold: 600;--font-bold: 700;--shadow-sm: 0 2px 8px rgba(0, 0, 0, .2);--shadow-md: 0 4px 16px rgba(0, 0, 0, .3);--shadow-lg: 0 8px 32px rgba(0, 0, 0, .6);--shadow-xl: 0 20px 60px rgba(0, 0, 0, .8);--transition-fast: all .15s ease;--transition-base: all .2s ease;--transition-slow: all .3s ease;--content-max-width-narrow: 500px;--content-max-width-medium: 700px;--content-max-width-wide: 800px;--content-max-width-flight-options: 1200px;--content-max-width-message: 60%;--content-max-width-flight-options-chat: 950px;--content-max-width-form-chat: 40%;--content-max-width-chat: 1200px;--z-header: 100;--z-overlay: 200;--z-modal: 300;--z-toast: 400}[data-theme=light]{--bg-primary: #FBF9F5;--bg-secondary: #e8e8e8;--bg-tertiary: #f0f0f0;--bg-quaternary: #e5e5e5;--surface-card: #FBF9F5;--surface-card-soft: rgba(240, 240, 240, .5);--surface-overlay: rgba(251, 249, 245, .95);--text-primary: #000000;--text-secondary: #1a1a1a;--text-tertiary: #4a4a4a;--text-quaternary: #737373;--accent: #000000;--accent-hover: #1a1a1a;--border: #d0d0d0;--border-light: #c0c0c0;--border-subtle: #e0e0e0;--border-strong: #a0a0a0;--shadow: rgba(0, 0, 0, .1);--shadow-strong: rgba(0, 0, 0, .2);--status-confirmed-bg: #d1fae5;--status-confirmed-border: #22c55e;--status-confirmed-text: #14532d;--status-pending-bg: #fef3c7;--status-pending-border: #fbbf24;--status-pending-text: #451a03;--status-cancelled-bg: #fee2e2;--status-cancelled-border: #ef4444;--status-cancelled-text: #450a0a;--status-completed-bg: #dbeafe;--status-completed-border: #3b82f6;--status-completed-text: #1e3a8a;--status-default-bg: #f3f4f6;--status-default-border: #9ca3af;--status-default-text: #374151}[data-theme=dark]{--status-confirmed-bg: #14532d;--status-confirmed-border: #22c55e;--status-confirmed-text: #ffffff;--status-pending-bg: #451a03;--status-pending-border: #fbbf24;--status-pending-text: #ffffff;--status-cancelled-bg: #450a0a;--status-cancelled-border: #ef4444;--status-cancelled-text: #ffffff;--status-completed-bg: #1e3a8a;--status-completed-border: #93c5fd;--status-completed-text: #ffffff;--status-default-bg: #374151;--status-default-border: #9ca3af;--status-default-text: #ffffff}@media (max-width: 1024px){:root{--content-max-width-form-chat: 70%}}@media (max-width: 768px){:root{--content-max-width-form-chat: 100%}}@keyframes messageSlide{0%{opacity:0;transform:translateY(20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes fadeInStatus{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}@keyframes typingBounce{0%,60%,to{transform:translateY(0);opacity:.4}30%{transform:translateY(-8px);opacity:1}}@keyframes slideInFromRight{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}@keyframes slideInFromLeft{0%{transform:translate(-100%);opacity:0}to{transform:translate(0);opacity:1}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}@keyframes confirmationSlide{0%{opacity:0;transform:translateY(30px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.status-badge{display:inline-flex;align-items:center;justify-content:center;padding:var(--space-0-5) var(--space-2);border-radius:var(--radius-full);font-size:var(--text-xs);font-weight:var(--font-bold);letter-spacing:.5px;text-transform:uppercase;border:1px solid transparent;transition:var(--transition-base)}.status-badge--confirmed{background:var(--status-confirmed-bg);border-color:var(--status-confirmed-border);color:var(--status-confirmed-text)}.status-badge--pending{background:var(--status-pending-bg);border-color:var(--status-pending-border);color:var(--status-pending-text)}.status-badge--cancelled{background:var(--status-cancelled-bg);border-color:var(--status-cancelled-border);color:var(--status-cancelled-text)}.status-badge--completed{background:var(--status-completed-bg);border-color:var(--status-completed-border);color:var(--status-completed-text)}.status-badge--default{background:var(--status-default-bg);border-color:var(--status-default-border);color:var(--status-default-text)}.card-surface{background:var(--surface-card);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg),0 2px 8px #0003}.card-section{border-bottom:1px solid var(--border-subtle);background:var(--surface-card)}.card-section:last-of-type{border-bottom:none}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.\!container{width:100%!important}.container{width:100%}@media (min-width: 640px){.\!container{max-width:640px!important}.container{max-width:640px}}@media (min-width: 768px){.\!container{max-width:768px!important}.container{max-width:768px}}@media (min-width: 1024px){.\!container{max-width:1024px!important}.container{max-width:1024px}}@media (min-width: 1280px){.\!container{max-width:1280px!important}.container{max-width:1280px}}@media (min-width: 1536px){.\!container{max-width:1536px!important}.container{max-width:1536px}}.visible{visibility:visible}.static{position:static}.relative{position:relative}.sticky{position:sticky}.block{display:block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.grid{display:grid}.hidden{display:none}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.resize{resize:both}.rounded{border-radius:.25rem}.border{border-width:1px}.underline{text-decoration-line:underline}.blur{--tw-blur: blur(8px);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:var(--transition-base)}*{margin:0;padding:0;box-sizing:border-box}html{background:var(--bg-primary);transition:background-color .5s cubic-bezier(.34,1.56,.64,1)}body{font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;background:var(--bg-primary);color:var(--text-primary);height:100vh;overflow:hidden;font-weight:400;line-height:1.5;-webkit-font-smoothing:subpixel-antialiased;-moz-osx-font-smoothing:auto;transition:background-color .5s cubic-bezier(.34,1.56,.64,1),color .5s ease,border-color .5s ease}#root{height:100vh;width:100vw}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg-secondary)}::-webkit-scrollbar-thumb{background:var(--border-light);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--border)}h1,h2,h3,h4,h5,h6{color:var(--text-primary);font-weight:600}p{color:var(--text-secondary)}a{color:var(--accent);text-decoration:none}a:hover{color:var(--accent-hover)}button:focus,input:focus,textarea:focus,select:focus{outline:2px solid var(--accent);outline-offset:2px}::-moz-selection{background:var(--accent);color:var(--bg-primary)}::selection{background:var(--accent);color:var(--bg-primary)}
