:root{--bg:#0b0f14;--card:#151b23;--line:#293442;--text:#f4f7fa;--muted:#9ba7b5;--lime:#b7ff2a;--cyan:#38caff;--orange:#ffad42}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}.shell{max-width:680px;margin:auto;min-height:100vh;padding:18px 16px 94px}.hero{padding:10px 2px 18px}.eyebrow{font-size:12px;color:var(--lime);font-weight:800;letter-spacing:.11em}.hero h1{font-size:26px;margin:5px 0}.sub{color:var(--muted);font-size:14px}.card{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:16px;margin:12px 0;box-shadow:0 8px 30px #0004}.label{font-size:11px;font-weight:800;letter-spacing:.1em;color:var(--muted);text-transform:uppercase}.now{border-left:4px solid var(--lime)}.next{border-left:4px solid var(--cyan)}.past{opacity:.7}.big{font-size:22px;font-weight:800;margin:6px 0}.time{font-size:14px;color:var(--lime);font-weight:700}.meta{color:var(--muted);font-size:13px;margin-top:6px}.count{display:inline-block;margin-top:10px;background:#26311c;color:var(--lime);border-radius:99px;padding:6px 10px;font-weight:800;font-size:12px}.section-title{font-size:18px;margin:22px 2px 8px}.item{display:flex;gap:12px;align-items:center}.icon{width:42px;height:42px;border-radius:12px;background:#202a35;display:grid;place-items:center;font-size:22px;flex:none}.grow{flex:1}.route{font-size:18px;font-weight:800}.actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.action{color:white;text-decoration:none;background:#25303c;border:1px solid #344252;padding:9px 11px;border-radius:10px;font-size:13px;font-weight:700}.action.primary{background:var(--lime);color:#111;border-color:var(--lime)}.nav{position:fixed;left:50%;bottom:0;transform:translateX(-50%);width:min(680px,100%);display:grid;grid-template-columns:repeat(6,1fr);background:#111820f2;backdrop-filter:blur(16px);border-top:1px solid var(--line);padding:8px 4px calc(8px + env(safe-area-inset-bottom))}.nav button{border:0;background:none;color:#8d99a8;font-size:10px;padding:5px 0}.nav button b{display:block;font-size:20px;margin-bottom:2px}.nav button.active{color:var(--lime)}.hidden{display:none}.day{font-weight:800;color:var(--cyan);margin:18px 2px 7px}.schedule-line{display:grid;grid-template-columns:56px 1fr;gap:10px}.schedule-line .clock{color:var(--lime);font-weight:800}.badge{font-size:10px;text-transform:uppercase;color:#101318;background:var(--orange);border-radius:6px;padding:3px 6px;font-weight:900}.empty{text-align:center;color:var(--muted);padding:40px 10px}
.schedule-target{outline:2px solid #9cff00;box-shadow:0 0 0 4px rgba(156,255,0,.12)}
.map-card{display:block;position:relative;background:#0b1218;border:1px solid #344451;border-radius:18px;overflow:hidden;text-decoration:none;color:#fff;margin-bottom:18px}
.map-card img{display:block;width:100%;max-height:430px;object-fit:contain;background:#fff}
.map-card span{display:block;padding:12px 16px;font-weight:700;color:#9cff00}

.version-chip{display:inline-block;margin:0 0 10px;padding:5px 9px;border:1px solid #9cff00;border-radius:999px;color:#9cff00;font-size:12px;font-weight:700}.app-version{text-align:center;color:#6f7d88;font-size:11px;padding:24px 0 100px}.past-events{margin:16px 0 110px}.past-events summary{cursor:pointer;color:#9eb0be;padding:12px 4px}.past-line{opacity:.62}.map-card.image-error{display:block;padding:20px;background:#17212a;color:#ffbd59}.map-card.image-error:after{content:'Map image could not be loaded. Publish the event again after selecting the image.'}
