/* Agalon theme — NO filter:invert (Safari breaks covers + turns ♥ cyan). Light = colors only. */

.ag-theme-toggle {
  position: fixed;
  top: max(.75rem, env(safe-area-inset-top, 0px));
  right: max(.75rem, env(safe-area-inset-right, 0px));
  z-index: 10000;
  width: 2.5rem;
  height: 2.5rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  border: 1px solid #444;
  background: #0a0a0a;
  color: #f0f0f0;
  cursor: pointer;
  border-radius: 0;
  box-shadow: 0 2px 10px rgba(0, 0, 0, .35);
}
/* Fixed toggle overlays the top-right — keep «на главную» / nav clear of it */
.top,
.nav {
  padding-right: calc(2.5rem + .75rem + .55rem);
  box-sizing: border-box;
}
.ag-theme-toggle:hover,
.ag-theme-toggle:focus-visible {
  border-color: #fff;
  outline: none;
}
.ag-theme-toggle svg {
  width: 1.15rem;
  height: 1.15rem;
  display: none;
}
.ag-theme-toggle .ico-moon {
  width: 1.35rem;
  height: 1.35rem;
}
.ag-theme-toggle .ico-auto {
  display: none;
  font-family: Oswald, sans-serif;
  font-size: 1.1rem;
  font-weight: 700;
  line-height: 1;
  letter-spacing: .02em;
  text-transform: uppercase;
}
html[data-theme-pref="auto"] .ag-theme-toggle .ico-auto { display: block; }
html[data-theme-pref="light"] .ag-theme-toggle .ico-sun { display: block; }
html[data-theme-pref="dark"] .ag-theme-toggle .ico-moon { display: block; }
html:not([data-theme-pref]) .ag-theme-toggle .ico-auto { display: block; }

/* ——— Light: real colors, images untouched, hearts stay #e11d2e ——— */
html[data-theme="light"] {
  color-scheme: light;
  background: #f2f2f2;
}
html[data-theme="light"] body {
  color: #141414;
  background: #f2f2f2;
  filter: none !important;
}
/* Real covers stay true */
html[data-theme="light"] video,
html[data-theme="light"] .ag-media-wrap,
html[data-theme="light"] .ag-media-wrap img,
html[data-theme="light"] img:not(.mark):not(.ag-ph):not([src*="mark.png"]) {
  filter: none !important;
}
/*
 * Stub mark.png = white strokes on transparent (for dark UI).
 * invert → black strokes; background MUST stay on the parent (not on the img),
 * otherwise filter also inverts #eee/#000 into a black square.
 */
html[data-theme="light"] img.mark,
html[data-theme="light"] img.ag-ph,
html[data-theme="light"] img[src*="mark.png"] {
  filter: invert(1) !important;
  background: transparent !important;
}
html[data-theme="light"] .ag-now__art:has(img[src*="mark.png"]),
html[data-theme="light"] .ag-now__art:has(img.ag-ph),
html[data-theme="light"] .t-art:has(img[src*="mark.png"]),
html[data-theme="light"] .t-art:has(img.ag-ph),
html[data-theme="light"] .ag-groups button:has(img[src*="mark.png"]),
html[data-theme="light"] .tow:has(img[src*="mark.png"]) {
  background: #f0f0f0;
}
html[data-theme="light"] .ag-now__art:has(img[src*="mark.png"]) > img,
html[data-theme="light"] .ag-now__art:has(img.ag-ph) > img,
html[data-theme="light"] .t-art:has(img[src*="mark.png"]) img,
html[data-theme="light"] .ag-tracks img[src*="mark.png"],
html[data-theme="light"] .ag-groups button img[src*="mark.png"],
html[data-theme="light"] .ag-mini img[src*="mark.png"] {
  background: transparent !important;
  border-color: #ccc;
}

html[data-theme="light"] .hero,
html[data-theme="light"] .listen-block,
html[data-theme="light"] .tow-block,
html[data-theme="light"] .feed-block,
html[data-theme="light"] .wait-block,
html[data-theme="light"] .footer,
html[data-theme="light"] .top,
html[data-theme="light"] .foot {
  border-color: #d4d4d4;
}
html[data-theme="light"] .title,
html[data-theme="light"] .brand,
html[data-theme="light"] h1 { color: #0a0a0a; }
html[data-theme="light"] .tagline,
html[data-theme="light"] .listen-block__title,
html[data-theme="light"] .footer,
html[data-theme="light"] .foot,
html[data-theme="light"] .back,
html[data-theme="light"] .lede { color: #666; }
html[data-theme="light"] .content p { color: #333; }
html[data-theme="light"] .lead { color: #1a1a1a !important; }
html[data-theme="light"] .content strong { color: #0a0a0a; }
html[data-theme="light"] .footer a,
html[data-theme="light"] .foot a { color: #444; }
html[data-theme="light"] .footer a:hover,
html[data-theme="light"] .foot a:hover,
html[data-theme="light"] .back:hover { color: #0a0a0a; }

html[data-theme="light"] .btn,
html[data-theme="light"] a.btn {
  border-color: #bbb;
  background: #fff;
  color: #0a0a0a;
}
/* Need !important: .page a:hover was painting label black on black hover fill */
html[data-theme="light"] .btn:hover,
html[data-theme="light"] .btn:focus-visible,
html[data-theme="light"] a.btn:hover,
html[data-theme="light"] a.btn:focus-visible,
html[data-theme="light"] .page a.btn:hover,
html[data-theme="light"] .page a.btn:focus-visible {
  border-color: #0a0a0a !important;
  background: #0a0a0a !important;
  color: #fff !important;
}
html[data-theme="light"] .btn--primary,
html[data-theme="light"] a.btn--primary {
  border-color: #0a0a0a;
  background: #0a0a0a;
  color: #fff;
}
html[data-theme="light"] .btn--primary:hover,
html[data-theme="light"] .btn--primary:focus-visible,
html[data-theme="light"] a.btn--primary:hover,
html[data-theme="light"] a.btn--primary:focus-visible,
html[data-theme="light"] .page a.btn--primary:hover,
html[data-theme="light"] .page a.btn--primary:focus-visible {
  background: #fff !important;
  color: #0a0a0a !important;
  border-color: #0a0a0a !important;
}

html[data-theme="light"] .tow,
html[data-theme="light"] .feed-item,
html[data-theme="light"] .wait-form select,
html[data-theme="light"] .wait-form input {
  border-color: #ccc;
  background: #fff;
  color: #141414;
}
html[data-theme="light"] .tow .m,
html[data-theme="light"] .tow .plays,
html[data-theme="light"] .feed-item .when,
html[data-theme="light"] .wait-lead { color: #666; }

/* Player */
html[data-theme="light"] .ag-listen {
  --ag-muted: #666;
  --ag-line: #d4d4d4;
  --ag-soft: #333;
  --ag-panel: #ffffff;
  --ag-fg: #141414;
  --ag-row-active: #e8e8e8;
}
html[data-theme="light"] .ag-listen .ag-groups button {
  border-color: #ccc;
  background: #fff;
  color: #141414;
}
html[data-theme="light"] .ag-listen .ag-groups button:hover,
html[data-theme="light"] .ag-listen .ag-groups button:focus-visible { border-color: #666; }
html[data-theme="light"] .ag-listen .ag-groups button.is-active { border-color: #0a0a0a; }
html[data-theme="light"] .ag-listen .ag-groups img,
html[data-theme="light"] .ag-listen .ag-groups .ag-media-wrap { background: #eee; }
html[data-theme="light"] .ag-listen .ag-player {
  border-color: #d4d4d4;
  background: #fff;
}
html[data-theme="light"] .ag-listen .ag-now img[data-ag="cover"],
html[data-theme="light"] .ag-listen .ag-now__art > img,
html[data-theme="light"] .ag-listen .ag-now__art > .ag-media-wrap,
html[data-theme="light"] .ag-listen .t-art > img,
html[data-theme="light"] .ag-listen .t-art > .ag-media-wrap,
html[data-theme="light"] .ag-listen .ag-tracks img {
  border-color: #ccc;
  background: #eee;
}
html[data-theme="light"] .ag-listen .ag-btn {
  border-color: #bbb;
  color: #141414;
  background: #fff;
}
html[data-theme="light"] .ag-listen .ag-btn:hover,
html[data-theme="light"] .ag-listen .ag-btn:focus-visible {
  border-color: #0a0a0a;
  background: #0a0a0a;
  color: #fff;
}
html[data-theme="light"] .ag-listen .ag-btn--primary {
  border-color: #0a0a0a;
  background: #0a0a0a;
  color: #fff;
}
html[data-theme="light"] .ag-listen .ag-btn--primary:hover,
html[data-theme="light"] .ag-listen .ag-btn--primary:focus-visible {
  background: #fff;
  color: #0a0a0a;
}
html[data-theme="light"] .ag-listen .ag-btn.is-on {
  border-color: #0a0a0a;
  background: #0a0a0a;
  color: #fff;
}
html[data-theme="light"] .ag-listen .ag-seek,
html[data-theme="light"] .ag-listen .ag-vol input { accent-color: #0a0a0a; }
html[data-theme="light"] .ag-listen input,
html[data-theme="light"] .ag-listen textarea {
  border-color: #ccc;
  background: #fff;
  color: #141414;
}
html[data-theme="light"] .ag-listen .ag-tracks .t-play { color: #141414; }
html[data-theme="light"] .ag-listen .ag-tracks .t-play:hover { color: #0a0a0a; }
html[data-theme="light"] .ag-listen .ag-tracks .t-play.is-active .t-title { color: #0a0a0a; }
html[data-theme="light"] .ag-listen .ag-tracks .t-fav,
html[data-theme="light"] .ag-listen .ag-tracks .t-lyrics { color: #555; }
html[data-theme="light"] .ag-listen .ag-tracks .t-fav:hover,
html[data-theme="light"] .ag-listen .ag-tracks .t-lyrics:hover { color: #111; }
html[data-theme="light"] .ag-listen .ag-tracks .t-fav.is-on,
html[data-theme="light"] .ag-listen .ag-btn[data-ag="fav"].is-on {
  color: #e11d2e !important;
  filter: none !important;
}
html[data-theme="light"] .ag-listen .ag-more,
html[data-theme="light"] .ag-listen .ag-more a { color: #666; }
html[data-theme="light"] .ag-listen .ag-more a:hover { color: #0a0a0a; }
html[data-theme="light"] .ag-listen .ag-section { border-color: #d4d4d4; }
html[data-theme="light"] .ag-listen .ag-section h2 { color: #888; }
html[data-theme="light"] .ag-listen .flash { border-color: #ccc; color: #333; }
html[data-theme="light"] .ag-listen .msgs li { border-color: #e0e0e0; }
html[data-theme="light"] .ag-listen .ag-inkload { background: rgba(242, 242, 242, .75); }
html[data-theme="light"] .ag-listen .ag-inkload .ag-ink-circle {
  border-color: rgba(20, 20, 20, .18);
  border-top-color: #222;
  border-right-color: #666;
}
html[data-theme="light"] .ag-listen a.ag-album-link:hover,
html[data-theme="light"] .ag-listen a.ag-now__meta:hover {
  color: #0a0a0a;
  text-decoration-color: #888;
}

/* Toggle + mini */
html[data-theme="light"] .ag-theme-toggle {
  border-color: #bbb;
  background: #f2f2f2;
  color: #0a0a0a;
  box-shadow: 0 2px 10px rgba(0, 0, 0, .12);
}
html[data-theme="light"] .ag-theme-toggle:hover,
html[data-theme="light"] .ag-theme-toggle:focus-visible {
  border-color: #0a0a0a;
}
html[data-theme="light"] .ag-mini {
  background: rgba(242, 242, 242, .97);
  border-top-color: #bbb;
  color: #0a0a0a;
}
html[data-theme="light"] .ag-mini__txt [data-mini="title"] { color: #0a0a0a; }
html[data-theme="light"] .ag-mini__txt [data-mini="meta"] { color: #666; }
html[data-theme="light"] .ag-mini .ag-btn {
  border-color: #bbb; color: #0a0a0a; background: #fff;
}
html[data-theme="light"] .ag-mini .ag-btn--primary {
  border-color: #0a0a0a; background: #0a0a0a; color: #fff;
}
/* Real covers stay natural; only mark.png stub is inverted (black lines). */
html[data-theme="light"] .ag-mini img:not([src*="mark.png"]) {
  filter: none !important;
}
html[data-theme="light"] .ag-mini__art {
  border-color: #ccc;
  background: #eee;
}
html[data-theme="light"] .ag-mini__art:has(img[src*="mark.png"]),
html[data-theme="light"] .ag-mini__art.is-ph {
  background: #f0f0f0;
}
html[data-theme="light"] .ag-mini img[src*="mark.png"] {
  filter: invert(1) contrast(1.25) !important;
  background: transparent !important;
}

/* Lyrics page bits */
html[data-theme="light"] .lyrics,
html[data-theme="light"] .similar { color: #141414; border-color: #d4d4d4; }
html[data-theme="light"] .lyrics .empty,
html[data-theme="light"] .similar h2 { color: #555; }
html[data-theme="light"] .similar a { color: #141414; }
html[data-theme="light"] .similar a:hover,
html[data-theme="light"] .similar a.is-now { color: #0a0a0a; }

/*
 * Prose / about / privacy: dark pages use #ccc text — on light that vanishes.
 * Force readable near-black for body copy; muted only for secondary labels.
 */
html[data-theme="light"] .body,
html[data-theme="light"] .body p,
html[data-theme="light"] .content p,
html[data-theme="light"] .lede,
html[data-theme="light"] .sub,
html[data-theme="light"] .lead,
html[data-theme="light"] main p,
html[data-theme="light"] .page p,
html[data-theme="light"] .page li {
  color: #1a1a1a !important;
}
html[data-theme="light"] .empty,
html[data-theme="light"] .note,
html[data-theme="light"] .hint {
  color: #444 !important;
}
html[data-theme="light"] .nav a,
html[data-theme="light"] .back,
html[data-theme="light"] .footer a,
html[data-theme="light"] .foot a {
  color: #333 !important;
}
html[data-theme="light"] .nav a:hover,
html[data-theme="light"] .back:hover,
html[data-theme="light"] .footer a:hover,
html[data-theme="light"] .foot a:hover {
  color: #0a0a0a !important;
}
html[data-theme="light"] .footer,
html[data-theme="light"] .foot {
  color: #444 !important;
}
html[data-theme="light"] .tagline,
html[data-theme="light"] .listen-block__title {
  color: #555 !important;
}
html[data-theme="light"] .btn--ghost {
  background: #fff !important;
  color: #0a0a0a !important;
  border-color: #bbb !important;
}
html[data-theme="light"] .btn--ghost:hover {
  border-color: #0a0a0a !important;
  color: #0a0a0a !important;
  background: #ececec !important;
}
html[data-theme="light"] .actions .btn:hover {
  background: #0a0a0a !important;
  color: #fff !important;
  border-color: #0a0a0a !important;
}
html[data-theme="light"] .privacy p,
html[data-theme="light"] .privacy li,
html[data-theme="light"] article p,
html[data-theme="light"] article li {
  color: #1a1a1a !important;
}
html[data-theme="light"] a:not(.btn) {
  color: #222;
}
html[data-theme="light"] .page a:hover:not(.btn) {
  color: #0a0a0a;
}
