@import "https://fonts.googleapis.com/css2?family=Heebo:wght@400;500;600;700;800;900&display=swap";:root{--bg:#fdf8f3;--surface:#fff;--surface-2:#f4e9de;--ink:#1f1915;--ink-soft:#6a594b;--hairline:#e9dbcc;--accent:#b3341f;--accent-soft:#fbe4dc;--on-accent:#fff8f5;--you:#6b2d5c;--you-soft:#f4e4f0;--success:#2c6b4c;--success-soft:#e2f0e7;--warn:#8a5300;--warn-soft:#fbebd2;--film:#3e3a8c;--r-chip:8px;--r-control:14px;--r-card:20px;--r-hero:28px;--r-pill:999px;--shadow:0 4px 16px #5d402d14, 0 12px 32px #5d402d0a;--tabbar-h:68px}[data-theme=dark]{--bg:#15100d;--surface:#201a15;--surface-2:#2d251e;--ink:#f7efe6;--ink-soft:#b6a494;--hairline:#3a2f26;--accent:#ff8b6a;--accent-soft:#3a2018;--on-accent:#2a0f08;--you:#e4a6d6;--you-soft:#33202e;--success:#72d5a3;--success-soft:#17301f;--warn:#f2b85c;--warn-soft:#332616;--shadow:0 4px 16px #0006, 0 12px 32px #0000004d}*,:before,:after{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg);color:var(--ink);-webkit-font-smoothing:antialiased;overscroll-behavior-y:none;-webkit-user-select:none;user-select:none;font-family:Heebo,system-ui,-apple-system,sans-serif;font-size:17px;line-height:1.5;transition:background-color .3s,color .3s}#root{flex-direction:column;min-height:100dvh;display:flex}.top-nav{z-index:40;background:color-mix(in srgb, var(--bg) 85%, transparent);-webkit-backdrop-filter:blur(16px);border-bottom:1px solid var(--hairline);padding:12px 16px;position:sticky;top:0}.sim-bar{background:var(--surface-2);border-radius:var(--r-pill);justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px;padding:6px 12px;font-size:13px;font-weight:600;display:flex}.sim-select{background:var(--surface);color:var(--ink);border:1px solid var(--hairline);border-radius:var(--r-chip);cursor:pointer;padding:4px 8px;font-family:inherit;font-size:13px;font-weight:700}.brand-header{justify-content:space-between;align-items:flex-end;padding-top:4px;display:flex}.brand-title{letter-spacing:-.02em;font-size:22px;font-weight:900}.brand-sub{color:var(--ink-soft);font-size:13px;font-weight:600}.theme-btn{background:var(--surface-2);border:1px solid var(--hairline);color:var(--ink);cursor:pointer;border-radius:50%;place-items:center;width:36px;height:36px;transition:transform .2s;display:grid}.theme-btn:active{transform:scale(.92)}.main-content{padding:16px;padding-bottom:calc(var(--tabbar-h) + env(safe-area-inset-bottom) + 24px);flex:1;width:100%;max-width:560px;margin:0 auto}.section-title{letter-spacing:.06em;color:var(--ink-soft);text-transform:uppercase;margin:20px 0 10px;font-size:13px;font-weight:800}.section-title:first-child{margin-top:4px}.ev-card{border-radius:var(--r-card);background:var(--surface);box-shadow:var(--shadow);margin-bottom:12px;transition:transform .2s,box-shadow .2s;position:relative}.ev-card.past{opacity:.5;border-bottom:1px solid var(--hairline);box-shadow:none;background:0 0;border-radius:0;align-items:baseline;gap:12px;padding:12px 16px;display:flex}.ev-card.past .time{font-variant-numeric:tabular-nums;color:var(--ink-soft);font-size:15px;font-weight:700}.ev-card.past .title{font-size:15px;font-weight:600}.ev-card.next{padding:18px 16px}.ev-card.next .time{color:var(--ink-soft);font-variant-numeric:tabular-nums;font-size:20px;font-weight:800}.ev-card.next .title{margin-top:4px;font-size:18px;font-weight:800}.ev-card.now{border-radius:var(--r-hero);border:2px solid var(--accent);box-shadow:0 8px 24px color-mix(in srgb, var(--accent) 20%, transparent);padding:24px 20px;overflow:hidden}.ev-card.now .time{color:var(--accent);font-variant-numeric:tabular-nums;align-items:center;gap:10px;font-size:36px;font-weight:900;line-height:1;display:flex}.ev-card.now .title{margin-top:8px;font-size:26px;font-weight:800;line-height:1.25}.ev-card.now .details{color:var(--ink-soft);margin-top:10px;font-size:16px;line-height:1.45}.live-dot{background:var(--accent);border-radius:50%;width:12px;height:12px;animation:2s cubic-bezier(.4,0,.6,1) infinite pulse-ring;display:inline-block}@keyframes pulse-ring{0%,to{opacity:1;transform:scale(1)}50%{opacity:.3;transform:scale(.85)}}.ev-card.mine{background:linear-gradient(to left, var(--you-soft) 0%, var(--surface) 65%)}.ev-card.mine:before{content:"";background:var(--you);border-start-end-radius:var(--r-card);border-end-end-radius:var(--r-card);width:6px;position:absolute;inset-block:0;inset-inline-end:0}.ev-card.now.mine:before{border-start-end-radius:var(--r-hero);border-end-end-radius:var(--r-hero)}.prog-bar{background:var(--surface-2);border-radius:var(--r-pill);height:5px;margin-top:16px;overflow:hidden}.prog-fill{background:var(--accent);border-radius:var(--r-pill);height:100%;transition:width .5s linear}.pills-wrap{flex-wrap:wrap;gap:6px;margin-top:12px;display:flex}.pill{border-radius:var(--r-pill);background:var(--surface-2);color:var(--ink-soft);padding:4px 12px;font-size:14px;font-weight:600}.pill.you{background:var(--you-soft);color:var(--you);font-weight:800}.pill.group{border:1px solid var(--hairline);background:0 0}.flag-box{color:var(--warn);background:var(--warn-soft);border-radius:var(--r-chip);align-items:center;gap:8px;width:100%;margin-top:12px;padding:8px 12px;font-size:13px;font-weight:700;display:inline-flex}.card-box{background:var(--surface);border-radius:var(--r-card);box-shadow:var(--shadow);margin-bottom:16px;padding:20px}.card-box .lbl{color:var(--ink-soft);text-transform:uppercase;font-size:13px;font-weight:700}.card-box .val{margin-top:6px;font-size:18px;font-weight:700;line-height:1.4}.card-box.my-job{border-inline-end:6px solid var(--you)}.card-box.my-job.film{border-inline-end-color:var(--film)}.counter-num{font-variant-numeric:tabular-nums;margin-top:4px;font-size:32px;font-weight:900}.counter-num small{color:var(--ink-soft);font-size:16px;font-weight:600}.btn-action{border-radius:var(--r-control);background:var(--accent);width:100%;min-height:56px;color:var(--on-accent);cursor:pointer;box-shadow:0 4px 14px color-mix(in srgb, var(--accent) 30%, transparent);border:none;justify-content:center;align-items:center;gap:8px;font-size:17px;font-weight:800;transition:transform .15s,opacity .15s;display:flex}.btn-action:active{transform:scale(.98)}.btn-action.ghost{background:var(--surface-2);color:var(--ink);box-shadow:none}.btn-action:disabled{opacity:.45;cursor:not-allowed}.row-item{background:var(--surface);border-radius:var(--r-card);box-shadow:var(--shadow);text-align:start;cursor:pointer;border:none;align-items:center;gap:14px;width:100%;min-height:72px;margin-bottom:12px;padding:16px 20px;display:flex}.row-item .body{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.row-item .ti{font-size:18px;font-weight:800;line-height:1.3}.row-item .meta{color:var(--ink-soft);font-size:14px;font-weight:600}.row-item.done{background:var(--success-soft)}.row-item.done .ti{opacity:.65;text-decoration:line-through}.check-circle{border:2px solid var(--hairline);color:#0000;border-radius:50%;flex-shrink:0;place-items:center;width:32px;height:32px;font-size:16px;transition:all .2s;display:grid}.row-item.done .check-circle{background:var(--success);border-color:var(--success);color:#fff}.cue-overlay{z-index:100;text-align:center;color:#fff;background:#000;flex-direction:column;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.cue-digit{color:#b4541f;font-variant-numeric:tabular-nums;text-shadow:0 0 30px #b4541f66;font-size:180px;font-weight:900;line-height:1}.cue-sub{color:#7a5140;margin-top:24px;font-size:22px;font-weight:600}.cue-shout{color:#ff8b6a;margin-top:16px;font-size:32px;font-weight:900;animation:.4s ease-out popUp}@keyframes popUp{0%{opacity:0;transform:translateY(12px)scale(.9)}to{opacity:1;transform:translateY(0)scale(1)}}.bottom-tabbar{inset-inline:0;z-index:50;height:calc(var(--tabbar-h) + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);background:color-mix(in srgb, var(--surface) 92%, transparent);-webkit-backdrop-filter:blur(16px);border-top:1px solid var(--hairline);grid-auto-columns:1fr;grid-auto-flow:column;display:grid;position:fixed;bottom:0}.tab-btn{color:var(--ink-soft);cursor:pointer;background:0 0;border:none;flex-direction:column;justify-content:center;align-items:center;gap:4px;min-height:56px;font-size:12px;font-weight:700;transition:color .2s;display:flex;position:relative}.tab-btn.active{color:var(--accent)}.tab-active-indicator{background:var(--accent);border-radius:0 0 4px 4px;width:36px;height:3px;position:absolute;top:0}.empty-state{text-align:center;color:var(--ink-soft);padding:48px 16px;font-size:16px;font-weight:600}
