:root {
  --ink: #102019;
  --muted: #6d776f;
  --canvas: #f3f5ee;
  --paper: #ffffff;
  --line: #dfe4da;
  --forest: #0b2419;
  --forest-2: #123523;
  --lime: #c9ff43;
  --blue: #5ed9ff;
  --blue-deep: #147b9d;
  --coral: #ff715d;
  --coral-deep: #ba4638;
  --shadow: 0 18px 55px rgba(17, 35, 25, 0.08);
  --radius-lg: 28px;
  --radius-md: 20px;
  --radius-sm: 14px;
}

* {
  box-sizing: border-box;
}

html {
  scroll-behavior: smooth;
  scroll-padding-top: 92px;
}

body {
  margin: 0;
  min-height: 100vh;
  overflow-x: hidden;
  color: var(--ink);
  background: var(--canvas);
  font-family: "IBM Plex Sans Arabic", "SF Arabic", "Noto Kufi Arabic", Tahoma, Arial, sans-serif;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
}

.team-score,
.numeric-cell,
.leader-total b,
.squad-stat b,
.manager-stat-grid b,
#lastUpdated {
  font-variant-numeric: tabular-nums;
}

.live-pill.estimated {
  color: #684900;
  border-color: #efd88e;
  background: #fff9e8;
}

.live-pill.estimated .live-dot {
  background: #f2b72f;
  box-shadow: 0 0 0 5px rgba(242, 183, 47, 0.16);
}

.number-updated {
  animation: numberUpdated .46s ease both;
}

@keyframes numberUpdated {
  0% { opacity: .45; transform: translateY(5px); }
  100% { opacity: 1; transform: translateY(0); }
}

.live-event-toasts {
  position: fixed;
  z-index: 90;
  inset-inline-start: max(14px, env(safe-area-inset-left));
  bottom: calc(82px + env(safe-area-inset-bottom));
  width: min(430px, calc(100vw - 28px));
  display: grid;
  gap: 8px;
  pointer-events: none;
}

.live-event-toast {
  padding: 13px 15px;
  color: #f7fff8;
  background: rgba(11, 36, 25, .96);
  border: 1px solid rgba(201, 255, 67, .26);
  border-radius: 15px;
  box-shadow: 0 16px 42px rgba(10, 31, 22, .24);
  font-size: 14px;
  font-weight: 800;
  line-height: 1.65;
  animation: liveToastIn .28s ease both;
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
}

.live-event-toast.assist { border-color: rgba(94, 217, 255, .48); }
.live-event-toast.cancelled { border-color: rgba(255, 113, 93, .52); }
.live-event-toast.leaving { animation: liveToastOut .24s ease both; }

@keyframes liveToastIn {
  from { opacity: 0; transform: translateY(9px) scale(.98); }
  to { opacity: 1; transform: translateY(0) scale(1); }
}

@keyframes liveToastOut {
  to { opacity: 0; transform: translateY(6px) scale(.98); }
}

.ranking-row {
  will-change: transform;
}

@media (min-width: 761px) {
  .live-event-toasts { bottom: 26px; }
}

@media (prefers-reduced-motion: reduce) {
  .number-updated,
  .live-event-toast,
  .live-event-toast.leaving {
    animation: none;
  }
}

button,
a {
  font: inherit;
}

button {
  -webkit-tap-highlight-color: transparent;
}

.ambient {
  position: fixed;
  z-index: -1;
  width: 480px;
  height: 480px;
  border-radius: 50%;
  filter: blur(8px);
  pointer-events: none;
}

.ambient-one {
  top: -260px;
  right: -170px;
  background: radial-gradient(circle, rgba(201, 255, 67, 0.2), rgba(201, 255, 67, 0));
}

.ambient-two {
  bottom: 2%;
  left: -310px;
  background: radial-gradient(circle, rgba(94, 217, 255, 0.16), rgba(94, 217, 255, 0));
}

.app-shell {
  width: min(1440px, calc(100% - 40px));
  margin: 0 auto;
  padding: 0 0 72px;
}

.topbar {
  position: sticky;
  top: 0;
  z-index: 30;
  min-height: 86px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  background: rgba(243, 245, 238, 0.88);
  border-bottom: 1px solid rgba(207, 214, 203, 0.75);
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
}

.brand {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  color: inherit;
  text-decoration: none;
}

.brand-mark {
  width: 46px;
  height: 46px;
  display: grid;
  place-items: center;
  color: var(--lime);
  background: var(--forest);
  border-radius: 15px;
  font-size: 23px;
  font-weight: 900;
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.08);
  transform: rotate(-4deg);
}

.brand-copy {
  display: grid;
  gap: 2px;
}

.brand-copy strong {
  font-size: 19px;
  line-height: 1.25;
}

.brand-copy small {
  color: #7b857d;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  direction: ltr;
  text-align: right;
}

.header-actions {
  display: flex;
  align-items: center;
  gap: 10px;
}

.live-pill {
  min-height: 38px;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 0 14px;
  color: #31543e;
  background: rgba(255, 255, 255, 0.72);
  border: 1px solid #dae1d6;
  border-radius: 999px;
  font-size: 12px;
  font-weight: 800;
}

.live-pill.offline {
  color: #9f4134;
  border-color: #f0cfc8;
  background: #fff5f2;
}

.live-dot {
  width: 7px;
  height: 7px;
  flex: 0 0 auto;
  border-radius: 50%;
  background: #45bc67;
  box-shadow: 0 0 0 5px rgba(69, 188, 103, 0.13);
}

.offline .live-dot {
  background: var(--coral);
  box-shadow: 0 0 0 5px rgba(255, 113, 93, 0.12);
}

.refresh-button {
  width: 42px;
  height: 42px;
  display: grid;
  place-items: center;
  padding: 0;
  color: var(--forest);
  background: #fff;
  border: 1px solid #d8ded4;
  border-radius: 13px;
  cursor: pointer;
  transition: transform 0.2s ease, border-color 0.2s ease, background 0.2s ease;
}

.refresh-button:hover {
  border-color: #b8c3b6;
  background: #fbfff4;
  transform: translateY(-1px);
}

.refresh-button:disabled {
  cursor: wait;
  opacity: 0.65;
}

.refresh-button.loading svg {
  animation: rotate 0.9s linear infinite;
}

.refresh-button svg {
  width: 19px;
  height: 19px;
  fill: none;
  stroke: currentColor;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-width: 1.8;
}

@keyframes rotate {
  to { transform: rotate(360deg); }
}

.dashboard {
  display: grid;
  grid-template-columns: minmax(0, 1.55fr) minmax(350px, 0.82fr);
  gap: 18px;
  align-items: start;
}

.primary-column,
.secondary-column {
  min-width: 0;
  display: grid;
  gap: 18px;
}

.card {
  overflow: hidden;
  background: rgba(255, 255, 255, 0.9);
  border: 1px solid var(--line);
  border-radius: var(--radius-lg);
  box-shadow: var(--shadow);
}

.scoreboard {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  min-height: 380px;
  padding: 28px;
  color: #f9fff8;
  background:
    radial-gradient(circle at 7% 20%, rgba(94, 217, 255, 0.2), transparent 34%),
    radial-gradient(circle at 93% 72%, rgba(255, 113, 93, 0.2), transparent 35%),
    linear-gradient(135deg, #071c13 0%, #0b2b1c 54%, #0c2118 100%);
  border: 1px solid rgba(23, 70, 47, 0.85);
  border-radius: 34px;
  box-shadow: 0 28px 70px rgba(8, 37, 24, 0.2);
}

.scoreboard::after {
  content: "";
  position: absolute;
  z-index: -1;
  inset: 0;
  background: linear-gradient(113deg, transparent 30%, rgba(255, 255, 255, 0.045) 50%, transparent 70%);
  pointer-events: none;
}

.pitch-grid {
  position: absolute;
  z-index: -2;
  inset: 0;
  opacity: 0.09;
  background-image:
    linear-gradient(rgba(255, 255, 255, 0.5) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255, 255, 255, 0.5) 1px, transparent 1px);
  background-size: 52px 52px;
  mask-image: linear-gradient(to bottom, transparent, #000 24%, #000 76%, transparent);
}

.scoreboard-head,
.scoreboard-foot,
.section-head,
.compact-head,
.squad-summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
}

.eyebrow,
.section-kicker {
  margin: 0 0 5px;
  color: #79857d;
  font-size: 11px;
  font-weight: 850;
  letter-spacing: 0.02em;
}

.scoreboard .eyebrow {
  color: rgba(235, 255, 240, 0.62);
}

.round-label {
  font-size: 20px;
  font-weight: 900;
}

.period-switch {
  display: inline-grid;
  grid-template-columns: 1fr 1fr;
  gap: 3px;
  padding: 4px;
  background: rgba(255, 255, 255, 0.09);
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 14px;
}

.period-button {
  min-width: 72px;
  min-height: 34px;
  padding: 5px 14px;
  color: rgba(244, 255, 247, 0.66);
  background: transparent;
  border: 0;
  border-radius: 10px;
  font-size: 12px;
  font-weight: 850;
  cursor: pointer;
}

.period-button.active {
  color: var(--forest);
  background: var(--lime);
  box-shadow: 0 5px 18px rgba(201, 255, 67, 0.18);
}

.match-score {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 70px minmax(0, 1fr);
  align-items: center;
  gap: 20px;
  margin-top: 24px;
}

.side {
  min-width: 0;
  display: grid;
  grid-template-columns: 58px minmax(0, 1fr) auto;
  grid-template-rows: auto auto;
  align-items: center;
  column-gap: 13px;
}

.side-two {
  direction: ltr;
}

.side-two .team-name,
.side-two .points-label {
  direction: rtl;
}

.team-badge {
  grid-row: 1 / 3;
  width: 58px;
  height: 68px;
  display: grid;
  place-items: center;
  border-radius: 19px;
  font-size: 15px;
  font-weight: 950;
  clip-path: polygon(50% 0%, 91% 16%, 84% 78%, 50% 100%, 16% 78%, 9% 16%);
}

.team-badge span {
  transform: translateY(-2px);
}

.side-one .team-badge {
  color: #052333;
  background: var(--blue);
  box-shadow: 0 0 36px rgba(94, 217, 255, 0.23);
}

.side-two .team-badge {
  color: #3c100a;
  background: var(--coral);
  box-shadow: 0 0 36px rgba(255, 113, 93, 0.23);
}

.team-name {
  align-self: end;
  color: rgba(244, 255, 247, 0.7);
  font-size: 15px;
  font-weight: 800;
  white-space: nowrap;
}

.team-score {
  grid-row: 1 / 3;
  font-size: clamp(48px, 5.2vw, 78px);
  font-variant-numeric: tabular-nums;
  line-height: 0.9;
  letter-spacing: -0.05em;
  direction: ltr;
}

.side-one .team-score {
  color: var(--blue);
}

.side-two .team-score {
  color: var(--coral);
}

.points-label {
  align-self: start;
  color: rgba(244, 255, 247, 0.42);
  font-size: 11px;
}

.versus-block {
  display: grid;
  grid-template-rows: 1fr auto 1fr;
  place-items: center;
  align-self: stretch;
  gap: 8px;
}

.versus-line {
  width: 1px;
  min-height: 30px;
  background: linear-gradient(transparent, rgba(255, 255, 255, 0.25));
}

.versus-line:last-child {
  background: linear-gradient(rgba(255, 255, 255, 0.25), transparent);
}

.versus-chip {
  width: 46px;
  height: 46px;
  display: grid;
  place-items: center;
  color: var(--lime);
  background: rgba(1, 13, 8, 0.55);
  border: 1px solid rgba(201, 255, 67, 0.25);
  border-radius: 50%;
  font-size: 12px;
  font-weight: 950;
  direction: ltr;
}

.lead-summary {
  width: fit-content;
  max-width: 100%;
  min-height: 42px;
  display: flex;
  align-items: center;
  gap: 10px;
  margin: 24px auto 0;
  padding: 8px 14px;
  color: #ecf9ef;
  background: rgba(255, 255, 255, 0.065);
  border: 1px solid rgba(255, 255, 255, 0.09);
  border-radius: 999px;
  font-size: 12px;
  font-weight: 800;
}

.lead-icon {
  width: 25px;
  height: 25px;
  display: grid;
  place-items: center;
  color: var(--forest);
  background: var(--lime);
  border-radius: 50%;
  direction: ltr;
}

.scoreboard-foot {
  margin-top: 24px;
  padding-top: 15px;
  color: rgba(236, 249, 239, 0.48);
  border-top: 1px solid rgba(255, 255, 255, 0.08);
  font-size: 10px;
}

.source-label {
  color: rgba(236, 249, 239, 0.68);
  direction: ltr;
}

.error-banner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 15px 17px;
  color: #783126;
  background: #fff0ed;
  border: 1px solid #f1c9c2;
  border-radius: 18px;
}

.error-banner[hidden] {
  display: none;
}

.error-banner div {
  display: grid;
  gap: 3px;
}

.error-banner strong {
  font-size: 13px;
}

.error-banner span {
  color: #9a574d;
  font-size: 11px;
}

.error-banner button {
  flex: 0 0 auto;
  padding: 8px 12px;
  color: #fff;
  background: #8f3e32;
  border: 0;
  border-radius: 10px;
  font-size: 11px;
  font-weight: 850;
  cursor: pointer;
}

.spotlights {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}

.spotlight {
  position: relative;
  overflow: hidden;
  min-height: 164px;
  padding: 17px;
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 22px;
  box-shadow: var(--shadow);
}

.spotlight::after {
  content: "";
  position: absolute;
  width: 110px;
  height: 110px;
  left: -42px;
  bottom: -54px;
  border-radius: 50%;
  background: currentColor;
  opacity: 0.08;
}

.spotlight-lime { color: #678918; }
.spotlight-blue { color: var(--blue-deep); }
.spotlight-coral { color: var(--coral-deep); }

.spotlight-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  font-size: 11px;
  font-weight: 900;
  direction: ltr;
}

.spotlight-tag {
  padding: 4px 8px;
  color: currentColor;
  background: color-mix(in srgb, currentColor 9%, transparent);
  border-radius: 999px;
  direction: rtl;
}

.spotlight p {
  margin: 22px 0 8px;
  color: #778078;
  font-size: 11px;
  font-weight: 750;
}

.spotlight-result {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 8px;
}

.spotlight-result strong {
  min-width: 0;
  overflow: hidden;
  color: var(--ink);
  font-size: 18px;
  font-weight: 950;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.spotlight-result span {
  flex: 0 0 auto;
  color: #808981;
  font-size: 9px;
}

.spotlight-result b {
  color: currentColor;
  font-size: 23px;
  font-variant-numeric: tabular-nums;
}

.section-head,
.compact-head {
  padding: 22px 23px 18px;
}

.section-head h2,
.compact-head h2 {
  margin: 0;
  font-size: 21px;
  line-height: 1.3;
}

.compact-head h2 {
  font-size: 18px;
}

.participant-count,
.period-caption,
.round-mini {
  padding: 7px 11px;
  color: #637069;
  background: #f3f5ef;
  border: 1px solid #e2e6de;
  border-radius: 999px;
  font-size: 10px;
  font-weight: 800;
}

.participant-count b,
.round-mini b {
  color: var(--ink);
  font-size: 12px;
}

.ranking-head,
.ranking-row {
  display: grid;
  grid-template-columns: 62px minmax(170px, 1fr) 72px 82px 62px;
  gap: 8px;
  align-items: center;
}

.ranking-head {
  min-height: 39px;
  padding: 0 20px;
  color: #89928b;
  background: #f5f6f2;
  border-top: 1px solid #e8ebe5;
  border-bottom: 1px solid #e8ebe5;
  font-size: 9px;
  font-weight: 850;
  text-align: center;
}

.ranking-head span:nth-child(2) {
  text-align: right;
}

.ranking-list {
  padding: 5px 20px 14px;
}

.ranking-row {
  min-height: 65px;
  border-bottom: 1px solid #edf0ea;
}

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

.rank-cell {
  display: flex;
  align-items: center;
  justify-content: center;
}

.rank-number {
  width: 31px;
  height: 31px;
  display: grid;
  place-items: center;
  color: #6f7971;
  background: #f1f3ee;
  border-radius: 10px;
  font-size: 12px;
  font-weight: 950;
  font-variant-numeric: tabular-nums;
}

.rank-number.top-1 {
  color: #263410;
  background: var(--lime);
}

.rank-number.top-2 {
  color: #075169;
  background: #b5ecff;
}

.rank-number.top-3 {
  color: #7e2b20;
  background: #ffd1c9;
}

.manager-cell {
  min-width: 0;
  display: flex;
  align-items: center;
  gap: 10px;
}

.avatar {
  width: 37px;
  height: 37px;
  flex: 0 0 auto;
  display: grid;
  place-items: center;
  color: #fff;
  border-radius: 13px;
  font-size: 11px;
  font-weight: 950;
}

.team-one-avatar { background: linear-gradient(145deg, #188bb0, #07536c); }
.team-two-avatar { background: linear-gradient(145deg, #e96955, #a43325); }

.manager-copy {
  min-width: 0;
  display: grid;
  gap: 3px;
}

.manager-copy strong {
  overflow: hidden;
  font-size: 13px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.manager-copy small {
  display: flex;
  align-items: center;
  gap: 5px;
  color: #8a938c;
  font-size: 9px;
}

.team-dot {
  width: 6px;
  height: 6px;
  display: inline-block;
  border-radius: 50%;
}

.team-dot.one { background: var(--blue-deep); }
.team-dot.two { background: var(--coral); }

.numeric-cell {
  color: #4e5b53;
  font-size: 13px;
  font-weight: 800;
  font-variant-numeric: tabular-nums;
  text-align: center;
  direction: ltr;
}

.numeric-cell.total {
  color: var(--forest);
  font-size: 15px;
  font-weight: 950;
}

.movement {
  width: fit-content;
  min-width: 34px;
  margin: auto;
  padding: 4px 6px;
  border-radius: 8px;
  font-size: 10px;
  font-weight: 950;
  text-align: center;
  direction: ltr;
}

.movement.up { color: #32793e; background: #e8f8e9; }
.movement.down { color: #a33e31; background: #ffebe7; }
.movement.same { color: #8a938c; background: #f2f4f0; }

.skeleton-row {
  height: 54px;
  margin: 7px 0;
  border-radius: 14px;
  background: linear-gradient(90deg, #f2f4f0 25%, #e7ebe4 45%, #f2f4f0 65%);
  background-size: 220% 100%;
  animation: shimmer 1.25s infinite linear;
}

@keyframes shimmer {
  to { background-position: -220% 0; }
}

.team-tabs {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 4px;
  padding: 4px;
  background: #f1f3ee;
  border-radius: 13px;
}

.team-tab {
  min-width: 64px;
  padding: 7px 11px;
  color: #788179;
  background: transparent;
  border: 0;
  border-radius: 9px;
  font-size: 11px;
  font-weight: 850;
  cursor: pointer;
}

.team-tab.active {
  color: #fff;
  background: var(--forest);
}

.squad-summary {
  margin: 0 20px;
  padding: 15px 17px;
  background: #f5f7f2;
  border: 1px solid #e5e9e1;
  border-radius: 17px;
}

.squad-identity {
  display: flex;
  align-items: center;
  gap: 10px;
}

.squad-number {
  width: 37px;
  height: 37px;
  display: grid;
  place-items: center;
  color: #052c3a;
  background: var(--blue);
  border-radius: 12px;
  font-size: 10px;
  font-weight: 950;
}

.squads-card.team-two-active .squad-number {
  color: #4a130b;
  background: var(--coral);
}

.squad-identity div {
  display: grid;
  gap: 2px;
}

.squad-identity strong {
  font-size: 13px;
}

.squad-identity small,
.squad-total span {
  color: #8a938c;
  font-size: 9px;
}

.squad-total {
  display: grid;
  gap: 2px;
  text-align: left;
}

.squad-total b {
  color: var(--forest);
  font-size: 21px;
  font-variant-numeric: tabular-nums;
}

.squad-list {
  padding: 8px 20px 17px;
}

.squad-row {
  min-height: 51px;
  display: grid;
  grid-template-columns: 33px minmax(0, 1fr) 74px 74px;
  gap: 8px;
  align-items: center;
  border-bottom: 1px solid #edf0ea;
}

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

.squad-rank {
  color: #89928b;
  font-size: 11px;
  font-weight: 900;
  text-align: center;
}

.squad-person {
  min-width: 0;
  overflow: hidden;
  font-size: 12px;
  font-weight: 850;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.squad-stat {
  display: grid;
  gap: 1px;
  text-align: center;
}

.squad-stat span {
  color: #99a199;
  font-size: 8px;
}

.squad-stat b {
  color: #3b4a40;
  font-size: 12px;
  font-variant-numeric: tabular-nums;
}

.secondary-column {
  position: sticky;
  top: 104px;
}

.comparison-score {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
  padding: 0 20px;
}

.comparison-team {
  min-height: 91px;
  display: grid;
  align-content: center;
  gap: 6px;
  padding: 14px;
  border-radius: 17px;
}

.comparison-team span {
  font-size: 10px;
  font-weight: 800;
}

.comparison-team b {
  font-size: 27px;
  font-variant-numeric: tabular-nums;
  direction: ltr;
}

.comparison-one {
  color: #07536c;
  background: #e7f9ff;
  border: 1px solid #c8effb;
}

.comparison-two {
  color: #933326;
  background: #fff0ed;
  border: 1px solid #ffd7d0;
}

.balance-track {
  height: 9px;
  display: flex;
  gap: 3px;
  margin: 18px 20px 8px;
  overflow: hidden;
  background: #edf0eb;
  border-radius: 999px;
  direction: ltr;
}

.balance-one,
.balance-two {
  height: 100%;
  transition: width 0.55s cubic-bezier(0.2, 0.7, 0.2, 1);
}

.balance-one { width: 50%; background: var(--blue-deep); }
.balance-two { width: 50%; background: var(--coral); }

.balance-labels {
  display: flex;
  justify-content: space-between;
  padding: 0 20px 20px;
  color: #8a938c;
  font-size: 9px;
  font-weight: 850;
  direction: ltr;
}

.chart-legend {
  display: flex;
  gap: 11px;
  color: #7d867f;
  font-size: 9px;
  font-weight: 800;
}

.chart-legend span {
  display: inline-flex;
  align-items: center;
  gap: 5px;
}

.chart-legend span::before {
  content: "";
  width: 14px;
  height: 3px;
  border-radius: 99px;
}

.legend-one::before { background: var(--blue-deep); }
.legend-two::before { background: var(--coral); }

.gameweek-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 7px;
  padding: 0 20px 20px;
}

.gameweek-item {
  min-width: 0;
  min-height: 72px;
  display: grid;
  align-content: center;
  gap: 4px;
  padding: 8px 5px;
  background: #f5f7f2;
  border: 1px solid #e6eae2;
  border-radius: 13px;
  text-align: center;
}

.gameweek-item.top {
  background: #f5ffe0;
  border-color: #d8ef9f;
}

.gameweek-item b {
  color: var(--forest);
  font-size: 19px;
  font-variant-numeric: tabular-nums;
  direction: ltr;
}

.gameweek-item.top b {
  color: #587a0d;
}

.gameweek-item span {
  overflow: hidden;
  color: #7d867f;
  font-size: 9px;
  font-weight: 750;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.mini-skeleton {
  height: 72px;
  border-radius: 13px;
  background: linear-gradient(90deg, #f2f4f0 25%, #e7ebe4 45%, #f2f4f0 65%);
  background-size: 220% 100%;
  animation: shimmer 1.25s infinite linear;
}

.chart-wrap {
  padding: 0 14px 15px;
}

#seasonChart {
  width: 100%;
  height: auto;
  min-height: 190px;
  display: block;
  direction: ltr;
}

.chart-grid-line {
  stroke: #e9ede6;
  stroke-width: 1;
}

.chart-label {
  fill: #929b94;
  font-size: 11px;
  font-family: Arial, sans-serif;
}

.chart-path-one,
.chart-path-two {
  fill: none;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-width: 4;
}

.chart-path-one { stroke: var(--blue-deep); }
.chart-path-two { stroke: var(--coral); }

.chart-area-one { fill: url(#areaOne); }
.chart-area-two { fill: url(#areaTwo); }

.chart-dot-one { fill: var(--blue-deep); }
.chart-dot-two { fill: var(--coral); }

.info-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px;
  margin: 0;
  padding: 0 20px;
}

.info-grid div {
  min-height: 76px;
  display: grid;
  align-content: center;
  gap: 4px;
  padding: 12px;
  background: #f5f7f2;
  border: 1px solid #e6eae2;
  border-radius: 15px;
}

.info-grid dt {
  color: #8b948c;
  font-size: 9px;
}

.info-grid dd {
  margin: 0;
  color: var(--forest);
  font-size: 17px;
  font-weight: 950;
  font-variant-numeric: tabular-nums;
}

.verified-mark {
  width: 30px;
  height: 30px;
  display: grid;
  place-items: center;
  color: #36550f;
  background: #e8f8c3;
  border-radius: 10px;
  font-size: 13px;
  font-weight: 950;
}

.info-note {
  display: flex;
  align-items: center;
  gap: 9px;
  margin: 13px 20px 20px;
  padding: 12px;
  color: #657068;
  background: #fbfcfa;
  border: 1px solid #e8ebe5;
  border-radius: 13px;
  font-size: 9px;
  line-height: 1.7;
}

.mobile-nav {
  display: none;
}

@media (max-width: 1120px) {
  .app-shell {
    width: min(960px, calc(100% - 28px));
  }

  .dashboard {
    grid-template-columns: 1fr;
  }

  .secondary-column {
    position: static;
    grid-template-columns: 1fr 1fr;
  }

  .chart-card,
  .league-info {
    grid-column: auto;
  }
}

@media (max-width: 760px) {
  html {
    scroll-padding-top: 75px;
  }

  body {
    background: #f1f3ed;
  }

  .ambient {
    display: none;
  }

  .app-shell {
    width: 100%;
    padding: 0 11px 104px;
  }

  .topbar {
    min-height: 68px;
    padding: 0 3px;
  }

  .brand {
    gap: 9px;
  }

  .brand-mark {
    width: 39px;
    height: 39px;
    border-radius: 13px;
    font-size: 19px;
  }

  .brand-copy strong {
    font-size: 16px;
  }

  .brand-copy small {
    font-size: 8px;
  }

  .live-pill {
    min-height: 34px;
    padding: 0 10px;
    font-size: 10px;
  }

  .refresh-button {
    width: 38px;
    height: 38px;
    border-radius: 12px;
  }

  .dashboard,
  .primary-column,
  .secondary-column {
    gap: 11px;
  }

  .secondary-column {
    grid-template-columns: 1fr;
  }

  .card {
    border-radius: 22px;
    box-shadow: 0 12px 35px rgba(17, 35, 25, 0.055);
  }

  .scoreboard {
    min-height: 0;
    padding: 18px 15px 15px;
    border-radius: 25px;
  }

  .scoreboard-head {
    align-items: start;
  }

  .round-label {
    font-size: 17px;
  }

  .period-button {
    min-width: 59px;
    min-height: 31px;
    padding: 4px 9px;
    font-size: 10px;
  }

  .match-score {
    grid-template-columns: minmax(0, 1fr) 42px minmax(0, 1fr);
    gap: 7px;
    margin-top: 22px;
  }

  .side {
    grid-template-columns: 1fr;
    grid-template-rows: auto auto auto auto;
    justify-items: center;
    gap: 4px;
    text-align: center;
  }

  .side-two {
    direction: rtl;
  }

  .team-badge {
    grid-row: auto;
    width: 43px;
    height: 49px;
    border-radius: 14px;
    font-size: 11px;
  }

  .team-name {
    align-self: auto;
    font-size: 12px;
  }

  .team-score {
    grid-row: auto;
    font-size: clamp(42px, 14vw, 59px);
    line-height: 1;
  }

  .points-label {
    align-self: auto;
    font-size: 9px;
  }

  .versus-block {
    gap: 5px;
  }

  .versus-line {
    min-height: 21px;
  }

  .versus-chip {
    width: 37px;
    height: 37px;
    font-size: 10px;
  }

  .lead-summary {
    min-height: 37px;
    margin-top: 17px;
    font-size: 10px;
  }

  .lead-icon {
    width: 22px;
    height: 22px;
  }

  .scoreboard-foot {
    margin-top: 16px;
    padding-top: 12px;
    font-size: 8px;
  }

  .error-banner {
    padding: 13px;
    border-radius: 16px;
  }

  .spotlights {
    display: flex;
    gap: 9px;
    overflow-x: auto;
    padding: 1px 1px 5px;
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
  }

  .spotlights::-webkit-scrollbar {
    display: none;
  }

  .spotlight {
    min-width: min(76vw, 285px);
    min-height: 144px;
    flex: 0 0 auto;
    padding: 15px;
    border-radius: 20px;
    scroll-snap-align: start;
  }

  .spotlight p {
    margin-top: 18px;
  }

  .section-head,
  .compact-head {
    padding: 18px 16px 14px;
  }

  .section-head h2,
  .compact-head h2 {
    font-size: 18px;
  }

  .participant-count {
    padding: 6px 9px;
    font-size: 9px;
  }

  .ranking-head,
  .ranking-row {
    grid-template-columns: 37px minmax(0, 1fr) 54px 61px 42px;
    gap: 4px;
  }

  .ranking-head {
    min-height: 36px;
    padding: 0 10px;
    font-size: 7.5px;
  }

  .ranking-list {
    padding: 3px 10px 11px;
  }

  .ranking-row {
    min-height: 59px;
  }

  .rank-number {
    width: 28px;
    height: 28px;
    border-radius: 9px;
    font-size: 10px;
  }

  .manager-cell {
    gap: 7px;
  }

  .avatar {
    width: 32px;
    height: 32px;
    border-radius: 11px;
    font-size: 9px;
  }

  .manager-copy strong {
    font-size: 11px;
  }

  .manager-copy small {
    font-size: 7.5px;
  }

  .numeric-cell {
    font-size: 10px;
  }

  .numeric-cell.total {
    font-size: 12px;
  }

  .movement {
    min-width: 28px;
    padding: 4px 3px;
    font-size: 8px;
  }

  .team-tabs {
    padding: 3px;
  }

  .team-tab {
    min-width: 51px;
    padding: 6px 8px;
    font-size: 9px;
  }

  .squad-summary {
    margin: 0 12px;
    padding: 12px;
  }

  .squad-list {
    padding: 6px 12px 13px;
  }

  .squad-row {
    grid-template-columns: 27px minmax(0, 1fr) 55px 55px;
    min-height: 47px;
  }

  .squad-person,
  .squad-stat b {
    font-size: 10px;
  }

  .comparison-score,
  .gameweek-grid,
  .info-grid {
    padding-right: 14px;
    padding-left: 14px;
  }

  .balance-track {
    margin-right: 14px;
    margin-left: 14px;
  }

  .balance-labels {
    padding-right: 14px;
    padding-left: 14px;
  }

  .gameweek-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 6px;
  }

  .gameweek-item {
    min-height: 67px;
  }

  .gameweek-item b {
    font-size: 17px;
  }

  .chart-wrap {
    padding-right: 7px;
    padding-left: 7px;
  }

  #seasonChart {
    min-height: 180px;
  }

  .info-note {
    margin-right: 14px;
    margin-left: 14px;
  }

  .mobile-nav {
    position: fixed;
    z-index: 50;
    right: 10px;
    bottom: calc(8px + env(safe-area-inset-bottom));
    left: 10px;
    min-height: 67px;
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    padding: 6px;
    background: rgba(8, 30, 20, 0.96);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 20px;
    box-shadow: 0 18px 42px rgba(6, 27, 17, 0.32);
    backdrop-filter: blur(18px);
    -webkit-backdrop-filter: blur(18px);
  }

  .mobile-nav-button {
    display: grid;
    place-items: center;
    align-content: center;
    gap: 3px;
    padding: 5px 2px;
    color: rgba(237, 249, 240, 0.48);
    background: transparent;
    border: 0;
    border-radius: 14px;
    cursor: pointer;
  }

  .mobile-nav-button span {
    height: 20px;
    display: grid;
    place-items: center;
    font-size: 15px;
    font-weight: 900;
    direction: ltr;
  }

  .mobile-nav-button b {
    font-size: 8px;
  }

  .mobile-nav-button.active {
    color: var(--lime);
    background: rgba(201, 255, 67, 0.08);
  }
}

@media (max-width: 390px) {
  .brand-copy small,
  .source-label {
    display: none;
  }

  .live-pill {
    padding: 0 8px;
  }

  .scoreboard {
    padding-right: 12px;
    padding-left: 12px;
  }

  .period-button {
    min-width: 52px;
  }

  .gameweek-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .ranking-head,
  .ranking-row {
    grid-template-columns: 32px minmax(0, 1fr) 48px 55px 35px;
  }

  .avatar {
    display: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    scroll-behavior: auto !important;
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
  }
}

/* Live league expansion */
body {
  font-size: 16px;
}

.eyebrow,
.section-kicker {
  font-size: 12px;
}

.brand-copy strong {
  font-size: 20px;
}

.team-name {
  font-size: 16px;
}

.score-share {
  padding: 7px 11px;
  color: var(--lime);
  background: rgba(201, 255, 67, 0.08);
  border: 1px solid rgba(201, 255, 67, 0.18);
  border-radius: 999px;
  font-size: 10px;
  font-weight: 900;
  cursor: pointer;
}

.countdown-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 7px;
  padding: 0 20px;
  direction: ltr;
}

.countdown-grid div {
  min-height: 78px;
  display: grid;
  place-items: center;
  align-content: center;
  gap: 4px;
  color: var(--forest);
  background: #f5f7f2;
  border: 1px solid #e5e9e0;
  border-radius: 15px;
}

.countdown-grid b {
  font-size: 24px;
  line-height: 1;
  font-variant-numeric: tabular-nums;
}

.countdown-grid span {
  color: #8a938c;
  font-size: 9px;
  direction: rtl;
}

.deadline-date {
  margin: 12px 20px 20px;
  color: #6d776f;
  font-size: 11px;
  font-weight: 750;
  text-align: center;
}

.pulse-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 9px;
  padding: 0 20px 20px;
}

.pulse-item {
  min-width: 0;
  min-height: 119px;
  display: grid;
  align-content: center;
  gap: 7px;
  padding: 15px;
  color: #07536c;
  background: color-mix(in srgb, var(--blue) 13%, white);
  border: 1px solid color-mix(in srgb, var(--blue) 28%, white);
  border-radius: 17px;
}

.pulse-item.differential {
  color: #8b3b2f;
  background: color-mix(in srgb, var(--coral) 12%, white);
  border-color: color-mix(in srgb, var(--coral) 27%, white);
}

.pulse-item span,
.pulse-item small {
  font-size: 10px;
}

.pulse-item span {
  opacity: 0.68;
  font-weight: 800;
}

.pulse-item strong {
  overflow: hidden;
  color: var(--ink);
  font-size: 18px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.pulse-item small {
  opacity: 0.78;
}

.pulse-item small b {
  font-size: 15px;
}

.alert-count {
  min-width: 31px;
  height: 31px;
  display: grid;
  place-items: center;
  color: #9a3d30;
  background: #ffebe7;
  border-radius: 10px;
  font-size: 12px;
  font-weight: 950;
}

.injuries-list {
  display: grid;
  padding: 0 20px 20px;
}

.injury-row {
  min-height: 65px;
  display: grid;
  grid-template-columns: 54px minmax(0, 1fr) 32px;
  gap: 10px;
  align-items: center;
  border-bottom: 1px solid #edf0ea;
}

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

.injury-status {
  padding: 5px 7px;
  color: #a33f32;
  background: #ffebe7;
  border-radius: 8px;
  font-size: 9px;
  font-weight: 900;
  text-align: center;
}

.injury-status.s {
  color: #7b4a10;
  background: #fff2d8;
}

.injury-row div {
  min-width: 0;
  display: grid;
  gap: 3px;
}

.injury-row strong {
  font-size: 12px;
}

.injury-row small {
  overflow: hidden;
  color: #89928b;
  font-size: 9px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.owners-count {
  color: #7b857d;
  font-size: 10px;
  font-weight: 900;
  direction: ltr;
}

.empty-state {
  padding: 21px 10px;
  color: #89928b;
  font-size: 11px;
  text-align: center;
}

.empty-state.positive {
  color: #397849;
  background: #eff9ed;
  border-radius: 13px;
}

.ranking-row,
.squad-row {
  width: 100%;
  padding: 0;
  color: inherit;
  background: transparent;
  border-top: 0;
  border-right: 0;
  border-left: 0;
  font-family: inherit;
  text-align: inherit;
  cursor: pointer;
  transition: background 0.18s ease;
}

.ranking-row:hover,
.squad-row:hover {
  background: #f8faf6;
}

.manager-copy small {
  flex-wrap: wrap;
}

.movement-inline {
  font-weight: 950;
  direction: ltr;
}

.movement-inline.up { color: #3d874a; }
.movement-inline.down { color: #ae4639; }
.movement-inline.same { color: #9aa29c; }

.hit-chip {
  padding: 2px 5px;
  color: #a03b2f;
  background: #ffebe7;
  border-radius: 6px;
  font-size: 8px;
  font-style: normal;
  font-weight: 950;
  direction: ltr;
}

.no-show-dot {
  width: 7px;
  height: 7px;
  display: inline-block;
  margin-left: 5px;
  background: #ff715d;
  border-radius: 50%;
  box-shadow: 0 0 0 4px rgba(255, 113, 93, 0.12);
}

.player-progress {
  display: grid;
  grid-template-columns: 1fr 1px 1fr;
  gap: 5px;
  align-items: center;
  color: #4a5a50;
  font-size: 10px;
  text-align: center;
  direction: ltr;
}

.player-progress b:first-child {
  color: #3c8148;
}

.player-progress b:last-child {
  color: #9b4a3e;
}

.player-progress i {
  width: 1px;
  height: 15px;
  background: #dfe4da;
}

.site-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  padding: 28px 8px 0;
  color: #879088;
  font-size: 10px;
}

.site-footer strong {
  color: #4b5a50;
  font-size: 11px;
}

.manager-dialog {
  width: min(940px, calc(100% - 24px));
  max-height: min(92vh, 940px);
  margin: auto;
  padding: 0;
  overflow: hidden;
  color: var(--ink);
  background: #f4f6ef;
  border: 1px solid rgba(255, 255, 255, 0.4);
  border-radius: 28px;
  box-shadow: 0 35px 100px rgba(3, 20, 12, 0.36);
}

.manager-dialog::backdrop {
  background: rgba(5, 23, 14, 0.72);
  backdrop-filter: blur(8px);
}

.dialog-shell {
  max-height: min(92vh, 940px);
  overflow-y: auto;
  overscroll-behavior: contain;
}

.dialog-head {
  position: sticky;
  top: 0;
  z-index: 4;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  padding: 19px 21px;
  background: rgba(255, 255, 255, 0.93);
  border-bottom: 1px solid #e1e6dc;
  backdrop-filter: blur(18px);
}

.dialog-manager {
  display: flex;
  align-items: center;
  gap: 12px;
}

.dialog-avatar {
  width: 48px;
  height: 48px;
  display: grid;
  place-items: center;
  color: #082017;
  border-radius: 15px;
  font-size: 13px;
  font-weight: 950;
}

.dialog-manager h2 {
  margin: 0;
  font-size: 22px;
}

.dialog-close {
  width: 40px;
  height: 40px;
  display: grid;
  place-items: center;
  padding: 0;
  color: #4c5a50;
  background: #f2f4ef;
  border: 1px solid #dfe4da;
  border-radius: 13px;
  font-size: 26px;
  cursor: pointer;
}

.manager-alerts {
  display: grid;
  gap: 7px;
  padding: 16px 20px 0;
}

.manager-alert {
  padding: 11px 13px;
  border-radius: 12px;
  font-size: 11px;
  line-height: 1.75;
}

.manager-alert.danger { color: #853529; background: #ffebe7; border: 1px solid #f5ccc5; }
.manager-alert.warning { color: #75500d; background: #fff4d9; border: 1px solid #f4dda8; }
.manager-alert.info { color: #075c78; background: #e9f9ff; border: 1px solid #c8ebf7; }
.manager-alert.success { color: #397849; background: #edf8eb; border: 1px solid #d0e9ce; }

.manager-metrics {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 9px;
  padding: 14px 20px;
}

.manager-metrics article {
  min-height: 83px;
  display: grid;
  place-items: center;
  align-content: center;
  gap: 5px;
  background: #fff;
  border: 1px solid #e0e5dc;
  border-radius: 16px;
  text-align: center;
}

.manager-metrics span {
  color: #89928b;
  font-size: 9px;
}

.manager-metrics b {
  color: var(--forest);
  font-size: 23px;
  font-variant-numeric: tabular-nums;
  direction: ltr;
}

.captain-strip {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 9px;
  padding: 0 20px 14px;
}

.captain-strip > div {
  display: grid;
  grid-template-columns: 29px auto 1fr;
  gap: 8px;
  align-items: center;
  padding: 11px 13px;
  background: #fff;
  border: 1px solid #e0e5dc;
  border-radius: 14px;
}

.captain-strip span:not(.captain-token) {
  color: #89928b;
  font-size: 9px;
}

.captain-strip strong {
  font-size: 12px;
  text-align: left;
}

.captain-token {
  width: 29px;
  height: 29px;
  display: grid;
  place-items: center;
  color: var(--forest);
  background: var(--lime);
  border-radius: 9px;
  font-size: 10px;
  font-weight: 950;
  direction: ltr;
}

.captain-token.vice {
  color: #fff;
  background: var(--forest);
}

.fantasy-pitch {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  margin: 0 20px;
  padding: 16px 14px 23px;
  color: #f6fff7;
  background: linear-gradient(160deg, #164e31, #0a3420);
  border: 1px solid #1e6540;
  border-radius: 24px;
}

.pitch-lines {
  position: absolute;
  z-index: -1;
  inset: 60px 7% 7%;
  opacity: 0.18;
  border: 2px solid #fff;
  background: linear-gradient(90deg, transparent 49.7%, #fff 50%, transparent 50.3%);
}

.pitch-lines::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 105px;
  height: 105px;
  border: 2px solid #fff;
  border-radius: 50%;
  transform: translate(-50%, -50%);
}

.pitch-title {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  margin-bottom: 15px;
}

.pitch-title h3 {
  margin: 0;
  font-size: 15px;
}

.pitch-title span {
  color: rgba(244, 255, 247, 0.58);
  font-size: 8px;
}

.pitch-players {
  display: grid;
  gap: 15px;
}

.pitch-row {
  display: flex;
  align-items: start;
  justify-content: center;
  gap: clamp(7px, 3vw, 28px);
}

.pitch-player {
  position: relative;
  width: min(106px, 18vw);
  min-width: 0;
  display: grid;
  justify-items: center;
  gap: 3px;
  text-align: center;
}

.shirt-shape {
  width: 42px;
  height: 47px;
  display: grid;
  place-items: center;
  color: #0c2b1c;
  background: #f7fff8;
  clip-path: polygon(24% 5%, 39% 0, 50% 8%, 61% 0, 76% 5%, 100% 23%, 83% 39%, 75% 30%, 75% 100%, 25% 100%, 25% 30%, 17% 39%, 0 23%);
  font-size: 8px;
  font-weight: 950;
}

.pitch-player.played .shirt-shape { background: var(--lime); }
.pitch-player.live .shirt-shape { background: #fff2a7; box-shadow: 0 0 0 5px rgba(255, 242, 167, 0.12); }
.pitch-player.missed .shirt-shape { color: #fff; background: #e66754; }
.pitch-player.flagged::after { content: "!"; position: absolute; top: 0; right: 12%; width: 17px; height: 17px; display: grid; place-items: center; color: #fff; background: #f05e4b; border-radius: 50%; font-size: 9px; font-weight: 950; }

.pitch-player strong {
  width: 100%;
  overflow: hidden;
  font-size: 9px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.pitch-player small {
  color: rgba(245, 255, 247, 0.68);
  font-size: 7px;
  white-space: nowrap;
}

.pitch-player small b {
  color: #fff;
  font-size: 10px;
}

.pick-badge {
  position: absolute;
  z-index: 2;
  top: -4px;
  left: 15%;
  width: 20px;
  height: 20px;
  display: grid;
  place-items: center;
  color: var(--forest);
  background: var(--lime);
  border-radius: 7px;
  font-size: 8px;
  font-weight: 950;
  direction: ltr;
}

.bench-section {
  margin: 12px 20px 0;
  padding: 15px;
  background: #fff;
  border: 1px solid #e0e5dc;
  border-radius: 19px;
}

.bench-section .pitch-title span {
  color: #8b948d;
}

.bench-players {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 7px;
}

.bench-players .pitch-player {
  width: 100%;
  padding: 9px 4px;
  color: var(--ink);
  background: #f4f6f1;
  border-radius: 13px;
}

.bench-players .pitch-player small {
  color: #7e8880;
}

.bench-players .pitch-player small b {
  color: var(--forest);
}

.dialog-actions {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 9px;
  padding: 15px 20px 22px;
}

.primary-action,
.secondary-action {
  min-height: 45px;
  padding: 10px 17px;
  border-radius: 13px;
  font-size: 11px;
  font-weight: 900;
  cursor: pointer;
}

.primary-action {
  color: var(--forest);
  background: var(--lime);
  border: 1px solid #bde934;
}

.secondary-action {
  color: #546159;
  background: #fff;
  border: 1px solid #dbe1d7;
}

@media (max-width: 760px) {
  body { font-size: 15px; }
  .brand-copy strong { font-size: 17px; }
  .team-name { font-size: 13px; }
  .score-share { padding: 6px 9px; font-size: 8px; }
  .scoreboard-foot { font-size: 9px; }
  .countdown-grid { padding: 0 14px; gap: 5px; }
  .countdown-grid div { min-height: 70px; }
  .countdown-grid b { font-size: 21px; }
  .deadline-date { margin-right: 14px; margin-left: 14px; }
  .pulse-grid { padding-right: 14px; padding-left: 14px; }
  .injuries-list { padding-right: 14px; padding-left: 14px; }
  .ranking-head,
  .ranking-row { grid-template-columns: 34px minmax(0, 1fr) 48px 55px 53px; }
  .ranking-row { padding: 0 2px; }
  .manager-copy small { line-height: 1.45; }
  .player-progress { gap: 3px; font-size: 9px; }
  .site-footer { flex-direction: column; gap: 5px; padding-bottom: 10px; }
  .manager-dialog { width: calc(100% - 12px); max-height: 96vh; border-radius: 23px; }
  .dialog-shell { max-height: 96vh; }
  .dialog-head { padding: 14px; }
  .dialog-avatar { width: 42px; height: 42px; }
  .dialog-manager h2 { font-size: 19px; }
  .manager-alerts { padding: 12px 12px 0; }
  .manager-metrics { grid-template-columns: 1fr 1fr; padding: 10px 12px; }
  .captain-strip { padding: 0 12px 10px; }
  .captain-strip > div { grid-template-columns: 26px minmax(0, 1fr); }
  .captain-strip strong { grid-column: 1 / -1; text-align: right; }
  .fantasy-pitch { margin: 0 6px; padding-right: 7px; padding-left: 7px; border-radius: 19px; }
  .pitch-players { gap: 11px; }
  .pitch-row { gap: 4px; }
  .pitch-player { width: min(77px, 21vw); }
  .shirt-shape { width: 35px; height: 39px; }
  .pitch-player strong { font-size: 8px; }
  .pitch-player small { font-size: 6.5px; }
  .pitch-player.flagged::after { right: 4%; }
  .bench-section { margin: 10px 6px 0; padding: 10px 6px; }
  .bench-players { gap: 4px; }
  .dialog-actions { padding: 12px 12px 18px; }
}

.info-actions {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px;
  padding: 0 20px 20px;
}

.install-action,
.admin-action {
  min-height: 42px;
  padding: 9px 12px;
  border-radius: 12px;
  font-size: 10px;
  font-weight: 900;
  cursor: pointer;
}

.install-action {
  color: var(--forest);
  background: var(--lime);
  border: 1px solid #bde834;
}

.admin-action {
  color: #526057;
  background: #f5f7f2;
  border: 1px solid #dfe4da;
}

.admin-dialog {
  width: min(820px, calc(100% - 24px));
  max-height: 92vh;
  margin: auto;
  padding: 0;
  overflow: hidden;
  color: var(--ink);
  background: var(--canvas);
  border: 1px solid var(--line);
  border-radius: 27px;
  box-shadow: 0 35px 100px rgba(3, 20, 12, 0.36);
}

.admin-dialog::backdrop,
.install-dialog::backdrop {
  background: rgba(5, 23, 14, 0.72);
  backdrop-filter: blur(8px);
}

.admin-shell {
  max-height: 92vh;
  overflow-y: auto;
  overscroll-behavior: contain;
}

.dialog-head > div > h2,
.admin-list-head h3 {
  margin: 0;
}

.admin-content {
  padding: 18px;
}

.admin-gate {
  max-width: 430px;
  margin: 25px auto 40px;
  padding: 23px;
  background: var(--paper);
  border: 1px solid var(--line);
  border-radius: 20px;
  text-align: center;
}

.admin-gate[hidden],
.admin-config[hidden] {
  display: none;
}

.admin-gate h3 {
  margin: 0 0 8px;
  font-size: 19px;
}

.admin-gate p {
  margin: 0 0 18px;
  color: var(--muted);
  font-size: 11px;
  line-height: 1.8;
}

.admin-gate form {
  display: grid;
  gap: 9px;
}

.admin-gate input,
.admin-team-card input,
.admin-participant input,
.admin-participant select {
  width: 100%;
  min-height: 43px;
  padding: 8px 11px;
  color: var(--ink);
  background: var(--paper);
  border: 1px solid var(--line);
  border-radius: 11px;
  outline: 0;
  font: inherit;
  font-size: 11px;
}

.admin-gate input:focus,
.admin-team-card input:focus,
.admin-participant input:focus,
.admin-participant select:focus {
  border-color: #93b94a;
  box-shadow: 0 0 0 4px rgba(201, 255, 67, 0.14);
}

.admin-team-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
}

.admin-team-card {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 80px;
  gap: 10px;
  margin: 0;
  padding: 16px;
  background: var(--paper);
  border: 1px solid var(--line);
  border-radius: 18px;
}

.admin-team-card legend {
  padding: 0 7px;
  font-size: 12px;
  font-weight: 900;
}

.admin-team-card label {
  display: grid;
  gap: 5px;
  color: var(--muted);
  font-size: 9px;
}

.admin-team-card label:first-of-type {
  grid-column: 1 / -1;
}

.admin-team-card input[type="color"] {
  padding: 4px;
}

.admin-list-head {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 15px;
  margin: 24px 2px 10px;
}

.admin-list-head > span {
  color: var(--muted);
  font-size: 9px;
}

.admin-participants {
  display: grid;
  gap: 7px;
}

.admin-participant {
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr) minmax(120px, .8fr) minmax(115px, .7fr);
  gap: 8px;
  align-items: center;
  padding: 8px;
  background: var(--paper);
  border: 1px solid var(--line);
  border-radius: 14px;
}

.admin-participant > span {
  color: var(--muted);
  font-size: 10px;
  font-weight: 900;
  text-align: center;
}

.admin-message {
  min-height: 18px;
  margin: 12px 3px;
  color: #3c7d49;
  font-size: 10px;
  text-align: center;
}

.admin-message.error {
  color: #a23e31;
}

.save-config {
  width: 100%;
}

.install-dialog {
  width: min(390px, calc(100% - 24px));
  margin: auto;
  padding: 0;
  color: var(--ink);
  background: var(--paper);
  border: 1px solid var(--line);
  border-radius: 25px;
}

.install-shell {
  position: relative;
  display: grid;
  justify-items: center;
  gap: 11px;
  padding: 30px 24px 24px;
  text-align: center;
}

.install-shell .dialog-close {
  position: absolute;
  top: 12px;
  left: 12px;
}

.install-icon {
  width: 66px;
  height: 66px;
  display: grid;
  place-items: center;
  color: var(--lime);
  background: var(--forest);
  border-radius: 20px;
  font-size: 31px;
  font-weight: 950;
}

.install-shell h2 {
  margin: 5px 0 0;
  font-size: 21px;
}

.install-shell p {
  margin: 0 0 7px;
  color: var(--muted);
  font-size: 11px;
  line-height: 1.9;
}

@media (max-width: 760px) {
  .info-actions { padding-right: 14px; padding-left: 14px; }
  .admin-dialog { width: calc(100% - 12px); max-height: 96vh; border-radius: 22px; }
  .admin-shell { max-height: 96vh; }
  .admin-content { padding: 12px; }
  .admin-team-grid { grid-template-columns: 1fr; }
  .admin-participant { grid-template-columns: 27px minmax(0, 1fr) minmax(100px, .75fr); }
  .admin-participant select { grid-column: 2 / -1; }
  .admin-list-head { align-items: start; }
  .admin-list-head > span { max-width: 130px; text-align: left; }
}

/* Final mobile-first refinements */
body {
  font-size: 16px;
  background:
    radial-gradient(circle at 92% 3%, rgba(201, 255, 67, 0.16), transparent 28rem),
    radial-gradient(circle at 5% 72%, rgba(94, 217, 255, 0.13), transparent 30rem),
    var(--canvas);
}

.ambient {
  opacity: 0.9;
  animation: ambient-drift 12s ease-in-out infinite alternate;
  will-change: transform;
}

.ambient-two {
  animation-duration: 16s;
  animation-direction: alternate-reverse;
}

@keyframes ambient-drift {
  0% { transform: translate3d(0, 0, 0) scale(0.92); }
  50% { transform: translate3d(55px, -22px, 0) scale(1.08); }
  100% { transform: translate3d(-24px, 54px, 0) scale(1); }
}

.ranking-head {
  font-size: 11px;
}

.ranking-row {
  min-height: 75px;
}

.rank-number {
  font-size: 14px;
}

.manager-copy strong {
  font-size: 15px;
}

.manager-copy small,
.player-progress {
  font-size: 11px;
}

.numeric-cell {
  font-size: 15px;
}

.numeric-cell.total {
  font-size: 18px;
}

.pulse-item.differential {
  align-content: center;
}

.differential-owners {
  width: fit-content;
  max-width: 100%;
  padding: 5px 8px;
  overflow: hidden;
  color: #702a21;
  background: rgba(255, 255, 255, 0.62);
  border-radius: 8px;
  font-weight: 900;
  line-height: 1.35;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.fantasy-pitch {
  padding: 16px 15px 25px;
  background-color: #00a862;
  background-image:
    repeating-linear-gradient(90deg, rgba(255,255,255,.055) 0, rgba(255,255,255,.055) 12.5%, rgba(0,70,35,.055) 12.5%, rgba(0,70,35,.055) 25%),
    linear-gradient(180deg, #08ad67 0%, #079555 100%);
  border-color: #46ce8a;
  border-radius: 18px;
  box-shadow: inset 0 0 45px rgba(0, 56, 28, 0.18);
}

.pitch-lines {
  inset: 57px 3.5% 3.5%;
  opacity: 0.34;
  border-width: 2px;
  border-radius: 2px;
  background: linear-gradient(180deg, transparent 49.65%, #fff 49.75%, #fff 50.25%, transparent 50.35%);
}

.pitch-lines::before {
  width: 94px;
  height: 94px;
}

.pitch-players {
  position: relative;
  z-index: 1;
  gap: 10px;
}

.pitch-row {
  min-height: 103px;
  gap: clamp(5px, 2vw, 20px);
}

.pitch-player {
  width: min(108px, 18vw);
  gap: 0;
}

.kit-wrap {
  position: relative;
  width: 74px;
  height: 66px;
  display: grid;
  place-items: end center;
}

.player-kit {
  position: relative;
  z-index: 1;
  width: 74px;
  height: auto;
  max-height: 66px;
  object-fit: contain;
  filter: drop-shadow(0 6px 4px rgba(0, 45, 23, 0.2));
}

.shirt-fallback {
  position: absolute;
  bottom: 4px;
  width: 45px;
  height: 50px;
  display: grid;
  place-items: center;
  color: #37003c;
  background: #f7fff8;
  clip-path: polygon(24% 5%, 39% 0, 50% 8%, 61% 0, 76% 5%, 100% 23%, 83% 39%, 75% 30%, 75% 100%, 25% 100%, 25% 30%, 17% 39%, 0 23%);
  font-size: 8px;
  font-weight: 950;
}

.fpl-player-tile {
  width: 100%;
  display: grid;
  overflow: hidden;
  border-radius: 4px;
  box-shadow: 0 4px 10px rgba(0, 55, 28, 0.25);
}

.fpl-player-tile strong {
  width: 100%;
  padding: 4px 3px 3px;
  overflow: hidden;
  color: #fff;
  background: #37003c;
  font-size: 10px;
  font-weight: 900;
  line-height: 1.15;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.fpl-player-tile small {
  min-height: 21px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 3px;
  padding: 3px;
  color: #37003c;
  background: rgba(255, 255, 255, 0.96);
  font-size: 8px;
  font-weight: 800;
}

.fpl-player-tile small b {
  color: #37003c;
  font-size: 11px;
}

.player-status-line {
  min-height: 15px;
  padding-top: 3px;
  color: rgba(255, 255, 255, 0.82);
  font-size: 7px;
  font-weight: 850;
  white-space: nowrap;
}

.pitch-player.live .player-status-line { color: #fff38f; }
.pitch-player.missed .player-status-line { color: #ffd0c9; }
.pitch-player.flagged::after { top: 9px; right: 9%; }

.pick-badge {
  top: 8px;
  left: 10%;
  width: 24px;
  height: 24px;
  color: #fff;
  background: #37003c;
  border: 2px solid #fff;
  border-radius: 50%;
  font-size: 9px;
  box-shadow: 0 3px 8px rgba(0,0,0,.2);
}

.bench-section {
  border-top: 4px solid #00a862;
}

.bench-players .pitch-player {
  padding: 7px 4px 9px;
}

.bench-players .kit-wrap {
  width: 58px;
  height: 52px;
}

.bench-players .player-kit {
  width: 58px;
  max-height: 52px;
}

.bench-players .fpl-player-tile strong {
  font-size: 9px;
}

.bench-players .player-status-line {
  color: #748078;
}

.install-action {
  min-height: 48px;
  font-size: 13px;
}

.install-action span {
  margin-left: 3px;
  font-size: 17px;
}

.install-dialog {
  width: min(440px, calc(100% - 18px));
  overflow: hidden;
  color: #fff;
  background: #081b13;
  border: 1px solid rgba(201, 255, 67, 0.2);
  border-radius: 28px;
  box-shadow: 0 35px 90px rgba(0, 16, 9, 0.54);
}

.install-shell {
  display: block;
  padding: 25px 20px 20px;
  text-align: right;
}

.install-shell .dialog-close {
  color: #dce8df;
  background: rgba(255,255,255,.08);
  border-color: rgba(255,255,255,.13);
}

.install-hero {
  display: flex;
  align-items: center;
  gap: 13px;
  padding-left: 45px;
}

.install-icon {
  width: 64px;
  height: 64px;
  flex: 0 0 auto;
  color: #102019;
  background: linear-gradient(145deg, #d8ff73, #a9ed21);
  border-radius: 18px;
  box-shadow: 0 12px 28px rgba(201,255,67,.18);
}

.install-hero > div {
  display: grid;
  gap: 2px;
}

.install-hero span:not(.install-icon) {
  color: #98a89e;
  font-size: 11px;
  font-weight: 800;
}

.install-hero h2 {
  margin: 0;
  color: #fff;
  font-size: 22px;
}

.install-intro {
  margin: 13px 0 16px;
  color: #aebcb3;
  font-size: 12px;
  line-height: 1.8;
}

.install-browser-tabs {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 5px;
  margin-bottom: 10px;
  padding: 4px;
  background: rgba(255,255,255,.07);
  border-radius: 13px;
  direction: ltr;
}

.install-browser-tab {
  min-height: 36px;
  color: #9aaba0;
  background: transparent;
  border: 0;
  border-radius: 10px;
  font-size: 12px;
  font-weight: 900;
  cursor: pointer;
}

.install-browser-tab.active {
  color: #122019;
  background: var(--lime);
}

.browser-demo {
  position: relative;
  min-height: 145px;
  overflow: hidden;
  color: #17221b;
  background: #f5f6f3;
  border: 1px solid rgba(255,255,255,.18);
  border-radius: 17px;
  direction: ltr;
}

.browser-address {
  min-height: 52px;
  display: grid;
  grid-template-columns: 32px 1fr 32px;
  align-items: center;
  gap: 6px;
  margin: 9px;
  padding: 0 10px;
  background: #e7eae5;
  border-radius: 12px;
  font-size: 11px;
  text-align: center;
}

.browser-address b {
  font-size: 11px;
}

.browser-toolbar {
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  min-height: 48px;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  align-items: center;
  color: #305141;
  background: #fff;
  border-top: 1px solid #dce2dc;
  font-size: 22px;
  text-align: center;
}

.browser-share {
  width: 34px;
  height: 34px;
  display: grid;
  place-items: center;
  color: #0b6c42;
  background: #e7f8ef;
  border: 2px solid #72d39e;
  border-radius: 10px;
  font-size: 16px;
  font-weight: 950;
  box-shadow: 0 0 0 6px rgba(114,211,158,.16);
}

.safari-share {
  position: absolute;
  right: 13px;
}

.chrome-share {
  position: absolute;
  top: -91px;
  right: 13px;
  display: none;
}

.install-dialog[data-browser="chrome"] .safari-share { display: none; }
.install-dialog[data-browser="chrome"] .chrome-share { display: grid; }

.share-pointer {
  position: absolute;
  right: 10px;
  bottom: 57px;
  display: grid;
  justify-items: end;
  gap: 3px;
  animation: share-nudge 1.2s ease-in-out infinite;
}

.install-dialog[data-browser="chrome"] .share-pointer {
  top: 55px;
  bottom: auto;
}

.share-pointer i {
  width: 2px;
  height: 22px;
  margin-left: 16px;
  background: #0b6c42;
}

.share-pointer i::after {
  content: "";
  display: block;
  width: 8px;
  height: 8px;
  border-top: 2px solid #0b6c42;
  border-right: 2px solid #0b6c42;
  transform: translate(-3px, -1px) rotate(-45deg);
}

.share-pointer b {
  padding: 4px 7px;
  color: #fff;
  background: #0b6c42;
  border-radius: 7px;
  font-size: 9px;
}

@keyframes share-nudge {
  50% { transform: translateY(-5px); }
}

.install-steps {
  display: grid;
  gap: 8px;
  margin: 13px 0 15px;
  padding: 0;
  list-style: none;
}

.install-steps li {
  display: grid;
  grid-template-columns: 30px 1fr;
  gap: 9px;
  align-items: center;
  color: #c1cec5;
  font-size: 11px;
  line-height: 1.6;
}

.install-steps li b {
  width: 28px;
  height: 28px;
  display: grid;
  place-items: center;
  color: var(--forest);
  background: var(--lime);
  border-radius: 9px;
  font-size: 11px;
  direction: ltr;
}

.install-dialog-actions {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 8px;
}

.install-dialog-actions .primary-action,
.install-dialog-actions .secondary-action {
  min-height: 48px;
  font-size: 13px;
}

.install-dialog-actions .secondary-action {
  color: #d3dfd6;
  background: rgba(255,255,255,.07);
  border-color: rgba(255,255,255,.13);
}

.admin-gate input,
.admin-team-card input,
.admin-participant input,
.admin-participant select {
  font-size: 14px;
}

@media (max-width: 760px) {
  body {
    font-size: 16px;
    background:
      radial-gradient(circle at 94% 1%, rgba(201, 255, 67, 0.13), transparent 18rem),
      radial-gradient(circle at 4% 80%, rgba(94, 217, 255, 0.11), transparent 21rem),
      var(--canvas);
  }

  .ambient {
    display: block;
    width: 310px;
    height: 310px;
    opacity: .75;
    filter: blur(18px);
  }

  .ranking-head,
  .ranking-row {
    grid-template-columns: 34px minmax(98px, 1fr) 45px 52px 47px;
    gap: 4px;
  }

  .ranking-head {
    min-height: 42px;
    padding: 0 7px;
    font-size: 9px;
    line-height: 1.25;
  }

  .ranking-list {
    padding-right: 7px;
    padding-left: 7px;
  }

  .ranking-row {
    min-height: 72px;
  }

  .rank-number {
    width: 30px;
    height: 30px;
    font-size: 12px;
  }

  .avatar {
    width: 34px;
    height: 34px;
    font-size: 10px;
  }

  .manager-cell {
    gap: 6px;
  }

  .manager-copy strong {
    font-size: 13px;
  }

  .manager-copy small {
    font-size: 9px;
    line-height: 1.35;
  }

  .numeric-cell {
    font-size: 12px;
  }

  .numeric-cell.total {
    font-size: 14px;
  }

  .player-progress {
    gap: 3px;
    font-size: 10px;
  }

  .fantasy-pitch {
    margin: 0 3px;
    padding: 14px 5px 18px;
    border-radius: 15px;
  }

  .pitch-lines {
    inset: 53px 2.5% 2.5%;
  }

  .pitch-title {
    padding: 0 7px;
  }

  .pitch-title h3 {
    font-size: 16px;
  }

  .pitch-title span {
    font-size: 9px;
  }

  .pitch-players {
    gap: 7px;
  }

  .pitch-row {
    min-height: 86px;
    gap: 3px;
  }

  .pitch-player {
    width: min(65px, 18vw);
  }

  .kit-wrap {
    width: 50px;
    height: 45px;
  }

  .player-kit {
    width: 50px;
    max-height: 45px;
  }

  .shirt-fallback {
    width: 34px;
    height: 39px;
  }

  .fpl-player-tile strong {
    padding: 3px 2px;
    font-size: 8px;
  }

  .fpl-player-tile small {
    min-height: 18px;
    padding: 2px;
    font-size: 7px;
  }

  .fpl-player-tile small b {
    font-size: 9px;
  }

  .player-status-line {
    font-size: 6px;
  }

  .pick-badge {
    top: 4px;
    left: 2%;
    width: 21px;
    height: 21px;
    font-size: 8px;
  }

  .pitch-player.flagged::after {
    top: 5px;
    right: 1%;
  }

  .bench-section {
    margin: 10px 3px 0;
    padding: 10px 4px;
  }

  .bench-players {
    gap: 3px;
  }

  .bench-players .kit-wrap {
    width: 46px;
    height: 42px;
  }

  .bench-players .player-kit {
    width: 46px;
    max-height: 42px;
  }

  .bench-players .fpl-player-tile strong {
    font-size: 7.5px;
  }

  .install-shell {
    padding: 22px 15px 16px;
  }

  .install-hero h2 {
    font-size: 20px;
  }

  .install-intro {
    font-size: 11px;
  }

  .admin-gate input,
  .admin-team-card input,
  .admin-participant input,
  .admin-participant select {
    font-size: 16px;
  }
}

@media (max-width: 380px) {
  .ranking-head,
  .ranking-row {
    grid-template-columns: 31px minmax(91px, 1fr) 42px 48px 43px;
    gap: 3px;
  }

  .avatar {
    width: 31px;
    height: 31px;
  }

  .manager-copy strong { font-size: 12px; }
  .manager-copy small { font-size: 8px; }
  .numeric-cell { font-size: 11px; }
  .numeric-cell.total { font-size: 13px; }
  .player-progress { font-size: 9px; }
}

/* League identity, live insights and admin controls */
.league-logo-banner {
  min-height: 122px;
  display: grid;
  place-items: center;
  padding: 22px 20px 4px;
}

.league-logo-banner img {
  display: block;
  width: min(760px, 92%);
  max-width: 100%;
  height: auto;
  max-height: 128px;
  margin: 0 auto;
  object-fit: contain;
  filter: drop-shadow(0 12px 24px rgba(55, 0, 60, 0.09));
}

.brand-mark {
  overflow: hidden;
  padding: 2px;
  background: linear-gradient(145deg, #37003c, #210126);
  transform: none;
}

.brand-mark img,
.install-icon img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.bench-total {
  padding: 8px 11px;
  color: #73500e;
  background: #fff4d9;
  border: 1px solid #f1dda9;
  border-radius: 999px;
  font-size: 10px;
  font-weight: 850;
}

.bench-total b {
  color: #5d3b00;
  font-size: 14px;
}

.bench-waste-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
  padding: 0 22px 22px;
}

.bench-waste-row {
  width: 100%;
  min-width: 0;
  min-height: 58px;
  display: grid;
  grid-template-columns: 32px minmax(0, 1fr) auto;
  gap: 9px;
  align-items: center;
  padding: 9px 10px;
  color: inherit;
  background: #fafbf8;
  border: 1px solid #e8ece4;
  border-radius: 14px;
  text-align: right;
  cursor: pointer;
}

.bench-waste-row:hover {
  background: #fffdf6;
  border-color: #e7d39d;
}

.bench-waste-rank {
  width: 30px;
  height: 30px;
  display: grid;
  place-items: center;
  color: #7f6940;
  background: #f3ecdd;
  border-radius: 9px;
  font-size: 11px;
  font-weight: 950;
}

.bench-waste-person {
  min-width: 0;
  display: grid;
  gap: 2px;
}

.bench-waste-person strong {
  overflow: hidden;
  font-size: 13px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.bench-waste-person small {
  color: #8a938c;
  font-size: 9px;
}

.bench-waste-points {
  min-width: 48px;
  display: grid;
  justify-items: center;
  color: #8a4e0d;
  font-size: 9px;
}

.bench-waste-points b {
  color: #7b4208;
  font-size: 20px;
  line-height: 1;
}

.deadline-reminder {
  width: calc(100% - 40px);
  min-height: 45px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  margin: 0 20px 20px;
  padding: 9px 12px;
  color: var(--forest);
  background: var(--lime);
  border: 1px solid #bce934;
  border-radius: 13px;
  font-size: 11px;
  font-weight: 950;
  cursor: pointer;
}

.deadline-reminder:disabled {
  color: #879088;
  background: #f1f3ee;
  border-color: #e0e4dc;
  cursor: not-allowed;
}

.reminder-feedback {
  margin: -10px 20px 18px;
  color: #55715f;
  font-size: 10px;
  font-weight: 750;
  line-height: 1.7;
  text-align: center;
}

.danger-card {
  overflow: visible;
}

.danger-head {
  align-items: center;
}

.danger-live-mark {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 6px 9px;
  color: #9f382c;
  background: #ffebe7;
  border-radius: 999px;
  font-size: 9px;
  font-weight: 950;
}

.danger-live-mark i {
  width: 7px;
  height: 7px;
  background: #f25a47;
  border-radius: 50%;
  box-shadow: 0 0 0 4px rgba(242, 90, 71, 0.13);
  animation: danger-pulse 1.4s ease-in-out infinite;
}

@keyframes danger-pulse {
  50% { opacity: .45; transform: scale(.8); }
}

.danger-manager-label {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 10px;
  align-items: center;
  margin: 0 20px 12px;
  color: #6d776f;
  font-size: 10px;
  font-weight: 850;
}

.danger-manager-label select {
  min-width: 0;
  height: 42px;
  padding: 0 12px;
  color: var(--ink);
  background: #f7f8f5;
  border: 1px solid #dfe4da;
  border-radius: 12px;
  font-size: 13px;
  font-weight: 850;
}

.danger-result {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 12px;
  align-items: center;
  margin: 0 20px;
  padding: 16px;
  color: #fff;
  background: linear-gradient(135deg, #2c0d18, #5c1722 56%, #821f26);
  border-radius: 18px;
  box-shadow: 0 14px 30px rgba(73, 17, 27, 0.16);
}

.danger-player {
  min-width: 0;
  display: grid;
  gap: 4px;
}

.danger-player > span {
  color: #f5a7a9;
  font-size: 9px;
  font-weight: 850;
}

.danger-player strong {
  overflow: hidden;
  font-size: 23px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.danger-player small {
  overflow: hidden;
  color: #eabfc1;
  font-size: 9px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.danger-impact {
  min-width: 70px;
  display: grid;
  justify-items: center;
  padding-right: 12px;
  border-right: 1px solid rgba(255,255,255,.16);
}

.danger-impact b {
  color: #ffda5d;
  font-size: 30px;
  line-height: 1;
}

.danger-impact span {
  margin-top: 4px;
  color: #eabfc1;
  font-size: 8px;
  font-weight: 800;
}

.danger-meter {
  height: 8px;
  margin: 14px 20px 8px;
  overflow: hidden;
  background: #f0e5e4;
  border-radius: 999px;
  direction: ltr;
}

.danger-meter i {
  width: 0;
  height: 100%;
  display: block;
  background: linear-gradient(90deg, #f4c94e, #f0624f, #b91f31);
  border-radius: inherit;
  transition: width .35s ease;
}

.danger-foot {
  display: flex;
  justify-content: space-between;
  gap: 10px;
  padding: 0 20px 20px;
  color: #7c8680;
  font-size: 9px;
}

.danger-foot strong {
  color: #a33f32;
}

.site-footer {
  align-items: stretch;
}

.footer-box {
  min-height: 42px;
  display: inline-flex;
  align-items: center;
  padding: 10px 14px;
  background: rgba(255, 255, 255, .82);
  border: 1px solid #dfe4da;
  border-radius: 13px;
  box-shadow: 0 8px 22px rgba(17, 35, 25, .05);
}

.site-footer .developer-credit {
  color: #37003c;
  background: linear-gradient(135deg, #fff, #faf5fb);
  border-color: #e4d4e6;
}

.manager-metrics {
  grid-template-columns: repeat(5, 1fr);
}

.install-icon {
  overflow: hidden;
  padding: 4px;
  background: linear-gradient(145deg, #37003c, #210126);
}

.admin-list-actions {
  display: flex;
  align-items: center;
  gap: 10px;
}

.admin-list-actions > span {
  color: var(--muted);
  font-size: 9px;
}

#addParticipantButton {
  min-height: 36px;
  padding: 7px 12px;
  color: var(--forest);
  background: var(--lime);
  border: 1px solid #bce934;
  border-radius: 10px;
  font-size: 10px;
  font-weight: 950;
  cursor: pointer;
  white-space: nowrap;
}

.admin-participant {
  grid-template-columns: 34px minmax(0, 1fr) minmax(120px, .8fr) minmax(115px, .7fr) 38px;
}

.delete-participant {
  width: 36px;
  height: 36px;
  display: grid;
  place-items: center;
  padding: 0;
  color: #a33f32;
  background: #ffebe7;
  border: 1px solid #f1cec7;
  border-radius: 10px;
  font-size: 18px;
  line-height: 1;
  cursor: pointer;
}

@media (max-width: 760px) {
  .league-logo-banner {
    min-height: 76px;
    padding: 10px 0 2px;
  }

  .league-logo-banner img {
    width: 92%;
    max-height: 72px;
  }

  .bench-waste-list {
    grid-template-columns: 1fr;
    gap: 7px;
    padding: 0 12px 16px;
  }

  .bench-waste-row {
    min-height: 62px;
  }

  .deadline-reminder {
    width: calc(100% - 28px);
    margin-right: 14px;
    margin-left: 14px;
    font-size: 12px;
  }

  .reminder-feedback {
    margin-right: 14px;
    margin-left: 14px;
  }

  .danger-manager-label,
  .danger-result,
  .danger-meter {
    margin-right: 14px;
    margin-left: 14px;
  }

  .danger-foot {
    padding-right: 14px;
    padding-left: 14px;
  }

  .danger-player strong {
    font-size: 21px;
  }

  .site-footer {
    display: grid;
    grid-template-columns: 1fr;
    gap: 8px;
    padding-right: 0;
    padding-left: 0;
  }

  .footer-box {
    width: 100%;
    justify-content: center;
  }

  .manager-metrics {
    grid-template-columns: 1fr 1fr;
  }

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

  .admin-list-actions {
    justify-content: space-between;
  }

  .admin-list-actions > span {
    max-width: 150px;
  }

  .admin-participant {
    grid-template-columns: 27px minmax(0, 1fr) 38px;
    padding: 9px 8px;
  }

  .admin-participant > span { grid-column: 1; grid-row: 1; }
  .admin-participant .admin-name { grid-column: 2; grid-row: 1; }
  .admin-participant .delete-participant { grid-column: 3; grid-row: 1; }
  .admin-participant .admin-id,
  .admin-participant .admin-team { grid-column: 2 / -1; }
}

@media (prefers-reduced-motion: reduce) {
  .ambient,
  .share-pointer,
  .danger-live-mark i {
    animation: none;
  }
}

/* Three-view mobile-first information architecture */
[hidden] {
  display: none !important;
}

body {
  font-family: "SF Arabic", "IBM Plex Sans Arabic", system-ui, -apple-system, "Segoe UI", Tahoma, Arial, sans-serif;
}

.app-shell {
  position: relative;
  z-index: 1;
  padding-bottom: 116px;
}

.ambient {
  z-index: 0;
  opacity: .46;
  filter: blur(26px);
  will-change: transform;
  animation: ambient-gentle 32s ease-in-out infinite alternate;
}

.ambient-two {
  animation-duration: 41s;
}

@keyframes ambient-gentle {
  0% { transform: translate3d(0, 0, 0) scale(.94); }
  50% { transform: translate3d(24px, -14px, 0) scale(1.03); }
  100% { transform: translate3d(-16px, 22px, 0) scale(.98); }
}

.site-views {
  width: min(1120px, 100%);
  margin: 20px auto 0;
}

.view-panel {
  animation: view-enter .22s ease-out both;
}

@keyframes view-enter {
  from { opacity: .35; transform: translateY(5px); }
  to { opacity: 1; transform: translateY(0); }
}

.home-stack,
.ranking-view,
.my-team-view {
  width: min(900px, 100%);
  margin: 0 auto;
}

.home-stack,
.ranking-view,
.my-team-view,
.numbers-grid {
  display: grid;
  gap: 14px;
}

.view-heading {
  width: min(900px, 100%);
  margin: 0 auto 14px;
  padding: 5px 4px;
}

.view-heading span {
  color: #728079;
  font-size: 12px;
  font-weight: 800;
}

.view-heading h1 {
  margin: 2px 0 0;
  color: var(--forest);
  font-size: clamp(28px, 4vw, 38px);
  line-height: 1.2;
}

.my-team-chooser {
  padding: 20px;
}

.my-team-note {
  margin: 2px 0 16px;
  color: #6f7c74;
  font-size: 12px;
  line-height: 1.8;
}

.my-team-options {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 9px;
}

.my-team-option {
  min-height: 68px;
  display: grid;
  grid-template-columns: 38px minmax(0, 1fr) auto;
  gap: 10px;
  align-items: center;
  padding: 10px 11px;
  color: var(--ink);
  background: #fafbf8;
  border: 1px solid #e2e7de;
  border-radius: 15px;
  text-align: right;
  cursor: pointer;
}

.my-team-option:hover,
.my-team-option:focus-visible {
  background: #f4f9e8;
  border-color: #c7dc87;
}

.my-team-option-rank {
  width: 36px;
  height: 36px;
  display: grid;
  place-items: center;
  color: var(--forest);
  background: #edf1e9;
  border-radius: 11px;
  font-size: 13px;
  font-weight: 950;
}

.my-team-option-copy {
  min-width: 0;
  display: grid;
  gap: 2px;
}

.my-team-option-copy strong {
  overflow: hidden;
  font-size: 17px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.my-team-option-copy small {
  color: #818d85;
  font-size: 10px;
}

.my-team-option-action {
  color: #52700e;
  font-size: 10px;
  font-weight: 950;
}

.my-team-card {
  padding-bottom: 20px;
  background: #f4f6ef;
}

.my-team-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  padding: 18px 20px;
  background: #fff;
  border-bottom: 1px solid #e1e6dc;
}

.my-team-head h2 {
  margin: 2px 0 0;
  color: var(--forest);
  font-size: 25px;
}

.my-team-change {
  min-height: 40px;
  padding: 8px 13px;
  color: var(--forest);
  background: #eef3e9;
  border: 1px solid #dce5d5;
  border-radius: 12px;
  font-size: 11px;
  font-weight: 900;
  cursor: pointer;
  white-space: nowrap;
}

.home-leader-card {
  min-height: 118px;
  display: grid;
  grid-template-columns: 58px minmax(0, 1fr) auto;
  gap: 16px;
  align-items: center;
  padding: 20px 22px;
  color: #f8fff8;
  background: linear-gradient(135deg, #0a281b, #123d29 62%, #195035);
  border: 1px solid rgba(255,255,255,.08);
  border-radius: 24px;
  box-shadow: 0 16px 38px rgba(8, 38, 25, .16);
}

.leader-position {
  width: 54px;
  height: 58px;
  display: grid;
  place-items: center;
  color: #23330b;
  background: var(--lime);
  border-radius: 17px;
  font-size: 16px;
  font-weight: 950;
  direction: ltr;
}

.leader-copy {
  min-width: 0;
  display: grid;
  gap: 3px;
}

.leader-copy > span,
.leader-copy small {
  color: rgba(237, 248, 240, .62);
  font-size: 11px;
  font-weight: 750;
}

.leader-copy strong {
  overflow: hidden;
  font-size: 24px;
  line-height: 1.25;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.leader-total {
  min-width: 92px;
  display: grid;
  justify-items: center;
  padding-right: 17px;
  border-right: 1px solid rgba(255,255,255,.13);
}

.leader-total b {
  color: var(--lime);
  font-size: 36px;
  line-height: 1;
  font-variant-numeric: tabular-nums;
}

.leader-total span {
  margin-top: 4px;
  color: rgba(237, 248, 240, .56);
  font-size: 10px;
  font-weight: 800;
}

.today-head {
  align-items: center;
}

.match-count {
  padding: 7px 11px;
  color: #476054;
  background: #eef4ec;
  border-radius: 999px;
  font-size: 10px;
  font-weight: 850;
}

.match-count b {
  color: var(--forest);
  font-size: 15px;
}

.today-matches {
  display: grid;
  gap: 8px;
  padding: 0 20px 20px;
}

.today-match-row {
  min-height: 68px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 98px minmax(0, 1fr);
  gap: 12px;
  align-items: center;
  padding: 10px 14px;
  background: #f8faf6;
  border: 1px solid #e7ece4;
  border-radius: 16px;
}

.today-match-row > strong {
  font-size: 15px;
  line-height: 1.45;
}

.today-match-row > strong:last-child {
  text-align: left;
}

.today-match-center {
  display: grid;
  justify-items: center;
  gap: 2px;
  direction: ltr;
}

.today-score,
.today-time {
  color: var(--forest);
  font-size: 24px;
  line-height: 1;
  font-variant-numeric: tabular-nums;
}

.today-time {
  font-size: 17px;
}

.today-status {
  color: #7f8982;
  font-size: 9px;
  font-weight: 850;
}

.today-status.live {
  color: #b43f31;
}

.today-empty {
  background: #f8faf6;
  border-radius: 15px;
}

.section-disclosure {
  overflow: hidden;
  background: rgba(255,255,255,.82);
  border: 1px solid #dde3d9;
  border-radius: 20px;
  box-shadow: 0 10px 28px rgba(17,35,25,.04);
}

.section-disclosure > summary {
  min-height: 72px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 14px 18px;
  list-style: none;
  cursor: pointer;
}

.section-disclosure > summary::-webkit-details-marker,
.market-details > summary::-webkit-details-marker {
  display: none;
}

.section-disclosure > summary > span {
  display: grid;
  gap: 3px;
}

.section-disclosure > summary b {
  color: var(--forest);
  font-size: 17px;
}

.section-disclosure > summary small {
  color: #7d8881;
  font-size: 11px;
}

.section-disclosure > summary i {
  width: 34px;
  height: 34px;
  display: grid;
  place-items: center;
  color: #607067;
  background: #eef2eb;
  border-radius: 11px;
  font-size: 18px;
  font-style: normal;
  transition: transform .2s ease;
}

.section-disclosure[open] > summary i {
  transform: rotate(180deg);
}

.nested-card {
  margin: 0 10px 10px;
  border-radius: 17px;
  box-shadow: none;
}

.disclosure-content {
  display: grid;
  gap: 10px;
  padding: 0 10px 10px;
}

.disclosure-content .nested-card {
  margin: 0;
}

.compact-spotlights {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.numbers-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.wide-number-card {
  grid-column: 1 / -1;
}

.number-disclosure > summary small strong {
  color: var(--forest);
  font-size: 13px;
  font-weight: 950;
  font-variant-numeric: tabular-nums;
}

.number-disclosure > .nested-card {
  overflow: hidden;
}

.transfer-market-card {
  overflow: hidden;
}

.market-leader {
  display: grid;
  grid-template-columns: 46px minmax(0, 1fr) auto;
  gap: 12px;
  align-items: center;
  margin: 0 20px 15px;
  padding: 15px;
  color: #f7fff8;
  background: linear-gradient(135deg, #0d3423, #18553a);
  border-radius: 18px;
}

.market-icon {
  width: 43px;
  height: 43px;
  display: grid;
  place-items: center;
  color: #24330d;
  background: var(--lime);
  border-radius: 13px;
  font-size: 20px;
  font-weight: 950;
}

.market-leader > div {
  min-width: 0;
  display: grid;
  gap: 2px;
}

.market-leader > div > span,
.market-leader small {
  overflow: hidden;
  color: rgba(245,255,247,.62);
  font-size: 9px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.market-leader strong {
  overflow: hidden;
  font-size: 22px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.market-leader > b {
  min-width: 38px;
  color: var(--lime);
  font-size: 31px;
  text-align: center;
}

.market-details {
  border-top: 1px solid #e8ece5;
}

.market-details > summary {
  min-height: 54px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 0 20px;
  color: #54645b;
  list-style: none;
  font-size: 12px;
  font-weight: 850;
  cursor: pointer;
}

.market-details > summary b {
  min-width: 29px;
  height: 29px;
  display: grid;
  place-items: center;
  color: var(--forest);
  background: #edf3e9;
  border-radius: 9px;
  font-size: 13px;
}

.transfer-market-list {
  display: grid;
  gap: 8px;
  padding: 0 14px 15px;
}

.transfer-row {
  display: grid;
  gap: 8px;
  padding: 13px;
  background: #fafbf8;
  border: 1px solid #e7ebe4;
  border-radius: 14px;
}

.transfer-row header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}

.transfer-row header strong {
  font-size: 15px;
}

.transfer-row header > span {
  display: flex;
  align-items: center;
  gap: 4px;
  color: #7b867f;
  font-size: 9px;
}

.transfer-row header em {
  padding: 3px 5px;
  color: #4b6727;
  background: #eaf5d4;
  border-radius: 6px;
  font-size: 8px;
  font-style: normal;
  font-weight: 900;
}

.transfer-row header em.market-hit {
  color: #9c3a2f;
  background: #ffebe7;
}

.transfer-line {
  display: grid;
  grid-template-columns: 45px minmax(0, 1fr);
  gap: 8px;
  align-items: start;
}

.transfer-line > b {
  padding: 4px 6px;
  border-radius: 7px;
  font-size: 9px;
  text-align: center;
}

.transfer-line.bought > b {
  color: #2c743d;
  background: #e7f6e8;
}

.transfer-line.sold > b {
  color: #a33f32;
  background: #ffebe7;
}

.transfer-line > span {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
  color: #5d6861;
  font-size: 11px;
  line-height: 1.7;
}

.transfer-line > span > span {
  padding: 2px 7px;
  background: #f0f3ed;
  border-radius: 7px;
}

.manager-copy strong {
  font-size: 16px;
}

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

.numeric-cell {
  font-size: 15px;
}

.numeric-cell.total {
  font-size: 20px;
}

.bench-waste-person strong,
.injury-row strong {
  font-size: 15px;
}

.pulse-item strong {
  font-size: 21px;
}

.info-grid dd {
  font-size: 26px;
}

.mobile-nav {
  position: fixed;
  z-index: 50;
  right: auto;
  bottom: calc(10px + env(safe-area-inset-bottom));
  left: 50%;
  width: min(520px, calc(100% - 20px));
  min-height: 70px;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  padding: 6px;
  background: rgba(8, 30, 20, .96);
  border: 1px solid rgba(255,255,255,.1);
  border-radius: 21px;
  box-shadow: 0 18px 42px rgba(6,27,17,.3);
  transform: translateX(-50%);
  backdrop-filter: blur(18px);
  -webkit-backdrop-filter: blur(18px);
}

.mobile-nav-button {
  min-height: 56px;
  display: grid;
  place-items: center;
  align-content: center;
  gap: 3px;
  padding: 5px;
  color: rgba(237,249,240,.55);
  background: transparent;
  border: 0;
  border-radius: 15px;
  cursor: pointer;
}

.mobile-nav-button span {
  height: 22px;
  display: grid;
  place-items: center;
  font-size: 18px;
  font-weight: 950;
  direction: ltr;
}

.mobile-nav-button b {
  font-size: 11px;
}

.mobile-nav-button.active {
  color: var(--lime);
  background: rgba(201,255,67,.1);
}

@media (max-width: 760px) {
  .ambient {
    display: block;
    width: 270px;
    height: 270px;
    opacity: .28;
    filter: blur(30px);
    animation-duration: 38s;
  }

  .ambient-one { top: -150px; right: -145px; }
  .ambient-two { bottom: 12%; left: -170px; animation-duration: 47s; }

  .site-views {
    margin-top: 10px;
  }

  .view-heading {
    margin-bottom: 8px;
    padding: 2px 4px;
  }

  .view-heading span {
    font-size: 11px;
  }

  .view-heading h1 {
    font-size: 28px;
  }

  .home-stack,
  .ranking-view,
  .my-team-view,
  .numbers-grid {
    gap: 11px;
  }

  .my-team-chooser {
    padding: 15px 13px;
  }

  .my-team-options {
    grid-template-columns: 1fr;
    gap: 7px;
  }

  .my-team-option {
    min-height: 64px;
  }

  .my-team-head {
    padding: 15px 14px;
  }

  .my-team-head h2 {
    font-size: 22px;
  }

  .home-leader-card {
    min-height: 103px;
    grid-template-columns: 47px minmax(0, 1fr) auto;
    gap: 11px;
    padding: 15px 14px;
    border-radius: 21px;
  }

  .leader-position {
    width: 45px;
    height: 49px;
    border-radius: 14px;
    font-size: 13px;
  }

  .leader-copy > span,
  .leader-copy small {
    font-size: 9px;
  }

  .leader-copy strong {
    font-size: 19px;
  }

  .leader-total {
    min-width: 70px;
    padding-right: 11px;
  }

  .leader-total b {
    font-size: 30px;
  }

  .today-matches {
    padding: 0 12px 14px;
  }

  .today-match-row {
    min-height: 66px;
    grid-template-columns: minmax(0, 1fr) 74px minmax(0, 1fr);
    gap: 6px;
    padding: 9px;
  }

  .today-match-row > strong {
    font-size: 13px;
  }

  .today-score {
    font-size: 21px;
  }

  .today-time {
    font-size: 14px;
  }

  .section-head h2,
  .compact-head h2 {
    font-size: 20px;
  }

  .section-disclosure > summary {
    min-height: 68px;
    padding: 12px 14px;
  }

  .section-disclosure > summary b {
    font-size: 16px;
  }

  .section-disclosure > summary small {
    font-size: 10px;
  }

  .compact-spotlights {
    display: grid;
    grid-template-columns: 1fr;
    overflow: visible;
  }

  .compact-spotlights .spotlight {
    width: 100%;
    min-width: 0;
  }

  .numbers-grid {
    grid-template-columns: 1fr;
  }

  .wide-number-card {
    grid-column: auto;
  }

  .market-leader {
    margin: 0 14px 13px;
    padding: 13px;
  }

  .market-leader strong {
    font-size: 20px;
  }

  .transfer-row header strong {
    font-size: 16px;
  }

  .ranking-head {
    display: none;
  }

  .ranking-list {
    display: grid;
    gap: 8px;
    padding: 8px 10px 12px;
  }

  .ranking-row {
    min-height: 86px;
    grid-template-columns: 42px minmax(0, 1fr) 74px;
    grid-template-rows: auto auto;
    grid-template-areas: "rank manager total" "rank round progress";
    gap: 6px 10px;
    padding: 11px 9px;
    background: #fafbf8;
    border: 1px solid #e7ebe4;
    border-radius: 15px;
  }

  .ranking-row:last-child {
    border-bottom: 1px solid #e7ebe4;
  }

  .rank-cell { grid-area: rank; }
  .manager-cell { grid-area: manager; }
  .ranking-row > .numeric-cell:not(.total) { grid-area: round; }
  .ranking-row > .numeric-cell.total { grid-area: total; }
  .player-progress { grid-area: progress; }

  .rank-number {
    width: 36px;
    height: 36px;
    font-size: 14px;
  }

  .manager-copy strong {
    font-size: 17px;
  }

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

  .ranking-row > .numeric-cell:not(.total) {
    display: flex;
    align-items: center;
    gap: 4px;
    font-size: 14px;
    text-align: right;
  }

  .ranking-row > .numeric-cell:not(.total)::before {
    content: "الجولة";
    color: #8b958e;
    font-size: 9px;
    font-weight: 750;
  }

  .ranking-row > .numeric-cell.total {
    display: grid;
    justify-items: center;
    font-size: 24px;
    line-height: 1;
  }

  .ranking-row > .numeric-cell.total::after {
    content: "نقطة";
    margin-top: 3px;
    color: #8b958e;
    font-size: 8px;
    font-weight: 750;
  }

  .player-progress {
    font-size: 11px;
  }

  .bench-waste-person strong,
  .injury-row strong {
    font-size: 16px;
  }

  .bench-waste-points b {
    font-size: 24px;
  }

  .pulse-item strong {
    font-size: 22px;
  }

  .danger-player strong {
    font-size: 24px;
  }

  .danger-impact b {
    font-size: 34px;
  }

  .info-grid dd {
    font-size: 28px;
  }

  .mobile-nav {
    right: auto;
    left: 50%;
    grid-template-columns: repeat(4, 1fr);
    transform: translateX(-50%);
  }

  .mobile-nav-button b {
    font-size: 11px;
  }
}

@media (max-width: 390px) {
  .ranking-row {
    grid-template-columns: 38px minmax(0, 1fr) 67px;
    gap: 5px 7px;
  }

  .leader-copy strong {
    font-size: 18px;
  }

  .leader-total b {
    font-size: 27px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .ambient,
  .view-panel {
    animation: none;
  }
}

/* Aurora pearl identity v16 */
:root {
  --ink: #1a153f;
  --muted: #746f8b;
  --canvas: #f7f6ff;
  --paper: rgba(255, 255, 255, 0.72);
  --line: rgba(105, 93, 163, 0.16);
  --forest: #241552;
  --forest-2: #3e2678;
  --lime: #54e3e4;
  --blue: #43dbe9;
  --blue-deep: #159bb8;
  --coral: #ff77bd;
  --coral-deep: #b63b7e;
  --aurora-violet: #8d70ff;
  --aurora-cyan: #55e4ee;
  --aurora-pink: #ff78c8;
  --glass: rgba(255, 255, 255, 0.66);
  --glass-strong: rgba(255, 255, 255, 0.84);
  --glass-line: rgba(255, 255, 255, 0.82);
  --shadow: 0 24px 72px rgba(73, 48, 145, 0.12), 0 3px 14px rgba(75, 47, 139, 0.05);
  --radius-lg: 30px;
  --radius-md: 22px;
  --radius-sm: 15px;
}

html {
  color-scheme: light;
  background: #f7f6ff;
}

body {
  min-height: 100vh;
  color: var(--ink);
  background:
    radial-gradient(circle at -7% 8%, rgba(72, 226, 239, 0.34) 0, rgba(72, 226, 239, 0.1) 19rem, transparent 36rem),
    radial-gradient(circle at 106% 30%, rgba(255, 111, 198, 0.29) 0, rgba(255, 111, 198, 0.08) 21rem, transparent 39rem),
    radial-gradient(circle at 22% 101%, rgba(104, 204, 255, 0.24) 0, transparent 34rem),
    radial-gradient(circle at 82% 92%, rgba(146, 112, 255, 0.22) 0, transparent 35rem),
    linear-gradient(155deg, #fcfcff 0%, #f5f2ff 52%, #fff8fd 100%);
  background-attachment: fixed;
  font-family: "SF Arabic", "Noto Sans Arabic", "IBM Plex Sans Arabic", system-ui, -apple-system, "Segoe UI", Tahoma, Arial, sans-serif;
}

body::before {
  content: "";
  position: fixed;
  z-index: -2;
  inset: 0;
  opacity: 0.38;
  background-image:
    linear-gradient(116deg, transparent 0 38%, rgba(255,255,255,.78) 46%, transparent 54%),
    repeating-linear-gradient(128deg, rgba(255,255,255,.2) 0 1px, transparent 1px 38px);
  mask-image: linear-gradient(to bottom, #000, transparent 84%);
  pointer-events: none;
}

::selection {
  color: #fff;
  background: #7653d8;
}

button:focus-visible,
a:focus-visible,
summary:focus-visible,
input:focus-visible,
select:focus-visible {
  outline: 3px solid rgba(71, 217, 231, 0.42);
  outline-offset: 3px;
}

.ambient {
  z-index: 0;
  width: 620px;
  height: 260px;
  opacity: 0.42;
  filter: blur(52px);
  border-radius: 46% 54% 62% 38% / 45% 42% 58% 55%;
  will-change: transform;
  animation: pearl-aurora-drift 36s ease-in-out infinite alternate;
}

.ambient-one {
  top: 12%;
  right: -340px;
  background: linear-gradient(100deg, rgba(111,231,255,.04), rgba(110,110,255,.36), rgba(255,102,201,.42));
}

.ambient-two {
  bottom: 3%;
  left: -330px;
  background: linear-gradient(100deg, rgba(72,224,237,.46), rgba(100,174,255,.36), rgba(193,100,255,.18));
  animation-duration: 44s;
  animation-direction: alternate-reverse;
}

@keyframes pearl-aurora-drift {
  0% { transform: translate3d(0, -20px, 0) rotate(-5deg) scale(.93); }
  50% { transform: translate3d(42px, 16px, 0) rotate(3deg) scale(1.04); }
  100% { transform: translate3d(-18px, 38px, 0) rotate(-1deg) scale(.98); }
}

.app-shell {
  width: min(1180px, calc(100% - 32px));
  padding: 10px 0 120px;
}

.league-logo-banner {
  min-height: 102px;
  display: grid;
  place-items: center;
  padding: 10px 18px 6px;
}

.league-logo-banner img {
  width: min(680px, 78%);
  max-height: 104px;
  object-fit: contain;
  filter: drop-shadow(0 12px 22px rgba(53, 24, 87, 0.09));
}

.topbar {
  top: 10px;
  width: min(900px, 100%);
  min-height: 70px;
  margin: 0 auto;
  padding: 9px 12px;
  background: linear-gradient(135deg, rgba(255,255,255,.84), rgba(255,255,255,.55));
  border: 1px solid var(--glass-line);
  border-radius: 24px;
  box-shadow: 0 14px 44px rgba(76, 50, 145, 0.1), inset 0 1px 0 rgba(255,255,255,.96);
  backdrop-filter: blur(26px) saturate(1.28);
  -webkit-backdrop-filter: blur(26px) saturate(1.28);
}

.brand-mark {
  width: 50px;
  height: 50px;
  padding: 0;
  overflow: hidden;
  background: rgba(255,255,255,.8);
  border: 1px solid rgba(255,255,255,.96);
  border-radius: 17px;
  box-shadow: 0 9px 25px rgba(69,40,130,.14);
  transform: none;
}

.brand-mark img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.header-actions {
  gap: 8px;
}

.live-pill,
.refresh-button {
  color: #35275e;
  background: rgba(255,255,255,.66);
  border: 1px solid rgba(111,94,165,.14);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.9);
}

.live-pill {
  min-height: 39px;
  padding: 0 13px;
  border-radius: 999px;
  font-size: 11px;
}

.live-pill.estimated {
  color: #864778;
  background: rgba(255,241,250,.78);
  border-color: rgba(255,113,190,.25);
}

.live-dot {
  background: var(--aurora-cyan);
  box-shadow: 0 0 0 5px rgba(85,228,238,.15), 0 0 16px rgba(85,228,238,.55);
}

.live-pill.estimated .live-dot {
  background: var(--aurora-pink);
  box-shadow: 0 0 0 5px rgba(255,120,200,.15), 0 0 16px rgba(255,120,200,.5);
}

.refresh-button {
  width: 41px;
  height: 41px;
  border-radius: 14px;
}

.refresh-button svg {
  stroke: #3c2a67;
}

.site-views {
  margin-top: 17px;
}

.view-heading {
  padding: 14px 8px 6px;
}

.view-heading span,
.section-kicker,
.eyebrow {
  color: #807997;
  font-size: 12px;
  font-weight: 800;
}

.view-heading h1 {
  color: var(--ink);
  font-size: clamp(30px, 4vw, 42px);
  letter-spacing: -.02em;
}

.card,
.section-disclosure,
.home-leader-card,
.footer-box {
  color: var(--ink);
  background: linear-gradient(145deg, rgba(255,255,255,.82), rgba(255,255,255,.55));
  border: 1px solid var(--glass-line);
  box-shadow: var(--shadow), inset 0 1px 0 rgba(255,255,255,.98);
  backdrop-filter: blur(24px) saturate(1.18);
  -webkit-backdrop-filter: blur(24px) saturate(1.18);
}

.card,
.section-disclosure {
  border-radius: 28px;
}

.section-head,
.compact-head {
  padding: 20px 22px;
}

.section-head h2,
.compact-head h2 {
  margin: 1px 0 0;
  color: var(--ink);
  font-size: 23px;
  line-height: 1.25;
}

.verified-mark,
.round-mini,
.participant-count,
.match-count,
.alert-count {
  color: #4c397b;
  background: rgba(255,255,255,.65);
  border: 1px solid rgba(111,94,165,.13);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.9);
}

.scoreboard {
  min-height: 390px;
  padding: 28px;
  color: var(--ink);
  background:
    radial-gradient(circle at 0 0, rgba(72,226,238,.3), transparent 35%),
    radial-gradient(circle at 100% 100%, rgba(255,107,197,.3), transparent 36%),
    radial-gradient(circle at 75% 0, rgba(139,111,255,.2), transparent 31%),
    linear-gradient(145deg, rgba(255,255,255,.86), rgba(246,242,255,.7));
  border: 1px solid rgba(255,255,255,.9);
  border-radius: 36px;
  box-shadow: 0 28px 80px rgba(74,49,143,.14), inset 0 1px 0 #fff;
  backdrop-filter: blur(28px) saturate(1.2);
  -webkit-backdrop-filter: blur(28px) saturate(1.2);
}

.scoreboard::before {
  content: "";
  position: absolute;
  z-index: -1;
  inset: 8px;
  border: 1px solid rgba(255,255,255,.72);
  border-radius: 29px;
  pointer-events: none;
}

.scoreboard::after {
  background: linear-gradient(116deg, transparent 28%, rgba(255,255,255,.55) 46%, transparent 62%);
  opacity: .55;
}

.pitch-grid {
  opacity: .14;
  background-image:
    linear-gradient(rgba(74,53,127,.22) 1px, transparent 1px),
    linear-gradient(90deg, rgba(74,53,127,.22) 1px, transparent 1px);
  mask-image: linear-gradient(to bottom, transparent, #000 20%, #000 84%, transparent);
}

.scoreboard .eyebrow,
.team-name,
.points-label,
.scoreboard-foot,
.source-label {
  color: #77708e;
}

.round-label {
  color: #25194d;
  font-size: 22px;
}

.period-switch {
  padding: 4px;
  background: rgba(255,255,255,.48);
  border: 1px solid rgba(105,91,160,.14);
  border-radius: 16px;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.9);
}

.period-button {
  min-height: 37px;
  color: #847c9a;
  border-radius: 12px;
}

.period-button.active {
  color: #fff;
  background: linear-gradient(135deg, #352062, #7b55d8);
  box-shadow: 0 8px 22px rgba(93,58,166,.25);
}

.team-name {
  color: #6e6786;
  font-size: 16px;
}

.team-badge {
  width: 61px;
  height: 71px;
  border: 1px solid rgba(255,255,255,.88);
  box-shadow: 0 12px 28px rgba(61,42,116,.12), inset 0 1px 0 rgba(255,255,255,.6);
}

.side-one .team-badge {
  background: linear-gradient(160deg, rgba(255,255,255,.48), var(--blue));
  box-shadow: 0 14px 34px rgba(63, 209, 226, .24);
}

.side-two .team-badge {
  background: linear-gradient(160deg, rgba(255,255,255,.48), var(--coral));
  box-shadow: 0 14px 34px rgba(240, 94, 166, .24);
}

.team-score {
  text-shadow: 0 8px 30px currentColor;
}

.versus-line {
  background: linear-gradient(transparent, rgba(61,43,105,.24));
}

.versus-line:last-child {
  background: linear-gradient(rgba(61,43,105,.24), transparent);
}

.versus-chip {
  color: #fff;
  background: linear-gradient(145deg, #291651, #6842ae);
  border: 1px solid rgba(255,255,255,.52);
  box-shadow: 0 10px 26px rgba(65,35,117,.23);
}

.lead-summary {
  color: #45366c;
  background: rgba(255,255,255,.55);
  border: 1px solid rgba(255,255,255,.88);
  box-shadow: 0 8px 25px rgba(68,46,127,.08), inset 0 1px 0 #fff;
}

.lead-icon {
  color: #24164d;
  background: linear-gradient(135deg, #73edf0, #7ca7ff);
}

.scoreboard-foot {
  border-color: rgba(84,64,134,.11);
  font-size: 11px;
}

.score-share,
.deadline-reminder,
.install-action,
.admin-action,
.primary-action,
.save-config {
  color: #fff;
  background: linear-gradient(135deg, #2b1856, #7954d4);
  border: 1px solid rgba(255,255,255,.4);
  box-shadow: 0 10px 26px rgba(81,48,148,.2), inset 0 1px 0 rgba(255,255,255,.28);
}

.score-share:hover,
.deadline-reminder:hover,
.install-action:hover,
.admin-action:hover,
.primary-action:hover,
.save-config:hover {
  filter: brightness(1.06);
  transform: translateY(-1px);
}

.score-share:disabled,
.deadline-reminder:disabled,
.primary-action:disabled,
.save-config:disabled {
  opacity: .5;
  transform: none;
}

.home-leader-card {
  min-height: 124px;
  color: var(--ink);
  background:
    radial-gradient(circle at 10% 20%, rgba(75,225,238,.23), transparent 32%),
    radial-gradient(circle at 92% 80%, rgba(255,117,198,.2), transparent 34%),
    linear-gradient(145deg, rgba(255,255,255,.83), rgba(255,255,255,.55));
  border-radius: 28px;
}

.leader-position {
  color: #fff;
  background: linear-gradient(145deg, #382166, #8765ea);
  box-shadow: 0 12px 30px rgba(90,56,160,.22);
}

.leader-copy > span,
.leader-copy small,
.leader-total span {
  color: #77708d;
}

.leader-copy strong {
  color: #211547;
}

.leader-total {
  border-color: rgba(90,72,139,.14);
}

.leader-total b {
  color: #7652d7;
}

.today-match-row,
.today-empty,
.injury-row,
.transfer-row,
.bench-waste-row,
.squad-row,
.ranking-row,
.pulse-item,
.info-grid > div {
  background: rgba(255,255,255,.54);
  border: 1px solid rgba(255,255,255,.82);
  box-shadow: 0 8px 24px rgba(75,51,137,.055), inset 0 1px 0 rgba(255,255,255,.95);
}

.today-match-row {
  min-height: 74px;
  border-radius: 19px;
}

.today-score,
.today-time {
  color: #30205c;
}

.today-status.live {
  color: #d14491;
}

.match-count b,
.round-mini b,
.participant-count b {
  color: #402a76;
}

.section-disclosure {
  background: linear-gradient(145deg, rgba(255,255,255,.75), rgba(255,255,255,.5));
}

.section-disclosure > summary {
  min-height: 78px;
  padding: 15px 20px;
}

.section-disclosure > summary b {
  color: #24174d;
  font-size: 18px;
}

.section-disclosure > summary small {
  color: #7e7892;
  font-size: 11px;
}

.section-disclosure > summary i {
  color: #4b3979;
  background: rgba(255,255,255,.58);
  border: 1px solid rgba(111,94,165,.12);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.9);
}

.nested-card {
  border-radius: 22px;
  box-shadow: 0 10px 28px rgba(71,50,130,.06), inset 0 1px 0 rgba(255,255,255,.92);
}

.countdown-grid div {
  color: #27204b;
  background: rgba(255,255,255,.58);
  border-color: rgba(255,255,255,.86);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.94);
}

.countdown-grid b {
  color: #6f4ed1;
}

.deadline-date,
.reminder-feedback,
.my-team-note,
.info-note {
  color: #756f89;
}

.spotlight {
  color: var(--ink);
  background: linear-gradient(145deg, rgba(255,255,255,.78), rgba(255,255,255,.5));
  border: 1px solid rgba(255,255,255,.84);
  box-shadow: 0 12px 34px rgba(72,49,132,.08);
}

.spotlight-lime {
  background:
    radial-gradient(circle at 5% 10%, rgba(76,226,236,.27), transparent 42%),
    linear-gradient(145deg, rgba(255,255,255,.82), rgba(255,255,255,.52));
}

.spotlight-coral {
  background:
    radial-gradient(circle at 95% 90%, rgba(255,111,193,.25), transparent 43%),
    linear-gradient(145deg, rgba(255,255,255,.82), rgba(255,255,255,.52));
}

.spotlight p,
.spotlight-top,
.spotlight-result span {
  color: #756f89;
}

.spotlight-result strong {
  color: #24164f;
}

.error-banner {
  color: #8d376b;
  background: rgba(255,239,248,.84);
  border-color: rgba(233,119,182,.25);
  box-shadow: 0 12px 34px rgba(155,60,120,.08);
}

.error-banner button {
  color: #fff;
  background: #9e3f78;
  border: 0;
}

.ranking-head {
  color: #7a7490;
  background: rgba(255,255,255,.42);
  border-color: rgba(96,79,145,.1);
}

.ranking-list {
  gap: 7px;
}

.ranking-row {
  border-radius: 17px;
}

.ranking-row:hover {
  background: rgba(255,255,255,.78);
  border-color: rgba(120,88,194,.2);
  transform: translateY(-1px);
}

.ranking-row.top-1 {
  background:
    radial-gradient(circle at 0 50%, rgba(76,226,236,.22), transparent 30%),
    linear-gradient(135deg, rgba(255,255,255,.82), rgba(247,243,255,.65));
}

.ranking-row.top-2,
.ranking-row.top-3 {
  background: linear-gradient(135deg, rgba(255,255,255,.74), rgba(249,247,255,.56));
}

.rank-number,
.squad-number,
.my-team-option-rank {
  color: #fff;
  background: linear-gradient(145deg, #342063, #8060dd);
  border: 1px solid rgba(255,255,255,.45);
  box-shadow: 0 7px 18px rgba(75,44,139,.18);
}

.manager-copy strong,
.squad-person strong,
.bench-waste-person strong {
  color: #24184a;
}

.manager-copy small,
.player-progress,
.squad-person small,
.bench-waste-person small {
  color: #817b92;
}

.numeric-cell.total,
.squad-stat b,
.bench-waste-points b {
  color: #6541c2;
}

.team-tabs {
  background: rgba(255,255,255,.5);
  border-color: rgba(102,83,155,.12);
}

.team-tab {
  color: #7d7692;
}

.team-tab.active {
  color: #fff;
  background: linear-gradient(135deg, #332060, #7650d2);
  box-shadow: 0 8px 20px rgba(80,48,145,.2);
}

.squad-summary {
  background:
    radial-gradient(circle at 10% 10%, rgba(75,225,237,.2), transparent 35%),
    radial-gradient(circle at 92% 90%, rgba(255,115,194,.18), transparent 34%),
    rgba(255,255,255,.44);
  border-color: rgba(255,255,255,.82);
}

.my-team-chooser {
  padding: 22px;
}

.my-team-option {
  color: var(--ink);
  background: rgba(255,255,255,.5);
  border: 1px solid rgba(255,255,255,.84);
  border-radius: 18px;
  box-shadow: 0 8px 24px rgba(71,48,130,.055), inset 0 1px 0 rgba(255,255,255,.95);
}

.my-team-option:hover,
.my-team-option:focus-visible {
  background: rgba(255,255,255,.82);
  border-color: rgba(99,211,230,.45);
}

.my-team-option-copy strong {
  color: #25184d;
}

.my-team-option-copy small {
  color: #817a93;
}

.my-team-option-action {
  color: #6a48c6;
}

.my-team-card {
  padding-bottom: 24px;
  background:
    radial-gradient(circle at -8% 12%, rgba(70,227,239,.25), transparent 31%),
    radial-gradient(circle at 108% 45%, rgba(255,113,197,.22), transparent 33%),
    radial-gradient(circle at 20% 98%, rgba(130,107,255,.18), transparent 34%),
    linear-gradient(155deg, rgba(255,255,255,.82), rgba(247,243,255,.66));
}

.my-team-head {
  min-height: 78px;
  padding: 14px 18px;
  background: rgba(255,255,255,.48);
  border-color: rgba(255,255,255,.74);
  box-shadow: inset 0 -1px 0 rgba(102,81,156,.08);
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
}

.my-team-head h2 {
  color: #211446;
  font-size: 28px;
}

.my-team-change {
  min-height: 31px;
  padding: 5px 10px;
  color: #665985;
  background: rgba(255,255,255,.55);
  border: 1px solid rgba(108,91,157,.14);
  border-radius: 999px;
  font-size: 9px;
  font-weight: 850;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.92);
}

.manager-dialog,
.admin-dialog,
.install-dialog {
  color: var(--ink);
  background: linear-gradient(155deg, rgba(251,251,255,.96), rgba(246,241,255,.94));
  border: 1px solid rgba(255,255,255,.9);
  box-shadow: 0 40px 120px rgba(44,27,91,.34);
}

.manager-dialog::backdrop,
.admin-dialog::backdrop,
.install-dialog::backdrop {
  background: rgba(27,18,58,.52);
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
}

.dialog-shell,
.admin-shell,
.install-shell {
  background:
    radial-gradient(circle at -5% 0, rgba(75,226,238,.2), transparent 30%),
    radial-gradient(circle at 104% 44%, rgba(255,113,196,.18), transparent 32%),
    transparent;
}

.dialog-head {
  background: rgba(255,255,255,.68);
  border-color: rgba(104,85,157,.12);
  backdrop-filter: blur(24px) saturate(1.2);
  -webkit-backdrop-filter: blur(24px) saturate(1.2);
}

.dialog-manager h2,
.dialog-head h2 {
  color: #24164c;
}

.dialog-close {
  color: #4c3b75;
  background: rgba(255,255,255,.62);
  border-color: rgba(104,86,157,.15);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.94);
}

.fantasy-pitch {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  min-height: 590px;
  margin: 18px 20px 0;
  padding: 18px 16px 26px;
  color: var(--ink);
  background:
    radial-gradient(circle at -6% 6%, rgba(75,228,239,.3), transparent 31%),
    radial-gradient(circle at 106% 46%, rgba(255,110,199,.25), transparent 31%),
    radial-gradient(circle at 15% 101%, rgba(115,189,255,.24), transparent 31%),
    radial-gradient(circle at 88% 100%, rgba(139,108,255,.25), transparent 34%),
    linear-gradient(160deg, rgba(255,255,255,.71), rgba(241,236,255,.72));
  border: 1px solid rgba(255,255,255,.92);
  border-radius: 34px;
  box-shadow: 0 23px 64px rgba(75,49,145,.13), inset 0 1px 0 #fff, inset 0 0 50px rgba(255,255,255,.38);
}

.fantasy-pitch::after {
  content: "";
  position: absolute;
  z-index: -2;
  inset: 0;
  opacity: .45;
  background: linear-gradient(125deg, transparent 7%, rgba(255,255,255,.62) 26%, transparent 42% 62%, rgba(255,255,255,.52) 78%, transparent 92%);
  pointer-events: none;
}

.pitch-title {
  position: relative;
  z-index: 2;
  min-height: 47px;
  margin: 0 0 12px;
  padding: 8px 12px;
  background: rgba(255,255,255,.52);
  border: 1px solid rgba(255,255,255,.88);
  border-radius: 16px;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.95), 0 7px 21px rgba(63,43,118,.06);
  backdrop-filter: blur(15px);
  -webkit-backdrop-filter: blur(15px);
}

.pitch-title h3 {
  color: #24184a;
  font-size: 16px;
}

.pitch-title span,
.bench-section .pitch-title span {
  color: #7b7490;
  font-size: 9px;
}

.pitch-lines {
  z-index: -1;
  inset: 76px 5% 4%;
  opacity: .56;
  background: linear-gradient(180deg, transparent 49.7%, rgba(255,255,255,.92) 49.8%, rgba(255,255,255,.92) 50.2%, transparent 50.3%);
  border: 2px solid rgba(255,255,255,.9);
  border-radius: 5px;
  box-shadow: 0 0 16px rgba(255,255,255,.52), inset 0 0 25px rgba(255,255,255,.08);
}

.pitch-lines::before {
  width: 105px;
  height: 105px;
  border: 2px solid rgba(255,255,255,.9);
  box-shadow: 0 0 14px rgba(255,255,255,.4);
}

.pitch-lines::after {
  content: "";
  position: absolute;
  top: -2px;
  left: 50%;
  width: 38%;
  height: 15%;
  border: 2px solid rgba(255,255,255,.88);
  border-top: 0;
  transform: translateX(-50%);
  box-shadow: 0 8px 14px rgba(255,255,255,.18);
}

.pitch-players {
  position: relative;
  z-index: 1;
  gap: 7px;
}

.pitch-row {
  min-height: 120px;
  align-items: start;
  gap: clamp(6px, 2.1vw, 22px);
}

.pitch-player {
  width: min(124px, calc((100% - 24px) / 5));
  gap: 1px;
  color: var(--ink);
}

.kit-wrap {
  width: clamp(62px, 10vw, 92px);
  height: clamp(69px, 10vw, 94px);
  place-items: end center;
}

.player-kit {
  width: clamp(66px, 10vw, 94px);
  max-height: clamp(69px, 10vw, 94px);
  filter: drop-shadow(0 12px 8px rgba(48,30,94,.18));
}

.shirt-fallback {
  bottom: 5px;
  width: 52px;
  height: 58px;
  color: #2c1d55;
  background: rgba(255,255,255,.9);
  filter: drop-shadow(0 9px 8px rgba(48,30,94,.14));
}

.fpl-player-tile {
  width: 100%;
  display: grid;
  justify-items: center;
  gap: 3px;
  overflow: visible;
  border-radius: 0;
  box-shadow: none;
}

.fpl-player-tile strong {
  width: 100%;
  min-height: 31px;
  display: block;
  padding: 6px 8px 5px;
  overflow: hidden;
  color: #211544;
  background: linear-gradient(145deg, rgba(255,255,255,.86), rgba(255,255,255,.58));
  border: 1px solid rgba(255,255,255,.94);
  border-radius: 999px;
  box-shadow: 0 8px 20px rgba(60,40,116,.1), inset 0 1px 0 #fff;
  font-size: 11px;
  font-weight: 900;
  line-height: 1.45;
  text-overflow: ellipsis;
  white-space: nowrap;
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
}

.fpl-player-tile small {
  min-width: 48px;
  min-height: 25px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 3px;
  padding: 3px 9px;
  color: #72688d;
  background: rgba(255,255,255,.64);
  border: 1px solid rgba(255,255,255,.9);
  border-radius: 999px;
  box-shadow: 0 6px 15px rgba(60,40,116,.08), inset 0 1px 0 rgba(255,255,255,.95);
  font-size: 8px;
  font-weight: 800;
}

.fpl-player-tile small b {
  color: #2b2050;
  font-size: 12px;
}

.player-status-line {
  min-height: 18px;
  padding: 3px 7px;
  color: #756c8e;
  background: rgba(255,255,255,.38);
  border-radius: 999px;
  font-size: 7px;
  font-weight: 850;
}

.pitch-player.live .player-status-line {
  color: #79526c;
  background: rgba(255,231,246,.72);
  box-shadow: 0 0 18px rgba(255,104,192,.18);
}

.pitch-player.missed .player-status-line {
  color: #a3446e;
  background: rgba(255,225,237,.74);
}

.pick-badge {
  top: 8px;
  left: 5%;
  width: 27px;
  height: 27px;
  color: #fff;
  background: linear-gradient(145deg, #281550, #523282);
  border: 2px solid rgba(255,255,255,.94);
  border-radius: 50%;
  box-shadow: 0 7px 16px rgba(49,27,92,.22);
  font-size: 10px;
}

.pitch-player.flagged::after {
  top: 9px;
  right: 5%;
  color: #fff;
  background: linear-gradient(145deg, #e9468f, #a52f70);
  border: 2px solid rgba(255,255,255,.92);
  box-shadow: 0 6px 16px rgba(186,52,117,.22);
}

.bench-section {
  margin: 14px 20px 0;
  padding: 16px;
  background:
    radial-gradient(circle at 0 100%, rgba(70,226,239,.2), transparent 35%),
    radial-gradient(circle at 100% 0, rgba(255,113,196,.18), transparent 35%),
    linear-gradient(145deg, rgba(255,255,255,.76), rgba(248,244,255,.62));
  border: 1px solid rgba(255,255,255,.9);
  border-top: 1px solid rgba(255,255,255,.9);
  border-radius: 28px;
  box-shadow: 0 17px 46px rgba(70,45,134,.1), inset 0 1px 0 #fff;
}

.bench-section .pitch-title {
  min-height: 40px;
  margin-bottom: 12px;
  background: rgba(255,255,255,.38);
}

.bench-players {
  gap: 9px;
}

.bench-players .pitch-player {
  width: 100%;
  padding: 5px 3px 8px;
  color: var(--ink);
  background: transparent;
  border-radius: 18px;
}

.bench-players .kit-wrap {
  width: clamp(54px, 8vw, 76px);
  height: clamp(58px, 8vw, 78px);
}

.bench-players .player-kit {
  width: clamp(58px, 8vw, 78px);
  max-height: clamp(58px, 8vw, 78px);
}

.bench-players .fpl-player-tile strong {
  color: #25194a;
  background: rgba(255,255,255,.72);
  font-size: 10px;
}

.bench-players .fpl-player-tile small,
.bench-players .player-status-line {
  color: #71698a;
}

.manager-metrics {
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 9px;
  padding: 18px 20px 10px;
}

.manager-metrics article {
  min-height: 91px;
  background: rgba(255,255,255,.54);
  border: 1px solid rgba(255,255,255,.88);
  border-radius: 19px;
  box-shadow: 0 9px 25px rgba(71,48,130,.06), inset 0 1px 0 rgba(255,255,255,.96);
}

.manager-metrics span {
  color: #7d7690;
  font-size: 10px;
}

.manager-metrics b {
  color: #6544c2;
  font-size: 25px;
}

.captain-strip {
  padding: 0 20px 12px;
}

.captain-strip > div {
  background: rgba(255,255,255,.5);
  border: 1px solid rgba(255,255,255,.86);
  border-radius: 16px;
  box-shadow: 0 8px 22px rgba(71,48,130,.055), inset 0 1px 0 rgba(255,255,255,.95);
}

.captain-strip span:not(.captain-token) {
  color: #7c7590;
}

.captain-token {
  color: #fff;
  background: linear-gradient(145deg, #321d62, #7952d1);
  border-radius: 50%;
}

.captain-token.vice {
  background: linear-gradient(145deg, #35cfdc, #557bd6);
}

.manager-alerts {
  padding: 8px 20px 0;
}

.manager-alert {
  border-radius: 15px;
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
}

.manager-alert.danger { color: #923966; background: rgba(255,232,243,.72); border-color: rgba(233,116,170,.22); }
.manager-alert.warning { color: #805d27; background: rgba(255,247,223,.72); border-color: rgba(222,184,92,.25); }
.manager-alert.info { color: #286a88; background: rgba(231,249,255,.72); border-color: rgba(91,194,222,.22); }
.manager-alert.success { color: #376f6d; background: rgba(232,252,249,.7); border-color: rgba(91,201,190,.2); }

.dialog-actions {
  padding-top: 18px;
}

.secondary-action {
  color: #554477;
  background: rgba(255,255,255,.64);
  border-color: rgba(105,88,155,.15);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.94);
}

.numbers-grid {
  gap: 15px;
}

.danger-card,
.transfer-market-card,
.league-pulse-card,
.chart-card,
.bench-waste-card,
.league-info {
  background:
    radial-gradient(circle at 0 0, rgba(74,226,238,.13), transparent 36%),
    radial-gradient(circle at 100% 100%, rgba(255,115,196,.11), transparent 37%),
    linear-gradient(145deg, rgba(255,255,255,.78), rgba(255,255,255,.53));
}

.danger-manager-label,
.danger-result,
.market-leader {
  color: var(--ink);
  background: rgba(255,255,255,.5);
  border: 1px solid rgba(255,255,255,.84);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.94), 0 10px 28px rgba(71,48,130,.06);
}

.danger-manager-label select,
.admin-content input,
.admin-content select {
  color: #302052;
  background: rgba(255,255,255,.68);
  border-color: rgba(100,81,152,.17);
}

.danger-live-mark {
  color: #bc3e83;
  background: rgba(255,234,247,.74);
  border-color: rgba(237,102,177,.2);
}

.danger-live-mark i {
  background: #f25aa8;
  box-shadow: 0 0 0 5px rgba(242,90,168,.13);
}

.danger-player span,
.danger-player small,
.danger-foot,
.pulse-item span,
.pulse-item small,
.info-grid dt {
  color: #7b748e;
}

.danger-player strong,
.pulse-item strong {
  color: #2a1b55;
}

.danger-impact b,
.pulse-item small b,
.info-grid dd {
  color: #6947c8;
}

.danger-meter {
  background: rgba(110,93,158,.1);
}

.danger-meter i {
  background: linear-gradient(90deg, #48dce8, #8d70ff, #ff6fbd);
  box-shadow: 0 0 18px rgba(139,93,226,.25);
}

.market-leader {
  border-radius: 20px;
}

.market-icon {
  color: #fff;
  background: linear-gradient(145deg, #35d5df, #6d75e5);
  box-shadow: 0 9px 22px rgba(64,140,207,.2);
}

.market-leader > div > span,
.market-leader small {
  color: #7c758e;
}

.market-leader strong {
  color: #281a51;
}

.market-leader > b {
  color: #6c49c8;
}

.market-details,
.market-details > summary {
  border-color: rgba(97,80,148,.1);
}

.market-details > summary {
  color: #625778;
}

.market-details > summary b {
  color: #4b347e;
  background: rgba(255,255,255,.56);
}

.transfer-row header > span,
.transfer-line > span {
  color: #716a83;
}

.transfer-line > span > span {
  background: rgba(245,241,253,.8);
}

.pulse-item.differential {
  background:
    radial-gradient(circle at 100% 100%, rgba(255,112,191,.18), transparent 48%),
    rgba(255,255,255,.52);
}

.differential-owners {
  color: #8c3e72;
  background: rgba(255,241,249,.72);
}

.chart-wrap {
  background: rgba(255,255,255,.42);
  border-color: rgba(255,255,255,.82);
}

.chart-grid-line {
  stroke: rgba(78,61,124,.12);
}

.chart-label {
  fill: #837c94;
}

.info-note {
  background: rgba(255,255,255,.46);
  border-color: rgba(255,255,255,.8);
}

.admin-shell,
.install-shell {
  color: var(--ink);
}

.admin-gate,
.admin-team-card,
.admin-list-head,
.admin-participant,
.browser-demo,
.install-steps li {
  color: var(--ink);
  background: rgba(255,255,255,.55);
  border-color: rgba(255,255,255,.86);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.94);
}

.admin-gate p,
.admin-list-head > span,
.install-intro p,
.install-steps span {
  color: #777087;
}

.delete-participant {
  color: #a63b72;
  background: rgba(255,233,244,.72);
  border-color: rgba(220,101,158,.2);
}

.install-hero {
  color: var(--ink);
  background:
    radial-gradient(circle at 10% 0, rgba(72,225,238,.22), transparent 36%),
    radial-gradient(circle at 100% 100%, rgba(255,113,196,.2), transparent 37%),
    rgba(255,255,255,.44);
}

.install-icon {
  background: rgba(255,255,255,.8);
  border: 1px solid rgba(255,255,255,.96);
  box-shadow: 0 14px 34px rgba(75,46,139,.14);
}

.install-browser-tabs {
  background: rgba(255,255,255,.48);
  border-color: rgba(99,81,149,.12);
}

.install-browser-tab {
  color: #746b89;
}

.install-browser-tab.active {
  color: #fff;
  background: linear-gradient(135deg, #332060, #7751d2);
}

.browser-toolbar,
.browser-address {
  color: #615574;
  background: rgba(246,243,253,.82);
  border-color: rgba(100,82,151,.11);
}

.live-event-toast {
  color: #25184a;
  background: rgba(255,255,255,.9);
  border: 1px solid rgba(255,255,255,.96);
  box-shadow: 0 18px 52px rgba(54,34,106,.2);
  backdrop-filter: blur(22px) saturate(1.2);
  -webkit-backdrop-filter: blur(22px) saturate(1.2);
}

.live-event-toast.assist { border-color: rgba(68,216,231,.52); }
.live-event-toast.cancelled { border-color: rgba(240,95,165,.46); }

.site-footer {
  color: #7b748d;
}

.footer-box {
  min-height: 42px;
  display: inline-flex;
  align-items: center;
  padding: 9px 15px;
  border-radius: 15px;
}

.site-footer strong {
  color: #4c3b73;
}

.mobile-nav {
  min-height: 74px;
  padding: 7px;
  background: linear-gradient(145deg, rgba(255,255,255,.88), rgba(247,243,255,.72));
  border: 1px solid rgba(255,255,255,.94);
  border-radius: 25px;
  box-shadow: 0 20px 58px rgba(50,30,101,.22), inset 0 1px 0 #fff;
  backdrop-filter: blur(26px) saturate(1.3);
  -webkit-backdrop-filter: blur(26px) saturate(1.3);
}

.mobile-nav-button {
  color: #817993;
  border-radius: 18px;
}

.mobile-nav-button.active {
  color: #fff;
  background:
    radial-gradient(circle at 0 0, rgba(80,226,235,.62), transparent 52%),
    linear-gradient(145deg, #352164, #7652d1);
  box-shadow: 0 9px 25px rgba(79,48,144,.22), inset 0 1px 0 rgba(255,255,255,.3);
}

.skeleton-row {
  background: linear-gradient(90deg, rgba(255,255,255,.42), rgba(255,255,255,.86), rgba(255,255,255,.42));
}

@media (max-width: 760px) {
  body {
    background:
      radial-gradient(circle at -18% 6%, rgba(66,226,239,.31), transparent 21rem),
      radial-gradient(circle at 118% 27%, rgba(255,108,198,.26), transparent 23rem),
      radial-gradient(circle at 12% 94%, rgba(113,193,255,.22), transparent 25rem),
      radial-gradient(circle at 92% 84%, rgba(144,109,255,.18), transparent 25rem),
      linear-gradient(155deg, #fbfbff, #f5f2ff 56%, #fff8fd);
    background-attachment: scroll;
  }

  .ambient {
    display: block;
    width: 310px;
    height: 170px;
    opacity: .34;
    filter: blur(42px);
  }

  .ambient-one { top: 18%; right: -210px; }
  .ambient-two { bottom: 14%; left: -190px; }

  .app-shell {
    width: 100%;
    padding: 4px 10px 116px;
  }

  .league-logo-banner {
    min-height: 78px;
    padding: 8px 4px 2px;
  }

  .league-logo-banner img {
    width: min(92%, 520px);
    max-height: 72px;
  }

  .topbar {
    top: 6px;
    min-height: 62px;
    padding: 7px 9px;
    border-radius: 21px;
  }

  .brand-mark {
    width: 44px;
    height: 44px;
    border-radius: 15px;
  }

  .live-pill {
    min-height: 35px;
    padding: 0 10px;
    font-size: 10px;
  }

  .refresh-button {
    width: 37px;
    height: 37px;
    border-radius: 12px;
  }

  .site-views {
    margin-top: 11px;
  }

  .view-heading {
    margin-bottom: 6px;
    padding: 7px 5px 3px;
  }

  .view-heading span {
    font-size: 10px;
  }

  .view-heading h1 {
    font-size: 28px;
  }

  .home-stack,
  .ranking-view,
  .my-team-view,
  .numbers-grid {
    gap: 11px;
  }

  .card,
  .section-disclosure {
    border-radius: 23px;
  }

  .scoreboard {
    min-height: 0;
    padding: 18px 14px 15px;
    border-radius: 27px;
  }

  .scoreboard::before {
    inset: 6px;
    border-radius: 21px;
  }

  .scoreboard-head {
    gap: 9px;
  }

  .round-label {
    font-size: 18px;
  }

  .period-button {
    min-width: 60px;
    min-height: 33px;
    padding: 4px 10px;
    font-size: 10px;
  }

  .match-score {
    grid-template-columns: minmax(0, 1fr) 43px minmax(0, 1fr);
    gap: 7px;
    margin-top: 20px;
  }

  .side {
    grid-template-columns: 39px minmax(0, 1fr);
    grid-template-rows: auto auto auto;
    gap: 3px 7px;
  }

  .team-badge {
    grid-row: 1 / 3;
    width: 39px;
    height: 49px;
    border-radius: 14px;
    font-size: 11px;
  }

  .team-name {
    grid-column: 2;
    align-self: end;
    font-size: 11px;
    line-height: 1.25;
    white-space: normal;
  }

  .team-score {
    grid-column: 2;
    grid-row: 2;
    justify-self: start;
    font-size: clamp(38px, 12vw, 52px);
  }

  .side-two .team-score {
    justify-self: end;
  }

  .points-label {
    grid-column: 1 / -1;
    grid-row: 3;
    justify-self: center;
    font-size: 9px;
  }

  .versus-chip {
    width: 38px;
    height: 38px;
    font-size: 10px;
  }

  .lead-summary {
    margin-top: 17px;
    font-size: 10px;
  }

  .scoreboard-foot {
    margin-top: 17px;
    padding-top: 12px;
  }

  .home-leader-card {
    min-height: 106px;
    grid-template-columns: 46px minmax(0,1fr) 74px;
    gap: 11px;
    padding: 15px 13px;
    border-radius: 23px;
  }

  .leader-position {
    width: 44px;
    height: 49px;
    border-radius: 15px;
  }

  .leader-copy strong {
    font-size: 19px;
  }

  .leader-copy > span,
  .leader-copy small {
    font-size: 9px;
  }

  .leader-total {
    min-width: 70px;
    padding-right: 9px;
  }

  .leader-total b {
    font-size: 29px;
  }

  .section-head,
  .compact-head {
    padding: 16px 14px;
  }

  .section-head h2,
  .compact-head h2 {
    font-size: 20px;
  }

  .today-matches {
    padding: 0 11px 13px;
  }

  .today-match-row {
    min-height: 68px;
    grid-template-columns: minmax(0, 1fr) 75px minmax(0, 1fr);
    gap: 5px;
    padding: 9px;
    border-radius: 16px;
  }

  .today-match-row > strong {
    font-size: 13px;
  }

  .today-score { font-size: 21px; }
  .today-time { font-size: 14px; }

  .section-disclosure > summary {
    min-height: 70px;
    padding: 12px 14px;
  }

  .section-disclosure > summary b {
    font-size: 16px;
  }

  .section-disclosure > summary small {
    font-size: 10px;
  }

  .my-team-card {
    padding-bottom: 18px;
  }

  .my-team-head {
    min-height: 67px;
    padding: 10px 13px;
  }

  .my-team-head h2 {
    font-size: 23px;
  }

  .my-team-change {
    min-height: 28px;
    padding: 4px 9px;
    font-size: 8px;
  }

  .fantasy-pitch {
    min-height: 520px;
    margin: 12px 8px 0;
    padding: 12px 7px 18px;
    border-radius: 27px;
  }

  .pitch-title {
    min-height: 41px;
    margin-bottom: 8px;
    padding: 7px 9px;
    border-radius: 14px;
  }

  .pitch-title h3 {
    font-size: 14px;
  }

  .pitch-lines {
    inset: 62px 4% 3%;
  }

  .pitch-lines::before {
    width: 78px;
    height: 78px;
  }

  .pitch-players {
    gap: 3px;
  }

  .pitch-row {
    min-height: 103px;
    gap: 4px;
  }

  .pitch-player {
    width: min(92px, calc((100% - 16px) / 5));
  }

  .kit-wrap {
    width: clamp(48px, 17vw, 67px);
    height: clamp(54px, 18vw, 69px);
  }

  .player-kit {
    width: clamp(52px, 18vw, 70px);
    max-height: clamp(54px, 18vw, 69px);
  }

  .shirt-fallback {
    width: 40px;
    height: 46px;
  }

  .fpl-player-tile {
    gap: 2px;
  }

  .fpl-player-tile strong {
    min-height: 27px;
    padding: 5px 4px 4px;
    font-size: clamp(8px, 2.5vw, 10px);
  }

  .fpl-player-tile small {
    min-width: 40px;
    min-height: 22px;
    padding: 2px 7px;
  }

  .fpl-player-tile small b {
    font-size: 11px;
  }

  .fpl-player-tile small span {
    display: none;
  }

  .player-status-line {
    min-height: 15px;
    padding: 2px 4px;
    overflow: hidden;
    max-width: 100%;
    font-size: 6px;
    text-overflow: ellipsis;
  }

  .pick-badge {
    top: 4px;
    left: 0;
    width: 23px;
    height: 23px;
    font-size: 9px;
  }

  .pitch-player.flagged::after {
    top: 4px;
    right: 0;
  }

  .bench-section {
    margin: 11px 8px 0;
    padding: 10px 6px 12px;
    border-radius: 24px;
  }

  .bench-section .pitch-title {
    margin: 0 3px 8px;
  }

  .bench-players {
    gap: 3px;
  }

  .bench-players .pitch-player {
    padding: 3px 1px 6px;
  }

  .bench-players .kit-wrap {
    width: clamp(44px, 15vw, 58px);
    height: clamp(48px, 15vw, 59px);
  }

  .bench-players .player-kit {
    width: clamp(48px, 16vw, 61px);
    max-height: clamp(48px, 15vw, 59px);
  }

  .bench-players .fpl-player-tile strong {
    font-size: clamp(7px, 2.25vw, 9px);
  }

  .manager-metrics {
    grid-template-columns: repeat(2, minmax(0,1fr));
    gap: 7px;
    padding: 14px 9px 8px;
  }

  .manager-metrics article {
    min-height: 80px;
    border-radius: 16px;
  }

  .manager-metrics article:first-child {
    grid-column: 1 / -1;
  }

  .manager-metrics span {
    font-size: 9px;
  }

  .manager-metrics b {
    font-size: 24px;
  }

  .captain-strip {
    gap: 7px;
    padding: 0 9px 8px;
  }

  .captain-strip > div {
    grid-template-columns: 27px minmax(0,1fr);
    gap: 5px;
    padding: 8px;
  }

  .captain-strip strong {
    grid-column: 1 / -1;
    text-align: right;
  }

  .manager-alerts {
    padding: 4px 9px 0;
  }

  .manager-alert {
    font-size: 10px;
  }

  .manager-dialog {
    width: calc(100% - 12px);
    max-height: 96vh;
    border-radius: 24px;
  }

  .dialog-shell {
    max-height: 96vh;
  }

  .dialog-head {
    padding: 13px 14px;
  }

  .dialog-manager h2 {
    font-size: 20px;
  }

  .numbers-grid {
    grid-template-columns: 1fr;
  }

  .wide-number-card {
    grid-column: auto;
  }

  .ranking-list {
    padding: 8px 9px 11px;
  }

  .ranking-row {
    min-height: 89px;
    background: rgba(255,255,255,.55);
    border-color: rgba(255,255,255,.84);
  }

  .manager-copy strong {
    font-size: 17px;
  }

  .ranking-row > .numeric-cell.total {
    color: #6443be;
    font-size: 25px;
  }

  .mobile-nav {
    bottom: calc(9px + env(safe-area-inset-bottom));
    width: min(520px, calc(100% - 18px));
    min-height: 70px;
    padding: 6px;
    border-radius: 22px;
  }

  .mobile-nav-button {
    min-height: 56px;
    border-radius: 16px;
  }

  .mobile-nav-button b {
    font-size: 10px;
  }

  .site-footer {
    display: grid;
    grid-template-columns: 1fr;
    gap: 8px;
    padding: 22px 0 0;
  }

  .footer-box {
    width: 100%;
    justify-content: center;
  }
}

@media (max-width: 390px) {
  .app-shell {
    padding-inline: 7px;
  }

  .live-pill {
    max-width: 144px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  .fantasy-pitch {
    margin-inline: 5px;
    padding-inline: 4px;
  }

  .bench-section {
    margin-inline: 5px;
    padding-inline: 4px;
  }

  .pitch-row {
    gap: 2px;
  }

  .fpl-player-tile strong {
    padding-inline: 2px;
  }

  .home-leader-card {
    grid-template-columns: 42px minmax(0,1fr) 67px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .ambient,
  .view-panel,
  .number-updated,
  .live-event-toast,
  .danger-live-mark i {
    animation: none;
  }

  .score-share:hover,
  .deadline-reminder:hover,
  .install-action:hover,
  .admin-action:hover,
  .primary-action:hover,
  .save-config:hover,
  .ranking-row:hover {
    transform: none;
  }
}

/* Home hierarchy and mobile logo fixes v17 */
.home-spotlights {
  margin-top: 0;
}

.home-spotlights .spotlight {
  min-height: 164px;
}

.home-deadline-card {
  padding-bottom: 22px;
  background:
    radial-gradient(circle at 0 0, rgba(73, 226, 238, .22), transparent 34%),
    radial-gradient(circle at 100% 100%, rgba(255, 112, 194, .19), transparent 35%),
    linear-gradient(145deg, rgba(255,255,255,.86), rgba(255,255,255,.58));
  border-color: rgba(255,255,255,.94);
}

.home-deadline-card .compact-head {
  padding-bottom: 14px;
}

.home-deadline-card .countdown-grid {
  padding-inline: 20px;
}

.home-deadline-card .countdown-grid div {
  min-height: 88px;
  background: rgba(255,255,255,.65);
  box-shadow: 0 10px 28px rgba(69, 47, 132, .07), inset 0 1px 0 rgba(255,255,255,.98);
}

.home-deadline-card .countdown-grid b {
  font-size: 29px;
}

.home-deadline-card .deadline-reminder {
  min-height: 51px;
  margin-top: 12px;
  font-size: 13px;
}

.home-developer-credit {
  width: fit-content;
  min-height: 48px;
  display: inline-flex;
  align-items: center;
  justify-self: center;
  gap: 9px;
  padding: 10px 18px;
  color: #392566;
  background: linear-gradient(145deg, rgba(255,255,255,.82), rgba(255,255,255,.57));
  border: 1px solid rgba(255,255,255,.94);
  border-radius: 999px;
  box-shadow: 0 13px 36px rgba(68, 44, 131, .1), inset 0 1px 0 #fff;
  font-size: 14px;
  font-weight: 900;
  backdrop-filter: blur(18px);
  -webkit-backdrop-filter: blur(18px);
}

.home-developer-credit span {
  color: #7351d2;
  font-size: 17px;
}

.site-footer {
  justify-content: center;
}

.manager-dialog .fantasy-pitch {
  margin-top: 18px;
}

.manager-dialog .manager-alerts {
  padding-bottom: 4px;
}

@media (max-width: 760px) {
  .league-logo-banner {
    position: relative;
    z-index: 5;
    min-height: 86px;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: visible;
    visibility: visible;
    opacity: 1;
  }

  .league-logo-banner img {
    flex: none;
    width: auto;
    height: 68px;
    max-width: calc(100vw - 28px);
    max-height: 68px;
    visibility: visible;
    opacity: 1;
  }

  .home-spotlights {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 7px;
    overflow: visible;
  }

  .home-spotlights .spotlight {
    width: 100%;
    min-width: 0;
    min-height: 146px;
    padding: 13px 11px;
  }

  .home-spotlights .spotlight p {
    font-size: 11px;
    line-height: 1.55;
  }

  .home-spotlights .spotlight-result {
    gap: 5px;
  }

  .home-spotlights .spotlight-result strong {
    font-size: 17px;
  }

  .home-spotlights .spotlight-result span {
    font-size: 9px;
  }

  .home-deadline-card {
    padding-bottom: 15px;
  }

  .home-deadline-card .countdown-grid {
    padding-inline: 11px;
  }

  .home-deadline-card .countdown-grid div {
    min-height: 76px;
  }

  .home-deadline-card .countdown-grid b {
    font-size: 24px;
  }

  .home-deadline-card .deadline-reminder {
    width: calc(100% - 22px);
    margin-inline: 11px;
  }

  .home-developer-credit {
    min-height: 46px;
    padding: 9px 17px;
    font-size: 13px;
  }

  .manager-dialog .fantasy-pitch {
    margin-top: 12px;
  }
}

/* Scoreboard without numbered shields v18 */
.side {
  grid-template-columns: minmax(0, 1fr) auto;
  grid-template-rows: auto auto;
}

.side .team-name {
  grid-column: 1;
  grid-row: 1;
}

.side .team-score {
  grid-column: 2;
  grid-row: 1 / 3;
}

.side .points-label {
  grid-column: 1;
  grid-row: 2;
}

@media (max-width: 760px) {
  .side,
  .side-two {
    grid-template-columns: 1fr;
    grid-template-rows: auto auto auto;
    justify-items: center;
    direction: rtl;
    text-align: center;
  }

  .side .team-name,
  .side-two .team-name {
    grid-column: 1;
    grid-row: 1;
    justify-self: center;
    text-align: center;
  }

  .side .team-score,
  .side-two .team-score {
    grid-column: 1;
    grid-row: 2;
    justify-self: center;
  }

  .side .points-label,
  .side-two .points-label {
    grid-column: 1;
    grid-row: 3;
    justify-self: center;
  }
}

/* Top wordmark and pronounced moving aurora background v20 */
body::after {
  content: "";
  position: fixed;
  z-index: 0;
  inset: -34vmax;
  pointer-events: none;
  opacity: .64;
  background:
    conic-gradient(from 38deg at 50% 50%,
      rgba(85, 228, 238, .54),
      rgba(130, 111, 255, .42),
      rgba(255, 120, 200, .5),
      rgba(255, 190, 224, .3),
      rgba(85, 228, 238, .54));
  filter: blur(48px) saturate(1.34);
  transform: translate3d(0, 0, 0) rotate(0deg) scale(.92);
  transform-origin: center;
  will-change: transform;
  animation: aurora-field-wave 14s ease-in-out infinite alternate;
}

.ambient {
  display: block !important;
  z-index: 0;
  width: min(86vw, 1040px);
  height: min(46vw, 540px);
  opacity: .76;
  filter: blur(40px) saturate(1.35);
  border-radius: 43% 57% 61% 39% / 56% 37% 63% 44%;
  transform: translate3d(0, 0, 0);
  will-change: transform;
}

.ambient-one {
  top: -4vh;
  right: -18vw;
  background: linear-gradient(115deg, rgba(76, 232, 241, .78), rgba(117, 144, 255, .5), rgba(255, 120, 201, .64));
  animation: aurora-wave-one 12s ease-in-out infinite alternate;
}

.ambient-two {
  bottom: -5vh;
  left: -20vw;
  background: linear-gradient(110deg, rgba(255, 120, 201, .58), rgba(166, 113, 255, .48), rgba(73, 227, 239, .72));
  animation: aurora-wave-two 15s ease-in-out infinite alternate;
}

.ambient-three {
  position: fixed;
  top: 34vh;
  left: 12vw;
  width: min(72vw, 860px);
  height: min(34vw, 390px);
  background: linear-gradient(105deg, rgba(93, 226, 245, .58), rgba(255, 152, 213, .66), rgba(141, 112, 255, .6));
  opacity: .68;
  animation: aurora-wave-three 17s ease-in-out infinite alternate;
}

@keyframes aurora-field-wave {
  0% { transform: translate3d(-9%, -7%, 0) rotate(-14deg) scale(.82); }
  50% { transform: translate3d(8%, 7%, 0) rotate(10deg) scale(1.12); }
  100% { transform: translate3d(-3%, 14%, 0) rotate(20deg) scale(.92); }
}

@keyframes aurora-wave-one {
  0% { transform: translate3d(8vw, -12vh, 0) rotate(-14deg) scale(.86); }
  50% { transform: translate3d(-34vw, 18vh, 0) rotate(15deg) scale(1.2); }
  100% { transform: translate3d(-12vw, 48vh, 0) rotate(-7deg) scale(.94); }
}

@keyframes aurora-wave-two {
  0% { transform: translate3d(-7vw, 9vh, 0) rotate(13deg) scale(.88); }
  50% { transform: translate3d(36vw, -34vh, 0) rotate(-17deg) scale(1.18); }
  100% { transform: translate3d(12vw, -58vh, 0) rotate(8deg) scale(.96); }
}

@keyframes aurora-wave-three {
  0% { transform: translate3d(-36vw, 10vh, 0) rotate(-12deg) scale(.84); }
  50% { transform: translate3d(30vw, -20vh, 0) rotate(17deg) scale(1.22); }
  100% { transform: translate3d(-12vw, 34vh, 0) rotate(-5deg) scale(.92); }
}

@media (max-width: 760px) {
  .league-logo-banner {
    position: relative;
    z-index: 5;
    min-height: 82px;
    display: flex !important;
    align-items: center;
    justify-content: center;
    padding: max(8px, env(safe-area-inset-top)) 4px 3px;
    overflow: visible;
  }

  .league-logo-banner img {
    width: min(92vw, 720px) !important;
    height: auto !important;
    max-height: 72px !important;
    visibility: visible !important;
    opacity: 1 !important;
  }

  .topbar {
    min-height: 66px;
    gap: 6px;
    padding: 8px;
  }

  .brand {
    flex: 0 0 auto;
  }

  .brand-mark {
    display: grid !important;
  }

  .header-actions {
    flex: 0 0 auto;
    gap: 5px;
  }

  body::after {
    inset: -52vmax;
    opacity: .72;
    filter: blur(38px) saturate(1.38);
    animation-duration: 12s;
  }

  .ambient {
    width: 128vw;
    height: 46vh;
    opacity: .74;
    filter: blur(34px) saturate(1.4);
  }

  .ambient-one { top: -7vh; right: -42vw; }
  .ambient-two { bottom: -4vh; left: -40vw; }
  .ambient-three {
    top: 34vh;
    left: -22vw;
    width: 132vw;
    height: 38vh;
    opacity: .66;
  }
}

@media (max-width: 360px) {
  .live-pill {
    padding-inline: 8px;
  }
}

@media (prefers-reduced-motion: reduce) {
  body::after,
  .ambient-one,
  .ambient-two,
  .ambient-three {
    animation: none !important;
  }
}

/* Clearly visible morphing aurora motion v21 */
body::before {
  content: "";
  position: fixed;
  z-index: 0;
  inset: -28%;
  opacity: .38;
  pointer-events: none;
  background:
    repeating-radial-gradient(ellipse at 22% 34%,
      transparent 0 72px,
      rgba(255, 255, 255, .72) 84px,
      rgba(115, 223, 255, .28) 94px,
      transparent 110px 174px);
  mask-image: none;
  filter: blur(5px);
  transform: translate3d(-8%, -4%, 0) rotate(-6deg) scale(1.04);
  transform-origin: center;
  will-change: transform;
  animation: aurora-ripple-sweep 6.5s ease-in-out infinite alternate;
}

body::after {
  inset: -28vmax;
  opacity: .82;
  filter: blur(26px) saturate(1.48);
  animation: aurora-field-visible 7.5s ease-in-out infinite alternate;
}

.ambient {
  width: min(92vw, 1080px);
  height: min(34vw, 420px);
  opacity: .86;
  filter: blur(22px) saturate(1.5);
  border-radius: 34% 66% 58% 42% / 40% 38% 62% 60%;
}

.ambient-one {
  top: 5vh;
  right: -24vw;
  animation: aurora-ribbon-one 6.2s ease-in-out infinite alternate;
}

.ambient-two {
  bottom: 7vh;
  left: -26vw;
  animation: aurora-ribbon-two 7.4s ease-in-out infinite alternate;
}

.ambient-three {
  top: 43vh;
  left: 5vw;
  width: min(82vw, 940px);
  height: min(31vw, 370px);
  opacity: .8;
  animation: aurora-ribbon-three 8.6s ease-in-out infinite alternate;
}

@keyframes aurora-ripple-sweep {
  0% { transform: translate3d(-14%, -9%, 0) rotate(-9deg) scale(.94); }
  50% { transform: translate3d(8%, 5%, 0) rotate(4deg) scale(1.12); }
  100% { transform: translate3d(18%, 12%, 0) rotate(12deg) scale(1.03); }
}

@keyframes aurora-field-visible {
  0% { transform: translate3d(-12%, -10%, 0) rotate(-18deg) scale(.78); }
  50% { transform: translate3d(11%, 9%, 0) rotate(13deg) scale(1.16); }
  100% { transform: translate3d(-5%, 18%, 0) rotate(28deg) scale(.9); }
}

@keyframes aurora-ribbon-one {
  0% { transform: translate3d(18vw, -13vh, 0) rotate(-18deg) scale(.82); border-radius: 28% 72% 44% 56% / 36% 28% 72% 64%; }
  50% { transform: translate3d(-42vw, 22vh, 0) rotate(18deg) scale(1.2); border-radius: 62% 38% 70% 30% / 30% 66% 34% 70%; }
  100% { transform: translate3d(-14vw, 54vh, 0) rotate(-9deg) scale(.92); border-radius: 42% 58% 34% 66% / 66% 36% 64% 34%; }
}

@keyframes aurora-ribbon-two {
  0% { transform: translate3d(-16vw, 16vh, 0) rotate(17deg) scale(.84); border-radius: 64% 36% 52% 48% / 28% 68% 32% 72%; }
  50% { transform: translate3d(44vw, -38vh, 0) rotate(-20deg) scale(1.18); border-radius: 34% 66% 72% 28% / 62% 34% 66% 38%; }
  100% { transform: translate3d(11vw, -62vh, 0) rotate(10deg) scale(.9); border-radius: 55% 45% 32% 68% / 38% 64% 36% 62%; }
}

@keyframes aurora-ribbon-three {
  0% { transform: translate3d(-44vw, 14vh, 0) rotate(-15deg) scale(.8); border-radius: 30% 70% 60% 40% / 70% 34% 66% 30%; }
  50% { transform: translate3d(38vw, -27vh, 0) rotate(21deg) scale(1.22); border-radius: 68% 32% 38% 62% / 36% 72% 28% 64%; }
  100% { transform: translate3d(-8vw, 39vh, 0) rotate(-7deg) scale(.9); border-radius: 46% 54% 70% 30% / 60% 38% 62% 40%; }
}

@media (max-width: 760px) {
  body::before {
    inset: -46%;
    opacity: .46;
    background:
      repeating-radial-gradient(ellipse at 18% 30%,
        transparent 0 48px,
        rgba(255, 255, 255, .78) 58px,
        rgba(103, 218, 255, .34) 67px,
        transparent 80px 128px);
    animation-duration: 5.4s;
  }

  body::after {
    inset: -42vmax;
    opacity: .88;
    filter: blur(22px) saturate(1.55);
    animation-duration: 6.4s;
  }

  .ambient {
    width: 112vw;
    height: 31vh;
    opacity: .9;
    filter: blur(18px) saturate(1.58);
  }

  .ambient-one { top: 8vh; right: -36vw; animation-duration: 5.6s; }
  .ambient-two { bottom: 12vh; left: -38vw; animation-duration: 6.8s; }
  .ambient-three {
    top: 45vh;
    left: -16vw;
    width: 116vw;
    height: 29vh;
    opacity: .86;
    animation-duration: 7.8s;
  }
}

@media (prefers-reduced-motion: reduce) {
  body::before,
  body::after,
  .ambient-one,
  .ambient-two,
  .ambient-three {
    animation: none !important;
  }
}

/* Complete light / dark appearance system v22 */
.wordmark-dark {
  display: none;
}

html[data-theme="dark"] .wordmark-light {
  display: none;
}

html[data-theme="dark"] .wordmark-dark {
  display: block;
}

.theme-button {
  min-width: 76px;
  min-height: 41px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  padding: 6px 10px;
  color: #3c2a67;
  background: rgba(255,255,255,.66);
  border: 1px solid rgba(111,94,165,.14);
  border-radius: 14px;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.9);
  cursor: pointer;
}

.theme-button:hover {
  color: #2b1856;
  background: rgba(255,255,255,.86);
  border-color: rgba(117,88,194,.25);
}

.theme-button:active {
  transform: translateY(1px);
}

.theme-icon {
  width: 18px;
  display: grid;
  place-items: center;
  color: #7351d2;
  font-size: 16px;
  line-height: 1;
}

.theme-button b {
  font-size: 10px;
  font-weight: 900;
}

.home-squads-disclosure {
  position: relative;
  z-index: 2;
  margin-top: 18px;
  color: var(--ink);
  background: rgba(255,255,255,.46);
  border: 1px solid rgba(255,255,255,.82);
  border-radius: 22px;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.9);
  backdrop-filter: blur(18px);
  -webkit-backdrop-filter: blur(18px);
}

.home-squads-disclosure > summary {
  min-height: 66px;
}

.home-squads-disclosure > summary b {
  color: #24174d;
}

.home-squads-disclosure > summary small {
  color: #71698a;
}

.home-squads-disclosure > .nested-card {
  background: rgba(255,255,255,.66);
  border-color: rgba(255,255,255,.86);
}

html.theme-ready body,
html.theme-ready .topbar,
html.theme-ready .card,
html.theme-ready .section-disclosure,
html.theme-ready .home-leader-card,
html.theme-ready .home-developer-credit,
html.theme-ready .mobile-nav,
html.theme-ready dialog,
html.theme-ready input,
html.theme-ready select,
html.theme-ready button {
  transition: color .28s ease, background-color .28s ease, border-color .28s ease, box-shadow .28s ease, opacity .28s ease;
}

html[data-theme="dark"] {
  --ink: #f4f0ff;
  --muted: #aaa4bc;
  --canvas: #121020;
  --paper: rgba(31, 27, 55, .92);
  --line: rgba(185, 171, 235, .17);
  --forest: #eee9ff;
  --forest-2: #cbbcff;
  --lime: #68e4e9;
  --blue: #54dbe8;
  --blue-deep: #5edff0;
  --coral: #ff7fc5;
  --coral-deep: #ff91d0;
  --aurora-violet: #9a7dff;
  --aurora-cyan: #60e3eb;
  --aurora-pink: #ff82c9;
  --glass: rgba(35, 30, 61, .78);
  --glass-strong: rgba(42, 36, 72, .92);
  --glass-line: rgba(195, 181, 245, .17);
  --shadow: 0 18px 52px rgba(4, 3, 15, .24), 0 0 0 1px rgba(197, 181, 255, .035);
  color-scheme: dark;
  background: #121020;
}

html[data-theme="dark"] body {
  color: var(--ink);
  background:
    radial-gradient(circle at -10% 6%, rgba(53, 207, 220, .16), transparent 34rem),
    radial-gradient(circle at 108% 28%, rgba(230, 70, 159, .15), transparent 38rem),
    radial-gradient(circle at 18% 105%, rgba(81, 121, 218, .13), transparent 35rem),
    radial-gradient(circle at 85% 92%, rgba(115, 83, 210, .16), transparent 35rem),
    linear-gradient(155deg, #11101f 0%, #171329 52%, #1b1225 100%);
}

html[data-theme="dark"] body::before {
  opacity: .17;
  background:
    repeating-radial-gradient(ellipse at 22% 34%,
      transparent 0 72px,
      rgba(195, 236, 255, .28) 84px,
      rgba(94, 169, 255, .18) 94px,
      transparent 110px 174px);
}

html[data-theme="dark"] body::after {
  opacity: .48;
  background:
    conic-gradient(from 38deg at 50% 50%,
      rgba(52, 207, 218, .34),
      rgba(105, 80, 212, .32),
      rgba(224, 63, 155, .3),
      rgba(139, 74, 164, .2),
      rgba(52, 207, 218, .34));
}

html[data-theme="dark"] ::selection {
  color: #fff;
  background: #795fd8;
}

html[data-theme="dark"] .ambient-one {
  background: linear-gradient(115deg, rgba(45, 204, 215, .45), rgba(91, 95, 217, .38), rgba(226, 67, 157, .4));
}

html[data-theme="dark"] .ambient-two {
  background: linear-gradient(110deg, rgba(222, 65, 156, .38), rgba(116, 80, 219, .38), rgba(51, 203, 215, .42));
}

html[data-theme="dark"] .ambient-three {
  background: linear-gradient(105deg, rgba(45, 201, 215, .38), rgba(220, 79, 165, .4), rgba(120, 89, 222, .39));
}

html[data-theme="dark"] .league-logo-banner img {
  filter: none;
}

html[data-theme="dark"] .topbar {
  color: var(--ink);
  background: linear-gradient(135deg, rgba(31,27,54,.94), rgba(25,22,45,.84));
  border-color: rgba(190,176,240,.17);
  box-shadow: 0 14px 40px rgba(3,2,12,.2), inset 0 1px 0 rgba(255,255,255,.035);
}

html[data-theme="dark"] .brand-mark,
html[data-theme="dark"] .install-icon {
  background: #211d39;
  border-color: rgba(198,184,245,.18);
  box-shadow: 0 9px 24px rgba(2,2,12,.22);
}

html[data-theme="dark"] .live-pill,
html[data-theme="dark"] .refresh-button,
html[data-theme="dark"] .theme-button {
  color: #e9e3f8;
  background: rgba(49,43,77,.88);
  border-color: rgba(188,174,235,.19);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.045);
}

html[data-theme="dark"] .refresh-button svg {
  stroke: #e9e3f8;
}

html[data-theme="dark"] .theme-icon {
  color: #7de5e9;
}

html[data-theme="dark"] .refresh-button:hover,
html[data-theme="dark"] .theme-button:hover {
  color: #fff;
  background: rgba(61,53,94,.96);
  border-color: rgba(117,220,231,.35);
}

html[data-theme="dark"] .live-pill.estimated {
  color: #ffd2ea;
  background: rgba(84,38,72,.82);
  border-color: rgba(255,126,197,.28);
}

html[data-theme="dark"] .live-pill.offline {
  color: #ffc2b9;
  background: rgba(78,37,42,.84);
  border-color: rgba(255,135,119,.27);
}

html[data-theme="dark"] .view-heading span,
html[data-theme="dark"] .section-kicker,
html[data-theme="dark"] .eyebrow,
html[data-theme="dark"] .view-heading h1 {
  color: inherit;
}

html[data-theme="dark"] .view-heading span,
html[data-theme="dark"] .section-kicker,
html[data-theme="dark"] .eyebrow {
  color: #aaa4bc;
}

html[data-theme="dark"] .card,
html[data-theme="dark"] .section-disclosure,
html[data-theme="dark"] .footer-box {
  color: var(--ink);
  background: linear-gradient(145deg, rgba(39,34,66,.94), rgba(28,25,49,.9));
  border-color: rgba(190,176,240,.16);
  box-shadow: var(--shadow), inset 0 1px 0 rgba(255,255,255,.035);
}

html[data-theme="dark"] .section-head h2,
html[data-theme="dark"] .compact-head h2,
html[data-theme="dark"] .view-heading h1,
html[data-theme="dark"] .dialog-manager h2,
html[data-theme="dark"] .dialog-head h2,
html[data-theme="dark"] .my-team-head h2 {
  color: #f5f1ff;
}

html[data-theme="dark"] .verified-mark,
html[data-theme="dark"] .round-mini,
html[data-theme="dark"] .participant-count,
html[data-theme="dark"] .match-count,
html[data-theme="dark"] .alert-count {
  color: #dcd5f0;
  background: rgba(56,49,86,.82);
  border-color: rgba(187,173,235,.16);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.035);
}

html[data-theme="dark"] .match-count b,
html[data-theme="dark"] .round-mini b,
html[data-theme="dark"] .participant-count b {
  color: #f5f1ff;
}

html[data-theme="dark"] .scoreboard {
  color: #f7f3ff;
  background:
    radial-gradient(circle at 0 0, rgba(47,198,211,.17), transparent 36%),
    radial-gradient(circle at 100% 100%, rgba(222,65,157,.18), transparent 37%),
    radial-gradient(circle at 76% 0, rgba(119,86,222,.17), transparent 32%),
    linear-gradient(145deg, #1d1931, #19162a 58%, #211626);
  border-color: rgba(186,171,237,.19);
  box-shadow: 0 26px 70px rgba(2,2,12,.3), inset 0 1px 0 rgba(255,255,255,.04);
}

html[data-theme="dark"] .scoreboard::before {
  border-color: rgba(199,184,247,.1);
}

html[data-theme="dark"] .scoreboard::after {
  opacity: .2;
  background: linear-gradient(116deg, transparent 28%, rgba(150,222,243,.14) 46%, transparent 62%);
}

html[data-theme="dark"] .pitch-grid {
  opacity: .13;
  background-image:
    linear-gradient(rgba(199,184,247,.18) 1px, transparent 1px),
    linear-gradient(90deg, rgba(199,184,247,.18) 1px, transparent 1px);
}

html[data-theme="dark"] .scoreboard .eyebrow,
html[data-theme="dark"] .scoreboard .team-name,
html[data-theme="dark"] .scoreboard .points-label {
  color: #b6aec8;
}

html[data-theme="dark"] .round-label {
  color: #f4efff;
}

html[data-theme="dark"] .period-switch {
  background: rgba(48,42,75,.88);
  border-color: rgba(194,180,242,.16);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.035);
}

html[data-theme="dark"] .period-button {
  color: #afa7c2;
}

html[data-theme="dark"] .period-button:hover {
  color: #fff;
  background: rgba(255,255,255,.05);
}

html[data-theme="dark"] .period-button.active {
  color: #fff;
  background: linear-gradient(135deg, #51408b, #8168dd);
  box-shadow: 0 7px 18px rgba(47,34,89,.28);
}

html[data-theme="dark"] .versus-line,
html[data-theme="dark"] .versus-line:last-child {
  background: linear-gradient(transparent, rgba(205,191,247,.26), transparent);
}

html[data-theme="dark"] .versus-chip {
  color: #fff;
  background: #30264f;
  border-color: rgba(112,226,234,.24);
  box-shadow: 0 8px 22px rgba(2,2,12,.24);
}

html[data-theme="dark"] .lead-summary {
  color: #e8e1f6;
  background: rgba(52,46,80,.76);
  border-color: rgba(192,178,238,.16);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.035);
}

html[data-theme="dark"] .lead-icon {
  color: #171426;
  background: linear-gradient(135deg, #67e0e7, #9984f5);
}

html[data-theme="dark"] .home-squads-disclosure {
  color: var(--ink);
  background: rgba(31,27,51,.78);
  border-color: rgba(192,178,238,.17);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.03);
}

html[data-theme="dark"] .home-squads-disclosure > summary b,
html[data-theme="dark"] .home-squads-disclosure .section-head h2 {
  color: #f5f1ff;
}

html[data-theme="dark"] .home-squads-disclosure > summary small {
  color: #aaa4bc;
}

html[data-theme="dark"] .home-squads-disclosure > .nested-card {
  background: rgba(40,34,65,.86);
  border-color: rgba(192,178,238,.14);
}

html[data-theme="dark"] .section-disclosure > summary b,
html[data-theme="dark"] .number-disclosure > summary small strong {
  color: #f3efff;
}

html[data-theme="dark"] .section-disclosure > summary small {
  color: #aaa4bc;
}

html[data-theme="dark"] .section-disclosure > summary i {
  color: #d9d2ea;
  background: rgba(56,49,86,.8);
  border-color: rgba(190,176,240,.15);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.035);
}

html[data-theme="dark"] .home-leader-card {
  color: #f5f1ff;
  background:
    radial-gradient(circle at 8% 15%, rgba(44,199,212,.15), transparent 35%),
    radial-gradient(circle at 94% 85%, rgba(219,64,155,.16), transparent 36%),
    linear-gradient(145deg, #27223f, #201c35);
  border-color: rgba(190,176,240,.16);
  box-shadow: var(--shadow), inset 0 1px 0 rgba(255,255,255,.035);
}

html[data-theme="dark"] .leader-position {
  color: #fff;
  background: linear-gradient(145deg, #574493, #8a70e4);
  box-shadow: 0 10px 26px rgba(5,4,18,.25);
}

html[data-theme="dark"] .leader-copy > span,
html[data-theme="dark"] .leader-copy small,
html[data-theme="dark"] .leader-total span {
  color: #aaa4bc;
}

html[data-theme="dark"] .leader-copy strong {
  color: #f7f3ff;
}

html[data-theme="dark"] .leader-total {
  border-color: rgba(191,177,237,.17);
}

html[data-theme="dark"] .leader-total b {
  color: #9b83f1;
}

html[data-theme="dark"] .spotlight,
html[data-theme="dark"] .spotlight-lime,
html[data-theme="dark"] .spotlight-coral,
html[data-theme="dark"] .home-deadline-card,
html[data-theme="dark"] .danger-card,
html[data-theme="dark"] .transfer-market-card,
html[data-theme="dark"] .league-pulse-card,
html[data-theme="dark"] .chart-card,
html[data-theme="dark"] .bench-waste-card,
html[data-theme="dark"] .league-info {
  color: var(--ink);
  background:
    radial-gradient(circle at 0 0, rgba(48,199,211,.09), transparent 38%),
    radial-gradient(circle at 100% 100%, rgba(220,64,155,.09), transparent 39%),
    linear-gradient(145deg, rgba(40,35,68,.96), rgba(28,25,49,.92));
  border-color: rgba(190,176,240,.16);
  box-shadow: var(--shadow), inset 0 1px 0 rgba(255,255,255,.035);
}

html[data-theme="dark"] .spotlight p,
html[data-theme="dark"] .spotlight-top,
html[data-theme="dark"] .spotlight-result span {
  color: #aaa4bc;
}

html[data-theme="dark"] .spotlight-result strong {
  color: #f5f1ff;
}

html[data-theme="dark"] .today-match-row,
html[data-theme="dark"] .today-empty,
html[data-theme="dark"] .transfer-row,
html[data-theme="dark"] .bench-waste-row,
html[data-theme="dark"] .squad-row,
html[data-theme="dark"] .ranking-row,
html[data-theme="dark"] .pulse-item,
html[data-theme="dark"] .info-grid > div,
html[data-theme="dark"] .gameweek-item {
  color: var(--ink);
  background: rgba(49,43,76,.76);
  border-color: rgba(187,173,235,.14);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.028);
}

html[data-theme="dark"] .today-match-row:hover,
html[data-theme="dark"] .transfer-row:hover,
html[data-theme="dark"] .bench-waste-row:hover,
html[data-theme="dark"] .ranking-row:hover,
html[data-theme="dark"] .squad-row:hover {
  background: rgba(62,54,94,.86);
  border-color: rgba(118,219,230,.25);
}

html[data-theme="dark"] .today-score,
html[data-theme="dark"] .today-time,
html[data-theme="dark"] .today-match-row > strong {
  color: #f4efff;
}

html[data-theme="dark"] .today-status,
html[data-theme="dark"] .empty-state,
html[data-theme="dark"] .today-status:not(.live) {
  color: #a8a1b7;
}

html[data-theme="dark"] .today-status.live {
  color: #ff8bc9;
}

html[data-theme="dark"] .countdown-grid div {
  color: #f4efff;
  background: rgba(53,47,82,.84);
  border-color: rgba(190,176,240,.15);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.03);
}

html[data-theme="dark"] .countdown-grid b {
  color: #a28bf5;
}

html[data-theme="dark"] .countdown-grid span,
html[data-theme="dark"] .deadline-date,
html[data-theme="dark"] .reminder-feedback,
html[data-theme="dark"] .my-team-note,
html[data-theme="dark"] .info-note {
  color: #aaa4bc;
}

html[data-theme="dark"] .home-developer-credit {
  color: #eee9fb;
  background: linear-gradient(145deg, rgba(45,39,73,.94), rgba(31,27,53,.92));
  border-color: rgba(190,176,240,.16);
  box-shadow: 0 10px 30px rgba(3,2,13,.2), inset 0 1px 0 rgba(255,255,255,.035);
}

html[data-theme="dark"] .home-developer-credit span {
  color: #9b83f1;
}

html[data-theme="dark"] .ranking-head {
  color: #aaa4bc;
  background: rgba(35,31,59,.88);
  border-color: rgba(185,171,235,.13);
}

html[data-theme="dark"] .ranking-row.top-1,
html[data-theme="dark"] .ranking-row.top-2,
html[data-theme="dark"] .ranking-row.top-3 {
  background:
    radial-gradient(circle at 0 50%, rgba(45,198,211,.11), transparent 32%),
    linear-gradient(135deg, rgba(54,47,83,.84), rgba(40,35,65,.82));
}

html[data-theme="dark"] .rank-number,
html[data-theme="dark"] .squad-number,
html[data-theme="dark"] .my-team-option-rank {
  color: #fff;
  background: linear-gradient(145deg, #5b4896, #8a70e4);
  border-color: rgba(212,199,255,.2);
  box-shadow: 0 6px 16px rgba(4,3,15,.24);
}

html[data-theme="dark"] .manager-copy strong,
html[data-theme="dark"] .squad-person strong,
html[data-theme="dark"] .bench-waste-person strong,
html[data-theme="dark"] .my-team-option-copy strong {
  color: #f4efff;
}

html[data-theme="dark"] .manager-copy small,
html[data-theme="dark"] .player-progress,
html[data-theme="dark"] .squad-person small,
html[data-theme="dark"] .bench-waste-person small,
html[data-theme="dark"] .my-team-option-copy small,
html[data-theme="dark"] .squad-stat span,
html[data-theme="dark"] .squad-identity small,
html[data-theme="dark"] .squad-total span {
  color: #aaa4bc;
}

html[data-theme="dark"] .numeric-cell {
  color: #d9d3e7;
}

html[data-theme="dark"] .numeric-cell.total,
html[data-theme="dark"] .squad-stat b,
html[data-theme="dark"] .squad-total b,
html[data-theme="dark"] .bench-waste-points b {
  color: #a58ef5;
}

html[data-theme="dark"] .ranking-row,
html[data-theme="dark"] .squad-row,
html[data-theme="dark"] .injury-row,
html[data-theme="dark"] .market-details {
  border-color: rgba(185,171,235,.12);
}

html[data-theme="dark"] .player-progress i,
html[data-theme="dark"] .balance-track,
html[data-theme="dark"] .danger-meter {
  background: rgba(190,176,240,.14);
}

html[data-theme="dark"] .movement.up {
  color: #9be5ad;
  background: rgba(46,120,68,.28);
}

html[data-theme="dark"] .movement.down,
html[data-theme="dark"] .hit-chip {
  color: #ffaaa0;
  background: rgba(145,55,44,.28);
}

html[data-theme="dark"] .movement.same {
  color: #b0a9bd;
  background: rgba(90,82,107,.32);
}

html[data-theme="dark"] .team-tabs {
  background: rgba(43,38,69,.9);
  border: 1px solid rgba(185,171,235,.13);
}

html[data-theme="dark"] .team-tab {
  color: #aaa4bc;
}

html[data-theme="dark"] .team-tab:hover {
  color: #fff;
  background: rgba(255,255,255,.045);
}

html[data-theme="dark"] .team-tab.active {
  color: #fff;
  background: linear-gradient(135deg, #54428d, #8068dc);
  box-shadow: 0 7px 18px rgba(3,2,13,.2);
}

html[data-theme="dark"] .squad-summary {
  color: var(--ink);
  background:
    radial-gradient(circle at 8% 8%, rgba(45,197,209,.11), transparent 37%),
    radial-gradient(circle at 94% 92%, rgba(218,65,155,.11), transparent 37%),
    rgba(50,43,77,.76);
  border-color: rgba(188,174,236,.14);
}

html[data-theme="dark"] .my-team-option {
  color: var(--ink);
  background: rgba(49,43,76,.78);
  border-color: rgba(187,173,235,.14);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.028);
}

html[data-theme="dark"] .my-team-option:hover,
html[data-theme="dark"] .my-team-option:focus-visible {
  background: rgba(62,54,94,.9);
  border-color: rgba(108,218,230,.3);
}

html[data-theme="dark"] .my-team-option-action {
  color: #8ee4e9;
}

html[data-theme="dark"] .my-team-card {
  color: var(--ink);
  background:
    radial-gradient(circle at -8% 12%, rgba(45,197,210,.12), transparent 31%),
    radial-gradient(circle at 108% 45%, rgba(216,63,154,.13), transparent 34%),
    radial-gradient(circle at 20% 98%, rgba(111,82,212,.13), transparent 35%),
    linear-gradient(155deg, #27223f, #1f1b35);
  border-color: rgba(190,176,240,.16);
}

html[data-theme="dark"] .my-team-head,
html[data-theme="dark"] .dialog-head {
  color: var(--ink);
  background: rgba(38,33,64,.9);
  border-color: rgba(188,174,236,.14);
  box-shadow: inset 0 -1px 0 rgba(188,174,236,.08);
}

html[data-theme="dark"] .my-team-change,
html[data-theme="dark"] .dialog-close,
html[data-theme="dark"] .secondary-action {
  color: #e5def3;
  background: rgba(55,48,84,.86);
  border-color: rgba(188,174,236,.16);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.035);
}

html[data-theme="dark"] .my-team-change:hover,
html[data-theme="dark"] .dialog-close:hover,
html[data-theme="dark"] .secondary-action:hover {
  color: #fff;
  background: rgba(67,58,101,.94);
}

html[data-theme="dark"] .fantasy-pitch {
  color: #f4efff;
  background:
    radial-gradient(circle at -6% 6%, rgba(43,197,209,.17), transparent 32%),
    radial-gradient(circle at 106% 46%, rgba(216,64,155,.16), transparent 32%),
    radial-gradient(circle at 15% 101%, rgba(75,116,205,.15), transparent 32%),
    radial-gradient(circle at 88% 100%, rgba(111,82,212,.16), transparent 35%),
    linear-gradient(160deg, #26213f, #1c1830);
  border-color: rgba(190,176,240,.17);
  box-shadow: 0 18px 50px rgba(2,2,12,.25), inset 0 1px 0 rgba(255,255,255,.035);
}

html[data-theme="dark"] .fantasy-pitch::after {
  opacity: .16;
  background: linear-gradient(125deg, transparent 7%, rgba(109,220,232,.18) 26%, transparent 42% 62%, rgba(231,103,178,.13) 78%, transparent 92%);
}

html[data-theme="dark"] .pitch-title {
  color: var(--ink);
  background: rgba(52,45,80,.78);
  border-color: rgba(188,174,236,.15);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.03);
}

html[data-theme="dark"] .pitch-title h3 {
  color: #f5f1ff;
}

html[data-theme="dark"] .pitch-title span,
html[data-theme="dark"] .bench-section .pitch-title span,
html[data-theme="dark"] .bench-players .pitch-player small,
html[data-theme="dark"] .bench-players .player-status-line {
  color: #aaa4bc;
}

html[data-theme="dark"] .pitch-lines,
html[data-theme="dark"] .pitch-lines::before,
html[data-theme="dark"] .pitch-lines::after {
  border-color: rgba(221,213,246,.34);
  box-shadow: none;
}

html[data-theme="dark"] .pitch-lines {
  background: linear-gradient(180deg, transparent 49.7%, rgba(221,213,246,.32) 49.8%, rgba(221,213,246,.32) 50.2%, transparent 50.3%);
}

html[data-theme="dark"] .player-kit {
  filter: drop-shadow(0 11px 8px rgba(2,2,12,.28));
}

html[data-theme="dark"] .fpl-player-tile strong,
html[data-theme="dark"] .bench-players .fpl-player-tile strong {
  color: #f5f1ff;
  background: rgba(56,48,87,.94);
  border-color: rgba(194,180,242,.17);
  box-shadow: 0 7px 18px rgba(2,2,12,.2), inset 0 1px 0 rgba(255,255,255,.035);
}

html[data-theme="dark"] .fpl-player-tile small {
  color: #c3bcd0;
  background: rgba(43,37,69,.92);
  border-color: rgba(190,176,240,.15);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.025);
}

html[data-theme="dark"] .fpl-player-tile small b {
  color: #f5f1ff;
}

html[data-theme="dark"] .shirt-fallback {
  color: #f5f1ff;
  background: #3a3158;
}

html[data-theme="dark"] .player-status-line {
  color: #b7afc5;
  background: rgba(49,42,76,.8);
}

html[data-theme="dark"] .pitch-player.live .player-status-line {
  color: #ffd4ea;
  background: rgba(101,43,82,.68);
}

html[data-theme="dark"] .pitch-player.missed .player-status-line {
  color: #ffc1b7;
  background: rgba(99,44,45,.67);
}

html[data-theme="dark"] .bench-section {
  color: var(--ink);
  background:
    radial-gradient(circle at 0 100%, rgba(44,196,209,.1), transparent 36%),
    radial-gradient(circle at 100% 0, rgba(216,63,153,.1), transparent 36%),
    linear-gradient(145deg, rgba(44,38,72,.96), rgba(31,27,53,.94));
  border-color: rgba(190,176,240,.16);
  box-shadow: 0 14px 38px rgba(2,2,12,.2), inset 0 1px 0 rgba(255,255,255,.03);
}

html[data-theme="dark"] .bench-players .pitch-player {
  color: var(--ink);
  background: transparent;
}

html[data-theme="dark"] .manager-metrics article,
html[data-theme="dark"] .captain-strip > div {
  color: var(--ink);
  background: rgba(50,43,77,.78);
  border-color: rgba(188,174,236,.14);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.028);
}

html[data-theme="dark"] .manager-metrics span,
html[data-theme="dark"] .captain-strip span:not(.captain-token) {
  color: #aaa4bc;
}

html[data-theme="dark"] .manager-metrics b,
html[data-theme="dark"] .captain-strip strong {
  color: #f5f1ff;
}

html[data-theme="dark"] .captain-token {
  background: linear-gradient(145deg, #5b4896, #8a70e4);
}

html[data-theme="dark"] .captain-token.vice {
  background: linear-gradient(145deg, #2799a5, #536bc0);
}

html[data-theme="dark"] .manager-alert.danger {
  color: #ffb8d8;
  background: rgba(111,38,74,.58);
  border-color: rgba(255,123,185,.22);
}

html[data-theme="dark"] .manager-alert.warning {
  color: #f6d28d;
  background: rgba(95,69,24,.48);
  border-color: rgba(231,188,97,.21);
}

html[data-theme="dark"] .manager-alert.info {
  color: #a6e2f2;
  background: rgba(34,82,101,.54);
  border-color: rgba(98,198,224,.2);
}

html[data-theme="dark"] .manager-alert.success,
html[data-theme="dark"] .empty-state.positive {
  color: #aee6c3;
  background: rgba(38,91,58,.52);
  border-color: rgba(105,206,137,.19);
}

html[data-theme="dark"] .pulse-item,
html[data-theme="dark"] .pulse-item.differential {
  color: #dcd5ef;
  background: rgba(50,43,77,.78);
  border-color: rgba(188,174,236,.14);
}

html[data-theme="dark"] .pulse-item strong,
html[data-theme="dark"] .info-grid dd,
html[data-theme="dark"] .market-leader strong,
html[data-theme="dark"] .danger-player strong {
  color: #f4efff;
}

html[data-theme="dark"] .pulse-item span,
html[data-theme="dark"] .pulse-item small,
html[data-theme="dark"] .info-grid dt,
html[data-theme="dark"] .market-leader > div > span,
html[data-theme="dark"] .market-leader small,
html[data-theme="dark"] .danger-player span,
html[data-theme="dark"] .danger-player small,
html[data-theme="dark"] .danger-foot {
  color: #aaa4bc;
}

html[data-theme="dark"] .pulse-item small b,
html[data-theme="dark"] .info-grid dd,
html[data-theme="dark"] .market-leader > b,
html[data-theme="dark"] .danger-impact b {
  color: #a58ef5;
}

html[data-theme="dark"] .differential-owners {
  color: #ffc3e0;
  background: rgba(97,42,81,.68);
}

html[data-theme="dark"] .market-leader,
html[data-theme="dark"] .danger-result,
html[data-theme="dark"] .danger-manager-label {
  color: var(--ink);
  background: rgba(50,43,77,.78);
  border-color: rgba(188,174,236,.14);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.028);
}

html[data-theme="dark"] .market-details > summary {
  color: #c9c2d6;
}

html[data-theme="dark"] .market-details > summary b,
html[data-theme="dark"] .transfer-line > span > span {
  color: #e8e2f4;
  background: rgba(59,51,89,.82);
}

html[data-theme="dark"] .transfer-row header > span,
html[data-theme="dark"] .transfer-line > span {
  color: #b0a9bd;
}

html[data-theme="dark"] .transfer-row header em,
html[data-theme="dark"] .transfer-line.bought > b {
  color: #aee8bf;
  background: rgba(43,108,63,.48);
}

html[data-theme="dark"] .transfer-row header em.market-hit,
html[data-theme="dark"] .transfer-line.sold > b {
  color: #ffb4aa;
  background: rgba(130,51,43,.48);
}

html[data-theme="dark"] .bench-total,
html[data-theme="dark"] .bench-waste-rank {
  color: #f3cf8d;
  background: rgba(90,64,24,.56);
  border-color: rgba(225,181,85,.18);
}

html[data-theme="dark"] .bench-total b,
html[data-theme="dark"] .bench-waste-points {
  color: #f4d49b;
}

html[data-theme="dark"] .chart-wrap {
  background: rgba(43,37,69,.64);
  border-color: rgba(188,174,236,.13);
}

html[data-theme="dark"] .chart-grid-line {
  stroke: rgba(198,184,240,.14);
}

html[data-theme="dark"] .chart-label {
  fill: #aaa4bc;
}

html[data-theme="dark"] .chart-legend {
  color: #b5aec2;
}

html[data-theme="dark"] .info-note {
  background: rgba(48,42,75,.72);
  border-color: rgba(187,173,235,.13);
}

html[data-theme="dark"] .manager-dialog,
html[data-theme="dark"] .admin-dialog,
html[data-theme="dark"] .install-dialog {
  color: var(--ink);
  background: linear-gradient(155deg, #24203a, #19162b);
  border-color: rgba(195,181,243,.18);
  box-shadow: 0 34px 90px rgba(1,1,8,.52);
}

html[data-theme="dark"] .manager-dialog::backdrop,
html[data-theme="dark"] .admin-dialog::backdrop,
html[data-theme="dark"] .install-dialog::backdrop {
  background: rgba(7,6,15,.76);
}

html[data-theme="dark"] .dialog-shell,
html[data-theme="dark"] .admin-shell,
html[data-theme="dark"] .install-shell {
  color: var(--ink);
  background:
    radial-gradient(circle at -5% 0, rgba(44,195,208,.1), transparent 31%),
    radial-gradient(circle at 104% 44%, rgba(216,63,153,.1), transparent 33%),
    transparent;
}

html[data-theme="dark"] .admin-gate,
html[data-theme="dark"] .admin-team-card,
html[data-theme="dark"] .admin-list-head,
html[data-theme="dark"] .admin-participant,
html[data-theme="dark"] .install-hero,
html[data-theme="dark"] .browser-demo,
html[data-theme="dark"] .install-steps li {
  color: var(--ink);
  background: rgba(48,42,75,.78);
  border-color: rgba(187,173,235,.14);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.028);
}

html[data-theme="dark"] .admin-gate p,
html[data-theme="dark"] .admin-list-head > span,
html[data-theme="dark"] .admin-team-card label,
html[data-theme="dark"] .admin-participant > span,
html[data-theme="dark"] .install-intro,
html[data-theme="dark"] .install-steps span {
  color: #aaa4bc;
}

html[data-theme="dark"] .admin-gate input,
html[data-theme="dark"] .admin-team-card input,
html[data-theme="dark"] .admin-participant input,
html[data-theme="dark"] .admin-participant select,
html[data-theme="dark"] .danger-manager-label select {
  color: #f5f1ff;
  background: #2f2949;
  border-color: rgba(190,176,240,.17);
  box-shadow: none;
}

html[data-theme="dark"] input::placeholder {
  color: #8f88a0;
}

html[data-theme="dark"] option {
  color: #f5f1ff;
  background: #2f2949;
}

html[data-theme="dark"] .admin-gate input:focus,
html[data-theme="dark"] .admin-team-card input:focus,
html[data-theme="dark"] .admin-participant input:focus,
html[data-theme="dark"] .admin-participant select:focus {
  border-color: rgba(98,221,230,.54);
  box-shadow: 0 0 0 4px rgba(90,218,228,.12);
}

html[data-theme="dark"] .delete-participant {
  color: #ffb8d8;
  background: rgba(111,38,74,.58);
  border-color: rgba(255,123,185,.22);
}

html[data-theme="dark"] .delete-participant:hover {
  background: rgba(132,43,86,.7);
}

html[data-theme="dark"] .install-browser-tabs {
  background: rgba(43,37,68,.84);
  border-color: rgba(187,173,235,.13);
}

html[data-theme="dark"] .install-browser-tab {
  color: #aaa4bc;
}

html[data-theme="dark"] .install-browser-tab.active {
  color: #fff;
  background: linear-gradient(135deg, #55438e, #8168dc);
}

html[data-theme="dark"] .browser-demo {
  color: #e9e3f5;
}

html[data-theme="dark"] .browser-toolbar,
html[data-theme="dark"] .browser-address {
  color: #d5cee2;
  background: #302a4b;
  border-color: rgba(187,173,235,.13);
}

html[data-theme="dark"] .browser-share,
html[data-theme="dark"] .share-pointer b {
  color: #151321;
  background: #68e4e9;
  border-color: #a2f1f4;
}

html[data-theme="dark"] .share-pointer i {
  background: #68e4e9;
}

html[data-theme="dark"] .share-pointer i::after {
  border-color: #68e4e9;
}

html[data-theme="dark"] .error-banner {
  color: #ffc0dc;
  background: rgba(101,35,70,.72);
  border-color: rgba(255,124,184,.22);
  box-shadow: none;
}

html[data-theme="dark"] .error-banner span {
  color: #e7a9c6;
}

html[data-theme="dark"] .error-banner button {
  color: #fff;
  background: #9c3f78;
}

html[data-theme="dark"] .live-event-toast {
  color: #f4efff;
  background: rgba(37,32,61,.96);
  border-color: rgba(191,177,239,.17);
  box-shadow: 0 16px 42px rgba(1,1,8,.38);
}

html[data-theme="dark"] .site-footer,
html[data-theme="dark"] .site-footer strong {
  color: #aaa4bc;
}

html[data-theme="dark"] .mobile-nav {
  color: var(--ink);
  background: linear-gradient(145deg, rgba(39,34,66,.97), rgba(27,24,47,.96));
  border-color: rgba(194,180,242,.17);
  box-shadow: 0 16px 42px rgba(1,1,8,.42), inset 0 1px 0 rgba(255,255,255,.035);
}

html[data-theme="dark"] .mobile-nav-button {
  color: #aaa4bc;
}

html[data-theme="dark"] .mobile-nav-button:hover {
  color: #fff;
  background: rgba(255,255,255,.045);
}

html[data-theme="dark"] .mobile-nav-button.active {
  color: #fff;
  background:
    radial-gradient(circle at 0 0, rgba(69,207,218,.28), transparent 55%),
    linear-gradient(145deg, #51408b, #8068dc);
  box-shadow: 0 7px 20px rgba(3,2,13,.25), inset 0 1px 0 rgba(255,255,255,.05);
}

html[data-theme="dark"] .skeleton-row,
html[data-theme="dark"] .mini-skeleton {
  background: linear-gradient(90deg, rgba(45,39,70,.78), rgba(70,61,104,.92), rgba(45,39,70,.78));
  background-size: 220% 100%;
}

html[data-theme="dark"] button:disabled,
html[data-theme="dark"] input:disabled,
html[data-theme="dark"] select:disabled {
  color: #817a90;
  background: rgba(44,39,63,.72);
  border-color: rgba(150,139,178,.12);
  box-shadow: none;
  opacity: .58;
}

@media (max-width: 760px) {
  .theme-button {
    min-width: 59px;
    min-height: 37px;
    gap: 4px;
    padding: 5px 7px;
    border-radius: 12px;
  }

  .theme-icon {
    width: 15px;
    font-size: 14px;
  }

  .theme-button b {
    font-size: 8px;
  }

  .home-squads-disclosure {
    margin-top: 15px;
    border-radius: 18px;
  }

  .home-squads-disclosure > summary {
    min-height: 61px;
    padding: 10px 11px;
  }

  .home-squads-disclosure .section-head {
    display: grid;
    gap: 10px;
  }

  .home-squads-disclosure .team-tabs {
    width: 100%;
  }

  html[data-theme="dark"] body {
    background:
      radial-gradient(circle at -18% 6%, rgba(45,197,209,.17), transparent 22rem),
      radial-gradient(circle at 118% 27%, rgba(218,64,155,.16), transparent 24rem),
      radial-gradient(circle at 12% 94%, rgba(78,116,207,.13), transparent 26rem),
      radial-gradient(circle at 92% 84%, rgba(112,82,213,.15), transparent 26rem),
      linear-gradient(155deg, #11101f, #171329 56%, #1b1225);
  }

  html[data-theme="dark"] .ranking-row {
    background: rgba(49,43,76,.8);
    border-color: rgba(187,173,235,.14);
  }

  html[data-theme="dark"] .ranking-row > .numeric-cell:not(.total)::before,
  html[data-theme="dark"] .ranking-row > .numeric-cell.total::after {
    color: #aaa4bc;
  }
}

@media (max-width: 390px) {
  .theme-button {
    min-width: 38px;
    width: 38px;
    padding: 0;
  }

  .theme-button b {
    display: none;
  }

  .theme-icon {
    width: auto;
  }
}

/* v24 — mobile-only clarity for team split; no other site changes */
@media (max-width: 760px) {
  .home-squads-disclosure .team-tabs {
    gap: 8px;
    padding: 0;
    background: transparent;
  }

  .home-squads-disclosure .team-tab {
    min-width: 0;
    min-height: 54px;
    padding: 8px 6px;
    border: 1.5px solid rgba(74, 67, 111, .16);
    border-radius: 14px;
    font-size: 13px;
    font-weight: 950;
    line-height: 1.2;
    box-shadow: 0 6px 16px rgba(55, 42, 93, .06);
  }

  .home-squads-disclosure .team-tab::before {
    display: block;
    margin-bottom: 3px;
    font-size: 8px;
    font-weight: 850;
    letter-spacing: 0;
    opacity: .72;
  }

  .home-squads-disclosure #teamOneTab::before { content: "الفريق الأول"; }
  .home-squads-disclosure #teamTwoTab::before { content: "الفريق الثاني"; }

  .home-squads-disclosure #teamOneTab:not(.active) {
    color: #284c75;
    background: rgba(77, 207, 226, .11);
    border-color: rgba(69, 177, 205, .25);
  }

  .home-squads-disclosure #teamTwoTab:not(.active) {
    color: #8b3f63;
    background: rgba(238, 99, 166, .10);
    border-color: rgba(219, 94, 156, .22);
  }

  .home-squads-disclosure #teamOneTab.active {
    color: #fff;
    background: linear-gradient(135deg, #237fa6, #51409a);
    border-color: transparent;
    box-shadow: 0 8px 20px rgba(49, 78, 139, .22);
  }

  .home-squads-disclosure #teamTwoTab.active {
    color: #fff;
    background: linear-gradient(135deg, #c7527f, #8b3e79);
    border-color: transparent;
    box-shadow: 0 8px 20px rgba(155, 61, 115, .21);
  }

  .home-squads-disclosure .squad-summary {
    margin-top: 2px;
    border-width: 1.5px;
    border-color: rgba(65, 143, 179, .26);
  }

  .home-squads-disclosure .squads-card.team-two-active .squad-summary {
    border-color: rgba(206, 82, 137, .25);
  }

  .home-squads-disclosure .squad-identity strong {
    font-size: 15px;
    font-weight: 950;
  }

  .home-squads-disclosure .squad-identity small {
    font-size: 10px;
    font-weight: 750;
  }

  html[data-theme="dark"] .home-squads-disclosure #teamOneTab:not(.active) {
    color: #9ee8f0;
    background: rgba(61, 181, 202, .13);
    border-color: rgba(92, 210, 226, .22);
  }

  html[data-theme="dark"] .home-squads-disclosure #teamTwoTab:not(.active) {
    color: #f0a5c9;
    background: rgba(211, 75, 143, .12);
    border-color: rgba(231, 103, 166, .22);
  }

  html[data-theme="dark"] .home-squads-disclosure .squad-summary {
    border-color: rgba(91, 202, 221, .22);
  }

  html[data-theme="dark"] .home-squads-disclosure .squads-card.team-two-active .squad-summary {
    border-color: rgba(230, 100, 165, .22);
  }

  html[data-theme="dark"] .home-squads-disclosure .squad-identity strong {
    color: #f7f3ff;
  }
}


/* v25 — team split only: names without points + larger mobile team selectors */
.home-squads-disclosure .squad-row {
  grid-template-columns: 33px minmax(0, 1fr);
}

@media (max-width: 760px) {
  .home-squads-disclosure .team-tabs {
    width: 100%;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
  }

  .home-squads-disclosure .team-tab {
    width: 100%;
    min-width: 0;
    min-height: 68px;
    padding: 11px 10px;
    border-radius: 16px;
    font-size: 15px;
  }

  .home-squads-disclosure .team-tab::before {
    margin-bottom: 4px;
    font-size: 9px;
  }

  .home-squads-disclosure .squad-row {
    grid-template-columns: 28px minmax(0, 1fr);
    min-height: 48px;
  }

  .home-squads-disclosure .squad-person {
    font-size: 12px;
  }
}

/* v26 — visible two-team table; names only */
.team-division-card {
  position: relative;
  z-index: 2;
  margin-top: 18px;
  padding: 16px;
  overflow: hidden;
  color: #f8fff9;
  background: rgba(255, 255, 255, .075);
  border: 1px solid rgba(255, 255, 255, .14);
  border-radius: 22px;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .08);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
}

.team-division-title {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 12px;
}

.team-division-title .section-kicker {
  color: rgba(235, 255, 241, .58);
}

.team-division-title h2 {
  margin: 0;
  color: #fff;
  font-size: 18px;
  font-weight: 950;
}

.team-division-count {
  flex: 0 0 auto;
  padding: 6px 10px;
  color: rgba(246, 255, 249, .78);
  background: rgba(255, 255, 255, .08);
  border: 1px solid rgba(255, 255, 255, .1);
  border-radius: 999px;
  font-size: 10px;
  font-weight: 850;
}

.team-division-table {
  overflow: hidden;
  background: rgba(2, 16, 10, .25);
  border: 1px solid rgba(255, 255, 255, .105);
  border-radius: 17px;
}

.team-division-head,
.team-division-row {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.team-column-title {
  min-width: 0;
  display: grid;
  grid-template-columns: 10px minmax(0, 1fr);
  align-items: center;
  gap: 2px 8px;
  padding: 13px 15px;
  border-bottom: 1px solid rgba(255, 255, 255, .1);
}

.team-column-title + .team-column-title,
.team-member-cell + .team-member-cell {
  border-right: 1px solid rgba(255, 255, 255, .1);
}

.team-column-title i {
  width: 8px;
  height: 8px;
  grid-row: 1 / 3;
  align-self: center;
  background: var(--blue);
  border-radius: 50%;
  box-shadow: 0 0 14px color-mix(in srgb, var(--blue) 55%, transparent);
}

.team-two-title i {
  background: var(--coral);
  box-shadow: 0 0 14px color-mix(in srgb, var(--coral) 55%, transparent);
}

.team-column-title strong {
  min-width: 0;
  overflow: hidden;
  color: #fff;
  font-size: 14px;
  font-weight: 950;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.team-column-title small {
  grid-column: 2;
  color: rgba(239, 252, 243, .5);
  font-size: 9px;
  font-weight: 750;
}

.team-one-title {
  background: linear-gradient(135deg, color-mix(in srgb, var(--blue) 15%, transparent), transparent 72%);
}

.team-two-title {
  background: linear-gradient(225deg, color-mix(in srgb, var(--coral) 15%, transparent), transparent 72%);
}

.team-division-row:not(:last-child) {
  border-bottom: 1px solid rgba(255, 255, 255, .075);
}

.team-member-cell {
  min-width: 0;
  min-height: 48px;
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 8px 14px;
}

.team-member-cell > span {
  width: 25px;
  height: 25px;
  flex: 0 0 25px;
  display: grid;
  place-items: center;
  color: #09232c;
  background: color-mix(in srgb, var(--blue) 78%, white);
  border-radius: 8px;
  font-size: 9px;
  font-weight: 950;
  font-variant-numeric: tabular-nums;
}

.team-2-member > span {
  color: #42151f;
  background: color-mix(in srgb, var(--coral) 78%, white);
}

.team-member-cell strong {
  min-width: 0;
  overflow: hidden;
  color: rgba(255, 255, 255, .93);
  font-size: 14px;
  font-weight: 900;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.empty-member {
  opacity: .38;
}

html[data-theme="dark"] .team-division-card {
  background: rgba(39, 33, 63, .72);
  border-color: rgba(198, 184, 244, .18);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .035);
}

html[data-theme="dark"] .team-division-table {
  background: rgba(15, 12, 29, .32);
  border-color: rgba(198, 184, 244, .13);
}

@media (max-width: 760px) {
  .team-division-card {
    margin-top: 15px;
    padding: 12px;
    border-radius: 18px;
  }

  .team-division-title {
    margin-bottom: 10px;
  }

  .team-division-title h2 {
    font-size: 16px;
  }

  .team-division-count {
    padding: 5px 8px;
    font-size: 9px;
  }

  .team-division-table {
    border-radius: 14px;
  }

  .team-column-title {
    grid-template-columns: 8px minmax(0, 1fr);
    gap: 2px 6px;
    padding: 11px 9px;
  }

  .team-column-title i {
    width: 7px;
    height: 7px;
  }

  .team-column-title strong {
    font-size: 12px;
  }

  .team-column-title small {
    font-size: 8px;
  }

  .team-member-cell {
    min-height: 45px;
    gap: 7px;
    padding: 7px 8px;
  }

  .team-member-cell > span {
    width: 23px;
    height: 23px;
    flex-basis: 23px;
    border-radius: 7px;
    font-size: 8px;
  }

  .team-member-cell strong {
    font-size: 12px;
  }
}

@media (max-width: 360px) {
  .team-division-card {
    padding: 10px;
  }

  .team-member-cell {
    padding-inline: 6px;
  }

  .team-member-cell strong {
    font-size: 11px;
  }
}

/* v27 — collapsible team split with explicit light/dark text colors */
.team-division-disclosure {
  position: relative;
  z-index: 2;
  margin-top: 16px;
  overflow: hidden;
  color: #2b2440;
  background: rgba(255, 255, 255, .96);
  border: 1px solid rgba(255, 255, 255, .92);
  border-radius: 20px;
  box-shadow: 0 10px 28px rgba(3, 20, 12, .13), inset 0 1px 0 #fff;
}

.team-division-disclosure > summary {
  min-height: 64px;
  padding: 12px 14px;
  color: #2b2440;
}

.team-division-disclosure > summary:hover {
  background: #faf8ff;
}

.team-division-disclosure > summary b {
  color: #241b3b;
  font-size: 15px;
  font-weight: 950;
}

.team-division-disclosure > summary small {
  color: #756d87;
  font-size: 10px;
  font-weight: 750;
}

.team-division-disclosure > summary i {
  color: #604d8d;
  background: #f0ebfa;
  border: 1px solid #e2daf3;
  box-shadow: none;
}

.team-division-disclosure[open] > summary {
  background: #fbfaff;
  border-bottom: 1px solid #e9e4f1;
}

.team-division-disclosure .team-division-card {
  margin: 0;
  padding: 12px;
  color: #2b2440;
  background: #fbfaff;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
}

.team-division-disclosure .team-division-table {
  overflow: hidden;
  background: #fff;
  border: 1px solid #e7e1ef;
  border-radius: 15px;
  box-shadow: 0 7px 20px rgba(46, 34, 72, .055);
}

.team-division-disclosure .team-column-title {
  border-bottom-color: #e7e1ef;
}

.team-division-disclosure .team-column-title + .team-column-title,
.team-division-disclosure .team-member-cell + .team-member-cell {
  border-right-color: #ece7f3;
}

.team-division-disclosure .team-one-title {
  background: linear-gradient(135deg, #e6f8fc, #f8fdff);
}

.team-division-disclosure .team-two-title {
  background: linear-gradient(225deg, #fdebf4, #fff9fc);
}

.team-division-disclosure .team-column-title strong {
  color: #261f3b;
}

.team-division-disclosure .team-column-title small {
  color: #766e86;
}

.team-division-disclosure .team-division-row:not(:last-child) {
  border-bottom-color: #eeeaf4;
}

.team-division-disclosure .team-member-cell {
  background: #fff;
}

.team-division-disclosure .team-member-cell > span {
  color: #155a70;
  background: #dff5fa;
}

.team-division-disclosure .team-2-member > span {
  color: #8b3b63;
  background: #fbe3ef;
}

.team-division-disclosure .team-member-cell strong {
  color: #302941;
}

html[data-theme="dark"] .team-division-disclosure {
  color: #f5f1ff;
  background: rgba(36, 31, 58, .96);
  border-color: rgba(196, 182, 241, .18);
  box-shadow: 0 12px 30px rgba(1, 1, 8, .27), inset 0 1px 0 rgba(255, 255, 255, .035);
}

html[data-theme="dark"] .team-division-disclosure > summary,
html[data-theme="dark"] .team-division-disclosure > summary:hover,
html[data-theme="dark"] .team-division-disclosure[open] > summary {
  color: #f5f1ff;
  background: rgba(42, 36, 68, .96);
}

html[data-theme="dark"] .team-division-disclosure[open] > summary {
  border-bottom-color: rgba(192, 178, 238, .15);
}

html[data-theme="dark"] .team-division-disclosure > summary b {
  color: #f8f5ff;
}

html[data-theme="dark"] .team-division-disclosure > summary small {
  color: #b6aec8;
}

html[data-theme="dark"] .team-division-disclosure > summary i {
  color: #e4def2;
  background: rgba(67, 58, 98, .9);
  border-color: rgba(194, 180, 242, .17);
}

html[data-theme="dark"] .team-division-disclosure .team-division-card {
  color: #f5f1ff;
  background: #211c36;
}

html[data-theme="dark"] .team-division-disclosure .team-division-table {
  background: #29233f;
  border-color: rgba(196, 182, 241, .15);
  box-shadow: none;
}

html[data-theme="dark"] .team-division-disclosure .team-one-title {
  background: linear-gradient(135deg, rgba(72, 190, 211, .16), rgba(45, 39, 69, .72));
}

html[data-theme="dark"] .team-division-disclosure .team-two-title {
  background: linear-gradient(225deg, rgba(211, 78, 145, .16), rgba(45, 39, 69, .72));
}

html[data-theme="dark"] .team-division-disclosure .team-column-title,
html[data-theme="dark"] .team-division-disclosure .team-division-row:not(:last-child) {
  border-bottom-color: rgba(196, 182, 241, .12);
}

html[data-theme="dark"] .team-division-disclosure .team-column-title + .team-column-title,
html[data-theme="dark"] .team-division-disclosure .team-member-cell + .team-member-cell {
  border-right-color: rgba(196, 182, 241, .12);
}

html[data-theme="dark"] .team-division-disclosure .team-column-title strong,
html[data-theme="dark"] .team-division-disclosure .team-member-cell strong {
  color: #f5f1ff;
}

html[data-theme="dark"] .team-division-disclosure .team-column-title small {
  color: #aaa3bb;
}

html[data-theme="dark"] .team-division-disclosure .team-member-cell {
  background: #29233f;
}

html[data-theme="dark"] .team-division-disclosure .team-member-cell > span {
  color: #bceff5;
  background: rgba(48, 157, 180, .24);
}

html[data-theme="dark"] .team-division-disclosure .team-2-member > span {
  color: #ffc1dc;
  background: rgba(175, 62, 119, .25);
}

@media (max-width: 760px) {
  .team-division-disclosure {
    margin-top: 14px;
    border-radius: 17px;
  }

  .team-division-disclosure > summary {
    min-height: 59px;
    padding: 10px 11px;
  }

  .team-division-disclosure > summary b {
    font-size: 14px;
  }

  .team-division-disclosure > summary small {
    font-size: 9px;
  }

  .team-division-disclosure .team-division-card {
    padding: 9px;
  }

  .team-division-disclosure .team-division-table {
    border-radius: 12px;
  }
}

/* v28 — iPhone/iPad install prompt and guide only */
.ios-install-prompt {
  position: fixed;
  z-index: 90;
  right: 14px;
  bottom: calc(88px + env(safe-area-inset-bottom));
  left: 14px;
  width: min(430px, calc(100% - 28px));
  min-height: 72px;
  display: grid;
  grid-template-columns: 48px minmax(0, 1fr) 24px;
  align-items: center;
  gap: 11px;
  margin: auto;
  padding: 10px 12px;
  color: #2c2441;
  background: rgba(255, 255, 255, .97);
  border: 1px solid #e6dff0;
  border-radius: 19px;
  box-shadow: 0 16px 44px rgba(41, 27, 72, .22), inset 0 1px 0 #fff;
  text-align: right;
  cursor: pointer;
  -webkit-tap-highlight-color: transparent;
  backdrop-filter: blur(18px);
  -webkit-backdrop-filter: blur(18px);
}

.ios-install-prompt.visible {
  animation: ios-install-enter .48s cubic-bezier(.2, .78, .2, 1) both;
}

.ios-install-apple {
  width: 48px;
  height: 48px;
  display: grid;
  place-items: center;
  color: #fff;
  background: linear-gradient(145deg, #4d2d6f, #8a5bc4);
  border-radius: 14px;
  box-shadow: 0 8px 18px rgba(79, 44, 116, .24);
  font-size: 27px;
  line-height: 1;
}

.ios-install-copy {
  min-width: 0;
  display: grid;
  gap: 3px;
}

.ios-install-copy b {
  color: #241b3b;
  font-size: 14px;
  font-weight: 950;
}

.ios-install-copy small {
  color: #746c84;
  font-size: 10px;
  font-weight: 750;
}

.ios-install-open {
  color: #7753a6;
  font-size: 26px;
  font-weight: 900;
  transform: translateX(-2px);
}

.install-detected {
  width: fit-content;
  margin: -6px 0 12px !important;
  padding: 5px 9px;
  color: #5d3f85 !important;
  background: #f0e9fa;
  border: 1px solid #e1d5f2;
  border-radius: 999px;
  font-size: 9px !important;
  font-weight: 850;
}

html[data-theme="light"] .install-dialog {
  color: #2c2441;
  background: #fdfbff;
  border-color: #e5deee;
  box-shadow: 0 28px 80px rgba(35, 23, 62, .28);
}

html[data-theme="light"] .install-shell {
  background:
    radial-gradient(circle at 0 0, rgba(95, 218, 234, .11), transparent 34%),
    radial-gradient(circle at 100% 38%, rgba(231, 104, 174, .09), transparent 38%),
    #fdfbff;
}

html[data-theme="light"] .install-shell .dialog-close {
  color: #5d536d;
  background: #f2edf7;
  border-color: #e0d8ea;
}

html[data-theme="light"] .install-hero > div > span {
  color: #766d86;
}

html[data-theme="light"] .install-hero h2 {
  color: #251d3a;
}

html[data-theme="light"] .install-intro {
  color: #665e74;
}

html[data-theme="light"] .install-browser-tabs {
  background: #f0ebf6;
  border: 1px solid #e2daec;
}

html[data-theme="light"] .install-browser-tab {
  color: #6c6479;
}

html[data-theme="light"] .install-browser-tab.active {
  color: #fff;
  background: linear-gradient(135deg, #4d2d6f, #8a5bc4);
}

html[data-theme="light"] .install-steps li {
  color: #4d465a;
}

html[data-theme="light"] .install-steps li b {
  color: #fff;
  background: linear-gradient(145deg, #4d2d6f, #8a5bc4);
}

html[data-theme="light"] .install-dialog-actions .secondary-action {
  color: #5d5569;
  background: #f1edf5;
  border-color: #ddd5e7;
}

html[data-theme="dark"] .ios-install-prompt {
  color: #f5f1ff;
  background: rgba(39, 33, 62, .97);
  border-color: rgba(198, 184, 244, .18);
  box-shadow: 0 18px 48px rgba(1, 1, 8, .45), inset 0 1px 0 rgba(255, 255, 255, .04);
}

html[data-theme="dark"] .ios-install-apple {
  background: linear-gradient(145deg, #6550a2, #9b76df);
  box-shadow: 0 8px 20px rgba(80, 52, 137, .34);
}

html[data-theme="dark"] .ios-install-copy b {
  color: #faf7ff;
}

html[data-theme="dark"] .ios-install-copy small {
  color: #b5adc4;
}

html[data-theme="dark"] .ios-install-open {
  color: #c7b5ef;
}

html[data-theme="dark"] .install-detected {
  color: #cfbdf4 !important;
  background: rgba(77, 62, 117, .66);
  border-color: rgba(198, 184, 244, .17);
}

@keyframes ios-install-enter {
  from { opacity: 0; transform: translateY(18px) scale(.97); }
  to { opacity: 1; transform: translateY(0) scale(1); }
}

@media (max-width: 420px) {
  .ios-install-prompt {
    right: 10px;
    bottom: calc(80px + env(safe-area-inset-bottom));
    left: 10px;
    width: calc(100% - 20px);
    min-height: 68px;
    grid-template-columns: 44px minmax(0, 1fr) 20px;
    gap: 9px;
    padding: 9px 10px;
    border-radius: 17px;
  }

  .ios-install-apple {
    width: 44px;
    height: 44px;
    border-radius: 13px;
    font-size: 25px;
  }

  .ios-install-copy b {
    font-size: 13px;
  }

  .ios-install-copy small {
    font-size: 9px;
  }

  .install-dialog-actions {
    grid-template-columns: 1fr;
  }

  .install-dialog-actions .secondary-action {
    grid-row: 2;
  }
}

@media (prefers-reduced-motion: reduce) {
  .ios-install-prompt.visible {
    animation: none;
  }
}

/* v29 — standalone administration dashboard */
.header-admin-button {
  min-height: 40px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  padding: 8px 12px;
  color: #4b3a75;
  background: rgba(255, 255, 255, .62);
  border: 1px solid rgba(98, 77, 149, .15);
  border-radius: 13px;
  font: inherit;
  font-size: 12px;
  font-weight: 900;
  cursor: pointer;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .8);
}

.header-admin-button:hover,
.header-admin-button:focus-visible {
  color: #fff;
  background: linear-gradient(135deg, #382166, #7f5bd1);
  outline: none;
}

.score-team-heading {
  min-width: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
}

.score-team-logo,
.admin-logo-preview {
  width: 38px;
  height: 38px;
  flex: 0 0 auto;
  display: grid;
  place-items: center;
  overflow: hidden;
  color: #fff;
  background: linear-gradient(145deg, var(--team-color, #6340a1), #27144b);
  border: 1px solid rgba(255, 255, 255, .7);
  border-radius: 12px;
  font-size: 11px;
  font-weight: 950;
  box-shadow: 0 7px 18px rgba(61, 40, 105, .18);
}

.score-team-logo img,
.admin-logo-preview img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.score-team-logo.has-image,
.admin-logo-preview.has-image {
  padding: 2px;
  background: rgba(255, 255, 255, .78);
}

.score-team-captain {
  display: block;
  max-width: 155px;
  margin: 5px auto 0;
  overflow: hidden;
  color: #6b6380;
  font-size: 10px;
  font-weight: 800;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.score-team-captain[hidden] { display: none; }

.info-actions:has(> :only-child) { grid-template-columns: 1fr; }

.admin-mode .mobile-nav,
.admin-mode .site-footer,
.admin-mode .ios-install-prompt {
  display: none !important;
}

.admin-page {
  width: min(1120px, 100%);
  margin: 0 auto;
  padding: 8px 0 48px;
}

.admin-page-header {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 18px;
  margin-bottom: 16px;
  padding: 20px 22px;
  background: rgba(255, 255, 255, .64);
  border: 1px solid rgba(98, 77, 149, .13);
  border-radius: 25px;
  box-shadow: 0 18px 45px rgba(75, 51, 133, .08), inset 0 1px 0 rgba(255, 255, 255, .88);
  backdrop-filter: blur(18px);
}

.admin-page-header h1,
.admin-panel-heading h2,
.admin-login-card h2,
.admin-top-pages h3 {
  margin: 0;
  color: #211547;
}

.admin-page-header h1 { font-size: clamp(24px, 4vw, 36px); }
.admin-page-header p,
.admin-panel-heading p { margin: 4px 0 0; color: #756d87; font-size: 12px; line-height: 1.7; }

.admin-back-button,
.admin-secure-badge {
  min-height: 40px;
  display: inline-flex;
  align-items: center;
  gap: 7px;
  padding: 9px 12px;
  color: #4b3a75;
  background: rgba(247, 244, 255, .82);
  border: 1px solid rgba(98, 77, 149, .14);
  border-radius: 13px;
  font: inherit;
  font-size: 11px;
  font-weight: 900;
}

.admin-back-button { cursor: pointer; }
.admin-back-button:hover { background: #eee8ff; }
.admin-secure-badge i { color: #39ae75; font-style: normal; }

.admin-login-card {
  width: min(540px, 100%);
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 16px;
  margin: 40px auto;
  padding: 28px;
  background: rgba(255, 255, 255, .76);
  border: 1px solid rgba(98, 77, 149, .14);
  border-radius: 26px;
  box-shadow: 0 22px 65px rgba(60, 40, 110, .12);
}

.admin-login-card[hidden],
.admin-dashboard[hidden],
.admin-panel[hidden] { display: none !important; }

.admin-login-icon {
  width: 52px;
  height: 52px;
  display: grid;
  place-items: center;
  color: #fff;
  background: linear-gradient(145deg, #392067, #8963df);
  border-radius: 17px;
  font-size: 24px;
}

.admin-login-card p { margin: 5px 0 0; color: #756d87; font-size: 12px; }
.admin-login-card form { grid-column: 1 / -1; display: grid; gap: 7px; }
.admin-login-card form > label { color: #6d6680; font-size: 11px; font-weight: 900; }
.admin-login-card form > div { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 8px; }

.admin-login-card input,
.admin-team-card input:not([type="color"]),
.admin-team-card select,
.admin-participant input,
.admin-participant select {
  width: 100%;
  min-height: 46px;
  padding: 10px 12px;
  color: #25194b;
  background: rgba(250, 249, 255, .9);
  border: 1px solid #ddd7eb;
  border-radius: 12px;
  outline: 0;
  font: inherit;
  font-size: 13px;
}

.admin-login-card input:focus,
.admin-team-card input:focus,
.admin-team-card select:focus,
.admin-participant input:focus,
.admin-participant select:focus {
  border-color: #8c71d0;
  box-shadow: 0 0 0 4px rgba(126, 88, 206, .11);
}

.admin-summary-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  margin-bottom: 12px;
}

.admin-summary-grid article {
  min-width: 0;
  display: flex;
  align-items: center;
  gap: 11px;
  padding: 15px;
  background: rgba(255, 255, 255, .68);
  border: 1px solid rgba(98, 77, 149, .12);
  border-radius: 18px;
}

.admin-summary-grid article > div { min-width: 0; display: grid; gap: 3px; }
.admin-summary-grid article span:not(.admin-summary-icon) { overflow: hidden; color: #756d87; font-size: 10px; font-weight: 800; text-overflow: ellipsis; white-space: nowrap; }
.admin-summary-grid article b { color: #24174b; font-size: 24px; line-height: 1; }
.admin-summary-icon { width: 39px; height: 39px; flex: 0 0 auto; display: grid; place-items: center; color: #fff; border-radius: 12px; font-size: 14px; font-weight: 950; }
.admin-summary-icon.purple { background: linear-gradient(145deg, #6c45c1, #3a226e); }
.admin-summary-icon.blue { background: linear-gradient(145deg, #51cee8, #297bb7); }
.admin-summary-icon.coral { background: linear-gradient(145deg, #ff8a86, #d84f75); }
.admin-summary-icon.green { background: linear-gradient(145deg, #68d7ad, #298d69); }

.admin-tabs {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 5px;
  margin-bottom: 12px;
  padding: 6px;
  overflow-x: auto;
  scrollbar-width: none;
  background: rgba(255, 255, 255, .58);
  border: 1px solid rgba(98, 77, 149, .11);
  border-radius: 18px;
}

.admin-tabs::-webkit-scrollbar { display: none; }
.admin-tabs button {
  min-width: 100px;
  min-height: 48px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  color: #756d87;
  background: transparent;
  border: 0;
  border-radius: 12px;
  font: inherit;
  font-size: 11px;
  cursor: pointer;
}
.admin-tabs button span { font-size: 16px; }
.admin-tabs button.active { color: #fff; background: linear-gradient(135deg, #382166, #7f59d1); box-shadow: 0 8px 20px rgba(75, 44, 140, .2); }

.admin-workspace {
  min-height: 410px;
  padding: 20px;
  background: rgba(255, 255, 255, .68);
  border: 1px solid rgba(98, 77, 149, .12);
  border-radius: 23px;
}

.admin-panel-heading { display: flex; align-items: center; justify-content: space-between; gap: 14px; margin-bottom: 17px; }
.admin-panel-heading h2 { font-size: 21px; }
.admin-panel-actions > div:last-child { display: flex; flex-wrap: wrap; gap: 7px; }

.admin-status-list { display: grid; gap: 9px; }
.admin-status-list article,
.admin-device-row {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 12px;
  padding: 14px;
  background: rgba(249, 248, 255, .82);
  border: 1px solid #e5dfef;
  border-radius: 15px;
}
.admin-status-list article > div,
.admin-device-row > div { min-width: 0; display: grid; gap: 3px; }
.admin-status-list b,
.admin-device-row b { color: #2b2050; font-size: 13px; }
.admin-status-list small,
.admin-device-row small { overflow: hidden; color: #827a91; font-size: 10px; line-height: 1.6; text-overflow: ellipsis; white-space: nowrap; }
.admin-status-list article > strong { color: #348a67; font-size: 10px; }
.status-icon,
.device-avatar { width: 38px; height: 38px; display: grid; place-items: center; color: #fff; border-radius: 12px; font-weight: 950; }
.status-icon.ok { background: #54bd91; }
.status-icon.live { background: #7f59d1; }
.status-icon.neutral { background: #6bbbd0; }
.status-icon.error { background: #bd4c68; }
.device-avatar { color: #6d50ad; background: #eee8fb; }

.api-football-status-actions {
  display: flex !important;
  align-items: center;
  justify-content: flex-end;
  gap: 8px !important;
}
.api-football-status-actions strong { color: #756c83; font-size: 10px; white-space: nowrap; }
.api-football-status-actions .secondary-action { min-width: 112px; white-space: nowrap; }
.api-football-status[data-status="ok"] { border-color: #c7e9d8; box-shadow: inset -3px 0 #48b982; }
.api-football-status[data-status="ok"] .api-football-status-actions strong { color: #287657; }
.api-football-status[data-status="error"] { border-color: #efcad3; box-shadow: inset -3px 0 #bd4c68; }
.api-football-status[data-status="error"] .api-football-status-actions strong { color: #a23b55; }

.admin-team-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.admin-team-card {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 96px;
  gap: 12px;
  margin: 0;
  padding: 18px;
  background: rgba(249, 248, 255, .82);
  border: 1px solid #e3ddec;
  border-radius: 19px;
}
.admin-team-card legend { padding: 0 8px; color: #2a1d50; font-size: 14px; font-weight: 950; }
.admin-team-card > label { display: grid; gap: 6px; color: #777084; font-size: 10px; font-weight: 900; }
.admin-team-card > label:not(:nth-last-child(2)) { grid-column: 1 / -1; }
.admin-team-card input[type="color"] { width: 100%; min-height: 46px; padding: 4px; background: #fff; border: 1px solid #ddd7eb; border-radius: 12px; }
.admin-team-card .captain-field { grid-column: 1 / -1; }
.admin-team-logo-editor { grid-column: 1 / -1; display: flex; align-items: center; gap: 12px; padding-bottom: 4px; }
.admin-logo-preview { width: 64px; height: 64px; border-radius: 17px; }
.admin-team-logo-editor > div { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; }
.admin-team-logo-editor small { width: 100%; color: #8a8297; font-size: 9px; }
.upload-logo-button,
.clear-logo-button,
.secondary-action,
.danger-action,
.danger-link,
.admin-participant-heading > button {
  min-height: 37px;
  padding: 8px 11px;
  border-radius: 10px;
  font: inherit;
  font-size: 10px;
  font-weight: 900;
  cursor: pointer;
}
.upload-logo-button,
.admin-participant-heading > button { color: #fff; background: #6443a9; border: 1px solid #593997; }
.clear-logo-button,
.secondary-action { color: #5b4a79; background: #eee9f8; border: 1px solid #ddd4ed; }
.danger-action { color: #fff; background: #b94563; border: 1px solid #a73754; }
.danger-link { color: #a83c57; background: #fff0f4; border: 1px solid #f0ced7; }
.danger-link:disabled { opacity: .45; cursor: default; }

.admin-participants { display: grid; gap: 8px; }
.admin-participant {
  display: grid;
  grid-template-columns: 34px minmax(160px, 1.2fr) minmax(130px, .8fr) minmax(130px, .7fr) 38px;
  gap: 8px;
  align-items: center;
  padding: 9px;
  background: rgba(249, 248, 255, .82);
  border: 1px solid #e3ddec;
  border-radius: 14px;
}
.admin-participant > span { color: #837b91; font-size: 11px; font-weight: 900; text-align: center; }
.delete-participant { width: 38px; height: 38px; color: #b23f5d; background: #fff0f4; border: 1px solid #f0ced7; border-radius: 11px; font-size: 20px; cursor: pointer; }

.admin-toggle-list { display: grid; gap: 8px; }
.admin-toggle-list label { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: 12px; padding: 14px; background: rgba(249, 248, 255, .82); border: 1px solid #e3ddec; border-radius: 15px; cursor: pointer; }
.admin-toggle-list label > span { display: grid; gap: 3px; }
.admin-toggle-list b { color: #2c2050; font-size: 13px; }
.admin-toggle-list small { color: #827a91; font-size: 10px; }
.admin-toggle-list input { position: absolute; opacity: 0; pointer-events: none; }
.admin-toggle-list i { position: relative; width: 48px; height: 27px; background: #d6cfdf; border-radius: 20px; transition: background .2s ease; }
.admin-toggle-list i::after { content: ""; position: absolute; top: 4px; right: 4px; width: 19px; height: 19px; background: #fff; border-radius: 50%; box-shadow: 0 2px 7px rgba(44, 28, 80, .2); transition: transform .2s ease; }
.admin-toggle-list input:checked + i { background: #6f4db6; }
.admin-toggle-list input:checked + i::after { transform: translateX(-21px); }

.admin-device-list { display: grid; gap: 8px; }
.admin-empty-state { padding: 26px 14px; color: #81798f; background: rgba(249, 248, 255, .7); border: 1px dashed #d8d0e4; border-radius: 15px; font-size: 11px; text-align: center; }
.admin-empty-state.error { color: #ab3d59; }

.admin-live-count {
  min-height: 37px;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 7px 11px;
  color: #226e50;
  background: #eaf8f1;
  border: 1px solid #c8ead9;
  border-radius: 999px;
  font-size: 10px;
  font-weight: 900;
}
.admin-live-count i { width: 8px; height: 8px; background: #36b77b; border-radius: 50%; box-shadow: 0 0 0 4px rgba(54, 183, 123, .13); animation: admin-presence-pulse 1.8s ease-in-out infinite; }
.admin-live-count b { font-size: 13px; }
.admin-device-title { min-width: 0; display: flex; align-items: center; gap: 7px; }
.presence-status,
.selection-status { display: inline-flex; align-items: center; width: max-content; padding: 4px 8px; border-radius: 999px; font-size: 9px; font-weight: 900; white-space: nowrap; }
.presence-status.online { color: #216e4f; background: #e7f8ef; border: 1px solid #c1ead5; }
.presence-status.offline { color: #7d7489; background: #f0edf4; border: 1px solid #e1dbe8; }
.admin-device-row.online { border-color: #c7e9d8; box-shadow: inset -3px 0 #48b982; }
.admin-device-row.online .device-avatar { color: #fff; background: #48b982; }

.admin-participant-coverage { margin-top: 22px; padding-top: 20px; border-top: 1px solid #e5dfef; }
.admin-subheading { display: flex; align-items: end; justify-content: space-between; gap: 14px; margin-bottom: 11px; }
.admin-subheading h3 { margin-top: 2px; color: #2b2050; font-size: 16px; }
.admin-subheading p { color: #81798f; font-size: 10px; }
.admin-coverage-list { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.admin-coverage-row { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; gap: 10px; padding: 12px; background: rgba(249, 248, 255, .82); border: 1px solid #e5dfef; border-radius: 14px; }
.coverage-avatar { width: 34px; height: 34px; display: grid; place-items: center; color: #887f94; background: #efecf3; border-radius: 11px; font-size: 13px; font-weight: 950; }
.admin-coverage-row > div { min-width: 0; display: grid; gap: 2px; }
.admin-coverage-row b { overflow: hidden; color: #2b2050; font-size: 12px; text-overflow: ellipsis; white-space: nowrap; }
.admin-coverage-row small { overflow: hidden; color: #81798f; font-size: 9px; text-overflow: ellipsis; white-space: nowrap; }
.admin-coverage-row.installed .coverage-avatar { color: #fff; background: #49b982; }
.admin-coverage-row.online { border-color: #c7e9d8; box-shadow: inset -3px 0 #48b982; }
.selection-status.installed { color: #216e4f; background: #e7f8ef; border: 1px solid #c1ead5; }
.selection-status.not-installed { color: #7d7489; background: #f0edf4; border: 1px solid #e1dbe8; }
.analytics-live-status { display: inline-flex; align-items: center; gap: 5px; margin-top: 7px; color: #2d8360; font-size: 9px; font-weight: 900; }
.analytics-live-status::before { content: ""; width: 7px; height: 7px; background: #40b57d; border-radius: 50%; }

.admin-analytics-grid { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 9px; }
.admin-analytics-grid article { display: grid; gap: 5px; padding: 16px; background: linear-gradient(145deg, #f9f7ff, #f2eefb); border: 1px solid #e1daed; border-radius: 16px; }
.admin-analytics-grid span { color: #7c748b; font-size: 10px; font-weight: 800; }
.admin-analytics-grid b { color: #2a1b52; font-size: 26px; }
.admin-analytics-grid .online-stat { background: linear-gradient(145deg, #f2fbf7, #e8f7ef); border-color: #cdebdc; }
.admin-analytics-grid .online-stat span { color: #347b5e; }
.admin-analytics-grid .online-stat b { color: #1f7250; }
.admin-top-pages { margin-top: 18px; }
.admin-top-pages h3 { margin-bottom: 9px; font-size: 15px; }
.admin-top-pages > div { display: grid; gap: 7px; }
.admin-page-stat { display: grid; grid-template-columns: 30px minmax(0, 1fr) auto; align-items: center; gap: 9px; padding: 11px 13px; background: rgba(249, 248, 255, .82); border: 1px solid #e5dfef; border-radius: 13px; }
.admin-page-stat span { width: 26px; height: 26px; display: grid; place-items: center; color: #6443a9; background: #eee8fb; border-radius: 8px; font-size: 10px; font-weight: 950; }
.admin-page-stat b { color: #2c2050; font-size: 12px; }
.admin-page-stat strong { color: #777084; font-size: 10px; }

.admin-savebar { position: sticky; z-index: 4; bottom: 10px; display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: 12px; margin-top: 12px; padding: 10px 12px; background: rgba(250, 248, 255, .9); border: 1px solid rgba(98, 77, 149, .14); border-radius: 17px; box-shadow: 0 15px 40px rgba(54, 34, 102, .13); backdrop-filter: blur(16px); }
.admin-savebar .admin-message { min-height: 0; margin: 0; padding: 0 4px; font-size: 11px; text-align: right; }
.admin-savebar .save-config { width: auto; min-width: 190px; min-height: 44px; }

html[data-theme="dark"] .header-admin-button,
html[data-theme="dark"] .admin-page-header,
html[data-theme="dark"] .admin-summary-grid article,
html[data-theme="dark"] .admin-tabs,
html[data-theme="dark"] .admin-workspace,
html[data-theme="dark"] .admin-login-card,
html[data-theme="dark"] .admin-savebar {
  color: #f5f1ff;
  background: rgba(38, 32, 60, .83);
  border-color: rgba(198, 184, 244, .15);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .035);
}
html[data-theme="dark"] .admin-page-header h1,
html[data-theme="dark"] .admin-panel-heading h2,
html[data-theme="dark"] .admin-login-card h2,
html[data-theme="dark"] .admin-top-pages h3,
html[data-theme="dark"] .admin-summary-grid article b { color: #faf7ff; }
html[data-theme="dark"] .admin-page-header p,
html[data-theme="dark"] .admin-panel-heading p,
html[data-theme="dark"] .admin-login-card p { color: #b5adc4; }
html[data-theme="dark"] .admin-back-button,
html[data-theme="dark"] .admin-secure-badge { color: #ddd2ef; background: rgba(52, 44, 79, .82); border-color: rgba(198, 184, 244, .14); }
html[data-theme="dark"] .admin-status-list article,
html[data-theme="dark"] .admin-team-card,
html[data-theme="dark"] .admin-participant,
html[data-theme="dark"] .admin-toggle-list label,
html[data-theme="dark"] .admin-device-row,
html[data-theme="dark"] .admin-analytics-grid article,
html[data-theme="dark"] .admin-page-stat,
html[data-theme="dark"] .admin-coverage-row,
html[data-theme="dark"] .admin-empty-state { background: rgba(49, 42, 75, .76); border-color: rgba(198, 184, 244, .13); }
html[data-theme="dark"] .admin-status-list b,
html[data-theme="dark"] .admin-device-row b,
html[data-theme="dark"] .admin-team-card legend,
html[data-theme="dark"] .admin-toggle-list b,
html[data-theme="dark"] .admin-page-stat b,
html[data-theme="dark"] .admin-coverage-row b,
html[data-theme="dark"] .admin-subheading h3,
html[data-theme="dark"] .admin-analytics-grid b { color: #f7f3ff; }
html[data-theme="dark"] .admin-status-list small,
html[data-theme="dark"] .admin-device-row small,
html[data-theme="dark"] .admin-toggle-list small,
html[data-theme="dark"] .admin-analytics-grid span,
html[data-theme="dark"] .admin-page-stat strong { color: #b4acc2; }
html[data-theme="dark"] .api-football-status-actions strong { color: #b8b0c5; }
html[data-theme="dark"] .api-football-status[data-status="ok"] { border-color: rgba(105, 209, 161, .28); }
html[data-theme="dark"] .api-football-status[data-status="ok"] .api-football-status-actions strong { color: #8ce2ba; }
html[data-theme="dark"] .api-football-status[data-status="error"] { border-color: rgba(225, 104, 136, .3); }
html[data-theme="dark"] .api-football-status[data-status="error"] .api-football-status-actions strong { color: #f0a0b4; }
html[data-theme="dark"] .admin-coverage-row small,
html[data-theme="dark"] .admin-subheading p { color: #b4acc2; }
html[data-theme="dark"] .admin-participant-coverage { border-color: rgba(198, 184, 244, .13); }
html[data-theme="dark"] .admin-live-count,
html[data-theme="dark"] .presence-status.online,
html[data-theme="dark"] .selection-status.installed { color: #8ce2ba; background: rgba(46, 130, 91, .22); border-color: rgba(105, 209, 161, .24); }
html[data-theme="dark"] .presence-status.offline,
html[data-theme="dark"] .selection-status.not-installed { color: #b8b0c5; background: rgba(112, 102, 131, .2); border-color: rgba(198, 184, 244, .13); }
html[data-theme="dark"] .admin-device-row.online { border-color: rgba(105, 209, 161, .28); }
html[data-theme="dark"] .admin-coverage-row.online { border-color: rgba(105, 209, 161, .28); }
html[data-theme="dark"] .admin-analytics-grid .online-stat { background: rgba(38, 94, 70, .45); border-color: rgba(105, 209, 161, .22); }
html[data-theme="dark"] .admin-analytics-grid .online-stat span,
html[data-theme="dark"] .admin-analytics-grid .online-stat b,
html[data-theme="dark"] .analytics-live-status { color: #8ce2ba; }
html[data-theme="dark"] .admin-login-card input,
html[data-theme="dark"] .admin-team-card input:not([type="color"]),
html[data-theme="dark"] .admin-team-card select,
html[data-theme="dark"] .admin-participant input,
html[data-theme="dark"] .admin-participant select { color: #f5f1ff; background: #2d2745; border-color: rgba(198, 184, 244, .17); }
html[data-theme="dark"] .clear-logo-button,
html[data-theme="dark"] .secondary-action { color: #ded4ef; background: #3a3156; border-color: rgba(198, 184, 244, .14); }
html[data-theme="dark"] .score-team-captain { color: #c4bad2; }

@media (max-width: 760px) {
  .header-admin-button { width: 39px; min-height: 39px; padding: 0; border-radius: 12px; }
  .header-admin-button b { display: none; }
  .score-team-heading { gap: 5px; }
  .score-team-logo { width: 30px; height: 30px; border-radius: 9px; font-size: 8px; }
  .score-team-captain { max-width: 112px; font-size: 8px; }
  .admin-page { padding: 2px 0 24px; }
  .admin-page-header { grid-template-columns: 1fr auto; gap: 11px; padding: 15px; border-radius: 20px; }
  .admin-page-header > div { grid-column: 1 / -1; grid-row: 1; }
  .admin-page-header .admin-back-button { grid-column: 1; grid-row: 2; justify-self: start; }
  .admin-page-header .admin-secure-badge { grid-column: 2; grid-row: 2; }
  .admin-page-header h1 { font-size: 26px; }
  .admin-login-card { grid-template-columns: 1fr; margin: 20px auto; padding: 20px 16px; text-align: center; }
  .admin-login-icon { margin: 0 auto; }
  .admin-login-card form { grid-column: 1; text-align: right; }
  .admin-login-card form > div { grid-template-columns: 1fr; }
  .admin-summary-grid { grid-template-columns: 1fr 1fr; }
  .admin-summary-grid article { padding: 11px; }
  .admin-summary-grid article b { font-size: 21px; }
  .admin-tabs { grid-template-columns: repeat(6, 100px); justify-content: start; }
  .admin-workspace { min-height: 360px; padding: 14px 11px; border-radius: 19px; }
  .admin-panel-heading { align-items: flex-start; flex-direction: column; }
  .admin-panel-actions > div:last-child { width: 100%; align-items: center; }
  .admin-panel-heading h2 { font-size: 19px; }
  .admin-team-grid { grid-template-columns: 1fr; }
  .admin-team-card { grid-template-columns: minmax(0, 1fr) 78px; padding: 14px 11px; }
  .admin-participant { grid-template-columns: 30px minmax(0, 1fr) 38px; padding: 8px; }
  .admin-participant > span { grid-column: 1; grid-row: 1; }
  .admin-participant .admin-name { grid-column: 2; grid-row: 1; }
  .admin-participant .delete-participant { grid-column: 3; grid-row: 1; }
  .admin-participant .admin-id,
  .admin-participant .admin-team { grid-column: 2 / -1; }
  .admin-status-list article { grid-template-columns: auto minmax(0, 1fr); }
  .admin-status-list article > strong { grid-column: 2; }
  .api-football-status-actions { grid-column: 2; justify-content: flex-start; flex-wrap: wrap; }
  .admin-device-row { grid-template-columns: auto minmax(0, 1fr); }
  .admin-device-row .danger-link { grid-column: 2; justify-self: start; }
  .admin-analytics-grid { grid-template-columns: 1fr 1fr; }
  .admin-analytics-grid article:last-child { grid-column: 1 / -1; }
  .admin-coverage-list { grid-template-columns: 1fr; }
  .admin-coverage-row { grid-template-columns: auto minmax(0, 1fr); }
  .admin-coverage-row .selection-status { grid-column: 2; justify-self: start; }
  .admin-subheading { align-items: flex-start; flex-direction: column; gap: 5px; }
  .admin-device-title { align-items: flex-start; flex-direction: column; gap: 4px; }
  .admin-device-row small { white-space: normal; }
  .admin-savebar { bottom: max(8px, env(safe-area-inset-bottom)); grid-template-columns: 1fr; padding: 9px; }
  .admin-savebar .admin-message { min-height: 16px; text-align: center; }
  .admin-savebar .save-config { width: 100%; min-width: 0; }
}

@media (prefers-reduced-motion: reduce) {
  .admin-tabs button,
  .admin-toggle-list i,
  .admin-toggle-list i::after { transition: none; }
  .admin-live-count i { animation: none; }
}

@keyframes admin-presence-pulse {
  50% { opacity: .55; box-shadow: 0 0 0 7px rgba(54, 183, 123, 0); }
}

/* Live match timeline */
.live-timeline-card {
  padding: 19px;
  background:
    radial-gradient(circle at 92% 0, rgba(92, 221, 236, .14), transparent 34%),
    rgba(255, 255, 255, .72);
  border-color: rgba(91, 74, 139, .13);
}

.timeline-live-badge {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 7px 10px;
  color: #286f56;
  background: #e8fff4;
  border: 1px solid #c9efdf;
  border-radius: 99px;
  font-size: 9px;
  font-weight: 950;
}

.timeline-live-badge i {
  width: 7px;
  height: 7px;
  background: #35b77e;
  border-radius: 50%;
  box-shadow: 0 0 0 5px rgba(53, 183, 126, .12);
  animation: live-dot-pulse 1.8s ease-in-out infinite;
}

.live-timeline-list {
  position: relative;
  display: grid;
  gap: 9px;
  margin-top: 14px;
}

.live-timeline-list::before {
  content: "";
  position: absolute;
  top: 20px;
  right: 47px;
  bottom: 20px;
  width: 1px;
  background: linear-gradient(#74dce8, rgba(117, 91, 181, .2));
}

.timeline-event {
  position: relative;
  display: grid;
  grid-template-columns: 34px 40px minmax(0, 1fr);
  align-items: start;
  gap: 9px;
  padding: 12px;
  background: rgba(251, 250, 255, .88);
  border: 1px solid #e4deed;
  border-radius: 16px;
}

.timeline-event time {
  padding-top: 11px;
  color: #5e5570;
  font-size: 11px;
  font-weight: 950;
  text-align: center;
}

.timeline-event-icon {
  z-index: 1;
  width: 40px;
  height: 40px;
  display: grid;
  place-items: center;
  background: #fff;
  border: 1px solid #ddd5e8;
  border-radius: 13px;
  font-size: 20px;
  box-shadow: 0 5px 16px rgba(66, 44, 112, .1);
}

.timeline-event-copy { min-width: 0; display: grid; gap: 5px; }
.timeline-event-copy > div { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; min-height: 22px; }
.timeline-event-copy > div > span { color: #746b84; font-size: 9px; font-weight: 900; }
.timeline-event-copy > div > strong { color: #25174d; font-size: 15px; }
.timeline-source { margin-right: auto; padding: 4px 7px; border-radius: 8px; font-size: 8px; font-style: normal; font-weight: 950; }
.timeline-source.official { color: #277456; background: #e5faef; }
.timeline-source.temporary { color: #795a18; background: #fff4d8; }
.timeline-event-copy small { color: #766e83; font-size: 9px; line-height: 1.65; }
.timeline-event-copy small b { color: #493967; }
.timeline-assist em { padding: 2px 5px; color: #72578f; background: #eee8fa; border-radius: 6px; font-size: 8px; font-style: normal; font-weight: 900; }
.timeline-captains { color: #7a4c18 !important; }

html[data-theme="dark"] .live-timeline-card { background: radial-gradient(circle at 92% 0, rgba(74, 206, 218, .11), transparent 34%), rgba(38, 32, 60, .82); border-color: rgba(198, 184, 244, .14); }
html[data-theme="dark"] .timeline-live-badge { color: #9ce2c6; background: rgba(35, 105, 79, .32); border-color: rgba(93, 203, 160, .2); }
html[data-theme="dark"] .timeline-event { background: rgba(49, 42, 75, .78); border-color: rgba(198, 184, 244, .13); }
html[data-theme="dark"] .timeline-event-icon { background: #2c2644; border-color: rgba(198, 184, 244, .15); box-shadow: none; }
html[data-theme="dark"] .timeline-event time,
html[data-theme="dark"] .timeline-event-copy > div > span,
html[data-theme="dark"] .timeline-event-copy small { color: #b5adc4; }
html[data-theme="dark"] .timeline-event-copy > div > strong,
html[data-theme="dark"] .timeline-event-copy small b { color: #f7f3ff; }
html[data-theme="dark"] .timeline-source.official { color: #9de3c7; background: rgba(37, 112, 83, .35); }
html[data-theme="dark"] .timeline-source.temporary { color: #f4d58e; background: rgba(116, 84, 26, .35); }
html[data-theme="dark"] .timeline-assist em { color: #d4c3f2; background: rgba(100, 76, 151, .4); }

@media (max-width: 560px) {
  .live-timeline-card { padding: 15px 11px; }
  .live-timeline-list::before { right: 40px; }
  .timeline-event { grid-template-columns: 29px 37px minmax(0, 1fr); gap: 7px; padding: 10px 8px; }
  .timeline-event-icon { width: 37px; height: 37px; font-size: 18px; }
  .timeline-event time { font-size: 10px; }
  .timeline-event-copy > div > strong { font-size: 13px; }
  .timeline-source { width: fit-content; margin-right: 0; }
}

@media (prefers-reduced-motion: reduce) {
  .timeline-live-badge i { animation: none; }
}

/* v30 — hide numeric team placeholders and show every manager's FPL captain */
.score-team-logo[hidden] {
  display: none !important;
}

.ranking-captain-line {
  display: flex !important;
  align-items: center;
  gap: 5px;
  width: fit-content;
  max-width: 100%;
  color: #665d77;
  font-size: 10px;
  font-weight: 850;
  line-height: 1.25;
}

.ranking-captain-line > span {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.ranking-captain-badge {
  width: 17px;
  height: 17px;
  flex: 0 0 17px;
  display: inline-grid;
  place-items: center;
  color: #fff;
  background: linear-gradient(145deg, #7552bd, #4b2d86);
  border-radius: 6px;
  font-family: Arial, sans-serif;
  font-size: 9px;
  font-weight: 900;
  line-height: 1;
  box-shadow: 0 3px 8px rgba(75, 45, 134, .18);
}

html[data-theme="dark"] .ranking-captain-line {
  color: #c7bed6;
}

html[data-theme="dark"] .ranking-captain-badge {
  color: #241637;
  background: linear-gradient(145deg, #d8c1ff, #a987e6);
  box-shadow: none;
}

@media (max-width: 600px) {
  .ranking-row {
    min-height: 96px;
  }

  .ranking-captain-line {
    gap: 4px;
    font-size: 9px !important;
  }

  .ranking-captain-badge {
    width: 16px;
    height: 16px;
    flex-basis: 16px;
    border-radius: 5px;
    font-size: 8px;
  }
}

/* v31 — selected ranking concept 1 + live boost monitoring */
.leaderboard-card .ranking-head {
  display: none;
}

.leaderboard-card .ranking-list {
  display: grid;
  gap: 12px;
  padding: 14px;
}

.leaderboard-card .ranking-row {
  width: 100%;
  min-height: 168px;
  display: grid;
  grid-template-columns: 72px minmax(170px, 1fr) 118px;
  grid-template-areas:
    "rank manager total"
    "metrics metrics metrics";
  gap: 12px 16px;
  padding: 17px;
  overflow: hidden;
  color: #2b2340;
  background:
    radial-gradient(circle at 2% 0, rgba(119, 86, 194, .10), transparent 33%),
    linear-gradient(145deg, rgba(255, 255, 255, .98), rgba(247, 244, 253, .97));
  border: 1px solid rgba(90, 69, 135, .15);
  border-radius: 23px;
  box-shadow: 0 10px 28px rgba(65, 44, 104, .08), inset 0 1px 0 rgba(255, 255, 255, .9);
}

.leaderboard-card .ranking-row:hover,
.leaderboard-card .ranking-row:focus-visible {
  background:
    radial-gradient(circle at 2% 0, rgba(119, 86, 194, .14), transparent 34%),
    linear-gradient(145deg, #fff, #f7f3fd);
  border-color: rgba(109, 78, 179, .26);
  outline: none;
}

.leaderboard-card .rank-cell {
  grid-area: rank;
  width: 72px;
  height: 82px;
  align-self: start;
  display: grid;
  place-content: center;
  gap: 5px;
  color: #fff;
  background: linear-gradient(150deg, #8f6add, #6545b3);
  border: 1px solid rgba(255, 255, 255, .55);
  border-radius: 19px;
  box-shadow: 0 10px 20px rgba(96, 65, 165, .23);
}

.leaderboard-card .rank-cell > small {
  color: rgba(255, 255, 255, .76);
  font-size: 8px;
  font-weight: 850;
}

.leaderboard-card .rank-number,
.leaderboard-card .rank-number.top-1,
.leaderboard-card .rank-number.top-2,
.leaderboard-card .rank-number.top-3 {
  width: auto;
  height: auto;
  color: #fff;
  background: transparent;
  border: 0;
  border-radius: 0;
  font-size: 29px;
  line-height: 1;
  box-shadow: none;
}

.leaderboard-card .manager-cell {
  grid-area: manager;
  align-self: start;
  min-width: 0;
}

.leaderboard-card .manager-copy {
  display: grid;
  align-content: start;
  gap: 5px;
  text-align: right;
}

.leaderboard-card .manager-copy > strong {
  color: #241a39;
  font-size: 21px;
  line-height: 1.2;
}

.leaderboard-card .ranking-team-line {
  width: fit-content;
  color: #71677f;
  font-size: 11px;
}

.leaderboard-card .ranking-captain-line {
  min-height: 22px;
  color: #554968;
  font-size: 11px;
}

.leaderboard-card .ranking-captain-badge {
  width: 22px;
  height: 22px;
  flex-basis: 22px;
  border-radius: 7px;
  font-size: 10px;
}

.ranking-boost {
  width: fit-content;
  max-width: 100%;
  display: inline-flex;
  align-items: center;
  gap: 7px;
  margin-top: 2px;
  padding: 5px 9px;
  color: #5d4079;
  background: #eee7fb;
  border: 1px solid #dfd1f6;
  border-radius: 10px;
  direction: rtl;
  line-height: 1;
}

.ranking-boost small {
  color: #817392;
  font-size: 8px;
  font-weight: 850;
}

.ranking-boost b {
  overflow: hidden;
  font-family: Arial, sans-serif;
  font-size: 10px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.ranking-boost.wildcard { color: #166250; background: #e4f7f1; border-color: #bfe9db; }
.ranking-boost.free-hit { color: #17617b; background: #e5f5fa; border-color: #bee4ef; }
.ranking-boost.bench-boost { color: #7a5217; background: #fff3d9; border-color: #f2dca9; }
.ranking-boost.triple-captain { color: #78401f; background: #ffeadf; border-color: #f3cbb6; }

.leaderboard-card .ranking-total-feature {
  grid-area: total;
  align-self: start;
  min-height: 82px;
  display: grid;
  place-content: center;
  gap: 3px;
  padding-inline: 10px;
  border-right: 1px solid rgba(91, 70, 131, .12);
  text-align: center;
}

.leaderboard-card .ranking-total-feature .numeric-cell {
  color: #7552c3;
  font-size: 38px;
  font-weight: 950;
  line-height: 1;
}

.leaderboard-card .ranking-total-feature small {
  color: #82778f;
  font-size: 9px;
  font-weight: 850;
}

.leaderboard-card .ranking-metrics {
  grid-area: metrics;
  min-width: 0;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  overflow: hidden;
  background: rgba(99, 74, 151, .04);
  border: 1px solid rgba(94, 71, 139, .10);
  border-radius: 15px;
}

.leaderboard-card .ranking-metrics > span {
  min-width: 0;
  min-height: 50px;
  display: grid;
  place-content: center;
  gap: 3px;
  padding: 6px;
  text-align: center;
}

.leaderboard-card .ranking-metrics > span + span {
  border-right: 1px solid rgba(94, 71, 139, .10);
}

.leaderboard-card .ranking-metrics small {
  overflow: hidden;
  color: #81778c;
  font-size: 8px;
  font-weight: 850;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.leaderboard-card .ranking-metrics b,
.leaderboard-card .ranking-metrics .numeric-cell {
  color: #4b3e62;
  font-size: 16px;
  font-weight: 950;
  line-height: 1;
}

.leaderboard-card .ranking-metrics .played b { color: #2c965c; }
.leaderboard-card .ranking-metrics .remaining b { color: #d26443; }

html[data-theme="dark"] .leaderboard-card .ranking-row {
  color: #f8f4ff;
  background:
    radial-gradient(circle at 2% 0, rgba(147, 104, 242, .16), transparent 34%),
    linear-gradient(145deg, rgba(49, 42, 74, .98), rgba(42, 35, 66, .98));
  border-color: rgba(198, 184, 244, .17);
  box-shadow: 0 12px 30px rgba(8, 5, 19, .22), inset 0 1px 0 rgba(255, 255, 255, .04);
}

html[data-theme="dark"] .leaderboard-card .ranking-row:hover,
html[data-theme="dark"] .leaderboard-card .ranking-row:focus-visible {
  background:
    radial-gradient(circle at 2% 0, rgba(147, 104, 242, .21), transparent 35%),
    linear-gradient(145deg, #352d50, #2d2645);
  border-color: rgba(204, 185, 252, .27);
}

html[data-theme="dark"] .leaderboard-card .manager-copy > strong { color: #fff; }
html[data-theme="dark"] .leaderboard-card .ranking-team-line { color: #b9afc7; }
html[data-theme="dark"] .leaderboard-card .ranking-captain-line { color: #ddd4e9; }
html[data-theme="dark"] .leaderboard-card .ranking-total-feature { border-color: rgba(198, 184, 244, .12); }
html[data-theme="dark"] .leaderboard-card .ranking-total-feature .numeric-cell { color: #a989f0; }
html[data-theme="dark"] .leaderboard-card .ranking-total-feature small,
html[data-theme="dark"] .leaderboard-card .ranking-metrics small { color: #b2a8c0; }
html[data-theme="dark"] .leaderboard-card .ranking-metrics { background: rgba(207, 187, 255, .045); border-color: rgba(198, 184, 244, .11); }
html[data-theme="dark"] .leaderboard-card .ranking-metrics > span + span { border-color: rgba(198, 184, 244, .11); }
html[data-theme="dark"] .leaderboard-card .ranking-metrics b,
html[data-theme="dark"] .leaderboard-card .ranking-metrics .numeric-cell { color: #eee9f7; }
html[data-theme="dark"] .leaderboard-card .ranking-metrics .played b { color: #54bf7f; }
html[data-theme="dark"] .leaderboard-card .ranking-metrics .remaining b { color: #ee7a58; }
html[data-theme="dark"] .ranking-boost { color: #dacbf0; background: rgba(122, 88, 181, .24); border-color: rgba(203, 178, 244, .17); }
html[data-theme="dark"] .ranking-boost small { color: #b9adc8; }

@media (max-width: 600px) {
  .leaderboard-card .ranking-list {
    gap: 10px;
    padding: 10px;
  }

  .leaderboard-card .ranking-row {
    min-height: 160px;
    grid-template-columns: 58px minmax(0, 1fr) 76px;
    gap: 10px;
    padding: 13px 11px;
    border-radius: 19px;
  }

  .leaderboard-card .rank-cell {
    width: 58px;
    height: 68px;
    border-radius: 16px;
  }

  .leaderboard-card .rank-number,
  .leaderboard-card .rank-number.top-1,
  .leaderboard-card .rank-number.top-2,
  .leaderboard-card .rank-number.top-3 { font-size: 24px; }

  .leaderboard-card .manager-copy { gap: 4px; }
  .leaderboard-card .manager-copy > strong { font-size: 17px; }
  .leaderboard-card .ranking-team-line { max-width: 100%; font-size: 9px; white-space: nowrap; }
  .leaderboard-card .ranking-captain-line { font-size: 10px !important; }

  .leaderboard-card .ranking-total-feature {
    min-height: 68px;
    padding-inline: 4px;
  }

  .leaderboard-card .ranking-total-feature .numeric-cell { font-size: 28px; }
  .leaderboard-card .ranking-total-feature small { font-size: 7px; }

  .leaderboard-card .ranking-metrics > span { min-height: 46px; padding: 5px 2px; }
  .leaderboard-card .ranking-metrics small { font-size: 7px; }
  .leaderboard-card .ranking-metrics b,
  .leaderboard-card .ranking-metrics .numeric-cell { font-size: 14px; }

  .ranking-boost {
    gap: 5px;
    padding: 4px 7px;
  }

  .ranking-boost small { font-size: 7px; }
  .ranking-boost b { font-size: 9px; }
}

@media (max-width: 370px) {
  .leaderboard-card .ranking-row {
    grid-template-columns: 52px minmax(0, 1fr) 66px;
    padding-inline: 8px;
  }

  .leaderboard-card .rank-cell { width: 52px; }
  .leaderboard-card .manager-copy > strong { font-size: 15px; }
  .leaderboard-card .ranking-total-feature .numeric-cell { font-size: 25px; }
  .ranking-boost small { display: none; }
}

/* v41 · مركز مباريات الجولة */
.home-rivalry-card {
  min-height: 92px;
  display: grid;
  grid-template-columns: 48px minmax(0, 1fr);
  align-items: center;
  gap: 14px;
  padding: 16px 18px;
  color: #25194a;
  background: linear-gradient(135deg, rgba(255,255,255,.94), rgba(244,239,255,.88));
  border: 1px solid rgba(100,76,160,.13);
  border-radius: 20px;
  box-shadow: 0 14px 36px rgba(67,43,126,.09), inset 0 1px 0 #fff;
}

.home-rivalry-card[hidden] { display: none; }

.home-rivalry-icon {
  width: 48px;
  height: 48px;
  display: grid;
  place-items: center;
  color: #fff;
  background: linear-gradient(145deg, #45d4df, #7955d0);
  border-radius: 16px;
  box-shadow: 0 10px 22px rgba(89,66,164,.22);
  font-size: 23px;
  font-weight: 950;
}

.home-rivalry-copy { min-width: 0; display: grid; gap: 2px; }
.home-rivalry-copy small { color: #766d8a; font-size: 10px; font-weight: 900; }
.home-rivalry-copy strong { overflow: hidden; color: #25194a; font-size: 17px; text-overflow: ellipsis; white-space: nowrap; }
.home-rivalry-copy p { margin: 0; color: #685f7d; font-size: 11px; line-height: 1.7; }

.matches-view { width: min(920px, 100%); margin-inline: auto; }
.matches-page-heading b { color: inherit; }
.round-matches-card { padding: 18px; }
.round-matches-toolbar { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-bottom: 14px; }
.round-matches-toolbar h2 { margin: 2px 0 0; color: #25194a; font-size: 22px; }
.important-matches-filter {
  min-height: 40px;
  display: inline-flex;
  align-items: center;
  gap: 7px;
  padding: 8px 13px;
  color: #5d4f7e;
  background: #f5f1fc;
  border: 1px solid rgba(100,77,151,.15);
  border-radius: 13px;
  font-size: 11px;
  font-weight: 900;
  cursor: pointer;
}
.important-matches-filter i { color: #8b67d4; font-style: normal; }
.important-matches-filter.active { color: #fff; background: #6546af; border-color: #6546af; box-shadow: 0 8px 20px rgba(75,48,139,.2); }
.important-matches-filter.active i { color: #80edf0; }
.round-matches-list { display: grid; gap: 10px; }
.today-round-meta { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin: -3px 2px 10px; color: #776d8a; font-size: 10px; font-weight: 850; }
.today-round-meta b { color: #6645ad; font-size: 13px; }
.today-round-meta small { color: #91879f; font-size: 9px; }
.today-round-list { margin-bottom: 15px; }
.current-round-archive { margin-bottom: 10px; }
.round-archive { overflow: hidden; background: #f7f4fb; border: 1px solid rgba(96,77,141,.12); border-radius: 17px; }
.round-archive > summary { min-height: 76px; display: flex; align-items: center; justify-content: space-between; gap: 14px; padding: 13px 15px; list-style: none; cursor: pointer; -webkit-tap-highlight-color: transparent; }
.round-archive > summary::-webkit-details-marker { display: none; }
.round-archive > summary h3 { margin: 2px 0 0; color: #2b2048; font-size: 17px; }
.round-archive > summary h3 b { color: inherit; }
.round-archive > summary p { margin: 3px 0 0; color: #81778f; font-size: 9px; }
.round-archive > summary > i { width: 34px; height: 34px; display: grid; place-items: center; flex: 0 0 auto; color: #7254b3; background: #ece5f8; border-radius: 11px; font-size: 19px; font-style: normal; transition: transform .18s ease; }
.round-archive[open] > summary > i { transform: rotate(180deg); }
.round-archive > .round-matches-list { padding: 0 12px 12px; }

.round-match-card {
  width: 100%;
  min-height: 122px;
  display: grid;
  gap: 10px;
  padding: 14px 16px;
  color: #2b2143;
  text-align: inherit;
  background: #fff;
  border: 1px solid rgba(96,77,141,.12);
  border-radius: 17px;
  box-shadow: 0 9px 24px rgba(60,41,105,.055);
  cursor: pointer;
  transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease;
}
.round-match-card:hover { border-color: rgba(103,75,170,.3); box-shadow: 0 14px 32px rgba(60,41,105,.1); transform: translateY(-1px); }
.round-match-card.live { border-color: rgba(50,197,157,.3); box-shadow: 0 12px 30px rgba(39,167,133,.1); }
.round-match-date { color: #837a94; font-size: 9px; font-weight: 800; }
.round-match-teams { display: grid; grid-template-columns: minmax(0, 1fr) 88px minmax(0, 1fr); align-items: center; gap: 10px; }
.round-match-teams > strong { overflow: hidden; font-size: 14px; text-overflow: ellipsis; white-space: nowrap; }
.round-match-teams > strong:last-child { text-align: left; }
.round-match-score { min-height: 38px; display: flex; align-items: center; justify-content: center; gap: 8px; color: #422c79; background: #f4f0fb; border-radius: 12px; font-size: 21px; font-weight: 950; font-variant-numeric: tabular-nums; }
.round-match-score i { color: #9b91ab; font-style: normal; }
.round-match-score .fixture-vs { color: #796a91; font-size: 12px; }
.round-match-foot { min-height: 26px; display: flex; align-items: center; gap: 9px; color: #898093; font-size: 9px; font-weight: 800; }
.round-match-foot > i { margin-inline-start: auto; color: #8066ba; font-size: 21px; font-style: normal; line-height: 1; }
.fixture-status { display: inline-flex; align-items: center; padding: 4px 8px; color: #6e6680; background: #f0edf5; border-radius: 999px; font-size: 9px; font-weight: 950; }
.fixture-status.live { color: #076846; background: #dff8ed; }
.fixture-status.finished { color: #645a77; background: #ece8f2; }
.fixture-important { color: #6843bb; }

.match-center-dialog {
  width: min(760px, calc(100% - 24px));
  max-height: min(900px, calc(100dvh - 32px));
  padding: 0;
  color: #25194a;
  background: transparent;
  border: 0;
  border-radius: 26px;
  overflow: hidden;
}
.match-center-dialog::backdrop { background: rgba(20,13,38,.62); backdrop-filter: blur(8px); -webkit-backdrop-filter: blur(8px); }
.match-center-sheet { max-height: min(900px, calc(100dvh - 32px)); overflow: auto; background: #f7f4fb; border: 1px solid rgba(255,255,255,.82); border-radius: 26px; box-shadow: 0 30px 90px rgba(19,10,40,.32); }
.match-center-head { position: sticky; z-index: 3; top: 0; display: grid; grid-template-columns: 38px minmax(0, 1fr); align-items: start; gap: 10px; padding: 16px 18px; background: rgba(255,255,255,.94); border-bottom: 1px solid rgba(93,71,141,.1); backdrop-filter: blur(18px); -webkit-backdrop-filter: blur(18px); }
.match-center-head .dialog-close { grid-column: 1; grid-row: 1; }
#matchCenterHeader { grid-column: 2; grid-row: 1; min-width: 0; text-align: center; }
#matchCenterHeader > small { display: block; margin-bottom: 9px; color: #776d8a; font-size: 9px; }
#matchCenterHeader > div { display: grid; grid-template-columns: minmax(0, 1fr) 82px minmax(0, 1fr); align-items: center; gap: 9px; }
#matchCenterHeader strong { overflow: hidden; color: #2a1f46; font-size: 15px; text-overflow: ellipsis; white-space: nowrap; }
#matchCenterHeader strong:last-child { text-align: left; }
#matchCenterHeader b { color: #5d3aa5; font-size: 22px; font-variant-numeric: tabular-nums; }
.match-center-content { display: grid; gap: 11px; padding: 13px; }
.match-detail-card { padding: 15px; background: #fff; border: 1px solid rgba(96,77,141,.11); border-radius: 17px; box-shadow: 0 8px 22px rgba(60,41,105,.045); }
.match-detail-title { display: flex; align-items: center; gap: 9px; margin-bottom: 12px; }
.match-detail-title span { width: 27px; height: 27px; display: grid; place-items: center; color: #6844b7; background: #eee8fa; border-radius: 9px; font-size: 9px; font-weight: 950; }
.match-detail-title h3 { margin: 0; color: #2a1e4d; font-size: 14px; }
.match-timeline-card .match-detail-title { flex-wrap: wrap; }
.match-timeline-card .match-detail-title > small { margin-inline-start: auto; color: #8a8098; font-size: 8px; font-weight: 800; }
.match-detail-accordion { padding: 0; overflow: hidden; }
.match-detail-accordion > summary { min-height: 58px; display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 13px 15px; cursor: pointer; list-style: none; -webkit-tap-highlight-color: transparent; }
.match-detail-accordion > summary::-webkit-details-marker { display: none; }
.match-detail-accordion > summary .match-detail-title { margin: 0; }
.match-detail-accordion > summary > i { width: 30px; height: 30px; display: grid; place-items: center; flex: 0 0 auto; color: #7050b2; background: #f0ebf8; border-radius: 9px; font-size: 18px; font-style: normal; transition: transform .18s ease; }
.match-detail-accordion[open] > summary > i { transform: rotate(180deg); }
.match-detail-accordion-body { padding: 0 15px 15px; }
.match-timeline { position: relative; padding-top: 2px; }
.match-timeline-marker { display: grid; grid-template-columns: minmax(20px, 1fr) auto minmax(20px, 1fr); align-items: center; gap: 9px; margin: 5px 0 11px; color: #776d88; font-size: 9px; font-weight: 900; text-align: center; }
.match-timeline-marker::before, .match-timeline-marker::after { height: 1px; content: ""; background: rgba(99,78,142,.14); }
.match-timeline-marker > span { padding: 5px 10px; background: #f5f2f8; border: 1px solid rgba(99,78,142,.11); border-radius: 999px; white-space: nowrap; }
.match-timeline-marker.stage { margin-top: 0; color: #5e4a85; }
.match-timeline-marker.stage.live > span { color: #08704d; background: #e3f8ee; border-color: rgba(22,145,99,.15); }
.match-timeline-row { min-height: 74px; display: grid; grid-template-columns: minmax(0, 1fr) 58px minmax(0, 1fr); align-items: center; direction: rtl; }
.match-timeline-side { min-width: 0; direction: rtl; }
.match-timeline-side.home-side { padding-inline-end: 9px; text-align: right; }
.match-timeline-side.away-side { padding-inline-start: 9px; text-align: left; }
.match-timeline-axis { position: relative; align-self: stretch; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 4px; direction: ltr; }
.match-timeline-axis::before { position: absolute; z-index: 0; inset-block: 0; inset-inline-start: 50%; width: 1px; content: ""; background: rgba(93,74,131,.22); transform: translateX(-50%); }
.match-timeline-axis span, .match-timeline-axis i { position: relative; z-index: 1; }
.match-timeline-axis span { min-width: 35px; padding: 2px 5px; color: #6f647f; background: #fff; border-radius: 7px; font-size: 10px; font-weight: 900; text-align: center; }
.match-timeline-axis i { width: 28px; height: 28px; display: grid; place-items: center; background: #f2edf8; border: 1px solid rgba(101,76,153,.12); border-radius: 50%; font-size: 14px; font-style: normal; }
.match-timeline-event-copy { min-width: 0; display: grid; gap: 3px; }
.match-timeline-event-copy b { overflow: hidden; color: #30234d; font-size: 12px; line-height: 1.45; text-overflow: ellipsis; white-space: nowrap; }
.match-timeline-event-copy small { overflow: hidden; color: #887e96; font-size: 9px; line-height: 1.5; text-overflow: ellipsis; white-space: nowrap; }
.match-timeline-start { display: grid; justify-items: center; gap: 3px; padding-top: 8px; color: #91869f; }
.match-timeline-start > span { width: 34px; height: 34px; display: grid; place-items: center; background: #f1edf6; border-radius: 50%; font-size: 18px; }
.match-timeline-start small { font-size: 8px; font-weight: 850; }
.match-timeline-note { margin: 9px 0 0; color: #8b8198; font-size: 8px; text-align: center; }
.match-timeline-loading { min-height: 150px; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 10px; color: #776d88; font-size: 11px; }
.match-timeline-loading i { width: 26px; height: 26px; border: 3px solid #e2daef; border-top-color: #7652bc; border-radius: 50%; animation: spin .8s linear infinite; }
.match-team-board-wrap .match-timeline-marker { margin-bottom: 10px; }
.match-team-board { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 9px; }
.match-team-column { min-width: 0; overflow: hidden; background: #f8f6fa; border: 1px solid rgba(96,77,141,.12); border-radius: 16px; }
.match-team-column-head { min-height: 72px; padding: 9px 10px 8px; background: linear-gradient(145deg, rgba(62,194,212,.11), rgba(101,75,178,.06)); border-bottom: 1px solid rgba(96,77,141,.1); }
.match-team-column.away .match-team-column-head { background: linear-gradient(145deg, rgba(111,76,181,.08), rgba(222,82,107,.1)); }
.match-team-column-head > div { min-width: 0; display: grid; grid-template-columns: minmax(0, 1fr) 30px; align-items: center; gap: 7px; }
.match-team-column-head .fixture-club,
.match-team-column-head .fixture-club:last-child { min-width: 0; flex-direction: row; gap: 6px; }
.match-team-column-head .fixture-club > strong,
.match-team-column-head .fixture-club:last-child > strong { color: #30234d; font-size: 10px; text-align: right; }
.match-team-column-head .fixture-club-badge { width: 30px; height: 30px; flex-basis: 30px; padding: 2px; border-radius: 9px; }
.match-team-column-score { display: grid; place-items: center; width: 30px; height: 30px; color: #fff; background: linear-gradient(135deg, #1badbd, #6872cf); border-radius: 9px; box-shadow: 0 6px 14px rgba(48,137,179,.18); font-size: 14px; font-variant-numeric: tabular-nums; }
.match-team-column.away .match-team-column-score { background: linear-gradient(135deg, #7250b8, #d35777); box-shadow: 0 6px 14px rgba(150,62,110,.15); }
.match-team-column-head > small { display: block; margin-top: 5px; color: #887e95; font-size: 7px; font-weight: 850; }
.match-team-events { display: grid; }
.match-team-event { position: relative; min-height: 69px; display: grid; align-content: center; gap: 3px; padding: 9px 10px 9px; border-bottom: 1px solid rgba(96,77,141,.09); }
.match-team-event:last-child { border-bottom: 0; }
.match-team-event::before { position: absolute; inset-block: 11px; inset-inline-start: 0; width: 3px; content: ""; background: #38baca; border-radius: 0 4px 4px 0; }
.match-team-column.away .match-team-event::before { background: #ad669f; }
.match-team-event.yellow-card::before { background: #d9a826; }
.match-team-event.red-card::before { background: #dc4f68; }
.match-team-event-meta { display: flex; align-items: center; justify-content: space-between; gap: 6px; }
.match-team-event-meta span { direction: ltr; color: #765ca1; font-size: 8px; font-weight: 950; }
.match-team-event-meta i { width: 23px; height: 23px; display: grid; place-items: center; background: #fff; border: 1px solid rgba(96,77,141,.1); border-radius: 8px; font-size: 11px; font-style: normal; }
.match-team-event > b { overflow: hidden; color: #30234d; font-size: 10px; line-height: 1.45; text-overflow: ellipsis; white-space: nowrap; }
.match-team-event > small { overflow: hidden; color: #887e95; font-size: 7.5px; line-height: 1.45; text-overflow: ellipsis; white-space: nowrap; }
.match-team-empty { min-height: 116px; display: grid; place-content: center; justify-items: center; gap: 4px; color: #9a90a5; text-align: center; }
.match-team-empty > span { width: 30px; height: 30px; display: grid; place-items: center; background: #eeebf2; border-radius: 9px; font-size: 14px; }
.match-team-empty small { font-size: 8px; }
.match-timeline-error { margin-top: 9px; padding: 10px; color: #a84a60; background: #fff0f3; border-radius: 10px; font-size: 9px; text-align: center; }
.match-empty-line { padding: 13px; color: #7b728c; background: #f7f5fa; border-radius: 12px; font-size: 11px; text-align: center; }
.latest-match-event { display: grid; grid-template-columns: 46px minmax(0, 1fr); align-items: center; gap: 12px; }
.latest-match-event > span { width: 46px; height: 46px; display: grid; place-items: center; background: #f1edf8; border-radius: 14px; font-size: 23px; }
.latest-match-event > div { display: grid; gap: 2px; }
.latest-match-event small { color: #7b728d; font-size: 9px; font-weight: 900; }
.latest-match-event strong { color: #2b1d51; font-size: 16px; }
.latest-match-event p { margin: 0; color: #654a9e; font-size: 10px; font-weight: 900; }
.latest-match-event em { color: #7b728c; font-size: 9px; font-style: normal; }
.match-impact-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 6px; }
.match-impact-list article { min-height: 36px; display: grid; grid-template-columns: 24px minmax(0, 1fr) auto; align-items: center; gap: 7px; padding: 7px 9px; background: #f7f5fa; border-radius: 10px; }
.match-impact-list i { color: #9287a3; font-size: 8px; font-style: normal; }
.match-impact-list b { overflow: hidden; font-size: 10px; text-overflow: ellipsis; white-space: nowrap; }
.match-impact-list span { color: #6040a8; font-size: 13px; font-weight: 950; font-variant-numeric: tabular-nums; }
.ownership-list { display: grid; gap: 6px; }
.ownership-list article { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.4fr); align-items: center; gap: 10px; padding: 9px 10px; background: #f7f5fa; border-radius: 10px; }
.ownership-list article > div { min-width: 0; display: flex; align-items: center; gap: 6px; }
.ownership-list b { font-size: 11px; }
.ownership-list em { flex: 0 0 auto; padding: 3px 6px; color: #fff; background: #7050bd; border-radius: 7px; font-size: 7px; font-style: normal; font-weight: 950; }
.ownership-list article > span { color: #776e88; font-size: 9px; text-align: left; }
.captain-summary { margin: 10px 0 0; padding: 9px 10px; color: #53348f; background: #eee8fa; border-radius: 10px; font-size: 9px; font-weight: 850; line-height: 1.7; }
.captain-summary.muted { color: #7a718a; background: #f5f3f7; }
.league-impact-ownership { display: grid; gap: 7px; }
.league-impact-ownership article { min-height: 48px; display: grid; grid-template-columns: 112px minmax(0, 1fr) 45px; align-items: center; gap: 9px; padding: 8px 10px; background: #f7f5fa; border-radius: 11px; }
.league-impact-manager { min-width: 0; display: flex; align-items: center; gap: 7px; }
.league-impact-manager i { width: 22px; height: 22px; display: grid; place-items: center; flex: 0 0 auto; color: #827695; background: #eee9f5; border-radius: 7px; font-size: 8px; font-style: normal; font-weight: 950; }
.league-impact-manager b { overflow: hidden; color: #30234d; font-size: 11px; text-overflow: ellipsis; white-space: nowrap; }
.league-impact-picks { min-width: 0; display: flex; flex-wrap: wrap; gap: 5px; }
.league-impact-picks > span { display: inline-flex; align-items: center; gap: 4px; padding: 4px 6px; color: #6f667d; background: #fff; border: 1px solid rgba(96,77,141,.09); border-radius: 7px; font-size: 8px; font-weight: 800; }
.league-impact-picks em { min-width: 17px; height: 17px; display: inline-grid; place-items: center; color: #fff; background: #6f4ab9; border-radius: 5px; font-size: 7px; font-style: normal; font-weight: 950; }
.league-impact-picks em.bench { min-width: auto; padding-inline: 4px; color: #71677e; background: #eeeaf3; }
.league-impact-points { color: #6540af; font-size: 15px; text-align: left; font-variant-numeric: tabular-nums; }
.league-impact-points.negative { color: #c84964; }
.league-impact-summary { margin: 9px 0 0; padding: 8px 10px; color: #705d91; background: #eee8fa; border-radius: 9px; font-size: 8px; font-weight: 850; line-height: 1.7; }
.points-watch-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; }
.points-watch-grid > section { min-height: 142px; padding: 11px; background: #f7f5fa; border-radius: 12px; }
.points-watch-grid h4 { margin: 0 0 9px; color: #3f305e; font-size: 10px; }
.points-watch-grid p { margin: 0; color: #746b84; font-size: 9px; line-height: 1.8; }
.bonus-race, .defensive-race, .advance-list { list-style: none; margin: 0; padding: 0; display: grid; gap: 6px; }
.bonus-race li, .defensive-race li { min-height: 28px; display: grid; grid-template-columns: 24px minmax(0, 1fr) auto; align-items: center; gap: 5px; }
.bonus-race li > span { width: 24px; height: 24px; display: grid; place-items: center; color: #fff; background: #7652c4; border-radius: 8px; font-size: 8px; font-weight: 950; }
.bonus-race b, .defensive-race b { overflow: hidden; font-size: 9px; text-overflow: ellipsis; white-space: nowrap; }
.bonus-race small, .defensive-race span { color: #766d87; font-size: 8px; }
.bonus-race .watch-empty, .defensive-race .watch-empty { display: block; color: #81778f; font-size: 9px; line-height: 1.7; }
.defensive-race li { grid-template-columns: minmax(0, 1fr) auto; }
.advance-list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.advance-list li { padding: 10px 11px; color: #55496b; background: #f7f5fa; border-radius: 10px; font-size: 10px; line-height: 1.7; }
.contextual-report p { margin: 0; color: #685e79; font-size: 11px; line-height: 1.8; }
.outcome-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 7px; }
.outcome-grid article { min-height: 88px; display: flex; flex-direction: column; justify-content: center; gap: 3px; padding: 10px; background: #f7f5fa; border-radius: 11px; text-align: center; }
.outcome-grid small { color: #7c728d; font-size: 8px; font-weight: 900; }
.outcome-grid b { overflow: hidden; color: #2f2152; font-size: 12px; text-overflow: ellipsis; white-space: nowrap; }
.outcome-grid span { color: #6b50a2; font-size: 8px; line-height: 1.5; }

html[data-theme="dark"] .home-rivalry-card,
html[data-theme="dark"] .round-match-card,
html[data-theme="dark"] .match-detail-card { color: #f4efff; background: #2b2536; border-color: rgba(205,190,229,.13); box-shadow: 0 10px 26px rgba(2,1,8,.18); }
html[data-theme="dark"] .home-rivalry-copy strong,
html[data-theme="dark"] .round-matches-toolbar h2,
html[data-theme="dark"] .round-match-card,
html[data-theme="dark"] .match-detail-title h3,
html[data-theme="dark"] .latest-match-event strong,
html[data-theme="dark"] .ownership-list b,
html[data-theme="dark"] .outcome-grid b { color: #f5f0fb; }
html[data-theme="dark"] .home-rivalry-copy small,
html[data-theme="dark"] .home-rivalry-copy p,
html[data-theme="dark"] .round-match-date,
html[data-theme="dark"] .round-match-foot,
html[data-theme="dark"] .latest-match-event small,
html[data-theme="dark"] .latest-match-event em,
html[data-theme="dark"] .ownership-list article > span,
html[data-theme="dark"] .contextual-report p { color: #b8afc3; }
html[data-theme="dark"] .important-matches-filter { color: #d5cae4; background: #383044; border-color: rgba(205,190,229,.14); }
html[data-theme="dark"] .important-matches-filter.active { color: #fff; background: #7655bd; }
html[data-theme="dark"] .today-round-meta { color: #b8afc3; }
html[data-theme="dark"] .today-round-meta b { color: #c8a2ed; }
html[data-theme="dark"] .today-round-meta small { color: #9e94aa; }
html[data-theme="dark"] .round-archive { background: #282230; border-color: rgba(205,190,229,.13); }
html[data-theme="dark"] .round-archive > summary h3 { color: #f5f0fb; }
html[data-theme="dark"] .round-archive > summary p { color: #b8afc3; }
html[data-theme="dark"] .round-archive > summary > i { color: #d1b5ef; background: #3b3049; }
html[data-theme="dark"] .round-match-score,
html[data-theme="dark"] .latest-match-event > span,
html[data-theme="dark"] .match-detail-title span,
html[data-theme="dark"] .captain-summary { color: #d4b8f2; background: #3a3049; }
html[data-theme="dark"] .fixture-status { color: #c3b9cf; background: #40384b; }
html[data-theme="dark"] .fixture-status.live { color: #77ddb2; background: rgba(51,168,119,.16); }
html[data-theme="dark"] .match-center-sheet { background: #211c2a; border-color: rgba(205,190,229,.12); }
html[data-theme="dark"] .match-center-head { background: rgba(39,33,49,.96); border-color: rgba(205,190,229,.1); }
html[data-theme="dark"] #matchCenterHeader > small { color: #b8afc3; }
html[data-theme="dark"] #matchCenterHeader strong { color: #fff; }
html[data-theme="dark"] #matchCenterHeader b { color: #c397eb; }
html[data-theme="dark"] .match-detail-accordion > summary > i { color: #d0b2ec; background: #3d3348; }
html[data-theme="dark"] .match-timeline-card .match-detail-title > small,
html[data-theme="dark"] .match-timeline-event-copy small,
html[data-theme="dark"] .match-timeline-note,
html[data-theme="dark"] .match-timeline-loading { color: #b7adbf; }
html[data-theme="dark"] .match-timeline-marker { color: #bfb4ca; }
html[data-theme="dark"] .match-timeline-marker::before,
html[data-theme="dark"] .match-timeline-marker::after,
html[data-theme="dark"] .match-timeline-axis::before { background: rgba(215,197,231,.18); }
html[data-theme="dark"] .match-timeline-marker > span,
html[data-theme="dark"] .match-timeline-axis span,
html[data-theme="dark"] .match-timeline-axis i,
html[data-theme="dark"] .match-timeline-start > span { color: #d6c7e2; background: #382f42; border-color: rgba(215,197,231,.1); }
html[data-theme="dark"] .match-timeline-marker.stage.live > span { color: #77ddb2; background: rgba(51,168,119,.16); border-color: rgba(95,210,154,.17); }
html[data-theme="dark"] .match-timeline-event-copy b { color: #f5f0fb; }
html[data-theme="dark"] .match-team-column { background: #342d3e; border-color: rgba(205,190,229,.12); }
html[data-theme="dark"] .match-team-column-head { background: linear-gradient(145deg, rgba(65,191,207,.13), rgba(126,87,190,.1)); border-color: rgba(205,190,229,.1); }
html[data-theme="dark"] .match-team-column.away .match-team-column-head { background: linear-gradient(145deg, rgba(126,87,190,.1), rgba(215,78,108,.12)); }
html[data-theme="dark"] .match-team-column-head .fixture-club > strong,
html[data-theme="dark"] .match-team-column-head .fixture-club:last-child > strong,
html[data-theme="dark"] .match-team-event > b { color: #f5f0fb; }
html[data-theme="dark"] .match-team-column-head > small,
html[data-theme="dark"] .match-team-event > small { color: #b8aec1; }
html[data-theme="dark"] .match-team-event { border-color: rgba(205,190,229,.09); }
html[data-theme="dark"] .match-team-event-meta span { color: #c5a5e3; }
html[data-theme="dark"] .match-team-event-meta i { background: #292331; border-color: rgba(205,190,229,.1); }
html[data-theme="dark"] .match-team-empty { color: #a99fb2; }
html[data-theme="dark"] .match-team-empty > span { background: #40374a; }
html[data-theme="dark"] .match-timeline-error { color: #ff9aac; background: rgba(205,67,94,.12); }
html[data-theme="dark"] .match-empty-line,
html[data-theme="dark"] .match-impact-list article,
html[data-theme="dark"] .ownership-list article,
html[data-theme="dark"] .points-watch-grid > section,
html[data-theme="dark"] .advance-list li,
html[data-theme="dark"] .outcome-grid article { color: #d8d0e1; background: #342d3e; }
html[data-theme="dark"] .points-watch-grid h4 { color: #e9e2ef; }
html[data-theme="dark"] .points-watch-grid p,
html[data-theme="dark"] .bonus-race small,
html[data-theme="dark"] .defensive-race span,
html[data-theme="dark"] .outcome-grid small { color: #b5acbf; }
html[data-theme="dark"] .match-impact-list span,
html[data-theme="dark"] .latest-match-event p,
html[data-theme="dark"] .outcome-grid span { color: #c69eea; }
html[data-theme="dark"] .captain-summary.muted { color: #b8afc3; background: #342d3e; }
html[data-theme="dark"] .league-impact-ownership article { background: #342d3e; }
html[data-theme="dark"] .league-impact-manager i { color: #c5b8d2; background: #40364b; }
html[data-theme="dark"] .league-impact-manager b { color: #f5f0fb; }
html[data-theme="dark"] .league-impact-picks > span { color: #c9c0d2; background: #2b2534; border-color: rgba(205,190,229,.1); }
html[data-theme="dark"] .league-impact-picks em.bench { color: #c2b8cc; background: #453b4e; }
html[data-theme="dark"] .league-impact-points { color: #c79bea; }
html[data-theme="dark"] .league-impact-points.negative { color: #ff8298; }
html[data-theme="dark"] .league-impact-summary { color: #d0b8e8; background: #3a3049; }

.mobile-nav { grid-template-columns: repeat(5, minmax(0, 1fr)); }
.live-event-toast.leader { border-color: rgba(166,113,235,.58); }

@media (max-width: 700px) {
  .round-matches-card { padding: 12px; }
  .round-matches-toolbar { align-items: flex-end; }
  .round-matches-toolbar h2 { font-size: 18px; }
  .important-matches-filter { min-height: 37px; padding-inline: 10px; }
  .round-match-card { min-height: 116px; padding: 12px; }
  .round-match-teams { grid-template-columns: minmax(0, 1fr) 72px minmax(0, 1fr); gap: 7px; }
  .round-match-teams > strong { font-size: 12px; }
  .round-match-score { min-height: 36px; font-size: 18px; }
  .today-round-meta { margin-inline: 1px; }
  .today-round-meta small { display: none; }
  .round-archive > summary { min-height: 72px; padding: 12px; }
  .round-archive > summary h3 { font-size: 16px; }
  .round-archive > summary p { font-size: 9px; }
  .round-archive > .round-matches-list { padding: 0 8px 8px; }
  .match-center-dialog {
    --match-safe-top: max(20px, calc(env(safe-area-inset-top, 0px) + 8px));
    width: 100%;
    max-width: none;
    max-height: calc(100dvh - var(--match-safe-top));
    margin: var(--match-safe-top) 0 0;
    border-radius: 24px 24px 0 0;
  }
  .match-center-sheet {
    max-height: calc(100dvh - var(--match-safe-top));
    border-radius: 24px 24px 0 0;
    overscroll-behavior: contain;
    scroll-padding-top: 112px;
  }
  .match-center-head {
    grid-template-columns: 48px minmax(0, 1fr);
    align-items: center;
    gap: 9px;
    padding: 14px 12px 13px;
  }
  .match-center-head .dialog-close {
    position: relative;
    z-index: 2;
    width: 48px;
    height: 48px;
    min-width: 48px;
    min-height: 48px;
    border-radius: 15px;
    font-size: 30px;
    line-height: 1;
    touch-action: manipulation;
    -webkit-tap-highlight-color: transparent;
  }
  #matchCenterHeader > small {
    margin-bottom: 8px;
    font-size: 11px;
    font-weight: 800;
    line-height: 1.6;
  }
  #matchCenterHeader > div { grid-template-columns: minmax(0, 1fr) 74px minmax(0, 1fr); gap: 8px; }
  #matchCenterHeader .fixture-status { padding: 5px 9px; font-size: 10.5px; }
  #matchCenterHeader strong { font-size: 12.5px; line-height: 1.45; }
  #matchCenterHeader b { font-size: 21px; line-height: 1.2; }
  .match-center-content {
    padding: 12px 11px max(20px, env(safe-area-inset-bottom, 0px));
    gap: 10px;
  }
  .match-detail-card { padding: 15px 14px; border-radius: 17px; }
  .match-detail-title { gap: 10px; margin-bottom: 14px; }
  .match-detail-title span { width: 32px; height: 32px; border-radius: 10px; font-size: 11px; }
  .match-detail-title h3 { font-size: 16px; line-height: 1.45; }
  .match-timeline-card .match-detail-title > small { width: 100%; margin-inline-start: 42px; font-size: 10px; }
  .match-detail-accordion > summary { min-height: 64px; padding: 14px; }
  .match-detail-accordion-body { padding: 0 14px 14px; }
  .match-timeline-row { min-height: 82px; grid-template-columns: minmax(0, 1fr) 62px minmax(0, 1fr); }
  .match-timeline-event-copy b { font-size: 13.5px; }
  .match-timeline-event-copy small { font-size: 10.5px; }
  .match-timeline-axis span { font-size: 11px; }
  .match-timeline-marker { font-size: 10px; }
  .match-team-board { gap: 7px; }
  .match-team-column { border-radius: 15px; }
  .match-team-column-head { min-height: 76px; padding: 9px 8px 8px; }
  .match-team-column-head > div { grid-template-columns: minmax(0, 1fr) 29px; gap: 5px; }
  .match-team-column-head .fixture-club,
  .match-team-column-head .fixture-club:last-child { gap: 5px; }
  .match-team-column-head .fixture-club-badge { width: 29px; height: 29px; flex-basis: 29px; }
  .match-team-column-head .fixture-club > strong,
  .match-team-column-head .fixture-club:last-child > strong { font-size: 10px; }
  .match-team-column-score { width: 29px; height: 29px; font-size: 14px; }
  .match-team-event { min-height: 75px; padding: 10px 9px; }
  .match-team-event-meta span { font-size: 9px; }
  .match-team-event > b { font-size: 11px; }
  .match-team-event > small { font-size: 8.5px; }
  .match-empty-line { padding: 15px 12px; font-size: 13.5px; line-height: 1.8; }
  .latest-match-event { grid-template-columns: 52px minmax(0, 1fr); gap: 13px; }
  .latest-match-event > span { width: 52px; height: 52px; font-size: 25px; }
  .latest-match-event small { font-size: 11px; }
  .latest-match-event strong { font-size: 17px; line-height: 1.45; }
  .latest-match-event p { font-size: 12px; line-height: 1.65; }
  .latest-match-event em { font-size: 11px; line-height: 1.65; }
  .match-impact-list { grid-template-columns: 1fr; }
  .match-impact-list article {
    min-height: 48px;
    grid-template-columns: 28px minmax(0, 1fr) auto;
    gap: 9px;
    padding: 10px 12px;
    border-radius: 12px;
  }
  .match-impact-list i { font-size: 10px; }
  .match-impact-list b { font-size: 13px; }
  .match-impact-list span { font-size: 17px; }
  .ownership-list { gap: 8px; }
  .ownership-list article {
    grid-template-columns: 1fr;
    align-items: start;
    gap: 7px;
    padding: 12px;
    border-radius: 12px;
  }
  .ownership-list article > div { flex-wrap: wrap; gap: 7px; }
  .ownership-list b { font-size: 13.5px; }
  .ownership-list em { padding: 4px 7px; border-radius: 8px; font-size: 9px; }
  .ownership-list article > span { font-size: 12px; line-height: 1.75; text-align: right; }
  .captain-summary { padding: 11px 12px; font-size: 11.5px; line-height: 1.85; }
  .league-impact-ownership article { grid-template-columns: minmax(0, 1fr) 50px; gap: 7px 9px; padding: 10px; }
  .league-impact-manager { grid-column: 1; grid-row: 1; }
  .league-impact-manager i { width: 25px; height: 25px; font-size: 9px; }
  .league-impact-manager b { font-size: 13px; }
  .league-impact-picks { grid-column: 1 / -1; grid-row: 2; }
  .league-impact-picks > span { padding: 5px 7px; font-size: 10px; }
  .league-impact-points { grid-column: 2; grid-row: 1; font-size: 17px; }
  .league-impact-summary { font-size: 10.5px; }
  .points-watch-grid { grid-template-columns: 1fr; }
  .points-watch-grid { gap: 9px; }
  .points-watch-grid > section { min-height: auto; padding: 13px; border-radius: 13px; }
  .points-watch-grid h4 { margin-bottom: 10px; font-size: 13px; }
  .points-watch-grid p { font-size: 11.5px; line-height: 1.85; }
  .bonus-race li, .defensive-race li { min-height: 35px; gap: 8px; }
  .bonus-race li > span { width: 29px; height: 29px; font-size: 10px; }
  .bonus-race b, .defensive-race b { font-size: 11.5px; }
  .bonus-race small, .defensive-race span { font-size: 10.5px; }
  .bonus-race .watch-empty, .defensive-race .watch-empty { font-size: 11.5px; line-height: 1.8; }
  .advance-list { grid-template-columns: 1fr; }
  .advance-list li { padding: 12px; font-size: 12.5px; line-height: 1.8; }
  .contextual-report p { font-size: 13px; line-height: 1.9; }
  .outcome-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .outcome-grid { gap: 8px; }
  .outcome-grid article { min-height: 104px; padding: 12px 9px; border-radius: 13px; }
  .outcome-grid small { font-size: 10px; }
  .outcome-grid b { font-size: 14px; }
  .outcome-grid span { font-size: 10px; line-height: 1.65; }
  .mobile-nav-button { padding-inline: 2px; }
  .mobile-nav-button b { font-size: 8.5px; }
  .mobile-nav-button span { font-size: 16px; }
}

@media (max-width: 370px) {
  .mobile-nav-button b { font-size: 7.5px; }
  .round-match-teams { grid-template-columns: minmax(0, 1fr) 62px minmax(0, 1fr); }
  .round-match-foot { gap: 6px; }
  .fixture-important { max-width: 110px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
}

/* v32 — selected compact table ranking, light + dark */
.leaderboard-card .ranking-head,
.leaderboard-card .ranking-row {
  direction: rtl;
  grid-template-columns: 46px minmax(140px, 1fr) 58px 70px 44px 44px 96px;
  grid-template-areas: none;
  gap: 5px;
}

.leaderboard-card .ranking-head {
  min-height: 42px;
  display: grid;
  align-items: center;
  padding: 0 13px;
  color: #80768d;
  background: rgba(96, 73, 145, .035);
  border-top: 1px solid rgba(92, 68, 139, .08);
  border-bottom: 1px solid rgba(92, 68, 139, .10);
  font-size: 9px;
  font-weight: 850;
  text-align: center;
}

.leaderboard-card .ranking-head span:nth-child(2) {
  text-align: right;
}

.leaderboard-card .ranking-list {
  display: block;
  padding: 0 13px 10px;
  overflow: hidden;
  background: transparent;
}

.leaderboard-card .ranking-row {
  width: 100%;
  min-height: 92px;
  display: grid;
  align-items: center;
  padding: 8px 0;
  overflow: visible;
  color: #342a48;
  background: transparent;
  border: 0;
  border-bottom: 1px solid rgba(91, 70, 131, .11);
  border-radius: 0;
  box-shadow: none;
  text-align: center;
}

.leaderboard-card .ranking-row:last-child {
  border-bottom: 0;
}

.leaderboard-card .ranking-row:hover,
.leaderboard-card .ranking-row:focus-visible {
  background: rgba(104, 77, 160, .045);
  border-color: rgba(91, 70, 131, .15);
  outline: none;
}

.leaderboard-card .rank-cell,
.leaderboard-card .manager-cell,
.leaderboard-card .ranking-stat,
.leaderboard-card .ranking-boost-cell {
  grid-area: auto;
  min-width: 0;
}

.leaderboard-card .rank-cell {
  width: 39px;
  height: 43px;
  align-self: center;
  justify-self: center;
  display: grid;
  place-items: center;
  padding: 0;
  color: #fff;
  background: linear-gradient(150deg, #906fe0, #6748b3);
  border: 1px solid rgba(255, 255, 255, .55);
  border-radius: 11px;
  box-shadow: 0 6px 14px rgba(89, 57, 157, .17);
}

.leaderboard-card .rank-cell > small {
  display: none;
}

.leaderboard-card .rank-number,
.leaderboard-card .rank-number.top-1,
.leaderboard-card .rank-number.top-2,
.leaderboard-card .rank-number.top-3 {
  width: auto;
  height: auto;
  color: #fff;
  background: transparent;
  border: 0;
  border-radius: 0;
  font-size: 18px;
  font-weight: 950;
  line-height: 1;
  box-shadow: none;
}

.leaderboard-card .manager-cell {
  align-self: center;
  text-align: right;
}

.leaderboard-card .manager-copy {
  display: grid;
  align-content: center;
  justify-items: start;
  gap: 6px;
  text-align: right;
}

.leaderboard-card .manager-copy > strong {
  width: 100%;
  color: #271d3a;
  font-size: 15px;
  line-height: 1.15;
  text-align: right;
}

.leaderboard-card .ranking-team-line {
  display: none !important;
}

.leaderboard-card .ranking-captain-line {
  min-height: 19px;
  display: flex !important;
  align-items: center;
  gap: 5px;
  direction: ltr;
  color: #6d6379;
  font-family: Arial, sans-serif;
  font-size: 9px;
  font-weight: 800;
  line-height: 1;
}

.leaderboard-card .ranking-captain-badge {
  width: 19px;
  height: 19px;
  flex-basis: 19px;
  color: #2b1745;
  background: linear-gradient(145deg, #d8c5ff, #ac8cea);
  border-radius: 6px;
  font-size: 9px;
  box-shadow: none;
}

.leaderboard-card .ranking-stat {
  display: grid;
  place-items: center;
}

.leaderboard-card .ranking-stat b,
.leaderboard-card .ranking-stat .numeric-cell {
  color: #4a3c60;
  font-size: 14px;
  font-weight: 900;
  line-height: 1;
}

.leaderboard-card .ranking-round .numeric-cell { color: #7654c3; }
.leaderboard-card .ranking-total .numeric-cell { color: #2d243e; font-size: 16px; }
.leaderboard-card .ranking-played b { color: #2d985d; }
.leaderboard-card .ranking-remaining b { color: #d26443; }

.leaderboard-card .ranking-boost-cell {
  min-height: 1px;
  display: grid;
  place-items: center;
}

.leaderboard-card .ranking-boost {
  width: 84px;
  max-width: 100%;
  min-height: 45px;
  display: grid;
  place-content: center;
  gap: 3px;
  margin: 0;
  padding: 5px 4px;
  color: #68408e;
  background: #f0e9fc;
  border: 1px solid #dac9f3;
  border-radius: 11px;
  direction: ltr;
  line-height: 1;
}

.leaderboard-card .ranking-boost b {
  color: currentColor;
  font-family: Arial, sans-serif;
  font-size: 12px;
  font-weight: 950;
}

.leaderboard-card .ranking-boost small {
  overflow: hidden;
  color: currentColor;
  font-family: Arial, sans-serif;
  font-size: 7px;
  font-weight: 850;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.leaderboard-card .ranking-boost.wildcard { color: #17634f; background: #e6f7f1; border-color: #bde6d8; }
.leaderboard-card .ranking-boost.free-hit { color: #17637c; background: #e5f5fa; border-color: #bae1ed; }
.leaderboard-card .ranking-boost.bench-boost { color: #167a88; background: #e5f8fa; border-color: #afe4e9; }
.leaderboard-card .ranking-boost.triple-captain { color: #77521c; background: #fff5db; border-color: #ead08c; }

html[data-theme="dark"] .leaderboard-card .ranking-head {
  color: #aaa0b8;
  background: rgba(207, 187, 255, .035);
  border-color: rgba(200, 181, 244, .11);
}

html[data-theme="dark"] .leaderboard-card .ranking-row {
  color: #f6f1ff;
  background: transparent;
  border-color: rgba(200, 181, 244, .11);
  box-shadow: none;
}

html[data-theme="dark"] .leaderboard-card .ranking-row:hover,
html[data-theme="dark"] .leaderboard-card .ranking-row:focus-visible {
  background: rgba(204, 181, 255, .045);
  border-color: rgba(200, 181, 244, .14);
}

html[data-theme="dark"] .leaderboard-card .manager-copy > strong { color: #fff; }
html[data-theme="dark"] .leaderboard-card .ranking-captain-line { color: #bdb3c9; }
html[data-theme="dark"] .leaderboard-card .ranking-stat b,
html[data-theme="dark"] .leaderboard-card .ranking-stat .numeric-cell { color: #ded6e9; }
html[data-theme="dark"] .leaderboard-card .ranking-round .numeric-cell { color: #a787ee; }
html[data-theme="dark"] .leaderboard-card .ranking-total .numeric-cell { color: #fff; }
html[data-theme="dark"] .leaderboard-card .ranking-played b { color: #53bf7f; }
html[data-theme="dark"] .leaderboard-card .ranking-remaining b { color: #ed7656; }
html[data-theme="dark"] .leaderboard-card .ranking-boost.wildcard { color: #87ddc2; background: rgba(24, 104, 81, .24); border-color: rgba(96, 202, 168, .28); }
html[data-theme="dark"] .leaderboard-card .ranking-boost.free-hit { color: #84d4e8; background: rgba(25, 103, 127, .25); border-color: rgba(102, 193, 216, .27); }
html[data-theme="dark"] .leaderboard-card .ranking-boost.bench-boost { color: #77dce7; background: rgba(19, 111, 121, .24); border-color: rgba(91, 204, 215, .28); }
html[data-theme="dark"] .leaderboard-card .ranking-boost.triple-captain { color: #f0cf78; background: rgba(122, 87, 20, .25); border-color: rgba(226, 183, 72, .28); }

@media (max-width: 600px) {
  .leaderboard-card .ranking-head,
  .leaderboard-card .ranking-row {
    grid-template-columns: 30px minmax(74px, 1fr) 34px 42px 28px 28px 48px;
    gap: 2px;
  }

  .leaderboard-card .ranking-head {
    min-height: 38px;
    padding: 0 4px;
    font-size: 7px;
  }

  .leaderboard-card .ranking-list {
    padding: 0 4px 7px;
  }

  .leaderboard-card .ranking-row {
    min-height: 88px;
    padding: 7px 0;
  }

  .leaderboard-card .rank-cell {
    width: 29px;
    height: 38px;
    border-radius: 9px;
  }

  .leaderboard-card .rank-number,
  .leaderboard-card .rank-number.top-1,
  .leaderboard-card .rank-number.top-2,
  .leaderboard-card .rank-number.top-3 { font-size: 15px; }

  .leaderboard-card .manager-copy { gap: 5px; }
  .leaderboard-card .manager-copy > strong { font-size: 13px; }
  .leaderboard-card .ranking-captain-line { gap: 4px; font-size: 8px !important; }
  .leaderboard-card .ranking-captain-badge { width: 17px; height: 17px; flex-basis: 17px; font-size: 8px; }
  .leaderboard-card .ranking-stat b,
  .leaderboard-card .ranking-stat .numeric-cell { font-size: 11px; }
  .leaderboard-card .ranking-total .numeric-cell { font-size: 13px; }

  .leaderboard-card .ranking-boost {
    width: 45px;
    min-height: 39px;
    gap: 2px;
    padding: 4px 2px;
    border-radius: 9px;
  }

  .leaderboard-card .ranking-boost b { font-size: 10px; }
  .leaderboard-card .ranking-boost small { font-size: 5.5px; }
}

@media (max-width: 370px) {
  .leaderboard-card .ranking-head,
  .leaderboard-card .ranking-row {
    grid-template-columns: 28px minmax(65px, 1fr) 31px 38px 25px 25px 42px;
  }

  .leaderboard-card .ranking-head { font-size: 6.5px; }
  .leaderboard-card .manager-copy > strong { font-size: 12px; }
  .leaderboard-card .ranking-boost { width: 39px; }
  .leaderboard-card .ranking-boost small { display: none; }
}

/* v33 — ranking cards matched to the selected visual reference */
.ranking-view > .view-heading {
  display: none;
}

.ranking-view .leaderboard-card,
html[data-theme="dark"] .ranking-view .leaderboard-card {
  overflow: visible;
  background: transparent;
  border: 0;
  box-shadow: none;
}

.leaderboard-card .section-head {
  width: 100%;
  max-width: 860px;
  min-height: 96px;
  justify-content: flex-start;
  margin: 0 auto;
  padding: 22px 8px 20px;
  background: transparent;
  border: 0;
}

.leaderboard-card .ranking-title-wrap {
  display: flex;
  align-items: center;
  gap: 14px;
}

.leaderboard-card .ranking-title-wrap h2 {
  margin: 0;
  color: #2d233b;
  font-size: clamp(29px, 4vw, 41px);
  font-weight: 900;
  line-height: 1;
}

.leaderboard-card .ranking-title-icon {
  width: 56px;
  height: 56px;
  display: flex;
  align-items: flex-end;
  justify-content: center;
  gap: 4px;
  padding: 12px 11px;
  background: linear-gradient(145deg, #f2edfb, #e3d8f5);
  border: 1px solid #d4c6ea;
  border-radius: 15px;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .78), 0 8px 18px rgba(86, 60, 135, .09);
}

.leaderboard-card .ranking-title-icon i {
  width: 7px;
  background: linear-gradient(180deg, #ae86ef, #7250bc);
  border-radius: 3px 3px 1px 1px;
}

.leaderboard-card .ranking-title-icon i:nth-child(1) { height: 17px; }
.leaderboard-card .ranking-title-icon i:nth-child(2) { height: 31px; }
.leaderboard-card .ranking-title-icon i:nth-child(3) { height: 23px; }

.leaderboard-card .participant-count,
.leaderboard-card .ranking-head {
  display: none;
}

.leaderboard-card .ranking-list {
  width: 100%;
  max-width: 860px;
  display: grid;
  gap: 18px;
  margin: 0 auto;
  padding: 0 0 18px;
  overflow: visible;
  background: transparent;
}

.leaderboard-card .ranking-row {
  position: relative;
  width: 100%;
  min-height: 190px;
  display: grid;
  grid-template-columns: 132px minmax(0, 1fr) 72px;
  grid-template-rows: 112px 78px;
  grid-template-areas:
    "total manager rank"
    "bottom bottom bottom";
  gap: 0;
  align-items: stretch;
  padding: 0 34px;
  overflow: hidden;
  direction: ltr;
  color: #2c233b;
  background:
    radial-gradient(circle at 82% 0, rgba(137, 99, 202, .12), transparent 39%),
    linear-gradient(145deg, #fff, #f7f3fc);
  border: 1px solid #d8cee8;
  border-radius: 26px;
  box-shadow: 0 12px 26px rgba(63, 45, 93, .08);
  text-align: right;
}

.leaderboard-card .ranking-row:last-child {
  border-bottom: 1px solid #d8cee8;
}

.leaderboard-card .ranking-row:hover,
.leaderboard-card .ranking-row:focus-visible {
  background:
    radial-gradient(circle at 82% 0, rgba(137, 99, 202, .17), transparent 42%),
    linear-gradient(145deg, #fff, #f3edfb);
  border-color: #bdabd9;
  box-shadow: 0 15px 32px rgba(63, 45, 93, .12);
  outline: none;
}

.leaderboard-card .rank-cell {
  grid-area: rank;
  width: auto;
  height: auto;
  align-self: center;
  justify-self: end;
  display: block;
  padding: 0;
  background: transparent;
  border: 0;
  border-radius: 0;
  box-shadow: none;
}

.leaderboard-card .rank-number,
.leaderboard-card .rank-number.top-1,
.leaderboard-card .rank-number.top-2,
.leaderboard-card .rank-number.top-3 {
  width: auto;
  height: auto;
  color: #92899f;
  background: transparent;
  border: 0;
  border-radius: 0;
  font-family: Arial, sans-serif;
  font-size: 48px;
  font-weight: 500;
  line-height: 1;
  box-shadow: none;
}

.leaderboard-card .rank-number.top-1 { color: #c99a20; }
.leaderboard-card .rank-number.top-2 { color: #8e889a; }
.leaderboard-card .rank-number.top-3 { color: #c8753c; }

.leaderboard-card .manager-cell {
  grid-area: manager;
  align-self: center;
  justify-self: stretch;
  direction: rtl;
  text-align: right;
}

.leaderboard-card .manager-copy {
  display: block;
  text-align: right;
}

.leaderboard-card .manager-copy > strong {
  display: block;
  overflow: hidden;
  color: #261d35;
  font-size: 34px;
  font-weight: 900;
  line-height: 1.2;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.leaderboard-card .ranking-total-feature {
  grid-area: total;
  align-self: center;
  justify-self: start;
  display: grid;
  gap: 6px;
  transform: translateY(8px);
  direction: rtl;
  text-align: left;
}

.leaderboard-card .ranking-total-feature .numeric-cell {
  color: #2a2237;
  font-family: Arial, sans-serif;
  font-size: 39px;
  font-weight: 800;
  line-height: 1;
}

.leaderboard-card .ranking-total-feature small {
  color: #887e97;
  font-size: 17px;
  font-weight: 700;
  text-align: center;
}

.leaderboard-card .ranking-bottom {
  grid-area: bottom;
  min-width: 0;
  display: grid;
  grid-template-columns: minmax(150px, 1.08fr) minmax(270px, 2fr);
  grid-template-areas: "captain metrics";
  align-items: center;
  direction: ltr;
  border-top: 1px solid rgba(94, 73, 126, .12);
}

.leaderboard-card .ranking-captain-line {
  grid-area: captain;
  min-width: 0;
  display: flex !important;
  align-items: center;
  justify-self: start;
  gap: 13px;
  color: #71677e;
  direction: ltr;
  font-family: Arial, sans-serif;
  font-size: 19px;
  font-weight: 750;
  line-height: 1;
}

.leaderboard-card .ranking-captain-line span {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.leaderboard-card .ranking-captain-badge {
  width: 42px;
  height: 42px;
  flex: 0 0 42px;
  display: grid;
  place-items: center;
  color: #24173a;
  background: linear-gradient(145deg, #d8c4ff, #a981ed);
  border: 1px solid rgba(255, 255, 255, .58);
  border-radius: 11px;
  font-size: 20px;
  font-weight: 900;
  box-shadow: 0 5px 12px rgba(91, 58, 153, .18);
}

.leaderboard-card .ranking-metrics {
  grid-area: metrics;
  min-width: 0;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  direction: rtl;
}

.leaderboard-card .ranking-metrics > span {
  min-width: 0;
  display: grid;
  place-items: center;
  gap: 5px;
}

.leaderboard-card .ranking-metrics > span + span {
  border-right: 1px solid rgba(94, 73, 126, .14);
}

.leaderboard-card .ranking-metrics b,
.leaderboard-card .ranking-metrics .numeric-cell {
  color: #71677d;
  font-family: Arial, sans-serif;
  font-size: 29px;
  font-weight: 700;
  line-height: 1;
}

.leaderboard-card .ranking-metrics small {
  color: #91879d;
  font-size: 15px;
  font-weight: 700;
}

.leaderboard-card .ranking-metrics .ranking-round .numeric-cell { color: #865fd2; }

.leaderboard-card .ranking-boost {
  position: absolute;
  top: 7px;
  left: 8px;
  z-index: 2;
  width: min(224px, 31%);
  min-height: 46px;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 11px;
  margin: 0;
  padding: 8px 28px 8px 17px;
  color: #fff;
  background: linear-gradient(105deg, #8c5acb, #5c318e);
  border: 1px solid rgba(193, 153, 245, .62);
  border-radius: 17px 5px 18px 5px;
  clip-path: polygon(0 0, 100% 0, 88% 100%, 0 100%);
  direction: ltr;
  box-shadow: 0 7px 16px rgba(72, 35, 124, .22);
}

.leaderboard-card .ranking-boost.wildcard,
.leaderboard-card .ranking-boost.free-hit,
.leaderboard-card .ranking-boost.bench-boost,
.leaderboard-card .ranking-boost.triple-captain,
html[data-theme="dark"] .leaderboard-card .ranking-boost.wildcard,
html[data-theme="dark"] .leaderboard-card .ranking-boost.free-hit,
html[data-theme="dark"] .leaderboard-card .ranking-boost.bench-boost,
html[data-theme="dark"] .leaderboard-card .ranking-boost.triple-captain {
  color: #fff;
  background: linear-gradient(105deg, #8c5acb, #5c318e);
  border-color: rgba(193, 153, 245, .62);
}

.leaderboard-card .ranking-boost b {
  color: #d8bdff;
  font-family: Arial, sans-serif;
  font-size: 21px;
  font-weight: 800;
  line-height: 1;
}

.leaderboard-card .ranking-boost small {
  overflow: hidden;
  color: #f0e5ff;
  font-family: Arial, sans-serif;
  font-size: 17px;
  font-weight: 700;
  line-height: 1;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.leaderboard-card .skeleton-row {
  min-height: 190px;
  border-radius: 26px;
}

html[data-theme="dark"] .leaderboard-card .ranking-title-wrap h2 { color: #f7f3ff; }

html[data-theme="dark"] .leaderboard-card .ranking-title-icon {
  background: linear-gradient(145deg, rgba(115, 85, 174, .26), rgba(66, 51, 101, .7));
  border-color: rgba(194, 171, 238, .24);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .08), 0 9px 22px rgba(0, 0, 0, .2);
}

html[data-theme="dark"] .leaderboard-card .ranking-row {
  color: #f8f4ff;
  background:
    radial-gradient(circle at 86% 2%, rgba(140, 99, 212, .12), transparent 41%),
    linear-gradient(145deg, #2c2748, #28233f);
  border-color: rgba(178, 158, 218, .21);
  box-shadow: 0 13px 28px rgba(6, 4, 17, .22);
}

html[data-theme="dark"] .leaderboard-card .ranking-row:last-child {
  border-bottom-color: rgba(178, 158, 218, .21);
}

html[data-theme="dark"] .leaderboard-card .ranking-row:hover,
html[data-theme="dark"] .leaderboard-card .ranking-row:focus-visible {
  background:
    radial-gradient(circle at 86% 2%, rgba(150, 109, 224, .17), transparent 43%),
    linear-gradient(145deg, #312b50, #2b2545);
  border-color: rgba(195, 171, 240, .34);
  box-shadow: 0 16px 34px rgba(4, 3, 12, .3);
}

html[data-theme="dark"] .leaderboard-card .manager-copy > strong { color: #fff; }
html[data-theme="dark"] .leaderboard-card .ranking-total-feature .numeric-cell { color: #fff; }
html[data-theme="dark"] .leaderboard-card .ranking-total-feature small { color: #a89db8; }
html[data-theme="dark"] .leaderboard-card .ranking-bottom { border-color: rgba(190, 169, 229, .12); }
html[data-theme="dark"] .leaderboard-card .ranking-captain-line { color: #b9aec8; }
html[data-theme="dark"] .leaderboard-card .ranking-metrics > span + span { border-color: rgba(190, 169, 229, .13); }
html[data-theme="dark"] .leaderboard-card .ranking-metrics b,
html[data-theme="dark"] .leaderboard-card .ranking-metrics .numeric-cell { color: #aaa1b9; }
html[data-theme="dark"] .leaderboard-card .ranking-metrics small { color: #aaa0b7; }
html[data-theme="dark"] .leaderboard-card .ranking-metrics .ranking-round .numeric-cell { color: #9d76ed; }

@media (max-width: 600px) {
  .leaderboard-card .section-head {
    min-height: 88px;
    padding: 16px 8px 17px;
  }

  .leaderboard-card .ranking-title-wrap { gap: 11px; }
  .leaderboard-card .ranking-title-wrap h2 { font-size: 31px; }

  .leaderboard-card .ranking-title-icon {
    width: 48px;
    height: 48px;
    padding: 10px 9px;
    border-radius: 13px;
  }

  .leaderboard-card .ranking-title-icon i { width: 6px; }
  .leaderboard-card .ranking-title-icon i:nth-child(1) { height: 15px; }
  .leaderboard-card .ranking-title-icon i:nth-child(2) { height: 27px; }
  .leaderboard-card .ranking-title-icon i:nth-child(3) { height: 20px; }

  .leaderboard-card .ranking-list {
    gap: 14px;
    padding: 0 0 14px;
  }

  .leaderboard-card .ranking-row {
    min-height: 180px;
    grid-template-columns: 91px minmax(0, 1fr) 43px;
    grid-template-rows: 101px 79px;
    padding: 0 17px;
    border-radius: 23px;
  }

  .leaderboard-card .rank-number,
  .leaderboard-card .rank-number.top-1,
  .leaderboard-card .rank-number.top-2,
  .leaderboard-card .rank-number.top-3 { font-size: 40px; }

  .leaderboard-card .manager-copy > strong {
    font-size: clamp(22px, 7.2vw, 29px);
  }

  .leaderboard-card .ranking-total-feature {
    gap: 5px;
    transform: translateY(8px);
  }

  .leaderboard-card .ranking-total-feature .numeric-cell { font-size: 32px; }
  .leaderboard-card .ranking-total-feature small { font-size: 14px; }

  .leaderboard-card .ranking-bottom {
    grid-template-columns: minmax(110px, 1.05fr) minmax(185px, 2fr);
  }

  .leaderboard-card .ranking-captain-line {
    gap: 9px;
    font-size: 16px !important;
  }

  .leaderboard-card .ranking-captain-badge {
    width: 37px;
    height: 37px;
    flex-basis: 37px;
    border-radius: 10px;
    font-size: 18px;
  }

  .leaderboard-card .ranking-metrics > span { gap: 4px; }
  .leaderboard-card .ranking-metrics b,
  .leaderboard-card .ranking-metrics .numeric-cell { font-size: 24px; }
  .leaderboard-card .ranking-metrics small { font-size: 12px; }

  .leaderboard-card .ranking-boost {
    top: 6px;
    left: 7px;
    width: min(178px, 46%);
    min-height: 43px;
    gap: 9px;
    padding: 7px 24px 7px 14px;
    border-radius: 15px 4px 16px 4px;
  }

  .leaderboard-card .ranking-boost b { font-size: 19px; }
  .leaderboard-card .ranking-boost small { display: block; font-size: 14px; }
  .leaderboard-card .skeleton-row { min-height: 180px; border-radius: 23px; }
}

@media (max-width: 370px) {
  .leaderboard-card .ranking-title-wrap h2 { font-size: 28px; }

  .leaderboard-card .ranking-row {
    grid-template-columns: 78px minmax(0, 1fr) 37px;
    padding: 0 12px;
  }

  .leaderboard-card .rank-number,
  .leaderboard-card .rank-number.top-1,
  .leaderboard-card .rank-number.top-2,
  .leaderboard-card .rank-number.top-3 { font-size: 35px; }

  .leaderboard-card .manager-copy > strong { font-size: 22px; }
  .leaderboard-card .ranking-total-feature .numeric-cell { font-size: 29px; }
  .leaderboard-card .ranking-total-feature small { font-size: 12px; }
  .leaderboard-card .ranking-bottom { grid-template-columns: minmax(98px, 1fr) minmax(165px, 1.9fr); }
  .leaderboard-card .ranking-captain-line { gap: 7px; font-size: 14px !important; }
  .leaderboard-card .ranking-captain-badge { width: 34px; height: 34px; flex-basis: 34px; font-size: 16px; }
  .leaderboard-card .ranking-metrics b,
  .leaderboard-card .ranking-metrics .numeric-cell { font-size: 21px; }
  .leaderboard-card .ranking-metrics small { font-size: 10px; }
  .leaderboard-card .ranking-boost { width: min(161px, 48%); }
  .leaderboard-card .ranking-boost small { font-size: 12px; }
}

/* v34 — calm, compact ranking cards with no image dependency */
.leaderboard-card .section-head {
  max-width: 780px;
  min-height: 72px;
  justify-content: space-between;
  padding: 10px 4px 14px;
}

.leaderboard-card .ranking-title-wrap { gap: 10px; }

.leaderboard-card .ranking-title-wrap h2 {
  color: #2c2339;
  font-size: 27px;
  line-height: 1.15;
}

.leaderboard-card .ranking-title-icon {
  width: 42px;
  height: 42px;
  gap: 3px;
  padding: 9px 8px;
  border-radius: 13px;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.7), 0 6px 14px rgba(86,60,135,.08);
}

.leaderboard-card .ranking-title-icon i { width: 5px; }
.leaderboard-card .ranking-title-icon i:nth-child(1) { height: 12px; }
.leaderboard-card .ranking-title-icon i:nth-child(2) { height: 23px; }
.leaderboard-card .ranking-title-icon i:nth-child(3) { height: 17px; }

.leaderboard-card .participant-count {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  padding: 7px 10px;
  color: #70657f;
  background: rgba(113, 82, 166, .065);
  border: 1px solid rgba(103, 73, 154, .11);
  border-radius: 999px;
  font-size: 10px;
  font-weight: 800;
}

.leaderboard-card .participant-count b {
  color: #6844aa;
  font-family: Arial, sans-serif;
  font-size: 12px;
}

.leaderboard-card .ranking-list {
  max-width: 780px;
  gap: 10px;
  padding-bottom: 16px;
}

.leaderboard-card .ranking-row,
.leaderboard-card .ranking-row.top-1,
.leaderboard-card .ranking-row.top-2,
.leaderboard-card .ranking-row.top-3 {
  min-height: 128px;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) 46px;
  grid-template-rows: 64px 50px;
  grid-template-areas:
    "boost manager rank"
    "metrics metrics metrics";
  gap: 0 11px;
  align-items: center;
  padding: 13px 16px 0;
  overflow: hidden;
  direction: ltr;
  color: #30263e;
  background: linear-gradient(145deg, #ffffff, #fbf9fd);
  border: 1px solid #e2dbea;
  border-radius: 18px;
  box-shadow: 0 7px 18px rgba(52, 37, 78, .055);
}

.leaderboard-card .ranking-row:last-child {
  border-bottom: 1px solid #e2dbea;
}

.leaderboard-card .ranking-row:hover,
.leaderboard-card .ranking-row:focus-visible,
.leaderboard-card .ranking-row.top-1:hover,
.leaderboard-card .ranking-row.top-2:hover,
.leaderboard-card .ranking-row.top-3:hover {
  background: linear-gradient(145deg, #ffffff, #f7f3fb);
  border-color: #cfc0df;
  box-shadow: 0 10px 23px rgba(52, 37, 78, .085);
  outline: none;
}

.leaderboard-card .rank-cell {
  grid-area: rank;
  width: 42px;
  height: 42px;
  display: grid;
  place-items: center;
  align-self: center;
  justify-self: end;
  color: #fff;
  background: linear-gradient(145deg, #8c68cf, #6946ad);
  border: 1px solid rgba(255,255,255,.5);
  border-radius: 13px;
  box-shadow: 0 5px 12px rgba(86, 55, 143, .16);
}

.leaderboard-card .ranking-row.top-1 .rank-cell {
  background: linear-gradient(145deg, #d3aa45, #a87816);
  box-shadow: 0 5px 12px rgba(158, 111, 17, .16);
}

.leaderboard-card .ranking-row.top-2 .rank-cell {
  background: linear-gradient(145deg, #aaa6b1, #77727f);
  box-shadow: 0 5px 12px rgba(91, 86, 99, .14);
}

.leaderboard-card .ranking-row.top-3 .rank-cell {
  background: linear-gradient(145deg, #cc895e, #9c5834);
  box-shadow: 0 5px 12px rgba(143, 75, 39, .14);
}

.leaderboard-card .rank-number,
.leaderboard-card .rank-number.top-1,
.leaderboard-card .rank-number.top-2,
.leaderboard-card .rank-number.top-3 {
  width: auto;
  height: auto;
  color: #fff;
  background: transparent;
  border: 0;
  font-family: Arial, sans-serif;
  font-size: 18px;
  font-weight: 850;
  line-height: 1;
  box-shadow: none;
}

.leaderboard-card .manager-cell {
  grid-area: manager;
  min-width: 0;
  align-self: center;
  direction: rtl;
}

.leaderboard-card .manager-copy {
  min-width: 0;
  display: grid;
  justify-items: start;
  gap: 7px;
  direction: rtl;
  text-align: right;
}

.leaderboard-card .manager-copy > strong {
  width: 100%;
  overflow: hidden;
  color: #281f35;
  font-size: 20px;
  font-weight: 900;
  line-height: 1.1;
  text-align: right;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.leaderboard-card .ranking-captain-line {
  min-width: 0;
  display: flex !important;
  align-items: center;
  justify-self: start;
  gap: 6px;
  color: #756b80;
  direction: ltr;
  font-family: Arial, sans-serif;
  font-size: 11px;
  font-weight: 750;
  line-height: 1;
}

.leaderboard-card .ranking-captain-line span {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.leaderboard-card .ranking-captain-badge {
  width: 20px;
  height: 20px;
  flex: 0 0 20px;
  display: grid;
  place-items: center;
  color: #3f285f;
  background: #e9def9;
  border: 1px solid #d6c3f1;
  border-radius: 6px;
  font-size: 10px;
  font-weight: 900;
  box-shadow: none;
}

.leaderboard-card .ranking-boost,
.leaderboard-card .ranking-boost.wildcard,
.leaderboard-card .ranking-boost.free-hit,
.leaderboard-card .ranking-boost.bench-boost,
.leaderboard-card .ranking-boost.triple-captain,
html[data-theme="dark"] .leaderboard-card .ranking-boost.wildcard,
html[data-theme="dark"] .leaderboard-card .ranking-boost.free-hit,
html[data-theme="dark"] .leaderboard-card .ranking-boost.bench-boost,
html[data-theme="dark"] .leaderboard-card .ranking-boost.triple-captain {
  position: static;
  grid-area: boost;
  width: fit-content;
  max-width: 145px;
  min-height: 30px;
  justify-self: start;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin: 0;
  padding: 6px 9px;
  overflow: hidden;
  color: #68439f;
  background: #f0e8fb;
  border: 1px solid #ddcef2;
  border-radius: 999px;
  clip-path: none;
  direction: ltr;
  box-shadow: none;
}

.leaderboard-card .ranking-boost b {
  color: #8059ba;
  font-size: 12px;
  line-height: 1;
}

.leaderboard-card .ranking-boost small {
  display: block;
  overflow: hidden;
  color: #68439f;
  font-family: Arial, sans-serif;
  font-size: 10px;
  font-weight: 800;
  line-height: 1;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.leaderboard-card .ranking-metrics {
  grid-area: metrics;
  min-width: 0;
  align-self: stretch;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  margin: 0 -16px;
  padding: 0 10px;
  direction: rtl;
  background: rgba(94, 68, 134, .035);
  border-top: 1px solid rgba(91, 66, 128, .09);
}

.leaderboard-card .ranking-metrics > span {
  min-width: 0;
  min-height: 50px;
  display: grid;
  place-content: center;
  place-items: center;
  gap: 3px;
}

.leaderboard-card .ranking-metrics > span + span {
  border-right: 1px solid rgba(91, 66, 128, .08);
}

.leaderboard-card .ranking-metrics small {
  color: #746b7b;
  font-size: 9px;
  font-weight: 800;
  line-height: 1;
}

.leaderboard-card .ranking-metrics b,
.leaderboard-card .ranking-metrics .numeric-cell {
  color: #554a61;
  font-family: Arial, sans-serif;
  font-size: 18px;
  font-weight: 850;
  line-height: 1;
}

.leaderboard-card .ranking-metrics .ranking-round .numeric-cell { color: #7650bc; }
.leaderboard-card .ranking-metrics .ranking-total .numeric-cell { color: #2c2339; font-size: 19px; }
.leaderboard-card .ranking-metrics .ranking-played b { color: #2c9159; }
.leaderboard-card .ranking-metrics .ranking-remaining b { color: #c96143; }

.leaderboard-card .skeleton-row {
  min-height: 128px;
  border-radius: 18px;
}

html[data-theme="dark"] .leaderboard-card .participant-count {
  color: #b9aec5;
  background: rgba(188, 163, 231, .07);
  border-color: rgba(188, 163, 231, .12);
}

html[data-theme="dark"] .leaderboard-card .participant-count b { color: #b895f0; }

html[data-theme="dark"] .leaderboard-card .ranking-row,
html[data-theme="dark"] .leaderboard-card .ranking-row.top-1,
html[data-theme="dark"] .leaderboard-card .ranking-row.top-2,
html[data-theme="dark"] .leaderboard-card .ranking-row.top-3 {
  color: #f5f0fb;
  background: linear-gradient(145deg, #302a49, #2a253f);
  border-color: rgba(190, 169, 225, .14);
  box-shadow: 0 8px 20px rgba(4, 3, 12, .18);
}

html[data-theme="dark"] .leaderboard-card .ranking-row:hover,
html[data-theme="dark"] .leaderboard-card .ranking-row:focus-visible,
html[data-theme="dark"] .leaderboard-card .ranking-row.top-1:hover,
html[data-theme="dark"] .leaderboard-card .ranking-row.top-2:hover,
html[data-theme="dark"] .leaderboard-card .ranking-row.top-3:hover {
  background: linear-gradient(145deg, #352e50, #2d2744);
  border-color: rgba(199, 176, 237, .23);
  box-shadow: 0 11px 25px rgba(4, 3, 12, .25);
}

html[data-theme="dark"] .leaderboard-card .manager-copy > strong { color: #fff; }
html[data-theme="dark"] .leaderboard-card .ranking-captain-line { color: #bdb2c7; }
html[data-theme="dark"] .leaderboard-card .ranking-captain-badge {
  color: #eadfff;
  background: rgba(139, 100, 203, .28);
  border-color: rgba(194, 160, 239, .22);
}

html[data-theme="dark"] .leaderboard-card .ranking-boost,
html[data-theme="dark"] .leaderboard-card .ranking-boost.wildcard,
html[data-theme="dark"] .leaderboard-card .ranking-boost.free-hit,
html[data-theme="dark"] .leaderboard-card .ranking-boost.bench-boost,
html[data-theme="dark"] .leaderboard-card .ranking-boost.triple-captain {
  color: #d9c6f4;
  background: rgba(126, 86, 181, .2);
  border-color: rgba(193, 158, 238, .18);
}

html[data-theme="dark"] .leaderboard-card .ranking-boost b,
html[data-theme="dark"] .leaderboard-card .ranking-boost small { color: #d9c6f4; }

html[data-theme="dark"] .leaderboard-card .ranking-metrics {
  background: rgba(218, 199, 248, .035);
  border-color: rgba(201, 181, 232, .09);
}

html[data-theme="dark"] .leaderboard-card .ranking-metrics > span + span { border-color: rgba(201, 181, 232, .08); }
html[data-theme="dark"] .leaderboard-card .ranking-metrics small { color: #aaa0b4; }
html[data-theme="dark"] .leaderboard-card .ranking-metrics b,
html[data-theme="dark"] .leaderboard-card .ranking-metrics .numeric-cell { color: #ded6e7; }
html[data-theme="dark"] .leaderboard-card .ranking-metrics .ranking-round .numeric-cell { color: #aa84ed; }
html[data-theme="dark"] .leaderboard-card .ranking-metrics .ranking-total .numeric-cell { color: #fff; }
html[data-theme="dark"] .leaderboard-card .ranking-metrics .ranking-played b { color: #58bc7d; }
html[data-theme="dark"] .leaderboard-card .ranking-metrics .ranking-remaining b { color: #e37858; }

@media (max-width: 600px) {
  .leaderboard-card .section-head {
    min-height: 66px;
    padding: 8px 2px 12px;
  }

  .leaderboard-card .ranking-title-wrap { gap: 8px; }
  .leaderboard-card .ranking-title-wrap h2 { font-size: 24px; }

  .leaderboard-card .ranking-title-icon {
    width: 38px;
    height: 38px;
    padding: 8px 7px;
    border-radius: 11px;
  }

  .leaderboard-card .ranking-title-icon i:nth-child(1) { height: 10px; }
  .leaderboard-card .ranking-title-icon i:nth-child(2) { height: 20px; }
  .leaderboard-card .ranking-title-icon i:nth-child(3) { height: 15px; }

  .leaderboard-card .participant-count { padding: 6px 8px; font-size: 9px; }
  .leaderboard-card .participant-count b { font-size: 11px; }

  .leaderboard-card .ranking-list { gap: 9px; }

  .leaderboard-card .ranking-row,
  .leaderboard-card .ranking-row.top-1,
  .leaderboard-card .ranking-row.top-2,
  .leaderboard-card .ranking-row.top-3 {
    min-height: 122px;
    grid-template-columns: auto minmax(0, 1fr) 40px;
    grid-template-rows: 60px 49px;
    gap: 0 8px;
    padding: 12px 12px 0;
    border-radius: 16px;
  }

  .leaderboard-card .rank-cell { width: 38px; height: 38px; border-radius: 11px; }
  .leaderboard-card .rank-number,
  .leaderboard-card .rank-number.top-1,
  .leaderboard-card .rank-number.top-2,
  .leaderboard-card .rank-number.top-3 { font-size: 16px; }

  .leaderboard-card .manager-copy { gap: 6px; }
  .leaderboard-card .manager-copy > strong { font-size: 18px; }
  .leaderboard-card .ranking-captain-line { font-size: 10px !important; }
  .leaderboard-card .ranking-captain-badge { width: 19px; height: 19px; flex-basis: 19px; font-size: 9px; }

  .leaderboard-card .ranking-boost,
  .leaderboard-card .ranking-boost.wildcard,
  .leaderboard-card .ranking-boost.free-hit,
  .leaderboard-card .ranking-boost.bench-boost,
  .leaderboard-card .ranking-boost.triple-captain {
    max-width: 120px;
    min-height: 28px;
    gap: 5px;
    padding: 5px 8px;
  }

  .leaderboard-card .ranking-boost b { font-size: 11px; }
  .leaderboard-card .ranking-boost small { font-size: 9px; }

  .leaderboard-card .ranking-metrics {
    margin: 0 -12px;
    padding: 0 6px;
  }

  .leaderboard-card .ranking-metrics > span { min-height: 49px; }
  .leaderboard-card .ranking-metrics small { font-size: 8px; }
  .leaderboard-card .ranking-metrics b,
  .leaderboard-card .ranking-metrics .numeric-cell { font-size: 16px; }
  .leaderboard-card .ranking-metrics .ranking-total .numeric-cell { font-size: 17px; }
  .leaderboard-card .skeleton-row { min-height: 122px; border-radius: 16px; }
}

@media (max-width: 370px) {
  .leaderboard-card .ranking-title-wrap h2 { font-size: 22px; }

  .leaderboard-card .ranking-row,
  .leaderboard-card .ranking-row.top-1,
  .leaderboard-card .ranking-row.top-2,
  .leaderboard-card .ranking-row.top-3 {
    grid-template-columns: auto minmax(0, 1fr) 37px;
    gap: 0 6px;
    padding-inline: 10px;
  }

  .leaderboard-card .rank-cell { width: 35px; height: 35px; }
  .leaderboard-card .manager-copy > strong { font-size: 16px; }
  .leaderboard-card .ranking-boost,
  .leaderboard-card .ranking-boost.wildcard,
  .leaderboard-card .ranking-boost.free-hit,
  .leaderboard-card .ranking-boost.bench-boost,
  .leaderboard-card .ranking-boost.triple-captain { max-width: 103px; padding-inline: 7px; }
  .leaderboard-card .ranking-boost small { font-size: 8px; }
  .leaderboard-card .ranking-metrics { margin-inline: -10px; }
}

/* v35 — selected model 4: clean line */
.leaderboard-card .ranking-list {
  max-width: 780px;
  gap: 10px;
}

.leaderboard-card .ranking-row,
.leaderboard-card .ranking-row.top-1,
.leaderboard-card .ranking-row.top-2,
.leaderboard-card .ranking-row.top-3 {
  min-height: 116px;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) 34px;
  grid-template-rows: 59px 43px;
  grid-template-areas:
    "boost manager rank"
    "metrics metrics metrics";
  gap: 0 10px;
  align-items: center;
  padding: 11px 14px 0;
  overflow: hidden;
  direction: ltr;
  color: #30263e;
  background: #fff;
  border: 1px solid #e2dbea;
  border-radius: 15px;
  box-shadow: 0 6px 18px rgba(43, 30, 61, .05);
}

.leaderboard-card .ranking-row:hover,
.leaderboard-card .ranking-row:focus-visible,
.leaderboard-card .ranking-row.top-1:hover,
.leaderboard-card .ranking-row.top-2:hover,
.leaderboard-card .ranking-row.top-3:hover {
  background: #fdfbff;
  border-color: #cfc1de;
  box-shadow: 0 9px 22px rgba(43, 30, 61, .075);
  outline: none;
}

.leaderboard-card .rank-cell,
.leaderboard-card .ranking-row.top-1 .rank-cell,
.leaderboard-card .ranking-row.top-2 .rank-cell,
.leaderboard-card .ranking-row.top-3 .rank-cell {
  grid-area: rank;
  width: 32px;
  height: auto;
  display: block;
  align-self: center;
  justify-self: center;
  padding: 0;
  color: #7650bd;
  background: transparent;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  text-align: center;
}

.leaderboard-card .rank-number,
.leaderboard-card .rank-number.top-1,
.leaderboard-card .rank-number.top-2,
.leaderboard-card .rank-number.top-3 {
  width: auto;
  height: auto;
  color: #7650bd;
  background: transparent;
  border: 0;
  border-radius: 0;
  font-size: 22px;
  font-weight: 900;
  line-height: 1;
  box-shadow: none;
}

.leaderboard-card .manager-cell {
  grid-area: manager;
  min-width: 0;
  align-self: center;
  direction: rtl;
}

.leaderboard-card .manager-copy {
  min-width: 0;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 11px;
  direction: rtl;
}

.leaderboard-card .manager-copy > strong {
  width: auto;
  max-width: 60%;
  overflow: hidden;
  color: #281f35;
  font-size: 19px;
  font-weight: 900;
  line-height: 1.1;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.leaderboard-card .ranking-captain-line {
  min-width: 0;
  display: inline-flex !important;
  align-items: center;
  justify-self: auto;
  gap: 5px;
  color: #756b80;
  direction: ltr;
  font-family: Arial, sans-serif;
  font-size: 10px;
  font-weight: 750;
  white-space: nowrap;
}

.leaderboard-card .ranking-captain-badge {
  width: 19px;
  height: 19px;
  flex: 0 0 19px;
  color: #3f285f;
  background: #e9def9;
  border: 1px solid #d6c3f1;
  border-radius: 6px;
  font-size: 9px;
  box-shadow: none;
}

.leaderboard-card .ranking-boost,
.leaderboard-card .ranking-boost.wildcard,
.leaderboard-card .ranking-boost.free-hit,
.leaderboard-card .ranking-boost.bench-boost,
.leaderboard-card .ranking-boost.triple-captain,
html[data-theme="dark"] .leaderboard-card .ranking-boost.wildcard,
html[data-theme="dark"] .leaderboard-card .ranking-boost.free-hit,
html[data-theme="dark"] .leaderboard-card .ranking-boost.bench-boost,
html[data-theme="dark"] .leaderboard-card .ranking-boost.triple-captain {
  position: static;
  grid-area: boost;
  width: fit-content;
  max-width: 142px;
  min-height: 28px;
  justify-self: start;
  display: inline-flex;
  align-items: center;
  gap: 5px;
  margin: 0;
  padding: 5px 8px;
  overflow: hidden;
  color: #68439f;
  background: #f0e8fb;
  border: 1px solid #ddcef2;
  border-radius: 999px;
  clip-path: none;
  direction: ltr;
  box-shadow: none;
}

.leaderboard-card .ranking-boost b { color: #8059ba; font-size: 11px; }
.leaderboard-card .ranking-boost small { display: block; color: #68439f; font-size: 9px; }

.leaderboard-card .ranking-metrics {
  grid-area: metrics;
  min-width: 0;
  align-self: stretch;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  margin: 0;
  padding: 9px 6px 0;
  direction: rtl;
  background: transparent;
  border-top: 1px solid #e8e1ed;
}

.leaderboard-card .ranking-metrics > span {
  min-width: 0;
  min-height: 34px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 5px;
  direction: rtl;
}

.leaderboard-card .ranking-metrics > span + span { border: 0; }

.leaderboard-card .ranking-metrics small {
  color: #746b7b;
  font-size: 9px;
  font-weight: 800;
  line-height: 1;
}

.leaderboard-card .ranking-metrics b,
.leaderboard-card .ranking-metrics .numeric-cell {
  color: #4e435a;
  font-size: 16px;
  font-weight: 850;
  line-height: 1;
}

.leaderboard-card .ranking-metrics .ranking-round .numeric-cell { color: #7650bd; }
.leaderboard-card .ranking-metrics .ranking-total .numeric-cell { color: #2c2339; font-size: 17px; }
.leaderboard-card .ranking-metrics .ranking-played b { color: #2c9159; }
.leaderboard-card .ranking-metrics .ranking-remaining b { color: #c96143; }

.leaderboard-card .skeleton-row { min-height: 116px; border-radius: 15px; }

html[data-theme="dark"] .leaderboard-card .ranking-row,
html[data-theme="dark"] .leaderboard-card .ranking-row.top-1,
html[data-theme="dark"] .leaderboard-card .ranking-row.top-2,
html[data-theme="dark"] .leaderboard-card .ranking-row.top-3 {
  color: #f5f0fb;
  background: #2c2740;
  border-color: rgba(190, 169, 225, .14);
  box-shadow: 0 7px 19px rgba(4, 3, 12, .18);
}

html[data-theme="dark"] .leaderboard-card .ranking-row:hover,
html[data-theme="dark"] .leaderboard-card .ranking-row:focus-visible,
html[data-theme="dark"] .leaderboard-card .ranking-row.top-1:hover,
html[data-theme="dark"] .leaderboard-card .ranking-row.top-2:hover,
html[data-theme="dark"] .leaderboard-card .ranking-row.top-3:hover {
  background: #312b47;
  border-color: rgba(199, 176, 237, .23);
}

html[data-theme="dark"] .leaderboard-card .rank-cell,
html[data-theme="dark"] .leaderboard-card .ranking-row.top-1 .rank-cell,
html[data-theme="dark"] .leaderboard-card .ranking-row.top-2 .rank-cell,
html[data-theme="dark"] .leaderboard-card .ranking-row.top-3 .rank-cell {
  color: #aa83ed;
}

html[data-theme="dark"] .leaderboard-card .rank-number,
html[data-theme="dark"] .leaderboard-card .rank-number.top-1,
html[data-theme="dark"] .leaderboard-card .rank-number.top-2,
html[data-theme="dark"] .leaderboard-card .rank-number.top-3 {
  width: auto;
  height: auto;
  color: #aa83ed;
  background: transparent;
  border: 0;
  border-radius: 0;
  box-shadow: none;
}

html[data-theme="dark"] .leaderboard-card .manager-copy > strong { color: #fff; }
html[data-theme="dark"] .leaderboard-card .ranking-captain-line { color: #bdb2c7; }
html[data-theme="dark"] .leaderboard-card .ranking-captain-badge {
  color: #eadfff;
  background: rgba(139, 100, 203, .28);
  border-color: rgba(194, 160, 239, .22);
}

html[data-theme="dark"] .leaderboard-card .ranking-boost,
html[data-theme="dark"] .leaderboard-card .ranking-boost.wildcard,
html[data-theme="dark"] .leaderboard-card .ranking-boost.free-hit,
html[data-theme="dark"] .leaderboard-card .ranking-boost.bench-boost,
html[data-theme="dark"] .leaderboard-card .ranking-boost.triple-captain {
  color: #d9c6f4;
  background: rgba(126, 86, 181, .2);
  border-color: rgba(193, 158, 238, .18);
}

html[data-theme="dark"] .leaderboard-card .ranking-boost b,
html[data-theme="dark"] .leaderboard-card .ranking-boost small { color: #d9c6f4; }

html[data-theme="dark"] .leaderboard-card .ranking-metrics { background: transparent; border-color: rgba(201, 181, 232, .1); }
html[data-theme="dark"] .leaderboard-card .ranking-metrics small { color: #aaa0b4; }
html[data-theme="dark"] .leaderboard-card .ranking-metrics b,
html[data-theme="dark"] .leaderboard-card .ranking-metrics .numeric-cell { color: #ded6e7; }
html[data-theme="dark"] .leaderboard-card .ranking-metrics .ranking-round .numeric-cell { color: #aa84ed; }
html[data-theme="dark"] .leaderboard-card .ranking-metrics .ranking-total .numeric-cell { color: #fff; }
html[data-theme="dark"] .leaderboard-card .ranking-metrics .ranking-played b { color: #58bc7d; }
html[data-theme="dark"] .leaderboard-card .ranking-metrics .ranking-remaining b { color: #e37858; }

@media (max-width: 600px) {
  .leaderboard-card .ranking-row,
  .leaderboard-card .ranking-row.top-1,
  .leaderboard-card .ranking-row.top-2,
  .leaderboard-card .ranking-row.top-3 {
    min-height: 110px;
    grid-template-columns: auto minmax(0, 1fr) 29px;
    grid-template-rows: 56px 41px;
    gap: 0 7px;
    padding: 10px 10px 0;
    border-radius: 14px;
  }

  .leaderboard-card .rank-cell,
  .leaderboard-card .ranking-row.top-1 .rank-cell,
  .leaderboard-card .ranking-row.top-2 .rank-cell,
  .leaderboard-card .ranking-row.top-3 .rank-cell { width: 29px; }

  .leaderboard-card .rank-number,
  .leaderboard-card .rank-number.top-1,
  .leaderboard-card .rank-number.top-2,
  .leaderboard-card .rank-number.top-3 { font-size: 19px; }

  .leaderboard-card .manager-copy { gap: 8px; }
  .leaderboard-card .manager-copy > strong { max-width: 58%; font-size: 17px; }
  .leaderboard-card .ranking-captain-line { gap: 4px; font-size: 9px !important; }
  .leaderboard-card .ranking-captain-badge { width: 18px; height: 18px; flex-basis: 18px; font-size: 8px; }

  .leaderboard-card .ranking-boost,
  .leaderboard-card .ranking-boost.wildcard,
  .leaderboard-card .ranking-boost.free-hit,
  .leaderboard-card .ranking-boost.bench-boost,
  .leaderboard-card .ranking-boost.triple-captain { max-width: 112px; min-height: 26px; padding: 5px 7px; }

  .leaderboard-card .ranking-boost b { font-size: 10px; }
  .leaderboard-card .ranking-boost small { font-size: 8px; }
  .leaderboard-card .ranking-metrics { margin: 0; padding: 8px 2px 0; }
  .leaderboard-card .ranking-metrics > span { min-height: 33px; gap: 4px; }
  .leaderboard-card .ranking-metrics small { font-size: 8px; }
  .leaderboard-card .ranking-metrics b,
  .leaderboard-card .ranking-metrics .numeric-cell { font-size: 14px; }
  .leaderboard-card .ranking-metrics .ranking-total .numeric-cell { font-size: 15px; }
  .leaderboard-card .skeleton-row { min-height: 110px; border-radius: 14px; }
}

@media (max-width: 370px) {
  .leaderboard-card .ranking-row,
  .leaderboard-card .ranking-row.top-1,
  .leaderboard-card .ranking-row.top-2,
  .leaderboard-card .ranking-row.top-3 { gap: 0 5px; padding-inline: 8px; }

  .leaderboard-card .manager-copy { gap: 6px; }
  .leaderboard-card .manager-copy > strong { font-size: 16px; }
  .leaderboard-card .ranking-boost,
  .leaderboard-card .ranking-boost.wildcard,
  .leaderboard-card .ranking-boost.free-hit,
  .leaderboard-card .ranking-boost.bench-boost,
  .leaderboard-card .ranking-boost.triple-captain { max-width: 98px; padding-inline: 6px; }
  .leaderboard-card .ranking-boost small { font-size: 7.5px; }
}

/* v40 — selected model 2: quiet ledger */
.leaderboard-card .ranking-list {
  max-width: 780px;
  gap: 10px;
  padding: 12px;
}

.leaderboard-card .ranking-row,
.leaderboard-card .ranking-row.top-1,
.leaderboard-card .ranking-row.top-2,
.leaderboard-card .ranking-row.top-3 {
  width: 100%;
  min-height: 142px;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) 38px;
  grid-template-rows: 58px 64px;
  grid-template-areas:
    "boost manager rank"
    "lower lower lower";
  gap: 10px 11px;
  align-items: start;
  padding: 14px;
  overflow: hidden;
  direction: ltr;
  color: #30263e;
  background: #fff;
  border: 1px solid #e1dae8;
  border-radius: 16px;
  box-shadow: 0 7px 19px rgba(43, 30, 61, .055);
}

.leaderboard-card .ranking-row:hover,
.leaderboard-card .ranking-row:focus-visible,
.leaderboard-card .ranking-row.top-1:hover,
.leaderboard-card .ranking-row.top-2:hover,
.leaderboard-card .ranking-row.top-3:hover {
  background: #fefcff;
  border-color: #cdbfda;
  box-shadow: 0 9px 23px rgba(43, 30, 61, .075);
  outline: none;
}

.leaderboard-card .rank-cell,
.leaderboard-card .ranking-row.top-1 .rank-cell,
.leaderboard-card .ranking-row.top-2 .rank-cell,
.leaderboard-card .ranking-row.top-3 .rank-cell {
  grid-area: rank;
  width: 38px;
  height: 38px;
  align-self: start;
  display: grid;
  place-items: center;
  padding: 0;
  color: #7650bd;
  background: transparent;
  border: 0;
  border-radius: 0;
  box-shadow: none;
}

.leaderboard-card .rank-number,
.leaderboard-card .rank-number.top-1,
.leaderboard-card .rank-number.top-2,
.leaderboard-card .rank-number.top-3 {
  width: auto;
  height: auto;
  color: #7650bd;
  background: transparent;
  border: 0;
  border-radius: 0;
  font-size: 27px;
  font-weight: 950;
  line-height: 1;
  box-shadow: none;
}

.leaderboard-card .manager-cell {
  grid-area: manager;
  min-width: 0;
  align-self: start;
  direction: rtl;
}

.leaderboard-card .manager-copy {
  min-width: 0;
  display: grid;
  align-content: start;
  justify-content: stretch;
  gap: 5px;
  direction: rtl;
  text-align: right;
}

.leaderboard-card .manager-copy > strong {
  width: 100%;
  max-width: 100%;
  overflow: hidden;
  color: #281f35;
  font-size: 19px;
  font-weight: 950;
  line-height: 1.2;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.leaderboard-card .ranking-captain-line {
  min-width: 0;
  min-height: 19px;
  display: inline-flex !important;
  align-items: center;
  justify-self: start;
  gap: 5px;
  color: #746a7e;
  direction: ltr;
  font-family: Arial, sans-serif;
  font-size: 10px;
  font-weight: 800;
  white-space: nowrap;
}

.leaderboard-card .ranking-captain-badge {
  width: 19px;
  height: 19px;
  flex: 0 0 19px;
  display: grid;
  place-items: center;
  color: #fff;
  background: #7650bd;
  border: 0;
  border-radius: 6px;
  font-size: 9px;
  box-shadow: none;
}

.leaderboard-card .ranking-boost,
.leaderboard-card .ranking-boost.wildcard,
.leaderboard-card .ranking-boost.free-hit,
.leaderboard-card .ranking-boost.bench-boost,
.leaderboard-card .ranking-boost.triple-captain,
html[data-theme="dark"] .leaderboard-card .ranking-boost.wildcard,
html[data-theme="dark"] .leaderboard-card .ranking-boost.free-hit,
html[data-theme="dark"] .leaderboard-card .ranking-boost.bench-boost,
html[data-theme="dark"] .leaderboard-card .ranking-boost.triple-captain {
  position: static;
  grid-area: boost;
  width: fit-content;
  max-width: 140px;
  min-height: 27px;
  align-self: center;
  justify-self: start;
  display: inline-flex;
  align-items: center;
  gap: 5px;
  margin: 0;
  padding: 5px 8px;
  overflow: hidden;
  color: #68439f;
  background: #eee6f7;
  border: 1px solid #ddcef0;
  border-radius: 999px;
  clip-path: none;
  direction: ltr;
  box-shadow: none;
}

.leaderboard-card .ranking-boost b { color: #8059ba; font-size: 10px; }
.leaderboard-card .ranking-boost small { display: block; overflow: hidden; color: #68439f; font-size: 8px; text-overflow: ellipsis; white-space: nowrap; }

.leaderboard-card .ranking-lower {
  grid-area: lower;
  min-width: 0;
  align-self: stretch;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 112px;
  gap: 10px;
  direction: rtl;
}

.leaderboard-card .ranking-round-group {
  min-width: 0;
  min-height: 62px;
  display: grid;
  grid-template-columns: 1.15fr .85fr .85fr;
  overflow: hidden;
  background: #f6f3f8;
  border: 1px solid #e5dee9;
  border-radius: 12px;
}

.leaderboard-card .ranking-round-group .ranking-stat,
.leaderboard-card .ranking-season-total {
  min-width: 0;
  display: grid;
  place-content: center;
  justify-items: center;
  gap: 4px;
  padding: 7px 5px;
  text-align: center;
}

.leaderboard-card .ranking-round-group .ranking-stat + .ranking-stat { border-right: 1px solid #e3dce8; }

.leaderboard-card .ranking-round-group small,
.leaderboard-card .ranking-season-total small {
  overflow: hidden;
  color: #756d7d;
  font-size: 8px;
  font-weight: 850;
  line-height: 1.15;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.leaderboard-card .ranking-round-group b,
.leaderboard-card .ranking-season-total b {
  color: #342a40;
  font-size: 17px;
  font-weight: 950;
  line-height: 1;
}

.leaderboard-card .ranking-round-group .ranking-round .numeric-cell { color: #7650bd; font-size: 22px; }
.leaderboard-card .ranking-round-group .ranking-played b { color: #2f9460; }
.leaderboard-card .ranking-round-group .ranking-remaining b { color: #cb6546; }

.leaderboard-card .ranking-season-total {
  min-height: 62px;
  background: #eee6f7;
  border: 1px solid #ddcef0;
  border-radius: 12px;
}

.leaderboard-card .ranking-season-total .numeric-cell { color: #7650bd; font-size: 23px; }
.leaderboard-card .skeleton-row { min-height: 142px; border-radius: 16px; }

html[data-theme="dark"] .leaderboard-card .ranking-row,
html[data-theme="dark"] .leaderboard-card .ranking-row.top-1,
html[data-theme="dark"] .leaderboard-card .ranking-row.top-2,
html[data-theme="dark"] .leaderboard-card .ranking-row.top-3 {
  color: #f6f1fb;
  background: #2b2534;
  border-color: rgba(207, 190, 224, .14);
  box-shadow: 0 8px 21px rgba(3, 2, 8, .21);
}

html[data-theme="dark"] .leaderboard-card .ranking-row:hover,
html[data-theme="dark"] .leaderboard-card .ranking-row:focus-visible,
html[data-theme="dark"] .leaderboard-card .ranking-row.top-1:hover,
html[data-theme="dark"] .leaderboard-card .ranking-row.top-2:hover,
html[data-theme="dark"] .leaderboard-card .ranking-row.top-3:hover {
  background: #312a3c;
  border-color: rgba(207, 190, 224, .23);
}

html[data-theme="dark"] .leaderboard-card .rank-cell,
html[data-theme="dark"] .leaderboard-card .ranking-row.top-1 .rank-cell,
html[data-theme="dark"] .leaderboard-card .ranking-row.top-2 .rank-cell,
html[data-theme="dark"] .leaderboard-card .ranking-row.top-3 .rank-cell,
html[data-theme="dark"] .leaderboard-card .rank-number,
html[data-theme="dark"] .leaderboard-card .rank-number.top-1,
html[data-theme="dark"] .leaderboard-card .rank-number.top-2,
html[data-theme="dark"] .leaderboard-card .rank-number.top-3 { color: #b68be0; background: transparent; border: 0; box-shadow: none; }

html[data-theme="dark"] .leaderboard-card .manager-copy > strong { color: #fff; }
html[data-theme="dark"] .leaderboard-card .ranking-captain-line { color: #bdb4c5; }
html[data-theme="dark"] .leaderboard-card .ranking-captain-badge { color: #fff; background: #9f73cb; border: 0; }
html[data-theme="dark"] .leaderboard-card .ranking-boost,
html[data-theme="dark"] .leaderboard-card .ranking-boost.wildcard,
html[data-theme="dark"] .leaderboard-card .ranking-boost.free-hit,
html[data-theme="dark"] .leaderboard-card .ranking-boost.bench-boost,
html[data-theme="dark"] .leaderboard-card .ranking-boost.triple-captain { color: #dbc9ef; background: rgba(143, 98, 187, .2); border-color: rgba(197, 164, 227, .18); }
html[data-theme="dark"] .leaderboard-card .ranking-boost b,
html[data-theme="dark"] .leaderboard-card .ranking-boost small { color: #dbc9ef; }
html[data-theme="dark"] .leaderboard-card .ranking-round-group { background: #342d3e; border-color: rgba(207, 190, 224, .12); }
html[data-theme="dark"] .leaderboard-card .ranking-round-group .ranking-stat + .ranking-stat { border-color: rgba(207, 190, 224, .11); }
html[data-theme="dark"] .leaderboard-card .ranking-round-group small,
html[data-theme="dark"] .leaderboard-card .ranking-season-total small { color: #b1a8b9; }
html[data-theme="dark"] .leaderboard-card .ranking-round-group b { color: #eee8f3; }
html[data-theme="dark"] .leaderboard-card .ranking-round-group .ranking-round .numeric-cell { color: #b78ce1; }
html[data-theme="dark"] .leaderboard-card .ranking-round-group .ranking-played b { color: #66cc96; }
html[data-theme="dark"] .leaderboard-card .ranking-round-group .ranking-remaining b { color: #f09270; }
html[data-theme="dark"] .leaderboard-card .ranking-season-total { background: rgba(143, 98, 187, .18); border-color: rgba(197, 164, 227, .17); }
html[data-theme="dark"] .leaderboard-card .ranking-season-total .numeric-cell { color: #c49be8; }

@media (max-width: 600px) {
  .leaderboard-card .ranking-list { gap: 9px; padding: 9px; }

  .leaderboard-card .ranking-row,
  .leaderboard-card .ranking-row.top-1,
  .leaderboard-card .ranking-row.top-2,
  .leaderboard-card .ranking-row.top-3 {
    min-height: 132px;
    grid-template-columns: auto minmax(0, 1fr) 30px;
    grid-template-rows: 55px 58px;
    gap: 8px 7px;
    padding: 10px;
    border-radius: 14px;
  }

  .leaderboard-card .rank-cell,
  .leaderboard-card .ranking-row.top-1 .rank-cell,
  .leaderboard-card .ranking-row.top-2 .rank-cell,
  .leaderboard-card .ranking-row.top-3 .rank-cell { width: 30px; height: 30px; }

  .leaderboard-card .rank-number,
  .leaderboard-card .rank-number.top-1,
  .leaderboard-card .rank-number.top-2,
  .leaderboard-card .rank-number.top-3 { font-size: 21px; }

  .leaderboard-card .manager-copy { gap: 4px; }
  .leaderboard-card .manager-copy > strong { font-size: 17px; }
  .leaderboard-card .ranking-captain-line { font-size: 9px !important; }
  .leaderboard-card .ranking-captain-badge { width: 18px; height: 18px; flex-basis: 18px; font-size: 8px; }
  .leaderboard-card .ranking-boost,
  .leaderboard-card .ranking-boost.wildcard,
  .leaderboard-card .ranking-boost.free-hit,
  .leaderboard-card .ranking-boost.bench-boost,
  .leaderboard-card .ranking-boost.triple-captain { max-width: 104px; min-height: 25px; padding: 4px 7px; }
  .leaderboard-card .ranking-boost small { font-size: 7px; }

  .leaderboard-card .ranking-lower { grid-template-columns: minmax(0, 1fr) 88px; gap: 7px; }
  .leaderboard-card .ranking-round-group,
  .leaderboard-card .ranking-season-total { min-height: 58px; border-radius: 10px; }
  .leaderboard-card .ranking-round-group .ranking-stat,
  .leaderboard-card .ranking-season-total { padding: 5px 2px; }
  .leaderboard-card .ranking-round-group small,
  .leaderboard-card .ranking-season-total small { font-size: 7px; }
  .leaderboard-card .ranking-round-group b { font-size: 14px; }
  .leaderboard-card .ranking-round-group .ranking-round .numeric-cell { font-size: 18px; }
  .leaderboard-card .ranking-season-total .numeric-cell { font-size: 18px; }
  .leaderboard-card .skeleton-row { min-height: 132px; border-radius: 14px; }
}

@media (max-width: 370px) {
  .leaderboard-card .ranking-row,
  .leaderboard-card .ranking-row.top-1,
  .leaderboard-card .ranking-row.top-2,
  .leaderboard-card .ranking-row.top-3 { grid-template-columns: auto minmax(0, 1fr) 27px; gap-inline: 5px; padding-inline: 8px; }
  .leaderboard-card .rank-cell,
  .leaderboard-card .ranking-row.top-1 .rank-cell,
  .leaderboard-card .ranking-row.top-2 .rank-cell,
  .leaderboard-card .ranking-row.top-3 .rank-cell { width: 27px; }
  .leaderboard-card .ranking-boost,
  .leaderboard-card .ranking-boost.wildcard,
  .leaderboard-card .ranking-boost.free-hit,
  .leaderboard-card .ranking-boost.bench-boost,
  .leaderboard-card .ranking-boost.triple-captain { max-width: 92px; padding-inline: 6px; }
  .leaderboard-card .ranking-lower { grid-template-columns: minmax(0, 1fr) 82px; gap: 5px; }
  .leaderboard-card .ranking-round-group small,
  .leaderboard-card .ranking-season-total small { font-size: 6.5px; }
}

/* v42 · شعارات أندية الدوري الإنجليزي */
.fixture-club {
  min-width: 0;
  display: flex;
  align-items: center;
  gap: 9px;
}

.fixture-club:last-child {
  flex-direction: row-reverse;
}

.fixture-club > strong {
  min-width: 0;
  overflow: hidden;
  color: inherit;
  font-size: 14px;
  line-height: 1.35;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.fixture-club:last-child > strong {
  text-align: left;
}

.fixture-club-badge {
  width: 34px;
  height: 34px;
  flex: 0 0 34px;
  display: grid;
  place-items: center;
  padding: 3px;
  background: rgba(255,255,255,.78);
  border: 1px solid rgba(86,68,132,.1);
  border-radius: 10px;
  box-shadow: 0 5px 13px rgba(55,38,98,.07);
}

.fixture-club-badge img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: contain;
}

.fixture-club-badge i {
  color: #68558e;
  font-family: Arial, sans-serif;
  font-size: 8px;
  font-style: normal;
  font-weight: 950;
}

.today-match-row > .fixture-club > strong { font-size: 13px; }
.today-match-row > .fixture-club .fixture-club-badge { width: 38px; height: 38px; flex-basis: 38px; }
.round-match-teams > .fixture-club > strong { font-size: 13px; }
#matchCenterHeader .fixture-club { justify-content: flex-start; }
#matchCenterHeader .fixture-club:last-child { justify-content: flex-start; }
#matchCenterHeader .fixture-club > strong { color: #2a1f46; font-size: 13px; }
#matchCenterHeader .fixture-club:first-child > strong { text-align: right; }
#matchCenterHeader .fixture-club-badge { width: 39px; height: 39px; flex-basis: 39px; border-radius: 12px; }

html[data-theme="dark"] .fixture-club-badge {
  background: rgba(255,255,255,.92);
  border-color: rgba(219,207,239,.14);
  box-shadow: 0 7px 17px rgba(2,1,8,.2);
}

html[data-theme="dark"] .fixture-club-badge i { color: #584674; }
html[data-theme="dark"] #matchCenterHeader .fixture-club > strong { color: #fff; }

@media (max-width: 700px) {
  .fixture-club { gap: 6px; }
  .fixture-club-badge,
  .today-match-row > .fixture-club .fixture-club-badge,
  #matchCenterHeader .fixture-club-badge { width: 34px; height: 34px; flex-basis: 34px; padding: 2px; border-radius: 10px; }
  .fixture-club > strong,
  .today-match-row > .fixture-club > strong,
  .round-match-teams > .fixture-club > strong,
  #matchCenterHeader .fixture-club > strong { font-size: 12.5px; }
}

@media (max-width: 370px) {
  .fixture-club { gap: 4px; }
  .fixture-club-badge,
  .today-match-row > .fixture-club .fixture-club-badge,
  #matchCenterHeader .fixture-club-badge { width: 31px; height: 31px; flex-basis: 31px; }
  .fixture-club > strong,
  .today-match-row > .fixture-club > strong,
  .round-match-teams > .fixture-club > strong,
  #matchCenterHeader .fixture-club > strong { font-size: 11px; }
}

/* v43 · تحسينات الرسم والتمرير */
.home-stack > .card:not(.live-timeline-card),
.home-stack > .spotlights,
.home-stack > .home-leader-card,
.numbers-view > .card,
.round-match-card,
.ranking-row {
  content-visibility: auto;
  contain-intrinsic-size: auto 220px;
}

.round-match-card,
.ranking-row {
  contain: layout paint style;
  will-change: auto;
}

@media (max-width: 760px) {
  .ambient { display: none !important; }

  .topbar,
  .mobile-nav,
  .card,
  .scoreboard,
  .home-rivalry-card,
  .home-leader-card,
  .spotlight,
  .round-match-card {
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
  }

  .card,
  .scoreboard,
  .home-rivalry-card,
  .home-leader-card,
  .spotlight,
  .round-match-card {
    box-shadow: 0 8px 24px rgba(57, 39, 103, .08) !important;
  }

  .mobile-nav { background: rgba(250, 248, 255, .98); }
  html[data-theme="dark"] .mobile-nav { background: rgba(39, 34, 63, .98); }
}

/* v46 · جدول ترتيب نظيف مستوحى من العرض الرسمي، بلا صور */
.leaderboard-card { overflow: hidden; }

.leaderboard-card .ranking-table-head,
.leaderboard-card .ranking-row,
.leaderboard-card .ranking-row.top-1,
.leaderboard-card .ranking-row.top-2,
.leaderboard-card .ranking-row.top-3 {
  display: grid;
  grid-template-columns: 56px minmax(170px, 1fr) 120px 110px;
  grid-template-rows: auto;
  grid-template-areas: none;
  align-items: center;
  gap: 10px;
  direction: rtl;
}

.leaderboard-card .ranking-table-head {
  min-height: 42px;
  margin: 0 16px;
  padding: 0 12px;
  color: #746982;
  background: #f5f1f8;
  border: 1px solid #ebe3f0;
  border-radius: 12px;
  font-size: 10px;
  font-weight: 900;
  text-align: center;
}

.leaderboard-card .ranking-table-head span:nth-child(2) { text-align: right; }

.leaderboard-card .ranking-list {
  max-width: none;
  display: grid;
  gap: 0;
  padding: 6px 16px 16px;
}

.leaderboard-card .ranking-row,
.leaderboard-card .ranking-row.top-1,
.leaderboard-card .ranking-row.top-2,
.leaderboard-card .ranking-row.top-3 {
  width: 100%;
  min-height: 76px;
  margin: 0;
  padding: 9px 12px;
  overflow: hidden;
  color: #2d2338;
  background: transparent;
  border: 0;
  border-bottom: 1px solid #eee8f2;
  border-radius: 0;
  box-shadow: none;
}

.leaderboard-card .ranking-row:last-child { border-bottom: 0; }

.leaderboard-card .ranking-row:hover,
.leaderboard-card .ranking-row:focus-visible,
.leaderboard-card .ranking-row.top-2:hover,
.leaderboard-card .ranking-row.top-3:hover {
  background: #faf8fc;
  border-color: #e4d9ea;
  box-shadow: none;
  outline: none;
}

.leaderboard-card .ranking-row:focus-visible { box-shadow: inset 0 0 0 2px rgba(115, 73, 184, .32); }

.leaderboard-card .ranking-row.top-1 {
  min-height: 84px;
  margin: 5px 0;
  color: #fff;
  background: linear-gradient(105deg, #20bfd0 0%, #5d69df 52%, #8b29d7 100%);
  border: 0;
  border-radius: 16px;
  box-shadow: 0 12px 26px rgba(92, 74, 194, .22);
}

.leaderboard-card .ranking-row.top-1:hover,
.leaderboard-card .ranking-row.top-1:focus-visible {
  background: linear-gradient(105deg, #1cb5c6 0%, #5862d6 52%, #8124cc 100%);
  border: 0;
  box-shadow: 0 14px 30px rgba(92, 74, 194, .28);
}

.leaderboard-card .rank-cell,
.leaderboard-card .ranking-row.top-1 .rank-cell,
.leaderboard-card .ranking-row.top-2 .rank-cell,
.leaderboard-card .ranking-row.top-3 .rank-cell {
  grid-area: auto;
  width: auto;
  height: auto;
  align-self: center;
  display: grid;
  place-items: center;
  padding: 0;
  color: inherit;
  background: transparent;
  border: 0;
  border-radius: 0;
  box-shadow: none;
}

.leaderboard-card .rank-number,
.leaderboard-card .rank-number.top-1,
.leaderboard-card .rank-number.top-2,
.leaderboard-card .rank-number.top-3 {
  width: 32px;
  height: 32px;
  display: grid;
  place-items: center;
  color: #7650bd;
  background: transparent;
  border: 0;
  border-radius: 50%;
  font-size: 14px;
  font-weight: 950;
  line-height: 1;
  box-shadow: none;
}

.leaderboard-card .ranking-row.top-1 .rank-number {
  color: #fff;
  background: rgba(255, 255, 255, .17);
}

.leaderboard-card .manager-cell {
  grid-area: auto;
  min-width: 0;
  align-self: center;
  display: grid;
  justify-items: start;
  gap: 5px;
  direction: rtl;
  text-align: right;
}

.leaderboard-card .manager-copy {
  min-width: 0;
  width: 100%;
  display: grid;
  justify-items: start;
  gap: 4px;
  direction: rtl;
  text-align: right;
}

.leaderboard-card .manager-copy > strong {
  width: 100%;
  max-width: 100%;
  overflow: hidden;
  color: #281f35;
  font-size: 16px;
  font-weight: 950;
  line-height: 1.3;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.leaderboard-card .ranking-captain-line {
  min-width: 0;
  min-height: 18px;
  display: inline-flex !important;
  align-items: center;
  justify-self: start;
  gap: 5px;
  color: #786e82;
  direction: ltr;
  font-family: Arial, sans-serif;
  font-size: 10px !important;
  font-weight: 800;
  white-space: nowrap;
}

.leaderboard-card .ranking-captain-badge {
  width: 18px;
  height: 18px;
  flex: 0 0 18px;
  display: grid;
  place-items: center;
  color: #fff;
  background: #7650bd;
  border: 0;
  border-radius: 6px;
  font-size: 8px;
  box-shadow: none;
}

.leaderboard-card .ranking-boost,
.leaderboard-card .ranking-boost.wildcard,
.leaderboard-card .ranking-boost.free-hit,
.leaderboard-card .ranking-boost.bench-boost,
.leaderboard-card .ranking-boost.triple-captain,
html[data-theme="dark"] .leaderboard-card .ranking-boost.wildcard,
html[data-theme="dark"] .leaderboard-card .ranking-boost.free-hit,
html[data-theme="dark"] .leaderboard-card .ranking-boost.bench-boost,
html[data-theme="dark"] .leaderboard-card .ranking-boost.triple-captain {
  position: static;
  grid-area: auto;
  width: fit-content;
  max-width: 138px;
  min-height: 22px;
  align-self: auto;
  justify-self: start;
  display: inline-flex;
  align-items: center;
  gap: 4px;
  margin: 0;
  padding: 3px 7px;
  overflow: hidden;
  color: #68439f;
  background: #eee6f7;
  border: 1px solid #ddcef0;
  border-radius: 999px;
  clip-path: none;
  direction: ltr;
  box-shadow: none;
}

.leaderboard-card .ranking-boost b { color: #8059ba; font-size: 9px; }
.leaderboard-card .ranking-boost small { display: block; overflow: hidden; color: #68439f; font-size: 7.5px; text-overflow: ellipsis; white-space: nowrap; }

.leaderboard-card .ranking-round-cell,
.leaderboard-card .ranking-season-cell {
  min-width: 0;
  align-self: center;
  display: grid;
  place-content: center;
  justify-items: center;
  gap: 4px;
  text-align: center;
  font-variant-numeric: tabular-nums;
}

.leaderboard-card .ranking-round-cell > b,
.leaderboard-card .ranking-season-cell > b {
  color: #3a2b4b;
  font-size: 20px;
  font-weight: 950;
  line-height: 1;
}

.leaderboard-card .ranking-season-cell > b { color: #6f46b2; font-size: 21px; }

.leaderboard-card .ranking-round-cell > small {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 3px;
  color: #887d91;
  font-size: 8px;
  font-weight: 800;
  line-height: 1.2;
  white-space: nowrap;
}

.leaderboard-card .ranking-round-cell > small i { color: #b1a7ba; font-style: normal; }

.leaderboard-card .ranking-row.top-1 .manager-copy > strong,
.leaderboard-card .ranking-row.top-1 .ranking-captain-line,
.leaderboard-card .ranking-row.top-1 .ranking-round-cell > b,
.leaderboard-card .ranking-row.top-1 .ranking-season-cell > b { color: #fff; }

.leaderboard-card .ranking-row.top-1 .ranking-captain-badge,
.leaderboard-card .ranking-row.top-1 .ranking-boost {
  color: #fff;
  background: rgba(255, 255, 255, .17);
  border-color: rgba(255, 255, 255, .22);
}

.leaderboard-card .ranking-row.top-1 .ranking-boost b,
.leaderboard-card .ranking-row.top-1 .ranking-boost small,
.leaderboard-card .ranking-row.top-1 .ranking-round-cell > small,
.leaderboard-card .ranking-row.top-1 .ranking-round-cell > small i { color: rgba(255, 255, 255, .88); }

.leaderboard-card .skeleton-row { min-height: 74px; border-radius: 12px; }

html[data-theme="dark"] .leaderboard-card .ranking-table-head {
  color: #bdb3c8;
  background: #302939;
  border-color: rgba(214, 197, 228, .12);
}

html[data-theme="dark"] .leaderboard-card .ranking-row,
html[data-theme="dark"] .leaderboard-card .ranking-row.top-2,
html[data-theme="dark"] .leaderboard-card .ranking-row.top-3 {
  color: #f5effa;
  background: transparent;
  border-color: rgba(211, 194, 225, .11);
  box-shadow: none;
}

html[data-theme="dark"] .leaderboard-card .ranking-row:hover,
html[data-theme="dark"] .leaderboard-card .ranking-row:focus-visible,
html[data-theme="dark"] .leaderboard-card .ranking-row.top-2:hover,
html[data-theme="dark"] .leaderboard-card .ranking-row.top-3:hover { background: #2c2634; }

html[data-theme="dark"] .leaderboard-card .ranking-row.top-1 {
  color: #fff;
  background: linear-gradient(105deg, #168eaa 0%, #4b51bd 52%, #7423b6 100%);
  border: 0;
  box-shadow: 0 12px 28px rgba(4, 3, 12, .28);
}

html[data-theme="dark"] .leaderboard-card .rank-number,
html[data-theme="dark"] .leaderboard-card .rank-number.top-2,
html[data-theme="dark"] .leaderboard-card .rank-number.top-3 { color: #c5a4e7; background: transparent; }
html[data-theme="dark"] .leaderboard-card .ranking-row.top-1 .rank-number { color: #fff; background: rgba(255, 255, 255, .16); }
html[data-theme="dark"] .leaderboard-card .manager-copy > strong { color: #f8f3fb; }
html[data-theme="dark"] .leaderboard-card .ranking-captain-line { color: #bdb4c6; }
html[data-theme="dark"] .leaderboard-card .ranking-round-cell > b { color: #eee7f3; }
html[data-theme="dark"] .leaderboard-card .ranking-season-cell > b { color: #c299e7; }
html[data-theme="dark"] .leaderboard-card .ranking-round-cell > small { color: #aca2b4; }
html[data-theme="dark"] .leaderboard-card .ranking-row.top-1 .manager-copy > strong,
html[data-theme="dark"] .leaderboard-card .ranking-row.top-1 .ranking-captain-line,
html[data-theme="dark"] .leaderboard-card .ranking-row.top-1 .ranking-round-cell > b,
html[data-theme="dark"] .leaderboard-card .ranking-row.top-1 .ranking-season-cell > b { color: #fff; }

@media (max-width: 600px) {
  .leaderboard-card .ranking-table-head,
  .leaderboard-card .ranking-row,
  .leaderboard-card .ranking-row.top-1,
  .leaderboard-card .ranking-row.top-2,
  .leaderboard-card .ranking-row.top-3 {
    grid-template-columns: 40px minmax(0, 1fr) 70px 66px;
    grid-template-rows: auto;
    gap: 4px;
  }

  .leaderboard-card .ranking-table-head {
    min-height: 38px;
    margin: 0 10px;
    padding: 0 5px;
    border-radius: 10px;
    font-size: 8.5px;
  }

  .leaderboard-card .ranking-list { gap: 0; padding: 4px 10px 12px; }

  .leaderboard-card .ranking-row,
  .leaderboard-card .ranking-row.top-1,
  .leaderboard-card .ranking-row.top-2,
  .leaderboard-card .ranking-row.top-3 {
    min-height: 72px;
    margin: 0;
    padding: 8px 5px;
    border-radius: 0;
  }

  .leaderboard-card .ranking-row.top-1 { min-height: 78px; margin: 4px 0; border-radius: 14px; }

  .leaderboard-card .rank-cell,
  .leaderboard-card .ranking-row.top-1 .rank-cell,
  .leaderboard-card .ranking-row.top-2 .rank-cell,
  .leaderboard-card .ranking-row.top-3 .rank-cell { width: auto; height: auto; }

  .leaderboard-card .rank-number,
  .leaderboard-card .rank-number.top-1,
  .leaderboard-card .rank-number.top-2,
  .leaderboard-card .rank-number.top-3 { width: 29px; height: 29px; font-size: 13px; }

  .leaderboard-card .manager-cell { gap: 3px; }
  .leaderboard-card .manager-copy { gap: 3px; }
  .leaderboard-card .manager-copy > strong { max-width: 100%; font-size: 14.5px; }
  .leaderboard-card .ranking-captain-line { gap: 4px; font-size: 9px !important; }
  .leaderboard-card .ranking-captain-badge { width: 17px; height: 17px; flex-basis: 17px; font-size: 7px; }

  .leaderboard-card .ranking-boost,
  .leaderboard-card .ranking-boost.wildcard,
  .leaderboard-card .ranking-boost.free-hit,
  .leaderboard-card .ranking-boost.bench-boost,
  .leaderboard-card .ranking-boost.triple-captain { max-width: 105px; min-height: 20px; padding: 2px 6px; }
  .leaderboard-card .ranking-boost b { font-size: 8px; }
  .leaderboard-card .ranking-boost small { font-size: 7px; }

  .leaderboard-card .ranking-round-cell,
  .leaderboard-card .ranking-season-cell { gap: 4px; }
  .leaderboard-card .ranking-round-cell > b { font-size: 17px; }
  .leaderboard-card .ranking-season-cell > b { font-size: 18px; }
  .leaderboard-card .ranking-round-cell > small { gap: 2px; font-size: 7px; }
  .leaderboard-card .skeleton-row { min-height: 72px; border-radius: 10px; }
}

@media (max-width: 370px) {
  .leaderboard-card .ranking-table-head,
  .leaderboard-card .ranking-row,
  .leaderboard-card .ranking-row.top-1,
  .leaderboard-card .ranking-row.top-2,
  .leaderboard-card .ranking-row.top-3 { grid-template-columns: 34px minmax(0, 1fr) 62px 56px; gap: 3px; }
  .leaderboard-card .ranking-table-head { padding-inline: 3px; font-size: 7.5px; }
  .leaderboard-card .ranking-row,
  .leaderboard-card .ranking-row.top-1,
  .leaderboard-card .ranking-row.top-2,
  .leaderboard-card .ranking-row.top-3 { padding-inline: 3px; }
  .leaderboard-card .rank-number,
  .leaderboard-card .rank-number.top-1,
  .leaderboard-card .rank-number.top-2,
  .leaderboard-card .rank-number.top-3 { width: 26px; height: 26px; font-size: 12px; }
  .leaderboard-card .manager-copy > strong { font-size: 13.5px; }
  .leaderboard-card .ranking-round-cell > b { font-size: 16px; }
  .leaderboard-card .ranking-season-cell > b { font-size: 17px; }
  .leaderboard-card .ranking-round-cell > small { display: grid; gap: 0; font-size: 6.5px; }
  .leaderboard-card .ranking-round-cell > small i { display: none; }
}

/* v47 · الخيار الخامس: الشريط الناعم، والكابتن في عمود مستقل */
.leaderboard-card .ranking-table-head,
.leaderboard-card .ranking-row,
.leaderboard-card .ranking-row.top-1,
.leaderboard-card .ranking-row.top-2,
.leaderboard-card .ranking-row.top-3 {
  grid-template-columns: 52px minmax(150px, 1fr) minmax(118px, .9fr) 112px 96px;
  gap: 8px;
}

.leaderboard-card .ranking-table-head {
  min-height: 40px;
  margin: 0 14px;
  padding: 0 9px;
  color: #786f87;
  background: rgba(255,255,255,.4);
  border-color: rgba(111,87,159,.1);
  border-radius: 12px;
}

.leaderboard-card .ranking-table-head span:nth-child(2) { text-align: right; }

.leaderboard-card .ranking-list {
  gap: 5px;
  padding: 7px 14px 15px;
}

.leaderboard-card .ranking-row,
.leaderboard-card .ranking-row.top-1,
.leaderboard-card .ranking-row.top-2,
.leaderboard-card .ranking-row.top-3 {
  min-height: 62px;
  margin: 0;
  padding: 6px 9px;
  color: #2d2338;
  background: linear-gradient(90deg, rgba(76,226,236,.08), rgba(118,82,215,.075), rgba(255,111,193,.07));
  border: 1px solid rgba(112,82,166,.055);
  border-radius: 13px;
  box-shadow: none;
}

.leaderboard-card .ranking-row:last-child { border-bottom: 1px solid rgba(112,82,166,.055); }

.leaderboard-card .ranking-row:hover,
.leaderboard-card .ranking-row:focus-visible,
.leaderboard-card .ranking-row.top-1:hover,
.leaderboard-card .ranking-row.top-1:focus-visible,
.leaderboard-card .ranking-row.top-2:hover,
.leaderboard-card .ranking-row.top-3:hover {
  background: linear-gradient(90deg, rgba(76,226,236,.13), rgba(118,82,215,.12), rgba(255,111,193,.11));
  border-color: rgba(118,82,215,.16);
  box-shadow: none;
}

.leaderboard-card .ranking-row:focus-visible { outline: 2px solid rgba(118,82,215,.28); outline-offset: 1px; }

.leaderboard-card .ranking-row.top-1 {
  min-height: 66px;
  color: #2d2338;
  background: linear-gradient(105deg, rgba(76,226,236,.2), rgba(118,82,215,.2), rgba(255,111,193,.18));
  border: 1px solid rgba(118,82,215,.16);
  border-radius: 14px;
  box-shadow: 0 7px 18px rgba(83,56,148,.07);
}

.leaderboard-card .rank-number,
.leaderboard-card .rank-number.top-1,
.leaderboard-card .rank-number.top-2,
.leaderboard-card .rank-number.top-3,
.leaderboard-card .ranking-row.top-1 .rank-number {
  width: 29px;
  height: 29px;
  color: #7552bd;
  background: rgba(118,82,215,.1);
  border: 0;
  font-size: 12px;
  box-shadow: none;
}

.leaderboard-card .ranking-row.top-1 .rank-number {
  color: #fff;
  background: linear-gradient(145deg, #5e3fa6, #8b6ce4);
}

.leaderboard-card .manager-cell {
  align-self: center;
  justify-items: start;
  gap: 3px;
}

.leaderboard-card .manager-copy { gap: 0; }

.leaderboard-card .manager-copy > strong {
  color: #281f35;
  font-size: 14px;
  line-height: 1.2;
}

.leaderboard-card .ranking-captain-line { display: none !important; }

.leaderboard-card .ranking-captain-cell {
  min-width: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 5px;
  overflow: hidden;
  direction: ltr;
  color: #776d81;
  font-family: Arial, sans-serif;
  font-size: 10px;
  font-weight: 800;
  white-space: nowrap;
}

.leaderboard-card .ranking-captain-cell > span {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.leaderboard-card .ranking-captain-cell .ranking-captain-badge {
  width: 18px;
  height: 18px;
  flex: 0 0 18px;
  color: #fff;
  background: linear-gradient(145deg, #6847be, #9877ec);
  border-radius: 6px;
  font-size: 8px;
}

.leaderboard-card .ranking-boost,
.leaderboard-card .ranking-boost.wildcard,
.leaderboard-card .ranking-boost.free-hit,
.leaderboard-card .ranking-boost.bench-boost,
.leaderboard-card .ranking-boost.triple-captain {
  max-width: 118px;
  min-height: 18px;
  padding: 2px 6px;
  background: rgba(118,82,215,.09);
  border-color: rgba(118,82,215,.12);
}

.leaderboard-card .ranking-boost b { font-size: 8px; }
.leaderboard-card .ranking-boost small { font-size: 7px; }

.leaderboard-card .ranking-round-cell,
.leaderboard-card .ranking-season-cell { gap: 2px; }
.leaderboard-card .ranking-round-cell > b { color: #3a2b4b; font-size: 17px; }
.leaderboard-card .ranking-season-cell > b { color: #6f46b2; font-size: 18px; }
.leaderboard-card .ranking-round-cell > small { gap: 2px; font-size: 7px; }

.leaderboard-card .ranking-row.top-1 .manager-copy > strong,
.leaderboard-card .ranking-row.top-1 .ranking-captain-cell,
.leaderboard-card .ranking-row.top-1 .ranking-round-cell > b,
.leaderboard-card .ranking-row.top-1 .ranking-season-cell > b { color: inherit; }

.leaderboard-card .ranking-row.top-1 .ranking-captain-badge {
  color: #fff;
  background: linear-gradient(145deg, #6847be, #9877ec);
  border: 0;
}

.leaderboard-card .ranking-row.top-1 .ranking-boost {
  color: #68439f;
  background: rgba(118,82,215,.09);
  border-color: rgba(118,82,215,.12);
}

.leaderboard-card .ranking-row.top-1 .ranking-boost b,
.leaderboard-card .ranking-row.top-1 .ranking-boost small { color: #68439f; }
.leaderboard-card .ranking-row.top-1 .ranking-round-cell > small,
.leaderboard-card .ranking-row.top-1 .ranking-round-cell > small i { color: #887d91; }

html[data-theme="dark"] .leaderboard-card .ranking-table-head {
  color: #bdb3c8;
  background: rgba(35,31,59,.86);
  border-color: rgba(185,171,235,.13);
}

html[data-theme="dark"] .leaderboard-card .ranking-row,
html[data-theme="dark"] .leaderboard-card .ranking-row.top-1,
html[data-theme="dark"] .leaderboard-card .ranking-row.top-2,
html[data-theme="dark"] .leaderboard-card .ranking-row.top-3 {
  color: #f5effa;
  background: linear-gradient(90deg, rgba(76,226,236,.055), rgba(118,82,215,.12), rgba(255,111,193,.055));
  border-color: rgba(190,176,240,.09);
  box-shadow: none;
}

html[data-theme="dark"] .leaderboard-card .ranking-row.top-1 {
  background: linear-gradient(105deg, rgba(76,226,236,.11), rgba(118,82,215,.22), rgba(255,111,193,.11));
  border-color: rgba(190,176,240,.17);
}

html[data-theme="dark"] .leaderboard-card .ranking-row:hover,
html[data-theme="dark"] .leaderboard-card .ranking-row:focus-visible,
html[data-theme="dark"] .leaderboard-card .ranking-row.top-1:hover,
html[data-theme="dark"] .leaderboard-card .ranking-row.top-2:hover,
html[data-theme="dark"] .leaderboard-card .ranking-row.top-3:hover {
  background: linear-gradient(90deg, rgba(76,226,236,.1), rgba(118,82,215,.17), rgba(255,111,193,.09));
  border-color: rgba(160,139,229,.19);
}

html[data-theme="dark"] .leaderboard-card .manager-copy > strong { color: #f8f3fb; }
html[data-theme="dark"] .leaderboard-card .ranking-captain-cell { color: #bdb4c6; }
html[data-theme="dark"] .leaderboard-card .ranking-round-cell > b { color: #eee7f3; }
html[data-theme="dark"] .leaderboard-card .ranking-season-cell > b { color: #c299e7; }
html[data-theme="dark"] .leaderboard-card .ranking-round-cell > small { color: #aca2b4; }

@media (max-width: 600px) {
  .leaderboard-card .ranking-table-head,
  .leaderboard-card .ranking-row,
  .leaderboard-card .ranking-row.top-1,
  .leaderboard-card .ranking-row.top-2,
  .leaderboard-card .ranking-row.top-3 {
    grid-template-columns: 34px minmax(62px, 1fr) minmax(74px, .9fr) 62px 52px;
    gap: 3px;
  }

  .leaderboard-card .ranking-table-head {
    min-height: 36px;
    margin: 0 8px;
    padding: 0 3px;
    font-size: 7.5px;
  }

  .leaderboard-card .ranking-list { gap: 4px; padding: 5px 8px 11px; }

  .leaderboard-card .ranking-row,
  .leaderboard-card .ranking-row.top-1,
  .leaderboard-card .ranking-row.top-2,
  .leaderboard-card .ranking-row.top-3 {
    min-height: 58px;
    padding: 5px 3px;
    border-radius: 11px;
  }

  .leaderboard-card .ranking-row.top-1 { min-height: 60px; margin: 0; border-radius: 12px; }

  .leaderboard-card .rank-number,
  .leaderboard-card .rank-number.top-1,
  .leaderboard-card .rank-number.top-2,
  .leaderboard-card .rank-number.top-3,
  .leaderboard-card .ranking-row.top-1 .rank-number { width: 25px; height: 25px; font-size: 11px; }

  .leaderboard-card .manager-cell { gap: 2px; }
  .leaderboard-card .manager-copy > strong { font-size: 12px; }
  .leaderboard-card .ranking-captain-cell { gap: 3px; font-size: 8.5px; }
  .leaderboard-card .ranking-captain-cell .ranking-captain-badge { width: 16px; height: 16px; flex-basis: 16px; font-size: 7px; }

  .leaderboard-card .ranking-boost,
  .leaderboard-card .ranking-boost.wildcard,
  .leaderboard-card .ranking-boost.free-hit,
  .leaderboard-card .ranking-boost.bench-boost,
  .leaderboard-card .ranking-boost.triple-captain { max-width: 74px; min-height: 16px; padding: 1px 4px; }
  .leaderboard-card .ranking-boost b { font-size: 7px; }
  .leaderboard-card .ranking-boost small { font-size: 6px; }

  .leaderboard-card .ranking-round-cell > b { font-size: 15px; }
  .leaderboard-card .ranking-season-cell > b { font-size: 16px; }
  .leaderboard-card .ranking-round-cell > small { display: grid; gap: 0; font-size: 6px; }
  .leaderboard-card .ranking-round-cell > small i { display: none; }
  .leaderboard-card .skeleton-row { min-height: 58px; }
}

@media (max-width: 370px) {
  .leaderboard-card .ranking-table-head,
  .leaderboard-card .ranking-row,
  .leaderboard-card .ranking-row.top-1,
  .leaderboard-card .ranking-row.top-2,
  .leaderboard-card .ranking-row.top-3 { grid-template-columns: 30px minmax(56px, 1fr) minmax(66px, .88fr) 58px 47px; gap: 2px; }
  .leaderboard-card .ranking-table-head { margin-inline: 6px; font-size: 7px; }
  .leaderboard-card .ranking-list { padding-inline: 6px; }
  .leaderboard-card .manager-copy > strong { font-size: 11.5px; }
  .leaderboard-card .ranking-captain-cell { font-size: 8px; }
  .leaderboard-card .ranking-round-cell > b { font-size: 14px; }
  .leaderboard-card .ranking-season-cell > b { font-size: 15px; }
}

/* v48 · شرح مختصر لنقاط اللاعب من داخل التشكيلة */
.player-points-hint {
  width: fit-content;
  max-width: calc(100% - 40px);
  display: flex;
  align-items: center;
  gap: 7px;
  margin: 12px 20px -5px;
  padding: 7px 10px;
  color: #6d6380;
  background: rgba(255,255,255,.48);
  border: 1px solid rgba(111,88,159,.1);
  border-radius: 999px;
  font-size: 9px;
  font-weight: 800;
  line-height: 1.45;
}

.player-points-hint > span {
  width: 18px;
  height: 18px;
  flex: 0 0 18px;
  display: grid;
  place-items: center;
  color: #fff;
  background: linear-gradient(145deg, #6847be, #9877ec);
  border-radius: 50%;
  font-family: Arial, sans-serif;
  font-size: 10px;
  font-weight: 900;
}

.dialog-player-points-hint { margin-bottom: -6px; }

button.pitch-player {
  padding: 0;
  color: inherit;
  background: transparent;
  border: 0;
  font: inherit;
  cursor: pointer;
  -webkit-tap-highlight-color: transparent;
}

button.pitch-player:active { transform: scale(.97); }

button.pitch-player:focus-visible {
  outline: 0;
}

button.pitch-player:focus-visible .fpl-player-tile strong {
  box-shadow: 0 0 0 3px rgba(118,82,215,.25), 0 8px 20px rgba(60,40,116,.1);
}

.player-points-dialog {
  width: min(430px, calc(100% - 20px));
  max-height: calc(100dvh - 22px);
  margin: auto auto max(10px, env(safe-area-inset-bottom));
  padding: 0;
  overflow: visible;
  color: var(--ink);
  background: transparent;
  border: 0;
}

.player-points-dialog::backdrop {
  background: rgba(27,18,58,.56);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
}

.player-points-sheet {
  position: relative;
  max-height: calc(100dvh - 22px - env(safe-area-inset-bottom));
  padding: 20px;
  overflow: auto;
  color: #281f35;
  background:
    radial-gradient(circle at -5% 0, rgba(75,226,238,.19), transparent 34%),
    radial-gradient(circle at 105% 38%, rgba(255,113,196,.16), transparent 35%),
    linear-gradient(155deg, rgba(255,255,255,.98), rgba(247,243,255,.97));
  border: 1px solid rgba(255,255,255,.9);
  border-radius: 26px;
  box-shadow: 0 32px 90px rgba(44,27,91,.34);
}

.player-points-close {
  position: absolute;
  z-index: 2;
  top: 12px;
  left: 12px;
}

.player-points-head {
  min-height: 67px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  padding-left: 42px;
}

.player-points-head > div:first-child { min-width: 0; }
.player-points-head span { color: #80768d; font-size: 9px; font-weight: 850; }
.player-points-head h2 {
  margin: 2px 0 0;
  overflow: hidden;
  color: #25184d;
  font-size: 24px;
  font-weight: 950;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.player-points-total {
  min-width: 66px;
  min-height: 64px;
  display: grid;
  place-content: center;
  justify-items: center;
  color: #fff;
  background: linear-gradient(145deg, #6847be, #9877ec);
  border: 1px solid rgba(255,255,255,.45);
  border-radius: 19px;
  box-shadow: 0 10px 24px rgba(75,44,139,.2);
}

.player-points-total b { font-size: 25px; font-weight: 950; line-height: 1; font-variant-numeric: tabular-nums; }
.player-points-total small { margin-top: 4px; color: rgba(255,255,255,.82); font-size: 8px; font-weight: 800; }

.player-points-summary {
  margin: 8px 0 12px;
  padding: 9px 11px;
  color: #6e647c;
  background: rgba(255,255,255,.56);
  border: 1px solid rgba(111,88,159,.1);
  border-radius: 13px;
  font-size: 10px;
  font-weight: 800;
  line-height: 1.65;
}

.player-points-breakdown { display: grid; gap: 6px; }

.player-point-row {
  min-height: 49px;
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr) auto;
  align-items: center;
  gap: 9px;
  padding: 7px 10px;
  background: rgba(255,255,255,.58);
  border: 1px solid rgba(111,88,159,.09);
  border-radius: 14px;
}

.player-point-row > i {
  width: 31px;
  height: 31px;
  display: grid;
  place-items: center;
  color: #6845a8;
  background: rgba(118,82,215,.1);
  border-radius: 10px;
  font-family: Arial, sans-serif;
  font-size: 11px;
  font-style: normal;
  font-weight: 900;
}

.player-point-row > span { min-width: 0; display: grid; gap: 1px; }
.player-point-row > span b { color: #342744; font-size: 11px; font-weight: 900; }
.player-point-row > span small { color: #867c90; font-size: 8px; font-weight: 750; }
.player-point-row > strong {
  min-width: 36px;
  color: #4a9a71;
  font-size: 16px;
  font-weight: 950;
  text-align: left;
  font-variant-numeric: tabular-nums;
}
.player-point-row > strong.negative { color: #c65778; }

.player-points-empty {
  padding: 18px 12px;
  color: #7d7388;
  background: rgba(255,255,255,.5);
  border: 1px dashed rgba(111,88,159,.15);
  border-radius: 14px;
  font-size: 10px;
  font-weight: 800;
  text-align: center;
}

.player-points-note {
  margin: 10px 2px 0;
  color: #887e91;
  font-size: 8px;
  font-weight: 750;
  line-height: 1.65;
  text-align: center;
}

html[data-theme="dark"] .player-points-hint {
  color: #c1b8ce;
  background: rgba(49,43,76,.7);
  border-color: rgba(190,176,240,.13);
}

html[data-theme="dark"] .player-points-sheet {
  color: #f5effa;
  background:
    radial-gradient(circle at -5% 0, rgba(43,197,209,.12), transparent 35%),
    radial-gradient(circle at 105% 38%, rgba(216,64,155,.12), transparent 36%),
    linear-gradient(155deg, #2a2445, #211c38);
  border-color: rgba(190,176,240,.17);
  box-shadow: 0 32px 90px rgba(2,2,12,.48);
}

html[data-theme="dark"] .player-points-head span { color: #aaa4bc; }
html[data-theme="dark"] .player-points-head h2 { color: #f6f2ff; }
html[data-theme="dark"] .player-points-summary,
html[data-theme="dark"] .player-point-row,
html[data-theme="dark"] .player-points-empty {
  color: #c0b7ca;
  background: rgba(52,45,80,.76);
  border-color: rgba(190,176,240,.13);
}
html[data-theme="dark"] .player-point-row > i { color: #d4c4ff; background: rgba(118,82,215,.22); }
html[data-theme="dark"] .player-point-row > span b { color: #f2edf9; }
html[data-theme="dark"] .player-point-row > span small,
html[data-theme="dark"] .player-points-note { color: #aaa2b4; }
html[data-theme="dark"] .player-point-row > strong { color: #91d8ad; }
html[data-theme="dark"] .player-point-row > strong.negative { color: #ff9db6; }

@media (min-width: 700px) {
  .player-points-dialog { margin: auto; }
}

@media (max-width: 600px) {
  .player-points-hint {
    max-width: calc(100% - 16px);
    margin: 9px 8px -3px;
    padding: 6px 9px;
    font-size: 8px;
  }

  .dialog-player-points-hint { margin-bottom: -3px; }
  .player-points-sheet { padding: 17px 14px 15px; border-radius: 24px; }
  .player-points-head { min-height: 62px; padding-left: 39px; }
  .player-points-head h2 { font-size: 21px; }
  .player-points-total { min-width: 59px; min-height: 58px; border-radius: 17px; }
  .player-points-total b { font-size: 22px; }
  .player-point-row { min-height: 46px; grid-template-columns: 31px minmax(0, 1fr) auto; gap: 7px; padding: 6px 8px; }
  .player-point-row > i { width: 29px; height: 29px; }
  .player-point-row > span b { font-size: 10px; }
  .player-point-row > strong { font-size: 15px; }
}

@media (prefers-reduced-motion: reduce) {
  button.pitch-player:active { transform: none; }
}

/* v49 · موضع اسم المشارك ووسم الجولة */
.leaderboard-card .ranking-gameweek {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 7px 9px;
  color: #746981;
  background: rgba(118,82,215,.07);
  border: 1px solid rgba(103,73,154,.1);
  border-radius: 999px;
  font-size: 9px;
  font-weight: 800;
  line-height: 1;
  white-space: nowrap;
}

.leaderboard-card .ranking-gameweek b {
  color: #6844aa;
  font-family: Arial, sans-serif;
  font-size: 11px;
  font-weight: 900;
}

html[data-theme="dark"] .leaderboard-card .ranking-gameweek {
  color: #d4cce0;
  background: rgba(118,82,215,.18);
  border-color: rgba(190,176,240,.14);
}

html[data-theme="dark"] .leaderboard-card .ranking-gameweek b { color: #c7afff; }

@media (max-width: 760px) {
  .manager-dialog .dialog-manager {
    padding-top: 6px;
  }

  .leaderboard-card .ranking-title-wrap { gap: 8px; }
  .leaderboard-card .ranking-gameweek { gap: 3px; padding: 6px 7px; font-size: 8px; }
  .leaderboard-card .ranking-gameweek b { font-size: 10px; }
}

@media (max-width: 370px) {
  .leaderboard-card .ranking-gameweek { padding-inline: 6px; font-size: 7.5px; }
  .leaderboard-card .ranking-gameweek b { font-size: 9px; }
}

/* v52 · الدوريات الخاصة داخل تشكيلتي */
.my-leagues-panel {
  margin: 16px 12px 0;
  padding: 16px;
  background: rgba(255,255,255,.9);
  border: 1px solid rgba(87,68,133,.12);
  border-radius: 22px;
  box-shadow: 0 12px 30px rgba(57,38,99,.07);
}

.my-leagues-head { display: flex; align-items: center; justify-content: space-between; gap: 14px; }
.my-leagues-head h3 { margin: 2px 0 0; color: #2b2048; font-size: 20px; }
.my-leagues-count { flex: 0 0 auto; padding: 7px 10px; color: #6f6480; background: #f1edf7; border-radius: 999px; font-size: 9px; font-weight: 850; }
.my-leagues-count b { color: #6543ad; font-size: 12px; }
.my-leagues-note { margin: 9px 0 13px; color: #7b7188; font-size: 9px; line-height: 1.8; }
.my-leagues-list { display: grid; gap: 8px; }
.my-league-item { overflow: hidden; background: #faf9fc; border: 1px solid rgba(93,73,139,.11); border-radius: 15px; }
.my-league-item > summary { min-height: 65px; display: grid; grid-template-columns: 40px minmax(0, 1fr) auto 29px; align-items: center; gap: 9px; padding: 10px 11px; list-style: none; cursor: pointer; -webkit-tap-highlight-color: transparent; }
.my-league-item > summary::-webkit-details-marker { display: none; }
.my-league-item[open] { background: #fff; border-color: rgba(101,67,173,.22); box-shadow: 0 8px 22px rgba(63,42,108,.07); }
.my-league-item[open] > summary { border-bottom: 1px solid rgba(93,73,139,.09); }
.my-league-item > summary > i { width: 29px; height: 29px; display: grid; place-items: center; color: #7657b7; background: #eee8f8; border-radius: 9px; font-size: 16px; font-style: normal; transition: transform .18s ease; }
.my-league-item[open] > summary > i { transform: rotate(180deg); }
.my-league-rank { width: 40px; height: 40px; display: grid; place-items: center; color: #fff; background: linear-gradient(145deg, #6b48b8, #8562cf); border-radius: 12px; font-family: Arial, sans-serif; font-size: 13px; font-weight: 950; box-shadow: 0 7px 15px rgba(91,61,157,.18); }
.my-league-copy { min-width: 0; display: grid; gap: 3px; }
.my-league-copy strong { overflow: hidden; color: #2f2548; font-size: 13px; text-overflow: ellipsis; white-space: nowrap; }
.my-league-copy small { color: #81778e; font-size: 8px; }
.my-league-movement { padding: 5px 7px; border-radius: 8px; font-size: 8px; font-weight: 900; white-space: nowrap; }
.my-league-movement.up { color: #087856; background: #e1f6ed; }
.my-league-movement.down { color: #b5425b; background: #fde9ee; }
.my-league-movement.same { color: #756b81; background: #f0edf4; }
.my-league-details { padding: 11px; }
.my-league-open-hint,
.my-league-rank-note { margin: 0; padding: 10px; color: #756b82; background: #f7f4fa; border-radius: 10px; font-size: 9px; line-height: 1.75; text-align: center; }
.my-league-leaders { display: grid; gap: 6px; margin: 0; padding: 0; list-style: none; }
.my-league-leaders li { min-height: 43px; display: grid; grid-template-columns: 28px minmax(0, 1fr) auto; align-items: center; gap: 8px; padding: 7px 9px; background: #f7f5fa; border-radius: 10px; }
.my-league-leaders li.selected { background: #eee7fa; box-shadow: inset 3px 0 0 #7450bd; }
.my-league-leaders li > i { width: 28px; height: 28px; display: grid; place-items: center; color: #6e54a6; background: #ebe5f4; border-radius: 8px; font-size: 9px; font-style: normal; font-weight: 950; }
.my-league-leaders li > span { min-width: 0; display: grid; gap: 1px; }
.my-league-leaders li b { overflow: hidden; color: #34284e; font-size: 10px; text-overflow: ellipsis; white-space: nowrap; }
.my-league-leaders li small { overflow: hidden; color: #857b91; font-size: 7px; text-overflow: ellipsis; white-space: nowrap; }
.my-league-leaders li > strong { color: #6442a8; font-family: Arial, sans-serif; font-size: 12px; }
.my-league-rank-note { margin-top: 7px; color: #634b91; background: #f1ecf8; font-weight: 850; }
.my-league-loading { min-height: 52px; display: flex; align-items: center; justify-content: center; gap: 9px; color: #766c82; font-size: 9px; }
.my-league-loading span { width: 16px; height: 16px; border: 2px solid #ddd4e9; border-top-color: #7050b7; border-radius: 50%; animation: league-spin .7s linear infinite; }
@keyframes league-spin { to { transform: rotate(360deg); } }
.my-league-loading p,
.my-league-error p { margin: 0; }
.my-league-error { min-height: 52px; display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 9px 10px; color: #9f3f53; background: #fcecf0; border-radius: 10px; font-size: 9px; }
.my-league-error button { min-height: 30px; padding: 5px 9px; color: #fff; background: #a8465a; border: 0; border-radius: 8px; font-size: 8px; font-weight: 900; cursor: pointer; }
.my-leagues-empty { margin: 0; }

html[data-theme="dark"] .my-leagues-panel { background: rgba(38,33,62,.88); border-color: rgba(190,176,240,.15); box-shadow: 0 12px 30px rgba(4,2,13,.2); }
html[data-theme="dark"] .my-leagues-head h3 { color: #f5f0fb; }
html[data-theme="dark"] .my-leagues-count { color: #c9c0d3; background: #3a3248; }
html[data-theme="dark"] .my-leagues-count b { color: #c7a4ed; }
html[data-theme="dark"] .my-leagues-note { color: #aaa1b5; }
html[data-theme="dark"] .my-league-item { background: #2b2535; border-color: rgba(190,176,240,.12); }
html[data-theme="dark"] .my-league-item[open] { background: #30293b; border-color: rgba(154,116,217,.3); box-shadow: 0 8px 22px rgba(3,1,9,.2); }
html[data-theme="dark"] .my-league-item[open] > summary { border-color: rgba(190,176,240,.1); }
html[data-theme="dark"] .my-league-item > summary > i { color: #d2b7ee; background: #41364f; }
html[data-theme="dark"] .my-league-copy strong { color: #f3eef8; }
html[data-theme="dark"] .my-league-copy small { color: #aaa1b4; }
html[data-theme="dark"] .my-league-movement.up { color: #77ddb2; background: rgba(45,167,119,.16); }
html[data-theme="dark"] .my-league-movement.down { color: #ff9db2; background: rgba(211,70,98,.15); }
html[data-theme="dark"] .my-league-movement.same { color: #c1b7cb; background: #403747; }
html[data-theme="dark"] .my-league-open-hint,
html[data-theme="dark"] .my-league-rank-note,
html[data-theme="dark"] .my-league-leaders li { color: #c9c0d2; background: #393140; }
html[data-theme="dark"] .my-league-leaders li.selected { background: #443752; box-shadow: inset 3px 0 0 #b48ae4; }
html[data-theme="dark"] .my-league-leaders li > i { color: #d6bee9; background: #483c52; }
html[data-theme="dark"] .my-league-leaders li b { color: #f3eef8; }
html[data-theme="dark"] .my-league-leaders li small { color: #aaa1b4; }
html[data-theme="dark"] .my-league-leaders li > strong { color: #caa5ec; }
html[data-theme="dark"] .my-league-rank-note { color: #d1b9e8; background: #40354b; }
html[data-theme="dark"] .my-league-loading { color: #bdb3c7; }
html[data-theme="dark"] .my-league-error { color: #ffb0c0; background: rgba(183,56,82,.16); }

@media (max-width: 600px) {
  .my-leagues-panel { margin: 13px 8px 0; padding: 13px 10px; border-radius: 19px; }
  .my-leagues-head h3 { font-size: 17px; }
  .my-leagues-note { margin: 7px 1px 11px; font-size: 8px; }
  .my-league-item > summary { min-height: 61px; grid-template-columns: 36px minmax(0, 1fr) 25px; gap: 8px; padding: 9px; }
  .my-league-rank { width: 36px; height: 36px; border-radius: 11px; font-size: 12px; }
  .my-league-copy strong { font-size: 12px; }
  .my-league-copy small { font-size: 7.5px; }
  .my-league-movement { grid-column: 2; grid-row: 2; width: max-content; margin-top: -3px; padding: 3px 6px; font-size: 7px; }
  .my-league-item > summary > i { grid-column: 3; grid-row: 1 / span 2; width: 25px; height: 25px; font-size: 14px; }
  .my-league-details { padding: 8px; }
  .my-league-leaders li { min-height: 46px; padding: 7px 8px; }
  .my-league-leaders li b { font-size: 10px; }
  .my-league-leaders li > strong { font-size: 12px; }
  .my-league-rank-note { font-size: 8.5px; }
}

@media (prefers-reduced-motion: reduce) {
  .my-league-loading span { animation: none; }
}

/* v53 · أخطر لاعب لا تملكه */
.danger-manager-label strong { overflow: hidden; color: #352653; font-size: 12px; text-align: left; text-overflow: ellipsis; white-space: nowrap; }
.danger-empty { margin: 0 20px 20px; padding: 18px 15px; color: #6e6579; background: rgba(255,255,255,.62); border: 1px solid rgba(103,80,153,.12); border-radius: 16px; text-align: center; }
.danger-empty p { margin: 0 0 10px; font-size: 10px; line-height: 1.8; }
.danger-empty button { min-height: 36px; padding: 7px 12px; color: #fff; background: #6d4bb3; border: 0; border-radius: 10px; font-size: 9px; font-weight: 900; cursor: pointer; }
.danger-foot { align-items: flex-start; line-height: 1.75; }
.danger-foot > span { min-width: 0; flex: 1; }
.danger-foot > strong { max-width: 45%; text-align: left; }

html[data-theme="dark"] .danger-manager-label strong { color: #f2edf8; }
html[data-theme="dark"] .danger-empty { color: #beb5c8; background: rgba(50,43,77,.78); border-color: rgba(188,174,236,.14); }
html[data-theme="dark"] .danger-empty button { background: #7e5ac3; }

@media (max-width: 600px) {
  .danger-empty { margin: 0 14px 14px; }
  .danger-manager-label strong { font-size: 11px; }
  .danger-foot { flex-direction: column; gap: 3px; }
  .danger-foot > strong { max-width: 100%; text-align: right; }
}

/* v54 · حالات المباريات وتفاصيل اللاعب السفلية */
.round-match-card,
.today-match-row { position: relative; isolation: isolate; }

.round-match-card.live,
.today-match-row.live { border-color: rgba(52, 179, 139, .38); }

.round-match-card.live::before,
.today-match-row.live::before {
  content: "";
  position: absolute;
  z-index: 2;
  inset: -1px;
  padding: 1px;
  pointer-events: none;
  background: linear-gradient(110deg, rgba(52,179,139,.18), rgba(105,82,196,.5), rgba(52,179,139,.18)) border-box;
  background-size: 220% 100%;
  border-radius: inherit;
  -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
  -webkit-mask-composite: xor;
  mask-composite: exclude;
  animation: active-match-border 3.8s ease-in-out infinite;
}

@keyframes active-match-border {
  0%, 100% { background-position: 0 50%; opacity: .58; }
  50% { background-position: 100% 50%; opacity: 1; }
}

.match-live-pulse {
  position: absolute;
  z-index: 3;
  top: 12px;
  inset-inline-start: 12px;
  width: 7px;
  height: 7px;
  background: #24ad7a;
  border-radius: 50%;
  box-shadow: 0 0 0 0 rgba(36,173,122,.28);
  animation: active-match-pulse 1.8s ease-out infinite;
}

@keyframes active-match-pulse {
  0% { box-shadow: 0 0 0 0 rgba(36,173,122,.28); }
  70%, 100% { box-shadow: 0 0 0 7px rgba(36,173,122,0); }
}

.fixture-status { gap: 5px; }
.fixture-status > i,
.today-status > i { font-family: Arial, sans-serif; font-size: .9em; font-style: normal; line-height: 1; }
.fixture-status.pending { color: #535d88; background: #edf0fa; }
.fixture-status.live { color: #096a4b; background: #dff8ed; }
.fixture-status.finished { color: #625d6d; background: #eceaf0; }
.fixture-status.live > i,
.today-status.live > i { color: #21a875; animation: stage-dot 1.5s ease-in-out infinite; }

@keyframes stage-dot { 50% { opacity: .35; } }

.today-status {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  direction: rtl;
}
.today-status.pending { color: #596183; }
.today-status.live { color: #08704f; }
.today-status.finished { color: #6c6772; }

.player-points-grabber { display: none; }
.player-points-tabs {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 5px;
  margin: 10px 0 12px;
  padding: 4px;
  background: rgba(107,82,159,.08);
  border: 1px solid rgba(107,82,159,.08);
  border-radius: 14px;
}
.player-points-tabs button {
  min-height: 38px;
  padding: 7px 5px;
  color: #756b80;
  background: transparent;
  border: 0;
  border-radius: 10px;
  font: inherit;
  font-size: 10px;
  font-weight: 900;
  cursor: pointer;
}
.player-points-tabs button.active {
  color: #fff;
  background: linear-gradient(145deg, #6847be, #8e6cdd);
  box-shadow: 0 6px 16px rgba(85,56,145,.18);
}
.player-points-panel { display: none; }
.player-points-panel.active { display: block; }
.player-tab-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 9px;
  padding: 0 2px;
}
.player-tab-heading span { color: #80768d; font-size: 9px; font-weight: 850; }
.player-tab-heading b { color: #3d2c60; font-size: 11px; font-weight: 950; }
.player-match-list { display: grid; gap: 7px; }
.player-match-list article {
  min-height: 64px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 10px 11px;
  background: rgba(255,255,255,.58);
  border: 1px solid rgba(111,88,159,.09);
  border-radius: 14px;
}
.player-match-list article > div { min-width: 0; display: grid; gap: 3px; }
.player-match-list article > div:last-child { flex: 0 0 auto; justify-items: end; }
.player-match-list small { color: #887e91; font-size: 8px; font-weight: 750; }
.player-match-list b { overflow: hidden; color: #342744; font-size: 11px; text-overflow: ellipsis; white-space: nowrap; }
.player-match-list strong { color: #5f41a2; font-size: 15px; font-variant-numeric: tabular-nums; }
.player-owner-list { display: flex; flex-wrap: wrap; gap: 7px; }
.player-owner-list > span {
  min-height: 38px;
  display: inline-flex;
  align-items: center;
  gap: 7px;
  padding: 7px 10px;
  color: #342744;
  background: rgba(255,255,255,.58);
  border: 1px solid rgba(111,88,159,.09);
  border-radius: 12px;
}
.player-owner-list b { font-size: 10px; font-weight: 900; }
.player-owner-list em {
  width: 20px;
  height: 20px;
  display: grid;
  place-items: center;
  color: #fff;
  background: #6d4ab5;
  border-radius: 6px;
  font-family: Arial, sans-serif;
  font-size: 8px;
  font-style: normal;
  font-weight: 950;
}

html[data-theme="dark"] .fixture-status.pending { color: #c3c9ea; background: rgba(88,100,160,.2); }
html[data-theme="dark"] .fixture-status.finished { color: #c0b8c8; background: #403946; }
html[data-theme="dark"] .today-status.pending { color: #b8c0e6; }
html[data-theme="dark"] .today-status.live { color: #79deb6; }
html[data-theme="dark"] .today-status.finished { color: #bbb3c2; }
html[data-theme="dark"] .player-points-tabs { background: rgba(190,176,240,.09); border-color: rgba(190,176,240,.08); }
html[data-theme="dark"] .player-points-tabs button { color: #bcb3c8; }
html[data-theme="dark"] .player-points-tabs button.active { color: #fff; background: linear-gradient(145deg, #7250bd, #936fd7); }
html[data-theme="dark"] .player-tab-heading span { color: #aaa2b4; }
html[data-theme="dark"] .player-tab-heading b,
html[data-theme="dark"] .player-match-list b,
html[data-theme="dark"] .player-owner-list > span { color: #f2edf9; }
html[data-theme="dark"] .player-match-list article,
html[data-theme="dark"] .player-owner-list > span { background: rgba(52,45,80,.76); border-color: rgba(190,176,240,.13); }
html[data-theme="dark"] .player-match-list small { color: #aaa2b4; }
html[data-theme="dark"] .player-match-list strong { color: #cba7ee; }

@media (max-width: 600px) {
  .player-points-dialog {
    position: fixed;
    inset: auto 0 0;
    width: 100%;
    max-width: none;
    max-height: calc(100dvh - max(18px, env(safe-area-inset-top)));
    margin: 0;
  }
  .player-points-dialog[open] .player-points-sheet { animation: player-sheet-up .24s cubic-bezier(.22,.8,.32,1); }
  .player-points-sheet {
    max-height: calc(100dvh - max(18px, env(safe-area-inset-top)));
    padding: 24px 14px max(18px, env(safe-area-inset-bottom));
    border-radius: 26px 26px 0 0;
  }
  .player-points-grabber {
    position: absolute;
    top: 8px;
    left: 50%;
    width: 42px;
    height: 4px;
    display: block;
    background: rgba(70,55,92,.22);
    border-radius: 99px;
    transform: translateX(-50%);
  }
  .player-points-close { top: 17px; }
  .player-points-tabs { margin-top: 7px; }
  .player-match-list article { min-height: 61px; }
  .player-match-list .fixture-status { font-size: 8px; }
}

@keyframes player-sheet-up {
  from { opacity: .65; transform: translateY(38px); }
  to { opacity: 1; transform: translateY(0); }
}

@media (prefers-reduced-motion: reduce) {
  .round-match-card.live::before,
  .today-match-row.live::before,
  .match-live-pulse,
  .fixture-status.live > i,
  .today-status.live > i,
  .player-points-dialog[open] .player-points-sheet { animation: none; }
}

/* v56 · ساعة المباراة وتفصيل الأثر وثبات الترتيب */
.fixture-live-clock {
  min-width: 39px;
  direction: ltr;
  color: inherit;
  font-family: Arial, sans-serif;
  font-size: 10px;
  font-weight: 950;
  font-variant-numeric: tabular-nums;
  letter-spacing: .2px;
}

button.today-match-row {
  width: 100%;
  appearance: none;
  color: inherit;
  font: inherit;
  text-align: inherit;
  cursor: pointer;
  -webkit-tap-highlight-color: transparent;
}

button.today-match-row:focus-visible {
  outline: 2px solid rgba(103, 75, 170, .35);
  outline-offset: 2px;
}

.home-live-event-line {
  grid-column: 1 / -1;
  min-width: 0;
  display: flex;
  align-items: center;
  gap: 7px;
  padding: 8px 10px;
  overflow: hidden;
  color: #4d3978;
  background: rgba(110, 78, 180, .075);
  border-radius: 10px;
  font-size: 9px;
  font-weight: 850;
  line-height: 1.55;
  text-overflow: ellipsis;
  white-space: normal;
}

.today-status.halftime > i,
.fixture-status.halftime > i { animation: none; }

/* v59 · فصل أحداث الرئيسية عن مركز المباريات */
.home-match-dialog { width: min(520px, calc(100% - 24px)); }
.home-match-sheet { background: #f8f6fb; }
.home-match-header { grid-column: 2; grid-row: 1; min-width: 0; text-align: center; }
.home-match-header > small { display: block; margin-bottom: 9px; color: #776d8a; font-size: 9px; }
.home-match-header > div { display: grid; grid-template-columns: minmax(0, 1fr) 82px minmax(0, 1fr); align-items: center; gap: 9px; }
.home-match-header strong { overflow: hidden; color: #2a1f46; font-size: 14px; text-overflow: ellipsis; white-space: nowrap; }
.home-match-header strong:last-child { text-align: left; }
.home-match-header b { color: #5d3aa5; font-size: 21px; font-variant-numeric: tabular-nums; }
.home-match-dialog-content { display: grid; gap: 10px; padding: 14px; }
.home-match-events-head { display: flex; align-items: end; justify-content: space-between; gap: 12px; padding: 2px 2px 5px; }
.home-match-events-head span { color: #2b1f48; font-size: 16px; font-weight: 950; }
.home-match-events-head small { color: #847a90; font-size: 8px; font-weight: 800; }
.home-match-events { display: grid; gap: 8px; }
.home-match-event { min-height: 65px; display: grid; grid-template-columns: 43px minmax(0, 1fr); align-items: center; gap: 11px; padding: 10px 12px; background: #fff; border: 1px solid rgba(96,77,141,.1); border-radius: 15px; box-shadow: 0 7px 18px rgba(60,41,105,.045); }
.home-match-event > i { width: 43px; height: 43px; display: grid; place-items: center; background: #f1edf8; border-radius: 13px; font-size: 21px; font-style: normal; }
.home-match-event > div { min-width: 0; display: grid; gap: 2px; }
.home-match-event small { color: #81778d; font-size: 8px; font-weight: 850; }
.home-match-event b { overflow: hidden; color: #2d204c; font-size: 14px; text-overflow: ellipsis; white-space: nowrap; }
.home-match-event span { color: #66499d; font-size: 9px; font-weight: 850; }

html[data-theme="dark"] .home-match-sheet { background: #211c2a; }
html[data-theme="dark"] .home-match-header > small,
html[data-theme="dark"] .home-match-events-head small { color: #b8afc3; }
html[data-theme="dark"] .home-match-header strong,
html[data-theme="dark"] .home-match-events-head span,
html[data-theme="dark"] .home-match-event b { color: #f5f0fb; }
html[data-theme="dark"] .home-match-header b { color: #c397eb; }
html[data-theme="dark"] .home-match-event { background: #2b2536; border-color: rgba(205,190,229,.13); box-shadow: 0 8px 20px rgba(2,1,8,.18); }
html[data-theme="dark"] .home-match-event > i { background: #3a3049; }
html[data-theme="dark"] .home-match-event small { color: #b8afc3; }
html[data-theme="dark"] .home-match-event span { color: #c69eea; }

@media (max-width: 700px) {
  .home-match-dialog { width: 100%; max-width: none; }
  .home-match-header > small { font-size: 10px; line-height: 1.5; }
  .home-match-header > div { grid-template-columns: minmax(0, 1fr) 72px minmax(0, 1fr); gap: 7px; }
  .home-match-header strong { font-size: 12px; }
  .home-match-header b { font-size: 19px; }
  .home-match-dialog-content { padding: 12px 11px max(20px, env(safe-area-inset-bottom, 0px)); }
  .home-match-events-head { align-items: start; flex-direction: column; gap: 3px; }
  .home-match-event { min-height: 62px; padding: 9px 10px; }
}

.home-live-event-line > i {
  margin-inline-start: auto;
  flex: 0 0 auto;
  color: #7352b3;
  font-size: 17px;
  font-style: normal;
}

.league-impact-ownership article { align-items: start; }
.league-impact-manager,
.league-impact-points { margin-top: 5px; }
.league-impact-picks { display: grid; gap: 6px; }
.league-impact-pick {
  min-width: 0;
  display: grid;
  gap: 4px;
  padding: 7px 8px;
  color: #6f667d;
  background: #fff;
  border: 1px solid rgba(96,77,141,.09);
  border-radius: 9px;
}
.league-impact-pick > span { min-width: 0; display: flex; align-items: center; gap: 5px; }
.league-impact-pick > span > b { overflow: hidden; color: #38294f; font-size: 9px; text-overflow: ellipsis; white-space: nowrap; }
.league-impact-pick > small { color: #81778d; font-size: 8px; font-weight: 750; line-height: 1.65; }
.league-impact-pick.empty { min-height: 35px; place-content: center; background: rgba(255,255,255,.45); border-style: dashed; }
.league-impact-pick.empty small { color: #9890a1; }

.leaderboard-card .ranking-list { overflow-anchor: none; }

html[data-theme="dark"] .home-live-event-line { color: #d2bce9; background: rgba(160,117,218,.12); }
html[data-theme="dark"] .home-live-event-line > i { color: #c9a7eb; }
html[data-theme="dark"] .league-impact-pick { color: #c9c0d2; background: #2b2534; border-color: rgba(205,190,229,.1); }
html[data-theme="dark"] .league-impact-pick > span > b { color: #f4eff9; }
html[data-theme="dark"] .league-impact-pick > small { color: #b8afc3; }
html[data-theme="dark"] .league-impact-pick.empty { background: rgba(43,37,52,.5); }
html[data-theme="dark"] .league-impact-pick.empty small { color: #9990a3; }

@media (max-width: 700px) {
  .fixture-live-clock { min-width: 43px; font-size: 11px; }
  .today-match-row.live { grid-template-rows: auto auto; }
  .home-live-event-line { padding: 8px 9px; font-size: 9.5px; }
  .league-impact-manager,
  .league-impact-points { margin-top: 0; }
  .league-impact-pick { padding: 8px 9px; border-radius: 10px; }
  .league-impact-pick > span > b { font-size: 11px; }
  .league-impact-pick > small { font-size: 10px; line-height: 1.75; }
}

/* v57 · بطاقات أثر المباراة */
.league-impact-ownership {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.league-impact-ownership article {
  min-height: 0;
  display: grid;
  grid-template-columns: 1fr;
  gap: 9px;
  padding: 12px;
  background: linear-gradient(150deg, #fbf9fd, #f5f1f9);
  border: 1px solid rgba(99, 77, 141, .11);
  border-radius: 15px;
  box-shadow: 0 7px 18px rgba(55, 38, 88, .045);
}

.league-impact-card-head {
  min-width: 0;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding-bottom: 9px;
  border-bottom: 1px solid rgba(96, 75, 135, .1);
}

.league-impact-manager,
.league-impact-points { margin-top: 0; }
.league-impact-manager i { width: 27px; height: 27px; border-radius: 9px; font-size: 9px; }
.league-impact-manager b { color: #302143; font-size: 13px; }

.league-impact-points {
  min-width: 61px;
  display: grid;
  justify-items: center;
  gap: 1px;
  padding: 6px 8px;
  color: #5f3b9e;
  background: #eee7f8;
  border-radius: 10px;
  text-align: center;
}

.league-impact-points > b { font-family: Arial, sans-serif; font-size: 17px; line-height: 1; }
.league-impact-points > small { color: #837592; font-size: 6.5px; font-weight: 850; white-space: nowrap; }
.league-impact-points.negative { color: #bd4861; background: #f9e9ed; }
.league-impact-picks { gap: 7px; }

.league-impact-pick {
  gap: 5px;
  padding: 8px 9px;
  background: rgba(255,255,255,.72);
  border: 0;
  border-inline-start: 3px solid #8b68c9;
  border-radius: 4px 10px 10px 4px;
  box-shadow: inset 0 0 0 1px rgba(99,77,141,.07);
}

.league-impact-pick > span > b { color: #38264f; font-size: 10.5px; }
.league-impact-pick > small { color: #73687e; font-size: 8.5px; line-height: 1.75; }
.league-impact-pick.empty { border-inline-start-color: #c8c0ce; box-shadow: inset 0 0 0 1px rgba(99,77,141,.06); }
.league-impact-summary { margin-top: 11px; padding: 10px 12px; border-radius: 11px; font-size: 9px; text-align: center; }

html[data-theme="dark"] .league-impact-ownership article {
  background: linear-gradient(150deg, #342d3e, #2d2736);
  border-color: rgba(205,190,229,.12);
  box-shadow: 0 8px 20px rgba(2,1,8,.15);
}
html[data-theme="dark"] .league-impact-card-head { border-color: rgba(205,190,229,.1); }
html[data-theme="dark"] .league-impact-manager b { color: #f5f0fa; }
html[data-theme="dark"] .league-impact-points { color: #d0a9ee; background: #443750; }
html[data-theme="dark"] .league-impact-points > small { color: #b7aabd; }
html[data-theme="dark"] .league-impact-points.negative { color: #ff9eb1; background: rgba(177,58,82,.17); }
html[data-theme="dark"] .league-impact-pick {
  background: rgba(42,36,50,.78);
  border-inline-start-color: #9f79d4;
  box-shadow: inset 0 0 0 1px rgba(205,190,229,.08);
}
html[data-theme="dark"] .league-impact-pick > span > b { color: #f4eef8; }
html[data-theme="dark"] .league-impact-pick > small { color: #bcb2c5; }
html[data-theme="dark"] .league-impact-pick.empty { border-inline-start-color: #665b70; }

@media (max-width: 700px) {
  .league-impact-ownership { grid-template-columns: 1fr; gap: 9px; }
  .league-impact-ownership article { display: grid; grid-template-columns: 1fr; gap: 8px; padding: 11px; border-radius: 14px; }
  .league-impact-card-head { grid-column: 1; grid-row: auto; padding-bottom: 8px; }
  .league-impact-manager { grid-column: auto; grid-row: auto; }
  .league-impact-picks { grid-column: auto; grid-row: auto; }
  .league-impact-points { grid-column: auto; grid-row: auto; min-width: 58px; }
  .league-impact-points > b { font-size: 16px; }
  .league-impact-pick { padding: 8px 9px; }
  .league-impact-pick > span > b { font-size: 11px; }
  .league-impact-pick > small { font-size: 9.5px; }
  .league-impact-summary { font-size: 10px; }
}

/* v65 · تكبير النصوص فقط من دون تغيير تصميم النتيجة أو الترتيب */
#leadSummary {
  font-size: 15px;
  line-height: 1.55;
}

.leaderboard-card .ranking-table-head {
  font-size: 11px;
}

.leaderboard-card .rank-number,
.leaderboard-card .rank-number.top-1,
.leaderboard-card .rank-number.top-2,
.leaderboard-card .rank-number.top-3,
.leaderboard-card .ranking-row.top-1 .rank-number {
  font-size: 14px;
}

.leaderboard-card .manager-copy > strong {
  font-size: 16px;
}

.leaderboard-card .ranking-captain-cell {
  font-size: 12px;
}

.leaderboard-card .ranking-captain-cell .ranking-captain-badge {
  font-size: 9px;
}

.leaderboard-card .ranking-round-cell > b {
  font-size: 19px;
}

.leaderboard-card .ranking-season-cell > b {
  font-size: 20px;
}

.leaderboard-card .ranking-round-cell > small {
  font-size: 8.5px;
}

.leaderboard-card .ranking-boost small {
  font-size: 8px;
}

@media (max-width: 600px) {
  #leadSummary {
    font-size: 13px;
  }

  .leaderboard-card .ranking-table-head {
    font-size: 9px;
  }

  .leaderboard-card .rank-number,
  .leaderboard-card .rank-number.top-1,
  .leaderboard-card .rank-number.top-2,
  .leaderboard-card .rank-number.top-3,
  .leaderboard-card .ranking-row.top-1 .rank-number {
    font-size: 13px;
  }

  .leaderboard-card .manager-copy > strong {
    font-size: 14px;
  }

  .leaderboard-card .ranking-captain-cell {
    font-size: 10.5px;
  }

  .leaderboard-card .ranking-captain-cell .ranking-captain-badge {
    font-size: 8px;
  }

  .leaderboard-card .ranking-round-cell > b {
    font-size: 17px;
  }

  .leaderboard-card .ranking-season-cell > b {
    font-size: 18px;
  }

  .leaderboard-card .ranking-round-cell > small {
    font-size: 7.5px;
  }

  .leaderboard-card .ranking-boost small {
    font-size: 7px;
  }
}

@media (max-width: 370px) {
  .leaderboard-card .manager-copy > strong {
    font-size: 13px;
  }

  .leaderboard-card .ranking-captain-cell {
    font-size: 9px;
  }

  .leaderboard-card .ranking-round-cell > b {
    font-size: 16px;
  }

  .leaderboard-card .ranking-season-cell > b {
    font-size: 17px;
  }
}

/* v66 · حركات وظيفية خفيفة */

/* المسار المضيء عند تغيّر الترتيب منذ آخر زيارة */
.leaderboard-card .ranking-list {
  position: relative;
  isolation: isolate;
}

.leaderboard-card .ranking-motion-clone {
  position: absolute;
  z-index: 30;
  inset-inline: 0;
  width: 100%;
  min-height: 0;
  margin: 0;
  pointer-events: none;
  box-shadow: 0 14px 34px rgba(35, 166, 139, .24);
  will-change: transform, filter;
}

.ranking-motion-path {
  position: absolute;
  z-index: 28;
  inset-inline-start: 3px;
  width: 3px;
  overflow: visible;
  background: linear-gradient(to top, #27a87e, #54d8df);
  border-radius: 99px;
  box-shadow: 0 0 13px rgba(69, 211, 205, .66);
  transform: scaleY(0);
  animation: ranking-path-draw .76s .1s cubic-bezier(.2,.76,.2,1) forwards;
}

.ranking-motion-path.up { transform-origin: bottom; }
.ranking-motion-path.down { transform-origin: top; }
.ranking-motion-path i {
  position: absolute;
  inset-inline-start: 50%;
  width: 10px;
  height: 10px;
  background: #5ce2de;
  border: 3px solid #fff;
  border-radius: 50%;
  box-shadow: 0 0 0 5px rgba(75, 213, 204, .14), 0 0 17px rgba(75, 213, 204, .65);
  transform: translateX(50%);
}
.ranking-motion-path.up i { top: -4px; }
.ranking-motion-path.down i { bottom: -4px; }

.ranking-path-badge,
.ranking-path-result {
  position: absolute;
  z-index: 4;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  background: linear-gradient(135deg, #1f9c75, #3bb8b7);
  border: 2px solid #fff;
  border-radius: 999px;
  box-shadow: 0 8px 20px rgba(31, 156, 117, .22);
  font-weight: 950;
  white-space: nowrap;
  pointer-events: none;
}

.ranking-path-badge {
  inset-block-start: -7px;
  inset-inline-end: 6px;
  min-width: 29px;
  min-height: 20px;
  padding: 2px 6px;
  font-family: Arial, sans-serif;
  font-size: 8px;
}

.ranking-path-badge.down { background: linear-gradient(135deg, #c05069, #df7486); }
.ranking-path-result {
  inset-block-start: -11px;
  inset-inline-end: 8px;
  min-height: 24px;
  padding: 4px 9px;
  font-size: 8px;
  animation: ranking-result-in .42s cubic-bezier(.2,.8,.25,1.25) both;
}
.ranking-path-result.leaving { animation: ranking-result-out .28s ease forwards; }
.leaderboard-card .ranking-row.ranking-path-arrived {
  z-index: 6;
  border-color: rgba(36, 167, 119, .34);
  animation: ranking-arrived 1.05s ease-out both;
}

@keyframes ranking-path-draw { to { transform: scaleY(1); } }
@keyframes ranking-result-in { from { opacity: 0; transform: translateY(7px) scale(.84); } to { opacity: 1; transform: none; } }
@keyframes ranking-result-out { to { opacity: 0; transform: translateY(-6px) scale(.94); } }
@keyframes ranking-arrived {
  0% { box-shadow: 0 0 0 0 rgba(36, 167, 119, .2); }
  42% { box-shadow: 0 0 0 7px rgba(36, 167, 119, .09), 0 12px 27px rgba(36, 167, 119, .12); }
  100% { box-shadow: none; }
}

html[data-theme="dark"] .ranking-motion-path i,
html[data-theme="dark"] .ranking-path-badge,
html[data-theme="dark"] .ranking-path-result { border-color: #272033; }
html[data-theme="dark"] .leaderboard-card .ranking-motion-clone { box-shadow: 0 16px 38px rgba(47, 213, 177, .19); }

/* بطاقة اللاعب ترتفع من مكانها وتتحول للنافذة السفلية */
.player-origin-active { opacity: .22 !important; }
.player-points-dialog.shared-player-opening .player-points-sheet { animation: none !important; }
.player-origin-morph {
  position: fixed !important;
  z-index: 999;
  display: grid;
  place-content: center;
  justify-items: center;
  gap: 3px;
  margin: 0 !important;
  padding: 7px;
  overflow: hidden;
  color: #2b2048;
  background: linear-gradient(145deg, rgba(255,255,255,.98), rgba(242,237,250,.98));
  border: 1px solid rgba(111,88,159,.18);
  box-shadow: 0 20px 55px rgba(50,31,86,.25);
  transform-origin: center;
  pointer-events: none;
}
.player-origin-morph .kit-wrap { width: 55px; height: 48px; display: grid; place-items: center; overflow: hidden; }
.player-origin-morph .player-kit { max-width: 54px; max-height: 48px; object-fit: contain; }
.player-origin-morph .shirt-fallback { display: none; }
.player-origin-morph .fpl-player-tile { display: grid; justify-items: center; gap: 2px; }
.player-origin-morph .fpl-player-tile strong { max-width: 110px; overflow: hidden; font-size: 9px; text-overflow: ellipsis; white-space: nowrap; }
.player-origin-morph .fpl-player-tile small { font-size: 7px; }
.player-origin-morph .player-status-line { color: #756a82; font-size: 6px; }
.player-origin-morph .pick-badge { position: absolute; top: 6px; inset-inline-start: 6px; }
html[data-theme="dark"] .player-origin-morph {
  color: #f5effa;
  background: linear-gradient(145deg, #332b40, #282231);
  border-color: rgba(205,190,229,.18);
  box-shadow: 0 22px 58px rgba(0,0,0,.42);
}
html[data-theme="dark"] .player-origin-morph .player-status-line { color: #b8afc3; }

/* دخول خطوط تشكيلتي بالتتابع */
#myTeamContent.lineup-entering .pitch-row .pitch-player {
  --line-delay: 0ms;
  --player-delay: 0ms;
  opacity: 0;
  animation: lineup-player-enter .5s calc(var(--line-delay) + var(--player-delay)) cubic-bezier(.2,.78,.24,1.16) forwards;
}
#myTeamContent.lineup-entering .pitch-row.type-1 .pitch-player { --line-delay: 90ms; }
#myTeamContent.lineup-entering .pitch-row.type-2 .pitch-player { --line-delay: 300ms; }
#myTeamContent.lineup-entering .pitch-row.type-3 .pitch-player { --line-delay: 550ms; }
#myTeamContent.lineup-entering .pitch-row.type-4 .pitch-player { --line-delay: 800ms; }
#myTeamContent.lineup-entering .pitch-row .pitch-player:nth-child(2) { --player-delay: 45ms; }
#myTeamContent.lineup-entering .pitch-row .pitch-player:nth-child(3) { --player-delay: 90ms; }
#myTeamContent.lineup-entering .pitch-row .pitch-player:nth-child(4) { --player-delay: 135ms; }
#myTeamContent.lineup-entering .pitch-row .pitch-player:nth-child(5) { --player-delay: 180ms; }
@keyframes lineup-player-enter {
  from { opacity: 0; transform: translateY(18px) scale(.9); filter: blur(2px); }
  to { opacity: 1; transform: none; filter: none; }
}

/* نتيجة الجولة والموسم */
.score-period-transition .number-updated { animation: none; }
.score-period-transition .team-score { will-change: transform, opacity; }

/* ملخص العودة مثل إيصال صغير */
.home-rivalry-card.return-receipt { position: relative; transform-origin: top center; }
.home-rivalry-card.return-receipt::after {
  position: absolute;
  inset-inline: 18px;
  bottom: 7px;
  height: 1px;
  content: "";
  border-bottom: 1px dashed rgba(103,76,159,.22);
}
.home-rivalry-card.return-receipt-opening { animation: return-receipt-open .68s cubic-bezier(.2,.78,.22,1) both; }
.home-rivalry-card.return-receipt-folding { animation: return-receipt-fold .58s cubic-bezier(.5,0,.8,.35) forwards; }
@keyframes return-receipt-open {
  from { opacity: 0; clip-path: inset(0 0 100% 0 round 20px); transform: translateY(-8px) scaleY(.88); }
  to { opacity: 1; clip-path: inset(0 0 0 0 round 20px); transform: none; }
}
@keyframes return-receipt-fold {
  0% { opacity: 1; transform: none; }
  55% { opacity: .72; transform: translateY(-5px) scaleY(.45); }
  100% { opacity: 0; transform: translateY(-13px) scaleY(.06); }
}
html[data-theme="dark"] .home-rivalry-card.return-receipt::after { border-color: rgba(205,190,229,.2); }

/* تدحرج أرقام العد التنازلي */
.countdown-grid b {
  position: relative;
  display: grid;
  place-items: center;
  overflow: hidden;
  line-height: 1.25;
}
.countdown-grid b > span { grid-area: 1 / 1; color: inherit; font: inherit; line-height: inherit; }
.countdown-grid b.countdown-rolling .countdown-old { animation: countdown-old-roll .42s cubic-bezier(.3,.72,.25,1) forwards; }
.countdown-grid b.countdown-rolling .countdown-new { animation: countdown-new-roll .42s cubic-bezier(.3,.72,.25,1) forwards; }
@keyframes countdown-old-roll { from { opacity: 1; transform: translateY(0); } to { opacity: 0; transform: translateY(-78%); } }
@keyframes countdown-new-roll { from { opacity: 0; transform: translateY(78%); } to { opacity: 1; transform: translateY(0); } }

/* إحساس ضغط حقيقي لجميع الأزرار */
button:not(:disabled) { -webkit-tap-highlight-color: transparent; }
button:not(:disabled):active {
  transform: translateY(2px) scale(.985);
  filter: brightness(.97);
}

@media (max-width: 600px) {
  .leaderboard-card .ranking-motion-clone { inset-inline: 0; }
  .ranking-motion-path { inset-inline-start: 1px; }
  .ranking-path-result { inset-inline-end: 4px; font-size: 7px; }
}

@media (prefers-reduced-motion: reduce) {
  .ranking-motion-path,
  .leaderboard-card .ranking-row.ranking-path-arrived,
  .ranking-path-result,
  #myTeamContent.lineup-entering .pitch-row .pitch-player,
  .home-rivalry-card.return-receipt-opening,
  .home-rivalry-card.return-receipt-folding,
  .countdown-grid b.countdown-rolling .countdown-old,
  .countdown-grid b.countdown-rolling .countdown-new { animation: none !important; }
  button:not(:disabled):active { transform: none; filter: none; }
}

/* v67 · نافذة اللاعب المتصلة والانتقالات اللمسية */
.player-points-sheet {
  padding: 12px 12px max(15px, env(safe-area-inset-bottom));
  overflow: auto;
  background: rgba(249, 248, 252, .98);
  border: 1px solid rgba(255, 255, 255, .94);
  border-radius: 30px;
  box-shadow: 0 30px 85px rgba(42, 27, 78, .3);
}

.player-points-hero {
  position: relative;
  min-height: 112px;
  display: grid;
  grid-template-columns: 36px 62px minmax(0, 1fr) 72px;
  grid-template-areas: "close total copy kit";
  align-items: center;
  gap: 9px;
  padding: 13px;
  overflow: hidden;
  color: #fff;
  background:
    radial-gradient(circle at 100% 0, rgba(82, 229, 236, .38), transparent 42%),
    radial-gradient(circle at 0 100%, rgba(255, 116, 199, .24), transparent 43%),
    linear-gradient(135deg, #2d1b5a, #6e49bd 68%, #8e67d2);
  border: 1px solid rgba(255, 255, 255, .36);
  border-radius: 24px;
  box-shadow: 0 14px 30px rgba(62, 38, 116, .2), inset 0 1px 0 rgba(255, 255, 255, .35);
}

.player-points-hero::after {
  position: absolute;
  inset: 0;
  content: "";
  background: linear-gradient(112deg, transparent 28%, rgba(255,255,255,.14) 48%, transparent 66%);
  pointer-events: none;
}

.player-points-kit {
  grid-area: kit;
  width: 72px;
  height: 82px;
  display: grid;
  place-items: center;
  align-self: end;
  overflow: hidden;
  filter: drop-shadow(0 10px 12px rgba(19, 8, 48, .24));
}

.player-points-kit img {
  width: 78px;
  height: 78px;
  object-fit: contain;
}

.player-points-kit-fallback {
  width: 46px;
  height: 52px;
  display: grid;
  place-items: center;
  color: #382063;
  background: rgba(255,255,255,.72);
  border-radius: 13px 13px 7px 7px;
  font-family: Arial, sans-serif;
  font-size: 12px;
  font-weight: 950;
}

.player-points-head {
  grid-area: copy;
  min-width: 0;
  min-height: 0;
  display: grid;
  align-content: center;
  justify-items: start;
  gap: 2px;
  padding: 0;
}

.player-points-head span {
  color: rgba(255,255,255,.68);
  font-size: 9px;
  font-weight: 850;
}

.player-points-head h2 {
  max-width: 100%;
  margin: 0;
  overflow: hidden;
  color: #fff;
  font-size: 23px;
  font-weight: 950;
  line-height: 1.25;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.player-points-head small {
  color: rgba(255,255,255,.78);
  font-size: 9px;
  font-weight: 800;
}

.player-points-total {
  grid-area: total;
  min-width: 60px;
  min-height: 62px;
  color: #53318c;
  background: rgba(255,255,255,.92);
  border: 1px solid rgba(255,255,255,.75);
  border-radius: 18px;
  box-shadow: 0 10px 22px rgba(23, 9, 55, .2);
}

.player-points-total small { color: #817493; }

.player-points-close {
  position: relative;
  z-index: 3;
  inset: auto;
  grid-area: close;
  width: 34px;
  height: 34px;
  min-height: 34px;
  color: #fff;
  background: rgba(20, 8, 48, .28);
  border: 1px solid rgba(255,255,255,.26);
  border-radius: 12px;
  box-shadow: none;
}

.player-points-content { padding: 2px 3px 0; }
.player-points-tabs { margin: 9px 0 10px; background: #eeeaf4; border-color: rgba(93,70,133,.07); }
.player-points-tabs button { min-height: 40px; font-size: 11px; }
.player-points-summary { margin-top: 0; background: #fff; }
.player-point-row,
.player-match-list article,
.player-owner-list > span,
.player-points-empty { background: #fff; }

.player-origin-morph {
  background:
    radial-gradient(circle at 100% 0, rgba(82, 229, 236, .32), transparent 42%),
    linear-gradient(135deg, #2d1b5a, #744dc2 70%, #916bd3);
  border-color: rgba(255,255,255,.38);
  box-shadow: 0 22px 58px rgba(42, 24, 87, .32);
}
.player-origin-morph .fpl-player-tile strong,
.player-origin-morph .fpl-player-tile small,
.player-origin-morph .player-status-line { color: #fff; }

html[data-theme="dark"] .player-points-sheet {
  background: rgba(30, 26, 40, .99);
  border-color: rgba(205,190,229,.16);
  box-shadow: 0 30px 90px rgba(0,0,0,.52);
}
html[data-theme="dark"] .player-points-hero {
  background:
    radial-gradient(circle at 100% 0, rgba(73, 211, 220, .27), transparent 43%),
    radial-gradient(circle at 0 100%, rgba(226, 76, 165, .18), transparent 45%),
    linear-gradient(135deg, #33205e, #6543a5 70%, #7554ad);
  border-color: rgba(213,198,239,.22);
}
html[data-theme="dark"] .player-points-head span { color: rgba(255,255,255,.66); }
html[data-theme="dark"] .player-points-head h2 { color: #fff; }
html[data-theme="dark"] .player-points-head small { color: rgba(255,255,255,.78); }
html[data-theme="dark"] .player-points-total { color: #d7c1f2; background: rgba(34,27,46,.86); border-color: rgba(255,255,255,.16); }
html[data-theme="dark"] .player-points-total small { color: #afa4ba; }
html[data-theme="dark"] .player-points-tabs { background: #282230; border-color: rgba(205,190,229,.08); }
html[data-theme="dark"] .player-points-summary,
html[data-theme="dark"] .player-point-row,
html[data-theme="dark"] .player-match-list article,
html[data-theme="dark"] .player-owner-list > span,
html[data-theme="dark"] .player-points-empty { background: #28222f; border-color: rgba(205,190,229,.1); }
html[data-theme="dark"] .player-origin-morph {
  background:
    radial-gradient(circle at 100% 0, rgba(73, 211, 220, .24), transparent 43%),
    linear-gradient(135deg, #33205e, #6543a5 72%, #7554ad);
  border-color: rgba(213,198,239,.22);
}

/* تبديل نتيجة الجولة والموسم بحركة رأسية خفيفة */
.score-period-transition .number-updated { animation: none !important; }
.score-period-transition .team-score {
  backface-visibility: hidden;
  contain: paint;
  transform: translateZ(0);
  will-change: transform, opacity;
}

/* انتقال الإضاءة السينمائية */
.theme-cinema-overlay {
  position: fixed;
  z-index: 2147483646;
  inset: 0;
  pointer-events: none;
  contain: strict;
  transform: translateZ(0);
  will-change: opacity;
}
.theme-cinema-overlay.light {
  background: radial-gradient(circle at 50% 48%, #fff 0 22%, #f7f6ff 68%, #efebfa 100%);
}
.theme-cinema-overlay.dark {
  background: radial-gradient(circle at 50% 48%, #25203b 0 20%, #171426 67%, #121020 100%);
}
html.theme-cinema-changing .app-shell {
  transform-origin: center top;
  will-change: transform, opacity;
}

/* نبضة لمسية: Vibration API ومعالجة WebKit المتاحة */
.ios-haptic-control,
.ios-haptic-label {
  position: fixed !important;
  top: -8px !important;
  left: -8px !important;
  width: 1px !important;
  height: 1px !important;
  margin: 0 !important;
  padding: 0 !important;
  opacity: .001 !important;
  pointer-events: none !important;
}

@media (max-width: 600px) {
  .player-points-sheet { padding: 10px 10px max(16px, env(safe-area-inset-bottom)); border-radius: 29px 29px 0 0; }
  .player-points-hero {
    min-height: 106px;
    grid-template-columns: 34px 58px minmax(0, 1fr) 66px;
    gap: 7px;
    padding: 11px;
    border-radius: 22px;
  }
  .player-points-kit { width: 66px; height: 77px; }
  .player-points-kit img { width: 72px; height: 72px; }
  .player-points-head h2 { font-size: 21px; }
  .player-points-total { min-width: 56px; min-height: 58px; border-radius: 16px; }
  .player-points-total b { font-size: 22px; }
  .player-points-close { width: 32px; height: 32px; min-height: 32px; }
  .player-points-content { padding-inline: 1px; }
}

@media (prefers-reduced-motion: reduce) {
  .theme-cinema-overlay { display: none !important; }
}

/* v69 · حركة خفيفة ومضبوطة للجوال */
.theme-button { position: relative; overflow: hidden; }
.theme-native-switch {
  position: absolute;
  z-index: 8;
  inset: 0;
  width: 100%;
  height: 100%;
  margin: 0;
  opacity: .001;
  cursor: pointer;
  appearance: auto;
  -webkit-appearance: auto;
}
.theme-button:has(.theme-native-switch:focus-visible) {
  outline: 3px solid rgba(113, 78, 199, .3);
  outline-offset: 2px;
}

#myTeamContent.lineup-preparing #myTeamPitchPlayers {
  position: relative;
  min-height: 470px;
}
#myTeamContent.lineup-preparing #myTeamPitchPlayers .pitch-player { opacity: 0; }
#myTeamContent.lineup-preparing #myTeamPitchPlayers::before {
  position: absolute;
  z-index: 3;
  top: 50%;
  left: 50%;
  min-width: 132px;
  padding: 8px 12px;
  content: "تجهيز التشكيلة…";
  color: #5d4c75;
  background: rgba(255,255,255,.86);
  border: 1px solid rgba(105,81,153,.1);
  border-radius: 999px;
  box-shadow: 0 8px 20px rgba(55,38,91,.08);
  font-size: 9px;
  font-weight: 850;
  text-align: center;
  transform: translate(-50%, -50%);
}
html[data-theme="dark"] #myTeamContent.lineup-preparing #myTeamPitchPlayers::before {
  color: #d0c5da;
  background: rgba(42,35,52,.9);
  border-color: rgba(205,190,229,.12);
}

@keyframes lineup-player-enter {
  from { opacity: 0; transform: translate3d(0,14px,0) scale(.94); }
  to { opacity: 1; transform: translate3d(0,0,0) scale(1); }
}

@media (max-width: 760px) {
  body::before,
  body::after {
    inset: -12%;
    animation: none !important;
    transform: none !important;
    will-change: auto;
  }
  body::before {
    opacity: .2;
    filter: none;
    background:
      radial-gradient(circle at 8% 12%, rgba(62,220,234,.34), transparent 36%),
      radial-gradient(circle at 92% 74%, rgba(244,100,190,.26), transparent 40%);
  }
  body::after { opacity: .38; filter: blur(14px) saturate(1.15); }

  .manager-dialog::backdrop,
  .install-dialog::backdrop,
  .match-center-dialog::backdrop,
  .player-points-dialog::backdrop {
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
  }
  .match-center-head,
  .admin-savebar,
  .ios-install-prompt,
  .live-event-toast {
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
  }

  .player-points-dialog.shared-player-opening::backdrop { background: rgba(22,15,38,.48); }
  .player-points-sheet {
    box-shadow: 0 18px 46px rgba(32,20,55,.28);
    transform: translateZ(0);
    contain: layout paint style;
  }
  .player-points-kit { filter: none; }
  .player-origin-morph {
    contain: layout paint style;
    box-shadow: 0 12px 28px rgba(42,24,87,.24);
  }

  #myTeamContent.lineup-entering .pitch-row .pitch-player {
    animation-duration: .42s;
    will-change: transform, opacity;
  }
  #myTeamContent.lineup-entering .pitch-row.type-1 .pitch-player { --line-delay: 0ms; }
  #myTeamContent.lineup-entering .pitch-row.type-2 .pitch-player { --line-delay: 180ms; }
  #myTeamContent.lineup-entering .pitch-row.type-3 .pitch-player { --line-delay: 360ms; }
  #myTeamContent.lineup-entering .pitch-row.type-4 .pitch-player { --line-delay: 540ms; }

  button:not(:disabled):active,
  a[data-view-target]:active,
  summary:active,
  .theme-button:active {
    transform: translate3d(0,2px,0) scale(.985);
    filter: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  #myTeamContent.lineup-preparing #myTeamPitchPlayers .pitch-player { opacity: 1; }
  #myTeamContent.lineup-preparing #myTeamPitchPlayers::before { display: none; }
}

/* v70 · وضعك السريع الشخصي */
.home-quick-card {
  position: relative;
  min-height: 0;
  display: block;
  overflow: hidden;
  padding: 0;
  color: #291d4d;
  background:
    radial-gradient(circle at 7% 10%, rgba(77, 214, 220, .2), transparent 36%),
    radial-gradient(circle at 91% 82%, rgba(185, 114, 232, .18), transparent 42%),
    linear-gradient(135deg, #fff 0%, #f7f2ff 100%);
  border: 1px solid rgba(106, 78, 174, .22);
  border-radius: 24px;
  box-shadow: 0 18px 44px rgba(66, 41, 125, .13), inset 0 1px 0 rgba(255, 255, 255, .95);
}

.home-quick-card::after {
  position: absolute;
  z-index: 0;
  inset: 0 0 auto;
  height: 3px;
  content: "";
  background: linear-gradient(90deg, #37cad7, #744fce 55%, #cf72d9);
  pointer-events: none;
}

.home-quick-card > summary {
  position: relative;
  z-index: 1;
  min-height: 108px;
  display: grid;
  grid-template-columns: 52px minmax(0, 1fr) auto 34px;
  align-items: center;
  gap: 12px;
  padding: 17px 18px;
  list-style: none;
  cursor: pointer;
  -webkit-tap-highlight-color: transparent;
}

.home-quick-card > summary::-webkit-details-marker { display: none; }
.home-quick-card > summary::marker { content: ""; }

.home-quick-card .home-rivalry-icon {
  width: 52px;
  height: 52px;
  border-radius: 17px;
  box-shadow: 0 11px 24px rgba(88, 64, 165, .27);
  animation: quick-status-spark 1.8s ease-out .6s 2;
}

.home-quick-card .home-rivalry-copy { gap: 3px; }
.home-quick-card .home-rivalry-copy small {
  color: #786895;
  font-size: 10px;
  letter-spacing: .01em;
}
.home-quick-card .home-rivalry-copy strong {
  color: #261943;
  font-size: 18px;
  line-height: 1.35;
}
.home-quick-card .home-rivalry-copy > span {
  overflow: hidden;
  display: block;
  color: #6d6280;
  font-size: 11px;
  font-weight: 750;
  line-height: 1.55;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.home-quick-open-label {
  min-height: 35px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 7px 12px;
  color: #60439e;
  background: rgba(255, 255, 255, .72);
  border: 1px solid rgba(106, 78, 174, .15);
  border-radius: 999px;
  box-shadow: 0 5px 14px rgba(69, 45, 120, .07);
  font-size: 9px;
  font-weight: 900;
  white-space: nowrap;
}

.home-quick-arrow {
  width: 32px;
  height: 32px;
  display: grid;
  place-items: center;
  color: #7657b9;
  background: rgba(111, 79, 177, .09);
  border-radius: 11px;
  font-size: 21px;
  font-style: normal;
  line-height: 1;
  transition: transform .22s ease, background-color .22s ease;
}
.home-quick-card[open] .home-quick-arrow { background: rgba(111, 79, 177, .14); transform: rotate(180deg); }

.home-quick-content {
  position: relative;
  z-index: 1;
  display: grid;
  gap: 14px;
  padding: 18px;
  background: rgba(255, 255, 255, .48);
  border-top: 1px solid rgba(104, 78, 157, .12);
}

.home-quick-return {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 10px 12px;
  color: #59417f;
  background: rgba(101, 212, 213, .13);
  border: 1px solid rgba(68, 179, 184, .16);
  border-radius: 13px;
  font-size: 10px;
  font-weight: 850;
}
.home-quick-return b { color: #423064; font-size: 11px; }

.home-quick-opening {
  margin: 0;
  padding: 0 2px;
  color: #514466;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.85;
}
.home-quick-opening strong { color: #5e3eaa; }

.home-quick-stats {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
}
.home-quick-stats article {
  min-width: 0;
  min-height: 100px;
  display: grid;
  align-content: center;
  gap: 4px;
  padding: 12px;
  background: rgba(255, 255, 255, .76);
  border: 1px solid rgba(102, 77, 153, .12);
  border-radius: 16px;
  box-shadow: 0 7px 18px rgba(65, 42, 110, .055);
}
.home-quick-stats span { color: #82778f; font-size: 9px; font-weight: 850; }
.home-quick-stats b {
  overflow: hidden;
  color: #2b1d50;
  font-size: 23px;
  font-weight: 950;
  line-height: 1.15;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.home-quick-stats small { color: #71677f; font-size: 8px; font-weight: 750; line-height: 1.55; }

.home-quick-section {
  padding: 15px;
  background: rgba(255, 255, 255, .64);
  border: 1px solid rgba(102, 77, 153, .11);
  border-radius: 18px;
}
.home-quick-section-title {
  display: flex;
  align-items: center;
  gap: 9px;
  margin-bottom: 11px;
}
.home-quick-section-title span {
  width: 29px;
  height: 29px;
  display: grid;
  place-items: center;
  color: #fff;
  background: linear-gradient(145deg, #7350c7, #9f67d4);
  border-radius: 10px;
  font-size: 9px;
  font-weight: 950;
}
.home-quick-section-title h3 { margin: 0; color: #30204f; font-size: 14px; }

.home-quick-sources,
.home-quick-important { margin: 0; padding: 0; list-style: none; }
.home-quick-sources { display: grid; gap: 6px; }
.home-quick-sources li {
  min-height: 40px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 8px 11px;
  color: #514660;
  background: rgba(244, 240, 250, .78);
  border-radius: 12px;
  font-size: 11px;
}
.home-quick-sources li > span { display: inline-flex; align-items: center; gap: 7px; }
.home-quick-sources li > strong { color: #5f40a1; font-size: 14px; font-weight: 950; }
.quick-source-captain,
.captain-token {
  display: inline-grid;
  place-items: center;
  color: #fff;
  background: linear-gradient(145deg, #5e3fa9, #8a5bd0);
  border-radius: 8px;
  font-weight: 950;
}
.quick-source-captain { min-width: 24px; height: 24px; padding-inline: 5px; font-size: 8px; }
.quick-empty-line { justify-content: center !important; color: #81768d !important; }

.home-quick-cost,
.home-quick-temporary {
  margin: 9px 2px 0;
  color: #716681;
  font-size: 9px;
  font-weight: 750;
  line-height: 1.65;
}
.home-quick-temporary { color: #397b7e; }

.home-quick-captain {
  display: grid;
  grid-template-columns: 39px minmax(0, 1fr);
  align-items: center;
  gap: 11px;
  padding: 13px 14px;
  color: #564766;
  background: linear-gradient(135deg, rgba(111, 81, 183, .1), rgba(65, 205, 211, .09));
  border: 1px solid rgba(104, 77, 166, .15);
  border-radius: 17px;
}
.captain-token { width: 39px; height: 39px; font-size: 14px; box-shadow: 0 7px 15px rgba(78, 49, 139, .2); }
.home-quick-captain p { margin: 0; font-size: 10px; font-weight: 750; line-height: 1.85; }
.home-quick-captain b { color: #3f2b6e; }

.home-quick-important { display: grid; gap: 9px; }
.home-quick-important li {
  position: relative;
  padding-inline-start: 18px;
  color: #5c5267;
  font-size: 10px;
  font-weight: 700;
  line-height: 1.9;
}
.home-quick-important li::before {
  position: absolute;
  top: .72em;
  inset-inline-start: 2px;
  width: 7px;
  height: 7px;
  content: "";
  background: #57cbd1;
  border: 2px solid rgba(87, 203, 209, .2);
  border-radius: 50%;
  box-sizing: content-box;
}
.home-quick-important b { color: #6645a8; }
.home-quick-important strong { color: #2f2248; }

.home-quick-conclusion {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: center;
  gap: 12px;
  padding: 15px 16px;
  color: #fff;
  background: linear-gradient(125deg, #302153, #5c3d9e 58%, #3b8e9b);
  border-radius: 18px;
  box-shadow: 0 10px 24px rgba(53, 32, 98, .18);
}
.home-quick-conclusion > span {
  padding: 6px 9px;
  color: #2f2250;
  background: #fff;
  border-radius: 999px;
  font-size: 8px;
  font-weight: 950;
}
.home-quick-conclusion p { margin: 0; font-size: 11px; font-weight: 700; line-height: 1.85; }
.home-quick-conclusion strong { color: #8ff0ee; }

.home-quick-empty {
  min-height: 165px;
  display: grid;
  place-items: center;
  align-content: center;
  gap: 7px;
  padding: 18px;
  color: #6d607c;
  text-align: center;
}
.home-quick-empty > span { color: #7855bb; font-size: 34px; }
.home-quick-empty b { color: #30204e; font-size: 15px; }
.home-quick-empty p { max-width: 390px; margin: 0; font-size: 10px; line-height: 1.75; }


@keyframes quick-status-spark {
  0%, 100% { box-shadow: 0 11px 24px rgba(88, 64, 165, .27); transform: scale(1); }
  48% { box-shadow: 0 11px 28px rgba(68, 202, 210, .42), 0 0 0 8px rgba(82, 206, 211, .08); transform: scale(1.045); }
}


html[data-theme="dark"] .home-quick-card {
  color: #f5effc;
  background:
    radial-gradient(circle at 8% 10%, rgba(56, 194, 202, .13), transparent 36%),
    radial-gradient(circle at 91% 83%, rgba(151, 89, 207, .14), transparent 43%),
    linear-gradient(135deg, #292234 0%, #211b2b 100%);
  border-color: rgba(211, 191, 235, .16);
  box-shadow: 0 19px 46px rgba(8, 5, 15, .32), inset 0 1px 0 rgba(255, 255, 255, .045);
}
html[data-theme="dark"] .home-quick-card .home-rivalry-copy small { color: #b9a7cc; }
html[data-theme="dark"] .home-quick-card .home-rivalry-copy strong { color: #faf7ff; }
html[data-theme="dark"] .home-quick-card .home-rivalry-copy > span { color: #c5b9d0; }
html[data-theme="dark"] .home-quick-open-label { color: #e3d4f2; background: rgba(255, 255, 255, .055); border-color: rgba(226, 208, 245, .12); box-shadow: none; }
html[data-theme="dark"] .home-quick-arrow { color: #dfc7f8; background: rgba(221, 199, 245, .08); }
html[data-theme="dark"] .home-quick-content { background: rgba(15, 11, 21, .15); border-top-color: rgba(227, 211, 241, .11); }
html[data-theme="dark"] .home-quick-return { color: #ccebee; background: rgba(57, 184, 191, .1); border-color: rgba(91, 208, 213, .14); }
html[data-theme="dark"] .home-quick-return b { color: #e5f8f8; }
html[data-theme="dark"] .home-quick-opening { color: #d8cedf; }
html[data-theme="dark"] .home-quick-opening strong { color: #d3b4f2; }
html[data-theme="dark"] .home-quick-stats article,
html[data-theme="dark"] .home-quick-section { background: rgba(255, 255, 255, .045); border-color: rgba(225, 207, 241, .1); box-shadow: none; }
html[data-theme="dark"] .home-quick-stats span { color: #b7a9c3; }
html[data-theme="dark"] .home-quick-stats b,
html[data-theme="dark"] .home-quick-section-title h3,
html[data-theme="dark"] .home-quick-sources li b,
html[data-theme="dark"] .home-quick-important strong,
html[data-theme="dark"] .home-quick-empty b { color: #fbf8ff; }
html[data-theme="dark"] .home-quick-stats small,
html[data-theme="dark"] .home-quick-cost,
html[data-theme="dark"] .home-quick-empty { color: #bcb0c7; }
html[data-theme="dark"] .home-quick-sources li { color: #d3c8dc; background: rgba(255, 255, 255, .045); }
html[data-theme="dark"] .home-quick-sources li > strong { color: #d8b6f4; }
html[data-theme="dark"] .home-quick-temporary { color: #9ad9db; }
html[data-theme="dark"] .home-quick-captain { color: #d8cce0; background: linear-gradient(135deg, rgba(145, 98, 209, .12), rgba(57, 186, 193, .09)); border-color: rgba(220, 198, 240, .12); }
html[data-theme="dark"] .home-quick-captain b,
html[data-theme="dark"] .home-quick-important b { color: #d6b7f1; }
html[data-theme="dark"] .home-quick-important li { color: #c8bccf; }

@media (max-width: 600px) {
  .home-quick-card { border-radius: 21px; }
  .home-quick-card > summary {
    min-height: 94px;
    grid-template-columns: 46px minmax(0, 1fr) 30px;
    gap: 10px;
    padding: 14px 13px;
  }
  .home-quick-card .home-rivalry-icon { width: 46px; height: 46px; border-radius: 15px; font-size: 20px; }
  .home-quick-card .home-rivalry-copy strong { font-size: 16px; }
  .home-quick-card .home-rivalry-copy > span { font-size: 9px; }
  .home-quick-open-label { display: none; }
  .home-quick-arrow { width: 30px; height: 30px; font-size: 19px; }
  .home-quick-content { gap: 11px; padding: 14px 12px; }
  .home-quick-opening { font-size: 12px; line-height: 1.8; }
  .home-quick-stats { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 7px; }
  .home-quick-stats article { min-height: 92px; padding: 10px; border-radius: 14px; }
  .home-quick-stats b { font-size: 21px; }
  .home-quick-stats small { font-size: 7.5px; }
  .home-quick-section { padding: 13px 11px; border-radius: 16px; }
  .home-quick-section-title h3 { font-size: 13px; }
  .home-quick-sources li { min-height: 38px; padding: 7px 9px; }
  .home-quick-captain { grid-template-columns: 36px minmax(0, 1fr); gap: 9px; padding: 12px 11px; }
  .captain-token { width: 36px; height: 36px; }
  .home-quick-captain p,
  .home-quick-important li { font-size: 9px; }
  .home-quick-conclusion { grid-template-columns: 1fr; gap: 8px; padding: 13px; }
  .home-quick-conclusion > span { width: fit-content; }
  .home-quick-conclusion p { font-size: 10px; }
}

@media (prefers-reduced-motion: reduce) {
  .home-quick-card .home-rivalry-icon { animation: none; }
  .home-quick-arrow { transition: none; }
}

/* v72 · حركة جذب لقسم «وضعك السريع» */
.home-quick-card {
  isolation: isolate;
  outline: 1px solid rgba(112, 78, 185, .06);
  outline-offset: 3px;
}

.home-quick-card > summary {
  background:
    linear-gradient(110deg, rgba(255,255,255,.30), transparent 42%),
    transparent;
}

.home-quick-card > summary::before {
  position: absolute;
  z-index: -1;
  top: -42px;
  inset-inline-start: -78px;
  width: 150px;
  height: 150px;
  content: "";
  background: radial-gradient(circle, rgba(90, 211, 217, .20), transparent 66%);
  border-radius: 50%;
  pointer-events: none;
  animation: home-quick-glow 3.2s ease-in-out infinite;
}

.home-quick-card .home-rivalry-copy small {
  width: fit-content;
  min-height: 23px;
  display: inline-flex;
  align-items: center;
  gap: 4px;
  margin-bottom: 2px;
  padding: 4px 8px;
  color: #62449f;
  background: linear-gradient(135deg, rgba(111, 78, 191, .10), rgba(64, 201, 209, .10));
  border: 1px solid rgba(112, 80, 181, .12);
  border-radius: 999px;
  font-size: 9px;
  font-weight: 950;
  line-height: 1;
}

.home-quick-card .home-rivalry-copy small::before {
  width: 6px;
  height: 6px;
  content: "";
  background: #53cdd2;
  border-radius: 50%;
  box-shadow: 0 0 0 0 rgba(83, 205, 210, .30);
  animation: home-quick-dot 1.7s ease-out infinite;
}

.home-quick-card .home-rivalry-copy strong {
  letter-spacing: -.015em;
}

.home-quick-open-label {
  position: relative;
  overflow: hidden;
  min-height: 38px;
  padding-inline: 14px;
  color: #fff;
  background: linear-gradient(135deg, #6647ad, #7d58ca);
  border-color: transparent;
  box-shadow: 0 8px 18px rgba(88, 58, 153, .19);
  font-size: 9.5px;
  animation: home-quick-chip-float 1.8s ease-in-out infinite;
}

.home-quick-open-label::after {
  position: absolute;
  top: -30%;
  left: -45%;
  width: 30px;
  height: 160%;
  content: "";
  background: rgba(255,255,255,.28);
  transform: rotate(18deg);
  animation: home-quick-shine 2.8s ease-in-out infinite;
}

.home-quick-card:not([open]) .home-quick-arrow {
  animation: home-quick-arrow-bounce 1.8s ease-in-out infinite;
}

.home-quick-card.needs-selection {
  background:
    radial-gradient(circle at 8% 14%, rgba(255, 195, 90, .18), transparent 34%),
    radial-gradient(circle at 92% 80%, rgba(151, 101, 220, .16), transparent 42%),
    linear-gradient(135deg, #fffdf8 0%, #f8f2ff 100%);
  border-color: rgba(186, 127, 58, .30);
  box-shadow: 0 20px 48px rgba(92, 58, 136, .15), 0 0 0 4px rgba(255, 184, 77, .045);
}

.home-quick-card.needs-selection::after {
  background: linear-gradient(90deg, #ffb84d, #9a67dc 55%, #57cdd2);
}

.home-quick-card.needs-selection .home-rivalry-icon {
  color: #fff;
  background: linear-gradient(145deg, #f2a63c, #8b5bc9);
  box-shadow: 0 11px 25px rgba(154, 102, 59, .25);
}

.home-quick-card.needs-selection .home-rivalry-copy small {
  color: #895f21;
  background: rgba(255, 184, 77, .12);
  border-color: rgba(214, 147, 44, .18);
}
.home-quick-card.needs-selection .home-rivalry-copy small::before { background: #f2a63c; }
.home-quick-card.needs-selection .home-quick-open-label {
  background: linear-gradient(135deg, #e59a31, #9660cc);
}

.home-quick-empty {
  min-height: 205px;
  gap: 9px;
  padding: 22px 18px 20px;
}
.home-quick-empty .home-quick-empty-icon {
  width: 48px;
  height: 48px;
  display: grid;
  place-items: center;
  color: #fff;
  background: linear-gradient(145deg, #f0aa43, #8556c3);
  border-radius: 16px;
  box-shadow: 0 10px 22px rgba(112, 74, 161, .22);
  font-size: 22px;
}
.home-quick-empty b { font-size: 17px; }
.home-quick-empty p { max-width: 430px; font-size: 11px; font-weight: 750; }

.home-quick-choose-button {
  min-height: 43px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  margin-top: 3px;
  padding: 9px 17px;
  color: #fff;
  background: linear-gradient(135deg, #6746aa, #895ac9);
  border: 0;
  border-radius: 13px;
  box-shadow: 0 9px 20px rgba(89, 56, 151, .23);
  font-family: inherit;
  font-size: 11px;
  font-weight: 950;
  cursor: pointer;
}
.home-quick-choose-button i { font-size: 15px; font-style: normal; transition: transform .18s ease; }
.home-quick-choose-button:hover i { transform: translateX(-3px); }
.home-quick-empty-hint { color: #91859d; font-size: 8.5px; font-weight: 800; }

@keyframes home-quick-dot {
  0% { box-shadow: 0 0 0 0 rgba(83, 205, 210, .34); }
  65% { box-shadow: 0 0 0 7px rgba(83, 205, 210, 0); }
  100% { box-shadow: 0 0 0 0 rgba(83, 205, 210, 0); }
}
@keyframes home-quick-shine {
  0%, 30% { left: -45%; opacity: 0; }
  42% { opacity: 1; }
  65%, 100% { left: 120%; opacity: 0; }
}
@keyframes home-quick-arrow-bounce {
  0%, 100% { transform: translateY(0); }
  45% { transform: translateY(3px); }
}
@keyframes home-quick-glow {
  0%, 100% { opacity: .55; transform: scale(.92); }
  50% { opacity: 1; transform: scale(1.08); }
}
@keyframes home-quick-chip-float {
  0%, 100% { transform: translateY(0); box-shadow: 0 8px 18px rgba(88, 58, 153, .19); }
  50% { transform: translateY(-2px); box-shadow: 0 12px 22px rgba(88, 58, 153, .25); }
}

html[data-theme="dark"] .home-quick-card .home-rivalry-copy small {
  color: #e5d7f5;
  background: linear-gradient(135deg, rgba(151, 105, 216, .14), rgba(63, 198, 205, .10));
  border-color: rgba(220, 199, 239, .13);
}
html[data-theme="dark"] .home-quick-open-label {
  color: #fff;
  background: linear-gradient(135deg, #7652ba, #5b4092);
  border-color: transparent;
}
html[data-theme="dark"] .home-quick-card.needs-selection {
  background:
    radial-gradient(circle at 8% 12%, rgba(230, 159, 54, .11), transparent 34%),
    radial-gradient(circle at 91% 82%, rgba(147, 89, 201, .13), transparent 42%),
    linear-gradient(135deg, #2b2431 0%, #211b2b 100%);
  border-color: rgba(232, 178, 93, .22);
  box-shadow: 0 20px 48px rgba(7, 4, 13, .34), 0 0 0 4px rgba(238, 164, 58, .025);
}
html[data-theme="dark"] .home-quick-card.needs-selection .home-rivalry-copy small {
  color: #f4c982;
  background: rgba(226, 153, 47, .09);
  border-color: rgba(238, 177, 81, .12);
}
html[data-theme="dark"] .home-quick-card.needs-selection .home-quick-open-label {
  background: linear-gradient(135deg, #bb7a25, #7650aa);
}
html[data-theme="dark"] .home-quick-empty-hint { color: #a99db2; }
html[data-theme="dark"] .home-quick-choose-button { background: linear-gradient(135deg, #7b56b7, #5d3e91); }

@media (max-width: 600px) {
  .home-quick-card > summary { min-height: 112px; }
  .home-quick-card .home-rivalry-copy { gap: 5px; }
  .home-quick-card .home-rivalry-copy small { min-height: 21px; padding: 4px 7px; font-size: 8px; }
  .home-quick-card .home-rivalry-copy strong { font-size: 16.5px; line-height: 1.4; }
  .home-quick-card .home-rivalry-copy > span { font-size: 9.5px; line-height: 1.55; }
  .home-quick-arrow { align-self: center; }
  .home-quick-empty { min-height: 220px; padding-inline: 13px; }
  .home-quick-empty b { font-size: 16px; }
  .home-quick-empty p { font-size: 10px; }
  .home-quick-choose-button { width: min(100%, 260px); min-height: 45px; font-size: 11px; }
}

@media (prefers-reduced-motion: reduce) {
  .home-quick-card > summary::before,
  .home-quick-card .home-rivalry-copy small::before,
  .home-quick-open-label,
  .home-quick-open-label::after,
  .home-quick-card:not([open]) .home-quick-arrow { animation: none !important; }
}
