/* ============================================================
   ongoing.css — "Mission Control" live ops board
   ============================================================ */

/* ---- header live stats ---- */
.mc-stats{display:flex;flex-wrap:wrap;gap:14px;margin-top:30px;}
.mc-stat{flex:1 1 150px;min-width:150px;padding:18px 20px;border-radius:18px;
  border:1px solid var(--stroke);background:var(--panel);position:relative;overflow:hidden;}
.mc-stat .n{font-family:var(--display);font-weight:700;font-size:clamp(28px,3.4vw,40px);line-height:1;
  background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent;}
.mc-stat .l{font-size:12.5px;color:var(--ink-soft);margin-top:8px;letter-spacing:.02em;}
.mc-stat .pulse-dot{position:absolute;top:16px;right:16px;width:8px;height:8px;border-radius:50%;
  background:#2bd47f;box-shadow:0 0 0 0 rgba(43,212,127,.6);animation:livePulse 2s ease-out infinite;}
@keyframes livePulse{0%{box-shadow:0 0 0 0 rgba(43,212,127,.55);}70%{box-shadow:0 0 0 9px rgba(43,212,127,0);}100%{box-shadow:0 0 0 0 rgba(43,212,127,0);}}

/* ---- legend ---- */
.mc-legend{display:flex;flex-wrap:wrap;gap:16px;margin-top:24px;}
.mc-leg{display:flex;align-items:center;gap:8px;font-size:12.5px;color:var(--ink-soft);}
.mc-leg .d{width:9px;height:9px;border-radius:50%;}

/* ---- board grid ---- */
.mc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:26px;}

.mc-card{position:relative;border-radius:20px;border:1px solid var(--stroke);background:var(--panel);
  overflow:hidden;display:flex;flex-direction:column;cursor:pointer;
  transition:transform .4s var(--ease), box-shadow .4s, border-color .4s;}
.mc-card:hover{transform:translateY(-6px);border-color:var(--stroke-2);
  box-shadow:0 26px 60px rgba(0,0,0,.5), 0 0 40px color-mix(in srgb, var(--s) 22%, transparent);}
.mc-card::before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--s);
  box-shadow:0 0 16px var(--s);opacity:.9;z-index:3;}

/* preview */
.mc-prev-wrap{position:relative;width:100%;}
.mc-prev{position:relative;width:100%;aspect-ratio:16/10;border:none;border-radius:0;
  border-bottom:1px solid var(--stroke);display:block;
  --is-bg:linear-gradient(135deg, color-mix(in srgb, var(--s) 26%, transparent), rgba(6,9,18,.5));}
img.mc-prev{object-fit:cover;background:#070b15;}
.mc-prev-wrap .mc-status{position:absolute;top:12px;left:12px;z-index:2;
  display:inline-flex;align-items:center;gap:7px;padding:6px 12px;border-radius:30px;
  font-family:var(--display);font-size:11px;letter-spacing:.05em;color:#fff;
  background:color-mix(in srgb, var(--s) 30%, rgba(6,9,18,.72));border:1px solid color-mix(in srgb, var(--s) 60%, transparent);
  backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);}
.mc-status .sd{width:7px;height:7px;border-radius:50%;background:var(--s);box-shadow:0 0 8px var(--s);}
.mc-card[data-status="execution"] .mc-status .sd{animation:livePulse 1.8s ease-out infinite;}
.mc-prev-wrap .mc-updated{position:absolute;top:12px;right:12px;z-index:2;font-family:var(--display);font-size:10.5px;
  letter-spacing:.04em;color:var(--ink-soft);background:rgba(6,9,18,.6);padding:5px 9px;border-radius:20px;
  backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);}

/* body */
.mc-body{padding:18px 18px 16px;display:flex;flex-direction:column;gap:11px;flex:1;}
.mc-cat{font-family:var(--display);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-dim);}
.mc-name{font-family:var(--display);font-weight:600;font-size:19px;line-height:1.15;color:var(--ink);}
.mc-client{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--ink-soft);}
.mc-client .ava{width:22px;height:22px;border-radius:50%;background:var(--grad-soft);flex:none;
  display:flex;align-items:center;justify-content:center;font-family:var(--display);font-weight:700;font-size:10px;color:#fff;}
.mc-client.conf{color:var(--c3);}
.mc-client.conf .lock{width:22px;height:22px;border-radius:6px;border:1px solid var(--stroke-2);
  display:flex;align-items:center;justify-content:center;font-size:11px;background:rgba(255,255,255,.03);}

/* progress */
.mc-prog{margin-top:2px;}
.mc-prog .row{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:7px;}
.mc-prog .pl{font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-dim);}
.mc-prog .pv{font-family:var(--display);font-weight:700;font-size:14px;color:var(--s);}
.mc-track{height:7px;border-radius:20px;background:rgba(255,255,255,.07);overflow:hidden;}
.mc-track > span{display:block;height:100%;width:0;border-radius:20px;
  background:linear-gradient(90deg, color-mix(in srgb, var(--s) 60%, #2283c6), var(--s));
  box-shadow:0 0 14px color-mix(in srgb, var(--s) 70%, transparent);transition:width 1.1s var(--ease);}

/* expandable details */
.mc-more{display:grid;grid-template-rows:0fr;transition:grid-template-rows .45s var(--ease);}
.mc-more > div{overflow:hidden;}
.mc-card.open .mc-more{grid-template-rows:1fr;}
.mc-desc{font-size:13.5px;color:var(--ink-soft);line-height:1.55;padding-top:14px;}
.mc-meta{display:flex;flex-direction:column;gap:7px;margin-top:14px;}
.mc-meta .kv{font-size:11px;letter-spacing:.05em;text-transform:uppercase;color:var(--ink-dim);
  display:flex;flex-direction:column;gap:2px;}
.mc-meta .kv span{font-family:var(--body);font-weight:400;text-transform:none;letter-spacing:0;
  color:var(--ink-soft);font-size:13px;}
.mc-meta .kv a{color:var(--c3);text-decoration:none;border-bottom:1px solid color-mix(in srgb, var(--c3) 40%, transparent);transition:border-color .2s;}
.mc-meta .kv a:hover{border-color:var(--c3);}
.mc-expand{display:flex;align-items:center;gap:6px;margin-top:14px;font-family:var(--display);
  font-size:12px;letter-spacing:.04em;color:var(--ink-dim);}
.mc-expand .chev{transition:transform .35s var(--ease);}
.mc-card.open .mc-expand .chev{transform:rotate(180deg);}
.mc-card.open .mc-expand{color:var(--s);}

@media (max-width:1000px){
  .mc-grid{grid-template-columns:repeat(2,1fr);gap:16px;}
  .mc-stat{flex-basis:calc(50% - 7px);}
}
@media (max-width:600px){
  .mc-grid{grid-template-columns:1fr;}
  .mc-stat{flex-basis:calc(50% - 7px);min-width:0;padding:15px 16px;}
  .mc-stats{gap:10px;}
  .mc-legend{gap:10px 14px;}
  .mc-leg{font-size:11.5px;}
  .mc-name{font-size:18px;}
  .mc-cat{font-size:11px;line-height:1.5;}
  .mc-status{font-size:10px;}
  .mc-updated{font-size:9.5px;}
  .mc-prev-wrap .mc-status,.mc-prev-wrap .mc-updated{top:10px;}
  .mc-prev-wrap .mc-status{left:10px;}
  .mc-prev-wrap .mc-updated{right:10px;}
  .mc-meta .kv span{font-size:12.5px;}
}
@media (max-width:400px){
  .mc-stat{flex-basis:100%;}
}
