/* Disciply Execution Console — Session Focus v2
   Visual-only. Non modifica ordini, MT5, feed o stato account. */

.session-focus-bar {
  width: 100%;
  display: grid;
  gap: 8px;
  margin-top: 1px;
}

.session-focus-trigger {
  width: 100%;
  min-height: 46px;
  padding: 7px 9px;
  display: grid;
  grid-template-columns: 32px minmax(0, 1fr) auto;
  align-items: center;
  gap: 9px;
  border: 1px solid rgba(240, 185, 11, 0.18);
  border-radius: 14px;
  background: linear-gradient(145deg, rgba(240, 185, 11, 0.055), rgba(255, 255, 255, 0.025));
  color: #d5dae2;
  text-align: left;
  font: inherit;
  cursor: pointer;
  transition: border-color 160ms ease, background 160ms ease, transform 160ms ease, box-shadow 160ms ease;
}

.session-focus-trigger:hover,
.session-focus-trigger:focus-visible {
  outline: none;
  border-color: rgba(240, 185, 11, 0.42);
  background: rgba(240, 185, 11, 0.085);
}

.session-focus-trigger__icon {
  width: 32px;
  height: 32px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 10px;
  border: 1px solid rgba(240, 185, 11, 0.19);
  background: rgba(240, 185, 11, 0.07);
  color: #f0b90b;
}

.session-focus-trigger__icon svg {
  width: 18px;
  height: 18px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.7;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.session-focus-trigger__copy {
  min-width: 0;
  display: grid;
  gap: 2px;
}

.session-focus-trigger__copy strong {
  color: #f3f5f8;
  font-size: 0.78rem;
  line-height: 1.05;
}

.session-focus-trigger__copy small {
  min-width: 0;
  overflow: hidden;
  color: #7f8793;
  font-size: 0.62rem;
  line-height: 1.1;
  white-space: nowrap;
  text-overflow: ellipsis;
}

.session-focus-trigger__state {
  min-width: 38px;
  min-height: 25px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0 8px;
  border-radius: 999px;
  border: 1px solid rgba(255, 255, 255, 0.09);
  background: rgba(255, 255, 255, 0.035);
  color: #7f8793;
  font-size: 0.58rem;
  font-weight: 900;
  letter-spacing: 0.06em;
}

.session-focus-trigger.is-active {
  border-color: rgba(240, 185, 11, 0.48);
  background: linear-gradient(145deg, rgba(240, 185, 11, 0.12), rgba(20, 18, 10, 0.7));
  box-shadow: 0 9px 24px rgba(0, 0, 0, 0.16), inset 0 1px 0 rgba(255, 255, 255, 0.03);
}

.session-focus-trigger.is-active .session-focus-trigger__state {
  border-color: rgba(240, 185, 11, 0.4);
  background: rgba(240, 185, 11, 0.13);
  color: #f0b90b;
}

.session-focus-bar__active {
  display: none;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 8px;
  align-items: center;
  padding: 8px;
  border: 1px solid rgba(240, 185, 11, 0.17);
  border-radius: 13px;
  background: rgba(7, 9, 13, 0.82);
}

.session-focus-bar.is-active .session-focus-bar__active {
  display: grid;
}

.session-focus-bar__metrics {
  min-width: 0;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 6px;
}

.session-focus-bar__metrics > div {
  min-width: 0;
  padding: 6px 7px;
  border-radius: 9px;
  border: 1px solid rgba(255, 255, 255, 0.05);
  background: rgba(255, 255, 255, 0.028);
}

.session-focus-bar__metrics span {
  display: block;
  margin-bottom: 2px;
  color: #666f7b;
  font-size: 0.52rem;
}

.session-focus-bar__metrics strong {
  display: block;
  overflow: hidden;
  color: #d8dce2;
  font-size: 0.65rem;
  white-space: nowrap;
  text-overflow: ellipsis;
}

.session-focus-bar[data-feed-state="live"] [data-focus-feed] { color: #57dda0; }
.session-focus-bar[data-feed-state="offline"] [data-focus-feed] { color: #ff7b86; }

.session-focus-bar__actions {
  display: flex;
  align-items: center;
  gap: 6px;
}

.session-focus-bar__actions button {
  min-height: 34px;
  padding: 0 9px;
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 9px;
  background: rgba(255, 255, 255, 0.04);
  color: #b8bec8;
  font: inherit;
  font-size: 0.6rem;
  font-weight: 800;
  cursor: pointer;
}

.session-focus-bar__actions [data-focus-exit] {
  border-color: rgba(240, 185, 11, 0.19);
  color: #f0b90b;
}

/* Focus cambia solo la densità visiva. Nessun controllo operativo viene disabilitato. */
.ec-session-focus .symbol-search,
.ec-session-focus .instrument-favorites {
  display: none !important;
}

.ec-session-focus .market-head { gap: 7px; }
.ec-session-focus .market-workspace { gap: 9px; }
.ec-session-focus .chart-zone,
.ec-session-focus .positions-panel { border-color: rgba(240, 185, 11, 0.12); }

.ec-session-focus #economicCalendarCard {
  max-height: 118px;
  overflow: hidden;
  opacity: 0.72;
  transition: max-height 180ms ease, opacity 180ms ease, border-color 180ms ease;
}

.ec-session-focus #economicCalendarCard .execution-economic-calendar__heading p,
.ec-session-focus #economicCalendarCard .execution-economic-calendar__filters,
.ec-session-focus #economicCalendarCard .execution-economic-calendar__xau-note,
.ec-session-focus #economicCalendarCard .execution-economic-calendar__notice,
.ec-session-focus #economicCalendarCard .execution-economic-calendar__footer {
  display: none !important;
}

.ec-session-focus #economicCalendarCard .execution-economic-calendar__list > *:not(:first-child) {
  display: none !important;
}

.ec-session-focus #economicCalendarCard .execution-economic-calendar__list {
  max-height: 48px;
  overflow: hidden;
}

.ec-session-focus.ec-focus-calendar-open #economicCalendarCard {
  max-height: 72dvh;
  overflow: auto;
  opacity: 1;
  border-color: rgba(240, 185, 11, 0.3);
}

.ec-session-focus.ec-focus-calendar-open #economicCalendarCard .execution-economic-calendar__heading p,
.ec-session-focus.ec-focus-calendar-open #economicCalendarCard .execution-economic-calendar__xau-note:not(.hidden),
.ec-session-focus.ec-focus-calendar-open #economicCalendarCard .execution-economic-calendar__notice:not(.hidden) {
  display: block !important;
}

.ec-session-focus.ec-focus-calendar-open #economicCalendarCard .execution-economic-calendar__filters,
.ec-session-focus.ec-focus-calendar-open #economicCalendarCard .execution-economic-calendar__footer {
  display: flex !important;
}

.ec-session-focus.ec-focus-calendar-open #economicCalendarCard .execution-economic-calendar__list {
  max-height: none;
  overflow: visible;
}

.ec-session-focus.ec-focus-calendar-open #economicCalendarCard .execution-economic-calendar__list > *:not(.hidden) {
  display: revert !important;
}

@media (max-width: 430px) {
  .session-focus-trigger {
    min-height: 44px;
    padding: 6px 8px;
    grid-template-columns: 30px minmax(0, 1fr) auto;
    gap: 8px;
  }

  .session-focus-trigger__icon {
    width: 30px;
    height: 30px;
  }

  .session-focus-trigger__copy strong { font-size: 0.74rem; }
  .session-focus-trigger__copy small { font-size: 0.59rem; }

  .session-focus-bar__active {
    grid-template-columns: 1fr;
  }

  .session-focus-bar__actions {
    display: grid;
    grid-template-columns: 1fr 1fr;
  }

  .session-focus-bar__actions button {
    min-height: 36px;
  }
}

@media (max-width: 360px) {
  .session-focus-trigger__copy small { display: none; }
  .session-focus-trigger__state { min-width: 34px; padding-inline: 6px; }
  .session-focus-bar__metrics > div { padding-inline: 5px; }
  .session-focus-bar__metrics strong { font-size: 0.61rem; }
}

@media (min-width: 720px) {
  .session-focus-bar {
    grid-template-columns: minmax(260px, 0.7fr) minmax(0, 1.3fr);
    align-items: start;
  }

  .session-focus-bar__active {
    display: none;
  }

  .session-focus-bar.is-active .session-focus-bar__active {
    display: grid;
  }
}

@media (prefers-reduced-motion: reduce) {
  .session-focus-trigger,
  .ec-session-focus #economicCalendarCard {
    transition: none !important;
  }
}
