/* EMWave v1.4.5a — Status Bar ownership extraction.
   Rules moved 1:1 from instrument.css; no selector or visual changes intended. */



/* ===== button.css ===== */
/* EMWave v1.4.0 — Shared button primitives owner.
   Existing button rules remain in controls/header/labs to avoid visual regression. */

/* ===== panel.css ===== */
/* EMWave v1.4.0 — Panel primitives owner.
   Reserved for shared cards/panels as duplicated lab panel rules are consolidated. */

/* ===== table.css ===== */
/* EMWave v1.4.0 — Table primitives owner.
   Existing data-table rules remain near their lab/help owners until the next consolidation pass. */

/* ===== cockpit.css ===== */


/* ===== footer.css ===== */
/* EMWave v1.4.0w — footer/status-strip ownership
   Worker state, source state, FPS, experiment, runtime, instrument name and
   version readouts live here. */
.statusbar{
  height:var(--footer-height);
  display:flex;
  align-items:center;
  gap:var(--space-4);
  min-width:0;
  min-height:22px;
  padding:2px var(--space-4);
  overflow:hidden;
  white-space:nowrap;
  font-size:var(--font-size-sm);
  line-height:1;
  color:var(--color-text-status);
  background:var(--color-bg-panel);
  border-top:1px solid var(--color-border-soft);
}
.status_chip{ display:inline-flex; align-items:baseline; gap:var(--space-1); white-space:nowrap; }
.status_label{ color:var(--color-text-status-label); font-size:var(--font-size-xs); text-transform:uppercase; letter-spacing:.08em; }
.status_value{ color:var(--color-text-ui); font-weight:500; font-variant-numeric:tabular-nums; }
.status_chip--brand .status_value{ color:var(--color-text-brand); font-weight:600; }
.status_chip::after{ content:"|"; margin:0 var(--space-4); color:#3e4350; }
.status_chip:last-child::after{ display:none; }
.status_value.is-good{ color:var(--color-good); }
.status_value.is-warn{ color:var(--color-warn); }
.status_value.is-bad{ color:var(--color-bad); }
#footerAudioStatus.is-good,
#audioStatus.is-good{
  color:var(--color-good);
}
#footerAudioStatus.is-bad,
#audioStatus.is-bad{
  color:var(--color-bad);
}
html.help-document .statusbar{
  flex:0 0 auto;
}
#footerExperimentStatus{ color:#b9d7ff; }
body:not(.help-page) .statusbar{
  overflow-x:auto;
  overflow-y:hidden;
  scrollbar-width:thin;
}
body:not(.help-page) .status_chip{
  flex:0 0 auto;
}@media (max-width:1100px){

  body:not(.help-page) .statusbar{
    overflow-x:auto;
    overflow-y:hidden;
    scrollbar-width:none;
  }
  body:not(.help-page) .statusbar::-webkit-scrollbar{ display:none; }
}
body:not(.help-page) .statusbar{
  overflow:hidden;
  scrollbar-width:none;
  gap:6px;
}
body:not(.help-page) .statusbar::-webkit-scrollbar{ display:none; }
body:not(.help-page) .status_chip{
  flex:1 1 0;
  min-width:0;
  overflow:hidden;
  gap:3px;
}
body:not(.help-page) .status_chip--brand{
  flex:0 1 170px;
}
body:not(.help-page) .status_label{
  flex:0 0 auto;
}
body:not(.help-page) .status_value{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
body:not(.help-page) .status_chip::after{
  flex:0 0 auto;
  margin:0 4px;
}@media (max-width:1100px){

  body:not(.help-page) .status_label{ display:none; }
  body:not(.help-page) .status_chip--brand{ flex-basis:130px; }
}
.status_chip--version{ opacity:.58; }
.status_chip--version .status_value{ color:var(--color-text-status-label); font-size:10px; }
body:not(.help-page) .statusbar{
  grid-row:3 / 4;
  margin-left:340px;
  width:calc(100vw - 340px);
  min-width:0;
}
body.plot-focus:not(.help-page) .plot-deck,
body.plot-focus:not(.help-page) .statusbar{
  margin-left:0;
  width:100vw;
}@media (max-width:1280px){

  body:not(.help-page) .plot-deck,
  body:not(.help-page) .statusbar{
    margin-left:300px;
    width:calc(100vw - 300px);
  }
}@media (max-width:820px){

  body:not(.help-page) .plot-deck,
  body:not(.help-page) .statusbar{
    margin-left:0;
    width:100%;
  }
}
body:not(.help-page) .statusbar{
  grid-column:1 / -1;
  grid-row:3 / 4;
  margin-left:0;
  width:100%;
}@media (max-width:820px){

  body:not(.help-page) .statusbar{
    grid-column:1;
    grid-row:4;
  }
}
body:not(.help-page) .statusbar{
  position:relative;
  z-index:20;
}
body:not(.help-page).analysis-large-dock-active .statusbar{
  grid-column:1 / -1;
  grid-row:3 / 4;
  position:static;
  height:22px;
  min-height:22px;
  max-height:22px;
  width:100%;
  margin:0;
  overflow:hidden;
  z-index:25;
}@media (max-width:820px){

  body:not(.help-page).analysis-large-dock-active .statusbar{
    grid-column:1;
    grid-row:4;
  }
}
.status_chip .status_value{ min-width:0; overflow:hidden; text-overflow:ellipsis; }
body.plot-focus:not(.help-page) .statusbar{
  min-height:20px;
  height:20px;
  padding:1px 8px;
  font-size:9px;
  opacity:.92;
}
body.plot-focus:not(.help-page) .status_label{
  font-size:8px;
  letter-spacing:.04em;
}
body.plot-focus:not(.help-page) .status_chip{
  gap:2px;
}
body.plot-focus:not(.help-page) .status_chip::after{
  margin:0 6px;
}
body:not(.help-page) .statusbar,
.statusbar--manual{
  min-height:22px;
  height:22px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  padding:0 10px;
  overflow:hidden;
  white-space:nowrap;
  border-top:1px solid rgba(143,212,255,.14);
  background:linear-gradient(180deg,#111720,#0c1118);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.025);
}
.status_group{
  min-width:0;
  display:inline-flex;
  align-items:center;
  gap:0;
  overflow:hidden;
}
.status_group--live{ flex:1 1 auto; justify-content:flex-start; }
.status_group--telemetry{ flex:1 1 auto; justify-content:center; }
.status_group--build{ flex:0 1 auto; justify-content:flex-end; }
.status_chip{
  min-width:0;
  display:inline-flex;
  align-items:baseline;
  gap:4px;
  height:18px;
  line-height:18px;
  padding:0 0 0 8px;
  overflow:hidden;
  border-left:1px solid rgba(79,91,110,.56);
  white-space:nowrap;
}
.status_group .status_chip:first-child{
  padding-left:0;
  border-left:none;
}
.status_chip::after{ display:none; }
.status_label{
  flex:0 0 auto;
  color:#667386;
  font-size:9px;
  letter-spacing:.105em;
  text-transform:uppercase;
}
.status_value{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  color:#cdd7e6;
  font-family:"Roboto Mono","Consolas",monospace;
  font-size:10px;
  font-weight:500;
  font-variant-numeric:tabular-nums;
}
.status_chip--run .status_label,
.status_chip--lab .status_label{ color:#8fd4ff; }
.status_chip--brand .status_value{ color:#9fb7ff; font-weight:700; }
.status_chip--version .status_value{ color:#9aa7ba; }
.status_value.is-good{ color:#89d185; }
.status_value.is-warn{ color:#e6c86e; }
.status_value.is-bad{ color:#e06c75; }@media (max-width:1500px){

  .status_group--build .status_chip:first-child{ display:none; }
}@media (max-width:1320px){

  .status_group--telemetry .status_chip:nth-child(3){ display:none; }
  .status_group--build .status_chip:nth-child(2){ display:none; }
}@media (max-width:1180px){

  body:not(.help-page) .statusbar,
  .statusbar--manual{ justify-content:flex-start; gap:8px; }
  .status_group--telemetry{ justify-content:flex-start; }
  .status_group--build{ display:none; }
}@media (max-width:980px){

  .status_group--telemetry .status_chip:nth-child(2),
  .status_group--telemetry .status_chip:nth-child(4){ display:none; }
  .status_chip--source{ display:none; }
}@media (max-width:820px){

  body:not(.help-page) .statusbar,
  .statusbar--manual{
    height:auto;
    min-height:22px;
    flex-wrap:wrap;
    white-space:normal;
    padding:3px 8px;
  }
  .status_group{ flex-wrap:wrap; row-gap:2px; }
}
body:not(.help-page) .statusbar{ grid-column:1 / -1; grid-row:3 / 4; }@media (max-width:1100px){

  body:not(.help-page) .statusbar{ grid-column:1; grid-row:4; }
}
body:not(.help-page) .statusbar{
  grid-column:1 / -1;
  grid-row:3 / 4;
}@media (max-width:1100px){

  body:not(.help-page) .statusbar{
    grid-column:1;
    grid-row:4;
  }
}
.dev-tools-toggle .status_label{
  font-size:9px;
  letter-spacing:.08em;
}