/* Public optimizer activity dashboard — same tested theme and responsive layout. */
body.fx-cinematic-test #page-optimizer .fx-pilot-stats {
  box-sizing:border-box;
  width:100%;
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
  margin:8px 0 24px;
}
body.fx-cinematic-test .fx-pilot-stats .fx-pilot-stat-card {
  box-sizing:border-box;
  min-width:0;
  min-height:174px;
  position:relative;
  padding:17px 17px 15px;
  border:1px solid rgba(79,165,195,.31);
  border-radius:19px;
  background:linear-gradient(150deg,#111e2c,#091522 78%,#0c1b29);
  box-shadow:inset 0 1px rgba(204,249,255,.05),0 12px 28px rgba(0,0,0,.18);
  display:flex;
  flex-direction:column;
  overflow:hidden;
}
body.fx-cinematic-test .fx-pilot-stats .fx-pilot-stat-card::before {
  position:absolute;inset:0;content:"";pointer-events:none;
  background:radial-gradient(ellipse at 100% 0%,rgba(47,195,214,.075),transparent 55%);
}
body.fx-cinematic-test .fx-pilot-stat-top {
  position:relative;
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:8px;
  min-width:0;
  margin-bottom:17px;
}
body.fx-cinematic-test .fx-pilot-stat-top > span:first-child {
  color:#9db5c4;
  font-size:10px;
  font-weight:850;
  line-height:1.45;
  letter-spacing:.105em;
}
body.fx-cinematic-test .fx-pilot-stat-icon {
  flex:0 0 30px;
  width:30px;height:30px;
  display:grid;place-items:center;
  color:#80e5e3;
  background:rgba(53,187,192,.11);
  border:1px solid rgba(73,208,212,.22);
  border-radius:10px;
}
body.fx-cinematic-test .fx-pilot-stat-icon svg {
  width:18px;height:18px;
  fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.7;
}
body.fx-cinematic-test .fx-pilot-stat-value {
  display:block;
  position:relative;
  color:#edf9ff;
  font-size:clamp(23px,2.55vw,39px);
  letter-spacing:-.035em;
  font-weight:890;
  line-height:1.18;
  font-variant-numeric:tabular-nums;
  overflow-wrap:normal;
  white-space:nowrap;
}
body.fx-cinematic-test .fx-pilot-stat-accent {color:#ffffff}
body.fx-cinematic-test .fx-pilot-stat-card > small {
  color:#91afbd;font-size:10px;line-height:1.4;margin-top:auto;padding-top:14px;position:relative;
}
body.fx-cinematic-test .fx-pilot-engine-card .fx-pilot-stat-top {margin-bottom:7px}
body.fx-cinematic-test .fx-pilot-online {
  display:flex;align-items:center;gap:7px;
  color:#d0e1e9;
  font-size:12px;
  font-weight:890;
  letter-spacing:.07em;
  position:relative;
  margin:0 0 12px;
}
body.fx-cinematic-test .fx-pilot-alive-dot {
  display:inline-block;width:8px;height:8px;flex:0 0 8px;
  background:#869cad;border-radius:50%;
}
body.fx-cinematic-test .fx-pilot-online.is-online {color:#8ef1b7}
body.fx-cinematic-test .fx-pilot-online.is-online .fx-pilot-alive-dot {
  background:#69e99f;box-shadow:0 0 0 3px rgba(87,229,152,.11),0 0 11px rgba(105,233,159,.38);
  animation:fxPilotAlive 2.6s ease-in-out infinite;
}
body.fx-cinematic-test .fx-pilot-online.is-degraded {color:#e6bd88}
body.fx-cinematic-test .fx-pilot-online.is-degraded .fx-pilot-alive-dot {background:#d8a36b}
body.fx-cinematic-test .fx-pilot-engine-list {
  display:grid;grid-template-columns:repeat(2,minmax(0,1fr));
  gap:6px;position:relative;
}
body.fx-cinematic-test .fx-pilot-engine-list > span {
  min-width:0;
  display:flex;align-items:center;gap:5px;
  box-sizing:border-box;
  padding:6px 5px;
  border:1px solid rgba(140,190,207,.14);
  border-radius:8px;
  background:rgba(10,27,39,.48);
  color:#d1e5ed;
  font-size:10px;font-weight:730;line-height:1.2;
  white-space:nowrap;
}
body.fx-cinematic-test .fx-pilot-engine-list > span::before {
  content:"";width:5px;height:5px;flex:none;border-radius:50%;background:#90a9b6;
}
body.fx-cinematic-test .fx-pilot-engine-list > span.is-online::before {
  background:#69e99f;box-shadow:0 0 6px rgba(105,233,159,.3);
}
@keyframes fxPilotAlive {0%,100%{opacity:1}50%{opacity:.53}}
@media(max-width:1000px){
  body.fx-cinematic-test #page-optimizer .fx-pilot-stats {grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media(max-width:600px){
  body.fx-cinematic-test #page-optimizer .fx-pilot-stats {gap:9px;margin:5px 0 19px}
  body.fx-cinematic-test .fx-pilot-stats .fx-pilot-stat-card {
    min-height:135px;padding:12px 11px 11px;border-radius:14px;
  }
  body.fx-cinematic-test .fx-pilot-stat-top {margin-bottom:10px}
  body.fx-cinematic-test .fx-pilot-stat-top > span:first-child {font-size:8px;letter-spacing:.05em}
  body.fx-cinematic-test .fx-pilot-stat-icon {flex-basis:25px;width:25px;height:25px;border-radius:8px}
  body.fx-cinematic-test .fx-pilot-stat-icon svg {width:15px;height:15px}
  body.fx-cinematic-test .fx-pilot-stat-value {font-size:clamp(21px,6vw,29px)}
  body.fx-cinematic-test .fx-pilot-stat-card > small {font-size:9px}
  body.fx-cinematic-test .fx-pilot-online {font-size:11px;margin-bottom:8px}
  body.fx-cinematic-test .fx-pilot-engine-list {gap:5px}
  body.fx-cinematic-test .fx-pilot-engine-list > span {font-size:9px;padding:5px 4px}
}
@media(max-width:355px){
  body.fx-cinematic-test .fx-pilot-stats .fx-pilot-stat-card {padding:11px 8px}
  body.fx-cinematic-test .fx-pilot-stat-top > span:first-child {font-size:7.5px}
  body.fx-cinematic-test .fx-pilot-stat-value {font-size:22px}
  body.fx-cinematic-test .fx-pilot-engine-list > span {font-size:8px}
}
@media(prefers-reduced-motion:reduce){
  body.fx-cinematic-test .fx-pilot-online.is-online .fx-pilot-alive-dot {animation:none}
}

/* Compact copy fills the bottom of each statistic without crowding figures. */
body.fx-cinematic-test .fx-pilot-stats .fx-pilot-stat-caption {
  display:block;
  margin-top:auto;
  padding-top:11px;
  color:#a6bfca;
  font-size:10px;
  line-height:1.35;
  font-weight:590;
  letter-spacing:.01em;
}
/* Individual digit reels: each new digit drops IN from above the old one. */
body.fx-cinematic-test .fx-pilot-stat-value:has(.fx-odometer-slot) {
  display:flex;
  align-items:center;
  min-height:1.18em;
  font-variant-numeric:tabular-nums;
}
body.fx-cinematic-test .fx-pilot-stat-value .fx-odometer-slot {
  display:inline-block;
  flex:0 0 auto;
  width:1ch;
  height:1.18em;
  overflow:hidden;
  line-height:1.18em;
  vertical-align:top;
}
body.fx-cinematic-test .fx-pilot-stat-value .fx-odometer-track {
  display:flex;
  flex-direction:column;
  transform:translateY(0);
  will-change:transform;
  backface-visibility:hidden;
}
body.fx-cinematic-test .fx-pilot-stat-value .fx-odometer-face {
  display:block;
  flex:0 0 auto;
  height:1.18em;
  line-height:1.18em;
  text-align:center;
}
body.fx-cinematic-test .fx-pilot-stat-value .fx-odometer-sep {
  display:inline-block;
  flex:0 0 auto;
  height:1.18em;
  line-height:1.18em;
}
@media(max-width:600px){
  body.fx-cinematic-test .fx-pilot-stats .fx-pilot-stat-caption {
    padding-top:8px;
    font-size:9px;
    line-height:1.27;
  }
}
@media(prefers-reduced-motion:reduce){
  body.fx-cinematic-test .fx-pilot-stat-value .fx-odometer-track {
    will-change:auto;
  }
}

/* Reserve the digit row's height, but show no placeholder/seed number until
   the first successful live API response starts the existing reel animation. */
body.fx-cinematic-test .fx-pilot-stat-value:empty {
  min-height:1.18em;
}
