/* ICE theme overrides: lineup (#lineup). Colour only; every rule scoped [data-theme="ice"].
   Cards stay "lit screens": product photo + deep navy body with white text (text sits on the photo's scrim).
   Everything around them (stage, floor, podium, filters, controls, detail panel, index) is bright ice. */

/* ---------- backdrop: frost band with a soft ice bloom behind the ring ---------- */
[data-theme="ice"] .lineup-bg::before {
  background:
    radial-gradient(46% 30% at 50% 26%, rgba(99, 102, 241, .09), transparent 70%),
    radial-gradient(34% 22% at 50% 32%, rgba(56, 182, 245, .18), transparent 70%),
    linear-gradient(180deg, var(--bg) 0%, #e6f2fc 30%, #ecf5fd 60%, var(--bg) 100%);
}
[data-theme="ice"] .lineup-bg::after { /* perspective grid floor: fine blue hairlines */
  background:
    repeating-linear-gradient(90deg, rgba(5, 119, 181, .10) 0 1px, transparent 1px 84px),
    repeating-linear-gradient(0deg, rgba(5, 119, 181, .10) 0 1px, transparent 1px 84px);
}

/* ---------- group filter row ---------- */
[data-theme="ice"] .lineup-filter {
  color: var(--ink-2); background: rgba(255, 255, 255, .9); border-color: var(--line-2);
  box-shadow: 0 1px 2px rgba(16, 60, 110, .05), 0 6px 16px -10px rgba(16, 60, 110, .3);
}
[data-theme="ice"] .lineup-filter img { opacity: .9; }
[data-theme="ice"] .lineup-filter-count { color: var(--muted); background: rgba(14, 92, 160, .06); border-color: var(--line); }
[data-theme="ice"] .lineup-filter:hover {
  color: var(--ink); border-color: var(--ice); background: #fff;
  box-shadow: 0 10px 24px -12px rgba(14, 140, 220, .55);
}
[data-theme="ice"] .lineup-filter[aria-pressed="true"] {
  color: var(--ink); border-color: transparent;
  background:
    linear-gradient(160deg, #ffffff, #e6f4fe) padding-box,
    var(--grad) border-box;
  box-shadow: 0 0 0 4px rgba(56, 182, 245, .14), 0 12px 28px -12px rgba(14, 140, 220, .6);
}
[data-theme="ice"] .lineup-filter[aria-pressed="true"] .lineup-filter-count { color: #fff; background: var(--cyan); border-color: transparent; }

/* ---------- 3D ring stage ---------- */
[data-theme="ice"] .lineup-stage:focus-visible .lineup-card.is-active .lineup-card-in {
  box-shadow: 0 0 0 2px var(--cyan), 0 0 0 6px rgba(56, 182, 245, .3), 0 40px 70px -30px rgba(16, 60, 110, .6);
}
[data-theme="ice"] .lineup-podium { /* the neon podium art has real alpha: show it as-is on frost (screen would erase it) */
  mix-blend-mode: normal; opacity: .9; filter: saturate(.85) drop-shadow(0 18px 24px rgba(16, 60, 110, .12));
}

/* ---------- product card: deep navy screen, ice holo edge, soft navy shadow ---------- */
[data-theme="ice"] .lineup-card-in {
  background: linear-gradient(180deg, #10294a 0%, #0b2240 100%);
  box-shadow: 0 0 0 1px rgba(191, 232, 251, .22) inset, 0 34px 60px -28px rgba(16, 60, 110, .6), 0 6px 14px -6px rgba(16, 60, 110, .22);
}
[data-theme="ice"] .lineup-card-in::before {
  background: conic-gradient(from var(--lineup-ang, 0deg), #7fdcff, #38b6f5, #5b8cff, #7a5cf0, #7fdcff 50%, rgba(127, 220, 255, .15) 62%, #5b8cff 80%, #7fdcff);
  opacity: .35;
}
[data-theme="ice"] .lineup-card.is-active .lineup-card-in::before { opacity: 1; }
[data-theme="ice"] .lineup-card.is-active .lineup-card-in {
  box-shadow: 0 0 0 1px rgba(191, 232, 251, .3) inset, 0 0 0 6px rgba(56, 182, 245, .12), 0 24px 60px -18px rgba(14, 140, 220, .55), 0 50px 80px -34px rgba(16, 60, 110, .65);
}
[data-theme="ice"] .lineup-card-media { background: #0b2240; }
[data-theme="ice"] .lineup-card-media::after { background: linear-gradient(0deg, #0b2240 0%, rgba(11, 34, 64, 0) 34%); }
/* products with no photo yet: their neon icon stays lit on a navy holo field (undo the global icon inversion) */
[data-theme="ice"] .lineup-card-art {
  background:
    radial-gradient(60% 60% at 50% 50%, rgba(56, 182, 245, .30), transparent 70%),
    repeating-linear-gradient(45deg, rgba(127, 220, 255, .06) 0 2px, transparent 2px 12px),
    #0b2240;
}
[data-theme="ice"] .lineup-card-art img { filter: none; mix-blend-mode: screen; }
[data-theme="ice"] .lineup-card-body { background: #0b2240; }
[data-theme="ice"] .lineup-card-kicker { color: #8fd8ff; }
[data-theme="ice"] .lineup-card-kicker i { background: #34e39a; box-shadow: 0 0 6px rgba(52, 227, 154, .7); }
[data-theme="ice"] .lineup-card-kicker i.new { background: #f6c66b; box-shadow: 0 0 6px rgba(246, 198, 107, .7); }
[data-theme="ice"] .lineup-card-kicker i.soon { background: #a9a2ff; box-shadow: 0 0 6px rgba(169, 162, 255, .7); }
[data-theme="ice"] .lineup-card-name { color: #fff; }
[data-theme="ice"] .lineup-card-price { color: #a9bccf; }
[data-theme="ice"] .lineup-card-price b { color: #fff; }
[data-theme="ice"] .lineup-card-glare {
  background:
    radial-gradient(300px circle at var(--mx, 30%) var(--my, 10%), rgba(255, 255, 255, .2), transparent 45%),
    linear-gradient(115deg, transparent 36%, rgba(191, 232, 251, .12) 47%, rgba(160, 170, 255, .09) 55%, transparent 66%);
}
/* side cards recede into a light frost veil instead of into black (lighter than the dark shade, so they stay vivid) */
[data-theme="ice"] .lineup-card-shade { background: #e2f0fc; opacity: calc(var(--shade, 0) * .62); }
[data-theme="ice"] .is-ring .lineup-card:not(.is-active):hover .lineup-card-shade { opacity: calc(var(--shade, 0) * .3); }
[data-theme="ice"] .is-deck .lineup-card:not(.is-active) .lineup-card-shade { opacity: .26; }
/* ---------- controls ---------- */
[data-theme="ice"] .lineup-arrow {
  color: var(--ink); background: #fff; border-color: var(--line-2);
  box-shadow: 0 1px 2px rgba(16, 60, 110, .06), 0 8px 20px -12px rgba(16, 60, 110, .35);
}
[data-theme="ice"] .lineup-arrow:hover { color: var(--cyan); background: #fff; border-color: var(--ice); box-shadow: 0 0 0 4px rgba(56, 182, 245, .14), 0 10px 24px -10px rgba(14, 140, 220, .55); }
[data-theme="ice"] .lineup-count, [data-theme="ice"] .lineup-hint { color: #4c627c; } /* AA on the ice bloom */
[data-theme="ice"] .lineup-count b { color: var(--cyan); }
[data-theme="ice"] .lineup-bar { background: rgba(14, 92, 160, .14); }
[data-theme="ice"] .lineup-bar i { box-shadow: 0 0 8px rgba(56, 182, 245, .55); }

/* ---------- detail panel (.glass is light via base) ---------- */
[data-theme="ice"] .lineup-d-meta .status-chip.lineup-ready { color: #047857; border-color: rgba(16, 185, 129, .45); background: rgba(16, 185, 129, .1); }
[data-theme="ice"] .lineup-d-meta .status-chip::before { box-shadow: 0 0 0 3px rgba(16, 185, 129, .16); }
[data-theme="ice"] .lineup-d-meta .status-chip.new::before { box-shadow: 0 0 0 3px rgba(200, 140, 30, .16); }
[data-theme="ice"] .lineup-d-meta .status-chip.soon::before { box-shadow: 0 0 0 3px rgba(79, 83, 214, .14); }
[data-theme="ice"] .lineup-d-meta .status-chip.new { color: #8f5d00; }
[data-theme="ice"] .lineup-d-group { color: var(--cyan); }
[data-theme="ice"] .lineup-d-name { color: var(--ink); }
[data-theme="ice"] .lineup-d-pval b {
  color: var(--ink);
  background: var(--grad); -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent;
}
[data-theme="ice"] .lineup-est { color: var(--muted); border-bottom-color: rgba(90, 111, 136, .55); }

/* ---------- "Everything we do" index ---------- */
[data-theme="ice"] .lineup-index-head { border-bottom-color: var(--line-2); }
[data-theme="ice"] .lineup-index-head h3, [data-theme="ice"] .lineup-ix-head h4 { color: var(--ink); }
[data-theme="ice"] .lineup-index-head p, [data-theme="ice"] .lineup-ix-head span { color: var(--muted); }
[data-theme="ice"] .lineup-ix-head h4 a:hover { color: var(--cyan); }
[data-theme="ice"] .lineup-ix-chip {
  color: var(--ink-2); background: rgba(255, 255, 255, .92); border-color: var(--line-2);
  box-shadow: 0 1px 2px rgba(16, 60, 110, .05);
}
[data-theme="ice"] .lineup-ix-chip:hover { color: var(--ink); border-color: var(--ice); background: #f2faff; box-shadow: 0 8px 18px -10px rgba(14, 140, 220, .5); }
[data-theme="ice"] .lineup-ix-chip em.new { color: #8f5d00; }
[data-theme="ice"] .lineup-ix-chip em.soon { color: var(--violet); }

/* mobile deck: focus ring */
[data-theme="ice"] .lineup-stage.is-deck:focus-visible { outline-color: var(--cyan); }
