*{box-sizing:border-box}html,body{height:100%;margin:0}body{overflow:hidden}.stage{padding:64px 16px 72px;display:flex;position:fixed;inset:0;overflow:auto}.card{border:1.5px solid var(--ink);background:var(--bg);border-radius:14px;flex:none;width:760px;height:460px;margin:auto;transition:border-color .5s;position:relative;overflow:hidden}.switch{z-index:10;position:fixed;top:16px;right:16px}.card canvas{width:100%;height:100%;display:block;position:absolute;inset:0}.shutter{z-index:3;background:var(--surface);text-align:center;border-bottom:1.5px solid var(--ink);will-change:transform;flex-direction:column;justify-content:center;align-items:center;padding:32px;transition:background-color .5s;display:flex;position:absolute;inset:0}.shutter:before{content:"";background:repeating-linear-gradient(to bottom, transparent 0 37px, var(--hair) 37px 38px);pointer-events:none;position:absolute;inset:0}.shutter:after{content:"";border:1.5px solid var(--ink);border-radius:4px;width:46px;height:6px;margin-left:-23px;position:absolute;bottom:10px;left:50%}.tag{letter-spacing:.12em;text-transform:uppercase;background:var(--orange);color:var(--on-flood);border-radius:6px;margin-bottom:20px;padding:6px 12px;font-family:ui-monospace,Menlo,monospace;font-size:13px;display:inline-block}h1{margin:0 0 12px;font-size:34px;line-height:1.2}.shutter p{color:var(--muted);margin:0;font-size:18px;line-height:1.5}.board{--fw:6px;z-index:2;color:#f3e7cc;background:#1c1813;border:1.5px solid #2a1d12;border-radius:8px;padding:6px 8px;font-family:JetBrains Mono,ui-monospace,Menlo,monospace;position:absolute;top:32px;left:12px;box-shadow:inset 0 0 0 3px #2a241c,0 6px 14px #0003}.brand{letter-spacing:.14em;text-transform:uppercase;white-space:nowrap;border-bottom:1px solid #3a3226;justify-content:space-between;align-items:center;gap:10px;margin-bottom:7px;padding-bottom:6px;font-size:7px;display:flex}.agency{color:#f2a23a;font-weight:700}.dep{color:#9b8f78;align-items:center;gap:6px;display:flex}.row{gap:2px;display:flex}.title{margin-bottom:8px}.title .flap{--fw:16px;color:#fff}.cols{letter-spacing:.1em;text-transform:uppercase;color:#9b8f78;gap:8px;margin-bottom:2px;font-size:7px;display:flex}.cols .c-flight{width:calc(5 * (var(--fw) + 2px) - 2px)}.cols .c-eta{width:calc(11 * (var(--fw) + 2px) - 2px)}.board{transition:box-shadow .5s,border-color .5s}.board:before,.board:after{content:"";pointer-events:none;opacity:0;transition:opacity .5s;position:absolute}.board:before{background:#2a241c;border:1.5px solid #2a1d12;border-radius:8px 8px 2px 2px;width:34px;height:7px;margin-left:-17px;top:-9px;left:50%;box-shadow:0 4px 0 -2px #ffd089}.board:after{mix-blend-mode:screen;background:radial-gradient(60% 75% at 50% 0,#ffc47838,#0000 70%);inset:-4px 8% 0}:root[data-theme=dark] .board:before,:root[data-theme=dark] .board:after{opacity:1}:root[data-theme=dark] .board{border-color:#6a5030;box-shadow:inset 0 0 0 3px #2a241c,0 0 18px 2px #ff9a3c47,0 0 60px 8px #ff9a3c1f}:root[data-theme=dark] .board .flap{text-shadow:0 0 5px #ffaa50bf}:root[data-theme=dark] .board .agency{text-shadow:0 0 6px #ffaa5099}.board.flicker{animation:.12s steps(2,end) infinite flicker}@keyframes flicker{50%{filter:brightness(2.2)saturate(.4);opacity:.55}}.board.dead{filter:brightness(.45)}.board.dead .agency,.board.dead .dep{opacity:.3}.brow{gap:8px;margin-top:3px;display:flex}.brow.first .flap{color:#f2a23a}.brow.dim .flap{color:#6f6553}.brow.boarding [data-status] .flap{animation:.9s step-end infinite blink}@keyframes blink{50%{color:#0000}}.flap{width:var(--fw);height:calc(var(--fw) * 1.42);font-size:calc(var(--fw) * .95);background:linear-gradient(#2b251d 50%,#241f18 50%);border-radius:2px;place-items:center;font-weight:700;line-height:1;transition:transform 60ms ease-in;display:inline-grid;position:relative}.flap:after{content:"";background:#0e0c09;height:1px;position:absolute;top:50%;left:0;right:0}.flap.fold{transform:rotateX(80deg)}[data-clock] .flap{--fw:8px;color:#f3e7cc}.foot{letter-spacing:.14em;text-transform:uppercase;color:#9b8f78;text-align:right;margin-top:6px;font-size:8px}.foot b{color:#f3e7cc}.bubble{z-index:4;background:var(--surface);max-width:220px;color:var(--ink);border:1.5px solid var(--ink);white-space:nowrap;opacity:0;transform-origin:0 100%;pointer-events:none;border-radius:12px;padding:8px 12px;font-size:16px;line-height:1.3;transition:opacity .15s,transform .15s;position:absolute;transform:translateY(4px)scale(.9)}.bubble:after{content:"";border:6px solid #0000;border-right-color:var(--ink);border-left:0;position:absolute;bottom:4px;left:-7px}.bubble.on{opacity:1;transform:none}.reset{z-index:10;background:var(--surface);border:1.5px solid var(--ink);color:var(--ink);font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;cursor:pointer;padding:9px 14px;font-size:11px;position:fixed;bottom:16px;right:16px}.reset[hidden]{display:none}.reset:hover{--lift:1.3}.reset:focus-visible,.ask button:focus-visible{outline:2px solid var(--orange);outline-offset:3px}.ask{background:var(--surface);max-width:340px;color:var(--ink);border:1.5px solid var(--ink);font-family:var(--sans);padding:22px 22px 18px}.ask::backdrop{background:#0e1b2973}.ask p{margin:0 0 18px;font-size:17px;line-height:1.4}.ask .row-btns{justify-content:flex-end;gap:10px;display:flex}.ask button{border:1.5px solid var(--ink);background:var(--surface);color:var(--ink);font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;cursor:pointer;padding:8px 14px;font-size:11px}.ask button.go{background:var(--orange);color:var(--on-flood)}
