/* ============================================================
   AniJar — pastel gradient themes
   Lime Sky / Sakura Dawn / Kyoto Garden / Cloudy Sky
   ============================================================ */

html[data-theme="limesky"] body {
  background:
    radial-gradient(circle at 15% 16%, rgba(255, 255, 255, 0.48), transparent 22%),
    radial-gradient(circle at 84% 10%, rgba(186, 230, 253, 0.72), transparent 28%),
    radial-gradient(circle at 72% 74%, rgba(190, 242, 100, 0.5), transparent 32%),
    linear-gradient(135deg, #7dd3fc 0%, #86efac 46%, #bef264 100%);
  background-attachment: fixed;
}

html[data-theme="sakura"] body {
  background:
    radial-gradient(circle at 18% 14%, rgba(255, 255, 255, 0.5), transparent 24%),
    radial-gradient(circle at 80% 10%, rgba(251, 207, 232, 0.72), transparent 28%),
    radial-gradient(circle at 76% 78%, rgba(196, 181, 253, 0.6), transparent 32%),
    linear-gradient(135deg, #fbcfe8 0%, #f9a8d4 44%, #c4b5fd 100%);
  background-attachment: fixed;
}

html[data-theme="kyoto"] body {
  background:
    radial-gradient(circle at 16% 15%, rgba(255, 255, 255, 0.45), transparent 24%),
    radial-gradient(circle at 82% 12%, rgba(134, 239, 172, 0.72), transparent 28%),
    radial-gradient(circle at 72% 76%, rgba(16, 185, 129, 0.38), transparent 32%),
    linear-gradient(135deg, #86efac 0%, #4ade80 44%, #22c55e 100%);
  background-attachment: fixed;
}

html[data-theme="cloudy"] body {
  background:
    radial-gradient(circle at 15% 15%, rgba(255, 255, 255, 0.55), transparent 24%),
    radial-gradient(circle at 82% 10%, rgba(186, 230, 253, 0.78), transparent 28%),
    radial-gradient(circle at 72% 78%, rgba(94, 234, 212, 0.45), transparent 32%),
    linear-gradient(135deg, #bae6fd 0%, #7dd3fc 42%, #5eead4 100%);
  background-attachment: fixed;
}

html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) {
  color-scheme: light;
}

html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) ::selection {
  background: var(--accent-primary);
  color: var(--accent-contrast);
}

/* ---------- Navbar: coloured glass with white text ---------- */
html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) .navbar {
  border-bottom-color: rgba(255, 255, 255, 0.28);
  box-shadow: 0 8px 24px rgba(15, 23, 42, 0.1);
}

html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) .logo-text {
  color: #ffffff;
  text-shadow: 0 1px 8px rgba(0, 0, 0, 0.12);
}

html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) .nav-btn {
  color: rgba(255, 255, 255, 0.82);
}

html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) .nav-btn:hover,
html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) .nav-btn.active {
  color: #ffffff;
  background: var(--accent-primary);
}

html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) .icon-btn,
html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) .user-menu-btn {
  color: #ffffff;
  background: rgba(255, 255, 255, 0.18);
  border-color: rgba(255, 255, 255, 0.28);
}

html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) .icon-btn:hover,
html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) .user-menu-btn:hover {
  background: rgba(255, 255, 255, 0.28);
  color: #ffffff;
}

html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) .search-box {
  background: transparent;
  border: 0;
}

html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) .search-box input {
  color: #ffffff;
}

html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) .search-box input::placeholder {
  color: rgba(255, 255, 255, 0.8);
}

html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) .search-btn,
html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) .search-clear-btn {
  color: #ffffff;
  background: rgba(255, 255, 255, 0.16);
}

html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) .search-btn:hover,
html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) .search-clear-btn:hover {
  background: rgba(255, 255, 255, 0.28);
  color: #ffffff;
}

html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) .user-menu-avatar {
  background: rgba(255, 255, 255, 0.2);
  border-color: rgba(255, 255, 255, 0.35);
  color: #ffffff;
}

/* ---------- Typography ---------- */
html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) h1,
html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) h2,
html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) h3,
html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) h4,
html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) strong {
  color: var(--text-main);
}

html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) .card-title,
html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) .continue-title,
html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) .history-item-title,
html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) .related-title,
html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) .character-name,
html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) .modal-header h3,
html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) .settings-section h3,
html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) .page-header-simple h1,
html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) .empty-state h3,
html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) .image-result-title,
html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) #detail-title-ru,
html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) #crumb-title,
html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) .info-val {
  color: var(--text-main);
}

html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) .card-meta,
html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) .title-original,
html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) .info-label,
html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) .character-name-orig,
html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) .character-desc,
html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) .history-item-meta,
html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) .continue-ep,
html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) .related-rel-badge,
html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) .player-breadcrumbs,
html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) #crumb-ep {
  color: var(--text-muted);
}

html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) .synopsis-box p {
  color: var(--text-muted);
}

/* ---------- Glass surfaces ---------- */
html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) .anime-card,
html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) .continue-card,
html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) .history-item-card,
html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) .character-card,
html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) .related-card-item,
html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) .modal-card,
html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) .user-menu-dropdown,
html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) .theme-card,
html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) .profile-list,
html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) .profile-stats,
html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) .profile-guest-menu,
html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) .settings-section,
html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) .shiki-user-card,
html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) .dub-selector-card,
html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) .episodes-card,
html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) .related-card,
html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) .characters-card {
  background: var(--bg-card);
  border-color: var(--border-subtle);
  backdrop-filter: blur(18px);
  -webkit-backdrop-filter: blur(18px);
  box-shadow: 0 10px 30px rgba(15, 23, 42, 0.08);
}

html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) .anime-card:hover,
html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) .continue-card:hover,
html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) .history-item-card:hover,
html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) .character-card:hover,
html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) .related-card-item:hover {
  background: var(--bg-card-hover);
  border-color: var(--accent-primary);
}

html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) .shelf-section {
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.52), rgba(255, 255, 255, 0.22));
  border-color: var(--border-subtle);
}

html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) .continue-card {
  background: rgba(255, 255, 255, 0.76);
}

/* ---------- Inputs and controls ---------- */
html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) input,
html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) textarea,
html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) select,
html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) .search-box input {
  background: var(--bg-input);
  border-color: var(--border-subtle);
  color: var(--text-main);
}

html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) input::placeholder,
html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) textarea::placeholder {
  color: var(--text-dim);
}

html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) .icon-btn,
html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) .user-menu-btn,
html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) .btn-ctrl,
html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) .btn-skip-quick,
html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) .season-tab-btn,
html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) .ep-btn,
html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) .dub-pill,
html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) .source-btn {
  background: rgba(255, 255, 255, 0.48);
  border-color: var(--border-subtle);
  color: var(--text-main);
}

html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) .icon-btn:hover,
html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) .user-menu-btn:hover,
html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) .btn-ctrl:hover,
html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) .btn-skip-quick:hover,
html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) .season-tab-btn:hover,
html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) .ep-btn:hover,
html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) .dub-pill:hover,
html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) .source-btn:hover {
  background: rgba(255, 255, 255, 0.72);
  border-color: var(--accent-primary);
  color: var(--text-main);
}

html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) .nav-btn.active,
html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) .source-btn.active,
html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) .season-tab-btn.active,
html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) .ep-btn.active,
html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) .dub-pill.active {
  background: var(--accent-primary);
  border-color: var(--accent-primary);
  color: var(--accent-contrast);
  box-shadow: 0 0 0 1px color-mix(in srgb, var(--accent-primary) 22%, transparent);
}

html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) .toggle-control input:checked ~ .toggle-label {
  color: var(--text-main);
}

/* ---------- Menus, modals, toasts ---------- */
html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) .modal-card {
  background: rgba(255, 255, 255, 0.92);
}

html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) .user-menu-dropdown {
  background: rgba(255, 255, 255, 0.94);
}

html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) .user-menu-item {
  color: var(--text-main);
}

html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) .user-menu-item:hover {
  background: rgba(255, 255, 255, 0.7);
}

html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) .user-menu-divider {
  background: var(--border-subtle);
}

html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) .modal-close {
  color: var(--text-muted);
}

html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) .modal-close:hover {
  color: var(--text-main);
}

html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) .toast {
  background: rgba(255, 255, 255, 0.94);
  border-color: var(--border-subtle);
  color: var(--text-main);
  box-shadow: 0 12px 30px rgba(15, 23, 42, 0.14);
}

html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) .player-status-banner,
html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) .opening-skip-banner,
html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) .ending-skip-banner,
html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) .filler-skip-banner {
  background: rgba(255, 255, 255, 0.94);
  color: var(--text-main);
  border-color: var(--border-subtle);
}

html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) .player-controls-row,
html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) .shiki-sync-bar,
html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) .player-source-switch {
  background: rgba(255, 255, 255, 0.52);
  border-color: var(--border-subtle);
}

html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) .player-source-switch {
  background: rgba(255, 255, 255, 0.38);
}

html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) .settings-hint,
html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) .settings-section p,
html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) .setting-checkbox-row span,
html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) .detail-synopsis {
  color: var(--text-muted);
}

html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) .profile-edit-banner,
html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) .profile-edit-avatar,
html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) .profile-avatar {
  border-color: var(--border-subtle);
}

html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) .navbar .icon-btn,
html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) .navbar .user-menu-btn {
  background: rgba(255, 255, 255, 0.18);
  border-color: rgba(255, 255, 255, 0.28);
  color: #ffffff;
}

html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) .navbar .icon-btn,
html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) .navbar .user-menu-btn {
  width: 38px;
  height: 38px;
  padding: 0;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) .navbar .user-menu-btn {
  background: var(--accent-primary);
  border-color: rgba(255, 255, 255, 0.58);
  color: #ffffff;
}

html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) .navbar .user-menu-btn:hover {
  background: var(--accent-primary-hover);
  color: #ffffff;
}

html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) .navbar .search-box input {
  background: rgba(255, 255, 255, 0.94);
  border-color: rgba(255, 255, 255, 0.7);
  border-radius: 999px;
  color: var(--text-main);
}

html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) .navbar .search-box input:focus {
  background: #ffffff;
  color: var(--text-main);
}

html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) .navbar .search-box input::placeholder {
  color: var(--text-muted);
}

html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) .navbar .search-btn,
html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) .navbar .search-clear-btn {
  background: none;
  color: var(--text-muted);
}

html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) .navbar .search-btn:hover,
html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) .navbar .search-clear-btn:hover {
  background: none;
  color: var(--accent-primary);
}

html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) .user-menu-avatar {
  background: rgba(255, 255, 255, 0.94);
  border-color: rgba(255, 255, 255, 0.75);
  color: var(--accent-primary);
}

html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) #settings-modal .modal-body {
  padding: 18px;
}

html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) #settings-modal .settings-section {
  margin-bottom: 12px;
  padding: 14px 16px;
  background: rgba(255, 255, 255, 0.8);
  border: 1px solid var(--border-subtle);
  border-radius: 14px;
}

html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) #settings-modal .settings-section:last-child {
  margin-bottom: 0;
}

html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) .bm-tab:hover {
  background: rgba(255, 255, 255, 0.76);
  border-color: var(--accent-primary);
  color: var(--text-main);
}

html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) .bm-tab.active {
  background: var(--accent-primary);
  color: var(--accent-contrast);
}

html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) .bm-folder-btn:hover {
  color: var(--accent-contrast);
}

html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) .modal-close:hover {
  color: var(--text-main);
}

html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) .anime-card {
  padding: 0;
}

html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) .card-poster-wrap {
  margin: 0;
  padding: 0;
}

/* Some Shikimori posters contain a baked-in white frame. Crop the outer
   edge slightly so every poster reaches the card border consistently. */
html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) .card-poster {
  transform: scale(1.08);
}

html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) .anime-card:hover .card-poster {
  transform: scale(1.12);
}

/* ---------- Theme picker previews ---------- */
html[data-theme="limesky"] .theme-preview[data-theme="limesky"] {
  background: linear-gradient(135deg, #7dd3fc, #86efac 50%, #bef264);
}
html[data-theme="sakura"] .theme-preview[data-theme="sakura"] {
  background: linear-gradient(135deg, #fbcfe8, #f9a8d4 48%, #c4b5fd);
}
html[data-theme="kyoto"] .theme-preview[data-theme="kyoto"] {
  background: linear-gradient(135deg, #86efac, #4ade80 50%, #22c55e);
}
html[data-theme="cloudy"] .theme-preview[data-theme="cloudy"] {
  background: linear-gradient(135deg, #bae6fd, #7dd3fc 48%, #5eead4);
}

/* The previews above only apply when their own theme is active; make every
   card preview show its own gradient regardless of the current theme. */
.theme-preview[data-theme="limesky"] {
  background: linear-gradient(135deg, #7dd3fc, #86efac 50%, #bef264) !important;
}
.theme-preview[data-theme="sakura"] {
  background: linear-gradient(135deg, #fbcfe8, #f9a8d4 48%, #c4b5fd) !important;
}
.theme-preview[data-theme="kyoto"] {
  background: linear-gradient(135deg, #86efac, #4ade80 50%, #22c55e) !important;
}
.theme-preview[data-theme="cloudy"] {
  background: linear-gradient(135deg, #bae6fd, #7dd3fc 48%, #5eead4) !important;
}

/* ---------- Responsive tweaks ---------- */
@media (max-width: 768px) {
  html:is([data-theme="limesky"], [data-theme="sakura"], [data-theme="kyoto"], [data-theme="cloudy"]) .navbar {
    backdrop-filter: blur(18px);
  }
}
