:root{--ink: #4c4f69;--muted: #6c6f85;--accent: #8839ef;--accent-ink: #fff;--pink: #ea76cb;--paper: #eff1f5;--surface: #fff;--surface-alt: #e6e9ef;--line: #ccd0da;--hero-start: #4c4f69;--mono: "SFMono-Regular", Consolas, "Liberation Mono", monospace;--accent-soft: color-mix(in srgb, var(--accent) 14%, transparent);--pink-soft: color-mix(in srgb, var(--pink) 16%, transparent);--shadow: #1b1d3820;color-scheme:light}html[data-theme=latte]{--ink: #4c4f69;--muted: #6c6f85;--accent: #8839ef;--pink: #ea76cb;--paper: #eff1f5;--surface: #fff;--surface-alt: #e6e9ef;--line: #ccd0da;--hero-start: #4c4f69;color-scheme:light}html[data-theme=mocha]{--ink: #cdd6f4;--muted: #a6adc8;--accent: #cba6f7;--pink: #f5c2e7;--paper: #11111b;--surface: #181825;--surface-alt: #1e1e2e;--line: #313244;--hero-start: #1e1e2e;--shadow: #00000045;color-scheme:dark}@media(prefers-color-scheme:dark){html[data-theme=system]{--ink: #cdd6f4;--muted: #a6adc8;--accent: #cba6f7;--pink: #f5c2e7;--paper: #11111b;--surface: #181825;--surface-alt: #1e1e2e;--line: #313244;--hero-start: #1e1e2e;--shadow: #00000045;color-scheme:dark}}*{box-sizing:border-box}html,body,#app{min-height:100%}body{margin:0;background:var(--paper);color:var(--ink);font-family:Avenir Next,PingFang SC,Hiragino Sans GB,system-ui,sans-serif}a{color:inherit}button,input{font:inherit}button{border:0;border-radius:9px;padding:12px 20px;background:var(--accent);color:var(--accent-ink);font-weight:600;cursor:pointer;transition:transform .16s ease,border-color .16s ease,background .16s ease}button:hover:not(:disabled){transform:translateY(-1px)}button:disabled{cursor:wait;opacity:.55}button:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.app-shell{min-height:100vh;display:flex;flex-direction:column}.site-header{height:76px;padding:0 max(17px,calc((100% - 1260px)/2));display:flex;align-items:center;justify-content:space-between;background:var(--surface);border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:9px;color:var(--ink);font-weight:800;letter-spacing:.06em;text-decoration:none;white-space:nowrap}.brand-area{display:flex;min-width:0;align-items:center;gap:clamp(18px,3vw,42px)}.section-nav{display:flex;align-items:center;gap:4px}.section-nav a,.section-nav span{padding:8px 10px;border:1px solid transparent;border-radius:9px;color:var(--muted);font-size:13px;text-decoration:none;white-space:nowrap}.section-nav a:hover,.section-nav a.router-link-active{border-color:color-mix(in srgb,var(--accent) 22%,transparent);background:var(--accent-soft);color:var(--accent)}.section-nav .planned{cursor:default;opacity:.42}.brand-mark{display:inline-grid;width:34px;height:34px;place-items:center;border-radius:11px;background:var(--accent);color:var(--accent-ink);font-size:20px}.site-nav{display:flex;align-items:center;gap:24px}.site-nav a{color:var(--muted);font-size:14px;text-decoration:none}.site-settings-link{display:inline-flex;align-items:center;gap:6px}.site-settings-icon{width:15px;height:15px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8}.site-nav a.router-link-active{color:var(--accent)}.icon-button{display:grid;width:36px;height:36px;place-items:center;padding:0;border:1px solid var(--line);background:transparent;color:var(--accent)}.icon-button svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8}.palette-picker{position:relative}.palette-picker>summary{list-style:none}.palette-picker>summary::-webkit-details-marker{display:none}.palette-picker[open]>summary{border-color:var(--accent)}.palette-menu{position:absolute;top:calc(100% + 10px);left:50%;z-index:20;display:grid;gap:12px;width:260px;padding:14px;border:1px solid var(--line);border-radius:14px;background:var(--surface);box-shadow:0 14px 32px #1b1d3830;color:var(--ink);transform:translate(-50%)}.palette-menu strong{font-size:12px}.palette-swatches{display:grid;grid-template-columns:repeat(7,22px);gap:8px;justify-content:center}.palette-swatch{width:22px;height:22px;min-width:22px;padding:0;border:1px solid #0003;border-radius:50%;background:var(--swatch)!important;box-shadow:0 1px 3px #1b1d3830}.palette-swatch:hover{transform:scale(1.12)}.palette-swatch.selected{outline:2px solid var(--accent);outline-offset:3px}@media(max-width:700px){.palette-menu{right:-8px;left:auto;width:240px;padding:12px;transform:none}.palette-swatches{gap:10px}}.page{width:min(1260px,100%);margin:0 auto;padding:58px 17px 80px;flex:1}.narrow-page{width:min(820px,100%)}.hero{padding:54px clamp(25px,6vw,80px);border-radius:28px;background:linear-gradient(120deg,var(--hero-start),var(--accent) 72%,var(--pink));color:#fff;box-shadow:0 24px 55px #5749b52b}.hero h1,.login h1,.settings h1{margin:15px 0;font-size:clamp(36px,6vw,68px);line-height:1.05}.hero p:not(.eyebrow){color:#f0efff}.eyebrow,.date{margin:0;color:var(--pink);font:500 11px var(--mono);letter-spacing:.12em}.search{display:flex;max-width:580px;margin-top:34px;padding:6px;border-radius:12px;background:#fff}.search input{min-width:0;flex:1;border:0;padding:12px 14px;outline:0;background:transparent;color:#4c4f69}.search button{padding:11px 18px}.toolbar{display:flex;justify-content:space-between;gap:20px;margin:42px 0 18px;color:var(--muted);font-size:13px}.toolbar strong{color:var(--ink);font-size:18px}.cover-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:16px}.cover-tile{display:flex;flex-direction:column;overflow:hidden;border:1px solid var(--line);border-radius:14px;background:var(--surface);box-shadow:0 5px 15px #1b1d3810;text-decoration:none;transition:transform .18s ease,border-color .18s ease}.cover-tile:hover{border-color:var(--accent);transform:translateY(-3px)}.cover-tile img,.cover-tile .missing{display:block;width:100%;aspect-ratio:1;object-fit:cover}.cover-tile .missing,.release-cover .missing{display:grid;place-content:center;background:var(--surface-alt);color:var(--muted);text-align:center}.cover-tile .cover-title{display:-webkit-box;min-height:2.8em;overflow:hidden;padding:12px 8px 10px;color:var(--ink);font-size:15px;line-height:1.4;-webkit-box-orient:vertical;-webkit-line-clamp:2}.state,.empty,.muted{color:var(--muted)}.state{margin:24px 0}.error{padding:12px 14px;border:1px solid #d20f39;border-radius:9px;color:#d20f39;background:#d20f3914}.success{padding:12px 14px;border:1px solid #40a02b;border-radius:9px;color:#40a02b;background:#40a02b14}.back,.source,.extra-link{color:var(--accent);text-decoration:none}.release-switch{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:24px 0 34px}.release-switch>a,.switch-button{display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;column-gap:14px;align-items:center;min-height:92px;padding:18px 22px;border:1px solid var(--line);border-radius:16px;background:var(--surface);box-shadow:0 7px 20px #1b1d380b;text-decoration:none}.release-switch>a:hover{border-color:var(--accent);transform:translateY(-2px)}.release-switch>a:last-child,.release-switch>.switch-button:last-child{grid-template-columns:1fr auto;text-align:right}.release-switch>a:last-child .switch-arrow,.release-switch>.switch-button:last-child .switch-arrow{grid-column:2}.release-switch>a:last-child small,.release-switch>a:last-child strong,.release-switch>.switch-button:last-child small,.release-switch>.switch-button:last-child strong{grid-column:1}.release-switch small{color:var(--muted);font-size:11px}.release-switch strong{grid-column:2;overflow:hidden;color:var(--ink);font-size:14px;line-height:1.35;text-overflow:ellipsis;white-space:nowrap}.switch-arrow{grid-row:1 / span 2;color:var(--accent);font-size:32px;font-weight:300}.switch-button.disabled{opacity:.42}.release{display:grid;grid-template-columns:minmax(240px,360px) 1fr;gap:clamp(28px,6vw,72px);align-items:start}.release-cover{overflow:hidden;border-radius:18px;background:var(--surface-alt);box-shadow:0 18px 36px #1b1d3820}.release-cover img{display:block;width:100%;height:auto}.release-info h1{margin:14px 0 8px;font-size:clamp(28px,4vw,48px);line-height:1.12}.subtitle{margin:0 0 22px;color:var(--muted)}.release-info dl{display:grid;grid-template-columns:max-content 1fr;gap:9px 18px;margin:28px 0;font-size:14px}.release-info dt{color:var(--muted)}.release-info dd{margin:0}.tracks{margin-top:72px}.section-heading{margin-bottom:22px}.section-heading h2{margin:8px 0 0;font-size:clamp(24px,4vw,36px)}.track-row{display:grid;grid-template-columns:64px 1fr;gap:18px;padding:18px 0;border-bottom:1px solid var(--line)}.track-no{color:var(--accent);font:500 13px var(--mono);line-height:1.5;text-align:right}.track-row strong{font-size:15px}.track-row p{margin:7px 0 0;color:var(--muted);font-size:13px}.track-row p span{display:inline-block;min-width:48px;color:var(--accent)}.extras{margin-top:72px;margin-bottom:60px}.extra-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:14px;margin-top:30px}.extra-panel{padding:18px;border:1px solid var(--line);border-radius:14px;background:var(--surface)}.extra-panel h3{margin:0 0 12px;font-size:15px}.extra-panel ul{margin:0;padding-left:18px;color:var(--muted);font-size:13px;line-height:1.65}.raw{margin-top:36px;border-top:1px solid var(--line);padding-top:20px}.raw summary{color:var(--muted);cursor:pointer;font-size:13px}.raw-content{overflow:auto;margin-top:20px;padding:18px;border:1px solid var(--line);border-radius:12px;background:var(--surface)}.raw-content img{max-width:100%;height:auto}.settings-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.settings h2{margin:42px 0 18px;font-size:20px}.settings label,.login label{display:grid;gap:8px;margin:18px 0;color:var(--muted);font-size:14px}.settings input,.login input{width:100%;border:1px solid var(--line);border-radius:9px;padding:12px 14px;background:var(--surface);color:var(--ink);outline:0}.settings small{color:var(--muted);font-size:11px}.actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}.secondary{border:1px solid var(--accent);background:transparent;color:var(--accent)}.sync,.password-form{margin-top:58px;border-top:1px solid var(--line);padding-top:16px}.sync p{color:var(--muted);font-size:13px}footer{padding:24px;border-top:1px solid var(--line);color:var(--muted);font-size:12px;text-align:center}footer a{color:var(--accent)}@media(max-width:700px){.site-header{height:auto;min-height:68px;padding:14px 16px;gap:16px}.brand{font-size:12px}.brand-area{flex-wrap:wrap;gap:6px 10px}.section-nav{flex-wrap:wrap;gap:2px}.section-nav a,.section-nav span{padding:5px 6px;font-size:10px}nav{gap:10px}.site-nav a{display:none}.site-nav .site-settings-link{display:inline-flex;padding:8px}.site-nav .site-settings-link span{display:none}.page{padding:34px 16px 56px}.hero{padding:36px 24px;border-radius:22px}.toolbar{align-items:flex-end;flex-direction:column;gap:6px;margin-top:28px}.cover-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.cover-tile .cover-title{padding:10px 7px 9px;font-size:13px}.release-switch{gap:10px}.release-switch>a,.switch-button{min-height:78px;padding:12px 10px;column-gap:7px}.switch-arrow{font-size:25px}.release-switch strong{font-size:11px}.release-switch small{font-size:9px}.release{grid-template-columns:1fr;gap:30px}.release-cover{max-width:420px}.release-info dl{grid-template-columns:1fr;gap:4px}.release-info dd{margin-bottom:10px}.settings-heading{align-items:center}}:root{--display-font: "Avenir Next", "PingFang SC", "Hiragino Sans GB", system-ui, sans-serif}body{background:radial-gradient(circle at 8% -8%,var(--accent-soft),transparent 28rem),radial-gradient(circle at 94% 4%,var(--pink-soft),transparent 32rem),var(--paper);background-attachment:fixed}button{box-shadow:0 7px 16px var(--accent-soft)}button.secondary,.icon-button,.palette-swatch{box-shadow:none}.site-header{position:sticky;top:0;z-index:30;height:82px;border-bottom-color:color-mix(in srgb,var(--line) 72%,transparent);background:color-mix(in srgb,var(--surface) 88%,transparent);box-shadow:inset 0 -2px var(--accent-soft),0 8px 28px #1b1d3808;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.brand{gap:12px;letter-spacing:.04em}.brand-mark{position:relative;display:grid;width:40px;height:40px;place-items:center;overflow:hidden;border-radius:13px;background:linear-gradient(145deg,var(--accent),color-mix(in srgb,var(--accent) 35%,var(--pink)));box-shadow:0 8px 18px var(--accent-soft)}.brand-mark:before,.brand-mark:after{position:absolute;border:1px solid #ffffff55;border-radius:50%;content:""}.brand-mark:before{width:27px;height:27px}.brand-mark:after{width:13px;height:13px;border-color:#fff8}.brand-mark b{position:relative;z-index:1;color:#fff;font-size:19px;font-weight:800}.brand-mark i{position:absolute;width:4px;height:4px;border-radius:50%;background:#fff;box-shadow:10px -10px #fff8,-12px 11px #fff6}.brand-copy{display:grid;gap:2px}.brand-copy strong{font-size:13px;letter-spacing:.1em}.brand-copy small,.toolbar-label,.hero-stamp,.form-kicker,.login-footnote{color:var(--muted);font:500 9px var(--mono);letter-spacing:.13em}.brand-copy small{font-size:8px;opacity:.75}.site-nav{gap:8px}.site-nav a{padding:8px 12px;border:1px solid transparent;border-radius:9px;color:var(--muted);font-size:13px;transition:color .16s ease,border-color .16s ease,background .16s ease}.site-nav a:hover,.site-nav a.router-link-active{border-color:color-mix(in srgb,var(--accent) 22%,transparent);background:var(--accent-soft);color:var(--accent)}.nav-divider{width:1px;height:22px;margin:0 5px;background:var(--line)}.icon-button{border-radius:10px;background:var(--surface-alt);transition:color .16s ease,border-color .16s ease,transform .16s ease}.icon-button:hover:not(:disabled){border-color:var(--accent);color:var(--accent);transform:translateY(-1px)}.theme-switch{display:inline-flex;flex-shrink:0;align-items:center;gap:2px;border:1px solid var(--line);border-radius:999px;padding:3px;background:var(--surface-alt)}.theme-switch button{display:inline-flex;align-items:center;justify-content:center;gap:5px;min-height:30px;border:0;border-radius:999px;padding:6px 10px;background:transparent;color:var(--muted);box-shadow:none;font-size:11px;font-weight:700;white-space:nowrap}.theme-switch-icon{width:14px;height:14px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8}.theme-switch button:hover:not(:disabled){background:var(--accent-soft);color:var(--accent);transform:none}.theme-switch button.selected,.theme-switch button.selected:hover:not(:disabled){background:var(--accent);color:var(--accent-ink);transform:none}.palette-menu{border-color:color-mix(in srgb,var(--accent) 22%,var(--line));box-shadow:0 18px 42px var(--shadow)}.page{padding-top:64px}.hero{position:relative;isolation:isolate;overflow:hidden;min-height:380px;padding:clamp(34px,6vw,68px) clamp(25px,7vw,86px);border:1px solid #ffffff26;background:linear-gradient(115deg,color-mix(in srgb,var(--hero-start) 84%,var(--accent)),color-mix(in srgb,var(--hero-start) 55%,var(--accent)) 62%,color-mix(in srgb,var(--hero-start) 38%,var(--accent)));box-shadow:0 24px 55px var(--accent-soft),inset 0 1px #ffffff20}.hero:before{position:absolute;top:-180px;right:-90px;z-index:-1;width:470px;height:470px;border:1px solid #ffffff28;border-radius:50%;box-shadow:0 0 0 26px #ffffff08,0 0 0 52px #ffffff05;content:""}.hero:after{position:absolute;right:12%;bottom:-100px;z-index:-1;width:260px;height:260px;border-radius:50%;background:color-mix(in srgb,var(--accent) 64%,var(--pink));filter:blur(2px);content:""}.hero>*{position:relative;z-index:1}.hero-topline{display:flex;align-items:center;justify-content:space-between;gap:20px}.hero .eyebrow{display:flex;align-items:center;gap:9px;color:#ffffffc7}.eyebrow-dot{display:inline-block;width:7px;height:7px;border:2px solid #fff;border-radius:50%;box-shadow:0 0 0 4px #ffffff20}.hero-stamp{padding:9px 11px;border:1px solid #ffffff45;border-radius:8px;color:#fff9;line-height:1.55;text-align:right}.hero-stamp strong{color:#fff;font-weight:500}.hero h1{max-width:760px;margin:48px 0 16px;color:#fff;font-family:var(--display-font);font-size:clamp(40px,7vw,78px);font-weight:800;letter-spacing:-.06em;text-wrap:balance}.title-mark{display:inline-block;width:13px;height:13px;margin:0 0 12px 13px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 7px #ffffff20,0 0 22px var(--accent);vertical-align:middle}.hero-description{margin:0;color:#f8f7ff!important;font-size:16px;line-height:1.9}.hero-description span{color:#fffa;font-size:13px}.search{position:relative;align-items:center;max-width:620px;margin-top:32px;padding:6px 6px 6px 17px;border:1px solid #ffffff55;border-radius:13px;background:#fff;box-shadow:0 12px 28px #1b1d3830}.search-icon{flex:0 0 19px;width:19px;height:19px;fill:none;stroke:#8c8fa3;stroke-linecap:round;stroke-width:1.8}.search input{padding:13px;color:#4c4f69;font-size:14px}.search input::placeholder{color:#9b9daf}.search button,.login button:not(.secondary){display:inline-flex;align-items:center;justify-content:center;gap:12px;min-width:114px;padding:12px 15px;border-radius:9px;background:var(--accent);color:var(--accent-ink);box-shadow:none;font-size:13px}.toolbar{align-items:center;margin:42px 0 22px;padding-bottom:18px;border-bottom:1px solid color-mix(in srgb,var(--line) 75%,transparent)}.toolbar-main,.toolbar-meta,.sync-time{display:flex;align-items:center}.toolbar-main{gap:11px}.toolbar-main>div{display:flex;align-items:baseline;gap:10px}.toolbar-label{color:var(--muted);font-size:8px}.status-dot{width:9px;height:9px;border:2px solid var(--accent);border-radius:50%;box-shadow:0 0 0 4px var(--accent-soft)}.toolbar-meta{flex-wrap:wrap;justify-content:flex-end;gap:10px;font-size:12px}.sync-time{gap:7px}.sync-mark{width:7px;height:7px;border-radius:50%;background:var(--accent);opacity:.75}.filter-chip{max-width:230px;overflow:hidden;padding:5px 9px;border:1px solid color-mix(in srgb,var(--accent) 24%,var(--line));border-radius:6px;background:var(--accent-soft);color:var(--accent);text-overflow:ellipsis;white-space:nowrap}.cover-grid{grid-template-columns:repeat(auto-fill,minmax(164px,1fr));gap:20px}.cover-tile{position:relative;border-color:color-mix(in srgb,var(--line) 66%,transparent);border-radius:16px;box-shadow:0 8px 22px #1b1d380b;transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease}.cover-tile:hover{border-color:color-mix(in srgb,var(--accent) 62%,var(--line));box-shadow:0 16px 30px var(--accent-soft);transform:translateY(-6px)}.cover-media{position:relative;overflow:hidden;background:var(--surface-alt)}.cover-tile img{transition:transform .42s cubic-bezier(.2,.7,.2,1),filter .42s ease}.cover-tile:hover img{filter:saturate(1.08);transform:scale(1.045)}.cover-index,.cover-hover{position:absolute;color:#fff;font:500 9px var(--mono);letter-spacing:.08em;text-shadow:0 1px 5px #0008}.cover-index{top:11px;left:11px;padding:4px 6px;border:1px solid #ffffff55;border-radius:5px;background:#1b1d3866;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.cover-hover{right:11px;bottom:11px;padding:5px 7px;border-radius:5px;background:#1b1d38a8;opacity:0;transform:translateY(5px);transition:opacity .18s ease,transform .18s ease}.cover-hover b{margin-left:3px;color:var(--accent);font-size:13px}.cover-tile:hover .cover-hover{opacity:1;transform:translateY(0)}.cover-caption{display:grid;gap:4px;min-height:79px;padding:13px 13px 14px}.cover-tile .cover-title{min-height:0;padding:0;font-size:14px;font-weight:700;line-height:1.45}.cover-caption small{overflow:hidden;color:var(--muted);font-size:11px;text-overflow:ellipsis;white-space:nowrap}.empty{grid-column:1 / -1;padding:42px 20px;border:1px dashed var(--line);border-radius:14px;background:color-mix(in srgb,var(--surface) 55%,transparent);text-align:center}.state{padding:18px 0}.detail-topline{display:flex;align-items:center;justify-content:space-between;gap:20px}.back{display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:600}.back span{display:inline-grid;width:25px;height:25px;place-items:center;border:1px solid color-mix(in srgb,var(--accent) 30%,var(--line));border-radius:50%;transition:transform .16s ease,background .16s ease}.back:hover span{background:var(--accent-soft);transform:translate(-3px)}.keyboard-hint{color:var(--muted);font:500 9px var(--mono);letter-spacing:.08em}.release-switch{margin:27px 0 44px}.release-switch>a,.switch-button{border-color:color-mix(in srgb,var(--line) 72%,transparent);border-radius:14px;box-shadow:0 7px 20px #1b1d3809;transition:transform .18s ease,border-color .18s ease,background .18s ease}.release-switch>a:hover{background:var(--accent-soft)}.release{gap:clamp(32px,7vw,82px)}.release-cover{position:sticky;top:108px;padding:11px;border:1px solid color-mix(in srgb,var(--accent) 20%,var(--line));border-radius:20px;background:var(--surface);box-shadow:0 22px 48px var(--shadow),0 0 0 7px var(--accent-soft);transform:rotate(-1.2deg)}.release-cover-art{overflow:hidden;border-radius:12px;background:var(--surface-alt)}.release-cover-art img,.release-cover-art .missing{display:block;width:100%;aspect-ratio:1;object-fit:cover}.release-cover-art .missing{display:grid;place-content:center}.release-cover-meta{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 3px 1px;color:var(--muted);font:500 8px var(--mono);letter-spacing:.1em}.release-cover-meta strong{color:var(--accent);font-weight:500}.release-info{padding-top:14px}.release-info h1{margin-top:18px;font-family:var(--display-font);font-weight:800;letter-spacing:-.045em}.subtitle{max-width:560px;line-height:1.75}.release-info dl{margin:31px 0 25px;padding:20px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.release-info dt{font:500 10px var(--mono);letter-spacing:.04em}.release-info dd{font-size:14px;font-weight:600}.source,.extra-link{display:inline-flex;align-items:center;gap:7px;padding:9px 12px;border:1px solid color-mix(in srgb,var(--accent) 30%,var(--line));border-radius:8px;background:var(--accent-soft);font-size:12px;font-weight:600;transition:background .16s ease,transform .16s ease}.source:hover,.extra-link:hover{background:color-mix(in srgb,var(--accent) 23%,transparent);transform:translateY(-2px)}.tracks,.extras{margin-top:86px}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:25px;padding-bottom:16px;border-bottom:1px solid var(--line)}.section-heading h2{margin-bottom:0;font-family:var(--display-font);letter-spacing:-.04em}.section-count{padding-bottom:5px;color:var(--muted);font:500 9px var(--mono);letter-spacing:.1em}.track-row{grid-template-columns:58px 1fr;gap:20px;margin:0 -10px;padding:17px 10px;border-bottom-color:color-mix(in srgb,var(--line) 72%,transparent);border-radius:8px;transition:background .16s ease,padding .16s ease}.track-row:hover{background:var(--accent-soft)}.track-no{text-align:left}.track-row strong{font-size:14px}.track-row p{line-height:1.5}.extra-grid{gap:18px;margin-top:0}.extra-panel{position:relative;overflow:hidden;padding:21px;border-color:color-mix(in srgb,var(--line) 72%,transparent);border-radius:14px;box-shadow:0 7px 20px #1b1d3809}.extra-panel:before{position:absolute;top:0;left:0;width:35%;height:3px;background:linear-gradient(90deg,var(--accent),var(--pink));content:""}.raw{margin-bottom:40px}.settings-heading{margin-bottom:34px;padding-bottom:24px;border-bottom:1px solid var(--line)}.settings-intro{max-width:480px;margin:-2px 0 0;color:var(--muted);font-size:13px;line-height:1.7}.settings-stack{display:grid;gap:18px}.settings-card{position:relative;overflow:hidden;margin:0;padding:26px clamp(20px,4vw,34px);border:1px solid color-mix(in srgb,var(--line) 70%,transparent);border-radius:17px;background:color-mix(in srgb,var(--surface) 94%,var(--accent-soft));box-shadow:0 9px 25px #1b1d3808}.settings-card:before{position:absolute;top:0;left:0;width:100%;height:3px;background:linear-gradient(90deg,var(--accent),var(--pink),transparent 75%);content:""}.form-heading{display:flex;align-items:flex-start;gap:14px;margin-bottom:24px}.form-heading-actions{display:flex;flex-shrink:0;flex-wrap:wrap;gap:9px;margin-left:auto}.form-number{padding-top:3px;color:var(--accent);font:500 11px var(--mono);letter-spacing:.08em}.form-kicker{margin:0 0 5px;color:var(--muted);font-size:8px}.settings-card h2{margin:0;font-family:var(--display-font);font-size:21px;letter-spacing:-.025em}.subsection-heading{margin-top:38px;padding-top:25px;border-top:1px solid var(--line)}.settings label,.login label{margin:19px 0;font-size:13px;font-weight:600}.settings input,.login input{padding:13px 14px;border-radius:10px;background:var(--paper);transition:border-color .16s ease,box-shadow .16s ease,background .16s ease}.settings input:focus,.login input:focus{border-color:var(--accent);background:var(--surface);box-shadow:0 0 0 4px var(--accent-soft)}.settings small{line-height:1.5}.settings-card .actions{margin-top:27px;padding-top:20px;border-top:1px solid var(--line)}.settings-card.password-form,.settings-card.sync{border-top:1px solid color-mix(in srgb,var(--line) 70%,transparent)}.password-form>.muted,.sync>p{margin:-7px 0 22px;font-size:12px;line-height:1.6}.sync-log-intro{margin:-7px 0 20px;color:var(--muted);font-size:12px;line-height:1.6}.sync-log-list{display:grid;gap:0;margin:0;padding:0;list-style:none}.sync-log-list li{display:grid;grid-template-columns:max-content minmax(0,1fr);gap:18px;border-top:1px solid var(--line);padding:13px 0}.sync-log-list time{color:var(--muted);font:600 11px var(--mono);white-space:nowrap}.sync-log-list li>div{display:grid;gap:4px;min-width:0}.sync-log-list strong{font-size:12px}.sync-log-list small{color:var(--muted);font-size:11px;line-height:1.5;overflow-wrap:anywhere}.sync-log-list li.failed strong{color:#d20f39}.sync{padding-bottom:29px}.backup-actions{display:flex;flex-wrap:wrap;align-items:end;gap:12px;margin-top:24px}.backup-file{display:grid;flex:1 1 260px;gap:8px;min-width:min(100%,260px);margin:0!important;color:var(--muted);font-size:13px}.backup-file input{padding:10px}.backup>small{display:block;margin-top:12px}.login-card{position:relative;max-width:520px;margin:34px auto 0;padding:clamp(30px,6vw,54px);border:1px solid color-mix(in srgb,var(--line) 70%,transparent);border-radius:20px;background:color-mix(in srgb,var(--surface) 94%,var(--accent-soft));box-shadow:0 18px 45px var(--shadow)}.login-card:before{position:absolute;top:0;left:0;width:100%;height:4px;border-radius:20px 20px 0 0;background:linear-gradient(90deg,var(--accent),var(--pink),transparent);content:""}.login-emblem{display:grid;width:50px;height:50px;margin-bottom:30px;place-items:center;border:1px solid color-mix(in srgb,var(--accent) 32%,var(--line));border-radius:16px;background:var(--accent-soft);color:var(--accent);font-size:25px;font-weight:800;box-shadow:0 0 0 7px color-mix(in srgb,var(--accent) 6%,transparent)}.login-card h1{margin-top:16px;font-family:var(--display-font);font-size:clamp(32px,5vw,48px);letter-spacing:-.05em}.login-intro{max-width:360px;margin:0 0 30px;color:var(--muted);font-size:13px;line-height:1.7}.login-footnote{margin:26px 0 0;opacity:.65}footer{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:9px 14px;margin-top:20px;padding:28px 24px;background:color-mix(in srgb,var(--surface) 52%,transparent)}.footer-source,.footer-title,.footer-links{display:inline-flex;align-items:center}.footer-title{color:var(--ink);font-weight:700}.footer-divider{width:1px;height:13px;background:var(--line)}.footer-links{flex-wrap:wrap;justify-content:center;gap:6px 14px}.footer-links a{font-size:11px;text-decoration:none;transition:color .16s ease,opacity .16s ease}.footer-repo-link{display:inline-flex;align-items:center;gap:5px;font-size:11px;text-decoration:none;transition:color .16s ease,opacity .16s ease}.footer-github-icon{width:14px;height:14px;flex:0 0 auto;fill:currentColor}.footer-links a:hover,.footer-repo-link:hover{opacity:.72}@media(max-width:700px){.site-header{min-height:70px;padding:12px 16px}.brand{gap:9px}.brand-mark{width:35px;height:35px;border-radius:11px}.brand-mark b{font-size:17px}.brand-copy strong{font-size:10px;letter-spacing:.08em}.brand-copy small{font-size:7px}.site-nav{gap:7px}.theme-switch{gap:1px;padding:2px}.theme-switch button{min-height:28px;padding:5px}.theme-switch button span,.nav-divider{display:none}.page{padding-top:34px}.hero{min-height:365px;padding:29px 22px 25px;border-radius:21px}.hero-topline{align-items:flex-start}.hero-stamp{font-size:7px}.hero h1{margin-top:55px;font-size:clamp(36px,11vw,52px)}.title-mark{width:9px;height:9px;margin-left:7px;box-shadow:0 0 0 4px #ffffff20}.hero-description{font-size:14px}.hero-description span{font-size:11px}.search{margin-top:25px;padding-left:12px}.search button{min-width:50px;padding:12px 11px}.search button span:first-child{display:none}.toolbar{align-items:flex-start;gap:13px;margin-top:28px}.toolbar-main>div{align-items:flex-start;flex-direction:column;gap:2px}.toolbar-meta{align-items:flex-end;flex-direction:column;gap:6px;text-align:right}.cover-grid{gap:11px}.cover-caption{min-height:73px;padding:10px 9px 11px}.cover-tile .cover-title{font-size:12px}.cover-caption small{font-size:10px}.cover-index{top:7px;left:7px;padding:3px 4px;font-size:8px}.cover-hover{display:none}.detail-topline{align-items:flex-start}.keyboard-hint{display:none}.release-switch{gap:8px;margin-bottom:31px}.release-cover{position:static;max-width:420px;margin:0 auto;transform:rotate(-.8deg)}.release-info{padding-top:0}.section-heading{align-items:flex-start;flex-direction:column;gap:4px}.section-count{padding-bottom:0}.tracks,.extras{margin-top:64px}.settings-heading{align-items:flex-start;flex-direction:column;margin-bottom:24px}.settings-heading>.secondary{align-self:stretch}.settings-card{padding:23px 18px}.form-heading{margin-bottom:20px}.subsection-heading{margin-top:30px;padding-top:21px}.login-card{margin-top:14px;padding:30px 22px}footer{flex-direction:column;gap:10px;padding:24px 16px}.footer-divider{display:none}.footer-project-divider{display:block;width:32px;height:1px}.footer-links{gap:6px 12px}}.brand-area{flex-shrink:1}.programs-page{width:min(97vw,1800px)}.programs-page.programs-list-mode{width:min(1120px,100%)}.programs-topline{display:flex;align-items:flex-end;justify-content:space-between;gap:28px;margin-bottom:34px}.programs-topline h1{margin:12px 0 8px;font-family:var(--display-font);font-size:clamp(32px,5vw,52px);letter-spacing:-.04em}.programs-intro{max-width:560px;margin:0;color:var(--muted);font-size:13px;line-height:1.7}.program-layout{display:block}.program-calendar-card,.program-admin-list{border:1px solid color-mix(in srgb,var(--line) 70%,transparent);border-radius:17px;background:color-mix(in srgb,var(--surface) 94%,var(--accent-soft));box-shadow:0 9px 25px #1b1d3808}.program-calendar-card{position:relative;overflow:visible;background:linear-gradient(90deg,#2f2f2f 0,#2f2f2f 7.14%,#ed7d95 7.14%,#ed7d95 14.28%,#e7d600 14.28%,#e7d600 21.42%,#01b7ed 21.42%,#01b7ed 28.56%,#485ec6 28.56%,#485ec6 35.7%,#ff5800 35.7%,#ff5800 42.84%,#a664a0 42.84%,#a664a0 49.98%,#d81c2f 49.98%,#d81c2f 57.12%,#d81c2f 57.12%,#d81c2f 64.26%,#84c36e 64.26%,#84c36e 71.4%,#9ca5b9 71.4%,#9ca5b9 78.54%,#37b484 78.54%,#37b484 85.68%,#a99e98 85.68%,#a99e98 92.82%,#f8c8c4 92.82%) 0 0 / 100% 4px no-repeat,color-mix(in srgb,var(--surface) 94%,var(--accent-soft))}.program-calendar-card,.program-admin-list{padding:24px clamp(18px,3vw,30px)}.program-calendar-card{padding:clamp(24px,2vw,36px)}.program-calendar-card .section-heading,.program-admin-list .section-heading{margin-bottom:20px}.program-calendar-note{display:flex;align-items:center;flex-wrap:wrap;gap:9px 18px;margin:-5px 0 19px;color:var(--muted);font-size:11px}.program-calendar-note span{display:inline-flex;align-items:center;gap:6px}.program-calendar-note small{margin-left:auto;color:var(--muted);font-size:10px}.program-cast-filter{position:relative;min-width:230px}.program-cast-filter-details{min-width:0}.program-cast-filter-summary{display:flex;min-height:36px;align-items:center;justify-content:space-between;gap:10px;border:1px solid var(--line);border-radius:8px;padding:7px 10px;background:var(--surface);color:var(--ink);cursor:pointer;font-size:12px;list-style:none}.program-cast-filter-summary::-webkit-details-marker{display:none}.program-cast-filter-summary>span{color:var(--muted);font-size:10px;font-weight:600}.program-cast-filter-summary strong{min-width:0;overflow:hidden;color:var(--ink);font-size:12px;font-weight:600;text-overflow:ellipsis;white-space:nowrap}.program-cast-filter-summary b{color:var(--accent);font-size:16px;line-height:1;transition:transform .16s ease}.program-cast-filter-details[open] .program-cast-filter-summary b{transform:rotate(180deg)}.program-cast-filter-panel{position:absolute;z-index:40;top:calc(100% + 8px);left:0;width:min(560px,calc(100vw - 48px));border:1px solid var(--line);border-radius:12px;padding:12px;background:var(--surface);box-shadow:0 14px 30px #1b1d3828}.program-cast-filter-actions{display:flex;gap:7px;margin-bottom:10px}.program-cast-filter-actions .program-action-button{min-height:30px;padding:5px 9px;font-size:11px}.program-cast-tags{display:flex;align-items:center;flex-wrap:wrap;gap:7px}.program-cast-tag{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--line);border-radius:999px;padding:7px 10px;background:var(--surface-alt);color:var(--muted);box-shadow:none;font-size:11px;font-weight:600}.program-cast-tag:hover:not(:disabled),.program-cast-tag.selected{border-color:color-mix(in srgb,var(--accent) 55%,var(--line));background:var(--accent-soft);color:var(--accent);transform:none}.program-cast-dot{display:inline-block;width:7px;height:7px;flex:0 0 7px;border-radius:50%}.program-view-switch{display:inline-flex;gap:4px;border:1px solid var(--line);border-radius:10px;padding:3px;background:var(--surface-alt)}.program-view-switch button{min-width:52px;border:0;border-radius:7px;padding:7px 10px;background:transparent;color:var(--muted);box-shadow:none;font-size:11px;font-weight:600}.program-view-switch button:hover:not(:disabled),.program-view-switch button.selected{background:var(--surface);color:var(--accent);transform:none}.program-calendar-heading-actions{display:flex;align-items:center;flex-wrap:wrap;justify-content:flex-end;gap:9px}.program-calendar-tools{position:relative;z-index:21;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;margin:-4px 0 15px;border:1px solid color-mix(in srgb,var(--line) 78%,transparent);border-radius:13px;padding:13px 14px;background:color-mix(in srgb,var(--surface-alt) 54%,transparent)}.program-filter-group,.program-calendar-jump{display:flex;align-items:flex-end;flex-wrap:wrap;gap:9px}.program-calendar-filter,.program-calendar-jump label{display:grid;gap:5px;color:var(--muted);font-size:10px;font-weight:600}.program-calendar-filter{min-width:170px}.program-calendar-filter-label{color:var(--muted);font-size:10px;font-weight:600}.program-calendar-filter select,.program-calendar-jump select{min-height:36px;border:1px solid var(--line);border-radius:8px;padding:7px 10px;background:var(--surface);color:var(--ink);font:600 12px var(--display-font);outline:0}.program-calendar-filter select:focus,.program-calendar-jump select:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.program-clear-filter{min-height:36px}.program-calendar-jump{justify-content:flex-end}.program-calendar-jump-label{align-self:center;color:var(--muted);font:600 10px var(--mono);letter-spacing:.06em;white-space:nowrap}.program-calendar-summary{display:flex;align-items:center;flex-wrap:wrap;gap:7px 14px;margin:0 0 15px;color:var(--muted);font-size:11px}.program-calendar-summary strong{color:var(--ink);font-family:var(--display-font);font-size:14px}.program-calendar-summary span+span{border-left:1px solid var(--line);padding-left:14px}.program-calendar-sticky-header{position:sticky;top:82px;z-index:20;display:grid;gap:9px;margin-bottom:12px;padding-top:10px;background:var(--surface)}.program-calendar-sticky-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.program-calendar-sticky-heading strong{color:var(--ink);font-family:var(--display-font);font-size:clamp(20px,1.4vw,26px);letter-spacing:-.025em}.program-calendar-sticky-nav{display:inline-flex;gap:6px}.program-calendar-sticky-nav button{min-height:34px;border:1px solid var(--line);border-radius:9px;padding:7px 11px;background:var(--surface);color:var(--ink);box-shadow:none;font-size:12px}.program-calendar-sticky-nav button:hover{border-color:var(--accent);background:var(--accent-soft);color:var(--accent);transform:none}.program-calendar-weekdays{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));overflow:hidden;border:1px solid var(--line);border-radius:10px;background:var(--surface-alt)}.program-calendar-weekdays span{padding:clamp(9px,.55vw,12px) 5px;border-right:1px solid var(--line);color:var(--muted);font-size:clamp(11px,.66vw,13px);font-weight:600;text-align:center}.program-calendar-weekdays span:last-child{border-right:0}.program-list-view{border-top:1px solid var(--line);padding-top:18px}.program-list-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:18px}.program-list-heading h3{margin:7px 0 0;font-family:var(--display-font);font-size:clamp(20px,2.5vw,28px);letter-spacing:-.035em}.program-list-date-group+.program-list-date-group{margin-top:21px}.program-list-date{display:flex;align-items:baseline;justify-content:space-between;gap:12px;border-bottom:1px solid var(--line);padding:0 3px 8px}.program-list-date strong{font-family:var(--display-font);font-size:15px}.program-list-date span{color:var(--muted);font-size:10px}.program-list-event{position:relative;display:grid;grid-template-columns:58px minmax(0,1fr) auto 18px;gap:13px;width:100%;align-items:center;border-bottom:1px solid color-mix(in srgb,var(--line) 72%,transparent);border-radius:0;padding:13px 3px 13px 14px;background:transparent;color:var(--ink);text-align:left;box-shadow:none}.program-list-event:hover{background:var(--accent-soft);transform:none}.program-list-event.upcoming{filter:saturate(.58);opacity:.7}.program-list-event.cancelled{color:var(--muted);text-decoration:line-through}.program-list-time{color:var(--accent);font:600 12px var(--mono);font-variant-numeric:tabular-nums}.program-list-main{display:grid;min-width:0;gap:4px}.program-list-main strong{overflow-wrap:anywhere;font-size:13px;line-height:1.4}.program-list-main small{color:var(--muted);font-size:10px}.program-list-cast{display:flex;justify-content:flex-end;gap:4px}.program-list-cast-line{position:absolute;top:13px;bottom:13px;left:0;display:flex;width:6px;flex-direction:column;overflow:hidden;border-radius:0;background:color-mix(in srgb,var(--ink) 18%,transparent)}.program-list-cast-line i{min-height:0;flex:1 1 0;background:var(--cast-color)}.program-list-cast i{display:block;width:8px;height:8px;border-radius:50%;background:var(--cast-color);box-shadow:0 0 0 2px var(--surface)}.program-list-arrow{color:var(--accent);font-size:16px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.program-legend-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:#556d8e}.program-legend-dot.official,.program-legend-dot.personal{width:18px;height:5px;border-radius:999px}.program-legend-dot.personal{background:#5a826f}.program-legend-dot.live{background:#3b9d5f}.program-legend-dot.recorded{background:#8a8f9f}.program-legend-dot.cancelled{border:1px dashed var(--muted);background:transparent}.program-legend-state{display:inline-block;width:15px;height:9px;border:1px solid var(--muted);border-radius:3px;background:var(--surface-alt);opacity:.72}.program-legend-state.aired{border-width:2px;border-color:var(--accent);background:var(--surface);opacity:1}.program-calendar{--fc-event-text-color: var(--ink);--fc-border-color: color-mix(in srgb, var(--line) 72%, transparent);--fc-button-text-color: var(--ink);--fc-button-bg-color: var(--surface-alt);--fc-button-border-color: var(--line);--fc-button-hover-text-color: var(--accent);--fc-button-hover-bg-color: var(--accent-soft);--fc-button-hover-border-color: var(--accent);--fc-button-active-bg-color: var(--accent);--fc-button-active-border-color: var(--accent);--fc-today-bg-color: var(--accent-soft);--fc-page-bg-color: transparent;--fc-neutral-bg-color: color-mix(in srgb, var(--surface-alt) 58%, transparent)}.program-calendar .fc{color:var(--ink);font-family:var(--display-font)}.program-calendar .fc-toolbar-title{font-family:var(--display-font);font-size:clamp(20px,1.4vw,26px);letter-spacing:-.025em}.program-calendar .fc-daygrid-day-number{padding:clamp(8px,.5vw,11px) clamp(9px,.6vw,12px);color:var(--muted);font-size:clamp(12px,.72vw,14px);text-decoration:none}.program-calendar .fc-scrollgrid-section-header{display:none}.program-calendar .fc-scrollgrid{overflow:visible;border:1px solid var(--fc-border-color);border-radius:12px}.program-calendar .fc-daygrid-day-frame{min-height:clamp(112px,7vw,148px)}.program-calendar .fc-daygrid-day.fc-day-today{background:color-mix(in srgb,var(--accent-soft) 70%,transparent)}.program-calendar .fc-daygrid-day.fc-day-other{background:color-mix(in srgb,var(--surface-alt) 34%,transparent)}.program-calendar .fc-event{min-height:clamp(32px,2.15vw,42px);border:1px solid color-mix(in srgb,var(--line) 78%,transparent);border-radius:14px;padding:clamp(6px,.45vw,9px) clamp(7px,.5vw,10px);background:color-mix(in srgb,var(--surface) 90%,var(--program-event-color, var(--accent)));color:var(--ink);cursor:pointer;font-size:clamp(11px,.72vw,14px);line-height:1.35;box-shadow:none;white-space:normal}.program-calendar .fc-daygrid-event,.program-calendar .fc-event-main,.program-calendar .fc-event-title,.program-calendar .fc-event-time{color:var(--fc-event-text-color);overflow:visible;white-space:normal}.program-calendar .program-event-personal{border-color:color-mix(in srgb,var(--line) 78%,transparent);color:var(--ink)}.program-calendar .program-event-official{border-color:color-mix(in srgb,var(--line) 78%,transparent)}.program-calendar .program-event-upcoming{border-color:color-mix(in srgb,var(--muted) 70%,var(--line));box-shadow:none;filter:saturate(.58);opacity:.7}.program-calendar .program-event-aired{border-color:color-mix(in srgb,var(--accent) 38%,var(--line));filter:none;opacity:1}.program-calendar .program-event-upcoming .program-event-color-strip{opacity:.68}.program-calendar .fc-event-main{min-width:0;padding:0}.program-calendar .program-event-content{display:grid;min-width:0;grid-template-columns:8px minmax(0,1fr);column-gap:6px}.program-calendar .program-event-markers{display:grid;grid-template-rows:8px minmax(0,1fr);width:8px;min-height:0;flex:0 0 8px;align-self:stretch;gap:5px;justify-items:center}.program-calendar .program-event-details{display:grid;min-width:0;grid-template-rows:8px auto;gap:5px}.program-calendar .program-event-delivery{align-self:start}.program-calendar .program-event-category-marker{align-self:stretch}.program-calendar .program-event-topline{display:flex;min-width:0;align-items:center;gap:6px}.program-calendar .program-event-delivery{display:block;width:8px;height:8px;flex:0 0 8px;border:1px solid currentColor;border-radius:50%}.program-calendar .program-event-delivery.live{color:#2b7a45;background:#3b9d5f}.program-calendar .program-event-delivery.recorded{color:#6c6f85;background:#8a8f9f}.program-calendar .program-event-category-marker{display:block;width:5px;min-height:17px;border-radius:999px}.program-calendar .program-event-category-marker.official{background:#5979ad}.program-calendar .program-event-category-marker.personal{background:#5b9478}.program-calendar .program-event-color-strip{display:flex;width:100%;height:8px;min-width:0;overflow:hidden;border-radius:999px;background:color-mix(in srgb,var(--ink) 18%,transparent)}.program-calendar .program-event-color-strip.empty{background:transparent}.program-calendar .program-event-color-segment{min-width:0;flex:1 1 0}.program-calendar .program-event-label{display:block;min-width:0;overflow-wrap:anywhere}.program-calendar .program-event-time{color:var(--muted);font-family:var(--mono);font-size:clamp(10px,.65vw,12px)}.program-calendar .program-event-cancelled{border:1px dashed var(--muted);background:color-mix(in srgb,var(--surface-alt) 82%,transparent);color:var(--muted);box-shadow:none;filter:grayscale(1);opacity:.72;text-decoration:line-through}.program-calendar .program-event-cancelled .program-event-color-strip{opacity:.42;filter:grayscale(1)}.program-calendar .program-event-cancelled .program-event-time,.program-calendar .program-event-cancelled .fc-event-main,.program-calendar .program-event-cancelled .fc-event-title{color:var(--muted)}.program-calendar .fc-daygrid-event{margin:clamp(3px,.25vw,5px) clamp(7px,.5vw,11px)}.program-calendar .fc-daygrid-day-events{margin-right:8px;margin-left:8px}.program-kind{color:var(--accent);font:600 10px var(--mono);letter-spacing:.08em}.program-kind-official,.program-type-official{color:#556d8e}.program-kind-personal,.program-type-personal{color:#5a826f}.program-type-label{font-size:11px}.program-toast{position:fixed;z-index:100;top:max(90px,calc(90px + env(safe-area-inset-top)));left:50%;width:min(560px,calc(100vw - 28px));margin:0;transform:translate(-50%);background:var(--surface);box-shadow:0 14px 32px #1b1d3830;pointer-events:none}.program-toast.error,.program-toast.success{padding:13px 17px}.program-subprogram-key{display:inline-flex;align-items:center;border:1px solid color-mix(in srgb,var(--accent) 28%,var(--line));border-radius:999px;padding:4px 8px;color:var(--accent);font-size:10px;line-height:1}.program-status{display:inline-flex;align-items:center;width:fit-content;border:1px solid var(--line);border-radius:999px;padding:4px 8px;color:var(--muted);font-size:10px;line-height:1}.program-status.status-ongoing{border-color:color-mix(in srgb,var(--accent) 35%,var(--line));background:var(--accent-soft);color:var(--accent)}.program-status.status-completed{background:var(--surface-alt)}.program-update-status{display:inline-flex;align-items:center;border:1px solid color-mix(in srgb,#d20f39 42%,var(--line));border-radius:999px;padding:4px 8px;color:#d20f39;font-size:10px;line-height:1}.program-description{margin:0 0 22px;color:var(--muted);font-size:13px;line-height:1.7;white-space:pre-line}.program-meta{display:grid;grid-template-columns:max-content 1fr;gap:9px 18px;margin:0;font-size:13px}.program-meta dt{color:var(--muted)}.program-meta dd{margin:0}.program-meta-link{color:var(--accent);font-weight:600;text-decoration:none}.program-meta-link:hover{text-decoration:underline;text-underline-offset:3px}.program-episode-links{grid-column:1 / -1;display:flex;flex-wrap:wrap;gap:5px 14px;font-size:11px}.program-people{white-space:pre-line}.program-people-tags{display:flex;flex-wrap:wrap;gap:6px}.program-people-tags span{border-radius:999px;padding:5px 8px;background:var(--accent-soft);color:var(--accent);font-size:11px}.program-period-summary{display:grid;gap:8px;margin:0;padding:0;list-style:none}.program-period-summary li{display:grid;gap:3px;border-left:2px solid var(--accent);padding-left:9px}.program-period-summary strong{font-size:12px}.program-period-summary small{color:var(--muted);font-size:10px}.program-drawer-backdrop{position:fixed;z-index:39;top:0;right:0;bottom:0;left:0;background:#1b1d3855;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.program-drawer{position:fixed;z-index:40;top:0;bottom:0;left:0;display:flex;width:min(430px,calc(100vw - 24px));flex-direction:column;overflow:hidden;border-right:1px solid var(--line);background:var(--surface);box-shadow:18px 0 45px #1b1d3840}.program-drawer-backdrop-enter-active{animation:program-drawer-backdrop-enter .22s ease-out both}.program-drawer-backdrop-leave-active{animation:program-drawer-backdrop-enter .18s ease-in reverse both}.program-drawer-panel-enter-active{animation:program-drawer-enter .26s cubic-bezier(.2,.75,.2,1) both}.program-drawer-panel-leave-active{animation:program-drawer-enter .22s cubic-bezier(.4,0,.8,.3) reverse both}@keyframes program-drawer-backdrop-enter{0%{opacity:0}to{opacity:1}}@keyframes program-drawer-enter{0%{opacity:0;transform:translate(-100%)}to{opacity:1;transform:translate(0)}}.program-drawer-header{display:flex;align-items:center;justify-content:space-between;padding:22px 24px;border-bottom:1px solid var(--line)}.program-drawer-header .icon-button{width:32px;height:32px;font-size:23px;line-height:1}.program-drawer-body{overflow-y:auto;padding:30px 24px 44px}.program-drawer-links{display:flex;align-items:center;flex-wrap:wrap;gap:10px}.program-edit-access-notice{display:flex;align-items:center;flex-wrap:wrap;gap:4px 10px;margin:12px 0 0;border:1px solid color-mix(in srgb,var(--accent) 28%,var(--line));border-radius:10px;padding:10px 12px;background:color-mix(in srgb,var(--accent-soft) 48%,var(--surface));color:var(--muted);font-size:11px;line-height:1.55}.program-drawer-tags,.program-admin-tags{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.program-drawer h2{margin:15px 0 20px;font-family:var(--display-font);font-size:clamp(27px,5vw,38px);letter-spacing:-.045em;line-height:1.12}.program-occurrence-card{display:grid;gap:5px;margin-bottom:26px;padding:17px 18px;border-left:3px solid var(--accent);border-radius:0 12px 12px 0;background:var(--accent-soft)}.program-occurrence-card.cancelled{border-left-color:var(--muted);background:var(--surface-alt);color:var(--muted)}.program-occurrence-card span,.program-occurrence-card p{margin:0;color:var(--muted);font-size:11px}.program-occurrence-card strong{font-size:20px}.program-occurrence-card b{color:var(--accent);font:600 12px var(--mono)}.program-occurrence-card p{margin-top:5px;line-height:1.55}.program-guest-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:1px}.program-guest-tags span{border-radius:999px;padding:4px 7px;background:var(--surface);color:var(--accent);font-size:10px}.program-admin-page .programs-topline{margin-bottom:24px}.program-admin-page{width:min(1120px,100%);display:block}.program-admin-page>.programs-topline{margin-bottom:24px}.program-panel-nav{display:grid;grid-template-columns:52px minmax(0,1fr) 52px;align-items:stretch;gap:14px;margin-bottom:18px;border:1px solid color-mix(in srgb,var(--line) 74%,transparent);border-radius:17px;padding:10px;background:color-mix(in srgb,var(--surface) 94%,var(--accent-soft));box-shadow:0 9px 25px #1b1d3808}.program-panel-arrow{display:grid;min-height:74px;place-items:center;border:1px solid var(--line);border-radius:12px;padding:0;background:transparent;color:var(--accent);font-size:25px;line-height:1;box-shadow:none}.program-panel-arrow:hover:not(:disabled){border-color:var(--accent);background:var(--accent-soft);transform:none}.program-panel-arrow:disabled{cursor:not-allowed;opacity:.32}.program-panel-context{display:grid;align-content:center;gap:5px;min-width:0;padding:2px 6px}.program-panel-context strong{font-family:var(--display-font);font-size:clamp(19px,2.5vw,25px);letter-spacing:-.025em}.program-panel-context small{max-width:700px;color:var(--muted);font-size:12px;line-height:1.55}.program-panel-meta{display:flex;align-items:center;justify-content:space-between;gap:14px}.program-panel-steps{display:flex;gap:5px}.program-panel-steps span{width:25px;height:3px;border-radius:999px;background:var(--line)}.program-panel-steps span.active{background:var(--accent)}.program-panel-content{width:100%}.program-admin-page>.program-editor,.program-admin-page>.program-occurrence-editor,.program-admin-page>.program-admin-list{width:100%;margin-bottom:0;position:static}.program-admin-list.program-cast-filter-open,.program-readonly-list-card.program-cast-filter-open{position:relative;z-index:29}.program-admin-list .program-cast-filter-panel,.program-readonly-list-card .program-cast-filter-panel{z-index:20}.program-admin-placeholder{min-height:280px;border:1px dashed color-mix(in srgb,var(--line) 80%,transparent);border-radius:17px;padding:clamp(28px,5vw,56px);background:color-mix(in srgb,var(--surface) 74%,var(--accent-soft))}.program-admin-placeholder h2{margin:15px 0 10px;font-family:var(--display-font);font-size:clamp(25px,3vw,36px);letter-spacing:-.04em}.program-admin-placeholder p{max-width:440px;margin:0;color:var(--muted);font-size:13px;line-height:1.7}.program-editor{margin-bottom:18px}.program-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 18px}.program-form-grid label,.program-form-field{display:block;margin:10px 0 16px;color:var(--ink);font-size:13px;font-weight:600}.program-form-grid input,.program-form-grid select,.program-form-grid textarea,.occurrence-form input,.occurrence-form textarea,.custom-person-entry input{width:100%;border:1px solid var(--line);border-radius:10px;padding:13px 14px;background:var(--paper);color:var(--ink);outline:0;transition:border-color .16s ease,box-shadow .16s ease,background .16s ease}.program-form-grid input,.program-form-grid select{min-height:46px;font:inherit;line-height:1.35}.program-readonly-control{display:flex;min-height:46px;align-items:center;border:1px solid var(--line);border-radius:10px;padding:13px 14px;background:var(--surface-alt);color:var(--ink);font:inherit;line-height:1.35}.program-form-grid textarea,.occurrence-form textarea{min-height:72px;resize:vertical}.program-form-grid input:focus,.program-form-grid select:focus,.program-form-grid textarea:focus,.occurrence-form input:focus,.occurrence-form textarea:focus,.custom-person-entry input:focus{border-color:var(--accent);background:var(--surface);box-shadow:0 0 0 4px var(--accent-soft)}.program-form-grid input[type=date],.program-form-grid input[type=time],.occurrence-form input[type=date],.occurrence-form input[type=time]{min-height:46px;accent-color:var(--accent);-moz-appearance:none;appearance:none;-webkit-appearance:none;color-scheme:light;font-family:var(--mono);font-variant-numeric:tabular-nums;letter-spacing:.01em;padding-right:43px}html[data-theme=mocha] .program-form-grid input[type=date],html[data-theme=mocha] .program-form-grid input[type=time],html[data-theme=mocha] .occurrence-form input[type=date],html[data-theme=mocha] .occurrence-form input[type=time]{color-scheme:dark}@media(prefers-color-scheme:dark){html[data-theme=system] .program-form-grid input[type=date],html[data-theme=system] .program-form-grid input[type=time],html[data-theme=system] .occurrence-form input[type=date],html[data-theme=system] .occurrence-form input[type=time]{color-scheme:dark}}.program-form-grid input[type=date]::-webkit-calendar-picker-indicator,.program-form-grid input[type=time]::-webkit-calendar-picker-indicator,.occurrence-form input[type=date]::-webkit-calendar-picker-indicator,.occurrence-form input[type=time]::-webkit-calendar-picker-indicator{margin-right:2px;border-radius:5px;padding:5px;background:var(--accent-soft);cursor:pointer;opacity:.8}.program-form-grid input[type=date]::-webkit-datetime-edit,.program-form-grid input[type=time]::-webkit-datetime-edit,.occurrence-form input[type=date]::-webkit-datetime-edit,.occurrence-form input[type=time]::-webkit-datetime-edit{padding:0}.program-form-grid input[type=date]::-webkit-datetime-edit-text,.program-form-grid input[type=time]::-webkit-datetime-edit-text,.occurrence-form input[type=date]::-webkit-datetime-edit-text,.occurrence-form input[type=time]::-webkit-datetime-edit-text{padding:0 3px;color:var(--muted)}.program-form-grid input[type=date]::-webkit-datetime-edit-month-field,.program-form-grid input[type=date]::-webkit-datetime-edit-day-field,.program-form-grid input[type=date]::-webkit-datetime-edit-year-field,.program-form-grid input[type=time]::-webkit-datetime-edit-hour-field,.program-form-grid input[type=time]::-webkit-datetime-edit-minute-field,.occurrence-form input[type=date]::-webkit-datetime-edit-month-field,.occurrence-form input[type=date]::-webkit-datetime-edit-day-field,.occurrence-form input[type=date]::-webkit-datetime-edit-year-field,.occurrence-form input[type=time]::-webkit-datetime-edit-hour-field,.occurrence-form input[type=time]::-webkit-datetime-edit-minute-field{border-radius:4px;padding:2px 3px;color:var(--ink)}.program-form-grid input[type=date]::-webkit-datetime-edit-month-field:focus,.program-form-grid input[type=date]::-webkit-datetime-edit-day-field:focus,.program-form-grid input[type=date]::-webkit-datetime-edit-year-field:focus,.program-form-grid input[type=time]::-webkit-datetime-edit-hour-field:focus,.program-form-grid input[type=time]::-webkit-datetime-edit-minute-field:focus,.occurrence-form input[type=date]::-webkit-datetime-edit-month-field:focus,.occurrence-form input[type=date]::-webkit-datetime-edit-day-field:focus,.occurrence-form input[type=date]::-webkit-datetime-edit-year-field:focus,.occurrence-form input[type=time]::-webkit-datetime-edit-hour-field:focus,.occurrence-form input[type=time]::-webkit-datetime-edit-minute-field:focus{background:var(--accent-soft);color:var(--accent)}.occurrence-form input[readonly]{cursor:not-allowed;opacity:.78;background:var(--surface-alt)}.occurrence-form label small{display:block;margin-top:6px;color:var(--muted);font-size:11px;font-weight:400;line-height:1.5}.program-date-picker,.dp__theme_light,.dp__theme_dark{--dp-background-color: var(--paper);--dp-text-color: var(--ink);--dp-hover-color: var(--accent-soft);--dp-hover-text-color: var(--ink);--dp-hover-icon-color: var(--accent);--dp-primary-color: var(--accent);--dp-primary-text-color: var(--accent-ink);--dp-secondary-color: var(--muted);--dp-border-color: var(--line);--dp-menu-border-color: var(--line);--dp-border-color-hover: var(--accent);--dp-border-color-focus: var(--accent);--dp-icon-color: var(--accent);--dp-disabled-color: var(--surface-alt);--dp-disabled-color-text: var(--muted);--dp-font-family: var(--display-font);--dp-font-size: 13px;--dp-border-radius: 10px;--dp-cell-border-radius: 8px;--dp-input-padding: 11px 38px 11px 45px;--dp-input-icon-padding: 45px;--dp-input-not-clearable-padding: 14px;--dp-menu-padding: 10px}html[data-theme=mocha] .program-date-picker,html[data-theme=mocha] .dp__theme_light,html[data-theme=mocha] .dp__theme_dark{--dp-background-color: var(--surface);--dp-text-color: var(--ink);--dp-hover-color: var(--accent-soft);--dp-hover-text-color: var(--ink);--dp-hover-icon-color: var(--accent);--dp-primary-color: var(--accent);--dp-primary-text-color: var(--accent-ink);--dp-secondary-color: var(--muted);--dp-border-color: var(--line);--dp-menu-border-color: var(--line);--dp-border-color-hover: var(--accent);--dp-border-color-focus: var(--accent);--dp-icon-color: var(--accent);--dp-disabled-color: var(--surface-alt);--dp-disabled-color-text: var(--muted)}@media(prefers-color-scheme:dark){html[data-theme=system] .program-date-picker,html[data-theme=system] .dp__theme_light,html[data-theme=system] .dp__theme_dark{--dp-background-color: var(--surface);--dp-text-color: var(--ink);--dp-hover-color: var(--accent-soft);--dp-hover-text-color: var(--ink);--dp-hover-icon-color: var(--accent);--dp-primary-color: var(--accent);--dp-primary-text-color: var(--accent-ink);--dp-secondary-color: var(--muted);--dp-border-color: var(--line);--dp-menu-border-color: var(--line);--dp-border-color-hover: var(--accent);--dp-border-color-focus: var(--accent);--dp-icon-color: var(--accent);--dp-disabled-color: var(--surface-alt);--dp-disabled-color-text: var(--muted)}}.program-date-picker{width:100%}.program-date-picker .dp__input_wrap{width:100%;box-sizing:border-box}.program-date-picker .dp__input{min-height:46px;font-family:var(--mono);font-variant-numeric:tabular-nums;letter-spacing:.01em}.program-date-picker .dp__input_icon_pad{padding-inline-start:45px!important}.program-date-picker .dp__input:hover:not(.dp__input_focus),.program-date-picker .dp__input_focus{box-shadow:0 0 0 4px var(--accent-soft)}.program-date-picker .dp__input_icon{color:var(--accent)}.program-date-picker .dp__input_icons{width:16px;height:16px}.program-date-picker .dp__disabled{cursor:not-allowed;opacity:.78}.dp__menu{border:1px solid var(--line)!important;border-radius:14px!important;box-shadow:0 18px 45px #1b1d3838!important;font-family:var(--display-font)}.dp__menu .dp--header-wrap>.dp__month_year_wrap{display:grid;grid-template-columns:var(--dp-month-year-row-button-size) minmax(0,1fr) var(--dp-month-year-row-button-size);align-items:center;column-gap:8px;width:100%}.dp__menu .dp--header-wrap>.dp__month_year_wrap>.dp--arrow-btn-nav{display:flex;width:var(--dp-month-year-row-button-size);height:var(--dp-month-year-row-button-size);min-width:0;align-items:center;justify-content:center;margin:0;padding:0;border:0;border-radius:8px;background:transparent;color:var(--accent);line-height:1}.dp__menu .dp--header-wrap>.dp__month_year_wrap>.dp--arrow-btn-nav:hover:not(:disabled){transform:none}.dp__menu .dp--header-wrap>.dp__month_year_wrap>.dp--arrow-btn-nav .dp__inner_nav{width:100%;height:100%;border:1px solid var(--line);border-radius:8px}.dp__menu .dp--header-wrap>.dp__month_year_wrap>.dp__month_year_wrap{display:flex;width:auto;min-width:0;height:var(--dp-month-year-row-height);align-items:center;justify-content:center;gap:2px}.dp__menu .dp--header-wrap .dp__month_year_select{width:auto;min-width:0;height:var(--dp-month-year-row-height);flex:0 1 auto;margin:0;padding:0 8px;border:0;background:transparent;color:var(--dp-text-color);line-height:1}.dp__menu .dp--header-wrap .dp__month_year_select:hover:not(:disabled){transform:none}.dp__calendar_header_item,.dp__calendar_header_separator{color:var(--muted)}.dp__cell_inner{border-radius:var(--dp-cell-border-radius)}.dp__today{border-color:var(--accent)}.dp__action_button,.dp__selection_preview{color:var(--ink)}.dp__action_button{min-height:34px;border-radius:8px;padding:7px 11px;font:inherit;font-size:13px;line-height:1.35}.dp__action_select{border-radius:8px;background:var(--accent);color:var(--accent-ink)}.dp__time_display{color:var(--ink);font-family:var(--mono)}.dp__time_col_reg{color:var(--ink)}.program-field-wide{grid-column:1 / -1}.occurrence-link-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 18px}.occurrence-source-field{grid-column:1 / -1}.occurrence-link-fields>small{grid-column:1 / -1;display:block;margin-top:6px;color:var(--muted);font-size:11px;font-weight:400;line-height:1.5}.program-field-label{display:block;margin-bottom:9px}.program-form-grid small{display:block;margin-top:6px;color:var(--muted);font-size:11px;font-weight:400;line-height:1.5}.choice-tags,.people-picker{display:flex;align-items:center;flex-wrap:wrap;gap:7px}.choice-tags button,.person-tag{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--line);border-radius:999px;padding:8px 11px;background:var(--surface);color:var(--muted);box-shadow:none;font-size:11px;font-weight:600}.choice-tags button:hover:not(:disabled),.person-tag:hover:not(:disabled){border-color:var(--accent);background:var(--accent-soft);color:var(--accent);transform:none}.choice-tags button.selected,.person-tag.selected{border-color:color-mix(in srgb,var(--accent) 55%,var(--line));background:var(--accent-soft);color:var(--accent)}.program-frequency-monthly{display:inline-flex;align-items:center;gap:3px;border:1px solid var(--line);border-radius:999px;padding:3px;background:var(--surface-alt)}.program-frequency-monthly button{border-color:transparent}.weekday-tags button{min-width:49px}.week-tags button{font-size:10px}.people-picker{align-items:flex-start}.custom-person-tag{display:inline-flex;align-items:center;gap:5px}.custom-person-tag button{padding:0;background:transparent;color:inherit;box-shadow:none;font-size:15px;line-height:.8}.custom-person-entry{display:flex;gap:8px;margin-top:10px}.custom-person-entry input{flex:1;min-width:0}.custom-person-entry button{flex-shrink:0;padding:7px 11px}.inline-number{display:flex;align-items:center;gap:9px}.inline-number input{width:110px}.inline-number span{color:var(--muted);font-size:12px;font-weight:400;white-space:nowrap}.program-schedule{margin-top:20px;border-top:1px solid var(--line)}.program-schedule .subsection-heading{margin-top:0}.period-help{margin:-8px 0 19px;font-size:12px;line-height:1.6}.program-period-card{margin:14px 0;border:1px solid color-mix(in srgb,var(--line) 75%,transparent);border-radius:13px;padding:16px 17px 7px;background:color-mix(in srgb,var(--surface) 72%,var(--paper))}.program-period-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:4px}.program-period-heading>div{display:grid;gap:5px}.program-period-number{color:var(--accent);font:600 10px var(--mono);letter-spacing:.08em;text-transform:uppercase}.program-period-heading strong{font-size:14px}.add-period-button{margin-top:7px;padding:9px 13px;font-size:11px}.program-admin-list{margin-bottom:40px}.program-admin-item{position:relative;display:flex;align-items:stretch;flex-direction:column;gap:11px;border-top:1px solid var(--line);padding:17px 0 17px 14px}.program-admin-cast-line{position:absolute;top:17px;bottom:17px;left:0;display:flex;width:6px;flex-direction:column;overflow:hidden;border-radius:0;background:color-mix(in srgb,var(--ink) 18%,transparent)}.program-admin-cast-line i{min-height:0;flex:1 1 0;background:var(--cast-color)}.program-admin-item.is-subprogram{padding-left:24px;background:linear-gradient(90deg,var(--accent-soft),transparent 38%)}.program-admin-item:first-of-type{border-top:0}.program-admin-tags{color:var(--muted);font-size:11px}.program-admin-item h3{margin:7px 0 4px;font-size:16px}.program-admin-item p{margin:0;color:var(--muted);font-size:12px}.program-admin-actions,.settings-heading-actions{display:flex;flex-wrap:wrap;gap:9px}.program-admin-actions{align-items:center;border-top:1px solid color-mix(in srgb,var(--line) 72%,transparent);padding-top:10px}.program-action-button{display:inline-flex;align-items:center;justify-content:center;min-height:34px;border-radius:999px;padding:7px 11px;font-size:13px;line-height:1.35;text-decoration:none}.archive-landing-page{width:min(1240px,100%)}.archive-landing-intro{max-width:760px;margin:0 auto 42px;text-align:center}.archive-landing-intro h1{margin:14px 0;font-family:var(--display-font);font-size:clamp(38px,6vw,68px);letter-spacing:-.055em;line-height:1.08;text-wrap:balance}.archive-landing-intro>p:last-child{margin:0;color:var(--muted);font-size:14px;line-height:1.7}.archive-choice-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.archive-choice{--choice-accent: var(--accent);position:relative;display:flex;min-height:342px;flex-direction:column;overflow:hidden;border:1px solid color-mix(in srgb,var(--choice-accent) 28%,var(--line));border-radius:30px;padding:clamp(24px,3vw,34px);background:color-mix(in srgb,var(--surface) 90%,var(--choice-accent));color:inherit;isolation:isolate;text-decoration:none;box-shadow:0 12px 30px #1b1d3810;transition:border-color .22s ease,box-shadow .22s ease,transform .22s ease}.archive-choice:before{position:absolute;right:-58px;bottom:-66px;z-index:-1;width:220px;height:220px;border:1px solid color-mix(in srgb,var(--choice-accent) 32%,transparent);border-radius:50%;background:color-mix(in srgb,var(--choice-accent) 20%,transparent);content:"";transition:transform .26s ease}.archive-choice:after{position:absolute;top:0;right:0;left:0;height:4px;background:var(--choice-accent);content:""}.archive-choice>*{position:relative;z-index:1}.archive-choice:hover{border-color:color-mix(in srgb,var(--choice-accent) 70%,var(--line));box-shadow:0 20px 42px color-mix(in srgb,var(--choice-accent) 18%,transparent);transform:translateY(-8px)}.archive-choice:hover:before{transform:scale(1.15)}.archive-choice-index{color:var(--choice-accent);font:600 11px var(--mono);letter-spacing:.12em}.archive-choice-content{margin-top:auto}.archive-choice-content .eyebrow{color:var(--choice-accent)}.archive-choice-content h2{margin:13px 0 10px;font-family:var(--display-font);font-size:clamp(27px,3vw,38px);letter-spacing:-.045em;line-height:1.1}.archive-choice-content>p:last-child{max-width:245px;margin:0;color:var(--muted);font-size:13px;line-height:1.7}.archive-choice-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:28px;border-top:1px solid color-mix(in srgb,var(--choice-accent) 24%,var(--line));padding-top:14px;color:var(--choice-accent);font-size:12px;font-weight:600}.archive-choice-footer b{font-size:20px;font-weight:400;line-height:1;transition:transform .22s ease}.archive-choice:hover .archive-choice-footer b{transform:translate(3px,-3px)}.archive-choice-music{--choice-accent: #b76582}.archive-choice-program{--choice-accent: #5979ad}.archive-choice-illustration{--choice-accent: #8a8f9f}.archive-choice.is-planned{cursor:not-allowed;opacity:.72}.archive-choice.is-planned:hover{opacity:.9}.program-admin-list-footer{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:-8px 0 18px}.program-admin-list-tools{display:flex;align-items:flex-end;flex-wrap:wrap;justify-content:flex-end;gap:10px}.program-admin-search,.program-readonly-search{display:grid;gap:5px;color:var(--muted);font-size:10px;font-weight:600}.program-admin-search{min-width:210px}.program-admin-search input,.program-readonly-search input{min-height:36px;border:1px solid var(--line);border-radius:8px;padding:7px 10px;background:var(--surface);color:var(--ink);font-size:12px;outline:0}.program-admin-search input:focus,.program-readonly-search input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.program-admin-cast-filter{min-width:210px}.program-readonly-tools{display:grid;grid-template-columns:minmax(0,1fr) minmax(210px,230px);gap:14px;margin:-4px 0 20px;border:1px solid color-mix(in srgb,var(--line) 78%,transparent);border-radius:13px;padding:13px 14px;background:color-mix(in srgb,var(--surface-alt) 54%,transparent)}.program-archive-page{width:min(1120px,100%)}.program-readonly-cast-filter{min-width:0}.program-readonly-list{display:grid}.program-readonly-item{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:18px;border-top:1px solid var(--line);padding:18px 0 18px 14px;color:inherit;text-decoration:none;transition:background .16s ease,padding .16s ease}.program-readonly-item:hover{padding-left:18px;background:linear-gradient(90deg,var(--accent-soft),transparent 54%)}.program-readonly-item h3{margin:7px 0 4px;font-size:16px}.program-readonly-item p{margin:0;color:var(--muted);font-size:12px}.program-readonly-arrow{padding-right:4px;color:var(--accent);font-size:22px}.program-readonly-detail-card>.section-heading h2{max-width:720px}.program-readonly-detail-card{overflow:hidden}.program-readonly-actions{display:flex;align-items:center;flex-wrap:wrap;justify-content:flex-end;gap:9px}.program-readonly-list-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px}.program-readonly-detail-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(250px,.85fr);gap:30px;border-bottom:1px solid var(--line);padding-bottom:28px}.program-readonly-periods{border-left:2px solid var(--accent);padding-left:18px}.program-readonly-periods>.eyebrow{margin-bottom:13px}.program-readonly-occurrences{margin-top:28px}.program-readonly-occurrences>.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:10px}.program-readonly-occurrence-actions{display:flex;align-items:center;flex-wrap:wrap;justify-content:flex-end;gap:10px}.program-readonly-occurrences h3{margin:8px 0 0;font-size:23px}.program-readonly-episodes{display:grid}.program-readonly-episode{display:grid;grid-template-columns:minmax(0,1fr) max-content;gap:5px 18px;border-top:1px solid var(--line);padding:14px 0}.program-readonly-episode-heading{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.program-readonly-episode-heading strong{color:var(--accent);font-size:14px}.program-readonly-episode time{color:var(--muted);font:600 11px var(--mono);text-align:right;white-space:nowrap}.program-readonly-episode>small{color:var(--muted);font-size:11px}.program-readonly-episode>p{grid-column:1 / -1;margin:4px 0 0;color:var(--muted);font-size:12px;line-height:1.6}.program-readonly-episode.cancelled{background:linear-gradient(90deg,var(--surface-alt),transparent 70%)}.program-readonly-episode .status-cancelled{color:var(--muted)}.program-readonly-episode .status-aired{border-color:color-mix(in srgb,var(--accent) 48%,var(--line));background:var(--accent-soft);color:var(--accent)}.program-readonly-episode .status-upcoming{border-color:color-mix(in srgb,var(--muted) 55%,var(--line));background:var(--surface-alt);color:var(--muted)}.program-admin-list-footer p{max-width:600px;margin:0;font-size:12px;line-height:1.6}.program-admin-actions button,.settings-heading-actions button,.program-action-button{white-space:nowrap}.program-occurrence-editor{margin-bottom:18px}.program-admin-page>.program-occurrence-editor .occurrence-editor-layout{grid-template-columns:1fr}.program-admin-page.occurrence-focused>.program-occurrence-editor .occurrence-editor-layout{grid-template-columns:minmax(230px,.85fr) minmax(0,1.15fr)}.program-admin-page.occurrence-focused .occurrence-list{max-height:min(680px,calc(100vh - 270px))}.program-occurrence-editor .section-heading{align-items:center}.occurrence-generation-bar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:-4px 0 17px;border:1px solid color-mix(in srgb,var(--accent) 24%,var(--line));border-radius:12px;padding:12px 14px;background:color-mix(in srgb,var(--accent-soft) 46%,var(--surface))}.occurrence-auto-toggle{display:inline-flex;min-width:0;align-items:center;gap:10px;color:var(--ink);cursor:pointer}.occurrence-auto-toggle input{width:17px;height:17px;flex:0 0 17px;margin:0;accent-color:var(--accent)}.occurrence-auto-toggle span{display:grid;gap:3px;min-width:0}.occurrence-auto-toggle strong{font-size:13px}.occurrence-auto-toggle small{color:var(--muted);font-size:11px;font-weight:400;line-height:1.45}.occurrence-bulk-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.occurrence-help{margin:-6px 0 20px;font-size:12px;line-height:1.6}.occurrence-editor-layout{display:grid;grid-template-columns:minmax(210px,.9fr) minmax(0,1.1fr);gap:24px;align-items:start}.occurrence-list{max-height:480px;overflow-y:auto;border-top:1px solid var(--line)}.occurrence-list-item{display:grid;width:100%;gap:4px;border-bottom:1px solid var(--line);border-radius:0;padding:12px 10px;background:transparent;color:var(--ink);text-align:left;box-shadow:none}.occurrence-list-item:hover,.occurrence-list-item.selected{background:var(--accent-soft);transform:none}.occurrence-list-item span{display:flex;align-items:center;justify-content:space-between;gap:8px}.occurrence-list-item b{color:var(--accent);font:600 10px var(--mono)}.occurrence-list-item em{color:var(--muted);font-size:10px;font-style:normal}.occurrence-list-item em.cancelled{color:#d20f39}.occurrence-list-item em.deleted{color:var(--muted);text-decoration:line-through}.occurrence-list-item em.aired{color:var(--accent)}.occurrence-list-item strong{font-size:13px}.occurrence-list-item small{color:var(--muted);font-size:10px}.occurrence-form{border-left:1px solid var(--line);padding-left:24px}.occurrence-form-heading{display:grid;grid-template-columns:34px minmax(0,1fr) 34px auto;align-items:flex-start;gap:10px;margin-bottom:18px}.occurrence-form-heading>div{min-width:0}.occurrence-nav-button{display:inline-grid;width:34px;height:34px;place-items:center;border:1px solid var(--line);border-radius:9px;padding:0;background:var(--surface-alt);color:var(--accent);box-shadow:none;font-size:18px;line-height:1}.occurrence-nav-button:hover:not(:disabled){border-color:var(--accent);background:var(--accent-soft);transform:none}.occurrence-nav-button:disabled{cursor:not-allowed;opacity:.35}.occurrence-form-heading h3{margin:0;font-family:var(--display-font);font-size:20px}.occurrence-form label{display:block;margin:12px 0 16px;color:var(--ink);font-size:13px;font-weight:600}.occurrence-form label input,.occurrence-form label textarea{display:block;margin-top:8px}.occurrence-date-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.danger{border:1px solid color-mix(in srgb,#e78284 58%,var(--line));background:transparent;color:#e78284;box-shadow:none}@media(max-width:1100px)and (min-width:701px){.program-admin-page{grid-template-columns:minmax(220px,.8fr) minmax(0,1.8fr)}.program-admin-page>.program-admin-placeholder,.program-admin-page>.program-editor{grid-column:2}.program-admin-page>.program-occurrence-editor{grid-column:2;grid-row:3}.program-admin-page.occurrence-focused>.program-occurrence-editor{grid-column:2;grid-row:2}.program-admin-page>.program-occurrence-editor .occurrence-editor-layout{grid-template-columns:minmax(210px,.9fr) minmax(0,1.1fr)}}@media(max-width:700px){.program-toast{top:max(104px,calc(90px + env(safe-area-inset-top)))}.program-admin-page{display:flex;width:min(100%,820px);flex-direction:column}.program-admin-page>.programs-topline{order:1}.program-admin-page>.program-panel-nav{order:2}.program-admin-page>.program-admin-list{order:3;position:static;width:100%}.program-admin-page>.program-admin-placeholder,.program-admin-page>.program-editor{order:4;width:100%}.program-admin-page>.program-occurrence-editor{order:5;width:100%}.program-admin-page.occurrence-focused>.program-occurrence-editor{order:4}.programs-topline{align-items:flex-start;flex-direction:column;gap:18px}.programs-page,.programs-page.programs-list-mode{width:100%}.program-calendar-card,.program-admin-list{padding:20px 16px}.program-calendar-card>.section-heading{align-items:flex-start;flex-direction:column;gap:13px}.program-view-switch{align-self:stretch}.program-view-switch button{flex:1}.program-calendar-heading-actions{width:100%;align-items:stretch;flex-direction:column}.program-calendar-heading-actions>.program-action-button,.program-calendar-heading-actions .program-view-switch{width:100%}.program-calendar-tools{grid-template-columns:1fr}.program-filter-group,.program-calendar-jump{align-items:stretch}.program-calendar-filter,.program-calendar-jump label,.program-cast-filter{flex:1 1 140px}.program-cast-filter-panel{position:relative;top:auto;width:auto;margin-top:8px}.program-calendar-jump-label{width:100%}.program-calendar-jump>button,.program-clear-filter{flex:0 0 auto}.program-calendar-summary span+span{border-left:0;padding-left:0}.program-list-heading{align-items:flex-start;flex-direction:column;gap:8px}.archive-landing-intro{margin-bottom:28px;text-align:left}.archive-choice-grid{grid-template-columns:1fr;gap:12px}.archive-choice{min-height:235px;border-radius:25px;padding:23px}.program-list-event{grid-template-columns:49px minmax(0,1fr) 18px;gap:9px}.program-calendar .fc-daygrid-day-frame{min-height:61px}.program-calendar .fc-daygrid-event{height:7px;min-height:7px;margin:3px 7px;padding:0;border:0;border-radius:999px;background:var(--program-event-color, var(--accent));line-height:1}.program-calendar .fc-event-main{height:100%;overflow:hidden;padding:0}.program-calendar .program-event-content{display:block;height:100%;overflow:hidden;font-size:0;line-height:1}.program-calendar .program-event-markers,.program-calendar .program-event-details{display:none}.program-calendar .program-event-cancelled{border:1px dashed var(--muted);background:transparent}.program-list-cast{display:none}.program-calendar-note small{width:100%;margin-left:0}.program-form-grid,.occurrence-link-fields{grid-template-columns:1fr}.occurrence-link-fields>small{grid-column:auto}.program-field-wide{grid-column:auto}.program-period-card{padding:15px 13px 5px}.program-admin-item{align-items:flex-start;flex-direction:column}.program-panel-nav{grid-template-columns:43px minmax(0,1fr) 43px;gap:8px;padding:8px}.program-panel-arrow{min-height:68px}.program-panel-context{padding-inline:3px}.program-panel-meta{align-items:flex-start;flex-direction:column;gap:7px}.program-panel-steps span{width:20px}.program-admin-list-footer{align-items:flex-start;flex-direction:column}.program-admin-list-tools{width:100%;align-items:stretch;justify-content:flex-start}.program-admin-cast-filter,.program-admin-search{width:100%}.program-readonly-tools{grid-template-columns:1fr}.program-readonly-cast-filter{width:100%}.program-readonly-detail-grid{grid-template-columns:1fr;gap:24px}.program-readonly-periods{border-top:2px solid var(--accent);border-left:0;padding-top:20px;padding-left:0}.program-readonly-actions{width:100%}.program-readonly-list-actions{width:100%;justify-content:space-between}.program-readonly-actions>*{flex:1}.program-readonly-occurrence-actions{width:100%;justify-content:space-between}.program-readonly-episode{grid-template-columns:1fr}.program-readonly-episode time{text-align:left}.sync-log-list li{grid-template-columns:1fr;gap:5px}.program-admin-actions,.settings-heading-actions{width:100%}.occurrence-generation-bar{align-items:stretch;flex-direction:column}.occurrence-bulk-actions{justify-content:flex-start}.program-drawer{width:calc(100vw - 18px)}.program-drawer-header,.program-drawer-body{padding-right:18px;padding-left:18px}.occurrence-editor-layout{grid-template-columns:1fr}.program-admin-page.occurrence-focused>.program-occurrence-editor .occurrence-editor-layout{grid-template-columns:1fr}.occurrence-list{max-height:270px}.occurrence-form{border-top:1px solid var(--line);border-left:0;padding-top:23px;padding-left:0}.occurrence-date-row{grid-template-columns:1fr;gap:0}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important}.program-drawer-backdrop-enter-active,.program-drawer-backdrop-leave-active,.program-drawer-panel-enter-active,.program-drawer-panel-leave-active{animation:none}}
