:root{--y:#FFC72C;--ink:#111;--bg:#1c1c1e;--bg2:#141414;--txt:#ece6d3;--mut:#cfc8b4;--line:#3a3a3c}
[hidden]{display:none!important}
*{box-sizing:border-box}
html,body{height:100%}
body{margin:0;font-family:system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue","DejaVu Sans",Arial,sans-serif;font-size:15px;color:var(--txt);background:var(--bg);display:flex;flex-direction:column;min-height:100vh;padding-bottom:calc(64px + env(safe-area-inset-bottom))}
.sr{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.board{font-family:"JetBrains Mono","DejaVu Sans Mono",Menlo,Consolas,monospace;text-transform:uppercase;letter-spacing:2px;color:var(--y)}
header{display:flex;align-items:center;gap:12px;padding:calc(8px + env(safe-area-inset-top)) calc(14px + env(safe-area-inset-right)) 8px calc(14px + env(safe-area-inset-left));background:var(--ink);border-bottom:2px solid var(--y);flex-wrap:nowrap;min-height:58px}
.brand{flex:none;display:flex}.brand img{display:block}.logo-wide{height:44px}.logo-icon{height:36px;width:36px;border-radius:8px;display:none!important}
form#f{display:flex;gap:6px;align-items:center;min-width:0}
#fn{font-family:"JetBrains Mono","DejaVu Sans Mono",Menlo,Consolas,monospace;font-size:18px;padding:8px 10px;border:1px solid var(--y);border-radius:4px;width:9em;min-width:0;text-transform:uppercase;background:#000;color:var(--y);letter-spacing:2px}
#fn::placeholder{color:#8a7a45;letter-spacing:1px}
button{font:inherit;cursor:pointer}
#go{font-family:"JetBrains Mono","DejaVu Sans Mono",Menlo,Consolas,monospace;font-size:15px;padding:9px 12px;min-height:44px;border:0;border-radius:4px;background:var(--y);color:var(--ink);font-weight:800;text-transform:uppercase}
.chip{background:#000;border:1px solid var(--y);border-radius:4px;padding:6px 10px;font-size:20px;font-weight:800;display:flex;gap:8px;align-items:center;min-height:44px}
.chip .pen{font-size:14px;opacity:.7}
.hero{margin-left:auto;display:flex;flex-direction:column;align-items:flex-end;min-width:0}
.heroLabel{font-size:11px;letter-spacing:3px;text-transform:uppercase;color:var(--mut)}
.heroFig{display:flex;gap:3px;font-size:30px;font-weight:800;line-height:1}
.flap{display:inline-block;min-width:.72em;text-align:center;background:linear-gradient(#232323 0 49%,#000 49% 51%,#1a1a1a 51%);border-radius:3px;padding:3px 2px;box-shadow:inset 0 0 0 1px #333}
.flap.sp{background:none;box-shadow:none;min-width:.3em}
.flap.flip{animation:flip .35s ease-out}
@keyframes flip{0%{transform:rotateX(90deg)}100%{transform:rotateX(0)}}
.prog{display:flex;align-items:center;gap:10px;padding:5px 14px;background:#0b0b0b;border-bottom:1px solid var(--line);font-size:12px}
.prog .bar{flex:1;height:4px;background:#333;border-radius:2px;position:relative;overflow:hidden}
#pFill{position:absolute;left:0;top:0;bottom:0;width:0;background:var(--y);transition:width 1s linear}
#below{flex:none;padding:6px 0 8px;background:var(--bg2);border-bottom:2px solid var(--line)}
.belowHead{display:flex;align-items:baseline;gap:10px;padding:0 14px 6px;flex-wrap:wrap}
h2{font-family:"JetBrains Mono","DejaVu Sans Mono",Menlo,Consolas,monospace;font-size:13px;margin:0;text-transform:uppercase;letter-spacing:3px;background:#000;color:var(--y);padding:4px 8px;border-radius:3px}
.count{font-size:13px}
.where{color:var(--txt);font-size:13px;min-width:0}
.cards{display:flex;gap:10px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding:0 14px;padding:4px calc(14px + env(safe-area-inset-right)) 6px calc(14px + env(safe-area-inset-left));-webkit-overflow-scrolling:touch}
.cards>p{margin:4px 0;flex:none}
.fact{flex:0 0 min(82vw,340px);scroll-snap-align:start;display:flex;gap:10px;text-align:left;background:var(--bg);border:1px dashed #555;border-radius:6px;padding:8px;color:var(--txt);min-height:44px;align-items:flex-start}
.fact:hover,.fact:focus-visible{border-color:var(--y);outline:2px solid var(--y);outline-offset:1px}
.fact img{width:64px;height:64px;object-fit:cover;border-radius:4px;flex:none}
.fbody{display:flex;flex-direction:column;gap:3px;min-width:0}
.ftitle{color:var(--y);font-weight:700;font-size:15px}
.fext{font-size:14px;line-height:1.35;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.fmeta{font-size:13px;color:var(--mut)}
main{flex:1;display:flex;min-height:420px}
#map{flex:2;min-height:300px;background:#222}
aside{flex:1;max-width:430px;overflow:auto;padding:10px 14px;background:var(--bg);border-left:2px solid var(--line)}
.status{font-size:15px;margin:8px 0;color:var(--txt)}
.status .err{color:#ff8a65}
.stats{display:grid;grid-template-columns:auto 1fr;gap:4px 12px;font-size:14px;margin-bottom:8px}
.stats b{color:var(--y);text-transform:uppercase;font-size:13px;letter-spacing:.5px;padding-top:1px;font-weight:700}
.muted{color:var(--mut);font-size:13px}
.sources summary{cursor:pointer;color:var(--y);font-size:13px;min-height:32px}
.sources p{font-size:13px;color:var(--mut);line-height:1.5}
.bottombar{position:fixed;left:0;right:0;bottom:0;z-index:1500;display:flex;align-items:center;gap:12px;padding:8px calc(14px + env(safe-area-inset-right)) calc(8px + env(safe-area-inset-bottom)) calc(14px + env(safe-area-inset-left));background:rgba(10,10,10,.96);border-top:2px solid var(--y)}
.upd{font-family:"JetBrains Mono","DejaVu Sans Mono",Menlo,Consolas,monospace;font-size:15px;font-weight:800;background:var(--y);color:var(--ink);border:0;border-radius:4px;padding:10px 16px;min-height:44px}
.upd:disabled{background:#3a3a3c;color:var(--y);cursor:not-allowed}
.frage{font-size:13px;color:var(--mut)}
.fact:focus-visible,button:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible{outline:3px solid #fff;outline-offset:2px}
#sheet{position:fixed;inset:0;background:rgba(0,0,0,.7);z-index:2000;display:flex;align-items:center;justify-content:center;padding:16px}
#sheet[hidden]{display:none}
.sheetCard{background:var(--bg);border:2px solid var(--y);border-radius:8px;max-width:640px;width:100%;max-height:88vh;overflow:auto;padding:10px 16px 18px;position:relative;color:var(--txt);font-family:system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;touch-action:pan-y}
.grab{width:44px;height:5px;border-radius:3px;background:#555;margin:0 auto 6px;display:none}
.sheetCard h3{color:var(--y);margin:8px 0 4px;font-size:21px}
.sheetCard .big{width:100%;max-height:45vh;object-fit:cover;border-radius:6px;display:block}
.sheetCard .desc{margin:0 0 4px;font-style:italic}.sheetCard .ext{line-height:1.55;font-size:16px}
#sheetClose{position:sticky;top:0;float:right;background:var(--y);color:var(--ink);border:0;border-radius:6px;font-weight:800;min-width:44px;min-height:44px;padding:8px 14px;z-index:1}
.wlink{font-family:system-ui,sans-serif!important;display:inline-flex;align-items:center;min-height:44px;margin-top:6px;background:var(--y);color:var(--ink);font-weight:800;padding:8px 14px;border-radius:4px;text-decoration:none;font-family:"DejaVu Sans Mono",monospace}
@media(max-width:800px){
 header{gap:8px;padding:6px 10px}
 .logo-wide{display:none!important}.logo-icon{display:block!important}
 #fn{width:7.5em;font-size:17px}
 .chip{font-size:18px;padding:6px 8px}
 .heroFig{font-size:24px}.heroLabel{font-size:10px;letter-spacing:2px}
 header.editing .hero{display:none}
 main{flex-direction:column}aside{max-width:none;border-left:0;border-top:2px solid var(--line)}#map{min-height:50vh}
 #sheet{align-items:flex-end;padding:0}.sheetCard{max-height:92vh;border-radius:14px 14px 0 0;border-bottom:0;padding-bottom:calc(18px + env(safe-area-inset-bottom))}.grab{display:block}
}
.where{font-size:14px}
.sources summary{font-family:"JetBrains Mono","DejaVu Sans Mono",monospace}
@media (prefers-reduced-motion: reduce){
 *,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}
 .flap.flip{animation:none!important}
}

.badge{background:#3a1d00;border:1px solid #ff9f43;color:#ffb366;border-radius:4px;padding:2px 6px;font-size:11px;letter-spacing:1px;white-space:nowrap}
.seg{display:inline-flex;border:1px solid var(--y);border-radius:6px;overflow:hidden;background:#000}
.seg button{font-family:"JetBrains Mono","DejaVu Sans Mono",Menlo,monospace;font-size:13px;font-weight:700;color:var(--y);background:none;border:0;padding:6px 10px;min-height:36px;min-width:44px;letter-spacing:1px}
.seg button+button{border-left:1px solid #5a4a1a}
.seg button[aria-pressed="true"],.seg button[aria-selected="true"]{background:var(--y);color:var(--ink)}
.seat{margin-left:auto}
.views{display:none}
.coming{list-style:none;margin:8px 0 14px;padding:0;display:flex;flex-direction:column;gap:4px}
.cu{width:100%;display:grid;grid-template-columns:4.6em 1fr auto;gap:10px;align-items:center;background:#000;border:0;border-bottom:1px solid #2a2a2a;color:var(--txt);text-align:left;padding:8px 8px;min-height:44px;border-radius:3px}
.cu:hover{background:#151515}
.cuEta{font-weight:800;font-size:15px;background:linear-gradient(#232323 0 49%,#000 49% 51%,#1a1a1a 51%);border-radius:3px;padding:3px 4px;text-align:center}
.cuName{font-size:15px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.cuSide{font-size:12px;letter-spacing:1px;color:var(--mut)}
@media(max-width:800px){
 body.has-flight .views{display:flex;margin:6px 10px;border-radius:8px}
 .views button{flex:1;min-height:44px;font-size:15px}
 body.view-map #below,body.view-map aside{display:none}
 body.view-facts #map{display:none}
 body.view-facts main{min-height:0}
 .seat{margin-left:0}
 .belowHead{gap:8px}
}
