/* === Radiohub UI overrides === */
/* Шапка: выравнивание лого (перебиваем top/position темы) + крупнее хлебные крошки */
.navbar-brand.md{display:inline-flex;align-items:center;gap:8px;line-height:1}
.navbar-brand.md .brand-logo{position:static;top:auto;max-height:none;width:32px;height:32px;border-radius:9px;margin:0;flex:0 0 auto}
.navbar-brand.md .brand-wm{line-height:1;margin:0}
.brand-wm{font-weight:800;letter-spacing:.3px}
.brand-net{font-weight:600;opacity:.55;font-size:.85em}
.breadcrumb,.breadcrumb a,.breadcrumb .breadcrumb-item{font-size:15px}

/* Рейтинг станции (агрегат) */
.station-rate{display:inline-flex;align-items:center;gap:8px;margin:8px 0 2px;text-decoration:none;color:inherit}
.sr-stars{position:relative;display:inline-block;font-size:18px;line-height:1;font-family:Arial,sans-serif;white-space:nowrap}
.sr-stars::before{content:'★★★★★';color:#d9dee8}
.sr-stars::after{content:'★★★★★';color:#ffb400;position:absolute;left:0;top:0;width:var(--p,0);overflow:hidden}
.sr-val{font-weight:800;color:#16213e}
.sr-cnt{color:#9aa3bd;font-size:13px}

/* ===== Комментарии: форма (компактная) ===== */
.cmt-hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.cmt-form{max-width:620px;background:#f7f9fc;border:1px solid #e7ecf3;border-radius:14px;padding:16px 18px;margin:6px 0 22px}
.cmt-rate{display:flex;align-items:center;gap:10px;margin-bottom:12px;flex-wrap:wrap}
.cmt-rate-lbl{font-size:14px;color:#69708a;font-weight:600}
.cmt-stars{display:inline-flex;gap:2px}
.cmt-star{background:none;border:0;padding:0 1px;font-size:26px;line-height:1;color:#d9dee8;cursor:pointer;transition:color .12s,transform .1s}
.cmt-star:hover{transform:scale(1.12)}
.cmt-star.on{color:#ffb400}
.cmt-row{display:flex;flex-direction:column;gap:10px}
.cmt-input,.cmt-text{width:100%;border:1px solid #dce3ee;border-radius:10px;padding:10px 12px;font-size:14px;font-family:inherit;background:#fff;color:#16213e;transition:border-color .15s,box-shadow .15s}
.cmt-input:focus,.cmt-text:focus{outline:none;border-color:#0cc;box-shadow:0 0 0 3px rgba(0,204,204,.15)}
.cmt-text{resize:vertical;min-height:74px}
.cmt-foot{display:flex;align-items:center;gap:14px;margin-top:12px;flex-wrap:wrap}
.cmt-send{background:#0cc;color:#fff;border:0;border-radius:10px;padding:10px 22px;font-size:14px;font-weight:700;cursor:pointer;transition:background .15s,transform .1s}
.cmt-send:hover{background:#0bb;transform:translateY(-1px)}
.cmt-send:disabled{opacity:.6;cursor:default;transform:none}
.cmt-hint{font-size:12px;color:#9aa3bd}
.cmt-msg{margin-top:10px;font-size:13.5px;font-weight:600}
.cmt-msg:empty{margin:0}
.cmt-msg.ok{color:#0a9a5a}
.cmt-msg.err{color:#e23b5a}

/* ===== Комментарии: список ===== */
.cmt-list{list-style:none;margin:0;padding:0;max-width:760px}
.cmt{display:flex;gap:12px;padding:14px 0;border-top:1px solid #eef1f5}
.cmt:first-child{border-top:0}
.cmt-ava{flex:0 0 auto;width:40px;height:40px;border-radius:50%;color:#fff;font-weight:700;font-size:17px;display:flex;align-items:center;justify-content:center}
.cmt-body{flex:1 1 auto;min-width:0}
.cmt-top{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:3px}
.cmt-name{font-weight:700;color:#16213e}
.cmt-stars-ro{color:#ffb400;font-size:14px;letter-spacing:1px}
.cmt-date{color:#9aa3bd;font-size:12.5px}
.cmt-txt{margin:0;color:#33384a;line-height:1.5;white-space:pre-wrap;word-wrap:break-word}
.cmt-empty{color:#9aa3bd;padding:10px 0}
@media (max-width:520px){ .cmt-form{padding:14px} .cmt-star{font-size:30px} }

/* === Иконка станции: оверлей с кнопкой строго по центру === */
.item-overlay.center{
	position:absolute;inset:0;padding:0;
	display:flex;align-items:center;justify-content:center;
	background:rgba(0,0,0,.5);
	opacity:0;transition:opacity .2s;
	border-radius:inherit;
}
.item:hover .item-overlay.center,
.item:focus-within .item-overlay.center{opacity:1}
.btn-playpause{
	display:inline-flex;align-items:center;justify-content:center;
	background:rgba(255,255,255,.95);color:#1a1a2e;
	border:0;padding:9px 16px;border-radius:24px;
	cursor:pointer;font-size:14px;font-weight:600;
	white-space:nowrap;max-width:90%;
	box-shadow:0 2px 8px rgba(0,0,0,.3);
	transition:transform .1s, background .15s;
}
.btn-playpause:hover{transform:scale(1.05);background:#fff}
/* станционная кнопка на логотипе: ▶ Слушать / ⏸ Пауза */
.btn-playpause.station-ctl::before{content:'▶';margin-right:7px;font-size:11px;line-height:1}
.btn-playpause.station-ctl.is-playing::before{content:'⏸'}
.btn-playpause.is-playing{background:#0cc;color:#fff}
.btn-playpause .lbl-stop{display:none}
.btn-playpause.is-playing .lbl-play{display:none}
.btn-playpause.is-playing .lbl-stop{display:inline}

/* === Inline-плеер на странице станции (под логотипом) === */
.radio-player{
	display:flex;align-items:center;gap:14px;flex-wrap:wrap;
	max-width:540px;margin:16px 0 4px;padding:10px 14px;
	background:linear-gradient(135deg,#1a1a2e 0%,#16213e 100%);
	border-radius:14px;color:#fff;box-shadow:0 4px 18px rgba(0,0,0,.18);
}
.rp-play{
	flex:0 0 auto;width:50px;height:50px;border:0;border-radius:50%;
	background:#0cc;color:#fff;cursor:pointer;
	display:flex;align-items:center;justify-content:center;font-size:18px;line-height:1;
	box-shadow:0 2px 10px rgba(0,204,204,.45);
	transition:transform .1s,background .15s,box-shadow .15s;
}
.rp-play::before{content:'▶';margin-left:3px}
.rp-play.is-playing{background:#e23b5a;box-shadow:0 2px 10px rgba(226,59,90,.45)}
.rp-play.is-playing::before{content:'⏸';margin-left:0}
.rp-play:hover{transform:scale(1.06)}
.rp-info{flex:1 1 120px;min-width:0}
.rp-state{font-size:14px;font-weight:600;color:#cfd6e6;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rp-state.live{color:#2ee6a6}
.rp-state.loading{color:#ffd479}
.rp-state.err{color:#ff7a8a}
.rp-vol{flex:0 0 auto;display:flex;align-items:center;gap:8px}
.rp-mute{background:none;border:0;color:#cfd6e6;cursor:pointer;padding:4px;display:flex;align-items:center}
.rp-mute.muted{color:#ff7a8a}
.rp-volume{width:100px;accent-color:#0cc;cursor:pointer}
@media (max-width:520px){
	.radio-player{gap:10px;padding:9px 12px}
	.rp-play{width:46px;height:46px;font-size:16px}
	.rp-volume{width:80px}
}
@media (max-width:360px){ .rp-vol{display:none} }
/* === Лайки (чистый бейдж-пилюля в правом нижнем углу иконки, без рамки нативной кнопки) === */
.item-media>.btn-favorite{position:absolute;right:8px;bottom:8px;z-index:3}
.btn-favorite{
	display:inline-flex;align-items:center;gap:5px;
	background:rgba(0,0,0,.42);border:0;border-radius:16px;
	color:#fff;font-size:14px;font-weight:700;line-height:1;
	padding:5px 11px;cursor:pointer;text-decoration:none;
	-webkit-appearance:none;appearance:none;
	text-shadow:0 1px 2px rgba(0,0,0,.45);
	box-shadow:0 1px 4px rgba(0,0,0,.25);
	transition:background .15s,color .15s,transform .1s;
}
.btn-favorite:hover{background:rgba(0,0,0,.58);transform:scale(1.06)}
.btn-favorite.liked{color:#ff5a7a}
.btn-favorite .fa{font-size:14px}

/* === Player Bar === */
body.has-player-bar{padding-bottom:72px}
.player-bar{
	position:fixed;left:0;right:0;bottom:0;z-index:9999;
	display:flex;align-items:center;gap:12px;
	background:linear-gradient(135deg,#1a1a2e 0%,#16213e 100%);
	color:#fff;padding:10px 16px;
	box-shadow:0 -4px 16px rgba(0,0,0,.4);
	min-height:64px;
}
.player-bar .pb-link{flex-shrink:0;line-height:0}
.player-bar .pb-logo{
	width:48px;height:48px;border-radius:6px;object-fit:cover;
	background:#fff;display:block;
}
.player-bar .pb-info{flex:1;min-width:0;line-height:1.3}
.player-bar .pb-name{
	font-size:14px;font-weight:600;
	white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}
.player-bar .pb-status{font-size:12px;color:rgba(255,255,255,.6)}
.player-bar .pb-status.live{color:#0cc}
.player-bar .pb-status.live::before{content:'● ';animation:pb-blink 1.5s infinite}
.player-bar .pb-status.loading{color:#ffc107}
.player-bar .pb-status.err{color:#ff5a7a}
@keyframes pb-blink{50%{opacity:.3}}
.player-bar button{
	background:rgba(255,255,255,.12);color:#fff;border:0;cursor:pointer;
	width:40px;height:40px;border-radius:50%;
	display:flex;align-items:center;justify-content:center;
	transition:background .15s;flex-shrink:0;
}
.player-bar button:hover{background:rgba(255,255,255,.25)}
.player-bar .pb-toggle{width:48px;height:48px;background:#0cc}
.player-bar .pb-toggle:hover{background:#0aa}
.player-bar .pb-mute.muted{background:rgba(255,90,122,.3)}
.player-bar .pb-volume{
	width:90px;accent-color:#0cc;cursor:pointer;
}
@media (max-width:600px){
	.player-bar{padding:8px 10px;gap:8px;min-height:56px}
	.player-bar .pb-logo{width:40px;height:40px}
	.player-bar .pb-volume{display:none}
	.player-bar .pb-mute{display:none}
	.player-bar button{width:36px;height:36px}
	.player-bar .pb-toggle{width:42px;height:42px}
}

/* === Search page === */
.qsearch-wrap{max-width:760px;margin:0 auto}
.qsearch-form{position:relative;margin-bottom:24px}
.qsearch-form input{
	width:100%;padding:16px 20px 16px 52px;
	border:2px solid #e0e0e0;border-radius:32px;
	font-size:18px;outline:none;
	transition:border-color .15s, box-shadow .15s;
}
.qsearch-form input:focus{
	border-color:#0cc;box-shadow:0 0 0 4px rgba(0,204,204,.15);
}
.qsearch-form::before{
	content:'';position:absolute;top:50%;left:18px;transform:translateY(-50%);
	width:24px;height:24px;
	background:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23999'><path d='M15.5 14h-.79l-.28-.27a6.5 6.5 0 1 0-.7.7l.27.28v.79l5 5L20.49 19l-4.99-5zm-6 0A4.5 4.5 0 1 1 14 9.5 4.5 4.5 0 0 1 9.5 14z'/></svg>") no-repeat center / contain;
}
.qr-loading,.qr-empty{padding:32px;text-align:center;color:#888;font-size:15px}
.qr-grid{display:grid;grid-template-columns:1fr;gap:8px}
.qr-item{
	display:flex;align-items:center;gap:12px;
	padding:10px 14px;border-radius:8px;
	background:#fff;border:1px solid #eee;
	color:inherit;text-decoration:none;
	transition:background .12s, transform .12s;
}
.qr-item:hover{background:#f5fafa;border-color:#0cc;transform:translateX(2px)}
.qr-logo{width:48px;height:48px;flex-shrink:0;border-radius:6px;overflow:hidden;background:#f0f0f0;display:flex;align-items:center;justify-content:center}
.qr-logo img{width:100%;height:100%;object-fit:cover}
.qr-noimg{width:24px;height:24px;background:#ddd;border-radius:50%}
.qr-name{flex:1;font-weight:500;font-size:15px;color:#222}
.qr-name mark{background:#fff3a0;padding:0 2px;border-radius:2px}
.qr-likes{color:#999;font-size:13px;white-space:nowrap}

/* === SEO/Schema breadcrumb prettify === */
.breadcrumb{padding:0;background:none;font-size:13px;margin-bottom:8px}
.breadcrumb-item+.breadcrumb-item::before{content:'›';padding:0 6px;color:#aaa}
.breadcrumb-item a{color:#0aa;text-decoration:none}
.breadcrumb-item.active{color:#888}
