:root {
  --bg: #0b0f14;
  --surface: #0d1219;
  --surface-2: #121923;
  --surface-3: #182131;
  --line: rgba(180, 205, 220, 0.14);
  --line-strong: rgba(180, 205, 220, 0.22);
  --text: #edf6f8;
  --muted: #9aa9b6;
  --muted-2: #71808f;
  --accent: #5eead4;
  --amber: #f59e0b;
  --rose: #f43f5e;
  --violet: #a78bfa;
  --green: #34d399;
  --shadow: 0 20px 70px rgba(0, 0, 0, 0.38);
  --radius: 8px;
  --radius-sm: 6px;
  --page-max: 1320px;
  --page-pad: clamp(22px, 5vw, 64px);
  font-family: "Inter", "Segoe UI", Arial, sans-serif;
}

* {
  box-sizing: border-box;
}

html {
  scroll-behavior: smooth;
}

body {
  margin: 0;
  background:
    linear-gradient(180deg, #0b0f14 0%, #070a0f 48%, #05070a 100%);
  color: var(--text);
  min-height: 100vh;
}

body,
button,
input,
textarea,
select {
  font: inherit;
}

/* Native select option contrast */
select {
  color: var(--text);
  background-color: var(--surface-2);
  color-scheme: dark;
}

select option,
select optgroup {
  color: #edf6f8;
  background-color: #121923;
}

select option:disabled {
  color: #71808f;
}

html.theme-light select {
  color: #111827;
  background-color: #ffffff;
  color-scheme: light;
}

html.theme-light select option,
html.theme-light select optgroup {
  color: #111827;
  background-color: #ffffff;
}

html.theme-light select option:disabled {
  color: #94a3b8;
}

a {
  color: inherit;
  text-decoration: none;
}

button,
a,
input,
select,
textarea {
  -webkit-tap-highlight-color: transparent;
}

img {
  max-width: 100%;
  display: block;
}

main {
  overflow: hidden;
}

main:has(.article-layout.has-jump-panel) {
  overflow: visible;
}

.site-header {
  position: sticky;
  top: 0;
  z-index: 50;
  min-height: 76px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  padding: 13px var(--page-pad);
  background:
    linear-gradient(180deg, rgba(11, 15, 20, 0.94), rgba(8, 11, 16, 0.9));
  border-bottom: 1px solid var(--line);
  backdrop-filter: blur(20px);
  box-shadow: 0 18px 46px rgba(0, 0, 0, 0.24);
}

.brand {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  min-width: 0;
  font-size: 18px;
  font-weight: 950;
}

.brand-mark {
  display: grid;
  place-items: center;
  width: 44px;
  height: 44px;
  flex: 0 0 44px;
  border-radius: var(--radius);
  overflow: hidden;
}

.brand-mark img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.brand-text {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  letter-spacing: 0;
  text-transform: uppercase;
}

.site-nav {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 6px;
  min-width: 0;
}

.site-nav > a,
.nav-menu > .nav-link,
.nav-admin-button,
.admin-sidebar-footer a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 42px;
  padding: 0 12px;
  border: 1px solid transparent;
  border-radius: var(--radius);
  color: var(--muted);
  background: transparent;
  cursor: pointer;
  font-size: 15px;
  font-weight: 750;
  line-height: 1;
  transition: color 160ms ease, border-color 160ms ease, background 160ms ease, box-shadow 160ms ease;
}

.site-nav > a:hover,
.nav-menu > .nav-link:hover,
.nav-admin-button:hover,
.site-nav > a:focus-visible,
.nav-menu > .nav-link:focus-visible,
.nav-admin-button:focus-visible {
  border-color: var(--line-strong);
  color: var(--text);
  background: rgba(255, 255, 255, 0.05);
  outline: none;
}

.nav-link.is-active {
  position: relative;
  color: #ffffff;
  border-color: rgba(244, 63, 94, 0.28);
  background: rgba(244, 63, 94, 0.08);
}

.nav-link.is-active::after {
  content: "";
  position: absolute;
  left: 12px;
  right: 12px;
  bottom: -14px;
  height: 2px;
  border-radius: 999px;
  background: #f43f5e;
  box-shadow: 0 0 18px rgba(244, 63, 94, 0.48);
}

.nav-link.is-active .nav-icon {
  color: #f43f5e;
}

.nav-icon {
  display: inline-grid;
  place-items: center;
  width: 19px;
  height: 19px;
  flex: 0 0 19px;
  color: currentColor;
}

.nav-icon svg {
  display: block;
  width: 100%;
  height: 100%;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.85;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.nav-menu {
  position: relative;
  display: inline-flex;
  align-items: center;
}

.nav-menu::after {
  content: "";
  position: absolute;
  left: -8px;
  right: -8px;
  top: 100%;
  height: 14px;
}

.nav-menu-panel {
  position: absolute;
  right: 0;
  top: calc(100% + 8px);
  min-width: 230px;
  padding: 8px;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background:
    linear-gradient(180deg, rgba(20, 28, 39, 0.98), rgba(10, 14, 20, 0.98));
  box-shadow: var(--shadow);
  display: none;
  z-index: 20;
}

.nav-menu:hover .nav-menu-panel,
.nav-menu:focus-within .nav-menu-panel {
  display: grid;
}

.nav-menu-panel a {
  display: grid;
  gap: 2px;
  min-height: 42px;
  padding: 9px 11px;
  border-radius: var(--radius-sm);
  color: #dce8f4;
}

.nav-menu-panel a:hover,
.nav-menu-panel a:focus-visible {
  color: #ffffff;
  background: rgba(244, 63, 94, 0.1);
  outline: none;
}

.nav-menu-game small {
  color: var(--muted-2);
  font-size: 11px;
  font-weight: 850;
  text-transform: uppercase;
}

.nav-admin-button .nav-icon-chevron {
  width: 16px;
  height: 16px;
}

.nav-toggle {
  display: none;
  width: 44px;
  height: 44px;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background: var(--surface);
  color: var(--text);
}

.nav-toggle span {
  display: block;
  width: 18px;
  height: 2px;
  border-radius: 2px;
  background: currentColor;
}

.site-search {
  position: relative;
  display: flex;
  align-items: center;
  width: clamp(180px, 17vw, 245px);
  min-width: 0;
  margin-left: 8px;
}

.site-search input {
  width: 100%;
  min-height: 42px;
  padding: 0 54px 0 40px;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  color: var(--text);
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.055), rgba(255, 255, 255, 0.025)),
    rgba(9, 13, 19, 0.82);
  outline: none;
}

.site-search .nav-icon-search {
  position: absolute;
  left: 13px;
  width: 18px;
  height: 18px;
  color: var(--muted-2);
  pointer-events: none;
}

.site-search kbd {
  position: absolute;
  right: 10px;
  display: inline-grid;
  place-items: center;
  min-width: 36px;
  min-height: 24px;
  padding: 0 7px;
  border: 1px solid rgba(148, 163, 184, 0.15);
  border-radius: 6px;
  color: var(--muted-2);
  background: rgba(255, 255, 255, 0.04);
  font-size: 11px;
  font-weight: 850;
}

.site-search input:focus {
  border-color: rgba(244, 63, 94, 0.55);
  background: rgba(255, 255, 255, 0.07);
}

.site-search:focus-within .nav-icon-search {
  color: #f43f5e;
}

.theme-toggle {
  display: inline-grid;
  place-items: center;
  width: 42px;
  height: 42px;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  color: #dce8f4;
  background: rgba(255, 255, 255, 0.035);
  cursor: pointer;
  transition: border-color 160ms ease, background 160ms ease, color 160ms ease;
}

.theme-toggle:hover,
.theme-toggle:focus-visible {
  border-color: rgba(244, 63, 94, 0.5);
  color: #ffffff;
  background: rgba(244, 63, 94, 0.1);
  outline: none;
}

.hero-shell {
  display: grid;
  grid-template-columns: minmax(0, 0.92fr) minmax(380px, 0.78fr);
  align-items: center;
  gap: clamp(34px, 6vw, 86px);
  width: min(var(--page-max), calc(100% - (var(--page-pad) * 2)));
  margin: 0 auto;
  padding: clamp(54px, 8vw, 98px) 0 clamp(42px, 7vw, 76px);
}

.hero-copy {
  display: flex;
  flex-direction: column;
  justify-content: center;
  max-width: 760px;
}

.hero-copy h1,
.game-hero h1,
.page-head h1,
.article-detail h1 {
  margin: 18px 0 18px;
  font-size: clamp(42px, 6vw, 82px);
  line-height: 0.97;
  letter-spacing: 0;
  overflow-wrap: anywhere;
}

.hero-copy p,
.game-hero p,
.page-head p,
.lead {
  margin: 0;
  color: var(--muted);
  font-size: clamp(17px, 2vw, 21px);
  line-height: 1.65;
  max-width: 720px;
}

.hero-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 28px;
}

.button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 44px;
  min-width: 118px;
  padding: 0 18px;
  border-radius: var(--radius);
  border: 1px solid var(--line);
  color: var(--text);
  background: rgba(255, 255, 255, 0.05);
  cursor: pointer;
  font-weight: 750;
  line-height: 1.1;
}

.button:hover,
.button:focus-visible {
  transform: translateY(-1px);
  outline: none;
  border-color: var(--line-strong);
}

.button-primary {
  border-color: rgba(94, 234, 212, 0.45);
  color: #061014;
  background: linear-gradient(135deg, var(--accent), #f7c66b);
}

.button-ghost {
  background: rgba(255, 255, 255, 0.045);
}

.hero-actions .button {
  min-height: 46px;
  min-width: 132px;
  padding: 10px 18px;
  border: 1px solid rgba(180, 205, 220, 0.16);
  border-radius: var(--radius-sm);
  color: #ffffff;
  background: rgba(39, 48, 64, 0.9);
  font-weight: 900;
  text-align: center;
  text-transform: none;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.04);
}

.hero-actions .button:hover,
.hero-actions .button:focus-visible {
  border-color: rgba(255, 255, 255, 0.24);
  background: rgba(50, 61, 80, 0.96);
}

.hero-actions .button-primary {
  border-color: rgba(244, 63, 94, 0.75);
  color: #ffffff;
  background: #e91546;
  box-shadow: 0 12px 26px rgba(233, 21, 70, 0.22);
}

.hero-actions .button-primary:hover,
.hero-actions .button-primary:focus-visible {
  color: #ffffff;
  border-color: rgba(244, 63, 94, 0.75);
  background: #e91546;
  box-shadow: 0 12px 26px rgba(233, 21, 70, 0.22);
}

.game-art::after {
  content: "";
  position: absolute;
  inset: 0;
  background-image:
    linear-gradient(115deg, transparent 0 58%, rgba(255, 255, 255, 0.08) 58% 60%, transparent 60%);
  pointer-events: none;
}

.game-art::after {
  z-index: 1;
}

.signal-deck-head span,
.section-heading span,
.feature-band span,
.article-kicker,
.admin-topbar span,
.skill-item span,
.metric-card span {
  color: var(--accent);
  font-size: 12px;
  font-weight: 850;
  letter-spacing: 0;
  text-transform: uppercase;
}

.hero-signal-deck {
  position: relative;
  min-height: 430px;
  padding: 18px;
  border: 1px solid rgba(180, 205, 220, 0.16);
  border-radius: var(--radius);
  background:
    radial-gradient(circle at 50% 44%, rgba(94, 234, 212, 0.12), transparent 12rem),
    radial-gradient(circle at 84% 12%, rgba(245, 158, 11, 0.08), transparent 13rem),
    linear-gradient(145deg, rgba(16, 23, 32, 0.92), rgba(7, 11, 15, 0.92));
  box-shadow: var(--shadow);
  overflow: hidden;
}

.hero-signal-deck::before {
  content: "";
  position: absolute;
  inset: 56px 24px 24px;
  border: 1px solid rgba(94, 234, 212, 0.12);
  border-radius: 50%;
  transform: rotate(-8deg);
  pointer-events: none;
}

.hero-signal-deck::after {
  content: "";
  position: absolute;
  left: 50%;
  top: 52%;
  width: 84%;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(94, 234, 212, 0.24), transparent);
  transform: translate(-50%, -50%) rotate(-18deg);
  pointer-events: none;
}

.signal-deck-head {
  position: relative;
  z-index: 2;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 16px;
}

.signal-deck-head strong {
  color: var(--amber);
  font-size: 13px;
}

.signal-core {
  position: absolute;
  left: 50%;
  top: 49%;
  z-index: 1;
  display: grid;
  place-items: center;
  width: 92px;
  height: 92px;
  border: 1px solid rgba(94, 234, 212, 0.28);
  border-radius: 50%;
  background: rgba(7, 9, 13, 0.84);
  box-shadow: 0 0 48px rgba(94, 234, 212, 0.12);
  transform: translate(-50%, -50%);
}

.signal-core span {
  display: grid;
  place-items: center;
  width: 50px;
  height: 50px;
  border-radius: var(--radius);
  color: #061014;
  background: linear-gradient(135deg, var(--accent), #f7c66b);
  font-weight: 950;
}

.signal-lanes {
  position: relative;
  z-index: 3;
  display: grid;
  gap: 13px;
}

.signal-lane {
  display: flex;
  align-items: center;
  gap: 12px;
  min-height: 78px;
  padding: 12px;
  border: 1px solid color-mix(in srgb, var(--game-accent) 34%, var(--line));
  border-radius: var(--radius);
  background:
    linear-gradient(90deg, color-mix(in srgb, var(--game-accent) 18%, transparent), rgba(255, 255, 255, 0.035)),
    rgba(255, 255, 255, 0.035);
  backdrop-filter: blur(10px);
  transition: transform 160ms ease, border-color 160ms ease, background 160ms ease;
}

.signal-lane:hover,
.signal-lane:focus-visible {
  transform: translateX(4px);
  outline: none;
  border-color: color-mix(in srgb, var(--game-accent) 68%, white 4%);
}

.signal-lane.lane-2 {
  margin-left: clamp(18px, 6vw, 68px);
}

.signal-lane.lane-3 {
  margin-left: clamp(36px, 10vw, 126px);
}

.lane-mark {
  display: grid;
  place-items: center;
  width: 48px;
  height: 48px;
  flex: 0 0 48px;
  border-radius: var(--radius);
  color: #061014;
  background: var(--game-accent);
  font-weight: 950;
}

.lane-copy {
  display: grid;
  gap: 4px;
  min-width: 0;
}

.lane-copy strong,
.lane-copy small,
.signal-lane em {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.lane-copy small {
  color: var(--muted);
}

.signal-lane em {
  margin-left: auto;
  color: var(--amber);
  font-size: 13px;
  font-style: normal;
  font-weight: 850;
}

.home-command-center {
  position: relative;
  display: grid;
  grid-template-columns: minmax(360px, 1fr) minmax(480px, 0.92fr);
  align-items: center;
  gap: clamp(22px, 3.8vw, 54px);
  width: min(var(--page-max), calc(100% - (var(--page-pad) * 2)));
  margin: clamp(18px, 3vw, 36px) auto clamp(22px, 4vw, 46px);
  min-height: clamp(238px, 28vw, 330px);
  padding: clamp(24px, 3.4vw, 38px) clamp(24px, 3.4vw, 34px);
}

.home-ui-concept {
  isolation: isolate;
}

.home-command-center::before {
  content: "";
  position: absolute;
  left: -14px;
  right: -14px;
  top: 50%;
  height: 2px;
  background:
    radial-gradient(circle at 0 50%, #ff4058 0 5px, transparent 6px),
    radial-gradient(circle at 100% 50%, #ff4058 0 5px, transparent 6px);
  pointer-events: none;
}

.home-command-backdrop {
  position: absolute;
  inset: 0;
  z-index: -1;
  border: 1px solid rgba(180, 205, 220, 0.18);
  border-radius: var(--radius);
  background:
    linear-gradient(90deg, rgba(9, 13, 19, 0.98) 0%, rgba(9, 13, 19, 0.84) 40%, rgba(9, 13, 19, 0.68) 66%, rgba(9, 13, 19, 0.96) 100%),
    linear-gradient(180deg, rgba(255, 255, 255, 0.032), rgba(255, 255, 255, 0.01)),
    rgba(7, 10, 14, 0.92);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.035), 0 26px 70px rgba(0, 0, 0, 0.22);
  overflow: hidden;
}

.home-command-backdrop-image {
  position: absolute;
  right: 20%;
  top: 50%;
  width: min(520px, 46%);
  height: 118%;
  object-fit: cover;
  opacity: 0.32;
  filter: saturate(0.9) contrast(1.14);
  transform: translateY(-50%);
  mask-image: linear-gradient(90deg, transparent 0%, black 20%, black 78%, transparent 100%);
}

.home-command-backdrop::before,
.home-command-backdrop::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
}

.home-command-backdrop::before {
  background:
    linear-gradient(90deg, transparent 0%, rgba(244, 63, 94, 0.08) 48%, transparent 78%),
    linear-gradient(180deg, transparent, rgba(180, 205, 220, 0.04), transparent);
  opacity: 0.9;
}

.home-command-backdrop::after {
  left: 53%;
  width: 1px;
  background: linear-gradient(180deg, transparent, rgba(180, 205, 220, 0.14), transparent);
}

.home-hero-copy {
  max-width: 800px;
  align-self: center;
}

.home-hero-copy h1 {
  margin: 10px 0 10px;
  color: #f4fbff;
  font-size: clamp(46px, 6vw, 76px);
  line-height: 0.96;
  letter-spacing: 0;
  text-transform: uppercase;
  text-shadow: 0 18px 44px rgba(0, 0, 0, 0.4);
}

.home-hero-copy p {
  max-width: 540px;
  margin: 0;
  color: #bfd5e8;
  font-size: clamp(14px, 1.25vw, 17px);
  line-height: 1.58;
}

.home-command-center .hero-actions {
  margin-top: 20px;
}

.home-command-center .button {
  min-height: 42px;
  min-width: 150px;
  border-radius: 7px;
}

.home-command-center .button-primary {
  color: #ffffff;
  background: linear-gradient(135deg, #f43f5e, #ff6379);
  box-shadow: 0 16px 28px rgba(244, 63, 94, 0.2);
}

.home-command-center .button-ghost {
  color: #ffffff;
  background: rgba(7, 10, 14, 0.62);
  border-color: rgba(180, 205, 220, 0.22);
}

.home-pulse-card,
.home-live-panel,
.home-spotlight-card,
.home-mock-panel {
  border: 1px solid rgba(180, 205, 220, 0.16);
  border-radius: var(--radius);
  background:
    linear-gradient(145deg, rgba(244, 63, 94, 0.085), transparent 46%),
    linear-gradient(180deg, rgba(255, 255, 255, 0.035), rgba(255, 255, 255, 0.014)),
    rgba(13, 18, 25, 0.86);
  box-shadow: 0 22px 60px rgba(0, 0, 0, 0.28), inset 0 1px 0 rgba(255, 255, 255, 0.035);
  backdrop-filter: blur(14px);
}

.home-pulse-card {
  padding: 18px;
  align-self: center;
  border-color: rgba(180, 205, 220, 0.18);
  background: rgba(5, 8, 12, 0.58);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.035);
}

.home-pulse-head,
.home-panel-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  margin-bottom: 14px;
}

.home-pulse-head span,
.home-panel-head span {
  color: #36d9ff;
  font-size: 15px;
  font-weight: 950;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.home-pulse-head strong,
.home-panel-head a {
  color: #bdd7ff;
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
}

.home-panel-head a:hover,
.home-panel-head a:focus-visible {
  color: #ffffff;
  outline: none;
}

.home-pulse-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
}

.home-pulse-grid a {
  display: grid;
  justify-items: center;
  align-content: center;
  gap: 6px;
  min-height: 142px;
  padding: 14px 10px;
  border: 1px solid rgba(180, 205, 220, 0.15);
  border-radius: var(--radius);
  color: #ffffff;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.045), rgba(255, 255, 255, 0.015)),
    rgba(13, 18, 25, 0.8);
  transition: transform 160ms ease, border-color 160ms ease, background 160ms ease;
}

.home-pulse-grid a:hover,
.home-pulse-grid a:focus-visible {
  border-color: rgba(244, 63, 94, 0.48);
  background: rgba(244, 63, 94, 0.08);
  outline: none;
  transform: translateY(-2px);
}

.home-pulse-grid small {
  order: 3;
  color: #ffffff;
  font-size: 13px;
  font-weight: 900;
  text-align: center;
}

.home-pulse-grid strong {
  order: 2;
  color: #ffffff;
  font-size: 32px;
  line-height: 0.95;
}

.home-pulse-grid em {
  order: 4;
  color: #aab6c5;
  font-size: 12px;
  font-style: normal;
}

.home-pulse-grid em::before {
  content: "";
  display: inline-block;
  width: 6px;
  height: 6px;
  margin-right: 6px;
  border-radius: 999px;
  background: #f43f5e;
  vertical-align: 1px;
}

.home-pulse-grid .nav-icon {
  order: 1;
  width: 34px;
  height: 34px;
  color: #f43f5e;
}

.home-spotlight-section {
  padding-top: clamp(24px, 4vw, 48px);
}

.home-spotlight-card {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  min-height: 410px;
  overflow: hidden;
}

.home-spotlight-card.has-rail {
  grid-template-columns: minmax(0, 1fr) minmax(270px, 320px);
}

.home-spotlight-stage {
  position: relative;
  display: grid;
  min-width: 0;
  min-height: 410px;
  background: rgba(6, 10, 15, 0.84);
}

.home-spotlight-slide {
  position: absolute;
  inset: 0;
  display: grid;
  grid-template-columns: minmax(300px, 0.82fr) minmax(0, 1fr);
  grid-template-rows: minmax(410px, 1fr) auto;
  min-height: 100%;
  opacity: 0;
  pointer-events: none;
  transform: translateX(12px);
  transition: opacity 220ms ease, transform 220ms ease, visibility 220ms ease;
  visibility: hidden;
}

.home-spotlight-slide.is-active {
  position: relative;
  opacity: 1;
  pointer-events: auto;
  transform: translateX(0);
  visibility: visible;
}

.home-spotlight-media {
  position: relative;
  display: grid;
  place-items: center;
  min-height: 410px;
  overflow: hidden;
  background:
    radial-gradient(circle at 50% 35%, color-mix(in srgb, var(--game-accent) 26%, transparent), transparent 38%),
    rgba(255, 255, 255, 0.035);
}

.home-spotlight-media::after {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(90deg, rgba(5, 7, 10, 0.1), rgba(5, 7, 10, 0.68)),
    linear-gradient(180deg, transparent, rgba(5, 7, 10, 0.38));
}

.home-spotlight-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.home-spotlight-media > span {
  display: grid;
  place-items: center;
  width: 104px;
  height: 104px;
  border-radius: var(--radius);
  color: #071014;
  background: var(--game-accent);
  font-size: 46px;
  font-weight: 950;
}

.home-spotlight-copy {
  display: grid;
  align-content: center;
  gap: 18px;
  padding: clamp(24px, 4vw, 44px);
}

.home-spotlight-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
}

.home-spotlight-copy h2 {
  margin: 0;
  color: #ffffff;
  font-size: clamp(34px, 4vw, 58px);
  line-height: 1;
}

.home-spotlight-copy p {
  max-width: 620px;
  margin: 0;
  color: #c4d8f5;
  font-size: 17px;
  line-height: 1.65;
}

.home-spotlight-facts {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.home-spotlight-facts span {
  display: grid;
  gap: 6px;
  padding: 13px;
  border: 1px solid rgba(180, 205, 220, 0.14);
  border-radius: var(--radius);
  background: rgba(255, 255, 255, 0.035);
}

.home-spotlight-facts small {
  color: #bdd7ff;
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
}

.home-spotlight-facts strong {
  min-width: 0;
  color: #ffffff;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.home-spotlight-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.home-spotlight-actions a,
.home-game-filters button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 40px;
  padding: 0 14px;
  border: 1px solid rgba(180, 205, 220, 0.18);
  border-radius: var(--radius);
  color: #dce8f4;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.055), rgba(255, 255, 255, 0.025)),
    rgba(8, 12, 18, 0.72);
  font-weight: 900;
  cursor: pointer;
}

.home-spotlight-actions a:hover,
.home-spotlight-actions a:focus-visible,
.home-game-filters button:hover,
.home-game-filters button:focus-visible {
  border-color: rgba(244, 63, 94, 0.55);
  color: #ffffff;
  background: rgba(244, 63, 94, 0.12);
  outline: none;
}

.home-spotlight-content-dock {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  padding: 12px;
  border-top: 1px solid rgba(180, 205, 220, 0.13);
  background:
    linear-gradient(90deg, rgba(54, 217, 255, 0.055), transparent 38%, rgba(244, 63, 94, 0.045)),
    rgba(4, 8, 13, 0.82);
}

.home-spotlight-pill {
  display: grid;
  grid-template-columns: 44px minmax(0, 1fr);
  align-items: center;
  gap: 10px;
  min-width: 0;
  min-height: 58px;
  padding: 7px 9px;
  border: 1px solid rgba(180, 205, 220, 0.14);
  border-radius: 8px;
  color: #dce8f4;
  background:
    linear-gradient(135deg, color-mix(in srgb, var(--game-accent) 11%, transparent), rgba(255, 255, 255, 0.018)),
    rgba(255, 255, 255, 0.032);
  transition: transform 160ms ease, border-color 160ms ease, background 160ms ease;
}

.home-spotlight-pill:hover,
.home-spotlight-pill:focus-visible {
  border-color: color-mix(in srgb, var(--game-accent) 55%, rgba(244, 63, 94, 0.3));
  background:
    linear-gradient(135deg, color-mix(in srgb, var(--game-accent) 18%, transparent), rgba(244, 63, 94, 0.045)),
    rgba(255, 255, 255, 0.045);
  outline: none;
  transform: translateY(-1px);
}

.home-spotlight-pill-icon {
  display: grid;
  place-items: center;
  width: 44px;
  height: 44px;
  overflow: hidden;
  border: 1px solid rgba(180, 205, 220, 0.14);
  border-radius: 8px;
  background:
    radial-gradient(circle at 50% 35%, color-mix(in srgb, var(--game-accent) 30%, transparent), transparent 62%),
    rgba(8, 14, 20, 0.92);
}

.home-spotlight-pill-icon img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.home-spotlight-pill-icon .nav-icon {
  width: 21px;
  height: 21px;
  color: #36d9ff;
}

.home-spotlight-pill-copy {
  display: grid;
  gap: 3px;
  min-width: 0;
}

.home-spotlight-pill-copy em,
.home-spotlight-pill-copy strong {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.home-spotlight-pill-copy em {
  color: #36d9ff;
  font-size: 10px;
  font-style: normal;
  font-weight: 950;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.home-spotlight-pill-copy strong {
  color: #ffffff;
  font-size: 13px;
  font-weight: 900;
  line-height: 1.18;
}

.home-spotlight-rail {
  position: relative;
  display: grid;
  grid-template-rows: auto 1fr auto;
  gap: 12px;
  min-width: 0;
  padding: 16px;
  border-left: 1px solid rgba(180, 205, 220, 0.13);
  background:
    radial-gradient(circle at 100% 0%, rgba(244, 63, 94, 0.1), transparent 36%),
    rgba(8, 13, 19, 0.86);
}

.home-spotlight-rail-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.home-spotlight-rail-head span {
  color: #36d9ff;
  font-size: 12px;
  font-weight: 950;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.home-spotlight-rail-head small {
  color: #9fb1c1;
  font-size: 11px;
}

.home-spotlight-rail-list {
  display: grid;
  align-content: start;
  gap: 10px;
  min-width: 0;
}

.home-spotlight-rail-item {
  display: grid;
  grid-template-columns: 72px minmax(0, 1fr);
  align-items: center;
  gap: 10px;
  width: 100%;
  min-height: 72px;
  padding: 8px;
  border: 1px solid rgba(180, 205, 220, 0.14);
  border-radius: var(--radius);
  color: #dce8f4;
  background:
    linear-gradient(90deg, color-mix(in srgb, var(--game-accent) 11%, transparent), transparent),
    rgba(255, 255, 255, 0.032);
  cursor: pointer;
  text-align: left;
  transition: transform 160ms ease, border-color 160ms ease, background 160ms ease;
}

.home-spotlight-rail-item:hover,
.home-spotlight-rail-item:focus-visible,
.home-spotlight-rail-item.is-active {
  border-color: color-mix(in srgb, var(--game-accent) 62%, rgba(244, 63, 94, 0.32));
  background:
    linear-gradient(90deg, color-mix(in srgb, var(--game-accent) 22%, transparent), rgba(244, 63, 94, 0.04)),
    rgba(255, 255, 255, 0.05);
  outline: none;
}

.home-spotlight-rail-item:hover,
.home-spotlight-rail-item:focus-visible {
  transform: translateX(-2px);
}

.home-spotlight-rail-item.is-active {
  box-shadow: inset 3px 0 0 #f43f5e;
}

.home-spotlight-rail-thumb {
  position: relative;
  display: grid;
  place-items: center;
  width: 72px;
  height: 52px;
  overflow: hidden;
  border: 1px solid rgba(180, 205, 220, 0.16);
  border-radius: 8px;
  background:
    radial-gradient(circle at 50% 35%, color-mix(in srgb, var(--game-accent) 36%, transparent), transparent 58%),
    rgba(13, 20, 28, 0.9);
}

.home-spotlight-rail-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.home-spotlight-rail-thumb > span {
  color: #071014;
  font-size: 18px;
  font-weight: 950;
}

.home-spotlight-rail-copy {
  display: grid;
  gap: 4px;
  min-width: 0;
}

.home-spotlight-rail-copy strong,
.home-spotlight-rail-copy small {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.home-spotlight-rail-copy strong {
  color: #ffffff;
  font-size: 14px;
  font-weight: 950;
}

.home-spotlight-rail-copy small {
  color: #98aaba;
  font-size: 11px;
}

.home-spotlight-controls {
  display: grid;
  grid-template-columns: 38px minmax(0, 1fr) 38px;
  gap: 8px;
}

.home-spotlight-controls button {
  display: inline-grid;
  place-items: center;
  min-height: 36px;
  border: 1px solid rgba(180, 205, 220, 0.16);
  border-radius: 8px;
  color: #ffffff;
  background: rgba(255, 255, 255, 0.035);
  cursor: pointer;
}

.home-spotlight-controls button:hover,
.home-spotlight-controls button:focus-visible {
  border-color: rgba(244, 63, 94, 0.55);
  background: rgba(244, 63, 94, 0.1);
  outline: none;
}

.home-spotlight-controls .nav-icon {
  width: 18px;
  height: 18px;
}

.home-spotlight-controls [data-home-spotlight-prev] svg {
  transform: rotate(90deg);
}

.home-spotlight-controls [data-home-spotlight-next] svg {
  transform: rotate(-90deg);
}

.home-spotlight-controls [data-home-spotlight-toggle] {
  color: #bdd7ff;
  font-size: 12px;
  font-weight: 900;
}

.home-live-grid {
  display: grid;
  grid-template-columns: minmax(0, 0.95fr) minmax(340px, 0.72fr);
  gap: 18px;
}

.home-live-panel {
  padding: clamp(16px, 2.4vw, 22px);
}

.home-redeem-list {
  display: grid;
  gap: 10px;
}

.home-redeem-list .reward-code-card {
  min-height: 92px;
}

.home-update-feed {
  display: grid;
  gap: 10px;
}

.home-update-item {
  position: relative;
  display: grid;
  gap: 5px;
  padding: 13px 13px 13px 18px;
  border: 1px solid rgba(180, 205, 220, 0.13);
  border-radius: var(--radius);
  background: rgba(255, 255, 255, 0.035);
}

.home-update-item::before {
  content: "";
  position: absolute;
  left: 0;
  top: 12px;
  bottom: 12px;
  width: 3px;
  border-radius: 999px;
  background: #f43f5e;
}

.home-update-item:hover,
.home-update-item:focus-visible {
  border-color: rgba(244, 63, 94, 0.46);
  background: rgba(244, 63, 94, 0.08);
  outline: none;
}

.home-update-item span {
  color: #f43f5e;
  font-size: 11px;
  font-weight: 950;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.home-update-item strong {
  color: #ffffff;
  line-height: 1.24;
}

.home-update-item small {
  color: var(--muted);
}

.home-database-section,
.home-recently-updated {
  padding-top: clamp(10px, 2vw, 24px);
  padding-bottom: clamp(10px, 2vw, 24px);
}

.home-showcase-panel {
  position: relative;
  padding: 16px;
  border-radius: var(--radius);
  background:
    linear-gradient(180deg, rgba(13, 22, 31, 0.72), rgba(7, 11, 16, 0.92)),
    rgba(6, 10, 15, 0.94);
  overflow: visible;
}

.home-showcase-panel::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;
  background:
    radial-gradient(circle at 10% 0%, rgba(54, 217, 255, 0.1), transparent 32%),
    linear-gradient(90deg, transparent, rgba(244, 63, 94, 0.06), transparent);
  opacity: 0.75;
  pointer-events: none;
}

.home-showcase-head {
  position: relative;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 10px;
}

.home-showcase-head > span {
  color: #36d9ff;
  font-size: 16px;
  font-weight: 950;
  letter-spacing: 0.02em;
  text-transform: uppercase;
  text-shadow: 0 0 22px rgba(54, 217, 255, 0.14);
}

.home-game-filters {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  gap: 12px;
  margin: 0;
}

.home-game-filters button {
  min-height: 29px;
  padding: 0 18px;
  border-radius: 6px;
  color: #d9e7f2;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.045), rgba(255, 255, 255, 0.012)),
    rgba(9, 14, 21, 0.88);
  box-shadow: none;
  font-size: 12px;
}

.home-game-filters button.is-active {
  border-color: rgba(244, 63, 94, 0.78);
  color: #ffffff;
  background: linear-gradient(135deg, #ef1747, #ff5866);
  box-shadow: 0 12px 26px rgba(244, 63, 94, 0.2);
}

.home-game-showcase-grid {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 8px;
  overflow: visible;
  padding-bottom: 1px;
}

.home-database-card {
  min-height: 144px;
  border-color: rgba(180, 205, 220, 0.18);
  border-radius: 7px;
  background: rgba(9, 14, 21, 0.92);
  box-shadow: none;
}

.home-database-card:hover,
.home-database-card:focus-within {
  transform: translateY(-2px);
  border-color: color-mix(in srgb, var(--game-accent) 55%, rgba(180, 205, 220, 0.22));
  background: rgba(12, 18, 27, 0.96);
}

.home-game-card-link {
  display: grid;
  grid-template-rows: 88px 56px;
  min-height: 144px;
  color: inherit;
}

.home-game-card-media {
  position: relative;
  display: grid;
  place-items: center;
  overflow: hidden;
  background:
    linear-gradient(135deg, color-mix(in srgb, var(--game-accent) 36%, transparent), rgba(5, 9, 14, 0.25)),
    rgba(12, 18, 27, 0.92);
}

.home-game-card-media::after {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(180deg, rgba(2, 4, 8, 0.04), rgba(4, 7, 11, 0.46)),
    linear-gradient(90deg, rgba(4, 8, 13, 0.2), transparent 46%, rgba(4, 8, 13, 0.14));
  pointer-events: none;
}

.home-game-card-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transform: scale(1.02);
  transition: transform 180ms ease, filter 180ms ease;
}

.home-database-card:hover .home-game-card-media img,
.home-database-card:focus-within .home-game-card-media img {
  filter: saturate(1.08) contrast(1.04);
  transform: scale(1.06);
}

.home-game-card-media > span:not(.game-catalog-pills) {
  position: relative;
  z-index: 1;
  display: grid;
  place-items: center;
  width: 50px;
  height: 50px;
  border: 1px solid rgba(255, 255, 255, 0.22);
  border-radius: 8px;
  color: #071014;
  background: var(--game-accent);
  font-weight: 950;
}

.home-game-card-copy {
  position: relative;
  display: grid;
  align-content: start;
  gap: 3px;
  min-width: 0;
  overflow: hidden;
  padding: 8px 38px 7px 12px;
}

.home-game-card-copy strong,
.home-game-card-copy small {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.home-game-card-copy strong {
  display: block;
  color: #ffffff;
  padding: 1px 0 2px;
  font-size: 15px;
  font-weight: 950;
  line-height: 1.22;
}

.home-game-card-copy small {
  color: #9eacbb;
  font-size: 12px;
  line-height: 1.22;
}

.home-card-arrow {
  position: absolute;
  right: 12px;
  top: 50%;
  display: inline-grid;
  place-items: center;
  color: #ffffff;
  transform: translateY(-50%);
}

.home-card-arrow .nav-icon {
  width: 18px;
  height: 18px;
}

.home-card-arrow .nav-icon svg {
  transform: rotate(-90deg);
}

.home-game-card.is-hidden-by-filter {
  display: none;
}

.home-game-empty {
  position: relative;
  z-index: 1;
  margin-top: 14px;
}

.home-recent-strip {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 10px;
}

.home-recent-card {
  position: relative;
  display: grid;
  grid-template-columns: 45px minmax(0, 1fr) 20px;
  align-items: center;
  gap: 11px;
  min-height: 50px;
  padding: 8px 12px 8px 10px;
  border: 1px solid rgba(180, 205, 220, 0.16);
  border-radius: 7px;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.045), rgba(255, 255, 255, 0.015)),
    rgba(10, 15, 22, 0.88);
}

.home-recent-card:hover,
.home-recent-card:focus-visible {
  border-color: rgba(244, 63, 94, 0.46);
  background:
    linear-gradient(180deg, rgba(244, 63, 94, 0.1), rgba(255, 255, 255, 0.02)),
    rgba(12, 18, 26, 0.94);
  outline: none;
}

.home-recent-icon {
  display: grid;
  place-items: center;
  width: 36px;
  height: 36px;
  border: 1px solid rgba(54, 217, 255, 0.18);
  border-radius: 7px;
  color: #d9fff9;
  background:
    linear-gradient(135deg, rgba(54, 217, 255, 0.1), rgba(244, 63, 94, 0.06)),
    rgba(9, 16, 22, 0.92);
}

.home-recent-icon .nav-icon {
  width: 20px;
  height: 20px;
  color: #36d9ff;
}

.home-recent-icon-guide .nav-icon,
.home-recent-icon-article .nav-icon {
  color: #4da3ff;
}

.home-recent-icon-pilot .nav-icon,
.home-recent-icon-character .nav-icon {
  color: #f5f7fb;
}

.home-recent-icon-game .nav-icon {
  color: #a78bfa;
}

.home-recent-icon-text {
  color: #dff8ff;
  font-size: 13px;
  font-weight: 950;
}

.home-recent-copy {
  display: grid;
  gap: 2px;
  min-width: 0;
}

.home-recent-copy em,
.home-recent-copy strong,
.home-recent-copy small {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.home-recent-copy em {
  color: #ffffff;
  font-size: 12px;
  font-style: normal;
  font-weight: 900;
}

.home-recent-copy strong {
  color: #dce8f4;
  font-size: 13px;
  font-weight: 800;
}

.home-recent-copy small {
  color: #8fa3b5;
  font-size: 11px;
}

.section {
  width: min(var(--page-max), calc(100% - (var(--page-pad) * 2)));
  margin: 0 auto;
  padding: clamp(38px, 6vw, 72px) 0;
}

.section.home-spotlight-section,
.section.home-live-grid,
.section.home-database-section,
.section.home-recently-updated,
.section.home-blog-section,
.section.home-guides-section,
.section.feature-band {
  padding-top: clamp(14px, 2vw, 28px);
  padding-bottom: clamp(14px, 2vw, 28px);
}

.section.home-spotlight-section {
  padding-top: clamp(20px, 3vw, 36px);
  padding-bottom: clamp(10px, 1.5vw, 20px);
}

.section.home-live-grid {
  padding-top: clamp(12px, 1.6vw, 22px);
  padding-bottom: clamp(10px, 1.5vw, 20px);
}

.section.home-database-section,
.section.home-recently-updated {
  padding-top: clamp(8px, 1.2vw, 16px);
  padding-bottom: clamp(8px, 1.2vw, 16px);
}

.section.home-blog-section {
  padding-top: clamp(18px, 2.2vw, 30px);
}

.section.home-guides-section {
  padding-top: clamp(10px, 1.4vw, 18px);
}

.section-heading {
  margin-bottom: 22px;
}

.home-section-heading {
  display: grid;
  gap: 10px;
  justify-items: center;
  margin-bottom: 30px;
  text-align: center;
}

.home-section-heading > span {
  color: #bdd7ff;
  font-size: 14px;
  font-weight: 900;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.home-section-title-row {
  display: grid;
  grid-template-columns: minmax(28px, 1fr) minmax(0, auto) minmax(28px, 1fr);
  gap: 16px;
  align-items: center;
  width: 100%;
}

.home-section-title-row::before,
.home-section-title-row::after {
  content: "";
  height: 3px;
  background: linear-gradient(90deg, transparent, rgba(180, 205, 220, 0.28));
}

.home-section-title-row::after {
  background: linear-gradient(90deg, rgba(180, 205, 220, 0.28), transparent);
}

.home-section-title-row h2 {
  min-width: 0;
  margin: 0;
  color: #ffffff;
  font-size: clamp(23px, 2.7vw, 34px);
  line-height: 1.1;
  letter-spacing: 0;
  text-transform: uppercase;
}

.home-section-title-row h2 strong {
  color: #f43f5e;
}

.home-section-heading .section-link {
  justify-self: center;
}

.overview-section-heading {
  display: grid;
  gap: 8px;
  margin-bottom: 22px;
}

.overview-section-heading > span {
  color: #bdd7ff;
  font-size: 13px;
  font-weight: 900;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.overview-section-title-row {
  display: grid;
  grid-template-columns: minmax(0, auto) minmax(28px, 1fr);
  align-items: center;
  gap: 14px;
  width: 100%;
}

.overview-section-title-row::after {
  content: "";
  height: 3px;
  background: linear-gradient(90deg, rgba(180, 205, 220, 0.3), transparent);
}

.section-heading .overview-section-title-row h2 {
  min-width: 0;
  margin: 0;
  color: #ffffff;
  font-size: clamp(22px, 2.2vw, 32px);
  line-height: 1.1;
  text-transform: uppercase;
}

.overview-section-title-row h2 strong {
  color: #f43f5e;
}

.section-heading-row {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 18px;
}

.section-link {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  min-height: 34px;
  color: #d9e7ff;
  font-size: 14px;
  font-weight: 820;
  white-space: nowrap;
}

.section-link:hover,
.section-link:focus-visible {
  color: #ffffff;
  outline: none;
}

.section-heading h2,
.feature-band h2,
.content-panel h2,
.side-panel h2,
.admin-panel h2 {
  margin: 6px 0 0;
  font-size: clamp(25px, 3vw, 40px);
  line-height: 1.1;
  letter-spacing: 0;
}

.game-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.game-catalog-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 20px;
}

.game-catalog-grid.home-game-showcase-grid {
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 8px;
}

.game-catalog-card {
  position: relative;
  overflow: hidden;
  min-width: 0;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background: #101720;
  box-shadow: 0 18px 46px rgba(0, 0, 0, 0.24);
  transition: transform 160ms ease, border-color 160ms ease, background 160ms ease;
}

.game-catalog-card.home-database-card {
  min-height: 144px;
  border-color: rgba(180, 205, 220, 0.18);
  border-radius: 7px;
  background: rgba(9, 14, 21, 0.92);
  box-shadow: none;
}

.game-catalog-card:hover {
  transform: translateY(-3px);
  border-color: color-mix(in srgb, var(--game-accent) 45%, var(--line));
  background: #121b26;
}

.game-catalog-card.home-database-card:hover,
.game-catalog-card.home-database-card:focus-within {
  transform: translateY(-2px);
  border-color: color-mix(in srgb, var(--game-accent) 55%, rgba(180, 205, 220, 0.22));
  background: rgba(12, 18, 27, 0.96);
}

.game-catalog-media {
  position: relative;
  display: grid;
  place-items: center;
  height: 132px;
  overflow: hidden;
  background:
    linear-gradient(145deg, color-mix(in srgb, var(--game-accent) 42%, transparent), transparent 58%),
    #14202c;
}

.game-catalog-media::after {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(180deg, rgba(0, 0, 0, 0.04), rgba(7, 9, 13, 0.28)),
    linear-gradient(90deg, rgba(7, 9, 13, 0.3), transparent 45%, rgba(7, 9, 13, 0.24));
  pointer-events: none;
}

.game-catalog-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.game-catalog-media > span:not(.game-catalog-pills) {
  position: relative;
  z-index: 1;
  display: grid;
  place-items: center;
  width: 58px;
  height: 58px;
  border: 1px solid rgba(255, 255, 255, 0.2);
  border-radius: var(--radius);
  color: #071014;
  background: var(--game-accent);
  font-size: 24px;
  font-weight: 950;
}

.game-catalog-pills {
  position: absolute;
  z-index: 2;
  top: 10px;
  left: 10px;
  right: 10px;
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  align-items: flex-start;
}

.game-pill {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 25px;
  padding: 0 10px;
  border-radius: var(--radius-sm);
  color: #ffffff;
  font-size: 12px;
  font-weight: 950;
  letter-spacing: 0;
  text-shadow: 0 1px 0 rgba(0, 0, 0, 0.34);
  box-shadow: 0 8px 18px rgba(0, 0, 0, 0.24);
}

.game-pill-new {
  background: #ff3d38;
}

.game-pill-active {
  background: #12c867;
}

.game-pill-upcoming {
  background: #f59e0b;
}

.game-pill-eos {
  background: #6b7280;
}

.game-catalog-body {
  padding: 16px 14px 15px;
}

.game-catalog-badge-row {
  display: flex;
  min-height: 27px;
  margin-bottom: 10px;
}

.game-catalog-badge {
  display: inline-flex;
  align-items: center;
  max-width: 100%;
  min-height: 27px;
  gap: 7px;
  padding: 3px 9px 3px 4px;
  border: 1px solid var(--line);
  border-radius: 999px;
  color: var(--text);
  background: rgba(255, 255, 255, 0.06);
  font-size: 12px;
  font-weight: 850;
}

.game-catalog-badge img {
  width: 21px;
  height: 21px;
  border-radius: 50%;
  object-fit: cover;
}

.game-catalog-badge span {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.game-catalog-body h3 {
  margin: 0 0 7px;
  font-size: 21px;
  line-height: 1.16;
}

.game-catalog-genre,
.game-catalog-platform {
  margin: 0;
  line-height: 1.25;
}

.game-catalog-genre {
  color: var(--accent);
  font-size: 13px;
  font-weight: 900;
}

.game-catalog-platform {
  color: #dbeafe;
  font-size: 13px;
}

.game-constellation {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(320px, 0.9fr);
  gap: 16px;
  align-items: stretch;
}

.game-constellation::before {
  content: "";
  position: absolute;
  left: 28%;
  top: 14%;
  bottom: 10%;
  width: 1px;
  background: linear-gradient(180deg, transparent, rgba(94, 234, 212, 0.22), transparent);
  pointer-events: none;
}

.constellation-primary,
.constellation-node {
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background: rgba(16, 23, 32, 0.88);
  box-shadow: 0 12px 40px rgba(0, 0, 0, 0.18);
}

.constellation-primary {
  position: relative;
  display: grid;
  grid-template-columns: minmax(190px, 0.48fr) minmax(0, 1fr);
  min-height: 420px;
  overflow: hidden;
}

.constellation-primary::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    radial-gradient(circle at 27% 45%, color-mix(in srgb, var(--game-accent) 30%, transparent), transparent 14rem),
    linear-gradient(120deg, color-mix(in srgb, var(--game-accent) 16%, transparent), transparent 45%);
  pointer-events: none;
}

.primary-media {
  position: relative;
  display: grid;
  place-items: center;
  min-height: 420px;
  border-right: 1px solid var(--line);
  background:
    linear-gradient(160deg, color-mix(in srgb, var(--game-accent) 35%, transparent), transparent 54%),
    rgba(255, 255, 255, 0.035);
  overflow: hidden;
}

.primary-media::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  background: linear-gradient(180deg, transparent 34%, rgba(7, 9, 13, 0.76));
  pointer-events: none;
}

.primary-media::after {
  content: "";
  position: absolute;
  z-index: 2;
  width: 72%;
  height: 1px;
  background: linear-gradient(90deg, transparent, color-mix(in srgb, var(--game-accent) 45%, transparent), transparent);
  transform: rotate(-58deg);
}

.primary-media img,
.node-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.primary-media span,
.node-media span {
  position: relative;
  z-index: 3;
  display: grid;
  place-items: center;
  width: 76px;
  height: 76px;
  border-radius: 50%;
  border: 1px solid rgba(255, 255, 255, 0.18);
  color: #061014;
  background: var(--game-accent);
  font-weight: 950;
  font-size: 30px;
}

.game-badge-image {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  min-height: 28px;
  min-width: 0;
  padding: 4px 9px 4px 5px;
  border: 1px solid var(--line);
  border-radius: 999px;
  color: var(--text);
  background: rgba(255, 255, 255, 0.06);
  font-size: 12px;
  font-weight: 850;
}

.game-badge-image img {
  width: 20px;
  height: 20px;
  border-radius: 50%;
  object-fit: cover;
}

.game-badge-image span {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.primary-copy {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: clamp(22px, 4vw, 38px);
}

.primary-copy h3,
.constellation-node h3 {
  margin: 14px 0 10px;
  font-size: clamp(28px, 4vw, 48px);
  line-height: 1;
}

.primary-copy p,
.constellation-node p {
  margin: 0;
  color: var(--muted);
  line-height: 1.65;
}

.constellation-facts {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin-top: 22px;
}

.constellation-facts span {
  display: grid;
  gap: 5px;
  min-height: 64px;
  padding: 11px;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  color: var(--muted);
  background: rgba(255, 255, 255, 0.04);
}

.constellation-facts strong {
  color: var(--text);
}

.constellation-stack {
  display: grid;
  gap: 16px;
}

.constellation-node {
  position: relative;
  display: grid;
  grid-template-columns: 124px minmax(0, 1fr);
  gap: 14px;
  align-items: center;
  min-height: 202px;
  padding: 16px;
  overflow: hidden;
}

.constellation-node::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, color-mix(in srgb, var(--game-accent) 14%, transparent), transparent 58%);
  pointer-events: none;
}

.constellation-node > * {
  position: relative;
  z-index: 1;
}

.node-media {
  display: grid;
  place-items: center;
  align-self: stretch;
  min-height: 166px;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background:
    linear-gradient(145deg, color-mix(in srgb, var(--game-accent) 30%, transparent), transparent),
    rgba(255, 255, 255, 0.04);
  overflow: hidden;
}

.node-media span {
  width: 58px;
  height: 58px;
  border-radius: var(--radius);
  font-size: 25px;
}

.constellation-node h3 {
  font-size: 24px;
}

.node-links {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 13px;
}

.node-links a {
  min-height: 31px;
  padding: 7px 10px;
  border: 1px solid var(--line);
  border-radius: var(--radius-sm);
  color: var(--muted);
  background: rgba(255, 255, 255, 0.035);
}

.game-card,
.article-card,
.character-card,
.side-panel,
.content-panel,
.feature-band,
.admin-panel,
.metric-card,
.login-card,
.detail-hero,
.game-hero,
.game-page-head {
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background: rgba(16, 23, 32, 0.88);
  box-shadow: 0 12px 40px rgba(0, 0, 0, 0.18);
}

.game-card {
  overflow: hidden;
}

.game-art {
  position: relative;
  display: grid;
  place-items: center;
  height: 230px;
  background:
    linear-gradient(135deg, color-mix(in srgb, var(--game-accent) 48%, transparent), transparent 48%),
    linear-gradient(45deg, rgba(251, 113, 133, 0.2), transparent 55%),
    #131d29;
  overflow: hidden;
}

.game-art span,
.character-avatar span,
.detail-avatar span,
.tier-chip span {
  display: grid;
  place-items: center;
  width: 76px;
  height: 76px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.1);
  border: 1px solid rgba(255, 255, 255, 0.18);
  color: var(--text);
  font-weight: 900;
  font-size: 34px;
}

.game-art span {
  position: relative;
  z-index: 2;
}

.game-card-body,
.article-card,
.character-card,
.side-panel,
.content-panel {
  padding: 18px;
}

.card-meta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  min-width: 0;
}

.badge {
  display: inline-flex;
  align-items: center;
  min-height: 26px;
  padding: 0 9px;
  border-radius: 999px;
  border: 1px solid var(--line);
  color: var(--text);
  background: rgba(255, 255, 255, 0.06);
  font-size: 12px;
  font-weight: 800;
}

.badge-glow {
  border-color: rgba(94, 234, 212, 0.38);
  color: var(--accent);
  background: rgba(94, 234, 212, 0.08);
}

.hero-copy > .badge,
.game-hero .badge,
.page-head > .badge {
  align-self: flex-start;
}

.game-card h3,
.article-card h3,
.character-card h3 {
  margin: 12px 0 8px;
  font-size: 21px;
  line-height: 1.2;
}

.game-card p,
.article-card p,
.character-card p,
.feature-grid p,
.site-footer p,
.content-panel p,
.skill-item p {
  margin: 0;
  color: var(--muted);
  line-height: 1.65;
}

.game-card-links {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 16px;
}

.game-card-links a {
  min-height: 34px;
  padding: 8px 10px;
  border: 1px solid var(--line);
  border-radius: var(--radius-sm);
  color: var(--muted);
  background: rgba(255, 255, 255, 0.035);
}

.split-section {
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(300px, 0.65fr);
  gap: 18px;
  align-items: start;
}

.article-list {
  display: grid;
  gap: 12px;
}

.article-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.blog-command-center {
  padding-top: clamp(28px, 5vw, 64px);
  padding-bottom: clamp(18px, 4vw, 38px);
}

.blog-hero-layout {
  display: grid;
  grid-template-columns: minmax(300px, 0.9fr) minmax(420px, 1.35fr) minmax(300px, 0.85fr);
  gap: 16px;
  align-items: stretch;
}

.blog-hero-copy,
.blog-hero-featured,
.blog-hero-feed,
.blog-insight-grid,
.blog-search-panel,
.blog-popular-panel {
  border: 1px solid rgba(148, 163, 184, 0.2);
  border-radius: var(--radius);
  background:
    linear-gradient(135deg, rgba(244, 63, 94, 0.075), transparent 48%),
    rgba(12, 17, 25, 0.78);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.035), 0 20px 48px rgba(0, 0, 0, 0.18);
}

.blog-hero-copy {
  display: grid;
  align-content: center;
  align-items: start;
  gap: 16px;
  min-width: 0;
  overflow: hidden;
  padding: clamp(20px, 3vw, 34px);
}

.blog-hero-copy .badge {
  justify-self: start;
  width: auto;
  max-width: 100%;
}

.blog-hero-copy h1 {
  max-width: 100%;
  margin: 0;
  color: #ffffff;
  font-size: clamp(40px, 3.85vw, 62px);
  line-height: 0.98;
  letter-spacing: 0;
  overflow-wrap: normal;
  text-wrap: normal;
  text-transform: uppercase;
  word-break: keep-all;
}

.blog-hero-copy h1 .blog-hero-title-word {
  display: block;
  white-space: nowrap;
}

.blog-hero-copy p {
  max-width: 100%;
  margin: 0;
  color: var(--muted);
  font-size: clamp(16px, 1.5vw, 20px);
  line-height: 1.65;
  text-wrap: pretty;
}

.blog-hero-featured {
  overflow: hidden;
  padding: 12px;
}

.blog-hero-featured > span,
.blog-panel-head span {
  color: #f43f5e;
  font-size: 12px;
  font-weight: 950;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.blog-featured-story {
  min-height: 430px;
  margin-top: 10px;
}

.blog-hero-feed {
  display: grid;
  align-content: start;
  gap: 12px;
  padding: 14px;
}

.blog-panel-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.blog-panel-head small {
  color: var(--muted);
  font-weight: 800;
}

.blog-briefing-list,
.blog-popular-list {
  display: grid;
  gap: 10px;
}

.blog-briefing-list a,
.blog-popular-list a {
  position: relative;
  display: grid;
  gap: 6px;
  min-width: 0;
  overflow: hidden;
  padding: 12px;
  border: 1px solid rgba(148, 163, 184, 0.16);
  border-radius: var(--radius-sm);
  color: #ffffff;
  background: rgba(255, 255, 255, 0.035);
  transition: transform 150ms ease, border-color 150ms ease, background 150ms ease;
}

.blog-briefing-list a {
  min-height: 78px;
  align-content: end;
  isolation: isolate;
}

.blog-briefing-list a::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background:
    linear-gradient(90deg, rgba(8, 11, 16, 0.96), rgba(8, 11, 16, 0.74) 46%, rgba(244, 63, 94, 0.28)),
    linear-gradient(180deg, transparent, rgba(8, 11, 16, 0.7));
  pointer-events: none;
}

.blog-briefing-media {
  position: absolute;
  inset: 0;
  z-index: -2;
  display: block;
  background: rgba(255, 255, 255, 0.04);
}

.blog-briefing-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: 0.52;
  filter: saturate(1.08) contrast(1.05);
  transition: transform 180ms ease, opacity 180ms ease;
}

.blog-briefing-content {
  position: relative;
  z-index: 1;
  display: grid;
  gap: 6px;
  min-width: 0;
}

.blog-briefing-list a:hover,
.blog-briefing-list a:focus-visible,
.blog-popular-list a:hover,
.blog-popular-list a:focus-visible {
  border-color: rgba(244, 63, 94, 0.58);
  background: rgba(244, 63, 94, 0.1);
  outline: none;
  transform: translateY(-1px);
}

.blog-briefing-list a:hover .blog-briefing-media img,
.blog-briefing-list a:focus-visible .blog-briefing-media img {
  opacity: 0.68;
  transform: scale(1.035);
}

.blog-briefing-list small,
.blog-popular-list small {
  color: #bdd7ff;
  font-size: 12px;
  font-weight: 800;
}

.blog-briefing-list strong,
.blog-popular-list strong {
  overflow: hidden;
  color: #ffffff;
  font-size: 15px;
  line-height: 1.25;
  text-overflow: ellipsis;
}

.blog-insight-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  margin-top: 16px;
  padding: 12px;
}

.blog-insight-grid span {
  display: grid;
  gap: 4px;
  min-height: 82px;
  align-content: center;
  padding: 13px;
  border: 1px solid rgba(148, 163, 184, 0.14);
  border-radius: var(--radius-sm);
  background: rgba(255, 255, 255, 0.035);
}

.blog-insight-grid strong {
  color: #ffffff;
  font-size: 28px;
  line-height: 1;
}

.blog-insight-grid small {
  color: var(--muted);
  font-weight: 850;
}

.blog-news-section {
  padding-top: clamp(28px, 5vw, 56px);
}

.tabbed-news-head {
  display: grid;
  grid-template-columns: minmax(24px, 1fr) auto minmax(24px, 1fr);
  gap: 16px;
  align-items: center;
  margin-bottom: 30px;
}

.tabbed-news-head span {
  height: 3px;
  background: linear-gradient(90deg, transparent, rgba(180, 205, 220, 0.28));
}

.tabbed-news-head span:last-child {
  background: linear-gradient(90deg, rgba(180, 205, 220, 0.28), transparent);
}

.tabbed-news-head h2 {
  margin: 0;
  color: #ffffff;
  font-size: clamp(24px, 3vw, 34px);
  font-weight: 950;
  line-height: 1;
  letter-spacing: 0;
  text-transform: uppercase;
}

.tabbed-news-head strong {
  color: #f43f5e;
}

.blog-tag-tabs {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(118px, 1fr));
  gap: 12px;
  margin-bottom: 26px;
}

.blog-tag-tabs a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 46px;
  padding: 10px 16px;
  border: 1px solid rgba(180, 205, 220, 0.16);
  border-radius: var(--radius-sm);
  color: #ffffff;
  background: rgba(39, 48, 64, 0.9);
  font-weight: 900;
  text-align: center;
  text-transform: uppercase;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.04);
}

.blog-tag-tabs a:hover,
.blog-tag-tabs a:focus-visible {
  border-color: rgba(255, 255, 255, 0.24);
  background: rgba(50, 61, 80, 0.96);
  outline: none;
}

.blog-tag-tabs a.active {
  border-color: rgba(244, 63, 94, 0.75);
  background: #e91546;
  box-shadow: 0 12px 26px rgba(233, 21, 70, 0.22);
}

.blog-search-panel {
  display: grid;
  grid-template-columns: minmax(260px, 1fr) minmax(180px, 260px) auto auto;
  gap: 10px;
  align-items: end;
  margin-bottom: 12px;
  padding: 14px;
}

.blog-search-panel label {
  display: grid;
  gap: 7px;
  color: var(--muted);
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
}

.blog-result-status {
  margin: 0 0 14px;
  color: var(--muted);
  font-weight: 850;
}

.blog-empty-state {
  margin-top: 18px;
  padding: 18px;
  border: 1px dashed rgba(148, 163, 184, 0.26);
  border-radius: var(--radius);
  text-align: center;
}

.blog-card-hidden {
  display: none !important;
}

.blog-popular-panel {
  position: relative;
  isolation: isolate;
  display: grid;
  gap: clamp(22px, 3vw, 34px);
  margin-top: clamp(28px, 5vw, 72px);
  padding: clamp(28px, 3.4vw, 46px);
  overflow: hidden;
  border-color: rgba(180, 205, 220, 0.18);
  border-radius: 14px;
  background:
    radial-gradient(circle at 12% 12%, rgba(244, 63, 94, 0.1), transparent 28%),
    radial-gradient(circle at 76% 12%, rgba(54, 217, 255, 0.055), transparent 24%),
    linear-gradient(180deg, rgba(8, 12, 18, 0.97), rgba(5, 8, 13, 0.98));
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.035), 0 28px 84px rgba(0, 0, 0, 0.28);
}

.blog-popular-panel::before,
.blog-popular-panel::after {
  content: "";
  position: absolute;
  inset: 10px;
  z-index: -1;
  border-radius: 12px;
  pointer-events: none;
}

.blog-popular-panel::before {
  border: 1px solid rgba(180, 205, 220, 0.14);
  background:
    linear-gradient(#f43f5e, #f43f5e) left top / 44px 2px no-repeat,
    linear-gradient(#f43f5e, #f43f5e) left top / 2px 44px no-repeat,
    linear-gradient(#f43f5e, #f43f5e) right top / 44px 2px no-repeat,
    linear-gradient(#f43f5e, #f43f5e) right top / 2px 44px no-repeat,
    linear-gradient(#f43f5e, #f43f5e) left bottom / 44px 2px no-repeat,
    linear-gradient(#f43f5e, #f43f5e) left bottom / 2px 44px no-repeat,
    linear-gradient(#f43f5e, #f43f5e) right bottom / 44px 2px no-repeat,
    linear-gradient(#f43f5e, #f43f5e) right bottom / 2px 44px no-repeat;
  opacity: 0.82;
}

.blog-popular-panel::after {
  opacity: 0.42;
  background:
    repeating-radial-gradient(circle at 0 0, rgba(180, 205, 220, 0.16) 0 1px, transparent 1px 8px),
    linear-gradient(90deg, transparent, rgba(244, 63, 94, 0.08), transparent);
  mask-image: linear-gradient(180deg, black, rgba(0, 0, 0, 0.72));
}

.blog-popular-head {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(0, auto) minmax(90px, 1fr) auto;
  align-items: end;
  gap: clamp(14px, 2.4vw, 28px);
}

.blog-popular-head::after {
  content: "";
  align-self: center;
  height: 1px;
  background:
    radial-gradient(circle, #f43f5e 0 4px, transparent 5px) left center / 16px 16px no-repeat,
    linear-gradient(90deg, rgba(244, 63, 94, 0.55), rgba(180, 205, 220, 0.16), transparent);
}

.blog-popular-kicker {
  display: inline-flex;
  align-items: center;
  gap: 14px;
  color: #39e6f2;
  font-size: clamp(13px, 1.3vw, 18px);
  font-weight: 950;
  letter-spacing: 0.42em;
  text-transform: uppercase;
}

.blog-popular-kicker::after {
  content: "";
  width: 68px;
  height: 8px;
  background:
    repeating-linear-gradient(105deg, rgba(244, 63, 94, 0.88) 0 7px, transparent 7px 11px);
  opacity: 0.86;
}

.blog-popular-title {
  margin: 10px 0 0;
  color: #f5f8fb;
  font-size: clamp(34px, 4.5vw, 62px);
  line-height: 0.92;
  letter-spacing: 0;
  text-transform: uppercase;
  text-shadow: 0 4px 0 rgba(0, 0, 0, 0.5), 0 0 22px rgba(255, 255, 255, 0.08);
}

.blog-popular-title span {
  color: #f43f5e;
  text-shadow: 0 0 24px rgba(244, 63, 94, 0.28);
}

.blog-popular-view-all {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  min-height: 50px;
  min-width: 148px;
  padding: 0 20px;
  border: 1px solid rgba(244, 63, 94, 0.52);
  border-radius: var(--radius);
  color: #ff4b5f;
  background: rgba(244, 63, 94, 0.055);
  font-size: 14px;
  font-weight: 950;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  transition: transform 160ms ease, border-color 160ms ease, background 160ms ease, color 160ms ease;
}

.blog-popular-view-all span {
  color: #ff4b5f;
  font-size: 28px;
  line-height: 0;
}

.blog-popular-view-all:hover,
.blog-popular-view-all:focus-visible {
  color: #ffffff;
  border-color: rgba(244, 63, 94, 0.82);
  background: rgba(244, 63, 94, 0.16);
  outline: none;
  transform: translateY(-1px);
}

.blog-popular-list {
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: clamp(12px, 1.4vw, 18px);
}

.blog-popular-list a {
  grid-template-columns: 54px minmax(0, 1fr);
  align-items: end;
  gap: 12px;
  min-height: clamp(260px, 25vw, 340px);
  align-content: end;
  padding: 0 22px 24px;
  border-color: rgba(180, 205, 220, 0.28);
  border-radius: 12px;
  background: rgba(2, 5, 10, 0.92);
  isolation: isolate;
}

.blog-popular-list a::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  background:
    radial-gradient(circle at 88% 88%, rgba(244, 63, 94, 0.2), transparent 26%),
    linear-gradient(180deg, rgba(2, 5, 10, 0.06) 16%, rgba(2, 5, 10, 0.18) 42%, rgba(3, 4, 9, 0.92) 100%),
    linear-gradient(90deg, rgba(244, 63, 94, 0.14), transparent 42%);
  pointer-events: none;
}

.blog-popular-list a:first-child::before {
  content: "";
  position: absolute;
  inset: -1px;
  z-index: 2;
  border: 2px solid rgba(255, 75, 95, 0.78);
  border-radius: 13px;
  box-shadow: inset 0 0 26px rgba(244, 63, 94, 0.12), 0 0 24px rgba(244, 63, 94, 0.28);
  pointer-events: none;
}

.blog-popular-list a:first-child {
  border-color: rgba(255, 75, 95, 0.72);
  box-shadow: 0 18px 46px rgba(244, 63, 94, 0.16);
}

.blog-popular-media {
  position: absolute;
  inset: 0;
  z-index: 0;
  display: block;
  background: rgba(255, 255, 255, 0.04);
}

.blog-popular-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: 0.82;
  filter: saturate(1.12) contrast(1.08) brightness(0.82);
  transition: transform 180ms ease, opacity 180ms ease;
}

.blog-popular-content {
  position: relative;
  z-index: 1;
  display: grid;
  gap: 12px;
  min-width: 0;
  align-self: end;
  padding-bottom: 2px;
}

.blog-popular-list em {
  position: relative;
  z-index: 1;
  display: inline-grid;
  place-items: center;
  width: 54px;
  height: 54px;
  border: 2px solid rgba(255, 75, 95, 0.82);
  clip-path: polygon(28% 0, 72% 0, 100% 28%, 100% 72%, 72% 100%, 28% 100%, 0 72%, 0 28%);
  color: #ffffff;
  background: rgba(244, 63, 94, 0.16);
  box-shadow: inset 0 0 18px rgba(244, 63, 94, 0.26), 0 0 16px rgba(244, 63, 94, 0.18);
  font-size: 19px;
  font-style: normal;
  font-weight: 950;
  text-shadow: 0 2px 0 rgba(0, 0, 0, 0.55);
}

.blog-popular-list .blog-popular-meta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 7px;
  color: #f4f7fb;
  font-size: 14px;
  font-weight: 850;
  line-height: 1.2;
}

.blog-popular-list .blog-popular-meta i,
.blog-popular-list .blog-popular-meta b {
  color: #ff4b5f;
  font-style: normal;
  font-weight: 900;
}

.blog-popular-list strong {
  font-size: clamp(19px, 1.5vw, 27px);
  line-height: 1.12;
  text-shadow: 0 3px 0 rgba(0, 0, 0, 0.58), 0 12px 24px rgba(0, 0, 0, 0.48);
}

.blog-popular-list a:hover .blog-popular-media img,
.blog-popular-list a:focus-visible .blog-popular-media img {
  opacity: 0.94;
  transform: scale(1.04);
}

.home-article-grid,
.home-guide-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 24px;
}

.home-guides-section {
  padding-top: 0;
}

.article-card {
  position: relative;
  display: block;
  min-height: 220px;
  overflow: hidden;
  transition: transform 160ms ease, border-color 160ms ease, background 160ms ease;
}

.article-card-v2 {
  isolation: isolate;
  padding: 0;
  border-color: rgba(180, 205, 220, 0.18);
  border-radius: var(--radius);
  background:
    linear-gradient(145deg, rgba(244, 63, 94, 0.075), transparent 44%),
    linear-gradient(180deg, rgba(255, 255, 255, 0.04), rgba(255, 255, 255, 0.012)),
    rgba(9, 14, 21, 0.94);
  box-shadow: 0 20px 52px rgba(0, 0, 0, 0.24), inset 0 1px 0 rgba(255, 255, 255, 0.035);
}

.article-card-v2::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  border-radius: inherit;
  background:
    linear-gradient(135deg, rgba(255, 255, 255, 0.07), transparent 22%),
    linear-gradient(315deg, rgba(244, 63, 94, 0.1), transparent 32%);
  opacity: 0;
  pointer-events: none;
  transition: opacity 160ms ease;
}

.article-card.compact {
  min-height: 142px;
}

.article-card.home-featured {
  min-height: 492px;
  padding: 0;
}

.article-card.overview-news {
  min-height: 198px;
  padding: 0;
  border: 1px solid rgba(180, 205, 220, 0.16);
  border-radius: var(--radius);
  background: rgba(16, 23, 32, 0.92);
  box-shadow: 0 16px 38px rgba(0, 0, 0, 0.2);
}

.article-card.overview-news.has-image .article-card-media {
  position: absolute;
  inset: 0;
  height: 100%;
  z-index: 0;
}

.article-card.overview-news.has-image .article-card-media::after {
  background:
    linear-gradient(90deg, rgba(5, 7, 10, 0.96) 0%, rgba(5, 7, 10, 0.76) 42%, rgba(127, 29, 29, 0.5) 100%),
    linear-gradient(180deg, rgba(5, 7, 10, 0.52) 0%, rgba(5, 7, 10, 0.22) 38%, rgba(5, 7, 10, 0.9) 100%);
}

.article-card.overview-news.has-image .article-card-media img {
  filter: saturate(1.08) contrast(1.05);
  opacity: 0.76;
  transform: scale(1.02);
}

.article-card.overview-news .article-card-body {
  min-height: 198px;
  height: 100%;
  padding: 18px;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  gap: 10px;
  background:
    linear-gradient(180deg, rgba(16, 23, 32, 0.96), rgba(12, 16, 22, 0.98)),
    rgba(16, 23, 32, 0.96);
}

.article-card.overview-news.has-image .article-card-body {
  background:
    radial-gradient(circle at 92% 18%, rgba(244, 63, 94, 0.32), transparent 15rem),
    linear-gradient(180deg, rgba(5, 7, 10, 0.18), rgba(5, 7, 10, 0.86));
}

.article-card.overview-news .card-meta {
  margin-bottom: auto;
}

.article-card.overview-news .article-card-status-row {
  margin-bottom: auto;
}

.article-card.overview-news .card-meta .badge {
  border-color: rgba(244, 63, 94, 0.5);
  color: #ffffff;
  background: rgba(9, 12, 17, 0.68);
  backdrop-filter: blur(8px);
}

.article-card.overview-news .card-meta small,
.article-card.overview-news .article-card-body > small {
  color: rgba(255, 226, 232, 0.88);
  text-shadow: 0 2px 12px rgba(0, 0, 0, 0.72);
}

.article-card.overview-news .article-title-wrap {
  margin: 0 -6px;
  background: transparent;
}

.article-card.overview-news .article-title-bg {
  display: none;
}

.article-card.overview-news h3 {
  color: #ffffff;
  font-size: 20px;
  line-height: 1.18;
  text-shadow: 0 3px 18px rgba(0, 0, 0, 0.8);
}

.article-card.overview-news p {
  display: -webkit-box;
  overflow: hidden;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  color: rgba(235, 242, 248, 0.9);
  text-shadow: 0 2px 12px rgba(0, 0, 0, 0.72);
}

.article-card.overview-news .article-card-footer {
  padding-top: 10px;
  border-top-color: rgba(255, 226, 232, 0.14);
}

.article-card.overview-news .article-card-action {
  min-height: 28px;
  padding: 0 9px;
  background: rgba(9, 12, 17, 0.66);
  backdrop-filter: blur(8px);
}

.article-card-media {
  position: relative;
  display: block;
  height: 244px;
  overflow: hidden;
  background:
    radial-gradient(circle at 50% 28%, rgba(94, 234, 212, 0.2), transparent 36%),
    rgba(255, 255, 255, 0.035);
}

.article-card-v2.has-image .article-card-media {
  height: 252px;
}

.article-card-media::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(7, 9, 13, 0.03), rgba(7, 9, 13, 0.24));
}

.article-card-v2 .article-card-media::after {
  background:
    radial-gradient(circle at 84% 18%, rgba(244, 63, 94, 0.22), transparent 15rem),
    linear-gradient(180deg, rgba(5, 8, 13, 0.05) 0%, rgba(5, 8, 13, 0.12) 42%, rgba(5, 8, 13, 0.82) 100%);
}

.article-card-media img,
.article-title-bg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.article-card-v2 .article-card-media img {
  filter: saturate(1.08) contrast(1.05) brightness(0.9);
  transform: scale(1.01);
  transition: transform 220ms ease, filter 220ms ease;
}

.article-card-body {
  position: relative;
  z-index: 1;
  display: grid;
  gap: 12px;
  padding: 18px;
}

.article-card-v2 .article-card-body {
  gap: 14px;
  min-height: 238px;
  padding: 18px 20px 20px;
}

.article-card-status-row {
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
}

.article-card-kicker {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 7px;
  min-width: 0;
  color: #bdd7ff;
  font-size: 12px;
  font-weight: 900;
  line-height: 1.25;
  text-transform: uppercase;
}

.article-card-kicker i,
.article-card-kicker b {
  color: #ff4b5f;
  font-style: normal;
  font-weight: 950;
}

.article-card-pills {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 6px;
  min-height: 24px;
}

.article-card-pill {
  display: inline-grid;
  place-items: center;
  min-height: 24px;
  padding: 0 8px;
  border: 1px solid rgba(180, 205, 220, 0.18);
  border-radius: 999px;
  color: #ffffff;
  background: rgba(255, 255, 255, 0.06);
  font-size: 10px;
  font-weight: 950;
  letter-spacing: 0.04em;
}

.article-card-pill-new {
  border-color: rgba(244, 63, 94, 0.62);
  background: rgba(244, 63, 94, 0.2);
  box-shadow: 0 0 18px rgba(244, 63, 94, 0.16);
}

.article-card-pill-updated {
  border-color: rgba(54, 217, 255, 0.42);
  background: rgba(54, 217, 255, 0.12);
}

.article-card-pill-popular {
  border-color: rgba(245, 158, 11, 0.55);
  background: rgba(245, 158, 11, 0.14);
}

.article-card-excerpt {
  display: -webkit-box;
  overflow: hidden;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}

.article-card-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  margin-top: auto;
  padding-top: 14px;
  border-top: 1px solid rgba(180, 205, 220, 0.12);
}

.article-card-footer small {
  min-width: 0;
  overflow: hidden;
  color: #8fa6bc;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.article-card-action {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  flex: 0 0 auto;
  min-height: 32px;
  padding: 0 11px;
  border: 1px solid rgba(244, 63, 94, 0.42);
  border-radius: var(--radius-sm);
  color: #ffffff;
  background: rgba(244, 63, 94, 0.12);
  font-size: 12px;
  font-weight: 950;
  opacity: 0.82;
  transform: translateX(0);
  transition: opacity 160ms ease, transform 160ms ease, background 160ms ease, border-color 160ms ease;
}

.article-card-action span {
  color: #ff4b5f;
  font-size: 18px;
  line-height: 0;
}

.article-card.home-featured .article-card-body {
  min-height: 248px;
  padding: 18px 20px 20px;
  background:
    linear-gradient(180deg, rgba(16, 23, 32, 0.96), rgba(15, 18, 24, 0.98)),
    rgba(16, 23, 32, 0.96);
}

.article-title-wrap {
  position: relative;
  display: block;
  margin: -2px -6px 0;
  padding: 6px;
  border-radius: var(--radius-sm);
  overflow: hidden;
}

.article-title-bg {
  position: absolute;
  inset: -28px;
  opacity: 0.18;
  filter: blur(18px) saturate(1.2);
  transform: scale(1.08);
}

.article-title-wrap h3 {
  position: relative;
  z-index: 1;
  margin: 0;
}

.article-card.home-featured h3 {
  color: #ffffff;
  font-size: clamp(20px, 1.55vw, 24px);
  line-height: 1.12;
}

.article-card.home-featured p {
  display: -webkit-box;
  overflow: hidden;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}

.article-card.home-featured .article-card-body > small {
  margin-top: auto;
  padding-top: 14px;
  border-top: 1px solid rgba(180, 205, 220, 0.12);
}

.article-card.home-featured.has-image .article-card-media {
  height: 292px;
}

.article-card.home-featured .article-card-footer {
  margin-top: auto;
}

.article-card:hover,
.character-card:hover,
.game-card:hover {
  transform: translateY(-2px);
  border-color: var(--line-strong);
  background: rgba(21, 29, 39, 0.96);
}

.article-card:hover::before,
.article-card:focus-visible::before {
  opacity: 1;
}

.article-card:hover .article-card-media img,
.article-card:focus-visible .article-card-media img {
  filter: saturate(1.16) contrast(1.08) brightness(0.98);
  transform: scale(1.055);
}

.article-card:hover .article-card-action,
.article-card:focus-visible .article-card-action {
  border-color: rgba(244, 63, 94, 0.76);
  background: rgba(244, 63, 94, 0.2);
  opacity: 1;
  transform: translateX(2px);
}

.guide-mini,
.code-row,
.info-list span {
  display: grid;
  gap: 4px;
  padding: 12px;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background: rgba(255, 255, 255, 0.035);
}

.guide-mini + .guide-mini,
.code-row + .code-row,
.info-list span + span {
  margin-top: 10px;
}

.home-guide-grid .guide-mini + .guide-mini {
  margin-top: 0;
}

.home-guide-grid .guide-mini {
  min-height: 116px;
  grid-template-columns: 72px minmax(0, 1fr);
  gap: 16px;
  align-items: center;
  align-content: start;
  padding: 16px;
}

.guide-mini-thumb {
  width: 68px;
  height: 68px;
  display: grid;
  place-items: center;
  overflow: hidden;
  border-radius: 50%;
  border: 1px solid rgba(255, 255, 255, 0.16);
  background:
    radial-gradient(circle at 34% 28%, rgba(244, 63, 94, 0.42), transparent 34%),
    linear-gradient(145deg, rgba(244, 63, 94, 0.28), rgba(8, 12, 18, 0.92));
  box-shadow: inset 0 0 0 1px rgba(0, 0, 0, 0.52), 0 14px 26px rgba(0, 0, 0, 0.28);
  color: var(--text);
  font-weight: 900;
}

.guide-mini-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.guide-mini-copy {
  min-width: 0;
  display: grid;
  gap: 4px;
  color: var(--text);
}

.guide-mini-copy em {
  color: var(--muted-2);
  font-size: 0.72rem;
  font-style: normal;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.guide-mini-copy strong,
.guide-mini-copy small {
  overflow: hidden;
  text-overflow: ellipsis;
}

.guide-mini-copy strong {
  color: var(--text);
}

.guide-mini-copy small {
  color: var(--muted-2);
}

.home-guide-board {
  position: relative;
  overflow: hidden;
  padding: clamp(18px, 2vw, 26px);
  border-color: rgba(148, 163, 184, 0.22);
  background:
    radial-gradient(circle at 12% 0%, rgba(244, 63, 94, 0.18), transparent 34%),
    linear-gradient(135deg, rgba(17, 24, 34, 0.86), rgba(7, 10, 15, 0.94));
}

.home-guide-board::before,
.home-guide-board::after {
  content: "";
  position: absolute;
  width: 70px;
  height: 22px;
  border-color: rgba(244, 63, 94, 0.62);
  pointer-events: none;
}

.home-guide-board::before {
  left: 10px;
  top: 10px;
  border-left: 2px solid;
  border-top: 2px solid;
  border-top-left-radius: 12px;
}

.home-guide-board::after {
  right: 10px;
  bottom: 10px;
  border-right: 2px solid;
  border-bottom: 2px solid;
  border-bottom-right-radius: 12px;
}

.home-guide-board-head {
  position: relative;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  padding-bottom: 16px;
  border-bottom: 1px solid rgba(148, 163, 184, 0.18);
}

.home-guide-board-head span {
  color: #38f6ff;
  font-size: 12px;
  font-weight: 950;
  letter-spacing: 0.24em;
  text-transform: uppercase;
}

.home-guide-view-all {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 34px;
  padding: 0 14px;
  border: 1px solid rgba(244, 63, 94, 0.44);
  border-radius: var(--radius-sm);
  color: #ffffff;
  background: rgba(244, 63, 94, 0.08);
  font-size: 12px;
  font-weight: 950;
  white-space: nowrap;
  box-shadow: 0 12px 28px rgba(244, 63, 94, 0.08);
  transition: border-color 0.18s ease, background 0.18s ease, transform 0.18s ease;
}

.home-guide-mission-list {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  padding-top: 16px;
}

.home-guide-mission-card {
  position: relative;
  display: grid;
  grid-template-columns: 54px 68px minmax(0, 1fr) auto;
  gap: 12px;
  align-items: center;
  min-height: 112px;
  min-width: 0;
  overflow: hidden;
  padding: 14px;
  border: 1px solid rgba(148, 163, 184, 0.2);
  border-radius: var(--radius);
  background:
    linear-gradient(135deg, rgba(244, 63, 94, 0.08), transparent 48%),
    rgba(13, 19, 28, 0.82);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.035);
  transition: border-color 0.18s ease, background 0.18s ease, box-shadow 0.18s ease, transform 0.18s ease;
}

.home-guide-mission-card::after {
  content: "";
  position: absolute;
  inset: auto 16px 0 16px;
  height: 2px;
  background: linear-gradient(90deg, rgba(244, 63, 94, 0.72), transparent);
  opacity: 0;
  transition: opacity 0.18s ease;
}

.home-guide-rank {
  display: grid;
  place-items: center;
  width: 48px;
  height: 48px;
  border: 1px solid rgba(244, 63, 94, 0.72);
  border-radius: 13px;
  color: #ffffff;
  background:
    linear-gradient(135deg, rgba(244, 63, 94, 0.34), rgba(244, 63, 94, 0.08)),
    rgba(8, 12, 18, 0.9);
  font-size: 16px;
  font-weight: 950;
  text-shadow: var(--text-shadow);
  box-shadow: 0 12px 28px rgba(244, 63, 94, 0.13);
}

.home-guide-mission-thumb {
  display: grid;
  place-items: center;
  width: 64px;
  height: 64px;
  overflow: hidden;
  border: 1px solid rgba(148, 163, 184, 0.24);
  border-radius: 14px;
  color: #ffffff;
  background:
    radial-gradient(circle at 36% 24%, rgba(94, 234, 212, 0.34), transparent 42%),
    rgba(255, 255, 255, 0.055);
  font-weight: 950;
  text-shadow: var(--text-shadow);
}

.home-guide-mission-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.22s ease, filter 0.22s ease;
}

.home-guide-mission-copy {
  display: grid;
  gap: 5px;
  min-width: 0;
}

.home-guide-mission-meta {
  display: flex;
  align-items: center;
  gap: 7px;
  min-width: 0;
  color: #b9d9ff;
  font-size: 11px;
  font-weight: 950;
  letter-spacing: 0.04em;
  line-height: 1.15;
  text-transform: uppercase;
}

.home-guide-mission-meta b {
  min-width: 0;
  overflow: hidden;
  color: #ffffff;
  font-weight: 950;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.home-guide-mission-meta i {
  color: #f43f5e;
  font-style: normal;
  flex: 0 0 auto;
}

.home-guide-mission-copy strong {
  display: -webkit-box;
  overflow: hidden;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  color: #ffffff;
  font-size: clamp(16px, 1.1vw, 19px);
  font-weight: 950;
  line-height: 1.16;
  text-shadow: var(--text-shadow);
}

.home-guide-mission-copy small {
  display: -webkit-box;
  overflow: hidden;
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
  color: #b9c8d8;
  font-size: 12px;
  line-height: 1.35;
}

.home-guide-mission-copy em {
  color: #8fa4ba;
  font-size: 11px;
  font-style: normal;
  font-weight: 800;
}

.home-guide-mission-arrow {
  color: #ffffff;
  font-size: 25px;
  font-weight: 800;
  opacity: 0.72;
  transition: opacity 0.18s ease, transform 0.18s ease;
}

.home-guide-view-all:hover,
.home-guide-view-all:focus-visible,
.home-guide-mission-card:hover,
.home-guide-mission-card:focus-visible {
  border-color: rgba(244, 63, 94, 0.72);
  background: rgba(244, 63, 94, 0.12);
  outline: none;
  transform: translateY(-2px);
}

.home-guide-mission-card:hover,
.home-guide-mission-card:focus-visible {
  box-shadow: 0 18px 42px rgba(0, 0, 0, 0.26), 0 0 0 1px rgba(244, 63, 94, 0.1);
}

.home-guide-mission-card:hover::after,
.home-guide-mission-card:focus-visible::after {
  opacity: 1;
}

.home-guide-mission-card:hover .home-guide-mission-thumb img,
.home-guide-mission-card:focus-visible .home-guide-mission-thumb img {
  filter: saturate(1.12) contrast(1.06);
  transform: scale(1.06);
}

.home-guide-mission-card:hover .home-guide-mission-arrow,
.home-guide-mission-card:focus-visible .home-guide-mission-arrow {
  opacity: 1;
  transform: translateX(2px);
}

.game-command-overview {
  display: grid;
  gap: clamp(14px, 2vw, 22px);
  margin-top: clamp(18px, 3vw, 36px);
}

.game-command-head {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 18px;
  padding: 0 2px;
}

.game-command-head span {
  display: block;
  margin: 0 0 6px;
  color: #38e8ff;
  font-size: 13px;
  font-weight: 950;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.game-command-head h2 {
  margin: 0;
  color: #ffffff;
  font-size: clamp(28px, 4vw, 48px);
  line-height: 1;
}

.game-command-head small {
  color: var(--muted);
  font-weight: 800;
  white-space: nowrap;
}

.game-command-stat-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
}

.game-command-stat-card {
  position: relative;
  display: grid;
  align-content: space-between;
  min-height: 132px;
  padding: 18px;
  overflow: hidden;
  border: 1px solid rgba(180, 205, 220, 0.15);
  border-radius: var(--radius);
  background:
    linear-gradient(135deg, rgba(244, 63, 94, 0.08), transparent 42%),
    rgba(13, 20, 29, 0.92);
  color: #ffffff;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.04);
}

.game-command-stat-card::after {
  content: "";
  position: absolute;
  inset: auto 0 0;
  height: 2px;
  background: linear-gradient(90deg, #f43f5e, transparent);
  opacity: 0.74;
}

.game-command-stat-card span {
  color: #a9c3e4;
  font-size: 12px;
  font-weight: 950;
  letter-spacing: 0.09em;
  text-transform: uppercase;
}

.game-command-stat-card strong {
  display: -webkit-box;
  overflow: hidden;
  color: #ffffff;
  font-size: clamp(22px, 2.6vw, 34px);
  line-height: 1.05;
  text-shadow: var(--text-shadow);
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}

.game-command-stat-card small {
  color: var(--muted);
  line-height: 1.35;
}

a.game-command-stat-card:hover,
a.game-command-stat-card:focus-visible,
.game-command-module-card:hover,
.game-command-module-card:focus-visible {
  border-color: rgba(244, 63, 94, 0.58);
  transform: translateY(-1px);
  outline: none;
}

.game-command-stat-card.is-database::after {
  background: linear-gradient(90deg, #38e8ff, transparent);
}

.game-command-stat-card.is-guide::after {
  background: linear-gradient(90deg, #f6d365, transparent);
}

.game-command-stat-card.is-update::after {
  background: linear-gradient(90deg, #a78bfa, transparent);
}

.game-command-module-rail {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
  gap: 10px;
}

.game-command-module-card {
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr);
  align-items: center;
  gap: 12px;
  min-height: 72px;
  padding: 12px;
  border: 1px solid rgba(180, 205, 220, 0.14);
  border-radius: var(--radius-sm);
  background: rgba(13, 20, 29, 0.76);
  color: #ffffff;
  transition: transform 160ms ease, border-color 160ms ease, background 160ms ease;
}

.game-command-module-icon {
  display: grid;
  place-items: center;
  width: 42px;
  height: 42px;
  border: 1px solid rgba(180, 205, 220, 0.16);
  border-radius: 12px;
  background:
    linear-gradient(135deg, color-mix(in srgb, var(--game-accent) 18%, transparent), transparent),
    rgba(255, 255, 255, 0.04);
  color: #ffffff;
  font-weight: 950;
}

.game-command-module-icon img {
  width: 24px;
  height: 24px;
  object-fit: contain;
}

.game-command-module-card strong,
.game-command-module-card small {
  display: block;
}

.game-command-module-card strong {
  color: #ffffff;
  font-size: 15px;
  line-height: 1.2;
}

.game-command-module-card small {
  margin-top: 3px;
  color: var(--muted);
  line-height: 1.35;
}

.game-adaptive-section {
  position: relative;
}

.game-section-empty {
  display: grid;
  gap: 6px;
  min-height: 92px;
  padding: 18px;
  border: 1px dashed rgba(180, 205, 220, 0.18);
  border-radius: var(--radius);
  background:
    linear-gradient(135deg, rgba(244, 63, 94, 0.05), transparent 58%),
    rgba(13, 20, 29, 0.5);
  color: var(--muted);
}

.game-section-empty strong {
  color: #ffffff;
  font-size: 18px;
}

.game-section-empty span {
  line-height: 1.55;
}

.overview-codes {
  padding-bottom: clamp(22px, 3vw, 38px);
}

.overview-codes.is-compact .code-grid {
  grid-template-columns: repeat(auto-fit, minmax(280px, 430px));
  justify-content: flex-start;
}

.overview-characters {
  padding-top: clamp(22px, 3vw, 42px);
}

.code-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}

.reward-code-card {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 46px;
  align-items: center;
  gap: 14px;
  min-height: 106px;
  padding: 16px;
  border: 1px solid rgba(180, 205, 220, 0.16);
  border-radius: var(--radius);
  background: rgba(5, 7, 10, 0.74);
}

.reward-code-card.has-game-badge {
  grid-template-columns: 58px minmax(0, 1fr) 46px;
}

.reward-code-card.is-expired {
  opacity: 0.48;
}

.reward-code-card.is-compact {
  min-height: 58px;
  padding: 10px 12px;
}

.reward-code-content {
  min-width: 0;
}

.reward-code-game-badge {
  display: grid;
  place-items: center;
  width: 58px;
  height: 58px;
  overflow: hidden;
  border: 1px solid rgba(180, 205, 220, 0.18);
  border-radius: var(--radius);
  background:
    linear-gradient(135deg, rgba(244, 63, 94, 0.12), transparent 54%),
    rgba(255, 255, 255, 0.045);
}

.reward-code-game-badge img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  padding: 7px;
}

.reward-code-kicker {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  margin-bottom: 8px;
}

.reward-code-kicker span,
.expired-code-panel summary span,
.expired-code-empty-head span {
  color: #8fb2ea;
  font-size: 12px;
  font-weight: 850;
  letter-spacing: 0;
  text-transform: uppercase;
}

.reward-code-kicker em {
  min-width: 0;
  color: #dbeafe;
  font-style: normal;
  font-size: 11px;
  font-weight: 900;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.reward-code-kicker strong {
  flex: 0 0 auto;
  min-height: 23px;
  padding: 4px 9px;
  border: 1px solid rgba(248, 113, 113, 0.22);
  border-radius: 999px;
  color: #f87171;
  background: rgba(248, 113, 113, 0.12);
  font-size: 11px;
}

.reward-code-card h3 {
  margin: 0 0 6px;
  color: #ffffff;
  font-family: Consolas, "SFMono-Regular", "Courier New", monospace;
  font-size: 18px;
  line-height: 1.12;
  letter-spacing: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.reward-code-card p {
  margin: 0;
  color: #c4d8f5;
  line-height: 1.35;
}

.reward-code-card.has-countdown {
  align-items: stretch;
}

.reward-code-countdown {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  width: 100%;
  margin-top: 14px;
  padding: 8px 10px;
  border: 1px solid rgba(86, 115, 145, 0.38);
  border-radius: 12px;
  background:
    linear-gradient(90deg, rgba(22, 163, 74, 0.1), rgba(14, 23, 34, 0.7) 38%, rgba(244, 63, 94, 0.09)),
    rgba(7, 11, 17, 0.78);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.045);
}

.reward-code-countdown-status {
  flex: 0 0 auto;
  min-height: 22px;
  padding: 4px 8px;
  border: 1px solid rgba(52, 211, 153, 0.42);
  border-radius: 999px;
  color: #0b0f14;
  background: linear-gradient(135deg, #6ee7b7, #f8e16c);
  font-size: 10px;
  font-weight: 950;
  line-height: 1;
  text-transform: uppercase;
}

.reward-code-countdown-text {
  min-width: 0;
  color: #b9cbe6;
  font-size: 12px;
  font-weight: 800;
  overflow: hidden;
  text-align: right;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.reward-code-countdown-text strong {
  color: #ffffff;
  font-weight: 950;
}

.reward-code-countdown.is-ending-soon {
  border-color: rgba(244, 63, 94, 0.44);
  background:
    linear-gradient(90deg, rgba(244, 63, 94, 0.18), rgba(14, 23, 34, 0.72)),
    rgba(7, 11, 17, 0.86);
}

.reward-code-countdown.is-ending-soon .reward-code-countdown-status,
.reward-code-countdown.is-expired .reward-code-countdown-status {
  color: #ffffff;
  border-color: rgba(244, 63, 94, 0.54);
  background: linear-gradient(135deg, #f43f5e, #7f1d1d);
}

.reward-code-countdown.is-expired .reward-code-countdown-text strong {
  color: #fca5a5;
}

.redeem-page-head {
  position: relative;
  overflow: hidden;
}

.redeem-page-head::after {
  content: "";
  position: absolute;
  inset: auto 0 0;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(244, 63, 94, 0.55), transparent);
}

.redeem-directory .home-section-heading > small {
  justify-self: center;
  color: var(--muted);
  font-size: 13px;
  font-weight: 850;
}

.redeem-directory-grid .reward-code-card {
  background:
    linear-gradient(135deg, rgba(244, 63, 94, 0.07), transparent 48%),
    rgba(5, 7, 10, 0.74);
}

.empty-state {
  display: grid;
  gap: 8px;
  padding: 24px;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  color: var(--muted);
  background: rgba(255, 255, 255, 0.035);
  text-align: center;
}

.empty-state strong {
  color: #ffffff;
  font-size: 18px;
}

.empty-state p {
  margin: 0;
  line-height: 1.6;
}

.reward-code-card.is-compact h3 {
  margin-bottom: 3px;
  font-size: 14px;
}

.reward-code-card.is-compact p {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  color: var(--muted);
  font-size: 13px;
}

.reward-code-card.is-compact .reward-code-countdown {
  display: none;
}

.copy-code-button {
  position: relative;
  display: grid;
  place-items: center;
  width: 44px;
  height: 44px;
  min-width: 44px;
  min-height: 44px;
  flex: 0 0 44px;
  border: 1px solid rgba(255, 255, 255, 0.06);
  border-radius: var(--radius);
  color: #a78bfa;
  background: rgba(255, 255, 255, 0.055);
  cursor: pointer;
}

.copy-code-button::before,
.copy-code-button span {
  content: "";
  display: block;
  width: 12px;
  height: 14px;
  border: 2px solid currentColor;
  border-radius: 3px;
}

.copy-code-button::before {
  position: absolute;
  transform: translate(-3px, -3px);
  opacity: 0.72;
}

.copy-code-button span {
  position: relative;
  background: transparent;
}

.copy-code-button:hover:not(:disabled),
.copy-code-button:focus-visible:not(:disabled) {
  color: #c4b5fd;
  border-color: rgba(167, 139, 250, 0.42);
  outline: none;
}

.copy-code-button:disabled {
  cursor: not-allowed;
}

.reward-code-card.has-countdown .copy-code-button {
  align-self: center;
}

.reward-code-card.is-copied .copy-code-button {
  color: var(--green);
  border-color: rgba(52, 211, 153, 0.42);
}

.expired-code-panel {
  margin-top: 32px;
  border: 1px solid rgba(180, 205, 220, 0.18);
  border-radius: var(--radius);
  background: rgba(255, 255, 255, 0.025);
  overflow: hidden;
}

.expired-code-panel summary,
.expired-code-empty-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  min-height: 42px;
  padding: 0 16px;
  cursor: pointer;
  list-style: none;
}

.expired-code-panel summary::-webkit-details-marker {
  display: none;
}

.expired-code-panel small,
.expired-code-empty-head small {
  color: #7f9bc6;
}

.expired-code-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  padding: 12px;
  border-top: 1px solid var(--line);
}

.overview-update-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.guide-mini span,
.code-row small,
.article-card small,
.card-meta small,
.muted {
  color: var(--muted-2);
}

.feature-band {
  display: grid;
  grid-template-columns: minmax(0, 0.8fr) minmax(0, 1.2fr);
  gap: 24px;
  align-items: start;
  width: min(var(--page-max), calc(100% - (var(--page-pad) * 2)));
  margin: clamp(18px, 4vw, 48px) auto;
  padding: clamp(24px, 4vw, 42px);
  background:
    linear-gradient(120deg, rgba(94, 234, 212, 0.1), transparent 45%),
    linear-gradient(260deg, rgba(245, 158, 11, 0.13), transparent 38%),
    rgba(16, 23, 32, 0.92);
}

.section.feature-band {
  margin-top: clamp(10px, 1.8vw, 22px);
  margin-bottom: clamp(18px, 3vw, 34px);
}

.feature-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}

.feature-grid div {
  padding: 15px;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background: rgba(255, 255, 255, 0.035);
}

.site-footer {
  display: grid;
  grid-template-columns: minmax(260px, 0.9fr) minmax(0, 1.45fr);
  align-items: flex-start;
  gap: clamp(28px, 5vw, 82px);
  padding: clamp(30px, 4vw, 48px) var(--page-pad);
  border-top: 1px solid var(--line);
  color: var(--muted);
  background:
    linear-gradient(90deg, rgba(244, 63, 94, 0.045), transparent 34%),
    rgba(7, 9, 13, 0.94);
}

.site-footer-brand {
  display: grid;
  gap: 10px;
  max-width: 760px;
}

.footer-brand-mark {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  align-self: flex-start;
  color: #ffffff;
  font-weight: 900;
  letter-spacing: 0;
  text-transform: uppercase;
}

.footer-brand-mark .brand-mark {
  width: 40px;
  height: 40px;
}

.site-footer-brand p {
  max-width: 680px;
  margin: 0;
  color: var(--soft);
  line-height: 1.65;
}

.footer-legal {
  color: #718197;
  font-size: 13px;
  line-height: 1.5;
}

.footer-columns {
  display: grid;
  grid-template-columns: repeat(4, minmax(120px, 1fr));
  align-items: flex-start;
  gap: clamp(18px, 2vw, 30px);
  width: 100%;
}

.footer-column {
  display: grid;
  align-content: flex-start;
  gap: 12px;
  min-width: 0;
}

.footer-column-title {
  color: #f43f5e;
  font-size: 12px;
  font-weight: 950;
  letter-spacing: 0.12em;
  line-height: 1;
  text-transform: uppercase;
}

.footer-column-links {
  display: grid;
  gap: 7px;
}

.footer-column-links a {
  position: relative;
  display: inline-flex;
  align-items: center;
  align-self: flex-start;
  min-width: 0;
  min-height: 28px;
  padding: 3px 0 3px 14px;
  border: 0;
  border-radius: 0;
  color: var(--muted);
  line-height: 1.35;
}

.footer-column-links a::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  width: 5px;
  height: 5px;
  border-radius: 999px;
  background: rgba(244, 63, 94, 0.72);
  transform: translateY(-50%);
}

.footer-column-links a:hover,
.footer-column-links a:focus-visible {
  color: #ffffff;
  outline: none;
}

.footer-column-links a:hover::before,
.footer-column-links a:focus-visible::before {
  background: #38e8ff;
  box-shadow: 0 0 12px rgba(56, 232, 255, 0.45);
}

.game-hero,
.detail-hero {
  position: relative;
  width: min(var(--page-max), calc(100% - (var(--page-pad) * 2)));
  margin: clamp(20px, 4vw, 46px) auto 16px;
  padding: clamp(24px, 5vw, 54px);
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(280px, 0.48fr);
  gap: 24px;
  background:
    linear-gradient(135deg, color-mix(in srgb, var(--game-accent) 16%, transparent), transparent 46%),
    linear-gradient(250deg, rgba(251, 113, 133, 0.12), transparent 46%),
    rgba(16, 23, 32, 0.92);
}

.game-hero {
  overflow: hidden;
}

.game-hero > :not(.game-hero-bg),
.game-page-head > :not(.game-hero-bg),
.detail-hero > * {
  position: relative;
  z-index: 1;
}

.game-hero-bg {
  position: absolute;
  inset: 0;
  z-index: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  opacity: 0.34;
  filter: saturate(0.95) contrast(1.08);
  pointer-events: none;
  user-select: none;
}

.game-hero.has-hero-bg::after,
.game-page-head.has-hero-bg::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  background:
    linear-gradient(90deg, rgba(7, 9, 13, 0.88), rgba(7, 9, 13, 0.56) 54%, rgba(7, 9, 13, 0.76)),
    linear-gradient(180deg, rgba(7, 9, 13, 0.16), rgba(7, 9, 13, 0.78));
  pointer-events: none;
}

.stat-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.stat-grid span {
  display: grid;
  gap: 6px;
  padding: 14px;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background: rgba(255, 255, 255, 0.04);
  color: var(--muted);
}

.stat-grid strong {
  color: var(--text);
}

.game-facts {
  align-self: center;
  display: grid;
  gap: 0;
  padding: 6px 18px;
  border: 1px solid rgba(180, 205, 220, 0.14);
  border-radius: var(--radius);
  background:
    linear-gradient(135deg, color-mix(in srgb, var(--game-accent) 10%, transparent), transparent 58%),
    rgba(7, 11, 16, 0.42);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.04);
}

.game-facts span {
  display: grid;
  grid-template-columns: minmax(88px, 0.45fr) minmax(0, 1fr);
  gap: 16px;
  align-items: center;
  min-height: 50px;
  padding: 12px 0;
  border-bottom: 1px solid rgba(180, 205, 220, 0.1);
  color: var(--muted);
}

.game-facts span:last-child {
  border-bottom: 0;
}

.game-facts strong {
  color: #9db4d4;
  font-size: 12px;
  font-weight: 850;
  text-transform: uppercase;
}

.game-facts em {
  justify-self: end;
  min-width: 0;
  color: #ffffff;
  font-style: normal;
  font-weight: 780;
  line-height: 1.35;
  text-align: right;
}

.game-tabs {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(118px, 1fr));
  justify-content: center;
  gap: 12px;
  width: min(var(--page-max), calc(100% - (var(--page-pad) * 2)));
  margin: 0 auto;
  padding: 14px 0 0;
  border-bottom: 0;
  overflow-x: auto;
  scrollbar-width: thin;
}

.game-tabs a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 46px;
  min-width: 118px;
  padding: 10px 16px;
  border: 1px solid rgba(180, 205, 220, 0.16);
  border-radius: var(--radius-sm);
  color: #ffffff;
  background: rgba(39, 48, 64, 0.9);
  font-weight: 900;
  text-align: center;
  white-space: nowrap;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.04);
  transition: transform 160ms ease, color 160ms ease, border-color 160ms ease, background 160ms ease;
}

.game-tabs a:hover,
.game-tabs a:focus-visible {
  color: #ffffff;
  border-color: rgba(255, 255, 255, 0.24);
  background: rgba(50, 61, 80, 0.96);
  transform: translateY(-1px);
  outline: none;
}

.game-tabs a.active {
  color: #ffffff;
  border-color: rgba(244, 63, 94, 0.75);
  background: #e91546;
  box-shadow: 0 12px 26px rgba(233, 21, 70, 0.22);
}

.game-tab-icon {
  width: 16px;
  height: 16px;
  flex: 0 0 auto;
  object-fit: contain;
}

.page-head {
  width: min(var(--page-max), calc(100% - (var(--page-pad) * 2)));
  margin: 0 auto;
  padding: clamp(44px, 7vw, 82px) 0 28px;
}

.game-page-head {
  position: relative;
  margin: clamp(20px, 4vw, 46px) auto 16px;
  padding: clamp(28px, 5vw, 56px);
  background:
    linear-gradient(135deg, color-mix(in srgb, var(--game-accent) 16%, transparent), transparent 46%),
    linear-gradient(250deg, rgba(251, 113, 133, 0.12), transparent 46%),
    rgba(16, 23, 32, 0.92);
  overflow: hidden;
}

.toolbar {
  display: grid;
  grid-template-columns: minmax(240px, 1fr) 180px 180px;
  gap: 10px;
  margin-bottom: 16px;
}

.input {
  width: 100%;
  min-height: 44px;
  padding: 11px 12px;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  color: var(--text);
  background: rgba(255, 255, 255, 0.055);
  outline: none;
}

.input:focus {
  border-color: rgba(94, 234, 212, 0.5);
  box-shadow: 0 0 0 3px rgba(94, 234, 212, 0.08);
}

textarea.input {
  resize: vertical;
  min-height: 110px;
}

.character-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(154px, 100%), 1fr));
  gap: clamp(14px, 1.5vw, 20px);
  justify-content: stretch;
  justify-items: center;
  overflow: visible;
}

.split-section .character-grid {
  grid-template-columns: repeat(auto-fit, minmax(min(154px, 100%), 1fr));
}

.character-card {
  width: 100%;
  max-width: 184px;
  position: relative;
  display: block;
  min-height: 216px;
  padding: 0;
  overflow: visible;
}

.character-card-link {
  position: relative;
  display: block;
  height: 100%;
  min-height: 216px;
  border-radius: var(--radius);
  outline: none;
}

.character-portrait {
  position: relative;
  height: 100%;
  min-height: 216px;
  border: 0;
  border-radius: var(--radius);
  background:
    linear-gradient(180deg, rgba(245, 158, 11, 0.42), rgba(67, 24, 121, 0.72)),
    #161016;
  overflow: hidden;
}

.character-card.rarity-r .character-portrait {
  background:
    linear-gradient(180deg, rgba(56, 189, 248, 0.66), rgba(14, 116, 144, 0.34) 48%, rgba(15, 23, 42, 0.92)),
    #0f172a;
}

.character-card.rarity-sr .character-portrait {
  background:
    linear-gradient(180deg, rgba(168, 85, 247, 0.7), rgba(91, 33, 182, 0.38) 48%, rgba(18, 12, 38, 0.94)),
    #1e1236;
}

.character-card.searchable-card {
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

.collection-grid {
  align-items: start;
}

.collection-sts-card {
  max-width: 190px;
  min-height: 176px;
}

.collection-sts-card .character-card-link,
.collection-sts-card .character-portrait {
  min-height: 176px;
}

.collection-sts-card .character-portrait > img {
  object-position: center bottom;
}

.collection-sts-card .character-card-icon {
  width: 31px;
  height: 31px;
}

.collection-sts-card .character-portrait::after {
  inset: 0;
  background:
    linear-gradient(180deg, rgba(7, 9, 13, 0) 0%, rgba(7, 9, 13, 0.12) 46%, rgba(7, 9, 13, 0.82) 100%),
    linear-gradient(90deg, rgba(7, 9, 13, 0.12), rgba(7, 9, 13, 0) 45%, rgba(7, 9, 13, 0.18));
}

.collection-sts-card .character-portrait h3 {
  bottom: 8px;
  font-size: 19px;
}

.collection-empty-state {
  max-width: 560px;
  margin-top: 18px;
}

.character-card.rarity-ssr .character-portrait {
  background:
    linear-gradient(180deg, rgba(245, 158, 11, 0.76), rgba(180, 83, 9, 0.42) 48%, rgba(31, 18, 8, 0.95)),
    #2c1608;
}

.character-portrait img,
.detail-avatar img,
.character-gallery img,
.hover-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.character-portrait img {
  transform: scale(1);
  transition: transform 260ms ease;
  will-change: transform;
}

.character-card:hover .character-portrait img,
.character-card:focus-within .character-portrait img {
  transform: scale(1.07);
}

.collection-sts-card .character-portrait > img {
  transform: translateY(34px) scale(1.12);
  transform-origin: center bottom;
}

.collection-sts-card:hover .character-portrait > img,
.collection-sts-card:focus-within .character-portrait > img {
  transform: translateY(34px) scale(1.18);
}

.collection-sts-card .character-card-icon img,
.collection-sts-card:hover .character-card-icon img,
.collection-sts-card:focus-within .character-card-icon img {
  object-fit: contain;
  object-position: center;
  transform: none;
}

.character-portrait::after {
  content: "";
  position: absolute;
  inset: 42% 0 0;
  background: linear-gradient(180deg, transparent, rgba(7, 9, 13, 0.78));
  pointer-events: none;
}

.character-fallback {
  display: grid;
  place-items: center;
  height: 100%;
  color: rgba(255, 255, 255, 0.78);
  font-size: 58px;
  font-weight: 900;
}

.character-card-icons {
  position: absolute;
  right: 8px;
  top: 8px;
  z-index: 2;
  display: grid;
  gap: 6px;
}

.character-card-icon {
  display: grid;
  place-items: center;
  width: 34px;
  height: 34px;
  border: 1px solid rgba(255, 255, 255, 0.22);
  border-radius: 50%;
  color: var(--text);
  background: rgba(7, 9, 13, 0.68);
  box-shadow: 0 10px 24px rgba(0, 0, 0, 0.32);
  font-size: 13px;
  font-weight: 900;
  overflow: hidden;
}

.character-card-icon img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.character-portrait h3 {
  position: absolute;
  left: 10px;
  right: 10px;
  bottom: 7px;
  z-index: 2;
  margin: 0;
  padding-bottom: 3px;
  color: #ffffff;
  font-size: 20px;
  line-height: 1.18;
  text-shadow: 0 2px 0 rgb(69 69 69 / 95%), 0 6px 16px rgba(0, 0, 0, 0.65);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.character-hover-card {
  position: absolute;
  left: calc(100% - 18px);
  top: 36px;
  z-index: 30;
  width: min(330px, 86vw);
  padding: 16px;
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: var(--radius);
  background: rgba(13, 13, 15, 0.96);
  box-shadow: var(--shadow);
  opacity: 0;
  visibility: hidden;
  transform: translateY(8px);
  transition: opacity 140ms ease, transform 140ms ease, visibility 140ms ease;
  pointer-events: none;
}

.character-card:hover,
.character-card:focus-within {
  z-index: 20;
}

.character-card:hover .character-hover-card,
.character-card:focus-within .character-hover-card {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}

.character-card:nth-child(4n) .character-hover-card,
.character-card:nth-child(4n - 1) .character-hover-card {
  left: auto;
  right: calc(100% - 18px);
}

.hover-head {
  display: grid;
  grid-template-columns: 58px minmax(0, 1fr);
  gap: 12px;
  align-items: center;
  padding-bottom: 14px;
  border-bottom: 1px solid var(--line);
}

.hover-thumb {
  display: grid;
  place-items: center;
  width: 58px;
  height: 58px;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  overflow: hidden;
  background: var(--surface-2);
}

.hover-thumb span {
  font-weight: 900;
  font-size: 22px;
}

.hover-head h4 {
  margin: 0 0 7px;
  font-size: 21px;
  line-height: 1.1;
}

.hover-badges {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.hover-badges > span {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  min-height: 23px;
  padding: 4px 7px;
  border-radius: 5px;
  background: rgba(255, 255, 255, 0.12);
  color: var(--text);
  font-size: 12px;
  font-weight: 800;
}

.badge-inline-icon {
  width: 14px;
  height: 14px;
  flex: 0 0 auto;
  object-fit: contain;
}

.tier-badge {
  border-color: rgba(0, 0, 0, 0.16);
  color: #141414;
  background: #d9d9d9;
}

.hover-badges .tier-badge {
  color: #141414;
}

.tier-badge.tier-t0 {
  background: #ff7f7f;
}

.tier-badge.tier-t05 {
  background: #ffbf7f;
}

.tier-badge.tier-t1 {
  background: #ffff7f;
}

.tier-badge.tier-t2 {
  background: #7fff7f;
}

.tier-badge.tier-t3 {
  background: #7fbfff;
}

.tier-badge.tier-t4 {
  background: #bfbfff;
}

.tier-badge.tier-t5 {
  background: #d9d9d9;
}

.character-hover-card dl {
  display: grid;
  gap: 8px;
  margin: 14px 0;
  padding-bottom: 14px;
  border-bottom: 1px solid var(--line);
}

.character-hover-card dl div {
  display: flex;
  justify-content: space-between;
  gap: 16px;
}

.character-hover-card dt,
.character-hover-card dd {
  margin: 0;
}

.character-hover-card dt,
.hover-kicker {
  color: var(--muted);
  font-size: 12px;
  letter-spacing: 0;
  text-transform: uppercase;
}

.character-hover-card dd {
  color: var(--text);
  font-weight: 850;
  text-align: right;
}

.character-hover-card p {
  margin-top: 8px;
  color: #e8edf2;
  font-size: 14px;
  font-style: italic;
  line-height: 1.55;
}

.detail-hero {
  grid-template-columns: minmax(220px, 300px) minmax(0, 1fr);
  align-items: stretch;
  gap: clamp(22px, 4vw, 42px);
  min-height: 360px;
  overflow: hidden;
}

.detail-avatar-wrap {
  display: flex;
  align-items: stretch;
  min-width: 0;
}

.detail-avatar {
  position: relative;
  display: grid;
  place-items: center;
  width: 100%;
  min-height: 320px;
  aspect-ratio: 3 / 4;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background:
    linear-gradient(180deg, rgba(148, 163, 184, 0.42), rgba(30, 41, 59, 0.72)),
    rgba(255, 255, 255, 0.04);
  overflow: hidden;
}

.detail-hero.rarity-r .detail-avatar {
  background:
    linear-gradient(180deg, rgba(56, 189, 248, 0.7), rgba(14, 116, 144, 0.36) 48%, rgba(15, 23, 42, 0.94)),
    #0f172a;
}

.detail-hero.rarity-sr .detail-avatar {
  background:
    linear-gradient(180deg, rgba(168, 85, 247, 0.76), rgba(91, 33, 182, 0.4) 48%, rgba(18, 12, 38, 0.96)),
    #1e1236;
}

.detail-hero.rarity-ssr .detail-avatar {
  background:
    linear-gradient(180deg, rgba(245, 158, 11, 0.82), rgba(180, 83, 9, 0.44) 48%, rgba(31, 18, 8, 0.96)),
    #2c1608;
}

.detail-avatar::after {
  content: "";
  position: absolute;
  inset: 52% 0 0;
  background: linear-gradient(180deg, transparent, rgba(7, 9, 13, 0.64));
  pointer-events: none;
}

.detail-avatar img {
  position: relative;
  z-index: 1;
}

.detail-hero-copy {
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-width: 0;
}

.detail-hero-copy .card-meta {
  justify-content: flex-start;
  flex-wrap: wrap;
  gap: 6px;
  margin-bottom: 10px;
}

.detail-hero-copy .card-meta .badge {
  gap: 5px;
  min-height: 23px;
  padding: 4px 7px;
  border: 0;
  border-radius: 5px;
  color: var(--text);
  background: rgba(255, 255, 255, 0.12);
  font-size: 12px;
  font-weight: 800;
  line-height: normal;
  box-shadow: none;
}

.detail-hero-copy .card-meta .badge-glow {
  color: var(--text);
  background: rgba(255, 255, 255, 0.12);
}

.detail-hero-copy .card-meta .tier-badge {
  color: #141414;
  background: #d9d9d9;
}

.detail-hero-copy .card-meta .tier-badge.tier-t0 {
  background: #ff7f7f;
}

.detail-hero-copy .card-meta .tier-badge.tier-t05 {
  background: #ffbf7f;
}

.detail-hero-copy .card-meta .tier-badge.tier-t1 {
  background: #ffff7f;
}

.detail-hero-copy .card-meta .tier-badge.tier-t2 {
  background: #7fff7f;
}

.detail-hero-copy .card-meta .tier-badge.tier-t3 {
  background: #7fbfff;
}

.detail-hero-copy .card-meta .tier-badge.tier-t4 {
  background: #bfbfff;
}

.detail-hero-copy .card-meta .tier-badge.tier-t5 {
  background: #d9d9d9;
}

.detail-quick-info {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  margin-top: 24px;
}

.detail-quick-info span {
  display: grid;
  gap: 5px;
  min-height: 70px;
  padding: 12px;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  color: var(--muted);
  background: rgba(255, 255, 255, 0.04);
}

.detail-quick-info strong {
  color: var(--text);
}

.character-detail-tabs {
  padding-top: clamp(18px, 3vw, 34px);
}

.detail-tab-list {
  display: flex;
  align-items: center;
  gap: 22px;
  margin-bottom: 24px;
  border-bottom: 1px solid var(--line);
  overflow-x: auto;
}

.detail-tab {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  min-height: 52px;
  padding: 0 0 12px;
  border: 0;
  border-bottom: 2px solid transparent;
  color: #b8c5d4;
  background: transparent;
  cursor: pointer;
  font-weight: 800;
  white-space: nowrap;
}

.detail-tab:hover,
.detail-tab:focus-visible {
  color: var(--text);
  outline: none;
}

.detail-tab.is-active {
  color: #ffffff;
  border-bottom-color: #ffffff;
}

.detail-tab.is-active small {
  color: #07090d;
  background: #ffffff;
}

.detail-tab small {
  display: inline-grid;
  place-items: center;
  min-width: 20px;
  height: 20px;
  padding: 0 6px;
  border-radius: 999px;
  color: var(--text);
  background: rgba(255, 255, 255, 0.1);
  font-size: 11px;
  line-height: 1;
}

.tab-glyph {
  position: relative;
  display: inline-grid;
  place-items: center;
  width: 17px;
  height: 17px;
  flex: 0 0 17px;
  color: currentColor;
}

.tab-glyph-review::before {
  content: "";
  width: 11px;
  height: 11px;
  border: 1.8px solid currentColor;
  transform: rotate(45deg);
}

.tab-glyph-review::after {
  content: "";
  position: absolute;
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: currentColor;
}

.tab-glyph-info {
  border: 1.8px solid currentColor;
  border-radius: 50%;
  font-size: 12px;
  font-weight: 950;
}

.tab-glyph-info::before {
  content: "i";
  line-height: 1;
}

.tab-glyph-guides::before,
.tab-glyph-guides::after {
  content: "";
  position: absolute;
  width: 11px;
  height: 13px;
  border: 1.6px solid currentColor;
  border-radius: 2px;
}

.tab-glyph-guides::before {
  left: 2px;
}

.tab-glyph-guides::after {
  right: 2px;
}

.detail-tab-panel[hidden] {
  display: none;
}

.detail-review-stack,
.detail-tab-panel {
  display: grid;
  gap: 18px;
}

.character-review-deck,
.character-info-dossier,
.character-guide-hub {
  display: grid;
  gap: 16px;
}

.review-command-head,
.guide-hub-head,
.info-dossier-card,
.review-note-card,
.review-skill-panel,
.guide-hub-empty {
  border: 1px solid rgba(148, 163, 184, 0.18);
  border-radius: var(--radius);
  background:
    linear-gradient(120deg, rgba(244, 63, 94, 0.055), transparent 44%),
    rgba(16, 23, 32, 0.72);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.035);
}

.review-command-head,
.guide-hub-head {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 18px;
  padding: clamp(18px, 3vw, 26px);
}

.review-command-head h2,
.guide-hub-head h2,
.info-dossier-card h2 {
  margin: 0;
  color: #ffffff;
  font-size: clamp(24px, 3vw, 34px);
  line-height: 1;
  text-shadow: 2px 2px 0 rgba(0, 0, 0, 0.76);
}

.review-command-head p,
.guide-hub-head p,
.info-dossier-card p {
  max-width: 680px;
  margin: 10px 0 0;
  color: #a9bdd4;
  font-size: 15px;
  line-height: 1.6;
}

.review-command-head a,
.guide-hub-head > span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 38px;
  padding: 0 13px;
  border: 1px solid rgba(244, 63, 94, 0.42);
  border-radius: var(--radius-sm);
  color: #ffffff;
  background: rgba(244, 63, 94, 0.1);
  font-size: 13px;
  font-weight: 900;
  white-space: nowrap;
}

.review-summary-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
}

.review-summary-grid article {
  display: grid;
  gap: 8px;
  min-height: 118px;
  padding: 16px;
  border: 1px solid rgba(148, 163, 184, 0.18);
  border-radius: var(--radius);
  background:
    radial-gradient(circle at 100% 0%, rgba(34, 211, 238, 0.11), transparent 38%),
    rgba(12, 18, 27, 0.86);
}

.review-summary-grid small,
.review-card-title small,
.info-dossier-tags .badge {
  color: #9db4d4;
  font-size: 12px;
  font-weight: 900;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.review-summary-grid strong {
  align-self: end;
  color: #ffffff;
  font-size: 26px;
  line-height: 1;
}

.review-summary-grid .tier-badge {
  display: inline-flex;
  align-items: center;
  width: fit-content;
  min-height: 30px;
  padding: 5px 10px;
  border-radius: 6px;
  color: #141414;
  font-size: 18px;
}

.review-summary-grid span {
  color: #8ea5bf;
  font-size: 13px;
}

.review-note-card,
.review-skill-panel,
.info-dossier-card,
.guide-hub-empty {
  padding: clamp(18px, 3vw, 26px);
}

.review-card-title {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  margin-bottom: 14px;
}

.review-card-title .detail-kicker {
  margin: 0;
}

.review-skill-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.review-skill-grid .skill-item {
  position: relative;
  min-height: 132px;
  padding: 18px 18px 18px 58px;
}

.review-skill-grid .skill-item em {
  position: absolute;
  top: 16px;
  left: 16px;
  display: grid;
  place-items: center;
  width: 30px;
  height: 30px;
  border: 1px solid rgba(244, 63, 94, 0.45);
  border-radius: 8px;
  color: #ffffff;
  background: rgba(244, 63, 94, 0.14);
  font-style: normal;
  font-size: 12px;
  font-weight: 950;
}

.character-info-dossier {
  align-items: start;
}

.info-dossier-identity {
  position: relative;
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 22px;
  min-height: 268px;
  overflow: hidden;
  isolation: isolate;
}

.info-dossier-identity::before {
  content: "";
  position: absolute;
  inset: -28% -12% auto 42%;
  height: 118%;
  background:
    radial-gradient(circle at 52% 34%, rgba(34, 211, 238, 0.14), transparent 34%),
    radial-gradient(circle at 78% 42%, rgba(244, 63, 94, 0.12), transparent 40%);
  opacity: 0;
  pointer-events: none;
  z-index: -1;
}

.info-dossier-identity.has-dossier-raw-image::before {
  opacity: 1;
}

.info-dossier-copy {
  position: relative;
  z-index: 2;
  display: grid;
  gap: 18px;
  max-width: min(740px, 100%);
}

.info-dossier-identity.has-dossier-raw-image .info-dossier-copy {
  padding-right: min(36vw, 430px);
}

.info-dossier-raw-figure {
  position: absolute;
  inset: 18px 18px 0 auto;
  z-index: 1;
  display: flex;
  align-items: flex-end;
  justify-content: flex-end;
  width: min(40%, 430px);
  margin: 0;
  pointer-events: none;
}

.info-dossier-raw-figure::before,
.info-dossier-raw-figure::after {
  content: none;
}

.info-dossier-raw-figure img {
  position: relative;
  z-index: 1;
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
  object-position: right bottom;
  transform: translateX(1%);
  filter: drop-shadow(0 26px 34px rgba(0, 0, 0, 0.62));
  mix-blend-mode: normal;
}

.info-dossier-raw-figure figcaption {
  display: none;
}

.info-dossier-tags {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: center;
  gap: 8px;
  min-width: 0;
  max-width: min(580px, 100%);
}

.info-dossier-tags .badge {
  min-height: 28px;
  white-space: nowrap;
}

.info-dossier-tags .badge-inline-icon {
  width: 16px;
  height: 16px;
  object-fit: contain;
}

.info-stat-board {
  background:
    linear-gradient(120deg, rgba(34, 211, 238, 0.055), transparent 44%),
    rgba(16, 23, 32, 0.72);
}

.guide-hub-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.guide-hub-card {
  min-height: 124px;
  background:
    linear-gradient(120deg, rgba(244, 63, 94, 0.08), transparent 48%),
    rgba(16, 23, 32, 0.78);
}

.guide-hub-empty strong {
  display: block;
  margin-bottom: 6px;
  color: #ffffff;
  font-size: 20px;
}

.detail-content-block {
  padding: clamp(18px, 3vw, 28px);
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background: rgba(16, 23, 32, 0.72);
}

.detail-kicker {
  display: block;
  margin-bottom: 14px;
  color: #bdd7ff;
  font-size: 13px;
  font-weight: 900;
  letter-spacing: 0;
  text-transform: uppercase;
}

.tier-position-grid {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.tier-position-grid span {
  display: flex;
  align-items: center;
  gap: 14px;
  min-height: 44px;
  padding: 9px 15px;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background: rgba(255, 255, 255, 0.04);
}

.tier-position-grid small,
.character-info-grid small,
.character-guide-card small {
  color: #9db4d4;
  font-size: 12px;
  letter-spacing: 0;
  text-transform: uppercase;
}

.tier-position-grid strong {
  color: var(--text);
  font-size: 16px;
}

.tier-position-grid .tier-badge {
  display: inline-flex;
  align-items: center;
  min-height: 26px;
  padding: 4px 9px;
  border-radius: 5px;
  color: #141414;
  font-size: 14px;
}

.collection-stat-grid strong {
  font-size: 17px;
}

.detail-copy p {
  margin: 0;
  color: #edf6f8;
  font-size: 17px;
  line-height: 1.7;
}

.detail-copy p + p {
  margin-top: 14px;
}

.character-info-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px 28px;
}

.character-info-grid span {
  display: grid;
  gap: 8px;
  min-height: 66px;
  align-content: start;
}

.character-info-grid strong {
  color: #ffffff;
  font-size: 16px;
}

.character-tab-stats.stat-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.mecha-info-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(320px, 0.95fr);
  gap: clamp(24px, 5vw, 64px);
  align-items: start;
}

.mecha-info-section {
  position: relative;
  min-width: 0;
}

.mecha-section-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  margin-bottom: 12px;
}

.mecha-section-head .detail-kicker {
  margin-bottom: 0;
}

.mecha-basic-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px 42px;
}

.mecha-basic-grid span,
.mecha-ap-list span {
  display: grid;
  gap: 4px;
  min-width: 0;
}

.mecha-basic-grid small,
.mecha-ap-list small {
  color: #9db4d4;
  font-size: 12px;
}

.mecha-basic-grid strong,
.mecha-ap-list strong {
  color: #ffffff;
  font-size: 15px;
}

.mecha-stat-bars {
  display: grid;
  gap: 8px;
}

.mecha-combat-toggle-input {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}

.mecha-combat-stat-set.is-upgraded {
  display: none;
}

.mecha-combat-toggle-input:checked ~ .mecha-section-head .mecha-switch-track {
  background: #ff4b5f;
  box-shadow: 0 0 18px rgba(255, 75, 95, 0.3);
}

.mecha-combat-toggle-input:checked ~ .mecha-section-head .mecha-switch-track::after {
  transform: translateX(18px);
}

.mecha-combat-toggle-input:checked ~ .mecha-combat-stat-set.is-base {
  display: none;
}

.mecha-combat-toggle-input:checked ~ .mecha-combat-stat-set.is-upgraded {
  display: block;
}

.mecha-stat-row {
  display: grid;
  grid-template-columns: 104px minmax(0, 1fr) 48px;
  gap: 10px;
  align-items: center;
  min-height: 18px;
}

.mecha-stat-row span,
.mecha-stat-row strong {
  color: #ffffff;
  font-size: 12px;
  line-height: 1.1;
}

.mecha-stat-row strong {
  text-align: right;
}

.mecha-stat-row div {
  height: 5px;
  background: rgba(255, 255, 255, 0.08);
  overflow: hidden;
}

.mecha-stat-row i {
  display: block;
  width: var(--stat-fill);
  height: 100%;
  background: #ff4b5f;
  box-shadow: 0 0 18px rgba(255, 75, 95, 0.34);
}

.mecha-ap-list {
  display: grid;
  gap: 6px;
  margin-top: 16px;
  padding-left: 114px;
}

.mecha-ap-list span {
  grid-template-columns: minmax(0, 1fr) 48px;
  align-items: center;
}

.mecha-ap-list strong {
  text-align: right;
}

.mecha-talent-card {
  position: relative;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background: rgba(255, 255, 255, 0.03);
  overflow: hidden;
}

.mecha-talent-toggle-input {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}

.mecha-talent-head {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  align-items: center;
  padding: 16px;
  border-bottom: 1px solid var(--line);
}

.mecha-talent-title {
  display: flex;
  align-items: center;
  gap: 13px;
  min-width: 0;
}

.mecha-talent-title > span:last-child {
  display: grid;
  gap: 4px;
  min-width: 0;
}

.mecha-talent-title strong {
  color: #ffffff;
  font-size: 15px;
}

.mecha-talent-title small {
  color: #9db4d4;
  font-size: 12px;
  font-weight: 700;
  line-height: 1.35;
}

.mecha-talent-icon {
  display: grid;
  place-items: center;
  width: 44px;
  height: 44px;
  flex: 0 0 auto;
  overflow: visible;
}

.mecha-talent-icon img {
  width: 40px;
  height: 40px;
  object-fit: contain;
  display: block;
}

.mecha-talent-switch,
.mecha-talent-single-state {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  margin-left: auto;
  color: #d8c7ff;
  font-size: 12px;
  font-weight: 850;
  white-space: nowrap;
}

.mecha-talent-switch {
  cursor: pointer;
  user-select: none;
}

.mecha-talent-state.is-upgraded {
  color: #ff4b5f;
}

.mecha-switch-track {
  position: relative;
  width: 38px;
  height: 20px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.14);
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.12);
  transition: background 180ms ease, box-shadow 180ms ease;
}

.mecha-switch-track::after {
  content: "";
  position: absolute;
  top: 3px;
  left: 3px;
  width: 14px;
  height: 14px;
  border-radius: 50%;
  background: #ffffff;
  transition: transform 180ms ease;
}

.mecha-talent-copy {
  margin: 0;
  padding: 14px 16px;
}

.mecha-talent-desc {
  margin: 0;
  color: #edf6f8;
  line-height: 1.6;
}

.mecha-talent-desc mark {
  padding: 0;
  color: #ff4b5f;
  background: transparent;
}

.mecha-talent-desc.is-upgraded {
  display: none;
}

.mecha-talent-toggle-input:checked ~ .mecha-talent-head .mecha-switch-track {
  background: #ff4b5f;
  box-shadow: 0 0 18px rgba(255, 75, 95, 0.3);
}

.mecha-talent-toggle-input:checked ~ .mecha-talent-head .mecha-switch-track::after {
  transform: translateX(18px);
}

.mecha-talent-toggle-input:checked ~ .mecha-talent-copy .mecha-talent-desc.is-base {
  display: none;
}

.mecha-talent-toggle-input:checked ~ .mecha-talent-copy .mecha-talent-desc.is-upgraded {
  display: block;
}

.mecha-drive-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.mecha-drive-card {
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background: rgba(255, 255, 255, 0.035);
  overflow: hidden;
}

.mecha-drive-head {
  display: flex;
  align-items: center;
  gap: 12px;
  min-height: 74px;
  padding: 16px;
  border-bottom: 1px solid var(--line);
  background: rgba(255, 255, 255, 0.025);
}

.mecha-drive-card h3 {
  margin: 0 0 4px;
  color: #ffffff;
  font-size: 16px;
}

.mecha-drive-card small {
  display: block;
  color: #9db4d4;
}

.mecha-drive-node {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  padding: 0 16px;
}

.mecha-drive-head + .mecha-drive-node {
  margin-top: 16px;
}

.mecha-drive-node + .mecha-drive-node {
  margin-top: 13px;
}

.mecha-drive-node:last-child {
  padding-bottom: 16px;
}

.mecha-drive-card strong {
  color: #ffffff;
  font-size: 14px;
}

.mecha-drive-card p {
  margin: 4px 0 0;
  color: #cbd5e1;
  line-height: 1.45;
}

.mecha-drive-card p mark {
  padding: 0;
  color: #ff4b5f;
  background: transparent;
}

.mecha-drive-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
}

.mecha-drive-icon img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.mecha-drive-main-icon {
  width: 42px;
  height: 42px;
}

.mecha-drive-node-icon {
  width: 28px;
  height: 28px;
  margin-top: 2px;
}

.mecha-st-info-panel {
  margin-top: 18px;
}

.mecha-st-state {
  display: grid;
  gap: 16px;
}

.mecha-combat-stat-set.mecha-st-state.is-upgraded {
  display: none;
}

.mecha-combat-toggle-input:checked ~ .mecha-combat-stat-set.mecha-st-state.is-upgraded {
  display: grid;
}

.mecha-st-part-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.mecha-st-part-card,
.mecha-st-module-card {
  border: 1px solid rgba(180, 205, 220, 0.16);
  border-radius: var(--radius);
  background:
    linear-gradient(135deg, rgba(168, 85, 247, 0.08), transparent 46%),
    rgba(255, 255, 255, 0.035);
  overflow: hidden;
}

.mecha-st-part-head {
  display: flex;
  align-items: center;
  gap: 12px;
  min-height: 76px;
  padding: 14px;
  border-bottom: 1px solid rgba(180, 205, 220, 0.12);
}

.mecha-st-part-icon {
  display: inline-grid;
  place-items: center;
  width: 54px;
  height: 54px;
  flex: 0 0 auto;
  border: 1px solid rgba(180, 205, 220, 0.16);
  border-radius: 10px;
  background: rgba(0, 0, 0, 0.22);
}

.mecha-st-part-icon img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.mecha-st-part-head small,
.mecha-st-stat-grid small {
  display: block;
  color: #9db4d4;
  font-size: 11px;
  font-weight: 800;
  text-transform: uppercase;
}

.mecha-st-part-head strong {
  display: block;
  margin-top: 3px;
  color: #ffffff;
  font-size: 16px;
  font-weight: 900;
}

.mecha-st-stat-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.mecha-st-stat-grid span {
  display: grid;
  gap: 4px;
  min-height: 58px;
  padding: 12px 14px;
  border-right: 1px solid rgba(180, 205, 220, 0.1);
  border-bottom: 1px solid rgba(180, 205, 220, 0.1);
}

.mecha-st-stat-grid span:nth-child(2n) {
  border-right: 0;
}

.mecha-st-stat-grid span:nth-last-child(-n + 2) {
  border-bottom: 0;
}

.mecha-st-stat-grid strong {
  color: #ffffff;
  font-weight: 900;
}

.mecha-st-module-section {
  display: grid;
  gap: 10px;
}

.mecha-st-module-list {
  display: grid;
  gap: 10px;
}

.mecha-st-module-card {
  display: grid;
  grid-template-columns: 46px minmax(0, 1fr);
  gap: 12px;
  align-items: start;
  padding: 13px;
}

.mecha-st-module-icon {
  display: inline-grid;
  place-items: center;
  width: 42px;
  height: 42px;
  border-radius: 50%;
  background: rgba(11, 15, 20, 0.72);
}

.mecha-st-module-icon img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.mecha-st-module-card strong {
  display: block;
  color: #ffffff;
  font-weight: 900;
}

.mecha-st-module-card p {
  margin: 4px 0 0;
  color: #d7e7ff;
  font-size: 13px;
  line-height: 1.55;
}

.detail-content-block .character-gallery {
  margin-top: 0;
}

.character-guide-list {
  display: grid;
  gap: 12px;
  max-width: 680px;
}

.game-guide-list {
  display: grid;
  gap: 14px;
  max-width: 920px;
}

.character-guide-card {
  position: relative;
  display: grid;
  grid-template-columns: 72px minmax(0, 1fr) 24px;
  align-items: center;
  gap: 18px;
  min-height: 114px;
  padding: 14px;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background: rgba(255, 255, 255, 0.035);
  transition: border-color 160ms ease, background 160ms ease, transform 160ms ease;
}

.character-guide-card::after {
  content: "";
  width: 9px;
  height: 9px;
  border-right: 2px solid var(--muted);
  border-bottom: 2px solid var(--muted);
  transform: rotate(-45deg);
}

.character-guide-card:hover,
.character-guide-card:focus-visible {
  transform: translateY(-2px);
  border-color: var(--line-strong);
  background: rgba(255, 255, 255, 0.055);
  outline: none;
}

.character-guide-thumb {
  display: grid;
  place-items: center;
  width: 72px;
  height: 72px;
  border: 1px solid var(--line);
  border-radius: 50%;
  color: var(--text);
  background: rgba(255, 255, 255, 0.06);
  font-size: 24px;
  font-weight: 950;
  overflow: hidden;
}

.character-guide-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.character-guide-card strong {
  display: block;
  margin: 6px 0 4px;
  color: var(--text);
  font-size: 15px;
  letter-spacing: 0.02em;
  text-transform: uppercase;
}

.character-guide-card em {
  display: block;
  color: #94a7c2;
  font-style: normal;
  line-height: 1.45;
}

.game-guide-card {
  min-height: 126px;
  padding: 16px;
  background:
    linear-gradient(120deg, rgba(244, 63, 94, 0.055), transparent 42%),
    rgba(255, 255, 255, 0.035);
}

.game-guide-card .character-guide-thumb {
  width: 76px;
  height: 76px;
  border-radius: var(--radius);
}

.game-guide-card small {
  display: inline-flex;
  width: fit-content;
  min-height: 24px;
  align-items: center;
  padding: 3px 8px;
  border: 1px solid rgba(180, 205, 220, 0.14);
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.045);
}

.game-guide-card strong {
  font-size: 18px;
}

.character-gallery {
  margin-top: 18px;
}

.character-gallery h2 {
  margin: 0 0 10px;
}

.character-gallery > div {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.character-gallery img {
  aspect-ratio: 3 / 4;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background: var(--surface-2);
}

.skill-list {
  display: grid;
  gap: 10px;
}

.skill-item {
  padding: 14px;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background: rgba(255, 255, 255, 0.035);
}

.skill-item strong {
  display: block;
  margin: 4px 0 5px;
  font-size: 18px;
}

.tier-section {
  display: grid;
  gap: 12px;
}

.tier-section-with-sidebar {
  grid-template-columns: minmax(220px, 280px) minmax(0, 1fr);
  align-items: start;
  gap: 28px;
}

.tier-filter-sidebar {
  position: sticky;
  top: 92px;
  display: grid;
  gap: 28px;
  padding: 4px 22px 4px 0;
  border-right: 1px solid rgba(148, 163, 184, 0.18);
}

.tier-filter-group {
  display: grid;
  gap: 14px;
}

.tier-filter-group + .tier-filter-group {
  padding-top: 24px;
  border-top: 1px solid rgba(148, 163, 184, 0.18);
}

.tier-filter-title {
  color: #c6dbff;
  font-size: 14px;
  font-weight: 900;
  letter-spacing: 0.08em;
}

.tier-filter-options {
  display: grid;
  gap: 12px;
}

.tier-filter-option {
  display: flex;
  align-items: center;
  gap: 11px;
  color: #c7d9ee;
  cursor: pointer;
  font-size: 16px;
  line-height: 1.2;
}

.tier-filter-option input {
  appearance: none;
  width: 20px;
  height: 20px;
  flex: 0 0 20px;
  margin: 0;
  border: 1px solid rgba(148, 163, 184, 0.55);
  border-radius: 4px;
  background: rgba(7, 10, 14, 0.86);
  cursor: pointer;
}

.tier-filter-option input:checked {
  border-color: rgba(244, 63, 94, 0.9);
  background: linear-gradient(135deg, #f43f5e, #8b5cf6);
  box-shadow: inset 0 0 0 4px #101317, 0 0 0 3px rgba(244, 63, 94, 0.12);
}

.tier-filter-icon {
  width: 24px;
  height: 24px;
  object-fit: contain;
  filter: drop-shadow(0 1px 2px rgba(0, 0, 0, 0.65));
}

.tier-list-panel {
  display: grid;
  gap: 12px;
  min-width: 0;
}

.tier-list-summary {
  justify-self: end;
  color: #bcd7f8;
  font-size: 14px;
}

.tier-filter-empty {
  padding: 18px;
  border: 1px dashed rgba(148, 163, 184, 0.28);
  border-radius: var(--radius);
  background: rgba(255, 255, 255, 0.025);
}

.tier-row {
  display: grid;
  grid-template-columns: 120px minmax(0, 1fr);
  border: 1px solid var(--line);
  border-radius: var(--radius);
  overflow: visible;
  background: rgba(16, 23, 32, 0.88);
}

.tier-label {
  display: grid;
  place-items: center;
  min-height: 112px;
  padding: 16px;
  color: #141414;
  background: #ff7f7f;
  font-weight: 950;
  font-size: 26px;
}

.tier-label.tier-t0 {
  background: #ff7f7f;
}

.tier-label.tier-t05 {
  background: #ffbf7f;
}

.tier-label.tier-t1 {
  background: #ffff7f;
}

.tier-label.tier-t2 {
  background: #7fff7f;
}

.tier-label.tier-t3 {
  background: #7fbfff;
}

.tier-label.tier-t4 {
  background: #bfbfff;
}

.tier-label.tier-t5 {
  background: #d9d9d9;
}

.tier-members {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(150px, 170px));
  align-items: stretch;
  justify-content: start;
  gap: 14px;
  min-height: 112px;
  padding: 14px;
  overflow: visible;
}

.tier-chip {
  display: grid;
  grid-template-columns: 56px minmax(0, 1fr);
  column-gap: 10px;
  align-items: center;
  min-width: 220px;
  padding: 10px;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background: rgba(255, 255, 255, 0.04);
}

.tier-chip-avatar {
  grid-row: span 2;
  display: grid;
  place-items: center;
  width: 56px;
  height: 64px;
  border: 1px solid var(--line);
  border-radius: var(--radius-sm);
  background: rgba(255, 255, 255, 0.08);
  overflow: hidden;
  color: var(--text);
  font-weight: 900;
  font-size: 18px;
}

.tier-chip-avatar img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.tier-chip strong,
.tier-chip small {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.tier-chip small {
  color: var(--muted);
}

.article-layout {
  display: grid;
  grid-template-columns: minmax(0, 900px) minmax(280px, 324px);
  align-items: start;
  gap: clamp(28px, 5vw, 64px);
  width: min(var(--page-max), calc(100% - (var(--page-pad) * 2)));
  margin: clamp(44px, 7vw, 88px) auto;
}

.article-reading-progress {
  position: fixed;
  left: 0;
  right: 0;
  top: 76px;
  z-index: 49;
  height: 3px;
  background: rgba(255, 255, 255, 0.04);
  pointer-events: none;
}

.article-reading-progress span {
  display: block;
  width: 100%;
  height: 100%;
  background: linear-gradient(90deg, #f43f5e, #ffb4c0);
  transform: scaleX(0);
  transform-origin: left center;
  transition: transform 80ms linear;
}

.article-detail {
  width: min(920px, calc(100% - 36px));
  margin: clamp(44px, 7vw, 88px) auto;
}

.article-detail h1 {
  max-width: 980px;
  text-wrap: balance;
  font-size: clamp(42px, 5.2vw, 68px);
  line-height: 1.03;
  margin-top: 18px;
  margin-bottom: 18px;
}

.article-layout .article-detail {
  width: 100%;
  margin: 0;
}

.article-breadcrumb {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
  margin-bottom: 28px;
  color: var(--muted);
  font-size: 14px;
  font-weight: 750;
}

.article-breadcrumb a {
  color: #c5d1dc;
}

.article-breadcrumb a:hover,
.article-breadcrumb a:focus-visible {
  color: #ffffff;
  outline: none;
}

.article-breadcrumb strong {
  color: #f43f5e;
}

.article-kicker {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: center;
  margin-bottom: 14px;
  color: #bdd7ff;
  font-size: 13px;
  font-weight: 850;
}

.article-kicker > span:not(.badge) {
  display: inline-flex;
  align-items: center;
  min-height: 26px;
  padding: 0 9px;
  border: 1px solid rgba(148, 163, 184, 0.22);
  border-radius: 999px;
  color: #ffffff;
  background: rgba(255, 255, 255, 0.04);
}

.article-meta-row {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
  margin-top: 22px;
  color: var(--muted);
  font-size: 14px;
}

.article-meta-row strong {
  color: #f43f5e;
}

.article-author-avatar {
  display: inline-grid;
  place-items: center;
  width: 42px;
  height: 42px;
  overflow: hidden;
  border: 1px solid rgba(244, 63, 94, 0.38);
  border-radius: 999px;
  color: #ffffff;
  background:
    linear-gradient(135deg, rgba(244, 63, 94, 0.28), transparent 62%),
    rgba(255, 255, 255, 0.06);
  font-weight: 950;
}

.article-author-avatar img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.article-detail .content-panel {
  margin-top: 34px;
  padding: 30px 0 0;
  border: 0;
  border-top: 1px solid rgba(148, 163, 184, 0.18);
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

.article-detail .content-panel p + p {
  margin-top: 18px;
}

.article-share {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  margin-top: 22px;
  padding: 13px;
  border: 1px solid rgba(148, 163, 184, 0.2);
  border-radius: var(--radius);
  background:
    linear-gradient(120deg, rgba(244, 63, 94, 0.1), transparent 44%),
    rgba(11, 15, 20, 0.82);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.035), 0 18px 42px rgba(0, 0, 0, 0.18);
}

.article-share-footer {
  margin-top: 40px;
  margin-bottom: 6px;
  padding: 18px;
  border-color: rgba(244, 63, 94, 0.28);
  background:
    linear-gradient(90deg, rgba(244, 63, 94, 0.13), transparent 45%),
    rgba(11, 15, 20, 0.88);
}

.article-share-copy {
  display: grid;
  gap: 4px;
  min-width: 145px;
}

.article-share-label {
  color: #ffffff;
  font-size: 12px;
  font-weight: 950;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  white-space: nowrap;
}

.article-share-copy small {
  max-width: 230px;
  color: var(--muted);
  font-size: 13px;
  line-height: 1.35;
}

.article-share-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 9px;
}

.article-share-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 40px;
  padding: 0 14px;
  border: 1px solid rgba(148, 163, 184, 0.24);
  border-radius: var(--radius-sm);
  color: #eaf3fa;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.055), rgba(255, 255, 255, 0.025)),
    rgba(16, 23, 32, 0.78);
  font: inherit;
  font-size: 13px;
  font-weight: 900;
  cursor: pointer;
  white-space: nowrap;
  transition: transform 150ms ease, border-color 150ms ease, background 150ms ease, color 150ms ease, box-shadow 150ms ease;
}

.article-share-icon {
  display: inline-grid;
  place-items: center;
  flex: 0 0 auto;
  width: 18px;
  height: 18px;
  color: currentColor;
}

.article-share-icon svg {
  display: block;
  width: 18px;
  height: 18px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.9;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.article-share-icon-whatsapp svg,
.article-share-icon-telegram svg,
.article-share-icon-facebook svg {
  fill: currentColor;
  stroke: none;
}

.article-share-button:hover,
.article-share-button:focus-visible {
  border-color: rgba(244, 63, 94, 0.7);
  color: #ffffff;
  background: rgba(244, 63, 94, 0.13);
  outline: none;
  transform: translateY(-1px);
  box-shadow: 0 10px 24px rgba(244, 63, 94, 0.12);
}

.article-share-native {
  border-color: rgba(244, 63, 94, 0.72);
  color: #ffffff;
  background:
    linear-gradient(180deg, rgba(244, 63, 94, 0.18), rgba(244, 63, 94, 0.08)),
    rgba(20, 28, 39, 0.86);
  box-shadow: inset 0 0 0 1px rgba(244, 63, 94, 0.12);
}

.article-share-native:hover,
.article-share-native:focus-visible {
  background: rgba(244, 63, 94, 0.18);
}

.article-share-platform-copy {
  color: #dbeafe;
}

.article-share-platform-whatsapp {
  color: #9ff2bf;
}

.article-share-platform-telegram {
  color: #9ddcff;
}

.article-share-platform-x {
  color: #f8fafc;
}

.article-share-platform-facebook {
  color: #b8d5ff;
}

.guide-detail {
  position: relative;
}

.guide-detail .article-kicker .badge {
  border-color: rgba(244, 63, 94, 0.62);
  color: #ffffff;
  background:
    linear-gradient(135deg, rgba(244, 63, 94, 0.22), transparent 64%),
    rgba(16, 23, 32, 0.76);
}

.guide-hero-media {
  position: relative;
  display: block;
  min-height: clamp(220px, 28vw, 380px);
  margin: 26px 0 0;
  overflow: hidden;
  border: 1px solid rgba(148, 163, 184, 0.22);
  border-radius: var(--radius);
  background:
    radial-gradient(circle at 24% 16%, rgba(244, 63, 94, 0.22), transparent 42%),
    rgba(10, 15, 22, 0.9);
  box-shadow: 0 22px 58px rgba(0, 0, 0, 0.28), inset 0 1px 0 rgba(255, 255, 255, 0.04);
}

.guide-hero-media::after {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(180deg, rgba(5, 7, 11, 0.06), rgba(5, 7, 11, 0.36)),
    linear-gradient(90deg, rgba(244, 63, 94, 0.12), transparent 45%);
  pointer-events: none;
}

.guide-hero-media img {
  display: block;
  width: 100%;
  height: clamp(220px, 28vw, 380px);
  object-fit: cover;
}

.guide-author-box {
  border-color: rgba(244, 63, 94, 0.26);
  background:
    linear-gradient(120deg, rgba(244, 63, 94, 0.12), transparent 48%),
    linear-gradient(180deg, rgba(17, 24, 34, 0.72), rgba(8, 11, 16, 0.86));
}

.guide-next-nav {
  margin-top: 24px;
}

.guide-resource-block {
  margin-top: 34px;
}

.guide-related-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.guide-related-intel-card {
  min-height: 168px;
}

.guide-related-thumb {
  border-color: rgba(244, 63, 94, 0.32);
}

.article-related-block {
  margin-top: 28px;
}

.article-author-box {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 16px;
  margin-top: 34px;
  padding: 18px;
  border: 1px solid rgba(148, 163, 184, 0.2);
  border-radius: var(--radius);
  background:
    linear-gradient(120deg, rgba(244, 63, 94, 0.1), transparent 48%),
    rgba(255, 255, 255, 0.035);
}

.article-author-box-avatar {
  display: inline-grid;
  place-items: center;
  width: 72px;
  height: 72px;
  overflow: hidden;
  border: 1px solid rgba(244, 63, 94, 0.42);
  border-radius: 999px;
  color: #ffffff;
  background: rgba(255, 255, 255, 0.06);
  font-weight: 950;
}

.article-author-box-avatar img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.article-author-box small,
.article-author-box > div > strong {
  color: #f43f5e;
  font-size: 12px;
  font-weight: 950;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.article-author-box h2 {
  margin: 4px 0 8px;
  color: #ffffff;
  font-size: clamp(22px, 2.6vw, 30px);
}

.article-author-box p {
  max-width: 66ch;
  margin: 0 0 14px;
  color: var(--muted);
  line-height: 1.6;
}

.article-author-more {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 10px;
}

.article-author-more a {
  display: inline-flex;
  align-items: center;
  min-height: 34px;
  padding: 0 10px;
  border: 1px solid rgba(148, 163, 184, 0.18);
  border-radius: var(--radius-sm);
  color: #ffffff;
  background: rgba(255, 255, 255, 0.04);
  font-size: 13px;
  font-weight: 850;
}

.article-next-nav {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  margin-top: 18px;
}

.article-next-nav a,
.article-next-nav > span {
  display: grid;
  align-content: center;
  gap: 6px;
  min-height: 96px;
  padding: 15px;
  border: 1px solid rgba(148, 163, 184, 0.18);
  border-radius: var(--radius);
  color: #ffffff;
  background: rgba(255, 255, 255, 0.035);
}

.article-next-nav a:hover,
.article-next-nav a:focus-visible {
  border-color: rgba(244, 63, 94, 0.56);
  background: rgba(244, 63, 94, 0.1);
  outline: none;
}

.article-next-nav small {
  color: var(--muted);
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
}

.article-next-nav strong {
  overflow: hidden;
  line-height: 1.25;
  text-overflow: ellipsis;
}

.article-related-block .section-heading-row {
  margin-bottom: 14px;
}

.article-related-block .section-heading-row span {
  color: #bdd7ff;
  font-size: 12px;
  font-weight: 900;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.article-related-block .section-heading-row h2 {
  margin: 5px 0 0;
  font-size: clamp(22px, 2.5vw, 30px);
}

.article-resource-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}

.article-resource-card {
  display: grid;
  gap: 6px;
  min-height: 82px;
  padding: 13px;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background:
    linear-gradient(135deg, rgba(244, 63, 94, 0.08), transparent 48%),
    rgba(255, 255, 255, 0.035);
}

.article-resource-card:hover,
.article-resource-card:focus-visible {
  border-color: rgba(244, 63, 94, 0.42);
  outline: none;
}

.article-resource-card small {
  color: #fda4af;
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
}

.article-resource-card strong {
  color: #ffffff;
  line-height: 1.25;
}

.article-related-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  align-items: stretch;
  gap: 14px;
}

.article-related-intel-card {
  display: grid;
  grid-template-columns: 76px minmax(0, 1fr);
  gap: 13px;
  min-width: 0;
  min-height: 178px;
  padding: 14px;
  border: 1px solid rgba(148, 163, 184, 0.2);
  border-radius: var(--radius);
  background:
    linear-gradient(135deg, rgba(244, 63, 94, 0.08), transparent 48%),
    linear-gradient(180deg, rgba(17, 25, 35, 0.92), rgba(7, 10, 15, 0.94));
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.035), 0 14px 34px rgba(0, 0, 0, 0.18);
  overflow: hidden;
  transition: border-color 0.18s ease, box-shadow 0.18s ease, transform 0.18s ease;
}

.article-related-intel-card:hover,
.article-related-intel-card:focus-visible {
  border-color: rgba(244, 63, 94, 0.58);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.045), 0 18px 44px rgba(0, 0, 0, 0.25), 0 0 0 1px rgba(244, 63, 94, 0.12);
  outline: none;
  transform: translateY(-2px);
}

.article-related-thumb {
  position: relative;
  display: grid;
  place-items: center;
  width: 76px;
  height: 76px;
  border: 1px solid rgba(148, 163, 184, 0.22);
  border-radius: 14px;
  background:
    radial-gradient(circle at 42% 28%, rgba(244, 63, 94, 0.32), transparent 48%),
    linear-gradient(135deg, rgba(31, 41, 55, 0.95), rgba(7, 10, 15, 0.96));
  overflow: hidden;
}

.article-related-thumb::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, transparent 46%, rgba(0, 0, 0, 0.4));
  pointer-events: none;
}

.article-related-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transform: scale(1.03);
}

.article-related-thumb b {
  color: #ffffff;
  font-size: 28px;
  font-weight: 950;
  text-shadow: var(--text-shadow);
}

.article-related-intel-body {
  display: grid;
  gap: 8px;
  min-width: 0;
}

.article-related-intel-top {
  display: grid;
  gap: 7px;
  min-width: 0;
}

.article-related-intel-kicker {
  display: flex;
  align-items: center;
  gap: 7px;
  min-width: 0;
  color: #b9d9ff;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: 0.04em;
  line-height: 1.2;
  text-transform: uppercase;
}

.article-related-intel-kicker span,
.article-related-intel-kicker b {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.article-related-intel-kicker i {
  color: #f43f5e;
  font-style: normal;
  flex: 0 0 auto;
}

.article-related-intel-badges {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
  min-width: 0;
}

.article-related-intel-badges .article-card-pill {
  min-height: 20px;
  padding: 0 7px;
  font-size: 8px;
}

.article-related-intel-title {
  display: -webkit-box;
  overflow: hidden;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  color: #ffffff;
  font-size: clamp(16px, 1.16vw, 19px);
  font-weight: 950;
  line-height: 1.16;
  overflow-wrap: anywhere;
  text-shadow: var(--text-shadow);
}

.article-related-intel-excerpt {
  display: -webkit-box;
  overflow: hidden;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  color: #b9c7d7;
  font-size: 13px;
  line-height: 1.45;
}

.article-related-intel-meta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  min-width: 0;
  margin-top: auto;
  padding-top: 9px;
  border-top: 1px solid rgba(148, 163, 184, 0.16);
}

.article-related-intel-meta small {
  min-width: 0;
  overflow: hidden;
  color: #8fa4ba;
  font-size: 11px;
  font-weight: 700;
  line-height: 1.3;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.article-related-intel-action {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 5px;
  min-height: 28px;
  padding: 0 11px;
  border: 1px solid rgba(244, 63, 94, 0.5);
  border-radius: 9px;
  color: #ffffff;
  background: rgba(244, 63, 94, 0.08);
  font-size: 11px;
  font-weight: 900;
  white-space: nowrap;
  transition: background 0.18s ease, border-color 0.18s ease;
}

.article-related-intel-card:hover .article-related-intel-action,
.article-related-intel-card:focus-visible .article-related-intel-action {
  border-color: rgba(244, 63, 94, 0.86);
  background: rgba(244, 63, 94, 0.16);
}

.article-anchor-heading {
  scroll-margin-top: 96px;
}

.article-jump-panel {
  position: sticky;
  top: 100px;
  align-self: start;
  max-height: calc(100vh - 120px);
  overflow: auto;
  scrollbar-width: thin;
}

.article-jump-card {
  padding: 24px;
  border: 1px solid rgba(148, 163, 184, 0.18);
  border-radius: var(--radius);
  background:
    linear-gradient(180deg, rgba(244, 63, 94, 0.055), transparent 120px),
    rgba(15, 20, 28, 0.72);
  box-shadow: 0 20px 52px rgba(0, 0, 0, 0.25), inset 0 1px 0 rgba(255, 255, 255, 0.035);
  backdrop-filter: blur(14px);
}

.article-jump-title {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  color: var(--muted);
  font-size: 12px;
  font-weight: 900;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.article-jump-title i {
  display: inline-grid;
  width: 12px;
  height: 12px;
  grid-template-columns: 3px 1fr;
  gap: 3px;
}

.article-jump-title i::before,
.article-jump-title i::after {
  content: "";
  display: block;
  border-radius: 2px;
  background: currentColor;
  opacity: 0.72;
}

.article-jump-title i::after {
  box-shadow: 0 5px 0 currentColor, 0 10px 0 currentColor;
}

.article-jump-list {
  display: grid;
  margin-top: 16px;
  padding-left: 0;
  border-left: 1px solid rgba(180, 205, 220, 0.14);
}

.article-jump-link {
  display: block;
  margin-left: -1px;
  padding: 10px 0 10px 14px;
  border-left: 2px solid transparent;
  color: var(--muted);
  font-size: 15px;
  line-height: 1.35;
  transition: color 150ms ease, border-color 150ms ease, background 150ms ease;
}

.article-jump-link:hover,
.article-jump-link:focus-visible,
.article-jump-link.is-active {
  border-left-color: #f43f5e;
  color: #ffffff;
  background: linear-gradient(90deg, rgba(244, 63, 94, 0.13), transparent 82%);
  outline: none;
}

.article-jump-level-3 {
  padding-left: 26px;
  font-size: 13px;
}

.article-jump-level-4 {
  padding-left: 38px;
  font-size: 13px;
  color: var(--muted-2);
}

.site-footer strong,
.content-panel h2,
.side-panel h2 {
  color: var(--text);
}

.hidden {
  display: none !important;
}

[hidden] {
  display: none !important;
}

.flash {
  width: min(1120px, calc(100% - 36px));
  margin: 18px auto 0;
  padding: 13px 15px;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background: rgba(255, 255, 255, 0.055);
  color: var(--text);
}

.flash-success {
  border-color: rgba(52, 211, 153, 0.38);
  background: rgba(52, 211, 153, 0.08);
}

.flash-error {
  border-color: rgba(251, 113, 133, 0.42);
  background: rgba(251, 113, 133, 0.09);
}

.admin-login-body,
.admin-body {
  background: var(--bg);
}

.admin-login-body {
  display: grid;
  place-items: center;
  min-height: 100vh;
  padding: 22px;
}

.login-card {
  width: min(460px, 100%);
  padding: 28px;
}

.login-card h1 {
  margin: 24px 0 8px;
  font-size: 34px;
}

.login-card p,
.login-card small {
  color: var(--muted);
  line-height: 1.6;
}

.form-stack {
  display: grid;
  gap: 14px;
  margin-top: 20px;
}

.admin-body {
  display: grid;
  grid-template-columns: 260px minmax(0, 1fr);
  min-height: 100vh;
  background:
    linear-gradient(140deg, rgba(94, 234, 212, 0.045), transparent 34%),
    linear-gradient(320deg, rgba(168, 85, 247, 0.035), transparent 40%),
    var(--bg);
}

.admin-sidebar {
  position: sticky;
  top: 0;
  height: 100vh;
  display: flex;
  flex-direction: column;
  gap: 22px;
  padding: 18px;
  border-right: 1px solid var(--line);
  background: rgba(7, 9, 13, 0.96);
  box-shadow: 18px 0 38px rgba(0, 0, 0, 0.16);
}

.admin-nav {
  display: grid;
  gap: 6px;
}

.admin-nav a {
  min-height: 42px;
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 0 12px;
  border-radius: var(--radius);
  color: var(--muted);
  transition: background 150ms ease, color 150ms ease, transform 150ms ease;
}

.admin-nav a::before {
  content: "";
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: rgba(148, 163, 184, 0.45);
}

.admin-nav a:hover,
.admin-nav a.active {
  color: var(--text);
  background: rgba(255, 255, 255, 0.06);
  transform: translateX(2px);
}

.admin-nav a.active::before {
  background: var(--accent);
  box-shadow: 0 0 16px rgba(94, 234, 212, 0.34);
}

.admin-sidebar-footer {
  margin-top: auto;
  display: grid;
  gap: 6px;
}

.admin-main {
  min-width: 0;
  padding: 24px clamp(18px, 3vw, 34px);
}

.admin-topbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 22px;
  padding: 0 0 18px;
  border-bottom: 1px solid var(--line);
  background: transparent;
}

.admin-topbar h1 {
  margin: 4px 0 0;
  font-size: clamp(28px, 4vw, 42px);
}

.admin-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
  margin-bottom: 18px;
}

.metric-card {
  padding: 18px;
}

.metric-card strong {
  display: block;
  margin-top: 10px;
  font-size: 42px;
}

.analytics-intro {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 18px;
  margin-bottom: 18px;
}

.analytics-intro h2 {
  margin: 6px 0 8px;
  font-size: clamp(24px, 3vw, 34px);
}

.analytics-intro p {
  max-width: 760px;
  margin: 0;
  color: var(--muted);
  line-height: 1.7;
}

.analytics-period-tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  justify-content: flex-end;
}

.analytics-period-tabs a {
  min-height: 40px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0 14px;
  border: 1px solid var(--line);
  border-radius: var(--radius-sm);
  color: var(--text);
  background: rgba(255, 255, 255, 0.035);
  font-weight: 800;
}

.analytics-period-tabs a.active {
  border-color: rgba(244, 63, 94, 0.58);
  background: linear-gradient(135deg, rgba(244, 63, 94, 0.2), rgba(94, 234, 212, 0.08));
  box-shadow: 0 10px 30px rgba(244, 63, 94, 0.14);
}

.analytics-insight-strip {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
  margin-bottom: 18px;
}

.analytics-insight-card {
  min-width: 0;
  padding: 14px;
  border: 1px solid rgba(148, 163, 184, 0.15);
  border-radius: var(--radius);
  background:
    linear-gradient(135deg, rgba(244, 63, 94, 0.09), transparent 45%),
    rgba(255, 255, 255, 0.028);
}

.analytics-insight-card span,
.analytics-insight-card small {
  display: block;
  color: var(--muted-2);
}

.analytics-insight-card strong {
  display: block;
  min-width: 0;
  margin: 7px 0 3px;
  overflow: hidden;
  color: #ffffff;
  font-size: 1.05rem;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.analytics-metric-grid {
  margin-bottom: 18px;
}

.analytics-metric small {
  display: block;
  margin-top: 8px;
  color: var(--muted-2);
}

.analytics-delta {
  display: inline-flex;
  align-items: center;
  width: fit-content;
  min-height: 24px;
  margin-top: 10px;
  padding: 2px 8px;
  border-radius: 999px;
  font-size: 0.78rem;
  font-style: normal;
  font-weight: 950;
}

.analytics-delta.is-up {
  color: #22c55e;
  background: rgba(34, 197, 94, 0.12);
}

.analytics-delta.is-down {
  color: #fb7185;
  background: rgba(251, 113, 133, 0.12);
}

.analytics-delta.is-flat {
  color: var(--muted-2);
  background: rgba(148, 163, 184, 0.12);
}

.analytics-realtime-panel {
  margin-bottom: 18px;
  border-color: rgba(94, 234, 212, 0.22);
  background:
    linear-gradient(135deg, rgba(94, 234, 212, 0.08), transparent 42%),
    rgba(255, 255, 255, 0.026);
}

.analytics-live-pill {
  display: inline-flex;
  align-items: center;
  min-height: 32px;
  padding: 0 10px;
  border: 1px solid rgba(94, 234, 212, 0.22);
  border-radius: 999px;
  color: var(--accent);
  background: rgba(94, 234, 212, 0.08);
  font-size: 0.78rem;
  font-weight: 900;
  white-space: nowrap;
}

.analytics-realtime-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  margin-bottom: 14px;
}

.analytics-live-pages {
  display: grid;
  gap: 10px;
}

.analytics-live-pages > strong {
  color: #ffffff;
}

.analytics-live-pages .analytics-bar-list {
  max-height: 240px;
}

.analytics-page-focus {
  margin-bottom: 18px;
  border-color: rgba(244, 63, 94, 0.26);
  background:
    linear-gradient(135deg, rgba(244, 63, 94, 0.1), transparent 40%),
    linear-gradient(245deg, rgba(94, 234, 212, 0.07), transparent 42%),
    rgba(255, 255, 255, 0.026);
}

.analytics-page-head {
  display: flex;
  justify-content: space-between;
  gap: 18px;
  align-items: start;
  margin-bottom: 16px;
}

.analytics-page-head h2 {
  margin: 6px 0 6px;
  font-size: clamp(24px, 3vw, 36px);
}

.analytics-page-head p {
  margin: 0;
  color: var(--muted);
}

.analytics-page-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 8px;
}

.analytics-page-actions span {
  display: inline-flex;
  align-items: center;
  min-height: 38px;
  padding: 0 12px;
  border: 1px solid rgba(94, 234, 212, 0.2);
  border-radius: var(--radius-sm);
  color: var(--accent);
  background: rgba(94, 234, 212, 0.07);
  font-size: 0.82rem;
  font-weight: 850;
}

.analytics-page-metrics {
  margin-bottom: 18px;
}

.analytics-dashboard-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.analytics-chart-panel {
  overflow: hidden;
}

.analytics-chart-card {
  min-width: 0;
}

.analytics-chart-head {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  align-items: center;
  margin-bottom: 10px;
}

.analytics-chart-head strong {
  color: #ffffff;
}

.analytics-chart-head small {
  color: var(--muted-2);
}

.analytics-line-chart {
  width: 100%;
  min-height: 240px;
  display: block;
  overflow: visible;
}

.chart-grid-line {
  stroke: rgba(148, 163, 184, 0.14);
  stroke-width: 1;
}

.chart-area {
  opacity: 0.95;
}

.chart-line {
  fill: none;
  stroke: var(--rose);
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-width: 4;
  filter: drop-shadow(0 8px 14px rgba(244, 63, 94, 0.16));
}

.chart-point {
  fill: #ffffff;
  stroke: var(--rose);
  stroke-width: 3;
}

.chart-axis-label {
  fill: var(--muted-2);
  font-size: 12px;
  font-weight: 800;
}

.analytics-chart-empty {
  display: grid;
  place-items: center;
  min-height: 220px;
  border: 1px dashed rgba(148, 163, 184, 0.22);
  border-radius: var(--radius);
  color: var(--muted-2);
  background: rgba(255, 255, 255, 0.025);
}

.analytics-donut-card {
  display: grid;
  grid-template-columns: 170px minmax(0, 1fr);
  gap: 18px;
  align-items: center;
}

.analytics-donut-visual {
  position: relative;
  display: grid;
  place-items: center;
  min-height: 170px;
}

.analytics-donut-visual svg {
  width: 150px;
  height: 150px;
  transform: rotate(-90deg);
}

.donut-track {
  fill: none;
  stroke: rgba(148, 163, 184, 0.16);
  stroke-width: 16;
}

.donut-segment {
  fill: none;
  stroke-width: 16;
  stroke-linecap: round;
  transition: opacity 160ms ease;
}

.analytics-donut-visual > div {
  position: absolute;
  display: grid;
  place-items: center;
  gap: 2px;
  text-align: center;
}

.analytics-donut-visual strong {
  color: #ffffff;
  font-size: 1.45rem;
}

.analytics-donut-visual small {
  color: var(--muted-2);
  font-size: 0.72rem;
  font-weight: 900;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.analytics-donut-legend {
  display: grid;
  gap: 8px;
  min-width: 0;
}

.analytics-donut-legend span {
  display: grid;
  grid-template-columns: 12px minmax(0, 1fr) auto;
  gap: 8px;
  align-items: center;
  min-width: 0;
  padding: 8px 10px;
  border: 1px solid rgba(148, 163, 184, 0.12);
  border-radius: var(--radius-sm);
  background: rgba(255, 255, 255, 0.026);
}

.analytics-donut-legend i {
  width: 10px;
  height: 10px;
  border-radius: 999px;
  background: var(--legend-color);
}

.analytics-donut-legend strong {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.analytics-donut-legend small {
  color: var(--muted-2);
  font-weight: 900;
}

.analytics-workspace {
  display: grid;
  gap: 18px;
}

.analytics-tab-list {
  margin-bottom: 0;
}

.analytics-tab-panel[hidden] {
  display: none;
}

.analytics-tab-panel {
  min-width: 0;
}

.analytics-panel-wide {
  grid-column: 1 / -1;
}

.analytics-panel {
  min-width: 0;
}

.analytics-panel .panel-head {
  align-items: start;
}

.analytics-panel .panel-head h2 {
  margin: 0;
}

.analytics-panel .panel-head small {
  color: var(--muted-2);
}

.analytics-bar-list {
  display: grid;
  gap: 10px;
  max-height: 360px;
  overflow: auto;
  padding-right: 4px;
  scrollbar-width: thin;
}

.analytics-panel-wide .analytics-bar-list {
  max-height: 420px;
}

.analytics-bar-row {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 12px;
  align-items: center;
  overflow: hidden;
  padding: 12px;
  border: 1px solid rgba(148, 163, 184, 0.14);
  border-radius: var(--radius-sm);
  background: rgba(255, 255, 255, 0.03);
}

.analytics-bar-link {
  color: var(--text);
  text-decoration: none;
  transition: border-color 150ms ease, background 150ms ease, transform 150ms ease;
}

.analytics-bar-link:hover,
.analytics-bar-link:focus-visible {
  border-color: rgba(244, 63, 94, 0.42);
  background: rgba(244, 63, 94, 0.065);
  transform: translateY(-1px);
  outline: none;
}

.analytics-bar-row.is-active {
  border-color: rgba(244, 63, 94, 0.62);
  background: rgba(244, 63, 94, 0.095);
}

.analytics-bar-row > * {
  position: relative;
  z-index: 1;
}

.analytics-bar-row strong,
.analytics-bar-row small {
  display: block;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.analytics-bar-row small {
  margin-top: 2px;
  color: var(--muted-2);
}

.analytics-bar-row span {
  font-weight: 900;
  color: var(--text);
}

.analytics-bar-row i {
  position: absolute;
  inset: auto auto 0 0;
  width: var(--bar-width);
  height: 3px;
  border-radius: 999px;
  background: linear-gradient(90deg, var(--rose), var(--accent));
}

.analytics-split-lists {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.analytics-split-lists .analytics-bar-list {
  max-height: 310px;
}

.analytics-event-table-wrap {
  max-height: 480px;
  overflow: auto;
  border: 1px solid rgba(148, 163, 184, 0.12);
  border-radius: var(--radius);
}

.analytics-event-table {
  min-width: 1040px;
}

.analytics-event-table thead th {
  position: sticky;
  top: 0;
  z-index: 2;
  background: rgba(12, 17, 24, 0.98);
}

.analytics-event-table td {
  vertical-align: top;
}

.analytics-event-table td strong,
.analytics-event-table td small {
  max-width: 260px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.admin-two-col {
  display: grid;
  grid-template-columns: minmax(0, 0.8fr) minmax(0, 1.2fr);
  gap: 18px;
}

.article-tab-admin-panel {
  margin-bottom: 18px;
}

.admin-panel {
  padding: 18px;
  border-color: rgba(148, 163, 184, 0.16);
}

.panel-head {
  display: flex;
  justify-content: space-between;
  gap: 14px;
  align-items: center;
  margin-bottom: 16px;
}

.quick-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.admin-inline-settings {
  align-items: end;
}

.admin-inline-actions {
  display: flex;
  align-items: end;
}

.admin-inline-actions .button {
  width: 100%;
}

.favicon-setting-preview {
  display: grid;
  grid-template-columns: 48px minmax(0, 1fr);
  gap: 12px;
  align-items: center;
  padding: 12px;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background: rgba(255, 255, 255, 0.035);
}

.favicon-setting-preview span {
  display: grid;
  place-items: center;
  width: 44px;
  height: 44px;
  border: 1px solid rgba(148, 163, 184, 0.22);
  border-radius: 12px;
  background: rgba(7, 10, 14, 0.74);
}

.favicon-setting-preview img {
  width: 28px;
  height: 28px;
  object-fit: contain;
}

.favicon-setting-preview strong,
.favicon-setting-preview small {
  display: block;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.favicon-setting-preview small {
  margin-top: 2px;
  color: var(--muted-2);
}

.admin-list {
  display: grid;
  gap: 10px;
}

.admin-list a {
  display: grid;
  gap: 4px;
  padding: 12px;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background: rgba(255, 255, 255, 0.035);
  transition: border-color 150ms ease, background 150ms ease, transform 150ms ease;
}

.admin-list a:hover,
.admin-list a:focus-visible {
  border-color: var(--line-strong);
  background: rgba(255, 255, 255, 0.055);
  transform: translateY(-1px);
  outline: none;
}

.admin-list small,
.admin-table small,
label small {
  color: var(--muted-2);
}

.table-wrap {
  overflow-x: auto;
}

.admin-table {
  width: 100%;
  border-collapse: collapse;
  border-spacing: 0;
  min-width: 960px;
}

.admin-table th,
.admin-table td {
  min-height: 74px;
  padding: 14px 12px;
  border-bottom: 1px solid var(--line);
  text-align: left;
  vertical-align: middle;
}

.admin-table tbody tr {
  transition: background 140ms ease;
}

.admin-table tbody tr:hover {
  background: rgba(255, 255, 255, 0.035);
}

.admin-table th {
  color: var(--muted);
  font-size: 13px;
  text-transform: uppercase;
}

.admin-table td strong,
.admin-table td small {
  display: block;
}

.table-actions {
  min-width: 230px;
  text-align: right;
  white-space: nowrap;
}

.table-actions a,
.table-actions button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 36px;
  padding: 0 10px;
  border: 1px solid var(--line);
  border-radius: var(--radius-sm);
  color: var(--text);
  background: rgba(255, 255, 255, 0.04);
  cursor: pointer;
  vertical-align: middle;
}

.table-actions form {
  display: inline;
  margin: 0;
}

.table-actions a + a,
.table-actions a + form,
.table-actions form + a,
.table-actions form + form {
  margin-left: 8px;
}

.table-actions button {
  color: var(--rose);
}

.content-performance-cell {
  min-width: 230px;
}

.content-performance-card {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  grid-template-areas:
    "main delta"
    "sub last";
  gap: 5px 10px;
  width: 100%;
  max-width: 250px;
  min-height: 58px;
  align-items: center;
  padding: 9px 10px;
  border: 1px solid rgba(148, 163, 184, 0.14);
  border-radius: var(--radius-sm);
  color: var(--text);
  background:
    linear-gradient(135deg, rgba(94, 234, 212, 0.06), transparent 42%),
    rgba(255, 255, 255, 0.026);
  text-decoration: none;
  transition: border-color 150ms ease, background 150ms ease, transform 150ms ease;
}

.content-performance-card:hover,
.content-performance-card:focus-visible {
  border-color: rgba(94, 234, 212, 0.32);
  background: rgba(94, 234, 212, 0.055);
  transform: translateY(-1px);
  outline: none;
}

.content-performance-card .performance-main {
  grid-area: main;
  display: flex;
  align-items: baseline;
  gap: 7px;
  min-width: 0;
}

.content-performance-card strong {
  color: #ffffff;
  font-size: 1.15rem;
  line-height: 1;
}

.content-performance-card small,
.performance-sub,
.performance-last {
  overflow: hidden;
  color: var(--muted-2);
  font-size: 0.75rem;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.content-performance-card .analytics-delta {
  grid-area: delta;
  margin-top: 0;
  justify-self: end;
  min-height: 22px;
  padding: 1px 7px;
  font-size: 0.72rem;
}

.performance-sub {
  grid-area: sub;
  min-width: 0;
}

.performance-last {
  grid-area: last;
  justify-self: end;
  max-width: 96px;
}

.form-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.admin-character-editor,
.admin-collection-editor {
  grid-template-columns: minmax(230px, 300px) minmax(0, 1fr);
  align-items: start;
  gap: 22px;
}

.admin-character-sidebar,
.admin-collection-sidebar {
  position: sticky;
  top: 88px;
  display: grid;
  gap: 14px;
}

.admin-character-workspace,
.admin-collection-workspace {
  display: grid;
  gap: 16px;
  min-width: 0;
}

.admin-character-preview,
.admin-character-nav,
.admin-collection-preview,
.admin-collection-nav {
  border: 1px solid rgba(148, 163, 184, 0.16);
  border-radius: var(--radius);
  background:
    linear-gradient(140deg, rgba(244, 63, 94, 0.075), transparent 48%),
    rgba(9, 14, 22, 0.82);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.035);
}

.admin-character-preview,
.admin-collection-preview {
  display: grid;
  gap: 12px;
  padding: 14px;
}

.admin-character-preview > span,
.admin-collection-preview > span {
  color: #4df3ff;
  font-size: 12px;
  font-weight: 950;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.admin-preview-card {
  display: grid;
  grid-template-columns: 74px minmax(0, 1fr);
  gap: 12px;
  align-items: center;
}

.admin-preview-art {
  display: grid;
  place-items: center;
  width: 74px;
  aspect-ratio: 1;
  border: 1px solid rgba(148, 163, 184, 0.2);
  border-radius: 12px;
  background: rgba(255, 255, 255, 0.05);
  overflow: hidden;
}

.admin-preview-art img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.admin-preview-art strong {
  color: #ffffff;
  font-size: 30px;
  font-weight: 950;
}

.admin-preview-card small,
.admin-preview-card p {
  color: #91a7c0;
}

.admin-preview-card strong {
  display: block;
  margin: 3px 0 5px;
  color: #ffffff;
  font-size: 18px;
  line-height: 1.1;
}

.admin-preview-card p {
  display: -webkit-box;
  margin: 0;
  overflow: hidden;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  font-size: 12px;
  line-height: 1.45;
}

.admin-preview-actions {
  display: grid;
  gap: 8px;
  padding-top: 2px;
}

.admin-preview-actions a,
.admin-preview-actions span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 36px;
  padding: 0 11px;
  border: 1px solid rgba(244, 63, 94, 0.38);
  border-radius: var(--radius-sm);
  color: #ffffff;
  background: rgba(244, 63, 94, 0.1);
  font-size: 12px;
  font-weight: 900;
  text-align: center;
  text-decoration: none;
}

.admin-preview-actions a:hover,
.admin-preview-actions a:focus-visible {
  border-color: rgba(244, 63, 94, 0.72);
  background: rgba(244, 63, 94, 0.18);
  outline: none;
}

.admin-preview-actions span {
  border-color: rgba(148, 163, 184, 0.16);
  color: #91a7c0;
  background: rgba(255, 255, 255, 0.035);
}

.admin-preview-actions small {
  color: #91a7c0;
  font-size: 12px;
  line-height: 1.35;
}

.admin-character-nav,
.admin-collection-nav {
  display: grid;
  gap: 4px;
  padding: 8px;
}

.admin-character-nav a,
.admin-collection-nav a {
  display: grid;
  grid-template-columns: 30px minmax(0, 1fr);
  align-items: center;
  gap: 10px;
  min-height: 42px;
  padding: 8px 9px;
  border: 1px solid transparent;
  border-radius: var(--radius-sm);
  color: #d8e7f7;
  text-decoration: none;
  font-weight: 850;
}

.admin-character-nav a:hover,
.admin-character-nav a:focus-visible,
.admin-collection-nav a:hover,
.admin-collection-nav a:focus-visible {
  border-color: rgba(244, 63, 94, 0.34);
  color: #ffffff;
  background: rgba(244, 63, 94, 0.12);
  outline: none;
}

.admin-character-nav span,
.admin-collection-nav span {
  display: grid;
  place-items: center;
  width: 28px;
  height: 28px;
  border: 1px solid rgba(34, 211, 238, 0.24);
  border-radius: 8px;
  color: #4df3ff;
  background: rgba(34, 211, 238, 0.08);
  font-size: 11px;
  font-weight: 950;
}

.form-grid label {
  display: grid;
  align-content: start;
  gap: 8px;
  color: #dbe7ee;
  font-weight: 700;
}

.form-grid label:focus-within {
  color: #ffffff;
}

.form-grid label > span:first-child,
.form-grid label > small:first-child + span {
  color: inherit;
}

.rich-editor-field {
  display: grid;
  gap: 8px;
  color: #dbe7ee;
  font-weight: 700;
}

.admin-rich-editor {
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background: rgba(255, 255, 255, 0.035);
  overflow: hidden;
}

.rich-editor-topbar,
.rich-editor-toolbar {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px;
  padding: 8px;
  border-bottom: 1px solid var(--line);
  background: rgba(13, 17, 23, 0.96);
}

.rich-editor-topbar {
  justify-content: space-between;
}

.rich-editor-media-actions,
.rich-editor-tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.rich-editor-topbar button,
.rich-editor-toolbar button,
.rich-format-select {
  min-height: 34px;
  padding: 0 10px;
  border: 1px solid rgba(148, 163, 184, 0.22);
  border-radius: var(--radius-sm);
  color: #e8f1f8;
  background: rgba(255, 255, 255, 0.045);
  font-weight: 800;
  cursor: pointer;
}

.rich-format-select {
  min-width: 142px;
  outline: none;
}

.rich-editor-tabs button.is-active {
  color: #ffffff;
  border-color: rgba(244, 63, 94, 0.75);
  background: #e91546;
  box-shadow: 0 10px 22px rgba(233, 21, 70, 0.18);
}

.rich-editor-topbar button:hover,
.rich-editor-toolbar button:hover,
.rich-editor-topbar button:focus-visible,
.rich-editor-toolbar button:focus-visible,
.rich-format-select:focus {
  color: #ffffff;
  border-color: rgba(94, 234, 212, 0.45);
  outline: none;
}

.rich-editor-visual {
  min-height: 340px;
  padding: 22px;
  color: var(--text);
  background: rgba(5, 7, 10, 0.78);
  line-height: 1.7;
  outline: none;
  overflow: auto;
}

.rich-editor-visual:empty::before {
  content: "Start writing content...";
  color: var(--muted-2);
}

.rich-editor-visual p,
.rich-editor-visual ul,
.rich-editor-visual ol,
.rich-editor-visual blockquote,
.rich-editor-visual h2,
.rich-editor-visual h3,
.content-panel ul,
.content-panel ol,
.content-panel blockquote,
.content-panel figure,
.content-panel h3,
.content-panel h4 {
  margin-top: 0;
  margin-bottom: 18px;
}

.rich-editor-visual h2,
.content-panel h2 {
  color: #ffffff;
  font-size: clamp(24px, 3vw, 34px);
}

.rich-editor-visual h3,
.content-panel h3 {
  color: #ffffff;
  font-size: clamp(20px, 2.4vw, 28px);
}

.rich-editor-visual blockquote,
.content-panel blockquote {
  margin-left: 0;
  padding: 14px 18px;
  border-left: 3px solid #f43f5e;
  border-radius: var(--radius-sm);
  color: #dbeafe;
  background: rgba(244, 63, 94, 0.08);
}

.rich-editor-visual a,
.content-panel a {
  color: var(--accent);
  font-weight: 850;
  text-decoration: underline;
  text-underline-offset: 3px;
}

.rich-editor-visual img,
.content-panel img {
  max-width: 100%;
  height: auto;
  border-radius: var(--radius);
}

.rich-editor-visual figure,
.content-panel figure {
  margin-left: 0;
  margin-right: 0;
}

.rich-editor-visual figcaption,
.content-panel figcaption {
  margin-top: 8px;
  color: var(--muted-2);
  font-size: 13px;
}

.rich-editor-source {
  min-height: 340px;
  border: 0;
  border-radius: 0;
  background: rgba(5, 7, 10, 0.84);
  font-family: "Cascadia Mono", "Consolas", monospace;
}

.admin-rich-editor.is-ready.is-visual .rich-editor-source,
.admin-rich-editor.is-ready:not(.is-visual) .rich-editor-visual {
  display: none;
}

.admin-rich-editor.is-fullscreen {
  position: fixed;
  inset: 18px;
  z-index: 200;
  display: flex;
  flex-direction: column;
  box-shadow: 0 28px 90px rgba(0, 0, 0, 0.55);
}

.admin-rich-editor.is-fullscreen .rich-editor-visual,
.admin-rich-editor.is-fullscreen .rich-editor-source {
  flex: 1;
  min-height: 0;
}

.content-panel .download-link {
  display: inline-flex;
  align-items: center;
  min-height: 38px;
  padding: 0 12px;
  border: 1px solid rgba(94, 234, 212, 0.26);
  border-radius: var(--radius-sm);
  color: #ffffff;
  background: rgba(94, 234, 212, 0.08);
  text-decoration: none;
}

.admin-form-section {
  padding: 16px;
  border: 1px solid rgba(148, 163, 184, 0.14);
  border-radius: var(--radius);
  background:
    linear-gradient(120deg, rgba(94, 234, 212, 0.035), transparent 44%),
    rgba(255, 255, 255, 0.026);
}

.admin-section-head {
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr);
  gap: 12px;
  align-items: start;
  margin-bottom: 16px;
}

.admin-section-head > span {
  display: grid;
  place-items: center;
  width: 34px;
  height: 34px;
  border: 1px solid rgba(94, 234, 212, 0.24);
  border-radius: 10px;
  color: var(--accent);
  background: rgba(94, 234, 212, 0.08);
  font-size: 12px;
  font-weight: 950;
}

.admin-section-head h2 {
  margin: 0 0 4px;
  color: #ffffff;
  font-size: 18px;
}

.admin-section-head p {
  margin: 0;
  color: var(--muted-2);
  line-height: 1.5;
}

.admin-form-section-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.admin-form-section-grid.admin-compact-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.form-grid input[type="file"] {
  min-height: 48px;
  padding: 10px;
  border-style: dashed;
  cursor: pointer;
}

.admin-file-note {
  display: inline-flex;
  align-items: center;
  width: fit-content;
  min-height: 24px;
  padding: 3px 8px;
  border-radius: 999px;
  color: var(--accent);
  background: rgba(94, 234, 212, 0.08);
  font-size: 12px;
  font-weight: 800;
}

.admin-st-builder {
  display: grid;
  gap: 16px;
  padding: 16px;
  border: 1px solid rgba(148, 163, 184, 0.18);
  border-radius: var(--radius);
  background:
    radial-gradient(circle at 0 0, rgba(244, 63, 94, 0.12), transparent 34%),
    linear-gradient(135deg, rgba(12, 18, 28, 0.96), rgba(7, 10, 15, 0.98));
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.04);
}

.st-builder-head {
  display: flex;
  justify-content: space-between;
  gap: 18px;
  align-items: flex-start;
}

.st-builder-head span,
.st-builder-section-head strong,
.st-builder-preview strong {
  color: #4df3ff;
  font-size: 12px;
  font-weight: 950;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.st-builder-head h2 {
  margin: 4px 0;
  color: #ffffff;
  font-size: clamp(24px, 2.3vw, 36px);
  letter-spacing: 0;
}

.st-builder-head p,
.st-builder-section-head small,
.st-builder-preview p {
  margin: 0;
  color: #9fb3c8;
  line-height: 1.5;
}

.st-builder-actions,
.st-builder-tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.st-builder-tabs {
  padding: 8px;
  border: 1px solid rgba(148, 163, 184, 0.14);
  border-radius: var(--radius);
  background: rgba(2, 6, 11, 0.42);
}

.st-builder-tabs button,
.st-builder-section-head button,
.st-builder-card-head button {
  min-height: 36px;
  padding: 0 12px;
  border: 1px solid rgba(148, 163, 184, 0.2);
  border-radius: var(--radius-sm);
  color: #ffffff;
  background: rgba(255, 255, 255, 0.045);
  font-weight: 900;
  cursor: pointer;
  transition: background 0.16s ease, border-color 0.16s ease, transform 0.16s ease;
}

.st-builder-tabs button.is-active {
  border-color: rgba(244, 63, 94, 0.78);
  background: #f43f5e;
  box-shadow: 0 14px 30px rgba(244, 63, 94, 0.2);
}

.st-builder-tabs button:hover,
.st-builder-tabs button:focus-visible,
.st-builder-section-head button:hover,
.st-builder-section-head button:focus-visible,
.st-builder-card-head button:hover,
.st-builder-card-head button:focus-visible {
  border-color: rgba(94, 234, 212, 0.48);
  outline: none;
  transform: translateY(-1px);
}

.st-builder-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(290px, 0.36fr);
  gap: 16px;
  align-items: start;
}

.st-builder-main,
.st-builder-block,
.st-part-list,
.st-module-list {
  display: grid;
  gap: 12px;
  min-width: 0;
}

.st-builder-section-head {
  display: flex;
  justify-content: space-between;
  gap: 14px;
  align-items: flex-start;
  padding: 14px;
  border: 1px solid rgba(148, 163, 184, 0.14);
  border-radius: var(--radius);
  background:
    linear-gradient(90deg, rgba(244, 63, 94, 0.1), transparent 54%),
    rgba(255, 255, 255, 0.028);
}

.st-builder-section-head div {
  display: grid;
  gap: 4px;
}

.st-part-list {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.st-builder-card {
  display: grid;
  gap: 12px;
  min-width: 0;
  padding: 14px;
  border: 1px solid rgba(148, 163, 184, 0.16);
  border-radius: var(--radius);
  background:
    linear-gradient(140deg, rgba(255, 255, 255, 0.035), rgba(255, 255, 255, 0.012)),
    rgba(6, 10, 16, 0.78);
}

.st-builder-card-head {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  align-items: center;
}

.st-builder-card-head strong {
  min-width: 0;
  overflow: hidden;
  color: #ffffff;
  font-size: 16px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.st-builder-card-head button {
  min-height: 30px;
  padding: 0 9px;
  color: #ffb4bf;
  font-size: 11px;
}

.st-builder-card-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.st-builder-card-grid .full {
  grid-column: 1 / -1;
}

.st-builder-card-grid label {
  min-width: 0;
}

.st-builder-card textarea {
  min-height: 118px;
  resize: vertical;
}

.st-builder-preview {
  position: sticky;
  top: 92px;
  display: grid;
  gap: 14px;
  min-width: 0;
  padding: 15px;
  border: 1px solid rgba(148, 163, 184, 0.18);
  border-radius: var(--radius);
  background:
    radial-gradient(circle at 100% 0, rgba(94, 234, 212, 0.1), transparent 34%),
    rgba(5, 8, 14, 0.9);
}

.st-builder-preview > div:first-child {
  display: grid;
  gap: 6px;
}

.st-sync-pill {
  display: inline-flex;
  align-items: center;
  width: fit-content;
  min-height: 24px;
  padding: 2px 8px;
  border: 1px solid rgba(94, 234, 212, 0.26);
  border-radius: 999px;
  color: #4df3ff;
  background: rgba(94, 234, 212, 0.08);
  font-size: 11px;
  font-weight: 900;
}

.st-validation-list {
  display: grid;
  gap: 8px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.st-validation-list li {
  display: grid;
  grid-template-columns: 10px minmax(0, 1fr);
  gap: 8px;
  align-items: center;
  color: #b8cadc;
  font-size: 13px;
}

.st-validation-list li::before {
  content: "";
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #f43f5e;
  box-shadow: 0 0 16px rgba(244, 63, 94, 0.36);
}

.st-validation-list li.is-ok::before {
  background: #4df3ff;
  box-shadow: 0 0 16px rgba(77, 243, 255, 0.32);
}

.st-validation-list li.is-warning::before {
  background: #f43f5e;
}

.st-builder-preview details {
  display: grid;
  gap: 10px;
  padding: 12px;
  border: 1px solid rgba(148, 163, 184, 0.14);
  border-radius: var(--radius-sm);
  background: rgba(255, 255, 255, 0.03);
}

.st-builder-preview summary {
  color: #ffffff;
  font-weight: 900;
  cursor: pointer;
}

.st-builder-preview textarea {
  margin-top: 10px;
  min-height: 260px;
  font-family: "Cascadia Mono", "Consolas", monospace;
  font-size: 12px;
}

.admin-st-builder[data-st-view="base"] .st-field-upgraded,
.admin-st-builder[data-st-view="upgraded"] .st-field-base,
.admin-st-builder[data-st-view="parts"] .st-field-base,
.admin-st-builder[data-st-view="parts"] .st-field-upgraded,
.admin-st-builder[data-st-view="parts"] .st-builder-modules-block,
.admin-st-builder[data-st-view="modules"] .st-builder-parts-block {
  display: none;
}

.admin-extra-fields {
  display: grid;
  gap: 14px;
  padding: 16px;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background:
    linear-gradient(120deg, rgba(168, 85, 247, 0.045), transparent 44%),
    rgba(255, 255, 255, 0.03);
}

.admin-extra-fields summary {
  cursor: pointer;
  color: var(--text);
  font-weight: 850;
}

.admin-extra-fields summary small {
  margin-left: 8px;
  color: var(--muted-2);
  font-weight: 600;
}

.admin-extra-fields[open] summary {
  margin-bottom: 4px;
}

.form-grid textarea,
.form-grid .full,
.form-actions {
  grid-column: 1 / -1;
}

.check-field {
  align-content: center;
  grid-auto-flow: column;
  justify-content: start;
  align-items: center;
  min-height: 44px;
}

.check-field input {
  width: 18px;
  height: 18px;
}

.form-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  position: sticky;
  bottom: 0;
  z-index: 12;
  margin: 4px -18px -18px;
  padding: 14px 18px;
  border-top: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 0 0 var(--radius) var(--radius);
  background: rgba(7, 9, 13, 0.88);
  backdrop-filter: blur(18px);
}

.global-search-panel {
  display: grid;
  grid-template-columns: minmax(0, 1fr) max-content;
  gap: 10px;
  width: min(680px, 100%);
  margin-top: 24px;
}

.search-result-list {
  display: grid;
  gap: 12px;
}

.search-result-card {
  display: grid;
  grid-template-columns: 72px minmax(0, 1fr);
  gap: 14px;
  align-items: center;
  min-height: 92px;
  padding: 10px;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background:
    linear-gradient(120deg, rgba(244, 63, 94, 0.05), transparent 40%),
    rgba(255, 255, 255, 0.035);
  transition: transform 160ms ease, border-color 160ms ease, background 160ms ease;
}

.search-result-card:hover,
.search-result-card:focus-visible {
  transform: translateY(-1px);
  border-color: var(--line-strong);
  background: rgba(255, 255, 255, 0.055);
  outline: none;
}

.search-result-thumb {
  display: grid;
  place-items: center;
  width: 72px;
  height: 72px;
  overflow: hidden;
  border: 1px solid var(--line);
  border-radius: var(--radius-sm);
  color: #071014;
  background: linear-gradient(135deg, var(--accent), #f7c66b);
  font-weight: 950;
}

.search-result-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.search-result-card em,
.search-result-card small {
  display: block;
  color: var(--muted);
  font-style: normal;
}

.search-result-card strong {
  display: block;
  margin: 4px 0;
  font-size: 18px;
}

.admin-quality-box,
.admin-autosave-note {
  display: grid;
  gap: 8px;
  padding: 14px;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background: rgba(255, 255, 255, 0.035);
}

.admin-quality-box strong,
.admin-autosave-note strong {
  color: var(--text);
}

.admin-quality-box ul {
  display: grid;
  gap: 5px;
  margin: 0;
  padding-left: 18px;
  color: var(--muted);
}

.admin-quality-box p,
.admin-autosave-note span {
  margin: 0;
  color: var(--muted);
}

.admin-quality-box.has-warnings {
  border-color: rgba(245, 158, 11, 0.32);
  background:
    linear-gradient(120deg, rgba(245, 158, 11, 0.08), transparent 42%),
    rgba(255, 255, 255, 0.035);
}

.admin-quality-box.is-ready {
  border-color: rgba(52, 211, 153, 0.32);
  background:
    linear-gradient(120deg, rgba(52, 211, 153, 0.08), transparent 42%),
    rgba(255, 255, 255, 0.035);
}

.status-pill {
  display: inline-flex;
  align-items: center;
  min-height: 26px;
  padding: 0 9px;
  border: 1px solid var(--line);
  border-radius: 999px;
  color: var(--muted);
  background: rgba(255, 255, 255, 0.045);
  font-size: 12px;
  font-weight: 900;
}

.status-published {
  border-color: rgba(52, 211, 153, 0.34);
  color: #bbf7d0;
  background: rgba(52, 211, 153, 0.1);
}

.status-scheduled {
  border-color: rgba(244, 63, 94, 0.38);
  color: #fecdd3;
  background: rgba(244, 63, 94, 0.11);
}

.status-draft,
.status-review {
  border-color: rgba(245, 158, 11, 0.34);
  color: #fde68a;
  background: rgba(245, 158, 11, 0.1);
}

.admin-filter-bar {
  display: grid;
  grid-template-columns: minmax(220px, 1fr) repeat(4, minmax(140px, 180px)) auto auto;
  gap: 10px;
  align-items: center;
  margin: 0 0 16px;
}

.article-media-library-panel {
  display: grid;
  gap: 16px;
  transition: border-color 180ms ease, box-shadow 180ms ease, background 180ms ease;
}

.article-media-library-panel.is-targeted {
  border-color: rgba(244, 63, 94, 0.64);
  background:
    linear-gradient(120deg, rgba(244, 63, 94, 0.08), transparent 42%),
    rgba(255, 255, 255, 0.035);
  box-shadow: 0 0 0 1px rgba(244, 63, 94, 0.18), 0 18px 48px rgba(244, 63, 94, 0.12);
}

.article-media-library-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(176px, 1fr));
  gap: 12px;
}

.media-library-controls {
  display: grid;
  grid-template-columns: minmax(220px, 1fr) minmax(180px, 260px);
  gap: 10px;
}

.article-media-item {
  display: grid;
  gap: 8px;
  min-width: 0;
  padding: 10px;
  border: 1px solid rgba(148, 163, 184, 0.16);
  border-radius: var(--radius);
  background: rgba(255, 255, 255, 0.035);
}

.article-media-thumb {
  position: relative;
  display: block;
  overflow: hidden;
  aspect-ratio: 16 / 9;
  border-radius: var(--radius-sm);
  background:
    linear-gradient(135deg, rgba(244, 63, 94, 0.14), transparent 54%),
    rgba(0, 0, 0, 0.24);
}

.article-media-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.article-media-item strong,
.article-media-item small,
.article-media-item code {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.article-media-item strong {
  color: #ffffff;
  font-size: 14px;
}

.article-media-item small {
  color: var(--muted);
  font-weight: 700;
}

.article-media-item code {
  padding: 7px 8px;
  border: 1px solid rgba(148, 163, 184, 0.12);
  border-radius: var(--radius-sm);
  color: #c7d2fe;
  background: rgba(0, 0, 0, 0.18);
  font-size: 11px;
}

.article-media-item > div {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.media-meta-form {
  display: grid;
  gap: 6px;
}

.media-meta-form .input {
  min-height: 34px;
  padding: 0 9px;
  font-size: 12px;
}

.article-media-item button {
  min-height: 32px;
  padding: 0 10px;
  border: 1px solid rgba(148, 163, 184, 0.2);
  border-radius: var(--radius-sm);
  color: #ffffff;
  background: rgba(255, 255, 255, 0.055);
  font-weight: 850;
  cursor: pointer;
}

.article-media-item button:hover,
.article-media-item button:focus-visible {
  border-color: rgba(244, 63, 94, 0.65);
  outline: none;
}

.media-usage {
  color: var(--muted);
  font-size: 12px;
}

.media-usage summary {
  cursor: pointer;
}

.media-usage a,
.media-usage span {
  display: block;
  margin-top: 5px;
  color: #c7d2fe;
}

.media-command-center,
.media-upload-panel,
.media-bulk-panel,
.media-optimization-panel,
.media-library-board {
  display: grid;
  gap: 16px;
}

.media-command-center {
  overflow: hidden;
  background:
    radial-gradient(circle at 0 0, rgba(244, 63, 94, 0.15), transparent 34%),
    linear-gradient(135deg, rgba(12, 18, 28, 0.96), rgba(6, 9, 14, 0.98));
}

.media-health-grid {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 12px;
}

.media-health-grid article {
  display: grid;
  gap: 6px;
  min-width: 0;
  padding: 14px;
  border: 1px solid rgba(148, 163, 184, 0.16);
  border-radius: var(--radius);
  background:
    linear-gradient(145deg, rgba(255, 255, 255, 0.05), rgba(255, 255, 255, 0.018)),
    rgba(7, 11, 17, 0.72);
}

.media-health-grid article span {
  color: #9fb3c8;
  font-size: 12px;
  font-weight: 900;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.media-health-grid article strong {
  color: #ffffff;
  font-size: clamp(28px, 2.5vw, 40px);
  font-weight: 950;
  line-height: 1;
}

.media-health-grid article:nth-child(2) strong,
.media-health-grid article:nth-child(4) strong,
.media-health-grid article:nth-child(5) strong {
  color: #ff4b5f;
}

.media-health-grid article small {
  color: #8fa4ba;
  font-size: 12px;
  line-height: 1.35;
}

.media-upload-panel {
  background:
    linear-gradient(120deg, rgba(56, 246, 255, 0.055), transparent 48%),
    rgba(255, 255, 255, 0.028);
}

.media-bulk-panel {
  background:
    linear-gradient(120deg, rgba(244, 63, 94, 0.08), transparent 45%),
    rgba(255, 255, 255, 0.025);
}

.media-select-all {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: #dcecff;
  font-size: 13px;
  font-weight: 900;
}

.media-select-all input,
.media-asset-select input {
  width: 17px;
  height: 17px;
  accent-color: #ff4b5f;
}

.media-optimization-panel {
  background:
    linear-gradient(135deg, rgba(94, 234, 212, 0.06), transparent 52%),
    rgba(255, 255, 255, 0.028);
}

.media-optimization-list {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: 10px;
}

.media-optimization-list article {
  display: grid;
  grid-template-columns: 72px minmax(0, 1fr) auto;
  gap: 12px;
  align-items: center;
  min-width: 0;
  padding: 10px;
  border: 1px solid rgba(148, 163, 184, 0.16);
  border-radius: var(--radius-sm);
  background: rgba(5, 9, 14, 0.62);
}

.media-optimization-thumb {
  display: grid;
  place-items: center;
  width: 72px;
  aspect-ratio: 1.3;
  overflow: hidden;
  border-radius: 7px;
  background: rgba(0, 0, 0, 0.28);
}

.media-optimization-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.media-optimization-list strong,
.media-optimization-list small,
.media-optimization-list em {
  display: block;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.media-optimization-list em {
  color: #fde68a;
  font-style: normal;
  font-size: 12px;
}

.media-library-board {
  background:
    linear-gradient(135deg, rgba(244, 63, 94, 0.055), transparent 52%),
    rgba(255, 255, 255, 0.03);
}

.media-library-controls-wide {
  grid-template-columns: minmax(240px, 1fr) minmax(170px, 230px) minmax(150px, 210px);
}

.media-asset-grid {
  grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
}

.media-asset-card {
  position: relative;
  align-content: start;
}

.media-asset-select {
  position: absolute;
  top: 10px;
  left: 10px;
  z-index: 3;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 6px 8px;
  border: 1px solid rgba(255, 255, 255, 0.16);
  border-radius: 999px;
  color: #dcecff;
  background: rgba(3, 7, 12, 0.78);
  backdrop-filter: blur(10px);
  font-size: 11px;
  font-weight: 900;
}

.media-asset-thumb.is-missing {
  display: grid;
  place-items: center;
  color: #ffb4bf;
  border: 1px solid rgba(244, 63, 94, 0.28);
  background:
    linear-gradient(135deg, rgba(244, 63, 94, 0.16), transparent 58%),
    rgba(0, 0, 0, 0.32);
  font-weight: 950;
  text-transform: uppercase;
}

.media-asset-status-row {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  min-height: 23px;
}

.media-status-pill {
  display: inline-grid;
  place-items: center;
  min-height: 22px;
  padding: 0 8px;
  border: 1px solid rgba(148, 163, 184, 0.18);
  border-radius: 999px;
  color: #dcecff;
  background: rgba(255, 255, 255, 0.05);
  font-size: 10px;
  font-weight: 950;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.media-status-ok {
  border-color: rgba(56, 246, 255, 0.38);
  color: #bffaff;
  background: rgba(56, 246, 255, 0.08);
}

.media-status-missing {
  border-color: rgba(244, 63, 94, 0.5);
  color: #ffd2d9;
  background: rgba(244, 63, 94, 0.14);
}

.media-status-unused,
.media-status-duplicate,
.media-status-needs-webp {
  border-color: rgba(245, 158, 11, 0.45);
  color: #fde68a;
  background: rgba(245, 158, 11, 0.1);
}

.media-asset-card > div form {
  margin: 0;
}

.media-asset-card .media-usage {
  display: grid;
  gap: 6px;
  padding: 8px;
  border: 1px solid rgba(148, 163, 184, 0.12);
  border-radius: var(--radius-sm);
  background: rgba(0, 0, 0, 0.14);
}

.media-asset-card .media-usage summary {
  color: #d8e7f7;
  font-weight: 900;
}

.media-asset-card .media-usage a,
.media-asset-card .media-usage span {
  overflow: hidden;
  color: #9fb3c8;
  line-height: 1.35;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.media-asset-card .media-usage a:hover,
.media-asset-card .media-usage a:focus-visible {
  color: #ffffff;
  outline: none;
}

.media-path-control {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 8px;
}

.media-path-control textarea {
  grid-column: 1 / -1;
}

.media-path-control button {
  min-height: 42px;
  padding: 0 12px;
  border: 1px solid rgba(148, 163, 184, 0.24);
  border-radius: var(--radius-sm);
  color: #ffffff;
  background: rgba(255, 255, 255, 0.055);
  font-weight: 900;
  cursor: pointer;
}

.global-media-picker[hidden] {
  display: none;
}

.global-media-picker {
  position: fixed;
  inset: 0;
  z-index: 120;
  display: grid;
  place-items: center;
  padding: 28px;
}

.global-media-picker-backdrop {
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.72);
  backdrop-filter: blur(10px);
}

.global-media-picker-panel {
  position: relative;
  z-index: 1;
  display: grid;
  gap: 14px;
  width: min(1120px, 100%);
  max-height: min(760px, 92vh);
  overflow: hidden;
  padding: 18px;
  border: 1px solid rgba(148, 163, 184, 0.24);
  border-radius: var(--radius);
  background:
    radial-gradient(circle at 0 0, rgba(244, 63, 94, 0.14), transparent 32%),
    #090e15;
  box-shadow: 0 30px 90px rgba(0, 0, 0, 0.55);
}

.global-media-picker-head,
.global-media-picker-controls {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.global-media-picker-controls {
  display: grid;
  grid-template-columns: minmax(220px, 1fr) repeat(3, minmax(150px, 210px));
}

.global-media-picker-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(190px, 1fr));
  gap: 10px;
  overflow: auto;
  padding-right: 4px;
}

.global-media-picker-item {
  display: grid;
  gap: 8px;
  min-width: 0;
  padding: 10px;
  border: 1px solid rgba(148, 163, 184, 0.18);
  border-radius: var(--radius-sm);
  background: rgba(255, 255, 255, 0.035);
}

.global-media-picker-item span {
  display: grid;
  place-items: center;
  aspect-ratio: 16 / 9;
  overflow: hidden;
  border-radius: 7px;
  background: rgba(0, 0, 0, 0.25);
}

.global-media-picker-item img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.global-media-picker-item strong,
.global-media-picker-item small,
.global-media-picker-item code {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.quality-command-center {
  overflow: hidden;
  background:
    radial-gradient(circle at 0 0, rgba(244, 63, 94, 0.13), transparent 34%),
    linear-gradient(135deg, rgba(12, 18, 28, 0.96), rgba(6, 9, 14, 0.98));
}

.quality-score-grid {
  grid-template-columns: repeat(5, minmax(0, 1fr));
}

.quality-lane-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(170px, 1fr));
  gap: 10px;
}

.quality-lane-grid article {
  display: grid;
  gap: 6px;
  padding: 12px;
  border: 1px solid rgba(148, 163, 184, 0.16);
  border-radius: var(--radius-sm);
  background: rgba(255, 255, 255, 0.035);
}

.quality-lane-grid span {
  color: #38f6ff;
  font-size: 12px;
  font-weight: 950;
  text-transform: uppercase;
}

.dashboard-command-center {
  overflow: hidden;
  background:
    radial-gradient(circle at 0 0, rgba(244, 63, 94, 0.15), transparent 34%),
    radial-gradient(circle at 100% 0, rgba(34, 245, 255, 0.08), transparent 30%),
    linear-gradient(135deg, rgba(12, 18, 28, 0.96), rgba(6, 9, 14, 0.98));
}

.dashboard-command-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.45fr) minmax(320px, 0.55fr);
  gap: 18px;
  align-items: stretch;
}

.dashboard-command-main {
  display: grid;
  gap: 16px;
  min-width: 0;
}

.dashboard-command-stats {
  grid-template-columns: repeat(5, minmax(0, 1fr));
  margin-bottom: 0;
}

.dashboard-kpi-card {
  min-width: 0;
  border: 1px solid rgba(148, 163, 184, 0.16);
  background:
    linear-gradient(145deg, rgba(255, 255, 255, 0.045), rgba(255, 255, 255, 0.02)),
    rgba(9, 14, 21, 0.74);
}

.dashboard-kpi-card.is-priority {
  border-color: rgba(244, 63, 94, 0.35);
  background:
    linear-gradient(145deg, rgba(244, 63, 94, 0.16), rgba(34, 245, 255, 0.035)),
    rgba(9, 14, 21, 0.82);
  box-shadow: inset 0 0 0 1px rgba(244, 63, 94, 0.08), 0 16px 44px rgba(244, 63, 94, 0.09);
}

.dashboard-kpi-card small {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  align-items: center;
  margin-top: 8px;
  color: var(--muted-2);
}

.dashboard-kpi-card .analytics-delta {
  margin-top: 0;
}

.dashboard-command-split {
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) minmax(0, 0.8fr);
  gap: 16px;
}

.dashboard-insight-card,
.dashboard-action-rail > div {
  min-width: 0;
  padding: 16px;
  border: 1px solid rgba(148, 163, 184, 0.16);
  border-radius: var(--radius);
  background:
    linear-gradient(135deg, rgba(244, 63, 94, 0.055), transparent 42%),
    rgba(255, 255, 255, 0.028);
}

.dashboard-card-head {
  display: flex;
  justify-content: space-between;
  gap: 14px;
  align-items: start;
  margin-bottom: 14px;
}

.dashboard-card-head h3 {
  margin: 4px 0 0;
  color: #ffffff;
  font-size: 1.08rem;
}

.dashboard-card-head a,
.dashboard-card-head small {
  color: #bffaff;
  font-size: 0.78rem;
  font-weight: 900;
  white-space: nowrap;
}

.dashboard-mini-chart {
  display: grid;
  grid-template-columns: repeat(7, minmax(0, 1fr));
  gap: 8px;
  align-items: end;
  min-height: 150px;
  padding: 14px 10px 10px;
  border: 1px solid rgba(148, 163, 184, 0.12);
  border-radius: var(--radius-sm);
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.03), transparent),
    rgba(0, 0, 0, 0.14);
}

.dashboard-mini-chart span {
  display: grid;
  grid-template-rows: minmax(54px, 1fr) auto;
  gap: 8px;
  align-items: end;
  min-width: 0;
}

.dashboard-mini-chart i {
  display: block;
  height: var(--bar-height);
  min-height: 8px;
  border-radius: 999px 999px 4px 4px;
  background: linear-gradient(180deg, #ff4b5f, #22f5ff);
  box-shadow: 0 0 18px rgba(244, 63, 94, 0.18);
}

.dashboard-mini-chart small {
  overflow: hidden;
  color: var(--muted-2);
  font-size: 0.66rem;
  font-weight: 800;
  text-align: center;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.dashboard-compact-list {
  margin-top: 12px;
}

.dashboard-compact-list a {
  grid-template-columns: minmax(0, 1fr);
  padding: 10px 12px;
}

.dashboard-pipeline-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.dashboard-pipeline-grid span {
  display: grid;
  gap: 4px;
  padding: 14px;
  border: 1px solid rgba(148, 163, 184, 0.14);
  border-radius: var(--radius-sm);
  background: rgba(255, 255, 255, 0.035);
}

.dashboard-pipeline-grid strong {
  color: #ffffff;
  font-size: 1.8rem;
  line-height: 1;
}

.dashboard-pipeline-grid small {
  color: var(--muted-2);
  font-size: 0.75rem;
  font-weight: 900;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.dashboard-pipeline-note {
  display: flex;
  justify-content: space-between;
  gap: 10px;
  margin-top: 12px;
  padding: 12px;
  border: 1px solid rgba(34, 245, 255, 0.16);
  border-radius: var(--radius-sm);
  color: var(--muted);
  background: rgba(34, 245, 255, 0.045);
}

.dashboard-pipeline-note strong {
  color: #ffffff;
}

.dashboard-action-rail {
  display: grid;
  gap: 16px;
  align-content: start;
  min-width: 0;
}

.dashboard-quick-create {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.dashboard-quick-create a {
  min-width: 0;
  padding: 12px;
  border: 1px solid rgba(148, 163, 184, 0.16);
  border-radius: var(--radius-sm);
  background: rgba(255, 255, 255, 0.035);
  transition: border-color 150ms ease, background 150ms ease, transform 150ms ease;
}

.dashboard-quick-create a:hover,
.dashboard-quick-create a:focus-visible,
.dashboard-live-stream a:hover,
.dashboard-live-stream a:focus-visible {
  border-color: rgba(244, 63, 94, 0.46);
  background: rgba(244, 63, 94, 0.08);
  outline: none;
  transform: translateY(-1px);
}

.dashboard-quick-create strong,
.dashboard-quick-create small {
  display: block;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.dashboard-quick-create small {
  margin-top: 3px;
  color: var(--muted-2);
}

.dashboard-live-stream {
  display: grid;
  gap: 10px;
}

.dashboard-live-stream a {
  position: relative;
  display: grid;
  gap: 4px;
  padding: 10px 12px 10px 18px;
  border: 1px solid rgba(148, 163, 184, 0.14);
  border-radius: var(--radius-sm);
  background: rgba(255, 255, 255, 0.03);
  transition: border-color 150ms ease, background 150ms ease, transform 150ms ease;
}

.dashboard-live-stream a::before {
  content: "";
  position: absolute;
  inset: 12px auto 12px 8px;
  width: 3px;
  border-radius: 999px;
  background: linear-gradient(180deg, #ff4b5f, #22f5ff);
}

.dashboard-live-stream span {
  color: #22f5ff;
  font-size: 0.68rem;
  font-weight: 950;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.dashboard-live-stream strong,
.dashboard-live-stream small {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.dashboard-live-stream small {
  color: var(--muted-2);
}

.dashboard-hardening-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr) minmax(260px, 0.55fr);
  gap: 16px;
  margin-bottom: 18px;
}

.dashboard-hardening-card {
  min-width: 0;
  background:
    linear-gradient(135deg, rgba(244, 63, 94, 0.07), transparent 42%),
    rgba(255, 255, 255, 0.028);
}

.dashboard-hardening-card .panel-head a {
  color: #bffaff;
  font-size: 12px;
  font-weight: 900;
}

.dashboard-fix-list,
.dashboard-launch-checklist {
  display: grid;
  gap: 10px;
}

.dashboard-fix-list a,
.dashboard-launch-checklist a {
  min-width: 0;
  padding: 12px;
  border: 1px solid rgba(148, 163, 184, 0.15);
  border-radius: var(--radius-sm);
  background: rgba(255, 255, 255, 0.032);
  transition: border-color 150ms ease, background 150ms ease, transform 150ms ease;
}

.dashboard-fix-list a:hover,
.dashboard-fix-list a:focus-visible,
.dashboard-launch-checklist a:hover,
.dashboard-launch-checklist a:focus-visible {
  border-color: rgba(244, 63, 94, 0.44);
  background: rgba(244, 63, 94, 0.075);
  outline: none;
  transform: translateY(-1px);
}

.dashboard-fix-list a {
  display: grid;
  gap: 4px;
}

.dashboard-fix-list a.is-error {
  border-color: rgba(244, 63, 94, 0.36);
  background: rgba(244, 63, 94, 0.08);
}

.dashboard-fix-list span {
  color: #22f5ff;
  font-size: 0.68rem;
  font-weight: 950;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.dashboard-fix-list strong,
.dashboard-fix-list small,
.dashboard-launch-checklist strong,
.dashboard-launch-checklist small {
  display: block;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.dashboard-fix-list small,
.dashboard-launch-checklist small {
  color: var(--muted-2);
}

.dashboard-launch-checklist a {
  display: grid;
  grid-template-columns: 44px minmax(0, 1fr);
  gap: 10px;
  align-items: center;
}

.dashboard-launch-checklist i {
  display: grid;
  place-items: center;
  min-height: 30px;
  border-radius: 999px;
  color: #ffffff;
  background: rgba(244, 63, 94, 0.22);
  font-size: 0.65rem;
  font-style: normal;
  font-weight: 950;
}

.dashboard-launch-checklist a.is-passed i {
  color: #03120d;
  background: #5eead4;
}

.dashboard-backup-summary {
  display: grid;
  gap: 8px;
  min-height: 100%;
  align-content: center;
  padding: 16px;
  border: 1px solid rgba(34, 245, 255, 0.16);
  border-radius: var(--radius-sm);
  background: rgba(34, 245, 255, 0.04);
}

.dashboard-backup-summary strong {
  color: #ffffff;
  font-size: clamp(2.1rem, 5vw, 3.2rem);
  line-height: 1;
}

.dashboard-backup-summary span {
  color: #22f5ff;
  font-weight: 950;
}

.dashboard-backup-summary small {
  color: var(--muted-2);
}

.data-backup-health-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
  margin-top: 14px;
}

.data-backup-health-grid div {
  display: grid;
  gap: 6px;
  min-width: 0;
  padding: 14px;
  border: 1px solid rgba(148, 163, 184, 0.15);
  border-radius: var(--radius-sm);
  background: rgba(255, 255, 255, 0.035);
}

.data-backup-health-grid span {
  color: #22f5ff;
  font-size: 0.72rem;
  font-weight: 950;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.data-backup-health-grid strong {
  min-width: 0;
  overflow: hidden;
  color: #ffffff;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.dashboard-readiness-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.dashboard-lane {
  align-content: start;
}

.dashboard-lane .panel-head a {
  color: #bffaff;
  font-size: 12px;
  font-weight: 900;
}

.admin-quality-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.admin-quality-head button,
.admin-editor-shortcuts button,
.admin-editor-shortcuts a {
  display: inline-grid;
  place-items: center;
  min-height: 38px;
  padding: 0 12px;
  border: 1px solid rgba(148, 163, 184, 0.22);
  border-radius: var(--radius-sm);
  color: #ffffff;
  background: rgba(255, 255, 255, 0.055);
  font-weight: 900;
  text-decoration: none;
  cursor: pointer;
}

.admin-quality-box.is-auditing {
  border-color: rgba(255, 75, 95, 0.8);
  box-shadow: 0 0 0 4px rgba(255, 75, 95, 0.14);
}

.admin-editor-shortcuts {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
  padding: 12px;
  border: 1px solid rgba(148, 163, 184, 0.16);
  border-radius: var(--radius);
  background:
    linear-gradient(120deg, rgba(244, 63, 94, 0.08), transparent 52%),
    rgba(255, 255, 255, 0.03);
}

.admin-editor-shortcuts div {
  flex: 1 1 260px;
  display: grid;
  gap: 3px;
}

.admin-editor-shortcuts span {
  color: #38f6ff;
  font-size: 11px;
  font-weight: 950;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.admin-editor-shortcuts .is-primary {
  border-color: rgba(244, 63, 94, 0.72);
  background: linear-gradient(135deg, #f43f5e, #fb7185);
  box-shadow: 0 12px 24px rgba(244, 63, 94, 0.18);
}

.search-filter-panel {
  display: grid;
  gap: 14px;
  margin-bottom: 16px;
  padding: 16px;
  border: 1px solid rgba(148, 163, 184, 0.18);
  border-radius: var(--radius);
  background:
    linear-gradient(120deg, rgba(244, 63, 94, 0.08), transparent 44%),
    rgba(255, 255, 255, 0.028);
}

.search-type-tabs {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(110px, 1fr));
  gap: 10px;
}

.search-type-tabs a {
  display: grid;
  place-items: center;
  min-height: 44px;
  border: 1px solid rgba(148, 163, 184, 0.2);
  border-radius: var(--radius-sm);
  color: #dbeafe;
  background: rgba(255, 255, 255, 0.045);
  font-weight: 950;
  text-decoration: none;
}

.search-type-tabs a.active,
.search-type-tabs a:hover,
.search-type-tabs a:focus-visible {
  border-color: rgba(244, 63, 94, 0.75);
  color: #ffffff;
  background: linear-gradient(135deg, #f43f5e, #fb7185);
  outline: none;
}

.admin-preview-banner {
  position: sticky;
  top: 76px;
  z-index: 20;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
  max-width: var(--content-max);
  margin: 18px auto 0;
  padding: 12px 14px;
  border: 1px solid rgba(244, 63, 94, 0.36);
  border-radius: var(--radius);
  color: #eaf6ff;
  background: rgba(15, 23, 32, 0.94);
  box-shadow: 0 18px 36px rgba(0, 0, 0, 0.28);
}

.admin-preview-banner strong {
  color: #ffffff;
}

.admin-preview-banner span {
  flex: 1;
  min-width: 220px;
  color: var(--muted);
}

.admin-preview-banner a {
  min-height: 34px;
  display: inline-flex;
  align-items: center;
  padding: 0 11px;
  border: 1px solid rgba(244, 63, 94, 0.45);
  border-radius: var(--radius-sm);
  color: #ffffff;
  background: rgba(244, 63, 94, 0.18);
  font-weight: 900;
}

.article-seo-health-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}

.article-seo-health-grid div {
  display: grid;
  gap: 6px;
  padding: 12px;
  border: 1px solid rgba(148, 163, 184, 0.16);
  border-radius: var(--radius-sm);
  background: rgba(0, 0, 0, 0.16);
}

.article-seo-health-grid div::before {
  content: "";
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: #f59e0b;
}

.article-seo-health-grid div.is-ok::before {
  background: #34d399;
}

.article-seo-health-grid strong {
  color: #ffffff;
}

.article-seo-health-grid span {
  color: var(--muted);
  line-height: 1.45;
}

.article-revision-panel {
  width: min(var(--content-max), calc(100% - (var(--page-pad) * 2)));
  margin: 18px auto 0;
}

.article-revision-list {
  display: grid;
  gap: 8px;
}

.article-revision-list article {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 12px;
  align-items: center;
  padding: 12px;
  border: 1px solid rgba(148, 163, 184, 0.16);
  border-radius: var(--radius-sm);
  background: rgba(255, 255, 255, 0.035);
}

.article-revision-list strong,
.article-revision-list small {
  display: block;
}

.article-revision-list strong {
  color: #ffffff;
}

.article-revision-list small {
  color: var(--muted);
}

.article-revision-list button,
.image-manager-table button {
  min-height: 34px;
  padding: 0 10px;
  border: 1px solid rgba(244, 63, 94, 0.35);
  border-radius: var(--radius-sm);
  color: #ffffff;
  background: rgba(244, 63, 94, 0.12);
  font-weight: 900;
  cursor: pointer;
}

.image-manager-panel .panel-head form {
  margin: 0;
}

.image-status-list {
  color: var(--muted);
}

.analytics-editorial-table td a {
  color: inherit;
}

.admin-article-assistant {
  display: grid;
  gap: 16px;
  padding: 16px;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background:
    linear-gradient(135deg, rgba(244, 63, 94, 0.08), transparent 48%),
    rgba(255, 255, 255, 0.035);
}

.admin-article-assistant-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(280px, 0.95fr) minmax(220px, 0.7fr);
  gap: 12px;
}

.article-quality-live,
.article-seo-preview,
.article-editor-meter {
  display: grid;
  align-content: start;
  gap: 10px;
  min-width: 0;
  padding: 13px;
  border: 1px solid rgba(180, 205, 220, 0.12);
  border-radius: var(--radius);
  background: rgba(7, 9, 13, 0.32);
}

.article-quality-live strong,
.article-seo-preview strong,
.article-editor-meter strong {
  color: #ffffff;
}

.article-quality-live ul {
  display: grid;
  gap: 7px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.article-quality-live li {
  display: grid;
  grid-template-columns: 18px minmax(0, 1fr);
  gap: 8px;
  align-items: start;
  color: var(--muted);
  font-size: 13px;
}

.article-quality-live li::before {
  content: "";
  display: block;
  width: 15px;
  height: 15px;
  margin-top: 2px;
  border-radius: 50%;
  background: rgba(245, 158, 11, 0.18);
  box-shadow: inset 0 0 0 1px rgba(245, 158, 11, 0.45);
}

.article-quality-live li.is-ok::before {
  background: rgba(52, 211, 153, 0.2);
  box-shadow: inset 0 0 0 1px rgba(52, 211, 153, 0.55);
}

.article-quality-live li span,
.article-quality-live li small {
  grid-column: 2;
}

.article-quality-live li span {
  color: #ffffff;
  font-weight: 850;
}

.article-quality-live li small,
.article-editor-meter p {
  margin: 0;
  color: var(--muted);
  line-height: 1.45;
}

.seo-preview-card {
  display: grid;
  grid-template-columns: 74px minmax(0, 1fr);
  gap: 12px;
  align-items: center;
  min-width: 0;
}

.seo-preview-image {
  display: grid;
  place-items: center;
  width: 74px;
  height: 74px;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  overflow: hidden;
  background: rgba(255, 255, 255, 0.045);
}

.seo-preview-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.seo-preview-card small,
.seo-preview-card b,
.seo-preview-card em {
  display: block;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
}

.seo-preview-card small {
  color: var(--accent);
  font-size: 12px;
  white-space: nowrap;
}

.seo-preview-card b {
  margin: 4px 0;
  color: #ffffff;
  line-height: 1.25;
}

.seo-preview-card em {
  color: var(--muted);
  font-size: 13px;
  font-style: normal;
  line-height: 1.45;
}

.admin-multi-select {
  min-height: 170px;
}

.admin-autosave-note {
  grid-template-columns: minmax(0, 1fr) auto auto;
  align-items: center;
  border-color: rgba(94, 234, 212, 0.28);
  background:
    linear-gradient(120deg, rgba(94, 234, 212, 0.08), transparent 44%),
    rgba(255, 255, 255, 0.035);
}

.admin-autosave-note strong,
.admin-autosave-note span {
  grid-column: 1;
}

.admin-autosave-note button {
  min-height: 34px;
  padding: 0 10px;
  border: 1px solid var(--line);
  border-radius: var(--radius-sm);
  color: var(--text);
  background: rgba(255, 255, 255, 0.055);
  cursor: pointer;
}

.admin-data-summary div {
  display: grid;
  gap: 3px;
  padding: 16px;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background: rgba(255, 255, 255, 0.035);
}

.admin-data-summary strong {
  font-size: 30px;
}

.admin-data-summary span {
  color: var(--muted);
}

.health-pill {
  display: inline-flex;
  align-items: center;
  min-height: 26px;
  padding: 0 9px;
  border: 1px solid var(--line);
  border-radius: 999px;
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
}

.health-error {
  border-color: rgba(244, 63, 94, 0.42);
  color: #fecdd3;
  background: rgba(244, 63, 94, 0.12);
}

.health-warning {
  border-color: rgba(245, 158, 11, 0.42);
  color: #fde68a;
  background: rgba(245, 158, 11, 0.12);
}

.health-table td:nth-child(4) {
  color: var(--muted);
}

@media (max-width: 1100px) {
  .hero-shell,
  .home-command-center,
  .home-spotlight-card,
  .home-live-grid,
  .game-hero,
  .feature-band,
  .game-constellation,
  .constellation-primary,
  .split-section,
  .admin-character-editor,
  .admin-collection-editor,
  .mecha-info-layout,
  .mecha-drive-grid,
  .mecha-st-part-grid,
  .analytics-dashboard-grid,
  .article-layout,
  .admin-two-col {
    grid-template-columns: 1fr;
  }

  .article-layout {
    width: min(920px, calc(100% - 36px));
  }

  .article-jump-panel {
    position: relative;
    top: auto;
    order: -1;
  }

  .hero-signal-deck {
    min-height: 360px;
  }

  .home-spotlight-media {
    min-height: 300px;
  }

  .home-spotlight-stage,
  .home-spotlight-slide {
    min-height: 0;
  }

  .home-spotlight-slide {
    grid-template-columns: 1fr;
    grid-template-rows: auto auto auto;
  }

  .home-spotlight-content-dock {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .home-spotlight-rail {
    border-top: 1px solid rgba(180, 205, 220, 0.13);
    border-left: none;
  }

  .home-spotlight-rail-list {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .home-spotlight-rail-item {
    grid-template-columns: 62px minmax(0, 1fr);
  }

  .home-spotlight-rail-thumb {
    width: 62px;
  }

  .home-pulse-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .home-recent-strip {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .signal-lane.lane-2,
  .signal-lane.lane-3 {
    margin-left: 0;
  }

  .constellation-primary,
  .primary-media {
    min-height: 0;
  }

  .primary-media {
    min-height: 220px;
    border-right: none;
    border-bottom: 1px solid var(--line);
  }

  .game-grid,
  .game-catalog-grid,
  .article-grid,
  .home-article-grid,
  .home-guide-grid,
  .home-guide-mission-list,
  .analytics-insight-strip,
  .code-grid,
  .expired-code-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .admin-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .dashboard-command-layout,
  .dashboard-command-split,
  .dashboard-hardening-grid {
    grid-template-columns: 1fr;
  }

  .data-backup-health-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .dashboard-command-stats {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .media-health-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .analytics-realtime-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .admin-article-assistant-grid {
    grid-template-columns: 1fr;
  }

  .st-builder-layout {
    grid-template-columns: 1fr;
  }

  .st-builder-preview {
    position: static;
  }

  .st-part-list {
    grid-template-columns: 1fr;
  }

  .admin-filter-bar {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .article-seo-health-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .admin-form-section-grid.admin-compact-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .home-game-showcase-grid {
    grid-template-columns: repeat(5, minmax(0, 1fr));
  }

  .home-recent-strip {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .blog-hero-layout {
    grid-template-columns: 1fr;
  }

  .blog-popular-list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .admin-character-sidebar,
  .admin-collection-sidebar {
    position: static;
    grid-template-columns: minmax(0, 1fr) minmax(220px, 0.75fr);
    align-items: start;
  }

  .analytics-panel-wide {
    grid-column: auto;
  }
}

@media (max-width: 780px) {
  :root {
    --page-pad: 16px;
  }

  .site-header {
    min-height: 64px;
    gap: 12px;
  }

  .article-reading-progress {
    top: 64px;
  }

  .nav-toggle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    gap: 4px;
  }

  .site-nav {
    position: absolute;
    left: 18px;
    right: 18px;
    top: calc(100% + 8px);
    display: none;
    align-items: stretch;
    justify-content: stretch;
    gap: 6px;
    max-height: calc(100vh - 92px);
    overflow: auto;
    padding: 10px;
    border: 1px solid var(--line);
    border-radius: var(--radius);
    background: rgba(11, 15, 20, 0.98);
    box-shadow: var(--shadow);
  }

  .site-nav.open {
    display: grid;
  }

  .analytics-intro {
    display: grid;
    align-items: start;
  }

  .analytics-page-head {
    display: grid;
  }

  .analytics-page-actions {
    justify-content: flex-start;
  }

  .analytics-insight-strip,
  .analytics-donut-card,
  .analytics-realtime-grid,
  .analytics-split-lists {
    grid-template-columns: 1fr;
  }

  .analytics-period-tabs {
    justify-content: flex-start;
  }

  .analytics-tab-list {
    gap: 14px;
  }

  .article-share {
    align-items: flex-start;
    flex-direction: column;
  }

  .article-share-actions {
    justify-content: flex-start;
    width: 100%;
  }

  .article-share-button {
    flex: 1 1 118px;
  }

  .review-command-head,
  .guide-hub-head,
  .info-dossier-identity {
    align-items: stretch;
    flex-direction: column;
  }

  .info-dossier-identity.has-dossier-raw-image .info-dossier-copy {
    padding-right: 0;
  }

  .info-dossier-raw-figure {
    position: relative;
    inset: auto;
    align-self: center;
    width: min(100%, 360px);
    height: 280px;
    margin: 0 auto -26px;
    justify-content: center;
  }

  .info-dossier-raw-figure::after {
    content: none;
  }

  .info-dossier-raw-figure img {
    max-height: 100%;
    transform: none;
  }

  .info-dossier-raw-figure figcaption {
    right: 50%;
    transform: translateX(50%);
  }

  .review-command-head a,
  .guide-hub-head > span {
    width: fit-content;
  }

  .review-summary-grid,
  .review-skill-grid,
  .guide-hub-grid,
  .character-tab-stats.stat-grid {
    grid-template-columns: 1fr;
  }

  .admin-character-sidebar,
  .admin-collection-sidebar {
    grid-template-columns: 1fr;
  }

  .st-builder-head,
  .st-builder-section-head {
    align-items: stretch;
    flex-direction: column;
  }

  .st-builder-tabs {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    display: grid;
  }

  .st-builder-tabs button,
  .st-builder-section-head button {
    width: 100%;
  }

  .st-builder-card-grid {
    grid-template-columns: 1fr;
  }

  .admin-filter-bar,
  .media-library-controls,
  .media-health-grid,
  .article-seo-health-grid,
  .article-media-library-grid {
    grid-template-columns: 1fr;
  }

  .article-revision-list article {
    grid-template-columns: 1fr;
  }

  .admin-preview-banner {
    position: static;
    width: min(100% - 32px, var(--content-max));
  }

  .site-nav > a,
  .nav-menu,
  .nav-menu > .nav-link,
  .nav-admin-button,
  .theme-toggle,
  .site-search,
  .site-search input {
    width: 100%;
    justify-content: flex-start;
  }

  .site-search {
    margin-left: 0;
  }

  .theme-toggle {
    display: inline-flex;
    justify-content: center;
  }

  .nav-link.is-active::after {
    left: 0;
    right: auto;
    top: 9px;
    bottom: 9px;
    width: 2px;
    height: auto;
  }

  .nav-menu::after {
    display: none;
  }

  .nav-menu-panel {
    position: static;
    display: grid;
    min-width: 0;
    margin-top: 6px;
    background: rgba(255, 255, 255, 0.035);
    box-shadow: none;
  }

  .hero-shell,
  .section,
  .page-head {
    padding-left: 0;
    padding-right: 0;
  }

  .game-page-head {
    padding-left: clamp(20px, 5vw, 28px);
    padding-right: clamp(20px, 5vw, 28px);
  }

  .hero-copy h1,
  .home-hero-copy h1,
  .game-hero h1,
  .page-head h1,
  .article-detail h1 {
    font-size: clamp(36px, 12vw, 54px);
  }

  .home-command-center {
    padding-top: 42px;
  }

  .home-pulse-grid,
  .home-spotlight-facts,
  .home-recent-strip {
    grid-template-columns: 1fr;
  }

  .home-spotlight-copy {
    padding: 20px;
  }

  .home-spotlight-rail {
    padding: 12px;
  }

  .home-spotlight-rail-head,
  .home-spotlight-controls {
    display: none;
  }

  .home-spotlight-rail-list {
    grid-template-columns: 1fr;
  }

  .home-spotlight-content-dock {
    grid-template-columns: 1fr;
    padding: 10px;
  }

  .home-spotlight-actions a,
  .home-game-filters button {
    flex: 1 1 130px;
  }

  .home-showcase-head {
    align-items: flex-start;
    flex-direction: column;
  }

  .home-game-filters {
    justify-content: flex-start;
    width: 100%;
  }

  .game-grid,
  .game-catalog-grid,
  .article-grid,
  .home-article-grid,
  .home-guide-grid,
  .home-guide-mission-list,
  .feature-grid,
  .constellation-facts,
  .overview-update-grid,
  .code-grid,
  .expired-code-grid,
  .toolbar,
  .admin-grid,
  .form-grid,
  .admin-form-section-grid,
  .admin-form-section-grid.admin-compact-grid {
    grid-template-columns: 1fr;
  }

  .dashboard-command-stats,
  .dashboard-pipeline-grid,
  .dashboard-quick-create {
    grid-template-columns: 1fr;
  }

  .dashboard-mini-chart {
    gap: 5px;
    min-height: 126px;
  }

  .dashboard-pipeline-note {
    display: grid;
  }

  .dashboard-hardening-grid,
  .data-backup-health-grid {
    grid-template-columns: 1fr;
  }

  .dashboard-fix-list strong,
  .dashboard-fix-list small,
  .dashboard-launch-checklist strong,
  .dashboard-launch-checklist small {
    white-space: normal;
  }

  .home-game-showcase-grid {
    grid-template-columns: 1fr;
  }

  .game-catalog-grid.home-game-showcase-grid {
    grid-template-columns: 1fr;
  }

  .home-recent-strip {
    grid-template-columns: 1fr;
  }

  .home-guide-board-head {
    align-items: flex-start;
    flex-direction: column;
  }

  .home-guide-view-all {
    width: 100%;
  }

  .home-guide-mission-card {
    grid-template-columns: 44px 56px minmax(0, 1fr) auto;
    gap: 10px;
    padding: 12px;
  }

  .home-guide-rank {
    width: 42px;
    height: 42px;
    border-radius: 11px;
    font-size: 14px;
  }

  .home-guide-mission-thumb {
    width: 54px;
    height: 54px;
    border-radius: 12px;
  }

  .article-resource-grid,
  .article-related-grid,
  .blog-insight-grid,
  .blog-search-panel,
  .blog-popular-list,
  .article-next-nav {
    grid-template-columns: 1fr;
  }

  .article-author-box {
    grid-template-columns: 1fr;
  }

  .character-grid,
  .split-section .character-grid {
    grid-template-columns: repeat(auto-fit, minmax(min(138px, 100%), 1fr));
    gap: 12px;
  }

  .character-card-link,
  .character-portrait {
    min-height: 210px;
  }

  .character-hover-card {
    left: 50%;
    right: auto;
    top: 28px;
    transform: translate(-50%, 8px);
  }

  .character-card:hover .character-hover-card,
  .character-card:focus-within .character-hover-card {
    transform: translate(-50%, 0);
  }

  .character-card:nth-child(4n) .character-hover-card,
  .character-card:nth-child(4n - 1) .character-hover-card {
    left: 50%;
    right: auto;
  }

  .game-facts,
  .stat-grid,
  .character-info-grid,
  .mecha-basic-grid,
  .detail-hero,
  .tier-row {
    grid-template-columns: 1fr;
  }

  .tier-section-with-sidebar {
    grid-template-columns: 1fr;
    gap: 18px;
  }

  .tier-filter-sidebar {
    position: relative;
    top: auto;
    padding: 0 0 18px;
    border-right: none;
    border-bottom: 1px solid rgba(148, 163, 184, 0.18);
  }

  .tier-filter-options {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .tier-list-summary {
    justify-self: start;
  }

  .mecha-ap-list {
    padding-left: 0;
  }

  .mecha-talent-head {
    align-items: flex-start;
    flex-direction: column;
  }

  .mecha-talent-switch,
  .mecha-talent-single-state {
    margin-left: 0;
  }

  .character-tab-stats.stat-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .detail-hero {
    min-height: 0;
  }

  .detail-avatar {
    width: min(240px, 100%);
    min-height: 300px;
    margin: 0 auto;
  }

  .detail-quick-info {
    grid-template-columns: 1fr;
  }

  .tier-label {
    min-height: 64px;
  }

  .site-footer {
    grid-template-columns: 1fr;
  }

  .footer-columns {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .admin-topbar {
    flex-direction: column;
    align-items: flex-start;
  }

  .admin-topbar {
    position: static;
    margin: 0 0 18px;
    padding: 0 0 16px;
    background: transparent;
    backdrop-filter: none;
  }

  .admin-body {
    grid-template-columns: 1fr;
  }

  .admin-sidebar {
    position: relative;
    height: auto;
    border-right: none;
    border-bottom: 1px solid var(--line);
  }

  .admin-nav {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .admin-sidebar-footer {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .admin-main {
    padding: 16px;
  }
}

@media (max-width: 520px) {
  .button,
  .hero-actions a,
  .form-actions .button {
    width: 100%;
  }

  .footer-columns {
    grid-template-columns: 1fr;
  }

  .global-search-panel,
  .admin-autosave-note,
  .mecha-st-stat-grid {
    grid-template-columns: 1fr;
  }

  .mecha-st-stat-grid span,
  .mecha-st-stat-grid span:nth-child(2n),
  .mecha-st-stat-grid span:nth-last-child(-n + 2) {
    border-right: 0;
    border-bottom: 1px solid rgba(180, 205, 220, 0.1);
  }

  .mecha-st-stat-grid span:last-child {
    border-bottom: 0;
  }

  .admin-autosave-note strong,
  .admin-autosave-note span {
    grid-column: auto;
  }

  .article-detail {
    width: calc(100% - 32px);
  }

  .constellation-node {
    grid-template-columns: 1fr;
  }

  .table-actions {
    text-align: left;
  }

  .detail-tab-list {
    gap: 18px;
  }

  .game-tabs {
    gap: 18px;
  }

  .tabbed-news-head {
    grid-template-columns: 28px minmax(0, auto) 1fr;
    gap: 10px;
    justify-content: start;
  }

  .blog-tag-tabs {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .home-section-heading {
    align-items: start;
    justify-items: stretch;
    text-align: left;
  }

  .home-section-heading > span,
  .home-section-heading .section-link {
    justify-self: start;
  }

  .home-section-title-row {
    grid-template-columns: 28px minmax(0, 1fr);
    gap: 10px;
  }

  .home-section-title-row::after {
    display: none;
  }

  .home-section-title-row h2 {
    font-size: clamp(24px, 7vw, 32px);
  }

  .blog-hero-copy h1 {
    font-size: clamp(36px, 11vw, 52px);
  }

  .section-heading-row {
    align-items: flex-start;
    flex-direction: column;
  }

  .article-card.home-featured {
    min-height: 0;
  }

  .article-card-media {
    height: 210px;
  }

  .article-card.home-featured .article-card-body {
    min-height: 0;
  }

  .game-facts {
    padding: 4px 14px;
  }

  .game-facts span {
    grid-template-columns: 1fr;
    gap: 5px;
    align-items: start;
    min-height: 0;
  }

  .game-facts em {
    justify-self: start;
    text-align: left;
  }

  .tier-position-grid span {
    width: 100%;
    justify-content: space-between;
  }

  .character-tab-stats.stat-grid,
  .character-info-grid,
  .mecha-basic-grid {
    grid-template-columns: 1fr;
  }

  .mecha-stat-row {
    grid-template-columns: 92px minmax(0, 1fr) 42px;
  }

  .mecha-talent-switch {
    width: 100%;
    flex-wrap: wrap;
    justify-content: flex-start;
  }

  .character-guide-card {
    grid-template-columns: 54px minmax(0, 1fr) 18px;
    gap: 12px;
  }

  .character-guide-thumb {
    width: 54px;
    height: 54px;
  }
}

/* Frontend polish pass: public rhythm, cards, reading mode, and mobile touch targets. */
:root {
  --surface-card: linear-gradient(145deg, rgba(244, 63, 94, 0.075), transparent 42%), linear-gradient(180deg, rgba(255, 255, 255, 0.04), rgba(255, 255, 255, 0.014)), rgba(9, 14, 21, 0.94);
  --card-border: rgba(180, 205, 220, 0.18);
  --card-shadow: 0 18px 46px rgba(0, 0, 0, 0.24), inset 0 1px 0 rgba(255, 255, 255, 0.035);
  --card-hover-shadow: 0 22px 58px rgba(0, 0, 0, 0.3), 0 0 0 1px rgba(244, 63, 94, 0.12), inset 0 1px 0 rgba(255, 255, 255, 0.045);
  --focus-ring: 0 0 0 3px rgba(244, 63, 94, 0.18), 0 0 0 1px rgba(244, 63, 94, 0.58);
  --section-flow: clamp(18px, 2.6vw, 34px);
  --content-max: 1320px;
}

.frontend-polish {
  color-scheme: dark;
}

.frontend-polish ::selection {
  color: #ffffff;
  background: rgba(244, 63, 94, 0.62);
}

.frontend-polish :is(a, button, input, select, textarea, [tabindex]):focus-visible {
  outline: 2px solid rgba(255, 255, 255, 0.78);
  outline-offset: 3px;
  box-shadow: var(--focus-ring);
}

.frontend-polish :where(.game-catalog-card, .article-card-v2, .home-mock-panel, .reward-code-card, .character-guide-card, .article-related-intel-card, .guide-related-intel-card) {
  border-color: var(--card-border);
  background: var(--surface-card);
  box-shadow: var(--card-shadow);
}

.frontend-polish :where(.game-catalog-card, .article-card-v2, .home-guide-mission-card, .article-related-intel-card, .guide-related-intel-card):hover,
.frontend-polish :where(.game-catalog-card, .article-card-v2, .home-guide-mission-card, .article-related-intel-card, .guide-related-intel-card):focus-visible,
.frontend-polish :where(.game-catalog-card, .article-card-v2, .home-guide-mission-card, .article-related-intel-card, .guide-related-intel-card):focus-within {
  border-color: rgba(244, 63, 94, 0.5);
  box-shadow: var(--card-hover-shadow);
}

.frontend-polish :where(.article-card h3, .game-card h3, .game-catalog-body h3, .article-related-intel-title, .home-guide-mission-copy strong) {
  overflow-wrap: anywhere;
  text-wrap: pretty;
}

.frontend-polish :where(.article-card-excerpt, .home-guide-mission-copy small, .article-related-intel-excerpt) {
  text-wrap: pretty;
}

.frontend-polish .article-grid,
.frontend-polish .home-article-grid,
.frontend-polish .guide-related-grid,
.frontend-polish .article-related-grid {
  align-items: stretch;
}

.frontend-polish .article-card-v2,
.frontend-polish .article-related-intel-card,
.frontend-polish .guide-related-intel-card {
  height: 100%;
}

.frontend-polish .home-game-card-link {
  grid-template-rows: 96px minmax(64px, auto);
  min-height: 160px;
}

.frontend-polish .home-game-card-copy {
  align-content: center;
  gap: 4px;
  padding-top: 9px;
  padding-bottom: 9px;
}

.frontend-polish .home-game-card-copy strong,
.frontend-polish .home-game-card-copy small {
  display: -webkit-box;
  white-space: normal;
  -webkit-box-orient: vertical;
}

.frontend-polish .home-game-card-copy strong {
  -webkit-line-clamp: 2;
}

.frontend-polish .home-game-card-copy small {
  -webkit-line-clamp: 2;
}

.frontend-polish .home-section-heading,
.frontend-polish .tabbed-news-head,
.frontend-polish .overview-section-heading {
  margin-bottom: clamp(18px, 2.2vw, 30px);
}

.frontend-polish .section:where(.home-blog-section, .home-guides-section, .home-recently-updated) {
  scroll-margin-top: calc(76px + var(--section-flow));
}

.article-layout.has-jump-panel {
  grid-template-columns: minmax(0, 900px) minmax(280px, 324px);
}

.article-detail .content-panel {
  color: #eaf3fa;
  font-size: clamp(16px, 1.1vw, 18px);
}

.article-detail .content-panel :where(p, ul, ol, blockquote) {
  max-width: 76ch;
  line-height: 1.78;
}

.article-detail .content-panel :where(ul, ol) {
  padding-left: 1.25em;
}

.article-detail .content-panel :where(li + li) {
  margin-top: 0.58em;
}

.article-detail .content-panel :where(h2, h3, h4) {
  max-width: 28ch;
  margin-top: clamp(30px, 4vw, 46px);
  margin-bottom: 12px;
  scroll-margin-top: 96px;
  color: #ffffff;
  line-height: 1.12;
  text-wrap: balance;
}

.article-detail .content-panel :where(img, video, iframe) {
  border-radius: var(--radius);
}

.article-detail .content-panel :where(blockquote) {
  margin-left: 0;
  padding: 16px 18px;
  border-left: 3px solid #f43f5e;
  border-radius: var(--radius-sm);
  background: rgba(244, 63, 94, 0.08);
}

.article-jump-card {
  border-color: rgba(180, 205, 220, 0.2);
}

@media (max-width: 920px) {
  .article-layout.has-jump-panel {
    width: min(920px, calc(100% - 32px));
    margin: clamp(28px, 6vw, 56px) auto;
    gap: 18px;
  }

  .article-jump-panel {
    max-height: none;
  }

  .article-jump-card {
    padding: 16px;
  }

  .article-jump-list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 6px 10px;
    border-left: 0;
  }

  .article-jump-link {
    min-height: 38px;
    margin-left: 0;
    padding: 9px 10px;
    border: 1px solid rgba(180, 205, 220, 0.14);
    border-radius: var(--radius-sm);
    background: rgba(255, 255, 255, 0.025);
  }

  .article-jump-link.is-active,
  .article-jump-link:hover,
  .article-jump-link:focus-visible {
    border-color: rgba(244, 63, 94, 0.58);
    background: rgba(244, 63, 94, 0.12);
  }

  .frontend-polish .article-card-v2 .article-card-body,
  .frontend-polish .article-card.home-featured .article-card-body {
    min-height: 0;
  }

  .frontend-polish .home-command-center,
  .frontend-polish .blog-command-center {
    margin-top: clamp(14px, 4vw, 28px);
  }
}

@media (max-width: 640px) {
  .frontend-polish .home-game-card-link {
    grid-template-rows: 108px minmax(72px, auto);
    min-height: 180px;
  }

  .frontend-polish .article-share-actions {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
  }

  .frontend-polish .article-share-button {
    width: 100%;
    min-width: 0;
    padding-inline: 10px;
  }

  .frontend-polish .article-detail .lead {
    font-size: 16px;
  }

  .frontend-polish .article-jump-list {
    grid-template-columns: 1fr;
  }

  .frontend-polish .article-meta-row {
    gap: 8px;
  }

  .frontend-polish .footer-columns {
    gap: 16px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .frontend-polish *,
  .frontend-polish *::before,
  .frontend-polish *::after {
    scroll-behavior: auto !important;
    transition-duration: 0.01ms !important;
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
  }
}

/* Frontend next pass: command palette, public states, compare workspace, and mobile dock. */
.command-palette {
  position: fixed;
  inset: 0;
  z-index: 120;
  display: grid;
  place-items: start center;
  padding: clamp(72px, 9vw, 110px) var(--page-pad) 24px;
  opacity: 0;
  pointer-events: none;
  visibility: hidden;
  transition: opacity 160ms ease, visibility 160ms ease;
}

.command-palette.is-open {
  opacity: 1;
  pointer-events: auto;
  visibility: visible;
}

.command-palette-backdrop {
  position: absolute;
  inset: 0;
  border: 0;
  background: rgba(2, 5, 10, 0.72);
  backdrop-filter: blur(12px);
  cursor: pointer;
}

.command-palette-panel {
  position: relative;
  z-index: 1;
  display: grid;
  gap: 12px;
  width: min(760px, 100%);
  max-height: min(720px, calc(100vh - 120px));
  padding: 16px;
  overflow: hidden;
  border: 1px solid rgba(180, 205, 220, 0.22);
  border-radius: 14px;
  background:
    radial-gradient(circle at 18% 0%, rgba(244, 63, 94, 0.16), transparent 34%),
    linear-gradient(180deg, rgba(17, 24, 34, 0.98), rgba(7, 10, 15, 0.98));
  box-shadow: 0 34px 90px rgba(0, 0, 0, 0.52), inset 0 1px 0 rgba(255, 255, 255, 0.045);
}

.command-palette-head,
.command-palette-input-wrap {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.command-palette-head span {
  color: #36d9ff;
  font-size: 12px;
  font-weight: 950;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.command-palette-head strong {
  display: block;
  margin-top: 3px;
  color: #ffffff;
  font-size: 24px;
}

.command-palette-head button {
  min-height: 34px;
  padding: 0 12px;
  border: 1px solid rgba(180, 205, 220, 0.18);
  border-radius: var(--radius-sm);
  color: #dbeafe;
  background: rgba(255, 255, 255, 0.04);
  font-weight: 900;
  cursor: pointer;
}

.command-palette-input-wrap {
  justify-content: flex-start;
  min-height: 56px;
  padding: 0 14px;
  border: 1px solid rgba(244, 63, 94, 0.32);
  border-radius: var(--radius);
  background: rgba(4, 8, 13, 0.88);
}

.command-palette-input-wrap .nav-icon {
  color: #f43f5e;
}

.command-palette-input-wrap input {
  width: 100%;
  border: 0;
  color: #ffffff;
  background: transparent;
  outline: none;
  font-size: 17px;
  font-weight: 750;
}

.command-palette-results {
  display: grid;
  gap: 8px;
  max-height: 430px;
  overflow: auto;
  padding-right: 4px;
  scrollbar-width: thin;
}

.command-palette-result {
  display: grid;
  grid-template-columns: 54px minmax(0, 1fr);
  gap: 12px;
  align-items: center;
  min-height: 70px;
  padding: 9px;
  border: 1px solid rgba(180, 205, 220, 0.13);
  border-radius: var(--radius);
  background: rgba(255, 255, 255, 0.035);
}

.command-palette-result.is-active,
.command-palette-result:hover,
.command-palette-result:focus-visible {
  border-color: rgba(244, 63, 94, 0.58);
  background: rgba(244, 63, 94, 0.1);
  outline: none;
}

.command-palette-result.is-hidden {
  display: none;
}

.command-palette-thumb {
  display: grid;
  place-items: center;
  width: 54px;
  height: 54px;
  overflow: hidden;
  border: 1px solid rgba(180, 205, 220, 0.16);
  border-radius: 12px;
  color: #ffffff;
  background:
    radial-gradient(circle at 50% 36%, rgba(244, 63, 94, 0.28), transparent 54%),
    rgba(13, 19, 28, 0.9);
  font-weight: 950;
}

.command-palette-thumb img,
.command-palette-thumb-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.command-palette-result span:last-child {
  display: grid;
  gap: 3px;
  min-width: 0;
}

.command-palette-result small {
  color: #36d9ff;
  font-size: 11px;
  font-weight: 950;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.command-palette-result strong,
.command-palette-result em {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.command-palette-result strong {
  color: #ffffff;
  font-size: 16px;
  font-weight: 950;
}

.command-palette-result em {
  color: #9fb1c5;
  font-size: 13px;
  font-style: normal;
}

.command-palette-loading {
  display: none;
}

.command-palette-results.state-card-loading + .command-palette-empty + .command-palette-loading {
  display: grid;
}

.state-card {
  display: grid;
  justify-items: start;
  gap: 8px;
  min-height: 148px;
  padding: 18px;
  border: 1px dashed rgba(180, 205, 220, 0.22);
  border-radius: var(--radius);
  background:
    linear-gradient(135deg, rgba(244, 63, 94, 0.08), transparent 44%),
    rgba(255, 255, 255, 0.03);
}

.state-card-icon {
  display: inline-grid;
  width: 34px;
  height: 34px;
  border: 1px solid rgba(244, 63, 94, 0.45);
  border-radius: 10px;
  background:
    linear-gradient(135deg, rgba(244, 63, 94, 0.22), rgba(54, 217, 255, 0.08)),
    rgba(9, 14, 21, 0.9);
}

.state-card strong {
  color: #ffffff;
  font-size: 19px;
  line-height: 1.2;
}

.state-card p {
  max-width: 58ch;
  margin: 0;
  color: #9fb1c5;
  line-height: 1.55;
}

.state-card-action {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 34px;
  padding: 0 11px;
  border: 1px solid rgba(244, 63, 94, 0.48);
  border-radius: var(--radius-sm);
  color: #ffffff;
  background: rgba(244, 63, 94, 0.1);
  font-size: 13px;
  font-weight: 900;
}

.state-card-loading {
  min-height: 92px;
  align-content: center;
}

.state-skeleton {
  display: block;
  width: 100%;
  height: 13px;
  border-radius: 999px;
  background: linear-gradient(90deg, rgba(180, 205, 220, 0.08), rgba(180, 205, 220, 0.22), rgba(180, 205, 220, 0.08));
  background-size: 220% 100%;
  animation: guragon-skeleton 1.1s linear infinite;
}

.state-skeleton:nth-child(2) {
  width: 78%;
}

.state-skeleton:nth-child(3) {
  width: 54%;
}

@keyframes guragon-skeleton {
  from { background-position: 100% 0; }
  to { background-position: -100% 0; }
}

.mobile-action-dock {
  position: fixed;
  left: 50%;
  bottom: 16px;
  z-index: 80;
  display: none;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 7px;
  width: min(430px, calc(100% - 28px));
  padding: 8px;
  border: 1px solid rgba(180, 205, 220, 0.2);
  border-radius: 18px;
  background: rgba(5, 8, 12, 0.92);
  box-shadow: 0 24px 70px rgba(0, 0, 0, 0.44), inset 0 1px 0 rgba(255, 255, 255, 0.045);
  backdrop-filter: blur(18px);
  transform: translate(-50%, 18px);
  opacity: 0;
  pointer-events: none;
  transition: transform 160ms ease, opacity 160ms ease;
}

.mobile-action-dock.is-visible {
  opacity: 1;
  pointer-events: auto;
  transform: translate(-50%, 0);
}

.mobile-action-dock button {
  display: grid;
  place-items: center;
  gap: 3px;
  min-height: 54px;
  border: 1px solid rgba(180, 205, 220, 0.14);
  border-radius: 13px;
  color: #dce8f4;
  background: rgba(255, 255, 255, 0.035);
  font-size: 11px;
  font-weight: 900;
}

.mobile-action-dock .nav-icon,
.mobile-action-dock button > span[aria-hidden="true"] {
  width: 18px;
  height: 18px;
  color: #f43f5e;
  font-size: 18px;
  line-height: 1;
}

.compare-page-head {
  padding-bottom: 18px;
}

.compare-workspace {
  display: grid;
  gap: 18px;
}

.compare-toolbar {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 18px;
  padding: 18px;
  border: 1px solid rgba(180, 205, 220, 0.18);
  border-radius: var(--radius);
  background: var(--surface-card);
  box-shadow: var(--card-shadow);
}

.compare-toolbar h2 {
  margin: 4px 0 6px;
  color: #ffffff;
  font-size: clamp(24px, 3vw, 36px);
}

.compare-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.compare-lane {
  display: grid;
  gap: 12px;
  min-width: 0;
  padding: 14px;
  border: 1px solid rgba(180, 205, 220, 0.18);
  border-radius: var(--radius);
  background: var(--surface-card);
  box-shadow: var(--card-shadow);
}

.compare-lane label {
  display: grid;
  gap: 7px;
  color: #bdd7ff;
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
}

.compare-card-content {
  display: grid;
  gap: 12px;
}

.compare-preview-media {
  display: grid;
  place-items: center;
  min-height: 210px;
  overflow: hidden;
  border: 1px solid rgba(180, 205, 220, 0.14);
  border-radius: var(--radius);
  background:
    radial-gradient(circle at 50% 34%, rgba(244, 63, 94, 0.18), transparent 46%),
    rgba(7, 10, 15, 0.9);
  color: #ffffff;
  font-size: 48px;
  font-weight: 950;
}

.compare-preview-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.compare-preview-body {
  display: grid;
  gap: 10px;
}

.compare-preview-kicker {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  color: #36d9ff;
  font-size: 12px;
  font-weight: 950;
  text-transform: uppercase;
}

.compare-preview-body h3 {
  margin: 0;
  color: #ffffff;
  font-size: 24px;
  line-height: 1.1;
}

.compare-preview-body p {
  margin: 0;
  color: #a9bdd4;
  line-height: 1.58;
}

.compare-stat-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}

.compare-stat-grid span {
  display: grid;
  gap: 4px;
  min-height: 58px;
  padding: 10px;
  border: 1px solid rgba(180, 205, 220, 0.13);
  border-radius: var(--radius-sm);
  background: rgba(255, 255, 255, 0.035);
}

.compare-stat-grid small {
  color: #8fa6bc;
  font-size: 11px;
  font-weight: 900;
  text-transform: uppercase;
}

.compare-stat-grid strong {
  color: #ffffff;
}

.compare-open-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 36px;
  border: 1px solid rgba(244, 63, 94, 0.5);
  border-radius: var(--radius-sm);
  color: #ffffff;
  background: rgba(244, 63, 94, 0.1);
  font-weight: 900;
}

@media (max-width: 980px) {
  .compare-grid {
    grid-template-columns: 1fr;
  }

  .compare-toolbar {
    align-items: stretch;
    flex-direction: column;
  }
}

@media (max-width: 760px) {
  body:has(.mobile-action-dock) {
    padding-bottom: 78px;
  }

  .mobile-action-dock {
    display: grid;
  }

  .command-palette {
    padding: 76px 14px 20px;
  }

  .command-palette-panel {
    max-height: calc(100vh - 96px);
    padding: 12px;
  }

  .command-palette-result {
    grid-template-columns: 46px minmax(0, 1fr);
  }

  .command-palette-thumb {
    width: 46px;
    height: 46px;
  }

  .compare-preview-media {
    min-height: 180px;
  }

  .compare-stat-grid {
    grid-template-columns: 1fr;
  }
}

/* Frontend upgrade V2 surfaces: game hub, reading dashboard, character brief, and search hub. */
.game-hub-v2,
.reading-command-shell,
.character-command-brief,
.search-hub-v2 {
  position: relative;
  overflow: hidden;
  border: 1px solid rgba(148, 163, 184, 0.22);
  background:
    linear-gradient(135deg, rgba(244, 63, 94, 0.1), rgba(34, 211, 238, 0.06) 44%, rgba(10, 16, 24, 0.92)),
    rgba(10, 15, 22, 0.96);
  box-shadow: 0 24px 80px rgba(0, 0, 0, 0.28);
}

.game-hub-v2-head,
.character-brief-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 24px;
  margin-bottom: 18px;
}

.game-hub-v2-head h2,
.character-brief-head h2,
.reading-hero-card h2,
.search-hub-v2 h1 {
  margin: 0;
  color: #f8fafc;
  text-shadow: 2px 2px 0 rgba(0, 0, 0, 0.55);
}

.game-hub-v2-head p,
.character-brief-head p,
.reading-hero-card p,
.search-hub-v2 p {
  max-width: 720px;
  color: #c8d7e8;
}

.game-hub-v2-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.45fr) minmax(320px, 0.75fr);
  gap: 16px;
}

.game-hub-primary,
.game-hub-activity,
.game-hub-lanes,
.reading-hero-card,
.reading-context-grid span,
.reading-callout-card,
.character-brief-card,
.search-suggestion-chip,
.search-hub-status {
  border: 1px solid rgba(148, 163, 184, 0.22);
  background: rgba(13, 20, 30, 0.84);
}

.game-hub-primary {
  min-height: 310px;
  display: grid;
  align-content: end;
  position: relative;
  overflow: hidden;
  border-radius: 10px;
  padding: 22px;
}

.game-hub-primary::after,
.reading-hero-card::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(5, 8, 13, 0.1), rgba(5, 8, 13, 0.88));
  pointer-events: none;
}

.game-hub-primary-bg,
.reading-hero-bg {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: 0.42;
}

.game-hub-primary-copy,
.game-hub-metric-row,
.reading-hero-card > div {
  position: relative;
  z-index: 1;
}

.game-hub-primary-copy h3 {
  margin: 12px 0 8px;
  font-size: clamp(2rem, 5vw, 4.8rem);
  color: #f8fafc;
  line-height: 0.95;
}

.game-hub-metric-row {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  margin-top: 18px;
}

.game-hub-metric-row a,
.game-hub-lane-grid a {
  display: grid;
  gap: 4px;
  min-width: 0;
  padding: 12px;
  border: 1px solid rgba(148, 163, 184, 0.2);
  border-radius: 8px;
  background: rgba(8, 13, 20, 0.72);
  color: #eaf6ff;
  text-decoration: none;
}

.game-hub-metric-row strong {
  font-size: 1.6rem;
  color: #f43f5e;
}

.game-hub-metric-row span,
.game-hub-lane-grid span,
.game-hub-activity-list span {
  color: #9fb3ca;
  font-size: 0.78rem;
  text-transform: uppercase;
  letter-spacing: 0.08em;
}

.game-hub-panel-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 12px;
}

.game-hub-activity,
.game-hub-lanes {
  border-radius: 10px;
  padding: 16px;
}

.game-hub-activity-list,
.game-hub-lane-grid {
  display: grid;
  gap: 10px;
}

.game-hub-activity-list a {
  display: grid;
  gap: 4px;
  padding: 12px;
  border-radius: 8px;
  border: 1px solid rgba(148, 163, 184, 0.18);
  background: rgba(15, 23, 42, 0.72);
  color: #f8fafc;
  text-decoration: none;
}

.game-hub-activity-list a:hover,
.game-hub-lane-grid a:hover,
.search-suggestion-chip:hover,
.character-brief-card:hover {
  border-color: rgba(244, 63, 94, 0.65);
  transform: translateY(-1px);
}

.game-hub-lanes {
  margin-top: 16px;
}

.game-hub-lane-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.reading-command-shell {
  display: grid;
  gap: 14px;
  padding: 14px;
  margin: 22px 0;
  border-radius: 12px;
}

.reading-hero-card {
  position: relative;
  overflow: hidden;
  min-height: 180px;
  display: grid;
  align-items: end;
  padding: 20px;
  border-radius: 10px;
}

.reading-context-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
}

.reading-context-grid span,
.reading-callout-card,
.character-brief-card {
  display: grid;
  gap: 6px;
  padding: 14px;
  border-radius: 8px;
}

.reading-context-grid small,
.reading-callout-card span,
.character-brief-card span {
  color: #7dd3fc;
  font-size: 0.75rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.08em;
}

.reading-context-grid strong,
.reading-callout-card strong,
.character-brief-card strong {
  color: #f8fafc;
}

.reading-callout-rail {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}

.reading-callout-card a {
  color: #f43f5e;
  font-weight: 800;
}

.character-command-brief {
  border-radius: 12px;
  padding: 22px;
}

.character-action-strip {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
  justify-content: flex-end;
}

.character-brief-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}

.character-brief-card ul {
  margin: 0;
  padding-left: 18px;
  color: #dceafe;
}

.character-brief-card li + li {
  margin-top: 8px;
}

.search-hub-v2 {
  display: grid;
  gap: 18px;
  border-radius: 0;
}

.search-hub-form {
  max-width: none;
}

.search-category-grid {
  display: grid;
  grid-template-columns: repeat(7, minmax(0, 1fr));
  gap: 10px;
}

.search-suggestion-chip {
  display: flex;
  min-height: 64px;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  border-radius: 8px;
  padding: 12px 14px;
  color: #eaf6ff;
  text-decoration: none;
}

.search-suggestion-chip.is-active {
  border-color: rgba(244, 63, 94, 0.85);
  background: linear-gradient(135deg, rgba(244, 63, 94, 0.85), rgba(244, 63, 94, 0.26));
  box-shadow: 0 16px 40px rgba(244, 63, 94, 0.18);
}

.search-suggestion-chip strong {
  color: #7dd3fc;
}

.search-hub-status {
  display: inline-flex;
  width: max-content;
  align-items: center;
  gap: 8px;
  border-radius: 999px;
  padding: 8px 12px;
}

.search-hub-status strong {
  color: #f43f5e;
}

.search-result-grid-v2 {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.search-result-grid-v2 .search-result-card {
  height: 100%;
}

@media (max-width: 980px) {
  .game-hub-v2-grid,
  .character-brief-grid,
  .reading-callout-rail,
  .search-result-grid-v2 {
    grid-template-columns: 1fr;
  }

  .game-hub-lane-grid,
  .game-hub-metric-row,
  .reading-context-grid,
  .search-category-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 820px) {
  .game-hub-v2-head,
  .character-brief-head {
    display: grid;
  }

  .game-hub-metric-row,
  .game-hub-lane-grid,
  .reading-context-grid,
  .reading-callout-rail,
  .character-brief-grid,
  .search-category-grid {
    grid-template-columns: 1fr;
  }

  .game-hub-primary {
    min-height: 260px;
  }

  .search-hub-status {
    width: 100%;
    justify-content: center;
  }
}

/* Frontend upgrade V2 layout polish: tighten the new surfaces after visual QA. */
.search-hub-v2 {
  max-width: min(1320px, calc(100% - 48px));
  margin: 46px auto 28px;
  padding: 32px;
  border-radius: 10px;
  gap: 16px;
}

.search-hub-v2 > .badge,
.search-hub-v2 > .badge-glow {
  width: max-content;
  max-width: 100%;
  justify-self: start;
  align-self: start;
}

.search-hub-v2 h1 {
  max-width: 940px;
  font-size: clamp(3.1rem, 5.4vw, 5.8rem);
  line-height: 0.96;
}

.search-hub-v2 p {
  max-width: 760px;
  margin: 0;
}

.search-hub-v2 .global-search-panel,
.search-hub-form {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 136px;
  max-width: 720px;
  gap: 10px;
}

.search-category-grid {
  grid-template-columns: repeat(auto-fit, minmax(148px, 1fr));
}

.search-suggestion-chip {
  min-height: 54px;
  padding: 10px 13px;
}

.search-results-section {
  margin-top: 30px;
  padding-top: 0;
}

.search-result-grid-v2 {
  grid-template-columns: repeat(auto-fit, minmax(360px, 1fr));
}

.game-hub-v2 {
  padding: 18px;
  margin-top: 26px;
  border-radius: 10px;
}

.game-hub-v2-head {
  align-items: center;
  margin-bottom: 14px;
}

.game-hub-v2-head h2 {
  font-size: clamp(1.55rem, 2.35vw, 2.45rem);
  line-height: 1.04;
}

.game-hub-v2-head p {
  margin: 6px 0 0;
}

.game-hub-primary {
  min-height: 258px;
}

.game-hub-primary-copy h3 {
  font-size: clamp(2.6rem, 4.3vw, 4.5rem);
}

.game-hub-activity-list a,
.game-hub-lane-grid a,
.game-hub-metric-row a {
  min-width: 0;
}

.character-command-brief {
  padding: 18px 20px;
  margin-top: 14px;
  border-radius: 10px;
}

.character-brief-head {
  align-items: center;
  margin-bottom: 14px;
}

.character-brief-head h2 {
  font-size: clamp(1.5rem, 2.2vw, 2.25rem);
  line-height: 1.05;
}

.character-brief-head p {
  max-width: 760px;
  margin: 6px 0 0;
  display: -webkit-box;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.character-brief-card {
  min-height: 0;
  padding: 12px 14px;
}

.character-brief-card p {
  margin: 0;
  display: -webkit-box;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 4;
}

.character-brief-card ul {
  margin-top: 4px;
}

@media (max-width: 820px) {
  .search-hub-v2 {
    max-width: calc(100% - 24px);
    margin-top: 24px;
    padding: 20px;
  }

  .search-hub-v2 .global-search-panel,
  .search-hub-form {
    grid-template-columns: 1fr;
  }

  .search-hub-v2 h1 {
    font-size: clamp(2.5rem, 14vw, 4.4rem);
  }

  .game-hub-v2,
  .character-command-brief {
    padding: 14px;
  }
}

/* Blog command hero compact polish */
.blog-hero-layout {
  align-items: stretch;
}

.blog-hero-copy,
.blog-hero-featured,
.blog-hero-feed {
  height: 100%;
}

.blog-hero-copy {
  align-content: center;
  min-height: 0;
  padding-top: clamp(24px, 3.2vw, 42px);
  padding-bottom: clamp(24px, 3.2vw, 42px);
}

.blog-hero-featured,
.blog-hero-feed {
  align-self: stretch;
}

.blog-hero-featured {
  display: grid;
  align-content: start;
  gap: 10px;
}

.blog-featured-story {
  min-height: 0;
  height: 100%;
  margin-top: 0;
}

.blog-hero-featured .article-card {
  min-height: 0;
}

.blog-hero-featured .article-card-media {
  height: clamp(210px, 19vw, 292px);
}

.blog-hero-featured .article-card-body {
  gap: 12px;
  min-height: 0;
  padding: 16px 18px 18px;
}

.blog-hero-featured .article-card h3 {
  font-size: clamp(1.35rem, 1.65vw, 1.75rem);
  line-height: 1.08;
}

.blog-hero-featured .article-card-excerpt {
  -webkit-line-clamp: 1;
}

.blog-hero-featured .article-card-footer {
  margin-top: 10px;
  padding-top: 12px;
}

.blog-hero-feed {
  grid-template-rows: auto 1fr;
  gap: 10px;
}

.blog-hero-feed .blog-briefing-list {
  align-content: start;
  gap: 9px;
}

.blog-hero-feed .blog-briefing-list a {
  min-height: 78px;
  padding: 11px 12px;
}

@media (min-width: 981px) {
  .blog-hero-layout {
    grid-template-columns: minmax(260px, 0.82fr) minmax(420px, 1.35fr) minmax(300px, 0.85fr);
  }
}

@media (max-width: 980px) {
  .blog-hero-layout {
    align-items: start;
  }

  .blog-hero-copy,
  .blog-hero-featured,
  .blog-hero-feed {
    align-self: stretch;
    height: auto;
  }
}
/* Admin game visible tabs */
.admin-tab-visibility {
  display: grid;
  gap: 12px;
  padding: 14px;
  border: 1px solid rgba(148, 163, 184, 0.18);
  border-radius: var(--radius-sm);
  background: rgba(8, 13, 20, 0.42);
}

.admin-field-note {
  display: grid;
  gap: 4px;
}

.admin-field-note strong {
  color: #f8fafc;
}

.admin-field-note small {
  color: var(--muted);
}

.admin-tab-visibility-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
  gap: 10px;
}

.admin-tab-check {
  align-items: flex-start;
  min-height: 68px;
  margin: 0;
}

.admin-tab-check span {
  display: grid;
  gap: 3px;
  min-width: 0;
}

.admin-tab-check strong {
  color: #ffffff;
}

.admin-tab-check small {
  overflow: hidden;
  color: #8fb4d6;
  font-size: 0.78rem;
  text-overflow: ellipsis;
  white-space: nowrap;
}
/* Character suggested collections */
.review-suggested-panel {
  padding: clamp(18px, 3vw, 26px);
  border: 1px solid rgba(148, 163, 184, 0.18);
  border-radius: var(--radius);
  background:
    linear-gradient(120deg, rgba(34, 211, 238, 0.055), transparent 44%),
    rgba(16, 23, 32, 0.72);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.035);
}

.suggested-collection-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: 12px;
}

.suggested-collection-card {
  display: grid;
  grid-template-columns: 88px minmax(0, 1fr) auto;
  align-items: center;
  gap: 14px;
  min-height: 112px;
  padding: 12px;
  border: 1px solid rgba(148, 163, 184, 0.2);
  border-radius: var(--radius-sm);
  background:
    radial-gradient(circle at 0% 0%, rgba(244, 63, 94, 0.12), transparent 42%),
    rgba(9, 15, 23, 0.86);
  color: var(--text);
  overflow: hidden;
  transition: transform 0.18s ease, border-color 0.18s ease, background 0.18s ease;
}

.suggested-collection-card:hover {
  transform: translateY(-2px);
  border-color: rgba(244, 63, 94, 0.5);
  background:
    radial-gradient(circle at 0% 0%, rgba(244, 63, 94, 0.2), transparent 42%),
    rgba(13, 20, 31, 0.94);
}

.suggested-collection-art {
  position: relative;
  display: grid;
  place-items: center;
  width: 88px;
  height: 88px;
  border: 1px solid rgba(148, 163, 184, 0.2);
  border-radius: 10px;
  background: rgba(255, 255, 255, 0.045);
  overflow: hidden;
}

.suggested-collection-art img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.suggested-collection-art > strong {
  color: #67e8f9;
  font-size: 2rem;
  font-weight: 950;
}

.suggested-collection-icons {
  position: absolute;
  right: 6px;
  top: 6px;
  display: grid;
  gap: 4px;
}

.suggested-collection-icons img {
  width: 24px;
  height: 24px;
  object-fit: contain;
  filter: drop-shadow(0 2px 4px rgba(0, 0, 0, 0.55));
}

.suggested-collection-copy {
  display: grid;
  gap: 5px;
  min-width: 0;
}

.suggested-collection-copy small {
  color: #67e8f9;
  font-size: 11px;
  font-weight: 950;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.suggested-collection-copy strong {
  overflow: hidden;
  color: #ffffff;
  font-size: 1.1rem;
  line-height: 1.08;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.suggested-collection-copy em {
  overflow: hidden;
  color: #9db4d4;
  font-size: 0.82rem;
  font-style: normal;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.suggested-collection-action {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 34px;
  padding: 0 12px;
  border: 1px solid rgba(244, 63, 94, 0.42);
  border-radius: var(--radius-sm);
  color: #ffffff;
  background: rgba(244, 63, 94, 0.1);
  font-size: 12px;
  font-weight: 950;
  white-space: nowrap;
}

@media (max-width: 640px) {
  .suggested-collection-card {
    grid-template-columns: 74px minmax(0, 1fr);
  }

  .suggested-collection-art {
    width: 74px;
    height: 74px;
  }

  .suggested-collection-action {
    grid-column: 2;
    width: fit-content;
  }
}
/* Media runtime warning */
.media-runtime-warning {
  display: grid;
  gap: 6px;
  margin-top: 14px;
  padding: 14px 16px;
  border: 1px solid rgba(244, 63, 94, 0.36);
  border-radius: var(--radius-sm);
  background:
    linear-gradient(120deg, rgba(244, 63, 94, 0.14), transparent 56%),
    rgba(12, 18, 27, 0.82);
  color: #dbeafe;
}

.media-runtime-warning strong {
  color: #ffffff;
  font-weight: 950;
}

.media-runtime-warning span {
  color: #a9bdd4;
  line-height: 1.5;
}

.media-runtime-warning code {
  color: #ffffff;
}
/* Character detail hero - Option 08 cinematic bar */
.character-detail-hero {
  isolation: isolate;
  overflow: hidden;
  grid-template-columns: minmax(0, 0.96fr) minmax(260px, 0.42fr);
  align-items: stretch;
  gap: clamp(24px, 4vw, 58px);
  min-height: clamp(360px, 36vw, 470px);
  padding: clamp(32px, 5vw, 58px);
  border-color: color-mix(in srgb, var(--game-accent) 30%, rgba(148, 163, 184, 0.22));
  border-radius: 14px;
  background:
    radial-gradient(circle at 84% 30%, rgba(244, 63, 94, 0.2), transparent 34%),
    radial-gradient(circle at 16% 22%, color-mix(in srgb, var(--game-accent) 18%, transparent), transparent 36%),
    linear-gradient(118deg, rgba(10, 16, 23, 0.98), rgba(11, 17, 24, 0.93) 52%, rgba(35, 20, 29, 0.9));
  box-shadow: 0 24px 70px rgba(0, 0, 0, 0.34), inset 0 1px 0 rgba(255, 255, 255, 0.035);
}

.character-detail-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  background:
    linear-gradient(90deg, rgba(255, 255, 255, 0.035) 1px, transparent 1px),
    linear-gradient(180deg, rgba(255, 255, 255, 0.028) 1px, transparent 1px);
  background-size: 28px 28px;
  opacity: 0.08;
  pointer-events: none;
}

.character-detail-hero::after {
  content: "";
  position: absolute;
  right: -12%;
  bottom: -36%;
  z-index: 0;
  width: min(540px, 46vw);
  aspect-ratio: 1;
  border-radius: 999px;
  background: radial-gradient(circle, rgba(244, 63, 94, 0.18), transparent 68%);
  pointer-events: none;
}

.character-detail-hero .detail-hero-copy {
  order: 1;
  justify-content: center;
  max-width: 840px;
  padding-block: 8px;
}

.character-detail-hero .detail-hero-copy .card-meta {
  margin-bottom: 18px;
}

.character-detail-hero .detail-hero-copy h1 {
  margin: 0;
  font-size: clamp(44px, 6.2vw, 78px);
  line-height: 0.95;
  letter-spacing: 0;
}

.character-detail-hero .detail-hero-copy p {
  max-width: 780px;
  margin-top: 22px;
  color: #d7e4ef;
  font-size: clamp(16px, 1.35vw, 20px);
  line-height: 1.65;
}

.character-detail-hero .detail-avatar-wrap {
  position: relative;
  order: 2;
  display: flex;
  align-items: flex-end;
  justify-content: flex-end;
  min-height: 0;
}

.character-detail-hero .detail-avatar-wrap::before {
  content: "";
  position: absolute;
  inset: 16px 0 18px -54px;
  border: 1px solid rgba(148, 163, 184, 0.14);
  border-radius: 28px;
  background:
    radial-gradient(circle at 52% 24%, color-mix(in srgb, var(--game-accent) 20%, transparent), transparent 30%),
    linear-gradient(145deg, rgba(8, 18, 25, 0.48), rgba(31, 17, 25, 0.5));
  opacity: 0.9;
}

.character-detail-hero .detail-avatar {
  width: min(380px, 100%);
  height: 100%;
  max-height: 390px;
  min-height: 0;
  margin: 0;
  aspect-ratio: 4 / 5;
  border: 0;
  border-radius: 0;
  background: transparent !important;
  box-shadow: none;
  overflow: visible;
}

.character-detail-hero .detail-avatar::after {
  inset: auto -16px -10px -16px;
  height: 42%;
  border-radius: 0 0 28px 28px;
  background: linear-gradient(180deg, transparent, rgba(6, 9, 13, 0.88));
  opacity: 0.94;
}

.character-detail-hero .detail-avatar img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center bottom;
  transform: scale(1.04);
  filter: drop-shadow(0 26px 28px rgba(0, 0, 0, 0.48));
}

.character-detail-hero .detail-avatar span {
  position: relative;
  z-index: 1;
}

.character-detail-hero .detail-quick-info {
  max-width: 760px;
  gap: 12px;
  margin-top: 30px;
}

.character-detail-hero .detail-quick-info span {
  min-height: 72px;
  padding: 14px 16px;
  border-color: rgba(148, 163, 184, 0.22);
  border-radius: 12px;
  background: linear-gradient(180deg, rgba(17, 27, 38, 0.84), rgba(9, 14, 20, 0.74));
}

.character-detail-hero .detail-quick-info strong {
  color: #9bdcff;
  font-size: 11px;
  letter-spacing: 0;
  text-transform: uppercase;
}

@media (max-width: 900px) {
  .character-detail-hero {
    grid-template-columns: 1fr;
    gap: 24px;
    min-height: 0;
  }

  .character-detail-hero .detail-avatar-wrap {
    order: 1;
    justify-content: center;
    min-height: 260px;
  }

  .character-detail-hero .detail-hero-copy {
    order: 2;
    max-width: none;
  }

  .character-detail-hero .detail-avatar-wrap::before {
    inset: 0 8% 8px;
  }

  .character-detail-hero .detail-avatar {
    width: min(280px, 72vw);
    max-height: 300px;
  }

  .character-detail-hero .detail-quick-info {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 560px) {
  .character-detail-hero {
    padding: 24px;
  }

  .character-detail-hero .detail-hero-copy h1 {
    font-size: clamp(38px, 14vw, 58px);
  }

  .character-detail-hero .detail-hero-copy p {
    font-size: 15px;
  }
}
/* Character detail hero compact refinement */
.character-detail-hero {
  grid-template-columns: minmax(0, 0.92fr) minmax(230px, 0.34fr);
  gap: clamp(18px, 3vw, 42px);
  min-height: clamp(300px, 30vw, 380px);
  padding: clamp(24px, 3.6vw, 40px);
  margin-top: clamp(18px, 3vw, 34px);
  margin-bottom: 12px;
}

.character-detail-hero .detail-hero-copy {
  max-width: 760px;
  padding-block: 0;
}

.character-detail-hero .detail-hero-copy .card-meta {
  margin-bottom: 14px;
}

.character-detail-hero .detail-hero-copy h1 {
  font-size: clamp(42px, 5.1vw, 66px);
  line-height: 0.98;
}

.character-detail-hero .detail-hero-copy p {
  max-width: 720px;
  margin-top: 18px;
  font-size: clamp(15px, 1.12vw, 18px);
  line-height: 1.58;
}

.character-detail-hero .detail-avatar-wrap {
  align-items: flex-end;
  min-height: 250px;
  padding-top: 0;
}

.character-detail-hero .detail-avatar-wrap::before {
  content: none;
  display: none;
}

.character-detail-hero .detail-avatar {
  width: min(330px, 100%);
  height: auto;
  max-height: 315px;
  aspect-ratio: 1 / 1;
  transform: translateY(18px);
}

.character-detail-hero .detail-avatar::after {
  z-index: 0;
  inset: auto 12% -4px 12%;
  height: 28px;
  border-radius: 999px;
  background: radial-gradient(ellipse at center, rgba(0, 0, 0, 0.42), transparent 70%);
  filter: blur(8px);
  opacity: 0.72;
}

.character-detail-hero .detail-avatar img {
  position: relative;
  z-index: 1;
  object-fit: contain;
  object-position: center bottom;
  transform: translateY(10px) scale(1.08);
  filter: drop-shadow(0 18px 22px rgba(0, 0, 0, 0.44));
}

.character-detail-hero .detail-quick-info {
  max-width: 700px;
  gap: 10px;
  margin-top: 24px;
}

.character-detail-hero .detail-quick-info span {
  min-height: 62px;
  padding: 11px 14px;
  border-radius: 10px;
}

@media (max-width: 900px) {
  .character-detail-hero {
    min-height: 0;
    padding: 24px;
  }

  .character-detail-hero .detail-avatar-wrap {
    min-height: 230px;
  }

  .character-detail-hero .detail-avatar {
    width: min(260px, 70vw);
    max-height: 270px;
    transform: translateY(8px);
  }
}
/* Character detail hero left portrait layout */
.character-detail-hero {
  grid-template-columns: minmax(210px, 0.34fr) minmax(0, 0.96fr);
}

.character-detail-hero .detail-avatar-wrap {
  order: 1;
  justify-content: flex-start;
}

.character-detail-hero .detail-hero-copy {
  order: 2;
}

.character-detail-hero .detail-avatar {
  transform: translateY(18px);
}

.character-detail-hero .detail-avatar img {
  transform: translateY(10px) scale(1.08);
}

@media (max-width: 900px) {
  .character-detail-hero {
    grid-template-columns: 1fr;
  }

  .character-detail-hero .detail-avatar-wrap {
    order: 1;
    justify-content: center;
  }

  .character-detail-hero .detail-hero-copy {
    order: 2;
  }
}
/* Character detail hero flush-left portrait */
.character-detail-hero {
  padding-left: 0;
}

.character-detail-hero .detail-avatar-wrap {
  margin-left: 0;
  padding-left: 0;
  overflow: visible;
}

.character-detail-hero .detail-avatar {
  width: min(350px, 100%);
  transform: translateY(18px);
}

.character-detail-hero .detail-avatar img {
  transform: translate(-34px, 10px) scale(1.1);
}

.character-detail-hero .detail-avatar::after {
  transform: translateX(-28px);
}

@media (max-width: 900px) {
  .character-detail-hero {
    padding-left: 24px;
  }

  .character-detail-hero .detail-avatar img {
    transform: translateY(8px) scale(1.06);
  }

  .character-detail-hero .detail-avatar::after {
    transform: none;
  }
}
/* Character info dossier wide copy refinement */
@media (min-width: 901px) {
  .info-dossier-identity.has-dossier-raw-image {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(300px, 34%);
    align-items: end;
    gap: clamp(24px, 3.5vw, 56px);
    min-height: 300px;
  }

  .info-dossier-identity.has-dossier-raw-image .info-dossier-copy {
    max-width: none;
    width: 100%;
    padding-right: 0;
  }

  .info-dossier-identity.has-dossier-raw-image .info-dossier-copy p {
    max-width: 780px;
    column-count: 2;
    column-gap: clamp(24px, 3vw, 38px);
    line-height: 1.62;
  }

  .info-dossier-identity.has-dossier-raw-image .info-dossier-tags {
    max-width: 780px;
  }

  .info-dossier-identity.has-dossier-raw-image .info-dossier-raw-figure {
    position: relative;
    inset: auto;
    justify-self: end;
    align-self: end;
    width: min(100%, 390px);
    height: min(360px, 30vw);
    margin: 0 0 -1px;
  }

  .info-dossier-identity.has-dossier-raw-image .info-dossier-raw-figure img {
    max-height: 100%;
    transform: translateX(2%);
  }
}

@media (max-width: 1120px) and (min-width: 901px) {
  .info-dossier-identity.has-dossier-raw-image {
    grid-template-columns: minmax(0, 1fr) minmax(250px, 30%);
  }

  .info-dossier-identity.has-dossier-raw-image .info-dossier-copy p {
    column-count: 1;
    max-width: 680px;
  }
}
/* Info dossier Option 01 center dossier */
.info-dossier-identity.info-dossier-compact,
.info-dossier-identity.info-dossier-compact.has-dossier-raw-image {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  grid-template-rows: minmax(0, 1fr) auto;
  justify-items: center;
  align-items: end;
  gap: clamp(10px, 1.4vw, 16px);
  min-height: clamp(390px, 35vw, 470px);
  padding: clamp(20px, 2.6vw, 30px);
  overflow: hidden;
  text-align: center;
  border-color: rgba(148, 163, 184, 0.22);
  background:
    linear-gradient(180deg, rgba(10, 15, 23, 0.98), rgba(7, 11, 17, 0.98));
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.055),
    0 18px 42px rgba(0, 0, 0, 0.26);
}

.info-dossier-identity.info-dossier-compact::before,
.info-dossier-identity.info-dossier-compact.has-dossier-raw-image::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  border-radius: inherit;
  background:
    radial-gradient(circle at 50% 24%, rgba(34, 211, 238, 0.16), transparent 36%),
    radial-gradient(circle at 50% 78%, rgba(244, 63, 94, 0.12), transparent 42%),
    linear-gradient(90deg, rgba(34, 211, 238, 0.07), transparent 28%, transparent 72%, rgba(244, 63, 94, 0.075));
  opacity: 0.82;
  pointer-events: none;
}

.info-dossier-identity.info-dossier-compact::after,
.info-dossier-identity.info-dossier-compact.has-dossier-raw-image::after {
  content: "";
  position: absolute;
  inset: auto 0 0;
  z-index: 1;
  height: 38%;
  background: linear-gradient(180deg, transparent, rgba(3, 6, 10, 0.72));
  pointer-events: none;
}

.info-dossier-identity.info-dossier-compact .info-dossier-raw-figure,
.info-dossier-identity.info-dossier-compact.has-dossier-raw-image .info-dossier-raw-figure {
  position: relative;
  inset: auto;
  z-index: 2;
  display: grid;
  place-items: end center;
  justify-self: center;
  align-self: end;
  width: min(560px, 86%);
  height: clamp(250px, 27vw, 320px);
  margin: 0 auto -2px;
  overflow: visible;
  background: transparent;
  border: 0;
  box-shadow: none;
  pointer-events: none;
}

.info-dossier-identity.info-dossier-compact .info-dossier-raw-figure::before,
.info-dossier-identity.info-dossier-compact .info-dossier-raw-figure::after {
  content: "";
  position: absolute;
  left: 22%;
  right: 22%;
  bottom: -3px;
  height: 22px;
  border-radius: 999px;
  background: radial-gradient(ellipse at center, rgba(0, 0, 0, 0.42), transparent 72%);
  filter: blur(8px);
  opacity: 0.58;
}

.info-dossier-identity.info-dossier-compact .info-dossier-raw-figure img,
.info-dossier-identity.info-dossier-compact.has-dossier-raw-image .info-dossier-raw-figure img {
  position: relative;
  z-index: 1;
  display: block;
  width: auto;
  height: 100%;
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
  object-position: center bottom;
  transform: translateY(4px);
  filter: drop-shadow(0 18px 24px rgba(0, 0, 0, 0.52));
  background: transparent;
}

.info-dossier-identity.info-dossier-compact .info-dossier-raw-figure figcaption {
  display: none;
}

.info-dossier-identity.info-dossier-compact .info-dossier-copy,
.info-dossier-identity.info-dossier-compact.has-dossier-raw-image .info-dossier-copy {
  position: relative;
  z-index: 3;
  display: grid;
  justify-items: center;
  gap: 12px;
  width: min(760px, 100%);
  max-width: min(760px, 100%);
  padding-right: 0;
  margin: 0 auto;
}

.info-dossier-identity.info-dossier-compact .info-dossier-copy h2 {
  margin: 0;
  color: #ffffff;
  font-size: clamp(34px, 4vw, 52px);
  line-height: 1;
  letter-spacing: 0;
  text-align: center;
}

.info-dossier-identity.info-dossier-compact .info-dossier-copy p,
.info-dossier-identity.info-dossier-compact .detail-kicker {
  display: none;
}

.info-dossier-identity.info-dossier-compact .info-dossier-tags,
.info-dossier-identity.info-dossier-compact.has-dossier-raw-image .info-dossier-tags {
  justify-content: center;
  max-width: min(100%, 560px);
}

.info-dossier-identity.info-dossier-compact .info-dossier-tags .badge {
  min-height: 30px;
}

@media (max-width: 900px) {
  .info-dossier-identity.info-dossier-compact,
  .info-dossier-identity.info-dossier-compact.has-dossier-raw-image {
    min-height: 0;
    padding: 22px;
  }

  .info-dossier-identity.info-dossier-compact .info-dossier-raw-figure,
  .info-dossier-identity.info-dossier-compact.has-dossier-raw-image .info-dossier-raw-figure {
    width: min(100%, 420px);
    height: 286px;
    margin-bottom: -2px;
  }
}

@media (max-width: 560px) {
  .info-dossier-identity.info-dossier-compact .info-dossier-raw-figure,
  .info-dossier-identity.info-dossier-compact.has-dossier-raw-image .info-dossier-raw-figure {
    height: 238px;
  }

  .info-dossier-identity.info-dossier-compact .info-dossier-copy h2 {
    font-size: clamp(30px, 11vw, 42px);
  }
}

/* Info dossier Option 10 badge dock */
.info-dossier-identity.info-dossier-compact .info-dossier-copy,
.info-dossier-identity.info-dossier-compact.has-dossier-raw-image .info-dossier-copy {
  gap: 14px;
  padding: 0 clamp(10px, 2vw, 20px);
}

.info-dossier-identity.info-dossier-compact .info-dossier-copy h2 {
  color: #ffffff;
  font-size: clamp(36px, 4.3vw, 58px);
  line-height: 0.98;
  letter-spacing: 0;
  text-shadow:
    2px 2px 0 rgba(0, 0, 0, 0.84),
    0 14px 32px rgba(0, 0, 0, 0.55),
    0 0 26px rgba(34, 211, 238, 0.08);
}

.info-dossier-identity.info-dossier-compact .info-dossier-tags,
.info-dossier-identity.info-dossier-compact.has-dossier-raw-image .info-dossier-tags {
  position: relative;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  width: auto;
  max-width: min(100%, 620px);
  min-height: 42px;
  padding: 6px 10px;
  border: 1px solid rgba(91, 115, 145, 0.78);
  border-radius: 999px;
  background:
    linear-gradient(180deg, rgba(20, 31, 45, 0.96), rgba(10, 16, 24, 0.96));
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.08),
    0 12px 26px rgba(0, 0, 0, 0.28);
}

.info-dossier-identity.info-dossier-compact .info-dossier-tags::before {
  content: "";
  position: absolute;
  inset: -1px;
  border-radius: inherit;
  background: linear-gradient(90deg, rgba(34, 211, 238, 0.18), transparent 34%, transparent 66%, rgba(244, 63, 94, 0.18));
  opacity: 0.55;
  pointer-events: none;
  z-index: -1;
}

.info-dossier-identity.info-dossier-compact .info-dossier-tags .badge {
  min-height: 28px;
  border-radius: 8px;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.22);
}

.info-dossier-identity.info-dossier-compact .info-dossier-tags .badge:not(.tier-badge) {
  background: rgba(26, 36, 48, 0.94);
  border-color: rgba(130, 154, 184, 0.38);
  color: #f7fbff;
}

@media (max-width: 560px) {
  .info-dossier-identity.info-dossier-compact .info-dossier-tags,
  .info-dossier-identity.info-dossier-compact.has-dossier-raw-image .info-dossier-tags {
    border-radius: 16px;
    padding: 8px;
  }
}

/* Collection detail hero match character detail hero */
.collection-detail-hero {
  isolation: isolate;
  overflow: hidden;
  grid-template-columns: minmax(210px, 0.34fr) minmax(0, 0.96fr);
  align-items: stretch;
  gap: clamp(18px, 3vw, 42px);
  min-height: clamp(300px, 30vw, 380px);
  padding: clamp(24px, 3.6vw, 40px) clamp(24px, 3.6vw, 40px) clamp(24px, 3.6vw, 40px) 0;
  margin-top: clamp(18px, 3vw, 34px);
  margin-bottom: 12px;
  border-color: color-mix(in srgb, var(--game-accent) 30%, rgba(148, 163, 184, 0.22));
  border-radius: 14px;
  background:
    radial-gradient(circle at 84% 30%, rgba(244, 63, 94, 0.2), transparent 34%),
    radial-gradient(circle at 16% 22%, color-mix(in srgb, var(--game-accent) 18%, transparent), transparent 36%),
    linear-gradient(118deg, rgba(10, 16, 23, 0.98), rgba(11, 17, 24, 0.93) 52%, rgba(35, 20, 29, 0.9));
  box-shadow: 0 24px 70px rgba(0, 0, 0, 0.34), inset 0 1px 0 rgba(255, 255, 255, 0.035);
}

.collection-detail-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  background:
    linear-gradient(90deg, rgba(255, 255, 255, 0.035) 1px, transparent 1px),
    linear-gradient(180deg, rgba(255, 255, 255, 0.028) 1px, transparent 1px);
  background-size: 28px 28px;
  opacity: 0.08;
  pointer-events: none;
}

.collection-detail-hero::after {
  content: "";
  position: absolute;
  right: -12%;
  bottom: -36%;
  z-index: 0;
  width: min(540px, 46vw);
  aspect-ratio: 1;
  border-radius: 999px;
  background: radial-gradient(circle, rgba(244, 63, 94, 0.18), transparent 68%);
  pointer-events: none;
}

.collection-detail-hero .detail-avatar-wrap {
  position: relative;
  order: 1;
  z-index: 1;
  display: flex;
  align-items: flex-end;
  justify-content: flex-start;
  min-height: 250px;
  min-width: 0;
  padding: 0;
  margin-left: 0;
  overflow: visible;
}

.collection-detail-hero .detail-avatar-wrap::before {
  content: none;
  display: none;
}

.collection-detail-hero .detail-avatar {
  width: min(350px, 100%);
  height: auto;
  max-height: 315px;
  min-height: 0;
  margin: 0;
  aspect-ratio: 1 / 1;
  border: 0;
  border-radius: 0;
  background: transparent !important;
  box-shadow: none;
  overflow: visible;
  transform: translateY(18px);
}

.collection-detail-hero .detail-avatar::after {
  z-index: 0;
  inset: auto 12% -4px 12%;
  height: 28px;
  border-radius: 999px;
  background: radial-gradient(ellipse at center, rgba(0, 0, 0, 0.42), transparent 70%);
  filter: blur(8px);
  opacity: 0.72;
  transform: translateX(-28px);
}

.collection-detail-hero .detail-avatar img {
  position: relative;
  z-index: 1;
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center bottom;
  transform: translate(-34px, 10px) scale(1.1);
  filter: drop-shadow(0 18px 22px rgba(0, 0, 0, 0.44));
}

.collection-detail-hero .detail-avatar span {
  position: relative;
  z-index: 1;
}

.collection-detail-hero .detail-hero-copy {
  order: 2;
  z-index: 1;
  justify-content: center;
  max-width: 760px;
  padding-block: 0;
}

.collection-detail-hero .detail-hero-copy .card-meta {
  margin-bottom: 14px;
}

.collection-detail-hero .detail-hero-copy h1 {
  margin: 0;
  color: #ffffff;
  font-size: clamp(42px, 5.1vw, 66px);
  line-height: 0.98;
  letter-spacing: 0;
  text-shadow: 2px 2px 0 rgba(0, 0, 0, 0.76);
}

.collection-detail-hero .detail-hero-copy p {
  max-width: 720px;
  margin-top: 18px;
  color: #d7e4ef;
  font-size: clamp(15px, 1.12vw, 18px);
  line-height: 1.58;
}

.collection-detail-hero .detail-quick-info {
  max-width: 700px;
  gap: 10px;
  margin-top: 24px;
}

.collection-detail-hero .detail-quick-info span {
  min-height: 62px;
  padding: 11px 14px;
  border-color: rgba(148, 163, 184, 0.22);
  border-radius: 10px;
  background: linear-gradient(180deg, rgba(17, 27, 38, 0.84), rgba(9, 14, 20, 0.74));
}

.collection-detail-hero .detail-quick-info strong {
  color: #9bdcff;
  font-size: 11px;
  letter-spacing: 0;
  text-transform: uppercase;
}

@media (max-width: 900px) {
  .collection-detail-hero {
    grid-template-columns: 1fr;
    gap: 24px;
    min-height: 0;
    padding: 24px;
  }

  .collection-detail-hero .detail-avatar-wrap {
    order: 1;
    justify-content: center;
    min-height: 230px;
  }

  .collection-detail-hero .detail-hero-copy {
    order: 2;
    max-width: none;
  }

  .collection-detail-hero .detail-avatar {
    width: min(260px, 70vw);
    max-height: 270px;
    transform: translateY(8px);
  }

  .collection-detail-hero .detail-avatar img {
    transform: translateY(8px) scale(1.06);
  }

  .collection-detail-hero .detail-avatar::after {
    transform: none;
  }

  .collection-detail-hero .detail-quick-info {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 560px) {
  .collection-detail-hero .detail-hero-copy h1 {
    font-size: clamp(38px, 14vw, 58px);
  }

  .collection-detail-hero .detail-hero-copy p {
    font-size: 15px;
  }
}

/* Blog category directory */
.blog-category-directory {
  display: grid;
  gap: clamp(18px, 3vw, 28px);
}

.blog-category-directory-hero,
.blog-category-chip-panel {
  border: 1px solid rgba(148, 163, 184, 0.2);
  border-radius: var(--radius);
  background:
    radial-gradient(circle at 8% 0%, rgba(244, 63, 94, 0.16), transparent 28rem),
    linear-gradient(135deg, rgba(94, 243, 255, 0.055), transparent 48%),
    rgba(10, 15, 22, 0.9);
  box-shadow: 0 22px 56px rgba(0, 0, 0, 0.24), inset 0 1px 0 rgba(255, 255, 255, 0.04);
}

.blog-category-directory-hero {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(260px, 0.38fr);
  gap: 18px;
  align-items: end;
  padding: clamp(24px, 4vw, 42px);
}

.blog-category-directory-hero h1 {
  margin: 18px 0 12px;
  color: #ffffff;
  font-size: clamp(44px, 7vw, 82px);
  line-height: 0.96;
  font-weight: 950;
  letter-spacing: 0;
  text-transform: uppercase;
  text-shadow: 0 4px 0 rgba(0, 0, 0, 0.8);
}

.blog-category-directory-hero h1 span {
  color: #f43f5e;
}

.blog-category-directory-hero p {
  max-width: 760px;
  margin: 0;
  color: #c8d8e8;
  font-size: clamp(16px, 2vw, 20px);
  line-height: 1.6;
}

.blog-category-directory-stats {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}

.blog-category-directory-stats span {
  display: grid;
  gap: 4px;
  min-height: 84px;
  padding: 14px;
  border: 1px solid rgba(180, 205, 220, 0.15);
  border-radius: var(--radius-sm);
  background: rgba(8, 13, 19, 0.7);
}

.blog-category-directory-stats strong {
  color: #ffffff;
  font-size: 28px;
  line-height: 1;
}

.blog-category-directory-stats small {
  color: var(--muted);
  font-size: 11px;
  font-weight: 900;
  text-transform: uppercase;
}

.blog-category-chip-panel {
  padding: clamp(16px, 2.5vw, 24px);
}

.blog-category-chip-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  margin-bottom: 16px;
}

.blog-category-chip-head span {
  color: #5ef3ff;
  font-size: 13px;
  font-weight: 950;
  letter-spacing: 1.6px;
  text-transform: uppercase;
}

.blog-category-chip-head a {
  color: #ffffff;
  font-size: 12px;
  font-weight: 950;
  text-transform: uppercase;
}

.blog-category-chip-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
  gap: 12px;
}

.blog-category-chip {
  --category-accent: #f43f5e;
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto auto;
  gap: 12px;
  align-items: center;
  min-height: 86px;
  padding: 14px;
  border: 1px solid color-mix(in srgb, var(--category-accent) 44%, rgba(180, 205, 220, 0.18));
  border-radius: var(--radius-sm);
  color: #ffffff;
  background:
    linear-gradient(135deg, color-mix(in srgb, var(--category-accent) 17%, transparent), transparent 50%),
    linear-gradient(180deg, rgba(255, 255, 255, 0.045), rgba(255, 255, 255, 0.012)),
    rgba(10, 16, 24, 0.92);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.055);
  overflow: hidden;
  text-decoration: none;
  transition: transform 160ms ease, border-color 160ms ease, background 160ms ease, box-shadow 160ms ease;
}

.blog-category-chip::before {
  content: "";
  position: absolute;
  inset: 0 auto 0 0;
  width: 4px;
  background: var(--category-accent);
  box-shadow: 0 0 22px color-mix(in srgb, var(--category-accent) 55%, transparent);
}

.blog-category-chip:hover,
.blog-category-chip:focus-visible {
  transform: translateY(-2px);
  border-color: color-mix(in srgb, var(--category-accent) 78%, rgba(255, 255, 255, 0.28));
  background:
    linear-gradient(135deg, color-mix(in srgb, var(--category-accent) 24%, transparent), transparent 52%),
    rgba(13, 20, 30, 0.98);
  box-shadow: 0 18px 42px rgba(0, 0, 0, 0.26), 0 0 28px color-mix(in srgb, var(--category-accent) 12%, transparent);
  outline: none;
}

.blog-category-chip-main {
  display: grid;
  gap: 5px;
  min-width: 0;
}

.blog-category-chip-main strong {
  color: #ffffff;
  font-size: 18px;
  font-weight: 950;
  line-height: 1.08;
  text-shadow: 0 2px 0 rgba(0, 0, 0, 0.75);
}

.blog-category-chip-main small {
  display: -webkit-box;
  overflow: hidden;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  color: #aebed1;
  font-size: 12px;
  font-weight: 650;
  line-height: 1.35;
}

.blog-category-chip-count {
  display: grid;
  place-items: center;
  min-width: 58px;
  min-height: 52px;
  padding: 7px 10px;
  border: 1px solid color-mix(in srgb, var(--category-accent) 55%, rgba(180, 205, 220, 0.2));
  border-radius: 12px;
  background: rgba(5, 10, 16, 0.66);
}

.blog-category-chip-count b {
  color: #5ef3ff;
  font-size: 22px;
  font-weight: 950;
  line-height: 1;
}

.blog-category-chip-count small {
  color: #dbeafe;
  font-size: 9px;
  font-weight: 900;
  text-transform: uppercase;
}

.blog-category-chip-open {
  position: relative;
  display: grid;
  place-items: center;
  flex: 0 0 28px;
  width: 28px;
  height: 28px;
  border: 1px solid color-mix(in srgb, var(--category-accent) 42%, rgba(255, 255, 255, 0.16));
  border-radius: 999px;
  color: #ffffff;
  background:
    radial-gradient(circle at 35% 28%, color-mix(in srgb, var(--category-accent) 36%, rgba(255, 255, 255, 0.1)), transparent 58%),
    color-mix(in srgb, var(--category-accent) 22%, rgba(15, 23, 42, 0.92));
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.12), 0 6px 18px rgba(0, 0, 0, 0.24);
  font-size: 0;
  line-height: 0;
}

.blog-category-chip-open::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 7px;
  height: 7px;
  border-top: 2px solid currentColor;
  border-right: 2px solid currentColor;
  transform: translate(-62%, -50%) rotate(45deg);
  transform-origin: 50% 50%;
}

.blog-category-chip.is-empty {
  opacity: 0.72;
  border-style: dashed;
  filter: saturate(0.7);
}

.blog-category-chip.is-empty .blog-category-chip-count b {
  color: #94a3b8;
}
/* Blog category pages */
.blog-category-hero {
  --category-accent: #f43f5e;
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(320px, 0.34fr);
  gap: clamp(18px, 3vw, 32px);
  align-items: center;
  margin-block: clamp(34px, 5vw, 58px) clamp(26px, 3.2vw, 40px);
  padding: clamp(28px, 3.8vw, 42px);
  border: 1px solid color-mix(in srgb, var(--category-accent) 38%, rgba(148, 163, 184, 0.24));
  border-radius: var(--radius);
  background:
    radial-gradient(circle at 8% 0%, color-mix(in srgb, var(--category-accent) 18%, transparent), transparent 28rem),
    linear-gradient(120deg, rgba(244, 63, 94, 0.08), rgba(94, 243, 255, 0.035) 46%, transparent 72%),
    rgba(8, 13, 20, 0.94);
  box-shadow: 0 18px 48px rgba(0, 0, 0, 0.22), inset 0 1px 0 rgba(255, 255, 255, 0.045);
  overflow: hidden;
}

.blog-category-hero::after {
  content: "";
  position: absolute;
  inset: 0 0 auto auto;
  width: min(38%, 420px);
  height: 100%;
  background:
    linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.028)),
    radial-gradient(circle at 78% 28%, color-mix(in srgb, var(--category-accent) 16%, transparent), transparent 58%);
  pointer-events: none;
}

.blog-category-hero-copy,
.blog-category-summary {
  position: relative;
  z-index: 1;
}

.blog-category-hero-copy {
  display: grid;
  gap: 14px;
  align-content: center;
  min-width: 0;
}

.blog-category-kicker {
  display: inline-flex;
  align-items: center;
  width: fit-content;
  min-height: 27px;
  padding: 0 10px;
  border: 1px solid color-mix(in srgb, var(--category-accent) 66%, rgba(180, 205, 220, 0.24));
  border-radius: 999px;
  color: #5ef3ff;
  background: rgba(5, 12, 18, 0.72);
  font-size: 12px;
  font-weight: 950;
  text-transform: uppercase;
}

.blog-category-hero h1 {
  margin: 0;
  color: #ffffff;
  font-size: clamp(38px, 5vw, 64px);
  line-height: 1;
  font-weight: 950;
  letter-spacing: 0;
  text-transform: uppercase;
  text-shadow: 0 4px 0 rgba(0, 0, 0, 0.82);
}

.blog-category-hero h1 span {
  color: var(--category-accent);
}

.blog-category-hero p {
  max-width: 780px;
  margin: 0;
  color: #c8d8e8;
  font-size: clamp(15px, 1.55vw, 18px);
  line-height: 1.58;
}

.blog-category-summary {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  align-self: center;
  min-width: 0;
}

.blog-category-summary span {
  display: grid;
  gap: 6px;
  min-width: 0;
  min-height: 82px;
  padding: 13px 12px;
  border: 1px solid rgba(180, 205, 220, 0.17);
  border-radius: var(--radius-sm);
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.04), rgba(255, 255, 255, 0.012)),
    rgba(10, 16, 24, 0.76);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.045);
  overflow: hidden;
}

.blog-category-summary strong {
  min-width: 0;
  max-width: 100%;
  color: #ffffff;
  font-size: clamp(16px, 1.35vw, 21px);
  line-height: 1.08;
  overflow-wrap: anywhere;
  word-break: normal;
  white-space: normal;
}

.blog-category-summary small {
  min-width: 0;
  color: #b7c7da;
  font-size: 10px;
  font-weight: 900;
  line-height: 1.2;
  overflow-wrap: anywhere;
  text-transform: uppercase;
}

@media (max-width: 980px) {
  .blog-category-hero {
    grid-template-columns: 1fr;
  }

  .blog-category-summary {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 640px) {
  .blog-category-hero {
    margin-block: 24px 28px;
    padding: 22px;
  }

  .blog-category-summary {
    grid-template-columns: 1fr;
  }
}
.blog-category-toolbar {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 14px;
  align-items: end;
  margin-bottom: 18px;
  padding: 14px;
  border: 1px solid rgba(180, 205, 220, 0.16);
  border-radius: var(--radius-sm);
  background: rgba(11, 17, 25, 0.78);
}

.blog-category-toolbar .blog-result-status {
  margin: 0;
}

.blog-category-sort {
  display: flex;
  gap: 10px;
  align-items: end;
}

.blog-category-sort label {
  display: grid;
  gap: 6px;
  min-width: 210px;
  color: var(--muted);
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
}

.blog-category-grid .blog-category-card-wrap {
  position: relative;
  min-width: 0;
  height: 100%;
}

.blog-category-card-wrap .article-card {
  height: 100%;
}

.blog-category-rank {
  position: absolute;
  top: 12px;
  left: 12px;
  z-index: 8;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 42px;
  min-height: 38px;
  padding: 0 10px;
  border: 1px solid rgba(255, 80, 108, 0.88);
  border-radius: 10px;
  color: #ffffff;
  background:
    linear-gradient(135deg, rgba(244, 63, 94, 0.96), rgba(80, 16, 28, 0.9)),
    rgba(244, 63, 94, 0.9);
  box-shadow: 0 0 22px rgba(244, 63, 94, 0.24), inset 0 1px 0 rgba(255, 255, 255, 0.18);
  font-size: 18px;
  font-weight: 950;
  line-height: 1;
  text-shadow: 0 2px 0 rgba(0, 0, 0, 0.72);
}

.blog-category-empty {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  min-height: 120px;
  padding: 24px;
  border: 1px dashed rgba(180, 205, 220, 0.2);
  border-radius: var(--radius);
  color: #bcd0e4;
  background:
    linear-gradient(135deg, rgba(244, 63, 94, 0.08), transparent 45%),
    rgba(10, 15, 22, 0.82);
}

.blog-category-empty[hidden] {
  display: none;
}

.blog-category-empty span {
  font-weight: 850;
}

.blog-category-admin-panel {
  border-color: rgba(244, 63, 94, 0.24);
  background:
    linear-gradient(135deg, rgba(244, 63, 94, 0.08), transparent 42%),
    rgba(12, 18, 27, 0.82);
}

.blog-category-admin-form {
  display: grid;
  gap: 14px;
}

.blog-category-admin-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.blog-category-admin-row {
  --category-accent: #f43f5e;
  display: grid;
  grid-template-columns: minmax(110px, 0.34fr) repeat(2, minmax(0, 1fr));
  gap: 12px;
  align-items: start;
  padding: 14px;
  border: 1px solid color-mix(in srgb, var(--category-accent) 42%, rgba(180, 205, 220, 0.18));
  border-radius: var(--radius-sm);
  background:
    linear-gradient(135deg, color-mix(in srgb, var(--category-accent) 13%, transparent), transparent 52%),
    rgba(9, 14, 21, 0.86);
}

.blog-category-admin-summary {
  display: grid;
  gap: 4px;
  min-height: 100%;
  padding: 12px;
  border-radius: 10px;
  background: rgba(5, 9, 14, 0.66);
}

.blog-category-admin-summary span {
  color: #5ef3ff;
  font-size: 11px;
  font-weight: 950;
}

.blog-category-admin-summary strong {
  color: #ffffff;
  font-size: 28px;
  line-height: 1;
}

.blog-category-admin-row label {
  display: grid;
  gap: 6px;
  color: var(--muted);
  font-size: 12px;
  font-weight: 900;
}

.blog-category-admin-row textarea.input {
  min-height: 70px;
  resize: vertical;
}

.blog-category-public-toggle {
  align-self: end;
  min-height: 44px;
}
/* Blog category pagination */
.blog-pagination {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 8px;
  margin: 28px 0 0;
  padding-top: 6px;
}

.blog-pagination a,
.blog-pagination span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 42px;
  min-height: 42px;
  padding: 0 13px;
  border: 1px solid rgba(148, 163, 184, 0.22);
  border-radius: 8px;
  color: #dbeafe;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.055), rgba(255, 255, 255, 0.015)),
    rgba(15, 23, 42, 0.76);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.06);
  font-size: 14px;
  font-weight: 950;
  line-height: 1;
  text-decoration: none;
  text-shadow: 0 1px 0 rgba(0, 0, 0, 0.75);
  transition: border-color 160ms ease, background 160ms ease, color 160ms ease, transform 160ms ease, box-shadow 160ms ease;
}

.blog-pagination-edge {
  min-width: 86px;
}

.blog-pagination-ellipsis {
  min-width: 34px;
  color: rgba(219, 234, 254, 0.58);
  background: transparent;
  border-color: transparent;
  box-shadow: none;
}

.blog-pagination a:hover,
.blog-pagination a:focus-visible {
  border-color: rgba(244, 63, 94, 0.72);
  color: #ffffff;
  background:
    linear-gradient(135deg, rgba(244, 63, 94, 0.24), rgba(77, 243, 255, 0.08)),
    rgba(15, 23, 42, 0.9);
  box-shadow: 0 14px 34px rgba(244, 63, 94, 0.15), inset 0 1px 0 rgba(255, 255, 255, 0.1);
  outline: none;
  transform: translateY(-1px);
}

.blog-pagination .is-current {
  border-color: rgba(255, 105, 130, 0.88);
  color: #ffffff;
  background: linear-gradient(135deg, #f43f5e, #ff6b80);
  box-shadow: 0 16px 36px rgba(244, 63, 94, 0.22), inset 0 1px 0 rgba(255, 255, 255, 0.18);
}

.blog-pagination .is-disabled {
  cursor: not-allowed;
  opacity: 0.46;
}

/* Character Brief manual editor */
.admin-character-brief-editor {
  display: grid;
  gap: 14px;
  padding: 14px;
  border: 1px solid rgba(94, 234, 212, 0.2);
  border-radius: var(--radius);
  background: linear-gradient(135deg, rgba(94, 234, 212, 0.06), rgba(244, 63, 94, 0.045));
}

.admin-brief-editor-heading {
  display: grid;
  gap: 4px;
}

.admin-brief-editor-heading strong {
  color: #ffffff;
  font-size: 15px;
}

.admin-brief-editor-heading p,
.admin-character-brief-editor small {
  color: var(--muted-2);
  line-height: 1.45;
}

.admin-brief-editor-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.admin-brief-editor-grid .full {
  grid-column: 1 / -1;
}

@media (max-width: 820px) {
  .admin-brief-editor-grid {
    grid-template-columns: 1fr;
  }
}

/* Clean Command light theme */
.theme-icon-dark,
.theme-icon-light {
  display: grid;
  place-items: center;
  width: 19px;
  height: 19px;
}

.theme-icon-light {
  display: none;
}

html.theme-light .theme-icon-dark {
  display: none;
}

html.theme-light .theme-icon-light {
  display: grid;
}

.theme-toggle-label {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

html.theme-light {
  --bg: #f4f6f8;
  --surface: #ffffff;
  --surface-2: #f8fafc;
  --surface-3: #eef2f6;
  --line: rgba(15, 23, 42, 0.12);
  --line-strong: rgba(15, 23, 42, 0.22);
  --text: #111827;
  --muted: #526171;
  --muted-2: #718096;
  --surface-card: #ffffff;
  --card-border: rgba(15, 23, 42, 0.13);
  --card-shadow: 0 14px 38px rgba(15, 23, 42, 0.08);
  --card-hover-shadow: 0 18px 42px rgba(15, 23, 42, 0.13);
  --focus-ring: 0 0 0 3px rgba(244, 63, 94, 0.18);
  --shadow: 0 20px 60px rgba(15, 23, 42, 0.12);
  color-scheme: light;
}

html.theme-light body,
html.theme-light body.site-body,
html.theme-light .admin-body,
html.theme-light .admin-login-body {
  color: var(--text);
  background: #f4f6f8;
}

html.theme-light body::before,
html.theme-light body::after {
  opacity: 0.24;
}

html.theme-light .site-header {
  color: var(--text);
  background: rgba(255, 255, 255, 0.94);
  border-bottom-color: var(--line);
  box-shadow: 0 10px 30px rgba(15, 23, 42, 0.08);
}

html.theme-light .brand,
html.theme-light .brand-text {
  color: #111827;
}

html.theme-light .site-nav > a,
html.theme-light .nav-menu > .nav-link,
html.theme-light .nav-admin-button {
  color: #526171;
}

html.theme-light .site-nav > a:hover,
html.theme-light .nav-menu > .nav-link:hover,
html.theme-light .nav-admin-button:hover,
html.theme-light .site-nav > a:focus-visible,
html.theme-light .nav-menu > .nav-link:focus-visible,
html.theme-light .nav-admin-button:focus-visible {
  color: #111827;
  border-color: rgba(15, 23, 42, 0.15);
  background: #f1f4f7;
}

html.theme-light .nav-link.is-active {
  color: #111827;
  border-color: rgba(244, 63, 94, 0.34);
  background: rgba(244, 63, 94, 0.08);
}

html.theme-light .nav-menu-panel {
  color: #111827;
  background: #ffffff;
  border-color: var(--line);
  box-shadow: var(--shadow);
}

html.theme-light .nav-menu-panel a {
  color: #334155;
}

html.theme-light .nav-menu-panel a:hover,
html.theme-light .nav-menu-panel a:focus-visible {
  color: #111827;
  background: rgba(244, 63, 94, 0.08);
}

html.theme-light .site-search input,
html.theme-light .input,
html.theme-light input.input,
html.theme-light textarea.input,
html.theme-light select.input,
html.theme-light .rich-editor-source,
html.theme-light .rich-editor-visual {
  color: #111827;
  background: #ffffff;
  border-color: rgba(15, 23, 42, 0.16);
  box-shadow: inset 0 1px 2px rgba(15, 23, 42, 0.04);
}

html.theme-light .site-search input::placeholder,
html.theme-light .input::placeholder {
  color: #8391a1;
}

html.theme-light .site-search input:focus,
html.theme-light .input:focus,
html.theme-light .rich-editor-source:focus,
html.theme-light .rich-editor-visual:focus {
  color: #111827;
  background: #ffffff;
  border-color: rgba(244, 63, 94, 0.62);
  box-shadow: var(--focus-ring);
}

html.theme-light .site-search kbd {
  color: #526171;
  background: #eef2f6;
  border-color: rgba(15, 23, 42, 0.12);
}

html.theme-light .theme-toggle,
html.theme-light .nav-toggle {
  color: #334155;
  background: #ffffff;
  border-color: rgba(15, 23, 42, 0.15);
  box-shadow: 0 4px 14px rgba(15, 23, 42, 0.06);
}

html.theme-light .theme-toggle:hover,
html.theme-light .theme-toggle:focus-visible,
html.theme-light .nav-toggle:hover,
html.theme-light .nav-toggle:focus-visible {
  color: #e11d48;
  background: #fff1f4;
  border-color: rgba(244, 63, 94, 0.42);
  box-shadow: var(--focus-ring);
}

html.theme-light .button {
  color: #1f2937;
  background: #ffffff;
  border-color: rgba(15, 23, 42, 0.16);
  box-shadow: 0 5px 16px rgba(15, 23, 42, 0.07);
}

html.theme-light .button:hover,
html.theme-light .button:focus-visible {
  color: #111827;
  border-color: rgba(244, 63, 94, 0.48);
  background: #fff7f8;
  box-shadow: var(--focus-ring);
}

html.theme-light .button-primary {
  color: #ffffff;
  border-color: #e11d48;
  background: linear-gradient(135deg, #f43f5e, #e11d48);
  box-shadow: 0 10px 24px rgba(225, 29, 72, 0.18);
}

html.theme-light .button-primary:hover,
html.theme-light .button-primary:focus-visible {
  color: #ffffff;
  background: linear-gradient(135deg, #e11d48, #be123c);
}

html.theme-light :where(
  .home-command-center,
  .home-showcase-panel,
  .home-recent-panel,
  .home-pulse-panel,
  .home-pulse-card,
  .home-database-panel,
  .home-recent-item,
  .home-spotlight-card,
  .home-spotlight-copy,
  .home-spotlight-rail,
  .home-spotlight-rail-item,
  .game-hero,
  .page-head,
  .detail-hero,
  .character-command-brief,
  .character-brief-card,
  .content-panel,
  .article-jump-card,
  .article-share-panel,
  .related-resource-card,
  .reward-code-card,
  .game-catalog-card,
  .character-guide-card,
  .blog-command-center,
  .blog-hero-copy,
  .blog-featured-story,
  .blog-briefing-panel,
  .blog-stat-strip,
  .blog-popular-section,
  .blog-category-hero,
  .blog-category-chip-panel,
  .blog-category-summary,
  .category-index-hero,
  .category-chip-panel,
  .info-dossier-card,
  .review-command-panel,
  .review-metric-card,
  .review-build-panel,
  .review-skill-panel,
  .review-skill-card,
  .review-suggested-panel,
  .collection-detail-hero,
  .collection-content-panel,
  .tier-section,
  .tier-sidebar,
  .state-card,
  .panel,
  .login-card
) {
  color: #111827;
  border-color: var(--card-border);
  background-color: #ffffff;
  box-shadow: var(--card-shadow);
}

html.theme-light :where(
  .home-command-center,
  .home-showcase-panel,
  .home-recent-panel,
  .home-pulse-panel,
  .home-spotlight-card,
  .game-hero:not(.has-hero-bg),
  .page-head,
  .detail-hero,
  .character-command-brief,
  .content-panel,
  .blog-command-center,
  .blog-hero-copy,
  .blog-featured-story,
  .blog-briefing-panel,
  .blog-stat-strip,
  .blog-popular-section,
  .blog-category-hero,
  .blog-category-chip-panel,
  .blog-category-summary,
  .category-index-hero,
  .category-chip-panel,
  .info-dossier-card,
  .review-command-panel,
  .collection-detail-hero,
  .tier-section,
  .tier-sidebar,
  .login-card
) {
  background-image:
    linear-gradient(135deg, rgba(244, 63, 94, 0.045), transparent 36%),
    linear-gradient(315deg, rgba(6, 182, 212, 0.04), transparent 34%);
}

html.theme-light :where(
  .home-command-center,
  .home-showcase-panel,
  .home-recent-panel,
  .home-pulse-panel,
  .game-hero,
  .page-head,
  .detail-hero,
  .character-command-brief,
  .content-panel,
  .blog-command-center,
  .blog-hero-copy,
  .blog-featured-story,
  .blog-briefing-panel,
  .blog-stat-strip,
  .blog-popular-section,
  .blog-category-hero,
  .blog-category-chip-panel,
  .blog-category-summary,
  .category-index-hero,
  .category-chip-panel,
  .info-dossier-card,
  .review-command-panel,
  .review-build-panel,
  .review-skill-panel,
  .review-suggested-panel,
  .collection-detail-hero,
  .collection-content-panel,
  .tier-section,
  .tier-sidebar,
  .login-card
) :where(h1, h2, h3, h4, strong) {
  color: #111827;
  text-shadow: none;
}

html.theme-light :where(
  .home-command-center,
  .home-showcase-panel,
  .home-recent-panel,
  .home-pulse-panel,
  .game-hero,
  .page-head,
  .detail-hero,
  .character-command-brief,
  .content-panel,
  .blog-command-center,
  .blog-hero-copy,
  .blog-featured-story,
  .blog-briefing-panel,
  .blog-stat-strip,
  .blog-popular-section,
  .blog-category-hero,
  .blog-category-chip-panel,
  .blog-category-summary,
  .category-index-hero,
  .category-chip-panel,
  .info-dossier-card,
  .review-command-panel,
  .review-build-panel,
  .review-skill-panel,
  .review-suggested-panel,
  .collection-detail-hero,
  .collection-content-panel,
  .tier-section,
  .tier-sidebar,
  .login-card
) :where(p, small, li) {
  color: #526171;
}

html.theme-light :where(
  .home-pulse-card,
  .home-recent-item,
  .home-spotlight-rail-item,
  .character-brief-card,
  .review-metric-card,
  .review-skill-card,
  .related-resource-card,
  .tier-row,
  .state-card
) {
  background: #f8fafc;
  border-color: rgba(15, 23, 42, 0.12);
  box-shadow: none;
}

html.theme-light .home-command-backdrop,
html.theme-light .home-showcase-panel::before,
html.theme-light .home-command-center::before {
  opacity: 0.18;
}

html.theme-light .home-game-card {
  border-color: rgba(15, 23, 42, 0.14);
  background: #ffffff;
  box-shadow: 0 8px 22px rgba(15, 23, 42, 0.08);
}

html.theme-light .home-game-card-copy {
  color: #111827;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.94), #ffffff);
}

html.theme-light .home-game-card-copy :where(strong, span) {
  color: #111827;
  text-shadow: none;
}

html.theme-light .home-game-card-copy small {
  color: #64748b;
}

html.theme-light .home-spotlight-copy {
  background: #0b1219;
}

html.theme-light .home-spotlight-copy .game-catalog-badge,
html.theme-light .home-spotlight-copy .home-spotlight-actions a,
html.theme-light .home-spotlight-copy .home-spotlight-actions a span {
  color: #e4edf3;
}

html.theme-light .home-spotlight-copy .home-spotlight-facts small {
  color: #b8c8d5;
}

html.theme-light .home-spotlight-rail {
  background: #f8fafc;
}

html.theme-light .home-spotlight-rail-item.is-active {
  border-color: rgba(244, 63, 94, 0.58);
  background: #fff1f4;
}

html.theme-light .game-tabs,
html.theme-light .detail-tabs {
  border-color: rgba(15, 23, 42, 0.12);
}

html.theme-light .game-tabs a,
html.theme-light .detail-tabs a,
html.theme-light .detail-tab {
  color: #475569;
  background: #ffffff;
  border-color: rgba(15, 23, 42, 0.14);
  box-shadow: none;
}

html.theme-light .game-tabs a:hover,
html.theme-light .detail-tabs a:hover,
html.theme-light .detail-tab:hover {
  color: #111827;
  background: #f1f4f7;
}

html.theme-light .game-tabs a.active,
html.theme-light .detail-tabs a.active,
html.theme-light .detail-tab.active {
  color: #ffffff;
  border-color: #e11d48;
  background: linear-gradient(135deg, #f43f5e, #e11d48);
  box-shadow: 0 10px 22px rgba(225, 29, 72, 0.16);
}

html.theme-light .detail-hero {
  background-color: #ffffff;
}

html.theme-light .detail-hero-copy :where(h1, p) {
  color: #111827;
  text-shadow: none;
}

html.theme-light .detail-hero .fact,
html.theme-light .detail-hero-copy .fact,
html.theme-light .game-facts > div {
  color: #111827;
  background: rgba(248, 250, 252, 0.94);
  border-color: rgba(15, 23, 42, 0.13);
}

html.theme-light .article-card,
html.theme-light .article-card-v2 {
  color: #111827;
  border-color: rgba(15, 23, 42, 0.14);
  background-color: #ffffff;
  box-shadow: var(--card-shadow);
}

html.theme-light .article-card-v2 .article-card-body,
html.theme-light .article-card:not(.overview-news) .article-card-body {
  color: #111827;
  background: #ffffff;
}

html.theme-light .article-card-v2 .article-card-body :where(h2, h3, strong) {
  color: #111827;
  text-shadow: none;
}

html.theme-light .article-card-v2 .article-card-body :where(p, small) {
  color: #526171;
}

html.theme-light .blog-briefing-list a,
html.theme-light .blog-popular-list a,
html.theme-light .blog-category-chip {
  color: #111827;
  border-color: rgba(15, 23, 42, 0.13);
  background-color: #f8fafc;
}

html.theme-light .blog-briefing-list a::after,
html.theme-light .blog-popular-list a::after {
  background: linear-gradient(90deg, rgba(255, 255, 255, 0.46), rgba(244, 63, 94, 0.12));
}

html.theme-light .blog-category-summary select {
  color: #111827;
  background: #ffffff;
  border-color: rgba(15, 23, 42, 0.16);
}

html.theme-light .blog-pagination a,
html.theme-light .blog-pagination span {
  color: #334155;
  background: #ffffff;
  border-color: rgba(15, 23, 42, 0.14);
  text-shadow: none;
  box-shadow: none;
}

html.theme-light .blog-pagination a:hover,
html.theme-light .blog-pagination a:focus-visible,
html.theme-light .blog-pagination .is-current {
  color: #ffffff;
  border-color: #e11d48;
  background: #f43f5e;
}

html.theme-light .article-detail,
html.theme-light .guide-detail {
  color: #111827;
}

html.theme-light .article-detail :where(h1, h2, h3, h4, strong),
html.theme-light .guide-detail :where(h1, h2, h3, h4, strong) {
  color: #111827;
  text-shadow: none;
}

html.theme-light .article-detail :where(p, li, small),
html.theme-light .guide-detail :where(p, li, small) {
  color: #334155;
}

html.theme-light .article-detail blockquote,
html.theme-light .guide-detail blockquote {
  color: #334155;
  background: #f8fafc;
  border-color: #f43f5e;
}

html.theme-light .site-footer {
  color: #334155;
  background:
    linear-gradient(90deg, rgba(244, 63, 94, 0.035), transparent 34%),
    #ffffff;
  border-top-color: rgba(15, 23, 42, 0.12);
}

html.theme-light .site-footer :where(strong, h2, h3, .brand-text) {
  color: #111827;
  text-shadow: none;
}

html.theme-light .site-footer :where(p, small, li) {
  color: #64748b;
}

html.theme-light .site-footer a {
  color: #475569;
}

html.theme-light .site-footer a:hover,
html.theme-light .site-footer a:focus-visible {
  color: #e11d48;
}

html.theme-light .admin-body {
  color: #111827;
  background: #f4f6f8;
}

html.theme-light .admin-sidebar {
  color: #111827;
  background: #ffffff;
  border-right-color: rgba(15, 23, 42, 0.12);
  box-shadow: 10px 0 30px rgba(15, 23, 42, 0.06);
}

html.theme-light .admin-nav a,
html.theme-light .admin-sidebar-footer a {
  color: #526171;
}

html.theme-light .admin-nav a:hover,
html.theme-light .admin-nav a.active,
html.theme-light .admin-sidebar-footer a:hover {
  color: #111827;
  background: #eef2f6;
}

html.theme-light .admin-nav a.active {
  box-shadow: inset 3px 0 0 #f43f5e;
}

html.theme-light .admin-main {
  color: #111827;
  background: #f4f6f8;
}

.admin-topbar-actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 10px;
}

html.theme-light .admin-topbar {
  border-bottom-color: rgba(15, 23, 42, 0.13);
}

html.theme-light .admin-topbar :where(h1, strong) {
  color: #111827;
  text-shadow: none;
}

html.theme-light .admin-topbar span,
html.theme-light .admin-panel p,
html.theme-light .admin-panel small,
html.theme-light .admin-form-section p,
html.theme-light .admin-form-section small {
  color: #64748b;
}

html.theme-light :where(
  .admin-panel,
  .admin-card,
  .metric-card,
  .admin-form-section,
  .admin-character-preview,
  .admin-character-nav,
  .admin-collection-preview,
  .admin-collection-nav,
  .admin-character-brief-editor,
  .media-command-center,
  .media-upload-panel,
  .media-bulk-panel,
  .media-optimization-panel,
  .media-library-board,
  .analytics-command-center,
  .analytics-panel,
  .health-command-center,
  .health-panel,
  .data-command-center,
  .rich-editor-field,
  .favicon-setting-preview
) {
  color: #111827;
  border-color: rgba(15, 23, 42, 0.13);
  background: #ffffff;
  box-shadow: var(--card-shadow);
}

html.theme-light :where(
  .admin-panel,
  .admin-card,
  .metric-card,
  .admin-form-section,
  .admin-character-preview,
  .admin-character-nav,
  .admin-collection-preview,
  .admin-collection-nav,
  .admin-character-brief-editor,
  .media-command-center,
  .media-upload-panel,
  .media-bulk-panel,
  .media-optimization-panel,
  .media-library-board,
  .analytics-command-center,
  .analytics-panel,
  .health-command-center,
  .health-panel,
  .data-command-center,
  .rich-editor-field
) :where(h1, h2, h3, h4, strong) {
  color: #111827;
  text-shadow: none;
}

html.theme-light .admin-preview-card :where(strong, p, small),
html.theme-light .admin-preview-art strong,
html.theme-light .admin-brief-editor-heading strong {
  color: #111827;
}

html.theme-light .admin-preview-art,
html.theme-light .favicon-setting-preview span {
  color: #111827;
  background: #eef2f6;
  border-color: rgba(15, 23, 42, 0.13);
}

html.theme-light .admin-character-nav a,
html.theme-light .admin-collection-nav a,
html.theme-light .admin-list a {
  color: #334155;
  background: #f8fafc;
  border-color: rgba(15, 23, 42, 0.12);
}

html.theme-light .admin-character-nav a:hover,
html.theme-light .admin-character-nav a.is-active,
html.theme-light .admin-collection-nav a:hover,
html.theme-light .admin-collection-nav a.is-active,
html.theme-light .admin-list a:hover {
  color: #111827;
  border-color: rgba(244, 63, 94, 0.45);
  background: #fff1f4;
}

html.theme-light .admin-table {
  color: #111827;
  border-color: rgba(15, 23, 42, 0.13);
  background: #ffffff;
}

html.theme-light .admin-table th,
html.theme-light .admin-table td {
  color: #334155;
  border-color: rgba(15, 23, 42, 0.1);
}

html.theme-light .admin-table th {
  color: #111827;
  background: #eef2f6;
}

html.theme-light .admin-table tbody tr:hover {
  background: #f8fafc;
}

html.theme-light .rich-editor-topbar,
html.theme-light .rich-editor-toolbar {
  color: #111827;
  background: #eef2f6;
  border-color: rgba(15, 23, 42, 0.12);
}

html.theme-light .rich-editor-topbar button,
html.theme-light .rich-editor-toolbar button,
html.theme-light .rich-editor-tabs button {
  color: #334155;
  background: #ffffff;
  border-color: rgba(15, 23, 42, 0.14);
}

html.theme-light .rich-editor-tabs button.is-active {
  color: #ffffff;
  background: #f43f5e;
  border-color: #e11d48;
}

html.theme-light .admin-login-body {
  color: #111827;
  background:
    linear-gradient(135deg, rgba(244, 63, 94, 0.055), transparent 36%),
    linear-gradient(315deg, rgba(6, 182, 212, 0.055), transparent 34%),
    #f4f6f8;
}

.admin-login-theme-toggle {
  position: fixed;
  top: 20px;
  right: 20px;
  z-index: 10;
}

html.theme-light .login-card {
  background: #ffffff;
  border-color: rgba(15, 23, 42, 0.13);
  box-shadow: 0 24px 70px rgba(15, 23, 42, 0.12);
}

html.theme-light .login-card :where(h1, strong) {
  color: #111827;
  text-shadow: none;
}

html.theme-light .flash {
  color: #334155;
  background: #f8fafc;
  border-color: rgba(15, 23, 42, 0.13);
}

@media (prefers-reduced-motion: no-preference) {
  body,
  .site-header,
  .site-footer,
  .admin-sidebar,
  .admin-main,
  .theme-toggle,
  .button,
  .input {
    transition:
      color 180ms ease,
      background-color 180ms ease,
      border-color 180ms ease,
      box-shadow 180ms ease;
  }
}

@media (max-width: 760px) {
  .admin-topbar-actions {
    width: 100%;
    justify-content: flex-start;
  }

  .admin-login-theme-toggle {
    top: 12px;
    right: 12px;
  }
}

/* Clean Command component refinements */
html.theme-light :where(
  .blog-hero-featured,
  .blog-hero-feed,
  .blog-insight-grid,
  .blog-search-panel,
  .review-command-head,
  .review-note-card,
  .review-command-metrics article,
  .suggested-collection-card
) {
  color: #111827;
  border-color: rgba(15, 23, 42, 0.13);
  background: #ffffff;
  box-shadow: var(--card-shadow);
}

html.theme-light :where(
  .blog-hero-featured,
  .blog-hero-feed,
  .blog-insight-grid,
  .blog-search-panel,
  .review-command-head,
  .review-note-card,
  .review-command-metrics article,
  .suggested-collection-card
) :where(h1, h2, h3, h4, strong) {
  color: #111827;
  text-shadow: none;
}

html.theme-light :where(
  .blog-hero-featured,
  .blog-hero-feed,
  .blog-insight-grid,
  .blog-search-panel,
  .review-command-head,
  .review-note-card,
  .review-command-metrics article,
  .suggested-collection-card
) :where(p, small, span) {
  color: #526171;
}

html.theme-light .blog-tag-tabs a {
  color: #334155;
  border-color: rgba(15, 23, 42, 0.14);
  background: #ffffff;
  text-shadow: none;
  box-shadow: none;
}

html.theme-light .blog-tag-tabs a:hover,
html.theme-light .blog-tag-tabs a:focus-visible {
  color: #111827;
  background: #f1f4f7;
  border-color: rgba(244, 63, 94, 0.42);
}

html.theme-light .blog-tag-tabs a.active {
  color: #ffffff;
  background: #f43f5e;
  border-color: #e11d48;
}

html.theme-light .blog-hero-featured .article-card-v2 {
  box-shadow: none;
}

html.theme-light .review-command-metrics article,
html.theme-light .review-note-card,
html.theme-light .suggested-collection-card {
  background: #f8fafc;
  box-shadow: none;
}

html.theme-light .suggested-collection-card:hover,
html.theme-light .suggested-collection-card:focus-visible {
  border-color: rgba(244, 63, 94, 0.46);
  background: #fff4f6;
  box-shadow: 0 12px 28px rgba(15, 23, 42, 0.08);
}

html.theme-light .reward-code-countdown {
  color: #334155;
  border-color: rgba(15, 23, 42, 0.13);
  background: linear-gradient(90deg, #effcf8, #fff5f7);
  box-shadow: none;
}

html.theme-light .reward-code-countdown :where(span, strong, small) {
  color: #334155;
  text-shadow: none;
}

html.theme-light .home-spotlight-content-dock {
  color: #111827;
  border-color: rgba(15, 23, 42, 0.13);
  background: rgba(255, 255, 255, 0.96);
  box-shadow: 0 -12px 34px rgba(15, 23, 42, 0.08);
}

html.theme-light .home-spotlight-content-dock :where(strong, h2, h3) {
  color: #111827;
  text-shadow: none;
}

html.theme-light .home-spotlight-content-dock :where(span, small, p) {
  color: #526171;
}

html.theme-light .home-spotlight-content-dock a,
html.theme-light .home-spotlight-content-dock button {
  color: #334155;
  border-color: rgba(15, 23, 42, 0.14);
  background: #ffffff;
  box-shadow: none;
}

html.theme-light .home-spotlight-content-dock a:hover,
html.theme-light .home-spotlight-content-dock button:hover {
  color: #111827;
  border-color: rgba(244, 63, 94, 0.44);
  background: #fff4f6;
}

/* Clean Command final surface pass */
html.theme-light :where(
  .home-pulse-grid > a,
  .home-spotlight-actions a,
  .home-game-filters button,
  .home-recent-card,
  .home-guide-mission-card,
  .review-summary-grid > article
) {
  color: #111827;
  border-color: rgba(15, 23, 42, 0.13);
  background: #f8fafc;
  box-shadow: none;
}

html.theme-light :where(
  .home-pulse-grid > a,
  .home-spotlight-actions a,
  .home-game-filters button,
  .home-recent-card,
  .home-guide-mission-card,
  .review-summary-grid > article
) :where(h2, h3, h4, strong) {
  color: #111827;
  text-shadow: none;
}

html.theme-light :where(
  .home-pulse-grid > a,
  .home-spotlight-actions a,
  .home-game-filters button,
  .home-recent-card,
  .home-guide-mission-card,
  .review-summary-grid > article
) :where(span, small, p) {
  color: #526171;
}

html.theme-light :where(
  .home-pulse-grid > a,
  .home-spotlight-actions a,
  .home-game-filters button,
  .home-recent-card,
  .home-guide-mission-card
):hover,
html.theme-light :where(
  .home-pulse-grid > a,
  .home-spotlight-actions a,
  .home-game-filters button,
  .home-recent-card,
  .home-guide-mission-card
):focus-visible {
  color: #111827;
  border-color: rgba(244, 63, 94, 0.44);
  background: #fff4f6;
  box-shadow: 0 10px 24px rgba(15, 23, 42, 0.07);
}

html.theme-light .home-game-filters button:is(.active, .is-active),
html.theme-light .home-game-filters button[aria-pressed="true"] {
  color: #ffffff;
  border-color: #e11d48;
  background: #f43f5e;
}

html.theme-light .home-game-filters button:is(.active, .is-active) span,
html.theme-light .home-game-filters button[aria-pressed="true"] span {
  color: #ffffff;
}

/* Clean Command light contrast repair */
html.theme-light .home-section-heading > span {
  color: #0e7490;
  text-shadow: none;
}

html.theme-light .home-section-title-row h2 {
  color: #111827;
  text-shadow: none;
}

html.theme-light .home-section-title-row h2 strong {
  color: #e11d48;
}

html.theme-light .home-spotlight-copy h2 {
  color: #111827;
  text-shadow: none;
}

html.theme-light .home-spotlight-copy p {
  color: #334155;
}

html.theme-light .home-spotlight-facts small {
  color: #64748b;
}

html.theme-light .home-spotlight-facts strong {
  color: #111827;
  text-shadow: none;
}

html.theme-light .home-spotlight-rail-copy strong {
  color: #111827;
  text-shadow: none;
}

html.theme-light .home-spotlight-rail-copy small,
html.theme-light .home-spotlight-rail-head small {
  color: #64748b;
}

html.theme-light .reward-code-kicker span {
  color: #2563eb;
}

html.theme-light .reward-code-kicker em {
  color: #475569;
}

html.theme-light .reward-code-card h3 {
  color: #111827;
  text-shadow: none;
}

html.theme-light .reward-code-card p {
  color: #475569;
}

html.theme-light .home-update-item strong {
  color: #111827;
  text-shadow: none;
}

html.theme-light .home-update-item small {
  color: #64748b;
}

html.theme-light .home-recent-copy em {
  color: #475569;
  text-shadow: none;
}

html.theme-light .home-recent-copy strong {
  color: #111827;
  text-shadow: none;
}

html.theme-light .home-recent-copy small {
  color: #64748b;
}

html.theme-light .home-recent-icon-text {
  color: #e2e8f0;
}
/* Clean Command games and characters light contrast */
html.theme-light .game-hero.has-hero-bg {
  color: #ffffff;
  background-color: #070b10;
  border-color: rgba(148, 163, 184, 0.32);
}

html.theme-light .game-hero.has-hero-bg h1 {
  color: #ffffff;
  text-shadow: 0 3px 18px rgba(0, 0, 0, 0.72);
}

html.theme-light .game-hero.has-hero-bg > div > p {
  color: #e2e8f0;
  text-shadow: 0 2px 12px rgba(0, 0, 0, 0.72);
}

html.theme-light .game-hero.has-hero-bg .game-facts {
  color: #f8fafc;
  border-color: rgba(203, 213, 225, 0.28);
  background:
    linear-gradient(135deg, color-mix(in srgb, var(--game-accent) 14%, transparent), transparent 58%),
    rgba(7, 11, 16, 0.78);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.08);
  backdrop-filter: blur(10px);
}

html.theme-light .game-hero.has-hero-bg .game-facts span {
  color: #e2e8f0;
  border-bottom-color: rgba(203, 213, 225, 0.18);
}

html.theme-light .game-hero.has-hero-bg .game-facts strong {
  color: #cbd5e1;
  text-shadow: none;
}

html.theme-light .game-hero.has-hero-bg .game-facts em {
  color: #ffffff;
  text-shadow: none;
}

html.theme-light .game-page-head .badge-glow {
  color: #0f766e;
  border-color: rgba(15, 118, 110, 0.34);
  background: rgba(13, 148, 136, 0.08);
}

html.theme-light .game-command-head span,
html.theme-light .overview-section-heading > span {
  color: #0e7490;
  text-shadow: none;
}

html.theme-light .game-command-head h2,
html.theme-light .overview-section-title-row h2 {
  color: #111827;
  text-shadow: none;
}

html.theme-light .overview-section-title-row h2 strong {
  color: #e11d48;
}

html.theme-light .overview-section-title-row::after {
  background: linear-gradient(90deg, rgba(71, 85, 105, 0.38), transparent);
}

html.theme-light .game-command-head small,
html.theme-light .section-link {
  color: #475569;
}

html.theme-light .game-command-stat-card,
html.theme-light .game-command-module-card {
  color: #ffffff;
  border-color: rgba(148, 163, 184, 0.3);
  background-color: #111827;
}

html.theme-light .game-command-stat-card span {
  color: #bfdbfe;
}

html.theme-light .game-command-stat-card strong,
html.theme-light .game-command-module-card strong,
html.theme-light .game-command-module-icon {
  color: #ffffff;
  text-shadow: none;
}

html.theme-light .game-command-stat-card small,
html.theme-light .game-command-module-card small {
  color: #cbd5e1;
}

html.theme-light .character-detail-hero .detail-quick-info span {
  color: #f8fafc;
  border-color: rgba(148, 163, 184, 0.34);
  background: linear-gradient(180deg, rgba(17, 27, 38, 0.94), rgba(9, 14, 20, 0.9));
}

html.theme-light .detail-quick-info strong,
html.theme-light .character-detail-hero .detail-quick-info strong {
  color: #bae6fd;
  text-shadow: none;
}

html.theme-light .character-command-brief .detail-kicker,
html.theme-light .character-review-deck .detail-kicker,
html.theme-light .character-brief-card > span,
html.theme-light .review-skill-grid .skill-item > span,
html.theme-light .suggested-collection-copy small {
  color: #0e7490;
  text-shadow: none;
}

html.theme-light .review-skill-grid .skill-item {
  color: #111827;
  border-color: rgba(15, 23, 42, 0.13);
  background: #f8fafc;
  box-shadow: none;
}

html.theme-light .review-skill-grid .skill-item em {
  color: #ffffff;
  border-color: #be123c;
  background: #e11d48;
  text-shadow: none;
}

html.theme-light .review-skill-grid .skill-item strong,
html.theme-light .suggested-collection-copy strong {
  color: #111827;
  text-shadow: none;
}

html.theme-light .review-skill-grid .skill-item p,
html.theme-light .suggested-collection-copy em {
  color: #475569;
}

html.theme-light .suggested-collection-action {
  color: #be123c;
  border-color: rgba(190, 18, 60, 0.28);
  background: #fff1f4;
}
/* Clean Command full light theme contrast audit */
html.theme-light :where(
  .home-command-center,
  .home-live-panel,
  .home-showcase-panel,
  .page-head,
  .search-hub-v2,
  .blog-category-hero,
  .category-index-hero
) .badge-glow {
  color: #0f766e;
  border-color: rgba(15, 118, 110, 0.28);
  background: rgba(204, 251, 241, 0.72);
  text-shadow: none;
}

html.theme-light :where(
  .home-pulse-head span,
  .home-spotlight-rail-head span,
  .home-live-panel-head span,
  .home-showcase-panel > header > span,
  .blog-category-chip-head span,
  .category-chip-head span
) {
  color: #0e7490;
  text-shadow: none;
}

html.theme-light :where(
  .home-pulse-head strong,
  .home-live-panel-head strong,
  .home-spotlight-rail-head strong
) {
  color: #111827;
  text-shadow: none;
}

html.theme-light .home-pulse-grid em,
html.theme-light .home-recent-copy em,
html.theme-light .home-spotlight-rail-head small {
  color: #64748b;
}

html.theme-light .home-spotlight-controls button,
html.theme-light .home-spotlight-controls button span,
html.theme-light .home-showcase-panel .section-link,
html.theme-light .home-live-panel .section-link {
  color: #334155;
  text-shadow: none;
}

html.theme-light .home-spotlight-controls button {
  border-color: rgba(15, 23, 42, 0.14);
  background: #ffffff;
}

html.theme-light .home-recent-icon-text {
  color: #0e7490;
}

html.theme-light .game-hub-v2 {
  color: #f8fafc;
  border-color: rgba(148, 163, 184, 0.3);
  background:
    linear-gradient(135deg, rgba(244, 63, 94, 0.1), rgba(34, 211, 238, 0.06) 44%, rgba(10, 16, 24, 0.96)),
    #0a0f16;
  box-shadow: 0 20px 54px rgba(15, 23, 42, 0.16);
}

html.theme-light .game-hub-v2-head :where(h2, strong),
html.theme-light .game-hub-primary-copy :where(h2, h3, strong),
html.theme-light .game-hub-activity-list a :where(h3, strong),
html.theme-light .game-hub-lane-grid a strong {
  color: #f8fafc;
  text-shadow: none;
}

html.theme-light .game-hub-v2-head p,
html.theme-light .game-hub-v2-head small,
html.theme-light .game-hub-primary-copy p {
  color: #cbd5e1;
}

html.theme-light .game-hub-activity,
html.theme-light .game-hub-lanes,
html.theme-light .game-hub-activity-list a,
html.theme-light .game-hub-lane-grid a {
  color: #f8fafc;
  border-color: rgba(148, 163, 184, 0.24);
  background: rgba(15, 23, 42, 0.84);
}

html.theme-light .game-hub-v2 :where(.game-hub-metric-row span, .game-hub-lane-grid span, .game-hub-activity-list span) {
  color: #bae6fd;
}

html.theme-light .mecha-section-head .detail-kicker,
html.theme-light .mecha-info-section > .detail-kicker {
  color: #0e7490;
  text-shadow: none;
}

html.theme-light .mecha-basic-grid small,
html.theme-light .mecha-ap-list small {
  color: #64748b;
}

html.theme-light .mecha-basic-grid strong,
html.theme-light .mecha-ap-list strong {
  color: #111827;
  text-shadow: none;
}

html.theme-light .mecha-stat-row span {
  color: #475569;
}

html.theme-light .mecha-stat-row strong {
  color: #111827;
  text-shadow: none;
}

html.theme-light .mecha-stat-row div {
  background: #dbe3eb;
}

html.theme-light .mecha-talent-card,
html.theme-light .mecha-drive-card {
  color: #111827;
  border-color: rgba(15, 23, 42, 0.14);
  background: #ffffff;
  box-shadow: 0 8px 24px rgba(15, 23, 42, 0.06);
}

html.theme-light .mecha-talent-head,
html.theme-light .mecha-drive-head {
  border-color: rgba(15, 23, 42, 0.12);
  background: #f8fafc;
}

html.theme-light .mecha-talent-title strong,
html.theme-light .mecha-drive-card h3,
html.theme-light .mecha-drive-card strong {
  color: #111827;
  text-shadow: none;
}

html.theme-light .mecha-talent-title small,
html.theme-light .mecha-drive-card small {
  color: #64748b;
}

html.theme-light .mecha-talent-switch,
html.theme-light .mecha-talent-single-state {
  color: #475569;
}

html.theme-light .mecha-talent-state.is-upgraded {
  color: #e11d48;
}

html.theme-light .mecha-switch-track {
  background: #cbd5e1;
  box-shadow: inset 0 0 0 1px rgba(15, 23, 42, 0.16);
}

html.theme-light .mecha-switch-track::after {
  background: #ffffff;
  box-shadow: 0 1px 4px rgba(15, 23, 42, 0.24);
}

html.theme-light .mecha-talent-desc {
  color: #334155;
}

html.theme-light .mecha-drive-card p {
  color: #475569;
}

html.theme-light .mecha-drive-card p mark,
html.theme-light .mecha-talent-desc mark {
  color: #e11d48;
}

html.theme-light .character-info-grid small,
html.theme-light .collection-stat-grid small {
  color: #64748b;
}

html.theme-light .character-info-grid strong,
html.theme-light .collection-stat-grid strong {
  color: #111827;
  text-shadow: none;
}

html.theme-light .tier-filter-sidebar {
  color: #111827;
  border-color: rgba(15, 23, 42, 0.13);
  background: #ffffff;
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.07);
}

html.theme-light .tier-filter-title {
  color: #0e7490;
  text-shadow: none;
}

html.theme-light .tier-filter-option {
  color: #334155;
}

html.theme-light .tier-filter-option input {
  border-color: #94a3b8;
  background: #ffffff;
}

html.theme-light .tier-filter-option input:checked {
  border-color: #e11d48;
  background: linear-gradient(135deg, #f43f5e, #e11d48);
  box-shadow: inset 0 0 0 4px #ffffff, 0 0 0 3px rgba(244, 63, 94, 0.12);
}

html.theme-light .tier-list-summary {
  color: #475569;
}

html.theme-light .tier-row {
  color: #f8fafc;
  border-color: rgba(148, 163, 184, 0.32);
  background: #0f172a;
}

html.theme-light .tier-row :where(.character-portrait h3, .tier-chip h3, .tier-chip strong) {
  color: #f8fafc;
  text-shadow: 0 2px 4px rgba(0, 0, 0, 0.72);
}

html.theme-light .tier-row :where(.tier-chip small, .character-portrait small) {
  color: #cbd5e1;
}

html.theme-light .blog-category-hero-copy p,
html.theme-light .category-index-hero p {
  color: #475569;
}

html.theme-light .blog-category-kicker,
html.theme-light .blog-category-chip-head span,
html.theme-light .category-chip-head span {
  color: #0e7490;
  text-shadow: none;
}

html.theme-light .blog-category-directory-stats strong,
html.theme-light .blog-category-summary strong,
html.theme-light .category-directory-stats strong {
  color: #111827;
  text-shadow: none;
}

html.theme-light .blog-category-chip-head a,
html.theme-light .category-chip-head a {
  color: #be123c;
}

html.theme-light .blog-category-chip-main strong {
  color: #111827;
  text-shadow: none;
}

html.theme-light .blog-category-chip-main small,
html.theme-light .blog-category-chip > small {
  color: #526171;
}

html.theme-light .blog-category-chip-count b {
  color: #0e7490;
  text-shadow: none;
}

html.theme-light .blog-category-chip-count small {
  color: #475569;
}

html.theme-light .search-hub-v2 {
  color: #111827;
  border-color: rgba(15, 23, 42, 0.13);
  background:
    linear-gradient(135deg, rgba(244, 63, 94, 0.045), transparent 36%),
    linear-gradient(315deg, rgba(6, 182, 212, 0.04), transparent 34%),
    #ffffff;
  box-shadow: var(--card-shadow);
}

html.theme-light .search-hub-v2 :where(h1, h2, h3, strong) {
  color: #111827;
  text-shadow: none;
}

html.theme-light .search-hub-v2 p {
  color: #475569;
}

html.theme-light .search-suggestion-chip,
html.theme-light .search-hub-status {
  color: #334155;
  border-color: rgba(15, 23, 42, 0.14);
  background: #f8fafc;
  box-shadow: none;
}

html.theme-light .search-suggestion-chip strong {
  color: #0e7490;
}

html.theme-light .search-suggestion-chip:hover,
html.theme-light .search-suggestion-chip:focus-visible {
  color: #111827;
  border-color: rgba(244, 63, 94, 0.42);
  background: #fff4f6;
}

html.theme-light .search-suggestion-chip.is-active {
  color: #ffffff;
  border-color: #e11d48;
  background: linear-gradient(135deg, #f43f5e, #e11d48);
  box-shadow: 0 12px 28px rgba(225, 29, 72, 0.16);
}

html.theme-light .search-suggestion-chip.is-active strong {
  color: #ffffff;
}

html.theme-light .article-detail .content-panel,
html.theme-light .guide-detail .content-panel {
  color: #334155;
  border-top-color: rgba(15, 23, 42, 0.14);
}

html.theme-light .article-detail .content-panel :where(h2, h3, h4),
html.theme-light .guide-detail .content-panel :where(h2, h3, h4) {
  color: #111827;
  text-shadow: none;
}

html.theme-light .article-detail .content-panel :where(p, li, ul, ol),
html.theme-light .guide-detail .content-panel :where(p, li, ul, ol) {
  color: #334155;
}

html.theme-light .collection-detail-hero .detail-quick-info span {
  color: #f8fafc;
  border-color: rgba(148, 163, 184, 0.34);
  background: linear-gradient(180deg, rgba(17, 27, 38, 0.94), rgba(9, 14, 20, 0.9));
}

html.theme-light .collection-detail-hero .detail-quick-info strong {
  color: #bae6fd;
  text-shadow: none;
}

html.theme-light :where(.expired-codes-head, .expired-codes-summary) :where(span, small) {
  color: #475569;
}

html.theme-light .empty-state :where(h2, h3, strong) {
  color: #111827;
  text-shadow: none;
}

html.theme-light .empty-state :where(p, small) {
  color: #64748b;
}
html.theme-light .blog-category-directory-hero {
  color: #111827;
  border-color: rgba(15, 23, 42, 0.13);
  background:
    linear-gradient(135deg, rgba(244, 63, 94, 0.045), transparent 36%),
    linear-gradient(315deg, rgba(6, 182, 212, 0.04), transparent 34%),
    #ffffff;
  box-shadow: var(--card-shadow);
}

html.theme-light .blog-category-directory-hero h1 {
  color: #111827;
  text-shadow: none;
}

html.theme-light .blog-category-directory-hero p {
  color: #475569;
}

html.theme-light .blog-category-directory-stats span {
  border-color: rgba(15, 23, 42, 0.13);
  background: #f8fafc;
}

html.theme-light .blog-category-directory-stats strong {
  color: #111827;
  text-shadow: none;
}

html.theme-light .blog-category-directory-stats small {
  color: #64748b;
}

html.theme-light .blog-category-chip {
  color: #111827;
  border-color: color-mix(in srgb, var(--category-accent) 34%, rgba(15, 23, 42, 0.14));
  background:
    linear-gradient(135deg, color-mix(in srgb, var(--category-accent) 8%, transparent), transparent 54%),
    #f8fafc;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.8);
}

html.theme-light .blog-category-chip:hover,
html.theme-light .blog-category-chip:focus-visible {
  border-color: color-mix(in srgb, var(--category-accent) 68%, rgba(15, 23, 42, 0.18));
  background:
    linear-gradient(135deg, color-mix(in srgb, var(--category-accent) 12%, transparent), transparent 56%),
    #ffffff;
  box-shadow: 0 14px 30px rgba(15, 23, 42, 0.09);
}

html.theme-light .blog-category-chip.is-empty {
  color: #64748b;
  background: #f8fafc;
}
/* Clean Command final light contrast sweep */
html.theme-light .home-panel-head a {
  color: #0e7490;
  text-shadow: none;
}

html.theme-light .home-panel-head a:hover,
html.theme-light .home-panel-head a:focus-visible {
  color: #be123c;
}

html.theme-light .article-card-kicker,
html.theme-light .article-detail .article-kicker {
  color: #0e7490;
}

html.theme-light .article-card-kicker :where(i, b),
html.theme-light .article-detail .article-kicker > span:not(.badge) {
  color: #be123c;
  text-shadow: none;
}

html.theme-light .article-detail .article-kicker > span:not(.badge) {
  border-color: rgba(190, 24, 93, 0.28);
  background: #fff4f6;
}

html.theme-light .article-breadcrumb a {
  color: #475569;
}

html.theme-light .article-breadcrumb a:hover,
html.theme-light .article-breadcrumb a:focus-visible {
  color: #be123c;
}

html.theme-light .article-related-block .section-heading-row span {
  color: #0e7490;
  text-shadow: none;
}

html.theme-light .article-related-intel-card,
html.theme-light .guide-related-intel-card {
  color: #111827;
  border-color: rgba(15, 23, 42, 0.14);
  background:
    linear-gradient(135deg, rgba(244, 63, 94, 0.045), transparent 54%),
    #ffffff;
  box-shadow: var(--card-shadow);
}

html.theme-light .article-related-intel-card :where(.article-related-intel-title, .guide-related-intel-title),
html.theme-light .guide-related-intel-card :where(.article-related-intel-title, .guide-related-intel-title) {
  color: #111827;
  text-shadow: none;
}

html.theme-light .article-related-intel-kicker {
  color: #0e7490;
}

html.theme-light .article-related-intel-excerpt,
html.theme-light .article-related-intel-meta small {
  color: #526171;
}

html.theme-light .article-related-intel-meta {
  border-top-color: rgba(15, 23, 42, 0.12);
}

html.theme-light .article-related-intel-action {
  color: #be123c;
  border-color: rgba(190, 24, 93, 0.36);
  background: #fff4f6;
}

html.theme-light .article-author-more a,
html.theme-light .article-next-nav a,
html.theme-light .article-next-nav > span,
html.theme-light .article-resource-card {
  color: #111827;
  border-color: rgba(15, 23, 42, 0.14);
  background: #ffffff;
  box-shadow: none;
}

html.theme-light .article-next-nav small {
  color: #64748b;
}

html.theme-light .article-resource-card small {
  color: #be123c;
}

html.theme-light .article-resource-card strong {
  color: #111827;
  text-shadow: none;
}

/* Reading command panels intentionally retain a dark surface in both themes. */
html.theme-light .article-detail .reading-command-shell,
html.theme-light .guide-detail .reading-command-shell {
  color: #e2e8f0;
  border-color: rgba(30, 41, 59, 0.88);
  background:
    linear-gradient(135deg, rgba(244, 63, 94, 0.1), rgba(34, 211, 238, 0.06) 44%, rgba(0, 0, 0, 0.05)),
    #0b1118;
  box-shadow: 0 16px 36px rgba(15, 23, 42, 0.16);
}

html.theme-light .reading-command-shell :where(h2, h3, strong) {
  color: #f8fafc;
  text-shadow: none;
}

html.theme-light .reading-command-shell :where(p, small) {
  color: #cbd5e1;
}

html.theme-light .reading-command-shell .reading-context-grid span,
html.theme-light .reading-command-shell .reading-callout-card,
html.theme-light .reading-command-shell .reading-hero-card {
  color: #e2e8f0;
  border-color: rgba(148, 163, 184, 0.24);
  background: rgba(15, 23, 42, 0.88);
}

html.theme-light .reading-command-shell :where(.reading-context-grid small, .reading-callout-card span) {
  color: #7dd3fc;
}

html.theme-light .reading-command-shell .reading-callout-card a {
  color: #fb7185;
}
/* Clean Command collection and STs light contrast audit */
html.theme-light .detail-content-block {
  color: #111827;
  border-color: rgba(15, 23, 42, 0.14);
  background:
    linear-gradient(135deg, rgba(244, 63, 94, 0.035), transparent 42%),
    #ffffff;
  box-shadow: var(--card-shadow);
}

html.theme-light .detail-content-block .detail-kicker,
html.theme-light .mecha-st-info-panel .detail-kicker {
  color: #0e7490;
  text-shadow: none;
}

html.theme-light .detail-content-block .detail-copy :where(p, li),
html.theme-light .detail-content-block .muted {
  color: #475569;
}

html.theme-light .mecha-st-info-panel {
  color: #111827;
}

html.theme-light .mecha-st-part-card,
html.theme-light .mecha-st-module-card {
  color: #111827;
  border-color: rgba(15, 23, 42, 0.14);
  background:
    linear-gradient(135deg, rgba(14, 116, 144, 0.035), transparent 50%),
    #ffffff;
  box-shadow: 0 8px 22px rgba(15, 23, 42, 0.05);
}

html.theme-light .mecha-st-part-head {
  border-bottom-color: rgba(15, 23, 42, 0.12);
  background: #f8fafc;
}

html.theme-light .mecha-st-part-icon,
html.theme-light .mecha-st-module-icon {
  border-color: rgba(15, 23, 42, 0.14);
  background: #eef2f6;
}

html.theme-light .mecha-st-part-head small,
html.theme-light .mecha-st-stat-grid small {
  color: #64748b;
}

html.theme-light .mecha-st-part-head strong,
html.theme-light .mecha-st-stat-grid strong,
html.theme-light .mecha-st-module-card strong {
  color: #111827;
  text-shadow: none;
}

html.theme-light .mecha-st-stat-grid span {
  border-color: rgba(15, 23, 42, 0.1);
  background: #ffffff;
}

html.theme-light .mecha-st-module-card p {
  color: #475569;
}

html.theme-light .collection-detail-tabs .detail-tab-list {
  border-bottom-color: rgba(15, 23, 42, 0.14);
}

html.theme-light .collection-detail-tabs .detail-tab {
  color: #526171;
}

html.theme-light .collection-detail-tabs .detail-tab:hover,
html.theme-light .collection-detail-tabs .detail-tab:focus-visible,
html.theme-light .collection-detail-tabs .detail-tab.is-active {
  color: #111827;
}

html.theme-light .collection-detail-tabs .detail-tab.is-active {
  border-bottom-color: #e11d48;
}

html.theme-light .collection-detail-tabs .detail-tab small {
  color: #334155;
  border: 1px solid rgba(15, 23, 42, 0.14);
  background: #eef2f6;
}

html.theme-light .collection-detail-tabs .detail-tab.is-active small {
  color: #ffffff;
  border-color: #e11d48;
  background: #e11d48;
}

/* Mobile responsive hardening: stable navigation, touch-safe grids, and overflow containment. */
@media (max-width: 760px) {
  html,
  body {
    max-width: 100%;
    overflow-x: clip;
  }

  body { min-width: 0; }

  .site-header {
    gap: 10px;
    min-height: 64px;
    padding: 10px max(16px, env(safe-area-inset-right)) 10px max(16px, env(safe-area-inset-left));
  }

  .site-header .brand {
    flex: 1 1 auto;
    max-width: calc(100% - 56px);
  }

  .site-header .brand-mark {
    width: 38px;
    height: 38px;
    flex-basis: 38px;
  }

  .site-header .brand-text { font-size: 16px; }

  .site-header .nav-toggle {
    display: inline-flex !important;
    order: 3;
    align-items: center;
    justify-content: center;
    flex: 0 0 44px;
    margin-left: auto;
  }

  .site-header .site-nav { z-index: 110; }
  .site-nav.open { display: grid; }

  .site-nav > a,
  .nav-menu,
  .nav-menu > .nav-link,
  .nav-admin-button,
  .theme-toggle,
  .site-search { min-width: 0; }

  .site-nav > a,
  .nav-menu > .nav-link,
  .nav-admin-button,
  .theme-toggle { min-height: 46px; }

  .site-search input { min-width: 0; }
  .home-command-center { padding-top: 28px; }

  .home-command-backdrop,
  .home-showcase-panel,
  .home-mock-panel,
  .game-hub-v2,
  .reading-command-shell,
  .character-command-brief,
  .search-hub-v2,
  .blog-category-directory-hero,
  .blog-category-hero { max-width: calc(100% - 24px); }

  .home-pulse-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
  }

  .home-pulse-grid > * { min-width: 0; }
  .home-pulse-grid :where(strong, span, small) { overflow-wrap: anywhere; }

  .home-spotlight-copy,
  .home-spotlight-rail,
  .home-showcase-panel,
  .home-mock-panel { padding: 14px; }

  .home-spotlight-actions,
  .article-share-actions {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    width: 100%;
  }

  .home-spotlight-actions a,
  .article-share-button {
    min-width: 0;
    width: 100%;
  }

  .home-game-filters,
  .blog-tag-tabs {
    display: flex;
    flex-wrap: nowrap;
    width: 100%;
    overflow-x: auto;
    padding-bottom: 4px;
    scrollbar-width: thin;
  }

  .home-game-filters button,
  .blog-tag-tabs a {
    flex: 0 0 auto;
    min-width: 118px;
  }

  .game-tabs {
    display: flex;
    justify-content: flex-start;
    gap: 8px;
    width: min(var(--page-max), calc(100% - 24px));
    padding-top: 12px;
    overflow-x: auto;
    scroll-snap-type: x proximity;
    scrollbar-width: thin;
  }

  .game-tabs a {
    flex: 0 0 142px;
    min-width: 0;
    scroll-snap-align: start;
  }

  .detail-tab-list {
    gap: 0;
    margin-bottom: 18px;
    padding-bottom: 0;
    scrollbar-width: thin;
  }

  .detail-tab {
    flex: 0 0 auto;
    min-height: 48px;
    padding-right: 16px;
  }

  .game-hub-v2-head,
  .character-brief-head,
  .st-builder-head,
  .st-builder-section-head,
  .section-heading-row { gap: 12px; }

  .game-hub-primary {
    min-height: 240px;
    padding: 16px;
  }

  .game-hub-primary-copy h3 { font-size: clamp(2.3rem, 14vw, 3.4rem); }

  .game-hub-metric-row,
  .game-hub-lane-grid,
  .reading-context-grid,
  .search-category-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }

  .game-hub-metric-row a,
  .game-hub-lane-grid a,
  .reading-context-grid span {
    min-height: 86px;
    padding: 10px;
  }

  .game-hub-activity,
  .game-hub-lanes { padding: 12px; }

  .character-command-brief,
  .review-suggested-panel,
  .reading-command-shell { padding: 14px; }

  .character-brief-grid,
  .reading-callout-rail,
  .review-summary-grid,
  .review-skill-grid,
  .guide-hub-grid,
  .article-resource-grid,
  .article-related-grid,
  .article-next-nav,
  .search-result-grid-v2,
  .blog-insight-grid,
  .mecha-st-part-grid,
  .mecha-st-module-grid { grid-template-columns: 1fr; }

  .character-detail-hero,
  .collection-detail-hero,
  .detail-hero {
    gap: 18px;
    min-height: 0;
    padding: 18px;
  }

  .character-detail-hero .detail-avatar,
  .collection-detail-hero .detail-avatar,
  .detail-hero .detail-avatar {
    width: min(100%, 248px);
    min-height: 280px;
    margin: 0 auto;
  }

  .detail-copy,
  .info-dossier-copy,
  .game-hub-primary-copy,
  .article-card-body,
  .article-related-intel-copy { min-width: 0; }

  .detail-copy :where(h1, h2, p),
  .info-dossier-copy :where(h1, h2, p),
  .article-card :where(h2, h3, p),
  .article-related-intel-card :where(h2, h3, p),
  .search-result-card :where(h2, h3, p) { overflow-wrap: anywhere; }

  .info-dossier-identity.info-dossier-compact,
  .info-dossier-identity.info-dossier-compact.has-dossier-raw-image { padding: 18px; }

  .info-dossier-raw-figure {
    width: min(100%, 300px);
    height: 248px;
    margin-bottom: -18px;
  }

  .mecha-basic-grid,
  .character-info-grid,
  .mecha-st-stat-grid,
  .mecha-ap-list,
  .tier-filter-options { min-width: 0; }

  .mecha-st-part-card,
  .mecha-st-module-card,
  .review-skill-card,
  .suggested-collection-card { min-width: 0; }

  .mecha-talent-head,
  .mecha-talent-switch,
  .mecha-talent-single-state { min-width: 0; }

  .blog-hero-copy,
  .blog-hero-featured,
  .blog-hero-feed,
  .blog-featured-story,
  .blog-briefing-list,
  .blog-popular-list { min-width: 0; }

  .blog-hero-copy { padding: 24px 18px; }
  .blog-hero-featured .article-card-media { height: 220px; }
  .article-share { gap: 12px; }
  .article-share-button { flex: none; }

  .article-jump-panel,
  .article-layout .jump-panel {
    position: static;
    width: 100%;
    max-height: none;
  }

  .admin-main {
    min-width: 0;
    padding: 14px;
  }

  .admin-panel,
  .admin-form-section,
  .admin-collection-sidebar,
  .admin-character-sidebar { min-width: 0; }

  .admin-nav,
  .admin-sidebar-footer { gap: 6px; }

  .admin-nav a,
  .admin-sidebar-footer a {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  .table-wrap {
    max-width: 100%;
    overflow-x: auto;
  }
}

@media (max-width: 480px) {
  .site-header .brand-text { font-size: 15px; }

  .site-header .site-nav {
    left: 12px;
    right: 12px;
  }

  .home-pulse-grid,
  .game-hub-metric-row,
  .game-hub-lane-grid,
  .reading-context-grid,
  .search-category-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }

  .home-pulse-grid > *,
  .game-hub-metric-row a,
  .game-hub-lane-grid a,
  .reading-context-grid span { min-height: 78px; }

  .home-pulse-grid :where(strong, b) { font-size: 1.45rem; }

  .home-spotlight-actions,
  .article-share-actions { grid-template-columns: 1fr; }

  .game-tabs a {
    flex-basis: 132px;
    min-height: 44px;
    padding: 8px 12px;
  }

  .detail-tab {
    min-height: 46px;
    padding-right: 14px;
    font-size: 0.9rem;
  }

  .game-hub-primary { min-height: 224px; }
  .game-hub-primary-copy h3 { font-size: clamp(2.1rem, 15vw, 3rem); }
  .blog-hero-featured .article-card-media { height: 190px; }

  .admin-nav,
  .admin-sidebar-footer { grid-template-columns: 1fr; }
}
/* mobile menu control contrast */
@media (max-width: 760px) {
  .site-header .nav-toggle {
    color: #f8fafc;
    border-color: rgba(244, 63, 94, 0.58);
    background: linear-gradient(135deg, rgba(244, 63, 94, 0.22), rgba(15, 23, 42, 0.94));
    box-shadow: 0 8px 20px rgba(244, 63, 94, 0.18);
  }

  .site-header .nav-toggle:hover,
  .site-header .nav-toggle:focus-visible {
    color: #ffffff;
    border-color: #fb7185;
    background: rgba(225, 29, 72, 0.5);
  }

  html.theme-light .site-header .nav-toggle {
    color: #be123c;
    border-color: rgba(225, 29, 72, 0.5);
    background: #fff4f6;
    box-shadow: 0 8px 18px rgba(190, 24, 93, 0.1);
  }
}
/* Mobile home spotlight rescue: prevent zero-width stage columns and desktop rail overlap. */
@media (max-width: 760px) {
  .home-command-center {
    grid-template-columns: minmax(0, 1fr);
    gap: 16px;
    min-height: 0;
    padding: 22px 18px 18px;
  }

  .home-command-center::before,
  .home-command-backdrop::after { display: none; }

  .home-command-backdrop-image {
    right: -18%;
    width: 100%;
    opacity: 0.14;
  }

  .home-hero-copy { max-width: none; }

  .home-hero-copy h1 { font-size: clamp(38px, 13vw, 52px); }

  .home-command-center .hero-actions {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
    margin-top: 16px;
  }

  .home-command-center .button {
    width: 100%;
    min-width: 0;
  }

  .home-command-center .home-pulse-card {
    align-self: stretch;
    box-sizing: border-box;
    width: 100%;
    max-width: none;
    padding: 14px;
  }

  .home-pulse-head { margin-bottom: 10px; }

  .home-pulse-grid { gap: 8px; }

  .home-pulse-grid a {
    min-height: 112px;
    padding: 10px 6px;
  }

  .home-pulse-grid .nav-icon {
    width: 28px;
    height: 28px;
  }

  .home-pulse-grid strong { font-size: 26px; }

  .home-pulse-grid small {
    font-size: 11px;
    line-height: 1.18;
  }

  .home-pulse-grid em { font-size: 10px; }

  .home-spotlight-card.home-mock-panel,
  .home-showcase-panel.home-mock-panel,
  .home-live-panel.home-mock-panel {
    box-sizing: border-box;
    width: 100%;
    max-width: 100%;
  }

  .home-spotlight-card.home-spotlight-rail-card.has-rail {
    grid-template-columns: minmax(0, 1fr);
    min-height: 0;
  }

  .home-spotlight-stage { min-width: 0; }

  .home-spotlight-slide,
  .home-spotlight-slide.is-active {
    grid-template-columns: minmax(0, 1fr);
    grid-template-rows: 180px auto auto;
    min-width: 0;
  }

  .home-spotlight-media {
    min-height: 180px;
    height: 180px;
  }

  .home-spotlight-copy {
    gap: 12px;
    min-width: 0;
    padding: 16px;
  }

  .home-spotlight-copy h2 { font-size: clamp(32px, 11vw, 42px); }

  .home-spotlight-copy p {
    display: -webkit-box;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 4;
    line-clamp: 4;
  }

  .home-spotlight-facts {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
  }

  .home-spotlight-facts span {
    min-width: 0;
    padding: 10px;
  }

  .home-spotlight-actions {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
  }

  .home-spotlight-actions a {
    min-height: 42px;
    padding: 8px;
  }

  .home-spotlight-content-dock {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
    padding: 10px;
  }

  .home-spotlight-pill {
    grid-template-columns: 34px minmax(0, 1fr);
    min-height: 56px;
    padding: 8px;
  }

  .home-spotlight-pill-icon {
    width: 34px;
    height: 34px;
  }

  .home-spotlight-pill-copy em { font-size: 9px; }
  .home-spotlight-pill-copy strong { font-size: 12px; }

  .home-spotlight-rail {
    min-width: 0;
    padding: 12px;
    border-top: 1px solid rgba(180, 205, 220, 0.16);
  }

  .home-spotlight-rail-head {
    display: flex;
    margin-bottom: 8px;
  }

  .home-spotlight-rail-list {
    display: flex;
    grid-template-columns: none;
    gap: 8px;
    overflow-x: auto;
    padding-bottom: 2px;
    scroll-snap-type: x proximity;
    scrollbar-width: thin;
  }

  .home-spotlight-rail-item {
    flex: 0 0 min(260px, 78vw);
    grid-template-columns: 56px minmax(0, 1fr);
    min-height: 64px;
    padding: 7px;
    scroll-snap-align: start;
  }

  .home-spotlight-rail-thumb {
    width: 56px;
    height: 50px;
  }

  /* Mobile spotlight rail interaction */
  .home-spotlight-rail-list {
    -webkit-overflow-scrolling: touch;
    overscroll-behavior-x: contain;
    touch-action: pan-y;
    cursor: grab;
  }

  .home-spotlight-rail-list.is-dragging {
    cursor: grabbing;
    scroll-snap-type: none;
    user-select: none;
  }

  .home-spotlight-rail-list::-webkit-scrollbar { height: 6px; }
  .home-spotlight-rail-list::-webkit-scrollbar-thumb {
    border-radius: 999px;
    background: rgba(100, 116, 139, 0.58);
  }

  .home-spotlight-controls {
    display: grid;
    margin-top: 10px;
  }
}

@media (max-width: 480px) {
  .home-command-center .hero-actions { grid-template-columns: 1fr; }

  .home-spotlight-slide,
  .home-spotlight-slide.is-active { grid-template-rows: 160px auto auto; }

  .home-spotlight-media {
    min-height: 160px;
    height: 160px;
  }
}
/* Mobile game tab reachability */
@media (max-width: 760px) {
  .game-tabs {
    padding-right: 14px;
    padding-bottom: 8px;
    overscroll-behavior-x: contain;
    scroll-padding-inline: 12px;
    -webkit-overflow-scrolling: touch;
    touch-action: pan-y;
    cursor: grab;
  }

  .game-tabs.is-dragging {
    cursor: grabbing;
    scroll-snap-type: none;
    user-select: none;
  }

  .game-tabs::-webkit-scrollbar { height: 6px; }
  .game-tabs::-webkit-scrollbar-thumb {
    border-radius: 999px;
    background: rgba(100, 116, 139, 0.58);
  }

  .game-tabs a { scroll-snap-stop: always; }
}
/* Mobile game tabs vertical stack */
@media (max-width: 760px) {
  .game-tabs {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    justify-content: stretch;
    gap: 8px;
    padding: 12px 0 0;
    overflow: visible;
    overscroll-behavior: auto;
    scroll-snap-type: none;
    touch-action: auto;
    cursor: default;
  }

  .game-tabs a {
    display: flex;
    width: 100%;
    min-width: 0;
    min-height: 44px;
    flex: initial;
    scroll-snap-align: none;
    scroll-snap-stop: normal;
  }
}
/* Game hero download links */
.game-hero-download-actions {
  align-items: center;
  gap: 10px;
}

.game-hero-download-label {
  flex-basis: 100%;
  color: var(--muted);
  font-size: 12px;
  font-weight: 900;
  letter-spacing: 0;
  text-transform: uppercase;
}

.game-hero-download-actions .game-download-link {
  min-width: 0;
}

.game-hero-download-actions .game-download-link--official {
  border-color: rgba(244, 63, 94, 0.75);
}

@media (max-width: 520px) {
  .game-hero-download-actions {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    width: 100%;
  }

  .game-hero-download-actions .game-hero-download-label {
    padding: 0 2px;
  }
}
/* Custom game external links */
.game-external-links .game-custom-links {
  grid-column: 1 / -1;
  display: grid;
  gap: 12px;
  padding-top: 4px;
}

.game-custom-links-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding-top: 12px;
  border-top: 1px solid var(--line);
}

.game-custom-links-head strong,
.game-custom-links-head small {
  display: block;
}

.game-custom-links-head strong {
  color: var(--text);
}

.game-custom-links-head small {
  margin-top: 4px;
  color: var(--muted);
}

.game-custom-links-head .button {
  min-width: 0;
}

.game-custom-link-list {
  display: grid;
  gap: 10px;
}

.game-custom-link-row {
  display: grid;
  grid-template-columns: minmax(160px, 0.75fr) minmax(0, 1.8fr) auto;
  align-items: end;
  gap: 10px;
  padding: 12px;
  border: 1px solid var(--line);
  border-radius: var(--radius-sm);
  background: var(--panel-2);
}

.game-custom-link-row label {
  min-width: 0;
}

.game-custom-link-remove {
  min-width: 0;
  min-height: 42px;
  padding-inline: 14px;
}

@media (max-width: 640px) {
  .game-custom-links-head {
    flex-direction: column;
    align-items: stretch;
  }

  .game-custom-link-row {
    grid-template-columns: minmax(0, 1fr);
  }

  .game-custom-links-head .button,
  .game-custom-link-remove {
    width: 100%;
  }
}
/* Admin Characters & Collections 2.0 */
.admin-content-manager {
  display: grid;
  gap: 16px;
}

.admin-manager-create,
.admin-bulk-actions,
.admin-pagination,
.admin-pagination > div,
.admin-template-launcher,
.admin-builder-head,
.admin-builder-row-actions,
.admin-relation-summary {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
}

.admin-manager-create a:not(.button),
.admin-template-launcher a {
  border: 1px solid var(--border);
  background: var(--panel-soft);
  color: var(--text);
  padding: 9px 12px;
  text-decoration: none;
}

.admin-content-manager .admin-filter-bar {
  grid-template-columns: minmax(220px, 2fr) repeat(5, minmax(130px, 1fr)) auto auto;
  align-items: end;
}

.admin-content-manager .admin-filter-bar label {
  min-width: 0;
}

.admin-bulk-actions {
  padding: 12px;
  border: 1px solid var(--border);
  background: var(--panel-soft);
}

.admin-bulk-actions .input {
  width: auto;
  min-width: 150px;
}

.admin-pagination {
  justify-content: space-between;
  padding-top: 14px;
  border-top: 1px solid var(--border);
}

.admin-pagination a {
  min-width: 36px;
  min-height: 36px;
  display: inline-grid;
  place-items: center;
  border: 1px solid var(--border);
  color: var(--text);
  text-decoration: none;
  padding: 6px 10px;
}

.admin-pagination a.active {
  border-color: var(--accent);
  background: color-mix(in srgb, var(--accent) 18%, var(--panel));
}

.admin-status-pill {
  display: inline-flex;
  padding: 4px 8px;
  border: 1px solid var(--border);
  font-size: 12px;
  text-transform: uppercase;
}

.admin-status-pill.is-published { color: #34d399; }
.admin-status-pill.is-review { color: #fbbf24; }
.admin-status-pill.is-draft { color: var(--muted); }

.admin-template-launcher {
  padding: 12px;
  border: 1px solid var(--border);
  background: linear-gradient(90deg, rgba(244, 63, 94, .09), rgba(34, 211, 238, .05));
}

.admin-structured-builder,
.admin-relation-picker,
.admin-reverse-relations {
  border: 1px solid var(--border);
  background: var(--panel-soft);
  padding: 14px;
  min-width: 0;
}

.admin-builder-head {
  justify-content: space-between;
  margin-bottom: 12px;
}

.admin-builder-head > div {
  display: grid;
  gap: 3px;
}

.admin-builder-head small {
  color: var(--muted);
}

.admin-builder-list {
  display: grid;
  gap: 10px;
}

.admin-builder-row {
  display: grid;
  grid-template-columns: 28px minmax(130px, 1fr) minmax(120px, .8fr) minmax(100px, .6fr) minmax(220px, 2fr) auto;
  gap: 10px;
  align-items: end;
  padding: 12px;
  border: 1px solid var(--border);
  background: var(--panel);
}

.admin-builder-row.is-stat {
  grid-template-columns: 28px minmax(180px, 1fr) minmax(260px, 2fr) auto;
}

.admin-builder-row label {
  min-width: 0;
}

.admin-builder-handle {
  align-self: center;
  color: var(--muted);
  font-weight: 800;
}

.admin-builder-row-actions {
  flex-wrap: nowrap;
}

.admin-builder-row-actions button,
.admin-builder-head button,
.admin-bulk-actions button {
  min-height: 38px;
  border: 1px solid var(--border);
  background: var(--panel-elevated, var(--panel));
  color: var(--text);
  padding: 8px 10px;
}

.admin-relation-picker select {
  width: 100%;
  min-height: 230px;
}

.admin-relation-summary {
  margin-bottom: 10px;
}

.admin-relation-summary button,
.admin-relation-summary a {
  display: inline-grid;
  gap: 2px;
  border: 1px solid color-mix(in srgb, var(--accent) 55%, var(--border));
  background: color-mix(in srgb, var(--accent) 10%, var(--panel));
  color: var(--text);
  padding: 8px 10px;
  text-decoration: none;
}

.admin-relation-summary small {
  color: var(--muted);
}

.admin-validation-checklist .admin-quality-head > div {
  display: grid;
  gap: 2px;
}

.admin-quality-meter {
  height: 6px;
  margin: 10px 0;
  background: var(--panel);
  overflow: hidden;
}

.admin-quality-meter span {
  display: block;
  height: 100%;
  background: linear-gradient(90deg, #f43f5e, #22d3ee);
}

.admin-validation-checklist li a {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  color: inherit;
  text-decoration: none;
}

.admin-validation-checklist li a span {
  color: var(--accent);
  white-space: nowrap;
}

.admin-taxonomy-manager {
  display: grid;
  gap: 16px;
}

.admin-taxonomy-grid {
  display: grid;
  gap: 12px;
}

.admin-taxonomy-grid details {
  border: 1px solid var(--border);
  background: var(--panel-soft);
}

.admin-taxonomy-grid summary {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  padding: 14px;
  cursor: pointer;
}

.admin-taxonomy-grid details > div {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  padding: 0 14px 14px;
}

.admin-media-picker .global-media-picker-panel {
  border-color: color-mix(in srgb, var(--accent) 38%, var(--border));
}

@media (max-width: 1280px) {
  .admin-content-manager .admin-filter-bar { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .admin-builder-row { grid-template-columns: 24px repeat(3, minmax(0, 1fr)); }
  .admin-builder-row .wide { grid-column: 2 / -1; }
  .admin-builder-row-actions { grid-column: 2 / -1; }
}

@media (max-width: 760px) {
  .admin-content-manager .admin-filter-bar,
  .admin-taxonomy-grid details > div { grid-template-columns: 1fr; }
  .admin-bulk-actions { align-items: stretch; }
  .admin-bulk-actions > * { width: 100%; }
  .admin-pagination { align-items: flex-start; }
  .admin-builder-row,
  .admin-builder-row.is-stat { grid-template-columns: 22px minmax(0, 1fr); }
  .admin-builder-row label,
  .admin-builder-row .wide,
  .admin-builder-row-actions { grid-column: 2; }
  .admin-manager-create { width: 100%; }
  .admin-validation-checklist li a { display: grid; }
}
/* Generic per-game Tier List filter builder */
.admin-tier-filter-builder {
  display: grid;
  gap: 16px;
  padding: 16px;
  border: 1px solid var(--border);
  background: color-mix(in srgb, var(--surface) 88%, transparent);
}

.admin-tier-filter-scope {
  display: grid;
  gap: 10px;
}

.admin-tier-filter-scope h4 {
  margin: 0;
  color: var(--text);
}

.admin-tier-filter-options {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 10px;
}

.admin-tier-filter-option {
  display: grid;
  gap: 8px;
  min-width: 0;
  padding: 10px;
  border: 1px solid var(--border);
  background: var(--surface-2);
}

.admin-tier-filter-option .check-field {
  margin: 0;
}

.admin-tier-filter-icons {
  display: grid;
  gap: 6px;
}

@media (max-width: 1100px) {
  .admin-tier-filter-options { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 640px) {
  .admin-tier-filter-options { grid-template-columns: 1fr; }
}

/* Tier list command deck UX */
.tier-section-with-sidebar {
  grid-template-columns: minmax(210px, 248px) minmax(0, 1fr);
  gap: clamp(20px, 3vw, 36px);
}

.tier-filter-sidebar {
  top: 96px;
  gap: 22px;
  padding: 18px;
  border: 1px solid var(--line-strong);
  border-radius: var(--radius);
  background: color-mix(in srgb, var(--surface) 94%, transparent);
  box-shadow: 0 18px 42px rgba(0, 0, 0, 0.14);
}

.tier-filter-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
  padding-bottom: 16px;
  border-bottom: 1px solid var(--line);
}

.tier-filter-head > span {
  display: grid;
  gap: 4px;
  min-width: 0;
}

.tier-filter-head strong,
.tier-list-result-copy > small {
  color: #43dff5;
  font-size: 12px;
  font-weight: 950;
  letter-spacing: 0;
}

.tier-filter-active-summary {
  overflow: hidden;
  color: var(--muted);
  font-size: 12px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.tier-filter-clear {
  min-height: 30px;
  padding: 5px 9px;
  border: 1px solid rgba(244, 63, 94, 0.46);
  border-radius: var(--radius-sm);
  color: #ff6680;
  background: rgba(244, 63, 94, 0.08);
  font: inherit;
  font-size: 12px;
  font-weight: 850;
  cursor: pointer;
}

.tier-filter-clear:disabled {
  opacity: 0.38;
  cursor: default;
}

.tier-filter-group + .tier-filter-group {
  padding-top: 20px;
}

.tier-filter-options {
  gap: 8px;
}

.tier-filter-option {
  min-height: 38px;
  padding: 7px 8px;
  border: 1px solid transparent;
  border-radius: var(--radius-sm);
  color: var(--text);
  background: rgba(255, 255, 255, 0.025);
  font-size: 14px;
  transition: border-color 160ms ease, background-color 160ms ease;
}

.tier-filter-option:hover {
  border-color: var(--line-strong);
  background: rgba(255, 255, 255, 0.055);
}

.tier-filter-option input {
  width: 18px;
  height: 18px;
  flex-basis: 18px;
}

.tier-filter-option-label {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.tier-filter-option-count {
  display: grid;
  place-items: center;
  min-width: 25px;
  height: 22px;
  margin-left: auto;
  padding: 0 6px;
  border: 1px solid var(--line);
  border-radius: 999px;
  color: var(--muted);
  background: var(--surface-2);
  font-size: 11px;
  font-weight: 850;
}

.tier-list-panel {
  gap: 14px;
}

.tier-list-toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  min-height: 68px;
  padding: 14px 16px;
  border: 1px solid var(--line-strong);
  border-radius: var(--radius);
  background: linear-gradient(100deg, rgba(244, 63, 94, 0.07), transparent 38%), var(--surface);
}

.tier-list-result-copy {
  display: grid;
  gap: 5px;
}

.tier-list-result-copy > strong {
  color: var(--text);
  font-size: 15px;
}

.tier-list-result-copy [data-tier-visible-count] {
  color: #ff4b68;
  font-size: 20px;
}

.tier-list-toolbar-actions {
  display: flex;
  align-items: center;
  gap: 12px;
}

.tier-list-toolbar-actions time {
  color: var(--muted);
  font-size: 12px;
}

.tier-filter-toggle {
  display: none;
  align-items: center;
  gap: 8px;
  min-height: 38px;
  padding: 7px 10px;
  border: 1px solid var(--line-strong);
  border-radius: var(--radius-sm);
  color: var(--text);
  background: var(--surface-2);
  font: inherit;
  font-size: 13px;
  font-weight: 850;
  cursor: pointer;
}

.tier-filter-toggle b {
  display: grid;
  place-items: center;
  min-width: 22px;
  height: 22px;
  padding: 0 6px;
  border-radius: 999px;
  color: #fff;
  background: #f43f5e;
  font-size: 11px;
}

.tier-row {
  grid-template-columns: 92px minmax(0, 1fr);
  border-color: var(--line-strong);
  border-radius: var(--radius);
  background: var(--surface);
  box-shadow: 0 12px 30px rgba(0, 0, 0, 0.09);
  overflow: visible;
}

.tier-row[hidden] {
  display: none;
}

.tier-label {
  align-content: center;
  gap: 5px;
  min-height: 132px;
  padding: 12px 8px;
  border-radius: calc(var(--radius) - 1px) 0 0 calc(var(--radius) - 1px);
}

.tier-label strong {
  font-size: clamp(22px, 2vw, 29px);
}

.tier-label small {
  font-size: 9px;
  font-weight: 900;
  letter-spacing: 0;
  opacity: 0.68;
}

.tier-members {
  grid-template-columns: repeat(auto-fill, minmax(144px, 168px));
  gap: 12px;
  min-height: 132px;
  padding: 12px;
}

.tier-filter-empty {
  margin: 0;
  text-align: center;
}

html.theme-light .tier-filter-sidebar,
html.theme-light .tier-list-toolbar,
html.theme-light .tier-row {
  color: var(--text);
  background-color: #ffffff;
  box-shadow: 0 12px 30px rgba(15, 23, 42, 0.07);
}

html.theme-light .tier-filter-head strong,
html.theme-light .tier-list-result-copy > small {
  color: #0e7490;
  text-shadow: none;
}

html.theme-light .tier-filter-option {
  color: #1f2937;
  background: #f8fafc;
}

html.theme-light .tier-filter-option:hover {
  background: #eef2f6;
}

html.theme-light .tier-filter-option-count,
html.theme-light .tier-filter-toggle {
  color: #334155;
  background: #f8fafc;
}

html.theme-light .tier-list-result-copy > strong {
  color: #111827;
  text-shadow: none;
}

@media (max-width: 760px) {
  .tier-section-with-sidebar {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 12px;
  }

  .tier-section-with-sidebar .tier-list-panel {
    grid-row: 1;
  }

  .tier-filter-toggle {
    display: inline-flex;
  }

  .tier-filter-sidebar {
    display: none;
    position: relative;
    top: auto;
    grid-row: 2;
    width: 100%;
    padding: 14px;
    border: 1px solid var(--line-strong);
  }

  .tier-filters-open .tier-filter-sidebar {
    display: grid;
  }

  .tier-filter-options {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .tier-list-toolbar {
    align-items: flex-start;
    min-height: 0;
    padding: 12px;
  }

  .tier-list-toolbar-actions {
    align-items: flex-end;
    flex-direction: column;
  }

  .tier-list-toolbar-actions time {
    display: none;
  }

  .tier-row {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    overflow: visible;
  }

  .tier-label {
    grid-template-columns: auto 1fr;
    justify-content: start;
    justify-items: start;
    min-height: 50px;
    padding: 10px 12px;
    border-radius: calc(var(--radius) - 1px) calc(var(--radius) - 1px) 0 0;
  }

  .tier-label strong {
    font-size: 20px;
  }

  .tier-label small {
    align-self: center;
  }

  .tier-members {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    justify-content: stretch;
    min-height: 0;
    padding: 9px;
  }

  .tier-members .character-card {
    width: 100%;
    min-width: 0;
  }
}

@media (max-width: 430px) {
  .tier-filter-options {
    grid-template-columns: minmax(0, 1fr);
  }

  .tier-list-toolbar {
    gap: 10px;
  }

  .tier-list-result-copy > strong {
    font-size: 13px;
  }
}

/* Tier list toolbar grid placement */
.tier-section > .tier-list-toolbar {
  grid-column: 1 / -1;
}

@media (max-width: 760px) {
  .tier-section-with-sidebar .tier-list-panel,
  .tier-section-with-sidebar .tier-filter-sidebar {
    grid-row: auto;
  }
}
/* Google AdSense placements */
.adsense-home-section {
  padding-top: 0;
  padding-bottom: 8px;
}

.adsense-unit {
  position: relative;
  display: grid;
  place-items: center;
  width: 100%;
  min-width: 0;
  overflow: hidden;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background: var(--surface);
  color: var(--muted);
  isolation: isolate;
}

.adsense-unit .adsbygoogle {
  width: 100%;
  min-width: 0;
}

.adsense-label {
  position: absolute;
  top: 8px;
  right: 10px;
  z-index: 1;
  color: var(--muted-2);
  font-size: 10px;
  font-weight: 800;
  text-transform: uppercase;
  pointer-events: none;
}

.adsense-unit-home-display {
  min-height: 118px;
}

.adsense-unit-blog-infeed {
  grid-column: 1 / -1;
  min-height: 138px;
  margin-block: 4px;
}

.adsense-unit-article-inarticle {
  min-height: 180px;
  margin: 28px 0;
}

.adsense-unit-article-multiplex {
  min-height: 236px;
  margin-top: 34px;
}

.adsense-placement-section {
  padding-top: 20px;
  padding-bottom: 20px;
}

.adsense-placement-section:not(:has(.adsense-unit)) {
  display: none;
}

.adsense-unit-game-overview,
.adsense-unit-game-database,
.adsense-unit-tier-list,
.adsense-unit-category-infeed,
.adsense-unit-redeem-display {
  min-height: 128px;
}

.character-grid > .adsense-unit-game-database,
.collection-grid > .adsense-unit-game-database,
.game-category-grid > .adsense-unit-category-infeed,
.redeem-directory-grid > .adsense-unit-redeem-display,
.tier-list-panel > .adsense-unit-tier-list {
  grid-column: 1 / -1;
  margin-block: 8px;
}

.tier-list-panel > .adsense-unit-tier-list {
  min-height: 136px;
  margin-block: 12px;
}

.adsense-unit:has(.adsbygoogle[data-ad-status="unfilled"]),
.adsense-unit:has(.adsbygoogle[data-ad-status="unfill-optimized"]) {
  display: none;
}

.adsense-unit.is-preview {
  align-content: center;
  gap: 6px;
  min-height: 112px;
  padding: 20px;
  border-style: dashed;
  border-color: color-mix(in srgb, var(--accent) 40%, var(--line));
  background: color-mix(in srgb, var(--surface-2) 88%, var(--accent) 12%);
  text-align: center;
}

.adsense-unit.is-preview strong {
  color: var(--text);
  font-size: 17px;
}

.adsense-unit.is-preview small {
  max-width: 620px;
  color: var(--muted);
  line-height: 1.5;
}

.adsense-preview-kicker {
  color: var(--accent);
  font-size: 11px;
  font-weight: 900;
  text-transform: uppercase;
}

.adsense-admin-settings {
  gap: 16px;
}

.adsense-settings-status {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 16px;
  padding: 14px 16px;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background: var(--surface-2);
}

.adsense-settings-status > div {
  display: grid;
  gap: 4px;
}

.adsense-settings-status small,
.adsense-admin-note,
.adsense-admin-slot p,
.adsense-admin-slot label small {
  color: var(--muted);
  line-height: 1.5;
}

.adsense-settings-status > span {
  flex: 0 0 auto;
  padding: 6px 9px;
  border: 1px solid var(--line-strong);
  border-radius: 999px;
  color: var(--muted);
  font-size: 11px;
  font-weight: 900;
  text-transform: uppercase;
}

.adsense-settings-status.is-ready {
  border-color: rgba(52, 211, 153, 0.34);
}

.adsense-settings-status.is-ready > span {
  border-color: rgba(52, 211, 153, 0.34);
  color: var(--green);
  background: rgba(52, 211, 153, 0.08);
}

.adsense-toggle-grid {
  margin-bottom: 16px;
}

.adsense-admin-slot-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.adsense-admin-slot {
  display: grid;
  align-content: start;
  gap: 10px;
  min-width: 0;
  padding: 15px;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background: var(--surface-2);
}

.adsense-admin-slot > span {
  color: var(--accent);
  font-size: 11px;
  font-weight: 900;
  text-transform: uppercase;
}

.adsense-admin-slot h3,
.adsense-admin-slot p,
.adsense-admin-note {
  margin: 0;
}

.adsense-admin-slot label {
  min-width: 0;
}

@media (max-width: 760px) {
  .adsense-unit-home-display,
  .adsense-unit-blog-infeed,
  .adsense-unit-game-overview,
  .adsense-unit-game-database,
  .adsense-unit-tier-list,
  .adsense-unit-category-infeed,
  .adsense-unit-redeem-display {
    min-height: 100px;
  }

  .adsense-placement-section {
    padding-block: 14px;
  }

  .adsense-unit-article-inarticle {
    min-height: 150px;
    margin-block: 22px;
  }

  .adsense-unit-article-multiplex {
    min-height: 190px;
    margin-top: 26px;
  }

  .adsense-settings-status {
    align-items: flex-start;
    flex-direction: column;
  }

  .adsense-admin-slot-grid {
    grid-template-columns: 1fr;
  }
}

/* Admin workflow navigation, saved views, and readiness indicators. */
.admin-command-trigger,
.admin-saved-views a,
.admin-saved-views button,
.admin-custom-view {
  border: 1px solid var(--line-strong);
  background: var(--surface-2);
  color: var(--text);
  border-radius: var(--radius-sm);
}

.admin-command-trigger {
  min-height: 42px;
  display: inline-flex;
  align-items: center;
  gap: 12px;
  padding: 0 12px;
  cursor: pointer;
}

.admin-command-trigger kbd,
.admin-command-dialog kbd {
  border: 1px solid var(--line-strong);
  background: var(--surface-3);
  color: var(--muted);
  border-radius: 4px;
  padding: 3px 6px;
  font-size: 11px;
}

.admin-command-palette[hidden] { display: none !important; }
.admin-command-palette {
  position: fixed;
  inset: 0;
  z-index: 10000;
  display: grid;
  justify-items: center;
  align-items: start;
  padding: min(12vh, 110px) 16px 24px;
}

.admin-command-backdrop {
  position: absolute;
  inset: 0;
  border: 0;
  background: rgba(2, 5, 9, 0.76);
  backdrop-filter: blur(8px);
  cursor: default;
}

.admin-command-dialog {
  position: relative;
  width: min(720px, 100%);
  max-height: min(720px, 76vh);
  display: grid;
  grid-template-rows: auto auto minmax(0, 1fr) auto;
  overflow: hidden;
  border: 1px solid var(--line-strong);
  border-radius: var(--radius);
  background: var(--surface);
  box-shadow: var(--shadow);
}

.admin-command-dialog > header,
.admin-command-dialog > footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 14px 16px;
  border-bottom: 1px solid var(--line);
}

.admin-command-dialog > header div { display: grid; gap: 2px; }
.admin-command-dialog > header span,
.admin-command-results a > span {
  color: var(--accent);
  font-size: 11px;
  font-weight: 900;
  text-transform: uppercase;
}

.admin-command-search {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: center;
  gap: 12px;
  padding: 12px 16px;
  border-bottom: 1px solid var(--line);
  color: var(--muted);
}

.admin-command-search input {
  width: 100%;
  border: 0;
  outline: 0;
  background: transparent;
  color: var(--text);
  font-size: 17px;
}

.admin-command-results {
  overflow: auto;
  padding: 8px;
}

.admin-command-results a {
  min-height: 58px;
  display: grid;
  grid-template-columns: 82px minmax(150px, .8fr) minmax(180px, 1.2fr);
  align-items: center;
  gap: 12px;
  padding: 9px 10px;
  border: 1px solid transparent;
  border-radius: var(--radius-sm);
}

.admin-command-results a:hover,
.admin-command-results a.is-active {
  border-color: rgba(94, 234, 212, 0.42);
  background: rgba(94, 234, 212, 0.08);
}

.admin-command-results a small { color: var(--muted); }
.admin-command-results p { padding: 22px; color: var(--muted); text-align: center; }
.admin-command-dialog > footer { justify-content: flex-start; border: 0; border-top: 1px solid var(--line); color: var(--muted); font-size: 11px; }
body.admin-command-open { overflow: hidden; }

.admin-saved-views {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 7px;
  margin: 14px 0;
  padding: 10px;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background: rgba(9, 14, 21, 0.54);
}

.admin-saved-views > span {
  margin-right: 4px;
  color: var(--accent);
  font-size: 11px;
  font-weight: 900;
  text-transform: uppercase;
}

.admin-saved-views a,
.admin-saved-views button {
  min-height: 32px;
  display: inline-flex;
  align-items: center;
  padding: 0 10px;
  cursor: pointer;
}

.admin-saved-views > button { margin-left: auto; border-color: rgba(244, 63, 94, 0.42); }
.admin-saved-views [data-admin-custom-views] { display: contents; }
.admin-custom-view { display: inline-flex; align-items: stretch; overflow: hidden; }
.admin-custom-view a { border: 0; border-radius: 0; background: transparent; }
.admin-custom-view button { min-width: 30px; padding: 0; justify-content: center; border: 0; border-left: 1px solid var(--line); border-radius: 0; background: transparent; }
.admin-saved-views a:hover,
.admin-saved-views button:hover { border-color: var(--accent); color: var(--accent); }

.admin-completeness {
  width: 96px;
  display: grid;
  grid-template-columns: auto 1fr;
  align-items: center;
  gap: 4px 7px;
}

.admin-completeness > span {
  height: 5px;
  overflow: hidden;
  border-radius: 3px;
  background: var(--surface-3);
}

.admin-completeness > span i { display: block; height: 100%; background: var(--rose); }
.admin-completeness.is-ready > span i { background: var(--green); }
.admin-completeness.is-progress > span i { background: var(--amber); }
.admin-completeness small { grid-column: 1 / -1; color: var(--muted); font-size: 10px; }

.admin-save-state {
  display: block;
  margin-top: 3px;
  color: var(--muted);
  font-size: 11px;
}
.admin-save-state[data-state="saving"] { color: var(--amber); }
.admin-save-state[data-state="saved"] { color: var(--green); }
.admin-save-state[data-state="dirty"],
.admin-save-state[data-state="error"] { color: var(--rose); }

.admin-revision-panel .admin-section-head { grid-template-columns: auto minmax(0, 1fr) auto; }
.admin-revision-panel .admin-section-head > a,
.admin-revision-return { color: var(--accent); font-size: 12px; font-weight: 800; }
.admin-revision-timeline { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 8px; }
.admin-revision-timeline article { min-width: 0; display: grid; gap: 5px; padding: 10px; border: 1px solid var(--line); border-radius: var(--radius-sm); background: var(--surface); }
.admin-revision-timeline strong,
.admin-revision-timeline small { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.admin-revision-timeline small { color: var(--muted); }
.admin-revision-return { display: none; }

html.theme-light .admin-command-dialog,
html.theme-light .admin-command-trigger,
html.theme-light .admin-saved-views,
html.theme-light .admin-saved-views a,
html.theme-light .admin-saved-views button,
html.theme-light .admin-custom-view,
html.theme-light .admin-revision-timeline article {
  background: #ffffff;
  color: #132238;
  border-color: #d8e0ea;
}
html.theme-light .admin-command-search input { color: #132238; }
html.theme-light .admin-command-results a:hover,
html.theme-light .admin-command-results a.is-active { background: #eafaf7; }

@media (max-width: 900px) {
  .admin-command-trigger span { display: none; }
  .admin-command-results a { grid-template-columns: 70px minmax(0, 1fr); }
  .admin-command-results a small { grid-column: 2; }
  .admin-saved-views > button { margin-left: 0; }
  .admin-revision-timeline { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 620px) {
  .admin-command-palette { padding: 12px; align-items: start; }
  .admin-command-dialog { max-height: calc(100vh - 24px); }
  .admin-command-dialog > footer { display: none; }
  .admin-command-results a { grid-template-columns: 1fr; gap: 3px; }
  .admin-command-results a small { grid-column: auto; }
  .admin-saved-views { align-items: stretch; }
  .admin-saved-views > span { width: 100%; }
  .admin-revision-panel .admin-section-head { grid-template-columns: auto minmax(0, 1fr); }
  .admin-revision-panel .admin-section-head > a { grid-column: 2; }
  .admin-revision-timeline { grid-template-columns: 1fr; }
}
/* Admin Command Center V2 */
.admin-sidebar {
  overflow-y: auto;
  scrollbar-width: thin;
}

.admin-nav {
  gap: 18px;
}

.admin-nav-group {
  display: grid;
  gap: 4px;
}

.admin-nav-label {
  padding: 0 12px 6px;
  color: #6f7d90;
  font-size: 10px;
  font-weight: 800;
  text-transform: uppercase;
}

.admin-nav a {
  justify-content: flex-start;
}

.admin-nav a > span {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.admin-nav-count {
  min-width: 25px;
  margin-left: auto;
  padding: 3px 6px;
  border: 1px solid rgba(148, 163, 184, 0.18);
  border-radius: 999px;
  color: #8794a8;
  font-size: 10px;
  line-height: 1;
  text-align: center;
}

.admin-role-card {
  display: grid;
  gap: 3px;
  margin-bottom: 8px;
  padding: 11px 12px;
  border: 1px solid rgba(94, 234, 212, 0.17);
  border-radius: 6px;
  background: rgba(94, 234, 212, 0.045);
}

.admin-role-card span,
.admin-role-card strong {
  color: #9aabba;
  font-size: 10px;
}

.admin-role-card strong {
  color: var(--text);
  font-size: 12px;
}

.admin-density-toggle,
.admin-topbar-role {
  min-height: 38px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  padding: 0 11px;
  border: 1px solid var(--line);
  border-radius: 6px;
  color: var(--muted);
  background: rgba(255, 255, 255, 0.025);
  font: inherit;
  font-size: 12px;
}

.admin-density-toggle {
  cursor: pointer;
}

.admin-density-toggle:hover,
.admin-density-toggle[aria-pressed="true"] {
  color: var(--text);
  border-color: rgba(94, 234, 212, 0.34);
  background: rgba(94, 234, 212, 0.07);
}

.admin-topbar-role i {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #5eead4;
  box-shadow: 0 0 0 4px rgba(94, 234, 212, 0.08);
}

.admin-command-center-v2 {
  display: grid;
  gap: 18px;
  width: min(100%, 1600px);
  margin: 0 auto;
}

.admin-command-intro,
.admin-work-queue,
.admin-priority-inbox,
.admin-publishing-calendar,
.admin-content-health-panel,
.admin-operations-links {
  border: 1px solid var(--line);
  border-radius: 8px;
  background: rgba(13, 18, 25, 0.86);
  box-shadow: 0 18px 38px rgba(0, 0, 0, 0.13);
}

.admin-command-intro {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 24px;
  padding: 22px;
  background:
    linear-gradient(105deg, rgba(244, 63, 94, 0.075), transparent 37%),
    linear-gradient(285deg, rgba(34, 211, 238, 0.055), transparent 44%),
    rgba(13, 18, 25, 0.9);
}

.admin-command-intro h2,
.admin-command-card-head h3 {
  margin: 4px 0 0;
}

.admin-command-intro h2 {
  font-size: clamp(25px, 3vw, 36px);
}

.admin-command-intro p {
  max-width: 720px;
  margin: 8px 0 0;
  color: var(--muted);
}

.admin-command-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 8px;
}

.admin-command-metrics {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
}

.admin-command-metrics > a {
  min-height: 108px;
  display: grid;
  align-content: center;
  gap: 5px;
  padding: 16px;
  border: 1px solid var(--line);
  border-radius: 7px;
  color: var(--text);
  background: rgba(14, 20, 28, 0.72);
  transition: border-color 150ms ease, background 150ms ease, transform 150ms ease;
}

.admin-command-metrics > a:hover {
  transform: translateY(-2px);
  border-color: rgba(244, 63, 94, 0.42);
  background: rgba(244, 63, 94, 0.055);
}

.admin-command-metrics span,
.admin-command-metrics small {
  color: var(--muted);
  font-size: 11px;
}

.admin-command-metrics strong {
  font-size: 29px;
  line-height: 1;
}

.admin-command-primary-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(280px, 340px);
  gap: 14px;
  align-items: start;
}

.admin-work-queue,
.admin-priority-inbox,
.admin-publishing-calendar,
.admin-content-health-panel {
  min-width: 0;
  padding: 17px;
}

.admin-command-card-head {
  min-height: 47px;
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 14px;
  margin-bottom: 12px;
}

.admin-command-card-head h3 {
  font-size: 20px;
}

.admin-command-card-head > a,
.admin-command-card-head > strong {
  flex: 0 0 auto;
  color: #9fb0c4;
  font-size: 11px;
}

.admin-work-table {
  overflow: hidden;
  border: 1px solid var(--line);
  border-radius: 6px;
}

.admin-work-row {
  display: grid;
  grid-template-columns: minmax(220px, 1.6fr) minmax(80px, .55fr) minmax(126px, .72fr) minmax(90px, .55fr) 52px;
  align-items: center;
  gap: 12px;
  min-height: 64px;
  padding: 9px 11px;
  border-top: 1px solid rgba(148, 163, 184, 0.12);
}

.admin-work-row:first-child {
  border-top: 0;
}

.admin-work-head {
  min-height: 37px;
  color: #718198;
  background: rgba(255, 255, 255, 0.025);
  font-size: 10px;
  font-weight: 800;
  text-transform: uppercase;
}

.admin-work-identity {
  min-width: 0;
  display: flex;
  align-items: center;
  gap: 10px;
}

.admin-work-identity > i {
  width: 34px;
  height: 34px;
  flex: 0 0 34px;
  display: grid;
  place-items: center;
  border: 1px solid rgba(34, 211, 238, 0.2);
  border-radius: 6px;
  color: #67e8f9;
  background: rgba(34, 211, 238, 0.06);
  font-size: 11px;
  font-style: normal;
  font-weight: 900;
}

.admin-work-identity > span {
  min-width: 0;
  display: grid;
  gap: 3px;
}

.admin-work-identity small,
.admin-work-date {
  color: var(--muted);
  font-size: 10px;
}

.admin-work-identity strong {
  overflow: hidden;
  font-size: 13px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.admin-state-pill {
  width: max-content;
  max-width: 100%;
  padding: 4px 7px;
  border: 1px solid rgba(148, 163, 184, 0.23);
  border-radius: 999px;
  color: #a9b5c5;
  font-size: 9px;
  font-weight: 800;
  text-transform: uppercase;
}

.admin-state-pill.is-review,
.admin-state-pill.is-scheduled {
  color: #fde68a;
  border-color: rgba(245, 158, 11, 0.35);
  background: rgba(245, 158, 11, 0.06);
}

.admin-state-pill.is-published,
.admin-state-pill.is-active {
  color: #6ee7b7;
  border-color: rgba(16, 185, 129, 0.32);
  background: rgba(16, 185, 129, 0.06);
}

.admin-state-pill.is-expired {
  color: #fda4af;
  border-color: rgba(244, 63, 94, 0.3);
  background: rgba(244, 63, 94, 0.06);
}

.admin-readiness-meter {
  min-width: 0;
  display: flex;
  align-items: center;
  gap: 8px;
}

.admin-readiness-meter > span {
  height: 5px;
  flex: 1 1 auto;
  overflow: hidden;
  border-radius: 99px;
  background: rgba(148, 163, 184, 0.16);
}

.admin-readiness-meter i {
  height: 100%;
  display: block;
  border-radius: inherit;
  background: #f43f5e;
}

.admin-readiness-meter.is-progress i {
  background: #f59e0b;
}

.admin-readiness-meter.is-ready i {
  background: #10b981;
}

.admin-readiness-meter strong {
  width: 34px;
  color: #aab6c5;
  font-size: 10px;
  text-align: right;
}

.admin-row-action {
  min-height: 31px;
  display: inline-grid;
  place-items: center;
  border: 1px solid rgba(244, 63, 94, 0.3);
  border-radius: 5px;
  color: #fda4af;
  font-size: 10px;
  font-weight: 800;
}

.admin-row-action:hover {
  color: #fff;
  background: #e11d48;
}

.admin-priority-list,
.admin-calendar-list {
  display: grid;
  gap: 7px;
}

.admin-priority-list > a {
  min-width: 0;
  display: grid;
  gap: 4px;
  padding: 11px 12px;
  border: 1px solid rgba(148, 163, 184, 0.15);
  border-left: 3px solid #f43f5e;
  border-radius: 5px;
  color: var(--text);
  background: rgba(255, 255, 255, 0.018);
}

.admin-priority-list > a.is-review {
  border-left-color: #f59e0b;
}

.admin-priority-list > a.is-media {
  border-left-color: #22d3ee;
}

.admin-priority-list span,
.admin-priority-list small {
  color: var(--muted);
  font-size: 9px;
}

.admin-priority-list span {
  color: #fb7185;
  font-weight: 900;
  text-transform: uppercase;
}

.admin-priority-list strong {
  overflow: hidden;
  font-size: 12px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.admin-command-secondary-grid {
  display: grid;
  grid-template-columns: minmax(300px, .8fr) minmax(0, 1.2fr);
  gap: 14px;
  align-items: start;
}

.admin-calendar-list > a {
  min-width: 0;
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 8px;
  border: 1px solid rgba(148, 163, 184, 0.14);
  border-radius: 5px;
  color: var(--text);
}

.admin-calendar-list time {
  width: 42px;
  height: 42px;
  flex: 0 0 42px;
  display: grid;
  place-content: center;
  border-radius: 5px;
  color: #fda4af;
  background: rgba(244, 63, 94, 0.09);
  text-align: center;
}

.admin-calendar-list time strong {
  font-size: 16px;
  line-height: 1;
}

.admin-calendar-list time span,
.admin-calendar-list small {
  color: var(--muted);
  font-size: 9px;
  text-transform: uppercase;
}

.admin-calendar-list > a > span {
  min-width: 0;
  display: grid;
  gap: 3px;
}

.admin-calendar-list > a > span strong {
  overflow: hidden;
  font-size: 12px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.admin-health-grid {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 8px;
}

.admin-health-grid > a {
  min-width: 0;
  min-height: 100px;
  display: grid;
  align-content: center;
  gap: 4px;
  padding: 12px;
  border: 1px solid rgba(148, 163, 184, 0.14);
  border-top: 2px solid #22d3ee;
  border-radius: 5px;
  color: var(--text);
  background: rgba(255, 255, 255, 0.018);
}

.admin-health-grid > a.is-warning {
  border-top-color: #f43f5e;
}

.admin-health-grid > a.is-review {
  border-top-color: #f59e0b;
}

.admin-health-grid span,
.admin-health-grid small {
  overflow: hidden;
  color: var(--muted);
  font-size: 9px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.admin-health-grid strong {
  font-size: 24px;
}

.admin-operations-links {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 1px;
  overflow: hidden;
  padding: 1px;
  background: var(--line);
}

.admin-operations-links > a {
  min-width: 0;
  display: grid;
  gap: 4px;
  padding: 14px;
  color: var(--text);
  background: #0d1219;
}

.admin-operations-links strong {
  font-size: 12px;
}

.admin-operations-links span,
.admin-empty-state {
  color: var(--muted);
  font-size: 10px;
}

.admin-empty-state {
  margin: 0;
  padding: 16px;
}

.admin-compact .admin-main {
  padding-top: 16px;
}

.admin-compact .admin-topbar {
  margin-bottom: 14px;
  padding-bottom: 12px;
}

.admin-compact .admin-command-center-v2 {
  gap: 12px;
}

.admin-compact .admin-work-row {
  min-height: 50px;
  padding-block: 6px;
}

.admin-compact .admin-command-intro,
.admin-compact :is(.admin-work-queue, .admin-priority-inbox, .admin-publishing-calendar, .admin-content-health-panel) {
  padding: 13px;
}

html.theme-light .admin-nav-label {
  color: #7c8798;
}

html.theme-light .admin-role-card {
  border-color: #d7e0e8;
  background: #f3f7f8;
}

html.theme-light .admin-role-card strong {
  color: #111827;
}

html.theme-light :is(
  .admin-command-intro,
  .admin-work-queue,
  .admin-priority-inbox,
  .admin-publishing-calendar,
  .admin-content-health-panel,
  .admin-operations-links
) {
  color: #111827;
  border-color: #d7dee7;
  background: #ffffff;
  box-shadow: 0 14px 30px rgba(30, 41, 59, 0.07);
}

html.theme-light .admin-command-intro {
  background:
    linear-gradient(105deg, rgba(244, 63, 94, 0.055), transparent 38%),
    linear-gradient(285deg, rgba(8, 145, 178, 0.055), transparent 45%),
    #ffffff;
}

html.theme-light .admin-command-intro p,
html.theme-light :is(.admin-command-metrics span, .admin-command-metrics small, .admin-work-identity small, .admin-work-date, .admin-priority-list small, .admin-calendar-list small, .admin-health-grid span, .admin-health-grid small, .admin-operations-links span) {
  color: #64748b;
}

html.theme-light .admin-command-metrics > a,
html.theme-light :is(.admin-priority-list > a, .admin-calendar-list > a, .admin-health-grid > a) {
  color: #111827;
  border-color: #dbe2ea;
  background: #ffffff;
}

html.theme-light .admin-work-table {
  border-color: #dbe2ea;
}

html.theme-light .admin-work-row {
  color: #111827;
  border-color: #e5eaf0;
}

html.theme-light .admin-work-head {
  color: #64748b;
  background: #f7f9fb;
}

html.theme-light .admin-operations-links {
  background: #dbe2ea;
}

html.theme-light .admin-operations-links > a {
  color: #111827;
  background: #ffffff;
}

html.theme-light :is(.admin-density-toggle, .admin-topbar-role) {
  color: #475569;
  border-color: #d7dee7;
  background: #ffffff;
}

@media (max-width: 1180px) {
  .admin-command-primary-grid,
  .admin-command-secondary-grid {
    grid-template-columns: 1fr;
  }

  .admin-health-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .admin-priority-list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 900px) {
  .admin-topbar-role,
  .admin-density-toggle {
    display: none;
  }

  .admin-command-intro {
    align-items: flex-start;
    flex-direction: column;
  }

  .admin-command-actions {
    justify-content: flex-start;
  }

  .admin-command-metrics,
  .admin-operations-links {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .admin-work-head,
  .admin-work-date {
    display: none;
  }

  .admin-work-row:not(.admin-work-head) {
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 8px 12px;
    padding: 12px;
  }

  .admin-work-identity {
    grid-column: 1;
    grid-row: 1;
  }

  .admin-state-pill {
    grid-column: 2;
    grid-row: 1;
  }

  .admin-readiness-meter {
    grid-column: 1;
    grid-row: 2;
  }

  .admin-row-action {
    grid-column: 2;
    grid-row: 2;
    min-width: 52px;
  }
}

@media (max-width: 680px) {
  .admin-command-center-v2 {
    gap: 10px;
  }

  .admin-command-intro,
  .admin-work-queue,
  .admin-priority-inbox,
  .admin-publishing-calendar,
  .admin-content-health-panel {
    padding: 13px;
    border-radius: 6px;
  }

  .admin-command-metrics {
    grid-template-columns: 1fr 1fr;
    gap: 7px;
  }

  .admin-command-metrics > a {
    min-height: 91px;
    padding: 12px;
  }

  .admin-command-metrics strong {
    font-size: 24px;
  }

  .admin-priority-list {
    grid-template-columns: 1fr;
  }

  .admin-health-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .admin-operations-links {
    grid-template-columns: 1fr;
  }

  .admin-command-actions {
    width: 100%;
  }

  .admin-command-actions .button {
    flex: 1 1 120px;
  }
}

/* Admin unified workspace v3 */
.admin-workspace-v3 {
  --workspace-border: rgba(122, 149, 180, .28);
  --workspace-panel: rgba(11, 18, 28, .92);
  --workspace-soft: rgba(23, 34, 48, .82);
  position: relative;
  border: 1px solid var(--workspace-border);
  background: var(--workspace-panel);
}

.admin-workspace-hero {
  display: grid;
  grid-template-columns: minmax(0, 1.3fr) auto;
  gap: 22px;
  margin: 0 0 18px;
  padding: 24px;
  overflow: hidden;
  border-radius: 8px;
  isolation: isolate;
}

.admin-workspace-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background: linear-gradient(100deg, rgba(244, 63, 94, .12), transparent 34%, rgba(34, 211, 238, .08));
  pointer-events: none;
}

.admin-workspace-hero-copy { min-width: 0; }
.admin-workspace-hero-copy h2 { margin: 5px 0 7px; font-size: clamp(28px, 3vw, 42px); }
.admin-workspace-hero-copy > p { max-width: 760px; margin: 0; color: var(--muted); line-height: 1.55; }
.admin-workspace-primary { align-self: start; white-space: nowrap; }
.admin-workspace-search { display: grid; grid-template-columns: auto minmax(160px, 280px); align-items: center; gap: 10px; margin-top: 18px; color: var(--muted); font-size: 12px; font-weight: 800; text-transform: uppercase; }
.admin-workspace-search .input { min-height: 38px; }

.admin-module-metrics {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
}

.admin-module-metrics article {
  min-width: 0;
  padding: 14px 15px;
  border: 1px solid rgba(122, 149, 180, .24);
  border-top: 2px solid #22d3ee;
  border-radius: 6px;
  background: rgba(7, 12, 20, .72);
}
.admin-module-metrics article.is-rose { border-top-color: #f43f5e; }
.admin-module-metrics article.is-green { border-top-color: #34d399; }
.admin-module-metrics article.is-blue { border-top-color: #60a5fa; }
.admin-module-metrics strong, .admin-module-metrics span, .admin-module-metrics small { display: block; }
.admin-module-metrics strong { font-size: 25px; line-height: 1; }
.admin-module-metrics span { margin-top: 7px; font-weight: 800; }
.admin-module-metrics small { margin-top: 3px; color: var(--muted); }

.admin-operations-nav {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  margin: 0 0 12px;
  padding: 11px 12px 11px 16px;
  border-radius: 7px;
}
.admin-operations-nav > div:first-child span,
.admin-operations-nav > div:first-child small { display: block; }
.admin-operations-nav > div:first-child span { color: #67e8f9; font-weight: 900; text-transform: uppercase; }
.admin-publishing-nav > div:first-child span { color: #fb7185; }
.admin-operations-nav > div:first-child small { margin-top: 2px; color: var(--muted); }
.admin-operations-nav > div:last-child { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 6px; }
.admin-operations-nav a { padding: 9px 12px; border: 1px solid rgba(122, 149, 180, .22); border-radius: 5px; color: var(--muted); font-weight: 750; }
.admin-operations-nav a:hover, .admin-operations-nav a.active { border-color: rgba(244, 63, 94, .75); background: rgba(244, 63, 94, .12); color: var(--text); }

.admin-record-identity { display: grid; grid-template-columns: 44px minmax(120px, 1fr); align-items: center; gap: 10px; min-width: 190px; }
.admin-record-identity > span:last-child { min-width: 0; }
.admin-record-identity strong, .admin-record-identity small { display: block; }
.admin-record-identity strong { overflow: hidden; text-overflow: ellipsis; }
.admin-record-thumb { display: grid; place-items: center; width: 44px; height: 44px; overflow: hidden; border: 1px solid rgba(122, 149, 180, .3); border-radius: 6px; background: rgba(26, 38, 53, .92); color: #67e8f9; }
.admin-record-thumb img { width: 100%; height: 100%; object-fit: cover; }
.admin-record-thumb b { font-size: 18px; }

.admin-readiness-meter { display: grid; grid-template-columns: minmax(70px, 1fr) auto; align-items: center; gap: 8px; min-width: 118px; }
.admin-readiness-meter > span { height: 6px; overflow: hidden; border-radius: 999px; background: rgba(122, 149, 180, .18); }
.admin-readiness-meter i { display: block; height: 100%; border-radius: inherit; background: #f43f5e; }
.admin-readiness-meter.is-progress i { background: #fbbf24; }
.admin-readiness-meter.is-ready i { background: #34d399; }
.admin-readiness-meter strong { font-size: 12px; font-variant-numeric: tabular-nums; }
.admin-table tr[data-admin-record][hidden] { display: none; }

html.theme-light .admin-workspace-v3 {
  --workspace-border: rgba(42, 58, 79, .18);
  --workspace-panel: rgba(255, 255, 255, .94);
  --workspace-soft: #f5f7fa;
  box-shadow: 0 14px 34px rgba(22, 34, 51, .08);
}
html.theme-light .admin-workspace-hero::before { background: linear-gradient(100deg, rgba(244, 63, 94, .08), transparent 38%, rgba(8, 145, 178, .07)); }
html.theme-light .admin-workspace-hero-copy h2,
html.theme-light .admin-module-metrics strong,
html.theme-light .admin-module-metrics span { color: #111827; }
html.theme-light .admin-workspace-hero-copy > p,
html.theme-light .admin-module-metrics small,
html.theme-light .admin-workspace-search { color: #475569; }
html.theme-light .admin-module-metrics article { background: rgba(248, 250, 252, .96); border-color: rgba(42, 58, 79, .16); }
html.theme-light .admin-record-thumb { background: #edf2f7; border-color: rgba(42, 58, 79, .18); color: #0e7490; }
html.theme-light .admin-operations-nav a { color: #475569; }
html.theme-light .admin-operations-nav a:hover,
html.theme-light .admin-operations-nav a.active { color: #111827; background: #fff1f2; }

@media (max-width: 980px) {
  .admin-module-metrics { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .admin-operations-nav { align-items: flex-start; flex-direction: column; }
  .admin-operations-nav > div:last-child { justify-content: flex-start; }
}

@media (max-width: 760px) {
  .admin-workspace-hero { grid-template-columns: 1fr; padding: 18px; }
  .admin-workspace-primary { width: 100%; text-align: center; }
  .admin-workspace-search { grid-template-columns: 1fr; }
  .admin-workspace-search .input { width: 100%; }
  .admin-module-metrics { grid-template-columns: 1fr 1fr; gap: 8px; }
  .admin-module-metrics article { padding: 12px; }
  .admin-module-metrics strong { font-size: 21px; }
  .admin-operations-nav > div:last-child { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); width: 100%; }
  .admin-operations-nav a { text-align: center; }
}

@media (max-width: 440px) {
  .admin-module-metrics { grid-template-columns: 1fr; }
  .admin-operations-nav > div:last-child { grid-template-columns: 1fr; }
}
/* Analytics command dashboard v2 */
.analytics-command-center {
  --analytics-panel: rgba(9, 14, 22, .94);
  --analytics-soft: rgba(18, 27, 39, .88);
  --analytics-border: rgba(115, 141, 173, .24);
  --analytics-red: #ff3f5f;
  --analytics-cyan: #22d3ee;
  display: grid;
  gap: 14px;
  margin-bottom: 24px;
  padding: 16px;
  border: 1px solid var(--analytics-border);
  border-radius: 8px;
  background: #090d12;
  box-shadow: 0 18px 42px rgba(0, 0, 0, .22);
}

.analytics-command-toolbar {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: end;
  gap: 24px;
  padding: 4px 2px 14px;
  border-bottom: 1px solid var(--analytics-border);
}

.analytics-command-toolbar h1 {
  margin: 3px 0 4px;
  font-size: clamp(30px, 3.2vw, 44px);
  line-height: 1;
  letter-spacing: 0;
}

.analytics-command-toolbar p {
  max-width: 720px;
  margin: 0;
  color: var(--muted);
}

.analytics-command-actions,
.analytics-command-actions nav {
  display: flex;
  align-items: center;
  gap: 6px;
}

.analytics-command-actions nav {
  padding: 4px;
  border: 1px solid var(--analytics-border);
  border-radius: 6px;
  background: rgba(5, 9, 15, .75);
}

.analytics-command-actions nav a {
  min-width: 48px;
  padding: 8px 10px;
  border-radius: 4px;
  color: var(--muted);
  font-size: 12px;
  font-weight: 850;
  text-align: center;
  white-space: nowrap;
}

.analytics-command-actions nav a:hover,
.analytics-command-actions nav a.is-active {
  background: var(--analytics-red);
  color: #fff;
}

.analytics-command-kpis {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 10px;
}

.analytics-command-kpi {
  position: relative;
  min-width: 0;
  min-height: 132px;
  overflow: hidden;
  padding: 14px 14px 38px;
  border: 1px solid var(--analytics-border);
  border-top: 2px solid var(--analytics-red);
  border-radius: 7px;
  background: var(--analytics-soft);
}

.analytics-command-kpi.is-live { border-top-color: #34d399; }
.analytics-command-kpi.is-cyan { border-top-color: var(--analytics-cyan); }
.analytics-command-kpi.is-gold { border-top-color: #fbbf24; }
.analytics-command-kpi-head { display: flex; align-items: center; justify-content: space-between; gap: 8px; }
.analytics-command-kpi-head > span { color: #b8c5d6; font-size: 12px; font-weight: 900; text-transform: uppercase; }
.analytics-command-kpi > strong { display: block; margin-top: 12px; font-size: clamp(26px, 2.4vw, 36px); line-height: 1; font-variant-numeric: tabular-nums; }
.analytics-command-kpi > small { display: block; margin-top: 6px; color: var(--muted); }
.analytics-sparkline { position: absolute; right: 8px; bottom: 6px; left: 8px; width: calc(100% - 16px); height: 28px; }
.analytics-sparkline polyline { fill: none; stroke: var(--analytics-red); stroke-width: 2.2; vector-effect: non-scaling-stroke; }
.analytics-command-kpi.is-live .analytics-sparkline polyline { stroke: #34d399; }
.analytics-command-kpi.is-cyan .analytics-sparkline polyline { stroke: var(--analytics-cyan); }
.analytics-command-kpi.is-gold .analytics-sparkline polyline { stroke: #fbbf24; }

.analytics-traffic-live-grid {
  display: grid;
  grid-template-columns: minmax(0, 2.1fr) minmax(280px, .9fr);
  gap: 12px;
}

.analytics-comparison-chart,
.analytics-live-command,
.analytics-command-panel,
.analytics-content-performance,
.analytics-insights-panel {
  min-width: 0;
  border: 1px solid var(--analytics-border);
  border-radius: 8px;
  background: var(--analytics-panel);
}

.analytics-comparison-chart,
.analytics-live-command,
.analytics-command-panel,
.analytics-content-performance,
.analytics-insights-panel { padding: 15px; }

.analytics-command-panel-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 14px;
  margin-bottom: 12px;
}

.analytics-command-panel-head h3 {
  margin: 3px 0 0;
  font-size: 19px;
  line-height: 1.15;
}

.analytics-chart-legend { display: flex; align-items: center; gap: 14px; color: var(--muted); font-size: 12px; font-weight: 800; }
.analytics-chart-legend span::before { content: ""; display: inline-block; width: 18px; height: 2px; margin-right: 6px; vertical-align: middle; background: var(--analytics-red); }
.analytics-chart-legend .is-previous::before { background: var(--analytics-cyan); }
.analytics-command-chart { display: block; width: 100%; height: auto; min-height: 250px; }
.analytics-command-chart line { stroke: rgba(123, 148, 178, .15); stroke-width: 1; }
.analytics-command-chart polyline { fill: none; stroke-width: 2.5; vector-effect: non-scaling-stroke; }
.analytics-command-chart polyline.is-current { stroke: var(--analytics-red); }
.analytics-command-chart polyline.is-previous { stroke: var(--analytics-cyan); stroke-dasharray: 5 5; opacity: .8; }
.analytics-command-chart text { fill: #8393a7; font-size: 11px; }

.analytics-live-command { display: flex; flex-direction: column; }
.analytics-live-total { display: grid; place-items: center; min-height: 106px; margin-bottom: 12px; border: 1px solid rgba(52, 211, 153, .28); border-radius: 7px; background: rgba(16, 82, 65, .14); }
.analytics-live-total strong { font-size: 42px; line-height: 1; color: #6ee7b7; }
.analytics-live-total span { color: var(--muted); font-size: 12px; }
.analytics-live-section + .analytics-live-section { margin-top: 14px; padding-top: 12px; border-top: 1px solid var(--analytics-border); }
.analytics-live-section > b { display: block; margin-bottom: 8px; color: #b9c7d8; font-size: 11px; text-transform: uppercase; }
.analytics-live-row { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 10px; padding: 8px 0; border-bottom: 1px solid rgba(115, 141, 173, .12); }
.analytics-live-row span { min-width: 0; overflow: hidden; font-weight: 750; text-overflow: ellipsis; white-space: nowrap; }
.analytics-live-row small { display: block; overflow: hidden; color: var(--muted); font-weight: 500; text-overflow: ellipsis; }
.analytics-live-row strong { color: #6ee7b7; font-variant-numeric: tabular-nums; }

.analytics-breakdown-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}

.analytics-command-panel .analytics-donut-card { padding: 0; border: 0; background: transparent; }
.analytics-command-panel .analytics-donut-card > strong { display: none; }
.analytics-command-split { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.analytics-command-panel .analytics-count-list { margin: 0; }

.analytics-content-insights-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 300px;
  gap: 12px;
  align-items: start;
}

.analytics-performance-search { display: grid; grid-template-columns: auto minmax(160px, 260px); align-items: center; gap: 8px; color: var(--muted); font-size: 11px; font-weight: 850; text-transform: uppercase; }
.analytics-performance-search input { width: 100%; min-height: 36px; padding: 8px 10px; border: 1px solid var(--analytics-border); border-radius: 5px; background: #080d14; color: var(--text); }
.analytics-performance-tabs { display: flex; gap: 6px; overflow-x: auto; margin-bottom: 12px; padding-bottom: 3px; scrollbar-width: thin; }
.analytics-performance-tabs button { flex: 0 0 auto; padding: 8px 11px; border: 1px solid var(--analytics-border); border-radius: 5px; background: transparent; color: var(--muted); font: inherit; font-size: 12px; font-weight: 800; cursor: pointer; }
.analytics-performance-tabs button:hover,
.analytics-performance-tabs button.is-active { border-color: var(--analytics-red); background: rgba(255, 63, 95, .13); color: #fff; }
.analytics-performance-table-wrap { overflow-x: auto; border: 1px solid var(--analytics-border); border-radius: 6px; }
.analytics-performance-table { width: 100%; min-width: 820px; border-collapse: collapse; }
.analytics-performance-table th,
.analytics-performance-table td { padding: 11px 10px; border-bottom: 1px solid rgba(115, 141, 173, .15); text-align: left; vertical-align: middle; }
.analytics-performance-table th { color: #91a2b8; font-size: 10px; text-transform: uppercase; }
.analytics-performance-table td { font-size: 13px; font-variant-numeric: tabular-nums; }
.analytics-performance-table tbody tr:last-child td { border-bottom: 0; }
.analytics-performance-table tbody tr:hover { background: rgba(255, 63, 95, .045); }
.analytics-performance-table td:first-child { min-width: 230px; }
.analytics-performance-table td:first-child strong,
.analytics-performance-table td:first-child small { display: block; }
.analytics-performance-table td:first-child small { max-width: 320px; overflow: hidden; margin-top: 3px; color: var(--muted); text-overflow: ellipsis; white-space: nowrap; }
.analytics-performance-table .button { min-height: 32px; padding: 7px 9px; }
.analytics-type-chip { display: inline-flex; padding: 4px 7px; border: 1px solid rgba(34, 211, 238, .35); border-radius: 4px; color: #67e8f9; font-size: 10px; font-weight: 900; text-transform: uppercase; }
.analytics-performance-empty { margin: 0; padding: 24px; color: var(--muted); text-align: center; }
.analytics-performance-footer { display: flex; justify-content: space-between; gap: 16px; margin-top: 10px; color: var(--muted); font-size: 11px; }

.analytics-insights-panel { position: sticky; top: 88px; }
.analytics-insight-command-list { display: grid; gap: 9px; }
.analytics-insight-command-list article { position: relative; padding: 12px 12px 12px 15px; border: 1px solid var(--analytics-border); border-radius: 6px; background: rgba(18, 27, 39, .75); }
.analytics-insight-command-list article::before { content: ""; position: absolute; top: 12px; bottom: 12px; left: 0; width: 3px; border-radius: 0 3px 3px 0; background: var(--analytics-cyan); }
.analytics-insight-command-list article.is-attention::before { background: #fbbf24; }
.analytics-insight-command-list article.is-opportunity::before { background: var(--analytics-red); }
.analytics-insight-command-list span,
.analytics-insight-command-list strong { display: block; }
.analytics-insight-command-list span { color: #8fa2b9; font-size: 10px; font-weight: 900; text-transform: uppercase; }
.analytics-insight-command-list strong { margin-top: 5px; line-height: 1.25; }
.analytics-insight-command-list p { margin: 6px 0 0; color: var(--muted); font-size: 12px; line-height: 1.45; }

.analytics-deep-reports-head { display: flex; align-items: end; justify-content: space-between; gap: 20px; margin: 30px 0 12px; }
.analytics-deep-reports-head h2 { margin: 3px 0 0; font-size: 25px; }
.analytics-deep-reports-head p { max-width: 420px; margin: 0; color: var(--muted); text-align: right; }

body.theme-light .analytics-command-center {
  --analytics-panel: #ffffff;
  --analytics-soft: #f7f9fc;
  --analytics-border: rgba(37, 55, 77, .16);
  background: #eef2f7;
  box-shadow: 0 18px 42px rgba(27, 39, 56, .09);
}
body.theme-light .analytics-command-actions nav,
body.theme-light .analytics-performance-search input { background: #fff; color: #111827; }
body.theme-light .analytics-command-kpi-head > span,
body.theme-light .analytics-command-panel-head h3,
body.theme-light .analytics-live-section > b,
body.theme-light .analytics-performance-table td,
body.theme-light .analytics-insight-command-list strong { color: #172033; }
body.theme-light .analytics-command-toolbar p,
body.theme-light .analytics-command-kpi > small,
body.theme-light .analytics-live-row small,
body.theme-light .analytics-insight-command-list p,
body.theme-light .analytics-performance-footer { color: #5b6b80; }
body.theme-light .analytics-command-actions nav a { color: #536278; }
body.theme-light .analytics-command-actions nav a:hover,
body.theme-light .analytics-command-actions nav a.is-active { color: #fff; }
body.theme-light .analytics-command-chart text { fill: #64748b; }
body.theme-light .analytics-command-chart line { stroke: rgba(55, 73, 96, .14); }
body.theme-light .analytics-live-total { background: #effcf7; }
body.theme-light .analytics-insight-command-list article { background: #f8fafc; }
body.theme-light .analytics-performance-tabs button { color: #536278; }
body.theme-light .analytics-performance-tabs button:hover,
body.theme-light .analytics-performance-tabs button.is-active { color: #be123c; }
body.theme-light .analytics-performance-table tbody tr:hover { background: #fff5f7; }

@media (max-width: 1240px) {
  .analytics-command-kpis { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .analytics-content-insights-grid { grid-template-columns: minmax(0, 1fr) 270px; }
}

@media (max-width: 1040px) {
  .analytics-command-toolbar { grid-template-columns: 1fr; align-items: start; }
  .analytics-command-actions { flex-wrap: wrap; }
  .analytics-traffic-live-grid,
  .analytics-content-insights-grid { grid-template-columns: 1fr; }
  .analytics-breakdown-grid { grid-template-columns: 1fr 1fr; }
  .analytics-insights-panel { position: static; }
}

@media (max-width: 760px) {
  .analytics-command-center { padding: 11px; }
  .analytics-command-toolbar { gap: 14px; }
  .analytics-command-actions { align-items: stretch; }
  .analytics-command-actions nav { width: 100%; overflow-x: auto; }
  .analytics-command-actions nav a { flex: 1 0 58px; }
  .analytics-command-kpis { grid-template-columns: 1fr 1fr; }
  .analytics-breakdown-grid { grid-template-columns: 1fr; }
  .analytics-command-split { grid-template-columns: 1fr; }
  .analytics-command-panel-head { flex-direction: column; }
  .analytics-performance-search { grid-template-columns: 1fr; width: 100%; }
  .analytics-performance-search input { min-width: 0; }
  .analytics-command-chart { min-height: 190px; }
  .analytics-deep-reports-head { align-items: flex-start; flex-direction: column; }
  .analytics-deep-reports-head p { text-align: left; }
}

@media (max-width: 480px) {
  .analytics-command-kpis { grid-template-columns: 1fr; }
  .analytics-command-actions > .button,
  .analytics-command-actions > .analytics-live-pill { flex: 1; justify-content: center; text-align: center; }
  .analytics-comparison-chart,
  .analytics-live-command,
  .analytics-command-panel,
  .analytics-content-performance,
  .analytics-insights-panel { padding: 12px; }
  .analytics-performance-footer { flex-direction: column; gap: 3px; }
}

/* Analytics Deep Reports v2 */
.analytics-deep-reports-head {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 28px;
  margin: 34px 0 14px;
  padding: 0 2px;
}

.analytics-deep-reports-head > div:first-child {
  max-width: 700px;
}

.analytics-deep-reports-head h2 {
  margin: 4px 0 0;
  font-size: clamp(24px, 2.4vw, 34px);
  line-height: 1.05;
}

.analytics-deep-reports-head p {
  max-width: 640px;
  margin: 9px 0 0;
  color: var(--muted);
  line-height: 1.55;
  text-align: left;
}

.analytics-deep-reports-meta {
  display: flex;
  flex: 0 0 auto;
  gap: 8px;
}

.analytics-deep-reports-meta span {
  display: grid;
  gap: 2px;
  min-width: 116px;
  padding: 9px 11px;
  border: 1px solid rgba(127, 151, 181, 0.22);
  border-radius: 6px;
  background: rgba(13, 21, 32, 0.72);
  color: var(--muted);
  font-size: 10px;
  font-weight: 800;
  text-transform: uppercase;
}

.analytics-deep-reports-meta b {
  color: var(--text);
  font-size: 12px;
  text-transform: none;
}

.analytics-report-shell {
  --report-bg: #080d14;
  --report-surface: #0d1520;
  --report-surface-2: #111b27;
  --report-border: rgba(116, 143, 176, 0.22);
  --report-copy: #f4f7fb;
  --report-muted: #8fa1b7;
  display: grid;
  grid-template-columns: 248px minmax(0, 1fr);
  min-width: 0;
  overflow: clip;
  border: 1px solid var(--report-border);
  border-radius: 8px;
  background: var(--report-bg);
  box-shadow: 0 18px 46px rgba(0, 0, 0, 0.24);
}

.analytics-report-navigator {
  min-width: 0;
  padding: 16px;
  border-right: 1px solid var(--report-border);
  background:
    linear-gradient(180deg, rgba(244, 63, 94, 0.08), transparent 180px),
    #0a111a;
}

.analytics-report-navigator-head {
  padding: 3px 5px 15px;
  border-bottom: 1px solid rgba(116, 143, 176, 0.16);
}

.analytics-report-navigator-head strong,
.analytics-report-navigator-head p {
  display: block;
}

.analytics-report-navigator-head strong {
  margin-top: 5px;
  color: var(--report-copy);
  font-size: 16px;
}

.analytics-report-navigator-head p {
  margin: 5px 0 0;
  color: var(--report-muted);
  font-size: 11px;
  line-height: 1.45;
}

.analytics-report-nav-list {
  display: grid;
  gap: 7px;
  margin-top: 13px;
}

.analytics-report-nav-card {
  position: relative;
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr);
  gap: 9px;
  align-items: center;
  width: 100%;
  min-width: 0;
  min-height: 72px;
  padding: 10px;
  overflow: hidden;
  border: 1px solid rgba(116, 143, 176, 0.18);
  border-radius: 6px;
  background: rgba(17, 27, 39, 0.72);
  color: var(--report-copy);
  font: inherit;
  text-align: left;
  cursor: pointer;
  transition: border-color 160ms ease, background 160ms ease, transform 160ms ease;
}

.analytics-report-nav-card::after {
  content: "";
  position: absolute;
  top: 10px;
  bottom: 10px;
  left: 0;
  width: 3px;
  border-radius: 0 3px 3px 0;
  background: transparent;
}

.analytics-report-nav-card:hover,
.analytics-report-nav-card:focus-visible {
  border-color: rgba(244, 63, 94, 0.48);
  background: rgba(244, 63, 94, 0.08);
  outline: none;
  transform: translateX(2px);
}

.analytics-report-nav-card.is-active {
  border-color: rgba(244, 63, 94, 0.62);
  background: linear-gradient(90deg, rgba(244, 63, 94, 0.16), rgba(17, 27, 39, 0.9));
  box-shadow: inset 0 0 24px rgba(244, 63, 94, 0.04);
}

.analytics-report-nav-card.is-active::after {
  background: #f43f5e;
}

.analytics-report-nav-index {
  display: grid;
  place-items: center;
  width: 34px;
  height: 34px;
  border: 1px solid rgba(244, 63, 94, 0.42);
  border-radius: 5px;
  background: rgba(244, 63, 94, 0.08);
  color: #ff6b82;
  font-size: 11px;
  font-weight: 900;
}

.analytics-report-nav-copy,
.analytics-report-nav-copy strong,
.analytics-report-nav-copy small,
.analytics-report-nav-card > b {
  display: block;
  min-width: 0;
}

.analytics-report-nav-copy strong {
  overflow: hidden;
  color: var(--report-copy);
  font-size: 13px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.analytics-report-nav-copy small,
.analytics-report-nav-card > b {
  color: var(--report-muted);
  font-size: 10px;
}

.analytics-report-nav-copy small {
  margin-top: 2px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.analytics-report-nav-card > b {
  grid-column: 2;
  margin-top: -4px;
  font-weight: 800;
  text-transform: uppercase;
}

.analytics-report-stage {
  min-width: 0;
  padding: 18px;
  background:
    linear-gradient(135deg, rgba(34, 211, 238, 0.025), transparent 34%),
    var(--report-bg);
}

.analytics-report-stage .analytics-tab-panel {
  min-width: 0;
}

.analytics-report-stage .analytics-tab-panel:focus {
  outline: none;
}

.analytics-report-context {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 24px;
  padding: 16px 17px;
  border: 1px solid var(--report-border);
  border-radius: 6px;
  background:
    linear-gradient(110deg, rgba(244, 63, 94, 0.08), transparent 38%),
    var(--report-surface);
}

.analytics-report-context-copy {
  max-width: 730px;
}

.analytics-report-context h2 {
  margin: 4px 0 0;
  color: var(--report-copy);
  font-size: clamp(21px, 2vw, 28px);
  line-height: 1.12;
}

.analytics-report-context p {
  margin: 8px 0 0;
  color: var(--report-muted);
  font-size: 13px;
  line-height: 1.55;
}

.analytics-report-status {
  display: inline-flex;
  flex: 0 0 auto;
  align-items: center;
  gap: 7px;
  min-height: 32px;
  padding: 7px 10px;
  border: 1px solid rgba(52, 211, 153, 0.28);
  border-radius: 5px;
  background: rgba(52, 211, 153, 0.07);
  color: #8df0c7;
  font-size: 10px;
  font-weight: 900;
  text-transform: uppercase;
}

.analytics-report-status i {
  width: 7px;
  height: 7px;
  border-radius: 999px;
  background: #34d399;
  box-shadow: 0 0 0 4px rgba(52, 211, 153, 0.1);
}

.analytics-report-summary {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
  margin-top: 9px;
}

.analytics-report-metric {
  position: relative;
  min-width: 0;
  min-height: 96px;
  padding: 13px 13px 12px 16px;
  overflow: hidden;
  border: 1px solid var(--report-border);
  border-radius: 6px;
  background: var(--report-surface-2);
}

.analytics-report-metric::before {
  content: "";
  position: absolute;
  top: 12px;
  bottom: 12px;
  left: 0;
  width: 3px;
  border-radius: 0 3px 3px 0;
  background: #f43f5e;
}

.analytics-report-metric.is-cyan::before { background: #22d3ee; }
.analytics-report-metric.is-violet::before { background: #a78bfa; }
.analytics-report-metric.is-gold::before { background: #fbbf24; }

.analytics-report-metric span,
.analytics-report-metric strong,
.analytics-report-metric small {
  display: block;
  min-width: 0;
}

.analytics-report-metric span {
  color: var(--report-muted);
  font-size: 10px;
  font-weight: 900;
  text-transform: uppercase;
}

.analytics-report-metric strong {
  overflow: hidden;
  margin-top: 7px;
  color: var(--report-copy);
  font-size: clamp(17px, 1.7vw, 23px);
  line-height: 1.05;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.analytics-report-metric small {
  margin-top: 6px;
  overflow: hidden;
  color: var(--report-muted);
  font-size: 10px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.analytics-report-body {
  margin-top: 10px;
}

.analytics-report-body .analytics-panel {
  border-color: var(--report-border);
  background: var(--report-surface);
  box-shadow: none;
}

.analytics-report-body .analytics-panel .panel-head {
  padding-bottom: 12px;
  border-bottom: 1px solid rgba(116, 143, 176, 0.14);
}

.analytics-report-body .analytics-panel .panel-head h2 {
  color: var(--report-copy);
  font-size: 16px;
}

body.theme-light .analytics-deep-reports-meta span {
  border-color: rgba(37, 55, 77, 0.16);
  background: #fff;
  color: #66758a;
}

body.theme-light .analytics-deep-reports-meta b {
  color: #172033;
}

body.theme-light .analytics-report-shell {
  --report-bg: #f4f7fb;
  --report-surface: #ffffff;
  --report-surface-2: #f8fafc;
  --report-border: rgba(37, 55, 77, 0.16);
  --report-copy: #172033;
  --report-muted: #617086;
  box-shadow: 0 18px 42px rgba(27, 39, 56, 0.09);
}

body.theme-light .analytics-report-navigator {
  background: linear-gradient(180deg, rgba(244, 63, 94, 0.06), transparent 180px), #fff;
}

body.theme-light .analytics-report-nav-card {
  background: #f8fafc;
}

body.theme-light .analytics-report-nav-card:hover,
body.theme-light .analytics-report-nav-card:focus-visible,
body.theme-light .analytics-report-nav-card.is-active {
  background: linear-gradient(90deg, rgba(244, 63, 94, 0.1), #fff);
}

body.theme-light .analytics-report-stage {
  background: linear-gradient(135deg, rgba(34, 211, 238, 0.035), transparent 34%), var(--report-bg);
}

body.theme-light .analytics-report-status {
  background: #ecfdf5;
  color: #047857;
}

body.theme-light .analytics-report-body .analytics-bar-row,
body.theme-light .analytics-report-body .analytics-donut-legend span {
  background: #f8fafc;
}

body.theme-light .analytics-report-body .analytics-donut-visual strong,
body.theme-light .analytics-report-body .analytics-bar-row strong,
body.theme-light .analytics-report-body .admin-table td strong {
  color: #172033;
}

@media (max-width: 1240px) {
  .analytics-report-shell { grid-template-columns: 224px minmax(0, 1fr); }
  .analytics-report-summary { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 1040px) {
  .analytics-report-shell { grid-template-columns: 1fr; }
  .analytics-report-navigator { border-right: 0; border-bottom: 1px solid var(--report-border); }
  .analytics-report-navigator-head { display: none; }
  .analytics-report-nav-list {
    grid-auto-columns: minmax(170px, 1fr);
    grid-auto-flow: column;
    overflow-x: auto;
    margin-top: 0;
    padding-bottom: 4px;
    scrollbar-width: thin;
  }
  .analytics-report-nav-card { min-height: 68px; }
  .analytics-report-nav-card:hover,
  .analytics-report-nav-card:focus-visible { transform: translateY(-1px); }
}

@media (max-width: 760px) {
  .analytics-deep-reports-head { align-items: flex-start; flex-direction: column; gap: 14px; }
  .analytics-deep-reports-meta { width: 100%; }
  .analytics-deep-reports-meta span { flex: 1; min-width: 0; }
  .analytics-report-stage { padding: 12px; }
  .analytics-report-context { align-items: flex-start; flex-direction: column; gap: 12px; }
  .analytics-report-summary { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .analytics-report-metric { min-height: 88px; }
}

@media (max-width: 560px) {
  .analytics-report-navigator { padding: 10px; }
  .analytics-report-nav-list { grid-auto-flow: row; grid-template-columns: 1fr; overflow: visible; }
  .analytics-report-nav-card {
    grid-template-columns: 32px minmax(0, 1fr) auto;
    min-height: 56px;
    padding: 8px 10px;
  }
  .analytics-report-nav-index { width: 32px; height: 32px; }
  .analytics-report-nav-card > b { grid-column: 3; grid-row: 1; margin: 0; white-space: nowrap; }
  .analytics-report-summary { grid-template-columns: 1fr; }
  .analytics-report-metric { min-height: 80px; }
  .analytics-report-stage { padding: 9px; }
  .analytics-report-context { padding: 13px; }
}


/* Admin Taxonomy Workspace v2 */
.admin-taxonomy-workspace {
  --taxonomy-accent: #48e7dd;
  --taxonomy-danger: #ff4b68;
  --taxonomy-warning: #f7c760;
  display: grid;
  gap: 14px;
  color: var(--text);
}

.admin-taxonomy-workspace [hidden] {
  display: none !important;
}

.admin-taxonomy-command,
.admin-taxonomy-kpis,
.admin-taxonomy-statusbar,
.admin-taxonomy-navigator,
.admin-taxonomy-editor,
.admin-taxonomy-inspector,
.admin-taxonomy-health,
.admin-taxonomy-advanced,
.admin-taxonomy-footer {
  border: 1px solid var(--border);
  border-radius: 7px;
  background: var(--panel);
  box-shadow: 0 14px 30px rgba(0, 0, 0, 0.16);
}

.admin-taxonomy-command {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 28px;
  padding: 22px 24px;
  background:
    linear-gradient(100deg, rgba(255, 75, 104, 0.09), transparent 34%),
    linear-gradient(270deg, rgba(72, 231, 221, 0.06), transparent 38%),
    var(--panel);
}

.admin-taxonomy-command h1 {
  margin: 5px 0 6px;
  font-size: clamp(28px, 3vw, 42px);
  line-height: 1;
}

.admin-taxonomy-command p,
.admin-taxonomy-health > div > p {
  max-width: 720px;
  margin: 0;
  color: var(--muted);
  line-height: 1.55;
}

.admin-taxonomy-command-actions {
  display: flex;
  align-items: flex-end;
  justify-content: flex-end;
  gap: 9px;
  min-width: min(100%, 520px);
}

.admin-taxonomy-global-search {
  flex: 1;
  min-width: 230px;
}

.admin-taxonomy-global-search > span,
.admin-taxonomy-game-select,
.admin-taxonomy-toolbar label,
.admin-taxonomy-inspector > label,
.admin-taxonomy-inspector-grid label {
  display: grid;
  gap: 6px;
  color: var(--muted);
  font-size: 11px;
  font-weight: 800;
  text-transform: uppercase;
}

.admin-taxonomy-kpis {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  overflow: hidden;
}

.admin-taxonomy-kpis article {
  position: relative;
  display: grid;
  min-height: 104px;
  align-content: center;
  gap: 3px;
  padding: 16px 18px;
  border-right: 1px solid var(--border);
  background: linear-gradient(145deg, rgba(72, 231, 221, 0.035), transparent 64%);
}

.admin-taxonomy-kpis article:last-child {
  border-right: 0;
}

.admin-taxonomy-kpis article::before {
  position: absolute;
  inset: 0 auto 0 0;
  width: 3px;
  background: var(--taxonomy-accent);
  content: "";
  opacity: 0.78;
}

.admin-taxonomy-kpis article.is-review::before {
  background: var(--taxonomy-danger);
}

.admin-taxonomy-kpis span,
.admin-taxonomy-health article span {
  color: #9cb2ca;
  font-size: 11px;
  font-weight: 900;
  text-transform: uppercase;
}

.admin-taxonomy-kpis strong {
  font-size: 30px;
  line-height: 1;
}

.admin-taxonomy-kpis small,
.admin-taxonomy-health article small {
  color: var(--muted);
}

.admin-taxonomy-statusbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  min-height: 38px;
  padding: 8px 12px;
  color: var(--muted);
  font-size: 12px;
}

.admin-taxonomy-save-state {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  color: #9ed9b9;
  font-weight: 800;
}

.admin-taxonomy-save-state::before {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #45d88a;
  content: "";
  box-shadow: 0 0 0 4px rgba(69, 216, 138, 0.08);
}

.admin-taxonomy-save-state.is-dirty {
  color: #ffd28a;
}

.admin-taxonomy-save-state.is-dirty::before {
  background: var(--taxonomy-warning);
  box-shadow: 0 0 0 4px rgba(247, 199, 96, 0.09);
}

.admin-taxonomy-shell {
  display: grid;
  grid-template-columns: 248px minmax(480px, 1fr) 300px;
  gap: 12px;
  align-items: start;
}

.admin-taxonomy-navigator,
.admin-taxonomy-editor,
.admin-taxonomy-inspector {
  min-width: 0;
  min-height: 610px;
}

.admin-taxonomy-navigator,
.admin-taxonomy-inspector {
  padding: 15px;
}

.admin-taxonomy-pane-head,
.admin-taxonomy-editor-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
}

.admin-taxonomy-pane-head h2,
.admin-taxonomy-editor-head h2,
.admin-taxonomy-health h2 {
  margin: 3px 0 0;
  font-size: 20px;
}

.admin-taxonomy-game-select {
  margin: 15px 0 12px;
}

.admin-taxonomy-group-list {
  display: grid;
  gap: 6px;
}

.admin-taxonomy-group {
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr) auto;
  align-items: center;
  gap: 9px;
  width: 100%;
  min-height: 60px;
  padding: 8px 9px;
  border: 1px solid transparent;
  border-radius: 5px;
  background: transparent;
  color: var(--text);
  text-align: left;
  cursor: pointer;
}

.admin-taxonomy-group:hover {
  border-color: var(--border);
  background: var(--panel-soft);
}

.admin-taxonomy-group.is-active {
  border-color: rgba(255, 75, 104, 0.48);
  background: linear-gradient(90deg, rgba(255, 75, 104, 0.13), rgba(255, 75, 104, 0.025));
  box-shadow: inset 3px 0 var(--taxonomy-danger);
}

.admin-taxonomy-group-icon,
.admin-taxonomy-term-mark,
.admin-taxonomy-inspector-preview > span {
  display: grid;
  place-items: center;
  width: 34px;
  height: 34px;
  border: 1px solid rgba(72, 231, 221, 0.26);
  border-radius: 5px;
  background: #101d28;
  color: var(--taxonomy-accent);
  font-size: 12px;
  font-weight: 900;
}

.admin-taxonomy-group > span:nth-child(2) {
  display: grid;
  gap: 3px;
  min-width: 0;
}

.admin-taxonomy-group strong {
  overflow: hidden;
  font-size: 13px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.admin-taxonomy-group small {
  overflow: hidden;
  color: var(--muted);
  font-size: 10px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.admin-taxonomy-group-count {
  min-width: 25px;
  padding: 3px 5px;
  border: 1px solid var(--border);
  border-radius: 999px;
  color: #a9bfd5;
  font-size: 10px;
  font-weight: 900;
  text-align: center;
}

.admin-taxonomy-editor {
  overflow: hidden;
}

.admin-taxonomy-editor-head {
  min-height: 94px;
  padding: 17px 18px;
  border-bottom: 1px solid var(--border);
  background:
    linear-gradient(100deg, rgba(72, 231, 221, 0.055), transparent 45%),
    var(--panel);
}

.admin-taxonomy-editor-head p {
  margin: 5px 0 0;
  color: var(--muted);
  font-size: 12px;
}

.admin-taxonomy-toolbar {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 160px;
  gap: 10px;
  padding: 12px 14px;
  border-bottom: 1px solid var(--border);
  background: var(--panel-soft);
}

.admin-taxonomy-table-wrap {
  min-height: 430px;
  overflow: auto;
}

.admin-taxonomy-term-table {
  width: 100%;
  border-collapse: collapse;
  table-layout: fixed;
}

.admin-taxonomy-term-table th {
  padding: 10px 12px;
  border-bottom: 1px solid var(--border);
  color: #8298af;
  font-size: 10px;
  font-weight: 900;
  text-align: left;
  text-transform: uppercase;
}

.admin-taxonomy-term-table th:nth-child(1) { width: 31%; }
.admin-taxonomy-term-table th:nth-child(2) { width: 23%; }
.admin-taxonomy-term-table th:nth-child(3) { width: 16%; }
.admin-taxonomy-term-table th:nth-child(4) { width: 19%; }
.admin-taxonomy-term-table th:nth-child(5) { width: 68px; }

.admin-taxonomy-term-table td {
  height: 62px;
  padding: 9px 12px;
  border-bottom: 1px solid var(--border);
  color: var(--muted);
  font-size: 12px;
  vertical-align: middle;
}

.admin-taxonomy-term-table tr {
  cursor: pointer;
  transition: background-color 150ms ease, box-shadow 150ms ease;
}

.admin-taxonomy-term-table tbody tr:hover,
.admin-taxonomy-term-table tbody tr.is-selected {
  background: rgba(72, 231, 221, 0.045);
}

.admin-taxonomy-term-table tbody tr.is-selected {
  box-shadow: inset 3px 0 var(--taxonomy-accent);
}

.admin-taxonomy-term-table td:first-child {
  display: flex;
  align-items: center;
  gap: 9px;
  color: var(--text);
}

.admin-taxonomy-term-mark {
  flex: 0 0 30px;
  width: 30px;
  height: 30px;
}

.admin-taxonomy-term-table code {
  overflow-wrap: anywhere;
  color: #9eb5cb;
  font-size: 11px;
}

.admin-taxonomy-term-status {
  display: inline-flex;
  padding: 4px 7px;
  border: 1px solid var(--border);
  border-radius: 999px;
  font-size: 9px;
  font-weight: 900;
  text-transform: uppercase;
}

.admin-taxonomy-term-status.is-live {
  border-color: rgba(69, 216, 138, 0.3);
  color: #76e5a6;
  background: rgba(69, 216, 138, 0.07);
}

.admin-taxonomy-term-status.is-review {
  border-color: rgba(247, 199, 96, 0.32);
  color: #ffd47f;
  background: rgba(247, 199, 96, 0.07);
}

.admin-icon-button {
  min-width: 48px;
  min-height: 30px;
  border: 1px solid var(--border);
  border-radius: 4px;
  background: var(--panel-soft);
  color: #a9bfd4;
  font-size: 10px;
  font-weight: 800;
  cursor: pointer;
}

.admin-icon-button:hover {
  border-color: rgba(72, 231, 221, 0.45);
  color: var(--taxonomy-accent);
}

.admin-taxonomy-empty {
  margin: 18px;
  padding: 28px;
  border: 1px dashed var(--border);
  color: var(--muted);
  text-align: center;
}

.admin-taxonomy-inspector {
  position: sticky;
  top: 86px;
  display: grid;
  align-content: start;
  gap: 13px;
}

.admin-taxonomy-inspector-state {
  padding: 4px 7px;
  border: 1px solid rgba(72, 231, 221, 0.25);
  border-radius: 999px;
  color: var(--taxonomy-accent);
  font-size: 9px;
  font-weight: 900;
  text-transform: uppercase;
}

.admin-taxonomy-inspector-preview {
  display: flex;
  align-items: center;
  gap: 11px;
  min-height: 72px;
  padding: 11px;
  border: 1px solid var(--border);
  border-radius: 5px;
  background:
    linear-gradient(120deg, rgba(255, 75, 104, 0.08), transparent 55%),
    var(--panel-soft);
}

.admin-taxonomy-inspector-preview > span {
  width: 46px;
  height: 46px;
  color: #fff;
  background: linear-gradient(145deg, rgba(255, 75, 104, 0.72), rgba(89, 34, 51, 0.8));
  border-color: rgba(255, 75, 104, 0.48);
  font-size: 17px;
}

.admin-taxonomy-inspector-preview div {
  display: grid;
  gap: 4px;
  min-width: 0;
}

.admin-taxonomy-inspector-preview strong,
.admin-taxonomy-inspector-preview small {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.admin-taxonomy-inspector-preview small {
  color: var(--muted);
}

.admin-taxonomy-inspector-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 9px;
}

.admin-taxonomy-inspector-facts {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px;
}

.admin-taxonomy-inspector-facts span {
  display: grid;
  gap: 3px;
  padding: 10px;
  border: 1px solid var(--border);
  border-radius: 5px;
  background: var(--panel-soft);
}

.admin-taxonomy-inspector-facts small {
  color: var(--muted);
  font-size: 9px;
  font-weight: 900;
  text-transform: uppercase;
}

.admin-taxonomy-inspector-note {
  margin: 0;
  padding: 11px;
  border-left: 2px solid var(--taxonomy-warning);
  background: rgba(247, 199, 96, 0.045);
  color: var(--muted);
  font-size: 11px;
  line-height: 1.55;
}

.admin-taxonomy-inspector-actions {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px;
}

.admin-taxonomy-health {
  display: grid;
  grid-template-columns: minmax(260px, 1.5fr) repeat(3, minmax(150px, 0.7fr));
  gap: 0;
  overflow: hidden;
}

.admin-taxonomy-health > div,
.admin-taxonomy-health article {
  padding: 17px 18px;
}

.admin-taxonomy-health article {
  position: relative;
  display: grid;
  align-content: center;
  gap: 4px;
  min-height: 104px;
  border-left: 1px solid var(--border);
}

.admin-taxonomy-health article strong {
  font-size: 27px;
  line-height: 1;
}

.admin-taxonomy-health article.is-alert strong {
  color: #ffd279;
}

.admin-taxonomy-health article.is-clear strong {
  color: #73e2a4;
}

.admin-taxonomy-advanced {
  overflow: hidden;
}

.admin-taxonomy-advanced > summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  min-height: 64px;
  padding: 13px 17px;
  cursor: pointer;
}

.admin-taxonomy-advanced > summary > span:first-child {
  display: grid;
  gap: 3px;
}

.admin-taxonomy-advanced > summary small {
  color: var(--muted);
}

.admin-taxonomy-advanced > summary > span:last-child {
  color: var(--taxonomy-accent);
  font-size: 11px;
  font-weight: 900;
  text-transform: uppercase;
}

.admin-taxonomy-advanced[open] > summary {
  border-bottom: 1px solid var(--border);
}

.admin-taxonomy-advanced > div {
  padding: 15px;
}

.admin-taxonomy-footer {
  position: sticky;
  bottom: 8px;
  z-index: 5;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  min-height: 62px;
  padding: 10px 13px;
  background: rgba(12, 18, 26, 0.94);
  backdrop-filter: blur(14px);
}

.admin-taxonomy-footer > div {
  display: flex;
  gap: 8px;
}

body.theme-light .admin-taxonomy-workspace {
  --taxonomy-accent: #087f84;
  --taxonomy-danger: #d92b4d;
  --taxonomy-warning: #9a6500;
}

body.theme-light .admin-taxonomy-command,
body.theme-light .admin-taxonomy-kpis,
body.theme-light .admin-taxonomy-statusbar,
body.theme-light .admin-taxonomy-navigator,
body.theme-light .admin-taxonomy-editor,
body.theme-light .admin-taxonomy-inspector,
body.theme-light .admin-taxonomy-health,
body.theme-light .admin-taxonomy-advanced {
  box-shadow: 0 13px 28px rgba(34, 48, 65, 0.08);
}

body.theme-light .admin-taxonomy-group-icon,
body.theme-light .admin-taxonomy-term-mark {
  background: #edf6f7;
}

body.theme-light .admin-taxonomy-term-table code,
body.theme-light .admin-taxonomy-kpis span,
body.theme-light .admin-taxonomy-health article span {
  color: #516a80;
}

body.theme-light .admin-taxonomy-term-status.is-live {
  color: #08743f;
}

body.theme-light .admin-taxonomy-term-status.is-review {
  color: #815500;
}

body.theme-light .admin-taxonomy-footer {
  background: rgba(255, 255, 255, 0.94);
}

@media (max-width: 1180px) {
  .admin-taxonomy-shell {
    grid-template-columns: 220px minmax(0, 1fr);
  }

  .admin-taxonomy-inspector {
    position: static;
    grid-column: 1 / -1;
    min-height: 0;
  }

  .admin-taxonomy-inspector-grid,
  .admin-taxonomy-inspector-facts {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .admin-taxonomy-health {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .admin-taxonomy-health > div {
    grid-column: 1 / -1;
    border-bottom: 1px solid var(--border);
  }

  .admin-taxonomy-health article:first-of-type {
    border-left: 0;
  }
}

@media (max-width: 820px) {
  .admin-taxonomy-command {
    align-items: stretch;
    flex-direction: column;
  }

  .admin-taxonomy-command-actions {
    justify-content: stretch;
    min-width: 0;
  }

  .admin-taxonomy-kpis {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .admin-taxonomy-kpis article:nth-child(2) {
    border-right: 0;
  }

  .admin-taxonomy-kpis article:nth-child(-n + 2) {
    border-bottom: 1px solid var(--border);
  }

  .admin-taxonomy-shell {
    grid-template-columns: 1fr;
  }

  .admin-taxonomy-navigator,
  .admin-taxonomy-editor {
    min-height: 0;
  }

  .admin-taxonomy-group-list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .admin-taxonomy-inspector {
    grid-column: auto;
  }
}

@media (max-width: 620px) {
  .admin-taxonomy-workspace {
    gap: 10px;
  }

  .admin-taxonomy-command {
    padding: 17px;
  }

  .admin-taxonomy-command-actions {
    display: grid;
    grid-template-columns: 1fr 1fr;
  }

  .admin-taxonomy-global-search {
    grid-column: 1 / -1;
    min-width: 0;
  }

  .admin-taxonomy-kpis strong {
    font-size: 25px;
  }

  .admin-taxonomy-statusbar {
    align-items: flex-start;
    flex-direction: column;
  }

  .admin-taxonomy-group-list {
    grid-template-columns: 1fr;
  }

  .admin-taxonomy-toolbar {
    grid-template-columns: 1fr;
  }

  .admin-taxonomy-table-wrap {
    min-height: 350px;
  }

  .admin-taxonomy-term-table {
    min-width: 660px;
  }

  .admin-taxonomy-inspector-grid,
  .admin-taxonomy-inspector-facts,
  .admin-taxonomy-inspector-actions,
  .admin-taxonomy-health {
    grid-template-columns: 1fr;
  }

  .admin-taxonomy-health > div {
    grid-column: auto;
  }

  .admin-taxonomy-health article {
    min-height: 84px;
    border-top: 1px solid var(--border);
    border-left: 0;
  }

  .admin-taxonomy-footer {
    align-items: stretch;
    flex-direction: column;
    bottom: 4px;
  }

  .admin-taxonomy-footer > div {
    display: grid;
    grid-template-columns: 1fr 1fr;
  }
}

/* Admin Health, Data, and Settings workspaces v2. */
.admin-health-workspace { --ops-workspace: health; }
.admin-backup-workspace { --ops-workspace: backup; }

.admin-operations-workspace,
.admin-settings-workspace {
  --ops-accent: #37dff5;
  --ops-danger: #ff405d;
  --ops-success: #62d99d;
  --ops-warning: #f2bf63;
  display: grid;
  gap: 14px;
  margin-bottom: 22px;
  color: var(--text);
}

.admin-operations-workspace [hidden],
.admin-settings-workspace [hidden] {
  display: none !important;
}

.admin-operations-command,
.admin-operations-kpis,
.admin-operations-navigator,
.admin-operations-main,
.admin-operations-inspector,
.admin-operations-trend,
.admin-backup-audit,
.admin-settings-navigator,
.admin-settings-editor,
.admin-settings-preview,
.admin-settings-checklist,
.admin-settings-savebar {
  border: 1px solid var(--border);
  border-radius: 7px;
  background: #0f1823;
  box-shadow: 0 18px 38px rgba(0, 0, 0, 0.16);
}

.admin-operations-command {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  padding: 20px 22px;
  background:
    linear-gradient(100deg, rgba(255, 64, 93, 0.07), transparent 34%),
    linear-gradient(270deg, rgba(55, 223, 245, 0.05), transparent 38%),
    #0f1823;
}

.admin-operations-command h2 {
  margin: 5px 0 4px;
  font-size: clamp(22px, 2vw, 31px);
}

.admin-operations-command p {
  max-width: 760px;
  margin: 0;
  color: var(--muted);
}

.admin-operations-actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  flex: 0 0 auto;
}

.admin-operations-actions form {
  margin: 0;
}

.admin-operations-kpis {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  overflow: hidden;
}

.admin-operations-kpis article {
  position: relative;
  display: grid;
  gap: 4px;
  min-height: 116px;
  padding: 17px 19px;
  border-right: 1px solid var(--border);
}

.admin-operations-kpis article:last-child {
  border-right: 0;
}

.admin-operations-kpis article::after {
  position: absolute;
  right: 16px;
  bottom: 14px;
  width: 32px;
  height: 3px;
  background: var(--ops-accent);
  content: "";
}

.admin-operations-kpis article.is-green::after { background: var(--ops-success); }
.admin-operations-kpis article.is-amber::after { background: var(--ops-warning); }
.admin-operations-kpis article.is-rose::after { background: var(--ops-danger); }
.admin-operations-kpis article.is-violet::after { background: #a88bff; }
.admin-operations-kpis article.is-blue::after { background: #6ea8ff; }
.admin-operations-kpis article.is-cyan::after { background: var(--ops-accent); }

.admin-operations-kpis span,
.admin-operations-panel-head > span,
.admin-operations-panel-head > div > span,
.admin-operations-trend span,
.admin-backup-audit span,
.admin-settings-navigator .admin-operations-panel-head span,
.admin-settings-preview .admin-operations-panel-head span,
.admin-settings-checklist .admin-operations-panel-head span {
  color: #8fc4db;
  font-size: 10px;
  font-weight: 900;
  text-transform: uppercase;
}

.admin-operations-kpis strong {
  align-self: end;
  font-size: 29px;
  line-height: 1.05;
}

.admin-operations-kpis small,
.admin-operations-panel-head small {
  color: var(--muted);
}

.admin-operations-shell {
  display: grid;
  gap: 14px;
  align-items: start;
}

.admin-health-shell {
  grid-template-columns: 226px minmax(0, 1fr) 292px;
}

.admin-backup-shell {
  grid-template-columns: 214px minmax(0, 1fr) 304px;
}

.admin-operations-navigator,
.admin-operations-main,
.admin-operations-inspector {
  min-width: 0;
  overflow: hidden;
}

.admin-operations-navigator,
.admin-operations-inspector {
  position: sticky;
  top: 86px;
}

.admin-operations-panel-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  min-height: 58px;
  padding: 12px 14px;
  border-bottom: 1px solid var(--border);
}

.admin-operations-panel-head > div {
  display: grid;
  gap: 3px;
}

.admin-operations-panel-head h2,
.admin-operations-panel-head strong,
.admin-operations-panel-head b {
  margin: 0;
}

.admin-operations-panel-head button {
  border: 0;
  background: transparent;
  color: var(--ops-accent);
  font-size: 10px;
  font-weight: 900;
  text-transform: uppercase;
}

.admin-filter-group {
  display: grid;
  gap: 6px;
  padding: 14px;
  border-bottom: 1px solid var(--border);
}

.admin-filter-group > strong {
  margin-bottom: 3px;
  color: var(--muted);
  font-size: 10px;
  text-transform: uppercase;
}

.admin-filter-group button,
.admin-backup-navigator > a,
.admin-settings-navigator nav > button {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 9px;
  width: 100%;
  min-height: 43px;
  padding: 9px 10px;
  border: 1px solid transparent;
  border-radius: 5px;
  background: transparent;
  color: var(--muted);
  text-align: left;
}

.admin-filter-group button:hover,
.admin-filter-group button.is-active,
.admin-backup-navigator > a:hover,
.admin-backup-navigator > a.is-active,
.admin-settings-navigator nav > button:hover,
.admin-settings-navigator nav > button.is-active {
  border-color: rgba(55, 223, 245, 0.28);
  background: rgba(55, 223, 245, 0.07);
  color: var(--text);
}

.admin-filter-group button.is-active,
.admin-backup-navigator > a.is-active,
.admin-settings-navigator nav > button.is-active {
  box-shadow: inset 2px 0 0 var(--ops-accent);
}

.admin-filter-group b {
  display: grid;
  place-items: center;
  min-width: 24px;
  min-height: 24px;
  border-radius: 4px;
  background: var(--panel-soft);
  font-size: 10px;
}

.admin-inline-search {
  width: min(260px, 44vw);
}

.admin-inline-search .input {
  min-height: 36px;
}

.admin-health-queue .table-wrap,
.admin-backup-history .table-wrap {
  border: 0;
  border-radius: 0;
}

.admin-health-queue .admin-table,
.admin-backup-history .admin-table {
  min-width: 720px;
}

.admin-health-queue tbody tr,
.admin-backup-history tbody tr {
  cursor: pointer;
}

.admin-health-queue tbody tr.is-selected,
.admin-backup-history tbody tr.is-selected {
  background: linear-gradient(90deg, rgba(55, 223, 245, 0.1), rgba(255, 64, 93, 0.035));
  box-shadow: inset 2px 0 0 var(--ops-accent);
}

.admin-health-queue td strong,
.admin-health-queue td small,
.admin-backup-history td strong,
.admin-backup-history td small {
  display: block;
}

.admin-health-queue td small,
.admin-backup-history td small {
  margin-top: 3px;
  color: var(--muted);
}

.health-pill,
.admin-backup-status {
  display: inline-flex;
  align-items: center;
  min-height: 24px;
  padding: 3px 7px;
  border: 1px solid var(--border);
  border-radius: 4px;
  font-size: 9px;
  font-weight: 900;
  text-transform: uppercase;
}

.health-error,
.admin-backup-status.is-review { border-color: rgba(255, 64, 93, 0.42); color: #ff7187; }
.health-warning { border-color: rgba(242, 191, 99, 0.42); color: #f5cb7e; }
.admin-backup-status.is-valid { border-color: rgba(98, 217, 157, 0.42); color: #79e2ae; }

.admin-health-filter-empty {
  padding: 24px;
  color: var(--muted);
  text-align: center;
}

.admin-operations-inspector {
  padding-bottom: 13px;
}

.admin-inspector-identity {
  display: flex;
  align-items: center;
  gap: 11px;
  padding: 15px;
}

.admin-inspector-identity > span {
  display: grid;
  place-items: center;
  width: 42px;
  height: 42px;
  flex: 0 0 auto;
  border: 1px solid rgba(255, 64, 93, 0.42);
  border-radius: 6px;
  background: rgba(255, 64, 93, 0.08);
  color: var(--ops-danger);
  font-size: 18px;
  font-weight: 900;
}

.admin-inspector-identity div,
.admin-inspector-identity strong,
.admin-inspector-identity small {
  display: block;
  min-width: 0;
}

.admin-inspector-identity small {
  margin-bottom: 3px;
  color: var(--muted);
}

.admin-operations-inspector > section,
.admin-restore-safety dl {
  margin: 0 13px 10px;
  padding: 11px;
  border: 1px solid var(--border);
  border-radius: 5px;
  background: rgba(0, 0, 0, 0.08);
}

.admin-operations-inspector > section > span {
  color: #8fc4db;
  font-size: 9px;
  font-weight: 900;
  text-transform: uppercase;
}

.admin-operations-inspector p,
.admin-operations-inspector code {
  display: block;
  overflow-wrap: anywhere;
  margin: 6px 0 0;
  color: var(--muted);
  line-height: 1.5;
}

.admin-inspector-actions {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px;
  padding: 3px 13px 0;
}

.admin-inspector-actions form,
.admin-inspector-actions .button {
  width: 100%;
}

.admin-operations-trend,
.admin-backup-audit {
  display: grid;
  grid-template-columns: minmax(220px, 1.4fr) repeat(4, minmax(130px, 0.7fr));
  overflow: hidden;
}

.admin-operations-trend > div,
.admin-operations-trend article,
.admin-backup-audit > div,
.admin-backup-audit article {
  display: grid;
  align-content: center;
  gap: 3px;
  min-height: 88px;
  padding: 13px 15px;
  border-right: 1px solid var(--border);
}

.admin-operations-trend article:last-child,
.admin-backup-audit article:last-child { border-right: 0; }
.admin-operations-trend article strong,
.admin-backup-audit article strong { font-size: 17px; }
.admin-operations-trend article.is-green strong { color: var(--ops-success); }
.admin-operations-trend article.is-amber strong { color: var(--ops-warning); }
.admin-operations-trend article.is-rose strong { color: var(--ops-danger); }
.admin-operations-trend article.is-cyan strong { color: var(--ops-accent); }

.admin-backup-navigator {
  padding-bottom: 9px;
}

.admin-backup-navigator > a {
  align-items: flex-start;
  min-height: 61px;
  margin: 0 9px 6px;
}

.admin-backup-navigator > a > span {
  display: flex;
  align-items: center;
  gap: 8px;
}

.admin-backup-navigator > a b {
  color: var(--ops-accent);
  font-size: 10px;
}

.admin-backup-navigator > a small {
  display: block;
  max-width: 92px;
  text-align: right;
}

.admin-backup-history,
.admin-backup-timeline {
  overflow: hidden;
}

.admin-backup-timeline {
  border-top: 1px solid var(--border);
}

.admin-backup-timeline > div:last-child {
  display: grid;
  gap: 0;
  padding: 8px 15px 15px;
}

.admin-backup-timeline article {
  position: relative;
  display: grid;
  grid-template-columns: 14px minmax(110px, 0.8fr) minmax(150px, 1fr) auto;
  gap: 9px;
  align-items: center;
  min-height: 44px;
  border-bottom: 1px solid var(--border);
}

.admin-backup-timeline article i,
.admin-backup-audit article i {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--muted);
}

.admin-backup-timeline article.is-current i,
.admin-backup-audit article.is-green i { background: var(--ops-success); box-shadow: 0 0 0 4px rgba(98, 217, 157, 0.1); }

.admin-backup-timeline small,
.admin-backup-audit small { color: var(--muted); }

.admin-restore-safety dl {
  display: grid;
  gap: 0;
}

.admin-restore-safety dl div {
  display: flex;
  justify-content: space-between;
  gap: 10px;
  padding: 8px 0;
  border-bottom: 1px solid var(--border);
}

.admin-restore-safety dl div:last-child { border-bottom: 0; }
.admin-restore-safety dt { color: var(--muted); }
.admin-restore-safety dd { margin: 0; text-align: right; overflow-wrap: anywhere; }
.admin-restore-warning { margin: 0 13px 10px !important; padding: 10px; border-left: 2px solid var(--ops-warning); background: rgba(242, 191, 99, 0.06); }

.admin-settings-layout {
  display: grid;
  grid-template-columns: 218px minmax(0, 1fr) 292px;
  gap: 14px;
  align-items: start;
}

.admin-settings-navigator,
.admin-settings-side {
  position: sticky;
  top: 86px;
}

.admin-settings-navigator nav {
  display: grid;
  gap: 5px;
  padding: 9px;
}

.admin-settings-navigator nav > button {
  display: grid;
  grid-template-columns: 28px 1fr;
  min-height: 57px;
}

.admin-settings-navigator nav > button > span {
  grid-row: 1 / 3;
  align-self: center;
  color: var(--ops-accent);
  font-size: 10px;
  font-weight: 900;
}

.admin-settings-navigator nav > button strong,
.admin-settings-navigator nav > button small {
  display: block;
}

.admin-settings-navigator nav > button small {
  overflow: hidden;
  color: var(--muted);
  font-size: 10px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.admin-settings-editor {
  position: relative;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  padding: 16px;
}

.admin-settings-editor > label {
  display: grid;
  align-content: start;
  gap: 6px;
}

.admin-settings-editor > label small {
  color: var(--muted);
}

.admin-settings-anchor {
  grid-column: 1 / -1;
  height: 0;
  scroll-margin-top: 100px;
}

.admin-settings-section {
  scroll-margin-top: 100px;
}

.admin-settings-side {
  display: grid;
  gap: 14px;
}

.admin-settings-preview,
.admin-settings-checklist {
  overflow: hidden;
}

.admin-settings-preview-status {
  padding: 3px 6px;
  border: 1px solid rgba(55, 223, 245, 0.32);
  border-radius: 4px;
  color: var(--ops-accent);
  font-size: 9px;
  font-weight: 900;
  text-transform: uppercase;
}

.admin-settings-preview-card {
  position: relative;
  display: flex;
  align-items: center;
  gap: 12px;
  min-height: 120px;
  margin: 14px;
  padding: 16px;
  overflow: hidden;
  border: 1px solid var(--border);
  border-radius: 6px;
  background: linear-gradient(125deg, color-mix(in srgb, var(--settings-preview-accent) 20%, #0b1119), #0b1119 58%, rgba(255, 64, 93, 0.12));
}

.admin-settings-preview-card::after {
  position: absolute;
  right: -28px;
  bottom: -42px;
  width: 110px;
  height: 110px;
  border: 1px solid color-mix(in srgb, var(--settings-preview-accent) 55%, transparent);
  border-radius: 50%;
  content: "";
}

.admin-settings-preview-card img {
  position: relative;
  z-index: 1;
  width: 52px;
  height: 52px;
  flex: 0 0 auto;
  border-radius: 6px;
  object-fit: cover;
}

.admin-settings-preview-card > div {
  position: relative;
  z-index: 1;
  min-width: 0;
}

.admin-settings-preview-card strong {
  display: block;
  margin-bottom: 5px;
  font-size: 18px;
}

.admin-settings-preview-card p,
.admin-settings-preview > p {
  color: var(--muted);
}

.admin-settings-preview-card p { margin: 0; line-height: 1.45; }
.admin-settings-preview > p { margin: 0; padding: 0 14px 14px; font-size: 11px; }

.admin-settings-checklist-list {
  display: grid;
  gap: 7px;
  padding: 12px;
}

.admin-settings-checklist-list article {
  display: flex;
  align-items: center;
  gap: 9px;
  min-height: 48px;
  padding: 8px;
  border: 1px solid var(--border);
  border-radius: 5px;
}

.admin-settings-checklist-list article > span {
  display: grid;
  place-items: center;
  width: 26px;
  height: 26px;
  flex: 0 0 auto;
  border-radius: 4px;
  font-weight: 900;
}

.admin-settings-checklist-list article.is-ready > span { background: rgba(98, 217, 157, 0.12); color: var(--ops-success); }
.admin-settings-checklist-list article.needs-attention > span { background: rgba(242, 191, 99, 0.12); color: var(--ops-warning); }
.admin-settings-checklist-list article div { min-width: 0; }
.admin-settings-checklist-list article strong,
.admin-settings-checklist-list article small { display: block; }
.admin-settings-checklist-list article small { margin-top: 2px; color: var(--muted); }

.admin-settings-savebar {
  position: sticky;
  bottom: 8px;
  z-index: 8;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  min-height: 64px;
  padding: 10px 13px;
  background: rgba(15, 24, 35, 0.94);
  backdrop-filter: blur(14px);
}

.admin-settings-savebar > div,
.admin-settings-savebar strong,
.admin-settings-savebar small {
  display: block;
}

.admin-settings-savebar small { margin-top: 3px; color: var(--muted); }
.admin-settings-savebar > div:last-child { display: flex; gap: 8px; }
.admin-settings-workspace[data-settings-dirty="true"] .admin-settings-savebar { border-color: rgba(255, 64, 93, 0.5); }
.admin-settings-workspace[data-settings-dirty="true"] [data-settings-save-state] { color: #ff7187; }

body.theme-light .admin-operations-workspace,
body.theme-light .admin-settings-workspace {
  --ops-accent: #087f8b;
  --ops-danger: #d72c4e;
  --ops-success: #157b4b;
  --ops-warning: #956200;
}

body.theme-light .admin-operations-command,
body.theme-light .admin-operations-kpis,
body.theme-light .admin-operations-navigator,
body.theme-light .admin-operations-main,
body.theme-light .admin-operations-inspector,
body.theme-light .admin-operations-trend,
body.theme-light .admin-backup-audit,
body.theme-light .admin-settings-navigator,
body.theme-light .admin-settings-editor,
body.theme-light .admin-settings-preview,
body.theme-light .admin-settings-checklist,
body.theme-light .admin-settings-savebar {
  background: #ffffff;
  box-shadow: 0 14px 32px rgba(25, 44, 62, 0.08);
}

body.theme-light .admin-operations-command {
  background:
    linear-gradient(100deg, rgba(215, 44, 78, 0.06), transparent 34%),
    linear-gradient(270deg, rgba(8, 127, 139, 0.05), transparent 38%),
    #ffffff;
}

body.theme-light .admin-health-queue tbody tr.is-selected,
body.theme-light .admin-backup-history tbody tr.is-selected {
  background: linear-gradient(90deg, rgba(8, 127, 139, 0.08), rgba(215, 44, 78, 0.025));
}

body.theme-light .admin-operations-inspector > section,
body.theme-light .admin-restore-safety dl {
  background: #f7f9fc;
}

body.theme-light .admin-settings-preview-card {
  background: linear-gradient(125deg, color-mix(in srgb, var(--settings-preview-accent) 12%, #f4f7fa), #ffffff 60%, rgba(215, 44, 78, 0.06));
}

body.theme-light .admin-settings-savebar {
  background: rgba(255, 255, 255, 0.95);
}

@media (max-width: 1180px) {
  .admin-health-shell,
  .admin-backup-shell {
    grid-template-columns: 218px minmax(0, 1fr);
  }

  .admin-operations-inspector {
    position: static;
    grid-column: 1 / -1;
  }

  .admin-settings-layout {
    grid-template-columns: 210px minmax(0, 1fr);
  }

  .admin-settings-side {
    position: static;
    grid-column: 1 / -1;
    grid-template-columns: 1fr 1fr;
  }

  .admin-operations-trend,
  .admin-backup-audit {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

  .admin-operations-trend > div,
  .admin-backup-audit > div {
    grid-column: 1 / -1;
    border-right: 0;
    border-bottom: 1px solid var(--border);
  }
}

@media (max-width: 860px) {
  .admin-operations-command {
    align-items: stretch;
    flex-direction: column;
  }

  .admin-operations-actions {
    justify-content: flex-start;
    flex-wrap: wrap;
  }

  .admin-operations-kpis {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .admin-operations-kpis article:nth-child(2) { border-right: 0; }
  .admin-operations-kpis article:nth-child(-n + 2) { border-bottom: 1px solid var(--border); }

  .admin-health-shell,
  .admin-backup-shell,
  .admin-settings-layout {
    grid-template-columns: 1fr;
  }

  .admin-operations-navigator,
  .admin-settings-navigator {
    position: static;
  }

  .admin-filter-group,
  .admin-settings-navigator nav {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .admin-operations-panel-head { grid-column: 1 / -1; }
  .admin-settings-editor { grid-template-columns: 1fr; }
  .admin-settings-editor > .full,
  .admin-settings-anchor { grid-column: auto; }
}

@media (max-width: 720px) {
  .admin-operations-workspace,
  .admin-settings-workspace { gap: 10px; }

  .admin-operations-command { padding: 16px; }

  .admin-operations-actions {
    display: grid;
    grid-template-columns: 1fr 1fr;
  }

  .admin-operations-actions form,
  .admin-operations-actions .button { width: 100%; }

  .admin-inline-search { width: 100%; }
  .admin-operations-kpis article { min-height: 100px; padding: 14px; }
  .admin-operations-kpis strong { font-size: 24px; }

  .admin-filter-group,
  .admin-settings-navigator nav,
  .admin-settings-side {
    grid-template-columns: 1fr;
  }

  .admin-backup-timeline article {
    grid-template-columns: 14px minmax(0, 1fr) auto;
  }

  .admin-backup-timeline article strong { grid-column: 2 / -1; }

  .admin-operations-trend,
  .admin-backup-audit {
    grid-template-columns: 1fr 1fr;
  }

  .admin-operations-trend > div,
  .admin-backup-audit > div { grid-column: 1 / -1; }
  .admin-operations-trend article:nth-child(even),
  .admin-backup-audit article:nth-child(even) { border-right: 0; }

  .admin-settings-editor { padding: 12px; }
  .admin-settings-savebar { align-items: stretch; flex-direction: column; bottom: 4px; }
  .admin-settings-savebar > div:last-child { display: grid; grid-template-columns: 1fr 1fr; }
}

/* Admin Media Operations */
.admin-media-workspace {
  display: grid;
  gap: 14px;
  margin-bottom: 24px;
}

.media-operations-command {
  align-items: center;
  display: flex;
  justify-content: space-between;
  padding: 18px 20px;
}

.media-operations-command h2 { margin: 4px 0 3px; }
.media-operations-command p { color: var(--muted); margin: 0; }
.media-operations-command-actions { display: flex; flex-wrap: wrap; gap: 8px; }

.admin-media-kpis {
  background: var(--panel);
  border: 1px solid var(--border);
  border-radius: 7px;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  overflow: hidden;
}

.admin-media-kpis article {
  border-right: 1px solid var(--border);
  display: grid;
  gap: 4px;
  min-height: 104px;
  padding: 16px 18px;
}

.admin-media-kpis article:last-child { border-right: 0; }
.admin-media-kpis span { color: var(--muted); font-size: 11px; font-weight: 800; text-transform: uppercase; }
.admin-media-kpis strong { font-size: 28px; line-height: 1; }
.admin-media-kpis small { color: var(--muted); }
.admin-media-kpis .is-healthy strong { color: #61e6bd; }
.admin-media-kpis .is-review strong { color: #ff7180; }

.media-runtime-ready,
.admin-media-workspace .media-runtime-warning {
  align-items: center;
  border-radius: 6px;
  display: flex;
  gap: 12px;
  padding: 11px 14px;
}

.media-runtime-ready { background: rgba(65, 214, 165, .08); border: 1px solid rgba(65, 214, 165, .3); }
.media-runtime-ready span,
.admin-media-workspace .media-runtime-warning span { color: var(--muted); }

.media-upload-drawer { border-color: rgba(77, 222, 207, .35); }
.media-upload-drawer[hidden] { display: none; }

.media-operations-shell {
  align-items: start;
  display: grid;
  gap: 12px;
  grid-template-columns: 220px minmax(0, 1fr) 320px;
}

.media-library-navigator,
.media-asset-inspector {
  max-height: calc(100vh - 94px);
  overflow: auto;
  position: sticky;
  top: 84px;
}

.media-library-navigator {
  background: var(--panel);
  border: 1px solid var(--border);
  border-radius: 7px;
  display: grid;
  gap: 15px;
  padding: 14px;
}

.media-navigator-head { display: grid; gap: 5px; }
.media-navigator-head strong { font-size: 17px; }
.media-navigator-search,
.media-type-filter { display: grid; gap: 6px; }
.media-navigator-search > span,
.media-type-filter > span,
.media-filter-group > span { color: var(--muted); font-size: 10px; font-weight: 800; text-transform: uppercase; }

.media-filter-group { display: grid; gap: 5px; }
.media-filter-group button {
  align-items: center;
  background: transparent;
  border: 1px solid transparent;
  color: var(--text);
  display: flex;
  justify-content: space-between;
  min-height: 34px;
  padding: 6px 9px;
  text-align: left;
  width: 100%;
}

.media-filter-group button b {
  background: var(--panel-2);
  border-radius: 10px;
  color: var(--muted);
  font-size: 10px;
  min-width: 24px;
  padding: 2px 6px;
  text-align: center;
}

.media-filter-group button:hover,
.media-filter-group button.is-active {
  background: rgba(244, 63, 94, .09);
  border-color: rgba(244, 63, 94, .35);
  color: #ff7180;
}

.media-asset-board { min-width: 0; padding: 14px; }
.media-asset-board-head {
  align-items: end;
  display: flex;
  gap: 14px;
  justify-content: space-between;
  margin-bottom: 12px;
}

.media-asset-board-head h2 { font-size: 22px; margin: 3px 0 0; }
.media-board-tools { align-items: end; display: flex; gap: 8px; }
.media-board-tools label { display: grid; font-size: 10px; font-weight: 800; gap: 4px; text-transform: uppercase; }
.media-board-tools select { min-width: 128px; }
.media-view-switch { display: grid; grid-template-columns: 1fr 1fr; }
.media-view-switch button { border-radius: 0; min-height: 38px; padding: 7px 10px; }
.media-view-switch button:first-child { border-radius: 5px 0 0 5px; }
.media-view-switch button:last-child { border-radius: 0 5px 5px 0; }
.media-view-switch button.is-active { background: rgba(244, 63, 94, .14); border-color: #f43f5e; color: #ff7180; }

.media-bulk-toolbar {
  align-items: center;
  background: rgba(11, 15, 20, .36);
  border: 1px solid var(--border);
  border-radius: 6px;
  display: grid;
  gap: 7px;
  grid-template-columns: auto auto minmax(130px, 1fr) minmax(130px, 1fr) auto auto;
  margin-bottom: 12px;
  padding: 8px;
}

.media-bulk-toolbar .media-select-all { align-items: center; display: flex; gap: 6px; white-space: nowrap; }
.media-bulk-toolbar .input { min-width: 0; }

.admin-media-workspace .media-asset-grid {
  display: grid;
  gap: 9px;
  grid-template-columns: repeat(auto-fill, minmax(156px, 1fr));
}

.admin-media-workspace .media-asset-card {
  background: var(--panel-2);
  border: 1px solid var(--border);
  border-radius: 6px;
  display: grid;
  gap: 7px;
  min-width: 0;
  overflow: hidden;
  padding: 7px;
  position: relative;
}

.admin-media-workspace .media-asset-card:hover,
.admin-media-workspace .media-asset-card.is-selected { border-color: #f43f5e; box-shadow: inset 0 0 0 1px rgba(244, 63, 94, .18); }
.media-asset-select { left: 12px; position: absolute; top: 12px; z-index: 2; }
.media-asset-select span { clip: rect(0 0 0 0); clip-path: inset(50%); height: 1px; overflow: hidden; position: absolute; width: 1px; }
.media-asset-open { background: transparent; border: 0; display: grid; gap: 8px; padding: 0; text-align: left; }
.admin-media-workspace .media-asset-thumb { aspect-ratio: 16 / 10; border-radius: 4px; display: block; overflow: hidden; width: 100%; }
.admin-media-workspace .media-asset-thumb img { height: 100%; object-fit: cover; width: 100%; }
.media-asset-card-copy { display: grid; gap: 2px; min-width: 0; }
.media-asset-card-copy strong,
.media-asset-card-copy small { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.media-asset-card-copy small { color: var(--muted); }
.admin-media-workspace .media-asset-status-row { display: flex; flex-wrap: wrap; gap: 4px; }
.admin-media-workspace .media-status-pill { font-size: 9px; padding: 2px 5px; }
.media-asset-pagination {
  align-items: center;
  border-top: 1px solid var(--border);
  color: var(--muted);
  display: flex;
  justify-content: space-between;
  margin-top: 12px;
  padding-top: 12px;
}
.media-asset-pagination strong { color: var(--text); }
.media-asset-grid[data-view="list"] { grid-template-columns: 1fr; }
.media-asset-grid[data-view="list"] .media-asset-card { align-items: center; grid-template-columns: minmax(0, 1fr) auto; }
.media-asset-grid[data-view="list"] .media-asset-open { align-items: center; grid-template-columns: 74px minmax(0, 1fr); }
.media-asset-grid[data-view="list"] .media-asset-thumb { aspect-ratio: 4 / 3; }

.media-asset-inspector {
  background: var(--panel);
  border: 1px solid var(--border);
  border-radius: 7px;
  display: grid;
  gap: 12px;
  padding: 14px;
}

.media-asset-inspector > header { align-items: start; display: flex; gap: 8px; justify-content: space-between; }
.media-asset-inspector h2 { font-size: 18px; margin: 3px 0 0; overflow-wrap: anywhere; }
.media-inspector-status { background: rgba(65, 214, 165, .11); border: 1px solid rgba(65, 214, 165, .3); border-radius: 12px; color: #61e6bd; font-size: 9px; font-weight: 800; padding: 4px 7px; text-transform: uppercase; }
.media-inspector-preview { align-items: center; aspect-ratio: 16 / 10; background: var(--panel-2); border: 1px solid var(--border); border-radius: 6px; display: flex; justify-content: center; overflow: hidden; }
.media-inspector-preview img { height: 100%; object-fit: contain; width: 100%; }
.media-inspector-preview span { color: var(--muted); }
.media-inspector-facts { display: grid; gap: 6px; grid-template-columns: 1fr 1fr; margin: 0; }
.media-inspector-facts div { background: var(--panel-2); border: 1px solid var(--border); border-radius: 5px; display: grid; gap: 2px; padding: 8px; }
.media-inspector-facts dt { color: var(--muted); font-size: 9px; font-weight: 800; text-transform: uppercase; }
.media-inspector-facts dd { font-size: 12px; margin: 0; overflow-wrap: anywhere; }
.media-inspector-form { display: grid; gap: 8px; }
.media-inspector-form label { display: grid; font-size: 10px; font-weight: 800; gap: 4px; text-transform: uppercase; }
.media-inspector-usage { border-top: 1px solid var(--border); display: grid; gap: 7px; padding-top: 10px; }
.media-inspector-usage > div { display: flex; justify-content: space-between; }
.media-inspector-usage nav { display: grid; gap: 4px; }
.media-inspector-usage nav a,
.media-inspector-usage nav span { background: var(--panel-2); border-radius: 4px; color: var(--muted); font-size: 11px; padding: 6px 8px; }
.media-inspector-actions { display: grid; gap: 7px; grid-template-columns: 1fr 1fr; }
.media-inspector-actions button,
.media-inspector-actions form { width: 100%; }
.media-inspector-actions form button { height: 100%; }

.media-optimization-queue { padding: 14px; }
.media-optimization-table { display: grid; gap: 0; }
.media-optimization-table article {
  align-items: center;
  border-bottom: 1px solid var(--border);
  display: grid;
  gap: 10px;
  grid-template-columns: 42px minmax(0, 1fr) 72px minmax(120px, .7fr) auto;
  padding: 8px 0;
}
.media-optimization-table article:last-child { border-bottom: 0; }
.media-optimization-table .media-optimization-thumb { height: 40px; width: 40px; }
.media-optimization-table article > div { min-width: 0; }
.media-optimization-table article > div strong,
.media-optimization-table article > div small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.media-optimization-table article > em { color: #ffcf63; font-size: 11px; }

html.theme-light .admin-media-workspace,
body.theme-light .admin-media-workspace { --panel: #ffffff; --panel-2: #f5f7fa; --text: #172033; --muted: #66738a; --border: #d4dae3; color: #172033; }
html.theme-light .media-bulk-toolbar { background: #f5f7fa; }
html.theme-light .media-filter-group button.is-active { background: #fff1f3; }

@media (max-width: 1380px) {
  .media-operations-shell { grid-template-columns: 196px minmax(0, 1fr) 284px; }
  .admin-media-workspace .media-asset-grid { grid-template-columns: repeat(auto-fill, minmax(142px, 1fr)); }
}

@media (max-width: 1120px) {
  .media-operations-shell { grid-template-columns: 210px minmax(0, 1fr); }
  .media-asset-inspector { grid-column: 1 / -1; max-height: none; position: static; }
  .media-inspector-form { grid-template-columns: 1fr 1fr; }
  .media-inspector-form > button { align-self: end; }
}

@media (max-width: 780px) {
  .media-operations-command { align-items: stretch; flex-direction: column; }
  .media-operations-command-actions { display: grid; grid-template-columns: 1fr; }
  .admin-media-kpis { grid-template-columns: 1fr 1fr; }
  .admin-media-kpis article:nth-child(2) { border-right: 0; }
  .admin-media-kpis article:nth-child(-n + 2) { border-bottom: 1px solid var(--border); }
  .media-operations-shell { grid-template-columns: 1fr; }
  .media-library-navigator { max-height: none; position: static; }
  .media-filter-group { grid-template-columns: 1fr 1fr; }
  .media-filter-group > span { grid-column: 1 / -1; }
  .media-bulk-toolbar { grid-template-columns: 1fr 1fr; }
  .media-bulk-toolbar .detail-kicker,
  .media-bulk-toolbar .media-select-all { grid-column: 1 / -1; }
  .media-asset-board-head { align-items: stretch; flex-direction: column; }
  .media-board-tools { display: grid; grid-template-columns: 1fr auto; }
  .media-inspector-form { grid-template-columns: 1fr; }
  .media-optimization-table article { grid-template-columns: 42px minmax(0, 1fr) auto; }
  .media-optimization-table article > em { grid-column: 2 / -1; }
}

@media (max-width: 520px) {
  .admin-media-kpis { grid-template-columns: 1fr; }
  .admin-media-kpis article { border-bottom: 1px solid var(--border); border-right: 0; }
  .admin-media-workspace .media-asset-grid { grid-template-columns: 1fr 1fr; }
  .media-bulk-toolbar { grid-template-columns: 1fr; }
  .media-bulk-toolbar > * { grid-column: 1 !important; }
  .media-filter-group { grid-template-columns: 1fr; }
  .media-filter-group > span { grid-column: 1; }
  .media-board-tools { grid-template-columns: 1fr; }
  .media-view-switch { width: 100%; }
  .media-optimization-table article { grid-template-columns: 42px minmax(0, 1fr); }
  .media-optimization-table article > span:not(.media-optimization-thumb),
  .media-optimization-table article > em,
  .media-optimization-table article > form { grid-column: 2; }
}

/* Game tabs: ranking group layout */
.game-tabs {
  display: block;
  width: min(var(--page-max), calc(100% - (var(--page-pad) * 2)));
  margin: 28px auto 36px;
  padding: 6px;
  overflow: visible;
  border: 1px solid #2a3443;
  border-radius: 8px;
  background: #0c1118;
  box-shadow: inset 0 1px 0 rgb(255 255 255 / 3%);
}

.game-tabs-ranking {
  display: flex;
  align-items: stretch;
  gap: 8px;
  width: 100%;
  min-width: 0;
}

.game-tab-cluster {
  position: relative;
  display: flex;
  align-items: stretch;
  min-width: 0;
  padding: 4px;
  border: 1px solid #273241;
  border-radius: 6px;
  background: #111823;
}

.game-tab-cluster-primary {
  flex: 3 1 470px;
}

.game-tab-cluster-rankings {
  flex: 2 1 340px;
  padding-top: 23px;
  border-color: rgb(34 211 238 / 38%);
  background: linear-gradient(180deg, rgb(34 211 238 / 7%), #111823 50%);
}

.game-tab-cluster-rankings::before {
  content: "";
  position: absolute;
  inset: 6px auto 6px -1px;
  width: 3px;
  border-radius: 0 3px 3px 0;
  background: #22d3ee;
  box-shadow: 0 0 14px rgb(34 211 238 / 38%);
}

.game-tab-cluster-support {
  flex: 1 1 150px;
}

.game-tab-cluster.is-active {
  border-color: rgb(255 75 95 / 48%);
  box-shadow: inset 0 0 0 1px rgb(255 75 95 / 8%);
}

.game-tab-group-label {
  position: absolute;
  top: 6px;
  left: 14px;
  color: #67e8f9;
  font-size: 10px;
  font-weight: 800;
  line-height: 1;
  letter-spacing: 0;
  text-transform: uppercase;
}

.game-tab-group-links {
  display: grid;
  grid-template-columns: repeat(var(--tab-count, 1), minmax(0, 1fr));
  grid-auto-flow: column;
  grid-auto-columns: minmax(0, 1fr);
  align-items: stretch;
  gap: 2px;
  width: 100%;
  min-width: 0;
}

.game-tabs-ranking .game-tab-link {
  position: relative;
  display: inline-flex;
  flex: 1 1 0;
  align-items: center;
  justify-content: center;
  gap: 8px;
  width: 100%;
  min-width: 0;
  min-height: 50px;
  padding: 8px 10px;
  overflow: hidden;
  border: 0;
  border-radius: 4px;
  background: transparent;
  box-shadow: none;
  color: #cbd5e1;
  font-size: 13px;
  font-weight: 750;
  line-height: 1.2;
  text-align: center;
  text-decoration: none;
  transition: background-color 160ms ease, color 160ms ease, transform 160ms ease;
}

.game-tabs-ranking .game-tab-link::after {
  content: "";
  position: absolute;
  right: 14px;
  bottom: 1px;
  left: 14px;
  height: 2px;
  border-radius: 2px;
  background: #ff4b5f;
  box-shadow: 0 0 12px rgb(255 75 95 / 38%);
  transform: scaleX(0);
  transform-origin: center;
  transition: transform 160ms ease;
}

.game-tabs-ranking .game-tab-link:hover,
.game-tabs-ranking .game-tab-link:focus-visible {
  background: #182231;
  color: #f8fafc;
  transform: translateY(-1px);
}

.game-tabs-ranking .game-tab-link.active {
  background: linear-gradient(180deg, rgb(255 75 95 / 13%), rgb(255 75 95 / 4%));
  color: #ffffff;
}

.game-tabs-ranking .game-tab-link.active::after {
  transform: scaleX(1);
}

.game-tab-link-icon {
  display: inline-grid;
  flex: 0 0 20px;
  place-items: center;
  width: 20px;
  height: 20px;
  color: #94a3b8;
}

.game-tab-link.active .game-tab-link-icon {
  color: #ff6576;
}

.game-tab-link-icon .nav-icon,
.game-tab-link-icon .nav-icon svg,
.game-tab-link-icon .game-tab-icon {
  display: block;
  width: 18px;
  height: 18px;
}

.game-tab-link-icon .nav-icon svg {
  fill: none;
  stroke: currentColor;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-width: 1.8;
}

.game-tab-link-icon .game-tab-icon {
  object-fit: contain;
}

.game-tab-link-label {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

html.theme-light .game-tabs-ranking {
  color: #172033;
}

html.theme-light .game-tabs {
  border-color: #cbd5e1;
  background: #f8fafc;
  box-shadow: 0 8px 24px rgb(15 23 42 / 6%);
}

html.theme-light .game-tab-cluster {
  border-color: #d5dce6;
  background: #ffffff;
}

html.theme-light .game-tab-cluster-rankings {
  border-color: rgb(8 145 178 / 38%);
  background: linear-gradient(180deg, rgb(8 145 178 / 8%), #ffffff 52%);
}

html.theme-light .game-tab-cluster.is-active {
  border-color: rgb(225 29 72 / 42%);
}

html.theme-light .game-tabs-ranking .game-tab-link {
  color: #334155;
}

html.theme-light .game-tabs-ranking .game-tab-link:hover,
html.theme-light .game-tabs-ranking .game-tab-link:focus-visible {
  background: #f1f5f9;
  color: #0f172a;
}

html.theme-light .game-tabs-ranking .game-tab-link.active {
  background: linear-gradient(180deg, rgb(244 63 94 / 11%), rgb(244 63 94 / 3%));
  color: #111827;
}

html.theme-light .game-tab-link-icon {
  color: #64748b;
}

html.theme-light .game-tab-link.active .game-tab-link-icon {
  color: #e11d48;
}

@media (max-width: 980px) {
  .game-tabs-ranking {
    display: grid;
    grid-template-columns: minmax(0, 2fr) minmax(160px, 1fr);
  }

  .game-tab-cluster-primary {
    grid-column: 1 / -1;
  }
}

@media (max-width: 760px) {
  .game-tabs {
    margin: 20px 0 28px;
    padding: 5px;
  }

  .game-tabs-ranking {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 5px;
  }

  .game-tab-cluster,
  .game-tab-group-links {
    display: contents;
  }

  .game-tab-group-label {
    display: none;
  }

  .game-tabs-ranking .game-tab-link {
    min-height: 48px;
    padding: 7px 6px;
    border: 1px solid #273241;
    background: #111823;
    font-size: 11px;
  }

  .game-tabs-ranking .game-tab-link.active {
    border-color: rgb(255 75 95 / 55%);
  }

  html.theme-light .game-tabs-ranking .game-tab-link {
    border-color: #d5dce6;
    background: #ffffff;
  }
}

@media (max-width: 430px) {
  .game-tabs-ranking {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .game-tabs-ranking .game-tab-link {
    min-height: 46px;
  }
}

/* Game tabs: segmented deck layout */
.game-tabs.game-tabs-segmented {
  display: block;
  width: min(var(--page-max), calc(100% - (var(--page-pad) * 2)));
  margin: 20px auto 24px;
  padding: 0;
  overflow: hidden;
  border: 1px solid #313c4c;
  border-radius: 8px;
  background: #0c1118;
  box-shadow: 0 12px 28px rgb(0 0 0 / 18%), inset 0 1px 0 rgb(255 255 255 / 4%);
}

.game-tabs-deck {
  display: grid;
  grid-template-columns: repeat(var(--game-tab-count, 1), minmax(0, 1fr));
  align-items: stretch;
  width: 100%;
  min-width: 0;
}

.game-tabs-segmented .game-tab-link {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 9px;
  width: 100%;
  min-width: 0;
  min-height: 54px;
  padding: 9px 12px;
  overflow: hidden;
  border: 0;
  border-left: 1px solid #273241;
  border-radius: 0;
  background: linear-gradient(180deg, #141c27, #101720);
  box-shadow: none;
  color: #cbd5e1;
  font-size: 13px;
  font-weight: 750;
  line-height: 1.2;
  text-align: center;
  text-decoration: none;
  transition: background-color 160ms ease, color 160ms ease, box-shadow 160ms ease;
}

.game-tabs-segmented .game-tab-link:first-child {
  border-left: 0;
}

.game-tabs-segmented .game-tab-link::after {
  content: "";
  position: absolute;
  right: 18%;
  bottom: 0;
  left: 18%;
  height: 3px;
  border-radius: 3px 3px 0 0;
  background: #ff4b5f;
  box-shadow: 0 0 14px rgb(255 75 95 / 48%);
  transform: scaleX(0);
  transform-origin: center;
  transition: transform 160ms ease;
}

.game-tabs-segmented .game-tab-link:hover,
.game-tabs-segmented .game-tab-link:focus-visible {
  z-index: 1;
  background: linear-gradient(180deg, #1b2634, #151e2a);
  color: #ffffff;
}

.game-tabs-segmented .game-tab-link:focus-visible {
  outline: 2px solid #ff7282;
  outline-offset: -3px;
}

.game-tabs-segmented .game-tab-link.active {
  z-index: 2;
  background: linear-gradient(135deg, #f3164c, #cc123d);
  box-shadow: inset 0 1px 0 rgb(255 255 255 / 22%), inset 0 -12px 24px rgb(70 0 20 / 16%);
  color: #ffffff;
}

.game-tabs-segmented .game-tab-link.active::after {
  transform: scaleX(1);
  background: #ffffff;
  box-shadow: 0 0 12px rgb(255 255 255 / 42%);
}

.game-tabs-segmented .game-tab-link-icon {
  display: inline-grid;
  flex: 0 0 20px;
  place-items: center;
  width: 20px;
  height: 20px;
  color: #94a3b8;
}

.game-tabs-segmented .game-tab-link.active .game-tab-link-icon {
  color: #ffffff;
}

.game-tabs-segmented .game-tab-link-label {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

html.theme-light .game-tabs-segmented {
  border-color: #cbd5e1;
  background: #ffffff;
  box-shadow: 0 10px 24px rgb(15 23 42 / 8%);
}

html.theme-light .game-tabs-segmented .game-tab-link {
  border-left-color: #d7dee8;
  background: linear-gradient(180deg, #ffffff, #f8fafc);
  color: #334155;
}

html.theme-light .game-tabs-segmented .game-tab-link:hover,
html.theme-light .game-tabs-segmented .game-tab-link:focus-visible {
  background: #eef2f7;
  color: #0f172a;
}

html.theme-light .game-tabs-segmented .game-tab-link.active {
  background: linear-gradient(135deg, #f43f5e, #e11d48);
  color: #ffffff;
}

html.theme-light .game-tabs-segmented .game-tab-link-icon {
  color: #64748b;
}

html.theme-light .game-tabs-segmented .game-tab-link.active .game-tab-link-icon {
  color: #ffffff;
}

@media (max-width: 760px) {
  .game-tabs.game-tabs-segmented {
    width: 100%;
    margin: 20px 0 28px;
  }

  .game-tabs-deck {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .game-tabs-segmented .game-tab-link {
    min-height: 50px;
    padding: 8px;
    border-top: 1px solid #273241;
    font-size: 12px;
  }

  .game-tabs-segmented .game-tab-link:nth-child(odd) {
    border-left: 0;
  }

  .game-tabs-segmented .game-tab-link:nth-child(-n + 2) {
    border-top: 0;
  }

  html.theme-light .game-tabs-segmented .game-tab-link {
    border-top-color: #d7dee8;
  }
}

@media (max-width: 360px) {
  .game-tabs-deck {
    grid-template-columns: 1fr;
  }

  .game-tabs-segmented .game-tab-link {
    border-left: 0;
  }

  .game-tabs-segmented .game-tab-link:nth-child(2) {
    border-top: 1px solid #273241;
  }

  html.theme-light .game-tabs-segmented .game-tab-link:nth-child(2) {
    border-top-color: #d7dee8;
  }
}
/* Game overview: compact vertical rhythm */
.game-overview-flow {
  display: grid;
  row-gap: clamp(24px, 3vw, 38px);
  padding-bottom: clamp(32px, 4vw, 52px);
}

.game-overview-flow > .game-hero {
  margin-top: clamp(20px, 3vw, 36px);
  margin-bottom: 0;
}

.game-overview-flow > .game-tabs-segmented {
  margin-top: 0;
  margin-bottom: 0;
}

.game-overview-flow > .section {
  padding-top: 0;
  padding-bottom: 0;
}

.game-overview-flow > .game-command-overview {
  margin-top: 0;
}

.game-overview-flow > .adsense-placement-section {
  padding-block: 0;
}

.game-overview-flow .overview-section-heading {
  margin-bottom: clamp(16px, 2vw, 22px);
}

@media (max-width: 760px) {
  .game-overview-flow {
    row-gap: 20px;
    padding-bottom: 32px;
  }

  .game-overview-flow > .game-hero {
    margin-top: 14px;
  }

  .game-overview-flow > .game-tabs-segmented {
    width: min(var(--page-max), calc(100% - (var(--page-pad) * 2)));
    margin: 0 auto;
  }
}

/* Home spotlight: Editorial Rail */
.home-spotlight-editorial {
  min-height: 0;
  border-color: rgba(244, 63, 94, 0.26);
  background: #070b11;
}

.home-spotlight-editorial.has-rail {
  grid-template-columns: minmax(0, 1fr) minmax(238px, 272px);
}

.home-spotlight-editorial .home-spotlight-stage {
  grid-template-areas: "spotlight-stack";
  min-height: 540px;
  align-items: stretch;
  background: #05080d;
}

.home-spotlight-editorial .home-spotlight-slide,
.home-spotlight-editorial .home-spotlight-slide.is-active {
  position: relative;
  inset: auto;
  grid-area: spotlight-stack;
  grid-template-columns: minmax(0, 1fr);
  grid-template-rows: minmax(452px, 1fr) auto;
  grid-template-areas:
    "editorial"
    "dock";
}

.home-spotlight-editorial .home-spotlight-slide.is-active {
  z-index: 1;
}

.home-spotlight-editorial .home-spotlight-media {
  grid-area: editorial;
  min-height: 452px;
  height: 100%;
  place-items: stretch;
  background: #080c12;
}

.home-spotlight-editorial .home-spotlight-media::after {
  background:
    linear-gradient(90deg, rgba(4, 7, 11, 0.96) 0%, rgba(4, 7, 11, 0.82) 36%, rgba(4, 7, 11, 0.22) 76%, rgba(4, 7, 11, 0.48) 100%),
    linear-gradient(180deg, rgba(4, 7, 11, 0.1) 28%, rgba(4, 7, 11, 0.9) 100%);
}

.home-spotlight-editorial .home-spotlight-media img {
  transform: scale(1.015);
  transition: transform 700ms ease;
}

.home-spotlight-editorial .home-spotlight-slide.is-active .home-spotlight-media img {
  transform: scale(1);
}

.home-spotlight-editorial .home-spotlight-copy {
  grid-area: editorial;
  position: relative;
  z-index: 2;
  align-self: end;
  align-content: end;
  width: min(690px, 70%);
  min-width: 0;
  padding: clamp(30px, 4vw, 54px);
  padding-right: 24px;
  background: none;
  pointer-events: none;
}

.home-spotlight-editorial .home-spotlight-copy > * {
  pointer-events: auto;
}

.home-spotlight-editorial .home-spotlight-copy h2 {
  max-width: 12ch;
  font-size: clamp(44px, 5.4vw, 72px);
  line-height: 0.94;
  text-wrap: balance;
}

.home-spotlight-editorial .home-spotlight-copy p {
  display: -webkit-box;
  max-width: 610px;
  overflow: hidden;
  color: #d7e2ee;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  line-clamp: 3;
}

.home-spotlight-editorial .home-spotlight-facts {
  max-width: 540px;
}

.home-spotlight-editorial .home-spotlight-facts span {
  border-color: rgba(214, 229, 242, 0.2);
  background: rgba(7, 12, 18, 0.68);
  backdrop-filter: blur(10px);
}

.home-spotlight-editorial .home-spotlight-actions a {
  min-height: 38px;
  border-color: rgba(214, 229, 242, 0.23);
  color: #f4f8fc;
  background: rgba(7, 12, 18, 0.78);
  backdrop-filter: blur(10px);
}

.home-spotlight-editorial .home-spotlight-actions .nav-icon {
  width: 17px;
  height: 17px;
  color: #ff4b67;
}

.home-spotlight-editorial .home-spotlight-content-dock {
  grid-area: dock;
  grid-template-columns: minmax(150px, 0.72fr) repeat(4, minmax(0, 1fr));
  align-items: stretch;
  gap: 8px;
  padding: 10px;
  background:
    linear-gradient(90deg, rgba(54, 217, 255, 0.045), transparent 42%, rgba(244, 63, 94, 0.05)),
    #080d14;
}

.home-spotlight-editorial .home-spotlight-dock-label {
  display: grid;
  align-content: center;
  gap: 4px;
  min-width: 0;
  padding: 10px 12px;
  border-left: 2px solid #f43f5e;
}

.home-spotlight-editorial .home-spotlight-dock-label span {
  color: #f43f5e;
  font-size: 11px;
  font-weight: 950;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.home-spotlight-editorial .home-spotlight-dock-label small {
  color: #8294a5;
  font-size: 10px;
}

.home-spotlight-editorial .home-spotlight-pill {
  grid-template-columns: 38px minmax(0, 1fr);
  min-height: 54px;
  padding: 6px 8px;
}

.home-spotlight-editorial .home-spotlight-pill-icon {
  width: 38px;
  height: 38px;
}

.home-spotlight-editorial .home-spotlight-rail {
  gap: 14px;
  padding: 18px 14px 14px;
  background:
    linear-gradient(180deg, rgba(244, 63, 94, 0.08), transparent 34%),
    #0a0f16;
}

.home-spotlight-editorial .home-spotlight-rail-head span {
  color: #f43f5e;
}

.home-spotlight-editorial .home-spotlight-rail-list {
  gap: 8px;
}

.home-spotlight-editorial .home-spotlight-rail-item {
  grid-template-columns: 44px minmax(0, 1fr);
  gap: 11px;
  min-height: 66px;
  padding: 9px 10px;
  border-radius: 7px;
  background: rgba(255, 255, 255, 0.025);
}

.home-spotlight-editorial .home-spotlight-rail-item:hover,
.home-spotlight-editorial .home-spotlight-rail-item:focus-visible {
  transform: translateX(-3px);
}

.home-spotlight-editorial .home-spotlight-rail-item.is-active {
  border-color: #f43f5e;
  background:
    linear-gradient(90deg, rgba(244, 63, 94, 0.2), rgba(244, 63, 94, 0.035)),
    rgba(255, 255, 255, 0.035);
  box-shadow: inset 3px 0 0 #f43f5e, 0 8px 24px rgba(244, 63, 94, 0.08);
}

.home-spotlight-editorial .home-spotlight-rail-index {
  display: grid;
  place-items: center;
  width: 42px;
  height: 42px;
  border: 1px solid rgba(244, 63, 94, 0.48);
  border-radius: 6px;
  color: #f5f8fb;
  background: rgba(244, 63, 94, 0.08);
  font-size: 15px;
  font-weight: 950;
  font-variant-numeric: tabular-nums;
}

.home-spotlight-editorial .home-spotlight-rail-item.is-active .home-spotlight-rail-index {
  color: #ffffff;
  border-color: #ff647e;
  background: #e11d48;
}

.home-spotlight-editorial .home-spotlight-rail-thumb {
  display: none;
}

.home-spotlight-editorial .home-spotlight-rail-copy strong {
  font-size: 13px;
}

.home-spotlight-editorial .home-spotlight-controls {
  padding-top: 2px;
}

html.theme-light .home-spotlight-editorial {
  border-color: rgba(190, 24, 93, 0.3);
  background: #ffffff;
}

html.theme-light .home-spotlight-editorial .home-spotlight-copy h2,
html.theme-light .home-spotlight-editorial .home-spotlight-copy p,
html.theme-light .home-spotlight-editorial .home-spotlight-facts strong {
  color: #ffffff;
}

html.theme-light .home-spotlight-editorial .home-spotlight-rail {
  border-color: #d6dde6;
  background:
    linear-gradient(180deg, rgba(244, 63, 94, 0.07), transparent 38%),
    #ffffff;
}

html.theme-light .home-spotlight-editorial .home-spotlight-rail-head small,
html.theme-light .home-spotlight-editorial .home-spotlight-rail-copy small {
  color: #607084;
}

html.theme-light .home-spotlight-editorial .home-spotlight-rail-copy strong {
  color: #111827;
}

html.theme-light .home-spotlight-editorial .home-spotlight-rail-item {
  border-color: #d5dde7;
  background: #f8fafc;
}

html.theme-light .home-spotlight-editorial .home-spotlight-rail-item.is-active {
  border-color: #e11d48;
  background: #fff1f4;
}

html.theme-light .home-spotlight-editorial .home-spotlight-controls button {
  color: #172033;
  border-color: #d5dde7;
  background: #f8fafc;
}

html.theme-light .home-spotlight-editorial .home-spotlight-content-dock {
  border-color: #d6dde6;
  background:
    linear-gradient(90deg, rgba(8, 145, 178, 0.04), transparent 42%, rgba(225, 29, 72, 0.035)),
    #ffffff;
}

html.theme-light .home-spotlight-editorial .home-spotlight-dock-label small {
  color: #64748b;
}

html.theme-light .home-spotlight-editorial .home-spotlight-pill {
  color: #172033;
  border-color: #d5dde7;
  background: #f8fafc;
}

html.theme-light .home-spotlight-editorial .home-spotlight-pill-copy strong {
  color: #172033;
}

html.theme-light .home-spotlight-editorial .home-spotlight-pill-copy em {
  color: #087c96;
}

@media (max-width: 760px) {
  .home-spotlight-editorial.has-rail {
    grid-template-columns: minmax(0, 1fr);
  }

  .home-spotlight-editorial .home-spotlight-stage {
    min-height: 0;
  }

  .home-spotlight-editorial .home-spotlight-slide,
  .home-spotlight-editorial .home-spotlight-slide.is-active {
    grid-template-columns: minmax(0, 1fr);
    grid-template-rows: minmax(470px, auto) auto;
    grid-template-areas:
      "editorial"
      "dock";
  }

  .home-spotlight-editorial .home-spotlight-media {
    min-height: 470px;
    height: 470px;
  }

  .home-spotlight-editorial .home-spotlight-media::after {
    background:
      linear-gradient(180deg, rgba(4, 7, 11, 0.1) 10%, rgba(4, 7, 11, 0.5) 43%, rgba(4, 7, 11, 0.98) 82%),
      linear-gradient(90deg, rgba(4, 7, 11, 0.68), rgba(4, 7, 11, 0.2));
  }

  .home-spotlight-editorial .home-spotlight-copy {
    width: 100%;
    min-height: 470px;
    gap: 11px;
    padding: 170px 16px 18px;
  }

  .home-spotlight-editorial .home-spotlight-copy h2 {
    max-width: none;
    font-size: clamp(36px, 12vw, 48px);
  }

  .home-spotlight-editorial .home-spotlight-copy p {
    font-size: 14px;
    line-height: 1.5;
    -webkit-line-clamp: 3;
    line-clamp: 3;
  }

  .home-spotlight-editorial .home-spotlight-facts {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .home-spotlight-editorial .home-spotlight-actions {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .home-spotlight-editorial .home-spotlight-content-dock {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .home-spotlight-editorial .home-spotlight-dock-label {
    grid-column: 1 / -1;
    min-height: 44px;
  }

  .home-spotlight-editorial .home-spotlight-rail {
    border-left: 0;
  }

  .home-spotlight-editorial .home-spotlight-rail-list {
    display: flex;
  }

  .home-spotlight-editorial .home-spotlight-rail-item {
    flex: 0 0 min(220px, 72vw);
    grid-template-columns: 40px minmax(0, 1fr);
    min-height: 62px;
  }

  .home-spotlight-editorial .home-spotlight-rail-index {
    width: 38px;
    height: 38px;
  }
}

@media (max-width: 480px) {
  .home-spotlight-editorial .home-spotlight-slide,
  .home-spotlight-editorial .home-spotlight-slide.is-active {
    grid-template-rows: minmax(450px, auto) auto;
  }

  .home-spotlight-editorial .home-spotlight-media {
    min-height: 450px;
    height: 450px;
  }

  .home-spotlight-editorial .home-spotlight-copy {
    min-height: 450px;
    padding-top: 150px;
  }

  .home-spotlight-editorial .home-spotlight-facts,
  .home-spotlight-editorial .home-spotlight-actions {
    gap: 7px;
  }
}
/* Home spotlight: Cinematic Strip Rail */
.home-spotlight-editorial .home-spotlight-rail-cinematic {
  gap: 12px;
  background: #0a0f16;
}

.home-spotlight-rail-cinematic .home-spotlight-rail-list {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  grid-auto-rows: minmax(72px, 1fr);
  align-content: stretch;
  gap: 8px;
}

.home-spotlight-rail-cinematic .home-spotlight-rail-item {
  position: relative;
  isolation: isolate;
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  grid-template-rows: minmax(0, 1fr);
  align-items: stretch;
  min-height: 72px;
  height: 100%;
  padding: 0;
  overflow: hidden;
  border-color: rgba(173, 194, 211, 0.2);
  border-radius: 6px;
  background: #080d14;
  box-shadow: none;
}

.home-spotlight-rail-cinematic .home-spotlight-rail-item::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  background:
    linear-gradient(90deg, rgba(4, 8, 13, 0.94) 0%, rgba(4, 8, 13, 0.76) 48%, rgba(4, 8, 13, 0.2) 100%),
    linear-gradient(180deg, rgba(4, 8, 13, 0.04) 20%, rgba(4, 8, 13, 0.92) 100%);
  transition: background 180ms ease;
}

.home-spotlight-rail-cinematic .home-spotlight-rail-thumb {
  position: absolute;
  inset: 0;
  z-index: 0;
  display: grid;
  place-items: center;
  width: 100%;
  height: 100%;
  overflow: hidden;
  border: 0;
  border-radius: 0;
  background: color-mix(in srgb, var(--game-accent) 26%, #080d14);
}

.home-spotlight-rail-cinematic .home-spotlight-rail-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  opacity: 0.86;
  transform: scale(1.01);
  transition: transform 260ms ease, opacity 180ms ease;
}

.home-spotlight-rail-cinematic .home-spotlight-rail-thumb > span {
  color: #f8fbff;
  font-size: 22px;
  text-shadow: 0 2px 10px rgba(0, 0, 0, 0.62);
}

.home-spotlight-rail-cinematic .home-spotlight-rail-index {
  position: absolute;
  top: 9px;
  left: 10px;
  z-index: 3;
  width: auto;
  min-width: 26px;
  height: 22px;
  padding: 0 6px;
  border-color: rgba(244, 63, 94, 0.62);
  border-radius: 4px;
  color: #ffffff;
  background: rgba(5, 9, 14, 0.76);
  font-size: 11px;
  line-height: 1;
  text-shadow: 0 1px 4px rgba(0, 0, 0, 0.72);
  backdrop-filter: blur(6px);
}

.home-spotlight-rail-cinematic .home-spotlight-rail-copy {
  position: relative;
  z-index: 3;
  grid-column: 1;
  grid-row: 1;
  align-self: end;
  gap: 2px;
  min-width: 0;
  padding: 31px 11px 9px;
  text-shadow: 0 2px 8px rgba(0, 0, 0, 0.92);
}

.home-spotlight-rail-cinematic .home-spotlight-rail-copy strong {
  color: #ffffff;
  font-size: 13px;
  line-height: 1.16;
}

.home-spotlight-rail-cinematic .home-spotlight-rail-copy small {
  color: #d1dce6;
  font-size: 10px;
  line-height: 1.2;
}

.home-spotlight-rail-cinematic .home-spotlight-rail-item:hover,
.home-spotlight-rail-cinematic .home-spotlight-rail-item:focus-visible {
  transform: translateX(-2px);
  border-color: color-mix(in srgb, var(--game-accent) 54%, #f43f5e);
}

.home-spotlight-rail-cinematic .home-spotlight-rail-item:hover .home-spotlight-rail-thumb img,
.home-spotlight-rail-cinematic .home-spotlight-rail-item:focus-visible .home-spotlight-rail-thumb img,
.home-spotlight-rail-cinematic .home-spotlight-rail-item.is-active .home-spotlight-rail-thumb img {
  opacity: 1;
  transform: scale(1.05);
}

.home-spotlight-rail-cinematic .home-spotlight-rail-item.is-active {
  border-color: #f43f5e;
  background: #080d14;
  box-shadow: inset 3px 0 0 #f43f5e, 0 8px 22px rgba(244, 63, 94, 0.12);
}

.home-spotlight-rail-cinematic .home-spotlight-rail-item.is-active::after {
  background:
    linear-gradient(90deg, rgba(18, 5, 10, 0.94) 0%, rgba(18, 5, 10, 0.72) 48%, rgba(244, 63, 94, 0.12) 100%),
    linear-gradient(180deg, rgba(4, 8, 13, 0.02) 18%, rgba(4, 8, 13, 0.9) 100%);
}

.home-spotlight-rail-cinematic .home-spotlight-rail-item.is-active .home-spotlight-rail-index {
  color: #ffffff;
  border-color: #ff7189;
  background: #e11d48;
}

html.theme-light .home-spotlight-rail-cinematic .home-spotlight-rail-item,
html.theme-light .home-spotlight-rail-cinematic .home-spotlight-rail-item.is-active {
  border-color: rgba(190, 24, 93, 0.42);
  background: #080d14;
}

html.theme-light .home-spotlight-rail-cinematic .home-spotlight-rail-copy strong {
  color: #ffffff;
  text-shadow: 0 2px 8px rgba(0, 0, 0, 0.92);
}

html.theme-light .home-spotlight-rail-cinematic .home-spotlight-rail-copy small {
  color: #d1dce6;
}

@media (max-width: 760px) {
  .home-spotlight-editorial .home-spotlight-rail-cinematic {
    padding: 12px;
  }

  .home-spotlight-rail-cinematic .home-spotlight-rail-list {
    display: flex;
    grid-template-columns: none;
    grid-auto-rows: auto;
    gap: 8px;
    overflow-x: auto;
    padding-bottom: 5px;
    scroll-snap-type: x mandatory;
  }

  .home-spotlight-rail-cinematic .home-spotlight-rail-item {
    flex: 0 0 min(250px, 82vw);
    min-height: 84px;
    height: 84px;
    scroll-snap-align: start;
  }

  .home-spotlight-rail-cinematic .home-spotlight-rail-copy {
    padding: 34px 11px 9px;
  }
}

@media (max-width: 480px) {
  .home-spotlight-rail-cinematic .home-spotlight-rail-item {
    flex-basis: min(230px, 84vw);
    min-height: 82px;
    height: 82px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .home-spotlight-rail-cinematic .home-spotlight-rail-thumb img,
  .home-spotlight-rail-cinematic .home-spotlight-rail-item {
    transition: none;
  }
}
/* Command Overview Option 04: content timeline */
/* Command Overview polish: unified rhythm */
/* Command Overview reference layout: unframed shell */
.game-command-overview {
  --command-accent: #ff405e;
  display: grid;
  gap: 12px;
  margin-top: 16px;
  padding: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
}

.game-command-head {
  display: flex;
  min-width: 0;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding-bottom: 2px;
}

.game-command-head h2 {
  margin-top: 4px;
  font-size: clamp(26px, 2.7vw, 38px);
  line-height: 1.08;
}

.game-command-head small {
  display: inline-flex;
  align-items: center;
  min-height: 0;
  padding: 0;
  color: #9eb0c3;
  border: 0;
  background: transparent;
  white-space: nowrap;
}

.game-command-metric-strip {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 10px;
}

.game-command-metric-card {
  display: grid;
  grid-template-columns: 38px minmax(0, 1fr);
  align-items: center;
  gap: 10px;
  min-width: 0;
  min-height: 76px;
  padding: 11px;
  color: #edf5ff;
  border: 1px solid #2d3947;
  background: rgba(12, 20, 30, 0.88);
  text-decoration: none;
  transition: border-color 150ms ease, background 150ms ease, transform 150ms ease;
}

.game-command-metric-card:hover,
.game-command-metric-card:focus-visible {
  border-color: rgba(255, 64, 94, 0.72);
  background: rgba(22, 29, 40, 0.96);
  transform: translateY(-2px);
}

.game-command-metric-icon {
  display: inline-grid;
  place-items: center;
  width: 38px;
  height: 38px;
  color: var(--command-accent);
  border: 1px solid rgba(255, 64, 94, 0.42);
  background: rgba(255, 64, 94, 0.08);
}

.game-command-metric-icon svg {
  width: 18px;
  height: 18px;
}

.game-command-metric-copy {
  display: grid;
  min-width: 0;
}

.game-command-metric-copy small,
.game-command-metric-copy em {
  overflow: hidden;
  color: #91a6ba;
  font-size: 11px;
  font-style: normal;
  line-height: 1.25;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.game-command-metric-copy small {
  color: #b7c8dc;
  font-weight: 800;
  text-transform: uppercase;
}

.game-command-metric-copy strong {
  overflow: hidden;
  margin: 2px 0;
  font-size: 23px;
  line-height: 1;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.game-command-timeline-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.7fr) minmax(300px, 0.78fr);
  gap: 10px;
  align-items: stretch;
}

.game-command-activity-timeline,
.game-command-module-panel {
  min-width: 0;
  padding: 12px;
  border: 1px solid #273441;
  background: #081019;
}

.game-command-panel-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  min-height: 42px;
  padding-bottom: 10px;
  border-bottom: 1px solid #273340;
}

.game-command-panel-head > div {
  display: grid;
  min-width: 0;
  gap: 2px;
}

.game-command-panel-head span {
  color: #30ddf5;
  font-size: 11px;
  font-weight: 900;
  text-transform: uppercase;
}

.game-command-panel-head strong {
  overflow: hidden;
  font-size: 15px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.game-command-panel-head small {
  flex: 0 0 auto;
  color: #91a6ba;
  font-size: 11px;
}

.game-command-timeline-list {
  position: relative;
  display: grid;
  gap: 0;
  padding-top: 4px;
}

.game-command-timeline-item {
  position: relative;
  display: grid;
  grid-template-columns: 120px minmax(0, 1fr) 30px;
  align-items: center;
  gap: 12px;
  min-width: 0;
  min-height: 72px;
  padding: 10px 4px 10px 22px;
  color: #edf5ff;
  border-bottom: 1px solid #24303d;
  text-decoration: none;
}

.game-command-timeline-item:last-child {
  border-bottom: 0;
}

.game-command-timeline-item::before {
  content: "";
  position: absolute;
  left: 6px;
  top: 0;
  bottom: 0;
  width: 1px;
  background: #2d3947;
}

.game-command-timeline-marker {
  position: absolute;
  z-index: 1;
  left: 2px;
  top: 50%;
  width: 9px;
  height: 9px;
  border: 2px solid #0b121b;
  border-radius: 50%;
  background: var(--command-accent);
  box-shadow: 0 0 0 1px rgba(255, 64, 94, 0.65);
  transform: translateY(-50%);
}

.game-command-timeline-item:hover,
.game-command-timeline-item:focus-visible {
  background: rgba(255, 64, 94, 0.055);
}

.game-command-timeline-meta,
.game-command-timeline-copy {
  display: grid;
  min-width: 0;
  gap: 3px;
}

.game-command-timeline-meta strong {
  color: var(--command-accent);
  font-size: 11px;
  text-transform: uppercase;
}

.game-command-timeline-meta small,
.game-command-timeline-copy small {
  overflow: hidden;
  color: #8fa3b8;
  font-size: 11px;
  line-height: 1.3;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.game-command-timeline-copy > strong {
  overflow: hidden;
  font-size: 15px;
  line-height: 1.25;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.game-command-timeline-open {
  display: inline-grid;
  place-items: center;
  width: 28px;
  height: 28px;
  color: #b8c7d8;
  border: 1px solid #334151;
  border-radius: 50%;
}

.game-command-timeline-open svg {
  width: 14px;
  height: 14px;
}

.game-command-module-panel {
  display: grid;
  align-content: start;
}

.game-command-module-panel .game-command-module-rail {
  display: grid;
  grid-template-columns: 1fr;
  gap: 7px;
  padding-top: 8px;
}

.game-command-module-panel .game-command-module-card {
  min-height: 56px;
  padding: 9px;
  background: rgba(16, 24, 35, 0.88);
}

.game-command-module-panel .game-command-module-card:hover,
.game-command-module-panel .game-command-module-card:focus-visible {
  border-color: rgba(48, 221, 245, 0.6);
  background: rgba(23, 33, 46, 0.98);
}

.game-command-module-panel .game-command-module-icon {
  width: 38px;
  height: 38px;
}

html[data-theme="light"] .game-command-overview {
  border-color: transparent;
  background: transparent;
  box-shadow: none;
}

html[data-theme="light"] .game-command-head small {
  color: #52677e;
  border-color: transparent;
  background: transparent;
}

html[data-theme="light"] .game-command-metric-card,
html[data-theme="light"] .game-command-activity-timeline,
html[data-theme="light"] .game-command-module-panel,
html[data-theme="light"] .game-command-module-panel .game-command-module-card {
  color: #0d1a2a;
  border-color: #d2dbe5;
  background: rgba(248, 250, 253, 0.96);
}

html[data-theme="light"] .game-command-metric-card:hover,
html[data-theme="light"] .game-command-metric-card:focus-visible,
html[data-theme="light"] .game-command-module-panel .game-command-module-card:hover,
html[data-theme="light"] .game-command-module-panel .game-command-module-card:focus-visible {
  background: #ffffff;
}

html[data-theme="light"] .game-command-metric-copy small,
html[data-theme="light"] .game-command-panel-head small,
html[data-theme="light"] .game-command-timeline-meta small,
html[data-theme="light"] .game-command-timeline-copy small,
html[data-theme="light"] .game-command-module-card small {
  color: #52677e;
}

html[data-theme="light"] .game-command-panel-head,
html[data-theme="light"] .game-command-timeline-item {
  border-color: #d7dfe8;
}

html[data-theme="light"] .game-command-timeline-item {
  color: #0d1a2a;
}

html[data-theme="light"] .game-command-timeline-item::before {
  background: #c8d2de;
}

html[data-theme="light"] .game-command-timeline-marker {
  border-color: #ffffff;
}

@media (max-width: 1100px) {
  .game-command-metric-strip {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .game-command-timeline-layout {
    grid-template-columns: minmax(0, 1.4fr) minmax(250px, 0.8fr);
  }
}

@media (max-width: 820px) {
  .game-command-overview {
    padding: 0;
  }

  .game-command-head {
    align-items: start;
  }

  .game-command-head small {
    white-space: normal;
  }

  .game-command-metric-strip {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .game-command-timeline-layout {
    grid-template-columns: 1fr;
  }

  .game-command-module-panel .game-command-module-rail {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 560px) {
  .game-command-overview {
    gap: 11px;
    padding: 0;
  }

  .game-command-head {
    display: grid;
    gap: 7px;
  }

  .game-command-head h2 {
    font-size: 28px;
  }

  .game-command-metric-strip,
  .game-command-module-panel .game-command-module-rail {
    grid-template-columns: 1fr;
  }

  .game-command-metric-card {
    min-height: 70px;
  }

  .game-command-panel-head {
    align-items: start;
  }

  .game-command-timeline-item {
    grid-template-columns: minmax(0, 1fr) 24px;
    gap: 8px;
    min-height: 88px;
    padding-left: 23px;
  }

  .game-command-timeline-meta {
    grid-column: 1;
  }

  .game-command-timeline-copy {
    grid-column: 1;
  }

  .game-command-timeline-open {
    grid-column: 2;
    grid-row: 1 / span 2;
  }
}

/* Admin access control workspace */
.admin-user-hero {
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) minmax(420px, 0.8fr);
  align-items: end;
  gap: 28px;
  overflow: hidden;
  background:
    linear-gradient(105deg, rgba(244, 63, 94, 0.12), transparent 38%),
    linear-gradient(115deg, var(--surface-2), rgba(11, 24, 34, 0.92));
}

.admin-user-hero h2,
.admin-user-workspace h2,
.admin-user-list h2,
.admin-audit-panel h2 {
  margin: 5px 0 8px;
}

.admin-user-hero p {
  max-width: 720px;
  margin: 0;
  color: var(--muted);
  line-height: 1.65;
}

.admin-user-summary-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
}

.admin-user-summary-grid article {
  min-width: 0;
  min-height: 88px;
  padding: 14px;
  border: 1px solid var(--line-strong);
  border-radius: var(--radius-sm);
  background: rgba(8, 14, 21, 0.72);
}

.admin-user-summary-grid strong,
.admin-user-summary-grid span {
  display: block;
}

.admin-user-summary-grid strong {
  margin-bottom: 9px;
  color: var(--text);
  font-size: 25px;
  line-height: 1;
}

.admin-user-summary-grid span {
  color: var(--muted);
  font-size: 12px;
  font-weight: 700;
}

.admin-user-workspace {
  display: grid;
  grid-template-columns: minmax(320px, 0.72fr) minmax(0, 1.28fr);
  gap: 16px;
  align-items: start;
}

.admin-user-create .form-grid {
  grid-template-columns: 1fr;
}

.admin-role-card-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.admin-role-matrix-card {
  min-width: 0;
  padding: 16px;
  border: 1px solid var(--line);
  border-left: 3px solid var(--role-accent, var(--accent));
  border-radius: var(--radius-sm);
  background: rgba(8, 14, 21, 0.58);
}

.admin-role-matrix-card.role-owner { --role-accent: #f59e0b; }
.admin-role-matrix-card.role-administrator { --role-accent: #f43f5e; }
.admin-role-matrix-card.role-game_data_manager { --role-accent: #22d3ee; }
.admin-role-matrix-card.role-content_editor { --role-accent: #a78bfa; }
.admin-role-matrix-card.role-author { --role-accent: #34d399; }
.admin-role-matrix-card.role-analyst { --role-accent: #60a5fa; }

.admin-role-matrix-card header {
  display: flex;
  align-items: start;
  justify-content: space-between;
  gap: 12px;
}

.admin-role-matrix-card header strong {
  color: var(--text);
  font-size: 14px;
}

.admin-role-matrix-card header span,
.admin-role-matrix-card p {
  color: var(--muted);
  font-size: 11px;
}

.admin-role-matrix-card p {
  min-height: 35px;
  margin: 9px 0 12px;
  line-height: 1.5;
}

.admin-permission-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
}

.admin-permission-tags span {
  padding: 4px 7px;
  border: 1px solid color-mix(in srgb, var(--role-accent, var(--accent)) 35%, var(--line));
  border-radius: 999px;
  color: var(--muted);
  background: color-mix(in srgb, var(--role-accent, var(--accent)) 8%, transparent);
  font-size: 10px;
  font-weight: 700;
}

.admin-user-list-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.admin-user-card {
  min-width: 0;
  padding: 16px;
  border: 1px solid var(--line);
  border-top: 2px solid var(--green);
  border-radius: var(--radius-sm);
  background: rgba(8, 14, 21, 0.58);
}

.admin-user-card.is-inactive {
  border-top-color: var(--muted-2);
  opacity: 0.82;
}

.admin-user-card > header {
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr) auto;
  align-items: center;
  gap: 11px;
  margin-bottom: 15px;
}

.admin-user-card > header strong,
.admin-user-card > header small {
  display: block;
}

.admin-user-card > header small {
  overflow: hidden;
  margin-top: 3px;
  color: var(--muted);
  font-size: 11px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.admin-user-avatar {
  display: grid;
  width: 42px;
  height: 42px;
  place-items: center;
  border: 1px solid rgba(94, 234, 212, 0.34);
  border-radius: 50%;
  color: var(--accent);
  background: rgba(94, 234, 212, 0.08);
  font-weight: 900;
}

.admin-user-card-form {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.admin-user-card-form label {
  min-width: 0;
}

.admin-user-card-form .check-field,
.admin-user-card-form .admin-user-meta,
.admin-user-card-form > button {
  grid-column: 1 / -1;
}

.admin-user-meta {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 4px 12px;
  padding: 10px;
  border: 1px solid var(--line);
  border-radius: var(--radius-sm);
  color: var(--muted);
  font-size: 11px;
}

.admin-user-meta strong {
  overflow: hidden;
  color: var(--text);
  text-align: right;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.admin-user-delete {
  margin-top: 9px;
}

.admin-user-protected {
  margin: 10px 0 0;
  color: var(--muted-2);
  font-size: 11px;
}

.admin-audit-list {
  display: grid;
  max-height: 520px;
  overflow: auto;
  margin: 0;
  padding: 0;
  list-style: none;
}

.admin-audit-list li {
  display: grid;
  grid-template-columns: 12px minmax(0, 1fr) auto;
  gap: 12px;
  align-items: start;
  padding: 13px 4px;
  border-bottom: 1px solid var(--line);
}

.admin-audit-list li:last-child {
  border-bottom: 0;
}

.admin-audit-list p {
  margin: 3px 0 0;
  color: var(--muted);
  font-size: 12px;
  text-transform: capitalize;
}

.admin-audit-list small {
  color: var(--muted-2);
  font-size: 10px;
  line-height: 1.5;
  text-align: right;
}

.admin-audit-dot {
  width: 8px;
  height: 8px;
  margin-top: 5px;
  border: 2px solid var(--surface-2);
  border-radius: 50%;
  background: var(--rose);
  box-shadow: 0 0 0 1px var(--rose);
}

.admin-audit-empty {
  display: block !important;
  color: var(--muted);
}

html.theme-light .admin-user-hero,
html.theme-light .admin-user-summary-grid article,
html.theme-light .admin-role-matrix-card,
html.theme-light .admin-user-card {
  background-color: rgba(255, 255, 255, 0.9);
}

html.theme-light .admin-user-summary-grid article,
html.theme-light .admin-role-matrix-card,
html.theme-light .admin-user-card,
html.theme-light .admin-user-meta {
  border-color: #d5dee8;
}

@media (max-width: 1180px) {
  .admin-user-hero,
  .admin-user-workspace {
    grid-template-columns: 1fr;
  }

  .admin-user-summary-grid {
    max-width: 720px;
  }
}

@media (max-width: 760px) {
  .admin-user-summary-grid,
  .admin-role-card-grid,
  .admin-user-list-grid,
  .admin-user-card-form {
    grid-template-columns: 1fr;
  }

  .admin-user-card-form .check-field,
  .admin-user-card-form .admin-user-meta,
  .admin-user-card-form > button {
    grid-column: auto;
  }

  .admin-user-card > header {
    grid-template-columns: 42px minmax(0, 1fr);
  }

  .admin-user-card > header .status-pill {
    grid-column: 1 / -1;
    justify-self: start;
  }

  .admin-audit-list li {
    grid-template-columns: 12px minmax(0, 1fr);
  }

  .admin-audit-list small {
    grid-column: 2;
    text-align: left;
  }
}
.admin-command-primary-grid.is-single,
.admin-command-secondary-grid.is-single {
  grid-template-columns: minmax(0, 1fr);
}

/* Admin login security workspace */
.admin-security-status-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  margin-bottom: 14px;
}

.admin-security-status-grid article {
  min-width: 0;
  padding: 13px;
  border: 1px solid var(--line);
  border-top: 2px solid var(--muted-2);
  border-radius: var(--radius-sm);
  background: rgba(7, 12, 18, 0.5);
}

.admin-security-status-grid article.is-ready {
  border-top-color: var(--green);
}

.admin-security-status-grid article.is-draft {
  border-top-color: var(--amber);
}

.admin-security-status-grid span,
.admin-security-status-grid strong,
.admin-security-status-grid small {
  display: block;
}

.admin-security-status-grid span {
  color: var(--muted);
  font-size: 10px;
  font-weight: 800;
  text-transform: uppercase;
}

.admin-security-status-grid strong {
  margin-top: 8px;
  color: var(--text);
  font-size: 20px;
}

.admin-security-status-grid small {
  margin-top: 4px;
  overflow: hidden;
  color: var(--muted-2);
  font-size: 10px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.admin-security-control-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.admin-security-control-grid fieldset {
  min-width: 0;
  margin: 0;
  padding: 14px;
  border: 1px solid var(--line);
  border-radius: var(--radius-sm);
  background: rgba(7, 12, 18, 0.34);
}

.admin-security-control-grid legend {
  padding: 0 7px;
  color: var(--accent);
  font-size: 11px;
  font-weight: 900;
  text-transform: uppercase;
}

.admin-security-control-grid fieldset > label {
  display: grid;
  gap: 6px;
  margin-top: 10px;
}

.admin-security-control-grid fieldset > .check-field {
  display: flex;
}

.admin-security-control-grid fieldset > p {
  margin: 0 0 10px;
  font-size: 11px;
  line-height: 1.5;
}

.admin-security-role-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 7px;
  margin-bottom: 12px;
}

.admin-security-events {
  margin-top: 14px;
  padding: 14px;
  border: 1px solid var(--line);
  border-radius: var(--radius-sm);
  background: rgba(7, 12, 18, 0.34);
}

.admin-security-events > header {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 12px;
  padding-bottom: 10px;
  border-bottom: 1px solid var(--line);
}

.admin-security-events > header span,
.admin-security-events > header h3 {
  display: block;
  margin: 0;
}

.admin-security-events > header span {
  color: var(--accent);
  font-size: 10px;
  font-weight: 900;
  text-transform: uppercase;
}

.admin-security-events > header h3 {
  margin-top: 3px;
  font-size: 16px;
}

.admin-security-events > header small {
  color: var(--muted-2);
  font-size: 10px;
}

.admin-security-events ol {
  display: grid;
  max-height: 340px;
  margin: 0;
  padding: 0;
  overflow: auto;
  list-style: none;
}

.admin-security-events li {
  display: grid;
  grid-template-columns: 10px minmax(0, 1fr) auto;
  align-items: start;
  gap: 10px;
  padding: 10px 2px;
  border-bottom: 1px solid var(--line);
}

.admin-security-events li:last-child {
  border-bottom: 0;
}

.admin-security-events li strong,
.admin-security-events li small {
  display: block;
}

.admin-security-events li strong {
  font-size: 12px;
}

.admin-security-events li small,
.admin-security-events time {
  margin-top: 3px;
  color: var(--muted-2);
  font-size: 10px;
}

.admin-security-events time {
  text-align: right;
}

.admin-security-event-dot {
  width: 7px;
  height: 7px;
  margin-top: 5px;
  border-radius: 50%;
  background: var(--rose);
  box-shadow: 0 0 0 3px rgba(244, 63, 94, 0.12);
}

.admin-security-events li.is-empty {
  display: block;
  color: var(--muted);
}

.admin-user-card-form .admin-user-mfa {
  grid-column: 1 / -1;
  display: grid;
  gap: 9px;
  padding: 12px;
  border: 1px solid var(--line);
  border-radius: var(--radius-sm);
  background: rgba(94, 234, 212, 0.04);
}

.admin-user-mfa > div {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}

.admin-user-mfa > div span {
  color: var(--muted);
  font-size: 10px;
  font-weight: 800;
  text-transform: uppercase;
}

.admin-user-mfa > div strong {
  color: var(--accent);
  font-size: 11px;
}

.login-turnstile {
  display: grid;
  min-height: 66px;
  place-items: center;
  overflow: hidden;
}

.login-security-kicker {
  display: inline-flex;
  margin-bottom: 9px;
  color: var(--accent);
  font-size: 10px;
  font-weight: 900;
  text-transform: uppercase;
}

.login-mfa-card .login-mfa-code {
  min-height: 58px;
  font-size: 24px;
  font-variant-numeric: tabular-nums;
  font-weight: 900;
  text-align: center;
}

.login-cancel-link {
  display: block;
  margin-top: 14px;
  color: var(--muted);
  font-size: 11px;
  text-align: center;
}

.login-cancel-link:hover {
  color: var(--text);
}

html.theme-light .admin-security-status-grid article,
html.theme-light .admin-security-control-grid fieldset,
html.theme-light .admin-security-events,
html.theme-light .admin-user-card-form .admin-user-mfa {
  border-color: #d5dee8;
  background: rgba(255, 255, 255, 0.82);
}

@media (max-width: 980px) {
  .admin-security-status-grid,
  .admin-security-control-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 640px) {
  .admin-security-status-grid,
  .admin-security-control-grid,
  .admin-security-role-grid {
    grid-template-columns: 1fr;
  }

  .admin-security-events li {
    grid-template-columns: 10px minmax(0, 1fr);
  }

  .admin-security-events time {
    grid-column: 2;
    text-align: left;
  }
}

/* Focused stabilization: mobile category directory */
@media (max-width: 760px) {
  .blog-category-directory-hero {
    grid-template-columns: minmax(0, 1fr);
    align-items: stretch;
    gap: 20px;
  }

  .blog-category-directory-hero h1 {
    font-size: clamp(38px, 13vw, 58px);
    line-height: 1;
    overflow-wrap: anywhere;
  }

  .blog-category-directory-stats {
    width: 100%;
  }
}

@media (max-width: 420px) {
  .blog-category-directory-stats {
    grid-template-columns: minmax(0, 1fr);
  }
}

/* Focused stabilization: light secondary contrast */
html.theme-light .review-command-head > a,
html.theme-light .content-panel .button-ghost {
  color: #111827;
  border-color: rgba(15, 23, 42, 0.22);
  background: #ffffff;
  box-shadow: none;
}

html.theme-light .review-command-head > a:hover,
html.theme-light .review-command-head > a:focus-visible,
html.theme-light .content-panel .button-ghost:hover,
html.theme-light .content-panel .button-ghost:focus-visible {
  color: #881337;
  border-color: rgba(225, 29, 72, 0.55);
  background: #fff1f2;
}

html.theme-light .empty-state {
  color: #334155;
  border-color: rgba(15, 23, 42, 0.18);
  background: #f8fafc;
}

html.theme-light :disabled {
  color: #64748b;
  border-color: rgba(15, 23, 42, 0.16);
  background: #e5e7eb;
  opacity: 1;
}

/* Focused stabilization: mobile recent disclosure */
.home-recent-toggle {
  display: none;
  align-items: center;
  justify-content: center;
  width: 100%;
  min-height: 44px;
  margin-top: 12px;
  padding: 9px 14px;
  border: 1px solid rgba(180, 205, 220, 0.2);
  border-radius: var(--radius-sm);
  color: #dce8f4;
  background: rgba(255, 255, 255, 0.04);
  font: inherit;
  font-size: 13px;
  font-weight: 900;
  cursor: pointer;
}

.home-recent-toggle:hover,
.home-recent-toggle:focus-visible {
  color: #ffffff;
  border-color: rgba(244, 63, 94, 0.5);
  background: rgba(244, 63, 94, 0.1);
  outline: none;
}

html.theme-light .home-recent-toggle {
  color: #334155;
  border-color: rgba(15, 23, 42, 0.18);
  background: #ffffff;
}

html.theme-light .home-recent-toggle:hover,
html.theme-light .home-recent-toggle:focus-visible {
  color: #881337;
  border-color: rgba(225, 29, 72, 0.55);
  background: #fff1f2;
}

@media (max-width: 760px) {
  .home-recent-panel.is-enhanced .home-recent-toggle:not([hidden]) {
    display: inline-flex;
  }
}

/* Admin Articles workflow: primary list first, secondary tools on demand. */
.admin-mobile-nav-toggle,
.admin-sidebar-backdrop {
  display: none;
}

.admin-article-jump-nav {
  position: sticky;
  top: 10px;
  z-index: 45;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin: 0 0 14px;
  overflow: hidden;
  border: 1px solid var(--line);
  border-radius: var(--radius-sm);
  background: color-mix(in srgb, var(--bg) 92%, transparent);
  box-shadow: 0 12px 28px rgba(0, 0, 0, 0.14);
  backdrop-filter: blur(14px);
}

.admin-article-jump-nav a {
  display: inline-flex;
  min-width: 0;
  min-height: 46px;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 9px 14px;
  color: var(--muted);
  border-right: 1px solid var(--line);
  font-size: 13px;
  font-weight: 850;
  text-align: center;
}

.admin-article-jump-nav a:last-child {
  border-right: 0;
}

.admin-article-jump-nav a:hover,
.admin-article-jump-nav a:focus-visible,
.admin-article-jump-nav a.is-active {
  color: #ffffff;
  background: rgba(244, 63, 94, 0.13);
  outline: none;
}

.admin-article-jump-nav a.is-active {
  box-shadow: inset 0 -2px 0 #f43f5e;
}

.admin-article-jump-nav .nav-icon {
  width: 17px;
  height: 17px;
  flex-basis: 17px;
  color: #fb7185;
}

.admin-articles-primary,
.admin-article-tool-panel,
.admin-workspace-disclosure {
  scroll-margin-top: 76px;
}

.admin-article-tool-panel {
  border-color: rgba(34, 211, 238, 0.22);
  background:
    linear-gradient(100deg, rgba(34, 211, 238, 0.055), transparent 42%),
    rgba(13, 18, 25, 0.86);
}

.admin-tool-kicker {
  display: block;
  margin-bottom: 5px;
  color: var(--accent);
  font-size: 10px;
  font-weight: 900;
  text-transform: uppercase;
}

.admin-workspace-disclosure {
  margin: 0 0 18px;
}

.admin-workspace-disclosure > summary {
  display: flex;
  min-height: 72px;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  padding: 15px 17px;
  cursor: pointer;
  list-style: none;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  color: var(--text);
  background:
    linear-gradient(100deg, rgba(244, 63, 94, 0.055), transparent 44%),
    rgba(13, 18, 25, 0.72);
}

.admin-workspace-disclosure > summary::-webkit-details-marker {
  display: none;
}

.admin-workspace-disclosure > summary span {
  display: grid;
  gap: 4px;
  min-width: 0;
}

.admin-workspace-disclosure > summary strong {
  font-size: 16px;
}

.admin-workspace-disclosure > summary small {
  color: var(--muted);
  line-height: 1.45;
}

.admin-workspace-disclosure > summary em {
  display: inline-flex;
  flex: 0 0 auto;
  align-items: center;
  min-height: 34px;
  padding: 0 11px;
  border: 1px solid rgba(244, 63, 94, 0.35);
  border-radius: var(--radius-sm);
  color: #fb7185;
  background: rgba(244, 63, 94, 0.08);
  font-size: 11px;
  font-style: normal;
  font-weight: 900;
}

.admin-workspace-disclosure[open] > summary em::before {
  content: "Close";
}

.admin-workspace-disclosure[open] > summary em {
  font-size: 0;
}

.admin-workspace-disclosure[open] > summary em::before {
  font-size: 11px;
}

.admin-workspace-disclosure-body {
  display: grid;
  gap: 14px;
  padding-top: 14px;
}

.admin-workspace-disclosure-body > .admin-panel {
  margin-bottom: 0;
}

html.theme-light .admin-article-jump-nav {
  border-color: #d5dee8;
  background: rgba(255, 255, 255, 0.94);
  box-shadow: 0 12px 28px rgba(15, 23, 42, 0.08);
}

html.theme-light .admin-article-jump-nav a {
  color: #475569;
  border-color: #d5dee8;
}

html.theme-light .admin-article-jump-nav a:hover,
html.theme-light .admin-article-jump-nav a:focus-visible,
html.theme-light .admin-article-jump-nav a.is-active {
  color: #881337;
  background: #fff1f2;
}

html.theme-light .admin-article-tool-panel,
html.theme-light .admin-workspace-disclosure > summary {
  color: #172033;
  border-color: #d5dee8;
  background: #ffffff;
}

html.theme-light .admin-workspace-disclosure > summary small {
  color: #64748b;
}

@media (max-width: 780px) {
  .admin-body {
    display: block;
  }

  .admin-sidebar {
    position: fixed;
    inset: 0 auto 0 0;
    z-index: 130;
    width: min(304px, 86vw);
    height: 100dvh;
    padding: 16px;
    overflow-y: auto;
    visibility: hidden;
    border-right: 1px solid var(--line);
    border-bottom: 0;
    transform: translateX(-104%);
    transition: transform 180ms ease, visibility 180ms ease;
  }

  body.admin-sidebar-open {
    overflow: hidden;
  }

  body.admin-sidebar-open .admin-sidebar {
    visibility: visible;
    transform: translateX(0);
  }

  .admin-sidebar-backdrop {
    position: fixed;
    inset: 0;
    z-index: 125;
    display: block;
    pointer-events: none;
    opacity: 0;
    border: 0;
    background: rgba(2, 6, 12, 0.72);
    backdrop-filter: blur(3px);
    transition: opacity 180ms ease;
  }

  body.admin-sidebar-open .admin-sidebar-backdrop {
    pointer-events: auto;
    opacity: 1;
  }

  .admin-main {
    width: 100%;
    padding: 12px;
  }

  .admin-topbar {
    position: sticky;
    top: 0;
    z-index: 80;
    display: flex;
    min-height: 64px;
    flex-direction: row;
    align-items: center;
    gap: 10px;
    margin: -12px -12px 14px;
    padding: 10px 12px;
    border-bottom: 1px solid var(--line);
    background: color-mix(in srgb, var(--bg) 94%, transparent);
    backdrop-filter: blur(16px);
  }

  .admin-topbar > div:first-of-type {
    min-width: 0;
    flex: 1 1 auto;
  }

  .admin-topbar > div:first-of-type > span {
    display: none;
  }

  .admin-topbar h1 {
    margin: 0;
    overflow: hidden;
    font-size: 24px;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  .admin-mobile-nav-toggle {
    display: inline-grid;
    width: 44px;
    height: 44px;
    flex: 0 0 44px;
    place-items: center;
    padding: 0;
    border: 1px solid rgba(244, 63, 94, 0.48);
    border-radius: var(--radius-sm);
    color: #ffffff;
    background: rgba(244, 63, 94, 0.13);
    cursor: pointer;
  }

  .admin-mobile-nav-toggle:hover,
  .admin-mobile-nav-toggle:focus-visible {
    border-color: #fb7185;
    background: rgba(244, 63, 94, 0.26);
    outline: none;
  }

  .admin-mobile-nav-toggle .nav-icon {
    width: 20px;
    height: 20px;
  }

  .admin-topbar-actions {
    width: auto;
    flex: 0 0 auto;
    justify-content: flex-end;
    gap: 6px;
  }

  .admin-density-toggle,
  .admin-topbar-role,
  .admin-topbar-actions > .button {
    display: none;
  }

  .admin-topbar-actions .admin-command-trigger {
    display: none;
  }

  .admin-topbar-actions .theme-toggle {
    min-width: 42px;
    width: 42px;
    height: 42px;
    padding: 0;
  }

  .admin-article-jump-nav {
    position: static;
    grid-template-columns: minmax(0, 1fr);
    border-radius: var(--radius-sm);
  }

  .admin-article-jump-nav a {
    justify-content: flex-start;
    border-right: 0;
    border-bottom: 1px solid var(--line);
  }

  .admin-article-jump-nav a:last-child {
    border-bottom: 0;
  }

  .admin-article-tool-panel .panel-head,
  .admin-workspace-disclosure > summary {
    align-items: stretch;
    flex-direction: column;
  }

  .admin-workspace-disclosure > summary em {
    width: 100%;
    justify-content: center;
  }

  html.theme-light .admin-topbar {
    border-color: #d5dee8;
    background: rgba(248, 250, 252, 0.95);
  }

  html.theme-light .admin-mobile-nav-toggle {
    color: #be123c;
    border-color: rgba(225, 29, 72, 0.45);
    background: #fff1f2;
  }
}

@media (prefers-reduced-motion: reduce) {
  .admin-sidebar,
  .admin-sidebar-backdrop {
    transition: none;
  }
}

/* Latest Articles ranked editorial cards */
.home-blog-section .home-section-heading {
  position: relative;
}

.home-latest-view-all {
  position: absolute;
  top: 0;
  right: 0;
  justify-self: end !important;
  min-height: 30px;
  padding: 0 2px 5px;
  border-bottom: 1px solid rgba(180, 205, 220, 0.42);
  color: #f4f7fb;
  font-size: 13px;
  font-weight: 900;
  text-transform: uppercase;
}

.home-latest-view-all-icon,
.home-latest-view-all-icon .nav-icon {
  display: inline-grid;
  place-items: center;
  width: 20px;
  height: 20px;
}

.home-latest-view-all-icon .nav-icon-chevron {
  color: #ff4058;
  transform: rotate(-90deg);
  transition: transform 160ms ease;
}

.home-latest-view-all:hover .nav-icon-chevron,
.home-latest-view-all:focus-visible .nav-icon-chevron {
  transform: translateX(2px) rotate(-90deg);
}

.home-blog-section .home-article-grid {
  gap: 20px;
  align-items: stretch;
}

.home-latest-article-card {
  min-height: 0;
  height: 100%;
  border-color: rgba(180, 205, 220, 0.28);
  border-radius: 4px;
  background: #0a1119;
  box-shadow: 0 16px 36px rgba(0, 0, 0, 0.22);
}

.home-latest-article-card::before {
  background: rgba(244, 63, 94, 0.04);
}

.article-card.home-featured.home-latest-article-card.has-image .article-card-media {
  height: auto;
  aspect-ratio: 16 / 9;
  border-bottom: 1px solid rgba(180, 205, 220, 0.2);
}

.home-latest-article-card .article-card-media::after {
  background: rgba(5, 8, 13, 0.1);
}

.home-latest-article-rank {
  position: absolute;
  top: 16px;
  left: 16px;
  z-index: 4;
  display: grid;
  place-items: center;
  min-width: 46px;
  height: 48px;
  padding: 0 8px;
  border-bottom: 3px solid #f43f5e;
  color: #ffffff;
  background: rgba(7, 10, 15, 0.72);
  box-shadow: 0 8px 22px rgba(0, 0, 0, 0.34);
  font-size: 27px;
  font-weight: 950;
  line-height: 1;
  text-shadow: 0 2px 8px rgba(0, 0, 0, 0.75);
}

.article-card.home-latest-article-card .article-card-body {
  display: grid;
  grid-template-rows: auto minmax(64px, auto) minmax(50px, auto) auto;
  gap: 14px;
  min-height: 260px;
  padding: 18px 20px 20px;
  background: #0d151e;
}

.home-latest-article-card .article-card-status-row {
  min-height: 26px;
}

.home-latest-article-card .article-card-kicker {
  color: #4bdaf4;
  font-size: 12px;
}

.home-latest-article-card .article-card-pill {
  min-height: 26px;
  border-radius: 2px;
  color: #ffffff;
  background: rgba(8, 17, 24, 0.86);
}

.home-latest-article-card .article-card-pill-popular {
  border-color: rgba(75, 218, 244, 0.72);
  color: #4bdaf4;
  background: rgba(8, 43, 51, 0.42);
  box-shadow: none;
}

.home-latest-article-card .article-title-wrap {
  display: flex;
  align-items: flex-start;
  min-height: 64px;
  margin: 0;
  padding: 0;
  border-radius: 0;
}

.home-latest-article-card .article-title-bg {
  display: none;
}

.article-card.home-latest-article-card h3 {
  margin: 0;
  color: #ffffff;
  font-size: 24px;
  line-height: 1.18;
  text-shadow: none;
}

.article-card.home-latest-article-card .article-card-excerpt {
  min-height: 50px;
  color: #b8c5d3;
  font-size: 15px;
  line-height: 1.55;
}

.home-latest-article-card .home-latest-article-meta {
  min-height: 50px;
  margin-top: 0;
  padding-top: 13px;
  border-top-color: rgba(180, 205, 220, 0.18);
}

.home-latest-article-meta small {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px 12px;
  overflow: visible;
  color: #a8b8c8;
  font-size: 12px;
  font-weight: 750;
  text-transform: uppercase;
  white-space: normal;
}

.home-latest-article-meta small span + span {
  padding-left: 12px;
  border-left: 1px solid rgba(180, 205, 220, 0.3);
}

.home-latest-article-card .home-latest-article-action {
  display: grid;
  place-items: center;
  width: 46px;
  min-width: 46px;
  height: 46px;
  min-height: 46px;
  padding: 0;
  border-color: rgba(244, 63, 94, 0.76);
  border-radius: 50%;
  color: #f43f5e;
  background: transparent;
  opacity: 1;
}

.home-latest-article-action .nav-icon {
  width: 20px;
  height: 20px;
  transform: rotate(-90deg);
}

.home-latest-article-card:hover .home-latest-article-action,
.home-latest-article-card:focus-visible .home-latest-article-action {
  color: #ffffff;
  background: #e11d48;
  transform: translateX(2px);
}

html.theme-light .home-latest-view-all {
  color: #1e293b;
  border-bottom-color: rgba(71, 85, 105, 0.42);
}

html.theme-light .home-latest-article-card {
  border-color: rgba(15, 23, 42, 0.16);
  background: #ffffff;
  box-shadow: 0 14px 34px rgba(15, 23, 42, 0.1);
}

html.theme-light .article-card.home-latest-article-card .article-card-body {
  color: #111827;
  background: #ffffff;
}

html.theme-light .article-card.home-latest-article-card h3 {
  color: #111827;
}

html.theme-light .article-card.home-latest-article-card .article-card-excerpt,
html.theme-light .home-latest-article-meta small {
  color: #526171;
}

html.theme-light .home-latest-article-card .article-card-pill {
  color: #0e7490;
  background: #ecfeff;
}

@media (max-width: 760px) {
  .home-latest-view-all {
    position: static;
    justify-self: start !important;
  }

  .article-card.home-latest-article-card .article-card-body {
    grid-template-rows: auto auto auto auto;
    min-height: 0;
    padding: 16px;
  }

  .home-latest-article-card .article-title-wrap,
  .article-card.home-latest-article-card .article-card-excerpt {
    min-height: 0;
  }

  .article-card.home-latest-article-card h3 {
    font-size: 22px;
  }

  .home-latest-article-rank {
    top: 12px;
    left: 12px;
    min-width: 42px;
    height: 44px;
    font-size: 24px;
  }

  .home-latest-article-meta small {
    gap: 6px 10px;
  }

  .home-latest-article-meta small span + span {
    padding-left: 10px;
  }
}

/* Home database release status board */
.home-database-panel {
  padding: 16px;
}

.home-database-panel .home-showcase-head {
  align-items: center;
  margin-bottom: 16px;
}

.home-database-panel .home-game-filters {
  flex-wrap: nowrap;
  gap: 0;
  overflow: hidden;
  border: 1px solid rgba(180, 205, 220, 0.18);
  border-radius: 6px;
  background: rgba(5, 9, 14, 0.62);
}

.home-database-panel .home-game-filters button {
  flex: 0 0 auto;
  min-width: 104px;
  min-height: 38px;
  padding: 0 18px;
  border: 0;
  border-right: 1px solid rgba(180, 205, 220, 0.16);
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

.home-database-panel .home-game-filters button:last-child {
  border-right: 0;
}

.home-database-panel .home-game-filters button:hover,
.home-database-panel .home-game-filters button:focus-visible {
  background: rgba(244, 63, 94, 0.1);
}

.home-database-panel .home-game-filters button.is-active {
  color: #ffffff;
  background: #f43f5e;
  box-shadow: none;
}

.home-database-lanes {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(0, 1.12fr) repeat(2, minmax(0, 0.94fr));
  align-items: stretch;
  gap: 12px;
}

.home-database-lanes.is-single-lane {
  grid-template-columns: minmax(0, 1fr);
}

.home-database-lane {
  min-width: 0;
  overflow: hidden;
  border: 1px solid rgba(180, 205, 220, 0.2);
  border-radius: 7px;
  background: rgba(7, 12, 18, 0.88);
}

.home-database-lane[hidden] {
  display: none;
}

.home-database-lane-head {
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr) auto;
  align-items: center;
  gap: 10px;
  min-height: 66px;
  padding: 10px 14px;
  border-bottom: 1px solid rgba(180, 205, 220, 0.16);
  background: rgba(14, 21, 30, 0.78);
}

.home-database-lane-icon {
  display: grid;
  place-items: center;
  width: 34px;
  height: 34px;
  color: #36d9ff;
}

.home-database-lane-icon .nav-icon,
.home-database-lane-icon svg {
  width: 25px;
  height: 25px;
}

.home-database-lane-heading {
  display: grid;
  min-width: 0;
  gap: 2px;
}

.home-database-lane-heading strong {
  color: #ffffff;
  font-size: 18px;
  font-weight: 950;
  line-height: 1.08;
  text-transform: uppercase;
}

.home-database-lane-heading small {
  overflow: hidden;
  color: #8fa3b5;
  font-size: 10px;
  line-height: 1.2;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.home-database-lane-count {
  display: inline-grid;
  place-items: center;
  min-width: 28px;
  height: 28px;
  padding: 0 7px;
  border: 1px solid rgba(54, 217, 255, 0.18);
  border-radius: 5px;
  color: #36d9ff;
  background: rgba(54, 217, 255, 0.08);
  font-size: 13px;
  font-weight: 950;
}

.home-database-lane-play-now .home-database-lane-icon,
.home-database-lane-play-now .home-database-lane-count {
  color: #22c55e;
}

.home-database-lane-play-now .home-database-lane-count {
  border-color: rgba(34, 197, 94, 0.2);
  background: rgba(34, 197, 94, 0.08);
}

.home-database-lane-upcoming .home-database-lane-icon,
.home-database-lane-upcoming .home-database-lane-count {
  color: #f59e0b;
}

.home-database-lane-upcoming .home-database-lane-count {
  border-color: rgba(245, 158, 11, 0.2);
  background: rgba(245, 158, 11, 0.08);
}

.home-database-lane-archive .home-database-lane-icon,
.home-database-lane-archive .home-database-lane-count {
  color: #aeb9c6;
}

.home-database-lane-archive .home-database-lane-count {
  border-color: rgba(174, 185, 198, 0.2);
  background: rgba(174, 185, 198, 0.08);
}

.home-database-lane-list {
  min-width: 0;
}

.home-database-game-row {
  position: relative;
  min-width: 0;
  background: rgba(7, 12, 18, 0.48);
}

.home-database-game-row + .home-database-game-row {
  border-top: 1px solid rgba(180, 205, 220, 0.14);
}

.home-database-game-row.is-featured {
  box-shadow: inset 3px 0 #f43f5e;
}

.home-database-game-row.is-featured::after {
  content: "";
  position: absolute;
  inset: 0;
  border: 1px solid rgba(244, 63, 94, 0.9);
  pointer-events: none;
}

.home-database-game-link {
  display: grid;
  grid-template-columns: minmax(116px, 38%) minmax(0, 1fr) 24px;
  align-items: stretch;
  min-height: 112px;
  color: inherit;
  background: transparent;
  transition: background 160ms ease;
}

.home-database-game-link:hover,
.home-database-game-link:focus-visible {
  color: inherit;
  background: rgba(54, 217, 255, 0.045);
  outline: none;
}

.home-database-row-media {
  position: relative;
  display: grid;
  place-items: center;
  min-width: 0;
  overflow: hidden;
  background: color-mix(in srgb, var(--game-accent) 18%, #071018);
}

.home-database-row-media img {
  width: 100%;
  height: 100%;
  min-height: 112px;
  object-fit: cover;
  transition: filter 180ms ease, transform 180ms ease;
}

.home-database-game-link:hover .home-database-row-media img,
.home-database-game-link:focus-visible .home-database-row-media img {
  filter: saturate(1.08) contrast(1.04);
  transform: scale(1.035);
}

.home-database-row-monogram {
  display: grid;
  place-items: center;
  width: 54px;
  height: 54px;
  border: 1px solid rgba(255, 255, 255, 0.22);
  border-radius: 7px;
  color: #071014;
  background: var(--game-accent);
  font-size: 25px;
  font-weight: 950;
}

.home-database-row-copy {
  display: grid;
  align-content: center;
  min-width: 0;
  gap: 6px;
  padding: 13px 10px 13px 14px;
}

.home-database-row-title {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 9px;
  min-width: 0;
}

.home-database-row-title strong {
  min-width: 0;
  overflow: hidden;
  color: #ffffff;
  font-size: 17px;
  font-weight: 950;
  line-height: 1.15;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.home-database-row-status {
  display: inline-flex;
  align-items: center;
  flex: 0 0 auto;
  gap: 5px;
  color: #aeb9c6;
  font-size: 10px;
  font-weight: 950;
  line-height: 1;
  text-transform: uppercase;
}

.home-database-row-status > span {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: currentColor;
  box-shadow: 0 0 12px currentColor;
}

.home-database-row-status.game-pill-active {
  color: #22c55e;
  background: transparent;
}

.home-database-row-status.game-pill-upcoming {
  color: #f59e0b;
  background: transparent;
}

.home-database-row-status.game-pill-eos {
  color: #aeb9c6;
  background: transparent;
}

.home-database-row-genre,
.home-database-row-platforms {
  min-width: 0;
  overflow: hidden;
  color: #a6b4c2;
  font-size: 11px;
  line-height: 1.28;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.home-database-row-platforms {
  display: flex;
  align-items: center;
  gap: 6px;
  color: #8798a9;
}

.home-database-row-platforms .nav-icon,
.home-database-row-platforms svg {
  flex: 0 0 auto;
  width: 15px;
  height: 15px;
}

.home-database-row-platforms span:last-child {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.home-database-row-arrow {
  display: grid;
  place-items: center;
  align-self: stretch;
  color: #dce8f4;
}

.home-database-row-arrow .nav-icon,
.home-database-row-arrow svg {
  width: 18px;
  height: 18px;
}

.home-database-row-arrow svg {
  transform: rotate(-90deg);
}

.home-database-game-row.is-hidden-by-filter {
  display: none;
}

html.theme-light .home-database-panel .home-game-filters {
  border-color: rgba(15, 23, 42, 0.14);
  background: #ffffff;
}

html.theme-light .home-database-panel .home-game-filters button {
  color: #334155;
  border-right-color: rgba(15, 23, 42, 0.12);
}

html.theme-light .home-database-panel .home-game-filters button:hover,
html.theme-light .home-database-panel .home-game-filters button:focus-visible {
  color: #111827;
  background: #fff1f4;
}

html.theme-light .home-database-panel .home-game-filters button.is-active {
  color: #ffffff;
  background: #e11d48;
}

html.theme-light .home-database-lane {
  border-color: rgba(15, 23, 42, 0.14);
  background: #ffffff;
}

html.theme-light .home-database-lane-head {
  border-bottom-color: rgba(15, 23, 42, 0.12);
  background: #f8fafc;
}

html.theme-light .home-database-lane-heading strong,
html.theme-light .home-database-row-title strong {
  color: #111827;
  text-shadow: none;
}

html.theme-light .home-database-lane-heading small,
html.theme-light .home-database-row-genre {
  color: #526171;
}

html.theme-light .home-database-game-row {
  background: #ffffff;
}

html.theme-light .home-database-game-row + .home-database-game-row {
  border-top-color: rgba(15, 23, 42, 0.12);
}

html.theme-light .home-database-game-link:hover,
html.theme-light .home-database-game-link:focus-visible {
  background: #f4fbfd;
}

html.theme-light .home-database-row-platforms,
html.theme-light .home-database-row-arrow {
  color: #64748b;
}

@media (max-width: 1100px) {
  .home-database-lanes {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .home-database-lane-play-now {
    grid-column: 1 / -1;
  }

  .home-database-lanes.is-single-lane .home-database-lane-play-now {
    grid-column: auto;
  }
}

@media (max-width: 760px) {
  .home-database-panel {
    padding: 13px;
  }

  .home-database-panel .home-showcase-head {
    align-items: flex-start;
    gap: 12px;
  }

  .home-database-panel .home-game-filters {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    width: 100%;
    overflow-x: visible;
    scroll-snap-type: none;
  }

  .home-database-panel .home-game-filters button {
    grid-column: span 2;
    min-width: 0;
    scroll-snap-align: none;
  }

  .home-database-panel .home-game-filters button:nth-last-child(-n + 2) {
    grid-column: span 3;
  }

  .home-database-lanes {
    grid-template-columns: 1fr;
    gap: 10px;
  }

  .home-database-lane-play-now {
    grid-column: auto;
  }

  .home-database-lane-head {
    min-height: 60px;
    padding: 9px 12px;
  }

  .home-database-game-link {
    grid-template-columns: 108px minmax(0, 1fr) 22px;
    min-height: 100px;
  }

  .home-database-row-media img {
    min-height: 100px;
  }

  .home-database-row-copy {
    gap: 5px;
    padding: 11px 8px 11px 11px;
  }

  .home-database-row-title {
    align-items: flex-start;
    flex-direction: column;
    gap: 5px;
  }

  .home-database-row-title strong {
    max-width: 100%;
    font-size: 15px;
  }

  .home-database-row-status {
    font-size: 9px;
  }
}

@media (max-width: 430px) {
  .home-database-panel {
    padding: 11px;
  }

  .home-database-game-link {
    grid-template-columns: 92px minmax(0, 1fr) 20px;
  }

  .home-database-lane-heading strong {
    font-size: 16px;
  }

  .home-database-lane-heading small {
    display: none;
  }

  .home-database-row-platforms .nav-icon {
    display: none;
  }
}

/* Multilingual workspace: responsive editor */
.translation-workspace,
.translation-editor {
  display: grid;
  gap: 18px;
  padding: 22px;
}

.translation-workspace-hero,
.translation-editor-head {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 24px;
  padding: 24px;
  border: 1px solid var(--line);
  background: linear-gradient(110deg, rgba(244, 63, 94, 0.12), rgba(94, 243, 255, 0.07) 68%, transparent);
}

.translation-workspace-hero h2,
.translation-editor-head h2 {
  margin: 6px 0;
  font-size: clamp(30px, 4vw, 48px);
  line-height: 1;
}

.translation-workspace-hero p,
.translation-editor-head p {
  max-width: 760px;
  margin: 0;
  color: var(--muted);
}

.translation-coverage {
  display: grid;
  grid-template-columns: repeat(7, minmax(0, 1fr));
  border: 1px solid var(--line);
  background: var(--panel);
}

.translation-coverage article {
  min-width: 0;
  padding: 16px;
  border-right: 1px solid var(--line);
}

.translation-coverage article:last-child {
  border-right: 0;
}

.translation-coverage span {
  display: block;
  color: var(--muted);
  font-size: 11px;
  font-weight: 800;
  text-transform: uppercase;
}

.translation-coverage strong {
  display: block;
  margin-top: 7px;
  font-size: 28px;
}

.translation-filters {
  display: grid;
  grid-template-columns: minmax(220px, 1.5fr) repeat(3, minmax(150px, 0.7fr)) auto auto;
  align-items: end;
  gap: 12px;
  padding: 16px;
  border: 1px solid var(--line);
  background: var(--panel);
}

.translation-filters label {
  min-width: 0;
}

.translation-stale-filter,
.translation-override-check {
  display: flex;
  align-items: center;
  gap: 8px;
  min-height: 44px;
}

.translation-queue {
  overflow: hidden;
  border: 1px solid var(--line);
  background: var(--panel);
}

.translation-queue > header,
.translation-queue-row {
  display: grid;
  grid-template-columns: minmax(260px, 1.8fr) minmax(150px, 0.7fr) 130px minmax(150px, 0.8fr) 24px;
  align-items: center;
  gap: 14px;
}

.translation-queue > header {
  padding: 12px 18px;
  border-bottom: 1px solid var(--line);
  color: var(--muted);
  font-size: 11px;
  font-weight: 800;
  text-transform: uppercase;
}

.translation-queue-row {
  min-height: 76px;
  padding: 14px 18px;
  border-bottom: 1px solid var(--line);
  color: var(--text);
  text-decoration: none;
}

.translation-queue-row:last-child {
  border-bottom: 0;
}

.translation-queue-row:hover,
.translation-queue-row:focus-visible {
  background: rgba(244, 63, 94, 0.08);
  outline: none;
}

.translation-queue-identity {
  min-width: 0;
}

.translation-queue-identity small,
.translation-queue-identity strong {
  display: block;
  overflow-wrap: anywhere;
}

.translation-queue-identity small {
  color: var(--cyan);
  font-size: 10px;
  font-weight: 800;
  text-transform: uppercase;
}

.translation-status-badge,
.translation-stale-alert {
  display: inline-flex;
  align-items: center;
  width: max-content;
  max-width: 100%;
  min-height: 30px;
  padding: 5px 9px;
  border: 1px solid var(--line);
  color: var(--muted);
  font-size: 10px;
  font-weight: 900;
  text-transform: uppercase;
}

.translation-status-badge.is-in_review { border-color: #38bdf8; color: #7dd3fc; }
.translation-status-badge.is-approved { border-color: #f59e0b; color: #fbbf24; }
.translation-status-badge.is-published { border-color: #22c55e; color: #4ade80; }
.translation-status-badge.is-draft { border-color: #a78bfa; color: #c4b5fd; }
.translation-stale-alert { border-color: #fb7185; color: #fb7185; }

.translation-empty {
  padding: 40px 20px;
  text-align: center;
}

.translation-locale-tabs {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  border: 1px solid var(--line);
  background: var(--panel);
}

.translation-locale-tabs a {
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 0;
  min-height: 58px;
  padding: 10px 16px;
  border-right: 1px solid var(--line);
  color: var(--muted);
  text-decoration: none;
}

.translation-locale-tabs a:last-child { border-right: 0; }
.translation-locale-tabs a.active { background: rgba(244, 63, 94, 0.14); color: var(--text); box-shadow: inset 0 -3px #f43f5e; }
.translation-locale-tabs strong { display: grid; place-items: center; width: 34px; height: 34px; border: 1px solid currentColor; }

.translation-editor-form {
  display: grid;
  gap: 18px;
}

.translation-editor-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1px;
  border: 1px solid var(--line);
  background: var(--line);
}

.translation-source-panel,
.translation-target-panel {
  min-width: 0;
  background: var(--panel);
}

.translation-source-panel > header,
.translation-target-panel > header {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  min-height: 52px;
  padding: 14px 16px;
  border-bottom: 1px solid var(--line);
  color: var(--cyan);
  font-size: 11px;
}

.translation-source-panel article,
.translation-target-panel > label {
  display: grid;
  gap: 8px;
  padding: 16px;
  border-bottom: 1px solid var(--line);
}

.translation-source-panel label,
.translation-target-panel > label {
  color: var(--muted);
  font-size: 11px;
  font-weight: 800;
  text-transform: uppercase;
}

.translation-source-panel article > div {
  min-height: 72px;
  color: var(--text);
  font-size: 14px;
  line-height: 1.6;
  overflow-wrap: anywhere;
}

.translation-target-panel textarea {
  min-height: 92px;
  resize: vertical;
  text-transform: none;
}

/* Admin media optimization: priority lanes and recoverable Trash */
.admin-media-workspace .media-optimization-queue {
  background: var(--panel);
  display: grid;
  gap: 14px;
  padding: 16px;
}
.admin-media-workspace .media-optimization-queue > .panel-head {
  align-items: center;
  display: grid;
  gap: 16px;
  grid-template-columns: minmax(260px, 1fr) auto auto;
}
.admin-media-workspace .media-optimization-queue > .panel-head h2 { font-size: 28px; margin: 3px 0 4px; }
.media-priority-summary { display: grid; gap: 8px; grid-template-columns: repeat(3, minmax(82px, 1fr)); }
.media-priority-summary > span {
  align-items: center;
  background: var(--panel-2);
  border: 1px solid var(--border);
  border-radius: 6px;
  color: var(--muted);
  display: grid;
  font-size: 10px;
  grid-template-columns: auto 1fr;
  line-height: 1.15;
  min-height: 50px;
  min-width: 92px;
  padding: 7px 10px;
  text-transform: uppercase;
}
.media-priority-summary b { color: var(--text); font-size: 20px; grid-row: 1 / span 2; margin-right: 7px; }
.media-priority-summary .is-critical { border-color: rgba(244, 63, 94, .42); }
.media-priority-summary .is-optimize { border-color: rgba(245, 176, 65, .42); }
.media-priority-summary .is-unused { border-color: rgba(65, 214, 165, .36); }
.media-regeneration-progress {
  align-items: center;
  color: var(--muted);
  display: flex;
  flex-wrap: wrap;
  font-size: 11px;
  gap: 6px 12px;
  margin-top: 9px;
}
.media-regeneration-progress strong { color: var(--accent); }
.media-regeneration-progress span { white-space: nowrap; }
.media-priority-toolbar {
  align-items: center;
  background: var(--panel-2);
  border: 1px solid var(--border);
  border-radius: 6px;
  display: grid;
  gap: 8px;
  grid-template-columns: auto auto minmax(150px, 1fr) auto auto;
  padding: 9px 10px;
}
.media-priority-toolbar > label { align-items: center; display: flex; gap: 8px; min-width: 112px; }
.media-priority-toolbar input[type="checkbox"],
.media-priority-check input { accent-color: #28d7f4; height: 16px; width: 16px; }
.media-priority-toolbar button,
.media-priority-actions button,
.media-trash-list button {
  background: #111b26;
  border: 1px solid #304050;
  border-radius: 5px;
  color: var(--text);
  font-size: 11px;
  font-weight: 800;
  min-height: 34px;
  padding: 7px 11px;
}
.media-priority-toolbar button:hover:not(:disabled),
.media-priority-actions button:hover:not(:disabled),
.media-trash-list button:hover:not(:disabled) { border-color: #28d7f4; color: #67e8f9; }
.media-priority-toolbar button.is-danger,
.media-priority-actions button.is-danger,
.media-inspector-actions button.is-danger { border-color: rgba(244, 63, 94, .72); color: #ff6280; }
.media-priority-toolbar button.is-danger:hover:not(:disabled),
.media-priority-actions button.is-danger:hover:not(:disabled),
.media-inspector-actions button.is-danger:hover:not(:disabled) { background: rgba(244, 63, 94, .12); border-color: #f43f5e; }
.media-priority-toolbar button:disabled,
.media-priority-actions button:disabled { cursor: not-allowed; opacity: .48; }
.media-priority-board { display: grid; gap: 12px; }
.media-priority-lane { border: 1px solid var(--border); border-radius: 6px; min-width: 0; overflow: hidden; }
.media-priority-rows {
  contain: layout paint;
  max-height: 440px;
  overflow-y: auto;
  overscroll-behavior: contain;
  scrollbar-color: #40556a #0b131c;
  scrollbar-gutter: stable;
  scrollbar-width: thin;
}
.media-priority-rows::-webkit-scrollbar { width: 9px; }
.media-priority-rows::-webkit-scrollbar-track { background: #0b131c; }
.media-priority-rows::-webkit-scrollbar-thumb { background: #40556a; border: 2px solid #0b131c; border-radius: 5px; }
.media-priority-rows::-webkit-scrollbar-thumb:hover { background: #57718a; }
.media-priority-lane > header {
  align-items: center;
  background: #101923;
  border-bottom: 1px solid var(--border);
  display: flex;
  gap: 12px;
  justify-content: space-between;
  min-height: 48px;
  padding: 9px 14px;
}
.media-priority-lane > header > div { align-items: baseline; display: flex; flex-wrap: wrap; gap: 9px 18px; }
.media-priority-lane > header strong { font-size: 14px; text-transform: uppercase; }
.media-priority-lane > header span { color: var(--muted); font-size: 11px; }
.media-priority-lane > header > b { color: var(--muted); font-size: 10px; white-space: nowrap; }
.media-priority-lane.is-action-required { border-color: rgba(244, 63, 94, .58); }
.media-priority-lane.is-action-required > header { background: rgba(244, 63, 94, .09); }
.media-priority-lane.is-action-required > header strong { color: #ff6280; }
.media-priority-lane.is-optimize-next { border-color: rgba(245, 176, 65, .54); }
.media-priority-lane.is-optimize-next > header { background: rgba(245, 176, 65, .075); }
.media-priority-lane.is-optimize-next > header strong { color: #ffcf63; }
.media-priority-lane.is-safe-to-clean { border-color: rgba(65, 214, 165, .48); }
.media-priority-lane.is-safe-to-clean > header { background: rgba(65, 214, 165, .07); }
.media-priority-lane.is-safe-to-clean > header strong { color: #61e6bd; }
.media-priority-columns,
.media-priority-row { align-items: center; display: grid; gap: 10px; }
.media-priority-columns {
  background: rgba(4, 9, 15, .38);
  color: #8fa5bb;
  font-size: 9px;
  font-weight: 800;
  grid-template-columns: 84px minmax(210px, 1.4fr) 72px minmax(145px, .8fr) minmax(120px, .65fr) auto;
  min-height: 34px;
  padding: 6px 12px;
  text-transform: uppercase;
}
.media-priority-row {
  border-top: 1px solid var(--border);
  grid-template-columns: 26px 48px minmax(210px, 1.4fr) 72px minmax(145px, .8fr) minmax(120px, .65fr) auto;
  min-height: 68px;
  padding: 7px 12px;
}
.media-priority-row:first-child { border-top: 0; }
.media-priority-row:hover { background: rgba(40, 215, 244, .035); }
.media-priority-check { display: grid; place-items: center; }
.media-priority-check span { clip: rect(0 0 0 0); clip-path: inset(50%); height: 1px; overflow: hidden; position: absolute; width: 1px; }
.media-priority-row .media-optimization-thumb { border: 1px solid var(--border); border-radius: 5px; height: 46px; overflow: hidden; width: 46px; }
.media-priority-row .media-optimization-thumb img { height: 100%; object-fit: cover; width: 100%; }
.media-priority-asset,
.media-priority-issue,
.media-priority-usage { display: grid; gap: 2px; min-width: 0; }
.media-priority-asset strong,
.media-priority-asset small,
.media-priority-issue strong,
.media-priority-issue small,
.media-priority-usage span,
.media-priority-usage a,
.media-priority-usage small { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.media-priority-asset strong { font-size: 12px; }
.media-priority-asset small,
.media-priority-issue small,
.media-priority-usage small { color: var(--muted); font-size: 10px; }
.media-priority-size { color: #b9c8d8; font-size: 11px; white-space: nowrap; }
.media-priority-issue strong { color: #ffcf63; font-size: 11px; }
.is-safe-to-clean .media-priority-issue strong { color: #a9bdd1; }
.media-priority-usage a,
.media-priority-usage span { color: #67e8f9; font-size: 11px; }
.media-priority-actions { align-items: center; display: flex; gap: 6px; justify-content: flex-end; }
.media-priority-actions form { margin: 0; }
.media-priority-empty { color: var(--muted); margin: 0; padding: 18px 14px; }
.media-trash-panel { padding: 0; }
.media-trash-panel > summary { align-items: center; cursor: pointer; display: flex; gap: 16px; justify-content: space-between; list-style: none; padding: 14px 16px; }
.media-trash-panel > summary::-webkit-details-marker { display: none; }
.media-trash-panel > summary > span { display: grid; gap: 2px; }
.media-trash-panel > summary strong { font-size: 18px; }
.media-trash-panel > summary small { color: var(--muted); }
.media-trash-panel > summary > b { background: var(--panel-2); border: 1px solid var(--border); border-radius: 12px; font-size: 10px; padding: 4px 8px; }
.media-trash-list { border-top: 1px solid var(--border); display: grid; }
.media-trash-list article { align-items: center; border-top: 1px solid var(--border); display: grid; gap: 12px; grid-template-columns: minmax(220px, 1fr) 90px 150px auto; padding: 10px 16px; }
.media-trash-list article:first-child { border-top: 0; }
.media-trash-list article > div { display: grid; gap: 2px; min-width: 0; }
.media-trash-list article strong,
.media-trash-list article small { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.media-trash-list article small,
.media-trash-list article > span { color: var(--muted); font-size: 10px; }
.media-trash-list > .muted { margin: 0; padding: 16px; }
.admin-media-workspace .media-inspector-actions { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.admin-media-workspace .media-inspector-actions > form:last-child { grid-column: 1 / -1; }
.admin-media-workspace .media-inspector-actions button:disabled { cursor: not-allowed; opacity: .48; }
html.theme-light .media-priority-lane > header { background: #f7f9fc; }
html.theme-light .media-priority-toolbar,
html.theme-light .media-priority-summary > span,
html.theme-light .media-priority-toolbar button,
html.theme-light .media-priority-actions button,
html.theme-light .media-trash-list button { background: #f5f7fa; color: #172033; }

@media (max-width: 1120px) {
  .admin-media-workspace .media-optimization-queue > .panel-head { grid-template-columns: minmax(240px, 1fr) auto; }
  .admin-media-workspace .media-optimization-queue > .panel-head > form { grid-column: 2; grid-row: 2; }
  .media-priority-columns { display: none; }
  .media-priority-row { grid-template-columns: 26px 46px minmax(170px, 1fr) 70px minmax(150px, .8fr) auto; }
  .media-priority-usage { display: none; }
}

@media (max-width: 780px) {
  .admin-media-workspace .media-optimization-queue > .panel-head { align-items: stretch; grid-template-columns: 1fr; }
  .admin-media-workspace .media-optimization-queue > .panel-head > form { grid-column: 1; grid-row: auto; }
  .media-priority-summary { width: 100%; }
  .media-priority-toolbar { grid-template-columns: 1fr 1fr; }
  .media-priority-toolbar > label,
  .media-priority-toolbar > select { grid-column: 1 / -1; }
  .media-priority-row { align-items: start; grid-template-columns: 22px 46px minmax(0, 1fr); }
  .media-priority-size { grid-column: 3; }
  .media-priority-issue,
  .media-priority-actions { grid-column: 2 / -1; }
  .media-priority-actions { justify-content: flex-start; }
  .media-priority-lane > header { align-items: flex-start; }
  .media-trash-list article { grid-template-columns: 1fr auto; }
  .media-trash-list article > span { grid-column: 1; }
}

@media (max-width: 520px) {
  .media-priority-toolbar { grid-template-columns: 1fr; }
  .media-priority-toolbar > * { grid-column: 1 !important; width: 100%; }
  .media-priority-summary > span { min-width: 0; padding: 6px; }
  .media-priority-summary b { font-size: 16px; margin-right: 4px; }
  .media-priority-lane > header > div { display: grid; gap: 3px; }
  .media-priority-actions { align-items: stretch; display: grid; grid-template-columns: 1fr; }
  .media-priority-actions button,
  .media-priority-actions form,
  .media-priority-actions form button { width: 100%; }
  .media-trash-list article { grid-template-columns: 1fr; }
  .media-trash-list article > * { grid-column: 1 !important; }
}

.translation-locked-note {
  margin: 0;
  padding: 12px 16px;
  border-bottom: 1px solid var(--line);
  background: rgba(77, 243, 255, 0.04);
  color: var(--muted);
  font-size: 12px;
  line-height: 1.55;
}

.translation-locked-note strong {
  color: var(--text);
}

.translation-field-group {
  border-bottom: 1px solid var(--line);
}

.translation-field-group > header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  min-height: 62px;
  padding: 12px 16px;
  border-bottom: 1px solid var(--line);
  background: rgba(148, 163, 184, 0.045);
}

.translation-field-group > header span,
.translation-field-group > header small {
  color: var(--muted);
  font-size: 10px;
  font-weight: 800;
  text-transform: uppercase;
}

.translation-field-group > header h3 {
  margin: 3px 0 0;
  color: var(--text);
  font-size: 15px;
}

.translation-field-list {
  display: grid;
}

.translation-field-entry {
  display: grid;
  gap: 8px;
  min-width: 0;
  margin: 0;
  padding: 14px 16px;
  border-bottom: 1px solid rgba(148, 163, 184, 0.12);
}

.translation-field-entry:last-child {
  border-bottom: 0;
}

.translation-field-label {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 12px;
  min-width: 0;
}

.translation-field-label strong {
  color: var(--muted);
  font-size: 11px;
  font-weight: 800;
  text-transform: uppercase;
}

.translation-field-path {
  min-width: 0;
  color: color-mix(in srgb, var(--cyan) 74%, var(--muted));
  font-size: 10px;
  overflow-wrap: anywhere;
  text-align: right;
}

.translation-source-value {
  min-height: 42px;
  color: var(--text);
  font-size: 14px;
  line-height: 1.6;
  overflow-wrap: anywhere;
}

.translation-field-entry > small {
  color: var(--muted);
  font-size: 11px;
  line-height: 1.5;
}

.translation-target-panel .translation-field-entry textarea {
  width: 100%;
  min-height: 72px;
}

.translation-review-panel {
  display: grid;
  grid-template-columns: minmax(260px, 1fr) minmax(260px, 1fr);
  gap: 18px;
  padding: 18px;
  border: 1px solid var(--line);
  background: var(--panel);
}

.translation-review-panel h3 { margin: 4px 0 10px; }
.translation-review-panel ul { margin: 0; padding-left: 18px; color: var(--muted); line-height: 1.7; }
.translation-override-check { grid-column: 1 / -1; }

.translation-editor-actions {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  min-height: 72px;
  padding: 14px 18px;
  border: 1px solid var(--line);
  background: var(--panel);
}

.translation-editor-actions > div {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 10px;
}

html.theme-light .translation-workspace-hero,
html.theme-light .translation-editor-head,
html.theme-light .translation-coverage,
html.theme-light .translation-filters,
html.theme-light .translation-queue,
html.theme-light .translation-locale-tabs,
html.theme-light .translation-source-panel,
html.theme-light .translation-target-panel,
html.theme-light .translation-review-panel,
html.theme-light .translation-editor-actions {
  background-color: #ffffff;
  color: #0f172a;
}

html.theme-light .translation-source-panel article > div,
html.theme-light .translation-queue-row,
html.theme-light .translation-locale-tabs a.active {
  color: #0f172a;
}

html.theme-light .translation-locked-note,
html.theme-light .translation-field-group > header {
  background: #f8fafc;
  color: #475569;
}

html.theme-light .translation-field-group > header h3,
html.theme-light .translation-locked-note strong,
html.theme-light .translation-source-value {
  color: #0f172a;
}

html.theme-light .translation-field-path {
  color: #036b80;
}

@media (max-width: 1100px) {
  .translation-coverage { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .translation-coverage article { border-bottom: 1px solid var(--line); }
  .translation-filters { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .translation-queue > header { display: none; }
  .translation-queue-row { grid-template-columns: minmax(0, 1fr) auto; }
  .translation-queue-row > span:nth-child(3),
  .translation-queue-row > span:nth-child(4) { justify-self: start; }
}

@media (max-width: 760px) {
  .translation-workspace,
  .translation-editor { padding: 12px; }
  .translation-workspace-hero,
  .translation-editor-head,
  .translation-editor-actions { align-items: stretch; flex-direction: column; }
  .translation-coverage { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .translation-filters,
  .translation-editor-grid,
  .translation-review-panel { grid-template-columns: minmax(0, 1fr); }
  .translation-locale-tabs a { min-height: 64px; }
  .translation-queue-row { grid-template-columns: minmax(0, 1fr); gap: 8px; }
  .translation-editor-actions > div { justify-content: stretch; }
  .translation-editor-actions .button { flex: 1 1 100%; min-height: 44px; }
  .translation-field-label { align-items: flex-start; flex-direction: column; gap: 4px; }
  .translation-field-path { text-align: left; }
}

/* Multilingual public navigation */
.site-language-switcher {
  position: relative;
  flex: 0 0 auto;
  color: var(--text);
}

.site-language-switcher > summary {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  min-height: 42px;
  padding: 0 10px;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  color: var(--text-muted);
  background: rgba(255, 255, 255, 0.035);
  cursor: pointer;
  list-style: none;
  user-select: none;
}

.site-language-switcher > summary::-webkit-details-marker { display: none; }
.site-language-switcher > summary::marker { display: none; content: ''; }

.site-language-switcher > summary:hover,
.site-language-switcher > summary:focus-visible,
.site-language-switcher[open] > summary {
  color: var(--text);
  border-color: rgba(244, 63, 94, 0.48);
  background: rgba(244, 63, 94, 0.1);
  outline: none;
}

.site-language-switcher > summary .nav-icon {
  width: 14px;
  height: 14px;
  transition: transform 160ms ease;
}

.site-language-switcher[open] > summary .nav-icon { transform: rotate(180deg); }

.site-language-code {
  display: inline-grid;
  place-items: center;
  min-width: 25px;
  height: 22px;
  padding: 0 5px;
  border: 1px solid var(--line-strong);
  border-radius: 4px;
  color: var(--text);
  font: 800 11px/1 var(--font-sans);
}

.site-language-label {
  font-size: 12px;
  font-weight: 750;
  white-space: nowrap;
}

.site-language-menu {
  position: absolute;
  z-index: 160;
  top: calc(100% + 8px);
  right: 0;
  display: grid;
  width: 230px;
  padding: 7px;
  border: 1px solid var(--line-strong);
  border-radius: var(--radius);
  background: #0c121a;
  box-shadow: var(--shadow);
}

.site-language-menu a {
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr);
  align-items: center;
  gap: 9px;
  min-height: 44px;
  padding: 7px 9px;
  border: 1px solid transparent;
  border-radius: 5px;
  color: var(--text-muted);
}

.site-language-menu a:hover,
.site-language-menu a:focus-visible,
.site-language-menu a.is-active {
  color: var(--text);
  border-color: rgba(244, 63, 94, 0.36);
  background: rgba(244, 63, 94, 0.09);
  outline: none;
}

.site-language-menu a strong { color: #fb7185; font-size: 11px; }
.site-language-menu a span { min-width: 0; font-size: 12px; font-weight: 700; overflow-wrap: anywhere; }

html.theme-light .site-language-switcher > summary {
  color: #526171;
  border-color: rgba(15, 23, 42, 0.15);
  background: #ffffff;
}

html.theme-light .site-language-switcher > summary:hover,
html.theme-light .site-language-switcher > summary:focus-visible,
html.theme-light .site-language-switcher[open] > summary {
  color: #111827;
  border-color: rgba(244, 63, 94, 0.42);
  background: #fff1f4;
}

html.theme-light .site-language-code { color: #111827; }
html.theme-light .site-language-menu { background: #ffffff; border-color: rgba(15, 23, 42, 0.17); }
html.theme-light .site-language-menu a { color: #526171; }
html.theme-light .site-language-menu a:hover,
html.theme-light .site-language-menu a:focus-visible,
html.theme-light .site-language-menu a.is-active { color: #111827; background: #fff1f4; }

@media (max-width: 1180px) {
  .site-language-switcher { width: 100%; }
  .site-language-switcher > summary { justify-content: flex-start; width: 100%; min-height: 46px; }
  .site-language-switcher > summary .nav-icon { margin-left: auto; }
  .site-language-menu { position: static; width: 100%; margin-top: 7px; box-shadow: none; }
}

/* Article related-content command picker */
.relation-visually-hidden {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.article-relation-fields {
  min-width: 0;
}

.article-relation-picker {
  display: grid;
  gap: 12px;
  min-width: 0;
  color: var(--text);
}

.article-relation-command-search {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 12px;
  min-height: 52px;
  padding: 0 14px;
  border: 1px solid var(--line-strong);
  border-radius: var(--radius);
  background: #0b121a;
}

.article-relation-command-search:focus-within {
  border-color: rgba(94, 234, 212, 0.72);
  box-shadow: 0 0 0 3px rgba(94, 234, 212, 0.1);
}

.article-relation-command-search .nav-icon {
  width: 20px;
  height: 20px;
  color: var(--muted);
}

.article-relation-command-search input {
  width: 100%;
  min-width: 0;
  border: 0;
  outline: 0;
  color: var(--text);
  background: transparent;
  font-size: 15px;
}

.article-relation-command-search input::placeholder {
  color: var(--muted-2);
}

.article-relation-command-search kbd {
  min-width: 52px;
  padding: 5px 8px;
  border: 1px solid var(--line-strong);
  border-radius: 5px;
  color: var(--muted);
  background: var(--surface-2);
  font-size: 11px;
  font-weight: 800;
  text-align: center;
}

.article-relation-workspace {
  display: grid;
  grid-template-columns: 224px minmax(0, 1fr);
  min-height: 520px;
  max-height: 680px;
  overflow: hidden;
  border: 1px solid var(--line-strong);
  border-radius: var(--radius);
  background: #0a1118;
}

.article-relation-filter-rail {
  min-width: 0;
  overflow-y: auto;
  border-right: 1px solid var(--line);
  background: #0d1620;
}

.article-relation-filter-group {
  display: grid;
  padding: 8px;
}

.article-relation-filter-group + .article-relation-filter-group {
  border-top: 1px solid var(--line);
}

.article-relation-filter-group > small {
  padding: 10px 10px 7px;
  color: var(--muted-2);
  font-size: 11px;
  font-weight: 900;
  text-transform: uppercase;
}

.article-relation-filter-group button {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  min-width: 0;
  min-height: 44px;
  padding: 9px 10px;
  border: 0;
  border-left: 2px solid transparent;
  color: var(--muted);
  background: transparent;
  cursor: pointer;
  text-align: left;
}

.article-relation-filter-group button:hover,
.article-relation-filter-group button:focus-visible {
  color: var(--text);
  background: rgba(148, 163, 184, 0.08);
  outline: none;
}

.article-relation-filter-group button.is-active {
  color: var(--text);
  border-left-color: var(--accent);
  background: rgba(34, 211, 238, 0.1);
}

.article-relation-filter-group button span {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  min-width: 0;
  overflow: hidden;
  font-size: 13px;
  font-weight: 800;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.article-relation-filter-group button strong {
  color: var(--muted-2);
  font-size: 12px;
}

.article-relation-filter-group button.is-active strong {
  color: var(--accent);
}

.article-relation-filter-group .nav-icon {
  width: 17px;
  height: 17px;
  flex: 0 0 17px;
}

.article-relation-results {
  min-width: 0;
  overflow: auto;
  scrollbar-color: rgba(148, 163, 184, 0.45) transparent;
}

.article-relation-result-group > header {
  position: sticky;
  top: 0;
  z-index: 2;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  min-height: 42px;
  padding: 9px 14px;
  border-bottom: 1px solid var(--line);
  color: var(--accent);
  background: rgba(10, 17, 24, 0.97);
}

.article-relation-result-group > header > span {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-size: 12px;
  font-weight: 950;
  text-transform: uppercase;
}

.article-relation-result-group > header .nav-icon {
  width: 16px;
  height: 16px;
}

.article-relation-result-group > header small {
  color: var(--muted);
  font-size: 12px;
}

.article-relation-result-group > header small b {
  color: var(--text);
}

.article-relation-result-row {
  display: grid;
  grid-template-columns: 46px minmax(220px, 1fr) minmax(110px, 160px) 94px 78px;
  align-items: center;
  gap: 12px;
  min-height: 66px;
  padding: 8px 12px;
  border-bottom: 1px solid var(--line);
  background: transparent;
}

.article-relation-result-row:hover {
  background: rgba(148, 163, 184, 0.07);
}

.article-relation-result-row.is-selected {
  background: rgba(34, 211, 238, 0.09);
}

.article-relation-thumb {
  display: block;
  width: 44px;
  height: 44px;
  overflow: hidden;
  border: 1px solid var(--line-strong);
  border-radius: 6px;
  background: var(--surface-2);
}

.article-relation-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.article-relation-result-copy,
.article-relation-selected-copy {
  display: grid;
  gap: 4px;
  min-width: 0;
}

.article-relation-result-copy strong,
.article-relation-selected-copy strong {
  overflow: hidden;
  color: var(--text);
  font-size: 13px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.article-relation-result-copy small,
.article-relation-selected-copy small {
  overflow: hidden;
  color: var(--muted);
  font-size: 11px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.article-relation-game-label,
.article-relation-status {
  justify-self: start;
  max-width: 100%;
  overflow: hidden;
  padding: 5px 7px;
  border: 1px solid rgba(56, 189, 248, 0.28);
  border-radius: 5px;
  color: #7dd3fc;
  background: rgba(14, 116, 144, 0.13);
  font-size: 11px;
  font-weight: 800;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.article-relation-status {
  border-color: rgba(52, 211, 153, 0.28);
  color: #86efac;
  background: rgba(22, 101, 52, 0.18);
}

.article-relation-status.is-draft,
.article-relation-status.is-review,
.article-relation-status.is-scheduled {
  border-color: rgba(245, 158, 11, 0.32);
  color: #fbbf24;
  background: rgba(146, 64, 14, 0.16);
}

.article-relation-result-row > button,
.article-relation-selected-actions button {
  min-height: 34px;
  padding: 6px 9px;
  border: 1px solid var(--line-strong);
  border-radius: 6px;
  color: var(--text);
  background: #101925;
  cursor: pointer;
  font-size: 11px;
  font-weight: 900;
}

.article-relation-result-row > button:hover,
.article-relation-result-row > button:focus-visible,
.article-relation-selected-actions button:hover,
.article-relation-selected-actions button:focus-visible {
  border-color: rgba(94, 234, 212, 0.65);
  color: var(--accent);
  outline: none;
}

.article-relation-result-row.is-selected > button {
  border-color: rgba(94, 234, 212, 0.55);
  color: #081014;
  background: var(--accent);
}

.article-relation-empty,
.article-relation-selected-empty {
  margin: 0;
  padding: 32px 18px;
  color: var(--muted);
  text-align: center;
}

.article-relation-selected-dock {
  position: sticky;
  bottom: 12px;
  z-index: 4;
  display: grid;
  gap: 10px;
  padding: 12px;
  border: 1px solid var(--line-strong);
  border-radius: var(--radius);
  background: rgba(10, 17, 24, 0.97);
  box-shadow: 0 18px 46px rgba(0, 0, 0, 0.32);
  backdrop-filter: blur(16px);
}

.article-relation-selected-heading,
.article-relation-dock-actions {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.article-relation-selected-heading > span {
  color: var(--accent);
  font-size: 12px;
  font-weight: 950;
  text-transform: uppercase;
}

.article-relation-selected-heading small,
.article-relation-dock-actions > span {
  color: var(--muted);
  font-size: 11px;
}

.article-relation-selected-list {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
  gap: 8px;
}

.article-relation-selected-item {
  display: grid;
  grid-template-columns: 22px 42px minmax(0, 1fr) auto;
  align-items: center;
  gap: 8px;
  min-width: 0;
  padding: 8px;
  border: 1px solid var(--line);
  border-radius: 6px;
  background: var(--surface-2);
}

.article-relation-selected-item.is-dragging {
  opacity: 0.55;
  border-color: var(--accent);
}

.article-relation-selected-item .article-relation-thumb {
  width: 40px;
  height: 40px;
}

.article-relation-drag-handle {
  display: grid;
  place-items: center;
  color: var(--muted-2);
  cursor: grab;
}

.article-relation-drag-handle .nav-icon {
  width: 16px;
  height: 16px;
}

.article-relation-selected-actions {
  display: flex;
  align-items: center;
  gap: 5px;
}

.article-relation-selected-actions button[data-relation-move] {
  display: grid;
  place-items: center;
  width: 30px;
  min-height: 30px;
  padding: 0;
}

.article-relation-selected-actions button .nav-icon {
  width: 14px;
  height: 14px;
}

.article-relation-selected-actions button.is-down .nav-icon {
  transform: rotate(180deg);
}

.article-relation-selected-actions button:disabled,
.article-relation-dock-actions button:disabled {
  opacity: 0.38;
  cursor: not-allowed;
}

.article-relation-dock-actions {
  justify-content: flex-end;
  border-top: 1px solid var(--line);
  padding-top: 10px;
}

.article-relation-dock-actions > span {
  margin-right: auto;
}

.article-relation-picker.is-confirmed .article-relation-selected-dock {
  border-color: rgba(94, 234, 212, 0.6);
}

html.theme-light .article-relation-picker {
  color: #111827;
}

html.theme-light .article-relation-command-search,
html.theme-light .article-relation-workspace,
html.theme-light .article-relation-selected-dock {
  border-color: rgba(15, 23, 42, 0.18);
  background: rgba(255, 255, 255, 0.98);
}

html.theme-light .article-relation-command-search input,
html.theme-light .article-relation-result-copy strong,
html.theme-light .article-relation-selected-copy strong,
html.theme-light .article-relation-result-group > header small b {
  color: #111827;
}

html.theme-light .article-relation-command-search kbd,
html.theme-light .article-relation-selected-item,
html.theme-light .article-relation-result-row > button,
html.theme-light .article-relation-selected-actions button {
  color: #1f2937;
  border-color: rgba(15, 23, 42, 0.16);
  background: #f8fafc;
}

html.theme-light .article-relation-filter-rail {
  border-color: rgba(15, 23, 42, 0.14);
  background: #f8fafc;
}

html.theme-light .article-relation-filter-group + .article-relation-filter-group,
html.theme-light .article-relation-result-row,
html.theme-light .article-relation-result-group > header,
html.theme-light .article-relation-dock-actions {
  border-color: rgba(15, 23, 42, 0.12);
}

html.theme-light .article-relation-filter-group button {
  color: #526171;
}

html.theme-light .article-relation-filter-group button:hover,
html.theme-light .article-relation-filter-group button:focus-visible,
html.theme-light .article-relation-filter-group button.is-active,
html.theme-light .article-relation-result-row:hover,
html.theme-light .article-relation-result-row.is-selected {
  color: #111827;
  background: #ecfeff;
}

html.theme-light .article-relation-result-group > header {
  background: rgba(248, 250, 252, 0.98);
}

html.theme-light .article-relation-result-copy small,
html.theme-light .article-relation-selected-copy small,
html.theme-light .article-relation-selected-heading small,
html.theme-light .article-relation-dock-actions > span {
  color: #526171;
}

html.theme-light .article-relation-result-row.is-selected > button {
  color: #062c30;
  border-color: #14b8a6;
  background: #99f6e4;
}

/* Character Suggested Collections uses the Related Content command picker. */
.suggested-collection-section {
  display: grid;
  gap: 12px;
  padding: 16px;
}

.suggested-collection-section > .admin-builder-head {
  margin-bottom: 0;
}

.suggested-collection-section > .admin-builder-head strong {
  font-size: 15px;
}

.suggested-collection-picker .article-relation-workspace {
  grid-template-columns: 210px minmax(0, 1fr);
  min-height: 390px;
  max-height: 560px;
}

.suggested-collection-picker .article-relation-result-row {
  grid-template-columns: 46px minmax(160px, 1fr) 88px 76px;
}

/* Admin Games: explicitly curated characters for the public overview. */
.game-featured-character-editor {
  display: grid;
  gap: 14px;
}

.game-featured-character-picker .article-relation-workspace {
  grid-template-columns: minmax(0, 1fr);
  min-height: 0;
  max-height: 520px;
}

.game-featured-character-picker .article-relation-results {
  max-height: 520px;
}

.game-featured-character-picker .article-relation-result-row {
  grid-template-columns: 46px minmax(180px, 1fr) 94px 78px;
}

.game-featured-character-picker .article-relation-selected-dock {
  position: static;
  bottom: auto;
}

.game-featured-character-picker .article-relation-selected-list {
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
}

.game-featured-character-picker .article-relation-thumb b {
  display: grid;
  width: 100%;
  height: 100%;
  place-items: center;
  color: var(--accent);
  background: rgba(34, 211, 238, 0.08);
  font-size: 16px;
}

/* Character skill accordion and image workflow */
.admin-skill-accordion {
  padding: 0;
  overflow: hidden;
  background: var(--panel-soft);
}

.admin-skill-accordion > .admin-builder-head {
  margin: 0;
  padding: 16px;
  border-bottom: 1px solid var(--border);
}

.admin-skill-accordion .admin-skill-add {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 40px;
  border-color: #f43f5e;
  background: #e91546;
  color: #fff;
  box-shadow: 0 10px 22px rgba(233, 21, 70, .2);
}

.admin-skill-accordion .admin-skill-add:hover,
.admin-skill-accordion .admin-skill-add:focus-visible {
  border-color: #fb7185;
  background: #f43f5e;
  color: #fff;
}

.admin-skill-add .nav-icon {
  width: 18px;
  height: 18px;
}

.admin-skill-accordion .admin-builder-list {
  gap: 0;
}

.admin-skill-row {
  min-width: 0;
  border-bottom: 1px solid var(--border);
  background: var(--panel);
}

.admin-skill-row.is-expanded {
  box-shadow: inset 3px 0 0 var(--accent);
}

.admin-skill-summary {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  min-height: 72px;
  border-bottom: 1px solid transparent;
}

.admin-skill-row.is-expanded .admin-skill-summary {
  border-bottom-color: var(--border);
}

.admin-skill-summary-main {
  display: grid;
  grid-template-columns: 28px 50px minmax(150px, 1fr) minmax(86px, auto) 64px 108px 22px;
  gap: 12px;
  align-items: center;
  width: 100%;
  min-width: 0;
  padding: 10px 12px;
  border: 0;
  background: transparent;
  color: var(--text);
  text-align: left;
  cursor: pointer;
}

.admin-skill-summary-main:hover,
.admin-skill-summary-main:focus-visible {
  background: color-mix(in srgb, var(--accent) 7%, transparent);
}

.admin-skill-summary-main:focus-visible,
.admin-skill-actions button:focus-visible,
.admin-skill-image-actions button:focus-visible,
.admin-skill-upload-zone:focus-within {
  outline: 2px solid var(--accent);
  outline-offset: -2px;
}

.admin-skill-summary-main .admin-builder-handle {
  display: grid;
  place-items: center;
  width: 28px;
  height: 36px;
}

.admin-skill-summary-main .admin-builder-handle .nav-icon {
  width: 17px;
  height: 17px;
}

.admin-skill-thumb,
.admin-skill-image-preview {
  display: grid;
  place-items: center;
  overflow: hidden;
  border: 1px solid var(--border);
  border-radius: 6px;
  background: var(--panel-soft);
}

.admin-skill-thumb {
  width: 50px;
  height: 50px;
}

.admin-skill-thumb img,
.admin-skill-image-preview img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.admin-skill-thumb.is-placeholder,
.admin-skill-image-preview.is-placeholder {
  color: var(--muted);
  background: color-mix(in srgb, var(--panel-soft) 88%, var(--accent) 12%);
}

.admin-skill-thumb .nav-icon {
  width: 20px;
  height: 20px;
}

.admin-skill-summary-main > strong {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 15px;
}

.admin-skill-type-badge,
.admin-skill-cooldown,
.admin-skill-completeness {
  font-size: 12px;
}

.admin-skill-type-badge {
  width: fit-content;
  max-width: 100%;
  padding: 5px 8px;
  overflow: hidden;
  border: 1px solid color-mix(in srgb, var(--accent) 36%, var(--border));
  border-radius: 5px;
  color: var(--accent);
  background: color-mix(in srgb, var(--accent) 11%, transparent);
  text-overflow: ellipsis;
  white-space: nowrap;
}

.admin-skill-type-badge.is-passive {
  border-color: var(--border);
  color: var(--muted);
  background: var(--panel-soft);
}

.admin-skill-cooldown {
  color: var(--text);
  font-weight: 750;
}

.admin-skill-completeness {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  color: var(--muted);
  white-space: nowrap;
}

.admin-skill-completeness::before {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #f59e0b;
  content: "";
}

.admin-skill-completeness.is-complete::before {
  background: #22c55e;
}

.admin-skill-chevron {
  display: grid;
  place-items: center;
  transition: transform 160ms ease;
}

.admin-skill-row.is-expanded .admin-skill-chevron {
  transform: rotate(180deg);
}

.admin-skill-chevron .nav-icon {
  width: 18px;
  height: 18px;
}

.admin-skill-actions {
  display: flex;
  align-items: center;
  gap: 4px;
  padding: 10px 12px 10px 4px;
}

.admin-skill-actions button,
.admin-skill-image-actions button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  min-width: 36px;
  min-height: 36px;
  padding: 7px;
  border: 1px solid var(--border);
  border-radius: 6px;
  background: var(--panel-soft);
  color: var(--muted);
  cursor: pointer;
}

.admin-skill-actions button:hover,
.admin-skill-image-actions button:hover {
  border-color: color-mix(in srgb, var(--accent) 52%, var(--border));
  color: var(--text);
}

.admin-skill-actions button:disabled {
  opacity: .32;
  cursor: not-allowed;
}

.admin-skill-actions button.is-down .nav-icon {
  transform: rotate(180deg);
}

.admin-skill-actions button.is-danger,
.admin-skill-image-actions button {
  color: #fb7185;
}

.admin-skill-actions .nav-icon,
.admin-skill-image-actions .nav-icon {
  width: 17px;
  height: 17px;
}

.admin-skill-panel {
  display: grid;
  grid-template-columns: minmax(280px, .8fr) minmax(0, 2fr);
  min-width: 0;
}

.admin-skill-panel[hidden] {
  display: none;
}

.admin-skill-image-editor {
  display: grid;
  align-content: start;
  gap: 10px;
  min-width: 0;
  padding: 16px;
  border-right: 1px solid var(--border);
}

.admin-skill-image-workspace {
  display: grid;
  grid-template-columns: 112px minmax(130px, 1fr);
  gap: 12px;
}

.admin-skill-image-preview {
  width: 112px;
  aspect-ratio: 1;
}

.admin-skill-image-preview.is-placeholder {
  gap: 7px;
  align-content: center;
}

.admin-skill-image-preview .nav-icon {
  width: 28px;
  height: 28px;
}

.admin-skill-image-preview small,
.admin-skill-image-help {
  color: var(--muted);
  font-size: 11px;
}

.admin-skill-upload-zone {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  min-width: 0;
  min-height: 112px;
  padding: 14px;
  border: 1px dashed color-mix(in srgb, var(--accent) 50%, var(--border));
  border-radius: 6px;
  background: color-mix(in srgb, var(--accent) 5%, transparent);
  color: var(--text);
  cursor: pointer;
  text-align: center;
}

.admin-skill-upload-zone:hover,
.admin-skill-upload-zone.is-dragging {
  border-color: var(--accent);
  background: color-mix(in srgb, var(--accent) 10%, transparent);
}

.admin-skill-upload-zone > input {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  opacity: 0;
}

.admin-skill-upload-zone > .nav-icon {
  flex: 0 0 auto;
  width: 24px;
  height: 24px;
  color: var(--accent);
}

.admin-skill-upload-zone > span {
  display: grid;
  gap: 4px;
  min-width: 0;
}

.admin-skill-upload-zone small {
  color: var(--muted);
  line-height: 1.35;
}

.admin-skill-image-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.admin-skill-image-actions button {
  padding-inline: 11px;
}

.admin-skill-image-actions button:disabled {
  opacity: .35;
  cursor: not-allowed;
}

.admin-skill-image-actions button.is-library {
  color: var(--text);
}

.admin-skill-image-actions button.is-library .nav-icon {
  color: var(--accent);
}

.admin-skill-fields {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(150px, .7fr) minmax(110px, .45fr);
  gap: 12px;
  align-content: start;
  min-width: 0;
  padding: 16px;
}

.admin-skill-fields label {
  min-width: 0;
}

.admin-skill-fields .wide {
  grid-column: 1 / -1;
}

.admin-skill-fields textarea {
  min-height: 116px;
  resize: vertical;
}

.admin-skill-builder-summary {
  padding: 11px 16px;
  color: var(--muted);
  font-size: 12px;
}

.review-skill-grid .skill-item {
  min-height: 154px;
  padding: 16px;
}

.skill-item-heading {
  display: grid;
  grid-template-columns: 64px minmax(0, 1fr) 30px;
  gap: 12px;
  align-items: center;
}

.skill-item-media {
  display: grid;
  place-items: center;
  width: 64px;
  aspect-ratio: 1;
  overflow: hidden;
  border: 1px solid var(--line);
  border-radius: 6px;
  background: var(--surface-2);
}

.skill-item-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.skill-item-media.is-placeholder {
  color: var(--muted);
}

.skill-item-media .nav-icon {
  width: 23px;
  height: 23px;
}

.skill-item-title {
  min-width: 0;
}

.skill-item-title strong {
  overflow-wrap: anywhere;
}

.review-skill-grid .skill-item .skill-item-heading > em {
  position: static;
  width: 30px;
  height: 30px;
}

.review-skill-grid .skill-item > p {
  margin-top: 12px;
}

html.theme-light .admin-skill-row,
html.theme-light .admin-skill-accordion,
html.theme-light .admin-skill-actions button,
html.theme-light .admin-skill-image-actions button {
  background: #f8fafc;
}

html.theme-light .admin-skill-summary-main:hover,
html.theme-light .admin-skill-summary-main:focus-visible,
html.theme-light .admin-skill-upload-zone {
  background: #f0fdfa;
}

@media (max-width: 1180px) {
  .admin-skill-summary-main {
    grid-template-columns: 26px 48px minmax(130px, 1fr) minmax(80px, auto) 58px 22px;
  }

  .admin-skill-completeness {
    display: none;
  }

  .admin-skill-panel {
    grid-template-columns: minmax(250px, .75fr) minmax(0, 1.5fr);
  }
}

@media (max-width: 860px) {
  .admin-skill-panel {
    grid-template-columns: 1fr;
  }

  .admin-skill-image-editor {
    border-right: 0;
    border-bottom: 1px solid var(--border);
  }

  .admin-skill-summary {
    grid-template-columns: 1fr;
  }

  .admin-skill-actions {
    justify-content: flex-end;
    padding: 0 12px 10px;
  }
}

@media (max-width: 620px) {
  .admin-skill-accordion > .admin-builder-head {
    align-items: stretch;
  }

  .admin-skill-accordion .admin-skill-add {
    justify-content: center;
    width: 100%;
  }

  .admin-skill-summary-main {
    grid-template-columns: 24px 44px minmax(0, 1fr) 20px;
    gap: 9px;
  }

  .admin-skill-thumb {
    width: 44px;
    height: 44px;
  }

  .admin-skill-type-badge,
  .admin-skill-cooldown,
  .admin-skill-completeness {
    display: none;
  }

  .admin-skill-image-workspace,
  .admin-skill-fields {
    grid-template-columns: 1fr;
  }

  .admin-skill-image-preview {
    width: min(112px, 100%);
  }

  .admin-skill-fields .wide {
    grid-column: 1;
  }

  .skill-item-heading {
    grid-template-columns: 54px minmax(0, 1fr) 30px;
  }

  .skill-item-media {
    width: 54px;
  }
}

/* Game live operations: release roadmap and event banner timeline */
.game-release-roadmap,
.game-banner-overview {
  box-sizing: border-box;
  width: min(var(--page-max), calc(100% - (var(--page-pad) * 2)));
  margin-inline: auto;
  padding: 20px;
  overflow: hidden;
  border: 1px solid var(--line-strong);
  border-radius: var(--radius-sm);
  background: #081019;
}

.section.game-release-roadmap,
.section.game-banner-overview {
  padding: 24px 20px 20px;
}

.game-live-ops-heading {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 24px;
  margin-bottom: 16px;
}

.game-live-ops-heading > div:first-child {
  min-width: 0;
}

.game-live-ops-heading > div:first-child > .game-live-ops-eyebrow {
  display: block;
  margin-bottom: 8px;
  color: #2de2f2;
  font-size: 13px;
  font-weight: 900;
  line-height: 1.15;
  letter-spacing: 0;
  text-transform: uppercase;
}

.game-live-ops-heading h2 {
  margin: 0;
  color: var(--text);
  font-size: 28px;
  line-height: 1.08;
  letter-spacing: 0;
  text-transform: uppercase;
}

.game-live-ops-heading > p,
.game-live-ops-heading > div:first-child > p {
  max-width: 440px;
  margin: 5px 0 0;
  color: var(--muted);
  font-size: 14px;
  line-height: 1.45;
}

.game-roadmap-meta {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  flex-wrap: wrap;
  gap: 9px 14px;
  min-width: 0;
}

.game-roadmap-meta > p {
  margin: 0;
  color: var(--muted);
  font-size: 14px;
  line-height: 1.45;
  text-align: right;
}

.game-roadmap-status-legend {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 8px 14px;
}

.game-roadmap-status-legend > span {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin: 0;
  color: var(--muted);
  font-size: 11px;
  font-weight: 800;
  line-height: 1;
}

.game-roadmap-status-legend i {
  width: 9px;
  height: 9px;
  border: 2px solid #3e8f73;
  border-radius: 50%;
  background: #081019;
}

.game-roadmap-status-legend .is-live i {
  border-color: #ef1748;
}

.game-roadmap-status-legend .is-upcoming i {
  border-color: #d79313;
}

.game-roadmap-viewport,
.game-banner-viewport {
  min-width: 0;
  overflow-x: auto;
  overscroll-behavior-inline: contain;
  scrollbar-color: #486072 #101a24;
  scrollbar-width: thin;
  scroll-snap-type: x proximity;
}

.game-roadmap-viewport:focus-visible,
.game-banner-viewport:focus-visible {
  outline: 2px solid #2de2f2;
  outline-offset: 3px;
}

.game-roadmap-track {
  position: relative;
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: 176px;
  gap: 0;
  width: max-content;
  min-width: 100%;
  padding: 22px 1px 12px;
}

.game-roadmap-track::before {
  position: absolute;
  top: 10px;
  right: 0;
  left: 0;
  height: 1px;
  background: #3b4d5c;
  content: "";
}

.game-roadmap-version-group {
  --roadmap-state: #3e8f73;
  position: relative;
  min-height: 154px;
  padding: 0 8px 10px;
  border-left: 1px solid #314353;
}

.game-roadmap-version-group:last-child {
  border-right: 1px solid #314353;
}

.game-roadmap-version-group.is-current {
  --roadmap-state: #ef1748;
}

.game-roadmap-version-group.is-upcoming {
  --roadmap-state: #d79313;
}

.game-roadmap-version-head {
  display: grid;
  justify-items: center;
  gap: 3px;
  min-height: 38px;
  margin-top: -22px;
  color: var(--roadmap-state);
}

.game-roadmap-version-head i {
  width: 10px;
  height: 10px;
  border: 2px solid var(--roadmap-state);
  border-radius: 50%;
  background: #081019;
}

.game-roadmap-version-head strong {
  font-size: 19px;
  font-weight: 950;
  line-height: 1;
}

.game-roadmap-version-head small {
  color: var(--muted);
  font-size: 9px;
  font-weight: 800;
}

.game-roadmap-version-items {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  align-items: start;
  gap: 6px;
}

.game-roadmap-entry {
  position: relative;
  display: grid;
  grid-template-rows: 76px auto auto;
  gap: 3px;
  min-width: 0;
  min-height: 116px;
  padding: 5px;
  overflow: hidden;
  border: 1px solid #263747;
  border-radius: 3px;
  background: #0d1721;
  scroll-snap-align: start;
  transition: border-color 160ms ease, background-color 160ms ease;
}

a.game-roadmap-entry:hover {
  border-color: #5d7488;
  background: #111f2c;
}

.game-roadmap-entry.is-current {
  border-color: #ef1748;
  box-shadow: inset 0 -3px 0 #ef1748;
}

.game-roadmap-entry.is-upcoming {
  border-color: #d79313;
}

.game-roadmap-entry.is-released {
  border-color: #3e8f73;
}

.game-roadmap-version {
  color: #f59e0b;
  font-size: 18px;
  font-weight: 950;
  line-height: 1;
  letter-spacing: 0;
}

.game-roadmap-entry.is-current .game-roadmap-version {
  color: #ff4b6f;
}

.game-roadmap-portrait {
  display: grid;
  place-items: center;
  width: 100%;
  height: 76px;
  overflow: hidden;
  border: 1px solid #324658;
  border-radius: 3px;
  background: #111c27;
}

.game-roadmap-portrait img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center 18%;
}

.game-roadmap-portrait b {
  color: var(--muted);
  font-size: 26px;
}

.game-roadmap-entry > strong {
  overflow: hidden;
  color: var(--text);
  font-size: 11px;
  line-height: 1.15;
  letter-spacing: 0;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.game-roadmap-entry > small {
  overflow: hidden;
  color: var(--muted);
  font-size: 9px;
  line-height: 1.25;
  letter-spacing: 0;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.game-horizontal-controls {
  display: grid;
  grid-template-columns: 38px minmax(80px, 1fr) auto 38px;
  align-items: center;
  gap: 10px;
  width: 100%;
  min-width: 0;
  margin-top: 10px;
}

.game-horizontal-controls button {
  display: grid;
  place-items: center;
  width: 38px;
  height: 34px;
  padding: 0;
  border: 1px solid #304354;
  border-radius: 4px;
  color: var(--text);
  background: #0d1721;
  cursor: pointer;
}

.game-horizontal-controls button:first-child .nav-icon {
  transform: rotate(180deg);
}

.game-horizontal-controls button:disabled {
  opacity: 0.35;
  cursor: default;
}

.game-horizontal-controls button:not(:disabled):hover {
  border-color: #2de2f2;
  color: #2de2f2;
}

.game-horizontal-controls .nav-icon {
  width: 16px;
  height: 16px;
}

.game-horizontal-track {
  position: relative;
  height: 8px;
  overflow: hidden;
  border-radius: 2px;
  background: #14212d;
  cursor: pointer;
}

.game-horizontal-track > span {
  display: block;
  width: 20%;
  height: 100%;
  border-radius: inherit;
  background: #6f8799;
  transform-origin: left center;
  transition: transform 90ms linear, width 90ms linear;
}

.game-horizontal-controls small {
  min-width: 38px;
  color: var(--muted);
  font-size: 11px;
  font-variant-numeric: tabular-nums;
  text-align: center;
}

.game-banner-heading {
  align-items: center;
  padding-bottom: 16px;
  border-bottom: 1px solid var(--line);
}

.game-banner-legend {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  flex-wrap: wrap;
  gap: 16px;
  flex: 0 0 auto;
  max-width: min(100%, 620px);
  padding: 10px 12px;
  border: 1px solid var(--line);
  border-radius: 4px;
  background: #0b141d;
}

.game-banner-legend span {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  margin: 0;
  color: var(--muted);
  font-size: 11px;
  overflow-wrap: anywhere;
}

.game-banner-legend i {
  width: 9px;
  height: 9px;
  border-radius: 2px;
  background: #2ed59a;
}

.game-banner-legend .is-st i {
  background: #ef3c57;
}

.game-banner-legend .is-standard i {
  background: #3b82f6;
}

.game-banner-layout {
  --banner-event-height: 80px;
  --banner-row-step: calc(var(--banner-event-height) + 10px);
  display: grid;
  grid-template-columns: 188px minmax(0, 1fr);
  min-width: 0;
  border: 1px solid var(--line);
  border-radius: 4px;
  overflow: hidden;
}

.game-banner-labels {
  position: relative;
  z-index: 3;
  background: #09121b;
  border-right: 1px solid var(--line-strong);
}

.game-banner-label-spacer,
.game-banner-date-row {
  height: 58px;
  border-bottom: 1px solid var(--line);
}

.game-banner-lane-label,
.game-banner-lane {
  height: max(112px, calc((var(--lane-rows) * var(--banner-row-step)) + 18px));
  border-bottom: 1px solid var(--line);
}

.game-banner-lane-label:last-child,
.game-banner-lane:last-child {
  border-bottom: 0;
}

.game-banner-lane-label {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 5px;
  padding: 16px 14px 16px 20px;
}

.game-banner-lane-label::before {
  content: "";
  position: absolute;
  inset: 16px auto 16px 8px;
  width: 3px;
  background: #2ed59a;
}

.game-banner-lane-label.is-st::before {
  background: #ef3c57;
}

.game-banner-lane-label.is-standard::before {
  background: #3b82f6;
}

.game-banner-lane-label strong {
  color: var(--text);
  font-size: 14px;
  line-height: 1.2;
  letter-spacing: 0;
  overflow-wrap: anywhere;
  text-transform: uppercase;
}

.game-banner-lane-label small {
  color: var(--muted);
  font-size: 11px;
  line-height: 1.35;
}

.game-banner-viewport {
  background: #071019;
}

.game-banner-canvas {
  position: relative;
  width: var(--timeline-width);
  min-width: 100%;
}

.game-banner-date-row {
  position: relative;
  background: #0b151f;
}

.game-banner-date-row > span {
  position: absolute;
  inset: 0 auto 0 var(--marker-start);
  display: flex;
  align-items: center;
  gap: 5px;
  padding-left: 10px;
  border-left: 1px dashed #345066;
  color: var(--muted);
}

.game-banner-date-row strong,
.game-banner-date-row b {
  font-size: 12px;
  letter-spacing: 0;
}

.game-banner-date-row b {
  color: var(--text);
}

.game-banner-today {
  position: absolute;
  z-index: 5;
  inset: 0 auto 0 var(--today-start);
  width: 2px;
  pointer-events: none;
  background: #ef1748;
}

.game-banner-today b {
  position: absolute;
  top: 4px;
  left: 6px;
  padding: 3px 6px;
  border-radius: 2px;
  color: #fff;
  background: #ef1748;
  font-size: 9px;
  line-height: 1;
  letter-spacing: 0;
  text-transform: uppercase;
}

.game-banner-lane {
  position: relative;
  background: #071019;
}

.game-banner-event {
  position: absolute;
  z-index: 2;
  top: calc(9px + (var(--event-row) * var(--banner-row-step)));
  left: calc((var(--event-start) / var(--timeline-days)) * 100%);
  display: flex;
  width: max(190px, calc((var(--event-span) / var(--timeline-days)) * 100%));
  height: var(--banner-event-height);
  overflow: hidden;
  border: 1px solid #2ed59a;
  border-radius: 3px;
  color: #fff;
  background: #0f6049;
  scroll-snap-align: start;
  transition: filter 160ms ease, border-color 160ms ease;
}

a.game-banner-event:hover {
  filter: brightness(1.12);
}

.game-banner-lane.is-st .game-banner-event {
  border-color: #ef3c57;
  background: #6c1e2e;
}

.game-banner-lane.is-standard .game-banner-event {
  border-color: #3b82f6;
  background: #173f79;
}

.game-banner-event.is-upcoming {
  opacity: 0.78;
}

.game-banner-event.is-expired {
  opacity: 0.42;
  filter: saturate(0.35);
}

.game-banner-event-copy {
  position: relative;
  z-index: 2;
  display: flex;
  flex: 1 1 0;
  min-width: 0;
  flex-direction: column;
  justify-content: center;
  padding: 6px 10px;
  background: rgba(5, 13, 20, 0.76);
}

.game-banner-event-copy small,
.game-banner-event-copy strong,
.game-banner-event-copy em {
  overflow: hidden;
  letter-spacing: 0;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.game-banner-event-copy small {
  color: #c7f9e8;
  font-size: 9px;
  font-weight: 800;
}

.game-banner-lane.is-st .game-banner-event-copy small {
  color: #ffd0d9;
}

.game-banner-lane.is-standard .game-banner-event-copy small {
  color: #d6e7ff;
}

.game-banner-event-copy strong {
  margin-top: 2px;
  font-size: 14px;
  line-height: 1.1;
  text-transform: uppercase;
}

.game-banner-event-copy em {
  margin-top: 2px;
  color: rgba(255, 255, 255, 0.76);
  font-size: 9px;
  font-style: normal;
}

.game-banner-event > img {
  width: auto;
  max-width: 42%;
  min-width: 0;
  height: 100%;
  flex: 0 1 auto;
  object-fit: contain;
  object-position: center;
}

.game-banner-lane-empty {
  position: absolute;
  top: 18px;
  left: 18px;
  color: var(--muted-2);
  font-size: 12px;
}

/* Admin editor for per-game live operations */
.game-live-operations-editor {
  gap: 16px;
}

.game-banner-lane-settings {
  display: grid;
  gap: 0;
  border-block: 1px solid var(--line);
}

.game-banner-lane-settings-head {
  display: grid;
  gap: 3px;
  padding: 11px 0;
}

.game-banner-lane-settings-head strong {
  color: var(--text);
  font-size: 14px;
}

.game-banner-lane-settings-head small {
  color: var(--muted);
  font-size: 11px;
  line-height: 1.4;
}

.game-banner-lane-setting {
  display: grid;
  grid-template-columns: 118px minmax(180px, 0.7fr) minmax(260px, 1.3fr);
  align-items: end;
  gap: 12px;
  padding: 10px 0;
  border-top: 1px solid var(--line);
}

.game-banner-lane-setting-key {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 40px;
  color: var(--muted);
  font-size: 11px;
  font-weight: 900;
  text-transform: uppercase;
}

.game-banner-lane-setting-key i {
  width: 11px;
  height: 11px;
  border-radius: 2px;
  background: #2ed59a;
}

.game-banner-lane-setting.is-st .game-banner-lane-setting-key i {
  background: #ef3c57;
}

.game-banner-lane-setting.is-standard .game-banner-lane-setting-key i {
  background: #3b82f6;
}

.game-banner-lane-setting label {
  min-width: 0;
  color: var(--muted);
  font-size: 11px;
}

.game-banner-lane-setting .input {
  width: 100%;
  margin-top: 5px;
}

.game-timeline-builder {
  display: grid;
  gap: 12px;
}

.game-timeline-builder-toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding-bottom: 10px;
  border-bottom: 1px solid var(--line);
}

.game-timeline-builder-toolbar > div {
  display: grid;
  gap: 3px;
}

.game-timeline-builder-toolbar strong {
  color: var(--text);
  font-size: 14px;
}

.game-timeline-builder-toolbar small {
  color: var(--muted);
  font-size: 11px;
}

.game-timeline-builder-toolbar .button {
  width: auto;
}

.game-timeline-admin-list {
  display: grid;
  gap: 10px;
}

.game-timeline-admin-row {
  display: grid;
  grid-template-columns: 28px minmax(0, 1fr) 34px;
  gap: 10px;
  align-items: start;
  padding: 12px;
  border: 1px solid var(--line);
  border-radius: 4px;
  background: #0e1721;
}

.game-timeline-row-handle {
  display: grid;
  place-items: center;
  width: 28px;
  height: 36px;
  color: var(--muted-2);
}

.game-timeline-row-handle .nav-icon {
  width: 16px;
  height: 16px;
}

.game-timeline-row-fields {
  display: grid;
  grid-template-columns: 90px minmax(160px, 1.35fr) 112px 120px 148px minmax(210px, 1.4fr);
  gap: 10px;
  min-width: 0;
}

.game-timeline-row-fields label {
  min-width: 0;
  color: var(--muted);
  font-size: 11px;
}

.game-timeline-row-fields .input {
  width: 100%;
  margin-top: 5px;
}

.game-timeline-image-field {
  grid-column: span 2;
}

.game-timeline-link-field {
  grid-column: span 2;
}

.game-timeline-subtitle-field {
  grid-column: span 2;
}

.game-timeline-image-field > span {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 6px;
  margin-top: 5px;
}

.game-timeline-image-field > span .input {
  margin-top: 0;
}

.game-timeline-image-field button,
.game-timeline-row-actions button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  min-height: 40px;
  padding: 0 10px;
  border: 1px solid var(--line-strong);
  border-radius: 4px;
  color: var(--text);
  background: var(--surface-2);
  cursor: pointer;
}

.game-timeline-image-field button:hover,
.game-timeline-row-actions button:hover {
  border-color: #2de2f2;
  color: #2de2f2;
}

.game-timeline-image-field .nav-icon,
.game-timeline-row-actions .nav-icon {
  width: 15px;
  height: 15px;
}

.game-timeline-row-actions {
  display: grid;
  gap: 5px;
}

.game-timeline-row-actions button {
  width: 34px;
  min-height: 32px;
  padding: 0;
}

.game-timeline-row-actions button:first-child .nav-icon {
  transform: rotate(-90deg);
}

.game-timeline-row-actions button:nth-child(2) .nav-icon {
  transform: rotate(90deg);
}

.game-timeline-row-actions button:last-child {
  color: #ff7790;
}

html.theme-light .game-release-roadmap,
html.theme-light .game-banner-overview,
html.theme-light .game-banner-labels,
html.theme-light .game-banner-viewport,
html.theme-light .game-banner-date-row,
html.theme-light .game-timeline-admin-row {
  background: #f8fafc;
}

html.theme-light .game-roadmap-entry,
html.theme-light .game-horizontal-controls button,
html.theme-light .game-banner-legend {
  background: #eef3f7;
}

html.theme-light .game-roadmap-status-legend i {
  background: #f8fafc;
}

html.theme-light .game-horizontal-track {
  background: #d6e0e8;
}

@media (max-width: 1120px) {
  .game-timeline-row-fields {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .game-timeline-title-field,
  .game-timeline-image-field,
  .game-timeline-link-field,
  .game-timeline-subtitle-field {
    grid-column: span 2;
  }

  .game-banner-lane-setting {
    grid-template-columns: 104px minmax(150px, 0.8fr) minmax(220px, 1.2fr);
  }
}

@media (max-width: 820px) {
  .section.game-release-roadmap,
  .section.game-banner-overview {
    width: calc(100% - 32px);
    padding: 20px 16px 16px;
  }

  .game-live-ops-heading,
  .game-banner-heading {
    align-items: flex-start;
    flex-direction: column;
    gap: 12px;
  }

  .game-live-ops-heading h2 {
    font-size: 23px;
  }

  .game-roadmap-meta {
    align-items: flex-start;
    justify-content: flex-start;
  }

  .game-roadmap-meta > p {
    text-align: left;
  }

  .game-roadmap-status-legend {
    justify-content: flex-start;
  }

  .game-banner-legend {
    justify-content: flex-start;
    width: 100%;
    overflow-x: auto;
  }

  .game-banner-layout {
    grid-template-columns: 138px minmax(0, 1fr);
  }

  .game-banner-lane-label {
    padding-inline: 16px 10px;
  }

  .game-banner-lane-label strong {
    font-size: 12px;
  }

  .game-banner-lane-label small {
    display: none;
  }

  .game-horizontal-controls {
    grid-template-columns: 38px minmax(40px, 1fr) auto 38px;
  }

  .game-timeline-row-fields {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .game-banner-lane-setting {
    grid-template-columns: 94px minmax(0, 1fr);
  }

  .game-banner-lane-setting label:last-child {
    grid-column: 2;
  }
}

@media (max-width: 620px) {
  .section.game-release-roadmap,
  .section.game-banner-overview {
    width: calc(100vw - 24px);
    max-width: calc(100vw - 24px);
    padding: 18px 14px 14px;
  }

  .game-live-ops-heading h2 {
    max-width: 100%;
    font-size: 20px;
    overflow-wrap: anywhere;
  }

  .game-roadmap-track {
    grid-auto-columns: 160px;
  }

  .game-banner-layout {
    grid-template-columns: 104px minmax(0, 1fr);
  }

  .game-banner-lane-label {
    padding: 12px 7px 12px 14px;
  }

  .game-banner-lane-label::before {
    left: 5px;
  }

  .game-banner-lane-label strong {
    font-size: 10px;
  }

  .game-horizontal-controls small {
    display: none;
  }

  .game-horizontal-controls {
    grid-template-columns: 36px minmax(40px, 1fr) 36px;
  }

  .game-timeline-admin-row {
    grid-template-columns: minmax(0, 1fr) 34px;
  }

  .game-timeline-row-handle {
    display: none;
  }

  .game-timeline-row-fields {
    grid-template-columns: minmax(0, 1fr);
  }

  .game-timeline-title-field,
  .game-timeline-image-field,
  .game-timeline-link-field,
  .game-timeline-subtitle-field {
    grid-column: auto;
  }

  .game-timeline-builder-toolbar {
    align-items: stretch;
    flex-direction: column;
  }

  .game-banner-lane-setting {
    grid-template-columns: 1fr;
  }

  .game-banner-lane-setting label:last-child {
    grid-column: auto;
  }
}

.suggested-collection-picker .article-relation-game-label {
  display: none;
}

.suggested-collection-picker .article-relation-selected-dock {
  position: static;
  bottom: auto;
}

.suggested-collection-picker .article-relation-selected-list {
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
}

html.theme-light .suggested-collection-section {
  border-color: rgba(15, 23, 42, 0.16);
  background: rgba(248, 250, 252, 0.78);
}

@media (max-width: 1100px) {
  .article-relation-result-row {
    grid-template-columns: 46px minmax(180px, 1fr) minmax(100px, 140px) 78px;
  }

  .article-relation-status {
    display: none;
  }

  .article-relation-selected-list {
    grid-template-columns: 1fr;
  }

  .suggested-collection-picker .article-relation-result-row {
    grid-template-columns: 46px minmax(150px, 1fr) 76px;
  }

  .game-featured-character-picker .article-relation-result-row {
    grid-template-columns: 46px minmax(150px, 1fr) 78px;
  }
}

@media (max-width: 860px) {
  .article-relation-workspace {
    grid-template-columns: 1fr;
    max-height: none;
  }

  .article-relation-filter-rail {
    display: grid;
    grid-template-columns: 1fr;
    overflow: visible;
    border-right: 0;
    border-bottom: 1px solid var(--line);
  }

  .article-relation-filter-group {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 3px;
  }

  .article-relation-filter-group > small {
    grid-column: 1 / -1;
  }

  .article-relation-results {
    max-height: 560px;
  }

  .article-relation-selected-dock {
    position: static;
  }

  .suggested-collection-picker .article-relation-workspace {
    grid-template-columns: 1fr;
    min-height: 0;
    max-height: none;
  }
}

@media (max-width: 640px) {
  .article-relation-command-search {
    grid-template-columns: auto minmax(0, 1fr);
  }

  .article-relation-command-search kbd,
  .article-relation-game-label,
  .article-relation-status {
    display: none;
  }

  .article-relation-filter-group {
    grid-template-columns: 1fr;
  }

  .article-relation-result-row {
    grid-template-columns: 42px minmax(0, 1fr) 70px;
    gap: 9px;
    padding: 8px;
  }

  .suggested-collection-picker .article-relation-result-row {
    grid-template-columns: 42px minmax(0, 1fr) 70px;
  }

  .suggested-collection-picker .article-relation-selected-list {
    grid-template-columns: minmax(0, 1fr);
  }

  .game-featured-character-picker .article-relation-result-row {
    grid-template-columns: 42px minmax(0, 1fr) 70px;
  }

  .game-featured-character-picker .article-relation-selected-list {
    grid-template-columns: minmax(0, 1fr);
  }

  .article-relation-thumb {
    width: 40px;
    height: 40px;
  }

  .article-relation-selected-item {
    grid-template-columns: 18px 38px minmax(0, 1fr);
  }

  .article-relation-selected-item .article-relation-thumb {
    width: 36px;
    height: 36px;
  }

  .article-relation-selected-actions {
    grid-column: 2 / -1;
    justify-content: flex-end;
  }

  .article-relation-selected-heading,
  .article-relation-dock-actions {
    align-items: stretch;
    flex-direction: column;
  }

  .article-relation-dock-actions > span {
    margin-right: 0;
  }

  .article-relation-dock-actions .button {
    width: 100%;
  }
}

/* Related resource dossier */
.article-resource-block {
  margin-top: 34px;
}

.article-resource-dossier {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 2fr);
  min-width: 0;
  border: 1px solid var(--line-strong);
  border-radius: var(--radius);
  background: rgba(8, 13, 20, 0.88);
  overflow: hidden;
}

.article-resource-context {
  display: flex;
  flex-direction: column;
  min-width: 0;
  padding: 24px;
  border-right: 1px solid var(--line-strong);
}

.article-resource-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  color: #56d9f5;
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
}

.article-resource-eyebrow .nav-icon {
  width: 20px;
  height: 20px;
}

.article-resource-context h2 {
  margin: 12px 0 0;
  font-size: clamp(24px, 2vw, 30px);
  line-height: 1.08;
}

.article-resource-context-heading > p {
  margin: 10px 0 0;
  color: var(--muted);
  font-size: 15px;
  line-height: 1.45;
}

.article-resource-context-image {
  display: block;
  aspect-ratio: 1.18;
  margin-top: 24px;
  border: 1px solid var(--line);
  border-radius: var(--radius-sm);
  overflow: hidden;
}

.article-resource-context-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.article-resource-context-meta {
  display: grid;
  gap: 7px;
  margin-top: 14px;
}

.article-resource-context-meta > strong {
  color: #bdd7ff;
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
}

.article-resource-context-meta > small {
  display: -webkit-box;
  overflow: hidden;
  color: var(--muted);
  font-size: 13px;
  overflow-wrap: anywhere;
  line-height: 1.55;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
}

.article-resource-nav {
  display: grid;
  grid-template-rows: auto 1fr;
  min-width: 0;
}

.article-resource-link {
  display: grid;
  grid-template-columns: 58px minmax(0, 1fr) 30px;
  align-items: center;
  gap: 16px;
  min-width: 0;
  min-height: 122px;
  padding: 18px 22px;
  color: var(--text);
  background: transparent;
  transition: color 160ms ease, background 160ms ease;
}

.article-resource-link:hover,
.article-resource-link:focus-visible {
  color: #ffffff;
  background: rgba(244, 63, 94, 0.065);
  outline: none;
}

.article-resource-link:focus-visible {
  box-shadow: inset 0 0 0 2px rgba(94, 234, 212, 0.82);
}

.article-resource-primary {
  grid-template-columns: 72px minmax(0, 1fr) 36px;
  min-height: 144px;
  padding: 22px 26px 22px 22px;
  border-left: 4px solid var(--rose);
  border-bottom: 1px solid var(--line-strong);
}

.article-resource-link-visual {
  display: grid;
  place-items: center;
  width: 58px;
  height: 58px;
  color: #9fb3c7;
}

.article-resource-primary .article-resource-link-visual {
  width: 72px;
  height: 72px;
  color: #fb5f80;
  border-right: 1px solid var(--line);
}

.article-resource-link-visual .nav-icon {
  width: 36px;
  height: 36px;
}

.article-resource-primary .article-resource-link-visual .nav-icon {
  width: 44px;
  height: 44px;
}

.article-resource-target-image {
  width: 56px;
  height: 56px;
  border: 1px solid var(--line-strong);
  border-radius: var(--radius-sm);
  object-fit: cover;
}

.article-resource-copy {
  display: grid;
  gap: 8px;
  min-width: 0;
}

.article-resource-copy small {
  color: #fda4af;
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
}

.article-resource-copy strong {
  overflow: hidden;
  color: inherit;
  font-size: clamp(18px, 2vw, 25px);
  line-height: 1.25;
  overflow-wrap: anywhere;
  text-overflow: ellipsis;
}

.article-resource-primary .article-resource-copy strong {
  font-size: clamp(25px, 2.6vw, 34px);
}

.article-resource-arrow {
  display: grid;
  place-items: center;
  color: #9fb3c7;
  transition: color 160ms ease, transform 160ms ease;
}

.article-resource-arrow .nav-icon {
  width: 28px;
  height: 28px;
  transform: rotate(-90deg);
}

.article-resource-link:hover .article-resource-arrow,
.article-resource-link:focus-visible .article-resource-arrow {
  color: #fb5f80;
  transform: translateX(4px);
}

.article-resource-links {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  min-width: 0;
  margin-right: -1px;
  margin-bottom: -1px;
  overflow: hidden;
}

.article-resource-links .article-resource-link {
  border-right: 1px solid var(--line-strong);
  border-bottom: 1px solid var(--line-strong);
}

html.theme-light .article-resource-dossier {
  border-color: rgba(15, 23, 42, 0.18);
  background: #ffffff;
  box-shadow: 0 18px 44px rgba(15, 23, 42, 0.08);
}

html.theme-light .article-resource-context,
html.theme-light .article-resource-primary,
html.theme-light .article-resource-links .article-resource-link {
  border-color: rgba(15, 23, 42, 0.14);
}

html.theme-light .article-resource-eyebrow {
  color: #0e7490;
}

html.theme-light .article-resource-context-meta > strong {
  color: #334155;
}

html.theme-light .article-resource-link:hover,
html.theme-light .article-resource-link:focus-visible {
  color: #111827;
  background: #fff1f2;
}

html.theme-light .article-resource-copy small {
  color: #be123c;
}

html.theme-light .article-resource-link-visual,
html.theme-light .article-resource-arrow {
  color: #526171;
}

html.theme-light .article-resource-primary .article-resource-link-visual,
html.theme-light .article-resource-link:hover .article-resource-arrow,
html.theme-light .article-resource-link:focus-visible .article-resource-arrow {
  color: #be123c;
}

@media (max-width: 860px) {
  .article-resource-dossier {
    grid-template-columns: 1fr;
  }

  .article-resource-context {
    padding: 18px;
    border-right: 0;
    border-bottom: 1px solid var(--line-strong);
  }

  .article-resource-context-image {
    aspect-ratio: 16 / 7;
    margin-top: 16px;
  }

  .article-resource-primary {
    grid-template-columns: 58px minmax(0, 1fr) 28px;
    min-height: 112px;
    padding: 18px 16px 18px 14px;
  }

  .article-resource-primary .article-resource-link-visual {
    width: 58px;
    height: 58px;
  }

  .article-resource-primary .article-resource-link-visual .nav-icon {
    width: 38px;
    height: 38px;
  }

  .article-resource-links {
    grid-template-columns: 1fr;
  }

  .article-resource-link {
    grid-template-columns: 52px minmax(0, 1fr) 24px;
    gap: 13px;
    min-height: 88px;
    padding: 14px 16px;
  }

  .article-resource-link-visual,
  .article-resource-target-image {
    width: 52px;
    height: 52px;
  }

  .article-resource-link-visual .nav-icon {
    width: 32px;
    height: 32px;
  }

  .article-resource-copy strong,
  .article-resource-primary .article-resource-copy strong {
    font-size: 18px;
  }
}

@media (max-width: 520px) {
  .article-resource-context h2 {
    font-size: 26px;
  }

  .article-resource-context-image {
    aspect-ratio: 16 / 9;
  }

  .article-resource-context-meta > small {
    -webkit-line-clamp: 3;
  }

  .article-resource-primary,
  .article-resource-link {
    gap: 10px;
  }

  .article-resource-copy small {
    font-size: 10px;
  }
}

/* Guides: tactical mission board */
.guide-mission-section {
  display: grid;
  gap: 12px;
  padding-top: 12px;
  padding-bottom: clamp(32px, 5vw, 58px);
}

.guide-mission-page-head {
  min-height: 0;
  margin-top: 22px;
  margin-bottom: 8px;
  padding: clamp(24px, 3.2vw, 38px) clamp(28px, 4vw, 50px);
}

.guide-mission-page-head h1 {
  max-width: 760px;
  margin: 12px 0 9px;
  font-size: clamp(34px, 4vw, 52px);
  line-height: 1;
}

.guide-mission-page-head p {
  max-width: 700px;
  font-size: clamp(14px, 1.5vw, 17px);
  line-height: 1.5;
}

body:has(.guide-mission-section) .game-tabs.game-tabs-segmented {
  margin-top: 8px;
  margin-bottom: 12px;
}

.guide-mission-command {
  display: grid;
  grid-template-columns: minmax(220px, 1.7fr) repeat(3, minmax(138px, 0.8fr)) minmax(110px, auto);
  gap: 12px;
  align-items: end;
  padding: 12px;
  border: 1px solid #2c3948;
  border-radius: 8px;
  background: #0b121b;
  box-shadow: 0 14px 32px rgb(0 0 0 / 18%), inset 0 1px 0 rgb(255 255 255 / 3%);
}

.guide-mission-command label {
  display: grid;
  min-width: 0;
  gap: 7px;
  color: #8fa6bc;
  font-size: 10px;
  font-weight: 900;
  letter-spacing: 0;
  line-height: 1;
  text-transform: uppercase;
}

.guide-mission-command select,
.guide-mission-command input {
  width: 100%;
  min-width: 0;
  height: 44px;
  border: 1px solid #344253;
  border-radius: 6px;
  outline: 0;
  color: #e8f1fa;
  background: #101923;
  font: inherit;
  font-size: 13px;
  font-weight: 750;
  text-transform: none;
  color-scheme: dark;
}

.guide-mission-command select {
  padding: 0 34px 0 12px;
}

.guide-mission-command input {
  padding: 0 48px 0 42px;
}

.guide-mission-command select:hover,
.guide-mission-command input:hover {
  border-color: #53647a;
}

.guide-mission-command select:focus-visible,
.guide-mission-command input:focus-visible {
  border-color: #ff4b68;
  box-shadow: 0 0 0 3px rgb(244 63 94 / 16%);
}

.guide-mission-input-shell {
  position: relative;
  display: block;
}

.guide-mission-input-shell .nav-icon {
  position: absolute;
  z-index: 1;
  top: 50%;
  left: 13px;
  width: 18px;
  height: 18px;
  color: #8fa6bc;
  transform: translateY(-50%);
}

.guide-mission-search-submit {
  position: absolute;
  z-index: 2;
  top: 5px;
  right: 5px;
  display: inline-grid;
  width: 34px;
  height: 34px;
  place-items: center;
  border: 1px solid #3a495b;
  border-radius: 5px;
  color: #d9e5f1;
  background: #17222e;
  cursor: pointer;
}

.guide-mission-search-submit:hover,
.guide-mission-search-submit:focus-visible {
  border-color: #ff5a75;
  color: #ffffff;
  background: #202d3b;
}

.guide-mission-search-submit .nav-icon {
  position: static;
  width: 16px;
  height: 16px;
  transform: none;
}

.guide-mission-command-actions {
  display: flex;
  justify-content: flex-end;
}

.guide-mission-command-actions .button {
  min-width: 110px;
  min-height: 44px;
  padding: 0 14px;
}

.guide-mission-command-actions .button-primary {
  display: inline-flex;
  gap: 7px;
  align-items: center;
}

.guide-mission-command-actions .nav-icon {
  width: 17px;
  height: 17px;
}

.guide-mission-heading,
.guide-mission-board-head {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 20px;
}

.guide-mission-heading {
  padding: 8px 2px 0;
}

.guide-mission-heading > div,
.guide-mission-board-head > div {
  min-width: 0;
}

.guide-mission-heading span,
.guide-mission-board-head span,
.guide-featured-copy > small {
  display: block;
  color: #3ed8ff;
  font-size: 11px;
  font-weight: 950;
  line-height: 1.1;
  text-transform: uppercase;
}

.guide-mission-heading h2 {
  margin: 6px 0 0;
  color: #f8fbff;
  font-size: clamp(25px, 3vw, 38px);
  line-height: 1.05;
}

.guide-mission-heading > strong {
  flex: 0 0 auto;
  color: #9fb2c7;
  font-size: 12px;
}

.guide-featured-entry {
  display: grid;
  grid-template-columns: minmax(235px, 290px) minmax(0, 1fr) auto;
  height: 150px;
  min-height: 150px;
  overflow: hidden;
  border: 1px solid #3a4657;
  border-left: 4px solid #f43f5e;
  border-radius: 8px;
  color: inherit;
  background: #0c141e;
  box-shadow: 0 18px 42px rgb(0 0 0 / 22%), inset 0 1px 0 rgb(255 255 255 / 3%);
  text-decoration: none;
  transition: border-color 160ms ease, background-color 160ms ease, transform 160ms ease;
}

.guide-featured-entry:hover,
.guide-featured-entry:focus-visible {
  border-color: #ff5a75;
  background: #111b27;
  transform: translateY(-2px);
}

.guide-featured-entry:focus-visible {
  outline: 2px solid #ffffff;
  outline-offset: 3px;
}

.guide-featured-media {
  position: relative;
  display: grid;
  height: 150px;
  min-height: 150px;
  place-items: center;
  overflow: hidden;
  border-right: 1px solid #2c3948;
  color: #ffffff;
  background: #121b25;
  font-size: 52px;
}

.guide-featured-media::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, transparent 62%, rgb(12 20 30 / 78%));
  pointer-events: none;
}

.guide-featured-flag {
  position: absolute;
  z-index: 2;
  top: 10px;
  left: 10px;
  display: inline-flex;
  min-height: 23px;
  align-items: center;
  padding: 3px 8px;
  border: 1px solid #ff6880;
  border-radius: 4px;
  color: #ffffff;
  background: #df1746;
  font-size: 9px;
  font-weight: 950;
  line-height: 1;
  text-transform: uppercase;
}

.guide-featured-media img {
  width: 100%;
  height: 150px;
  min-height: 150px;
  object-fit: cover;
}

.guide-featured-copy {
  display: flex;
  min-width: 0;
  flex-direction: column;
  justify-content: center;
  padding: 18px clamp(18px, 2.4vw, 28px);
}

.guide-featured-copy > small {
  color: #ff5572;
}

.guide-featured-copy > strong {
  margin-top: 6px;
  overflow-wrap: anywhere;
  color: #ffffff;
  font-size: clamp(22px, 2.4vw, 30px);
  font-weight: 950;
  line-height: 1.05;
}

.guide-featured-copy > em {
  display: -webkit-box;
  max-width: 760px;
  margin-top: 8px;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  color: #aebfd0;
  font-size: 12px;
  font-style: normal;
  line-height: 1.55;
}

.guide-featured-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 11px;
}

.guide-featured-meta > * {
  display: inline-flex;
  min-height: 27px;
  align-items: center;
  padding: 4px 9px;
  border: 1px solid #314052;
  border-radius: 999px;
  color: #b9c8d8;
  background: #111b27;
  font-size: 10px;
  font-style: normal;
  font-weight: 800;
  line-height: 1.1;
}

.guide-featured-meta > b {
  border-color: rgb(244 63 94 / 46%);
  color: #ff7890;
}

.guide-featured-action {
  display: inline-flex;
  align-self: center;
  gap: 8px;
  align-items: center;
  justify-content: center;
  min-width: 122px;
  margin-right: 18px;
  color: #ffffff;
  font-size: 13px;
  font-weight: 900;
}

.guide-featured-action .nav-icon,
.guide-mission-read-time .nav-icon {
  width: 18px;
  height: 18px;
  color: #ff5572;
  transform: rotate(-90deg);
}

.guide-mission-board {
  overflow: hidden;
  border: 1px solid #2e3b4b;
  border-radius: 8px;
  background: #0a1119;
  box-shadow: 0 16px 36px rgb(0 0 0 / 18%), inset 0 1px 0 rgb(255 255 255 / 3%);
}

.guide-mission-board-head {
  padding: 11px 18px 10px;
  border-bottom: 1px solid #2e3b4b;
  background: #0e1721;
}

.guide-mission-board-head h3 {
  margin: 3px 0 0;
  color: #f3f8fd;
  font-size: 15px;
}

.guide-mission-board-head small {
  color: #8fa6bc;
  font-size: 11px;
  font-weight: 750;
}

.guide-mission-columns,
.guide-mission-row {
  display: grid;
  grid-template-columns: minmax(320px, 2.35fr) minmax(108px, 0.72fr) minmax(100px, 0.7fr) minmax(126px, 0.82fr) minmax(110px, 0.68fr);
  gap: 14px;
  align-items: center;
}

.guide-mission-columns {
  min-height: 38px;
  padding: 0 18px;
  border-bottom: 1px solid #243140;
  color: #758ba1;
  background: #0a1119;
  font-size: 9px;
  font-weight: 950;
  text-transform: uppercase;
}

.guide-mission-row {
  min-height: 96px;
  padding: 12px 18px;
  border-bottom: 1px solid #243140;
  color: #bdcada;
  text-decoration: none;
  transition: background-color 150ms ease, box-shadow 150ms ease;
}

.guide-mission-row:last-child {
  border-bottom: 0;
}

.guide-mission-row:hover,
.guide-mission-row:focus-visible {
  z-index: 1;
  background: #111b27;
  box-shadow: inset 3px 0 0 #f43f5e;
}

.guide-mission-row:focus-visible {
  outline: 2px solid #ff6b83;
  outline-offset: -2px;
}

.guide-mission-summary {
  display: grid;
  grid-template-columns: 70px minmax(0, 1fr);
  gap: 14px;
  align-items: center;
  min-width: 0;
}

.guide-mission-summary > span:last-child {
  min-width: 0;
}

.guide-mission-thumb {
  display: grid;
  width: 70px;
  height: 70px;
  place-items: center;
  overflow: hidden;
  border: 1px solid #354456;
  border-radius: 6px;
  color: #ffffff;
  background: #141e29;
  font-size: 24px;
}

.guide-mission-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.guide-mission-summary strong {
  display: block;
  overflow: hidden;
  color: #f7fbff;
  font-size: 15px;
  font-weight: 900;
  line-height: 1.25;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.guide-mission-summary small {
  display: -webkit-box;
  margin-top: 6px;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 1;
  color: #8499ae;
  font-size: 11px;
  line-height: 1.35;
}

.guide-mission-cell {
  min-width: 0;
  overflow-wrap: anywhere;
  font-size: 12px;
  font-weight: 700;
}

.guide-difficulty-pill {
  display: inline-flex;
  min-height: 26px;
  align-items: center;
  padding: 4px 9px;
  border: 1px solid rgb(244 63 94 / 42%);
  border-radius: 999px;
  color: #ff728a;
  background: rgb(244 63 94 / 8%);
  font-size: 10px;
  font-weight: 900;
}

.guide-mission-read-time {
  display: flex;
  gap: 8px;
  align-items: center;
  justify-content: space-between;
}

.guide-mission-board-empty,
.guide-mission-empty {
  margin: 0;
  color: #91a5b9;
  text-align: center;
}

.guide-mission-board-empty {
  padding: 28px 18px;
}

.guide-mission-empty {
  padding: clamp(32px, 6vw, 64px) 20px;
  border: 1px solid #2e3b4b;
  border-radius: 8px;
  background: #0b121b;
}

.guide-mission-empty strong {
  display: block;
  color: #ffffff;
  font-size: 20px;
}

.guide-mission-empty p {
  margin: 8px 0 18px;
}

html.theme-light .guide-mission-page-head h1 {
  color: #ffffff;
  text-shadow: 0 2px 18px rgb(0 0 0 / 64%);
}

html.theme-light .guide-mission-page-head p {
  color: #dbe7f3;
}

html.theme-light .guide-mission-page-head > .badge {
  border-color: rgb(94 234 212 / 46%);
  color: #7ff6df;
  background: rgb(7 15 22 / 72%);
}

html.theme-light .guide-mission-command,
html.theme-light .guide-featured-entry,
html.theme-light .guide-mission-board,
html.theme-light .guide-mission-empty {
  border-color: #cbd5e1;
  color: #1f2937;
  background: #ffffff;
  box-shadow: 0 12px 30px rgb(15 23 42 / 8%);
}

html.theme-light .guide-mission-command select,
html.theme-light .guide-mission-command input {
  border-color: #cbd5e1;
  color: #172033;
  background: #f8fafc;
  color-scheme: light;
}

html.theme-light .guide-mission-search-submit {
  border-color: #cbd5e1;
  color: #334155;
  background: #e7edf4;
}

html.theme-light .guide-mission-search-submit:hover,
html.theme-light .guide-mission-search-submit:focus-visible {
  border-color: #e11d48;
  color: #be123c;
  background: #fff1f4;
}

html.theme-light .guide-mission-command label,
html.theme-light .guide-mission-heading > strong,
html.theme-light .guide-mission-board-head small {
  color: #52667b;
}

html.theme-light .guide-mission-heading h2,
html.theme-light .guide-featured-copy > strong,
html.theme-light .guide-mission-board-head h3,
html.theme-light .guide-mission-summary strong,
html.theme-light .guide-mission-empty strong {
  color: #101827;
}

html.theme-light .guide-featured-media {
  border-color: #d5dde7;
  background: #e7edf4;
}

html.theme-light .guide-featured-copy > em,
html.theme-light .guide-mission-cell {
  color: #52667b;
}

html.theme-light .guide-featured-meta > * {
  border-color: #d5dde7;
  color: #475569;
  background: #f8fafc;
}

html.theme-light .guide-featured-meta > b,
html.theme-light .guide-difficulty-pill {
  border-color: rgb(225 29 72 / 34%);
  color: #be123c;
  background: #fff1f4;
}

html.theme-light .guide-featured-action {
  color: #be123c;
}

html.theme-light .guide-mission-board-head,
html.theme-light .guide-mission-columns {
  border-color: #d5dde7;
  background: #f8fafc;
}

html.theme-light .guide-mission-columns {
  color: #60758b;
}

html.theme-light .guide-mission-row {
  border-color: #e1e7ef;
  color: #52667b;
}

html.theme-light .guide-mission-row:hover,
html.theme-light .guide-mission-row:focus-visible {
  background: #f8fafc;
}

html.theme-light .guide-mission-thumb {
  border-color: #cbd5e1;
  color: #172033;
  background: #e7edf4;
}

html.theme-light .guide-mission-summary small,
html.theme-light .guide-mission-board-empty,
html.theme-light .guide-mission-empty {
  color: #60758b;
}

@media (max-width: 1100px) {
  .guide-mission-command {
    grid-template-columns: minmax(220px, 1.4fr) repeat(3, minmax(120px, 0.75fr));
  }

  .guide-mission-command-actions {
    grid-column: 1 / -1;
    justify-content: end;
  }

  .guide-featured-entry {
    grid-template-columns: minmax(210px, 240px) minmax(0, 1fr) auto;
  }

  .guide-featured-action {
    grid-column: auto;
    justify-self: auto;
    margin: 0 14px 0 0;
  }

  .guide-mission-columns,
  .guide-mission-row {
    grid-template-columns: minmax(280px, 2fr) minmax(105px, 0.75fr) minmax(95px, 0.7fr) minmax(116px, 0.8fr) minmax(102px, 0.7fr);
  }
}

@media (max-width: 820px) {
  .guide-mission-command {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .guide-mission-search {
    grid-column: 1 / -1;
  }

  .guide-featured-entry {
    grid-template-columns: 1fr;
    height: auto;
  }

  .guide-featured-media {
    height: auto;
    min-height: 0;
    aspect-ratio: 16 / 6;
    border-right: 0;
    border-bottom: 1px solid #2c3948;
  }

  .guide-featured-media img {
    height: 100%;
    min-height: 0;
  }

  .guide-featured-media::after {
    background: linear-gradient(0deg, rgb(12 20 30 / 76%), transparent 48%);
  }

  .guide-featured-action {
    grid-column: 1;
    margin: -8px 0 22px clamp(20px, 3vw, 36px);
  }

  .guide-mission-columns {
    display: none;
  }

  .guide-mission-row {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px 18px;
    padding: 16px;
  }

  .guide-mission-summary {
    grid-column: 1 / -1;
  }

  .guide-mission-cell {
    display: grid;
    gap: 4px;
  }

  .guide-mission-cell::before {
    content: attr(data-label);
    color: #70869c;
    font-size: 9px;
    font-weight: 950;
    text-transform: uppercase;
  }

  .guide-mission-read-time {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
  }

  .guide-mission-read-time::before {
    grid-column: 1 / -1;
  }
}

@media (max-width: 560px) {
  .guide-mission-page-head {
    margin-top: 12px;
    padding: 22px 18px;
  }

  .guide-mission-page-head h1 {
    font-size: 34px;
  }

  .guide-mission-page-head p {
    font-size: 14px;
  }

  .guide-mission-section {
    gap: 14px;
    padding-top: 12px;
  }

  .guide-mission-command {
    grid-template-columns: 1fr;
    padding: 13px;
  }

  .guide-mission-search,
  .guide-mission-command-actions {
    grid-column: 1;
  }

  .guide-mission-command-actions {
    justify-content: stretch;
  }

  .guide-mission-command-actions .button {
    width: 100%;
  }

  .guide-mission-heading {
    align-items: start;
    flex-direction: column;
    gap: 8px;
  }

  .guide-mission-heading h2 {
    font-size: 26px;
  }

  .guide-featured-media {
    aspect-ratio: 16 / 8.5;
  }

  .guide-featured-copy {
    padding: 18px;
  }

  .guide-featured-copy > strong {
    font-size: 25px;
  }

  .guide-featured-action {
    margin: -4px 0 18px 18px;
  }

  .guide-mission-board-head {
    align-items: start;
    padding: 14px;
  }

  .guide-mission-row {
    grid-template-columns: 1fr;
    padding: 14px;
  }

  .guide-mission-summary,
  .guide-mission-cell {
    grid-column: 1;
  }

  .guide-mission-summary {
    grid-template-columns: 62px minmax(0, 1fr);
    gap: 11px;
  }

  .guide-mission-thumb {
    width: 62px;
    height: 62px;
  }
}

/* Home hero: featured portal brief */
.home-featured-brief {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 3fr) minmax(300px, 1.05fr);
  align-items: stretch;
  gap: 0;
  min-height: clamp(390px, 32vw, 460px);
  padding: 0;
  border: 1px solid rgba(180, 205, 220, 0.2);
  border-radius: var(--radius);
  background: #070b10;
  box-shadow: 0 28px 72px rgba(0, 0, 0, 0.3);
  overflow: hidden;
}

.home-featured-brief::before {
  display: none;
}

.home-featured-brief .home-command-backdrop {
  border: 0;
  border-radius: inherit;
  background: #070b10;
  box-shadow: none;
  opacity: 1;
}

.home-featured-brief .home-command-backdrop-image {
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  opacity: 0.92;
  filter: saturate(1.08) contrast(1.08);
  transform: none;
  mask-image: none;
}

.home-featured-brief .home-command-backdrop::before {
  background:
    linear-gradient(90deg, rgba(4, 8, 13, 0.96) 0%, rgba(4, 8, 13, 0.72) 35%, rgba(4, 8, 13, 0.12) 67%, rgba(4, 8, 13, 0.42) 75%, rgba(4, 8, 13, 0.74) 100%),
    linear-gradient(0deg, rgba(4, 8, 13, 0.74) 0%, transparent 48%);
  opacity: 1;
}

.home-featured-brief .home-command-backdrop::after {
  display: none;
}

.home-featured-brief-copy {
  position: relative;
  z-index: 1;
  align-self: end;
  max-width: none;
  padding: clamp(30px, 4vw, 54px);
}

.home-featured-brief-copy .badge-glow {
  color: #54e8ff;
  border-color: rgba(54, 217, 255, 0.48);
  background: rgba(4, 12, 18, 0.76);
}

.home-featured-brief-copy h1 {
  max-width: 780px;
  margin: 12px 0 10px;
  color: #ffffff;
  font-size: clamp(52px, 6vw, 82px);
  line-height: 0.94;
  text-shadow: 0 18px 44px rgba(0, 0, 0, 0.58);
}

.home-featured-brief-copy p {
  max-width: 680px;
  color: #d2deea;
  font-size: clamp(14px, 1.3vw, 17px);
  line-height: 1.55;
  text-shadow: 0 2px 14px rgba(0, 0, 0, 0.9);
}

.home-featured-brief .hero-actions {
  display: flex;
  align-items: stretch;
  gap: 12px;
  margin-top: 20px;
}

.home-featured-brief .hero-actions .button {
  display: inline-flex;
  align-items: center;
  justify-content: flex-start;
  gap: 11px;
  width: min(100%, 260px);
  min-height: 52px;
  padding: 12px 18px;
}

.home-featured-brief .hero-actions .button-ghost {
  width: min(100%, 250px);
  border-color: rgba(180, 205, 220, 0.32);
  background: rgba(5, 9, 14, 0.78);
}

.home-hero-action-icon {
  display: inline-grid;
  flex: 0 0 auto;
  place-items: center;
}

.home-hero-action-icon .nav-icon {
  width: 25px;
  height: 25px;
}

.home-pulse-editorial {
  position: relative;
  z-index: 2;
  align-self: stretch;
  display: flex;
  flex-direction: column;
  min-width: 0;
  padding: clamp(22px, 2.3vw, 32px);
  border: 0;
  border-left: 1px solid rgba(180, 205, 220, 0.22);
  border-radius: 0;
  color: #ffffff;
  background: rgba(4, 10, 16, 0.92);
  box-shadow: none;
  backdrop-filter: blur(16px);
}

.home-pulse-editorial .home-pulse-head {
  margin-bottom: 4px;
  padding-bottom: 18px;
  border-bottom: 1px solid rgba(180, 205, 220, 0.18);
}

.home-pulse-editorial .home-pulse-head span {
  color: #42e5ff;
  font-size: 14px;
}

.home-pulse-editorial .home-pulse-head strong {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: #a9bed2;
  letter-spacing: 0.08em;
}

.home-pulse-editorial .home-pulse-head strong::after {
  content: "";
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #31e6dd;
  box-shadow: 0 0 14px rgba(49, 230, 221, 0.72);
}

.home-pulse-primary {
  display: grid;
  grid-template-columns: 64px 72px minmax(0, 1fr);
  grid-template-rows: auto auto;
  align-items: center;
  min-width: 0;
  padding: clamp(22px, 2.8vw, 34px) 4px;
  border-bottom: 1px solid rgba(180, 205, 220, 0.24);
  color: #ffffff;
  transition: background 160ms ease, padding-left 160ms ease;
}

.home-pulse-primary:hover,
.home-pulse-primary:focus-visible {
  padding-left: 10px;
  background: rgba(244, 63, 94, 0.07);
  outline: none;
}

.home-pulse-primary .nav-icon {
  grid-column: 1;
  grid-row: 1 / 3;
  width: 54px;
  height: 54px;
  color: #ff355f;
}

.home-pulse-primary strong {
  grid-column: 2;
  grid-row: 1 / 3;
  color: #ffffff;
  font-size: clamp(48px, 4.5vw, 66px);
  line-height: 0.88;
}

.home-pulse-primary small {
  grid-column: 3;
  grid-row: 1;
  align-self: end;
  color: #ffffff;
  font-size: clamp(16px, 1.5vw, 20px);
  font-weight: 900;
}

.home-pulse-primary em {
  grid-column: 3;
  grid-row: 2;
  align-self: start;
  margin-top: 5px;
  color: #a9b8c7;
  font-size: 13px;
  font-style: normal;
}

.home-pulse-primary em::before {
  content: "";
  display: inline-block;
  width: 9px;
  height: 9px;
  margin-right: 7px;
  border-radius: 50%;
  background: #ff355f;
  vertical-align: 0;
}

.home-featured-brief .home-pulse-secondary {
  display: grid;
  flex: 1 1 auto;
  grid-template-columns: minmax(0, 1fr);
  gap: 0;
}

.home-featured-brief .home-pulse-secondary > a {
  display: grid;
  grid-template-columns: 46px 54px minmax(0, 1fr);
  grid-template-rows: auto auto;
  align-items: center;
  justify-items: stretch;
  gap: 0;
  min-width: 0;
  min-height: 0;
  padding: 14px 4px;
  border: 0;
  border-bottom: 1px solid rgba(180, 205, 220, 0.18);
  border-radius: 0;
  color: #ffffff;
  background: transparent;
  transition: background 160ms ease, padding-left 160ms ease;
}

.home-featured-brief .home-pulse-secondary > a:last-child {
  border-bottom: 0;
}

.home-featured-brief .home-pulse-secondary > a:hover,
.home-featured-brief .home-pulse-secondary > a:focus-visible {
  padding-left: 10px;
  border-color: rgba(180, 205, 220, 0.18);
  background: rgba(244, 63, 94, 0.07);
  outline: none;
  transform: none;
}

.home-featured-brief .home-pulse-secondary .nav-icon {
  grid-column: 1;
  grid-row: 1 / 3;
  width: 36px;
  height: 36px;
  color: #ff355f;
}

.home-featured-brief .home-pulse-secondary strong {
  grid-column: 2;
  grid-row: 1 / 3;
  order: initial;
  color: #ffffff;
  font-size: clamp(32px, 3vw, 42px);
  line-height: 0.9;
}

.home-featured-brief .home-pulse-secondary small {
  grid-column: 3;
  grid-row: 1;
  align-self: end;
  order: initial;
  min-width: 0;
  color: #ffffff;
  font-size: 13px;
  font-weight: 900;
  text-align: left;
}

.home-featured-brief .home-pulse-secondary em {
  grid-column: 3;
  grid-row: 2;
  align-self: start;
  order: initial;
  margin-top: 4px;
  color: #a9b8c7;
  font-size: 11px;
}

html.theme-light .home-featured-brief {
  color: #ffffff;
  border-color: rgba(100, 116, 139, 0.46);
  background-color: #070b10;
  background-image: none;
  box-shadow: 0 24px 64px rgba(15, 23, 42, 0.18);
}

html.theme-light .home-featured-brief .home-command-backdrop {
  opacity: 1;
}

html.theme-light .home-featured-brief .home-featured-brief-copy :where(h1, p),
html.theme-light .home-featured-brief .home-pulse-editorial :where(strong, small) {
  color: #ffffff;
  text-shadow: 0 2px 14px rgba(0, 0, 0, 0.72);
}

html.theme-light .home-featured-brief .home-featured-brief-copy p {
  color: #d2deea;
}

html.theme-light .home-featured-brief .home-featured-brief-copy .badge-glow {
  color: #67e8f9;
  border-color: rgba(103, 232, 249, 0.42);
  background: rgba(4, 12, 18, 0.8);
}

html.theme-light .home-featured-brief .home-pulse-editorial {
  color: #ffffff;
  border-color: rgba(180, 205, 220, 0.24);
  background: rgba(4, 10, 16, 0.94);
  box-shadow: none;
}

html.theme-light .home-featured-brief .home-pulse-head span {
  color: #42e5ff;
}

html.theme-light .home-featured-brief .home-pulse-head strong,
html.theme-light .home-featured-brief :where(.home-pulse-primary, .home-pulse-secondary) em {
  color: #a9b8c7;
  text-shadow: none;
}

html.theme-light .home-featured-brief .home-pulse-secondary > a {
  color: #ffffff;
  border-color: rgba(180, 205, 220, 0.18);
  background: transparent;
  box-shadow: none;
}

html.theme-light .home-featured-brief .home-pulse-secondary > a:hover,
html.theme-light .home-featured-brief .home-pulse-secondary > a:focus-visible {
  color: #ffffff;
  background: rgba(244, 63, 94, 0.09);
}

html.theme-light .home-featured-brief .button-ghost {
  color: #ffffff;
  border-color: rgba(180, 205, 220, 0.38);
  background: rgba(5, 9, 14, 0.8);
}

@media (max-width: 980px) {
  .home-featured-brief {
    grid-template-columns: minmax(0, 1fr);
    min-height: 0;
  }

  .home-featured-brief-copy {
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    min-height: 380px;
  }

  .home-featured-brief .home-pulse-editorial {
    display: grid;
    grid-template-columns: minmax(220px, 0.86fr) minmax(0, 1.35fr);
    grid-template-rows: auto minmax(0, 1fr);
    padding: 20px 24px;
    border-top: 1px solid rgba(180, 205, 220, 0.22);
    border-left: 0;
  }

  .home-featured-brief .home-pulse-head {
    grid-column: 1 / -1;
  }

  .home-featured-brief .home-pulse-primary {
    grid-column: 1;
    border-right: 1px solid rgba(180, 205, 220, 0.18);
    border-bottom: 0;
  }

  .home-featured-brief .home-pulse-secondary {
    grid-column: 2;
  }

  .home-featured-brief .home-pulse-secondary > a {
    padding: 10px 18px;
  }
}

@media (max-width: 760px) {
  .home-command-center.home-featured-brief {
    gap: 0;
    padding: 0;
  }

  .home-featured-brief .home-command-backdrop-image {
    inset: 0;
    width: 100%;
    height: 100%;
    object-position: center top;
    opacity: 0.82;
    transform: none;
  }

  .home-featured-brief-copy {
    min-height: 360px;
    padding: 28px 22px;
  }

  .home-featured-brief-copy h1 {
    font-size: clamp(42px, 13vw, 58px);
  }

  .home-featured-brief .hero-actions {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .home-featured-brief .hero-actions .button,
  .home-featured-brief .hero-actions .button-ghost {
    width: 100%;
  }
}

@media (max-width: 620px) {
  .home-featured-brief-copy {
    min-height: 390px;
    padding: 24px 18px;
  }

  .home-featured-brief-copy p {
    font-size: 14px;
    line-height: 1.48;
  }

  .home-featured-brief .hero-actions {
    grid-template-columns: minmax(0, 1fr);
  }

  .home-featured-brief .home-pulse-editorial {
    grid-template-columns: minmax(0, 1fr);
    padding: 18px;
  }

  .home-featured-brief .home-pulse-head,
  .home-featured-brief .home-pulse-primary,
  .home-featured-brief .home-pulse-secondary {
    grid-column: 1;
  }

  .home-featured-brief .home-pulse-primary {
    border-right: 0;
    border-bottom: 1px solid rgba(180, 205, 220, 0.2);
  }

  .home-featured-brief .home-pulse-secondary > a {
    padding: 14px 4px;
  }
}

/* Expanded tier workspace: shared by characters and collection rankings. */
.tier-workspace-page {
  --tier-surface: #10151b;
  --tier-alt-surface: #14191f;
  --tier-heading: #0e1318;
  --tier-line: #2b3239;
}
.tier-workspace-header,
.tier-workspace.section {
  width: min(1800px, calc(100% - 48px));
  margin: 0 auto;
}
.tier-workspace-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 12px 24px;
  padding: 20px 0 16px;
  border-bottom: 1px solid var(--line);
}
.tier-workspace-intro { display: flex; align-items: center; gap: 14px; min-width: 0; }
.tier-workspace-game-image { width: 60px; height: 60px; flex: 0 0 60px; object-fit: cover; border-radius: 4px; }
.tier-workspace-title { display: grid; grid-template-columns: auto auto; align-items: center; column-gap: 14px; min-width: 0; }
.tier-workspace-title > a { grid-column: 1 / -1; color: var(--accent); font-size: 12px; font-weight: 800; overflow-wrap: anywhere; }
.tier-workspace-title h1 { margin: 2px 0 4px; font-size: 32px; line-height: 1.15; letter-spacing: 0; overflow-wrap: anywhere; }
.tier-workspace-title p { margin: 0; color: var(--muted); font-size: 12px; }
.tier-workspace-header .game-tabs.game-tabs-segmented {
  flex: 0 1 auto;
  width: auto;
  max-width: 100%;
  margin: 0;
  border: 0;
  border-radius: 0;
  background: none;
  box-shadow: none;
  overflow-x: auto;
}
.tier-workspace-header .game-tabs-deck { display: flex; width: max-content; max-width: none; }
.tier-workspace-header .game-tabs-segmented .game-tab-link {
  width: auto;
  min-height: 44px;
  padding: 12px 14px;
  border: 0;
  background: none;
  box-shadow: none;
  color: var(--muted);
  font-size: 13px;
  font-weight: 600;
  white-space: nowrap;
}
.tier-workspace-header .game-tabs-segmented .game-tab-link.active,
.tier-workspace-header .game-tabs-segmented .game-tab-link:hover { color: var(--text); background: none; box-shadow: none; }
.tier-workspace-header .game-tabs-segmented .game-tab-link.active::after { background: var(--rose); box-shadow: none; border-radius: 0; }
.tier-workspace-header .game-tab-link-icon { display: none; }
.tier-workspace.section { display: block; padding: 16px 0 40px; }
.tier-workspace .tier-list-toolbar {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  gap: 10px;
  min-height: 44px;
  margin: 0 0 14px;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: none;
  box-shadow: none;
}
.tier-workspace-search {
  display: flex;
  align-items: center;
  gap: 10px;
  flex: 0 1 260px;
  min-width: 180px;
  height: 42px;
  padding: 0 12px;
  border: 1px solid var(--tier-line);
  border-radius: 4px;
  background: var(--tier-surface);
  color: var(--muted);
}
.tier-workspace-search:focus-within { outline: 2px solid var(--accent); outline-offset: 2px; }
.tier-workspace-search .nav-icon { width: 18px; height: 18px; flex: 0 0 18px; }
.tier-workspace-search input {
  width: 100%; min-width: 0; height: 100%; padding: 0; border: 0;
  outline: none; background: none; color: var(--text); font: inherit; font-size: 14px;
}
.tier-workspace-search input::placeholder { color: var(--muted); opacity: 1; }
.tier-filter-dropdowns { display: flex; flex-wrap: wrap; gap: 8px; min-width: 0; }
.tier-filter-dropdown { position: relative; min-width: 140px; max-width: 240px; }
.tier-filter-dropdown > summary {
  display: flex; align-items: center; justify-content: space-between; gap: 14px;
  min-height: 42px; padding: 9px 12px; border: 1px solid var(--tier-line); border-radius: 4px;
  background: var(--tier-surface); color: var(--text); font-size: 13px; cursor: pointer; list-style: none;
}
.tier-filter-dropdown > summary::-webkit-details-marker { display: none; }
.tier-filter-dropdown > summary > span { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.tier-filter-dropdown > summary b { font-weight: 500; }
.tier-filter-dropdown > summary .nav-icon { flex: 0 0 14px; width: 14px; height: 14px; }
.tier-filter-dropdown[open] > summary,
.tier-filter-dropdown.has-selection > summary { border-color: var(--accent); }
.tier-dropdown-options {
  position: absolute; z-index: 12; top: calc(100% + 6px); left: 0; display: grid; gap: 4px;
  width: 260px; max-width: calc(100vw - 48px); max-height: 320px; overflow: auto;
  padding: 8px; border: 1px solid var(--tier-line); border-radius: 4px;
  background: var(--tier-surface); box-shadow: 0 12px 30px #0005;
}
.tier-dropdown-options .tier-filter-option { display: flex; gap: 8px; margin: 0; min-height: 40px; font-size: 13px; }
.tier-dropdown-options .tier-filter-icon { width: 20px; height: 20px; object-fit: contain; }
.tier-dropdown-options .tier-filter-option:has(input:checked) { border-color: var(--accent); }
.tier-workspace-results { margin-left: auto; color: var(--muted); font-size: 13px; line-height: 1.5; }
.tier-workspace-results strong { color: var(--text); font-weight: 700; }
.tier-tool-button, .tier-workspace-reset {
  display: inline-flex; align-items: center; justify-content: center; flex: 0 0 auto; gap: 8px;
  min-height: 42px; padding: 10px; border: 1px solid var(--tier-line); border-radius: 4px;
  color: var(--text); background: var(--tier-surface); font: inherit; font-size: 13px; cursor: pointer;
}
.tier-tool-button { width: 42px; height: 42px; }
.tier-workspace-reset { border-color: transparent; background: none; }
.tier-tool-icon { width: 18px; height: 18px; flex: 0 0 18px; filter: invert(1); opacity: .8; }
.tier-tool-button:disabled, .tier-workspace-reset:disabled { opacity: .4; cursor: default; }
.tier-tool-button:not(:disabled):hover, .tier-workspace-reset:not(:disabled):hover { border-color: var(--accent); }
.tier-workspace :is(button, summary, a):focus-visible { outline: 2px solid var(--accent); outline-offset: 2px; }
.tier-workspace [hidden] { display: none !important; }
.tier-workspace .tier-list-panel { display: block; min-width: 0; }
.tier-workspace .tier-filter-empty { margin: 20px 0; padding: 32px 16px; color: var(--muted); }
.tier-matrix-scroll {
  width: 100%; max-width: 100%; max-height: max(400px, calc(100dvh - 268px));
  overflow: auto; overscroll-behavior-inline: contain;
  scrollbar-color: #697b86 var(--surface); scrollbar-width: auto;
  border: 1px solid var(--tier-line, var(--line)); border-radius: 4px;
}
.tier-matrix-scroll:focus-visible { outline: 2px solid var(--accent); outline-offset: 3px; }
.tier-matrix { --tier-card-size: 76px; width: 100%; min-width: calc(76px + var(--tier-column-count) * 176px); }
.tier-matrix-head, .tier-matrix .tier-matrix-row {
  display: grid; grid-template-columns: 76px repeat(var(--tier-column-count), minmax(0, 1fr)); gap: 0;
}
.tier-matrix-head { position: sticky; top: 0; z-index: 5; align-items: stretch; min-height: 50px; background: var(--tier-heading, var(--surface)); }
.tier-matrix-heading, .tier-matrix-corner {
  display: flex; align-items: center; justify-content: center; gap: 8px; padding: 10px 8px;
  color: var(--text); font-size: 13px; font-weight: 700; overflow-wrap: anywhere; letter-spacing: 0;
  border-bottom: 2px solid var(--accent); border-right: 1px solid var(--tier-line, var(--line));
}
.tier-matrix-column-icon { width: 24px; height: 24px; flex: 0 0 24px; object-fit: contain; }
.tier-matrix .tier-matrix-row {
  margin: 0; border: 0; border-bottom: 1px solid var(--tier-line, var(--line)); border-radius: 0;
  background: var(--tier-surface, var(--surface)); box-shadow: none; align-items: stretch;
}
.tier-matrix .tier-matrix-row:last-child { border-bottom: 0; }
.tier-matrix .tier-matrix-row[hidden] { display: none; }
.tier-matrix .tier-label, .tier-matrix-corner { position: sticky; left: 0; z-index: 3; }
.tier-matrix-corner { background: var(--tier-heading, var(--surface)); }
.tier-matrix .tier-label {
  --tier-color: #aab4bf;
  min-height: 120px; padding: 12px 6px; border-radius: 0;
  border-left: 4px solid var(--tier-color); color: var(--tier-color);
  background: var(--tier-surface, var(--surface));
  align-content: center; justify-content: center; text-align: center; overflow-wrap: anywhere;
}
.tier-matrix .tier-label.tier-t0 { --tier-color: #ff747d; }
.tier-matrix .tier-label.tier-t05 { --tier-color: #ffaf70; }
.tier-matrix .tier-label.tier-t1 { --tier-color: #f1d56c; }
.tier-matrix .tier-label.tier-t2 { --tier-color: #72d9b0; }
.tier-matrix .tier-label.tier-t3 { --tier-color: #82baff; }
.tier-matrix .tier-label.tier-t4 { --tier-color: #b8a6f7; }
.tier-matrix .tier-label strong { color: inherit; font-size: 21px; letter-spacing: 0; line-height: 1.3; }
.tier-matrix .tier-label.tier-unranked strong { font-size: 11px; }
.tier-matrix .tier-members {
  display: grid; grid-template-columns: repeat(auto-fill, var(--tier-card-size));
  align-content: start; align-items: start; gap: 8px;
  padding: 12px 7px; min-height: 120px; min-width: 0; border-left: 1px solid var(--tier-line, var(--line));
}
.tier-matrix-cell:nth-child(odd) { background: var(--tier-alt-surface, var(--surface-2)); }
.tier-matrix-entry { width: var(--tier-card-size); min-width: 0; }
.tier-matrix-entry[hidden] { display: none; }
.tier-matrix .character-card {
  width: var(--tier-card-size); min-width: 0; min-height: 0; height: auto; margin: 0;
  border: 0; border-radius: 3px; background: none; box-shadow: none;
}
.tier-matrix .character-card-link { display: block; min-height: 0; height: auto; }
.tier-matrix .character-portrait {
  height: auto; min-height: 0; border: 0; border-radius: 3px; background: none !important; overflow: visible;
}
.tier-matrix .character-portrait::after { display: none; }
.tier-matrix .character-portrait > img, .tier-matrix .character-fallback {
  display: block; width: var(--tier-card-size); height: var(--tier-card-size);
  border: 1px solid #536471; border-radius: 3px; background: #194a5b;
  object-fit: cover; object-position: center 25%; transform: none; will-change: auto;
}
.tier-matrix .rarity-ssr .character-portrait > img { border-color: #a98038; background: #5a431f; }
.tier-matrix .rarity-sr .character-portrait > img { border-color: #8f66b9; background: #453054; }
.tier-matrix .character-fallback { display: grid; place-items: center; font-size: 24px; }
.tier-matrix .character-portrait h3 {
  position: static; min-height: 15px; margin: 4px 0 0; padding: 0;
  color: var(--text); font-size: 12px; font-weight: 600; line-height: 15px; text-align: center;
  text-shadow: none; white-space: normal; overflow-wrap: anywhere; letter-spacing: 0;
}
.tier-matrix .character-card-icons { top: 3px; right: 3px; gap: 2px; }
.tier-matrix .character-card-icon { width: 15px; height: 15px; border-radius: 3px; box-shadow: none; }
.tier-matrix .character-card-icon img { transform: none; }
.tier-matrix .character-hover-card { display: none; }
.tier-matrix .collection-sts-card .character-portrait > img { object-fit: contain; object-position: center; transform: none; }
.tier-matrix .character-card-link:hover .character-portrait > img { border-color: var(--accent); }
.tier-matrix-navigation { display: flex; justify-content: flex-end; gap: 8px; margin-top: 10px; }
.tier-matrix-navigation[hidden] { display: none; }
.tier-workspace:fullscreen {
  display: flex; flex-direction: column; width: 100%; max-width: none; height: 100dvh;
  margin: 0; padding: 16px; background: var(--bg);
}
.tier-workspace:fullscreen .tier-list-panel { display: flex; flex-direction: column; flex: 1; min-height: 0; }
.tier-workspace:fullscreen .tier-matrix-scroll { flex: 1; max-height: none; min-height: 0; }
.tier-workspace:fullscreen .adsense-slot { display: none; }
html.theme-light .tier-workspace-page {
  --tier-surface: #fff; --tier-alt-surface: #f4f6f7; --tier-heading: #f0f4f5; --tier-line: #d3dade;
}
html.theme-light .tier-tool-icon { filter: none; }
html.theme-light .tier-matrix-column-icon { filter: brightness(.35); }
html.theme-light .tier-workspace-header .game-tabs-segmented .game-tab-link { background: none; border: 0; box-shadow: none; color: var(--muted); }
html.theme-light .tier-workspace-header .game-tabs-segmented .game-tab-link.active { color: var(--text); }
html.theme-light .tier-workspace-header .game-tabs-segmented .game-tab-link.active::after { background: var(--rose); box-shadow: none; }
html.theme-light .tier-workspace-title > a { color: #0e756b; }
html.theme-light .tier-matrix .tier-label.tier-t0 { --tier-color: #b82442; }
html.theme-light .tier-matrix .tier-label.tier-t05 { --tier-color: #99501c; }
html.theme-light .tier-matrix .tier-label.tier-t1 { --tier-color: #786009; }
html.theme-light .tier-matrix .tier-label.tier-t2 { --tier-color: #126e51; }
html.theme-light .tier-matrix .tier-label.tier-t3 { --tier-color: #2863a4; }
html.theme-light .tier-matrix .tier-label.tier-t4 { --tier-color: #6941a3; }
html.theme-light .tier-matrix .tier-label { --tier-color: #53616c; }
html.theme-light .tier-workspace .tier-list-toolbar { background: none; box-shadow: none; }
html.theme-light .tier-workspace .tier-label strong { color: inherit; }
html.theme-light .tier-workspace.section { background: none; box-shadow: none; border: 0; }
@media (min-width: 1440px) {
  .tier-matrix { --tier-card-size: 80px; min-width: calc(76px + var(--tier-column-count) * 184px); }
}
@media (max-width: 1000px) {
  .tier-workspace-header .game-tabs.game-tabs-segmented { flex-basis: 100%; }
  .tier-workspace-header .game-tabs-deck { width: max-content; min-width: 100%; }
  .tier-workspace-header .game-tabs-segmented .game-tab-link { flex: 0 0 auto; }
  .tier-matrix-scroll { max-height: 70dvh; }
}
@media (max-width: 600px) {
  .tier-workspace-header, .tier-workspace.section { width: calc(100% - 24px); }
  .tier-workspace-header { padding-top: 16px; gap: 12px; }
  .tier-workspace-title h1 { font-size: 27px; }
  .tier-workspace-title { display: block; }
  .tier-workspace-header .game-tab-link { padding: 10px 12px; font-size: 12px; }
  .tier-workspace .tier-list-toolbar { gap: 8px; }
  .tier-workspace-search { flex: 1 1 100%; }
  .tier-filter-dropdowns { flex: 1 1 100%; }
  .tier-filter-dropdown { flex: 1 1 120px; min-width: 0; max-width: none; }
  .tier-filter-dropdown:nth-child(even) .tier-dropdown-options { left: auto; right: 0; }
  .tier-filter-dropdown:nth-child(odd) .tier-dropdown-options { left: 0; right: auto; }
  .tier-matrix .tier-label strong { font-size: 18px; }
  .tier-matrix-navigation .tier-tool-button { width: 44px; height: 44px; }
  .tier-matrix-scroll { max-height: 68dvh; }
}

.tier-columns-editor, .tier-placement-editor { min-width: 0; }
.tier-column-scope { padding: 12px 0; border-top: 1px solid var(--line); }
.tier-column-scope > summary {
  cursor: pointer;
  padding: 8px 0;
  font-weight: 800;
}
.tier-column-scope > summary span { margin-left: 12px; color: var(--muted); }
.tier-column-editor-row {
  display: grid;
  grid-template-columns: minmax(140px,2fr) minmax(140px,1.5fr) minmax(100px,1fr) auto auto;
  gap: 12px;
  align-items: end;
  padding: 14px 0;
  border-bottom: 1px solid var(--line);
}
.tier-column-editor-row label, .tier-placement-grid label { min-width: 0; }
.tier-column-editor-row .input, .tier-placement-editor .input { width: 100%; min-width: 0; }
.tier-column-editor-row .check-field { min-height: 44px; align-items: center; }
.tier-column-actions { display: flex; gap: 4px; }
.tier-column-actions button {
  display: grid;
  place-items: center;
  width: 36px;
  height: 44px;
  padding: 6px;
  color: var(--text);
  background: transparent;
  border: 1px solid var(--line);
  border-radius: 4px;
}
.tier-column-actions button:disabled { opacity: .35; cursor: default; }
.tier-column-actions [data-tier-column-action="down"] .nav-icon { transform: rotate(180deg); }
.tier-column-actions [data-tier-column-action="remove"] { color: #fa577c; }
.tier-column-scope > button { margin-top: 12px; }
.tier-placement-editor { margin-top: 20px; border-top: 1px solid var(--line); padding-top: 16px; }
.tier-placement-editor h3 { margin: 0 0 14px; font-size: 16px; }
.tier-placement-editor fieldset { border: 0; padding: 0; margin: 0 0 12px; min-width: 0; }
.tier-placement-editor fieldset[hidden] { display: none; }
.tier-placement-editor legend { margin-bottom: 12px; color: var(--muted); font-size: 12px; }
.tier-placement-grid { display: grid; grid-template-columns: repeat(auto-fit,minmax(160px,1fr)); gap: 12px; margin-top: 14px; }
.tier-placement-editor > a { display: inline-flex; gap: 8px; align-items: center; font-size: 13px; }
@media (max-width: 1100px) {
  .tier-column-editor-row { grid-template-columns: minmax(0,1fr) minmax(0,1fr); }
  .tier-column-actions { justify-self: start; }
}
@media (max-width: 520px) {
  .tier-column-editor-row { grid-template-columns: minmax(0,1fr); }
  .tier-placement-grid { grid-template-columns: minmax(0,1fr); }
  .tier-matrix .tier-matrix-row { grid-template-columns: 64px repeat(var(--tier-column-count), minmax(0,1fr)); }
  .tier-matrix-head { grid-template-columns: 64px repeat(var(--tier-column-count), minmax(0,1fr)); }
  .tier-matrix { min-width: calc(64px + var(--tier-column-count) * 176px); }
}
