html,body{color:#111;background:#f3e6c4;margin:0;font-family:Comic Neue,cursive;font-weight:700;line-height:1.35}*{box-sizing:border-box}a{color:#d62b1f}a:hover{color:#8d130c}input::placeholder{color:#777;font-style:italic}figure{margin:0}button{font-family:inherit}.cx-shell{grid-template-rows:auto minmax(0,1fr);grid-template-columns:minmax(0,1fr) 420px;gap:0 18px;height:100dvh;padding:0 18px 18px;display:grid}.cx-map{background:#e9dcb5;border:4px solid #111;min-height:0;position:relative;box-shadow:7px 7px #111}.cx-panel{scrollbar-width:thin;flex-direction:column;gap:14px;min-height:0;padding:4px 8px 8px 0;display:flex;overflow:auto}@media (width<=900px){.cx-shell{grid-template-rows:auto auto auto;grid-template-columns:minmax(0,1fr);gap:16px 0;height:auto;min-height:100dvh;padding:0 12px 16px}.cx-map{height:56dvh}.cx-panel{overflow:visible}.alert .alert-burst{width:80px;height:80px;top:-12px;right:0}}.cx-map .leaflet-container{background:#e9dcb5;font-family:Comic Neue,cursive}.cx-map .leaflet-container.cx-pick{cursor:crosshair}.cx-map .leaflet-control-attribution{color:#111;text-transform:uppercase;letter-spacing:.03em;background:#fff;border:0;border-top:3px solid #111;border-left:3px solid #111;padding:2px 8px;font:700 10px Comic Neue,cursive}.cx-map .leaflet-bar{border:3px solid #111;border-radius:0;margin:0 14px 46px 0;box-shadow:4px 4px #111}.cx-map .leaflet-bar a{color:#111;background:#fff;border-bottom:3px solid #111;width:40px;height:40px;font-family:Bangers,cursive;font-size:26px;line-height:40px}.cx-map .leaflet-bar a:last-child{border-bottom:0}.cx-map .leaflet-bar a:hover{background:#ffd400}.cx-tiles-poster img{filter:brightness(1.35)saturate(2)contrast(1.45)}.cx-tiles-ink{mix-blend-mode:multiply}.cx-tiles-ink img{filter:grayscale()contrast(2.4)brightness(1.06)}.cx-tiles-streets img{filter:saturate(1.5)contrast(1.2)}.cx-tiles-labels{filter:contrast(1.4)drop-shadow(0 0 1px #fff)}.cx-plane{cursor:pointer;transition:transform 1s linear}.cx-g{transition:rotate 1s linear}@keyframes cx-spin{to{rotate:360deg}}@keyframes cx-pop{0%{opacity:0;scale:.6}70%{opacity:1;scale:1.06}to{scale:1}}@keyframes cx-blink{0%,to{opacity:1}50%{opacity:.2}}@keyframes cx-shake{0%,to{rotate:-2deg}50%{rotate:-3.5deg}}.cx-pop{animation:.35s cubic-bezier(.2,1.4,.4,1) both cx-pop}.cx-alert{animation:.4s cubic-bezier(.2,1.4,.4,1) both cx-pop,1.2s ease-in-out .4s infinite cx-shake}.cover{background:radial-gradient(circle,#d62b1f21 28%,#0000 32%) 0 0/11px 11px;flex-wrap:wrap;grid-column:1/-1;align-items:flex-end;gap:12px 24px;padding:14px 0;display:flex}.cover-left{flex-direction:column;flex:0 auto;gap:8px;min-width:0;display:flex}.cover-title{letter-spacing:.02em;color:#ffd400;-webkit-text-stroke:3px #111;paint-order:stroke fill;text-shadow:4px 4px #d62b1f,7px 7px #111;transform-origin:0 100%;white-space:nowrap;margin:0;padding:8px 10px 4px 4px;font-family:Bangers,cursive;font-size:clamp(48px,6vw,84px);font-weight:400;line-height:.85;transform:rotate(-2deg)}.cover-meta{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.issue{color:#ffd400;letter-spacing:.06em;white-space:nowrap;background:#111;padding:4px 10px;font-family:Bangers,cursive;font-size:17px;line-height:1}.clock{letter-spacing:.06em;font-variant-numeric:tabular-nums;white-space:nowrap;background:#fff;border:3px solid #111;padding:2px 10px;font-family:Bangers,cursive;font-size:17px;line-height:1.2}.status{text-transform:uppercase;letter-spacing:.04em;white-space:nowrap;align-items:center;gap:6px;font-size:12px;display:inline-flex}.status-dot{border:2px solid #111;border-radius:50%;width:10px;height:10px;animation:1.6s ease-in-out infinite cx-blink}.location-notice{color:#a42016;margin:6px 0;font-size:12px;font-weight:700}.cover-right{flex-wrap:nowrap;flex:340px;justify-content:flex-end;align-items:center;gap:16px;min-width:0;display:flex}.loc{flex:240px;min-width:0;max-width:520px;position:relative}.loc-banner{color:#fff;letter-spacing:.08em;z-index:1;white-space:nowrap;background:#d62b1f;border:3px solid #111;padding:3px 10px;font-family:Bangers,cursive;font-size:16px;line-height:1;position:absolute;top:-14px;left:-8px;transform:rotate(-3deg)}.loc-card{background:#fff;border:4px solid #111;padding:14px 14px 10px;box-shadow:5px 5px #111}.loc-name{letter-spacing:.03em;text-overflow:ellipsis;white-space:nowrap;font-family:Bangers,cursive;font-size:clamp(24px,2.6vw,34px);line-height:1;overflow:hidden}.loc-meta{text-transform:uppercase;letter-spacing:.04em;color:#444;flex-wrap:wrap;align-items:center;gap:8px;margin-top:8px;font-size:12px;display:flex}.loc-coord{overflow-wrap:anywhere}.loc-actions{flex-wrap:wrap;gap:6px;margin-left:auto;display:flex}.chip{text-transform:uppercase;letter-spacing:.05em;color:#111;cursor:pointer;border:2px solid #111;padding:3px 8px;font:700 11px Comic Neue,cursive;box-shadow:2px 2px #111}.chip:active{translate:1px 1px;box-shadow:1px 1px #111}.chip-yellow{background:#ffd400}.chip-yellow:hover,.chip-white{background:#fff}.chip-white:hover{background:#ffd400}.chip-red{color:#fff;background:#d62b1f}.chip-red:hover{background:#8d130c}.search{flex-wrap:wrap;align-items:center;gap:8px;margin-top:10px;display:flex}.search-input{color:#111;background:#fffbe6;border:3px solid #111;outline:none;flex:180px;min-width:0;padding:6px 10px;font:700 14px Comic Neue,cursive}.search-input:focus{background:#fff;box-shadow:3px 3px #ffd400}.search-go{letter-spacing:.05em;color:#ffd400;cursor:pointer;background:#111;border:3px solid #111;padding:4px 12px;font-family:Bangers,cursive;font-size:18px}.search-go:hover{color:#fff;background:#d62b1f}.search-note{text-transform:uppercase;color:#d62b1f;flex-basis:100%;font-size:11px}.count{text-align:center;background:#ffd400;border:4px solid #111;border-radius:50%;flex:none;place-content:center;width:96px;height:96px;display:grid;transform:rotate(6deg);box-shadow:4px 4px #111}.count-num{letter-spacing:.02em;font-family:Bangers,cursive;font-size:44px;line-height:.85}.count-word{text-transform:uppercase;letter-spacing:.08em;margin-top:3px;font-size:11px;line-height:1.1}.map-canvas{position:absolute;inset:0}.map-caption{z-index:460;text-transform:uppercase;letter-spacing:.06em;pointer-events:none;background:#fff;border:4px solid #111;border-top:0;border-left:0;padding:5px 14px 5px 12px;font-size:13px;position:absolute;top:-4px;left:-4px;box-shadow:4px 4px #111}.legend{z-index:460;text-transform:uppercase;letter-spacing:.05em;pointer-events:none;background:#fff;border:3px solid #111;grid-template-columns:auto auto;align-items:center;gap:5px 10px;padding:8px 12px;font-size:11px;display:grid;position:absolute;bottom:14px;left:14px;box-shadow:4px 4px #111}.legend-glyph{width:18px;height:18px;display:block}.legend-ring{border:2px dashed #111;border-radius:50%;width:18px;height:18px;display:block}.pick-banner{z-index:470;letter-spacing:.04em;white-space:nowrap;pointer-events:none;background:#ffd400;border:3px solid #111;padding:8px 14px;font-family:Bangers,cursive;font-size:22px;position:absolute;top:14px;left:50%;translate:-50%;box-shadow:4px 4px #111}.locating{z-index:460;pointer-events:none;letter-spacing:.04em;white-space:nowrap;background:#fff;border:3px solid #111;padding:10px 18px;font-family:Bangers,cursive;font-size:26px;position:absolute;top:44%;left:50%;transform:rotate(-3deg);box-shadow:4px 4px #111}.alert{z-index:470;transform-origin:100% 0;width:min(300px,100% - 28px);position:absolute;top:16px;right:14px}.alert-burst{background:repeating-conic-gradient(#d62b1f 0 9deg,transparent 9deg 18deg);pointer-events:none;filter:drop-shadow(2px 2px #111);border-radius:50%;width:110px;height:110px;animation:6s linear infinite cx-spin;position:absolute;top:-26px;right:-22px}.alert-box{background:#ffd400;border:4px solid #111;padding:10px 12px;position:relative;box-shadow:6px 6px #111}.alert-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:10px;display:flex}.alert-title{letter-spacing:.03em;color:#d62b1f;-webkit-text-stroke:1.5px #111;paint-order:stroke fill;text-shadow:3px 3px #111;white-space:nowrap;font-family:Bangers,cursive;font-size:36px;line-height:.9}.alert-count{letter-spacing:.03em;font-variant-numeric:tabular-nums;white-space:nowrap;background:#fff;border:3px solid #111;padding:2px 8px;font-family:Bangers,cursive;font-size:30px;line-height:1}.alert-body{margin-top:8px;font-size:13px;line-height:1.3}.alert-actions{flex-wrap:wrap;gap:8px;margin-top:10px;display:flex}.alert-who{text-transform:uppercase;letter-spacing:.04em;color:#111;cursor:pointer;background:#fff;border:3px solid #111;padding:5px 10px;font:700 13px Comic Neue,cursive;box-shadow:3px 3px #111}.alert-who:hover{color:#fff;background:#d62b1f}.alert-who:active{translate:2px 2px;box-shadow:1px 1px #111}.alert-dismiss{text-transform:uppercase;letter-spacing:.04em;color:#111;cursor:pointer;background:0 0;border:3px solid #111;padding:5px 10px;font:700 13px Comic Neue,cursive}.alert-dismiss:hover{background:#fff}.alert-dismiss:active{translate:2px 2px}.caption{text-transform:uppercase;letter-spacing:.04em;background:#ffd400;border:3px solid #111;padding:8px 12px;font-size:14px;line-height:1.3;box-shadow:4px 4px #111}.empty{background:#fff;border:3px solid #111;padding:16px;font-size:16px;font-style:italic;box-shadow:4px 4px #111}.flight-groups{flex-direction:column;gap:24px;display:flex}.flight-group{min-width:0}.flight-group-heading{border-bottom:3px solid #111;align-items:center;gap:10px;margin-bottom:10px;padding:0 2px 8px;display:flex}.flight-group-arrow{color:#fff;background:#1f6fd6;border:2px solid #111;flex:none;place-items:center;width:34px;height:34px;font:700 26px/1 sans-serif;display:grid;box-shadow:2px 2px #111}.flight-group[data-direction=outgoing] .flight-group-arrow{color:#111;background:#ffd400}.flight-group[data-direction=other] .flight-group-arrow{color:#111;background:#fff}.flight-group-label{flex:1;min-width:0}.flight-group-label h2{letter-spacing:.04em;margin:0;font:400 25px/1 Bangers,cursive}.flight-group-label p{color:#444;margin:3px 0 0;font-size:11px;line-height:1.2}.flight-group-count{font-variant-numeric:tabular-nums;background:#fff;border:2px solid #111;border-radius:50%;flex:none;place-items:center;min-width:30px;height:30px;padding:0 6px;font:400 20px/1 Bangers,cursive;display:grid}.flight-group-empty{color:#555;background:#fff8d7;border:2px dashed #a69a7e;margin:0;padding:10px 12px;font-size:13px;font-style:italic}.rows{flex-direction:column;gap:10px;display:flex}.row{cursor:pointer;background:#fff;border:3px solid #111;grid-template-columns:46px minmax(0,1fr) auto;align-items:center;gap:2px 12px;min-height:60px;padding:8px 12px;transition:translate .1s,box-shadow .1s;display:grid;box-shadow:3px 3px #111}.row:hover{background:#fffbe6;translate:-2px -2px;box-shadow:5px 5px #111}.row:active{translate:2px 2px;box-shadow:1px 1px #111}.row-glyph{background:#fff;border:3px solid #111;border-radius:50%;grid-row:1/span 2;place-items:center;width:46px;height:46px;display:grid}.row-callsign{letter-spacing:.04em;white-space:nowrap;align-items:center;gap:8px;font-family:Bangers,cursive;font-size:24px;line-height:1;display:flex;overflow:hidden}.row-lookup{letter-spacing:.06em;color:#fff;background:#d62b1f;border:2px solid #111;padding:1px 6px;font:700 10px Comic Neue,cursive;transform:rotate(-4deg)}.row-alt{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums;justify-content:flex-end;align-items:center;gap:6px;font-size:15px;display:flex}.row-hdg{border-bottom:10px solid #111;border-left:5px solid #0000;border-right:5px solid #0000;width:0;height:0;display:inline-block}.row-sub{text-transform:uppercase;letter-spacing:.03em;color:#444;text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.row-dist{text-align:right;text-transform:uppercase;white-space:nowrap;color:#d62b1f;font-size:12px}.foot{text-transform:uppercase;letter-spacing:.03em;color:#555;margin:6px 0 0;font-size:12px}.detail{flex-direction:column;gap:14px;display:flex}.back{text-transform:uppercase;letter-spacing:.04em;color:#111;cursor:pointer;background:#fff;border:3px solid #111;align-self:flex-start;padding:6px 12px;font:700 14px Comic Neue,cursive;box-shadow:3px 3px #111}.back:hover{background:#ffd400}.back:active{translate:2px 2px;box-shadow:1px 1px #111}.bubble{background:#fff;border:3px solid #111;border-radius:26px;margin-bottom:8px;padding:16px 20px;position:relative;box-shadow:4px 4px #111}.bubble-tail{background:#fff;border:3px solid #111;border-top:0;border-left:0;width:28px;height:28px;position:absolute;bottom:-17px;left:38px;transform:skew(35deg)rotate(45deg)}.bubble-head{align-items:center;gap:12px;display:flex}.bubble-glyph{background:#ffd400;border:3px solid #111;border-radius:50%;flex:none;place-items:center;width:54px;height:54px;display:grid}.bubble-id{min-width:0}.bubble-callsign{letter-spacing:.04em;color:#111;font-family:Bangers,cursive;font-size:40px;line-height:.9}.bubble-kicker{text-transform:uppercase;letter-spacing:.05em;color:#d62b1f;margin-top:4px;font-size:12px}.bubble-speech{margin-top:10px;font-size:17px;line-height:1.3}.route{background:#fff;border:3px solid #111;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:10px;padding:12px 14px;display:grid;box-shadow:4px 4px #111}.route-to{text-align:right}.route-code{letter-spacing:.04em;font-family:Bangers,cursive;font-size:42px;line-height:1}.route-name{text-transform:uppercase;color:#444;font-size:12px;line-height:1.25}.route-arrow{color:#d62b1f;font-family:Bangers,cursive;font-size:34px;line-height:1}.listen{background:#fff;border:3px solid #111;padding:12px 14px;box-shadow:4px 4px #111}.listen-label{text-transform:uppercase;letter-spacing:.06em;color:#d62b1f;font-size:11px}.listen-note{margin-top:4px;font-size:13px;line-height:1.3}.listen-links{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}a.chip{text-decoration:none;display:inline-block}.listen-credit{text-transform:uppercase;letter-spacing:.04em;color:#555;margin-top:8px;font-size:10px}.route-note{background:#fff;border:3px solid #111;padding:10px 14px;font-size:14px;font-style:italic;box-shadow:4px 4px #111}.photo{background:#fff;border:3px solid #111;position:relative;overflow:hidden;box-shadow:4px 4px #111}.photo-img{aspect-ratio:3/2;object-fit:cover;filter:saturate(1.6)contrast(1.2);width:100%;display:block}.photo-dots{pointer-events:none;mix-blend-mode:multiply;background-image:radial-gradient(circle,#00000038 26%,#0000 30%);background-size:5px 5px;position:absolute;inset:0}.photo-cap{text-transform:uppercase;letter-spacing:.04em;background:#fff;border-top:3px solid #111;border-bottom:0;border-left:0;border-right:3px solid #111;padding:3px 10px;font-size:11px;position:absolute;bottom:-3px;left:-3px}.photo-none{aspect-ratio:3/2;text-align:center;color:#444;background:repeating-linear-gradient(135deg,#fff 0 8px,#f3e6c4 8px 16px);border:3px solid #111;place-items:center;padding:16px;font-family:ui-monospace,Menlo,monospace;font-size:12px;font-weight:400;display:grid;box-shadow:4px 4px #111}.look{background:#fff;border:3px solid #111;grid-template-columns:132px minmax(0,1fr);align-items:center;gap:14px;padding:12px 14px;display:grid;box-shadow:4px 4px #111}.compass{background:radial-gradient(circle,#ffd400 0 30%,transparent 31%),repeating-conic-gradient(from -1deg,#111 0 2deg,transparent 2deg 45deg);border:3px solid #111;border-radius:50%;flex:none;width:132px;height:132px;position:relative}.compass-inner{background:#fff;border:2px solid #111;border-radius:50%;position:absolute;inset:8px}.compass-pt{font-family:Bangers,cursive;font-size:16px;line-height:1;position:absolute}.compass-n{top:10px;left:50%;translate:-50%}.compass-e{top:50%;right:12px;translate:0 -50%}.compass-s{bottom:10px;left:50%;translate:-50%}.compass-w{top:50%;left:12px;translate:0 -50%}.compass-arrow{width:8px;height:96px;transition:rotate .8s;position:absolute;top:50%;left:50%;translate:-50% -50%}.compass-head{filter:drop-shadow(0 0 1.5px #111);border-bottom:22px solid #d62b1f;border-left:9px solid #0000;border-right:9px solid #0000;width:0;height:0;position:absolute;top:0;left:50%;translate:-50%}.compass-shaft{background:#d62b1f;border:1.5px solid #111;width:5px;height:28px;position:absolute;top:20px;left:50%;translate:-50%}.compass-dot{background:#111;border-radius:50%;width:12px;height:12px;position:absolute;top:50%;left:50%;translate:-50% -50%}.look-text{min-width:0}.look-label{text-transform:uppercase;letter-spacing:.06em;color:#d62b1f;font-size:11px}.look-dir{letter-spacing:.03em;margin-top:2px;font-family:Bangers,cursive;font-size:34px;line-height:.95}.look-note{margin-top:6px;font-size:13px;line-height:1.3}.stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.stat{background:#fff;border:3px solid #111;padding:8px 10px}.stat-label{text-transform:uppercase;letter-spacing:.06em;color:#d62b1f;font-size:11px}.stat-value{letter-spacing:.03em;margin-top:2px;font-family:Bangers,cursive;font-size:26px;line-height:1}.stat-sub{text-transform:uppercase;color:#555;margin-top:3px;font-size:11px}.detail .foot{margin:4px 0 0}.route-status{margin-top:5px;font-style:normal;font-weight:700}.route-times .stats{grid-template-columns:repeat(2,minmax(0,1fr))}html[data-motion=paused] *,html[data-motion=paused] :before,html[data-motion=paused] :after{scroll-behavior:auto!important;transition:none!important;animation:none!important}@media (prefers-reduced-motion:reduce){html:not([data-motion=running]) *,html:not([data-motion=running]) :before,html:not([data-motion=running]) :after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
