.daily-intraday-control {
  display: grid;
  gap: 8px;
  width: min(100%, 470px);
  margin-top: 8px;
  padding: 10px;
  border: 1px solid var(--gside-border);
  border-radius: 10px;
  background: #fbfcfd;
}

.daily-intraday-control.is-live-mode {
  border-color: #ead1ce;
  background: linear-gradient(135deg, #fffafa, #ffffff 58%, #fbfcfd);
}

.daily-intraday-control.is-armed:not(.is-live-mode) {
  border-color: #b9e2ed;
  background: linear-gradient(135deg, #f8fdff, #ffffff 62%, #fbfcfd);
}

.daily-intraday-control__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}

.daily-intraday-control__label {
  color: var(--gside-muted);
  font-size: 9px;
  font-weight: 850;
  letter-spacing: 0.055em;
  text-transform: uppercase;
}

.daily-intraday-control__state {
  display: inline-flex;
  align-items: center;
  min-height: 20px;
  padding: 3px 7px;
  border: 1px solid var(--gside-border);
  border-radius: 999px;
  background: var(--gside-surface);
  color: var(--gside-faint);
  font-size: 8px;
  font-weight: 850;
  letter-spacing: 0.035em;
  line-height: 1;
  text-transform: uppercase;
  white-space: nowrap;
}

.daily-intraday-control__state::before {
  width: 6px;
  height: 6px;
  margin-right: 5px;
  border-radius: 50%;
  background: #aab5c0;
  content: "";
}

.daily-intraday-control__state.is-armed {
  border-color: #b9e2ed;
  background: #eef9fc;
  color: #0d7089;
}

.daily-intraday-control__state.is-armed::before {
  background: #1195b6;
  box-shadow: 0 0 0 3px rgba(17, 149, 182, 0.1);
}

.daily-intraday-control__state.is-armed.is-live {
  border-color: #f0c7c2;
  background: #fff1f0;
  color: #a5251b;
}

.daily-intraday-control__state.is-armed.is-live::before {
  background: #d92d20;
  box-shadow: 0 0 0 3px rgba(217, 45, 32, 0.1);
}

.daily-intraday-control__state.is-managing {
  border-color: #eedcb2;
  background: #fff9eb;
  color: #885c0b;
}

.daily-intraday-control__state.is-managing::before {
  background: #d99b19;
}

.daily-intraday-control__controls {
  display: flex;
  align-items: end;
  gap: 8px;
  min-width: 0;
  flex-wrap: wrap;
}

.daily-intraday-control__group {
  display: grid;
  gap: 4px;
}

.daily-intraday-control__group-label {
  color: var(--gside-faint);
  font-size: 8px;
  font-weight: 800;
  letter-spacing: 0.045em;
  line-height: 1;
  text-transform: uppercase;
}

.daily-intraday-control__segments {
  display: inline-flex;
  align-items: center;
  padding: 2px;
  border: 1px solid var(--gside-border);
  border-radius: 8px;
  background: var(--gside-surface);
}

.daily-intraday-control__mode,
.daily-intraday-control__interval {
  min-height: 28px;
  padding: 5px 8px;
  border: 0;
  border-radius: 6px;
  background: transparent;
  color: var(--gside-muted);
  cursor: pointer;
  font: inherit;
  font-size: 9px;
  font-weight: 800;
  line-height: 1;
  white-space: nowrap;
}

.daily-intraday-control__mode:hover:not(:disabled),
.daily-intraday-control__interval:hover:not(:disabled) {
  background: var(--gside-surface-subtle);
  color: var(--gside-text);
}

.daily-intraday-control__mode.is-active,
.daily-intraday-control__interval.is-active {
  background: #eaf6f9;
  color: #0c647b;
  box-shadow: inset 0 0 0 1px #b9e2ed;
}

.daily-intraday-control__mode.is-active.is-live {
  background: #fff1f0;
  color: #a5251b;
  box-shadow: inset 0 0 0 1px #f0c7c2;
}

.daily-intraday-control__toggle {
  min-height: 34px;
  margin-left: auto;
  padding: 7px 11px;
  border: 1px solid var(--gside-border-strong);
  border-radius: 8px;
  background: var(--gside-surface);
  color: var(--gside-text);
  cursor: pointer;
  font: inherit;
  font-size: 9px;
  font-weight: 850;
  line-height: 1;
  white-space: nowrap;
}

.daily-intraday-control__toggle.is-start {
  border-color: var(--gside-accent);
  background: var(--gside-accent);
  color: #ffffff;
}

.daily-intraday-control__toggle.is-start:hover:not(:disabled) {
  border-color: var(--gside-accent-dark);
  background: var(--gside-accent-dark);
}

.daily-intraday-control__toggle.is-live-arm {
  border-color: #d92d20;
  background: #fff1f0;
  color: #a5251b;
}

.daily-intraday-control__toggle.is-live-arm:hover:not(:disabled) {
  background: #fee4e2;
}

.daily-intraday-control__toggle.is-stop {
  color: var(--gside-muted);
  background: #ffffff;
}

.daily-intraday-control__toggle.is-stop:hover:not(:disabled) {
  border-color: #f0c7c2;
  background: #fff7f6;
  color: #a5251b;
}

.daily-intraday-control__toggle.is-resume {
  border-color: #eedcb2;
  background: #fff9eb;
  color: #885c0b;
}

.daily-intraday-control__toggle:focus-visible,
.daily-intraday-control__mode:focus-visible,
.daily-intraday-control__interval:focus-visible {
  outline: 2px solid var(--gside-accent);
  outline-offset: 2px;
}

.daily-intraday-control__toggle:disabled,
.daily-intraday-control__mode:disabled,
.daily-intraday-control__interval:disabled {
  cursor: not-allowed;
  opacity: 0.5;
}

.daily-intraday-control__status {
  display: block;
  min-height: 13px;
  color: var(--gside-muted);
  font-size: 9px;
  font-weight: 700;
  line-height: 1.35;
}

.daily-intraday-control.is-live-mode .daily-intraday-control__status {
  color: #8f312a;
}

.daily-intraday-control__rule {
  display: flex;
  align-items: center;
  gap: 5px;
  color: var(--gside-faint);
  font-size: 8px;
  line-height: 1.35;
  flex-wrap: wrap;
}

.daily-intraday-control__rule span {
  color: var(--gside-muted);
  font-weight: 800;
  letter-spacing: 0.035em;
  text-transform: uppercase;
}

.daily-intraday-control__rule i {
  color: var(--gside-border-strong);
  font-style: normal;
}

.daily-intraday-control.is-busy {
  opacity: 0.74;
}

@media (max-width: 640px) {
  .daily-intraday-control {
    width: 100%;
  }

  .daily-intraday-control__controls {
    align-items: stretch;
  }

  .daily-intraday-control__group {
    flex: 1 1 auto;
  }

  .daily-intraday-control__segments {
    width: 100%;
  }

  .daily-intraday-control__mode,
  .daily-intraday-control__interval {
    min-height: 32px;
    flex: 1 1 auto;
    padding-right: 9px;
    padding-left: 9px;
    font-size: 10px;
  }

  .daily-intraday-control__toggle {
    width: 100%;
    min-height: 38px;
    margin-left: 0;
    font-size: 10px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .daily-intraday-control {
    transition: none;
  }
}


/* Compact per-row strategy selector + D-1 quality health for stock-screen tables. */
.daily-intraday-control {
  width: min(100%, 540px);
}

.daily-intraday-control__strategy-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 126px;
  gap: 8px;
  align-items: end;
}

.daily-intraday-control__group--strategy {
  min-width: 0;
}

.daily-intraday-control__select {
  width: 100%;
  min-width: 0;
  min-height: 34px;
  padding: 7px 28px 7px 9px;
  border: 1px solid #b9e2ed;
  border-radius: 8px;
  background: linear-gradient(135deg, #f8fdff, #ffffff);
  color: #0f172a;
  font: inherit;
  font-size: 9px;
  font-weight: 800;
}

.daily-intraday-control__select:focus-visible {
  outline: 2px solid #00b8d9;
  outline-offset: 2px;
}

.daily-intraday-control__select:disabled {
  cursor: not-allowed;
  opacity: 0.65;
}

.daily-intraday-quality {
  display: grid;
  grid-template-columns: auto 1fr auto;
  grid-template-areas:
    "score score status"
    "detail detail detail";
  gap: 2px 5px;
  min-width: 0;
  min-height: 51px;
  padding: 7px 8px;
  border: 1px solid #dbe4ee;
  border-radius: 9px;
  background: #f8fafc;
}

.daily-intraday-quality strong {
  grid-area: score;
  color: #334155;
  font-size: 13px;
  font-variant-numeric: tabular-nums;
}

.daily-intraday-quality small {
  grid-area: detail;
  overflow: hidden;
  color: #64748b;
  font-size: 7.5px;
  font-weight: 700;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.daily-intraday-quality i {
  grid-area: status;
  align-self: start;
  padding: 3px 5px;
  border-radius: 999px;
  font-size: 7px;
  font-style: normal;
  font-weight: 900;
  letter-spacing: 0.04em;
}

.daily-intraday-quality.is-pass {
  border-color: #86efac;
  background: linear-gradient(135deg, #f0fdf4, #ecfeff);
}

.daily-intraday-quality.is-pass strong { color: #008f4c; }
.daily-intraday-quality.is-pass i { background: #dcfce7; color: #047857; }

.daily-intraday-quality.is-fail {
  border-color: #fdba74;
  background: linear-gradient(135deg, #fff7ed, #fffbeb);
}

.daily-intraday-quality.is-fail strong { color: #c2410c; }
.daily-intraday-quality.is-fail i { background: #ffedd5; color: #c2410c; }

.daily-intraday-control.is-quality-ready:not(.is-live-mode) {
  border-color: rgba(0, 200, 83, 0.3);
  background:
    radial-gradient(circle at 0 0, rgba(163, 255, 18, 0.08), transparent 12rem),
    linear-gradient(135deg, #f8fffb, #ffffff 64%, #f5fdff);
}

@media (max-width: 640px) {
  .daily-intraday-control__strategy-row {
    grid-template-columns: 1fr;
  }

  .daily-intraday-quality {
    min-height: 45px;
  }
}
