@font-face{font-family:Bebas Neue;font-style:normal;font-weight:400;font-display:swap;src:url(./bebas-neue-latin-9mHNbWWO.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Bebas Neue;font-style:normal;font-weight:400;font-display:swap;src:url(./bebas-neue-latin-ext-DWiEslNC.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}:root{--header-height:56px;--rail-width:44px;--column-header-height:30px;--bg:#000;--fg:#fff;--muted:#ffffff80;--gridline:#ffffff14;--column-gap:4px;--act-radius:6px;--display-font:"Bebas Neue", "Oswald", -apple-system, BlinkMacSystemFont, sans-serif;--body-font:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, system-ui, sans-serif}*{box-sizing:border-box}html,body{background:var(--bg);color:var(--fg);font-family:var(--body-font);overscroll-behavior:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;padding:0}body{height:100dvh;overflow:hidden}#app{flex-direction:column;height:100dvh;display:flex}.app-header{z-index:10;padding:env(safe-area-inset-top) 16px 0;height:calc(var(--header-height) + env(safe-area-inset-top));background:var(--bg);border-bottom:1px solid var(--gridline);flex-shrink:0;justify-content:space-between;align-items:center;display:flex;position:sticky;top:0}.app-day-label{font-family:var(--display-font);letter-spacing:.04em;text-transform:uppercase;color:var(--fg);margin:0;font-size:1.4rem;font-weight:400}.app-settings-button{color:var(--fg);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;margin:0;padding:8px;display:flex}.app-settings-button:active{opacity:.6}.app-settings-button svg{pointer-events:none}.schedule{scrollbar-width:none;flex:1;padding:0 6px 24px;position:relative;overflow:hidden auto}.schedule::-webkit-scrollbar{display:none}.stage-row{z-index:3;margin-left:var(--rail-width);height:var(--column-header-height);grid-template-columns:repeat(var(--column-count,4), 1fr);gap:var(--column-gap);background:var(--bg);display:grid;position:sticky;top:0}.stage-label{font-family:var(--body-font);text-transform:uppercase;letter-spacing:.1em;color:var(--stage-color,var(--fg));justify-content:center;align-items:center;font-size:.7rem;font-weight:800;display:flex}.rail{top:var(--column-header-height);width:var(--rail-width);pointer-events:none;z-index:1;position:absolute;left:6px}.tick{width:var(--rail-width);font-family:var(--body-font);color:var(--muted);font-variant-numeric:tabular-nums;text-align:right;padding-right:8px;font-size:.7rem;font-weight:600;position:absolute;left:0;transform:translateY(-50%)}.tick:after{content:"";left:var(--rail-width);border-top:1px solid var(--gridline);width:100vw;height:0;position:absolute;top:50%;right:-8px}.days{margin-left:var(--rail-width);scroll-snap-type:x mandatory;scrollbar-width:none;display:flex;position:relative;overflow:auto hidden}.days::-webkit-scrollbar{display:none}.day{scroll-snap-align:start;scroll-snap-stop:always;flex:0 0 100%;width:100%}.columns{grid-template-columns:repeat(var(--column-count,4), 1fr);gap:var(--column-gap);display:grid;position:relative}.column{position:relative}.act{background:var(--stage-color);border-radius:var(--act-radius);color:var(--stage-text-color,#fff);flex-direction:column;padding:4px 6px;display:flex;position:absolute;left:0;right:0;overflow:hidden}.act-start,.act-end{font-family:var(--body-font);color:var(--stage-text-color,#fff);opacity:.85;font-variant-numeric:tabular-nums;font-size:.7rem;font-weight:700;line-height:1}.act-start{align-self:flex-start}.act-end{align-self:flex-end;margin-top:auto}.act-name{text-align:center;font-family:var(--display-font);letter-spacing:.02em;overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto;flex:1;justify-content:center;align-items:center;padding:2px 0;font-size:1.15rem;font-weight:400;line-height:1;display:flex}.now-line{pointer-events:none;z-index:5;height:2px;transform:translateY(var(--column-header-height));background:#e21836;position:absolute;left:6px;right:6px}.now-pill{color:#fff;height:18px;font-family:var(--display-font);letter-spacing:.08em;pointer-events:none;z-index:6;transform:translate(0, calc(var(--column-header-height) - 50%));background:#e21836;border-radius:3px;justify-content:center;align-items:center;padding:0 8px;font-size:.75rem;display:flex;position:absolute;left:6px}.settings-overlay{z-index:100;opacity:0;pointer-events:none;justify-content:center;align-items:flex-end;transition:opacity .15s ease-out;display:flex;position:fixed;inset:0}.settings-overlay.is-open{opacity:1;pointer-events:auto}.settings-backdrop{background:#000000b3;position:absolute;inset:0}.settings-sheet{border-top:1px solid var(--gridline);width:100%;max-height:85dvh;padding:16px 16px calc(24px + env(safe-area-inset-bottom));background:#0a0a0a;border-top-left-radius:16px;border-top-right-radius:16px;flex-direction:column;gap:8px;display:flex;position:relative;overflow:hidden}.settings-body{flex:auto;min-height:0;overflow-y:auto}.settings-page{flex-direction:column;gap:8px;display:flex}.settings-page.is-hidden{display:none}.settings-section-title{font-family:var(--display-font);text-transform:uppercase;letter-spacing:.12em;color:var(--muted);margin:8px 0 0;font-size:.85rem;font-weight:400}.settings-section-title:first-child{margin-top:0}.settings-row{background:var(--stage-color,transparent);color:var(--stage-text-color,var(--fg));border-radius:var(--act-radius);align-items:center;gap:12px;padding:10px 8px;display:flex}.settings-row input[type=checkbox]{width:22px;height:22px;accent-color:var(--bg)}.settings-row-name{font-family:var(--display-font);letter-spacing:.03em;text-transform:uppercase;font-size:1.1rem;font-weight:400}.settings-close{background:var(--fg);color:var(--bg);border-radius:var(--act-radius);font-family:var(--display-font);letter-spacing:.08em;text-transform:uppercase;cursor:pointer;border:none;flex-shrink:0;margin-top:8px;padding:14px;font-size:1.1rem;font-weight:400}.settings-link{border:none;border-top:1px solid var(--gridline);width:100%;color:var(--fg);font-family:var(--display-font);letter-spacing:.03em;text-transform:uppercase;cursor:pointer;background:0 0;justify-content:space-between;align-items:center;margin-top:4px;padding:12px 8px;font-size:1.1rem;font-weight:400;display:flex}.settings-link svg{color:var(--muted)}.settings-link:active{opacity:.6}.about-page{flex-direction:column;gap:4px;display:flex}.settings-back{color:var(--muted);font-family:var(--body-font);cursor:pointer;background:0 0;border:none;align-self:flex-start;align-items:center;gap:4px;padding:4px 8px 8px 0;font-size:.9rem;display:flex}.settings-back:active{opacity:.6}.about-body{font-family:var(--body-font)}.about-body p{color:#fffc;margin:0 0 12px;font-size:.92rem;line-height:1.5}.about-body a{color:#fff;text-underline-offset:2px;-webkit-text-decoration:underline #ffffff73;text-decoration:underline #ffffff73}.about-body a:active,.about-body a:visited{opacity:.6}.about-body .settings-section-title{margin:12px 0 8px}.about-body .settings-section-title:first-child{margin-top:0}.about-body .install-share-glyph{vertical-align:-3px;margin:0 1px}.install-sheet{gap:6px}.install-close{color:var(--muted);cursor:pointer;background:0 0;border:none;padding:4px;display:flex;position:absolute;top:12px;right:12px}.install-close:active{opacity:.6}.install-title{font-family:var(--display-font);letter-spacing:.02em;text-transform:uppercase;margin:0;padding-right:32px;font-size:1.9rem;font-weight:400;line-height:1.05}.install-subtitle{font-family:var(--body-font);color:#ffffffb3;margin:0 0 4px;font-size:.95rem;line-height:1.45}.install-body{margin-top:4px}.install-instruction{font-family:var(--body-font);color:var(--fg);margin:0;font-size:1.05rem;line-height:1.5}.install-button{background:var(--fg);width:100%;color:var(--bg);border-radius:var(--act-radius);font-family:var(--display-font);letter-spacing:.08em;text-transform:uppercase;cursor:pointer;border:none;padding:14px;font-size:1.2rem;font-weight:400}.install-button:active{opacity:.85}
