:root {
	--gold: #d4af37;
	--gold-bright: #f0cf67;
	--gold-deep: #6f5210;
	--gold-soft: rgba(212,175,55,.18);
	color-scheme: dark;
	font-family: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
	background: #09090b;
	color: #f7f7f8;
	font-synthesis: none;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; min-width: 320px; background: #09090b; }
button, a { font: inherit; }
button:disabled { cursor: not-allowed; }
.skip-link { position: fixed; left: 1rem; top: -4rem; z-index: 100; background: #fff; color: #111; padding: .7rem 1rem; border-radius: .5rem; }
.skip-link:focus { top: 1rem; }
.topbar { position: fixed; inset: 0 0 auto 0; z-index: 20; height: 72px; display: flex; align-items: center; justify-content: space-between; padding: 0 28px; background: rgba(9, 9, 11, .9); border-bottom: 1px solid #242429; backdrop-filter: blur(20px); }
.brand { display: flex; align-items: center; color: #fff; text-decoration: none; }
.brand-lockup { display: block; width: 104px; height: 52px; border-radius: 6px; object-fit: cover; }
.brand-portrait { display: none; width: 46px; height: 46px; object-fit: contain; }
.topbar-actions { display: flex; align-items: center; gap: 16px; }
.system-status { display: flex; align-items: center; gap: 8px; color: #a9a9b2; font-size: 13px; }
.status-dot, .mini-dot { width: 7px; height: 7px; border-radius: 50%; background: #efb035; box-shadow: 0 0 0 4px rgba(239,176,53,.12); }
.system-status.healthy .status-dot { background: #41c782; box-shadow: 0 0 0 4px rgba(65,199,130,.12); }
.system-status.unavailable .status-dot { background: #f0283c; box-shadow: 0 0 0 4px rgba(240,40,60,.12); }
.account-button { border: 1px solid #44444d; border-radius: 999px; padding: 9px 16px; color: #f7f7f8; background: #1c1c21; cursor: pointer; font-weight: 750; }
.account-button:hover { border-color: #686873; background: #26262c; }
.account-button.signed-in { display: grid; place-items: center; width: 42px; height: 42px; padding: 0; border-color: rgba(212,175,55,.55); color: var(--gold-bright); background: #201b0f; letter-spacing: .05em; }
.app-shell { display: grid; grid-template-columns: 220px minmax(0, 1fr); min-height: 100vh; padding: 72px 0 96px; }
.side-nav { position: fixed; top: 72px; bottom: 96px; width: 220px; padding: 26px 18px; border-right: 1px solid #202024; background: #0c0c0f; }
.nav-item { display: flex; align-items: center; gap: 12px; margin-bottom: 5px; padding: 11px 13px; color: #a9a9b2; text-decoration: none; border-radius: 9px; font-weight: 650; font-size: 14px; }
.nav-item:hover, .nav-item.active { background: #1a1a1f; color: #fff; }
.nav-item.active { color: var(--gold-bright); }
.nav-item.muted { color: #73737d; }
.nav-rule { height: 1px; margin: 22px 12px; background: #25252b; }
.nav-label { margin: 0 12px 10px; color: #5f5f68; font-size: 11px; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
main { grid-column: 2; overflow: hidden; }
.live-launch { position: relative; display: grid; place-items: center; min-height: 250px; padding: 62px 24px; overflow: hidden; border-bottom: 1px solid #2c291f; background: radial-gradient(circle at 50% 45%, rgba(212,175,55,.16), transparent 45%), #0d0d0f; }
.live-launch::before { position: absolute; right: clamp(18px,8vw,120px); bottom: -95px; width: 285px; height: 285px; content: ""; background: url('/assets/kyle-portrait.png') center / contain no-repeat; opacity: .1; }
.live-launch .primary-button { position: relative; z-index: 1; min-width: min(78vw, 390px); min-height: 78px; justify-content: center; border: 1px solid #4d421e; color: #8f7d46; background: #1d1a12; font-size: clamp(20px,3vw,30px); letter-spacing: -.02em; }
.hero { position: relative; min-height: 510px; padding: 92px clamp(32px, 7vw, 104px); overflow: hidden; background: radial-gradient(circle at 75% 25%, rgba(240,40,60,.22), transparent 32%), linear-gradient(145deg, #18181d 0%, #0b0b0e 72%); border-bottom: 1px solid #242429; }
.eyebrow, .section-kicker { margin: 0 0 16px; color: var(--gold-bright); font-size: 12px; font-weight: 850; letter-spacing: .14em; text-transform: uppercase; }
.hero h1 { position: relative; z-index: 2; max-width: 720px; margin: 0; font-size: clamp(52px, 7.2vw, 104px); line-height: .91; letter-spacing: -.075em; }
.hero-copy { position: relative; z-index: 2; max-width: 570px; margin: 28px 0 0; color: #b7b7bf; font-size: clamp(17px, 2vw, 21px); line-height: 1.55; }
.hero-actions { position: relative; z-index: 2; display: flex; align-items: center; gap: 18px; margin-top: 32px; }
.primary-button { display: flex; align-items: center; gap: 10px; padding: 14px 21px; border: 0; border-radius: 999px; background: #3d2025; color: #a76e75; font-weight: 800; }
.primary-button.live-ready { color: #100e08; background: linear-gradient(135deg,var(--gold-bright),var(--gold)); cursor: pointer; box-shadow: 0 14px 42px rgba(212,175,55,.25); }
.primary-button.live-ready:hover { background: linear-gradient(135deg,#ffe08a,#dfba42); transform: translateY(-2px); }
.play-icon { font-size: 12px; }
.preview-note { max-width: 280px; color: #6e6e77; font-size: 12px; line-height: 1.45; }
.hero-art { position: absolute; right: -60px; top: 42px; width: min(43vw, 530px); aspect-ratio: 1; border-radius: 50%; background: linear-gradient(145deg, #ef263c, #710d19 62%, #150407); box-shadow: -30px 40px 120px rgba(240,40,60,.2); }
.hero-monogram { position: absolute; inset: 0; display: grid; place-items: center; font-size: clamp(70px, 10vw, 142px); font-weight: 950; letter-spacing: -.11em; transform: translateX(-.04em); }
.signal { position: absolute; inset: 50%; border: 1px solid rgba(255,255,255,.2); border-radius: 50%; transform: translate(-50%,-50%); }
.signal-one { width: 68%; height: 68%; }.signal-two { width: 82%; height: 82%; }.signal-three { width: 96%; height: 96%; }
.content-section { padding: 64px clamp(32px, 6vw, 88px); }
.section-heading { display: flex; align-items: end; justify-content: space-between; gap: 20px; margin-bottom: 24px; }
.section-heading h2 { margin: 0; font-size: clamp(29px, 4vw, 44px); letter-spacing: -.045em; }
.section-kicker { margin-bottom: 9px; }
.coming-soon, .offline-pill { color: #9797a1; background: #1c1c21; border: 1px solid #2b2b31; border-radius: 999px; padding: 7px 11px; font-size: 11px; font-weight: 750; text-transform: uppercase; letter-spacing: .08em; }
.live-card { display: grid; grid-template-columns: 112px 1fr auto; align-items: center; gap: 24px; padding: 20px; border: 1px solid #29292f; border-radius: 18px; background: linear-gradient(110deg, #17171c, #101013); }
.live-card-art, .now-playing-art { position: relative; display: grid; place-items: center; aspect-ratio: 1; overflow: hidden; border-radius: 12px; background: linear-gradient(145deg, #f0283c, #7a0e1a); font-weight: 950; letter-spacing: -.08em; }
.live-card-art img { position: absolute; inset: 0; display: none; width: 100%; height: 100%; object-fit: cover; }.live-card-art.has-art img { display: block; }
.live-card-copy h3 { margin: 12px 0 5px; font-size: 22px; }.live-card-copy p { margin: 0; color: #8d8d97; line-height: 1.5; }
.live-card-copy .live-duration { margin-top: 8px; color: #b2b2bb; font-size: 12px; font-weight: 750; }
.offline-pill { padding: 5px 8px; color: #b0b0b9; }
.offline-pill.on-air { border-color: rgba(78,215,131,.32); color: #a5e7c0; background: #14251c; }
.round-button { width: 50px; height: 50px; border: 0; border-radius: 50%; background: #2a171a; color: #8d545b; }
.round-button.live-ready { color: #fff; background: #ef3045; cursor: pointer; }
.round-button.live-ready:hover { background: #fa4053; transform: scale(1.04); }
.card-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }
.episode-card { min-width: 0; padding: 16px; background: #141418; border: 1px solid #232329; border-radius: 15px; }
.episode-art { display: flex; align-items: end; aspect-ratio: 1; padding: 18px; border-radius: 10px; font-size: clamp(27px, 3.6vw, 52px); font-weight: 950; line-height: .82; letter-spacing: -.065em; }
.episode-art.red { background: linear-gradient(145deg,#e9c65a,#5f4610); }.episode-art.violet { background: linear-gradient(145deg,#caa43a,#40300d); }.episode-art.amber { background: linear-gradient(145deg,#f5d06a,#713f00); }
.episode-card h3 { margin: 17px 2px 7px; font-size: 18px; }.episode-card p { margin: 0 2px 5px; color: #85858f; font-size: 14px; line-height: 1.5; }
.archive-toolbar { display: flex; flex-wrap: wrap; gap: 8px; margin: -4px 0 22px; }
.filter-button, .load-more { border: 1px solid #303038; border-radius: 999px; background: #151519; color: #9b9ba5; font-size: 13px; font-weight: 750; }
.filter-button { padding: 8px 13px; }.filter-button:hover, .filter-button.active { border-color: #565661; background: #24242a; color: #fff; }
.filter-button:focus-visible, .load-more:focus-visible { outline: 2px solid var(--gold); outline-offset: 3px; }
.filter-button:hover, .filter-button.active { border-color: #76652d; background: #2c2718; color: var(--gold-bright); }
.archive-status { min-height: 24px; margin: 0 0 18px; color: #85858f; font-size: 14px; }
.archive-status[hidden] { display: none; }
.archive-card { display: flex; flex-direction: column; cursor: pointer; transition: border-color .16s ease, transform .16s ease, background .16s ease; }
.archive-card:hover, .archive-card.selected { border-color: #66582d; background: #191712; transform: translateY(-2px); }
.archive-card:focus-visible { outline: 2px solid var(--gold); outline-offset: 3px; }
.archive-card .episode-art { align-items: end; justify-content: space-between; gap: 12px; }
.archive-card .episode-art span { max-width: 100%; overflow-wrap: anywhere; }
.episode-play-button { display: grid; flex: 0 0 48px; place-items: center; width: 48px; height: 48px; padding: 0 0 0 3px; border: 1px solid rgba(255,255,255,.34); border-radius: 50%; color: #fff; background: rgba(10,10,12,.72); cursor: pointer; font-size: 15px; box-shadow: 0 7px 22px rgba(0,0,0,.28); }
.episode-play-button:hover { border-color: #fff; background: #0a0a0c; transform: scale(1.04); }
.episode-play-button:focus-visible { outline: 2px solid #fff; outline-offset: 3px; }
.episode-card .episode-meta { margin-top: 16px; color: var(--gold-bright); font-size: 11px; font-weight: 800; letter-spacing: .04em; text-transform: uppercase; }
.episode-card.archive-card h3 { margin-top: 8px; }
.episode-card .episode-description { display: -webkit-box; overflow: hidden; min-height: 42px; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
.member-label { align-self: flex-start; margin: 14px 2px 2px; color: #aaaab3; font-size: 11px; font-weight: 750; }
.episode-progress { margin-top: 14px; }
.episode-progress-label { display: flex; justify-content: space-between; gap: 12px; margin-bottom: 7px; color: #aaaab3; font-size: 11px; }
.episode-progress-track { height: 4px; overflow: hidden; border-radius: 999px; background: #303038; }
.episode-progress-track span { display: block; height: 100%; border-radius: inherit; background: var(--gold); }
.load-more { display: block; margin: 24px auto 0; padding: 10px 18px; cursor: pointer; }
.load-more[hidden] { display: none; }.load-more:disabled { opacity: .55; }
.library-note { display: flex; align-items: center; gap: 15px; margin-top: 30px; padding: 18px; border: 1px solid #29292f; border-radius: 15px; background: #111115; }
.library-note-mark { display: grid; flex: 0 0 52px; place-items: center; width: 52px; height: 52px; border-radius: 12px; background: linear-gradient(145deg,#ffb52e,#713600); font-size: 12px; font-weight: 950; }
.library-note strong { font-size: 14px; }.library-note p { margin: 5px 0 0; color: #81818a; font-size: 13px; line-height: 1.45; }
.library-note { align-items: flex-start; }.library-note-content { min-width: 0; flex: 1; }
.podcast-feed-result { margin-top: 16px; }.podcast-feed-result label { display: block; margin-bottom: 7px; color: #d2d2d8; font-size: 11px; font-weight: 800; letter-spacing: .04em; text-transform: uppercase; }
.feed-url-row { display: flex; gap: 8px; }.feed-url-row input { min-width: 0; flex: 1; padding: 10px 11px; border: 1px solid #34343c; border-radius: 8px; color: #d7d7dd; background: #09090b; font: 12px ui-monospace, SFMono-Regular, Menlo, monospace; }
.feed-url-row button, .feed-primary, .feed-secondary { border-radius: 8px; cursor: pointer; font-size: 12px; font-weight: 800; }
.feed-url-row button { padding: 0 13px; border: 1px solid #43434c; color: #fff; background: #24242a; }
.podcast-feed-actions { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 14px; }.feed-primary, .feed-secondary { padding: 9px 13px; }
.feed-primary { border: 0; color: #100e08; background: var(--gold); }.feed-secondary { border: 1px solid #3a3a42; color: #b9b9c1; background: #1b1b20; }
.feed-primary:hover { background: var(--gold-bright); }.feed-secondary:hover, .feed-url-row button:hover { border-color: #5c5c67; background: #27272d; }
.podcast-feed-status { min-height: 18px; color: #9c9ca6 !important; }.podcast-feed-actions button:disabled { cursor: wait; opacity: .55; }
.personal-section { border-top: 1px solid #202024; background: #0c0c0f; }
.personal-list { display: grid; gap: 10px; }
.personal-row { display: grid; grid-template-columns: minmax(0,1fr) auto; align-items: center; gap: 18px; padding: 15px 17px; border: 1px solid #29292f; border-radius: 13px; background: #121216; }
.personal-row-main { min-width: 0; }
.personal-row-title { display: block; overflow: hidden; color: #f3f3f5; font-size: 14px; text-overflow: ellipsis; white-space: nowrap; }
.personal-row-meta { display: block; margin-top: 5px; color: #85858f; font-size: 12px; }
.personal-row-actions { display: flex; align-items: center; gap: 8px; }
.personal-row button { padding: 8px 11px; border: 1px solid #3b3b44; border-radius: 8px; color: #f5f5f7; background: #202025; cursor: pointer; font-size: 12px; font-weight: 750; }
.personal-row button:hover { border-color: #5b5b65; background: #29292f; }
.player { position: fixed; inset: auto 0 0 0; z-index: 30; height: 96px; display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; padding: 14px 28px; border-top: 1px solid #2b2b31; background: rgba(14,14,17,.97); backdrop-filter: blur(22px); }
.player audio { display: none; }
.now-playing { min-width: 0; display: flex; align-items: center; justify-self: start; gap: 12px; padding: 0; border: 0; color: inherit; background: transparent; cursor: pointer; text-align: left; }.now-playing:disabled { cursor: default; }.now-playing:not(:disabled):hover strong { text-decoration: underline; }.now-playing-art { flex: 0 0 auto; width: 54px; background: linear-gradient(145deg,#2a2414,#0c0c0d); }.now-playing-art img { width: 92%; height: 92%; object-fit: contain; }.now-playing > span:nth-child(2) { min-width: 0; }.now-playing strong, .now-playing > span:nth-child(2) > span { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }.now-playing strong { font-size: 13px; }.now-playing > span:nth-child(2) > span { margin-top: 4px; color: #6f6f79; font-size: 11px; }.open-player-hint { margin-left: 3px; color: #777781; font-size: 16px; }
.player-controls { display: flex; align-items: center; gap: 18px; }.player-controls button { border: 0; background: transparent; color: #d0d0d6; cursor: pointer; font-size: 18px; }.player-controls button:disabled { color: #5d5d66; cursor: default; }.player-controls .player-play { width: 44px; height: 44px; border-radius: 50%; background: var(--gold); color: #100e08; font-size: 14px; }.player-controls .player-play:disabled { background: #2b2b31; color: #707079; }.player-controls button:focus-visible { outline: 2px solid var(--gold); outline-offset: 3px; }
.player-state { justify-self: end; display: flex; align-items: center; gap: 8px; color: #777781; font-size: 12px; }.mini-dot { width: 7px; height: 7px; border-radius: 50%; background: #55555e; box-shadow: none; }.player-state.active .mini-dot { background: #4ed783; box-shadow: 0 0 0 4px rgba(78,215,131,.12); }
.mobile-nav { display: none; }
.expanded-player { width: min(94vw, 960px); max-height: 92vh; padding: 0; overflow: auto; color: #f7f7f8; border: 1px solid #494024; border-radius: 24px; background: radial-gradient(circle at 20% 0%, rgba(212,175,55,.22), transparent 38%), #111115; box-shadow: 0 35px 110px rgba(0,0,0,.75); }
.expanded-player::backdrop { background: rgba(0,0,0,.8); backdrop-filter: blur(8px); }
.expanded-player-close { position: absolute; top: 18px; right: 18px; z-index: 2; }
.expanded-player-layout { display: grid; grid-template-columns: minmax(280px, 430px) minmax(300px, 1fr); align-items: center; gap: clamp(32px, 6vw, 72px); padding: clamp(50px, 7vw, 78px); }
.expanded-art-shell { position: relative; display: grid; place-items: center; aspect-ratio: 1; overflow: hidden; border-radius: 22px; background: #0b0b0d url('/assets/kyle-portrait.png') center / 86% no-repeat; box-shadow: 0 28px 70px rgba(0,0,0,.48); }
.expanded-art-shell::before { content: ""; }
.expanded-art-shell img { position: absolute; inset: 0; width: 100%; height: 100%; display: none; object-fit: cover; }.expanded-art-shell.has-art img { display: block; }
.expanded-player-copy { min-width: 0; }.expanded-player-copy h2 { margin: 8px 0 8px; font-size: clamp(32px, 5vw, 54px); line-height: .98; letter-spacing: -.055em; }.expanded-player-copy > #expanded-player-show { margin: 0; color: #d5d5da; font-weight: 750; }.expanded-player-description { display: -webkit-box; max-width: 54ch; margin: 22px 0 28px; overflow: hidden; color: #95959f; font-size: 14px; line-height: 1.6; -webkit-box-orient: vertical; -webkit-line-clamp: 3; }
.expanded-timeline input { width: 100%; accent-color: var(--gold); cursor: pointer; }.expanded-timeline input:disabled { cursor: default; }.expanded-timeline > div { display: flex; justify-content: space-between; margin-top: 5px; color: #85858f; font-size: 11px; font-variant-numeric: tabular-nums; }
.expanded-controls { display: flex; align-items: center; justify-content: center; gap: clamp(14px, 3vw, 28px); margin: 25px 0 18px; }.expanded-controls button { position: relative; border: 0; color: #d8d8dd; background: transparent; cursor: pointer; font-size: 17px; }.expanded-controls button:disabled { color: #56565f; cursor: default; }.expanded-controls .expanded-play { width: 62px; height: 62px; border-radius: 50%; color: #100e08; background: var(--gold); font-size: 19px; }.expanded-controls .expanded-play:disabled { color: #777780; background: #2b2b31; }.expanded-controls small { position: absolute; left: 50%; top: 50%; font-size: 8px; font-weight: 900; transform: translate(-50%,-45%); }
.playback-options { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; margin-top: 10px; }.playback-options label { display: grid; gap: 6px; color: #8d8d97; font-size: 11px; font-weight: 750; text-align: left; }.playback-options select { width: 100%; padding: 10px 12px; border: 1px solid #3a3a42; border-radius: 9px; color: #eeeef1; background: #1b1b20; }
.autoplay-option { display: flex; align-items: center; gap: 9px; margin: 14px 0; color: #b6b6be; font-size: 12px; }.autoplay-option input { accent-color: var(--gold); }
.up-next { width: 100%; display: grid; gap: 4px; padding: 11px 13px; border: 1px solid #323239; border-radius: 10px; color: #f1f1f3; background: #19191e; cursor: pointer; text-align: left; }.up-next span { color: var(--gold-bright); font-size: 10px; font-weight: 850; letter-spacing: .08em; text-transform: uppercase; }.up-next strong { overflow: hidden; font-size: 12px; text-overflow: ellipsis; white-space: nowrap; }.up-next:hover { border-color: #565661; background: #222228; }
.airplay-button { width: 100%; margin-top: 10px; padding: 10px; border: 1px solid #3a3a42; border-radius: 9px; color: #d6d6dc; background: transparent; cursor: pointer; font-weight: 750; }
.account-dialog { width: min(92vw, 470px); padding: 0; color: #f7f7f8; border: 1px solid #34343c; border-radius: 20px; background: #141418; box-shadow: 0 28px 90px rgba(0,0,0,.65); }
.account-dialog::backdrop { background: rgba(0,0,0,.72); backdrop-filter: blur(5px); }
.dialog-header { display: flex; align-items: flex-start; justify-content: space-between; gap: 20px; padding: 25px 25px 17px; border-bottom: 1px solid #29292f; }
.dialog-header h2 { margin: 3px 0 0; font-size: 27px; letter-spacing: -.04em; }
.dialog-kicker { margin: 0; color: var(--gold-bright); font-size: 11px; font-weight: 850; letter-spacing: .12em; text-transform: uppercase; }
.dialog-close { width: 36px; height: 36px; border: 1px solid #34343c; border-radius: 50%; color: #aaaab3; background: #1d1d22; cursor: pointer; font-size: 24px; line-height: 1; }
#signed-out-panel, #signed-in-panel { padding: 23px 25px 7px; }
.dialog-copy { margin: 0 0 20px; color: #a2a2ac; font-size: 14px; line-height: 1.6; }
#password-sign-in-form, #magic-link-form { display: grid; gap: 10px; }
#password-sign-in-form label, #magic-link-form label { color: #d7d7dc; font-size: 13px; font-weight: 750; }
#member-email, #member-password, #magic-link-email { width: 100%; padding: 13px 14px; border: 1px solid #3a3a43; border-radius: 10px; outline: none; color: #fff; background: #0d0d10; }
#member-email:focus, #member-password:focus, #magic-link-email:focus { border-color: var(--gold); box-shadow: 0 0 0 3px rgba(212,175,55,.14); }
.auth-divider { display: flex; align-items: center; gap: 12px; margin: 20px 0; color: #71717b; font-size: 11px; font-weight: 800; text-transform: uppercase; }
.auth-divider::before, .auth-divider::after { height: 1px; flex: 1; content: ""; background: #303037; }
#magic-link-form p { margin: 0 0 2px; color: #a2a2ac; font-size: 13px; }
.dialog-primary, .dialog-secondary { margin-top: 5px; padding: 13px 16px; border-radius: 10px; cursor: pointer; font-weight: 800; }
.dialog-primary { border: 0; color: #100e08; background: var(--gold); }
.dialog-primary:hover { background: var(--gold-bright); }
.dialog-secondary { width: 100%; border: 1px solid #3a3a43; color: #d3d3d9; background: #1b1b20; }
.member-summary { display: flex; align-items: center; gap: 13px; }
.member-avatar { display: grid; place-items: center; overflow: hidden; width: 48px; height: 48px; border-radius: 12px; background: #0a0a0c; }.member-avatar img { width: 94%; height: 94%; object-fit: contain; }
.member-summary strong, .member-summary span { display: block; }
.member-summary span { margin-top: 4px; color: #898993; font-size: 12px; }
.membership-state { margin: 18px 0 9px; padding: 12px 13px; border: 1px solid #3b3032; border-radius: 10px; color: #d0a3a8; background: #24171a; font-size: 13px; line-height: 1.45; }
.membership-state.active { border-color: #274737; color: #a5e7c0; background: #14251c; }
.auth-status { min-height: 20px; margin: 12px 25px 24px; color: #9d9da7; font-size: 13px; line-height: 1.45; }
.auth-status.success { color: #86d8a8; }.auth-status.error { color: #ff8d99; }
.dialog-primary:disabled, .dialog-secondary:disabled { cursor: wait; opacity: .6; }
.dialog-close:focus-visible, .account-button:focus-visible, .dialog-primary:focus-visible, .dialog-secondary:focus-visible { outline: 2px solid var(--gold); outline-offset: 3px; }
@media (max-width: 800px) {
	.topbar { height: 62px; padding: 0 17px; }.system-status { display: none; }.account-button { padding: 7px 13px; }.account-button.signed-in { width: 38px; height: 38px; padding: 0; }.brand-lockup { display: none; }.brand-portrait { display: block; width: 44px; height: 44px; }
	.app-shell { display: block; padding: 62px 0 76px; }.side-nav { display: none; } main { display: block; }
	.hero { min-height: 540px; padding: 58px 22px 250px; }.hero h1 { font-size: clamp(49px, 15vw, 76px); }.hero-copy { font-size: 16px; }.hero-actions { align-items: flex-start; flex-direction: column; }.hero-art { width: 300px; right: -55px; top: auto; bottom: -70px; }
	.content-section { padding: 47px 18px; }.live-card { grid-template-columns: 72px 1fr; gap: 15px; padding: 15px; }.live-card .round-button { display: none; }.live-card-copy h3 { font-size: 18px; }.live-card-copy p { font-size: 13px; }
	.card-grid { grid-template-columns: 1fr 1fr; }.episode-art { font-size: clamp(27px, 8vw, 42px); }
	.live-launch { min-height: 205px; padding: 48px 18px; }.live-launch::before { right: -42px; bottom: -75px; width: 230px; height: 230px; }.live-launch .primary-button { min-width: min(88vw,360px); min-height: 72px; }
	.player { height: 76px; grid-template-columns: 1fr auto; padding: 10px 15px; }.now-playing-art { width: 48px; }.player-controls { gap: 8px; }.player-controls #rewind-button, .player-controls #forward-button, .player-state { display: none; }.player-controls .player-play { width: 39px; height: 39px; }
	.open-player-hint { display: none; }.expanded-player { width: 100vw; max-width: none; height: 100dvh; max-height: none; border: 0; border-radius: 0; }.expanded-player-layout { grid-template-columns: 1fr; gap: 30px; min-height: 100%; padding: 72px 24px 34px; }.expanded-art-shell { width: min(68vw, 340px); margin: 0 auto; border-radius: 18px; }.expanded-player-copy { text-align: center; }.expanded-player-copy h2 { font-size: clamp(30px, 9vw, 46px); }.expanded-player-description { margin: 16px auto 24px; }.expanded-controls { gap: clamp(12px, 5vw, 24px); }
	.personal-row { grid-template-columns: 1fr; gap: 12px; }.personal-row-actions { justify-content: flex-start; }.playback-options { grid-template-columns: 1fr; }
}
@media (max-width: 480px) { .card-grid { grid-template-columns: 1fr; }.episode-art { aspect-ratio: 16 / 10; }.coming-soon { display: none; } }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }
