/* Generated by scripts/build-theme-assets.php. Do not edit directly. */

/* Source: assets/css/homepage.css */


/* Source: assets/css/hero.css */
/* =====================================
   Hero Section
===================================== */

.hero {
	background: #090909;
	color: #fff;
	padding: 80px 0;
	display: flex;
	justify-content: center;
	align-items: center;
}

.hero-tag {
	color: #f4c430;
	text-transform: uppercase;
	letter-spacing: 5px;
	font-size: .95rem;
	margin-bottom: 30px;
}

.hero h1 {
	font-size: clamp(3.5rem, 8vw, 6.5rem);
	line-height: 1.05;
	font-weight: 800;
	margin-bottom: 30px;
}

.hero h1 span { display: block; color: #f4c430; }

.hero-text {
	max-width: 700px;
	margin: 0 auto 40px;
	font-size: 1.4rem;
	color: #b8b8b8;
}

.hero-buttons { display: flex; justify-content: center; gap: 20px; flex-wrap: wrap; }
.hero-content { width: min(900px, 92%); margin: auto; text-align: center; }

/*
 * Desktop repair: another loaded stylesheet is hiding the textual hero
 * elements after this file is applied. Scope the override to the OFM home
 * page so it does not affect WaveMe's other hero components or mobile view.
 */
@media (min-width: 641px) {
	/* Keep Trending Songs within reach on desktop instead of reserving a full viewport. */
	.ofm-home > .hero {
		height: auto !important;
		max-height: none !important;
		min-height: clamp(420px, 58vh, 620px) !important;
		padding: 72px 0 !important;
	}

	.ofm-home > .hero .hero-content,
	.ofm-home > .hero .hero-tag,
	.ofm-home > .hero h1,
	.ofm-home > .hero h1 span,
	.ofm-home > .hero .hero-text {
		display: block !important;
		visibility: visible !important;
		opacity: 1 !important;
		transform: none !important;
	}

	.ofm-home > .hero .hero-tag { color: #f4c430 !important; }
	.ofm-home > .hero h1 { color: #fff !important; }
	.ofm-home > .hero h1 span { color: #f4c430 !important; }
	.ofm-home > .hero .hero-text { color: #b8b8b8 !important; }
}

/* Keep the hero promise within the narrowest supported mobile viewports. */
@media (max-width: 640px) {
	.ofm-home > .hero h1 {
		font-size: clamp(2.5rem, 12vw, 3.25rem) !important;
		line-height: 1.02 !important;
		letter-spacing: -0.02em !important;
	}
}

/* The player remains running but stays out of every sign-in/access state. */
body.page-template-page-ofm-access #ofm-player,
html.ofm-access-modal-open #ofm-player {
	visibility: hidden;
	pointer-events: none;
}

/* Source: assets/css/cards.css */
.song-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:28px;margin-top:40px}.song-card{background:#141414;border-radius:22px;overflow:hidden;transition:.35s;box-shadow:0 10px 30px rgba(0,0,0,.35)}.song-card:hover{transform:translateY(-5px);box-shadow:0 18px 42px rgba(0,0,0,.42),0 0 0 1px rgba(244,196,48,.1)}.song-cover{position:relative;display:block;overflow:hidden}.song-cover img{width:100%;aspect-ratio:1;object-fit:cover;transition:.45s}.song-cover::after{content:"";position:absolute;left:0;right:0;bottom:0;height:42%;background:linear-gradient(to top,rgba(0,0,0,.65),transparent);pointer-events:none}.song-overlay{position:absolute;inset:0;z-index:2;display:flex;justify-content:center;align-items:center;background:rgba(0,0,0,.12);opacity:0;transition:opacity .25s ease}.song-card:hover .song-overlay,.song-card:focus-within .song-overlay{opacity:1}.play-button{width:54px;height:54px;display:grid;place-items:center;padding:0;border:1px solid rgba(255,255,255,.28);border-radius:50%;background:rgba(244,196,48,.92);color:#111;box-shadow:0 8px 22px rgba(0,0,0,.25);cursor:pointer;transition:transform .2s ease,background-color .2s ease}.play-button svg{width:21px;height:21px;fill:currentColor}.play-button:hover,.play-button:focus-visible{background:#ffd34d;transform:scale(1.06)}.play-button:focus-visible{outline:2px solid #fff;outline-offset:3px}.song-card .ofm-favorite-button{top:12px;right:12px;z-index:4;width:27px;height:27px;padding:0;border:0!important;border-radius:0!important;background:transparent!important;color:rgba(255,255,255,.88);backdrop-filter:none!important;box-shadow:none!important}.song-card .ofm-favorite-button svg{width:21px;height:21px;stroke-width:1.8;filter:drop-shadow(0 1px 2px rgba(0,0,0,.55))}.song-card .ofm-favorite-button:hover,.song-card .ofm-favorite-button:focus-visible{color:#fff;transform:scale(1.08)}.song-card .ofm-favorite-button.is-saved{color:#f4c430;background:transparent!important;border:0!important}.song-info{padding:22px}.song-info h3{margin:0;font-size:1.2rem}.artist{margin-top:8px;color:#9ca3af}.genre{display:inline-block;margin-top:16px;padding:6px 14px;border-radius:999px;background:#222;color:#f4c430;font-size:.8rem}.song-info h3 a{color:#fff;text-decoration:none}.song-info h3 a:hover{color:#f4c430}@media(max-width:580px){.song-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:24px}.song-card{border-radius:16px}.song-info{padding:14px}.song-info h3{font-size:1rem}.song-card .ofm-favorite-button{width:28px;height:28px;top:10px;right:10px}.play-button{width:48px;height:48px}.song-overlay{opacity:1;background:linear-gradient(to top,rgba(0,0,0,.1),transparent)}.song-card .play-button{opacity:.9}}

/* Source: assets/css/buttons.css */
.btn-primary,
.btn-secondary{

    display:inline-flex;
    align-items:center;
    justify-content:center;

    padding:18px 40px;

    border-radius:999px;

    text-decoration:none;

    font-weight:700;

    transition:.3s;
}

.btn-primary{

    background:#f4c430;

    color:#111;
}

.btn-primary:hover{

    transform:translateY(-3px);
}

.btn-secondary{

    border:2px solid #f4c430;

    color:#fff;
}

.btn-secondary:hover{

    background:#f4c430;

    color:#111;
}

/* Source: assets/css/sections.css */
.ofm-section{
    padding:80px 0;
    background:#090909;
    color:#fff;
}

.ofm-container{
    width:min(1200px,92%);
    margin:auto;
}

.ofm-section h2{
    font-size:2.4rem;
    margin-bottom:20px;
    color:#fff;
}

.ofm-section p{
    color:#9ca3af;
}

.section-header{

    display:flex;

    justify-content:space-between;

    align-items:flex-end;

    gap:20px;

    margin-bottom:30px;
}

.section-header h2{

    margin:0;

    font-size:3rem;
}

.section-header p{

    margin:8px 0 0;

    color:#9ca3af;
}

.section-link{

    color:#f4c430;

    text-decoration:none;

    font-weight:700;

    white-space:nowrap;
}

/* Source: assets/css/utilities.css */


/* Source: assets/css/responsive.css */


/* Source: assets/css/library.css */
.ofm-account,.ofm-library{background:radial-gradient(900px 500px at 50% 15%,rgba(244,196,48,.055),transparent 60%),#090909;color:#fff;min-height:100vh;padding:clamp(42px,8vw,110px) 20px calc(180px + env(safe-area-inset-bottom))}.ofm-account{display:grid;place-items:center}.ofm-account__panel{width:min(100%,520px);box-sizing:border-box;background:linear-gradient(145deg,rgba(30,30,30,.96),rgba(18,18,18,.98));border:1px solid rgba(255,255,255,.11);border-radius:28px;padding:clamp(30px,5vw,54px);box-shadow:0 30px 80px rgba(0,0,0,.42)}.ofm-eyebrow{margin:0 0 14px;color:#f4c430;font-size:.72rem;font-weight:800;letter-spacing:.2em}.ofm-account h1,.ofm-library h1{margin:0;font-size:clamp(2.5rem,5vw,4.5rem);line-height:1.02;letter-spacing:-.045em}.ofm-account__intro,.ofm-library__header>p:not(.ofm-eyebrow),.ofm-account__panel>p:not(.ofm-eyebrow){max-width:32rem;color:#b6b6b6;font-size:1rem;line-height:1.65}.ofm-auth-tabs{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin:32px 0 24px;padding:5px;border:1px solid rgba(255,255,255,.08);border-radius:14px;background:#101010}.ofm-auth-tabs button{appearance:none;border:0;border-radius:10px;background:transparent;padding:11px 10px;color:#aaa;cursor:pointer;font:inherit;font-size:.9rem;font-weight:750;transition:background .2s,color .2s}.ofm-auth-tabs button.is-active{color:#111;background:#f4c430}.ofm-auth-form{display:grid;gap:17px}.ofm-auth-form label{display:grid;gap:8px;color:#f4f4f4;font-size:.86rem;font-weight:750}.ofm-auth-form label span{color:#969696;font-weight:500}.ofm-auth-form input{width:100%;box-sizing:border-box;border:1px solid #383838;border-radius:12px;background:#0d0d0d;color:#fff;padding:14px 15px;font:inherit;transition:border-color .2s,box-shadow .2s,background .2s}.ofm-auth-form input:hover{border-color:#4c4c4c}.ofm-auth-form input:focus{outline:0;border-color:#f4c430;background:#101010;box-shadow:0 0 0 3px rgba(244,196,48,.13)}.ofm-auth-form .wp-hide-pw,.ofm-auth-form .password-toggle,.ofm-auth-form [class*="toggle-password"],.ofm-auth-form button:not(.ofm-button){display:none!important}.ofm-form-message{min-height:1.2em;margin:0;color:#ffb4b4;font-size:.9rem}.ofm-button{display:inline-flex;justify-content:center;align-items:center;min-height:50px;padding:0 22px;border-radius:999px;text-decoration:none;font-weight:800}.ofm-button--primary{border:0;background:#f4c430;color:#101010;cursor:pointer;transition:transform .2s,background .2s}.ofm-button--primary:hover{background:#ffd34d;transform:translateY(-1px)}.ofm-button--primary:disabled{opacity:.65;cursor:wait}.ofm-library{max-width:1280px;margin:auto}.ofm-library__header{margin-bottom:38px}.ofm-library__empty{max-width:580px;border:1px dashed #494949;border-radius:20px;padding:36px;background:#121212}.ofm-library__empty h2{margin-top:0}.ofm-favorite-button{position:absolute;z-index:3;top:12px;right:12px;width:42px;height:42px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.22);border-radius:50%;background:rgba(10,10,10,.75);color:#fff;cursor:pointer}.ofm-favorite-button svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2}.ofm-favorite-button.is-saved{color:#f4c430}.ofm-favorite-button.is-saved svg{fill:currentColor}.ofm-favorite-button:focus-visible{outline:2px solid #f4c430;outline-offset:3px}.ofm-favorite-button:disabled{opacity:.6;cursor:wait}.player-favorite{position:static;flex:0 0 auto;width:34px;height:34px;background:transparent;border-color:transparent}@media(max-width:580px){.ofm-account,.ofm-library{padding:34px 16px calc(184px + env(safe-area-inset-bottom))}.ofm-account{place-items:start center}.ofm-account__panel{border-radius:22px;padding:30px 22px}.ofm-account h1{font-size:2.75rem}.ofm-library__header{margin-bottom:24px}.song-card .ofm-favorite-button{opacity:1}.player-favorite{display:grid!important}}

/* Source: assets/css/history.css */
.ofm-library__header{margin-bottom:22px}.ofm-library__header>p:not(.ofm-eyebrow){margin:7px 0 0;line-height:1.4}.ofm-history{padding:14px 0 20px}.ofm-history__heading{display:flex;align-items:end;justify-content:space-between;gap:20px;margin:0 0 14px}.ofm-history__heading h2{margin:2px 0 0;font-size:clamp(1.65rem,3vw,2.25rem)}.ofm-history__heading>span{color:#aaa}.ofm-history__grid{padding-bottom:0}.ofm-history .song-card{min-width:0}.ofm-library .ofm-playlists{padding:20px 0 34px}.ofm-library .ofm-playlists__heading>div>p:last-child{margin:6px 0 0;line-height:1.4}@media(max-width:640px){.ofm-library__header{margin-bottom:18px}.ofm-history{padding:12px 0 16px}.ofm-history__heading{align-items:start;flex-direction:column;gap:5px}.ofm-library .ofm-playlists{padding-top:18px}}
.ofm-library .song-grid{grid-template-columns:repeat(auto-fill,minmax(168px,1fr));gap:16px;margin-top:20px}.ofm-library .song-card{border-radius:16px}.ofm-library .song-info{padding:14px}.ofm-library .song-info h3{font-size:1rem;line-height:1.25}.ofm-library .artist{margin-top:5px;font-size:.88rem}.ofm-library .genre{margin-top:10px;padding:5px 10px;font-size:.72rem}.ofm-library .play-button{width:52px;height:52px}.ofm-library .ofm-favorite-button{width:34px;height:34px;top:9px;right:9px}@media(max-width:580px){.ofm-library .song-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.ofm-library .song-info{padding:12px}.ofm-library .song-info h3{font-size:.94rem}.ofm-library .artist{font-size:.82rem}}

/* Source: assets/css/playlists.css */
.ofm-playlists{max-width:1280px;margin:0 auto;padding:0 20px calc(180px + env(safe-area-inset-bottom));background:#090909;color:#fff}.ofm-playlists__heading{display:flex;align-items:end;justify-content:space-between;gap:24px;padding-top:56px}.ofm-playlists h2{margin:0;font-size:clamp(2rem,4vw,3rem)}.ofm-playlists__heading>div>p:last-child{color:#aaa}.ofm-playlist-create{display:flex;gap:12px;align-items:end;margin:24px 0;padding:18px;border:1px solid #303030;border-radius:16px;background:#151515}.ofm-playlist-create label{display:grid;gap:7px;flex:1;font-weight:700}.ofm-playlist-create input{padding:12px;border:1px solid #454545;border-radius:10px;background:#0c0c0c;color:#fff;font:inherit}.ofm-playlist-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:16px;margin-top:28px}.ofm-playlist-card{position:relative;display:grid;grid-template-columns:76px minmax(0,1fr);gap:14px;align-items:center;padding:14px;border:1px solid #2d2d2d;border-radius:18px;background:#151515}.ofm-playlist-card__cover{width:76px;height:76px;display:grid;place-items:center;border-radius:12px;background:#292929 center/cover;color:#f4c430;font-size:2rem}.ofm-playlist-card h3{margin:2px 0;font-size:1.05rem}.ofm-playlist-card p{margin:0;color:#aaa}.ofm-playlist-card button{position:absolute;top:8px;right:8px;border:0;background:transparent;color:#aaa;font-size:1.4rem;cursor:pointer}.ofm-playlist-empty{display:grid;gap:5px;margin-top:24px;padding:24px;border:1px dashed #444;border-radius:16px;color:#aaa}.ofm-playlist-empty strong{color:#fff}.ofm-playlist-modal{position:fixed;z-index:1000001;inset:0;display:grid;place-items:center;padding:20px;background:rgba(0,0,0,.62)}.ofm-playlist-modal__box{width:min(100%,420px);position:relative;padding:30px;border:1px solid #393939;border-radius:22px;background:#191919;color:#fff;box-shadow:0 24px 70px rgba(0,0,0,.5)}.ofm-playlist-modal__box h2{margin:0 0 20px}.ofm-playlist-modal__close{position:absolute;top:12px;right:15px;border:0;background:transparent;color:#fff;font-size:1.6rem}.ofm-playlist-modal__list{display:grid;gap:8px}.ofm-playlist-modal__list button{padding:13px;border:1px solid #383838;border-radius:12px;background:#101010;color:#fff;text-align:left;font:inherit;cursor:pointer}.ofm-playlist-modal__list button:hover{border-color:#f4c430}@media(max-width:580px){.ofm-playlists{padding:0 16px calc(184px + env(safe-area-inset-bottom))}.ofm-playlists__heading{align-items:start;flex-direction:column}.ofm-playlist-create{align-items:stretch;flex-direction:column}}
.song-card .ofm-playlist-add{position:absolute;z-index:4;top:12px;left:12px;width:32px;height:32px;display:grid;place-items:center;padding:0;border:1px solid rgb(255 255 255 / .35);border-radius:999px;background:rgb(10 10 10 / .25);color:#fff;opacity:0;cursor:pointer;transition:background-color .18s ease,opacity .18s ease,transform .18s ease}.song-card .ofm-playlist-add svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round}.song-card:hover .ofm-playlist-add,.song-card .ofm-playlist-add:focus-visible{opacity:1}.song-card .ofm-playlist-add:hover{background:#f4c430;color:#111;transform:scale(1.06)}@media(max-width:760px){.song-card .ofm-playlist-add{opacity:.9;top:10px;left:10px;width:30px;height:30px}}
.ofm-playlist-modal__empty{margin:0;color:#bbb}.ofm-playlist-modal__list .ofm-button{justify-content:center;text-align:center}
.ofm-playlist-modal__new{display:grid;gap:8px;margin-top:18px;padding-top:18px;border-top:1px solid #343434}.ofm-playlist-modal__new label{color:#c8c8c8;font-size:.88rem;font-weight:700}.ofm-playlist-modal__new>div{display:flex;gap:8px}.ofm-playlist-modal__new input{min-width:0;flex:1;padding:11px 12px;border:1px solid #414141;border-radius:10px;background:#101010;color:#fff;font:inherit}.ofm-playlist-modal__new button{padding:10px 13px;border:0;border-radius:10px;background:#f4c430;color:#171717;font:inherit;font-weight:800;cursor:pointer}.ofm-playlist-modal__new button:disabled{opacity:.55;cursor:wait}@media(max-width:580px){.ofm-playlist-modal__new>div{flex-direction:column}.ofm-playlist-modal__new button{width:100%}}
.ofm-library .ofm-playlists{max-width:none;margin:0;padding:30px 0 34px;background:transparent}.ofm-library .ofm-playlists__heading{padding-top:0}.ofm-playlist-card__link{display:grid;grid-template-columns:76px minmax(0,1fr);gap:14px;align-items:center;min-width:0;color:inherit;text-decoration:none}.ofm-playlist-card__link:hover h3{color:#f4c430}.ofm-playlist-card:has(.ofm-playlist-card__link:hover){border-color:#4a4a4a;transform:translateY(-2px)}.ofm-playlist-detail__back{display:inline-block;margin:32px 0 0;color:#f4c430;text-decoration:none;font-weight:700}.ofm-playlist-detail__back:hover{text-decoration:underline}
.single-station figure.header-station-thumbnail{position:relative;display:block;overflow:hidden;flex:0 0 auto;margin:0!important;border-radius:8px}.single-station figure.header-station-thumbnail img{display:block;width:100%;max-width:100%;height:auto;object-fit:cover}
.ofm-playlist-notice{position:fixed;z-index:1000002;left:50%;bottom:calc(112px + env(safe-area-inset-bottom));max-width:calc(100vw - 32px);padding:13px 18px;border:1px solid rgb(244 196 48 / .6);border-radius:999px;background:#1b1b1b;color:#fff;box-shadow:0 14px 35px rgb(0 0 0 / .35);font-weight:700;opacity:0;transform:translate(-50%,12px);transition:opacity .2s ease,transform .2s ease}.ofm-playlist-notice.is-visible{opacity:1;transform:translate(-50%,0)}.ofm-station-playlist{width:min(100%,760px);display:flex;align-items:center;justify-content:space-between;gap:16px;margin:12px 0 12px;padding:12px 14px 12px 16px;border:1px solid #363636;border-radius:16px;background:linear-gradient(110deg,#181818,#202020);color:#d5d5d5;font-size:.92rem}.ofm-station-playlist button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:38px;padding:8px 13px;border:1px solid #f4c430;border-radius:999px;background:#f4c430;color:#161616;font:inherit;font-weight:800;cursor:pointer;transition:transform .18s ease,box-shadow .18s ease}.ofm-station-playlist button:hover{transform:translateY(-1px);box-shadow:0 6px 18px rgb(244 196 48 / .18)}.ofm-station-playlist svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round}@media(max-width:580px){.ofm-station-playlist{align-items:flex-start;flex-direction:column;gap:10px;padding:13px}.ofm-station-playlist button{width:100%}}
.ofm-station-playlist.is-cover-enhanced{display:none}.ofm-station-cover-control{position:relative;overflow:hidden}.ofm-station-cover-controls{position:absolute;z-index:5;inset:0;display:flex;align-items:center;justify-content:center;pointer-events:none;opacity:0;transition:opacity .2s ease;background:linear-gradient(180deg,rgb(0 0 0 / .06),rgb(0 0 0 / .34))}.ofm-station-cover-control:hover .ofm-station-cover-controls,.ofm-station-cover-control:focus-within .ofm-station-cover-controls{opacity:1}.ofm-station-cover-controls button{pointer-events:auto;display:grid;place-items:center;padding:0;border:1px solid rgb(255 255 255 / .46);border-radius:50%;background:rgb(16 16 16 / .68);color:#fff;cursor:pointer;transition:transform .18s ease,background .18s ease}.ofm-station-cover-controls button:hover{transform:scale(1.06);background:#f4c430;color:#171717}.ofm-station-cover-play{width:64px;height:64px}.ofm-station-cover-play svg{width:27px;height:27px;fill:currentColor;stroke:none}.ofm-station-cover-play .icon-pause{display:none;fill:none;stroke:currentColor;stroke-width:2.4}.ofm-station-cover-controls.is-playing .icon-play{display:none}.ofm-station-cover-controls.is-playing .icon-pause{display:block}.ofm-station-cover-playlist{position:absolute;top:12px;right:12px;width:38px;height:38px}.ofm-station-cover-playlist svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round}@media(max-width:760px){.ofm-station-cover-controls{opacity:1;background:linear-gradient(180deg,rgb(0 0 0 / .15),rgb(0 0 0 / .15))}.ofm-station-cover-play{width:54px;height:54px}.ofm-station-cover-playlist{top:10px;right:10px;width:34px;height:34px}}
.entry-meta .ofm-station-header-playlist{display:inline-grid;place-items:center;width:32px;height:32px;padding:0;border:0;background:transparent;color:inherit;cursor:pointer}.entry-meta .ofm-station-header-playlist svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round}.entry-meta .ofm-station-header-playlist:hover{color:#f4c430}.entry-meta .ofm-station-header-playlist:focus-visible{outline:2px solid #f4c430;outline-offset:3px;border-radius:50%}
.ofm-playlist-card__cover{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,1fr));place-items:stretch;overflow:hidden;background:#292929}.ofm-playlist-card__cover img{display:block;width:100%;height:100%;object-fit:cover}.ofm-playlist-card__cover--1{display:block}.ofm-playlist-card__cover--1 img{display:block}.ofm-playlist-card__cover>span{display:grid;place-items:center;grid-column:1/-1;grid-row:1/-1}.song-card button.ofm-playlist-add{position:absolute!important;z-index:6!important;top:10px!important;left:10px!important;display:grid!important;place-items:center!important;box-sizing:border-box!important;width:30px!important;height:30px!important;min-height:30px!important;margin:0!important;padding:0!important;border:1px solid rgb(255 255 255 / .38)!important;border-radius:50%!important;background:rgb(12 12 12 / .52)!important;color:#fff!important;font-size:0!important;line-height:1!important;opacity:0;cursor:pointer;box-shadow:none!important;transition:opacity .18s ease,transform .18s ease,background .18s ease}.song-card button.ofm-playlist-add svg{display:block!important;width:16px!important;height:16px!important;fill:none!important;stroke:currentColor!important;stroke-width:2!important;stroke-linecap:round!important}.song-card:hover button.ofm-playlist-add,.song-card button.ofm-playlist-add:focus-visible{opacity:1}.song-card button.ofm-playlist-add:hover{background:#f4c430!important;color:#151515!important;transform:scale(1.06)}@media(max-width:760px){.song-card button.ofm-playlist-add{opacity:.94}}
.song-card .play-button .icon-pause{display:none;fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round}.song-card.is-playing .play-button .icon-play{display:none}.song-card.is-playing .play-button .icon-pause{display:block}

/* Source: assets/css/library-compact.css */
/* Library RC2: dense, scannable saved releases and playlist controls. */
/* Native disclosure keeps long listener collections lightweight and accessible. */
.ofm-library__collapsible>summary{list-style:none;cursor:pointer}.ofm-library__collapsible>summary::-webkit-details-marker{display:none}.ofm-library__collapsible>summary::after{content:'+';display:grid;place-items:center;flex:0 0 auto;width:30px;height:30px;margin:0 0 2px 8px;border:1px solid #494949;border-radius:50%;color:#d8d8d8;font-size:1.2rem;font-weight:400;line-height:1}.ofm-library__collapsible[open]>summary::after{content:'−';border-color:rgb(244 196 48 / .65);color:#f4c430}.ofm-library__collapsible:not([open]){padding-bottom:14px}.ofm-library__collapsible:not([open])>summary{margin-bottom:0}.ofm-library__collapsible .ofm-release-list{margin-top:0}
/* Individual audio likes use the same compact rows as saved releases. */
.ofm-library #ofm-liked-tracks{scroll-margin-top:94px;padding:20px 0 28px}
@media(max-width:720px){.ofm-library__liked-tracks .ofm-release-row{grid-template-columns:46px minmax(0,1fr)}.ofm-library__liked-tracks .ofm-release-row__meta{grid-column:2;grid-row:2}.ofm-library__liked-tracks .ofm-release-row__actions{grid-column:1/-1;grid-row:3;justify-content:flex-start;padding-top:1px}.ofm-library__liked-tracks .ofm-release-row__actions .ofm-row-button{min-width:auto;padding:5px 9px;font-size:.72rem}.ofm-library__liked-tracks .ofm-release-row__actions .ofm-row-button:after{content:none}}
/* Library navigation, consistent anchors, and playlist ordering controls. */
@media(max-width:720px){.ofm-library__saved .ofm-release-row{grid-template-columns:46px minmax(0,1fr)}.ofm-library__saved .ofm-release-row__meta{grid-column:2;grid-row:2}.ofm-library__saved .ofm-release-row__actions{grid-column:1/-1;grid-row:3;justify-content:flex-start;padding-top:1px}.ofm-library__saved .ofm-release-row__actions .ofm-row-button{min-width:auto;padding:5px 9px;font-size:.72rem}.ofm-library__saved .ofm-release-row__actions .ofm-row-button:after{content:none}}
.ofm-library__nav{display:flex;flex-wrap:wrap;gap:9px;margin-top:20px}.ofm-library__nav a{border:1px solid #3c3c3c;border-radius:999px;color:#d7d7d7;font-size:.82rem;font-weight:700;padding:7px 11px;text-decoration:none}.ofm-library__nav a:hover,.ofm-library__nav a:focus-visible{border-color:#f4c430;color:#f4c430;outline:none}.ofm-library #ofm-recently-played,.ofm-library #ofm-saved,.ofm-library #ofm-playlists{scroll-margin-top:94px}.ofm-playlist-detail{padding-top:clamp(34px,4vw,56px)!important}.ofm-playlist-detail .ofm-playlist-detail__back{margin-top:0}.ofm-playlist-detail .ofm-library__header{margin:12px 0 26px}.ofm-playlist-detail .ofm-release-list{margin-top:0}.ofm-row-reorder{display:inline-flex;align-items:center;gap:4px}.ofm-row-reorder button{display:grid;place-items:center;width:28px;height:28px;padding:0;border:1px solid #454545;border-radius:50%;background:transparent;color:#d6d6d6;cursor:pointer;font:inherit;font-size:.9rem}.ofm-row-reorder button:hover,.ofm-row-reorder button:focus-visible{border-color:#f4c430;color:#f4c430;outline:none}.ofm-release-row[draggable="true"]{cursor:grab}.ofm-release-row.is-dragging{cursor:grabbing;opacity:.45}.ofm-release-list.is-saving-order{opacity:.82;pointer-events:none}@media(max-width:720px){.ofm-library__nav{margin-top:16px}.ofm-playlist-detail{padding-top:32px!important}.ofm-row-reorder{gap:3px}.ofm-row-reorder button{width:26px;height:26px}.ofm-playlist-detail .ofm-release-row{grid-template-columns:46px minmax(0,1fr)}.ofm-playlist-detail .ofm-release-row__meta{grid-column:2}.ofm-playlist-detail .ofm-release-row__actions{grid-column:1/-1;grid-row:auto;justify-content:flex-start;padding-top:2px}.ofm-playlist-detail .ofm-release-row__actions .ofm-row-button{min-width:auto;padding:5px 8px;font-size:.72rem}.ofm-playlist-detail .ofm-release-row__actions .ofm-row-button:after{content:none}}
.ofm-library__header{margin-bottom:34px}.ofm-library__header>p:not(.ofm-eyebrow){max-width:640px;margin:8px 0 0;color:#b6b6b6;line-height:1.5}.ofm-library__saved{padding:20px 0 28px}.ofm-library__section-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:14px}.ofm-library__section-heading h2{margin:2px 0 0;font-size:clamp(1.65rem,3vw,2.25rem)}.ofm-library__section-heading>span{color:#aaa;font-size:.92rem}.ofm-release-list{display:grid;gap:9px}.ofm-release-row{display:grid;grid-template-columns:56px minmax(160px,1.25fr) minmax(220px,1fr) auto;align-items:center;gap:14px;min-height:76px;padding:10px 14px;border:1px solid #2d2d2d;border-radius:15px;background:#151515;transition:border-color .18s ease,background .18s ease}.ofm-release-row:hover{border-color:#575757;background:#191919}.ofm-release-row__cover{display:block;overflow:hidden;width:56px;height:56px;border-radius:10px;background:#292929;color:#f4c430;text-decoration:none}.ofm-release-row__cover img{display:block;width:100%;height:100%;object-fit:cover}.ofm-release-row__cover span{display:grid;place-items:center;width:100%;height:100%;font-size:1.5rem}.ofm-release-row__main{display:grid;gap:4px;min-width:0}.ofm-release-row__main>a{overflow:hidden;color:#fff;font-weight:800;text-decoration:none;text-overflow:ellipsis;white-space:nowrap}.ofm-release-row__main>a:hover{color:#f4c430}.ofm-release-row__main>span{overflow:hidden;color:#aaa;font-size:.9rem;text-overflow:ellipsis;white-space:nowrap}.ofm-release-row__meta{display:flex;flex-wrap:wrap;gap:7px}.ofm-release-row__meta span{padding:4px 8px;border-radius:999px;background:#222;color:#c5c5c5;font-size:.75rem;white-space:nowrap}.ofm-release-row__actions{display:flex;justify-content:flex-end;gap:8px}.ofm-row-button,.ofm-playlist-detail__actions button,.ofm-playlist-card__actions button{min-height:34px;padding:7px 11px;border:1px solid #494949;border-radius:999px;background:transparent;color:#fff;font:inherit;font-size:.82rem;font-weight:700;text-decoration:none;cursor:pointer}.ofm-row-button:hover,.ofm-playlist-detail__actions button:hover,.ofm-playlist-card__actions button:hover{border-color:#f4c430;color:#f4c430}.ofm-playlist-detail__actions{display:flex;flex-wrap:wrap;gap:9px;margin-top:20px}.ofm-playlist-detail__actions button:last-child,.ofm-playlist-card__actions button:last-child{color:#e7b0b0}.ofm-playlists{padding:28px 0 36px!important}.ofm-playlists__heading{padding-top:0!important}.ofm-playlists__heading>div>p:last-child{margin:6px 0 0;line-height:1.45}.ofm-playlist-grid{grid-template-columns:repeat(auto-fill,minmax(255px,1fr));gap:14px}.ofm-playlist-card{display:block;padding:0;overflow:hidden}.ofm-playlist-card__link{grid-template-columns:86px minmax(0,1fr);gap:14px;padding:14px}.ofm-playlist-card__cover{width:86px;height:86px}.ofm-playlist-card__actions{display:flex;gap:8px;padding:0 14px 14px}.ofm-playlist-card__actions button{padding:6px 9px;font-size:.74rem}.ofm-playlist-card__actions button:last-child{margin-left:auto}.ofm-playlist-card__link .ofm-eyebrow{margin:0 0 5px;font-size:.66rem}.ofm-playlist-card h3{font-size:1.05rem}.ofm-playlist-card:has(.ofm-playlist-card__link:hover){transform:translateY(-2px);border-color:#555}.ofm-history{padding:0 0 22px}.ofm-history__grid{grid-auto-flow:column;grid-auto-columns:minmax(152px,180px);grid-template-columns:none;overflow-x:auto;padding-bottom:8px}.ofm-history .song-card{min-width:0}.ofm-history .song-info{padding:12px}.ofm-history .song-info h3{font-size:.92rem}.ofm-history .artist{font-size:.8rem}.ofm-history .genre{display:none}@media(max-width:720px){.ofm-release-row{grid-template-columns:52px minmax(0,1fr) auto;gap:11px;padding:9px 10px}.ofm-release-row__cover{width:52px;height:52px}.ofm-release-row__meta{grid-column:2/4}.ofm-release-row__actions{grid-column:3;grid-row:1;align-self:center}.ofm-release-row__actions .ofm-row-button{font-size:0;min-width:34px;padding:0}.ofm-release-row__actions .ofm-row-button:after{content:'↗';font-size:1rem}.ofm-playlists__heading{align-items:flex-start}.ofm-playlist-grid{grid-template-columns:1fr}}@media(max-width:480px){.ofm-library__header{margin-bottom:24px}.ofm-library__section-heading{align-items:flex-start;flex-direction:column;gap:5px}.ofm-release-row{border-radius:13px}.ofm-release-row__meta span:last-child{display:none}.ofm-history__heading>span{display:none}.ofm-playlist-card__link{grid-template-columns:70px minmax(0,1fr)}.ofm-playlist-card__cover{width:70px;height:70px}}
.ofm-release-row.is-removing{opacity:0;transform:translateX(10px);transition:opacity .18s ease,transform .18s ease}.ofm-row-button--unfavorite{border-color:#5b4141;color:#f2c1c1}.ofm-row-button--unfavorite:hover{border-color:#f4c430;color:#f4c430}.ofm-station-track__details{display:flex;align-items:center;gap:14px;min-width:0}.ofm-station-track__stats{margin-left:auto;color:#aaa;font-size:.8rem;font-weight:500;white-space:nowrap}@media(max-width:580px){.ofm-station-track__details{gap:10px}.ofm-station-track__stats{font-size:.72rem}}
.ofm-history{padding:0 0 28px}.ofm-history__heading{display:flex;align-items:end;justify-content:space-between;gap:18px;margin-bottom:14px}.ofm-history__heading h2{margin:2px 0 0;font-size:clamp(1.65rem,3vw,2.25rem)}.ofm-history__heading>span{color:#aaa;font-size:.92rem}@media(max-width:580px){.ofm-history{padding-bottom:24px}.ofm-history__heading{align-items:flex-start;flex-direction:column;gap:5px}.ofm-history__heading>span{display:none}}
.ofm-playlist-detail__actions .ofm-playlist-detail__play{border-color:#f4c430;background:#f4c430;color:#171717}.ofm-playlist-detail .ofm-release-row__actions{align-items:center;gap:6px}.ofm-playlist-detail .ofm-release-row__actions>button,.ofm-playlist-detail .ofm-row-reorder button{display:grid;place-items:center;min-width:30px;height:30px;min-height:30px;padding:0;border:1px solid #3e3e3e;border-radius:50%;background:transparent;color:#aaa;font:inherit;font-size:.82rem;line-height:1;cursor:pointer;transition:border-color .18s ease,color .18s ease,background .18s ease}.ofm-playlist-detail .ofm-release-row__actions>[data-ofm-playlist-remove]{width:auto;min-width:0;padding:0 10px;border-radius:999px;color:#bdbdbd;font-size:.74rem}.ofm-playlist-detail .ofm-release-row__actions>button:hover,.ofm-playlist-detail .ofm-release-row__actions>button:focus-visible,.ofm-playlist-detail .ofm-row-reorder button:hover,.ofm-playlist-detail .ofm-row-reorder button:focus-visible{border-color:#f4c430;background:rgb(244 196 48 / .08);color:#f4c430;outline:none}.ofm-playlist-detail .ofm-release-row__actions>[data-ofm-playlist-remove]:hover,.ofm-playlist-detail .ofm-release-row__actions>[data-ofm-playlist-remove]:focus-visible{border-color:#885858;background:rgb(152 75 75 / .08);color:#e8aaaa}
.song-card{position:relative}.song-info{position:relative;padding-right:48px}.ofm-song-share{position:absolute;right:13px;bottom:13px;display:grid;place-items:center;width:30px;height:30px;padding:0;border:1px solid transparent;border-radius:50%;background:transparent;color:#9b9b9b;cursor:pointer;transition:color .18s ease,border-color .18s ease,background .18s ease}.ofm-song-share svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.ofm-song-share:hover,.ofm-song-share:focus-visible{border-color:#4d4d4d;background:#202020;color:#f4c430;outline:none}.ofm-playlist-card{position:relative}.ofm-playlist-card__share{position:absolute;z-index:2;top:10px;right:10px;display:grid;place-items:center;width:30px;height:30px;padding:0;border:1px solid #474747;border-radius:50%;background:#151515;color:#c9c9c9;cursor:pointer}.ofm-playlist-card__share svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.ofm-playlist-card__share:hover,.ofm-playlist-card__share:focus-visible{border-color:#f4c430;color:#f4c430;outline:none}.ofm-playlist-visibility{display:inline-grid;place-items:center;width:16px;height:16px;margin-left:5px;color:#a8a8a8;vertical-align:middle}.ofm-playlist-visibility svg{width:13px;height:13px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.ofm-playlist-visibility.is-public{color:#f4c430}
#ofm-queue-list .ofm-queue__item{padding-right:116px}@media(max-width:580px){#ofm-queue-list .ofm-queue__item{padding-right:108px}}
/* Branded share panel replaces the browser's generic operating-system sheet. */
.ofm-share-modal{position:fixed;z-index:100100;inset:0;display:grid;place-items:center;padding:20px;background:rgb(0 0 0 / .72);backdrop-filter:blur(7px)}.ofm-share-modal__box{position:relative;width:min(430px,100%);padding:28px;border:1px solid #3b3b3b;border-radius:24px;background:linear-gradient(145deg,#222 0%,#171717 72%);box-shadow:0 24px 70px rgb(0 0 0 / .5)}.ofm-share-modal__box h2{max-width:330px;margin:4px 0 6px;font-size:clamp(1.55rem,5vw,2rem);line-height:1.12}.ofm-share-modal__copy{margin:0;color:#bbb}.ofm-share-modal__close{position:absolute;top:15px;right:15px;display:grid;place-items:center;width:34px;height:34px;padding:0;border:0;border-radius:50%;background:#292929;color:#fff;font:inherit;font-size:1.55rem;cursor:pointer}.ofm-share-modal__close:hover,.ofm-share-modal__close:focus-visible{background:#f4c430;color:#171717;outline:none}.ofm-share-modal__networks{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:22px}.ofm-share-modal__networks button{display:grid;justify-items:center;gap:7px;min-height:88px;padding:11px 6px;border:1px solid #363636;border-radius:15px;background:#141414;color:#eee;font:inherit;font-size:.76rem;font-weight:700;cursor:pointer;transition:transform .18s ease,border-color .18s ease,background .18s ease}.ofm-share-modal__networks b{display:grid;place-items:center;width:32px;height:32px;border-radius:11px;background:#303030;color:#fff;font-size:1rem}.ofm-share-modal__networks button:nth-child(1) b{background:#25d366}.ofm-share-modal__networks button:nth-child(2) b{background:#1877f2}.ofm-share-modal__networks button:nth-child(3) b{background:#111;border:1px solid #555}.ofm-share-modal__networks button:nth-child(4) b{background:#229ed9}.ofm-share-modal__networks button:nth-child(5) b{background:#0a66c2}.ofm-share-modal__networks button:nth-child(6) b{background:#f4c430;color:#171717}.ofm-share-modal__networks button:hover,.ofm-share-modal__networks button:focus-visible{border-color:#f4c430;background:#222;outline:none;transform:translateY(-2px)}.ofm-station-header-share{display:inline-grid;place-items:center;width:30px;height:30px;margin-left:7px;padding:0;border:0;border-radius:50%;background:transparent;color:#d6d6d6;cursor:pointer}.ofm-station-header-share svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.ofm-station-header-share:hover,.ofm-station-header-share:focus-visible{background:#252525;color:#f4c430;outline:none}.single-station main article button[aria-label*="Add release to playlist"],.single-station main article button[aria-label*="Add post to playlist"]{display:none!important}@media(max-width:420px){.ofm-share-modal__box{padding:23px 18px}.ofm-share-modal__networks{gap:8px}.ofm-share-modal__networks button{min-height:80px;font-size:.7rem}}
.ofm-playlist-card__actions button{position:static!important;top:auto!important;right:auto!important}.ofm-playlist-card__actions{position:static!important;min-height:34px}
.ofm-logout-control{position:fixed;z-index:9999;top:22px;right:clamp(7.3rem,10vw,9.4rem);display:grid;place-items:center;width:28px;height:28px;padding:0;border:0;border-radius:50%;background:transparent;color:#8f8f8f;line-height:1;text-decoration:none;opacity:.48;transition:color .18s ease,background .18s ease,opacity .18s ease,transform .18s ease}.ofm-logout-control svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.ofm-logout-control:hover,.ofm-logout-control:focus-visible{background:rgb(255 255 255 / .07);color:#f4c430;opacity:1;transform:translateY(-1px);outline:none}@media(max-width:720px){.ofm-logout-control{top:21px;right:3.6rem;width:27px;height:27px}}
.ofm-release-row{grid-template-columns:46px minmax(150px,1.3fr) minmax(190px,1fr) auto;min-height:64px;padding:8px 12px;gap:12px}.ofm-release-row__cover{position:relative;width:46px;height:46px;border-radius:9px}.ofm-release-row__play{position:absolute;inset:0;display:grid;place-items:center;padding:0;border:0;border-radius:inherit;background:rgb(0 0 0 / .42);color:#fff;cursor:pointer;opacity:0;transition:opacity .18s ease,background .18s ease}.ofm-release-row__play:hover,.ofm-release-row__play:focus-visible,.ofm-release-row.is-playing .ofm-release-row__play{opacity:1;background:rgb(0 0 0 / .5);outline:none}.ofm-release-row__play svg{width:19px;height:19px;fill:currentColor;stroke:none}.ofm-release-row__play .icon-pause{display:none;fill:none;stroke:currentColor;stroke-width:2.5}.ofm-release-row.is-playing .ofm-release-row__play .icon-play{display:none}.ofm-release-row.is-playing .ofm-release-row__play .icon-pause{display:block}.ofm-release-row.is-current{border-color:rgb(244 196 48 / .6);background:linear-gradient(90deg,rgb(244 196 48 / .08),#151515 38%)}.ofm-release-row__main{gap:2px}.ofm-release-row__main>span{font-size:.84rem}.ofm-release-row__meta span{padding:4px 7px;font-size:.72rem}.ofm-playlist-grid{grid-template-columns:repeat(auto-fill,minmax(200px,230px));gap:12px}.ofm-playlist-card__link{grid-template-columns:62px minmax(0,1fr);gap:11px;padding:11px}.ofm-playlist-card__cover{width:62px;height:62px;border-radius:9px}.ofm-playlist-card__actions{padding:0 11px 11px}.ofm-playlist-card h3{font-size:.98rem}.ofm-playlist-card__link .ofm-eyebrow{font-size:.6rem}@media(max-width:720px){.ofm-release-row{grid-template-columns:46px minmax(0,1fr) auto;gap:10px}.ofm-release-row__meta{grid-column:2/4}.ofm-release-row__play{opacity:.82}.ofm-playlist-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.ofm-playlist-card__link{grid-template-columns:54px minmax(0,1fr);padding:10px}.ofm-playlist-card__cover{width:54px;height:54px}.ofm-playlist-card__actions{padding:0 10px 10px}}@media(max-width:480px){.ofm-release-row{padding:8px}.ofm-release-row__meta span:nth-child(3){display:none}.ofm-release-row__actions .ofm-row-button:after{content:'♥';font-size:.9rem}.ofm-playlist-card__actions button{font-size:.68rem;padding:5px 7px}}
/* Keep the signed-in exit control beside the other header links, not above them. */
.site-header .navbar-menu .nav .ofm-logout-menu-item{display:flex;align-items:center}.site-header .navbar-menu .nav .ofm-logout-menu-item>.ofm-logout-control{position:static;z-index:auto;top:auto;right:auto;display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;min-width:30px;margin:0 2px;padding:0;border:0;border-radius:50%;background:transparent;color:#8f8f8f;line-height:1;text-decoration:none;opacity:.58;transform:none}.site-header .navbar-menu .nav .ofm-logout-menu-item>.ofm-logout-control:hover,.site-header .navbar-menu .nav .ofm-logout-menu-item>.ofm-logout-control:focus-visible{background:rgb(255 255 255 / .07);color:#f4c430;opacity:1;transform:translateY(-1px);outline:none}.site-header .navbar-menu .nav .ofm-logout-menu-item>.ofm-logout-control svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.ofm-logout-control__label{display:none}@media(max-width:599px){.site-header .navbar-menu .nav .ofm-logout-menu-item>.ofm-logout-control{width:auto;height:auto;min-width:0;justify-content:flex-start;gap:10px;margin:0;padding:.75rem 1rem;border-radius:0;opacity:1}.site-header .navbar-menu .nav .ofm-logout-control__label{display:inline}}

/* Source: assets/css/account-polish.css */
/* Account controls and recovery views stay deliberately quiet beside the player-first header. */
.site-header .navbar-menu .nav .ofm-member-profile-menu-item{display:flex;align-items:center}
.site-header .navbar-menu .nav .ofm-member-profile-menu-item>.ofm-member-profile-control{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;min-width:30px;margin:0 2px;padding:0;border-radius:50%;background:transparent;color:#8f8f8f;line-height:1;text-decoration:none;opacity:.58;transition:color .18s ease,background .18s ease,opacity .18s ease,transform .18s ease}
.site-header .navbar-menu .nav .ofm-member-profile-menu-item>.ofm-member-profile-control:hover,.site-header .navbar-menu .nav .ofm-member-profile-menu-item>.ofm-member-profile-control:focus-visible{background:rgb(255 255 255 / .07);color:#f4c430;opacity:1;transform:translateY(-1px);outline:none}
.ofm-member-profile-control svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.ofm-member-profile-control__label{display:none}
.ofm-account-controls--floating{position:fixed;z-index:9999;top:22px;right:clamp(7.3rem,10vw,9.4rem);display:flex;align-items:center;gap:2px}
.ofm-account-controls--floating .ofm-member-profile-control,.ofm-account-controls--floating .ofm-logout-control{position:static;display:grid;place-items:center;width:28px;height:28px;padding:0;border:0;border-radius:50%;background:transparent;color:#8f8f8f;line-height:1;text-decoration:none;opacity:.48;transition:color .18s ease,background .18s ease,opacity .18s ease,transform .18s ease}
.ofm-account-controls--floating .ofm-member-profile-control:hover,.ofm-account-controls--floating .ofm-member-profile-control:focus-visible,.ofm-account-controls--floating .ofm-logout-control:hover,.ofm-account-controls--floating .ofm-logout-control:focus-visible{background:rgb(255 255 255 / .07);color:#f4c430;opacity:1;transform:translateY(-1px);outline:none}
.ofm-auth-forgot-password{margin:.25rem 0 0;font-size:.88rem;text-align:right}
.ofm-auth-forgot-password a,.ofm-password-reset__back a{color:#d6d6d6;text-decoration:underline;text-decoration-color:rgb(244 196 48 / .55);text-underline-offset:3px}
.ofm-auth-forgot-password a:hover,.ofm-auth-forgot-password a:focus-visible,.ofm-password-reset__back a:hover,.ofm-password-reset__back a:focus-visible{color:#f4c430;outline:none}
.ofm-password-reset .ofm-account__panel{max-width:520px}
.ofm-password-reset__notice{margin:1rem 0;padding:.8rem 1rem;border:1px solid #9b4b4b;border-radius:12px;background:rgb(118 28 28 / .2);color:#ffd6d1}
.ofm-password-reset__notice--success{border-color:rgb(92 175 112 / .55);background:rgb(37 104 56 / .2);color:#d6ffe0}
.ofm-password-reset__back{margin:1.25rem 0 0;text-align:center}
@media(max-width:599px){.site-header .navbar-menu .nav .ofm-member-profile-menu-item>.ofm-member-profile-control{width:auto;height:auto;min-width:0;justify-content:flex-start;gap:10px;margin:0;padding:.75rem 1rem;border-radius:0;opacity:1}.ofm-member-profile-control__label{display:inline}.ofm-account-controls--floating{top:21px;right:3.6rem}.ofm-account-controls--floating .ofm-member-profile-control,.ofm-account-controls--floating .ofm-logout-control{width:27px;height:27px}}

/* Source: assets/css/creator-profile.css */
.ofm-creator{max-width:1280px;min-height:100vh;margin:auto;padding:clamp(28px,6vw,80px) 24px calc(170px + env(safe-area-inset-bottom));background:radial-gradient(800px 480px at 20% 0,rgba(244,196,48,.08),transparent 65%),#090909;color:#fff}.ofm-creator__hero{display:grid;grid-template-columns:clamp(110px,18vw,220px) minmax(0,1fr) auto;gap:clamp(22px,4vw,54px);align-items:center;padding:clamp(24px,4vw,48px);border:1px solid #2c2c2c;border-radius:28px;background:linear-gradient(135deg,#181818,#111)}.ofm-creator__avatar img{display:block;width:100%;aspect-ratio:1;object-fit:cover;border-radius:50%;background:#242424;box-shadow:0 18px 45px rgba(0,0,0,.35)}.ofm-creator h1{margin:0;font-size:clamp(2.3rem,5vw,5rem);letter-spacing:-.05em;line-height:1}.ofm-creator__tagline{margin:12px 0 0;font-size:1.15rem;color:#f4c430}.ofm-creator__bio{max-width:600px;margin:14px 0 0;color:#b7b7b7;line-height:1.7}.ofm-creator__links{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}.ofm-creator__links a{padding:8px 13px;border:1px solid #3a3a3a;border-radius:999px;color:#fff;text-decoration:none;font-size:.88rem}.ofm-creator__links a:hover{border-color:#f4c430;color:#f4c430}.ofm-creator__stats{display:grid;justify-items:end;gap:3px;min-width:76px}.ofm-creator__stats strong{font-size:2rem;color:#f4c430}.ofm-creator__stats span{color:#aaa;font-size:.8rem;text-transform:uppercase;letter-spacing:.1em}.ofm-creator__releases{margin-top:56px}.ofm-creator__section-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:26px}.ofm-creator__section-heading h2{margin:0;font-size:clamp(1.8rem,3vw,2.6rem)}.ofm-creator__empty{max-width:560px;margin:40px auto;padding:40px;border:1px dashed #454545;border-radius:20px;text-align:center;color:#bbb}@media(max-width:700px){.ofm-creator{padding:30px 16px calc(174px + env(safe-area-inset-bottom))}.ofm-creator__hero{grid-template-columns:92px minmax(0,1fr);gap:20px;padding:24px;border-radius:22px}.ofm-creator__stats{grid-column:1/-1;justify-items:start;display:flex;align-items:baseline;gap:9px}.ofm-creator__stats strong{font-size:1.4rem}.ofm-creator__identity{min-width:0}.ofm-creator h1{font-size:2.2rem}.ofm-creator__tagline{font-size:1rem}.ofm-creator__bio{font-size:.94rem}.ofm-creator__releases{margin-top:38px}}

.ofm-creator__title-row {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    align-items: center;
}

.ofm-creator__verification {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 6px 10px;
    border: 1px solid rgba(244, 196, 48, .55);
    border-radius: 999px;
    color: #f4c430;
    font-size: .78rem;
    font-weight: 700;
    letter-spacing: .03em;
    white-space: nowrap;
}

.ofm-creator__verification svg {
    width: 17px;
    height: 17px;
    fill: currentColor;
}

@media (max-width: 700px) {
    .ofm-creator__verification {
        padding: 5px 8px;
        font-size: .72rem;
    }
}

/* Source: assets/css/station-profile.css */
.user-bio.ofm-station-artist-bio .ofm-station-artist-tagline{margin:.3rem 0 0;color:#c8c8c8;font-size:.9em;line-height:1.35}
.user-bio.ofm-station-artist-bio .ofm-station-artist-verified{display:inline-flex;align-items:center;margin-left:.45rem;padding:.08rem .38rem;border:1px solid rgba(244,196,48,.5);border-radius:999px;color:#f4c430;font-size:.63rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;vertical-align:middle}

/* Source: assets/css/artist-studio.css */
/* Invite-only Artist Studio. All rules are scoped so this small global sheet is PJAX-safe. */
.ofm-artist-studio{min-height:100vh;padding:clamp(32px,6vw,78px) max(20px,calc((100vw - 1180px)/2)) calc(166px + env(safe-area-inset-bottom));background:radial-gradient(820px 460px at 12% 0,rgba(244,196,48,.11),transparent 68%),#090909;color:#fff}.ofm-artist-studio__hero{max-width:760px;margin:0 0 clamp(28px,5vw,54px)}.ofm-artist-studio__hero h1{max-width:680px;margin:8px 0 12px;font-size:clamp(2.4rem,6vw,5.2rem);letter-spacing:-.055em;line-height:.98}.ofm-artist-studio__hero>p:last-child{max-width:570px;margin:0;color:#b9b9b9;font-size:clamp(1rem,1.8vw,1.2rem);line-height:1.6}.ofm-artist-studio__grid{display:grid;grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr);gap:20px;align-items:start}.ofm-artist-studio__panel,.ofm-artist-studio__submissions,.ofm-artist-studio__locked{border:1px solid #303030;border-radius:24px;background:linear-gradient(145deg,#191919,#111);box-shadow:0 22px 55px rgba(0,0,0,.24)}.ofm-artist-studio__panel{padding:clamp(20px,3vw,34px)}.ofm-artist-studio__submissions{margin-top:20px;padding:clamp(20px,3vw,34px)}.ofm-artist-studio__locked{max-width:620px;padding:clamp(28px,5vw,54px);text-align:center}.ofm-artist-studio__locked h2{margin:0;font-size:clamp(1.6rem,3vw,2.3rem)}.ofm-artist-studio__locked p{margin:10px auto 24px;color:#b9b9b9;line-height:1.6}.ofm-artist-studio__notice{max-width:850px;margin:0 0 22px;padding:13px 16px;border:1px solid;border-radius:14px;line-height:1.45}.ofm-artist-studio__notice--success{border-color:rgba(99,190,132,.48);background:rgba(50,119,74,.19);color:#d1f5dc}.ofm-artist-studio__notice--error{border-color:rgba(220,118,118,.52);background:rgba(133,49,49,.18);color:#ffd8d8}.ofm-artist-studio__section-heading{display:flex;align-items:end;justify-content:space-between;gap:16px;margin-bottom:22px}.ofm-artist-studio__section-heading h2{margin:3px 0 0;font-size:clamp(1.45rem,2.4vw,2rem);letter-spacing:-.025em}.ofm-artist-studio__section-heading>span{display:grid;place-items:center;min-width:32px;height:32px;padding:0 9px;border-radius:999px;background:#2a2a2a;color:#f4c430;font-size:.82rem;font-weight:800}.ofm-artist-studio__form{display:grid;gap:16px}.ofm-artist-studio__form label{display:grid;gap:7px;color:#e9e9e9;font-size:.9rem;font-weight:700}.ofm-artist-studio__form label>span{color:#969696;font-size:.76rem;font-weight:500}.ofm-artist-studio__form input:not([type=radio]):not([type=checkbox]),.ofm-artist-studio__form textarea,.ofm-artist-studio__form select{width:100%;box-sizing:border-box;border:1px solid #3a3a3a;border-radius:11px;background:#101010;color:#fff;font:inherit;font-size:.94rem;line-height:1.35;padding:11px 12px;transition:border-color .18s ease,box-shadow .18s ease}.ofm-artist-studio__form input[type=file]{padding:9px!important;background:#151515!important;color:#c9c9c9!important;font-size:.82rem!important}.ofm-artist-studio__form textarea{resize:vertical;min-height:104px}.ofm-artist-studio__form input:focus,.ofm-artist-studio__form textarea:focus,.ofm-artist-studio__form select:focus{border-color:#f4c430;box-shadow:0 0 0 3px rgba(244,196,48,.12);outline:none}.ofm-artist-studio__two-up{display:grid;grid-template-columns:1fr 1fr;gap:12px}.ofm-artist-studio__choices{display:flex;flex-wrap:wrap;gap:10px;margin:0;padding:0;border:0}.ofm-artist-studio__choices legend{width:100%;margin-bottom:2px;color:#e9e9e9;font-size:.9rem;font-weight:700}.ofm-artist-studio__choices label{display:flex;align-items:center;gap:7px;padding:10px 12px;border:1px solid #3b3b3b;border-radius:12px;background:#151515;cursor:pointer}.ofm-artist-studio__choices input{accent-color:#f4c430}.ofm-artist-studio__choices span{color:#969696;font-size:.78rem;font-weight:500}.ofm-artist-studio__track-titles{display:grid;gap:9px;padding:13px;border:1px dashed #454545;border-radius:13px;background:#121212}.ofm-artist-studio__track-titles>p{margin:0;color:#999;font-size:.8rem;line-height:1.45}.ofm-artist-studio__track-titles label{font-size:.82rem}.ofm-artist-studio__track-titles input{padding:8px 10px!important;font-size:.86rem!important}.ofm-artist-studio__rights{grid-template-columns:auto minmax(0,1fr);align-items:start;gap:9px!important;padding:12px;border:1px solid #3a3a3a;border-radius:12px;background:#141414;color:#cfcfcf!important;font-size:.82rem!important;font-weight:500!important;line-height:1.45}.ofm-artist-studio__rights input{margin:3px 0 0;accent-color:#f4c430}.ofm-artist-studio__help{margin:-4px 0 0;color:#9a9a9a;font-size:.8rem;line-height:1.45}.ofm-artist-studio__button{justify-self:start;padding:11px 17px;border:1px solid #f4c430;border-radius:999px;background:#f4c430;color:#171717;cursor:pointer;font:inherit;font-size:.88rem;font-weight:800;line-height:1.2;text-decoration:none;transition:transform .18s ease,background .18s ease}.ofm-artist-studio__button:hover,.ofm-artist-studio__button:focus-visible{background:#ffd34d;outline:none;transform:translateY(-1px)}.ofm-artist-studio__submission-list{display:grid;gap:9px}.ofm-artist-studio__submission{display:grid;grid-template-columns:54px minmax(0,1fr) auto;align-items:center;gap:13px;padding:9px;border:1px solid #303030;border-radius:14px;background:#141414}.ofm-artist-studio__submission-cover{width:54px;height:54px;overflow:hidden;border-radius:9px;background:#292929}.ofm-artist-studio__submission-cover img{display:block;width:100%;height:100%;object-fit:cover}.ofm-artist-studio__submission-cover span{display:grid;place-items:center;width:100%;height:100%;color:#f4c430;font-size:1.4rem}.ofm-artist-studio__submission-main{min-width:0}.ofm-artist-studio__submission h3{overflow:hidden;margin:0;color:#fff;font-size:.98rem;text-overflow:ellipsis;white-space:nowrap}.ofm-artist-studio__submission h3 a{color:inherit;text-decoration:none}.ofm-artist-studio__submission h3 a:hover{color:#f4c430}.ofm-artist-studio__submission p{margin:4px 0 0;color:#999;font-size:.78rem}.ofm-artist-studio__status{padding:5px 9px;border:1px solid #484848;border-radius:999px;color:#ccc;font-size:.72rem;font-weight:800;white-space:nowrap}.ofm-artist-studio__status--pending{border-color:rgba(244,196,48,.45);background:rgba(244,196,48,.08);color:#f4c430}.ofm-artist-studio__status--publish{border-color:rgba(94,193,129,.43);background:rgba(94,193,129,.08);color:#9ae7b5}.ofm-artist-studio__empty{padding:22px;border:1px dashed #454545;border-radius:15px;color:#aaa;text-align:center}.ofm-artist-studio__empty h3{margin:0;color:#eee}.ofm-artist-studio__empty p{margin:8px 0 0;font-size:.9rem}@media(max-width:820px){.ofm-artist-studio__grid{grid-template-columns:1fr}.ofm-artist-studio__panel,.ofm-artist-studio__submissions,.ofm-artist-studio__locked{border-radius:19px}}@media(max-width:560px){.ofm-artist-studio{padding:28px 14px calc(174px + env(safe-area-inset-bottom))}.ofm-artist-studio__hero{margin-bottom:30px}.ofm-artist-studio__hero h1{font-size:2.55rem}.ofm-artist-studio__two-up{grid-template-columns:1fr}.ofm-artist-studio__submission{grid-template-columns:46px minmax(0,1fr);gap:10px}.ofm-artist-studio__submission-cover{width:46px;height:46px}.ofm-artist-studio__status{grid-column:2;justify-self:start}.ofm-artist-studio__panel,.ofm-artist-studio__submissions{padding:18px}.ofm-artist-studio__choices label{padding:9px 10px}}
/* Artist Studio V1.2: make the selected release type and track requirement unmistakable. */
.ofm-artist-studio__field-label{color:#e9e9e9!important;font-size:.9rem!important;font-weight:700!important}.ofm-artist-studio__choices label{transition:border-color .18s ease,background .18s ease,box-shadow .18s ease}.ofm-artist-studio__choices label.is-selected{border-color:rgba(244,196,48,.8);background:rgba(244,196,48,.09);box-shadow:0 0 0 2px rgba(244,196,48,.08)}
.ofm-artist-studio__track-files{display:grid;gap:12px}.ofm-artist-studio__track-file-row{display:grid;gap:8px;padding:12px;border:1px dashed #414141;border-radius:13px;background:#121212}.ofm-artist-studio__track-file-row[hidden]{display:none}.ofm-artist-studio__add-track,.ofm-artist-studio__remove-track{justify-self:start;padding:9px 13px;border:1px solid #555;border-radius:999px;background:#181818;color:#eee;cursor:pointer;font:inherit;font-size:.8rem;font-weight:800;line-height:1.2;transition:border-color .18s ease,background .18s ease,color .18s ease,transform .18s ease}.ofm-artist-studio__add-track:hover,.ofm-artist-studio__add-track:focus-visible{border-color:#f4c430;background:rgba(244,196,48,.09);color:#f4c430;outline:none;transform:translateY(-1px)}.ofm-artist-studio__remove-track{padding:7px 10px;border-color:#5b4141;color:#dfa7a7;font-size:.74rem}.ofm-artist-studio__remove-track:hover,.ofm-artist-studio__remove-track:focus-visible{border-color:#e17a7a;background:rgba(172,63,63,.15);color:#ffd0d0;outline:none}.ofm-artist-studio__add-track[hidden],.ofm-artist-studio__remove-track[hidden]{display:none}
/* Artist Studio V1.1: compact identity, upload states, and submission controls. */
.ofm-artist-studio__identity-card{display:grid;grid-template-columns:82px minmax(0,1fr);gap:15px;align-items:center;margin:0 0 16px;padding:14px;border:1px solid #343434;border-radius:17px;background:linear-gradient(135deg,#1b1b1b,#141414)}.ofm-artist-studio__identity-avatar,.ofm-artist-studio__identity-avatar img{width:82px;height:82px;border-radius:50%}.ofm-artist-studio__identity-avatar{overflow:hidden;background:#292929}.ofm-artist-studio__identity-avatar img{display:block;object-fit:cover}.ofm-artist-studio__identity-copy{min-width:0}.ofm-artist-studio__identity-copy h3{margin:0;color:#fff;font-size:1.12rem}.ofm-artist-studio__identity-copy p{margin:5px 0 0;color:#aaa;font-size:.84rem;line-height:1.48}.ofm-artist-studio__identity-copy .ofm-artist-studio__identity-tagline{color:#f4c430;font-weight:700}.ofm-artist-studio__identity-editor{border:1px solid #343434;border-radius:14px;background:#121212}.ofm-artist-studio__identity-editor>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 14px;color:#eee;cursor:pointer;font-size:.88rem;font-weight:800;list-style:none}.ofm-artist-studio__identity-editor>summary::-webkit-details-marker{display:none}.ofm-artist-studio__identity-editor>summary small{color:#9a9a9a;font-size:.74rem;font-weight:500}.ofm-artist-studio__identity-editor>summary::after{content:'+';display:grid;place-items:center;width:24px;height:24px;margin-left:auto;border:1px solid #414141;border-radius:50%;color:#f4c430;font-size:1.15rem;font-weight:400}.ofm-artist-studio__identity-editor[open]>summary{border-bottom:1px solid #343434}.ofm-artist-studio__identity-editor[open]>summary::after{content:'−'}.ofm-artist-studio__identity-editor>.ofm-artist-studio__form{padding:16px}.ofm-artist-studio__form select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='%23f4c430' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m7 10 5 5 5-5'/%3E%3C/svg%3E");background-position:calc(100% - 12px) 50%;background-repeat:no-repeat;background-size:18px;padding-right:40px}.ofm-artist-studio__upload-status,.ofm-artist-studio__form-status{display:flex;align-items:center;gap:8px;min-height:34px;margin:-5px 0 0;padding:7px 10px;border:1px solid #333;border-radius:10px;background:#121212;color:#a6a6a6;font-size:.77rem;line-height:1.4}.ofm-artist-studio__upload-status::before,.ofm-artist-studio__form-status::before{content:'';flex:0 0 7px;width:7px;height:7px;border-radius:50%;background:#777}.ofm-artist-studio__upload-status.is-ready{border-color:rgba(94,193,129,.4);color:#cdeed8}.ofm-artist-studio__upload-status.is-ready::before{background:#67c785}.ofm-artist-studio__upload-status.is-error{border-color:rgba(220,118,118,.52);color:#ffd1d1}.ofm-artist-studio__upload-status.is-error::before{background:#e67d7d}.ofm-artist-studio__upload-status.is-checking,.ofm-artist-studio__form-status.is-busy{border-color:rgba(244,196,48,.44);color:#f2d98a}.ofm-artist-studio__upload-status.is-checking::before,.ofm-artist-studio__form-status.is-busy::before{width:13px;height:13px;border:2px solid rgba(244,196,48,.28);border-top-color:#f4c430;background:transparent;animation:ofm-artist-studio-spin .7s linear infinite}.ofm-artist-studio__form-status:empty{display:none}@keyframes ofm-artist-studio-spin{to{transform:rotate(360deg)}}.ofm-artist-studio__rights--conditional[hidden]{display:none}.ofm-artist-studio__button{position:relative;overflow:hidden}.ofm-artist-studio__button:active{transform:translateY(0) scale(.98)}.ofm-artist-studio__button.is-loading{min-width:145px;cursor:wait;opacity:.82}.ofm-artist-studio__button.is-loading::after{content:'';width:14px;height:14px;margin-left:8px;border:2px solid rgba(23,23,23,.28);border-top-color:#171717;border-radius:50%;animation:ofm-artist-studio-spin .7s linear infinite}.ofm-artist-studio__submission-actions{display:grid;justify-items:end;gap:7px}.ofm-artist-studio__submission-actions .ofm-artist-studio__status{grid-column:auto;justify-self:auto}.ofm-artist-studio__delete-form{margin:0}.ofm-artist-studio__delete-button{display:inline-flex;align-items:center;gap:5px;min-height:30px;padding:5px 9px;border:1px solid #564040;border-radius:999px;background:transparent;color:#d9aaaa;cursor:pointer;font:inherit;font-size:.72rem;font-weight:800;line-height:1;transition:border-color .18s ease,background .18s ease,color .18s ease,transform .18s ease}.ofm-artist-studio__delete-button svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.ofm-artist-studio__delete-button:hover,.ofm-artist-studio__delete-button:focus-visible{border-color:#e17a7a;background:rgba(172,63,63,.15);color:#ffd0d0;outline:none;transform:translateY(-1px)}.ofm-artist-studio__delete-button.is-loading{cursor:wait;opacity:.65}@media(max-width:560px){.ofm-artist-studio__identity-card{grid-template-columns:66px minmax(0,1fr);gap:12px}.ofm-artist-studio__identity-avatar,.ofm-artist-studio__identity-avatar img{width:66px;height:66px}.ofm-artist-studio__identity-editor>summary small{display:none}.ofm-artist-studio__submission-actions{grid-column:2;display:flex;justify-items:initial;align-items:center;gap:8px}.ofm-artist-studio__delete-button{min-height:32px}.ofm-artist-studio__upload-status,.ofm-artist-studio__form-status{font-size:.74rem}}
/* Artist Studio review feedback. */
.ofm-artist-studio__status--returned{border-color:rgba(224,139,104,.52);background:rgba(157,73,47,.13);color:#f3b29d}.ofm-artist-studio__review-note{margin:10px 0 0;padding:10px 11px;border:1px solid rgba(224,139,104,.38);border-radius:10px;background:rgba(124,61,40,.13);color:#e5c2b6;font-size:.78rem;line-height:1.45}.ofm-artist-studio__review-note strong{color:#f6c0aa}.ofm-artist-studio__review-note p{margin:4px 0;color:inherit;font-size:inherit}.ofm-artist-studio__review-note small{display:block;color:#cbaea4;font-size:.72rem}
.ofm-artist-studio__status--editor_approved{border-color:rgba(94,193,129,.43);background:rgba(94,193,129,.08);color:#9ae7b5}

/* Source: assets/css/editor-review-portal.css */
/* Approved Editor portal. This is front-end only; review access is enforced in PHP. */
.ofm-editor-review-portal{min-height:100vh;padding:clamp(32px,6vw,78px) max(20px,calc((100vw - 1240px)/2)) calc(166px + env(safe-area-inset-bottom));background:radial-gradient(820px 460px at 12% 0,rgba(244,196,48,.12),transparent 68%),#090909;color:#fff}.ofm-editor-review-portal *{box-sizing:border-box}.ofm-editor-review-portal__hero{display:flex;align-items:end;justify-content:space-between;gap:24px;max-width:1180px;margin:0 0 clamp(26px,4vw,42px)}.ofm-editor-review-portal__eyebrow{margin:0 0 12px;color:#f4c430;font-size:.72rem;font-weight:800;letter-spacing:.19em;text-transform:uppercase}.ofm-editor-review-portal__hero h1{max-width:720px;margin:0;color:#fff;font-size:clamp(2.4rem,6vw,5.15rem);letter-spacing:-.055em;line-height:.98}.ofm-editor-review-portal__hero>div>p:last-child{max-width:620px;margin:14px 0 0;color:#b9b9b9;font-size:clamp(1rem,1.8vw,1.18rem);line-height:1.58}.ofm-editor-review-portal__hero-count{flex:0 0 auto;display:grid;place-items:center;min-width:46px;height:46px;padding:0 13px;border:1px solid rgba(244,196,48,.46);border-radius:999px;background:rgba(244,196,48,.08);color:#f7d45a;font-size:.86rem;font-weight:800;white-space:nowrap}.ofm-editor-review-portal__notice{max-width:960px;margin:0 0 20px;padding:13px 16px;border:1px solid #3a3a3a;border-radius:14px;background:#151515;color:#e1e1e1;font-size:.9rem;line-height:1.5}.ofm-editor-review-portal__notice--success{border-color:rgba(99,190,132,.48);background:rgba(50,119,74,.19);color:#d1f5dc}.ofm-editor-review-portal__notice--error{border-color:rgba(220,118,118,.52);background:rgba(133,49,49,.18);color:#ffd8d8}.ofm-editor-review-portal__locked,.ofm-editor-review-portal__empty{max-width:660px;padding:clamp(28px,5vw,54px);border:1px solid #303030;border-radius:24px;background:linear-gradient(145deg,#191919,#111);box-shadow:0 22px 55px rgba(0,0,0,.24);text-align:center}.ofm-editor-review-portal__locked h2,.ofm-editor-review-portal__empty h2{margin:0;color:#fff;font-size:clamp(1.55rem,3vw,2.25rem);letter-spacing:-.025em}.ofm-editor-review-portal__locked p,.ofm-editor-review-portal__empty p{margin:10px auto 0;color:#b9b9b9;line-height:1.6}.ofm-editor-review-portal__list{display:grid;gap:20px;max-width:1180px}.ofm-editor-review-portal__card{display:grid;grid-template-columns:176px minmax(0,1fr) minmax(268px,.5fr);gap:20px;align-items:start;padding:18px;border:1px solid #303030;border-radius:20px;background:linear-gradient(145deg,#191919,#111);box-shadow:0 17px 38px rgba(0,0,0,.16)}.ofm-editor-review-portal__cover{width:176px;aspect-ratio:1;overflow:hidden;border-radius:14px;background:#292929}.ofm-editor-review-portal__cover img{display:block;width:100%;height:100%;object-fit:cover}.ofm-editor-review-portal__cover span{display:grid;place-items:center;width:100%;height:100%;color:#f4c430;font-size:2.5rem}.ofm-editor-review-portal__body{min-width:0}.ofm-editor-review-portal__heading{display:flex;align-items:start;justify-content:space-between;gap:16px}.ofm-editor-review-portal__heading p{margin:0 0 5px;color:#f4c430;font-size:.68rem;font-weight:800;letter-spacing:.15em;text-transform:uppercase}.ofm-editor-review-portal__heading h2{margin:0;color:#fff;font-size:clamp(1.2rem,2.1vw,1.55rem);letter-spacing:-.025em;line-height:1.18}.ofm-editor-review-portal__heading h2 a{color:inherit;text-decoration:none}.ofm-editor-review-portal__heading h2 a:hover,.ofm-editor-review-portal__heading h2 a:focus-visible{color:#f4c430;outline:none}.ofm-editor-review-portal__state{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;min-height:28px;padding:5px 9px;border:1px solid #555;border-radius:999px;background:#171717;color:#d5d5d5;font-size:.7rem;font-weight:800;line-height:1;white-space:nowrap}.ofm-editor-review-portal__state--pending{border-color:rgba(244,196,48,.46);background:rgba(244,196,48,.08);color:#f4c430}.ofm-editor-review-portal__state--approved,.ofm-editor-review-portal__state--editor-approved{border-color:rgba(94,193,129,.43);background:rgba(94,193,129,.08);color:#9ae7b5}.ofm-editor-review-portal__state--returned{border-color:rgba(224,139,104,.52);background:rgba(157,73,47,.13);color:#f3b29d}.ofm-editor-review-portal__meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px 16px;margin:19px 0 13px}.ofm-editor-review-portal__meta div{min-width:0}.ofm-editor-review-portal__meta dt{margin:0 0 3px;color:#858585;font-size:.63rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.ofm-editor-review-portal__meta dd{overflow:hidden;margin:0;color:#dedede;font-size:.82rem;line-height:1.35;text-overflow:ellipsis;white-space:nowrap}.ofm-editor-review-portal__rights{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 11px;border:1px solid #343434;border-radius:11px;background:#101010;color:#aaa;font-size:.77rem;line-height:1.4}.ofm-editor-review-portal__rights strong{color:#dedede}.ofm-editor-review-portal__rights span{color:#9fe0b6;font-weight:700}.ofm-editor-review-portal__notes,.ofm-editor-review-portal__audio,.ofm-editor-review-portal__audit{margin-top:14px;padding-top:14px;border-top:1px solid #303030}.ofm-editor-review-portal__notes h3,.ofm-editor-review-portal__audio h3,.ofm-editor-review-portal__audit h3{margin:0 0 7px;color:#dedede;font-size:.79rem}.ofm-editor-review-portal__notes p,.ofm-editor-review-portal__audio>p,.ofm-editor-review-portal__audit p{margin:0;color:#aaa;font-size:.84rem;line-height:1.55}.ofm-editor-review-portal__audio{display:grid;gap:8px}.ofm-editor-review-portal__audio>div{display:grid;gap:6px;padding:10px 11px;border:1px solid #303030;border-radius:11px;background:#101010}.ofm-editor-review-portal__audio strong{overflow:hidden;color:#dedede;font-size:.78rem;text-overflow:ellipsis;white-space:nowrap}.ofm-editor-review-portal__audio audio{width:100%;height:34px;accent-color:#f4c430}.ofm-editor-review-portal__audit{display:grid;gap:8px}.ofm-editor-review-portal__audit>div,.ofm-editor-review-portal__audit li{padding:9px 10px;border:1px solid #303030;border-radius:10px;background:#101010;color:#bdbdbd;font-size:.77rem;line-height:1.45}.ofm-editor-review-portal__audit ul{display:grid;gap:8px;margin:0;padding:0;list-style:none}.ofm-editor-review-portal__audit strong{color:#e5e5e5}.ofm-editor-review-portal__form{display:grid;gap:11px;padding:14px;border:1px solid #3a3a3a;border-radius:15px;background:#101010}.ofm-editor-review-portal__form label{display:grid;gap:7px;color:#e8e8e8;font-size:.82rem;font-weight:800}.ofm-editor-review-portal__form label span{color:#999;font-size:.72rem;font-weight:500}.ofm-editor-review-portal__form textarea{width:100%;min-height:108px;resize:vertical;border:1px solid #454545;border-radius:10px;background:#181818;color:#f2f2f2;font:inherit;font-size:.87rem;line-height:1.48;padding:10px 11px;transition:border-color .18s ease,box-shadow .18s ease}.ofm-editor-review-portal__form textarea:focus{border-color:#f4c430;box-shadow:0 0 0 3px rgba(244,196,48,.12);outline:none}.ofm-editor-review-portal__form>p{margin:0;color:#999;font-size:.73rem;line-height:1.5}.ofm-editor-review-portal__form-actions{display:flex;flex-wrap:wrap;gap:9px}.ofm-editor-review-portal__button{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:10px 15px;border:1px solid #f4c430;border-radius:999px;background:#f4c430;color:#171717;cursor:pointer;font:inherit;font-size:.82rem;font-weight:800;line-height:1.2;transition:transform .18s ease,background .18s ease,border-color .18s ease,color .18s ease}.ofm-editor-review-portal__button:hover,.ofm-editor-review-portal__button:focus-visible{background:#ffd34d;border-color:#ffd34d;outline:none;transform:translateY(-1px)}.ofm-editor-review-portal__button:active{transform:translateY(0) scale(.98)}.ofm-editor-review-portal__button--return{border-color:#725448;background:#251b18;color:#f2c0ae}.ofm-editor-review-portal__button--return:hover,.ofm-editor-review-portal__button--return:focus-visible{border-color:#d57c61;background:#3a241e;color:#ffd0bf}.ofm-editor-review-portal__form-status{display:flex;align-items:center;gap:8px;min-height:34px;margin:0;padding:7px 10px;border:1px solid #3a3a3a;border-radius:10px;background:#151515;color:#a6a6a6;font-size:.76rem;line-height:1.4}.ofm-editor-review-portal__form-status:empty{display:none}.ofm-editor-review-portal__form-status::before{content:'';flex:0 0 7px;width:7px;height:7px;border-radius:50%;background:#777}.ofm-editor-review-portal__form-status.is-busy{border-color:rgba(244,196,48,.44);color:#f2d98a}.ofm-editor-review-portal__form-status.is-busy::before{width:13px;height:13px;border:2px solid rgba(244,196,48,.28);border-top-color:#f4c430;background:transparent;animation:ofm-editor-review-portal-spin .7s linear infinite}.ofm-editor-review-portal__button.is-loading{cursor:wait;opacity:.75}@keyframes ofm-editor-review-portal-spin{to{transform:rotate(360deg)}}@media(max-width:960px){.ofm-editor-review-portal__card{grid-template-columns:136px minmax(0,1fr)}.ofm-editor-review-portal__cover{width:136px}.ofm-editor-review-portal__form{grid-column:1/-1}.ofm-editor-review-portal__audit{grid-column:1/-1}}@media(max-width:620px){.ofm-editor-review-portal{padding:28px 14px calc(174px + env(safe-area-inset-bottom))}.ofm-editor-review-portal__hero{display:block;margin-bottom:30px}.ofm-editor-review-portal__hero h1{font-size:2.55rem}.ofm-editor-review-portal__hero-count{display:inline-grid;margin-top:18px}.ofm-editor-review-portal__card{grid-template-columns:78px minmax(0,1fr);gap:13px;padding:13px;border-radius:16px}.ofm-editor-review-portal__cover{width:78px;border-radius:10px}.ofm-editor-review-portal__heading{display:block}.ofm-editor-review-portal__state{display:inline-flex;margin-top:9px}.ofm-editor-review-portal__meta{grid-template-columns:1fr;margin-top:14px}.ofm-editor-review-portal__rights{align-items:flex-start;flex-direction:column;gap:5px}.ofm-editor-review-portal__form,.ofm-editor-review-portal__audit{grid-column:1/-1}.ofm-editor-review-portal__button{flex:1}.ofm-editor-review-portal__locked,.ofm-editor-review-portal__empty{border-radius:19px}}@media(prefers-reduced-motion:reduce){.ofm-editor-review-portal *{scroll-behavior:auto!important;transition:none!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}

/* Source: assets/css/editor-review-portal-polish.css */
/* Brand-led review controls and unreleased preview rows. */
.ofm-editor-review-portal{--ofm-review-gold:#fcbe0d;--ofm-review-gold-light:#fdcf36;--ofm-review-ink:#111;--ofm-review-charcoal:#171717;--ofm-review-border:#303030;--ofm-review-muted:#9a9a9a;--ofm-review-radius:14px;--ofm-review-shadow:0 12px 34px rgba(0,0,0,.32);--ofm-review-gold-shadow:0 0 26px rgba(252,190,13,.22)}.ofm-editor-review-portal__hero-copy{position:relative;display:grid;gap:0}.ofm-editor-review-portal__brand-mark{display:grid;place-items:center;width:48px;height:48px;margin:0 0 14px;border-radius:14px;background:#171717;box-shadow:var(--ofm-review-shadow);overflow:hidden}.ofm-editor-review-portal__brand-mark img{display:block;width:100%;height:100%;object-fit:cover;animation:ofm-editor-review-brand-breathe 4s ease-in-out infinite}.ofm-editor-review-portal__hero-count{border-color:rgba(252,190,13,.46);background:rgba(252,190,13,.08);color:var(--ofm-review-gold)}@keyframes ofm-editor-review-brand-breathe{50%{transform:scale(1.045);filter:drop-shadow(0 0 9px rgba(252,190,13,.3))}}.ofm-editor-review-portal__cover{position:relative;isolation:isolate}.ofm-editor-review-portal__cover-button{position:relative;display:block;width:100%;height:100%;margin:0;padding:0;border:0;border-radius:inherit;background:#292929;cursor:zoom-in;overflow:hidden}.ofm-editor-review-portal__cover-button img{transition:transform .32s ease,filter .24s ease}.ofm-editor-review-portal__cover-button:hover img,.ofm-editor-review-portal__cover-button:focus-visible img{transform:scale(1.055);filter:brightness(.78)}.ofm-editor-review-portal__cover-button:focus-visible{outline:2px solid var(--ofm-review-gold);outline-offset:3px}.ofm-editor-review-portal__cover-inspect{position:absolute;right:9px;bottom:9px;display:inline-flex;align-items:center;gap:6px;min-height:30px;padding:5px 9px;border:1px solid rgba(255,255,255,.28);border-radius:999px;background:rgba(8,8,8,.78);color:#f7f7f7;font-size:.68rem;font-weight:800;line-height:1;opacity:0;transform:translateY(5px);transition:opacity .18s ease,transform .18s ease,background .18s ease}.ofm-editor-review-portal__cover-inspect svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2}.ofm-editor-review-portal__cover-button:hover .ofm-editor-review-portal__cover-inspect,.ofm-editor-review-portal__cover-button:focus-visible .ofm-editor-review-portal__cover-inspect{opacity:1;transform:translateY(0)}.ofm-editor-review-portal__cover-button:hover .ofm-editor-review-portal__cover-inspect{background:rgba(23,23,23,.95)}.ofm-editor-review-portal__cover--empty{padding:22px;background:#171717}.ofm-editor-review-portal__cover--empty img{object-fit:contain}.ofm-editor-review-portal .ofm-station-track{width:100%;grid-template-columns:minmax(0,1fr) auto;gap:10px;margin:0;padding:8px 10px 8px 8px;border-color:var(--ofm-review-border);border-radius:16px;background:var(--ofm-review-charcoal);box-shadow:none}.ofm-editor-review-portal .ofm-station-track:hover{border-color:rgba(252,190,13,.5);background:#1d1d1d;transform:translateY(-1px)}.ofm-editor-review-portal .ofm-station-track.is-current{border-color:rgba(252,190,13,.75);background:rgba(252,190,13,.1)}.ofm-editor-review-portal .ofm-station-track__trigger{grid-template-columns:44px minmax(0,1fr);gap:14px;padding:5px}.ofm-editor-review-portal .ofm-station-track__play{background:var(--ofm-review-gold);color:var(--ofm-review-ink);box-shadow:0 8px 18px rgba(252,190,13,.18)}.ofm-editor-review-portal .ofm-station-track.is-playing .ofm-station-track__play{box-shadow:0 0 0 7px rgba(252,190,13,.12);animation:ofm-editor-review-track-pulse 1.6s ease-in-out infinite}.ofm-editor-review-portal .ofm-station-track__number{color:var(--ofm-review-muted)}.ofm-editor-review-portal .ofm-station-track__title{color:#fff}.ofm-editor-review-portal .ofm-station-track__stats{margin-left:auto;color:var(--ofm-review-muted);font-size:.72rem;font-weight:700;white-space:nowrap}.ofm-editor-review-portal .ofm-station-track__trigger:focus-visible{outline-color:var(--ofm-review-gold)}@keyframes ofm-editor-review-track-pulse{50%{transform:scale(1.05)}}.ofm-editor-review-portal__track-private{display:inline-flex;align-items:center;gap:5px;padding:6px 8px;border:1px solid rgba(252,190,13,.26);border-radius:999px;background:rgba(252,190,13,.07);color:var(--ofm-review-gold-light);font-size:.65rem;font-weight:800;line-height:1;white-space:nowrap}.ofm-editor-review-portal__track-private svg{width:13px;height:13px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2}.ofm-editor-review-portal__button:not(.ofm-editor-review-portal__button--return){border-color:var(--ofm-review-gold);background:var(--ofm-review-gold);box-shadow:0 7px 16px rgba(252,190,13,.17)}.ofm-editor-review-portal__button:not(.ofm-editor-review-portal__button--return):hover,.ofm-editor-review-portal__button:not(.ofm-editor-review-portal__button--return):focus-visible{border-color:var(--ofm-review-gold-light);background:var(--ofm-review-gold-light);box-shadow:var(--ofm-review-gold-shadow)}.ofm-editor-review-portal__action-icon{width:16px;height:16px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2;transition:transform .18s ease}.ofm-editor-review-portal__button:hover .ofm-editor-review-portal__action-icon--approve,.ofm-editor-review-portal__button:focus-visible .ofm-editor-review-portal__action-icon--approve{transform:scale(1.12)}.ofm-editor-review-portal__button--return:hover .ofm-editor-review-portal__action-icon--return,.ofm-editor-review-portal__button--return:focus-visible .ofm-editor-review-portal__action-icon--return{transform:translateX(-2px)}.ofm-editor-review-portal__artwork-modal{position:fixed;z-index:100010;inset:0;display:grid;place-items:center;padding:16px;background:rgba(0,0,0,.82);opacity:0;transition:opacity .18s ease}.ofm-editor-review-portal__artwork-modal.is-open{opacity:1}.ofm-editor-review-portal__artwork-dialog{position:relative;display:grid;max-width:min(960px,calc(100vw - 32px));max-height:calc(100dvh - 32px);padding:13px;border:1px solid rgba(255,255,255,.13);border-radius:20px;background:#111;box-shadow:0 28px 80px rgba(0,0,0,.52);transform:translateY(12px) scale(.98);transition:transform .18s ease}.ofm-editor-review-portal__artwork-modal.is-open .ofm-editor-review-portal__artwork-dialog{transform:translateY(0) scale(1)}.ofm-editor-review-portal__artwork-dialog figure{display:grid;gap:10px;margin:0}.ofm-editor-review-portal__artwork-dialog img{display:block;max-width:100%;max-height:calc(100dvh - 92px);border-radius:12px;object-fit:contain}.ofm-editor-review-portal__artwork-dialog figcaption{overflow:hidden;padding:0 4px;color:#d9d9d9;font-size:.82rem;font-weight:700;text-align:center;text-overflow:ellipsis;white-space:nowrap}.ofm-editor-review-portal__artwork-close{position:absolute;z-index:1;top:22px;right:22px}.ofm-editor-review-portal__ready-icon{display:grid;place-items:center;width:34px;height:34px;margin:0 0 9px;border:1px solid rgba(94,193,129,.45);border-radius:50%;background:rgba(94,193,129,.09);color:#9ae7b5}.ofm-editor-review-portal__ready-icon svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2.3}@media(max-width:620px){.ofm-editor-review-portal__cover-inspect{opacity:1;transform:none}.ofm-editor-review-portal .ofm-station-track{gap:7px;padding:7px}.ofm-editor-review-portal .ofm-station-track__trigger{grid-template-columns:38px minmax(0,1fr);gap:10px}.ofm-editor-review-portal .ofm-station-track__play{width:34px;height:34px}.ofm-editor-review-portal .ofm-station-track__stats{display:none}.ofm-editor-review-portal__track-private span{display:none}.ofm-editor-review-portal__track-private{padding:7px}.ofm-editor-review-portal__artwork-dialog{padding:8px;border-radius:16px}.ofm-editor-review-portal__artwork-close{top:14px;right:14px}}@media(prefers-reduced-motion:reduce){.ofm-editor-review-portal__brand-mark img,.ofm-editor-review-portal .ofm-station-track.is-playing .ofm-station-track__play{animation:none}.ofm-editor-review-portal__cover-button img,.ofm-editor-review-portal__cover-inspect,.ofm-editor-review-portal__action-icon,.ofm-editor-review-portal__artwork-modal,.ofm-editor-review-portal__artwork-dialog{transition:none}}
/* Keep review previews complete when the portal is reached through PJAX. */
.ofm-editor-review-portal__artwork-modal[hidden]{display:none}
.ofm-editor-review-portal__cover .ofm-editor-review-portal__cover-inspect{display:inline-flex;width:auto;height:auto;color:#f7f7f7;font-size:.68rem}.ofm-editor-review-portal__cover .ofm-editor-review-portal__cover-inspect>span{display:inline;width:auto;height:auto;color:inherit;font-size:inherit}
.ofm-editor-review-portal__audio h3{display:flex;align-items:center;gap:7px}.ofm-editor-review-portal__audio h3 svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2}.ofm-editor-review-portal__cover-button:focus-visible{outline:0;box-shadow:inset 0 0 0 2px var(--ofm-review-gold)}
@media(max-width:620px){.ofm-editor-review-portal .ofm-station-track__play{width:34px;height:34px}}
body.ofm-editor-review-portal-artwork-open{overflow:hidden}.ofm-editor-review-portal .ofm-station-track{display:grid;align-items:center;border:1px solid var(--ofm-review-border);color:#fff;transition:border-color .18s ease,background .18s ease,transform .18s ease}.ofm-editor-review-portal .ofm-station-track__trigger{display:grid;align-items:center;width:100%;border:0;background:transparent;color:inherit;text-align:left;cursor:pointer}.ofm-editor-review-portal .ofm-station-track__play{width:38px;height:38px;display:grid;place-items:center;border-radius:50%;transition:transform .2s,box-shadow .2s}.ofm-editor-review-portal .ofm-station-track__play svg{width:17px;height:17px;fill:currentColor;stroke:none}.ofm-editor-review-portal .ofm-station-track__play .icon-pause{display:none;fill:none;stroke:currentColor;stroke-width:2.5}.ofm-editor-review-portal .ofm-station-track.is-playing .icon-play{display:none}.ofm-editor-review-portal .ofm-station-track.is-playing .icon-pause{display:block}.ofm-editor-review-portal .ofm-station-track__details{min-width:0;display:flex;align-items:center;gap:13px}.ofm-editor-review-portal .ofm-station-track__title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:700}

/* Source: assets/css/core/variables.css */
:root{

    /* ========= BRAND ========= */

    --ofm-primary:#f4c430;

    --ofm-primary-hover:#ffd84d;

    /* ========= COLORS ========= */

    --ofm-bg:#171717;

    --ofm-surface:#252525;

    --ofm-border:#303030;

    --ofm-text:#ffffff;

    --ofm-muted:#9b9b9b;

    /* ========= RADIUS ========= */

    --radius-sm:8px;

    --radius-md:12px;

    --radius-lg:18px;

    --radius-round:999px;

    /* ========= SHADOW ========= */

    --shadow-sm:0 4px 12px rgba(0,0,0,.25);

    --shadow-md:0 10px 30px rgba(0,0,0,.35);

    --shadow-lg:0 20px 45px rgba(0,0,0,.45);

    /* ========= TRANSITIONS ========= */

    --speed:.25s ease;

}

/* Source: assets/css/player/player.css */


body { padding-bottom: calc(var(--player-height, 118px) + env(safe-area-inset-bottom)); }

#ofm-player {
	--ofm-player-surface: var(--ofm-bg, #171717);
	--ofm-player-border: var(--ofm-border, #303030);
	--ofm-player-text: var(--ofm-text, #fff);
	--ofm-player-muted: var(--ofm-muted, #9b9b9b);
	position: fixed; z-index: 999999; inset: auto 0 0; min-height: var(--player-height, 118px);
	display: grid; grid-template-columns: minmax(220px, 1fr) minmax(360px, 1.6fr) minmax(220px, 1fr);
	align-items: center; gap: 24px; padding: 16px 24px calc(16px + env(safe-area-inset-bottom));
	color: var(--ofm-player-text); background: color-mix(in srgb, var(--ofm-player-surface) 94%, #000);
	border-top: 1px solid var(--ofm-player-border); box-shadow: 0 -12px 36px rgb(0 0 0 / .25);
}

#ofm-player *, #ofm-player *::before, #ofm-player *::after { box-sizing: border-box; }
.player-left, .player-right, .player-middle { min-width: 0; }
.player-left { display: flex; align-items: center; gap: 14px; }
.player-cover-link { flex: 0 0 auto; display: block; line-height: 0; border-radius: var(--radius-md, 12px); }
#player-cover { width: var(--player-cover, 68px); height: var(--player-cover, 68px); display: block; object-fit: cover; border-radius: var(--radius-md, 12px); background: var(--ofm-surface, #252525); box-shadow: var(--shadow-sm, 0 4px 12px rgb(0 0 0 / .25)); }
.player-meta { overflow: hidden; }
.player-meta h3, .player-meta p { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.player-meta h3 { margin: 0; font-size: clamp(.95rem, 1.2vw, 1.1rem); line-height: 1.35; color: var(--ofm-player-text); }
.player-meta p { margin: 3px 0 0; font-size: .875rem; color: var(--ofm-player-muted); }
.player-middle { display: grid; justify-items: center; gap: 9px; }
.player-right { display: flex; justify-content: flex-end; align-items: center; gap: 10px; }
.screen-reader-text { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }

/* Source: assets/css/player/controls.css */
#ofm-player .player-controls{display:flex;align-items:center;justify-content:center;gap:8px}
#ofm-player .player-button{position:relative;width:36px;height:36px;padding:0;display:inline-grid;place-items:center;border:0;border-radius:999px;cursor:pointer;color:var(--ofm-text,#fff);background:transparent;transition:transform .18s ease,background-color .18s ease,color .18s ease,opacity .18s ease}
#ofm-player .player-button svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
#ofm-player .player-button--play{width:48px;height:48px;color:#111;background:#f4c430;box-shadow:0 8px 18px rgba(244,196,48,.22)}
#ofm-player .player-button--play .icon-play{stroke:none;fill:currentColor}
#ofm-player .player-button--play .icon-pause{display:none;fill:none!important;stroke:currentColor!important;stroke-width:2.5!important}
#ofm-player.is-playing #play .icon-play{display:none}
#ofm-player.is-playing #play .icon-pause{display:block;fill:none!important;stroke:currentColor!important;stroke-width:2.5!important}
#ofm-player.is-playing #play.player-button--play{background:#f4c430!important;color:#111!important;opacity:1!important;filter:none!important}
#ofm-player #mute[aria-pressed="true"]{color:#f4c430;background:rgba(244,196,48,.14);box-shadow:inset 0 0 0 1px rgba(244,196,48,.34)}
#ofm-player #mute[aria-pressed="true"]::after{content:"";position:absolute;width:4px;height:4px;border-radius:50%;background:#f4c430;transform:translate(11px,-11px)}
#ofm-player .player-button:hover:not(:disabled){background:rgb(255 255 255 / .1);transform:translateY(-1px)}
#ofm-player .player-button--play:hover:not(:disabled){background:#ffd34d}
#ofm-player .player-button.is-active{color:#f4c430}
#ofm-player .player-button:focus-visible{outline:2px solid #f4c430;outline-offset:3px}
@media(max-width:580px){#ofm-player #play.player-button--play{width:48px;height:48px;min-width:48px;min-height:48px;background:#f4c430!important;color:#111!important;opacity:1!important}#ofm-player.is-playing #play .icon-pause{display:block!important;visibility:visible!important;opacity:1!important;stroke:#111!important;fill:none!important}#ofm-player.is-playing #play .icon-play{display:none!important}}

/* Source: assets/css/player/progress.css */
#ofm-player .player-progress-row { width: min(100%, 680px); display: grid; grid-template-columns: 42px minmax(0,1fr) 42px; align-items: center; gap: 9px; }
#ofm-player .player-time { font-variant-numeric: tabular-nums; font-size: .75rem; color: var(--ofm-muted, #9b9b9b); text-align: center; }
#ofm-player .player-range { --range-fill: 0%; appearance: none; -webkit-appearance: none; width: 100%; height: 18px; margin: 0; cursor: pointer; background: transparent; }
#ofm-player .player-range::-webkit-slider-runnable-track { height: 5px; border-radius: 999px; background: linear-gradient(to right, var(--ofm-primary, #f4c430) 0 var(--range-fill), var(--ofm-border, #303030) var(--range-fill) 100%); }
#ofm-player .player-range::-webkit-slider-thumb { appearance: none; -webkit-appearance: none; width: 13px; height: 13px; margin-top: -4px; border: 0; border-radius: 50%; background: var(--ofm-primary, #f4c430); box-shadow: 0 1px 5px rgb(0 0 0 / .45); transform: scale(0); transition: transform .15s ease; }
#ofm-player .player-range:hover::-webkit-slider-thumb, #ofm-player .player-range:focus-visible::-webkit-slider-thumb { transform: scale(1); }
#ofm-player .player-range::-moz-range-track { height: 5px; border-radius: 999px; background: var(--ofm-border, #303030); }
#ofm-player .player-range::-moz-range-progress { height: 5px; border-radius: 999px; background: var(--ofm-primary, #f4c430); }
#ofm-player .player-range::-moz-range-thumb { width: 13px; height: 13px; border: 0; border-radius: 50%; background: var(--ofm-primary, #f4c430); box-shadow: 0 1px 5px rgb(0 0 0 / .45); }

/* Source: assets/css/player/volume.css */
#ofm-player .player-volume { width: clamp(72px, 9vw, 126px); }
#ofm-player .player-volume::-webkit-slider-runnable-track { height: 4px; }
#ofm-player .player-volume::-moz-range-track, #ofm-player .player-volume::-moz-range-progress { height: 4px; }
#ofm-player .player-volume::-webkit-slider-thumb { width: 11px; height: 11px; margin-top: -3.5px; }
#ofm-player .player-volume::-moz-range-thumb { width: 11px; height: 11px; }

/* Source: assets/css/player/queue.css */
/* Responsive Up Next drawer: a focused panel above the persistent player. */
html{scrollbar-width:thin;scrollbar-color:#7c7464 #090909}html::-webkit-scrollbar{width:11px;height:11px}html::-webkit-scrollbar-track{background:#090909;border-left:1px solid #262626}html::-webkit-scrollbar-thumb{border:3px solid #090909;border-radius:999px;background:linear-gradient(180deg,#94886f,#544f46)}html::-webkit-scrollbar-thumb:hover{background:linear-gradient(180deg,#d0b76d,#827353)}
#ofm-queue-drawer{position:fixed;z-index:999998;right:20px;bottom:calc(var(--player-height,118px) + 18px);width:min(420px,calc(100vw - 40px));max-height:min(560px,calc(100dvh - var(--player-height,118px) - 44px));display:flex;flex-direction:column;overflow:hidden;overscroll-behavior:contain;border:1px solid #373737;border-radius:22px;background:#1c1c1c;color:#fff;box-shadow:0 22px 60px rgb(0 0 0 / .48);opacity:0;visibility:hidden;pointer-events:none;transform:translateY(16px);transition:opacity .2s ease,transform .2s ease,visibility .2s ease}#ofm-queue-drawer.is-open{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0)}.ofm-queue__header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:19px 20px 16px;border-bottom:1px solid #343434}.ofm-queue__header h2{margin:0;font-size:1.05rem}.ofm-queue__count{margin:4px 0 0;color:#aaa;font-size:.86rem}.ofm-queue__close{display:grid;place-items:center;width:34px;height:34px;padding:0;border:0;border-radius:50%;background:transparent;color:#fff;font-size:1.7rem;line-height:1;cursor:pointer}.ofm-queue__close:hover,.ofm-queue__close:focus-visible{background:#2c2c2c;outline:none}.ofm-queue__list{display:grid;gap:3px;min-height:0;margin:0;padding:9px;overflow-y:auto;overscroll-behavior:contain;list-style:none}.ofm-queue__item{width:100%;display:flex;align-items:center;gap:12px;padding:9px;border:0;border-radius:12px;background:transparent;color:#fff;text-align:left;cursor:pointer}.ofm-queue__item:hover,.ofm-queue__item:focus-visible{background:rgb(255 255 255 / .07);outline:none}.ofm-queue__item.is-current{background:rgb(244 196 48 / .17)}.ofm-queue__cover{width:46px;height:46px;flex:0 0 46px;border-radius:8px;object-fit:cover;background:#2a2a2a}.ofm-queue__meta{min-width:0;display:grid;gap:3px}.ofm-queue__title,.ofm-queue__artist{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ofm-queue__title{font-weight:700}.ofm-queue__artist{color:#aaa;font-size:.86rem}.ofm-queue__empty{margin:0;padding:26px 22px;color:#aaa}.ofm-queue__empty[hidden]{display:none}
#ofm-queue-list{scrollbar-width:thin;scrollbar-color:#81775f #171717}#ofm-queue-list::-webkit-scrollbar{width:9px}#ofm-queue-list::-webkit-scrollbar-track{margin:8px 0;background:#171717;border-radius:999px}#ofm-queue-list::-webkit-scrollbar-thumb{border:2px solid #171717;border-radius:999px;background:linear-gradient(180deg,#a39677,#625b4e)}#ofm-queue-list::-webkit-scrollbar-thumb:hover{background:#d1b767}
@media(max-width:760px){#ofm-queue-drawer{right:12px;bottom:calc(var(--player-height,136px) + 12px);width:min(440px,calc(100vw - 24px));max-height:min(64dvh,calc(100dvh - var(--player-height,136px) - 28px));border-radius:19px}.ofm-queue__header{padding:16px 17px 14px}.ofm-queue__list{padding:7px}.ofm-queue__item{padding:8px}.ofm-queue__cover{width:42px;height:42px;flex-basis:42px}}
@media(max-width:480px){#ofm-queue-drawer{right:8px;bottom:calc(var(--player-height,154px) + env(safe-area-inset-bottom) + 8px);width:calc(100vw - 16px);max-height:min(62dvh,calc(100dvh - var(--player-height,154px) - 20px));border-radius:17px}.ofm-queue__header{padding:14px 15px 12px}.ofm-queue__header h2{font-size:1rem}.ofm-queue__list{gap:2px;padding:6px}.ofm-queue__item{gap:10px;padding:7px}.ofm-queue__cover{width:40px;height:40px;flex-basis:40px}.ofm-queue__title{font-size:.9rem}.ofm-queue__artist{font-size:.78rem}}

/* Source: assets/css/player/queue-actions.css */
#ofm-queue-list>li{position:relative;min-height:64px}#ofm-queue-list .ofm-queue__item{position:relative;min-height:64px;padding-right:84px}#ofm-queue-list .ofm-queue__item::after{content:'';position:absolute;z-index:1;top:50%;left:18px;width:26px;height:26px;border:1px solid rgb(244 196 48 / .32);border-radius:50%;background:rgb(244 196 48 / .45) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23171717' d='m9 6 8 6-8 6z'/%3E%3C/svg%3E") center/12px no-repeat;box-shadow:0 2px 7px rgb(0 0 0 / .16);opacity:0;pointer-events:none;transform:translateY(-50%) scale(.92);transition:opacity .18s ease,transform .18s ease,background .18s ease}#ofm-queue-list>li:hover .ofm-queue__item::after,#ofm-queue-list .ofm-queue__item:focus-visible::after{opacity:.58;transform:translateY(-50%) scale(1)}#ofm-player.is-playing #ofm-queue-list>li:hover .ofm-queue__item.is-current::after{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='%23171717' stroke-linecap='round' stroke-width='2.8' d='M8 6v12M16 6v12'/%3E%3C/svg%3E");opacity:.68}#ofm-queue-list .ofm-queue__actions{position:absolute;z-index:2;top:50%;right:14px;display:flex;gap:4px;transform:translateY(-50%)}#ofm-queue-list button.ofm-queue__action{display:grid;place-items:center;box-sizing:border-box;width:30px;height:30px;margin:0;padding:0;border:0;border-radius:50%;background:transparent;color:#b7b7b7;cursor:pointer}#ofm-queue-list button.ofm-queue__action:hover,#ofm-queue-list button.ofm-queue__action:focus-visible{background:rgb(244 196 48 / .16);color:#f4c430;outline:none}#ofm-queue-list button.ofm-queue__action.is-saved{color:#f4c430}#ofm-queue-list button.ofm-queue__action svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}#ofm-queue-list button.ofm-queue__action.is-saved svg{fill:currentColor}#ofm-queue-close{appearance:none!important;display:grid!important;place-items:center!important;box-sizing:border-box!important;width:32px!important;height:32px!important;min-height:32px!important;margin:0!important;padding:0!important;border:0!important;border-radius:50%!important;background:transparent!important;color:#f5f5f5!important;font-family:Arial,sans-serif!important;font-size:0!important;line-height:1!important;box-shadow:none!important;cursor:pointer!important}#ofm-queue-close::before{content:'\00d7';display:block;font-size:30px;font-weight:400;line-height:30px;transform:translateY(-1px)}#ofm-queue-close:hover,#ofm-queue-close:focus-visible{background:#2a2a2a!important;color:#fff!important;outline:none!important}@media(max-width:580px){#ofm-queue-list>li,#ofm-queue-list .ofm-queue__item{min-height:58px}#ofm-queue-list .ofm-queue__item{padding-right:80px}#ofm-queue-list .ofm-queue__item::after{left:16px;width:24px;height:24px;background-size:11px}#ofm-queue-list .ofm-queue__actions{right:10px}}

/* Source: assets/css/player/animations.css */
#ofm-player { animation: ofm-player-enter .32s ease both; }
#ofm-player.is-playing #player-cover { animation: ofm-cover-breathe 4s ease-in-out infinite; }
@keyframes ofm-player-enter { from { transform: translateY(100%); } to { transform: translateY(0); } }
@keyframes ofm-cover-breathe { 50% { transform: scale(1.025); box-shadow: 0 0 0 4px rgb(244 196 48 / .12), var(--shadow-sm, 0 4px 12px rgb(0 0 0 / .25)); } }
@media (prefers-reduced-motion: reduce) { #ofm-player, #ofm-player.is-playing #player-cover { animation: none; } #ofm-player .player-button { transition: none; } }

/* Source: assets/css/player/responsive.css */
@media (max-width: 850px) { #ofm-player { grid-template-columns: minmax(0,1fr) auto; gap: 10px 18px; } #ofm-player .player-middle { grid-column: 1 / -1; grid-row: 1; } #ofm-player .player-left { grid-column: 1; grid-row: 2; } #ofm-player .player-right { grid-column: 2; grid-row: 2; } }
@media (max-width: 580px) { body { padding-bottom: calc(154px + env(safe-area-inset-bottom)); } #ofm-player { min-height: 154px; padding: 10px 14px calc(10px + env(safe-area-inset-bottom)); } #ofm-player .player-middle { gap: 4px; } #ofm-player .player-progress-row { width: 100%; } #ofm-player .player-left { gap: 10px; } #ofm-player #player-cover { width: 46px; height: 46px; } #ofm-player .player-meta h3 { font-size: .9rem; } #ofm-player .player-meta p { font-size: .78rem; } #ofm-player .player-right { gap: 5px; } #ofm-player #mute, #ofm-player .player-queue-button { display: inline-grid; } #ofm-player .player-volume { display: block; width: clamp(56px, 16vw, 78px); } #ofm-player .player-controls { gap: 5px; } }

/* Source: assets/css/player/workspace-visibility.css */
/* Keep the persistent player available but out of focused creator work. */
#ofm-player #player-workspace-hide { display: none; }
#player-workspace-show[hidden] { display: none !important; }

html.ofm-player-workspace-route #ofm-player #player-workspace-hide { display: inline-grid; }

#ofm-player.is-workspace-hidden,
#ofm-player.is-workspace-hidden + #ofm-queue-drawer {
    visibility: hidden;
    pointer-events: none;
}

html.ofm-player-workspace-route.ofm-player-workspace-hidden body {
    padding-bottom: calc(76px + env(safe-area-inset-bottom));
}

html.ofm-player-workspace-route.ofm-player-workspace-hidden .ofm-artist-studio,
html.ofm-player-workspace-route.ofm-player-workspace-hidden .ofm-editor-review-portal {
    padding-bottom: calc(84px + env(safe-area-inset-bottom));
}

#player-workspace-show {
    position: fixed;
    z-index: 999997;
    right: max(16px, env(safe-area-inset-right));
    bottom: calc(16px + env(safe-area-inset-bottom));
    display: inline-flex;
    align-items: center;
    gap: 8px;
    min-height: 44px;
    padding: 10px 15px;
    border: 1px solid rgba(252, 190, 13, .56);
    border-radius: 999px;
    color: #171717;
    background: #fcbe0d;
    box-shadow: 0 10px 28px rgba(0, 0, 0, .34);
    cursor: pointer;
    font: inherit;
    font-size: .82rem;
    font-weight: 800;
    line-height: 1;
    transition: transform .18s ease, background .18s ease, box-shadow .18s ease;
}

#player-workspace-show svg {
    width: 18px;
    height: 18px;
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 2.2;
}

#player-workspace-show:hover,
#player-workspace-show:focus-visible {
    background: #fdcf36;
    box-shadow: 0 0 0 3px rgba(252, 190, 13, .26), 0 10px 28px rgba(0, 0, 0, .34);
    outline: none;
    transform: translateY(-1px);
}

html.ofm-access-modal-open #player-workspace-show { display: none !important; }

@media (max-width: 580px) {
    html.ofm-player-workspace-route.ofm-player-workspace-hidden body {
        padding-bottom: calc(68px + env(safe-area-inset-bottom));
    }

    html.ofm-player-workspace-route.ofm-player-workspace-hidden .ofm-artist-studio,
    html.ofm-player-workspace-route.ofm-player-workspace-hidden .ofm-editor-review-portal {
        padding-bottom: calc(76px + env(safe-area-inset-bottom));
    }

    #player-workspace-show {
        right: 12px;
        bottom: calc(12px + env(safe-area-inset-bottom));
        min-height: 44px;
        padding: 10px 13px;
    }
}

@media (prefers-reduced-motion: reduce) {
    #player-workspace-show { transition: none; }
}

/* Source: assets/css/player/related-cards.css */
/* Universal-player overlay for the parent loop's related station cards. */
/* The parent theme menu includes destructive author actions, so it is never exposed publicly. */
body:not(.wp-admin) .btn-more{display:none!important}
body:not(.wp-admin) .btn-more[data-playable="false"]{display:none!important}.station-more-from .post-thumbnail{position:relative}.station-more-from .entry-action .btn-more{display:none!important}.station-more-from .ofm-related-card__play{position:absolute;z-index:6;display:grid;place-items:center;padding:0;border:1px solid rgb(255 255 255 / .35);border-radius:50%;color:#171717;cursor:pointer;opacity:0;transition:opacity .18s ease,transform .18s ease,background .18s ease;left:50%;top:50%;width:54px;height:54px;background:rgb(244 196 48 / .9);transform:translate(-50%,-50%) scale(.92)}.station-more-from .block-loop-item:hover .ofm-related-card__play,.station-more-from .block-loop-item:focus-within .ofm-related-card__play,.station-more-from .block-loop-item.is-playing .ofm-related-card__play{opacity:1;transform:translate(-50%,-50%) scale(1)}.station-more-from .ofm-related-card__play:hover,.station-more-from .ofm-related-card__play:focus-visible{background:#ffd34d;outline:2px solid #fff;outline-offset:3px}.station-more-from .ofm-related-card__play svg{width:21px;height:21px;fill:currentColor;stroke:none}.station-more-from .ofm-related-card__play .icon-pause{display:none;fill:none;stroke:currentColor;stroke-width:2.5}.station-more-from .block-loop-item.is-playing .ofm-related-card__play .icon-play{display:none}.station-more-from .block-loop-item.is-playing .ofm-related-card__play .icon-pause{display:block}@media(max-width:680px){.station-more-from .ofm-related-card__play{width:46px;height:46px;opacity:.9;transform:translate(-50%,-50%) scale(1)}}
