:root{--color-navy:#0b1d3a;--color-navy-light:#122b52;--color-slate:#1e3455;--color-sky:#4a9fd9;--color-sky-light:#6db8e8;--color-gold:#c9a84c;--color-gold-light:#dbbf6a;--color-white:#fff;--color-gray-50:#f8f9fb;--color-gray-100:#eef1f5;--color-gray-200:#d8dde6;--color-gray-400:#8e99a9;--color-gray-600:#5a6577;--color-gray-800:#2d3442;--color-red:#d94a4a;--font-display:"Plus Jakarta Sans", sans-serif;--font-body:"DM Sans", sans-serif;--radius-sm:6px;--radius-md:10px;--radius-lg:16px;--shadow-sm:0 1px 3px #0b1d3a14;--shadow-md:0 4px 16px #0b1d3a1a;--shadow-lg:0 8px 32px #0b1d3a24;--shadow-xl:0 16px 48px #0b1d3a2e}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body,#root{height:100%}body{font-family:var(--font-body);color:var(--color-gray-800);background:var(--color-gray-50);-webkit-font-smoothing:antialiased}.login-page{background:var(--color-white);flex-direction:column;justify-content:center;align-items:center;min-height:100%;padding:2rem;display:flex}.login-card{border-radius:var(--radius-lg);width:100%;max-width:420px;box-shadow:var(--shadow-xl);text-align:center;background:#0e1426;padding:3rem 2.5rem;animation:.5s ease-out fadeUp}@keyframes fadeUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.login-logo{margin-bottom:1.5rem}.logo-image{max-width:220px;height:auto;margin:0 auto;display:block}.login-divider{background:#ffffff1f;height:1px;margin:1.5rem 0}.login-description{color:#ffffffa6;margin-bottom:2rem;font-size:.95rem;line-height:1.5}.login-button{width:100%;font-family:var(--font-body);color:#0e1426;background:var(--color-white);border-radius:var(--radius-md);cursor:pointer;box-shadow:var(--shadow-sm);border:none;justify-content:center;align-items:center;gap:.75rem;padding:.85rem 2rem;font-size:.95rem;font-weight:600;transition:all .2s;display:inline-flex}.login-button:hover{background:var(--color-gray-100);box-shadow:var(--shadow-md);transform:translateY(-1px)}.login-button:active{transform:translateY(0)}.login-hint{color:#fff6;margin-top:1rem;font-size:.8rem}.login-footer{color:var(--color-gray-400);margin-top:2rem;font-size:.75rem}.auth-callback{min-height:100vh;color:var(--color-gray-400);flex-direction:column;justify-content:center;align-items:center;gap:1.5rem;font-size:.95rem;display:flex}.spinner{border:3px solid var(--color-gray-200);border-top-color:var(--color-sky);border-radius:50%;width:36px;height:36px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.dashboard{flex-direction:column;height:100vh;display:flex;overflow:hidden}.dashboard-header{background:var(--color-navy);z-index:100;border-bottom:1px solid #ffffff14;flex-shrink:0;align-items:center;height:64px;padding:0 2rem;display:flex;box-shadow:0 2px 8px #0003}.dashboard-brand{align-items:center;gap:.75rem;display:flex}.header-logo{width:auto;height:36px}.dashboard-brand h1{font-family:var(--font-display);color:var(--color-white);letter-spacing:-.01em;font-size:1.1rem;font-weight:800}.dashboard-nav{gap:.25rem;margin-left:3rem;display:flex}.nav-link{color:#ffffffa6;border-radius:var(--radius-sm);font-size:.875rem;font-weight:500;font-family:var(--font-body);cursor:pointer;background:0 0;border:none;padding:.5rem 1rem;text-decoration:none;transition:all .15s}.nav-link:hover{color:var(--color-white);background:#ffffff1a}.nav-link.active{color:var(--color-white);background:#ffffff26}.dashboard-user{align-items:center;gap:1rem;margin-left:auto;display:flex}.user-info{flex-direction:column;align-items:flex-end;display:flex}.user-name{color:var(--color-white);font-size:.85rem;font-weight:600}.user-email{color:#ffffff80;font-size:.75rem}.logout-button{font-family:var(--font-body);color:#fffc;border-radius:var(--radius-sm);cursor:pointer;background:#ffffff1a;border:1px solid #ffffff26;padding:.45rem 1rem;font-size:.8rem;font-weight:500;transition:all .15s}.logout-button:hover{color:var(--color-white);background:#fff3}.dashboard-main{flex:1;width:100%;max-width:1200px;margin:0 auto;padding:2.5rem;overflow-y:auto}.dashboard-welcome h2{font-family:var(--font-display);color:var(--color-navy);font-size:1.6rem;font-weight:700}.dashboard-welcome p{color:var(--color-gray-400);margin-top:.35rem;font-size:.95rem}.report-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1.5rem;margin-top:2rem;display:grid}.report-card{background:var(--color-navy);border:1px solid var(--color-navy-light);border-radius:var(--radius-md);cursor:pointer;padding:2rem;transition:all .2s}.report-card:hover{box-shadow:var(--shadow-md);border-color:var(--color-sky);transform:translateY(-2px)}.report-card.placeholder{cursor:default;border-style:dashed}.report-card.placeholder:hover{box-shadow:none;border-color:var(--color-gray-200);transform:none}.report-card-icon{width:110px;height:110px;margin:0 auto 1rem;display:block}.report-card-icon img{object-fit:contain;width:100%;height:100%}.report-card h3{font-family:var(--font-display);color:var(--color-white);margin-bottom:.5rem;font-size:1.05rem;font-weight:700}.report-card p{color:#ffffffa6;font-size:.875rem;line-height:1.5}.report-container{flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden}.report-embed-wrapper{flex-direction:column;flex:1;width:100%;min-height:0;display:flex;position:relative}.report-embed-container{flex:1;width:100%;min-height:0}.report-embed-container iframe{border:none;width:100%;height:100%}.report-loading{background:var(--color-gray-50);color:var(--color-gray-400);z-index:10;flex-direction:column;justify-content:center;align-items:center;gap:1rem;font-size:.95rem;display:flex;position:absolute;inset:0}.report-error{color:var(--color-gray-600);text-align:center;flex:1;justify-content:center;align-items:center;padding:2rem;font-size:.95rem;display:flex}@media (width<=768px){.login-card{padding:2rem 1.5rem}.dashboard-header{height:52px;padding:0 .75rem}.header-logo{height:32px}.header-title-desktop{display:none}.dashboard-brand h1{font-size:.95rem}.dashboard-nav{gap:0;margin-left:.5rem}.nav-link{padding:.4rem .6rem;font-size:.8rem}.report-name-desktop,.user-info{display:none}.dashboard-main{padding:1.5rem}.report-grid{grid-template-columns:1fr}.dashboard-welcome h2{font-size:1.3rem}}.map-main{flex:1;min-height:0;display:flex;position:relative;overflow:hidden}.map-stage{flex:1;min-width:0;position:relative}.map-canvas{width:100%;height:100%}.map-overlay{z-index:5;pointer-events:auto;position:absolute}.map-overlay--top-left{width:320px;max-width:calc(100% - 2rem);top:1rem;left:1rem}.map-overlay--top-right-secondary{top:1rem;right:4rem}.map-overlay--bottom-left{bottom:1.5rem;left:1rem}.map-overlay-center{z-index:10;pointer-events:none;background:#f8f9fbb3;flex-direction:column;justify-content:center;align-items:center;gap:.75rem;display:flex;position:absolute;inset:0}.map-error{color:var(--color-red);background:var(--color-white);border-radius:var(--radius-md);box-shadow:var(--shadow-md);pointer-events:auto;padding:1rem 1.5rem;font-weight:500}.map-style-select{font-family:var(--font-body);border-radius:var(--radius-sm);border:1px solid var(--color-gray-200);background:var(--color-white);color:var(--color-gray-800);cursor:pointer;box-shadow:var(--shadow-sm);padding:.4rem .75rem;font-size:.85rem}.map-legend{background:var(--color-white);border-radius:var(--radius-md);box-shadow:var(--shadow-md);padding:.75rem 1rem;font-size:.8rem;line-height:1.6}.map-legend__title{color:var(--color-navy);text-transform:uppercase;letter-spacing:.04em;margin-bottom:.35rem;font-size:.75rem;font-weight:700}.map-legend__row{color:var(--color-gray-800);align-items:center;gap:.5rem;display:flex}.map-legend__dot{border:2px solid var(--color-white);border-radius:50%;width:12px;height:12px;display:inline-block;box-shadow:0 0 0 1px #0000001a}.airport-marker{border:3px solid var(--color-white);cursor:pointer;border-radius:50%;width:32px;height:32px;transition:transform .15s,box-shadow .15s;box-shadow:0 1px 4px #0006}.airport-marker:hover{transform:scale(1.3);box-shadow:0 2px 8px #00000080}.airport-search{position:relative}.airport-search__input{width:100%;font-family:var(--font-body);border:1px solid var(--color-gray-200);border-radius:var(--radius-md);background:var(--color-white);color:var(--color-gray-800);box-shadow:var(--shadow-md);outline:none;padding:.7rem 1rem;font-size:.9rem;transition:border-color .15s}.airport-search__input:focus{border-color:var(--color-sky)}.airport-search__results{background:var(--color-white);border:1px solid var(--color-gray-200);border-radius:var(--radius-md);box-shadow:var(--shadow-md);max-height:300px;margin:.35rem 0 0;padding:.35rem 0;list-style:none;overflow-y:auto}.airport-search__result{text-align:left;cursor:pointer;width:100%;font-family:var(--font-body);background:0 0;border:none;flex-direction:column;align-items:flex-start;gap:.15rem;padding:.6rem .9rem;display:flex}.airport-search__result:hover{background:var(--color-gray-50)}.airport-search__icao{color:var(--color-navy);letter-spacing:.02em;font-size:.9rem;font-weight:700}.airport-search__name{color:var(--color-gray-600);font-size:.78rem}.airport-search__empty{background:var(--color-white);border:1px solid var(--color-gray-200);border-radius:var(--radius-md);box-shadow:var(--shadow-md);color:var(--color-gray-400);margin-top:.35rem;padding:.75rem 1rem;font-size:.85rem}.airport-panel{background:var(--color-white);border-left:1px solid var(--color-gray-200);flex-direction:column;width:0;transition:width .3s;display:flex;overflow:hidden;box-shadow:-4px 0 16px #0b1d3a14}.airport-panel--open{width:420px}.airport-panel__header{border-bottom:1px solid var(--color-gray-100);background:var(--color-navy);color:var(--color-white);flex-shrink:0;justify-content:space-between;align-items:flex-start;padding:1.25rem 1.5rem;display:flex}.airport-panel__icao{font-family:var(--font-display);letter-spacing:.02em;font-size:1.5rem;font-weight:800}.airport-panel__name{color:#ffffffb3;margin-top:.15rem;font-size:.85rem}.airport-panel__close{color:var(--color-white);cursor:pointer;background:#ffffff1a;border:none;border-radius:50%;flex-shrink:0;width:32px;height:32px;font-size:1.4rem;line-height:1;transition:background .15s}.airport-panel__close:hover{background:#fff3}.airport-panel__loading,.airport-panel__error{color:var(--color-gray-400);flex-direction:column;align-items:center;gap:.75rem;padding:2rem;display:flex}.airport-panel__error{color:var(--color-red)}.airport-panel__body{flex:1;padding:.5rem 0;overflow-y:auto}.airport-panel__empty{color:var(--color-gray-400);font-size:.85rem;font-style:italic}.freshness-notice{color:#72510c;background:#fff8e6;border:1px solid #f2c66d;border-radius:6px;margin-bottom:.85rem;padding:.65rem .75rem;font-size:.78rem;line-height:1.45}.freshness-notice strong{font-weight:700}.freshness-stamp{color:var(--color-gray-400);margin-bottom:.7rem;font-size:.72rem}.airport-panel__count{background:var(--color-navy);color:var(--color-white);text-align:center;border-radius:999px;min-width:18px;padding:.1rem .5rem;font-size:.7rem;font-weight:700}.airport-panel__footer{border-top:1px solid var(--color-gray-100);color:var(--color-gray-400);text-align:center;flex-shrink:0;padding:.85rem 1.5rem;font-size:.75rem}.airport-section{border-bottom:1px solid var(--color-gray-100)}.airport-section__header{width:100%;font-family:var(--font-body);color:var(--color-navy);cursor:pointer;text-align:left;background:0 0;border:none;align-items:center;gap:.6rem;padding:.85rem 1.5rem;font-size:.85rem;font-weight:600;display:flex}.airport-section__header:hover{background:var(--color-gray-50)}.airport-section__chevron{color:var(--color-gray-400);width:12px;font-size:.75rem}.airport-section__title{text-transform:uppercase;letter-spacing:.06em;flex:1;font-size:.75rem}.airport-section__badge{align-items:center;display:inline-flex}.airport-section__body{padding:.5rem 1.5rem 1.25rem}.data-row{justify-content:space-between;align-items:baseline;gap:1rem;padding:.3rem 0;font-size:.85rem;display:flex}.data-row__label{color:var(--color-gray-400);white-space:nowrap;font-weight:500}.data-row__value{color:var(--color-gray-800);text-align:right}.weather-block-label{color:var(--color-gray-400);text-transform:uppercase;letter-spacing:.08em;margin:.5rem 0 .25rem;font-size:.7rem;font-weight:700}.weather-raw{background:var(--color-gray-50);border:1px solid var(--color-gray-100);border-radius:var(--radius-sm);white-space:pre-wrap;word-break:break-word;color:var(--color-gray-800);margin:0;padding:.6rem .75rem;font-family:Consolas,Monaco,monospace;font-size:.78rem}.weather-grid{border-top:1px solid var(--color-gray-100);border-bottom:1px solid var(--color-gray-100);margin:.65rem 0;padding:.4rem 0}.category-badge{font-family:var(--font-body);border-radius:var(--radius-sm);letter-spacing:.04em;color:var(--color-white);padding:.15rem .5rem;font-size:.7rem;font-weight:700;display:inline-block}.category-badge--vfr{background:#3cb371}.category-badge--mvfr{background:var(--color-sky)}.category-badge--ifr{background:var(--color-red)}.category-badge--lifr{background:#9b59b6}.notam-list{flex-direction:column;gap:.65rem;margin:0;padding:0;list-style:none;display:flex}.notam-item{background:var(--color-gray-50);border:1px solid var(--color-gray-100);border-radius:var(--radius-sm);padding:.65rem .85rem}.notam-item__head{align-items:center;gap:.5rem;margin-bottom:.35rem;display:flex}.notam-item__id{color:var(--color-navy);font-size:.78rem;font-weight:700}.notam-item__type{background:var(--color-gray-200);color:var(--color-gray-800);border-radius:var(--radius-sm);text-transform:uppercase;letter-spacing:.05em;padding:.05rem .4rem;font-size:.65rem}.notam-item__body{color:var(--color-gray-800);margin:0;font-size:.82rem;line-height:1.4}.notam-item__dates{color:var(--color-gray-400);margin-top:.4rem;font-size:.7rem}.schedule-summary{flex-direction:column;gap:.75rem;display:flex}.schedule-summary__stats{grid-template-columns:1fr 1fr;gap:.6rem;display:grid}.schedule-summary__stats>div{background:var(--color-gray-50);border:1px solid var(--color-gray-100);border-radius:var(--radius-sm);padding:.65rem .75rem}.schedule-summary__count{font-family:var(--font-display);color:var(--color-navy);font-size:1.25rem;font-weight:800;line-height:1;display:block}.schedule-summary__label{letter-spacing:.05em;text-transform:uppercase;color:var(--color-gray-400);margin-top:.25rem;font-size:.7rem;font-weight:700;display:block}.schedule-summary__updated{color:var(--color-gray-400);font-size:.72rem}.schedule-summary__button{background:var(--color-navy);width:100%;color:var(--color-white);border-radius:var(--radius-sm);font-family:var(--font-body);cursor:pointer;border:none;padding:.6rem .75rem;font-size:.8rem;font-weight:700}.schedule-summary__button:hover{background:var(--color-navy-light)}.schedule-modal__panel{width:min(1080px,100vw - 4rem);height:min(760px,100vh - 4rem)}.schedule-modal__updated{color:#ffffffa8;margin-top:.35rem;font-size:.75rem}.schedule-modal__toolbar{background:var(--color-gray-50);border-bottom:1px solid var(--color-gray-100);gap:.5rem;padding:.85rem 1rem;display:flex}.schedule-modal__tab{border:1px solid var(--color-gray-100);border-radius:var(--radius-sm);background:var(--color-white);color:var(--color-gray-800);font-family:var(--font-body);cursor:pointer;align-items:center;gap:.6rem;padding:.55rem .85rem;font-weight:800;display:inline-flex}.schedule-modal__tab span:last-child{min-width:28px;color:var(--color-navy);background:#4a9fd91f;border-radius:999px;padding:.1rem .45rem;font-size:.7rem}.schedule-modal__tab--active{border-color:var(--color-sky);box-shadow:var(--shadow-sm)}.schedule-modal__content{flex:1;min-height:0;padding:1rem;overflow:auto}.schedule-table-wrap{min-width:0}.schedule-table{border-collapse:separate;border-spacing:0;table-layout:fixed;width:100%;font-size:.83rem}.schedule-table th{z-index:1;background:var(--color-gray-50);border-bottom:1px solid var(--color-gray-100);color:var(--color-gray-400);text-align:left;letter-spacing:.08em;text-transform:uppercase;padding:.65rem .75rem;font-size:.68rem;font-weight:800;position:sticky;top:0}.schedule-table td{border-bottom:1px solid var(--color-gray-100);color:var(--color-gray-800);vertical-align:top;padding:.75rem}.schedule-table th:first-child,.schedule-table td:first-child{width:110px}.schedule-table th:nth-child(2),.schedule-table td:nth-child(2){width:130px}.schedule-table th:nth-child(5),.schedule-table td:nth-child(5){width:150px}.schedule-time,.schedule-flight{color:var(--color-navy);font-weight:800;display:block}.schedule-date,.schedule-iata{color:var(--color-gray-400);margin-top:.18rem;font-size:.72rem;display:block}.schedule-status{background:var(--color-gray-100);max-width:100%;color:var(--color-gray-800);border-radius:999px;align-items:center;padding:.18rem .5rem;font-size:.72rem;font-weight:700;display:inline-flex}.schedule-status--good{color:#2d7a4c;background:#2d7a4c1f}.schedule-status--warn{color:#8a6a18;background:#c9a84c29}.schedule-status--bad{color:#b8421c;background:#b8421c1f}.chart-summary{flex-direction:column;gap:.75rem;display:flex}.chart-summary__label,.chart-modal__label{letter-spacing:.08em;text-transform:uppercase;color:var(--color-gray-400);font-size:.68rem;font-weight:800}.chart-chip-grid,.chart-modal__quick-grid{grid-template-columns:1fr;gap:.45rem;display:grid}.chart-chip{background:var(--color-gray-50);border:1px solid var(--color-gray-100);border-radius:var(--radius-sm);width:100%;color:var(--color-gray-800);text-align:left;font-family:var(--font-body);cursor:pointer;grid-template-columns:auto 1fr;align-items:center;gap:.55rem;padding:.55rem .65rem;transition:border-color .15s,box-shadow .15s;display:grid}.chart-chip:hover,.chart-chip--active{border-color:var(--color-sky);box-shadow:var(--shadow-sm)}.chart-chip__category,.chart-row__category,.chart-modal__chart-category{border-radius:var(--radius-sm);min-width:34px;color:var(--color-navy);letter-spacing:.05em;background:#4a9fd91f;justify-content:center;align-items:center;padding:.12rem .35rem;font-size:.64rem;font-weight:800;display:inline-flex}.chart-chip__title{text-overflow:ellipsis;white-space:nowrap;font-size:.78rem;font-weight:600;overflow:hidden}.chart-row-list{flex-direction:column;gap:.4rem;display:flex}.chart-row{background:var(--color-white);border:1px solid var(--color-gray-100);border-radius:var(--radius-sm);min-width:0;color:var(--color-gray-800);text-align:left;font-family:var(--font-body);cursor:pointer;grid-template-columns:auto 1fr;align-items:center;gap:.55rem;padding:.5rem .6rem;transition:border-color .15s,box-shadow .15s;display:grid}.chart-row:hover,.chart-row--active{border-color:var(--color-sky);box-shadow:var(--shadow-sm)}.chart-row__title{text-overflow:ellipsis;white-space:nowrap;font-size:.76rem;font-weight:600;line-height:1.2;overflow:hidden}.chart-summary__more{background:var(--color-navy);color:var(--color-white);border-radius:var(--radius-sm);font-family:var(--font-body);cursor:pointer;border:none;padding:.55rem .75rem;font-size:.8rem;font-weight:700}.chart-modal{z-index:500;justify-content:center;align-items:center;padding:2rem;display:flex;position:fixed;inset:0}.chart-modal__backdrop{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#07111fa3;position:absolute;inset:0}.chart-modal__panel{background:var(--color-white);border-radius:var(--radius-md);flex-direction:column;width:min(1280px,100vw - 4rem);height:min(820px,100vh - 4rem);display:flex;position:relative;overflow:hidden;box-shadow:0 24px 80px #00000052}.chart-modal__header{color:var(--color-white);background:var(--color-navy);justify-content:space-between;align-items:flex-start;gap:1rem;padding:1rem 1.25rem;display:flex}.chart-modal__header h2{font-family:var(--font-display);margin:.15rem 0 0;font-size:1.15rem;line-height:1.2}.chart-modal__eyebrow{letter-spacing:.08em;text-transform:uppercase;color:#ffffff9e;font-size:.7rem;font-weight:800}.chart-modal__close{width:34px;height:34px;color:var(--color-white);cursor:pointer;background:#ffffff1f;border:none;border-radius:50%;font-size:1.35rem;line-height:1}.chart-modal__close:hover{background:#ffffff38}.chart-modal__quick{border-bottom:1px solid var(--color-gray-100);background:var(--color-gray-50);flex:none;padding:.85rem 1.25rem}.chart-modal__quick-grid{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));margin-top:.5rem}.chart-modal__content{flex:1;grid-template-columns:260px 1fr;min-height:0;display:grid}.chart-modal__rail{background:var(--color-gray-50);border-right:1px solid var(--color-gray-100);flex-direction:column;gap:.65rem;min-height:0;padding:.9rem;display:flex;overflow-y:auto}.chart-modal__group{flex-direction:column;gap:.45rem;display:flex}.chart-modal__group-title{letter-spacing:.08em;text-transform:uppercase;color:var(--color-gray-400);justify-content:space-between;align-items:center;gap:.75rem;padding:.25rem .1rem;font-size:.68rem;font-weight:800;display:flex}.chart-modal__viewer{flex-direction:column;min-width:0;min-height:0;display:flex}.chart-modal__viewer-head{border-bottom:1px solid var(--color-gray-100);justify-content:space-between;align-items:flex-start;gap:1rem;padding:.85rem 1rem;display:flex}.chart-modal__viewer-head h3{font-family:var(--font-display);color:var(--color-navy);margin:.3rem 0 0;font-size:.95rem}.chart-modal__open-link{border-radius:var(--radius-sm);background:var(--color-navy);color:var(--color-white);flex:none;padding:.45rem .75rem;font-size:.78rem;font-weight:700;text-decoration:none}.chart-modal__frame{background:var(--color-gray-50);border:none;flex:1;width:100%;min-height:0}@media (width<=768px){.airport-panel--open{z-index:100;width:100%;position:absolute;top:0;bottom:0;right:0}.map-overlay--top-left{width:calc(100% - 2rem)}.map-overlay--bottom-left{display:none}.chart-modal{padding:.75rem}.chart-modal__panel{width:calc(100vw - 1.5rem);height:calc(100vh - 1.5rem)}.chart-modal__quick{display:none}.chart-modal__content{grid-template-rows:165px 1fr;grid-template-columns:1fr}.chart-modal__rail{border-right:none;border-bottom:1px solid var(--color-gray-100);overflow-y:auto}.schedule-modal__panel{width:calc(100vw - 1.5rem);height:calc(100vh - 1.5rem)}.schedule-modal__toolbar{overflow-x:auto}.schedule-modal__content{padding:.75rem}.schedule-table,.schedule-table thead,.schedule-table tbody,.schedule-table tr,.schedule-table th,.schedule-table td{display:block}.schedule-table thead{display:none}.schedule-table tr{border:1px solid var(--color-gray-100);border-radius:var(--radius-sm);background:var(--color-white);margin-bottom:.65rem;padding:.75rem}.schedule-table td{border-bottom:none;grid-template-columns:92px 1fr;gap:.75rem;padding:.35rem 0;display:grid}.schedule-table td:before{content:attr(data-label);color:var(--color-gray-400);letter-spacing:.06em;text-transform:uppercase;font-size:.68rem;font-weight:800}}.runway-list{flex-direction:column;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.runway-item{background:var(--color-gray-50);border:1px solid var(--color-gray-100);border-radius:var(--radius-sm);padding:.65rem .85rem}.runway-item__head{align-items:center;gap:.5rem;margin-bottom:.25rem;display:flex}.runway-item__designator{font-family:var(--font-display);color:var(--color-navy);letter-spacing:.02em;font-size:1rem;font-weight:700}.runway-item__closed{background:var(--color-red);color:var(--color-white);border-radius:var(--radius-sm);text-transform:uppercase;letter-spacing:.05em;padding:.1rem .45rem;font-size:.65rem;font-weight:700}.runway-item__specs{color:var(--color-gray-600);flex-wrap:wrap;align-items:baseline;gap:.35rem;font-size:.8rem;display:flex}.runway-item__sep{color:var(--color-gray-200)}.freq-list{flex-direction:column;gap:.1rem;display:flex}.freq-row{border-bottom:1px solid var(--color-gray-100);grid-template-columns:64px 1fr auto;align-items:baseline;gap:.75rem;padding:.4rem 0;font-size:.85rem;display:grid}.freq-row:last-child{border-bottom:none}.freq-row__type{background:var(--color-gray-100);color:var(--color-navy);border-radius:var(--radius-sm);letter-spacing:.04em;text-transform:uppercase;text-align:center;padding:.15rem .5rem;font-size:.7rem;font-weight:700}.freq-row__desc{color:var(--color-gray-600);text-overflow:ellipsis;white-space:nowrap;font-size:.8rem;overflow:hidden}.freq-row__mhz{color:var(--color-gray-800);text-align:right;font-family:Consolas,Monaco,monospace;font-size:.85rem;font-weight:600}.fuel-shell{--fuel-page-bg:#f8fafd;--fuel-panel:#fff;--fuel-panel-soft:#f7f9fc;--fuel-border:#e5e9f0;--fuel-border-soft:#eef1f5;--fuel-text:#0b1d3a;--fuel-muted:#5a6577;--fuel-subtle:#8a94a6;--fuel-accent:#4a9fd9;--fuel-gold:#c9a84c;--fuel-selected:#0b1d3a;--fuel-danger:#b8421c;--fuel-good:#2d7a4c;--fuel-banner-bg:linear-gradient(90deg, #c9a84c1a 0%, #c9a84c05 100%);--fuel-shadow:0 1px 2px #0b1d3a0a;--fuel-card-shadow:0 4px 16px #0b1d3a1a;--fuel-tooltip-bg:#0b1d3a;--fuel-tooltip-text:#fff;--fuel-tooltip-muted:#ffffffb3;background:var(--fuel-page-bg)}.fuel-shell--dark{--fuel-page-bg:#07111f;--fuel-panel:#0e1b2f;--fuel-panel-soft:#101f34;--fuel-border:#253852;--fuel-border-soft:#1d2b42;--fuel-text:#f4f7fb;--fuel-muted:#c8d2e1;--fuel-subtle:#8ea0b8;--fuel-accent:#6bb7e8;--fuel-gold:#e7c66a;--fuel-selected:#e7c66a;--fuel-danger:#ff8a62;--fuel-good:#72d69d;--fuel-banner-bg:linear-gradient(90deg, #e7c66a2e 0%, #e7c66a0a 100%);--fuel-shadow:0 1px 2px #0000004d;--fuel-card-shadow:0 10px 28px #00000047;--fuel-tooltip-bg:#f4f7fb;--fuel-tooltip-text:#07111f;--fuel-tooltip-muted:#07111f9e}.fuel-main{width:100%;max-width:none;min-height:0;color:var(--fuel-text);background:var(--fuel-page-bg);flex:auto;margin:0;padding:2rem 2rem 3rem;overflow-y:auto}.fuel-toolbar{align-items:stretch;gap:1rem;margin-bottom:1.75rem;display:flex}.fuel-beta-banner{background:var(--fuel-banner-bg);border-left:3px solid var(--fuel-gold);border-radius:6px;flex:auto;align-items:center;gap:.875rem;padding:.75rem 1.25rem;display:flex}.fuel-theme-toggle{background:var(--fuel-panel);border:1px solid var(--fuel-border);box-shadow:var(--fuel-shadow);border-radius:999px;flex:none;align-self:center;align-items:center;padding:.2rem;display:inline-flex}.fuel-theme-toggle__button{color:var(--fuel-muted);font:inherit;cursor:pointer;background:0 0;border:none;border-radius:999px;padding:.45rem .8rem;font-size:.8rem;font-weight:600;transition:background .15s,color .15s}.fuel-theme-toggle__button.is-active{background:var(--fuel-selected);color:var(--fuel-panel)}.fuel-beta-badge{font-family:var(--font-display,"Plus Jakarta Sans", sans-serif);letter-spacing:.12em;color:var(--fuel-gold);border:1px solid var(--fuel-gold);text-transform:uppercase;border-radius:4px;flex-shrink:0;padding:.2rem .55rem;font-size:.7rem;font-weight:700}.fuel-beta-text{color:var(--fuel-muted);font-size:.875rem;line-height:1.5}.fuel-state{color:var(--fuel-muted);flex-direction:column;justify-content:center;align-items:center;padding:4rem 2rem;display:flex}.fuel-error{color:var(--fuel-danger);font-size:.95rem}.fuel-empty{text-align:center;color:var(--fuel-subtle);padding:2rem;font-size:.95rem}.fuel-inputs{background:var(--fuel-panel);border:1px solid var(--fuel-border);box-shadow:var(--fuel-shadow);border-radius:10px;grid-template-columns:repeat(4,1fr);gap:1rem;margin-bottom:2.5rem;padding:1.25rem;display:grid}.fuel-input-cell{border-right:1px solid var(--fuel-border-soft);padding:0 .5rem}.fuel-input-cell:last-child{border-right:none}.fuel-input-cell__label{letter-spacing:.08em;text-transform:uppercase;color:var(--fuel-subtle);margin-bottom:.35rem;font-size:.7rem;font-weight:600}.fuel-input-cell__value{font-family:var(--font-display,"Plus Jakarta Sans", sans-serif);color:var(--fuel-text);letter-spacing:-.01em;font-size:1.5rem;font-weight:600;line-height:1.1}.fuel-input-cell__unit{color:var(--fuel-subtle);letter-spacing:0;margin-left:.3rem;font-size:.8rem;font-weight:500}.fuel-section{margin-bottom:2.5rem}.fuel-section-title{font-family:var(--font-display,"Plus Jakarta Sans", sans-serif);color:var(--fuel-text);letter-spacing:-.005em;flex-wrap:wrap;align-items:baseline;gap:.75rem;margin:0 0 1rem;font-size:1.05rem;font-weight:600;display:flex}.fuel-country-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem;display:grid}.fuel-card{background:var(--fuel-panel);border:1px solid var(--fuel-border);cursor:pointer;text-align:left;font:inherit;border-left:3px solid #0000;border-radius:10px;flex-direction:column;gap:.5rem;padding:1.25rem 1.25rem 1.1rem;transition:border-color .15s,box-shadow .15s,transform .15s;display:flex}.fuel-card:hover{border-color:var(--fuel-subtle);box-shadow:var(--fuel-card-shadow);transform:translateY(-1px)}.fuel-card--selected{border-left-color:var(--fuel-selected);box-shadow:var(--fuel-card-shadow)}.fuel-card__header{align-items:center;gap:.5rem;margin-bottom:.25rem;display:flex}.fuel-card__flag{width:24px;height:18px;box-shadow:0 0 0 1px color-mix(in srgb, var(--fuel-border) 72%, transparent);border-radius:3px;flex:none;justify-content:center;align-items:center;display:inline-flex;overflow:hidden}.fuel-card__flag img{object-fit:cover;width:100%;height:100%;display:block}.fuel-card__code{color:var(--fuel-muted);letter-spacing:.04em;font-size:.78rem;font-weight:700;line-height:1}.fuel-card__name{font-family:var(--font-display,"Plus Jakarta Sans", sans-serif);color:var(--fuel-text);flex:1;font-size:.95rem;font-weight:600}.fuel-card__badge{width:18px;height:18px;color:var(--fuel-gold);background:color-mix(in srgb, var(--fuel-gold) 14%, transparent);cursor:help;border-radius:50%;justify-content:center;align-items:center;font-size:.8rem;font-weight:700;display:inline-flex}.fuel-card__price{font-family:var(--font-display,"Plus Jakarta Sans", sans-serif);color:var(--fuel-text);letter-spacing:-.02em;font-size:1.65rem;font-weight:700;line-height:1.1}.fuel-card__ccy{color:var(--fuel-subtle);letter-spacing:0;margin-left:.35rem;font-size:.75rem;font-weight:500}.fuel-card__usd{color:var(--fuel-muted);font-size:.8rem}.fuel-card__change{align-items:center;gap:.4rem;margin-top:.35rem;font-size:.8rem;font-weight:600;display:inline-flex}.fuel-card__change--up{color:var(--fuel-danger)}.fuel-card__change--down{color:var(--fuel-good)}.fuel-card__period{color:var(--fuel-subtle);margin-left:.2rem;font-weight:400}.fuel-trend-panel{grid-column:1/-1;padding-top:.25rem}.fuel-chart-header{margin-bottom:.75rem}.fuel-chart-subtitle{color:var(--fuel-subtle);letter-spacing:0;font-size:.85rem;font-weight:500}.fuel-chart{background:var(--fuel-panel);border:1px solid var(--fuel-border);box-shadow:var(--fuel-shadow);border-radius:10px;padding:1.25rem .5rem .5rem}.fuel-chart-tooltip{background:var(--fuel-tooltip-bg);border-radius:6px;padding:.65rem .9rem;box-shadow:0 4px 14px #0000002e}.fuel-chart-tooltip__date{color:var(--fuel-tooltip-muted);margin-bottom:.3rem;font-size:.75rem;font-weight:500}.fuel-chart-tooltip__price{font-family:var(--font-display,"Plus Jakarta Sans", sans-serif);color:var(--fuel-tooltip-text);font-size:1.05rem;font-weight:600}.fuel-chart-tooltip__price span{color:var(--fuel-tooltip-muted);margin-left:.25rem;font-size:.7rem;font-weight:500}.fuel-chart-tooltip__usd{color:var(--fuel-accent);margin-top:.2rem;font-size:.75rem}.fuel-disclaimers{background:var(--fuel-panel-soft);border:1px solid var(--fuel-border);border-radius:10px;margin-top:2.5rem;padding:1.25rem 1.5rem}.fuel-disclaimers__title{font-family:var(--font-display,"Plus Jakarta Sans", sans-serif);letter-spacing:.06em;text-transform:uppercase;color:var(--fuel-text);margin:0 0 .5rem;font-size:.8rem;font-weight:700}.fuel-disclaimers__title--alt{color:var(--fuel-gold);margin-top:1.1rem}.fuel-disclaimers__body{color:var(--fuel-muted);margin:0 0 .4rem;font-size:.85rem;line-height:1.55}.fuel-disclaimers__body strong{color:var(--fuel-text);font-weight:600}@media (width<=1319px){.fuel-country-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=960px){.fuel-main{padding:1.25rem 1rem 2.5rem}.fuel-toolbar{flex-direction:column}.fuel-theme-toggle{align-self:flex-start}.fuel-inputs{grid-template-columns:repeat(2,1fr);gap:.75rem}.fuel-input-cell:nth-child(2){border-right:none}.fuel-country-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=639px){.fuel-inputs{grid-template-columns:1fr 1fr}.fuel-input-cell{border-right:none;border-bottom:1px solid var(--fuel-border-soft);padding-bottom:.7rem}.fuel-input-cell:nth-last-child(-n+2){border-bottom:none}.fuel-country-grid{grid-template-columns:1fr}.fuel-chart{padding:1rem .15rem .35rem}.fuel-card__price{font-size:1.5rem}}
