.pub{--demo-intro-measure: 680px;--demo-stage-width: 980px;min-height:100dvh;display:flex;flex-direction:column;background:var(--bg);color:var(--text);font-size:var(--fs-md)}.pub main{flex:1}.pub a{color:inherit}.pub-wrap{width:100%;max-width:1160px;margin:0 auto;padding:0 32px}.pub-skip{position:absolute;left:-9999px}.pub-skip:focus{left:16px;top:12px;z-index:100;padding:8px 12px;background:var(--surface);border-radius:var(--r-control)}.pub :focus-visible{outline:none;box-shadow:var(--ring);border-radius:var(--r-control)}.pub-header{position:sticky;top:0;z-index:30;background:color-mix(in srgb,var(--bg) 88%,transparent);-webkit-backdrop-filter:saturate(1.2) blur(10px);backdrop-filter:saturate(1.2) blur(10px);border-bottom:1px solid var(--border)}.pub-header-inner{display:flex;align-items:center;justify-content:space-between;height:60px;gap:16px}.pub-brand{display:inline-flex;align-items:center;gap:8px;font-weight:750;font-size:var(--fs-lg);letter-spacing:-.01em;text-decoration:none}.pub-brand svg{color:var(--accent)}.pub-header-end{display:flex;align-items:center;gap:14px;min-width:0}.pub-nav{display:flex;align-items:center;gap:4px}.pub-lang{display:flex;align-items:center;gap:2px;font-size:var(--fs-xs);white-space:nowrap}.pub-lang-item{display:inline-flex;align-items:center;gap:2px}.pub-lang-sep{color:var(--text-faint);padding:0 2px}.pub-lang a{padding:4px;border-radius:var(--r-control);text-decoration:none;color:var(--text-muted)}.pub-lang a:hover{color:var(--text)}.pub-lang a[aria-current=true]{color:var(--text);font-weight:650;pointer-events:none}.pub-nav a{padding:7px 12px;border-radius:var(--r-pill);text-decoration:none;color:var(--text-muted);font-size:var(--fs-sm);font-weight:550;transition:color .15s var(--ease),background .15s var(--ease)}.pub-nav a:hover{color:var(--text);background:var(--bg-hover)}.pub-nav a[aria-current=page]{color:var(--text)}.pub-nav a.pub-nav-account{margin-left:6px;color:var(--text);border:1px solid var(--border-strong)}.pub-footer{border-top:1px solid var(--border);padding:28px 0 36px;color:var(--text-muted);font-size:var(--fs-sm)}.pub-footer-inner{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px}.pub-footer-brand{display:inline-flex;align-items:center;gap:8px;font-weight:650;color:var(--text)}.pub-footer-brand svg{color:var(--accent)}.pub-footer-tag{font-weight:400;color:var(--text-faint);margin-left:6px}.pub-footer-nav{display:flex;flex-wrap:wrap;gap:18px}.pub-footer-nav a{text-decoration:none}.pub-footer-nav a:hover{color:var(--text)}.pub-eyebrow{display:inline-flex;align-items:center;gap:8px;margin:0 0 14px;font-size:var(--fs-xs);font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--accent-text)}.pub-live-dot{width:7px;height:7px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 4px var(--accent-weak)}.pub-h2{font-size:clamp(1.5rem,2.6vw,2.1rem);line-height:1.2;font-weight:700;letter-spacing:-.02em;margin:0 0 28px;max-width:720px}.pub-muted{color:var(--text-muted);margin:0}.pub-cta-row{display:flex;flex-wrap:wrap;align-items:center;gap:12px}.pub-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;padding:0 22px;border-radius:var(--r-pill);font-size:var(--fs-md);font-weight:650;text-decoration:none;border:1px solid transparent;transition:background .15s var(--ease),border-color .15s var(--ease),transform .15s var(--ease)}.pub-btn:active{transform:translateY(1px)}.pub-btn--primary{background:var(--accent);color:var(--accent-on)!important}.pub-btn--primary:hover{background:var(--accent-hover)}.pub-btn--ghost{border-color:var(--border-strong);color:var(--text)}.pub-btn--ghost:hover{background:var(--bg-hover)}.pub-link-btn{background:none;border:0;padding:0;color:var(--accent-text);font:inherit;font-weight:650;cursor:pointer;text-decoration:underline}.pub-hero{padding:72px 0 80px}.pub-hero-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:56px;align-items:center}.pub-hero-title{font-size:clamp(2.25rem,5vw,3.6rem);line-height:1.06;font-weight:760;letter-spacing:-.035em;margin:0 0 22px;max-width:640px}.pub-hero-title--tech{max-width:820px}.pub-hero-lede{font-size:var(--fs-lg);line-height:1.65;color:var(--text-muted);margin:0 0 30px;max-width:580px}.pub-tech-hero .pub-hero-lede{max-width:720px}.pub-hero-fine{margin:18px 0 0;font-size:var(--fs-sm);color:var(--text-faint)}.pub-dial{position:relative;margin:0;border-radius:18px;overflow:hidden;min-height:460px;display:flex;align-items:flex-end;box-shadow:var(--shadow-pop);color:#f4ede0}.pub-dial-photo{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;object-position:62% 60%}.pub-dial-scrim{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(0deg,#06070af0,#06070ac7 48%,#06070a40)}.pub-dial-body{position:relative;width:100%;padding:26px 26px 22px}.pub-dial-badges{display:flex;align-items:center;gap:10px;margin-bottom:10px}.pub-dial-show{font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,monospace;font-size:var(--fs-xs);color:#f4ede0b8}.pub-dial-theme{margin:0 0 14px;font-weight:650;font-size:var(--fs-lg)}.pub-dial-rundown{list-style:none;margin:0;padding:0;border-top:1px solid rgba(244,238,224,.14)}.pub-dial-row{display:grid;grid-template-columns:14px 1fr auto;align-items:center;gap:10px;padding:7px 0;border-bottom:1px solid rgba(244,238,224,.08);font-size:var(--fs-sm)}.pub-dial-mark{width:8px;height:8px;border-radius:50%;background:#f4ede066}.pub-dial-row--paper .pub-dial-mark{background:#ff9d4d}.pub-dial-row--segue .pub-dial-mark,.pub-dial-row--opening .pub-dial-mark,.pub-dial-row--closing .pub-dial-mark{background:transparent;border:1.5px solid #c9b6ff}.pub-dial-row--paper .pub-dial-label{font-weight:600}.pub-dial-row:not(.pub-dial-row--paper) .pub-dial-label{color:#f4ede0b3}.pub-dial-time{font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,monospace;font-size:var(--fs-xs);color:#f4ede099;font-variant-numeric:tabular-nums}.pub-section{padding:80px 0;border-top:1px solid var(--border)}.pub-section--alt{background:var(--sidebar-bg)}.pub-steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px}.pub-steps li{border-top:2px solid var(--text);padding-top:18px}.pub-step-num{font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,monospace;font-size:var(--fs-sm);font-weight:700;color:var(--accent-text)}.pub-steps h3{font-size:var(--fs-xl);margin:10px 0 8px}.pub-steps p{margin:0;color:var(--text-muted);line-height:1.65}.pub-why{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:56px}.pub-why-points>p{margin:0 0 24px;font-size:var(--fs-lg);line-height:1.7;color:var(--text-muted)}.pub-ticks{list-style:none;margin:0;padding:0}.pub-ticks li{position:relative;padding:12px 0 12px 22px;border-top:1px solid var(--border);line-height:1.6;color:var(--text-muted)}.pub-ticks li:before{content:"";position:absolute;left:0;top:21px;width:8px;height:8px;border-radius:50%;background:var(--accent)}.pub-ticks strong{color:var(--text);font-weight:650}.pub-sample-band{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:24px}.pub-sample-band .pub-h2{margin:0 0 6px}.pub-sample-icon{color:var(--accent)}.pub-beta-wrap{padding-top:8px;padding-bottom:72px}.pub-beta{border:1px solid var(--border-strong);border-radius:18px;padding:40px;background:radial-gradient(120% 140% at 100% 0%,var(--accent-weak),transparent 55%),var(--surface)}.pub-beta-title{font-size:clamp(1.5rem,2.8vw,2.1rem);line-height:1.2;letter-spacing:-.02em;margin:0 0 12px}.pub-beta-copy{margin:0 0 24px;max-width:620px;color:var(--text-muted);line-height:1.65}.pub-beta-fine{margin:14px 0 0;font-size:var(--fs-sm);color:var(--text-faint);line-height:1.6}.pub-beta-fine+.pub-beta-fine{margin-top:4px}.pub-beta-fine a{color:var(--accent-text)}.pub-beta-note{color:var(--text-muted);font-size:var(--fs-sm)}.pub-demo-head{padding:48px 0 28px}.pub-demo-title{font-size:clamp(2rem,4.4vw,3rem);line-height:1.08;letter-spacing:-.03em;font-weight:760;margin:0 0 10px}.pub-demo-sub{margin:0 0 12px;font-weight:600;color:var(--text)}.pub-demo-note{margin:0;color:var(--text-muted);font-style:italic;max-width:620px}.pub-demo-error{margin:16px 0;padding:12px 14px;border-radius:var(--r-control);background:var(--danger-weak);color:var(--text)}.pub-demo-intro{max-width:calc(var(--demo-intro-measure) + 64px);text-align:center}.pub-demo-intro .pub-demo-note{margin:0 auto}.pub-demo-stage{max-width:calc(var(--demo-stage-width) + 64px)}.pub-demo-grid{padding-bottom:48px}.pub-demo-main{min-width:0}.now-playing-hero.pub-demo-hero{border-radius:18px;height:auto;min-height:clamp(360px,50vh,500px);max-height:none;box-shadow:var(--shadow-card)}.now-playing-hero.pub-demo-hero:before{content:none}.pub-demo-hero .now-playing-hero-content{padding:32px 32px 28px}.pub-demo-hero .now-playing-waveform--dj{margin-bottom:0}.pub-badge-idle{background:#ffffff29;color:#f4ede0}.pub-badge-idle i{background:#f4ede0}.pub-wave-paused i{animation-play-state:paused;opacity:.45}.pub-transport{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:22px;margin-top:16px;padding:16px 20px;border:1px solid var(--border);border-radius:14px;background:var(--surface)}.pub-transport-buttons{display:flex;align-items:center;gap:8px}.pub-icon-btn,.pub-play-btn{display:inline-flex;align-items:center;justify-content:center;border:0;cursor:pointer;border-radius:50%}.pub-icon-btn{width:40px;height:40px;background:transparent;color:var(--text-muted)}.pub-icon-btn:hover:not(:disabled){color:var(--text);background:var(--bg-hover)}.pub-icon-btn:disabled{opacity:.35;cursor:default}.pub-play-btn{width:56px;height:56px;background:var(--accent);color:var(--accent-on);box-shadow:0 6px 18px color-mix(in srgb,var(--accent) 35%,transparent)}.pub-play-btn:hover{background:var(--accent-hover)}.pub-progress{height:4px;border-radius:var(--r-pill);background:var(--border-strong);overflow:hidden}.pub-progress span{display:block;height:100%;background:var(--accent);transition:width .3s linear}.pub-transport-times{display:flex;justify-content:space-between;margin-top:8px;font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,monospace;font-size:var(--fs-xs);color:var(--text-faint);font-variant-numeric:tabular-nums}.pub-demo-complete{margin-top:16px;padding:20px 22px;border-radius:14px;border:1px solid color-mix(in srgb,var(--accent) 40%,transparent);background:var(--accent-weak)}.pub-demo-complete-title{margin:0 0 4px;font-weight:700;font-size:var(--fs-lg)}.show-notes.pub-demo-notes{padding:36px 4px 0}.pub-demo-authors{margin:6px 0 0;font-size:var(--fs-sm);color:var(--text-muted)}.pub-rundown{margin-top:16px;padding:20px;border:1px solid var(--border);border-radius:14px;background:var(--surface)}.pub-rundown ol{list-style:none;margin:0;padding:0}@media (min-width: 900px){.pub-rundown ol{columns:2;column-gap:24px}.pub-rundown li{break-inside:avoid}}.pub-rundown-row{width:100%;display:grid;grid-template-columns:1fr auto;grid-template-areas:"kind time" "title title";gap:2px 10px;padding:10px 10px 10px 12px;margin:0 0 2px;border:0;border-left:2px solid transparent;border-radius:0 var(--r-control) var(--r-control) 0;background:transparent;color:var(--text);font:inherit;text-align:left;cursor:pointer}.pub-rundown-row:hover{background:var(--bg-hover)}.pub-rundown-row.is-active{border-left-color:var(--accent);background:var(--accent-weak)}.pub-rundown-row.is-done{opacity:.6}.pub-rundown-kind{grid-area:kind;font-size:var(--fs-xs);font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted)}.pub-rundown-row:not(.is-segment) .pub-rundown-kind{color:var(--accent-text)}.pub-rundown-row.is-segment .pub-rundown-kind{color:var(--dj)}.pub-rundown-title{grid-area:title;font-size:var(--fs-sm);line-height:1.45;font-weight:550}.pub-rundown-title:empty{display:none}.pub-rundown-time{grid-area:time;font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,monospace;font-size:var(--fs-xs);color:var(--text-faint);font-variant-numeric:tabular-nums}.pub-tech-hero{padding:72px 0 64px}.pub-flow{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:0;counter-reset:none}.pub-flow-stage{position:relative;display:flex;flex-direction:column;gap:6px;padding:18px 18px 18px 0;margin-right:18px;border-top:2px solid var(--border-strong)}.pub-flow-stage:not(:last-child):after{content:"";position:absolute;top:-6px;right:-14px;width:10px;height:10px;border-top:2px solid var(--accent);border-right:2px solid var(--accent);transform:rotate(45deg)}.pub-flow-stage:last-child{border-top-color:var(--accent)}.pub-flow-num{font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,monospace;font-size:var(--fs-xs);font-weight:700;color:var(--accent-text)}.pub-flow-name{font-weight:700;font-size:var(--fs-md)}.pub-flow-note{font-size:var(--fs-sm);color:var(--text-muted);line-height:1.5}.pub-cap-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:36px 40px}.pub-cap h3{font-size:var(--fs-lg);margin:0 0 8px}.pub-cap p{margin:0;color:var(--text-muted);line-height:1.65}.pub-stack{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:32px}.pub-stack-group{margin:0 0 10px;font-size:var(--fs-xs);font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-faint)}.pub-stack ul{list-style:none;margin:0;padding:0}.pub-stack li{padding:6px 0;border-bottom:1px solid var(--border)}.pub-tech-prose{max-width:720px}.pub-tech-prose p{margin:0 0 16px;font-size:var(--fs-md);line-height:1.85;color:var(--text-muted)}.pub-cap .pub-flow-num{display:block;margin-bottom:6px}.pub-stack-name{display:block;font-weight:600}.pub-stack-role{display:block;font-size:var(--fs-sm);color:var(--text-muted)}.pub-tech-cta{border-top:0;padding:0 0 72px}.pub-legal-wrap{max-width:780px}.pub-legal-hero{padding-bottom:40px}.pub-legal-date{margin:18px 0 0;font-size:var(--fs-sm);color:var(--text-faint)}.pub-legal{padding-top:48px}.pub-legal-section+.pub-legal-section{margin-top:36px}.pub-legal-section h2{scroll-margin-top:88px;font-size:var(--fs-lg);margin:0 0 12px}.pub-legal-section p,.pub-legal-section li{line-height:1.8;color:var(--text-muted)}.pub-legal-section p{margin:0 0 12px}.pub-legal-section ul{margin:0 0 12px;padding-left:1.25em}.pub-legal-section li+li{margin-top:6px}.pub-legal-section strong{color:var(--text)}.pub-legal-section a{color:var(--accent-text)}@media (max-width: 1000px){.pub-hero-grid,.pub-why{grid-template-columns:1fr;gap:40px}.pub-flow{grid-template-columns:repeat(3,minmax(0,1fr));row-gap:24px}.pub-flow-stage:nth-child(3n):after{display:none}.pub-cap-grid,.pub-stack{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 640px){.pub{font-size:var(--fs-base)}.pub-wrap{padding:0 16px}.pub-header-inner{height:54px;gap:8px}.pub-header-end{gap:6px}.pub-nav a{padding:6px 8px}.pub-hero{padding:40px 0 56px}.pub-tech-hero{padding:44px 0 40px}.pub-hero-lede{font-size:var(--fs-md)}.pub-cta-row .pub-btn{width:100%}.pub-dial{min-height:400px}.pub-section{padding:56px 0}.pub-steps{grid-template-columns:1fr;gap:28px}.pub-sample-band{grid-template-columns:1fr;gap:16px}.pub-beta{padding:28px 20px}.pub-demo-head{padding:32px 0 20px}.pub-demo-hero .now-playing-hero-content{padding:22px 18px 18px}.now-playing-hero.pub-demo-hero{min-height:300px}.pub-demo-hero .now-playing-waveform:not(.now-playing-waveform--dj){display:flex}.pub-transport{grid-template-columns:1fr;gap:12px;padding:14px 16px}.pub-transport-buttons{justify-content:center}.pub-flow{grid-template-columns:1fr}.pub-flow-stage{margin-right:0;padding:14px 0}.pub-flow-stage:after{display:none}.pub-cap-grid,.pub-stack{grid-template-columns:1fr}.pub-footer-tag{display:none}}@media (prefers-reduced-motion: reduce){.pub *{transition:none!important}.pub .now-playing-waveform i{animation:none}}.pub:lang(ja) h1,.pub:lang(ja) h2,.pub:lang(ja) h3{word-break:auto-phrase;text-wrap:balance;letter-spacing:0}.pub:lang(ja) .pub-hero-title{font-size:clamp(2rem,4.2vw,3.1rem);line-height:1.2}.pub:lang(ja) .pub-demo-note{font-style:normal}.pub:lang(ja) .pub-hero-lede,.pub:lang(ja) .pub-why-points>p{line-height:1.85}.pub-nav a,.pub-brand{white-space:nowrap}@media (max-width: 640px){.pub-brand{font-size:var(--fs-md);gap:6px}.pub-nav{gap:0}.pub-nav a{padding:6px;font-size:var(--fs-xs)}.pub-nav a.pub-nav-account{margin-left:2px;padding:5px 9px}.pub-lang a{padding:4px 2px}}@media (max-width: 400px){.pub-nav a[href$="/technical"]:not([aria-current]){display:none}}.pub-lang button{padding:4px;font:inherit;color:var(--text-muted);background:none;border:none;border-radius:var(--r-control);cursor:pointer}.pub-lang button:hover{color:var(--text)}.pub-lang button[aria-pressed=true]{color:var(--text);font-weight:650;cursor:default}.signin-main{position:relative;overflow:hidden;padding:64px 0 88px;background:radial-gradient(42% 46% at 0% 100%,var(--accent-weak),transparent 70%),radial-gradient(36% 38% at 100% 0%,color-mix(in srgb,var(--accent-weak) 60%,transparent),transparent 70%)}.signin-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,560px);gap:72px;align-items:start}.signin-intro{padding-top:28px}.signin-title{font-size:clamp(2rem,3.2vw,2.6rem);line-height:1.25;margin-bottom:20px}.signin-lede{max-width:34em;margin-bottom:32px;font-size:var(--fs-md);line-height:1.85}.pub-dial--compact{min-height:0;padding-top:120px;border-radius:16px}.pub-dial--compact .pub-dial-body{padding:20px 22px 16px}.pub-dial--compact .pub-dial-row{padding:5px 0}.signin-sample{margin-top:20px}.signin-panel{display:flex;flex-direction:column;gap:18px;min-width:0}.signin-card{display:flex;flex-direction:column;gap:8px;padding:32px 32px 24px;background:var(--surface);border:1px solid var(--border);border-radius:18px;box-shadow:0 1px 2px #181a1e0a,0 18px 48px -12px #181a1e1f}:root[data-theme=dark] .signin-card{box-shadow:0 1px 2px #0000004d,0 18px 48px -12px #0000008c}.signin-panel-head{display:flex;flex-direction:column;align-items:flex-start;gap:6px}.signin-panel-title{margin:0;font-size:1.55rem;font-weight:750;line-height:1.35;letter-spacing:-.01em}.signin-panel-email{margin:0;font-size:var(--fs-sm);color:var(--text-muted)}.signin-card .consent-box a{color:var(--accent-text)}.pub:lang(ja) :is(.signin-panel-title,.signin-panel-note,.signin-lede){word-break:auto-phrase}.signin-panel-note{margin:0;font-size:var(--fs-sm);line-height:1.6;text-align:center;color:var(--text-muted)}.signin-panel-note a{color:var(--accent-text);font-weight:600;text-decoration:none}.signin-panel-note a:hover{text-decoration:underline}.signin-card .auth-gate-signout{align-self:center}@media (max-width: 1000px){.signin-grid{grid-template-columns:minmax(0,1fr);gap:40px;max-width:640px}.signin-intro{padding-top:0}}@media (max-width: 640px){.signin-main{padding:24px 0 40px}.signin-intro .pub-eyebrow{display:none}.signin-title{font-size:1.5rem;margin-bottom:0}.signin-lede,.signin-intro .pub-dial,.signin-sample{display:none}.signin-grid{gap:20px}.signin-card,:root[data-theme=dark] .signin-card{padding:4px 0 8px;background:transparent;border:0;border-radius:0;box-shadow:none}.signin-panel-title{font-size:1.3rem}}.pub:lang(ja) .signin-title{font-size:clamp(1.9rem,3vw,2.5rem)}@media (max-width: 640px){.pub:lang(ja) .signin-title{font-size:1.4rem}}:root{color-scheme:dark;--bg: #0a0d13;--bg-hover: #171c27;--surface: #12161f;--surface-2: #171c27;--border: rgba(244, 238, 224, .1);--border-strong: rgba(244, 238, 224, .16);--text: #f2ede2;--text-muted: #9aa1b3;--text-faint: #6b7284;--accent: #ff9d4d;--accent-hover: #ffb877;--accent-weak: rgba(255, 157, 77, .16);--accent-on: #241505;--danger: #ff5157;--danger-weak: rgba(255, 81, 87, .14);--good: #7fd88f;--accent-text: var(--accent);--accent-text-strong: var(--accent-hover);--sidebar-bg: var(--surface);--rail-bg: transparent;--dj: #b69cff;--dj-weak: rgba(182, 156, 255, .14);--player-console-bg: linear-gradient(180deg, rgba(8, 9, 13, .85), var(--bg) 60%);--player-console-border: rgba(255, 255, 255, .06);--player-shadow: 0 -6px 24px rgba(20, 20, 30, .08);--r-control: 8px;--r-card: 12px;--r-pill: 999px;--fs-xs: .75rem;--fs-sm: .8125rem;--fs-base: .875rem;--fs-md: .9375rem;--fs-lg: 1.0625rem;--fs-xl: 1.25rem;--shadow-card: 0 1px 2px rgba(0, 0, 0, .3), 0 6px 18px rgba(0, 0, 0, .35);--shadow-pop: 0 10px 34px rgba(0, 0, 0, .5);--ring: 0 0 0 3px color-mix(in srgb, var(--accent) 32%, transparent);--ease: cubic-bezier(.16, 1, .3, 1);--player-h: 104px;--sidebar-w: 220px;--rail-w: 420px}:root[data-theme=light]{color-scheme:light;--bg: #f7f7f5;--bg-hover: #ebebe8;--surface: #ffffff;--surface-2: #f2f2ef;--border: rgba(24, 26, 30, .1);--border-strong: rgba(24, 26, 30, .17);--sidebar-bg: #f0f0ed;--rail-bg: #fafaf9;--text: #1c1d1f;--text-muted: #55585e;--text-faint: #6c6f75;--accent: #e07b17;--accent-hover: #d06c14;--accent-weak: rgba(224, 123, 23, .14);--accent-on: #241505;--accent-text: #a8500b;--accent-text-strong: #92400e;--danger: #b3261e;--danger-weak: rgba(179, 38, 30, .1);--good: #2e7d4f;--dj: #6d28d9;--dj-weak: rgba(109, 40, 217, .1);--player-console-bg: linear-gradient(180deg, rgba(255, 255, 255, .97), var(--surface) 55%);--player-console-border: var(--border-strong);--player-shadow: 0 -8px 26px rgba(24, 26, 30, .06);--shadow-card: 0 1px 2px rgba(24, 26, 30, .04), 0 4px 14px rgba(24, 26, 30, .05);--shadow-pop: 0 12px 32px rgba(24, 26, 30, .14)}*{box-sizing:border-box}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Hiragino Kaku Gothic ProN,Hiragino Sans,Noto Sans JP,Yu Gothic,Meiryo,sans-serif;font-size:var(--fs-base);line-height:1.55;background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3{margin:0;font-weight:650;letter-spacing:-.01em}code,.mono{font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,monospace}.app-shell{display:grid;grid-template-columns:var(--sidebar-w) 1fr;min-height:100dvh;max-width:2080px;margin:0 auto}@media (min-width: 1280px){.app-shell--with-rail{grid-template-columns:var(--sidebar-w) 1fr var(--rail-w)}}.sidebar{grid-column:1;position:sticky;top:0;height:100dvh;z-index:20;display:flex;flex-direction:column;gap:22px;padding:22px 16px;background:var(--sidebar-bg);border-right:1px solid var(--border);overflow:hidden}.sidebar-scroll{flex:1 1 auto;min-height:0;overflow-y:auto}.app-brand{display:flex;flex-direction:column;gap:5px;padding:0 4px}.app-brand-line{display:flex;align-items:center;gap:9px;font-size:var(--fs-lg);font-weight:700;letter-spacing:.01em}.app-brand-line svg{color:var(--accent)}.app-tagline{font-size:var(--fs-xs);line-height:1.45;color:var(--text-faint)}.tabs{display:flex;flex-direction:column;gap:2px}.tabs button{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;background:transparent;color:var(--text-muted);font:inherit;font-size:var(--fs-sm);font-weight:600;text-align:left;padding:10px 12px;border-radius:var(--r-control);cursor:pointer;transition:color .14s var(--ease),background .14s var(--ease)}.tabs button:hover{color:var(--text);background:var(--bg-hover)}.tabs button.active{background:var(--accent-weak);color:var(--accent-text-strong)}.auth-panel{flex-shrink:0;padding:12px;border-top:1px solid var(--border);display:flex;flex-direction:column;gap:8px}.auth-panel-signin{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid var(--border-strong);background:var(--surface-2);color:var(--text);font:inherit;font-size:var(--fs-sm);font-weight:600;padding:9px 12px;border-radius:var(--r-control);cursor:pointer;transition:background .14s var(--ease),border-color .14s var(--ease)}a.auth-panel-signin{display:block;text-align:center;text-decoration:none}.auth-panel-signin:hover{background:var(--bg-hover);border-color:var(--border-strong)}.auth-panel-signin:disabled{cursor:default;opacity:.6}.auth-panel-identity{display:flex;align-items:center;justify-content:space-between;gap:8px}.auth-panel-email{font-size:var(--fs-xs);color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.auth-panel-signout{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;background:transparent;color:var(--text-faint);font:inherit;font-size:var(--fs-xs);font-weight:600;padding:4px 8px;border-radius:var(--r-control);cursor:pointer;flex-shrink:0}.auth-panel-signout:hover{color:var(--text);background:var(--bg-hover)}.auth-panel-status{font-size:var(--fs-xs);color:var(--text-faint);margin:0}.auth-panel-status--ok{color:var(--accent-text-strong)}.auth-panel-status--error,.auth-panel-error{color:var(--danger);margin:0;font-size:var(--fs-xs)}.sidebar-account{flex-shrink:0;display:flex;flex-direction:column}.feedback-link{padding:0 12px 10px;font-size:var(--fs-xs);font-weight:600;color:var(--text-faint);text-decoration:none}.feedback-link:hover{color:var(--accent-text-strong)}.auth-gate-main{display:flex;align-items:center;justify-content:center;min-height:100dvh;padding:24px}.app-main.auth-gate-main{padding-bottom:0}.auth-gate{display:flex;flex-direction:column;align-items:center;gap:14px;max-width:420px;text-align:center}.auth-gate-badge{font-size:var(--fs-xs);font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--accent-text-strong);background:var(--accent-weak);padding:4px 10px;border-radius:var(--r-pill)}.auth-gate-title{font-size:var(--fs-xl);font-weight:700;margin:0}.auth-gate-copy{font-size:var(--fs-sm);line-height:1.55;color:var(--text-muted);margin:0}.auth-gate-email{font-size:var(--fs-xs);color:var(--text-faint);margin:0}.auth-gate-cta{margin-top:6px;padding:11px 20px}.consent-box-action .auth-gate-cta{display:inline-flex;align-items:center;justify-content:center;gap:10px;width:100%;min-height:50px;margin-top:0;padding:12px 20px;font-size:var(--fs-md);font-weight:650;border-radius:10px}.gsi-button{display:flex;align-items:center;justify-content:center;width:100%;min-height:44px;padding:0 12px;font-family:Google Sans,Roboto,system-ui,sans-serif;font-size:14px;font-weight:500;line-height:20px;letter-spacing:.25px;color:#1f1f1f;background:#fff;border:1px solid #747775;border-radius:4px;cursor:pointer;transition:background-color .218s,border-color .218s,box-shadow .218s}.gsi-button-icon{display:inline-flex;flex:none;margin-right:10px}.gsi-button-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.gsi-button:not(:disabled):hover{background:#f8f9fa;box-shadow:0 1px 2px #3c40434d,0 1px 3px 1px #3c404326}.gsi-button:disabled{cursor:not-allowed;background:#ffffff61;border-color:#1f1f1f1f}.gsi-button:disabled .gsi-button-icon,.gsi-button:disabled .gsi-button-text{opacity:.38}:root[data-theme=dark] .gsi-button{color:#e3e3e3;background:#131314;border-color:#8e918f}:root[data-theme=dark] .gsi-button-icon{padding:2px;margin:-2px 8px -2px -2px;background:#fff;border-radius:50%}:root[data-theme=dark] .gsi-button:not(:disabled):hover{background:#1f1f20;box-shadow:0 1px 2px #00000080,0 1px 3px 1px #0000004d}:root[data-theme=dark] .gsi-button:disabled{background:#13131461;border-color:#8e918f4d}.consent-box-action .auth-gate-cta:disabled{opacity:1;color:var(--accent-text-strong);background:var(--accent-weak);border-color:transparent;cursor:not-allowed}.consent-box-action .auth-gate-cta:not(:disabled){color:var(--accent-on);background:var(--accent);border-color:transparent}.consent-box-action .auth-gate-cta:not(:disabled):hover{background:var(--accent-hover)}.consent-box{width:100%;text-align:left;font-size:var(--fs-base);line-height:1.7;color:var(--text)}.consent-box p{margin:0}.consent-box-head{display:flex;justify-content:flex-end;margin-bottom:8px}.consent-box-lang{flex:none;padding:3px 10px;font-size:var(--fs-xs);color:var(--text-muted);background:transparent;border:1px solid var(--border-strong);border-radius:var(--r-pill);cursor:pointer}.consent-box-lang:hover{color:var(--text)}.consent-box p.consent-box-intro{margin-bottom:22px;font-size:var(--fs-base);line-height:1.7;color:var(--text-muted)}.consent-box-heading{margin:0;font-size:var(--fs-lg);font-weight:700;line-height:1.4;color:var(--text)}.consent-box p.consent-box-note{margin:2px 0 12px;font-size:var(--fs-sm);line-height:1.6;color:var(--text-muted)}.consent-box-recipients{display:flex;flex-direction:column;gap:10px;margin:0 0 14px;padding:0;list-style:none}.consent-recipient{padding:14px 18px 4px;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-card)}.consent-recipient-head{display:flex;flex-direction:column;gap:1px;padding-bottom:10px}.consent-recipient-name{font-size:var(--fs-md);font-weight:700;line-height:1.5;color:var(--text)}.consent-recipient-purpose{font-size:var(--fs-xs);line-height:1.6;color:var(--text-muted)}.consent-recipient-facts{margin:0}.consent-recipient-facts>div{display:grid;grid-template-columns:7em minmax(0,1fr);gap:2px 14px;padding:8px 0;border-top:1px solid var(--border)}.consent-recipient-facts dt{font-size:var(--fs-xs);line-height:1.85;color:var(--text-muted)}.consent-recipient-facts dd{margin:0;font-size:var(--fs-sm);line-height:1.7;color:var(--text)}.consent-box a{color:var(--accent-text);font-weight:600;text-underline-offset:3px}.consent-box p.consent-box-info{margin-bottom:14px;font-size:var(--fs-xs);line-height:1.75;color:var(--text-muted)}.consent-box-info-icon{margin-left:3px;vertical-align:-2px}.consent-box-check{display:flex;align-items:flex-start;gap:12px;margin:0 0 12px;padding:12px 16px;font-size:var(--fs-sm);line-height:1.65;font-weight:500;color:var(--text);background:var(--surface-2);border:1px solid var(--border);border-radius:10px;cursor:pointer;transition:border-color .15s var(--ease),background .15s var(--ease)}.consent-box-check:hover{border-color:var(--border-strong)}.consent-box-check:has(input:checked){border-color:var(--accent);background:var(--accent-weak)}.consent-box-check:has(input:focus-visible){box-shadow:var(--ring)}.consent-box-check input{flex:none;width:20px;height:20px;margin:2px 0 0;accent-color:var(--accent);cursor:pointer}.consent-box-action{display:flex;flex-direction:column;gap:8px;margin:0 0 10px}.consent-box-action .auth-panel-error{margin:0}.consent-box p.consent-box-audience{font-size:var(--fs-xs);line-height:1.6;text-align:center;color:var(--text-muted)}.consent-box-heading-formal{margin-bottom:6px;font-size:var(--fs-md)}.consent-box-list p.consent-box-intro{margin-bottom:12px}.consent-box-recipients-list{gap:10px}.consent-recipient-line{display:flex;flex-direction:column;padding:1px 0 1px 12px;border-left:2px solid var(--border-strong)}.consent-recipient-line .consent-recipient-name{font-size:var(--fs-base);line-height:1.6}.consent-recipient-detail{font-size:var(--fs-sm);line-height:1.6;color:var(--text-muted)}.consent-box:lang(ja) :is(p,dd,strong,span,h3){word-break:auto-phrase}@media (max-width: 560px){.consent-box p.consent-box-intro{margin-bottom:18px}.consent-recipient{padding:12px 14px 2px}.consent-recipient-facts>div{grid-template-columns:6.5em minmax(0,1fr);gap:0 10px}}.consent-box:lang(en) .consent-recipient-facts>div{grid-template-columns:7.5em minmax(0,1fr)}@media (max-width: 560px){.consent-box:lang(ja) .consent-recipient-facts dd{word-break:normal}}@media (max-width: 380px){:is(.consent-box:lang(en),.consent-box) .consent-recipient-facts>div{grid-template-columns:minmax(0,1fr);gap:0}}.auth-gate-signout{font-size:var(--fs-sm);color:var(--text-muted);background:none;border:none;text-decoration:underline;cursor:pointer}.app-main{grid-column:2;width:100%;padding:0 0 calc(var(--player-h) + 16px);display:flex;flex-direction:column;gap:20px}.app-main>.paper-list,.app-main>.discover{max-width:1160px;margin:28px 28px 0}.app-main>.admin-app{max-width:1160px;margin:28px 28px 0;display:flex;flex-direction:column;gap:32px}.context-rail{grid-column:3;position:sticky;top:0;height:100dvh;padding:32px 28px calc(var(--player-h) + 16px);background:var(--rail-bg);border-left:1px solid var(--border);overflow-y:auto}@media (max-width: 1279px){.context-rail{display:none}}.rail-title{font-size:var(--fs-sm);font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--text);margin:0 0 24px}.rail-section+.rail-section{margin-top:28px;padding-top:24px;border-top:1px solid var(--border)}.rail-h{font-size:var(--fs-xs);font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-faint);margin:0 0 12px}.rail-now-playing{font-size:var(--fs-sm);color:var(--text-muted);margin:0}.rail-current-chapter{display:flex;align-items:baseline;gap:10px;margin:0 0 14px}.rail-current-chapter-index{flex:none;font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,monospace;font-size:var(--fs-sm);font-weight:700;color:var(--accent-text);font-variant-numeric:tabular-nums}.rail-current-chapter-title{flex:1;min-width:0;font-size:var(--fs-sm);font-weight:700;letter-spacing:.02em;text-transform:uppercase;color:var(--text)}.rail-now-badge{flex:none;font-size:.6875rem;font-weight:800;letter-spacing:.03em;color:var(--accent-text)}.transcript-paragraph{font-size:var(--fs-sm);line-height:1.8;color:var(--text-muted);margin:0;max-width:46ch}.transcript-paragraph+.transcript-paragraph{margin-top:20px}.rail-empty{font-size:var(--fs-sm);color:var(--text-faint);margin:0}.picks-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:1px}.picks-row{display:flex;align-items:baseline;gap:9px;padding:7px 8px;border-radius:var(--r-control);font-size:var(--fs-sm)}.picks-index{flex:none;font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,monospace;font-size:var(--fs-xs);color:var(--text-faint);font-variant-numeric:tabular-nums}.picks-title{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-muted)}.picks-row.on-air .picks-title{color:var(--text);font-weight:600}.picks-duration{flex:none;font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,monospace;font-size:var(--fs-xs);color:var(--text-faint);font-variant-numeric:tabular-nums}.picks-onair{flex:none;font-size:.6875rem;font-weight:800;letter-spacing:.04em;color:var(--danger)}@media (max-width: 900px){.app-shell{grid-template-columns:1fr}.sidebar,.app-main{grid-column:1}.app-shell{grid-template-rows:auto 1fr}.sidebar{position:sticky;height:auto;flex-direction:row;align-items:center;justify-content:space-between;gap:12px;padding:10px 16px;border-right:none;border-bottom:1px solid var(--border);overflow-x:auto;overflow-y:auto}.tabs{flex-direction:row}.app-main{min-width:0}}@media (max-width: 640px){.sidebar-scroll,.app-tagline{display:none}.sidebar-account{flex-direction:row;align-items:center}.auth-panel{padding:0;border-top:none}.auth-panel-status:not(.auth-panel-status--error){display:none}.feedback-link{padding:4px 8px}}.now-playing-hero{position:relative;overflow:hidden;display:grid}.now-playing-hero:before{content:"";grid-area:1 / 1;padding-top:clamp(420px,calc(100% * 10 / 21),640px)}.now-playing-hero--empty:before{content:none}.now-playing-hero--empty{display:flex;aspect-ratio:21 / 10;max-height:640px;min-height:200px;align-items:center;justify-content:center;padding:0 40px;background:var(--surface);color:var(--text-muted);font-size:var(--fs-md)}.now-playing-hero-photo{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;object-position:50% 81%}.now-playing-hero-scrim{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,rgba(6,7,10,.94) 0%,rgba(6,7,10,.74) 38%,rgba(6,7,10,.22) 66%,transparent 86%),linear-gradient(0deg,rgba(6,7,10,.62),transparent 42%)}.now-playing-hero-content{grid-area:1 / 1;align-self:end;position:relative;z-index:1;width:100%;padding:40px 40px 36px;color:#f4ede0}.now-playing-hero-badges{display:flex;align-items:center;gap:10px;margin-bottom:14px}.now-playing-badge{display:inline-flex;align-items:center;gap:6px;background:var(--danger);color:#2a0505;font-size:var(--fs-xs);font-weight:800;letter-spacing:.03em;padding:3px 9px 3px 7px;border-radius:var(--r-pill)}.now-playing-badge i{width:6px;height:6px;border-radius:50%;background:#2a0505}.now-playing-show{font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,monospace;font-size:var(--fs-xs);color:#f4ede0b8}.now-playing-hero-title{font-size:clamp(1.75rem,2.6vw,2.5rem);font-weight:750;line-height:1.24;max-width:760px;margin:0 0 16px;text-shadow:0 4px 26px rgba(0,0,0,.55)}.now-playing-hero-meta{display:flex;flex-wrap:wrap;gap:6px;font-size:var(--fs-sm);color:#f4ede0c7;margin-bottom:16px}.now-playing-hero-tags{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:24px}.now-playing-hero-tags .tag{background:#ffffff1a;border-color:#ffffff2e;color:#f4ede0;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.now-playing-hero-links{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:24px}.now-playing-hero-links .tag{background:#ffffff1a;border-color:#ffffff2e;color:#f4ede0;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);text-decoration:none}.now-playing-hero-links .tag:hover{border-color:#fff6;color:#fff}.now-playing-waveform{display:flex;align-items:flex-end;gap:2px;height:28px;max-width:420px}.now-playing-waveform i{flex:1;min-width:1.5px;max-width:3px;border-radius:2px;background:var(--accent);opacity:.85;animation:now-playing-bar 1.6s ease-in-out infinite;transform-origin:bottom}.now-playing-waveform i:nth-child(4n+1){height:35%;animation-delay:-1.1s}.now-playing-waveform i:nth-child(4n+2){height:70%;animation-delay:-.4s}.now-playing-waveform i:nth-child(4n+3){height:50%;animation-delay:-.8s}.now-playing-waveform i:nth-child(4n){height:90%;animation-delay:-.1s}@keyframes now-playing-bar{0%,to{transform:scaleY(.55)}50%{transform:scaleY(1)}}@media (max-width: 640px){.now-playing-hero:before{padding-top:220px}.now-playing-hero-content{padding:20px 16px 16px}.now-playing-waveform:not(.now-playing-waveform--dj){display:none}.now-playing-hero-badges,.now-playing-hero-meta{margin-bottom:10px}.now-playing-hero-tags{margin-bottom:8px}.now-playing-hero-links{margin-bottom:0}.now-playing-hero-title{font-size:1.125rem;margin-bottom:8px}}@media (max-width: 640px) and (max-height: 600px){.now-playing-hero:before{padding-top:0}.now-playing-hero:not(.now-playing-hero--dj) .now-playing-hero-badges,.now-playing-hero-tags{display:none}}.now-playing-hero--dj:before{content:none}.now-playing-hero--dj{height:clamp(520px,72vh,820px);min-height:520px;max-height:900px}.now-playing-show--dj{color:#c9b6ff}.now-playing-dj-tagline{margin:-6px 0 16px;font-size:var(--fs-sm);color:#f4ede0b8}.now-playing-waveform--dj{height:44px;max-width:560px;margin-bottom:28px}.dj-upnext{max-width:480px;padding-top:20px;border-top:1px solid rgba(244,238,224,.18)}.dj-upnext-eyebrow{font-size:var(--fs-xs);font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#f4ede099;margin:0 0 12px}.dj-upnext-row{display:flex;gap:14px;align-items:flex-start}.dj-upnext-index{flex:none;font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,monospace;font-size:1.25rem;font-weight:700;line-height:1.35;color:var(--accent);font-variant-numeric:tabular-nums}.dj-upnext-body{min-width:0}.dj-upnext-title{font-size:var(--fs-lg);font-weight:650;line-height:1.4;margin:0 0 4px;color:#f4ede0}.dj-upnext-meta{font-size:var(--fs-xs);color:#f4ede0a6;margin:0}@media (max-width: 640px){.now-playing-hero--dj{height:auto;min-height:460px}.now-playing-waveform--dj{height:32px;margin-bottom:20px}}.show-notes{padding:40px 40px 8px;max-width:720px}.show-notes-eyebrow{font-size:var(--fs-xs);font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--accent-text);margin:0 0 22px}.show-notes-block+.show-notes-block{margin-top:32px}.show-notes-label{font-size:var(--fs-xs);font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-faint);margin:0 0 10px}.show-notes-secondary{margin-top:40px;padding-top:32px;border-top:1px solid var(--border)}.show-notes-lede{font-size:var(--fs-xl);font-weight:650;line-height:1.55;margin:0;max-width:46ch}.show-notes-body{font-size:var(--fs-md);line-height:1.8;color:var(--text-muted);margin:0;white-space:pre-wrap}.show-notes-body.is-clamped{display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}.show-notes-toggle{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;background:none;padding:0;margin-top:10px;font:inherit;font-size:var(--fs-xs);font-weight:700;letter-spacing:.02em;color:var(--accent-text);cursor:pointer}.show-notes-toggle:hover{color:var(--accent-text-strong)}.takeaway-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:26px}.takeaway-row{display:flex;gap:18px;align-items:flex-start}.takeaway-index{flex:none;font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,monospace;font-size:1.375rem;font-weight:700;line-height:1.4;color:var(--accent-text);font-variant-numeric:tabular-nums}.takeaway-text{font-size:var(--fs-lg);line-height:1.65;color:var(--text);padding-top:3px}.related-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:14px}.related-row{display:flex;gap:14px;align-items:baseline}.related-index{flex:none;font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,monospace;font-size:var(--fs-xs);color:var(--text-faint);font-variant-numeric:tabular-nums}.related-body{min-width:0}.related-title{font-size:var(--fs-sm);color:var(--text-muted);margin:0;line-height:1.5}.related-tags{font-size:var(--fs-xs);color:var(--text-faint);margin:2px 0 0}@media (max-width: 640px){.show-notes{padding:16px 16px 8px}.show-notes-eyebrow{display:none}.show-notes-block+.show-notes-block{margin-top:20px}.show-notes-label{margin-bottom:6px}.show-notes-lede{font-size:var(--fs-lg)}.show-notes-secondary{margin-top:24px;padding-top:20px}.show-notes-body.is-clamped{-webkit-line-clamp:3}.takeaway-list,.takeaway-row{gap:12px}.takeaway-index{font-size:var(--fs-md);line-height:1.6}.takeaway-text{font-size:var(--fs-md);line-height:1.6;padding-top:0}}.theme-manager,.paper-list{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-card);padding:20px 22px;box-shadow:var(--shadow-card)}.theme-manager>h2,.paper-list>h2{font-size:var(--fs-lg);margin-bottom:4px}.paper-list-desc{margin:0 0 16px;font-size:var(--fs-sm);color:var(--text-muted)}.theme-manager h3{font-size:var(--fs-sm);color:var(--text-muted);text-transform:none;margin:0 0 10px}.theme-section+.theme-section{margin-top:20px;padding-top:20px;border-top:1px solid var(--border)}.theme-section-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;margin-bottom:12px}.theme-section-header h2{display:flex;align-items:center;gap:8px;font-size:var(--fs-lg);margin:0}.theme-section-count{font-size:var(--fs-xs);font-weight:600;color:var(--text-muted);background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-pill);padding:2px 8px;line-height:1.2}.theme-section-desc{margin:0;font-size:var(--fs-sm);color:var(--text-muted)}.theme-section>.theme-form,.theme-section>.theme-message{margin:0 0 12px}.theme-section-desc+.theme-row-processing{margin-top:10px}.theme-add-toggle.active{background:var(--surface-2)!important;color:var(--text)!important}.theme-row-spinner{display:inline-block;width:13px;height:13px;border-radius:50%;border:2px solid var(--border-strong);border-top-color:var(--accent);animation:onboarding-spin .9s linear infinite}.theme-row-processing{display:flex;flex-wrap:wrap;align-items:center;gap:4px 7px;margin:0;font-size:var(--fs-xs);color:var(--text-muted)}.toast-stack{position:fixed;right:20px;bottom:calc(var(--player-live-h, var(--player-h)) + 16px);z-index:40;display:flex;flex-direction:column;gap:8px;max-width:360px}.toast{display:flex;align-items:flex-start;gap:10px;padding:10px 12px;border-radius:var(--r-control);border:1px solid var(--border);background:var(--surface);box-shadow:var(--shadow-card);font-size:var(--fs-sm);animation:toast-in .16s var(--ease)}.toast span:first-child{flex:1 1 auto}.toast-success{border-color:color-mix(in srgb,var(--good) 45%,var(--border))}.toast-error{border-color:color-mix(in srgb,var(--danger) 45%,var(--border))}.toast-dismiss{border:none!important;background:transparent!important;padding:2px!important;color:var(--text-faint)!important;flex:0 0 auto}.toast-dismiss:hover:not(:disabled){color:var(--text)!important}@keyframes toast-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}button{font:inherit;cursor:pointer}.theme-manager button,.discover button,.paper-list button,.player button,.program-strip button,.program-card button,.admin-app button{display:inline-flex;align-items:center;justify-content:center;gap:6px;font-size:var(--fs-sm);font-weight:550;line-height:1;padding:7px 12px;border:1px solid var(--border);border-radius:var(--r-control);background:var(--surface);color:var(--text);transition:background .14s var(--ease),border-color .14s var(--ease),transform .06s var(--ease),color .14s var(--ease)}.theme-manager button:hover:not(:disabled),.discover button:hover:not(:disabled),.paper-list button:hover:not(:disabled),.player button:hover:not(:disabled),.program-strip button:hover:not(:disabled),.program-card button:hover:not(:disabled),.admin-app button:hover:not(:disabled){background:var(--bg-hover);border-color:var(--border-strong)}.theme-manager button:active:not(:disabled),.discover button:active:not(:disabled),.paper-list button:active:not(:disabled),.player button:active:not(:disabled),.program-strip button:active:not(:disabled),.program-card button:active:not(:disabled),.admin-app button:active:not(:disabled){transform:translateY(1px)}.theme-manager button:disabled,.discover button:disabled,.paper-list button:disabled,.player button:disabled,.program-strip button:disabled,.program-card button:disabled,.admin-app button:disabled{opacity:.45;cursor:not-allowed}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,a:focus-visible{outline:none;box-shadow:var(--ring);border-color:var(--accent)}.btn-primary{background:var(--accent)!important;border-color:transparent!important;color:var(--accent-on)!important}.btn-primary:hover:not(:disabled){background:var(--accent-hover)!important}.btn-danger:hover:not(:disabled){color:var(--danger)!important;border-color:var(--danger)!important;background:var(--danger-weak)!important}.btn-icon{padding:7px!important}.btn-icon.active{color:var(--accent-text)!important;border-color:var(--accent)!important;background:var(--accent-weak)!important}.btn-icon.active-good{color:var(--good)!important;border-color:var(--good)!important;background:color-mix(in srgb,var(--good) 12%,transparent)!important}input,select,textarea{font:inherit;font-size:var(--fs-base);color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:var(--r-control);padding:8px 11px;transition:border-color .14s var(--ease),box-shadow .14s var(--ease)}input::placeholder,textarea::placeholder{color:var(--text-faint)}textarea{resize:vertical;line-height:1.55}.ai-input-notice{flex-basis:100%;margin:0;font-size:var(--fs-xs);line-height:1.55;color:var(--text-muted)}.ai-input-notice span[lang=en]{display:block;color:var(--text-faint)}.theme-form{display:flex;gap:8px;flex-wrap:wrap;align-items:flex-start;margin-bottom:4px}.theme-form>input:first-child{flex:1 1 150px}.theme-form select{flex:0 0 auto}.theme-form>input:not(:first-child),.theme-form .theme-nl-input{flex:2 1 240px}.theme-row-processing-hint{color:var(--text-faint);font-size:var(--fs-xs)}.theme-form-actions{flex:1 1 100%;display:flex;align-items:center;gap:14px}.theme-venue-fields{flex:1 1 100%;display:flex;flex-direction:column;gap:8px}.theme-venue-row{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.theme-venue-row input[type=number]{width:90px}.theme-venue-fields .theme-nl-input{flex:1 1 auto;width:100%}.theme-recommend-panel{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin:14px 0 0;padding:10px 12px;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-control)}.theme-recommend-panel p{flex:1 1 auto;margin:0;color:var(--text-muted);font-size:var(--fs-sm)}.theme-message{color:var(--text-muted);font-size:var(--fs-sm);margin:12px 0 0;padding:9px 12px;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-control)}.theme-list{list-style:none;padding:0;margin:14px 0 0}.theme-row{display:flex;flex-direction:column;align-items:stretch;gap:8px;padding:14px 0;border-top:1px solid var(--border)}.theme-row:first-child{border-top:none;padding-top:4px}.theme-row-head{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.theme-row-head>span{flex:1 1 240px;display:flex;flex-direction:column;gap:3px;font-weight:600;font-size:var(--fs-md)}.theme-manager .theme-list{margin:0}.theme-manager .theme-row-head{align-items:flex-start}.theme-manager .theme-row-head>span:first-child{min-width:0;font-weight:400;font-size:var(--fs-sm)}.theme-row-head>.theme-row-actions{flex:0 1 auto;min-width:0;flex-direction:row;flex-wrap:wrap;align-items:center;gap:8px}.theme-row-name{font-weight:600;font-size:var(--fs-md);color:var(--text)}.theme-row-query{color:var(--text-muted);overflow-wrap:anywhere}.theme-rec-list{list-style:none;padding:0;margin:12px 0 0;display:flex;flex-direction:column;gap:8px}.theme-rec-card{display:flex;flex-direction:column;gap:10px;padding:12px 14px;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-control)}.theme-rec-preview{color:var(--text-muted);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.theme-rec-context{font-size:var(--fs-xs);color:var(--text-faint)}.theme-manager .theme-link-toggle{display:inline;padding:0;border:none;background:none;font-size:inherit;font-weight:700;line-height:inherit;color:var(--accent-text)}.theme-manager .theme-link-toggle:hover:not(:disabled){background:none;color:var(--accent-text-strong)}.theme-manager .theme-link-toggle:active:not(:disabled){transform:none}.theme-rec-reason{display:flex;flex-direction:column;gap:6px;padding-top:10px;border-top:1px solid var(--border)}.theme-rec-reason p{margin:0;font-size:var(--fs-sm);line-height:1.7;color:var(--text-muted);white-space:pre-wrap}.theme-profile-preview{font-size:var(--fs-xs);font-weight:400;color:var(--text-faint)}.note-body{margin:0;font-size:var(--fs-sm);white-space:pre-wrap}.theme-resolved-query{font-size:var(--fs-xs);font-weight:400;color:var(--text-muted)}.theme-resolved-query code{font-size:.72rem;background:var(--bg);border:1px solid var(--border);padding:1px 5px;border-radius:5px;word-break:break-word}.theme-profile-edit{display:flex;flex-direction:column;gap:10px;padding:14px;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-control)}.theme-edit-field{display:flex;flex-direction:column;gap:5px}.theme-edit-field>span{font-size:var(--fs-xs);color:var(--text-muted);font-weight:550}.theme-edit-field textarea,.theme-profile-edit>textarea{width:100%}.theme-profile-actions{display:flex;gap:8px;flex-wrap:wrap}.tag{display:inline-flex;align-items:center;font-size:var(--fs-xs);font-weight:550;padding:1px 7px;border-radius:var(--r-pill);background:var(--bg);border:1px solid var(--border);color:var(--text-muted)}.paper-tags{display:inline-flex;flex-wrap:wrap;gap:4px;margin:2px 0}.paper-list button.tag{padding:1px 7px!important;border-radius:var(--r-pill)!important;font-size:var(--fs-xs)!important;font-weight:550;gap:0}.tag-clickable:hover:not(:disabled){border-color:var(--accent);color:var(--accent-text)}.tag-clickable.active{background:var(--accent-weak);border-color:var(--accent);color:var(--accent-text)}.paper-actions{display:flex;align-items:center;gap:5px;flex-shrink:0;flex-wrap:wrap}.discover{display:flex;flex-direction:column}.discover-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-bottom:16px;border-bottom:1px solid var(--border)}.discover-title{font-size:var(--fs-sm);font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted)}.discover-header-actions{display:flex;align-items:center;gap:8px}.discover .discover-header-btn{background:transparent;color:var(--text-muted)}.discover .discover-header-btn.active,.discover .discover-header-btn.active:hover:not(:disabled){background:var(--accent-weak);border-color:color-mix(in srgb,var(--accent) 40%,transparent);color:var(--accent-text)}.add-menu{position:relative}.add-menu-panel{position:absolute;top:calc(100% + 8px);right:0;z-index:30;width:min(420px,calc(100vw - 32px));display:flex;flex-direction:column;gap:10px;padding:16px;background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--r-card);box-shadow:var(--shadow-pop)}.add-menu-form{display:flex;flex-direction:column;gap:8px}.add-menu-label{font-size:var(--fs-sm);font-weight:600}.add-menu-row{display:flex;gap:8px}.add-menu-row input{flex:1 1 auto;min-width:0}.add-menu-hint{margin:0;font-size:var(--fs-xs);color:var(--text-faint)}.discover .add-menu-link{align-self:flex-start;padding:10px 0 0;border:none;border-top:1px solid var(--border);border-radius:0;width:100%;justify-content:flex-start;background:transparent;color:var(--accent-text)}.discover .add-menu-link:hover:not(:disabled){background:transparent;color:var(--accent-text-strong)}.discover-manage{display:flex;flex-direction:column;gap:14px;padding-top:18px}.discover .discover-back{align-self:flex-start;padding:4px 0;border:none;background:transparent;color:var(--text-muted)}.discover .discover-back:hover:not(:disabled){background:transparent;color:var(--text)}.today{padding-top:28px}.today-head{display:flex;align-items:flex-end;justify-content:space-between;flex-wrap:wrap;gap:20px 32px}.today-eyebrow{margin:0 0 8px;font-size:var(--fs-xs);font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--accent-text)}.today-title{font-size:1.75rem;font-weight:700;letter-spacing:-.02em;line-height:1.2}.today-summary{margin:8px 0 0;min-height:1.55em;font-size:var(--fs-md);color:var(--text-muted);font-variant-numeric:tabular-nums}.today-summary-sub{margin-left:4px;font-size:var(--fs-sm);color:var(--text-faint)}.today-summary-placeholder{color:var(--text-faint)}.today-cta{display:flex;flex-direction:column;align-items:flex-end;gap:8px}.discover .today-listen{padding:11px 20px;border-radius:var(--r-pill);font-size:var(--fs-md);font-weight:650}.today-cta-hint{display:flex;align-items:baseline;gap:8px;max-width:340px;margin:0;font-size:var(--fs-xs);color:var(--text-faint)}.today-cta-onair,.lineup-onair{flex:none;font-size:.6875rem;font-weight:800;letter-spacing:.04em;color:var(--danger)}.today-cta-hint-text{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.today-toolbar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px 16px;margin-top:24px}.today-chips{display:flex;flex-wrap:wrap;gap:6px}.discover .today-chip{gap:7px;padding:5px 12px;border-radius:var(--r-pill);background:transparent;color:var(--text-muted)}.discover .today-chip.active,.discover .today-chip.active:hover:not(:disabled){background:var(--accent-weak);border-color:color-mix(in srgb,var(--accent) 40%,transparent);color:var(--accent-text)}.today-chip-count{font-size:var(--fs-xs);font-weight:600;color:var(--text-faint);font-variant-numeric:tabular-nums}.today-chip.active .today-chip-count{color:inherit;opacity:.75}.discover .today-find-new{margin-left:auto;padding:6px 8px;border-color:transparent;background:transparent;color:var(--text-muted)}.today-filter-note{margin:10px 0 0;font-size:var(--fs-xs);color:var(--text-faint)}.today>.skeleton-list{margin-top:18px}.today-empty{display:flex;flex-direction:column;align-items:flex-start;gap:10px;margin-top:24px;padding:32px 28px;border:1px dashed var(--border-strong);border-radius:var(--r-card)}.today-empty-title{margin:0;font-size:var(--fs-lg);font-weight:650}.today-empty-text{max-width:540px;margin:0 0 4px;color:var(--text-muted)}.lineup-list{list-style:none;margin:16px 0 0;padding:0;border-top:1px solid var(--border)}.lineup-row{--lineup-cols: 72px minmax(0, 1fr) auto;display:flex;align-items:center;gap:4px;border-bottom:1px solid var(--border);transition:background .14s var(--ease)}.lineup-row:hover{background:color-mix(in srgb,var(--bg-hover) 60%,transparent)}.lineup-row.current{background:color-mix(in srgb,var(--accent) 7%,transparent);box-shadow:inset 2px 0 0 var(--accent)}.discover .lineup-main,.discover .lineup-main:hover:not(:disabled),.discover .lineup-main:active:not(:disabled){flex:1;min-width:0;display:grid;grid-template-columns:var(--lineup-cols);align-items:start;justify-content:stretch;gap:0;padding:16px 8px 16px 0;border:none;border-radius:0;background:transparent;font-size:var(--fs-base);font-weight:400;line-height:1.5;text-align:left;transform:none}.lineup-index{padding:2px 0 0 14px;font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,monospace;font-size:var(--fs-sm);color:var(--text-faint);font-variant-numeric:tabular-nums}.lineup-index .lineup-onair{font-family:-apple-system,BlinkMacSystemFont,Hiragino Sans,sans-serif}.lineup-body{display:flex;flex-direction:column;gap:4px;min-width:0}.lineup-title{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;font-size:var(--fs-md);font-weight:600;line-height:1.4;color:var(--text)}.lineup-tldr{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--fs-sm);color:var(--text-muted)}.lineup-meta{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-top:2px;font-size:var(--fs-xs);color:var(--text-faint)}.lineup-kind{padding:0 6px;border:1px solid var(--border-strong);border-radius:4px;font-size:.6875rem;font-weight:700;letter-spacing:.04em;line-height:1.6;color:var(--text-muted)}.lineup-duration:before,.lineup-preparing:before{content:"·";margin-right:8px;color:var(--text-faint)}.lineup-duration{font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,monospace;font-variant-numeric:tabular-nums}.lineup-preparing{color:color-mix(in srgb,var(--accent) 80%,var(--text-faint))}.lineup-play-glyph{align-self:center;margin:0 4px 0 12px;color:var(--text-muted);opacity:0;transition:opacity .14s var(--ease)}.lineup-row:hover .lineup-play-glyph,.lineup-main:focus-visible .lineup-play-glyph{opacity:1}.lineup-actions{display:flex;align-items:center;flex-wrap:wrap;gap:2px;padding-right:8px;opacity:0;transition:opacity .14s var(--ease)}.lineup-row:hover .lineup-actions,.lineup-row:focus-within .lineup-actions,.lineup-actions--visible{opacity:1}.discover .lineup-actions button{border-color:transparent;background:transparent;color:var(--text-faint)}.lineup-row.other{--lineup-cols: minmax(0, 1fr)}.lineup-row.other .lineup-body{padding-left:14px}.lineup-row.other .lineup-title{font-weight:550;color:var(--text-muted)}.lineup-row.rejected{opacity:.55}details.lineup-others{margin-top:28px}details.lineup-others>summary{cursor:pointer;padding:8px 0;font-size:var(--fs-sm);font-weight:600;color:var(--text-muted)}details.lineup-others>summary:hover{color:var(--text)}.lineup-others-desc{margin:0 0 4px;font-size:var(--fs-xs);color:var(--text-faint)}@media (hover: none){.lineup-actions{opacity:1}}@media (max-width: 640px){.app-main>.discover{margin:20px 16px 0}.today-cta{align-items:stretch;width:100%}.discover .today-listen{width:100%}.lineup-row{--lineup-cols: 60px minmax(0, 1fr)}.discover .lineup-main,.discover .lineup-main:hover:not(:disabled),.discover .lineup-main:active:not(:disabled){flex-basis:100%}.lineup-row.other{--lineup-cols: minmax(0, 1fr)}.lineup-play-glyph{display:none}.lineup-row{flex-wrap:wrap}.lineup-actions{padding:0 8px 10px 60px}.lineup-row.other .lineup-actions{padding-left:14px}}.paper-list{overflow-x:auto}.list-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:12px}.list-search{flex:1 1 200px;min-width:160px}.list-toolbar select{flex:0 0 auto;font-size:var(--fs-sm);padding:6px 8px}.list-count{margin-left:auto;font-size:var(--fs-xs);color:var(--text-faint);white-space:nowrap}.filter-chip{display:inline-flex;align-items:center;gap:5px;font-size:var(--fs-sm);font-weight:550;padding:6px 10px;border:1px solid var(--border);border-radius:var(--r-pill);background:var(--surface);color:var(--text-muted);cursor:pointer}.filter-chip.active{border-color:var(--accent);background:var(--accent-weak);color:var(--accent-text)}.bulk-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 12px;margin-bottom:12px;border-radius:var(--r-control);background:var(--accent-weak);color:var(--accent-text);font-size:var(--fs-sm);font-weight:600}table{width:100%;min-width:760px;border-collapse:collapse;font-size:var(--fs-sm)}.col-check{width:1%;white-space:nowrap;text-align:center;vertical-align:middle}.col-check input{cursor:pointer}tbody tr.row-selected td{background:var(--accent-weak)}th:nth-child(2){width:40%}th:nth-child(3){width:14%}th:last-child{width:1%}th{text-align:left;padding:8px;font-size:var(--fs-xs);font-weight:600;color:var(--text-faint);border-bottom:1px solid var(--border);white-space:nowrap}td{text-align:left;padding:12px 8px;border-bottom:1px solid var(--border);vertical-align:top}td.col-authors{max-width:150px;color:var(--text-muted);font-size:var(--fs-xs)}td.col-nowrap{white-space:nowrap;color:var(--text-muted);font-variant-numeric:tabular-nums}td:nth-child(4){max-width:130px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-muted)}.paper-actions{flex-wrap:nowrap}.paper-actions button{white-space:nowrap}tbody tr:last-child td{border-bottom:none}tbody tr:hover td{background:var(--bg-hover)}td a{color:var(--text);font-weight:600;text-decoration:none}td a:hover{text-decoration:underline;text-underline-offset:2px}.paper-tldr{font-size:var(--fs-xs);color:var(--text-muted);margin-top:4px;max-width:46ch;line-height:1.5}.status-pill{display:inline-flex;align-items:center;gap:4px;font-size:var(--fs-xs);font-weight:550;padding:2px 8px;border-radius:var(--r-pill);background:var(--bg);border:1px solid var(--border);color:var(--text-muted);white-space:nowrap}.status-pill.ready{color:var(--good);border-color:color-mix(in srgb,var(--good) 40%,var(--border))}.status-pill.generating{color:var(--accent-text);border-color:color-mix(in srgb,var(--accent) 40%,var(--border))}.status-pill.failed{color:var(--danger);border-color:color-mix(in srgb,var(--danger) 40%,var(--border))}.empty-state{display:flex;flex-direction:column;align-items:center;gap:8px;padding:36px 16px;color:var(--text-muted);font-size:var(--fs-sm);text-align:center}.empty-state svg{color:var(--text-faint)}.skeleton-list{display:flex;flex-direction:column;gap:2px}.skeleton-row{height:62px;border-radius:var(--r-control);background:linear-gradient(100deg,var(--surface-2) 30%,var(--bg-hover) 50%,var(--surface-2) 70%);background-size:200% 100%;animation:shimmer 1.4s ease-in-out infinite}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.player{position:fixed;left:0;right:0;bottom:0;z-index:30;padding:12px 20px 14px;background:color-mix(in srgb,var(--surface) 90%,transparent);-webkit-backdrop-filter:saturate(180%) blur(12px);backdrop-filter:saturate(180%) blur(12px);border-top:1px solid var(--border);box-shadow:var(--player-shadow);transition:background .2s var(--ease),padding .2s var(--ease)}.player--console{left:var(--sidebar-w);padding:18px 40px 22px;background:var(--player-console-bg);-webkit-backdrop-filter:none;backdrop-filter:none;border-top:1px solid var(--player-console-border);box-shadow:none}@media (min-width: 901px){.player,.player--console{left:calc(max(0px,(100vw - 2080px) / 2) + var(--sidebar-w));right:max(0px,(100vw - 2080px) / 2)}}.player--console .player-info{display:none}.player--console .player-inner{max-width:none}@media (max-width: 900px){.player--console{left:0}}@media (max-width: 640px){:root{--player-h: 220px}.app-main{padding-bottom:calc(var(--player-live-h, var(--player-h)) + 16px)}.player--console{padding:10px 16px 12px}}.player-inner{max-width:1280px;margin:0 auto;display:flex;flex-direction:column;gap:8px}.player-empty{max-width:1280px;margin:0 auto;text-align:center;color:var(--text-muted);font-size:var(--fs-sm)}.player-info{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}.player-badge{flex-shrink:0;display:inline-flex;align-items:center;font-size:var(--fs-xs);font-weight:600;padding:2px 9px;border-radius:var(--r-pill);background:var(--accent-weak);color:var(--accent-text)}.player-badge.deepdive{background:var(--bg);border:1px solid var(--border);color:var(--text-muted)}.player-badge.dj{gap:4px;background:var(--dj-weak);color:var(--dj)}.player-bgm{display:inline-flex;align-items:center;gap:6px}.player-bgm-label{font-size:var(--fs-xs);font-weight:650;letter-spacing:.06em;color:var(--text-muted)}.player-bgm-volume{width:72px;margin:0;padding:0;border:0;border-radius:0;background:transparent;accent-color:var(--accent)}.player-title{font-size:var(--fs-md);font-weight:650;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.player-meta,.player-status{font-size:var(--fs-sm);color:var(--text-muted)}.player-seek{display:flex;flex-direction:column;gap:2px}.player-seek input[type=range]{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;height:14px;margin:0;background:transparent;cursor:pointer}.player-seek input[type=range]:disabled{cursor:default;opacity:.55}.player-seek input[type=range]::-webkit-slider-runnable-track{height:4px;border-radius:var(--r-pill);background:linear-gradient(to right,var(--accent) var(--seek-fill, 0%),var(--border) var(--seek-fill, 0%))}.player-seek input[type=range]::-moz-range-track{height:4px;border-radius:var(--r-pill);background:var(--border)}.player-seek input[type=range]::-moz-range-progress{height:4px;border-radius:var(--r-pill);background:var(--accent)}.player-seek input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:12px;height:12px;margin-top:-4px;border-radius:50%;background:var(--accent);opacity:0;transition:opacity .12s var(--ease)}.player-seek input[type=range]::-moz-range-thumb{width:12px;height:12px;border:none;border-radius:50%;background:var(--accent);opacity:0}.player-seek input[type=range]:hover::-webkit-slider-thumb,.player-seek input[type=range]:active::-webkit-slider-thumb,.player-seek input[type=range]:focus-visible::-webkit-slider-thumb{opacity:1}.player-seek input[type=range]:hover::-moz-range-thumb,.player-seek input[type=range]:active::-moz-range-thumb{opacity:1}.player-seek-times{display:flex;justify-content:space-between;font-size:var(--fs-xs);color:var(--text-muted);font-variant-numeric:tabular-nums}.player audio{display:none}.player-controls{display:flex;gap:6px;flex-wrap:wrap;align-items:center}.player-controls select{padding:6px 8px;font-size:var(--fs-sm)}.player-controls .spacer{flex:1}.player-play{width:38px;height:38px;border-radius:var(--r-pill)!important;padding:0!important}.player--console .player-play{width:52px;height:52px}.player--console .player-controls{gap:14px}.player-script{margin:4px 0 0;padding:12px 14px;max-height:40vh;overflow-y:auto;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-control);white-space:pre-wrap;line-height:1.75;font-size:var(--fs-sm);color:var(--text)}.player-add-note{display:flex;gap:8px;align-items:flex-end;margin:4px 0 0}.player-add-note textarea{flex:1;padding:10px 12px;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-control);font:inherit;font-size:var(--fs-sm);color:var(--text);resize:vertical}.chapter-list{list-style:none;padding:0;margin:6px 0 0;max-height:220px;overflow-y:auto;border:1px solid var(--border);border-radius:var(--r-control)}.chapter-item+.chapter-item{border-top:1px solid var(--border)}.chapter-item button{width:100%;display:flex!important;gap:10px;padding:8px 12px!important;background:transparent!important;border:none!important;color:var(--text)!important;text-align:left;justify-content:flex-start!important;font-weight:500!important}.chapter-item button:hover{background:var(--bg-hover)!important}.chapter-item.active button{background:var(--accent-weak)!important;color:var(--accent-text)!important}.chapter-index{color:var(--text-faint);font-variant-numeric:tabular-nums}.chapter-title{flex:1}.chapter-duration{color:var(--text-faint);font-variant-numeric:tabular-nums}.chapter-list-empty{font-size:var(--fs-sm);color:var(--text-muted)}.onboarding{display:flex;flex-direction:column;gap:26px;width:100%;max-width:868px;padding:28px 24px 36px}.onboarding-header{display:flex;flex-direction:column;align-items:center;gap:10px;text-align:center}.onboarding-eyebrow{display:inline-flex;align-items:center;gap:6px;margin:0;font-size:var(--fs-xs);font-weight:700;letter-spacing:.08em;color:var(--accent-text-strong)}.onboarding-eyebrow svg{color:var(--accent)}.onboarding-title{font-size:1.75rem;line-height:1.35;font-weight:700;letter-spacing:-.01em;margin:0}.onboarding-title:focus{outline:none}.onboarding-subtitle{font-size:var(--fs-lg);line-height:1.7;color:var(--text-muted);margin:0;max-width:680px}.onboarding-section{display:flex;flex-direction:column;gap:12px}.onboarding-section-label{font-size:var(--fs-lg);font-weight:700;color:var(--text);margin:0;letter-spacing:0}.onboarding-section-help{font-size:var(--fs-md);line-height:1.6;color:var(--text-muted);margin:-6px 0 2px}.onboarding-compose{padding:20px 24px;border:1px solid var(--border-strong);border-radius:var(--r-card);background:var(--surface);box-shadow:var(--shadow-card)}.onboarding-topic-input{width:100%;min-height:88px;padding:12px 14px;background:var(--bg);font-size:var(--fs-lg);line-height:1.6;resize:none}.onboarding-topic-input:disabled{opacity:.55;cursor:not-allowed}.onboarding-ai-notice{font-size:var(--fs-sm)}.onboarding-compose-actions{display:flex;align-items:center;justify-content:space-between;gap:12px}.onboarding-compose-note{font-size:var(--fs-sm);color:var(--text-faint)}.onboarding-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:inline-flex;align-items:center;justify-content:center;gap:6px;font:inherit;font-size:var(--fs-base);font-weight:650;line-height:1;padding:10px 16px;border:1px solid var(--border-strong);border-radius:var(--r-control);background:var(--surface-2);color:var(--text);cursor:pointer;white-space:nowrap;transition:background .14s var(--ease),border-color .14s var(--ease),color .14s var(--ease),box-shadow .14s var(--ease)}.onboarding-btn:hover:not(:disabled){background:var(--bg-hover)}.onboarding-btn:disabled{opacity:.45;cursor:not-allowed}.onboarding-btn-secondary{border-color:color-mix(in srgb,var(--accent) 45%,transparent);background:var(--accent-weak);color:var(--accent-text-strong)}.onboarding-btn-secondary:hover:not(:disabled){background:color-mix(in srgb,var(--accent) 24%,transparent)}.onboarding-btn-quiet{border-color:transparent;background:transparent;color:var(--text-muted)}.onboarding-btn-quiet:hover:not(:disabled){background:transparent;color:var(--text)}.onboarding-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.onboarding-card{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:flex;flex-direction:column;align-items:flex-start;gap:4px;text-align:left;border:1px solid var(--border-strong);background:var(--surface-2);color:var(--text);border-radius:var(--r-card);padding:12px 16px;cursor:pointer;font:inherit;transition:border-color .14s var(--ease),background .14s var(--ease)}.onboarding-card:hover:not(:disabled):not(.selected){border-color:color-mix(in srgb,var(--accent) 40%,var(--border-strong));background:var(--bg-hover)}.onboarding-card:focus-visible{outline:none;box-shadow:var(--ring)}.onboarding-card.selected{border-color:var(--accent);background:var(--accent-weak);box-shadow:0 0 0 1px var(--accent) inset}.onboarding-card:disabled{opacity:.4;cursor:not-allowed}.onboarding-card-title{font-size:var(--fs-md);font-weight:700}.onboarding-card.selected .onboarding-card-title{color:var(--accent-text-strong)}.onboarding-card-blurb{font-size:var(--fs-sm);color:var(--text-muted);line-height:1.5}.onboarding-footer{position:sticky;bottom:0;z-index:1;display:flex;flex-direction:column;align-items:center;gap:14px;margin:0 -24px -16px;padding:20px 24px 16px;border-top:1px solid var(--border);background:var(--bg);text-align:center}.onboarding-selection{display:flex;flex-direction:column;align-items:center;gap:10px;min-width:0;max-width:100%}.onboarding-hint{font-size:var(--fs-md);color:var(--text-muted);margin:0}.onboarding-chips{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin:0;padding:0;list-style:none}.onboarding-chip{display:inline-flex;align-items:center;gap:2px;max-width:100%;padding:5px 6px 5px 12px;border:1px solid color-mix(in srgb,var(--accent) 35%,transparent);border-radius:var(--r-pill);background:var(--accent-weak);color:var(--accent-text-strong);font-size:var(--fs-sm);font-weight:650}.onboarding-chip-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.onboarding-chip-remove{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:24px;height:24px;padding:0;border:none;border-radius:50%;background:transparent;color:inherit;cursor:pointer}.onboarding-chip-remove:hover{background:color-mix(in srgb,var(--accent) 22%,transparent)}.onboarding-cta{min-width:300px;padding:16px 40px;border-radius:var(--r-card);font-size:var(--fs-lg);font-weight:700;letter-spacing:.02em}.onboarding-cta:not(:disabled){box-shadow:0 8px 22px color-mix(in srgb,var(--accent) 28%,transparent)}.onboarding-stages{display:flex;flex-direction:column;gap:2px;width:100%;max-width:560px;margin:6px 0 0;padding:8px;list-style:none;text-align:left;border:1px solid var(--border-strong);border-radius:var(--r-card);background:var(--surface)}.onboarding-stage{display:flex;align-items:flex-start;gap:12px;padding:10px;border-radius:var(--r-control)}.onboarding-stage-icon{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:22px;height:22px;border-radius:50%;border:1px solid var(--border-strong);color:var(--text-faint)}.onboarding-stage.is-active{background:var(--accent-weak)}.onboarding-stage.is-active .onboarding-stage-icon{border-color:var(--accent)}.onboarding-stage.is-done .onboarding-stage-icon{border-color:transparent;background:color-mix(in srgb,var(--good) 18%,transparent);color:var(--good)}.onboarding-stage.is-failed .onboarding-stage-icon,.onboarding-stage.is-failed .onboarding-progress-phase{border-color:transparent;color:var(--danger)}.onboarding-stage.is-pending .onboarding-progress-title,.onboarding-stage.is-skipped .onboarding-progress-title{color:var(--text-faint);font-weight:600}.onboarding-elapsed{margin:0;font-size:var(--fs-sm);color:var(--text-faint);font-variant-numeric:tabular-nums}.onboarding-partial-note.is-error{color:var(--danger)}.visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.onboarding-status{display:flex;flex-direction:column;align-items:center;gap:14px;text-align:center}.onboarding-preparing-spinner{width:34px;height:34px;border-radius:50%;border:3px solid var(--border-strong);border-top-color:var(--accent);animation:onboarding-spin .9s linear infinite}@keyframes onboarding-spin{to{transform:rotate(360deg)}}.onboarding-progress{display:flex;flex-direction:column;gap:2px;width:100%;max-width:560px;margin:6px 0 0;padding:8px;list-style:none;text-align:left;border:1px solid var(--border-strong);border-radius:var(--r-card);background:var(--surface)}.onboarding-progress-item{display:flex;align-items:flex-start;gap:12px;padding:10px}.onboarding-progress-icon{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:20px;height:20px;margin-top:1px;color:var(--text-faint)}.onboarding-progress-item.is-done .onboarding-progress-icon{color:var(--good)}.onboarding-progress-item.is-failed .onboarding-progress-icon,.onboarding-progress-item.is-failed .onboarding-progress-phase{color:var(--danger)}.onboarding-progress-spinner{width:14px;height:14px;border-radius:50%;border:2px solid var(--border-strong);border-top-color:var(--accent);animation:onboarding-spin .9s linear infinite}.onboarding-progress-dot{width:6px;height:6px;border-radius:50%;background:var(--border-strong)}.onboarding-progress-text{display:flex;flex-direction:column;gap:2px;min-width:0}.onboarding-progress-title{font-size:var(--fs-md);font-weight:700;overflow-wrap:anywhere}.onboarding-progress-phase{font-size:var(--fs-sm);color:var(--text-muted)}.onboarding-partial-note{font-size:var(--fs-sm);color:var(--text-muted);margin:0;max-width:560px}.onboarding-actions{display:flex;flex-direction:column;align-items:center;gap:6px;margin-top:8px}@media (max-width: 900px){.onboarding{padding:28px 20px 40px}.onboarding-footer{margin:0 -20px -16px;padding:20px 20px 16px}}@media (max-width: 640px){.onboarding{gap:24px;padding:24px 16px 32px}.onboarding-title{font-size:1.4375rem}.onboarding-subtitle{font-size:var(--fs-md)}.onboarding-compose{padding:16px}.onboarding-topic-input{min-height:96px;font-size:1rem}.onboarding-compose-note{display:none}.onboarding-compose-actions .onboarding-btn{width:100%;padding:12px 16px}.onboarding-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.onboarding-card{padding:12px 14px}.onboarding-footer{position:static;margin:0;padding:20px 0 0}.onboarding-cta{width:100%;min-width:0}}@media (max-width: 360px){.onboarding-cards{grid-template-columns:1fr}}@media (prefers-reduced-motion: reduce){*,:before,:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.program-strip{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 16px;padding:12px 20px;margin-bottom:12px;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-card)}.program-strip-label{display:flex;align-items:baseline;gap:10px}.program-eyebrow{font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,monospace;font-size:var(--fs-xs);letter-spacing:.06em;color:var(--accent-text);margin:0}.program-length{font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,monospace;font-size:var(--fs-xs);color:var(--text-muted)}.program-selector{display:flex;gap:6px}.program-choice{border-radius:var(--r-pill)!important;padding:4px 12px!important;font-size:var(--fs-sm)}.program-choice.is-selected{background:var(--accent-weak)!important;border-color:var(--accent)!important;color:var(--accent-text)!important}.program-progress{margin:0;font-size:var(--fs-sm);color:var(--text-muted)}.program-card{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:10px;min-height:260px;padding:40px;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-card)}.program-card-title{font-size:clamp(1.5rem,2.2vw,2rem);font-weight:750;line-height:1.25;margin:0}.program-card-sub{margin:0 0 8px;color:var(--text-muted);font-size:var(--fs-md)}.program-card-note{margin:10px 0 0;font-size:var(--fs-sm);color:var(--text-muted)}.program-card-actions{display:flex;flex-wrap:wrap;gap:8px}.program-card--done .program-card-title{color:var(--text-muted)}.program-link{background:none!important;border:none!important;padding:0!important;color:var(--text-muted);font-size:var(--fs-sm);text-decoration:underline;text-underline-offset:3px}@media (max-width: 640px){.program-strip{padding:10px 14px}.program-card{padding:28px 20px;min-height:200px}}.sidebar-footer-row{display:flex;align-items:center;justify-content:space-between;gap:8px;padding-right:8px}.sidebar-footer-row .feedback-link{padding-bottom:0}.theme-menu{position:relative;margin-left:auto}.theme-menu-button{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;border:1px solid transparent;border-radius:var(--r-control);background:transparent;color:var(--text-faint);cursor:pointer}.theme-menu-button:hover,.theme-menu-button.active{color:var(--text);background:var(--bg-hover)}.theme-menu-button:focus-visible,.theme-menu-item:focus-visible{outline:none;box-shadow:var(--ring)}.theme-menu-popover{position:absolute;right:0;bottom:calc(100% + 6px);z-index:50;min-width:132px;padding:4px;display:flex;flex-direction:column;gap:2px;background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--r-card);box-shadow:var(--shadow-pop)}.theme-menu-item{display:flex;align-items:center;gap:8px;padding:7px 10px;border:0;border-radius:calc(var(--r-control) - 2px);background:transparent;color:var(--text-muted);font-size:var(--fs-sm);text-align:left;cursor:pointer}.theme-menu-item:hover{background:var(--bg-hover);color:var(--text)}.theme-menu-item.checked{color:var(--accent-text);font-weight:600}@media (max-width: 900px){.theme-menu-popover{position:fixed;top:56px;right:12px;bottom:auto}}.library-panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-card);padding:20px 22px;box-shadow:var(--shadow-card)}.library-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 12px;margin-bottom:4px}.library-head>h2{font-size:var(--fs-lg);margin:0}.library-tabs{display:inline-flex;gap:2px;padding:3px;border-radius:var(--r-pill);background:var(--bg);border:1px solid var(--border)}.library-head .library-tab{padding:5px 12px;border:0;border-radius:var(--r-pill);background:transparent;color:var(--text-muted);font-size:var(--fs-xs);font-weight:600;line-height:1.4;cursor:pointer}.library-head .library-tab:hover:not(.active){background:transparent;color:var(--text)}.library-head .library-tab.active,.library-head .library-tab.active:hover{background:var(--surface);color:var(--text);box-shadow:0 1px 2px #00000014}.pl{display:flex;flex-direction:column;min-width:0}.pl button{font:inherit;color:inherit}.pl-list-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px}.pl-list-desc{margin:0;font-size:var(--fs-sm);color:var(--text-muted)}.pl-secondary{flex:none;display:inline-flex;align-items:center;gap:6px;padding:7px 14px;border:1px solid var(--border-strong);border-radius:var(--r-pill);background:transparent;font-size:var(--fs-sm)!important;font-weight:600;white-space:nowrap;cursor:pointer}.pl-secondary:hover:not(:disabled){background:var(--bg-hover)}.pl-secondary:disabled{color:var(--text-faint)!important;cursor:default}.pl-play{display:inline-flex;align-items:center;gap:8px;padding:9px 18px 9px 14px;border:0;border-radius:var(--r-pill);background:var(--accent);color:var(--accent-on)!important;font-size:var(--fs-sm)!important;font-weight:700;white-space:nowrap;cursor:pointer}.pl-play.compact{padding:7px 16px}.pl-play:hover:not(:disabled){background:var(--accent-hover)}.pl-play:disabled{opacity:.45;cursor:default}.pl-text-btn{padding:6px 8px;border:0;border-radius:var(--r-control);background:transparent;color:var(--text-muted)!important;font-size:var(--fs-sm)!important;cursor:pointer}.pl-text-btn.strong{color:var(--accent-text-strong)!important;font-weight:700}.pl-text-btn:hover:not(:disabled){background:var(--bg-hover)}.pl-text-btn:disabled{opacity:.5;cursor:default}.pl-icon-btn{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border:0;border-radius:50%;background:transparent;color:var(--text-muted)!important;cursor:pointer}.pl-icon-btn:hover:not(:disabled){background:var(--bg-hover);color:var(--text)!important}.pl-icon-btn:disabled{opacity:.3;cursor:default}.pl-create,.pl-rename{display:flex;align-items:center;gap:8px}.pl-create{margin-bottom:12px}.pl-create input,.pl-rename input,.playlist-add-new input{flex:1;min-width:0;padding:8px 12px;border:1px solid var(--border-strong);border-radius:var(--r-control);background:var(--bg);color:var(--text);font-size:var(--fs-sm)}.pl-rename input{font-size:var(--fs-lg);font-weight:700}.pl-notice{margin-bottom:12px;padding:9px 12px;border-radius:var(--r-control);background:var(--accent-weak);color:var(--text);font-size:var(--fs-sm)}.pl-shelf,.pl-tracks,.playlist-add-list{list-style:none;margin:0;padding:0}.pl-row{display:flex;align-items:center;gap:8px;border-top:1px solid var(--border)}.pl-row:first-child{border-top:0}.pl-row-open{flex:1;min-width:0;display:flex;align-items:center;gap:14px;padding:10px 8px;margin:0 -8px;border:0;border-radius:var(--r-control);background:transparent;text-align:left;cursor:pointer}.pl-row-open:hover{background:var(--bg-hover)}.pl-tile{flex:none;width:44px;height:44px;display:flex;flex-direction:column;align-items:center;justify-content:center;border-radius:8px;background:var(--accent-weak);color:var(--accent-text-strong);line-height:1}.pl-tile-count{font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,monospace;font-size:var(--fs-md);font-weight:700}.pl-tile-unit{margin-top:2px;font-size:10px;opacity:.8}.pl-row-body{min-width:0;display:flex;flex-direction:column;gap:3px}.pl-row-name{font-size:var(--fs-base);font-weight:650;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pl-row.playing .pl-row-name,.pl-row-live{color:var(--accent-text-strong)}.pl-row-meta{font-size:var(--fs-xs);color:var(--text-muted)}.pl-row-play{flex:none;display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;border:1px solid var(--border-strong);border-radius:50%;background:transparent;color:var(--accent-text-strong)!important;cursor:pointer}.pl-row-play:hover:not(:disabled){background:var(--accent);border-color:transparent;color:var(--accent-on)!important}.pl-row-play:disabled{color:var(--text-faint)!important;opacity:.6;cursor:default}.pl-back{align-self:flex-start;display:inline-flex;align-items:center;gap:6px;margin:-4px 0 10px -8px;padding:4px 8px;border:0;border-radius:var(--r-control);background:transparent;color:var(--text-muted)!important;font-size:var(--fs-sm)!important;cursor:pointer}.pl-back:hover{background:var(--bg-hover);color:var(--text)!important}.pl-hero{display:flex;flex-direction:column;gap:6px;padding-bottom:18px;margin-bottom:6px;border-bottom:1px solid var(--border)}.pl-eyebrow{margin:0;font-size:var(--fs-xs);font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted)}.pl-title{margin:0;font-size:var(--fs-xl);line-height:1.3;overflow-wrap:anywhere}.pl-meta{margin:0;display:flex;flex-wrap:wrap;gap:4px 0;font-size:var(--fs-sm);color:var(--text-muted)}.pl-meta>span:before{content:"·";margin:0 6px;color:var(--text-faint)}.pl-preparing{color:var(--accent-text)}.pl-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:8px}.pl-menu{position:relative}.pl-menu-pop{position:absolute;left:0;top:calc(100% + 4px);z-index:60;min-width:180px;padding:4px;display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--r-card);box-shadow:var(--shadow-pop)}.pl-menu-pop button{padding:8px 10px;border:0;border-radius:var(--r-control);background:transparent;font-size:var(--fs-sm)!important;text-align:left;cursor:pointer}.pl-menu-pop button:hover{background:var(--bg-hover)}.pl-menu-pop button.danger{color:var(--danger)!important}.pl-hint{margin:4px 0 0;font-size:var(--fs-xs);color:var(--text-muted)}.pl-track{position:relative;display:flex;align-items:center;gap:4px;margin:0 -8px;padding:0 4px 0 8px;border-top:1px solid var(--border)}.pl-track:first-child{border-top:0}.pl-track-main{flex:1;min-width:0;display:flex;align-items:center;gap:12px;padding:11px 0;border:0;background:transparent;text-align:left;cursor:pointer}.pl-track-main:disabled{cursor:default}.pl-track:hover{background:var(--bg-hover)}.pl-track-index{flex:none;position:relative;width:2.4em;display:inline-flex;justify-content:center;font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,monospace;font-size:var(--fs-xs);color:var(--text-faint);font-variant-numeric:tabular-nums}.pl-num-play{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:var(--accent-text-strong);opacity:0}.pl-track-main:hover:not(:disabled) .pl-num,.pl-track-main:focus-visible .pl-num{opacity:0}.pl-track-main:hover:not(:disabled) .pl-num-play,.pl-track-main:focus-visible .pl-num-play{opacity:1}.pl-onair{color:var(--accent-text-strong)}.pl-track-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}.pl-track-title{font-size:var(--fs-sm);font-weight:600;line-height:1.45;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.pl-track.unready .pl-track-title{color:var(--text-muted)}.pl-track.playing .pl-track-title{color:var(--accent-text-strong)}.pl-track-sub{font-size:var(--fs-xs);color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pl-track-sub.audio-preparing{color:var(--accent-text)}.pl-track-sub.audio-missing,.pl-track-sub.audio-unavailable{color:var(--text-faint);white-space:normal}.pl-track-time{flex:none;min-width:3.2em;text-align:right;font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,monospace;font-size:var(--fs-xs);color:var(--text-faint);font-variant-numeric:tabular-nums}.pl-track-tools{flex:none;display:flex;opacity:0;transition:opacity .12s}.pl-track:hover .pl-track-tools,.pl-track:focus-within .pl-track-tools{opacity:1}@media (hover: none){.pl-track-tools{opacity:1}}.pl-empty{display:flex;flex-direction:column;align-items:center;gap:8px;padding:36px 16px 28px;text-align:center;color:var(--text-faint)}.pl-empty.compact{align-items:flex-start;padding:4px 0 0;text-align:left}.pl-empty-title{margin:4px 0 0;font-size:var(--fs-base);font-weight:650;color:var(--text)}.pl-empty-copy{margin:0 0 6px;max-width:34em;font-size:var(--fs-sm);line-height:1.6;color:var(--text-muted)}.pl-empty-copy svg{vertical-align:-2px}@media (max-width: 640px){.library-panel{padding:16px}.pl-list-head{flex-direction:column;align-items:stretch}.pl-list-head .pl-secondary{align-self:flex-start}.pl-title{font-size:var(--fs-lg)}.pl-track{flex-wrap:wrap}.pl-track-tools{width:100%;justify-content:flex-end;margin-top:-10px;padding-bottom:4px;opacity:1}.pl-track-tools .pl-icon-btn{width:30px;height:28px}.pl-track-time{display:none}}.playlist-add{position:relative;display:inline-flex}.playlist-add-popover{position:absolute;right:0;bottom:calc(100% + 6px);z-index:60;width:260px;padding:6px;display:flex;flex-direction:column;gap:2px;background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--r-card);box-shadow:var(--shadow-pop);text-align:left}.playlist-add-popover.below{bottom:auto;top:calc(100% + 6px)}.playlist-add-title{padding:6px 8px 4px;font-size:var(--fs-xs);font-weight:700;letter-spacing:.06em;color:var(--text-muted)}.playlist-add-note{padding:4px 8px;font-size:var(--fs-xs);color:var(--text-muted);line-height:1.5}.playlist-add-list{max-height:220px;overflow-y:auto}.playlist-add-popover .playlist-add-item{width:100%;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px;border:0;border-radius:var(--r-control);background:transparent;color:var(--text);font-size:var(--fs-sm);font-weight:500;line-height:1.3;cursor:pointer;transform:none}.playlist-add-popover .playlist-add-item:hover:not(:disabled){background:var(--bg-hover)}.playlist-add-popover .playlist-add-item.added,.playlist-add-popover .playlist-add-item.added:hover:not(:disabled){background:transparent;color:var(--accent-text-strong);cursor:default}.playlist-add-item-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.playlist-add-count{font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,monospace;color:var(--text-faint);font-size:var(--fs-xs)}.playlist-add-new{display:flex;gap:6px;margin-top:4px;padding:8px 2px 2px;border-top:1px solid var(--border)}.playlist-add-popover .playlist-add-new button{padding:0 10px;border:0;border-radius:var(--r-control);background:var(--accent);color:var(--accent-on)}.playlist-add-popover .playlist-add-new button:disabled{background:var(--bg-hover);color:var(--text-faint);opacity:1}.playlist-banner{position:fixed;left:calc(var(--sidebar-w) + 16px);right:16px;bottom:calc(var(--player-h) + 12px);z-index:40;display:flex;align-items:center;gap:8px;padding:8px 12px;border:1px solid var(--border-strong);border-radius:var(--r-pill);background:var(--surface);box-shadow:var(--shadow-card);font-size:var(--fs-sm)}.playlist-banner-label{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.playlist-banner-btn{padding:4px 10px;border:1px solid var(--border-strong);border-radius:var(--r-pill);background:transparent;color:var(--text);font-size:var(--fs-xs);font-weight:600;cursor:pointer;white-space:nowrap}.playlist-banner-btn:hover{background:var(--bg-hover)}@media (max-width: 900px){.playlist-banner{left:8px;right:8px}}.theme-plan-editor,.theme-plan-advanced{display:flex;flex-direction:column;gap:10px}.theme-plan-advanced{padding:10px 12px;border:1px dashed var(--border-strong);border-radius:var(--r-control)}.theme-plan-editor small,.theme-edit-field small,.theme-resolved-query small{display:block;margin-top:2px;color:var(--text-faint);font-size:var(--fs-xs);line-height:1.5}.theme-form--natural{flex-direction:column;align-items:stretch}
