/* ============================================================
   AniJar — Cyber HUD themes
   Night City / Edgerunners / Arasaka / Netrunner
   ============================================================ */

html:is([data-theme="nightcity"], [data-theme="edgerunners"], [data-theme="arasaka"], [data-theme="netrunner"]) body {
  background-color: var(--bg-main);
  background-image:
    linear-gradient(rgba(255, 255, 255, 0.025) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255, 255, 255, 0.025) 1px, transparent 1px),
    radial-gradient(circle at 50% 0%, color-mix(in srgb, var(--accent-primary) 12%, transparent), transparent 55%);
  background-size: 42px 42px, 42px 42px, 100% 100%;
  background-attachment: fixed;
}

html:is([data-theme="nightcity"], [data-theme="edgerunners"], [data-theme="arasaka"], [data-theme="netrunner"]) body::after {
  content: "";
  position: fixed;
  inset: 0;
  z-index: 9999;
  pointer-events: none;
  background: repeating-linear-gradient(
    0deg,
    rgba(0, 0, 0, 0.16) 0,
    rgba(0, 0, 0, 0.16) 1px,
    transparent 1px,
    transparent 3px
  );
  opacity: 0.22;
}

html:is([data-theme="nightcity"], [data-theme="edgerunners"], [data-theme="arasaka"], [data-theme="netrunner"]) ::selection {
  background: var(--accent-primary);
  color: var(--accent-contrast);
}

/* ---------- Navbar HUD ---------- */
html:is([data-theme="nightcity"], [data-theme="edgerunners"], [data-theme="arasaka"], [data-theme="netrunner"]) .navbar {
  border-bottom: 1px solid var(--border-subtle);
  box-shadow: 0 1px 0 rgba(255, 255, 255, 0.04), 0 0 22px color-mix(in srgb, var(--accent-primary) 12%, transparent);
}

html:is([data-theme="nightcity"], [data-theme="edgerunners"], [data-theme="arasaka"], [data-theme="netrunner"]) .navbar::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: -1px;
  height: 1px;
  background: linear-gradient(90deg, transparent, var(--accent-primary), transparent);
  opacity: 0.65;
}

html:is([data-theme="nightcity"], [data-theme="edgerunners"], [data-theme="arasaka"], [data-theme="netrunner"]) .logo-text {
  color: var(--accent-primary);
  font-family: var(--font-family);
  font-weight: 800;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  text-shadow: 0 0 10px color-mix(in srgb, var(--accent-primary) 55%, transparent);
}

html:is([data-theme="nightcity"], [data-theme="edgerunners"], [data-theme="arasaka"], [data-theme="netrunner"]) .nav-btn {
  border: 1px solid transparent;
  border-radius: 2px;
  color: var(--text-muted);
  font-family: var(--font-family);
  font-size: 10.5px;
  font-weight: 700;
  letter-spacing: 0.7px;
  text-transform: uppercase;
}

html:is([data-theme="nightcity"], [data-theme="edgerunners"], [data-theme="arasaka"], [data-theme="netrunner"]) .nav-btn:hover {
  background: color-mix(in srgb, var(--accent-primary) 9%, transparent);
  border-color: var(--border-subtle);
  color: var(--accent-primary);
}

html:is([data-theme="nightcity"], [data-theme="edgerunners"], [data-theme="arasaka"], [data-theme="netrunner"]) .nav-btn.active {
  background: var(--accent-primary);
  border-color: var(--accent-primary);
  color: var(--accent-contrast);
  box-shadow: 0 0 16px color-mix(in srgb, var(--accent-primary) 32%, transparent);
}

html:is([data-theme="nightcity"], [data-theme="edgerunners"], [data-theme="arasaka"], [data-theme="netrunner"]) .search-box input {
  background: #020507;
  border: 1px solid var(--border-subtle);
  border-radius: 2px;
  color: var(--text-main);
  font-family: var(--font-family);
  font-size: 12px;
  letter-spacing: 0.2px;
}

html:is([data-theme="nightcity"], [data-theme="edgerunners"], [data-theme="arasaka"], [data-theme="netrunner"]) .search-box input::placeholder {
  color: var(--text-dim);
  text-transform: uppercase;
  letter-spacing: 0.4px;
}

html:is([data-theme="nightcity"], [data-theme="edgerunners"], [data-theme="arasaka"], [data-theme="netrunner"]) .search-box input:focus {
  border-color: var(--accent-primary);
  box-shadow: 0 0 0 1px var(--accent-primary), 0 0 16px color-mix(in srgb, var(--accent-primary) 22%, transparent);
}

html:is([data-theme="nightcity"], [data-theme="edgerunners"], [data-theme="arasaka"], [data-theme="netrunner"]) .search-btn,
html:is([data-theme="nightcity"], [data-theme="edgerunners"], [data-theme="arasaka"], [data-theme="netrunner"]) .search-clear-btn {
  color: var(--accent-primary);
}

html:is([data-theme="nightcity"], [data-theme="edgerunners"], [data-theme="arasaka"], [data-theme="netrunner"]) .icon-btn,
html:is([data-theme="nightcity"], [data-theme="edgerunners"], [data-theme="arasaka"], [data-theme="netrunner"]) .user-menu-btn {
  background: #03080b;
  border: 1px solid var(--border-subtle);
  border-radius: 2px;
  color: var(--accent-primary);
}

html:is([data-theme="nightcity"], [data-theme="edgerunners"], [data-theme="arasaka"], [data-theme="netrunner"]) .icon-btn:hover,
html:is([data-theme="nightcity"], [data-theme="edgerunners"], [data-theme="arasaka"], [data-theme="netrunner"]) .user-menu-btn:hover {
  background: color-mix(in srgb, var(--accent-primary) 12%, #03080b);
  border-color: var(--accent-primary);
  color: var(--accent-primary);
}

html:is([data-theme="nightcity"], [data-theme="edgerunners"], [data-theme="arasaka"], [data-theme="netrunner"]) .user-menu-avatar {
  background: #03080b;
  border-color: var(--border-subtle);
  color: var(--accent-primary);
}

/* ---------- Headings / HUD labels ---------- */
html:is([data-theme="nightcity"], [data-theme="edgerunners"], [data-theme="arasaka"], [data-theme="netrunner"]) h1,
html:is([data-theme="nightcity"], [data-theme="edgerunners"], [data-theme="arasaka"], [data-theme="netrunner"]) h2,
html:is([data-theme="nightcity"], [data-theme="edgerunners"], [data-theme="arasaka"], [data-theme="netrunner"]) h3,
html:is([data-theme="nightcity"], [data-theme="edgerunners"], [data-theme="arasaka"], [data-theme="netrunner"]) h4 {
  color: var(--text-main);
  font-family: var(--font-display);
  letter-spacing: 0.8px;
  text-transform: uppercase;
}

html:is([data-theme="nightcity"], [data-theme="edgerunners"], [data-theme="arasaka"], [data-theme="netrunner"]) .section-header h2::before,
html:is([data-theme="nightcity"], [data-theme="edgerunners"], [data-theme="arasaka"], [data-theme="netrunner"]) .page-header-simple h1::before,
html:is([data-theme="nightcity"], [data-theme="edgerunners"], [data-theme="arasaka"], [data-theme="netrunner"]) .profile-lists-header h2::before {
  content: "// ";
  color: var(--accent-primary);
  letter-spacing: 0;
}

html:is([data-theme="nightcity"], [data-theme="edgerunners"], [data-theme="arasaka"], [data-theme="netrunner"]) .card-title,
html:is([data-theme="nightcity"], [data-theme="edgerunners"], [data-theme="arasaka"], [data-theme="netrunner"]) .continue-title,
html:is([data-theme="nightcity"], [data-theme="edgerunners"], [data-theme="arasaka"], [data-theme="netrunner"]) .history-item-title,
html:is([data-theme="nightcity"], [data-theme="edgerunners"], [data-theme="arasaka"], [data-theme="netrunner"]) .related-title,
html:is([data-theme="nightcity"], [data-theme="edgerunners"], [data-theme="arasaka"], [data-theme="netrunner"]) .character-name,
html:is([data-theme="nightcity"], [data-theme="edgerunners"], [data-theme="arasaka"], [data-theme="netrunner"]) .modal-header h3,
html:is([data-theme="nightcity"], [data-theme="edgerunners"], [data-theme="arasaka"], [data-theme="netrunner"]) .settings-section h3,
html:is([data-theme="nightcity"], [data-theme="edgerunners"], [data-theme="arasaka"], [data-theme="netrunner"]) #detail-title-ru,
html:is([data-theme="nightcity"], [data-theme="edgerunners"], [data-theme="arasaka"], [data-theme="netrunner"]) #crumb-title,
html:is([data-theme="nightcity"], [data-theme="edgerunners"], [data-theme="arasaka"], [data-theme="netrunner"]) .info-val {
  color: var(--text-main);
}

html:is([data-theme="nightcity"], [data-theme="edgerunners"], [data-theme="arasaka"], [data-theme="netrunner"]) .card-meta,
html:is([data-theme="nightcity"], [data-theme="edgerunners"], [data-theme="arasaka"], [data-theme="netrunner"]) .title-original,
html:is([data-theme="nightcity"], [data-theme="edgerunners"], [data-theme="arasaka"], [data-theme="netrunner"]) .info-label,
html:is([data-theme="nightcity"], [data-theme="edgerunners"], [data-theme="arasaka"], [data-theme="netrunner"]) .character-name-orig,
html:is([data-theme="nightcity"], [data-theme="edgerunners"], [data-theme="arasaka"], [data-theme="netrunner"]) .character-desc,
html:is([data-theme="nightcity"], [data-theme="edgerunners"], [data-theme="arasaka"], [data-theme="netrunner"]) .history-item-meta,
html:is([data-theme="nightcity"], [data-theme="edgerunners"], [data-theme="arasaka"], [data-theme="netrunner"]) .continue-ep,
html:is([data-theme="nightcity"], [data-theme="edgerunners"], [data-theme="arasaka"], [data-theme="netrunner"]) .related-rel-badge,
html:is([data-theme="nightcity"], [data-theme="edgerunners"], [data-theme="arasaka"], [data-theme="netrunner"]) .player-breadcrumbs,
html:is([data-theme="nightcity"], [data-theme="edgerunners"], [data-theme="arasaka"], [data-theme="netrunner"]) #crumb-ep,
html:is([data-theme="nightcity"], [data-theme="edgerunners"], [data-theme="arasaka"], [data-theme="netrunner"]) .synopsis-box p {
  color: var(--text-muted);
}

/* ---------- HUD panels and cards ---------- */
html:is([data-theme="nightcity"], [data-theme="edgerunners"], [data-theme="arasaka"], [data-theme="netrunner"]) .anime-card,
html:is([data-theme="nightcity"], [data-theme="edgerunners"], [data-theme="arasaka"], [data-theme="netrunner"]) .continue-card,
html:is([data-theme="nightcity"], [data-theme="edgerunners"], [data-theme="arasaka"], [data-theme="netrunner"]) .history-item-card,
html:is([data-theme="nightcity"], [data-theme="edgerunners"], [data-theme="arasaka"], [data-theme="netrunner"]) .character-card,
html:is([data-theme="nightcity"], [data-theme="edgerunners"], [data-theme="arasaka"], [data-theme="netrunner"]) .related-card-item,
html:is([data-theme="nightcity"], [data-theme="edgerunners"], [data-theme="arasaka"], [data-theme="netrunner"]) .theme-card,
html:is([data-theme="nightcity"], [data-theme="edgerunners"], [data-theme="arasaka"], [data-theme="netrunner"]) .profile-list,
html:is([data-theme="nightcity"], [data-theme="edgerunners"], [data-theme="arasaka"], [data-theme="netrunner"]) .profile-stats,
html:is([data-theme="nightcity"], [data-theme="edgerunners"], [data-theme="arasaka"], [data-theme="netrunner"]) .profile-guest-menu,
html:is([data-theme="nightcity"], [data-theme="edgerunners"], [data-theme="arasaka"], [data-theme="netrunner"]) .settings-section,
html:is([data-theme="nightcity"], [data-theme="edgerunners"], [data-theme="arasaka"], [data-theme="netrunner"]) .shiki-user-card,
html:is([data-theme="nightcity"], [data-theme="edgerunners"], [data-theme="arasaka"], [data-theme="netrunner"]) .dub-selector-card,
html:is([data-theme="nightcity"], [data-theme="edgerunners"], [data-theme="arasaka"], [data-theme="netrunner"]) .episodes-card,
html:is([data-theme="nightcity"], [data-theme="edgerunners"], [data-theme="arasaka"], [data-theme="netrunner"]) .related-card,
html:is([data-theme="nightcity"], [data-theme="edgerunners"], [data-theme="arasaka"], [data-theme="netrunner"]) .characters-card,
html:is([data-theme="nightcity"], [data-theme="edgerunners"], [data-theme="arasaka"], [data-theme="netrunner"]) .player-controls-row,
html:is([data-theme="nightcity"], [data-theme="edgerunners"], [data-theme="arasaka"], [data-theme="netrunner"]) .shiki-sync-bar,
html:is([data-theme="nightcity"], [data-theme="edgerunners"], [data-theme="arasaka"], [data-theme="netrunner"]) .player-source-switch,
html:is([data-theme="nightcity"], [data-theme="edgerunners"], [data-theme="arasaka"], [data-theme="netrunner"]) .modal-card {
  background: var(--bg-card);
  border: 1px solid var(--border-subtle);
  border-radius: 2px;
  clip-path: polygon(0 0, calc(100% - 10px) 0, 100% 10px, 100% 100%, 10px 100%, 0 calc(100% - 10px));
  box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--accent-primary) 5%, transparent),
              0 0 20px color-mix(in srgb, var(--accent-primary) 7%, transparent);
}

html:is([data-theme="nightcity"], [data-theme="edgerunners"], [data-theme="arasaka"], [data-theme="netrunner"]) .anime-card:hover,
html:is([data-theme="nightcity"], [data-theme="edgerunners"], [data-theme="arasaka"], [data-theme="netrunner"]) .continue-card:hover,
html:is([data-theme="nightcity"], [data-theme="edgerunners"], [data-theme="arasaka"], [data-theme="netrunner"]) .history-item-card:hover,
html:is([data-theme="nightcity"], [data-theme="edgerunners"], [data-theme="arasaka"], [data-theme="netrunner"]) .character-card:hover,
html:is([data-theme="nightcity"], [data-theme="edgerunners"], [data-theme="arasaka"], [data-theme="netrunner"]) .related-card-item:hover,
html:is([data-theme="nightcity"], [data-theme="edgerunners"], [data-theme="arasaka"], [data-theme="netrunner"]) .theme-card:hover {
  background: var(--bg-card-hover);
  border-color: var(--accent-primary);
  box-shadow: 0 0 0 1px var(--accent-primary), 0 0 22px color-mix(in srgb, var(--accent-primary) 24%, transparent);
}

html:is([data-theme="nightcity"], [data-theme="edgerunners"], [data-theme="arasaka"], [data-theme="netrunner"]) .shelf-section {
  background: color-mix(in srgb, var(--bg-card) 88%, transparent);
  border: 1px solid var(--border-subtle);
  border-radius: 2px;
}

html:is([data-theme="nightcity"], [data-theme="edgerunners"], [data-theme="arasaka"], [data-theme="netrunner"]) .continue-card {
  background: var(--bg-card);
}

html:is([data-theme="nightcity"], [data-theme="edgerunners"], [data-theme="arasaka"], [data-theme="netrunner"]) .card-poster-wrap {
  background: #010304;
}

/* corner ticks on cards */
html:is([data-theme="nightcity"], [data-theme="edgerunners"], [data-theme="arasaka"], [data-theme="netrunner"]) .anime-card::before,
html:is([data-theme="nightcity"], [data-theme="edgerunners"], [data-theme="arasaka"], [data-theme="netrunner"]) .continue-card::before,
html:is([data-theme="nightcity"], [data-theme="edgerunners"], [data-theme="arasaka"], [data-theme="netrunner"]) .theme-card::before {
  content: "";
  position: absolute;
  top: 5px;
  left: 5px;
  width: 9px;
  height: 9px;
  border-top: 1px solid var(--accent-primary);
  border-left: 1px solid var(--accent-primary);
  opacity: 0.8;
  z-index: 3;
  pointer-events: none;
}

/* ---------- Controls ---------- */
html:is([data-theme="nightcity"], [data-theme="edgerunners"], [data-theme="arasaka"], [data-theme="netrunner"]) input,
html:is([data-theme="nightcity"], [data-theme="edgerunners"], [data-theme="arasaka"], [data-theme="netrunner"]) textarea,
html:is([data-theme="nightcity"], [data-theme="edgerunners"], [data-theme="arasaka"], [data-theme="netrunner"]) select {
  background: var(--bg-input);
  border: 1px solid var(--border-subtle);
  border-radius: 2px;
  color: var(--text-main);
  font-family: var(--font-family);
}

html:is([data-theme="nightcity"], [data-theme="edgerunners"], [data-theme="arasaka"], [data-theme="netrunner"]) input::placeholder,
html:is([data-theme="nightcity"], [data-theme="edgerunners"], [data-theme="arasaka"], [data-theme="netrunner"]) textarea::placeholder {
  color: var(--text-dim);
}

html:is([data-theme="nightcity"], [data-theme="edgerunners"], [data-theme="arasaka"], [data-theme="netrunner"]) .btn-ctrl,
html:is([data-theme="nightcity"], [data-theme="edgerunners"], [data-theme="arasaka"], [data-theme="netrunner"]) .btn-skip-quick,
html:is([data-theme="nightcity"], [data-theme="edgerunners"], [data-theme="arasaka"], [data-theme="netrunner"]) .season-tab-btn,
html:is([data-theme="nightcity"], [data-theme="edgerunners"], [data-theme="arasaka"], [data-theme="netrunner"]) .ep-btn,
html:is([data-theme="nightcity"], [data-theme="edgerunners"], [data-theme="arasaka"], [data-theme="netrunner"]) .dub-pill,
html:is([data-theme="nightcity"], [data-theme="edgerunners"], [data-theme="arasaka"], [data-theme="netrunner"]) .source-btn {
  background: #04090c;
  border: 1px solid var(--border-subtle);
  border-radius: 2px;
  color: var(--text-main);
  font-family: var(--font-family);
  font-size: 11px;
  letter-spacing: 0.3px;
}

html:is([data-theme="nightcity"], [data-theme="edgerunners"], [data-theme="arasaka"], [data-theme="netrunner"]) .btn-ctrl:hover,
html:is([data-theme="nightcity"], [data-theme="edgerunners"], [data-theme="arasaka"], [data-theme="netrunner"]) .btn-skip-quick:hover,
html:is([data-theme="nightcity"], [data-theme="edgerunners"], [data-theme="arasaka"], [data-theme="netrunner"]) .season-tab-btn:hover,
html:is([data-theme="nightcity"], [data-theme="edgerunners"], [data-theme="arasaka"], [data-theme="netrunner"]) .ep-btn:hover,
html:is([data-theme="nightcity"], [data-theme="edgerunners"], [data-theme="arasaka"], [data-theme="netrunner"]) .dub-pill:hover,
html:is([data-theme="nightcity"], [data-theme="edgerunners"], [data-theme="arasaka"], [data-theme="netrunner"]) .source-btn:hover {
  background: color-mix(in srgb, var(--accent-primary) 10%, #04090c);
  border-color: var(--accent-primary);
  color: var(--accent-primary);
}

html:is([data-theme="nightcity"], [data-theme="edgerunners"], [data-theme="arasaka"], [data-theme="netrunner"]) .nav-btn.active,
html:is([data-theme="nightcity"], [data-theme="edgerunners"], [data-theme="arasaka"], [data-theme="netrunner"]) .source-btn.active,
html:is([data-theme="nightcity"], [data-theme="edgerunners"], [data-theme="arasaka"], [data-theme="netrunner"]) .season-tab-btn.active,
html:is([data-theme="nightcity"], [data-theme="edgerunners"], [data-theme="arasaka"], [data-theme="netrunner"]) .ep-btn.active,
html:is([data-theme="nightcity"], [data-theme="edgerunners"], [data-theme="arasaka"], [data-theme="netrunner"]) .dub-pill.active,
html:is([data-theme="nightcity"], [data-theme="edgerunners"], [data-theme="arasaka"], [data-theme="netrunner"]) .btn-primary {
  background: var(--accent-primary);
  border-color: var(--accent-primary);
  border-radius: 2px;
  color: var(--accent-contrast);
  box-shadow: 0 0 16px color-mix(in srgb, var(--accent-primary) 25%, transparent);
  font-family: var(--font-family);
  font-weight: 800;
  letter-spacing: 0.5px;
  text-transform: uppercase;
}

html:is([data-theme="nightcity"], [data-theme="edgerunners"], [data-theme="arasaka"], [data-theme="netrunner"]) .btn-primary:hover {
  background: var(--accent-primary-hover);
  border-color: var(--accent-primary-hover);
}

/* ---------- Menus, modals, toasts ---------- */
html:is([data-theme="nightcity"], [data-theme="edgerunners"], [data-theme="arasaka"], [data-theme="netrunner"]) .user-menu-dropdown {
  background: #03080a;
  border: 1px solid var(--accent-primary);
  border-radius: 2px;
  clip-path: polygon(0 0, calc(100% - 8px) 0, 100% 8px, 100% 100%, 8px 100%, 0 calc(100% - 8px));
}

html:is([data-theme="nightcity"], [data-theme="edgerunners"], [data-theme="arasaka"], [data-theme="netrunner"]) .user-menu-item {
  color: var(--text-main);
  font-family: var(--font-family);
  font-size: 11px;
  letter-spacing: 0.4px;
  text-transform: uppercase;
}

html:is([data-theme="nightcity"], [data-theme="edgerunners"], [data-theme="arasaka"], [data-theme="netrunner"]) .user-menu-item:hover {
  background: color-mix(in srgb, var(--accent-primary) 12%, transparent);
  color: var(--accent-primary);
}

html:is([data-theme="nightcity"], [data-theme="edgerunners"], [data-theme="arasaka"], [data-theme="netrunner"]) .user-menu-divider {
  background: var(--border-subtle);
}

html:is([data-theme="nightcity"], [data-theme="edgerunners"], [data-theme="arasaka"], [data-theme="netrunner"]) .modal-close {
  color: var(--accent-primary);
}

html:is([data-theme="nightcity"], [data-theme="edgerunners"], [data-theme="arasaka"], [data-theme="netrunner"]) .modal-close:hover {
  color: var(--text-main);
}

html:is([data-theme="nightcity"], [data-theme="edgerunners"], [data-theme="arasaka"], [data-theme="netrunner"]) .toast {
  background: #03080a;
  border: 1px solid var(--accent-primary);
  border-radius: 2px;
  color: var(--text-main);
  box-shadow: 0 0 18px color-mix(in srgb, var(--accent-primary) 20%, transparent);
  font-family: var(--font-family);
  font-size: 11px;
  letter-spacing: 0.2px;
}

html:is([data-theme="nightcity"], [data-theme="edgerunners"], [data-theme="arasaka"], [data-theme="netrunner"]) .player-status-banner,
html:is([data-theme="nightcity"], [data-theme="edgerunners"], [data-theme="arasaka"], [data-theme="netrunner"]) .opening-skip-banner,
html:is([data-theme="nightcity"], [data-theme="edgerunners"], [data-theme="arasaka"], [data-theme="netrunner"]) .ending-skip-banner,
html:is([data-theme="nightcity"], [data-theme="edgerunners"], [data-theme="arasaka"], [data-theme="netrunner"]) .filler-skip-banner {
  background: #03080a;
  color: var(--text-main);
  border: 1px solid var(--border-subtle);
  border-radius: 2px;
}

html:is([data-theme="nightcity"], [data-theme="edgerunners"], [data-theme="arasaka"], [data-theme="netrunner"]) .settings-hint,
html:is([data-theme="nightcity"], [data-theme="edgerunners"], [data-theme="arasaka"], [data-theme="netrunner"]) .settings-section p,
html:is([data-theme="nightcity"], [data-theme="edgerunners"], [data-theme="arasaka"], [data-theme="netrunner"]) .setting-checkbox-row span,
html:is([data-theme="nightcity"], [data-theme="edgerunners"], [data-theme="arasaka"], [data-theme="netrunner"]) .detail-synopsis {
  color: var(--text-muted);
}

html:is([data-theme="nightcity"], [data-theme="edgerunners"], [data-theme="arasaka"], [data-theme="netrunner"]) .setting-checkbox-row input {
  accent-color: var(--accent-primary);
}

/* ---------- Profile / theme picker ---------- */
html:is([data-theme="nightcity"], [data-theme="edgerunners"], [data-theme="arasaka"], [data-theme="netrunner"]) .profile-avatar {
  border-color: var(--accent-primary);
  box-shadow: 0 0 20px color-mix(in srgb, var(--accent-primary) 22%, transparent);
}

html:is([data-theme="nightcity"], [data-theme="edgerunners"], [data-theme="arasaka"], [data-theme="netrunner"]) .profile-list-count {
  background: #03080a;
  border-color: var(--border-subtle);
  border-radius: 2px;
  color: var(--accent-primary);
  font-family: var(--font-family);
}

html:is([data-theme="nightcity"], [data-theme="edgerunners"], [data-theme="arasaka"], [data-theme="netrunner"]) .profile-list-head:hover {
  background: color-mix(in srgb, var(--accent-primary) 7%, transparent);
}

html:is([data-theme="nightcity"], [data-theme="edgerunners"], [data-theme="arasaka"], [data-theme="netrunner"]) .profile-row {
  font-family: var(--font-family);
}

html:is([data-theme="nightcity"], [data-theme="edgerunners"], [data-theme="arasaka"], [data-theme="netrunner"]) .profile-row:hover {
  background: color-mix(in srgb, var(--accent-primary) 6%, transparent);
}

html:is([data-theme="nightcity"], [data-theme="edgerunners"], [data-theme="arasaka"], [data-theme="netrunner"]) .theme-preview {
  background: #020507;
  border: 1px solid var(--border-subtle);
  border-radius: 2px;
}

html:is([data-theme="nightcity"], [data-theme="edgerunners"], [data-theme="arasaka"], [data-theme="netrunner"]) .tp-bar {
  background: #04090c;
  border-color: var(--border-subtle);
  border-radius: 2px;
}

html:is([data-theme="nightcity"], [data-theme="edgerunners"], [data-theme="arasaka"], [data-theme="netrunner"]) .tp-hero {
  background: var(--bg-card);
  border-color: var(--border-subtle);
  border-radius: 2px;
}

html:is([data-theme="nightcity"], [data-theme="edgerunners"], [data-theme="arasaka"], [data-theme="netrunner"]) .tp-grid i {
  background: #071016;
  border-color: var(--border-subtle);
  border-radius: 1px;
}

/* theme card previews in the picker (independent of active theme) */
.theme-preview[data-theme="nightcity"] {
  background: #05070a !important;
  border-color: rgba(245, 230, 66, 0.45) !important;
}
.theme-preview[data-theme="edgerunners"] {
  background: #040a0e !important;
  border-color: rgba(34, 230, 255, 0.45) !important;
}
.theme-preview[data-theme="arasaka"] {
  background: #0a0406 !important;
  border-color: rgba(255, 46, 77, 0.45) !important;
}
.theme-preview[data-theme="netrunner"] {
  background: #020805 !important;
  border-color: rgba(61, 255, 122, 0.45) !important;
}
