:root { color-scheme: dark; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; background: #101011; color: #f5f4f2; }
    * { box-sizing: border-box; }
    [hidden] { display: none !important; }
    body { margin: 0; min-height: 100svh; }
    button { font: inherit; -webkit-tap-highlight-color: transparent; }
    .shell { max-width: 1440px; min-height: 100svh; margin: auto; padding: 38px 6vw 50px; display: flex; flex-direction: column; }
    .brand { display: flex; align-items: center; gap: 12px; font-size: 18px; font-weight: 600; letter-spacing: -.04em; }
    .brand-mark { display: grid; grid-template-columns: repeat(2, 7px); gap: 4px; }
    .brand-mark i { width: 7px; height: 7px; border-radius: 2px; background: #eee; }
    .brand-mark i:nth-child(1) { background: #ff525a; }
    .brand-mark i:nth-child(2) { background: #a29bfe; }
    .brand-mark i:nth-child(3) { background: #6ae89f; }
    .brand-mark i:nth-child(4) { background: #f0c5a9; }
    .topbar { display: flex; align-items: center; justify-content: space-between; gap: 24px; }
    .home-button { background: transparent; border: 1px solid #ffffff2b; border-radius: 9px; color: #ececec; padding: 10px 18px; min-height: 44px; cursor: pointer; font-size: 14px; }
    main { width: 100%; margin: auto 0; padding: 76px 0 72px; }
    .intro { margin-bottom: 38px; }
    h1 { max-width: 700px; font-size: clamp(2rem, 4vw, 3.6rem); line-height: 1.12; font-weight: 550; letter-spacing: -.055em; margin: 0; text-wrap: balance; }
    .categories { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 18px; }
    .category { position: relative; min-width: 0; height: clamp(310px, 31vw, 420px); overflow: hidden; isolation: isolate; border: 1px solid #ffffff14; border-radius: 18px; padding: 25px; text-align: left; background: var(--base); color: #fff; cursor: pointer; transition: transform .23s ease, box-shadow .23s ease, border-color .23s ease; }
    .category::before { content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(180deg, #0003 0%, transparent 32%, #0003 62%, #000b 100%); }
    .category img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; z-index: -2; transition: transform .5s ease, filter .25s ease; }
    .category .icon { position: absolute; top: 25px; left: 25px; width: 38px; height: 38px; display: grid; place-items: center; background: #08080b40; border: 1px solid #ffffff28; border-radius: 12px; backdrop-filter: blur(12px); }
    .icon svg { width: 20px; height: 20px; fill: none; stroke: currentColor; stroke-width: 1.6; stroke-linecap: round; stroke-linejoin: round; }
    .card-label { position: absolute; left: 25px; right: 25px; bottom: 25px; display: flex; align-items: center; justify-content: space-between; gap: 8px; }
    .card-label span { font-size: clamp(1.6rem, 2.4vw, 2.1rem); font-weight: 600; line-height: 1.2; letter-spacing: -.045em; }
    .selected { display: none; width: 25px; height: 25px; flex-shrink: 0; border-radius: 50%; background: #fff; color: #151515; padding: 5px; }
    .category[aria-pressed="true"] { border-color: var(--accent); box-shadow: 0 0 0 3px var(--accent); }
    .category[aria-pressed="true"] .selected { display: block; }
    .category:focus-visible { outline: 3px solid #fff; outline-offset: 6px; }
    .movies { --base: #661a21; --accent: #fb6470; }
    .tv { --base: #262141; --accent: #b8a4ff; background: radial-gradient(ellipse at 50% 32%, #665290 0, #34294c 45%, #191724 100%); }
    .music { --base: #15442d; --accent: #65df96; }
    .fashion { --base: #725249; --accent: #e7b59d; }
    .tv-art { position: absolute; width: 62%; height: auto; top: 31%; left: 19%; color: #d8c6f3; opacity: .86; transform: rotate(-8deg); filter: drop-shadow(0 16px 20px #0004); }
    .tv-art rect, .tv-art path { fill: none; stroke: currentColor; stroke-width: 1.5; stroke-linecap: round; stroke-linejoin: round; }
    .tv-art .play { fill: currentColor; stroke: none; }
    .music img { filter: saturate(.5); }
    .music::before { background: linear-gradient(180deg, #0b392555, #0d33261a 30%, #061b14e6 100%); }
    .movies::before { background: linear-gradient(180deg, #32080a20, #2202040a 30%, #1c0608dd 100%); }
    .fashion::before { background: linear-gradient(180deg, #21130c10, #21130c00 30%, #1b120cd9 100%); }
    footer { color: #929295; font-size: 14px; line-height: 1.5; }
    .movie-screen { max-width: 1040px; margin: 0 auto; padding: 52px 0 115px; }
    .cinema-screen { max-width: 1040px; width: 100%; }
    .cinema-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; margin-top: 36px; }
    .cinema-choice { min-height: 240px; position: relative; isolation: isolate; overflow: hidden; border: 1px solid #ffffff26; border-radius: 18px; padding: 30px; background: #33171c; color: #fff; font-size: clamp(1.75rem, 4vw, 2.75rem); letter-spacing: -.04em; font-weight: 600; text-align: left; display: flex; align-items: flex-end; cursor: pointer; transition: border-color .2s, transform .2s; }
    .cinema-choice::before { content: ''; position: absolute; inset: 0; z-index: -1; background: linear-gradient(180deg, #34131a33, #28090edd), url('assets/movies.jpg') center 65% / cover; opacity: .85; }
    .cinema-choice:nth-child(2)::before { background: linear-gradient(180deg, #3d173944, #290920ed), url('assets/movies.jpg') 78% 65% / cover; }
    .cinema-choice:focus-visible { outline: 3px solid #fff; outline-offset: 5px; }
    .question-nav { margin-bottom: 27px; }
    .back-button { border: 0; border-bottom: 1px solid #68686e; padding: 8px 0; min-height: 44px; background: transparent; color: #c5c5ca; font-size: 14px; cursor: pointer; }
    .back-button:focus-visible { outline: 3px solid #fff; outline-offset: 4px; }
    @media (hover: hover) { .cinema-choice:hover { border-color: #fb6470; transform: translateY(-4px); } }
    @media (max-width: 520px) { .cinema-grid { grid-template-columns: 1fr; gap: 16px; margin-top: 28px; } .cinema-choice { min-height: 180px; padding: 24px; } }
    .movie-eyebrow { display: flex; align-items: center; gap: 9px; margin: 0 0 18px; color: #ff6871; font-size: 14px; font-weight: 650; letter-spacing: .1em; text-transform: uppercase; }
    .movie-eyebrow svg { width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 1.7; }
    .movie-screen h1 { max-width: 680px; font-size: clamp(2rem, 3.6vw, 3.25rem); }
    .movie-screen h1:focus { outline: none; }
    .movie-intro { margin: 15px 0 30px; color: #afafb5; font-size: 16px; line-height: 1.6; }
    .mood-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; padding: 0; margin: 0; border: 0; min-width: 0; }
    .mood-choice { display: block; position: relative; min-width: 0; cursor: pointer; }
    .mood-choice input { position: absolute; inset: 0; width: 100%; height: 100%; margin: 0; opacity: 0; cursor: pointer; z-index: 1; }
    .mood-tile { min-height: 93px; display: grid; grid-template-columns: minmax(0, 1fr) 22px; gap: 7px 12px; align-content: center; align-items: center; border: 1px solid #ffffff1c; border-radius: 12px; background: #19191c; padding: 18px 19px; transition: background .18s, border-color .18s; }
    .mood-name { font-size: 18px; font-weight: 600; letter-spacing: -.02em; line-height: 1.3; overflow-wrap: anywhere; }
    .mood-genre { grid-column: 1; font-size: 14px; color: #a9a9b0; line-height: 1.4; }
    .mood-hint { font-size: 13px; font-weight: 400; letter-spacing: 0; display: block; margin-top: 5px; color: #b7b7be; }
    .mood-check { grid-column: 2; grid-row: 1 / span 2; border: 1px solid #64646c; width: 22px; height: 22px; border-radius: 6px; display: grid; place-items: center; }
    .mood-check svg { width: 14px; height: 14px; opacity: 0; }
    .mood-choice input:checked + .mood-tile { background: #35191f; border-color: #f25460; }
    .mood-choice input:checked + .mood-tile .mood-check { background: #ed3545; border-color: #ed3545; }
    .mood-choice input:checked + .mood-tile .mood-check svg { opacity: 1; }
    .mood-choice input:checked + .mood-tile .mood-genre { color: #e6bec2; }
    .mood-choice input:focus-visible + .mood-tile, .home-button:focus-visible, .clear-moods:focus-visible { outline: 3px solid #fff; outline-offset: 4px; }
    .mood-footer { position: fixed; z-index: 3; bottom: 0; left: 0; right: 0; border-top: 1px solid #ffffff12; background: #101011f2; backdrop-filter: blur(18px); padding: 13px 6vw max(13px, env(safe-area-inset-bottom)); }
    .mood-footer-inner { max-width: 1040px; margin: auto; min-height: 44px; display: flex; align-items: center; justify-content: space-between; gap: 20px; }
    .mood-count { margin: 0; font-size: 15px; color: #bfbfc5; }
    .mood-count strong { color: #f5f4f2; font-weight: 600; }
    .clear-moods { border: 0; background: transparent; color: #ff7a83; font-size: 14px; font-weight: 550; cursor: pointer; padding: 12px; min-height: 44px; border-radius: 8px; }
    .clear-moods:disabled { color: #74747b; cursor: default; }
    @media (hover: hover) { .mood-choice:hover .mood-tile { border-color: #75757e; background: #222225; } .mood-choice:hover input:checked + .mood-tile { border-color: #ff7882; background: #422027; } .home-button:hover { background: #ffffff0c; } }
    @media (max-width: 800px) { .mood-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } .movie-screen { padding-top: 40px; padding-bottom: 100px; } }
    @media (max-width: 420px) { .mood-grid { gap: 10px; } .mood-tile { padding: 15px 12px; grid-template-columns: minmax(0, 1fr) 19px; gap: 6px; min-height: 94px; } .mood-name { font-size: 16px; } .mood-check { width: 19px; height: 19px; border-radius: 5px; } .mood-genre { font-size: 14px; } .movie-screen { padding-top: 34px; } .movie-intro { margin-bottom: 24px; } .mood-footer { padding-left: 22px; padding-right: 22px; } }
    @media (max-width: 420px) { .mood-tile { min-height: 122px; align-content: start; } .mood-check { grid-row: 1; grid-column: 2; } .mood-name { grid-row: 2; grid-column: 1 / -1; } .mood-genre { grid-row: 3; grid-column: 1 / -1; } }
    .sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; border: 0; }
    @media (hover: hover) { .category:hover { transform: translateY(-7px); border-color: #ffffff70; box-shadow: 0 18px 32px #0004; } .category:hover img { transform: scale(1.055); } .category[aria-pressed="true"]:hover { box-shadow: 0 0 0 3px var(--accent), 0 18px 32px #0004; border-color: var(--accent); } }
    @media (max-width: 800px) { .shell { padding: 28px 6vw 26px; } main { padding: 52px 0 42px; } .intro { margin-bottom: 28px; } .categories { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; } .category { height: clamp(205px, 43vw, 340px); } .card-label span { font-size: clamp(1.4rem, 3.7vw, 2rem); } }
    @media (max-width: 420px) { .shell { padding: 24px 22px; } main { padding: 40px 0 32px; } h1 { font-size: 2.1rem; } .categories { gap: 12px; } .category { border-radius: 14px; height: 218px; padding: 16px; } .category .icon { top: 16px; left: 16px; width: 32px; height: 32px; border-radius: 10px; } .card-label { left: 16px; right: 14px; bottom: 18px; } .card-label span { font-size: 1.4rem; } .selected { width: 20px; height: 20px; padding: 4px; } }
    @media (prefers-reduced-motion: reduce) { *, *::before { transition: none !important; } }

.topbar-actions,.mood-footer-actions {display:flex;align-items:center;gap:12px}
#watch-later-count {display:inline-grid;place-items:center;min-width:20px;height:20px;margin-left:5px;border-radius:6px;background:#35191f;color:#ff929a;font-size:12px}
.cinema-choice small {display:block;margin-top:8px;font-size:14px;font-weight:400;letter-spacing:0;color:#c5afb5}
.primary-button,.secondary-button {border:0;border-radius:10px;padding:13px 22px;min-height:46px;font-size:15px;font-weight:600;cursor:pointer;line-height:1.4}
.primary-button {color:white;background:#e63848;box-shadow:0 4px 18px #e638481a}
.primary-button:hover {background:#f04554}
.primary-button:disabled {background:#382126;color:#9a747a;box-shadow:none;cursor:default}
.secondary-button {border:1px solid #ffffff26;background:#222226;color:#f7f7f7}
.primary-button:focus-visible,.secondary-button:focus-visible,.swipe-button:focus-visible,.watchlist-link:focus-visible,.remove-movie:focus-visible {outline:3px solid white;outline-offset:4px}
.deck-screen,.watchlist-screen {margin:0 auto;padding:42px 0 30px;max-width:1040px}
.deck-header {display:flex;align-items:center;justify-content:space-between;gap:20px}
.deck-header h1 {font-size:clamp(1.8rem,3.4vw,2.6rem)}
.deck-header .movie-eyebrow {margin-bottom:10px}
.deck-header .back-button {white-space:nowrap;flex-shrink:0}
.deck-summary,.watchlist-intro {font-size:15px;line-height:1.6;color:#aaaab2;margin:16px 0 24px}
.swipe-stage {max-width:490px;margin:0 auto;position:relative;perspective:1200px}
.movie-card {position:relative;min-height:405px;border:1px solid #ffffff24;border-radius:22px;overflow:hidden;background:linear-gradient(135deg,hsl(var(--hue) 33% 24%),#19191f 70%);padding:30px;touch-action:pan-y;user-select:none;will-change:transform;cursor:grab;box-shadow:0 20px 50px #0003;transition:transform .2s ease,opacity .2s ease}
.movie-card.dragging {transition:none;cursor:grabbing}
.movie-card::before {content:'';position:absolute;pointer-events:none;width:220px;height:220px;border:1px solid #ffffff08;border-radius:50%;right:-90px;top:-40px}
.card-eyebrow {display:flex;justify-content:space-between;align-items:center;gap:12px;color:#c6bfc6;font-size:12px;letter-spacing:.12em;text-transform:uppercase;margin-bottom:35px}
.card-mood-tags {display:flex;flex-wrap:wrap;gap:7px;align-items:center}
.card-mood-tag {font-size:12px;letter-spacing:0;text-transform:none;padding:5px 9px;border-radius:6px;color:#ffdce0;background:#ffffff12}
.movie-title {font-size:clamp(1.85rem,4vw,2.65rem);line-height:1.07;letter-spacing:-.045em;font-weight:650;margin:0 0 17px;overflow-wrap:anywhere}
.movie-meta {display:flex;flex-wrap:wrap;gap:9px;align-items:center;color:#c9c5ca;font-size:14px;line-height:1.4}
.age-rating {border:1px solid #ffffff40;padding:2px 6px;border-radius:4px;font-size:12px}
.movie-description {font-size:16px;line-height:1.6;color:#e1dce2;margin:22px 0 18px;user-select:text}
.source-genres {font-size:13px;color:#a9a4b0;line-height:1.5;margin:0}
.genre-inference {font-size:12px;color:#b6a7b2;margin:12px 0 0;line-height:1.5}
.movie-credits {font-size:13px;color:#b1a9b7;margin:17px 0 0;line-height:1.5}
.swipe-stamp {position:absolute;top:20px;left:24px;padding:7px 12px;font-size:22px;font-weight:700;border:2px solid currentColor;border-radius:8px;color:#7ee3ad;transform:rotate(-10deg);opacity:0;background:#0f201be6;pointer-events:none}
.swipe-stamp.pass {left:auto;right:24px;color:#ff8290;background:#351a22e6;transform:rotate(10deg)}
.swipe-controls {display:flex;justify-content:center;gap:38px;margin:23px 0 0}
.swipe-control {display:flex;flex-direction:column;align-items:center;gap:8px;font-size:13px;color:#b9b9c0}
.swipe-button {width:62px;height:62px;border-radius:50%;border:1px solid #ffffff24;color:#c9c9d3;background:#202025;display:grid;place-items:center;cursor:pointer;transition:transform .18s}
.swipe-button svg {width:25px;height:25px;stroke-width:1.7;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round}
.swipe-button.save {color:#ff6878;border-color:#f56b793f;background:#38212a}
.swipe-button:disabled {opacity:.4;cursor:wait}
.swipe-button:hover:not(:disabled) {transform:scale(1.06)}
.swipe-hint {margin:19px 0 0;text-align:center;font-size:13px;color:#85858e;line-height:1.5}
.empty-state {max-width:550px;margin:40px auto;padding:36px 26px;border:1px solid #ffffff1c;border-radius:18px;text-align:center;background:#19191d}
.empty-state h2 {font-size:24px;letter-spacing:-.04em;line-height:1.2;margin:0 0 14px}
.empty-state p {color:#b4b4bd;font-size:16px;line-height:1.6;margin:0 0 23px}
.inline-error {max-width:490px;margin:16px auto;color:#ff9ca4;font-size:14px;line-height:1.5}
.watchlist-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.watchlist-card {background:linear-gradient(135deg,hsl(var(--hue) 24% 22%),#1a1a20);padding:22px;border:1px solid #ffffff1c;border-radius:16px;display:flex;flex-direction:column;min-width:0}
.watchlist-card h2 {font-size:24px;line-height:1.2;letter-spacing:-.04em;margin:0 0 14px;overflow-wrap:anywhere}
.watchlist-card p {font-size:14px;line-height:1.6;color:#c2bdc5;margin:16px 0 20px;flex:1}
.watchlist-links {display:flex;flex-wrap:wrap;gap:14px;align-items:center}
.watchlist-link {font-size:14px;color:#ff8b97;text-underline-offset:4px}
.remove-movie {font:inherit;font-size:13px;border:0;background:transparent;color:#aaa4af;padding:8px 0;cursor:pointer}
.watchlist-note {font-size:13px;color:#8b8792;line-height:1.6;margin-top:25px}
#saved-dialog {max-width:430px;width:calc(100% - 36px);color:#f5f4f2;background:#1b181c;border:1px solid #ffffff2a;border-radius:24px;padding:32px;text-align:center;box-shadow:0 30px 90px #0008}
#saved-dialog::backdrop {background:#08080bcd;backdrop-filter:blur(8px)}
#saved-dialog .movie-eyebrow {justify-content:center;margin:22px 0 10px}
#saved-dialog h2 {font-size:29px;letter-spacing:-.045em;line-height:1.15;margin:0 0 19px}
.saved-mark {width:53px;height:53px;margin:0 auto;border-radius:50%;display:grid;place-items:center;background:#52262f;color:#ff8391}
.saved-mark svg {width:28px;height:28px}
.saved-title {font-size:20px;font-weight:600;line-height:1.3;margin:0 0 8px}
.saved-description {font-size:14px;color:#aaa1ac;line-height:1.6;margin:0 0 25px}
#saved-dialog button {width:100%;margin-top:10px}
@media(max-width:800px) {.watchlist-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px) {.topbar{gap:8px}.topbar-actions{gap:8px}.topbar-actions .home-button{padding:8px 10px;font-size:13px}.brand{font-size:16px;gap:8px}.movie-card{padding:25px 23px;min-height:380px}.card-eyebrow{margin-bottom:28px}.deck-screen,.watchlist-screen{padding-top:30px}.deck-header{align-items:flex-start;gap:12px}.deck-header h1{font-size:1.8rem}.deck-header .back-button{font-size:13px}.deck-summary{margin:14px 0 20px}.mood-footer-inner{gap:8px}.mood-footer-actions{gap:8px}.mood-count{font-size:13px}.primary-button{padding:12px 15px;font-size:14px}.clear-moods{padding:10px 4px;font-size:13px}.watchlist-grid{grid-template-columns:1fr}.movie-title{font-size:2.1rem}.movie-description{font-size:15px}.swipe-hint{font-size:12px}}
@media(prefers-reduced-motion:reduce){.movie-card,.swipe-button{transition:none}}

.music-screen {padding-top:52px;padding-bottom:115px}
.music-screen .movie-eyebrow,.music-language-screen .movie-eyebrow {color:#1ed760}
.music-language-screen h1:focus {outline:none}
.music-language-choice {background:#132b20}
.music-language-choice::before {background:linear-gradient(180deg,#0b392555,#061b14eb),url('assets/music.jpg') center 40% / cover}
.music-language-choice:nth-child(2)::before {background:linear-gradient(180deg,#1d3d1d77,#0d260ce8),url('assets/music.jpg') center 65% / cover}
.music-screen .mood-tile {height:100%;background:#181d1a;border-radius:12px;min-height:100px}
.music-screen .mood-check {border-radius:50%}
.music-screen .mood-choice input:checked + .mood-tile {background:#163925;border-color:#1ed760}
.music-screen .mood-choice input:checked + .mood-tile .mood-check {background:#1ed760;border-color:#1ed760;color:#082411}
.music-screen .mood-choice input:checked + .mood-tile .mood-genre {color:#b8dec5}
.music-screen .clear-moods:not(:disabled) {color:#5bea8c}
.music-screen .mood-count strong {color:#5bea8c}
.music-screen .mood-footer {background:#101713f5}
.deck-header h1:focus {outline:none}
@media(hover:hover){.music-language-choice:hover{border-color:#1ed760}.music-screen .mood-choice:hover .mood-tile{background:#202b24;border-color:#738c7b}.music-screen .mood-choice:hover input:checked + .mood-tile{background:#1b462d;border-color:#65ee95}}
@media(max-width:420px){.music-screen{padding-top:34px}.music-screen .mood-tile{min-height:132px}}
.music-browse-all {color:#68e394;margin:0 0 24px;display:block}
.browse-titles{margin:0 0 24px;color:#ff929a}.all-regions{margin-top:24px;color:#ff929a}
.watchlist-card .title-kind{flex:none;font-size:12px;letter-spacing:.08em;margin:0 0 14px}
.music-results .movie-eyebrow,.song-dialog .movie-eyebrow {color:#60e991}
.music-screen .primary-button,.music-results .primary-button,.song-dialog .primary-button {background:#1ed760;color:#082411;box-shadow:none}
.music-screen .primary-button:disabled {background:#193625;color:#749982}
.song-card {background:linear-gradient(145deg,#214b34,#15281d 48%,#191b1b);min-height:420px;display:flex;flex-direction:column}
.song-card .card-eyebrow {margin-bottom:26px;align-items:flex-start}
.song-card .card-mood-tag {color:#c8f6d7;font-size:13px}
.song-card .movie-title {font-size:clamp(2rem,4vw,3rem);margin-bottom:10px;line-height:1.1}
.song-year {font-size:13px;color:#acbdb1;margin:0 0 13px}
.song-artist {font-size:20px;line-height:1.45;letter-spacing:-.02em;color:#e1eae4;margin:0 0 24px}
.song-genres {font-size:14px;line-height:1.6;color:#afc7b7;margin:0 0 24px}
.song-chart {display:flex;flex-wrap:wrap;gap:10px 24px;color:#aebfb5;font-size:13px;line-height:1.6;margin-top:auto;border-top:1px solid #ffffff16;padding-top:17px}
.song-chart strong {color:#dfebe3;font-weight:550}
.song-listen {margin-top:19px;color:#70ee9d;font-size:15px;line-height:1.5;text-underline-offset:5px;align-self:flex-start}
.music-results .swipe-button.save {background:#1b3d29;color:#5bea8c;border-color:#65ee9540}
.music-source-note {text-align:center;max-width:490px;margin:28px auto 0;color:#8e9b93;font-size:13px;line-height:1.6}
#saved-songs-count {color:#72ec9d;background:#1a3825;padding:2px 6px;border-radius:6px;font-size:12px;margin-left:4px}
.song-dialog {width:calc(100% - 36px);max-width:430px;border:1px solid #ffffff2a;border-radius:24px;background:#161e19;color:#f5f4f2;padding:32px;text-align:center;box-shadow:0 30px 90px #0008}
.song-dialog::backdrop {background:#080d0acd;backdrop-filter:blur(8px)}
.song-dialog .movie-eyebrow {justify-content:center}
.song-dialog h2 {font-size:29px;letter-spacing:-.045em;line-height:1.15;margin:0 0 22px}
.song-dialog a,.song-dialog button {display:block;width:100%;margin-top:12px;text-decoration:none}
.song-dialog a:focus-visible,.song-listen:focus-visible {outline:3px solid white;outline-offset:4px}
.saved-song-card {background:linear-gradient(135deg,#203b2c,#1a201c)}
.saved-song-card .saved-song-artist {font-size:16px;flex:none;margin:0 0 8px;color:#d4e6da}
.saved-song-card .watchlist-link {color:#71ed9c}
@media(max-width:520px){.song-card{min-height:370px}.song-artist{font-size:18px}.song-card .card-mood-tags{justify-content:flex-end}.music-language-choice{font-size:1.8rem}}
