/* Record presentation only: approved icon image files remain unchanged. */
body.predictionLabPage .predictionLab .plColumn{display:contents!important}
body.predictionLabPage .predictionLab .plLocked,
body.predictionLabPage .predictionLab .plDebrief{height:auto!important;min-height:0;align-self:start}
body.predictionLabPage .predictionLab .plLocked .plLockedGrid{
  display:block;grid-template-columns:minmax(0,1fr);flex:0;margin-top:8px;
}
body.predictionLabPage .predictionLab .plLocked .plSealed{height:auto;min-height:0;padding:12px}
body.predictionLabPage .plRecordRule,
body.predictionLabPage .plLifecycleStatus{font-size:12px;line-height:1.5;color:#b7ccd9;margin:8px 0 0}
body.predictionLabPage .plRecordRule{padding-top:10px;border-top:1px solid #24445c}
body.predictionLabPage .predictionLab .plLifecycle{height:auto;min-height:86px;margin:12px 6px 0;align-items:start}
body.predictionLabPage .predictionLab .plLifecycle>span{height:auto;min-height:86px;flex:0 0 58px;width:58px}
body.predictionLabPage .predictionLab .plLifecycle>span>small{font-size:11px;line-height:1.35;color:#a8bdcc}
body.predictionLabPage .plStepStatus{display:block;font-style:normal;text-transform:none;font-size:10px;margin-top:3px;color:#91a8b9}
body.predictionLabPage .predictionLab .plLifecycle>span>.plCosmicRasterIcon{box-shadow:none}
body.predictionLabPage .predictionLab .plLifecycle>span.isCurrent:not(.isDone)>.plCosmicRasterIcon,
body.predictionLabPage .predictionLab .plLifecycle>span.isNext>.plCosmicRasterIcon{
  outline:2px solid #c8e4f1;outline-offset:3px;
}
body.predictionLabPage .predictionLab .plLifecycle>span.isDone>.plCosmicRasterIcon{
  box-shadow:0 0 0 1px #48e1ed,0 0 14px #25d8eb80,0 0 26px #25d8eb35;
}
body.predictionLabPage .predictionLab .plLifecycle>span.isDone>small,
body.predictionLabPage .predictionLab .plLifecycle>span.isDone .plStepStatus{color:#7ceef5}
body.predictionLabPage .predictionLab .plLifecycle>span.isCurrent:not(.isDone) .plStepStatus,
body.predictionLabPage .predictionLab .plLifecycle>span.isNext .plStepStatus{font-weight:700;color:#edfaff}
body.predictionLabPage .predictionLab .plLifecycle>span.isDone+i{background:#48d6e3}
body.predictionLabPage .predictionLab .plSeal{color:#9ee9ef}
body.predictionLabPage .predictionLab .plDebrief .plCompare{grid-template-columns:repeat(2,minmax(0,1fr))}
body.predictionLabPage .predictionLab .plDebrief .plCompare .plResult{grid-column:1/-1}
body.predictionLabPage .predictionLab .plDebrief .plCompare .plBalls{flex-wrap:wrap}
body.predictionLabPage .predictionLab .plDebrief .plDebriefBottom{grid-template-columns:repeat(2,minmax(0,1fr))}
body.predictionLabPage .predictionLab .plDebrief .plNext{grid-column:1/-1}

/* A full-size waiting panel uses muted previews instead of a collapsed strip.
   Keep text readable: no opacity/filter on the whole section or approved art. */
body.predictionLabPage .plWaitingNotice{
  flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;
  gap:10px;padding:24px 16px;border:1px dashed #385264;border-radius:8px;
  background:#0a1b29;text-align:center;
}
body.predictionLabPage .plWaitingTag{
  display:inline-block;padding:4px 10px;border:1px solid #496273;border-radius:20px;
  color:#c0d0db;background:#152a39;font-size:12px;font-weight:650;
}
body.predictionLabPage .plWaitingNotice h3{margin:0;font-size:16px;line-height:1.4;color:#d5e1e9}
body.predictionLabPage .plWaitingNotice p{margin:0;max-width:42ch;font-size:13px;line-height:1.5;color:#adc1ce}
body.predictionLabPage .plWaitingComparison{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
body.predictionLabPage .plWaitingComparison>div{min-width:0;padding:12px;border:1px solid #293f50;border-radius:8px;background:#091925}
body.predictionLabPage .plWaitingComparison h3{margin:0 0 12px;font-size:12px;font-weight:600;color:#b8cbd7}
body.predictionLabPage .predictionLab .plWaitingBalls{gap:6px;flex-wrap:wrap;justify-content:center}
body.predictionLabPage .predictionLab .plWaitingBalls .plBall{width:30px;height:30px;flex:0 0 30px;font-size:12px}
body.predictionLabPage .predictionLab .plWaitingBalls .plBall.isEmpty{
  background:transparent;border:1px dashed #4b6475;color:#91a7b7;box-shadow:none;
}
body.predictionLabPage .plWaitingFootnote{margin:0;font-size:12px;line-height:1.5;color:#9eb4c3;text-align:center}

/* Keep Build / Fingerprint together, and pair the half-width record with its
   debrief. The waiting debrief stretches to fill the record's desktop row. */
@media (min-width:901px){
  body.predictionLabPage .predictionLab .plDashboard{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    grid-template-rows:auto!important;align-items:start;
  }
  body.predictionLabPage .predictionLab .plBuild{grid-column:1!important;grid-row:1!important}
  body.predictionLabPage .predictionLab .plFingerprint{grid-column:2!important;grid-row:1!important}
  body.predictionLabPage .predictionLab .plLocked{grid-column:1!important;grid-row:2!important;order:0}
  body.predictionLabPage .predictionLab .plDebrief{grid-column:2!important;grid-row:2!important;order:0}
  body.predictionLabPage .predictionLab :is(.plFirstRunGuide,.plControl.isContextual,.plBattles,.plAchievements){
    grid-column:1/-1!important;grid-row:auto!important;height:auto!important;
  }
  body.predictionLabPage .predictionLab .plFirstRunGuide{order:1}
  body.predictionLabPage .predictionLab .plControl.isContextual{order:2}
  body.predictionLabPage .predictionLab .plBattles{order:3}
  body.predictionLabPage .predictionLab .plAchievements{order:4}
}
@media (max-width:900px){
  body.predictionLabPage .predictionLab .plDashboard{grid-template-columns:minmax(0,1fr)!important}
  body.predictionLabPage .predictionLab .plPanel{grid-column:1!important;grid-row:auto!important}
}
@media (max-width:1100px){
  body.predictionLabPage .predictionLab .plDebrief .plCompare,
  body.predictionLabPage .predictionLab .plDebrief .plDebriefBottom{grid-template-columns:minmax(0,1fr)}
  body.predictionLabPage .plWaitingComparison{grid-template-columns:minmax(0,1fr)}
}
@media (max-width:380px){
  body.predictionLabPage .predictionLab .plLifecycle{margin-inline:0}
  body.predictionLabPage .predictionLab .plLifecycle>span{flex-basis:48px;width:48px}
  body.predictionLabPage .predictionLab .plLifecycle>span>small{font-size:10px}
}
