:root{color:#f4f8ff;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#070b12;font-family:Inter,Segoe UI,Roboto,Helvetica,Arial,sans-serif;font-weight:400;line-height:1.5}*{box-sizing:border-box}body{background:radial-gradient(circle at 20% -20%,#1c3f78 0%,#0000 45%),radial-gradient(circle at 100% 0,#183741 0%,#0000 40%),#070b12;min-width:320px;min-height:100vh;margin:0}code{background:#121a28;border-radius:4px;padding:.1rem .3rem}.app-shell{max-width:none;margin:0;padding:1.5rem 10px}.app-shell--airport-board .top-nav{z-index:5;position:relative}.app-shell--airport-board .brand-marquee,.app-shell--airport-board .brand-marquee__viewport,.app-shell--airport-board .brand-marquee__track,.app-shell--airport-board .brand-marquee__segment{transition:none}.top-nav{background:#101521;border:1px solid #2f3544;border-radius:12px;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding:.9rem 1.1rem;display:flex}.brand{letter-spacing:.08rem;color:#70d6ff;font-weight:700}.top-nav-brand-group{flex-shrink:0;align-items:center;gap:1rem;display:flex}.brand-with-logo{align-items:center;gap:.6rem;display:flex}.brand-cgi-link{letter-spacing:.04rem;color:#9dd8ff;white-space:nowrap;font-size:.82rem;font-weight:600;text-decoration:none}.brand-cgi-link:hover{color:#70d6ff;text-decoration:underline}.brand-home-link{color:inherit;cursor:pointer;text-decoration:none}.brand-home-link:hover{opacity:.9}.brand-logo{object-fit:contain;width:34px;height:34px}.brand-rotating{opacity:1;color:#9dd8ff;min-height:1.4em;transition:opacity .48s}.brand-rotating.brand-rotating--dimmed{opacity:0}.brand-marquee{color:#9dd8ff;flex:1;min-width:0;min-height:1.4em}.brand-marquee__viewport{isolation:isolate;width:100%;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,#0000,#000 12% 88%,#0000);mask-image:linear-gradient(90deg,#0000,#000 12% 88%,#0000)}.brand-marquee__track{will-change:transform;backface-visibility:hidden;width:max-content;animation:28s linear infinite brand-marquee-ltr;display:inline-flex}.brand-marquee__segment{white-space:nowrap;flex-shrink:0;padding-right:2rem}@keyframes brand-marquee-ltr{0%{transform:translate(-50%)}to{transform:translate(0)}}@media (prefers-reduced-motion:reduce){.brand-marquee__track{animation:none;transform:none}.brand-marquee__viewport{overflow-x:auto;-webkit-mask-image:none;mask-image:none}}.top-nav nav{gap:1rem;display:flex}.top-nav a{color:#f4f8ff;font-weight:500;text-decoration:none}.top-nav a:hover{color:#70d6ff}.page-content{width:100%;min-width:0;max-width:100%;min-height:calc(100vh - 150px)}.home-page{background:#0d121e;border:1px solid #2f3544;border-radius:12px;justify-items:start;gap:1rem;padding:2rem;display:grid}.eyebrow{color:#70d6ff;letter-spacing:.15rem;text-transform:uppercase;margin:0;font-size:.8rem}.home-page h1{margin:0}.intro{color:#d5dded;max-width:50ch;margin:0}.cta-link{color:#fff;background:#1f7a8c;border-radius:8px;padding:.6rem 1rem;text-decoration:none;display:inline-block}.home-board-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,17rem),1fr));gap:1.1rem;width:100%;max-width:72rem;display:grid}.home-board-card{color:inherit;background:#0f1522;border:1px solid #2f3544;border-radius:12px;flex-direction:column;text-decoration:none;transition:border-color .18s,box-shadow .18s,transform .18s;display:flex;overflow:hidden}.home-board-card:hover{border-color:#4a6a8a;transform:translateY(-2px);box-shadow:0 8px 28px #00000059}.home-board-card:focus-visible{outline-offset:3px;outline:2px solid #70d6ff}.home-board-card-media{aspect-ratio:400/250;background:#070b12;border-bottom:1px solid #2f3544;position:relative}.home-board-card-media img{object-fit:cover;width:100%;height:100%;display:block}.home-board-card-body{gap:.35rem;padding:.85rem 1rem 1rem;display:grid}.home-board-card-title{color:#f0f4ff;font-size:1.05rem;font-weight:700}.home-board-card-desc{color:#a8b6d0;font-size:.85rem;line-height:1.35}.home-board-card-cta{letter-spacing:.04em;text-transform:uppercase;color:#70d6ff;margin-top:.35rem;font-size:.82rem;font-weight:600}.board-page-002 .board-grid{grid-template-columns:minmax(3.5rem,.75fr) minmax(0,2fr) minmax(5.5rem,1.15fr) minmax(5.5rem,1.15fr)}.board-page-002 .board-grid.board-grid-row{align-items:stretch}.board-page-002 .board-grid-row>span:first-child,.board-page-002 .board-grid-row>span:nth-child(2),.board-page-002 .board-grid-row>span:nth-child(4){align-self:center}.board-page-002 .rb002-rate-cell{box-sizing:border-box;color:#f8f9ef;text-shadow:0 1px 2px #00000059;background:linear-gradient(135deg,#5e5820 0%,#b4ad42 48%,#e0d878 100%);border:2px solid #4a546d;border-radius:10px;justify-content:flex-end;align-self:stretch;align-items:center;margin-top:-1.7rem;margin-bottom:-1.7rem;padding:1.7rem 10px;display:flex}@media (width<=840px){.board-page-002 .rb002-rate-cell{margin-top:-1.25rem;margin-bottom:-1.25rem;padding:1.25rem 10px}}.board-page-003 .board-grid{grid-template-columns:minmax(3.5rem,.75fr) minmax(0,2fr) minmax(5.5rem,1.15fr) minmax(5.5rem,1.15fr)}.board-page-003 .board-grid.board-grid-row{align-items:center}.board-page-003 .board-grid.board-grid-row:nth-child(odd){background:linear-gradient(#2a3a58 0%,#0e1522 55%,#060a10 100%);border-bottom:1px solid #4a546d}.board-page-003 .board-grid.board-grid-row:nth-child(2n){background:linear-gradient(#1e3d32 0%,#0c1a16 55%,#050c0a 100%);border-bottom:1px solid #4a546d}.board-page-004 .board-grid{grid-template-columns:minmax(64px,.7fr) minmax(0,1.6fr) minmax(0,1fr) minmax(0,1fr)}.board-page-005-grids{grid-template-columns:1fr;gap:1rem;display:grid}.board-page-005 .datetime-cards{grid-template-columns:repeat(6,minmax(0,1fr))}@media (width>=1260px){.board-page-005-grids{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem}.board-page-005 .board-grid{gap:.6rem;padding:1.35rem 1.25rem}.board-page-005 .board-grid-header{font-size:1.12rem}.board-page-005 .board-grid-row{font-size:1.4rem}.board-page-005 .flag-image{width:82px}}.board-page{box-sizing:border-box;background:linear-gradient(#070b12b3, #070b12b3), var(--app-bg-image) center / cover no-repeat;border-radius:12px;gap:1rem;width:100%;min-width:0;max-width:100%;padding:clamp(.65rem,2vw,1rem);display:grid}.datetime-cards{grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem;display:grid}.datetime-card{color:#f3f7ff;border:2px solid #4a546d;border-radius:12px;gap:.25rem;padding:.75rem 1rem;font-family:Roboto Mono,Consolas,Monaco,monospace;display:grid}.datetime-cards .datetime-card:first-child{background:linear-gradient(135deg,#132033 0%,#1f3552 100%)}.datetime-cards .datetime-card:nth-child(2){background:linear-gradient(135deg,#1c2434 0%,#2e3d5d 100%)}.datetime-cards .datetime-card:nth-child(3){background:linear-gradient(135deg,#1a2b2a 0%,#27504d 100%)}.datetime-cards .datetime-card:nth-child(4){background:linear-gradient(135deg,#2c2126 0%,#5a3042 100%)}.datetime-title{text-transform:uppercase;letter-spacing:.08rem;color:#8faad0;font-size:1.64rem}.datetime-value{letter-spacing:.05rem;font-size:2rem}.board-frame{box-sizing:border-box;background:linear-gradient(#0a0f18 0%,#070b12 100%);border:2px solid #4a546d;border-radius:12px;width:100%;min-width:0;max-width:100%;overflow:auto hidden;box-shadow:0 10px 30px #0000004d}.board-rows{min-width:0}.board-grid{box-sizing:border-box;grid-template-columns:minmax(3.5rem,.8fr) minmax(0,2fr) minmax(4.5rem,1fr) minmax(4.5rem,1fr);align-items:center;gap:clamp(.4rem,1.5vw,.75rem);width:100%;min-width:min(100%,20rem);padding:clamp(.85rem,2.5vw,1.7rem) clamp(.65rem,3vw,2rem);display:grid}.board-grid>span{overflow-wrap:anywhere;min-width:0}.board-grid-header{text-transform:uppercase;letter-spacing:.08rem;color:#7ea5d4;background:#131a27;border-bottom:1px solid #394258;font-size:clamp(.85rem,2.2vw,1.56rem)}.board-grid-row{color:#e6edf8;border-bottom:1px solid #4a546d;font-size:clamp(1rem,3.5vw,2rem)}.board-grid-row:nth-child(odd){background:#ffffff0f}.mono-cell{letter-spacing:.04rem;color:#6ff5a9;font-family:Roboto Mono,Consolas,Monaco,monospace;font-size:inherit}.flag-image{aspect-ratio:3/2;object-fit:cover;background:#fff;border:1px solid #3b4254;border-radius:3px;width:clamp(44px,12vw,135px);max-width:100%;height:auto}.board-status{text-align:center;color:#d9e4f4;padding:1rem}.board-error{background:#3b1820;border:1px solid #8f2d3b;border-radius:10px}.board-error-text{text-align:left;white-space:pre-wrap;word-break:break-word;font-size:.88rem}.subtle{color:#a0afc5;margin:0}@media (width<=840px){.app-shell{padding:1rem 10px}.top-nav{flex-direction:column;align-items:start}.top-nav .brand-marquee{align-self:stretch;width:100%;max-width:100%}.board-grid{grid-template-columns:minmax(2.75rem,.7fr) minmax(0,1.5fr) minmax(4rem,1fr) minmax(4rem,1fr);padding:1.25rem 1rem}.board-page-002 .board-grid,.board-page-003 .board-grid{grid-template-columns:minmax(2.75rem,.7fr) minmax(0,1.5fr) minmax(4rem,1fr) minmax(4rem,1fr)}.board-page-004 .board-grid{grid-template-columns:minmax(54px,.65fr) minmax(0,1.3fr) minmax(0,.95fr) minmax(0,.95fr);gap:.5rem;padding:1rem .75rem}.board-page-004 .board-grid-row{font-size:1.35rem}.board-page-004 .board-grid-header{letter-spacing:.04rem;font-size:1.02rem}.board-page-004 .flag-image{width:82px}.board-grid-row{font-size:clamp(.95rem,4vw,1.8rem)}.board-grid-header{font-size:clamp(.8rem,2.8vw,1.4rem)}.flag-image{width:clamp(40px,14vw,82px)}.datetime-cards{grid-template-columns:1fr}}@media (width<=560px){.board-page-004 .board-grid{grid-template-columns:minmax(50px,.6fr) minmax(0,1.1fr) minmax(0,.95fr) minmax(0,.95fr);gap:.45rem;padding:.85rem .55rem}.board-page-004 .board-grid-header{letter-spacing:.02rem;font-size:.82rem}.board-page-004 .board-grid-row{font-size:1.08rem}.board-page-004 .mono-cell{letter-spacing:.01rem}.board-page-004 .flag-image{width:54px}}.board-page-007,.board-page-008,.board-page-009,.board-page-010{background:#0a1f3d;border:1px solid #ffffff1f;box-shadow:inset 0 0 0 1px #00000040}.board-page-007 .datetime-cards .datetime-card:first-child,.board-page-007 .datetime-cards .datetime-card:nth-child(2),.board-page-007 .datetime-cards .datetime-card:nth-child(3),.board-page-007 .datetime-cards .datetime-card:nth-child(4){border-color:#ffffff2e}.board-page-007 .board-frame,.board-page-008 .board-frame,.board-page-009 .board-frame,.board-page-010 .board-frame{background:linear-gradient(#0c1a30 0%,#0a1f3d 100%)}.board-frame-007{box-sizing:border-box;width:100%;min-width:0;max-width:100%;padding:clamp(1rem,2vw,1.7rem) clamp(.75rem,3vw,2rem)}.board-page-009 .board-009-sweep-shell{flex-direction:column;gap:0;width:100%;min-width:0;display:flex}.board-page-009 .board-009-sweep-rail{background:linear-gradient(90deg,#ffffff0d 0%,#70d6ff26 50%,#ffffff0d 100%);border-radius:4px;width:100%;height:4px;margin-bottom:.45rem;position:relative;overflow:hidden;box-shadow:inset 0 1px #ffffff1f}.board-page-009 .board-009-sweep-rail--bottom{margin-top:.55rem;margin-bottom:0}.board-page-009 .board-009-sweep-beam{pointer-events:none;background:linear-gradient(90deg,#0000 0%,#70d6ff40 18%,#70d6fff2 42%,#f4c410 50%,#70d6fff2 58%,#70d6ff40 82%,#0000 100%);border-radius:4px;width:42%;height:140%;animation:3s ease-in-out infinite board009-sweep-ltr;position:absolute;top:50%;left:-42%;transform:translateY(-50%);box-shadow:0 0 8px #70d6ffa6,0 0 16px #f4c41066,0 0 4px #ffffff80}.board-page-009 .board-009-sweep-beam--delayed{animation-delay:-1.5s}@keyframes board009-sweep-ltr{0%{left:-42%}to{left:102%}}@media (prefers-reduced-motion:reduce){.board-page-009 .board-009-sweep-beam{opacity:.85;animation:none;left:29%}.board-page-009 .board-009-sweep-beam--delayed{opacity:.55;left:62%}}.board-007-title{text-align:center;letter-spacing:.04em;color:#fff;text-transform:uppercase;margin:0 0 1.25rem;font-family:Inter,Segoe UI,Roboto,Helvetica,Arial,sans-serif;font-size:clamp(1.65rem,4.2vw,2.35rem);font-weight:800}.board-007-table{flex-direction:column;gap:0;display:flex}.board-007-head-row{grid-template-columns:minmax(3.5rem,2.75fr) minmax(5.5rem,1.15fr) minmax(5.5rem,1.15fr);align-items:stretch;gap:clamp(.35rem,1.5vw,.75rem);width:100%;margin-bottom:.5rem;padding:0;display:grid}.board-007-head-spacer{min-height:2.5rem}.board-007-head-pill{color:#0a0a0a;letter-spacing:.06em;text-transform:uppercase;background:#f4c410;border-radius:2px;justify-content:center;align-items:center;padding:.45rem .35rem;font-family:Inter,Segoe UI,Roboto,Helvetica,Arial,sans-serif;font-size:clamp(.78rem,2.1vw,.95rem);font-weight:800;display:flex;box-shadow:0 1px #00000059}.board-007-rows{flex-direction:column;gap:.35rem;display:flex}.board-007-row{border-bottom:1px solid #ffffff14;grid-template-columns:minmax(3.5rem,2.75fr) minmax(5.5rem,1.15fr) minmax(5.5rem,1.15fr);align-items:center;gap:clamp(.35rem,1.5vw,.75rem);width:100%;padding:.4rem 0;display:grid}.board-007-row:last-child{border-bottom:none}.board-007-pair{align-items:center;gap:.65rem;min-width:0;display:flex}.board-007-flag{object-fit:cover;background:#00000040;border:1px solid #ffffff59;border-radius:2px;flex-shrink:0;width:52px;height:34px}.board-007-flag--placeholder{vertical-align:middle;display:inline-block}.board-007-code{color:#fff;letter-spacing:.02em;white-space:nowrap;text-overflow:ellipsis;font-family:Inter,Segoe UI,Roboto,Helvetica,Arial,sans-serif;font-size:clamp(1.05rem,2.8vw,1.35rem);font-weight:700;overflow:hidden}.board-007-rate{color:#f5d547;text-align:right;letter-spacing:.03em;font-family:Inter,Segoe UI,Roboto,Helvetica,Arial,sans-serif;font-size:clamp(1.35rem,3.8vw,1.95rem);font-weight:600;line-height:1.15}.board-007-status{color:#ffffffe0;text-align:center;padding:1rem .5rem}@media (width<=840px){.board-frame-007{padding:1.25rem 1rem}.board-007-head-row,.board-007-row{grid-template-columns:minmax(3rem,2.1fr) minmax(4.5rem,1fr) minmax(4.5rem,1fr)}}@media (width<=520px){.board-007-head-row,.board-007-row{grid-template-columns:minmax(2.75rem,1.85fr) minmax(3.75rem,1fr) minmax(3.75rem,1fr);gap:.45rem .5rem}.board-007-flag{width:44px;height:28px}.board-007-pair{gap:.45rem}}.board-page-010 .board-007-head-row{animation:.5s backwards board010-head-in}.board-page-010 .board-007-row{animation:.55s cubic-bezier(.22,1,.36,1) backwards board010-row-in;animation-delay:calc(var(--row-i,0) * 55ms)}@keyframes board010-head-in{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@keyframes board010-row-in{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.board-page-010 .board-007-head-row,.board-page-010 .board-007-row{animation:none}}
