:root{--fp-primary:#0d3654;--fp-accent:#ff5231;--fp-success:#198754;--fp-warning:#fd7e14;--fp-danger:#dc3545;--fp-muted:#6c757d;--fp-border:#e9ecef;--fp-bg-light:#f8f9fa}.stat-icon img{width:20px;height:20px;display:block}@media (min-width:992px){.skeleton-loading .real-content{display:block !important;height:auto !important;overflow:visible !important;opacity:1 !important}.skeleton-loading .skeleton-placeholder,.skeleton-placeholder{display:none !important}}@media (max-width:991.98px){.skeleton-loading .real-content{display:block !important;height:auto !important;overflow:visible !important;opacity:1 !important}.skeleton-loading .skeleton-placeholder,.skeleton-placeholder{display:none !important}}.skeleton-pulse{background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0 50%,#f0f0f0 75%);background-size:200% 100%;animation:skeleton-shimmer 1.5s infinite;border-radius:4px}@keyframes skeleton-shimmer{0%{background-position:200% 0}100%{background-position:-200% 0}}.skeleton-header:before,.skeleton-title:before,.skeleton-text:before,.skeleton-box:before{content:'';display:block;background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0 50%,#f0f0f0 75%);background-size:200% 100%;animation:skeleton-shimmer 1.5s infinite;border-radius:4px}.skeleton-header:before{height:120px}.skeleton-title:before{height:28px;width:70%}.skeleton-text:before{height:16px;width:60%;margin-top:8px}.skeleton-box:before{height:200px}.site-main:not(.skeleton-loading) .real-content{height:auto !important;overflow:visible !important;opacity:1;transition:opacity .3s ease-out}.site-main:not(.skeleton-loading) .skeleton-placeholder{display:none !important}@media (prefers-reduced-motion:reduce){.skeleton-pulse,.skeleton-header:before,.skeleton-title:before,.skeleton-text:before,.skeleton-box:before{animation:none;background:#e0e0e0}}.flight-breadcrumb{font-size:.875rem;background:0 0;padding:0;margin-bottom:1rem}.flight-breadcrumb .breadcrumb{background:0 0;padding:0;margin:0;display:flex;flex-wrap:wrap;align-items:center}.flight-breadcrumb .breadcrumb-item{display:flex;align-items:center;font-size:.9rem}.flight-breadcrumb .breadcrumb-item+.breadcrumb-item:before{content:"›";color:var(--fp-muted);padding:0 .5rem}.flight-breadcrumb .breadcrumb-item a{color:var(--fp-accent);text-decoration:none;transition:color .2s ease}.flight-breadcrumb .breadcrumb-item a:hover{color:var(--fp-primary);text-decoration:underline}.flight-breadcrumb .breadcrumb-item.active{color:var(--fp-muted)}.info-label{display:block;font-size:.75rem;font-weight:600;letter-spacing:.5px;color:var(--fp-muted);margin-bottom:.25rem}.flight-page .entry-header{background:var(--fp-bg-light);border:1px solid var(--fp-border);border-radius:.5rem;padding:1.5rem;margin-bottom:2rem;position:relative;z-index:1}.flight-number-highlight{color:var(--fp-accent)}.flight-page .entry-title{font-size:1.75rem !important;line-height:1.2 !important;font-weight:600 !important;color:var(--fp-primary);margin:0}.flight-page .entry-subtitle{font-size:1.5rem;font-weight:600;color:var(--fp-primary);margin:0}.flight-page .flight-badge{background:var(--fp-primary);color:#fff;padding:.25rem .75rem;border-radius:1rem;font-size:.875rem;font-weight:600;margin-right:.5rem;display:inline-block}.flight-page .flight-title h3,.flight-page .airline-code h3,.flight-page .route-info h3,.flight-page .status-info h3{font-size:1rem;font-weight:500;color:var(--fp-muted)}.flight-page .route-info p,.flight-page .status-info p{font-size:1.25rem;font-weight:600;color:#212529;margin:0}.delay-status.on-time,.status-circle.on-time{color:var(--fp-success)}.delay-status.delayed,.status-circle.delayed{color:var(--fp-warning)}.delay-status.severely-delayed,.delay-status.cancelled,.status-circle.severely-delayed,.status-circle.cancelled{color:var(--fp-danger)}.delay-status.diverted,.status-circle.diverted{color:#6f42c1}.delay-status{font-weight:600}.status-circle.on-time{background-color:rgba(25,135,84,.1)}.status-circle.delayed{background-color:rgba(253,126,20,.1)}.status-circle.severely-delayed,.status-circle.cancelled{background-color:rgba(220,53,69,.1)}.status-circle.diverted{background-color:rgba(111,66,193,.1)}.flight-page .left-panel{background:var(--fp-bg-light);border:1px solid var(--fp-border);min-height:400px}.flight-page .right-panel{min-height:400px}.flight-page .current-flight-status,.flight-page .quick-stats{background:#fff;border:1px solid var(--fp-border);border-radius:.5rem;padding:1.5rem}.flight-page .performance-section,.flight-page .recent-flights-section{background:#fff;border:1px solid var(--fp-border)}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px, 1fr));gap:1rem;margin-bottom:1.5rem}.stat-item{text-align:center;padding:1rem;background:var(--fp-bg-light);border-radius:.375rem;border:1px solid var(--fp-border)}.stat-value{font-size:1.5rem;font-weight:700;color:var(--fp-primary);display:block}.stat-label{font-size:.875rem;color:var(--fp-muted);margin-top:.25rem}.chart-container{position:relative;height:300px;margin:1rem 0;background:#fff;border:1px solid var(--fp-border);border-radius:.375rem;padding:1rem;min-height:280px;contain:layout}.chart-container canvas{max-width:100%;height:auto;display:block;margin:0 auto;border-radius:.25rem}.chart-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;background:var(--fp-bg-light);border-radius:.375rem;border:1px solid var(--fp-border)}.chart-placeholder{background:var(--fp-bg-light);border:1px solid var(--fp-border);border-radius:.375rem;min-height:250px;display:flex;align-items:center;justify-content:center}.chart-tooltip{position:absolute;background:rgba(13,54,84,.9);color:#fff;padding:.5rem .75rem;border-radius:.25rem;font-size:.875rem;pointer-events:none;z-index:1000;white-space:nowrap;box-shadow:0 2px 8px rgba(0,0,0,.15)}.flight-number-link,.airport-link{color:inherit;text-decoration:none;transition:color .2s ease}.flight-number-link:hover,.airport-link:hover{color:var(--fp-primary) !important;font-weight:500}.codeshare-link{color:var(--fp-muted);text-decoration:none;transition:color .2s ease}.codeshare-link:hover{color:var(--fp-primary);text-decoration:underline}.codeshare-info{font-size:.875rem}.codeshare-info small{color:var(--fp-muted) !important}.flight-instances-table{width:100%;margin-bottom:0}.flight-instances-table th{background-color:var(--fp-bg-light);border-bottom:2px solid var(--fp-border);font-weight:600;color:#495057;padding:.75rem;font-size:.875rem}.flight-instances-table td{padding:.75rem;border-bottom:1px solid var(--fp-border);vertical-align:middle}.flight-instances-table .flight-date{font-weight:600;color:#212529}.flight-instances-table .flight-times{font-size:.875rem}.flight-instances-table .scheduled-time{color:var(--fp-muted)}.flight-instances-table .actual-time{color:#212529;font-weight:500}.flight-404{min-height:60vh;display:flex;flex-direction:column;justify-content:center}.flight-404 h1{color:var(--fp-primary);font-weight:700}.flight-404 .lead{color:var(--fp-muted)}.flight-search-interface .card{border:1px solid var(--fp-border);box-shadow:0 .125rem .25rem rgba(0,0,0,.075)}.flight-search-interface .card-title{color:var(--fp-primary);font-weight:600}.loading-overlay{position:absolute;inset:0;background:rgba(255,255,255,.8);display:flex;align-items:center;justify-content:center;z-index:10;border-radius:inherit}.statistics-placeholder{background:var(--fp-bg-light);border:1px solid var(--fp-border);border-radius:.375rem;min-height:150px;display:flex;align-items:center;justify-content:center}.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}.flight-number-link:focus,.airport-link:focus,.codeshare-link:focus,.flight-breadcrumb .breadcrumb-item a:focus{outline:2px solid var(--fp-primary);outline-offset:2px}@media (prefers-contrast:high){.flight-page .left-panel,.flight-page .current-flight-status,.flight-page .quick-stats,.flight-page .performance-section,.flight-page .recent-flights-section{border-width:2px}.delay-status.on-time{color:#0f5132}.delay-status.delayed{color:#b45309}.delay-status.severely-delayed,.delay-status.cancelled{color:#842029}}@media print{.flight-page .skeleton-placeholder{display:none !important}.flight-page .real-content{display:block !important}.flight-breadcrumb,.chart-container,.loading-overlay{display:none !important}.flight-page .entry-header,.flight-page .left-panel,.flight-page .performance-section,.flight-page .recent-flights-section{border:1px solid #000 !important;background:#fff !important}.delay-status{color:#000 !important;font-weight:700 !important}}.single-flight #airport-search-form-desktop-results,.single-flight #airport-search-form-results,.single-flight #airport-menu-search-form-results{padding:10px 25px;position:absolute !important;z-index:1000 !important;background:#fff;display:none;border-radius:0 0 30px 30px;box-shadow:0 4px 6px rgba(0,0,0,.1)}.single-flight .overlay-search{position:fixed !important;inset:0;width:100vw !important;height:100vh !important;background-color:rgba(13,54,84,.6);display:none;z-index:50 !important}.single-flight #main-header{position:relative;overflow:visible;padding:10px;background-color:var(--fp-primary);z-index:100}.single-flight #main-header.main-header-single{max-height:102px !important}.security-wait-time .fw-bold{color:#495057 !important}.security-wait-time .text-primary{color:var(--fp-accent) !important}.airport-busyness-container{margin-bottom:1.5rem;margin-top:1rem;box-sizing:border-box}.airport-busyness-container h3{color:var(--fp-primary);font-weight:600;font-size:1.25rem}.airport-busyness-container .form-check{position:relative;width:135px;height:39px;float:right}.airport-busyness-container .form-check:after{content:"\f107";font-family:"Font Awesome 6 Free";font-weight:900;color:var(--fp-accent);right:11px;top:50%;transform:translateY(-40%);height:34px;position:absolute;pointer-events:none;display:flex;align-items:center}.airport-busyness-container select{width:100%;height:100%;background-color:#f3f4f4;border-radius:12px;border:1px solid #d8dde1;color:var(--fp-primary);font-weight:600;font-size:14px;-webkit-appearance:none;appearance:none;padding:0 30px 0 16px}.busyness-graph-wrapper{background-color:var(--fp-bg-light);border:1px solid var(--fp-border)}.busyness-graph{display:flex;align-items:flex-end;justify-content:space-between;height:200px;gap:2px;padding:10px 0;min-width:0}.busyness-bar-container{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;cursor:pointer;transition:transform .2s ease;height:100%}.busyness-bar-container:hover{transform:translateY(-2px)}.busyness-bar{width:100%;border-radius:4px 4px 0 0;transition:all .3s ease}.busyness-bar.current-hour{border:2px solid #0d6efd;box-shadow:0 0 8px rgba(13,110,253,.5)}.busyness-bar.busyness-not-busy{background-color:#28a745}.busyness-bar.busyness-a-bit-busy{background-color:#ffc107}.busyness-bar.busyness-busy{background-color:var(--fp-warning)}.busyness-bar.busyness-very-busy{background-color:var(--fp-danger)}.busyness-label{font-size:.7rem;color:var(--fp-muted);margin-top:5px;text-align:center}.busyness-legend{display:flex;flex-wrap:wrap;gap:15px;justify-content:center;padding-top:15px;border-top:1px solid #dee2e6}.legend-item{display:flex;align-items:center;gap:5px}.legend-color{width:20px;height:12px;border-radius:2px}.legend-text{font-size:.875rem;color:#495057}.flight-comparison-widget{background-color:var(--fp-bg-light) !important;border:1px solid var(--fp-border) !important}.flight-comparison-widget h4{color:#495057;font-weight:600}.performance-summary{background-color:#fff !important}.performance-badge{text-align:center}.performance-badge .h3{font-weight:700;line-height:1}.stat-card{background-color:#fff !important;border:1px solid var(--fp-border) !important}.stat-number{font-weight:700;line-height:1}.stat-comparison{color:var(--fp-muted);font-size:.85rem}.flight-comparison-row{background-color:#fff !important;border:1px solid var(--fp-border) !important;transition:all .2s ease}.flight-comparison-row:hover{transform:translateY(-1px);box-shadow:0 2px 8px rgba(0,0,0,.1)}.flight-link{color:var(--fp-accent);font-weight:600;text-decoration:none !important}.delay-time,.ontime-percentage{font-weight:600;font-size:1.1rem}#expand-flights-btn{transition:all .3s ease;min-width:200px;--bs-btn-color:var(--fp-accent) !important;--bs-btn-border-color:var(--fp-accent) !important;--bs-btn-hover-bg:var(--fp-accent) !important;--bs-btn-hover-border-color:var(--fp-accent) !important}#expand-flights-btn:hover{transform:translateY(-1px);box-shadow:0 2px 4px rgba(0,0,0,.1)}.additional-flight{opacity:0;transform:translateY(20px);transition:opacity .3s ease,transform .3s ease}.additional-flight.loaded{opacity:1;transform:translateY(0)}.flight-compensation-widget{background:#fff;border:1px solid var(--fp-border);margin-top:2rem;min-height:300px;contain:layout;position:relative}.flight-compensation-widget:before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--fp-primary),#1a5a7a);border-radius:.375rem .375rem 0 0}.flight-compensation-widget h5{color:var(--fp-primary);font-weight:600;margin-bottom:1.5rem;font-size:1.25rem}.flight-compensation-widget .aa__wrapper{height:250px !important;min-height:250px !important;border-radius:.375rem;overflow:hidden}.flight-compensation-widget .compensation-iframe{width:100% !important;height:100% !important;min-height:240px !important;border:none}.flight-alert-subscription h3{font-weight:600}.flight-alert-subscription .form-control:focus{border-color:var(--fp-accent);box-shadow:0 0 0 .2rem rgba(255,82,49,.25)}.flight-alert-subscription .btn:hover{background-color:#e04527 !important;border-color:#e04527 !important}.skeleton-loading .skeleton-placeholder{min-height:800px}.flight-page .left-panel{min-height:500px}.flight-page .right-panel{min-height:600px}.single-flight #single-wrapper{min-height:calc(100vh - 200px)}.flight-page .quick-stats{min-height:200px}.flight-page .performance-section{min-height:350px}.flight-page .recent-flights-section{min-height:400px}@media (max-width:991.98px){.flight-page .entry-header{padding:1rem}.flight-page .entry-title{font-size:2rem}.flight-page .left-panel{margin-bottom:2rem;min-height:400px}.flight-page .right-panel{padding-left:0 !important;min-height:500px}.stats-grid{grid-template-columns:repeat(2,1fr)}.skeleton-loading .skeleton-placeholder{min-height:1200px}.single-flight #single-wrapper{min-height:calc(100vh - 300px)}.single-flight #main-header.main-header-single{padding:22px 10px 18px}.single-flight #airport-search-form-desktop-results{top:101%}}@media (max-width:767.98px){.flight-page .entry-header{padding:1rem .75rem}.flight-page .entry-title{font-size:1.5rem !important;line-height:1.1 !important}.flight-page .entry-subtitle{font-size:1.25rem}.flight-page .left-panel{padding:1rem !important;margin-bottom:1.5rem;min-height:350px}.flight-page .current-flight-status{padding:1rem}.status-circle{width:100px !important;height:100px !important}.status-circle .delay-time{font-size:1.25rem !important}.status-circle .status-text{font-size:.7rem !important}.stats-grid{grid-template-columns:1fr;gap:.75rem}.stat-item{padding:.75rem}.chart-container{height:250px;padding:.75rem;min-height:220px}.chart-container canvas{touch-action:pan-y;-webkit-user-select:none;user-select:none}.flight-instances-table{font-size:.875rem}.flight-instances-table th,.flight-instances-table td{padding:.5rem .25rem}.skeleton-loading .skeleton-placeholder{min-height:1000px}.flight-page .right-panel{min-height:400px}.flight-page .performance-section{min-height:280px}.flight-page .recent-flights-section{min-height:300px}.flight-compensation-widget{min-height:280px;margin-top:1.5rem;padding:1rem !important}.busyness-graph{height:150px;gap:1px}.busyness-label{font-size:.6rem}.busyness-legend{gap:10px}.legend-text{font-size:.75rem}.flight-comparison-widget{padding:1rem !important}.flight-comparison-widget h4{font-size:1.1rem !important}#expand-flights-btn{min-width:auto;width:100%;font-size:.9rem}.security-wait-time{padding:.75rem !important;margin-bottom:1rem !important}.security-wait-time .fw-bold{font-size:.85rem !important}.flight-alert-subscription{padding:.75rem !important}.flight-alert-subscription h3{font-size:.9rem !important}.flight-alert-subscription .input-group{flex-direction:column}.flight-alert-subscription .form-control{border-radius:.375rem !important;margin-bottom:.5rem;width:100% !important}.flight-alert-subscription .btn{border-radius:.375rem !important;width:100%}.flight-number-link,.airport-link,.codeshare-link{min-height:30px;display:inline-flex;align-items:center;padding:.5rem 0}.flight-breadcrumb .breadcrumb-item a{min-height:44px;display:inline-flex;align-items:center}.btn{min-height:44px;padding:.75rem 1rem}.form-control{min-height:44px;font-size:16px}.single-flight .entry-header .d-flex{flex-direction:column;align-items:center;text-align:center}.single-flight .entry-title{justify-content:left !important;text-align:left !important}.single-flight .flight-title{text-align:left}.single-flight .codeshare-info{text-align:left !important;margin-top:.25rem !important}}@media (max-width:575.98px){.flight-page .entry-title{font-size:1.5rem}.flight-page .route-info p,.flight-page .status-info p{font-size:1.1rem}.chart-container{height:200px;padding:.5rem}.chart-tooltip{font-size:.75rem;padding:.375rem .5rem}.flight-instances-table .d-none-xs{display:none !important}}@media (min-width:1200px){.flight-page .entry-title{font-size:3rem}.flight-page .left-panel{padding:2rem !important}.flight-page .right-panel{padding-left:2rem !important}.single-flight .codeshare-info small{line-height:1.5 !important}}@media (min-width:768px){.single-flight .entry-title .codeshare-info{flex:0 0 100% !important;margin-left:0 !important;margin-top:.5rem !important}.single-flight .codeshare-link{color:var(--fp-muted);font-weight:500}.single-flight .codeshare-link:hover{color:var(--fp-primary);text-decoration:underline}}@media screen and (min-width:992px){.single-flight #main-header{z-index:1000 !important;overflow:visible !important}.single-flight #airport-search-form-desktop-results{position:absolute !important;top:59px !important;right:0 !important;width:100% !important;z-index:1001 !important;background:#fff !important;border-radius:0 0 30px 30px !important;box-shadow:0 4px 6px rgba(0,0,0,.1) !important;padding:10px 25px !important}.single-flight .overlay-search{position:fixed !important;inset:0 !important;z-index:999 !important}.single-flight .wrapper,.single-flight .container,.single-flight .search-main{overflow:visible !important}}