/* Correct Trade Trading Desk only */

.desk-v2-clean {
  display: block;
}

.desk-v2-clean *,
.desk-v2-clean *::before,
.desk-v2-clean *::after {
  box-sizing: border-box;
}

.desk-v2-clean button,
.desk-v2-clean select {
  font: inherit;
}

.desk-v2-clean-head {
  display: none;
}

.desk-position-control {
  margin-bottom: 14px;
}

.desk-position-inline {
  display: grid;
  gap: 6px;
}

.desk-position-inline span,
.desk-v2-panel-head span,
.desk-v2-setup-category-label {
  color: rgba(16, 18, 20, 0.56);
  font-size: 11px;
  font-weight: 900;
  letter-spacing: 0.16em;
  line-height: 1.2;
  text-transform: uppercase;
}

.desk-position-inline select,
.desk-v2-setup-select {
  width: 100%;
  min-height: 42px;
  padding: 7px 12px;
  border: 1px solid rgba(16, 18, 20, 0.1);
  border-radius: 12px;
  background: #fff;
  color: #101214;
  font-size: 15px;
  font-weight: 850;
}

.desk-v2-clock-row {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  margin-bottom: 14px;
}

.desk-v2-clock-card,
.desk-v2-clock {
  display: grid;
  gap: 4px;
  min-width: 0;
  min-height: 78px;
  padding: 14px 12px;
  border: 1px solid rgba(16, 18, 20, 0.08);
  border-radius: 18px;
  background: #fff;
  color: #101214;
  text-align: center;
  cursor: pointer;
}

.desk-v2-clock-card.is-active,
.desk-v2-clock.is-active,
[data-clock-market].is-active,
[data-market-id].is-active {
  border-color: rgba(25, 199, 182, 0.55);
  box-shadow: 0 0 0 3px rgba(25, 199, 182, 0.12);
}

.desk-v2-clock-label {
  font-size: 11px;
  font-weight: 900;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  opacity: 0.72;
}

.desk-v2-clock-time {
  font-size: 22px;
  line-height: 1;
}

.desk-v2-clock-role {
  font-size: 11px;
  font-weight: 900;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  opacity: 0.72;
}

.desk-v2-layout,
.desk-v2-action-row {
  display: grid;
  gap: 14px;
}

.desk-v2-panel {
  width: 100%;
  padding: 16px;
  border: 1px solid rgba(16, 18, 20, 0.08);
  border-radius: 22px;
  background: #fff;
  box-shadow: 0 14px 36px rgba(16, 18, 20, 0.04);
}

.desk-v2-panel-head,
.desk-v2-screen-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding-bottom: 12px;
  margin-bottom: 12px;
  border-bottom: 1px solid rgba(16, 18, 20, 0.08);
}

.desk-v2-panel-head strong,
.desk-v2-screen-top strong {
  color: #101214;
  font-size: 18px;
  line-height: 1.15;
}

.desk-v2-screen-top span,
[data-desk-step-count] {
  color: rgba(16, 18, 20, 0.68);
  font-weight: 800;
}

[data-desk-active-meta] {
  display: block;
  margin-top: 3px;
  color: rgba(16, 18, 20, 0.64);
  font-size: 14px;
  font-weight: 650;
}

.desk-v2-setup-category-label {
  display: block;
  margin: 0 0 6px;
}

.desk-v2-setup-select {
  margin-bottom: 14px;
}

[data-desk-watchlist] {
  width: 100%;
}

.desk-v2-setup-chip-row,
.desk-v2-step-chip-row {
  display: flex;
  flex-flow: row wrap;
  align-items: center;
  justify-content: flex-start;
  align-content: flex-start;
  gap: 8px;
  width: 100%;
  overflow: visible;
}

.desk-v2-setup-chip,
.desk-v2-step-chip-row button,
.desk-v2-step-buttons button,
[data-desk-actions] button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: auto;
  min-width: 0;
  max-width: none;
  min-height: 34px;
  margin: 0;
  padding: 8px 13px;
  border: 1px solid rgba(16, 18, 20, 0.09);
  border-radius: 999px;
  background: #fff;
  color: #101214;
  font-size: 13px;
  font-weight: 850;
  line-height: 1;
  text-align: center;
  white-space: nowrap;
  cursor: pointer;
  appearance: none;
}

.desk-v2-setup-chip.is-active,
.desk-v2-step-chip-row button.is-active {
  border-color: #19c7b6;
  background: #19c7b6;
  color: #061514;
}

[data-desk-chart] {
  width: 100%;
  min-height: 170px;
  margin-top: 12px;
  border-radius: 18px;
  overflow: hidden;
  color: #19b9ad;
}

[data-desk-chart] svg {
  display: block;
  width: 100%;
  height: 190px;
  background: rgba(25, 199, 182, 0.04);
}

.desk-v2-chart-meta {
  margin-top: 12px;
}

.desk-v2-step-chip-row {
  margin-bottom: 12px;
}

.desk-v2-scenario {
  margin-top: 12px;
}

.desk-v2-step-card {
  padding: 14px;
  border-radius: 18px;
  background: rgba(16, 18, 20, 0.04);
}

.desk-v2-step-card-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.desk-v2-step-card-head strong {
  color: #101214;
  font-size: 18px;
  line-height: 1.15;
}

.desk-v2-step-card-head span {
  color: #101214;
  font-weight: 850;
}

.desk-v2-step-card p {
  margin: 6px 0 12px;
  color: rgba(16, 18, 20, 0.7);
  line-height: 1.35;
}

.desk-v2-step-buttons {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}

.desk-v2-step-buttons button:disabled {
  opacity: 0.35;
  cursor: not-allowed;
}

.desk-v2-gauge-row {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
  width: 100%;
}

.desk-v2-gauge {
  min-width: 0;
  padding: 12px;
  border: 1px solid rgba(16, 18, 20, 0.06);
  border-radius: 14px;
  background: #fff;
}

.desk-v2-gauge span {
  display: block;
  margin-bottom: 8px;
  color: rgba(16, 18, 20, 0.55);
  font-size: 10px;
  font-weight: 900;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.desk-v2-gauge strong {
  display: block;
  min-width: 0;
  color: #101214;
  font-size: 14px;
  line-height: 1.15;
}

[data-desk-actions] {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
}

[data-desk-log] {
  display: grid;
  gap: 8px;
}

[data-desk-log]:empty::before {
  content: none;
}

.desk-v2-empty-log {
  margin: 0;
  padding: 14px;
  border-radius: 14px;
  background: rgba(16, 18, 20, 0.04);
  color: rgba(16, 18, 20, 0.68);
}

.desk-v2-log-item {
  display: grid;
  gap: 4px;
  padding: 12px;
  border: 1px solid rgba(16, 18, 20, 0.06);
  border-radius: 14px;
  background: #fff;
}

.desk-v2-log-item span {
  color: rgba(16, 18, 20, 0.65);
  font-size: 13px;
}

.desk-v2-tabs,
[data-desk-tabs],
.desk-v2-market-chip,
[data-market-index],
.desk-v2-setup-summary,
[data-desk-journal] {
  display: none;
}

@media (max-width: 760px) {
  .desk-v2-clock-row {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 8px;
  }

  .desk-v2-clock-card,
  .desk-v2-clock {
    min-height: 68px;
    padding: 11px 8px;
    border-radius: 16px;
  }

  .desk-v2-clock-time {
    font-size: 18px;
  }

  .desk-v2-clock-label,
  .desk-v2-clock-role {
    font-size: 9px;
  }

  .desk-v2-panel {
    padding: 14px;
    border-radius: 20px;
  }

  .desk-v2-panel-head strong,
  .desk-v2-screen-top strong {
    font-size: 16px;
  }

  .desk-v2-setup-chip,
  .desk-v2-step-chip-row button {
    min-height: 32px;
    padding: 8px 11px;
    font-size: 12px;
  }

  .desk-v2-step-buttons button,
  [data-desk-actions] button {
    min-height: 34px;
    padding: 8px 10px;
    font-size: 12px;
  }

  .desk-v2-gauge-row,
  [data-desk-actions] {
    grid-template-columns: repeat(4, minmax(64px, 1fr));
    overflow-x: auto;
  }
}

/* FINAL DESK VISUAL CLEANUP */
/* Keep this block at the bottom of desk-v2.css. Do not move to simulator.css. */

body:has(.desk-v2-clean) .desk-position-control {
  width: 100% !important;
  margin: 0 0 12px !important;
}

body:has(.desk-v2-clean) .desk-position-inline {
  display: grid !important;
  grid-template-columns: auto minmax(0, 1fr) !important;
  align-items: center !important;
  gap: 10px !important;
  width: 100% !important;
}

body:has(.desk-v2-clean) .desk-position-inline span {
  white-space: nowrap !important;
  font-size: 11px !important;
  font-weight: 900 !important;
  letter-spacing: 0.14em !important;
  text-transform: uppercase !important;
  opacity: 0.62 !important;
}

body:has(.desk-v2-clean) .desk-position-inline select,
body:has(.desk-v2-clean) .desk-v2-setup-select {
  height: 34px !important;
  min-height: 34px !important;
  width: 100% !important;
  padding: 4px 34px 4px 10px !important;
  border-radius: 10px !important;
  font-size: 14px !important;
  line-height: 1 !important;
  font-weight: 700 !important;
  text-align: center !important;
  text-align-last: center !important;
  background-color: #fff !important;
}

body:has(.desk-v2-clean) .desk-v2-clock-row,
body:has(.desk-v2-clean) [data-desk-clocks] {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 8px !important;
  width: 100% !important;
}

body:has(.desk-v2-clean) .desk-v2-clock-card,
body:has(.desk-v2-clean) .desk-v2-clock {
  min-width: 0 !important;
  padding: 10px 6px !important;
  text-align: center !important;
}

body:has(.desk-v2-clean) .desk-v2-clock-label,
body:has(.desk-v2-clean) .desk-v2-clock-role {
  display: block !important;
  white-space: nowrap !important;
  font-size: 10px !important;
  line-height: 1.05 !important;
  letter-spacing: 0.16em !important;
  font-weight: 900 !important;
}

body:has(.desk-v2-clean) .desk-v2-clock-time {
  display: block !important;
  white-space: nowrap !important;
  font-size: 17px !important;
  line-height: 1.15 !important;
  font-weight: 900 !important;
}

body:has(.desk-v2-clean) .desk-v2-setup-category-label {
  margin: 10px 0 5px !important;
  font-size: 11px !important;
  font-weight: 900 !important;
  letter-spacing: 0.16em !important;
  text-transform: uppercase !important;
  opacity: 0.62 !important;
}

body:has(.desk-v2-clean) .desk-v2-setup-chip-row {
  display: flex !important;
  flex-flow: row wrap !important;
  justify-content: center !important;
  align-items: center !important;
  gap: 8px !important;
  width: 100% !important;
  margin: 10px auto 0 !important;
  overflow: visible !important;
}

body:has(.desk-v2-clean) .desk-v2-setup-chip {
  flex: 0 0 auto !important;
  min-width: 0 !important;
  width: auto !important;
  max-width: none !important;
  padding: 8px 13px !important;
  border-radius: 999px !important;
  font-size: 14px !important;
  line-height: 1 !important;
  font-weight: 700 !important;
  letter-spacing: 0 !important;
  text-align: center !important;
  white-space: nowrap !important;
}

body:has(.desk-v2-clean) .desk-v2-main-screen {
  overflow: hidden !important;
}

body:has(.desk-v2-clean) .desk-v2-chart-meta {
  display: grid !important;
  gap: 12px !important;
  margin-top: 12px !important;
}

body:has(.desk-v2-clean) .desk-v2-step-chip-row {
  order: 1 !important;
  display: flex !important;
  flex-flow: row nowrap !important;
  justify-content: center !important;
  align-items: center !important;
  gap: 8px !important;
  width: 100% !important;
  overflow-x: auto !important;
  overflow-y: hidden !important;
  padding: 0 0 2px !important;
  -webkit-overflow-scrolling: touch !important;
}

body:has(.desk-v2-clean) .desk-v2-step-card {
  order: 2 !important;
}

body:has(.desk-v2-clean) .desk-v2-step-chip-row button {
  flex: 0 0 auto !important;
  min-width: 0 !important;
  width: auto !important;
  padding: 8px 12px !important;
  border-radius: 999px !important;
  font-size: 13px !important;
  line-height: 1 !important;
  font-weight: 700 !important;
  white-space: nowrap !important;
}

body:has(.desk-v2-clean) .desk-v2-step-buttons,
body:has(.desk-v2-clean) .desk-v2-step-actions {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 8px !important;
}

body:has(.desk-v2-clean) .desk-v2-step-buttons button,
body:has(.desk-v2-clean) .desk-v2-step-actions button {
  width: 100% !important;
  min-width: 0 !important;
  padding: 9px 12px !important;
  font-size: 13px !important;
  line-height: 1 !important;
  font-weight: 800 !important;
}

@media (max-width: 640px) {
  body:has(.desk-v2-clean) .desk-position-inline {
    grid-template-columns: auto minmax(0, 1fr) !important;
    gap: 8px !important;
  }

  body:has(.desk-v2-clean) .desk-position-inline span {
    font-size: 10px !important;
    letter-spacing: 0.11em !important;
  }

  body:has(.desk-v2-clean) .desk-position-inline select,
  body:has(.desk-v2-clean) .desk-v2-setup-select {
    height: 32px !important;
    min-height: 32px !important;
    font-size: 13px !important;
  }

  body:has(.desk-v2-clean) .desk-v2-clock-card,
  body:has(.desk-v2-clean) .desk-v2-clock {
    padding: 9px 4px !important;
  }

  body:has(.desk-v2-clean) .desk-v2-clock-label,
  body:has(.desk-v2-clean) .desk-v2-clock-role {
    font-size: 8.5px !important;
    letter-spacing: 0.12em !important;
  }

  body:has(.desk-v2-clean) .desk-v2-clock-time {
    font-size: 15px !important;
  }

  body:has(.desk-v2-clean) .desk-v2-setup-chip {
    padding: 7px 11px !important;
    font-size: 13px !important;
  }

  body:has(.desk-v2-clean) .desk-v2-step-chip-row {
    justify-content: center !important;
  }

  body:has(.desk-v2-clean) .desk-v2-step-chip-row button {
    padding: 7px 10px !important;
    font-size: 12px !important;
  }
}

/* FINAL SETUP TYPE ALIGNMENT */
/* Match Setup Type control to Desk Position control. Keep at bottom of desk-v2.css. */

body:has(.desk-v2-clean) .desk-v2-watchlist {
  display: block !important;
}

body:has(.desk-v2-clean) .desk-v2-setup-category-label {
  display: inline-flex !important;
  align-items: center !important;
  width: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  font-size: 11px !important;
  font-weight: 900 !important;
  letter-spacing: 0.16em !important;
  line-height: 1 !important;
  text-transform: uppercase !important;
  opacity: 0.58 !important;
  white-space: nowrap !important;
}

body:has(.desk-v2-clean) .desk-v2-setup-select {
  width: 100% !important;
  min-width: 0 !important;
  height: 36px !important;
  min-height: 36px !important;
  margin: 0 !important;
  padding: 0 34px 0 12px !important;
  border-radius: 10px !important;
  border: 1px solid rgba(0, 0, 0, 0.10) !important;
  background-color: #fff !important;
  color: #111 !important;
  font-size: 15px !important;
  font-weight: 800 !important;
  line-height: 1 !important;
  text-align: center !important;
  text-align-last: center !important;
}

body:has(.desk-v2-clean) .desk-v2-setup-control,
body:has(.desk-v2-clean) .desk-v2-watchlist .desk-v2-setup-category-label + .desk-v2-setup-select {
  margin-top: 0 !important;
}

body:has(.desk-v2-clean) .desk-v2-watchlist .desk-v2-setup-category-label {
  margin-top: 10px !important;
}

body:has(.desk-v2-clean) .desk-v2-watchlist .desk-v2-setup-category-label + .desk-v2-setup-select {
  margin-top: 6px !important;
  margin-bottom: 14px !important;
}

@media (min-width: 720px) {
  body:has(.desk-v2-clean) .desk-v2-watchlist .desk-v2-setup-category-label {
    display: none !important;
  }

  body:has(.desk-v2-clean) .desk-v2-watchlist::before {
    content: "SETUP TYPE:";
    display: inline-flex !important;
    align-items: center !important;
    float: left !important;
    height: 36px !important;
    margin-top: 10px !important;
    margin-right: 12px !important;
    font-size: 11px !important;
    font-weight: 900 !important;
    letter-spacing: 0.16em !important;
    line-height: 1 !important;
    text-transform: uppercase !important;
    opacity: 0.58 !important;
    white-space: nowrap !important;
  }

  body:has(.desk-v2-clean) .desk-v2-watchlist .desk-v2-setup-select {
    width: calc(100% - 118px) !important;
    margin-top: 10px !important;
    margin-bottom: 14px !important;
  }

  body:has(.desk-v2-clean) .desk-v2-watchlist [data-desk-watchlist] {
    clear: both !important;
  }
}

@media (max-width: 719px) {
  body:has(.desk-v2-clean) .desk-v2-setup-category-label {
    display: block !important;
    margin: 10px 0 6px !important;
  }

  body:has(.desk-v2-clean) .desk-v2-setup-select {
    width: 100% !important;
    margin-bottom: 12px !important;
  }
}

/* FINAL SETUP TYPE INLINE CLEANUP */
/* Setup Type now matches Desk Position structure. Keep at bottom. */

body:has(.desk-v2-clean) .desk-v2-setup-category-label {
  display: none !important;
}

body:has(.desk-v2-clean) .desk-v2-setup-inline {
  display: grid !important;
  grid-template-columns: auto minmax(0, 1fr) !important;
  align-items: center !important;
  gap: 10px !important;
  width: 100% !important;
  margin: 8px 0 14px !important;
}

body:has(.desk-v2-clean) .desk-v2-setup-inline span {
  display: inline-flex !important;
  align-items: center !important;
  white-space: nowrap !important;
  font-size: 11px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  letter-spacing: 0.14em !important;
  text-transform: uppercase !important;
  opacity: 0.58 !important;
}

body:has(.desk-v2-clean) .desk-v2-setup-inline .desk-v2-setup-select {
  width: 100% !important;
  min-width: 0 !important;
  height: 34px !important;
  min-height: 34px !important;
  margin: 0 !important;
  padding: 4px 34px 4px 12px !important;
  border-radius: 10px !important;
  border: 1px solid rgba(0, 0, 0, 0.1) !important;
  background: #fff !important;
  color: #111 !important;
  font-size: 14px !important;
  line-height: 1 !important;
  font-weight: 800 !important;
  text-align: center !important;
  text-align-last: center !important;
}

body:has(.desk-v2-clean) .desk-v2-setup-chip-row {
  display: flex !important;
  flex-wrap: wrap !important;
  justify-content: center !important;
  align-items: center !important;
  gap: 8px !important;
  width: 100% !important;
  overflow: visible !important;
}

body:has(.desk-v2-clean) .desk-v2-setup-chip {
  flex: 0 0 auto !important;
  min-width: 0 !important;
  width: auto !important;
  max-width: 100% !important;
  padding: 8px 13px !important;
  border-radius: 999px !important;
  font-size: 14px !important;
  line-height: 1 !important;
  font-weight: 800 !important;
  letter-spacing: 0 !important;
  white-space: nowrap !important;
  text-align: center !important;
}

body:has(.desk-v2-clean) .desk-v2-step-chip-row {
  display: flex !important;
  flex-wrap: nowrap !important;
  justify-content: center !important;
  align-items: center !important;
  gap: 8px !important;
  width: 100% !important;
  overflow-x: auto !important;
  padding: 2px 0 !important;
}

body:has(.desk-v2-clean) .desk-v2-step-chip-row button {
  flex: 0 0 auto !important;
  min-width: 0 !important;
  width: auto !important;
  padding: 8px 12px !important;
  border-radius: 999px !important;
  font-size: 13px !important;
  line-height: 1 !important;
  font-weight: 800 !important;
  white-space: nowrap !important;
}

body:has(.desk-v2-clean) .desk-v2-step-card {
  margin-top: 10px !important;
}

@media (max-width: 640px) {
  body:has(.desk-v2-clean) .desk-v2-setup-inline {
    grid-template-columns: auto minmax(0, 1fr) !important;
    gap: 8px !important;
  }

  body:has(.desk-v2-clean) .desk-v2-setup-inline span {
    font-size: 10px !important;
    letter-spacing: 0.1em !important;
  }

  body:has(.desk-v2-clean) .desk-v2-setup-inline .desk-v2-setup-select {
    height: 32px !important;
    min-height: 32px !important;
    font-size: 13px !important;
  }

  body:has(.desk-v2-clean) .desk-v2-setup-chip {
    padding: 8px 11px !important;
    font-size: 13px !important;
  }

  body:has(.desk-v2-clean) .desk-v2-step-chip-row button {
    padding: 8px 10px !important;
    font-size: 12px !important;
  }
}

/* FINAL LABEL COLOR MATCH */
/* Makes Desk Position and Setup Type labels visually identical. Keep at bottom. */

body:has(.desk-v2-clean) .desk-position-inline > span,
body:has(.desk-v2-clean) .desk-v2-setup-inline > span {
  color: rgba(17, 17, 17, 0.58) !important;
  opacity: 1 !important;
  font-size: 11px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  letter-spacing: 0.14em !important;
  text-transform: uppercase !important;
  white-space: nowrap !important;
}

/* FINAL SETUP TYPE LABEL CLEAN */
body:has(.desk-v2-clean) .desk-v2-setup-category-label {
  display: none !important;
}

body:has(.desk-v2-clean) .desk-v2-setup-inline {
  display: grid !important;
  grid-template-columns: auto minmax(0, 1fr) !important;
  align-items: center !important;
  gap: 10px !important;
  width: 100% !important;
  margin: 10px 0 14px !important;
}

body:has(.desk-v2-clean) .desk-position-inline > span,
body:has(.desk-v2-clean) .desk-v2-setup-inline > span {
  color: rgba(17, 17, 17, 0.58) !important;
  opacity: 1 !important;
  font-size: 11px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  letter-spacing: 0.14em !important;
  text-transform: uppercase !important;
  white-space: nowrap !important;
}

body:has(.desk-v2-clean) .desk-v2-setup-inline .desk-v2-setup-select {
  width: 100% !important;
  min-height: 34px !important;
  margin: 0 !important;
  padding: 4px 12px !important;
  border-radius: 8px !important;
  text-align: center !important;
  text-align-last: center !important;
  font-size: 14px !important;
  font-weight: 800 !important;
}

/* FINAL MARKET TYPE WORDING CLEANUP */
/* Removes redundant Market Setup / Tap a setup header and uses Market Type as the single control label. */

body:has(.desk-v2-clean) .desk-v2-market-type-head {
  display: none !important;
}

body:has(.desk-v2-clean) .desk-v2-setup-inline > span {
  color: rgba(17, 17, 17, 0.58) !important;
  opacity: 1 !important;
  font-size: 11px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  letter-spacing: 0.14em !important;
  text-transform: uppercase !important;
  white-space: nowrap !important;
}

body:has(.desk-v2-clean) .desk-v2-setup-inline {
  margin-top: 0 !important;
}

/* FINAL MARKET TYPE CLEAN STATE */
/* One label only: Market Type. Removes old Setup Type visual leftovers. */

body:has(.desk-v2-clean) .desk-v2-market-type-head,
body:has(.desk-v2-clean) .desk-v2-setup-category-label {
  display: none !important;
}

body:has(.desk-v2-clean) .desk-v2-setup-inline {
  display: grid !important;
  grid-template-columns: auto minmax(0, 1fr) !important;
  align-items: center !important;
  gap: 12px !important;
  width: 100% !important;
  margin: 0 0 18px !important;
}

body:has(.desk-v2-clean) .desk-v2-setup-inline > span {
  display: inline-flex !important;
  align-items: center !important;
  color: rgba(17, 17, 17, 0.58) !important;
  opacity: 1 !important;
  font-size: 11px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  letter-spacing: 0.14em !important;
  text-transform: uppercase !important;
  white-space: nowrap !important;
}

body:has(.desk-v2-clean) .desk-v2-setup-inline .desk-v2-setup-select {
  width: 100% !important;
  min-width: 0 !important;
  height: 34px !important;
  min-height: 34px !important;
  margin: 0 !important;
  padding: 0 34px 0 12px !important;
  border-radius: 8px !important;
  text-align: center !important;
  text-align-last: center !important;
  font-size: 14px !important;
  font-weight: 800 !important;
}

body:has(.desk-v2-clean) [data-desk-watchlist] {
  margin-top: 0 !important;
}

@media (max-width: 640px) {
  body:has(.desk-v2-clean) .desk-v2-setup-inline {
    grid-template-columns: auto minmax(0, 1fr) !important;
    gap: 8px !important;
  }

  body:has(.desk-v2-clean) .desk-v2-setup-inline > span {
    font-size: 10px !important;
    letter-spacing: 0.12em !important;
  }

  body:has(.desk-v2-clean) .desk-v2-setup-inline .desk-v2-setup-select {
    font-size: 13px !important;
  }
}

/* FINAL DUPLICATE SETUP TYPE LABEL KILL SWITCH */
/* Only the real inline Market Type label should display. */

body:has(.desk-v2-clean) .desk-v2-watchlist::before,
body:has(.desk-v2-clean) .desk-v2-watchlist::after,
body:has(.desk-v2-clean) .desk-v2-panel-head::before,
body:has(.desk-v2-clean) .desk-v2-panel-head::after,
body:has(.desk-v2-clean) .desk-v2-setup-inline::before,
body:has(.desk-v2-clean) .desk-v2-setup-inline::after,
body:has(.desk-v2-clean) .desk-v2-setup-category-label,
body:has(.desk-v2-clean) .desk-v2-market-type-head {
  content: none !important;
  display: none !important;
  visibility: hidden !important;
  height: 0 !important;
  min-height: 0 !important;
  max-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
}

body:has(.desk-v2-clean) .desk-v2-setup-inline {
  display: grid !important;
  grid-template-columns: auto minmax(0, 1fr) !important;
  align-items: center !important;
  gap: 12px !important;
  width: 100% !important;
  margin: 0 0 14px !important;
}

body:has(.desk-v2-clean) .desk-v2-setup-inline > span {
  display: inline-flex !important;
  visibility: visible !important;
  height: auto !important;
  max-height: none !important;
  overflow: visible !important;
  color: rgba(17, 17, 17, 0.58) !important;
  opacity: 1 !important;
  font-size: 11px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  letter-spacing: 0.14em !important;
  text-transform: uppercase !important;
  white-space: nowrap !important;
}

body:has(.desk-v2-clean) .desk-v2-setup-inline > span::before,
body:has(.desk-v2-clean) .desk-v2-setup-inline > span::after {
  content: none !important;
  display: none !important;
}

body:has(.desk-v2-clean) .desk-v2-setup-inline .desk-v2-setup-select {
  width: 100% !important;
  min-width: 0 !important;
  height: 34px !important;
  min-height: 34px !important;
  margin: 0 !important;
  padding: 0 34px 0 12px !important;
  border-radius: 8px !important;
  text-align: center !important;
  text-align-last: center !important;
  font-size: 14px !important;
  font-weight: 800 !important;
}


/* FINAL CHART POLISH */
body:has(.desk-v2-clean) [data-desk-chart] {
  min-height: 168px !important;
  border-radius: 22px !important;
  overflow: hidden !important;
  background: linear-gradient(180deg, rgba(25, 198, 184, 0.055), rgba(25, 198, 184, 0.025)) !important;
}

body:has(.desk-v2-clean) [data-desk-chart] .desk-v2-chart-svg {
  display: block !important;
  width: 100% !important;
  height: 188px !important;
}

body:has(.desk-v2-clean) .desk-v2-chart-bg {
  fill: rgba(25, 198, 184, 0.055) !important;
  stroke: rgba(25, 198, 184, 0.16) !important;
  stroke-width: 1 !important;
}

body:has(.desk-v2-clean) .desk-v2-chart-grid {
  opacity: 0.82 !important;
}

body:has(.desk-v2-clean) .desk-v2-chart-midline {
  stroke: rgba(17, 17, 17, 0.055) !important;
  stroke-width: 1 !important;
  stroke-dasharray: 8 10 !important;
}

body:has(.desk-v2-clean) .desk-v2-chart-line {
  fill: none !important;
  stroke: #19c6b8 !important;
  stroke-width: 4 !important;
  stroke-linecap: round !important;
  stroke-linejoin: round !important;
}

body:has(.desk-v2-clean) .desk-v2-chart-point-halo {
  fill: rgba(25, 198, 184, 0.22) !important;
}

body:has(.desk-v2-clean) .desk-v2-chart-point {
  fill: #111 !important;
  stroke: #fff !important;
  stroke-width: 3 !important;
}

body:has(.desk-v2-clean) .desk-v2-step-chip-row {
  justify-content: center !important;
  align-items: center !important;
  flex-wrap: nowrap !important;
  gap: 10px !important;
  overflow-x: auto !important;
  -webkit-overflow-scrolling: touch !important;
}

body:has(.desk-v2-clean) .desk-v2-step-chip-row button {
  flex: 0 0 auto !important;
  white-space: nowrap !important;
  padding: 9px 14px !important;
  border-radius: 999px !important;
  font-size: 14px !important;
  line-height: 1 !important;
}

body:has(.desk-v2-clean) .desk-v2-step-card {
  margin-top: 14px !important;
  border-radius: 20px !important;
}

body:has(.desk-v2-clean) .desk-v2-step-card-head {
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  gap: 12px !important;
}

body:has(.desk-v2-clean) .desk-v2-step-buttons {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 10px !important;
}

@media (max-width: 640px) {
  body:has(.desk-v2-clean) [data-desk-chart] {
    min-height: 142px !important;
    border-radius: 18px !important;
  }

  body:has(.desk-v2-clean) [data-desk-chart] .desk-v2-chart-svg {
    height: 148px !important;
  }

  body:has(.desk-v2-clean) .desk-v2-chart-line {
    stroke-width: 3.5px !important;
  }

  body:has(.desk-v2-clean) .desk-v2-step-chip-row {
    gap: 8px !important;
  }

  body:has(.desk-v2-clean) .desk-v2-step-chip-row button {
    padding: 8px 11px !important;
    font-size: 12px !important;
  }
}

/* FINAL EMPTY CHART FIX */
/* SVG carries its own visible attributes. This block only controls sizing and polish. */

body:has(.desk-v2-clean) [data-desk-chart] {
  display: block !important;
  width: 100% !important;
  min-height: 190px !important;
  border-radius: 18px !important;
  overflow: hidden !important;
  background: rgba(22, 196, 180, 0.035) !important;
}

body:has(.desk-v2-clean) [data-desk-chart] .desk-v2-chart-svg {
  display: block !important;
  width: 100% !important;
  height: 190px !important;
  min-height: 190px !important;
}

body:has(.desk-v2-clean) .desk-v2-chart-line {
  opacity: 1 !important;
  visibility: visible !important;
}

body:has(.desk-v2-clean) .desk-v2-chart-point,
body:has(.desk-v2-clean) .desk-v2-chart-point-halo {
  opacity: 1 !important;
  visibility: visible !important;
}

@media (max-width: 640px) {
  body:has(.desk-v2-clean) [data-desk-chart],
  body:has(.desk-v2-clean) [data-desk-chart] .desk-v2-chart-svg {
    min-height: 150px !important;
    height: 150px !important;
  }
}

/* FINAL INLINE SVG CHART SAFETY */
/* Keep chart visible even if older global SVG rules exist. */

body:has(.desk-v2-clean) [data-desk-chart] {
  display: block !important;
  min-height: 190px !important;
  height: auto !important;
  overflow: visible !important;
  visibility: visible !important;
  opacity: 1 !important;
}

body:has(.desk-v2-clean) [data-desk-chart] svg,
body:has(.desk-v2-clean) [data-desk-chart] rect,
body:has(.desk-v2-clean) [data-desk-chart] path,
body:has(.desk-v2-clean) [data-desk-chart] polyline,
body:has(.desk-v2-clean) [data-desk-chart] circle {
  visibility: visible !important;
  opacity: 1 !important;
  pointer-events: none !important;
}

body:has(.desk-v2-clean) [data-desk-chart] svg {
  display: block !important;
  width: 100% !important;
  height: 190px !important;
}

/* FINAL CLOCK ROLE STACK FIX */
/* Keeps clock role labels readable inside the three market badges. */

body:has(.desk-v2-clean) .desk-v2-clock-role {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 1px !important;
  width: 100% !important;
  max-width: 100% !important;
  text-align: center !important;
  white-space: normal !important;
  overflow: visible !important;
  line-height: 1.05 !important;
  font-size: 10px !important;
  font-weight: 900 !important;
  letter-spacing: 0.18em !important;
  text-transform: uppercase !important;
}

body:has(.desk-v2-clean) .desk-v2-clock-role span {
  display: block !important;
  width: 100% !important;
  text-align: center !important;
  white-space: nowrap !important;
}

body:has(.desk-v2-clean) .desk-v2-clock-card {
  min-width: 0 !important;
  overflow: hidden !important;
}

@media (max-width: 640px) {
  body:has(.desk-v2-clean) .desk-v2-clock-role {
    font-size: 9px !important;
    letter-spacing: 0.16em !important;
  }

  body:has(.desk-v2-clean) .desk-v2-clock-time {
    font-size: 20px !important;
  }
}

/* FINAL CHART AND GAUGE POLISH */
/* Visual polish only. Keeps the working SVG render path intact. */

body:has(.desk-v2-clean) [data-desk-chart] {
  display: block !important;
  width: 100% !important;
  min-height: 190px !important;
  margin-top: 14px !important;
  border-radius: 24px !important;
  overflow: hidden !important;
  background:
    linear-gradient(180deg, rgba(25, 198, 184, 0.055), rgba(25, 198, 184, 0.025)) !important;
  box-shadow:
    inset 0 0 0 1px rgba(25, 198, 184, 0.08),
    0 10px 28px rgba(17, 17, 17, 0.035) !important;
}

body:has(.desk-v2-clean) [data-desk-chart] svg {
  display: block !important;
  width: 100% !important;
  height: 190px !important;
  min-height: 190px !important;
  visibility: visible !important;
  opacity: 1 !important;
}

body:has(.desk-v2-clean) [data-desk-chart] rect,
body:has(.desk-v2-clean) [data-desk-chart] line,
body:has(.desk-v2-clean) [data-desk-chart] path,
body:has(.desk-v2-clean) [data-desk-chart] polyline,
body:has(.desk-v2-clean) [data-desk-chart] circle {
  visibility: visible !important;
  opacity: 1 !important;
  pointer-events: none !important;
}

body:has(.desk-v2-clean) .desk-v2-step-chip-row {
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  flex-wrap: nowrap !important;
  gap: 10px !important;
  width: 100% !important;
  margin-top: 16px !important;
  margin-bottom: 14px !important;
  overflow-x: auto !important;
  overflow-y: hidden !important;
  -webkit-overflow-scrolling: touch !important;
}

body:has(.desk-v2-clean) .desk-v2-step-chip-row button {
  flex: 0 0 auto !important;
  min-height: 38px !important;
  padding: 9px 16px !important;
  border-radius: 999px !important;
  border: 1px solid rgba(17, 17, 17, 0.09) !important;
  background: rgba(255, 255, 255, 0.82) !important;
  color: #111 !important;
  font-size: 13px !important;
  font-weight: 850 !important;
  line-height: 1 !important;
  white-space: nowrap !important;
  box-shadow: 0 4px 14px rgba(17, 17, 17, 0.035) !important;
}

body:has(.desk-v2-clean) .desk-v2-step-chip-row button.is-active {
  border-color: #19c6b8 !important;
  background: #19c6b8 !important;
  color: #061514 !important;
  box-shadow: 0 8px 22px rgba(25, 198, 184, 0.22) !important;
}

body:has(.desk-v2-clean) .desk-v2-gauge-row {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 10px !important;
  margin-top: 12px !important;
}

body:has(.desk-v2-clean) .desk-v2-gauge {
  min-height: 66px !important;
  padding: 13px 12px !important;
  border-radius: 18px !important;
  border: 1px solid rgba(17, 17, 17, 0.07) !important;
  background: rgba(255, 255, 255, 0.72) !important;
  box-shadow: 0 8px 22px rgba(17, 17, 17, 0.035) !important;
  text-align: center !important;
}

body:has(.desk-v2-clean) .desk-v2-gauge span {
  display: block !important;
  margin-bottom: 7px !important;
  color: rgba(17, 17, 17, 0.48) !important;
  font-size: 10px !important;
  font-weight: 900 !important;
  letter-spacing: 0.14em !important;
  text-transform: uppercase !important;
  line-height: 1 !important;
}

body:has(.desk-v2-clean) .desk-v2-gauge strong {
  display: block !important;
  color: #111 !important;
  font-size: 14px !important;
  font-weight: 900 !important;
  line-height: 1.1 !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}

@media (max-width: 640px) {
  body:has(.desk-v2-clean) [data-desk-chart],
  body:has(.desk-v2-clean) [data-desk-chart] svg {
    min-height: 170px !important;
    height: 170px !important;
  }

  body:has(.desk-v2-clean) .desk-v2-step-chip-row {
    gap: 9px !important;
    margin-top: 14px !important;
  }

  body:has(.desk-v2-clean) .desk-v2-step-chip-row button {
    min-height: 36px !important;
    padding: 8px 13px !important;
    font-size: 12px !important;
  }

  body:has(.desk-v2-clean) .desk-v2-gauge-row {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  body:has(.desk-v2-clean) .desk-v2-gauge {
    min-height: 60px !important;
  }
}

/* FINAL TIGHT CHART VISUAL CLEANUP */
/* Keeps chart compact, clean, and readable. */

body:has(.desk-v2-clean) [data-desk-chart] {
  display: block !important;
  width: 100% !important;
  min-height: 158px !important;
  height: 158px !important;
  margin-top: 14px !important;
  border-radius: 20px !important;
  overflow: hidden !important;
  background: rgba(25, 198, 184, 0.035) !important;
  box-shadow:
    inset 0 0 0 1px rgba(25, 198, 184, 0.08),
    0 8px 18px rgba(17, 17, 17, 0.025) !important;
}

body:has(.desk-v2-clean) [data-desk-chart] svg {
  display: block !important;
  width: 100% !important;
  height: 158px !important;
  min-height: 158px !important;
  max-height: 158px !important;
}

body:has(.desk-v2-clean) .desk-v2-chart-meta {
  margin-top: 14px !important;
  overflow: visible !important;
}

body:has(.desk-v2-clean) .desk-v2-step-chip-row {
  display: flex !important;
  flex-wrap: wrap !important;
  justify-content: center !important;
  align-items: center !important;
  gap: 10px !important;
  width: 100% !important;
  max-width: 100% !important;
  overflow: visible !important;
  padding: 0 !important;
  margin: 0 0 12px !important;
}

body:has(.desk-v2-clean) .desk-v2-step-chip-row button {
  flex: 0 1 auto !important;
  min-width: 0 !important;
  min-height: 36px !important;
  padding: 9px 15px !important;
  border-radius: 999px !important;
  font-size: 13px !important;
  font-weight: 850 !important;
  line-height: 1 !important;
  white-space: nowrap !important;
}

body:has(.desk-v2-clean) .desk-v2-scenario {
  margin-top: 12px !important;
}

body:has(.desk-v2-clean) .desk-v2-step-card {
  border-radius: 20px !important;
  padding: 16px !important;
}

@media (max-width: 640px) {
  body:has(.desk-v2-clean) [data-desk-chart] {
    min-height: 150px !important;
    height: 150px !important;
    border-radius: 18px !important;
  }

  body:has(.desk-v2-clean) [data-desk-chart] svg {
    height: 150px !important;
    min-height: 150px !important;
    max-height: 150px !important;
  }

  body:has(.desk-v2-clean) .desk-v2-step-chip-row {
    gap: 9px !important;
    margin-top: 0 !important;
  }

  body:has(.desk-v2-clean) .desk-v2-step-chip-row button {
    min-height: 34px !important;
    padding: 8px 12px !important;
    font-size: 12px !important;
  }
}

/* FINAL DESK VISUAL PASS */
/* Tightens chart, scenario, risk gauges, ticket, and log without changing logic. */

body:has(.desk-v2-clean) .desk-v2-main-screen {
  gap: 14px !important;
}

body:has(.desk-v2-clean) .desk-v2-screen-top {
  padding-bottom: 12px !important;
  margin-bottom: 12px !important;
  border-bottom: 1px solid rgba(17, 17, 17, 0.07) !important;
}

body:has(.desk-v2-clean) [data-desk-active-title] {
  line-height: 1.08 !important;
  letter-spacing: -0.02em !important;
}

body:has(.desk-v2-clean) [data-desk-active-meta],
body:has(.desk-v2-clean) [data-desk-step-count] {
  line-height: 1.15 !important;
}

/* Chart container */
body:has(.desk-v2-clean) [data-desk-chart] {
  margin-top: 14px !important;
  min-height: 174px !important;
  height: 174px !important;
  border-radius: 22px !important;
  overflow: hidden !important;
  background: linear-gradient(
    180deg,
    rgba(25, 198, 184, 0.075),
    rgba(25, 198, 184, 0.035)
  ) !important;
  box-shadow:
    inset 0 0 0 1px rgba(25, 198, 184, 0.11),
    inset 0 -18px 28px rgba(255, 255, 255, 0.28) !important;
}

body:has(.desk-v2-clean) [data-desk-chart] svg {
  display: block !important;
  width: 100% !important;
  height: 174px !important;
  min-height: 174px !important;
}

/* The inline SVG already carries hard visible values. This makes it feel cleaner. */
body:has(.desk-v2-clean) [data-desk-chart] polyline {
  stroke-width: 5 !important;
  filter: drop-shadow(0 5px 4px rgba(17, 17, 17, 0.10)) !important;
}

body:has(.desk-v2-clean) [data-desk-chart] circle:first-of-type {
  opacity: 0.82 !important;
}

body:has(.desk-v2-clean) [data-desk-chart] circle:last-of-type {
  filter: drop-shadow(0 2px 3px rgba(17, 17, 17, 0.22)) !important;
}

/* Step chips under chart */
body:has(.desk-v2-clean) .desk-v2-chart-meta {
  margin-top: 14px !important;
}

body:has(.desk-v2-clean) .desk-v2-step-chip-row {
  display: flex !important;
  flex-flow: row nowrap !important;
  justify-content: center !important;
  align-items: center !important;
  gap: 10px !important;
  width: 100% !important;
  overflow-x: auto !important;
  overflow-y: hidden !important;
  padding: 0 2px 3px !important;
  scrollbar-width: none !important;
  -webkit-overflow-scrolling: touch !important;
}

body:has(.desk-v2-clean) .desk-v2-step-chip-row::-webkit-scrollbar {
  display: none !important;
}

body:has(.desk-v2-clean) .desk-v2-step-chip-row button {
  flex: 0 0 auto !important;
  min-height: 36px !important;
  padding: 9px 14px !important;
  border-radius: 999px !important;
  font-size: 13px !important;
  font-weight: 850 !important;
  line-height: 1 !important;
  white-space: nowrap !important;
}

body:has(.desk-v2-clean) .desk-v2-step-chip-row button.is-active {
  box-shadow: 0 8px 18px rgba(25, 198, 184, 0.18) !important;
}

/* Scenario card */
body:has(.desk-v2-clean) .desk-v2-scenario {
  margin-top: 14px !important;
}

body:has(.desk-v2-clean) .desk-v2-step-card {
  padding: 18px !important;
  border-radius: 22px !important;
  background: rgba(17, 17, 17, 0.035) !important;
  box-shadow: inset 0 0 0 1px rgba(17, 17, 17, 0.035) !important;
}

body:has(.desk-v2-clean) .desk-v2-step-card-head {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  align-items: start !important;
  gap: 12px !important;
  margin-bottom: 10px !important;
}

body:has(.desk-v2-clean) .desk-v2-step-card-head strong {
  font-size: 20px !important;
  line-height: 1.05 !important;
  letter-spacing: -0.02em !important;
}

body:has(.desk-v2-clean) .desk-v2-step-card-head span {
  font-size: 14px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  white-space: nowrap !important;
  color: rgba(17, 17, 17, 0.68) !important;
}

body:has(.desk-v2-clean) .desk-v2-step-card p {
  margin: 0 !important;
  max-width: 54ch !important;
  font-size: 15px !important;
  line-height: 1.3 !important;
  color: rgba(17, 17, 17, 0.74) !important;
}

body:has(.desk-v2-clean) .desk-v2-step-buttons {
  margin-top: 16px !important;
}

/* Risk gauges */
body:has(.desk-v2-clean) .desk-v2-gauge-row {
  gap: 10px !important;
}

body:has(.desk-v2-clean) .desk-v2-gauge {
  border-radius: 17px !important;
  min-height: 62px !important;
  padding: 13px 12px !important;
  background: rgba(255, 255, 255, 0.62) !important;
  box-shadow: inset 0 0 0 1px rgba(17, 17, 17, 0.055) !important;
}

body:has(.desk-v2-clean) .desk-v2-gauge span {
  font-size: 10px !important;
  letter-spacing: 0.18em !important;
  color: rgba(17, 17, 17, 0.46) !important;
}

body:has(.desk-v2-clean) .desk-v2-gauge strong {
  font-size: 14px !important;
  line-height: 1.05 !important;
}

/* Setup Read */
body:has(.desk-v2-clean) .desk-v2-mode-panel {
  border-radius: 22px !important;
}

body:has(.desk-v2-clean) [data-desk-mode-title] {
  font-size: 18px !important;
  line-height: 1.08 !important;
}

body:has(.desk-v2-clean) [data-desk-mode-copy] {
  font-size: 15px !important;
  line-height: 1.35 !important;
  color: rgba(17, 17, 17, 0.76) !important;
}

/* Decision ticket and log */
body:has(.desk-v2-clean) .desk-v2-ticket,
body:has(.desk-v2-clean) .desk-v2-journal {
  border-radius: 22px !important;
}

body:has(.desk-v2-clean) [data-desk-actions] {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 10px !important;
}

body:has(.desk-v2-clean) [data-desk-actions] button {
  min-height: 38px !important;
  border-radius: 999px !important;
  font-size: 12px !important;
  font-weight: 900 !important;
  letter-spacing: 0.02em !important;
}

body:has(.desk-v2-clean) .desk-v2-log-item {
  border-radius: 16px !important;
  padding: 12px 13px !important;
  background: rgba(17, 17, 17, 0.035) !important;
}

/* Mobile tightening */
@media (max-width: 640px) {
  body:has(.desk-v2-clean) [data-desk-chart] {
    height: 150px !important;
    min-height: 150px !important;
    border-radius: 20px !important;
    margin-top: 12px !important;
  }

  body:has(.desk-v2-clean) [data-desk-chart] svg {
    height: 150px !important;
    min-height: 150px !important;
  }

  body:has(.desk-v2-clean) [data-desk-chart] polyline {
    stroke-width: 5 !important;
  }

  body:has(.desk-v2-clean) .desk-v2-step-chip-row {
    justify-content: flex-start !important;
    gap: 9px !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  body:has(.desk-v2-clean) .desk-v2-step-chip-row button {
    min-height: 35px !important;
    padding: 9px 13px !important;
    font-size: 12px !important;
  }

  body:has(.desk-v2-clean) .desk-v2-step-card {
    padding: 16px !important;
    border-radius: 20px !important;
  }

  body:has(.desk-v2-clean) .desk-v2-step-card-head strong {
    font-size: 18px !important;
  }

  body:has(.desk-v2-clean) .desk-v2-step-card-head span {
    font-size: 13px !important;
  }

  body:has(.desk-v2-clean) .desk-v2-step-card p,
  body:has(.desk-v2-clean) [data-desk-mode-copy] {
    font-size: 14px !important;
    line-height: 1.33 !important;
  }

  body:has(.desk-v2-clean) [data-desk-actions] {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 8px !important;
  }

  body:has(.desk-v2-clean) [data-desk-actions] button {
    min-height: 36px !important;
    font-size: 11px !important;
    padding-left: 8px !important;
    padding-right: 8px !important;
  }
}

/* FINAL EDUCATIONAL DECISION ENGINE */

body:has(.desk-v2-clean) .desk-v2-account-summary {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 10px !important;
  margin-top: 12px !important;
}

body:has(.desk-v2-clean) .desk-v2-account-card {
  min-height: 58px !important;
  padding: 12px !important;
  border-radius: 16px !important;
  background: rgba(255, 255, 255, 0.68) !important;
  box-shadow: inset 0 0 0 1px rgba(17, 17, 17, 0.055) !important;
}

body:has(.desk-v2-clean) .desk-v2-account-card span {
  display: block !important;
  margin-bottom: 6px !important;
  font-size: 10px !important;
  font-weight: 900 !important;
  letter-spacing: 0.16em !important;
  text-transform: uppercase !important;
  color: rgba(17, 17, 17, 0.46) !important;
}

body:has(.desk-v2-clean) .desk-v2-account-card strong {
  display: block !important;
  font-size: 15px !important;
  line-height: 1.05 !important;
  font-weight: 950 !important;
}

body:has(.desk-v2-clean) [data-desk-actions] button {
  display: grid !important;
  gap: 4px !important;
  align-content: center !important;
  justify-items: center !important;
}

body:has(.desk-v2-clean) [data-desk-actions] button strong {
  font-size: 12px !important;
  line-height: 1 !important;
}

body:has(.desk-v2-clean) [data-desk-actions] button span {
  font-size: 9px !important;
  line-height: 1 !important;
  font-weight: 800 !important;
  color: rgba(17, 17, 17, 0.48) !important;
  white-space: nowrap !important;
}

body:has(.desk-v2-clean) .desk-v2-log-item {
  display: grid !important;
  gap: 7px !important;
}

body:has(.desk-v2-clean) .desk-v2-log-topline {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  gap: 10px !important;
  align-items: center !important;
}

body:has(.desk-v2-clean) .desk-v2-log-topline strong {
  font-size: 15px !important;
  line-height: 1.1 !important;
}

body:has(.desk-v2-clean) .desk-v2-log-topline span {
  font-size: 13px !important;
  line-height: 1 !important;
  font-weight: 950 !important;
  white-space: nowrap !important;
}

body:has(.desk-v2-clean) .desk-v2-log-item p {
  margin: 0 !important;
  font-size: 13px !important;
  line-height: 1.28 !important;
  color: rgba(17, 17, 17, 0.72) !important;
}

body:has(.desk-v2-clean) .desk-v2-log-item small {
  display: block !important;
  font-size: 11px !important;
  line-height: 1.25 !important;
  font-weight: 750 !important;
  color: rgba(17, 17, 17, 0.52) !important;
}

body:has(.desk-v2-clean) .desk-v2-log-item em {
  display: block !important;
  font-style: normal !important;
  font-size: 12px !important;
  line-height: 1.25 !important;
  color: rgba(17, 17, 17, 0.68) !important;
}

body:has(.desk-v2-clean) .desk-v2-log-item.is-profit {
  box-shadow:
    inset 4px 0 0 rgba(25, 198, 184, 0.85),
    inset 0 0 0 1px rgba(25, 198, 184, 0.12) !important;
}

body:has(.desk-v2-clean) .desk-v2-log-item.is-loss {
  box-shadow:
    inset 4px 0 0 rgba(17, 17, 17, 0.68),
    inset 0 0 0 1px rgba(17, 17, 17, 0.10) !important;
}

body:has(.desk-v2-clean) .desk-v2-log-item.is-flat {
  box-shadow:
    inset 4px 0 0 rgba(17, 17, 17, 0.22),
    inset 0 0 0 1px rgba(17, 17, 17, 0.06) !important;
}

@media (max-width: 640px) {
  body:has(.desk-v2-clean) .desk-v2-account-summary {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 9px !important;
  }

  body:has(.desk-v2-clean) .desk-v2-account-card {
    min-height: 54px !important;
    padding: 11px !important;
  }

  body:has(.desk-v2-clean) [data-desk-actions] {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  body:has(.desk-v2-clean) [data-desk-actions] button {
    min-height: 46px !important;
  }

  body:has(.desk-v2-clean) .desk-v2-log-topline {
    grid-template-columns: 1fr !important;
    gap: 5px !important;
  }
}

/* FINAL DECISION BUTTON STABILIZER */

body:has(.desk-v2-clean) [data-desk-actions] button {
  display: grid !important;
  align-content: center !important;
  justify-items: center !important;
  gap: 4px !important;
  min-height: 46px !important;
}

body:has(.desk-v2-clean) [data-desk-actions] button strong {
  display: block !important;
  font-size: 12px !important;
  line-height: 1 !important;
  font-weight: 950 !important;
}

body:has(.desk-v2-clean) [data-desk-actions] button span {
  display: block !important;
  font-size: 9px !important;
  line-height: 1 !important;
  font-weight: 850 !important;
  color: rgba(17, 17, 17, 0.48) !important;
  white-space: nowrap !important;
}

body:has(.desk-v2-clean) .desk-v2-account-summary {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 10px !important;
  margin-top: 12px !important;
}

body:has(.desk-v2-clean) .desk-v2-account-card {
  padding: 12px !important;
  border-radius: 16px !important;
  background: rgba(255, 255, 255, 0.72) !important;
  box-shadow: inset 0 0 0 1px rgba(17, 17, 17, 0.06) !important;
}

body:has(.desk-v2-clean) .desk-v2-account-card span {
  display: block !important;
  margin-bottom: 6px !important;
  font-size: 10px !important;
  font-weight: 900 !important;
  letter-spacing: 0.14em !important;
  text-transform: uppercase !important;
  color: rgba(17, 17, 17, 0.48) !important;
}

body:has(.desk-v2-clean) .desk-v2-account-card strong {
  display: block !important;
  font-size: 15px !important;
  line-height: 1.05 !important;
  font-weight: 950 !important;
}

@media (max-width: 640px) {
  body:has(.desk-v2-clean) [data-desk-actions] {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

/* FINAL EDUCATIONAL SIMULATOR CLEANUP */
/* Training-only decision system polish. Keeps labels clear and avoids live-account confusion. */

body:has(.desk-v2-clean) .desk-v2-account-summary {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 10px !important;
  margin-top: 12px !important;
}

body:has(.desk-v2-clean) .desk-v2-account-card {
  padding: 12px 10px !important;
  border: 1px solid rgba(17, 17, 17, 0.08) !important;
  border-radius: 14px !important;
  background: rgba(17, 17, 17, 0.025) !important;
  text-align: center !important;
}

body:has(.desk-v2-clean) .desk-v2-account-card span {
  display: block !important;
  margin-bottom: 5px !important;
  color: rgba(17, 17, 17, 0.52) !important;
  font-size: 9px !important;
  font-weight: 900 !important;
  letter-spacing: 0.13em !important;
  text-transform: uppercase !important;
}

body:has(.desk-v2-clean) .desk-v2-account-card strong {
  display: block !important;
  color: #111 !important;
  font-size: 15px !important;
  font-weight: 900 !important;
  letter-spacing: -0.02em !important;
}

body:has(.desk-v2-clean) [data-desk-actions] {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 10px !important;
}

body:has(.desk-v2-clean) [data-desk-actions] button {
  min-height: 58px !important;
  padding: 12px 10px !important;
  border-radius: 16px !important;
  display: grid !important;
  place-items: center !important;
  gap: 3px !important;
}

body:has(.desk-v2-clean) [data-desk-actions] button strong {
  display: block !important;
  font-size: 13px !important;
  font-weight: 950 !important;
  letter-spacing: 0.03em !important;
}

body:has(.desk-v2-clean) [data-desk-actions] button span {
  display: block !important;
  color: rgba(17, 17, 17, 0.52) !important;
  font-size: 10px !important;
  font-weight: 800 !important;
  line-height: 1.15 !important;
}

body:has(.desk-v2-clean) .desk-v2-log-item {
  display: grid !important;
  gap: 7px !important;
  padding: 14px !important;
  border-radius: 16px !important;
  border: 1px solid rgba(17, 17, 17, 0.08) !important;
  background: rgba(17, 17, 17, 0.025) !important;
}

body:has(.desk-v2-clean) .desk-v2-log-item.is-profit {
  border-color: rgba(25, 198, 184, 0.34) !important;
  background: rgba(25, 198, 184, 0.065) !important;
}

body:has(.desk-v2-clean) .desk-v2-log-item.is-loss {
  border-color: rgba(190, 70, 70, 0.18) !important;
  background: rgba(190, 70, 70, 0.035) !important;
}

body:has(.desk-v2-clean) .desk-v2-log-head {
  display: flex !important;
  justify-content: space-between !important;
  align-items: flex-start !important;
  gap: 12px !important;
}

body:has(.desk-v2-clean) .desk-v2-log-head strong {
  color: #111 !important;
  font-size: 15px !important;
  font-weight: 950 !important;
  line-height: 1.1 !important;
}

body:has(.desk-v2-clean) .desk-v2-log-head span {
  flex: 0 0 auto !important;
  color: rgba(17, 17, 17, 0.66) !important;
  font-size: 11px !important;
  font-weight: 900 !important;
  text-align: right !important;
}

body:has(.desk-v2-clean) .desk-v2-log-item p {
  margin: 0 !important;
  color: rgba(17, 17, 17, 0.72) !important;
  font-size: 12px !important;
  font-weight: 650 !important;
  line-height: 1.35 !important;
}

body:has(.desk-v2-clean) .desk-v2-log-item small {
  display: block !important;
  color: rgba(17, 17, 17, 0.48) !important;
  font-size: 10px !important;
  font-weight: 800 !important;
  line-height: 1.25 !important;
}

body:has(.desk-v2-clean) [data-desk-mode-copy] {
  line-height: 1.38 !important;
}

@media (max-width: 760px) {
  body:has(.desk-v2-clean) .desk-v2-account-summary {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  body:has(.desk-v2-clean) [data-desk-actions] {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  body:has(.desk-v2-clean) .desk-v2-log-head {
    display: grid !important;
    gap: 4px !important;
  }

  body:has(.desk-v2-clean) .desk-v2-log-head span {
    text-align: left !important;
  }
}

/* FINAL DECISION LOG COPY CLEANUP */

body:has(.desk-v2-clean) .desk-v2-log-item {
  display: grid !important;
  gap: 8px !important;
  padding: 14px !important;
  border-radius: 16px !important;
  background: rgba(17, 17, 17, 0.035) !important;
  border: 1px solid rgba(17, 17, 17, 0.08) !important;
}

body:has(.desk-v2-clean) .desk-v2-log-item.is-profit {
  background: rgba(25, 198, 184, 0.055) !important;
  border-color: rgba(25, 198, 184, 0.24) !important;
}

body:has(.desk-v2-clean) .desk-v2-log-item.is-loss {
  background: rgba(180, 40, 40, 0.045) !important;
  border-color: rgba(180, 40, 40, 0.14) !important;
}

body:has(.desk-v2-clean) .desk-v2-log-item.is-flat {
  background: rgba(17, 17, 17, 0.035) !important;
}

body:has(.desk-v2-clean) .desk-v2-log-top {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 10px !important;
}

body:has(.desk-v2-clean) .desk-v2-log-top strong {
  font-size: 15px !important;
  font-weight: 900 !important;
  color: #111 !important;
}

body:has(.desk-v2-clean) .desk-v2-log-top span {
  font-size: 12px !important;
  font-weight: 900 !important;
  color: rgba(17, 17, 17, 0.72) !important;
  white-space: nowrap !important;
}

body:has(.desk-v2-clean) .desk-v2-log-item p {
  margin: 0 !important;
  font-size: 13px !important;
  line-height: 1.32 !important;
  color: rgba(17, 17, 17, 0.76) !important;
}

body:has(.desk-v2-clean) .desk-v2-log-item p b {
  color: #111 !important;
  font-weight: 900 !important;
}

body:has(.desk-v2-clean) .desk-v2-log-item small {
  display: block !important;
  font-size: 11px !important;
  line-height: 1.25 !important;
  color: rgba(17, 17, 17, 0.48) !important;
}

/* FINAL TRADING DESK CLARITY PASS */
/* Splits market read from account rules, clarifies sim actions, limits log density. */

body:has(.desk-v2-clean) .desk-v2-risk .desk-v2-panel-head strong {
  letter-spacing: -0.02em !important;
}

body:has(.desk-v2-clean) .desk-v2-gauge-row {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 10px !important;
}

body:has(.desk-v2-clean) .desk-v2-gauge {
  min-height: 62px !important;
  padding: 12px 10px !important;
  border-radius: 14px !important;
  background: rgba(255, 255, 255, 0.72) !important;
  border: 1px solid rgba(17, 17, 17, 0.08) !important;
}

body:has(.desk-v2-clean) .desk-v2-account-summary {
  margin-top: 12px !important;
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 10px !important;
  padding-top: 12px !important;
  border-top: 1px solid rgba(17, 17, 17, 0.07) !important;
}

body:has(.desk-v2-clean) .desk-v2-account-card {
  min-height: 62px !important;
  padding: 12px 10px !important;
  border-radius: 14px !important;
  background: rgba(17, 17, 17, 0.035) !important;
  border: 1px solid rgba(17, 17, 17, 0.07) !important;
  text-align: center !important;
}

body:has(.desk-v2-clean) .desk-v2-gauge span,
body:has(.desk-v2-clean) .desk-v2-account-card span {
  display: block !important;
  margin-bottom: 6px !important;
  color: rgba(17, 17, 17, 0.48) !important;
  font-size: 10px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.16em !important;
}

body:has(.desk-v2-clean) .desk-v2-gauge strong,
body:has(.desk-v2-clean) .desk-v2-account-card strong {
  display: block !important;
  color: #111 !important;
  font-size: 14px !important;
  line-height: 1.15 !important;
  font-weight: 900 !important;
}

body:has(.desk-v2-clean) .desk-v2-reset-session {
  margin-top: 12px !important;
  width: 100% !important;
  min-height: 40px !important;
  border-radius: 999px !important;
  border: 1px solid rgba(17, 17, 17, 0.1) !important;
  background: rgba(255, 255, 255, 0.82) !important;
  color: rgba(17, 17, 17, 0.72) !important;
  font-size: 12px !important;
  font-weight: 900 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  cursor: pointer !important;
}

body:has(.desk-v2-clean) .desk-v2-reset-session:hover {
  border-color: rgba(25, 198, 184, 0.36) !important;
  background: rgba(25, 198, 184, 0.08) !important;
}

body:has(.desk-v2-clean) [data-desk-actions] {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 10px !important;
}

body:has(.desk-v2-clean) [data-desk-actions] button {
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  gap: 4px !important;
  min-height: 54px !important;
  border-radius: 16px !important;
  white-space: normal !important;
}

body:has(.desk-v2-clean) [data-desk-actions] button strong {
  font-size: 13px !important;
  line-height: 1 !important;
  font-weight: 950 !important;
}

body:has(.desk-v2-clean) [data-desk-actions] button span {
  color: rgba(17, 17, 17, 0.52) !important;
  font-size: 10px !important;
  line-height: 1.15 !important;
  font-weight: 800 !important;
}

body:has(.desk-v2-clean) [data-desk-log] {
  display: grid !important;
  gap: 10px !important;
}

body:has(.desk-v2-clean) .desk-v2-log-item {
  padding: 14px !important;
  border-radius: 16px !important;
  background: rgba(17, 17, 17, 0.035) !important;
  border: 1px solid rgba(17, 17, 17, 0.08) !important;
}

body:has(.desk-v2-clean) .desk-v2-log-item.is-profit {
  background: rgba(25, 198, 184, 0.08) !important;
  border-color: rgba(25, 198, 184, 0.28) !important;
}

body:has(.desk-v2-clean) .desk-v2-log-item.is-loss {
  background: rgba(190, 60, 60, 0.055) !important;
  border-color: rgba(190, 60, 60, 0.18) !important;
}

body:has(.desk-v2-clean) .desk-v2-log-top {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 10px !important;
  margin-bottom: 8px !important;
}

body:has(.desk-v2-clean) .desk-v2-log-top strong {
  font-size: 14px !important;
  line-height: 1.15 !important;
  font-weight: 950 !important;
}

body:has(.desk-v2-clean) .desk-v2-log-top span {
  flex: 0 0 auto !important;
  font-size: 12px !important;
  line-height: 1 !important;
  font-weight: 950 !important;
}

body:has(.desk-v2-clean) .desk-v2-log-item p {
  margin: 5px 0 0 !important;
  color: rgba(17, 17, 17, 0.78) !important;
  font-size: 12px !important;
  line-height: 1.32 !important;
  font-weight: 650 !important;
}

body:has(.desk-v2-clean) .desk-v2-log-item small {
  display: block !important;
  margin-top: 9px !important;
  color: rgba(17, 17, 17, 0.48) !important;
  font-size: 10px !important;
  line-height: 1.25 !important;
  font-weight: 800 !important;
}

@media (max-width: 640px) {
  body:has(.desk-v2-clean) .desk-v2-gauge-row,
  body:has(.desk-v2-clean) .desk-v2-account-summary {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  body:has(.desk-v2-clean) [data-desk-actions] {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  body:has(.desk-v2-clean) .desk-v2-gauge,
  body:has(.desk-v2-clean) .desk-v2-account-card {
    min-height: 58px !important;
  }
}

/* FINAL TRAINING DESK STRESS TEST PASS */
/* Clarifies simulated chart, training balance, decision feedback, and session reset. */

body:has(.desk-v2-clean) .desk-v2-chart-note {
  margin: 7px 0 0 !important;
  color: rgba(17, 17, 17, 0.46) !important;
  font-size: 10px !important;
  line-height: 1.2 !important;
  font-weight: 850 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  text-align: center !important;
}

body:has(.desk-v2-clean) .desk-v2-account-summary {
  margin-top: 12px !important;
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 10px !important;
  padding-top: 12px !important;
  border-top: 1px solid rgba(17, 17, 17, 0.07) !important;
}

body:has(.desk-v2-clean) .desk-v2-account-card {
  min-height: 62px !important;
  padding: 12px 10px !important;
  border-radius: 14px !important;
  background: rgba(17, 17, 17, 0.035) !important;
  border: 1px solid rgba(17, 17, 17, 0.07) !important;
  text-align: center !important;
}

body:has(.desk-v2-clean) .desk-v2-account-card span {
  display: block !important;
  margin-bottom: 6px !important;
  color: rgba(17, 17, 17, 0.48) !important;
  font-size: 10px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.16em !important;
}

body:has(.desk-v2-clean) .desk-v2-account-card strong {
  display: block !important;
  color: #111 !important;
  font-size: 14px !important;
  line-height: 1.15 !important;
  font-weight: 900 !important;
}

body:has(.desk-v2-clean) .desk-v2-account-note {
  grid-column: 1 / -1 !important;
  margin: 0 !important;
  padding: 10px 12px !important;
  border-radius: 14px !important;
  background: rgba(25, 198, 184, 0.055) !important;
  color: rgba(17, 17, 17, 0.66) !important;
  font-size: 11px !important;
  line-height: 1.35 !important;
  font-weight: 750 !important;
}

body:has(.desk-v2-clean) .desk-v2-reset-session {
  margin-top: 12px !important;
  width: 100% !important;
  min-height: 40px !important;
  border-radius: 999px !important;
  border: 1px solid rgba(17, 17, 17, 0.1) !important;
  background: rgba(255, 255, 255, 0.84) !important;
  color: rgba(17, 17, 17, 0.72) !important;
  font-size: 12px !important;
  font-weight: 900 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  cursor: pointer !important;
}

body:has(.desk-v2-clean) .desk-v2-reset-session:hover {
  border-color: rgba(25, 198, 184, 0.36) !important;
  background: rgba(25, 198, 184, 0.08) !important;
}

body:has(.desk-v2-clean) [data-desk-actions] {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 10px !important;
}

body:has(.desk-v2-clean) [data-desk-actions] button {
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  gap: 4px !important;
  min-height: 54px !important;
  border-radius: 16px !important;
  white-space: normal !important;
}

body:has(.desk-v2-clean) [data-desk-actions] button strong {
  font-size: 13px !important;
  line-height: 1 !important;
  font-weight: 950 !important;
}

body:has(.desk-v2-clean) [data-desk-actions] button span {
  color: rgba(17, 17, 17, 0.52) !important;
  font-size: 10px !important;
  line-height: 1.15 !important;
  font-weight: 800 !important;
}

body:has(.desk-v2-clean) [data-desk-log] {
  display: grid !important;
  gap: 10px !important;
}

body:has(.desk-v2-clean) .desk-v2-log-item {
  padding: 14px !important;
  border-radius: 16px !important;
  background: rgba(17, 17, 17, 0.035) !important;
  border: 1px solid rgba(17, 17, 17, 0.08) !important;
}

body:has(.desk-v2-clean) .desk-v2-log-item.is-profit {
  background: rgba(25, 198, 184, 0.08) !important;
  border-color: rgba(25, 198, 184, 0.28) !important;
}

body:has(.desk-v2-clean) .desk-v2-log-item.is-loss {
  background: rgba(190, 60, 60, 0.055) !important;
  border-color: rgba(190, 60, 60, 0.18) !important;
}

body:has(.desk-v2-clean) .desk-v2-log-top {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 10px !important;
  margin-bottom: 8px !important;
}

body:has(.desk-v2-clean) .desk-v2-log-top strong {
  font-size: 14px !important;
  line-height: 1.15 !important;
  font-weight: 950 !important;
}

body:has(.desk-v2-clean) .desk-v2-log-top span {
  flex: 0 0 auto !important;
  font-size: 12px !important;
  line-height: 1 !important;
  font-weight: 950 !important;
}

body:has(.desk-v2-clean) .desk-v2-log-item p {
  margin: 5px 0 0 !important;
  color: rgba(17, 17, 17, 0.78) !important;
  font-size: 12px !important;
  line-height: 1.32 !important;
  font-weight: 650 !important;
}

body:has(.desk-v2-clean) .desk-v2-log-item small {
  display: block !important;
  margin-top: 9px !important;
  color: rgba(17, 17, 17, 0.48) !important;
  font-size: 10px !important;
  line-height: 1.25 !important;
  font-weight: 800 !important;
}

@media (max-width: 640px) {
  body:has(.desk-v2-clean) .desk-v2-account-summary {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  body:has(.desk-v2-clean) [data-desk-actions] {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  body:has(.desk-v2-clean) .desk-v2-account-card {
    min-height: 58px !important;
  }
}

/* FINAL TRAINING DESK FLOW REORDER */
/* Correct flow: setup selection → chart → setup read → training decision → decision log → session summary. */

body:has(.desk-v2-flow-reordered) .desk-v2-layout {
  display: grid !important;
  grid-template-columns: minmax(220px, 0.85fr) minmax(0, 1.45fr) !important;
  gap: 18px !important;
  align-items: start !important;
}

body:has(.desk-v2-flow-reordered) .desk-v2-main-screen {
  min-width: 0 !important;
}

body:has(.desk-v2-flow-reordered) .desk-v2-risk {
  margin-top: 18px !important;
}

body:has(.desk-v2-flow-reordered) .desk-v2-risk .desk-v2-panel-head strong {
  font-size: 18px !important;
  letter-spacing: -0.03em !important;
}

body:has(.desk-v2-flow-reordered) .desk-v2-risk .desk-v2-panel-head span {
  letter-spacing: 0.16em !important;
}

body:has(.desk-v2-flow-reordered) .desk-v2-action-row {
  margin-top: 18px !important;
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 18px !important;
}

body:has(.desk-v2-flow-reordered) .desk-v2-mode-panel {
  order: 1 !important;
}

body:has(.desk-v2-flow-reordered) .desk-v2-ticket {
  order: 2 !important;
}

body:has(.desk-v2-flow-reordered) .desk-v2-journal {
  order: 3 !important;
}

body:has(.desk-v2-flow-reordered) .desk-v2-risk {
  order: 4 !important;
}

body:has(.desk-v2-flow-reordered) .desk-v2-mode-panel,
body:has(.desk-v2-flow-reordered) .desk-v2-ticket,
body:has(.desk-v2-flow-reordered) .desk-v2-journal,
body:has(.desk-v2-flow-reordered) .desk-v2-risk {
  width: 100% !important;
}

body:has(.desk-v2-flow-reordered) .desk-v2-mode-panel .desk-v2-panel-head strong,
body:has(.desk-v2-flow-reordered) .desk-v2-ticket .desk-v2-panel-head strong,
body:has(.desk-v2-flow-reordered) .desk-v2-journal .desk-v2-panel-head strong {
  font-size: 18px !important;
  letter-spacing: -0.03em !important;
}

body:has(.desk-v2-flow-reordered) .desk-v2-account-note {
  text-align: left !important;
}

@media (max-width: 860px) {
  body:has(.desk-v2-flow-reordered) .desk-v2-layout {
    grid-template-columns: 1fr !important;
    gap: 14px !important;
  }

  body:has(.desk-v2-flow-reordered) .desk-v2-watchlist {
    order: 1 !important;
  }

  body:has(.desk-v2-flow-reordered) .desk-v2-main-screen {
    order: 2 !important;
  }

  body:has(.desk-v2-flow-reordered) .desk-v2-action-row {
    margin-top: 14px !important;
    gap: 14px !important;
  }

  body:has(.desk-v2-flow-reordered) .desk-v2-risk {
    margin-top: 14px !important;
  }
}

@media (max-width: 640px) {
  body:has(.desk-v2-flow-reordered) .desk-v2-action-row {
    gap: 12px !important;
  }

  body:has(.desk-v2-flow-reordered) .desk-v2-risk {
    margin-top: 12px !important;
  }
}

/* FINAL CLEAN FLOW FIX */
/* Order: Market Type -> Chart -> Setup Read -> Training Decision -> Decision Log -> Session Summary. */

body:has(.desk-v2-clean) .desk-v2-flow-stack {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 18px !important;
  width: 100% !important;
  max-width: 100% !important;
}

body:has(.desk-v2-clean) .desk-v2-layout {
  display: block !important;
  grid-template-columns: 1fr !important;
}

body:has(.desk-v2-clean) .desk-v2-watchlist,
body:has(.desk-v2-clean) .desk-v2-main-screen,
body:has(.desk-v2-clean) .desk-v2-action-row,
body:has(.desk-v2-clean) .desk-v2-mode-panel,
body:has(.desk-v2-clean) .desk-v2-ticket,
body:has(.desk-v2-clean) .desk-v2-journal,
body:has(.desk-v2-clean) .desk-v2-risk {
  width: 100% !important;
  max-width: 100% !important;
}

body:has(.desk-v2-clean) .desk-v2-watchlist {
  order: 1 !important;
}

body:has(.desk-v2-clean) .desk-v2-main-screen {
  order: 2 !important;
  overflow: visible !important;
}

body:has(.desk-v2-clean) .desk-v2-action-row {
  order: 3 !important;
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 18px !important;
  margin-top: 0 !important;
}

body:has(.desk-v2-clean) .desk-v2-mode-panel {
  order: 1 !important;
}

body:has(.desk-v2-clean) .desk-v2-ticket {
  order: 2 !important;
}

body:has(.desk-v2-clean) .desk-v2-journal {
  order: 3 !important;
}

body:has(.desk-v2-clean) .desk-v2-risk {
  order: 4 !important;
  margin-top: 0 !important;
}

body:has(.desk-v2-clean) .desk-v2-watchlist .desk-v2-setup-chip-row {
  justify-content: center !important;
}

@media (min-width: 861px) {
  body:has(.desk-v2-clean) .desk-v2-flow-stack,
  body:has(.desk-v2-clean) .desk-v2-action-row {
    grid-template-columns: 1fr !important;
  }
}

@media (max-width: 640px) {
  body:has(.desk-v2-clean) .desk-v2-flow-stack,
  body:has(.desk-v2-clean) .desk-v2-action-row {
    gap: 14px !important;
  }
}

/* FINAL RESTORE VERTICAL TRAINING FLOW */
/* Correct order: Market Type -> Chart -> Setup Read -> Training Decision -> Decision Log -> Session Summary -> Reset. */

body:has(.desk-v2-clean) .desk-v2-layout {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 18px !important;
  align-items: stretch !important;
}

body:has(.desk-v2-clean) .desk-v2-watchlist,
body:has(.desk-v2-clean) .desk-v2-main-screen,
body:has(.desk-v2-clean) .desk-v2-risk {
  width: 100% !important;
  max-width: none !important;
}

body:has(.desk-v2-clean) .desk-v2-watchlist {
  order: 1 !important;
}

body:has(.desk-v2-clean) .desk-v2-main-screen {
  order: 2 !important;
}

body:has(.desk-v2-clean) .desk-v2-action-row {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 18px !important;
  margin-top: 18px !important;
}

body:has(.desk-v2-clean) .desk-v2-mode-panel {
  order: 1 !important;
}

body:has(.desk-v2-clean) .desk-v2-ticket {
  order: 2 !important;
}

body:has(.desk-v2-clean) .desk-v2-journal {
  order: 3 !important;
}

body:has(.desk-v2-clean) .desk-v2-risk {
  order: 4 !important;
}

body:has(.desk-v2-clean) .desk-v2-layout > .desk-v2-risk {
  margin-top: 0 !important;
}

body:has(.desk-v2-clean) .desk-v2-mode-panel .desk-v2-panel-head strong {
  font-size: 20px !important;
  letter-spacing: -0.03em !important;
}

body:has(.desk-v2-clean) .desk-v2-ticket .desk-v2-panel-head strong,
body:has(.desk-v2-clean) .desk-v2-journal .desk-v2-panel-head strong,
body:has(.desk-v2-clean) .desk-v2-risk .desk-v2-panel-head strong {
  font-size: 20px !important;
  letter-spacing: -0.03em !important;
}

body:has(.desk-v2-clean) .desk-v2-mode-panel [data-desk-mode-copy] {
  max-width: none !important;
  font-size: 15px !important;
  line-height: 1.42 !important;
  color: rgba(17, 17, 17, 0.74) !important;
}

body:has(.desk-v2-clean) .desk-v2-account-summary {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 10px !important;
}

body:has(.desk-v2-clean) .desk-v2-account-note {
  grid-column: 1 / -1 !important;
}

body:has(.desk-v2-clean) .desk-v2-reset-session {
  margin-top: 12px !important;
}

@media (max-width: 760px) {
  body:has(.desk-v2-clean) .desk-v2-layout,
  body:has(.desk-v2-clean) .desk-v2-action-row {
    grid-template-columns: 1fr !important;
    gap: 14px !important;
  }

  body:has(.desk-v2-clean) .desk-v2-account-summary {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

/* FINAL FLOW LOCK */
/* Single clean order: Desk Position, Market Type, Chart, Setup Read, Training Decision, Decision Log, Session Summary, Reset Session. */

body:has(.desk-v2-clean) .desk-v2-flow-stack {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 18px !important;
  width: 100% !important;
}

body:has(.desk-v2-clean) .desk-v2-flow-stack > .desk-v2-watchlist {
  order: 1 !important;
  width: 100% !important;
}

body:has(.desk-v2-clean) .desk-v2-flow-stack > .desk-v2-main-screen {
  order: 2 !important;
  width: 100% !important;
}

body:has(.desk-v2-clean) .desk-v2-flow-stack > .desk-v2-action-row {
  order: 3 !important;
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 18px !important;
  width: 100% !important;
  margin-top: 0 !important;
}

body:has(.desk-v2-clean) .desk-v2-action-row > .desk-v2-mode-panel {
  order: 1 !important;
}

body:has(.desk-v2-clean) .desk-v2-action-row > .desk-v2-ticket {
  order: 2 !important;
}

body:has(.desk-v2-clean) .desk-v2-action-row > .desk-v2-journal {
  order: 3 !important;
}

body:has(.desk-v2-clean) .desk-v2-action-row > .desk-v2-risk {
  order: 4 !important;
}

body:has(.desk-v2-clean) .desk-v2-watchlist,
body:has(.desk-v2-clean) .desk-v2-main-screen,
body:has(.desk-v2-clean) .desk-v2-mode-panel,
body:has(.desk-v2-clean) .desk-v2-ticket,
body:has(.desk-v2-clean) .desk-v2-journal,
body:has(.desk-v2-clean) .desk-v2-risk {
  width: 100% !important;
  max-width: none !important;
}

body:has(.desk-v2-clean) .desk-v2-mode-panel .desk-v2-panel-head strong::after {
  content: "Setup Read" !important;
}

body:has(.desk-v2-clean) .desk-v2-mode-panel .desk-v2-panel-head strong {
  font-size: 0 !important;
}

body:has(.desk-v2-clean) .desk-v2-mode-panel .desk-v2-panel-head strong::after {
  font-size: 20px !important;
  line-height: 1.15 !important;
  font-weight: 950 !important;
  letter-spacing: -0.03em !important;
}

body:has(.desk-v2-clean) .desk-v2-risk .desk-v2-panel-head strong::after {
  content: "Session Summary" !important;
}

body:has(.desk-v2-clean) .desk-v2-risk .desk-v2-panel-head strong {
  font-size: 0 !important;
}

body:has(.desk-v2-clean) .desk-v2-risk .desk-v2-panel-head strong::after {
  font-size: 20px !important;
  line-height: 1.15 !important;
  font-weight: 950 !important;
  letter-spacing: -0.03em !important;
}

@media (min-width: 761px) {
  body:has(.desk-v2-clean) .desk-v2-flow-stack,
  body:has(.desk-v2-clean) .desk-v2-action-row {
    grid-template-columns: 1fr !important;
  }
}

@media (max-width: 760px) {
  body:has(.desk-v2-clean) .desk-v2-flow-stack,
  body:has(.desk-v2-clean) .desk-v2-action-row {
    grid-template-columns: 1fr !important;
    gap: 14px !important;
  }
}

/* FINAL LOWER FLOW ORDER LOCK */
/* Correct order:
   Desk Position
   Market Type
   Chart / Trend Condition
   Step Card
   Training Decision
   Decision Log
   Setup Read
   Session Summary / Reset
*/

body:has(.desk-v2-clean) .desk-v2-action-row {
  display: flex !important;
  flex-direction: column !important;
  gap: 14px !important;
  width: 100% !important;
}

body:has(.desk-v2-clean) .desk-v2-action-row > .desk-v2-ticket {
  order: 1 !important;
}

body:has(.desk-v2-clean) .desk-v2-action-row > .desk-v2-journal {
  order: 2 !important;
}

body:has(.desk-v2-clean) .desk-v2-action-row > .desk-v2-mode-panel {
  order: 3 !important;
}

body:has(.desk-v2-clean) .desk-v2-action-row > .desk-v2-risk {
  order: 4 !important;
}

body:has(.desk-v2-clean) .desk-v2-action-row > .desk-v2-ticket,
body:has(.desk-v2-clean) .desk-v2-action-row > .desk-v2-journal,
body:has(.desk-v2-clean) .desk-v2-action-row > .desk-v2-mode-panel,
body:has(.desk-v2-clean) .desk-v2-action-row > .desk-v2-risk {
  width: 100% !important;
  max-width: 100% !important;
}

body:has(.desk-v2-clean) .desk-v2-reset-session {
  margin-top: 12px !important;
}

/* FINAL DECISION LOG POSITION FIX */
/* Locked flow:
   Desk Position
   Market Type
   Trend / Chart
   Step Card
   Training Decision
   Decision Log
   Setup Read
   Session Summary / Reset
*/

body:has(.desk-v2-clean) .desk-v2-action-row {
  display: flex !important;
  flex-direction: column !important;
  gap: 14px !important;
  width: 100% !important;
  max-width: 100% !important;
}

body:has(.desk-v2-clean) .desk-v2-action-row > .desk-v2-ticket {
  order: 1 !important;
}

body:has(.desk-v2-clean) .desk-v2-action-row > .desk-v2-journal {
  order: 2 !important;
}

body:has(.desk-v2-clean) .desk-v2-action-row > .desk-v2-mode-panel {
  order: 3 !important;
}

body:has(.desk-v2-clean) .desk-v2-action-row > .desk-v2-risk {
  order: 4 !important;
}

body:has(.desk-v2-clean) .desk-v2-action-row > .desk-v2-ticket,
body:has(.desk-v2-clean) .desk-v2-action-row > .desk-v2-journal,
body:has(.desk-v2-clean) .desk-v2-action-row > .desk-v2-mode-panel,
body:has(.desk-v2-clean) .desk-v2-action-row > .desk-v2-risk {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
}

body:has(.desk-v2-clean) .desk-v2-ticket {
  margin-top: 0 !important;
}

body:has(.desk-v2-clean) .desk-v2-journal {
  margin-top: 0 !important;
}

body:has(.desk-v2-clean) .desk-v2-mode-panel {
  margin-top: 0 !important;
}

body:has(.desk-v2-clean) .desk-v2-risk {
  margin-top: 0 !important;
}

body:has(.desk-v2-clean) .desk-v2-reset-session {
  margin-top: 12px !important;
}

/* FINAL CLEAN PHYSICAL FLOW */
/* Physical HTML order:
   Market Type
   Chart / Setup Path
   Training Decision
   Decision Log
   Setup Read
   Session Summary / Reset
*/

body:has(.desk-v2-clean) .desk-v2-flow-stack {
  display: flex !important;
  flex-direction: column !important;
  gap: 14px !important;
  width: 100% !important;
}

body:has(.desk-v2-clean) .desk-v2-action-row {
  display: flex !important;
  flex-direction: column !important;
  gap: 14px !important;
  width: 100% !important;
  max-width: 100% !important;
}

body:has(.desk-v2-clean) .desk-v2-watchlist,
body:has(.desk-v2-clean) .desk-v2-main-screen,
body:has(.desk-v2-clean) .desk-v2-ticket,
body:has(.desk-v2-clean) .desk-v2-journal,
body:has(.desk-v2-clean) .desk-v2-mode-panel,
body:has(.desk-v2-clean) .desk-v2-risk {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  margin-top: 0 !important;
}

body:has(.desk-v2-clean) .desk-v2-action-row > .desk-v2-ticket {
  order: 1 !important;
}

body:has(.desk-v2-clean) .desk-v2-action-row > .desk-v2-journal {
  order: 2 !important;
}

body:has(.desk-v2-clean) .desk-v2-action-row > .desk-v2-mode-panel {
  order: 3 !important;
}

body:has(.desk-v2-clean) .desk-v2-action-row > .desk-v2-risk {
  order: 4 !important;
}

/* FINAL ABC FLOW LOCK */
/* Locked visible order:
   Desk Position
   Market Type
   Chart / Setup Path
   Step Card
   Training Decision
   Decision Log
   Setup Read
   Session Summary
   Reset Session
*/

body:has(.desk-v2-clean) .desk-v2-flow-stack {
  display: flex !important;
  flex-direction: column !important;
  gap: 14px !important;
  width: 100% !important;
  max-width: 100% !important;
}

body:has(.desk-v2-clean) .desk-v2-watchlist {
  order: 1 !important;
  width: 100% !important;
  max-width: 100% !important;
}

body:has(.desk-v2-clean) .desk-v2-main-screen {
  order: 2 !important;
  width: 100% !important;
  max-width: 100% !important;
}

body:has(.desk-v2-clean) .desk-v2-action-row {
  order: 3 !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 14px !important;
  width: 100% !important;
  max-width: 100% !important;
}

body:has(.desk-v2-clean) .desk-v2-action-row > .desk-v2-ticket {
  order: 1 !important;
}

body:has(.desk-v2-clean) .desk-v2-action-row > .desk-v2-journal {
  order: 2 !important;
}

body:has(.desk-v2-clean) .desk-v2-action-row > .desk-v2-mode-panel {
  order: 3 !important;
}

body:has(.desk-v2-clean) .desk-v2-action-row > .desk-v2-risk {
  order: 4 !important;
}

body:has(.desk-v2-clean) .desk-v2-action-row > .desk-v2-ticket,
body:has(.desk-v2-clean) .desk-v2-action-row > .desk-v2-journal,
body:has(.desk-v2-clean) .desk-v2-action-row > .desk-v2-mode-panel,
body:has(.desk-v2-clean) .desk-v2-action-row > .desk-v2-risk {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  margin-top: 0 !important;
}

body:has(.desk-v2-clean) .desk-v2-reset-session {
  margin-top: 12px !important;
}

/* ROLE POSITION SIMULATION ADDON */
/* Adds role input without changing the core desk flow. */

body:has(.desk-v2-clean) .desk-v2-role-inline {
  display: grid !important;
  grid-template-columns: minmax(120px, 180px) minmax(0, 1fr) !important;
  gap: 12px !important;
  align-items: center !important;
  width: 100% !important;
  margin-bottom: 12px !important;
}

body:has(.desk-v2-clean) .desk-v2-role-inline span {
  color: rgba(17, 17, 17, 0.55) !important;
  font-size: 11px !important;
  line-height: 1 !important;
  font-weight: 950 !important;
  letter-spacing: 0.16em !important;
  text-transform: uppercase !important;
}

body:has(.desk-v2-clean) .desk-v2-role-select {
  width: 100% !important;
  min-height: 44px !important;
  border-radius: 14px !important;
  border: 1px solid rgba(17, 17, 17, 0.12) !important;
  background: rgba(255, 255, 255, 0.9) !important;
  color: #111 !important;
  font-size: 14px !important;
  font-weight: 850 !important;
  padding: 0 14px !important;
}

body:has(.desk-v2-clean) .desk-v2-role-context {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 10px !important;
  margin: 0 0 14px !important;
}

body:has(.desk-v2-clean) .desk-v2-role-card {
  min-height: 58px !important;
  padding: 11px 10px !important;
  border-radius: 14px !important;
  background: rgba(25, 198, 184, 0.055) !important;
  border: 1px solid rgba(25, 198, 184, 0.16) !important;
  text-align: center !important;
}

body:has(.desk-v2-clean) .desk-v2-role-card span {
  display: block !important;
  margin-bottom: 6px !important;
  color: rgba(17, 17, 17, 0.48) !important;
  font-size: 10px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.14em !important;
}

body:has(.desk-v2-clean) .desk-v2-role-card strong {
  display: block !important;
  color: #111 !important;
  font-size: 14px !important;
  line-height: 1.15 !important;
  font-weight: 950 !important;
}

body:has(.desk-v2-clean) .desk-v2-role-context p {
  grid-column: 1 / -1 !important;
  margin: 0 !important;
  padding: 10px 12px !important;
  border-radius: 14px !important;
  background: rgba(17, 17, 17, 0.035) !important;
  color: rgba(17, 17, 17, 0.68) !important;
  font-size: 12px !important;
  line-height: 1.35 !important;
  font-weight: 750 !important;
}

@media (max-width: 640px) {
  body:has(.desk-v2-clean) .desk-v2-role-inline {
    grid-template-columns: 1fr !important;
    gap: 8px !important;
  }

  body:has(.desk-v2-clean) .desk-v2-role-context {
    grid-template-columns: 1fr !important;
  }
}

/* FINAL ROLE / ACTION / SUMMARY POLISH LOCK */
/* Role Position matches Desk Position. Role stats stay 3 across. Mobile action buttons stay 4 across. */

body:has(.desk-v2-clean) .desk-v2-role-inline {
  display: grid !important;
  grid-template-columns: 120px minmax(0, 1fr) !important;
  align-items: center !important;
  gap: 12px !important;
  width: 100% !important;
  margin: 0 0 10px !important;
}

body:has(.desk-v2-clean) .desk-v2-role-inline span {
  margin: 0 !important;
  color: rgba(17, 17, 17, 0.55) !important;
  font-size: 11px !important;
  line-height: 1 !important;
  font-weight: 950 !important;
  letter-spacing: 0.16em !important;
  text-transform: uppercase !important;
  white-space: nowrap !important;
}

body:has(.desk-v2-clean) .desk-v2-role-select {
  width: 100% !important;
  min-height: 38px !important;
  height: 38px !important;
  border-radius: 12px !important;
  border: 1px solid rgba(17, 17, 17, 0.12) !important;
  background: rgba(255, 255, 255, 0.92) !important;
  color: #111 !important;
  font-size: 14px !important;
  line-height: 1 !important;
  font-weight: 850 !important;
  padding: 0 12px !important;
  text-align: center !important;
  text-align-last: center !important;
  -moz-text-align-last: center !important;
  appearance: auto !important;
}

body:has(.desk-v2-clean) .desk-v2-role-select option {
  text-align: left !important;
}

body:has(.desk-v2-clean) .desk-v2-role-context {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 10px !important;
  margin: 0 0 14px !important;
}

body:has(.desk-v2-clean) .desk-v2-role-card {
  min-height: 54px !important;
  padding: 10px 8px !important;
  border-radius: 14px !important;
  background: rgba(25, 198, 184, 0.045) !important;
  border: 1px solid rgba(25, 198, 184, 0.14) !important;
  text-align: center !important;
}

body:has(.desk-v2-clean) .desk-v2-role-card span {
  display: block !important;
  margin-bottom: 6px !important;
  color: rgba(17, 17, 17, 0.46) !important;
  font-size: 10px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.14em !important;
}

body:has(.desk-v2-clean) .desk-v2-role-card strong {
  display: block !important;
  color: #111 !important;
  font-size: 14px !important;
  line-height: 1.1 !important;
  font-weight: 950 !important;
}

body:has(.desk-v2-clean) .desk-v2-role-context p {
  grid-column: 1 / -1 !important;
  margin: 0 !important;
  padding: 9px 11px !important;
  border-radius: 12px !important;
  background: rgba(17, 17, 17, 0.035) !important;
  color: rgba(17, 17, 17, 0.68) !important;
  font-size: 12px !important;
  line-height: 1.3 !important;
  font-weight: 750 !important;
}

body:has(.desk-v2-clean) [data-desk-actions] {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 10px !important;
}

body:has(.desk-v2-clean) [data-desk-actions] button {
  min-width: 0 !important;
}

body:has(.desk-v2-clean) .desk-v2-account-summary {
  align-items: stretch !important;
}

body:has(.desk-v2-clean) .desk-v2-account-card strong {
  overflow-wrap: anywhere !important;
}

@media (max-width: 640px) {
  body:has(.desk-v2-clean) .desk-v2-role-inline {
    grid-template-columns: 112px minmax(0, 1fr) !important;
    gap: 10px !important;
  }

  body:has(.desk-v2-clean) .desk-v2-role-select {
    min-height: 36px !important;
    height: 36px !important;
    font-size: 13px !important;
    padding: 0 8px !important;
  }

  body:has(.desk-v2-clean) .desk-v2-role-context {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 7px !important;
  }

  body:has(.desk-v2-clean) .desk-v2-role-card {
    min-height: 48px !important;
    padding: 8px 4px !important;
    border-radius: 12px !important;
  }

  body:has(.desk-v2-clean) .desk-v2-role-card span {
    font-size: 8px !important;
    letter-spacing: 0.1em !important;
  }

  body:has(.desk-v2-clean) .desk-v2-role-card strong {
    font-size: 12px !important;
  }

  body:has(.desk-v2-clean) .desk-v2-role-context p {
    font-size: 11px !important;
  }

  body:has(.desk-v2-clean) [data-desk-actions] {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 6px !important;
  }

  body:has(.desk-v2-clean) [data-desk-actions] button {
    min-height: 54px !important;
    padding: 8px 4px !important;
    border-radius: 14px !important;
  }

  body:has(.desk-v2-clean) [data-desk-actions] button strong {
    font-size: 12px !important;
    line-height: 1 !important;
  }

  body:has(.desk-v2-clean) [data-desk-actions] button span {
    font-size: 9px !important;
    line-height: 1.1 !important;
    letter-spacing: -0.01em !important;
  }

  body:has(.desk-v2-clean) .desk-v2-account-summary {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

/* SETUP READ BEFORE DECISION LOCK */
/* Final visible flow:
   Role Position
   Desk Position
   Market Type
   Chart / Setup Path
   Setup Read
   Training Decision
   Decision Log
   Session Summary
*/

body:has(.desk-v2-clean) .desk-v2-flow-stack {
  display: flex !important;
  flex-direction: column !important;
  gap: 14px !important;
}

body:has(.desk-v2-clean) .desk-v2-action-row {
  display: flex !important;
  flex-direction: column !important;
  gap: 14px !important;
  width: 100% !important;
  max-width: 100% !important;
}

body:has(.desk-v2-clean) .desk-v2-action-row > .desk-v2-mode-panel {
  order: 1 !important;
}

body:has(.desk-v2-clean) .desk-v2-action-row > .desk-v2-ticket {
  order: 2 !important;
}

body:has(.desk-v2-clean) .desk-v2-action-row > .desk-v2-journal {
  order: 3 !important;
}

body:has(.desk-v2-clean) .desk-v2-action-row > .desk-v2-risk {
  order: 4 !important;
}

body:has(.desk-v2-clean) .desk-v2-action-row > .desk-v2-mode-panel,
body:has(.desk-v2-clean) .desk-v2-action-row > .desk-v2-ticket,
body:has(.desk-v2-clean) .desk-v2-action-row > .desk-v2-journal,
body:has(.desk-v2-clean) .desk-v2-action-row > .desk-v2-risk {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  margin-top: 0 !important;
}

@media (max-width: 640px) {
  body:has(.desk-v2-clean) [data-desk-actions] {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 6px !important;
  }

  body:has(.desk-v2-clean) [data-desk-actions] button {
    min-height: 54px !important;
    padding: 8px 4px !important;
    border-radius: 14px !important;
  }

  body:has(.desk-v2-clean) [data-desk-actions] button strong {
    font-size: 12px !important;
  }

  body:has(.desk-v2-clean) [data-desk-actions] button span {
    font-size: 9px !important;
    line-height: 1.1 !important;
  }
}

/* PROFESSIONAL TRADING DESK FINAL LOCK */
/* Scope: visual polish only. Keeps existing simulator logic intact. */

body:has(.desk-v2-clean) .desk-v2-flow-stack,
body:has(.desk-v2-clean) .desk-v2-action-row {
  display: flex !important;
  flex-direction: column !important;
  gap: 14px !important;
  width: 100% !important;
  max-width: 100% !important;
}

body:has(.desk-v2-clean) .desk-v2-watchlist,
body:has(.desk-v2-clean) .desk-v2-main-screen,
body:has(.desk-v2-clean) .desk-v2-mode-panel,
body:has(.desk-v2-clean) .desk-v2-ticket,
body:has(.desk-v2-clean) .desk-v2-journal,
body:has(.desk-v2-clean) .desk-v2-risk {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  margin-top: 0 !important;
}

body:has(.desk-v2-clean) .desk-v2-role-inline {
  display: grid !important;
  grid-template-columns: 120px minmax(0, 1fr) !important;
  gap: 12px !important;
  align-items: center !important;
  width: 100% !important;
  margin: 0 0 10px !important;
}

body:has(.desk-v2-clean) .desk-v2-role-inline span,
body:has(.desk-v2-clean) .desk-v2-setup-inline span {
  margin: 0 !important;
  color: rgba(17, 17, 17, 0.55) !important;
  font-size: 11px !important;
  line-height: 1 !important;
  font-weight: 950 !important;
  letter-spacing: 0.16em !important;
  text-transform: uppercase !important;
  white-space: nowrap !important;
}

body:has(.desk-v2-clean) .desk-v2-role-select,
body:has(.desk-v2-clean) .desk-v2-setup-select {
  width: 100% !important;
  height: 38px !important;
  min-height: 38px !important;
  border-radius: 12px !important;
  border: 1px solid rgba(17, 17, 17, 0.12) !important;
  background: rgba(255, 255, 255, 0.92) !important;
  color: #111 !important;
  font-size: 14px !important;
  line-height: 1 !important;
  font-weight: 850 !important;
  text-align: center !important;
  text-align-last: center !important;
  -moz-text-align-last: center !important;
  padding: 0 12px !important;
}

body:has(.desk-v2-clean) .desk-v2-role-select option,
body:has(.desk-v2-clean) .desk-v2-setup-select option {
  text-align: left !important;
}

body:has(.desk-v2-clean) .desk-v2-role-context {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 8px !important;
  margin: 0 0 12px !important;
}

body:has(.desk-v2-clean) .desk-v2-role-card {
  min-height: 50px !important;
  padding: 9px 6px !important;
  border-radius: 14px !important;
  background: rgba(25, 198, 184, 0.045) !important;
  border: 1px solid rgba(25, 198, 184, 0.14) !important;
  text-align: center !important;
}

body:has(.desk-v2-clean) .desk-v2-role-card span {
  display: block !important;
  margin-bottom: 5px !important;
  color: rgba(17, 17, 17, 0.46) !important;
  font-size: 9px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.12em !important;
}

body:has(.desk-v2-clean) .desk-v2-role-card strong {
  display: block !important;
  color: #111 !important;
  font-size: 13px !important;
  line-height: 1.1 !important;
  font-weight: 950 !important;
}

body:has(.desk-v2-clean) .desk-v2-role-context p {
  grid-column: 1 / -1 !important;
  margin: 0 !important;
  padding: 9px 11px !important;
  border-radius: 12px !important;
  background: rgba(17, 17, 17, 0.035) !important;
  color: rgba(17, 17, 17, 0.68) !important;
  font-size: 12px !important;
  line-height: 1.3 !important;
  font-weight: 750 !important;
}

body:has(.desk-v2-clean) [data-desk-actions] {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 8px !important;
}

body:has(.desk-v2-clean) [data-desk-actions] button {
  min-height: 54px !important;
  padding: 8px 4px !important;
  border-radius: 14px !important;
}

body:has(.desk-v2-clean) [data-desk-actions] button strong {
  font-size: 12px !important;
  line-height: 1 !important;
}

body:has(.desk-v2-clean) [data-desk-actions] button span {
  font-size: 9px !important;
  line-height: 1.1 !important;
}

body:has(.desk-v2-clean) .desk-v2-account-summary {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 10px !important;
  align-items: stretch !important;
}

body:has(.desk-v2-clean) .desk-v2-account-card strong {
  overflow-wrap: anywhere !important;
}

body:has(.desk-v2-clean) .desk-v2-account-note {
  grid-column: 1 / -1 !important;
}

@media (max-width: 640px) {
  body:has(.desk-v2-clean) .desk-v2-role-inline {
    grid-template-columns: 112px minmax(0, 1fr) !important;
    gap: 10px !important;
  }

  body:has(.desk-v2-clean) .desk-v2-role-select,
  body:has(.desk-v2-clean) .desk-v2-setup-select {
    height: 36px !important;
    min-height: 36px !important;
    font-size: 13px !important;
  }

  body:has(.desk-v2-clean) .desk-v2-role-context {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 6px !important;
  }

  body:has(.desk-v2-clean) .desk-v2-role-card {
    min-height: 48px !important;
    padding: 8px 4px !important;
  }

  body:has(.desk-v2-clean) .desk-v2-role-card span {
    font-size: 8px !important;
    letter-spacing: 0.08em !important;
  }

  body:has(.desk-v2-clean) .desk-v2-role-card strong {
    font-size: 12px !important;
  }

  body:has(.desk-v2-clean) [data-desk-actions] {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 6px !important;
  }

  body:has(.desk-v2-clean) [data-desk-actions] button {
    min-height: 52px !important;
    padding: 7px 3px !important;
  }
}

/* FINAL DESK POSITION CONTROL RESTORE */
/* Restores Desk Position as the top control and matches Role / Market selector treatment. */

body:has(.desk-v2-clean) .desk-v2-position-inline {
  display: grid !important;
  grid-template-columns: 120px minmax(0, 1fr) !important;
  gap: 12px !important;
  align-items: center !important;
  width: 100% !important;
  margin: 0 0 12px !important;
}

body:has(.desk-v2-clean) .desk-v2-position-inline span {
  margin: 0 !important;
  color: rgba(17, 17, 17, 0.55) !important;
  font-size: 11px !important;
  line-height: 1 !important;
  font-weight: 950 !important;
  letter-spacing: 0.16em !important;
  text-transform: uppercase !important;
  white-space: nowrap !important;
}

body:has(.desk-v2-clean) .desk-v2-position-select,
body:has(.desk-v2-clean) .desk-v2-role-select,
body:has(.desk-v2-clean) .desk-v2-setup-select {
  width: 100% !important;
  min-height: 38px !important;
  height: 38px !important;
  border-radius: 12px !important;
  border: 1px solid rgba(17, 17, 17, 0.12) !important;
  background: rgba(255, 255, 255, 0.92) !important;
  color: #111 !important;
  font-size: 14px !important;
  line-height: 1 !important;
  font-weight: 850 !important;
  padding: 0 12px !important;
  text-align: center !important;
  text-align-last: center !important;
  -moz-text-align-last: center !important;
}

body:has(.desk-v2-clean) .desk-v2-position-select option,
body:has(.desk-v2-clean) .desk-v2-role-select option,
body:has(.desk-v2-clean) .desk-v2-setup-select option {
  text-align: left !important;
}

@media (max-width: 640px) {
  body:has(.desk-v2-clean) .desk-v2-position-inline,
  body:has(.desk-v2-clean) .desk-v2-role-inline,
  body:has(.desk-v2-clean) .desk-v2-setup-inline {
    grid-template-columns: 112px minmax(0, 1fr) !important;
    gap: 10px !important;
  }

  body:has(.desk-v2-clean) [data-desk-actions] {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 6px !important;
  }

  body:has(.desk-v2-clean) [data-desk-actions] button {
    min-height: 54px !important;
    padding: 8px 4px !important;
    border-radius: 14px !important;
  }

  body:has(.desk-v2-clean) [data-desk-actions] button strong {
    font-size: 12px !important;
    line-height: 1 !important;
  }

  body:has(.desk-v2-clean) [data-desk-actions] button span {
    font-size: 9px !important;
    line-height: 1.1 !important;
  }

  body:has(.desk-v2-clean) .desk-v2-role-context {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
}

/* FINAL TRADING DESK HERO HEADER TYPE LOCK */
body:has(.desk-v2-clean) .sim-page-hero h1 {
  font-size: clamp(1.55rem, 5.2vw, 2.75rem) !important;
  line-height: 0.94 !important;
  letter-spacing: -0.055em !important;
  max-width: 100% !important;
  overflow: visible !important;
}

body:has(.desk-v2-clean) .sim-page-hero p {
  font-size: clamp(1rem, 3.45vw, 1.65rem) !important;
  line-height: 1.22 !important;
  max-width: 54rem !important;
}

@media (max-width: 520px) {
  body:has(.desk-v2-clean) .sim-page-hero h1 {
    font-size: clamp(1.45rem, 5.8vw, 1.95rem) !important;
    line-height: 0.96 !important;
  }

  body:has(.desk-v2-clean) .sim-page-hero p {
    font-size: clamp(1rem, 4vw, 1.18rem) !important;
    line-height: 1.28 !important;
  }
}

/* FINAL VISIBLE DESK CLOCK ROW LOCK */
.desk-v2-clock-row[data-desk-clocks] {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 8px !important;
  width: 100% !important;
  margin: 10px 0 16px !important;
  visibility: visible !important;
  opacity: 1 !important;
}

.desk-v2-clock-row[data-desk-clocks] .desk-v2-clock-card {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
}

/* FINAL TRADING DESK HERO FIT LOCK */
body:has(.desk-v2-clean) .sim-page-hero {
  width: min(100%, 520px) !important;
  box-sizing: border-box !important;
  overflow: hidden !important;
}

body:has(.desk-v2-clean) .sim-page-hero h1 {
  font-size: clamp(1.42rem, 4.8vw, 2.45rem) !important;
  line-height: 1 !important;
  letter-spacing: -0.05em !important;
  max-width: 100% !important;
  white-space: normal !important;
  overflow-wrap: normal !important;
}

/* FINAL CLOCK VISIBILITY AND TETHER LOCK */
body:has(.desk-v2-clean) .desk-v2-clock-row {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 10px !important;
  width: 100% !important;
  margin: 12px 0 16px !important;
  visibility: visible !important;
  opacity: 1 !important;
}

body:has(.desk-v2-clean) .desk-v2-clock-card {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 78px !important;
  padding: 12px 10px !important;
  border: 1px solid rgba(15, 23, 42, 0.1) !important;
  border-radius: 14px !important;
  background: #fff !important;
  visibility: visible !important;
  opacity: 1 !important;
  text-align: center !important;
}

body:has(.desk-v2-clean) .desk-v2-clock-card span {
  font-size: 10px !important;
  font-weight: 800 !important;
  letter-spacing: 0.18em !important;
  text-transform: uppercase !important;
}

body:has(.desk-v2-clean) .desk-v2-clock-card strong {
  font-size: 22px !important;
  line-height: 1.1 !important;
}

body:has(.desk-v2-clean) .desk-v2-clock-card em {
  font-size: 10px !important;
  font-style: normal !important;
  font-weight: 800 !important;
  letter-spacing: 0.2em !important;
  text-transform: uppercase !important;
}

body:has(.desk-v2-clean) .desk-v2-clock-card.is-active {
  border-color: rgba(20, 184, 166, 0.45) !important;
  box-shadow: 0 0 0 1px rgba(20, 184, 166, 0.22) !important;
}

@media (max-width: 640px) {
  body:has(.desk-v2-clean) .desk-v2-clock-row {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 8px !important;
  }

  body:has(.desk-v2-clean) .desk-v2-clock-card {
    min-height: 76px !important;
    padding: 10px 6px !important;
  }

  body:has(.desk-v2-clean) .desk-v2-clock-card strong {
    font-size: 18px !important;
  }

  body:has(.desk-v2-clean) .desk-v2-clock-card span,
  body:has(.desk-v2-clean) .desk-v2-clock-card em {
    font-size: 8px !important;
  }
}

/* FINAL TRADING DESK HERO FIT LOCK */
body:has(.desk-v2-clean) .sim-page-hero {
  width: min(100%, 520px) !important;
  box-sizing: border-box !important;
  overflow: hidden !important;
}

body:has(.desk-v2-clean) .sim-page-hero h1 {
  font-size: clamp(1.42rem, 4.8vw, 2.45rem) !important;
  line-height: 1 !important;
  letter-spacing: -0.05em !important;
  max-width: 100% !important;
  white-space: normal !important;
  overflow-wrap: normal !important;
}

/* FINAL TRADING DESK HERO FIT LOCK */
body:has(.desk-v2-clean) .sim-page-hero {
  width: min(100%, 520px) !important;
  box-sizing: border-box !important;
  overflow: hidden !important;
}

body:has(.desk-v2-clean) .sim-page-hero h1 {
  font-size: clamp(1.42rem, 4.8vw, 2.45rem) !important;
  line-height: 1 !important;
  letter-spacing: -0.05em !important;
  max-width: 100% !important;
  white-space: normal !important;
  overflow-wrap: normal !important;
}

/* FINAL CLOCK CARD STACK LOCK */
body:has(.desk-v2-clean) .desk-v2-clock-row {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 8px !important;
  width: 100% !important;
  margin: 12px 0 16px !important;
}

body:has(.desk-v2-clean) .desk-v2-clock-card {
  display: grid !important;
  grid-template-rows: auto auto auto !important;
  align-items: center !important;
  justify-items: center !important;
  text-align: center !important;
  min-height: 78px !important;
  padding: 10px 6px !important;
  border-radius: 14px !important;
  line-height: 1.05 !important;
  white-space: normal !important;
}

body:has(.desk-v2-clean) .desk-v2-clock-card span,
body:has(.desk-v2-clean) .desk-v2-clock-card strong,
body:has(.desk-v2-clean) .desk-v2-clock-card em {
  display: block !important;
  width: 100% !important;
  text-align: center !important;
  white-space: normal !important;
}

body:has(.desk-v2-clean) .desk-v2-clock-card span {
  font-size: 9px !important;
  font-weight: 800 !important;
  letter-spacing: 0.18em !important;
  text-transform: uppercase !important;
}

body:has(.desk-v2-clean) .desk-v2-clock-card strong {
  font-size: 20px !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  letter-spacing: 0.02em !important;
}

body:has(.desk-v2-clean) .desk-v2-clock-card em {
  font-size: 9px !important;
  font-style: normal !important;
  font-weight: 800 !important;
  letter-spacing: 0.18em !important;
  text-transform: uppercase !important;
}

@media (max-width: 640px) {
  body:has(.desk-v2-clean) .desk-v2-clock-card {
    min-height: 72px !important;
    padding: 9px 4px !important;
  }

  body:has(.desk-v2-clean) .desk-v2-clock-card strong {
    font-size: 17px !important;
  }

  body:has(.desk-v2-clean) .desk-v2-clock-card span,
  body:has(.desk-v2-clean) .desk-v2-clock-card em {
    font-size: 7.5px !important;
    letter-spacing: 0.16em !important;
  }
}

/* FINAL DESK TITLE SIZE OVERRIDE */
body .sim-page-shell .sim-page-hero h1 {
  font-size: clamp(1.35rem, 4.6vw, 2.35rem) !important;
  line-height: 1.02 !important;
  letter-spacing: -0.045em !important;
  max-width: 100% !important;
  white-space: normal !important;
  overflow-wrap: normal !important;
}

@media (max-width: 520px) {
  body .sim-page-shell .sim-page-hero h1 {
    font-size: clamp(1.25rem, 5vw, 1.75rem) !important;
    line-height: 1.05 !important;
  }
}

/* FINAL CLOCK POSITION POLISH ONLY */
body:has(.desk-v2-clean) .desk-v2-position-inline {
  margin-bottom: 14px !important;
}

body:has(.desk-v2-clean) .desk-v2-clock-row {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 8px !important;
  width: 100% !important;
  margin: 0 0 18px !important;
  align-items: stretch !important;
}

body:has(.desk-v2-clean) .desk-v2-clock-card {
  min-height: 76px !important;
  padding: 9px 6px !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  align-items: center !important;
  text-align: center !important;
  gap: 3px !important;
  line-height: 1 !important;
  overflow: hidden !important;
}

body:has(.desk-v2-clean) .desk-v2-clock-card span,
body:has(.desk-v2-clean) .desk-v2-clock-card strong,
body:has(.desk-v2-clean) .desk-v2-clock-card em {
  display: block !important;
  width: 100% !important;
  text-align: center !important;
  line-height: 1 !important;
  white-space: normal !important;
}

body:has(.desk-v2-clean) .desk-v2-clock-card span {
  font-size: 8px !important;
  font-weight: 900 !important;
  letter-spacing: 0.17em !important;
  text-transform: uppercase !important;
}

body:has(.desk-v2-clean) .desk-v2-clock-card strong {
  font-size: 18px !important;
  font-weight: 900 !important;
  letter-spacing: 0.01em !important;
}

body:has(.desk-v2-clean) .desk-v2-clock-card em {
  font-size: 8px !important;
  font-style: normal !important;
  font-weight: 900 !important;
  letter-spacing: 0.17em !important;
  text-transform: uppercase !important;
}

@media (max-width: 640px) {
  body:has(.desk-v2-clean) .desk-v2-position-inline {
    margin-bottom: 12px !important;
  }

  body:has(.desk-v2-clean) .desk-v2-clock-row {
    gap: 7px !important;
    margin-bottom: 16px !important;
  }

  body:has(.desk-v2-clean) .desk-v2-clock-card {
    min-height: 72px !important;
    padding: 8px 4px !important;
    gap: 3px !important;
  }

  body:has(.desk-v2-clean) .desk-v2-clock-card span,
  body:has(.desk-v2-clean) .desk-v2-clock-card em {
    font-size: 7px !important;
    letter-spacing: 0.15em !important;
  }

  body:has(.desk-v2-clean) .desk-v2-clock-card strong {
    font-size: 16px !important;
  }
}

/* FINAL CLEAN TRADING DESK TITLE LOCK */
body:has(.desk-v2-clean) .sim-page-hero h1,
body .sim-page-shell .sim-page-hero h1 {
  font-size: clamp(1.2rem, 4vw, 2rem) !important;
  line-height: 1.05 !important;
  letter-spacing: -0.035em !important;
  max-width: 100% !important;
  white-space: normal !important;
  overflow-wrap: normal !important;
}

@media (max-width: 520px) {
  body:has(.desk-v2-clean) .sim-page-hero h1,
  body .sim-page-shell .sim-page-hero h1 {
    font-size: clamp(1.1rem, 4.6vw, 1.55rem) !important;
    line-height: 1.08 !important;
  }
}

/* FINAL CLOCK CARD CENTER FIX ONLY */
/* Fixes clock placement/centering only. Does not touch desk tether, role, market, log, summary, or hero. */

body:has(.desk-v2-clean) .desk-v2-clock-row {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 8px !important;
  width: 100% !important;
  margin: 10px 0 18px !important;
  padding: 0 !important;
  align-items: stretch !important;
}

body:has(.desk-v2-clean) .desk-v2-clock-card {
  width: 100% !important;
  min-height: 78px !important;
  padding: 10px 6px !important;
  border-radius: 12px !important;

  display: grid !important;
  grid-template-rows: auto auto auto !important;
  place-items: center !important;
  align-content: center !important;
  justify-content: center !important;

  text-align: center !important;
  line-height: 1 !important;
  overflow: hidden !important;
}

body:has(.desk-v2-clean) .desk-v2-clock-card > span,
body:has(.desk-v2-clean) .desk-v2-clock-card > strong,
body:has(.desk-v2-clean) .desk-v2-clock-card > em {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  text-align: center !important;
  margin: 0 !important;
  padding: 0 !important;
  line-height: 1.05 !important;
  white-space: normal !important;
  overflow-wrap: normal !important;
  word-break: normal !important;
}

body:has(.desk-v2-clean) .desk-v2-clock-card > span {
  font-size: 8px !important;
  font-weight: 900 !important;
  letter-spacing: 0.18em !important;
  text-transform: uppercase !important;
}

body:has(.desk-v2-clean) .desk-v2-clock-card > strong {
  font-size: 18px !important;
  font-weight: 900 !important;
  letter-spacing: 0.01em !important;
  margin: 4px 0 3px !important;
  white-space: nowrap !important;
}

body:has(.desk-v2-clean) .desk-v2-clock-card > em {
  font-size: 8px !important;
  font-style: normal !important;
  font-weight: 900 !important;
  letter-spacing: 0.16em !important;
  text-transform: uppercase !important;
}

@media (max-width: 640px) {
  body:has(.desk-v2-clean) .desk-v2-clock-row {
    gap: 7px !important;
    margin: 10px 0 16px !important;
  }

  body:has(.desk-v2-clean) .desk-v2-clock-card {
    min-height: 74px !important;
    padding: 9px 4px !important;
  }

  body:has(.desk-v2-clean) .desk-v2-clock-card > span,
  body:has(.desk-v2-clean) .desk-v2-clock-card > em {
    font-size: 7px !important;
    letter-spacing: 0.14em !important;
  }

  body:has(.desk-v2-clean) .desk-v2-clock-card > strong {
    font-size: 15px !important;
    margin: 4px 0 3px !important;
  }
}

/* FINAL CLOCK VERTICAL CENTER LOCK */
/* Centers the three clock cards only. Does not touch desk position logic or page flow. */

body:has(.desk-v2-clean) .desk-v2-clock-row {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 8px !important;
  width: 100% !important;
  margin: 10px 0 18px !important;
  padding: 0 !important;
  align-items: stretch !important;
}

body:has(.desk-v2-clean) .desk-v2-clock-card {
  min-height: 76px !important;
  height: 76px !important;
  padding: 0 6px !important;
  box-sizing: border-box !important;

  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;

  text-align: center !important;
  line-height: 1 !important;
  overflow: hidden !important;
}

body:has(.desk-v2-clean) .desk-v2-clock-card > * {
  position: static !important;
  inset: auto !important;
  transform: none !important;
  float: none !important;

  display: block !important;
  width: 100% !important;
  max-width: 100% !important;

  margin-left: auto !important;
  margin-right: auto !important;
  text-align: center !important;
  line-height: 1.05 !important;
}

body:has(.desk-v2-clean) .desk-v2-clock-card span {
  font-size: 8px !important;
  font-weight: 900 !important;
  letter-spacing: 0.16em !important;
  text-transform: uppercase !important;
  margin: 0 0 4px !important;
}

body:has(.desk-v2-clean) .desk-v2-clock-card strong {
  font-size: 16px !important;
  font-weight: 900 !important;
  letter-spacing: 0.01em !important;
  white-space: nowrap !important;
  margin: 0 0 4px !important;
}

body:has(.desk-v2-clean) .desk-v2-clock-card em {
  font-size: 7px !important;
  font-style: normal !important;
  font-weight: 900 !important;
  letter-spacing: 0.16em !important;
  text-transform: uppercase !important;
  margin: 0 !important;
}

@media (max-width: 640px) {
  body:has(.desk-v2-clean) .desk-v2-clock-card {
    min-height: 74px !important;
    height: 74px !important;
    padding: 0 4px !important;
  }

  body:has(.desk-v2-clean) .desk-v2-clock-card span {
    font-size: 7px !important;
    letter-spacing: 0.13em !important;
    margin-bottom: 4px !important;
  }

  body:has(.desk-v2-clean) .desk-v2-clock-card strong {
    font-size: 15px !important;
    margin-bottom: 4px !important;
  }

  body:has(.desk-v2-clean) .desk-v2-clock-card em {
    font-size: 7px !important;
    letter-spacing: 0.13em !important;
  }
}

/* FINAL CLOCK CARD VISUAL RESTORE */
/* Restores the old centered three-clock card layout only. */

body:has(.desk-v2-clean) .desk-v2-clock-row {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 8px !important;
  width: 100% !important;
  margin: 12px 0 18px !important;
  padding: 0 !important;
  align-items: stretch !important;
}

body:has(.desk-v2-clean) .desk-v2-clock-card {
  min-height: 88px !important;
  height: 88px !important;
  padding: 12px 6px 11px !important;
  box-sizing: border-box !important;

  display: grid !important;
  grid-template-rows: auto auto auto !important;
  align-content: center !important;
  justify-items: center !important;
  row-gap: 5px !important;

  text-align: center !important;
  overflow: hidden !important;
}

body:has(.desk-v2-clean) .desk-v2-clock-card > * {
  position: static !important;
  inset: auto !important;
  transform: none !important;
  float: none !important;

  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;

  text-align: center !important;
  line-height: 1 !important;
}

body:has(.desk-v2-clean) .desk-v2-clock-card span {
  font-size: 9px !important;
  font-weight: 900 !important;
  letter-spacing: 0.2em !important;
  text-transform: uppercase !important;
}

body:has(.desk-v2-clean) .desk-v2-clock-card strong {
  font-size: 24px !important;
  font-weight: 900 !important;
  letter-spacing: 0.04em !important;
  white-space: nowrap !important;
}

body:has(.desk-v2-clean) .desk-v2-clock-card em {
  font-size: 9px !important;
  font-style: normal !important;
  font-weight: 900 !important;
  letter-spacing: 0.2em !important;
  text-transform: uppercase !important;
  line-height: 1.15 !important;
}

@media (max-width: 640px) {
  body:has(.desk-v2-clean) .desk-v2-clock-row {
    gap: 8px !important;
    margin: 12px 0 18px !important;
  }

  body:has(.desk-v2-clean) .desk-v2-clock-card {
    min-height: 86px !important;
    height: 86px !important;
    padding: 11px 4px 10px !important;
    row-gap: 5px !important;
  }

  body:has(.desk-v2-clean) .desk-v2-clock-card span {
    font-size: 8px !important;
    letter-spacing: 0.18em !important;
  }

  body:has(.desk-v2-clean) .desk-v2-clock-card strong {
    font-size: 22px !important;
    letter-spacing: 0.03em !important;
  }

  body:has(.desk-v2-clean) .desk-v2-clock-card em {
    font-size: 8px !important;
    letter-spacing: 0.18em !important;
    line-height: 1.15 !important;
  }
}

/* FINAL CLOCK LABEL TWO LINE LOCK */
/* Only forces Desk Session, Global Reference, and Overnight Reference onto two lines. */

body:has(.desk-v2-clean) .desk-v2-clock-card span,
body:has(.desk-v2-clean) .desk-v2-clock-card small,
body:has(.desk-v2-clean) .desk-v2-clock-card em {
  display: block !important;
  text-align: center !important;
  white-space: normal !important;
  line-height: 1.15 !important;
  letter-spacing: 0.24em !important;
}

/* FINAL CLOCK TIME MOBILE SIZE LOCK */
/* Reduces only the clock time text so it does not hit card edges on mobile. */

body:has(.desk-v2-clean) .desk-v2-clock-card strong {
  font-family: inherit !important;
  font-size: clamp(22px, 5.8vw, 32px) !important;
  line-height: 1 !important;
  letter-spacing: -0.04em !important;
  white-space: nowrap !important;
  text-align: center !important;
}

@media (max-width: 520px) {
  body:has(.desk-v2-clean) .desk-v2-clock-card strong {
    font-size: clamp(21px, 5.4vw, 28px) !important;
    letter-spacing: -0.045em !important;
  }
}

@media (max-width: 390px) {
  body:has(.desk-v2-clean) .desk-v2-clock-card strong {
    font-size: 22px !important;
    letter-spacing: -0.05em !important;
  }
}

/* FINAL CLOCK TIME RENDER SAFETY */
body:has(.desk-v2-clean) .desk-v2-clock-card strong {
  display: block !important;
  font-size: clamp(22px, 5.2vw, 30px) !important;
  line-height: 1 !important;
  letter-spacing: -0.045em !important;
  white-space: nowrap !important;
  text-align: center !important;
}

body:has(.desk-v2-clean) .desk-v2-clock-card span,
body:has(.desk-v2-clean) .desk-v2-clock-card em {
  display: block !important;
  line-height: 1.05 !important;
  text-align: center !important;
  white-space: normal !important;
}

@media (max-width: 520px) {
  body:has(.desk-v2-clean) .desk-v2-clock-card strong {
    font-size: clamp(21px, 5vw, 27px) !important;
  }
}

/* FINAL TRADING DESK HERO RESPONSIVE WIDTH LOCK */
/* Makes the top hero card match the movable width of the desk module. */
body:has(.desk-v2-clean) .sim-page-hero {
  width: min(100%, 1040px) !important;
  max-width: 1040px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  box-sizing: border-box !important;
}

@media (max-width: 720px) {
  body:has(.desk-v2-clean) .sim-page-hero {
    width: calc(100% - 28px) !important;
    max-width: calc(100% - 28px) !important;
  }
}

/* FINAL CLOCK CARD TIME + LABEL FIT */
body:has(.desk-v2-clean) .desk-v2-clock-card {
  min-height: 82px !important;
  height: 82px !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;
  padding: 10px 8px !important;
  overflow: hidden !important;
}

body:has(.desk-v2-clean) .desk-v2-clock-card span {
  display: block !important;
  font-size: 10px !important;
  line-height: 1 !important;
  letter-spacing: 0.28em !important;
  text-transform: uppercase !important;
  white-space: nowrap !important;
}

body:has(.desk-v2-clean) .desk-v2-clock-card strong {
  display: block !important;
  font-size: clamp(24px, 4.6vw, 32px) !important;
  line-height: 1.02 !important;
  letter-spacing: -0.055em !important;
  white-space: nowrap !important;
  margin: 4px 0 3px !important;
}

body:has(.desk-v2-clean) .desk-v2-clock-card em {
  display: block !important;
  font-size: 10px !important;
  line-height: 1.05 !important;
  letter-spacing: 0.28em !important;
  text-transform: uppercase !important;
  font-style: normal !important;
  white-space: normal !important;
}

@media (max-width: 520px) {
  body:has(.desk-v2-clean) .desk-v2-clock-card {
    min-height: 76px !important;
    height: 76px !important;
    padding: 8px 5px !important;
  }

  body:has(.desk-v2-clean) .desk-v2-clock-card strong {
    font-size: clamp(20px, 6vw, 27px) !important;
    letter-spacing: -0.06em !important;
  }

  body:has(.desk-v2-clean) .desk-v2-clock-card span,
  body:has(.desk-v2-clean) .desk-v2-clock-card em {
    font-size: 8px !important;
    letter-spacing: 0.24em !important;
  }
}

/* FINAL DESK POSITION + CLOCK SAME CARD LOCK */
/* Layout only. Keeps Desk Position, clocks, and Role Position in one card. */

body:has(.desk-v2-clean) .desk-v2-clean {
  padding-top: 20px !important;
}

body:has(.desk-v2-clean) .desk-v2-flow-stack {
  display: grid !important;
  gap: 14px !important;
  padding: 18px 18px 20px !important;
  border-radius: 26px !important;
  background: rgba(255, 255, 255, 0.94) !important;
  border: 1px solid rgba(17, 24, 39, 0.08) !important;
  box-shadow: 0 18px 44px rgba(15, 23, 42, 0.07) !important;
}

body:has(.desk-v2-clean) .desk-v2-position-inline {
  display: grid !important;
  grid-template-columns: auto minmax(0, 1fr) !important;
  align-items: center !important;
  gap: 12px !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

body:has(.desk-v2-clean) .desk-v2-position-inline span {
  margin: 0 !important;
  white-space: nowrap !important;
  font-size: 12px !important;
  line-height: 1 !important;
  letter-spacing: 0.24em !important;
  text-transform: uppercase !important;
  font-weight: 900 !important;
  color: rgba(17, 24, 39, 0.56) !important;
}

body:has(.desk-v2-clean) .desk-v2-position-select {
  width: 100% !important;
  min-width: 0 !important;
  height: 42px !important;
  border-radius: 10px !important;
  text-align: center !important;
  font-weight: 900 !important;
}

body:has(.desk-v2-clean) .desk-v2-clock-row {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 8px !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

body:has(.desk-v2-clean) .desk-v2-clock-card {
  min-width: 0 !important;
  min-height: 76px !important;
  height: 76px !important;
  padding: 8px 6px !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  align-items: center !important;
  text-align: center !important;
  gap: 3px !important;
  border-radius: 16px !important;
  background: rgba(255, 255, 255, 0.86) !important;
  border: 1px solid rgba(17, 24, 39, 0.08) !important;
  overflow: hidden !important;
}

body:has(.desk-v2-clean) .desk-v2-clock-card.is-active {
  border-color: rgba(32, 184, 164, 0.42) !important;
  box-shadow: inset 0 0 0 1px rgba(32, 184, 164, 0.18) !important;
}

body:has(.desk-v2-clean) .desk-v2-clock-card span {
  font-size: 9px !important;
  line-height: 1 !important;
  letter-spacing: 0.28em !important;
  text-transform: uppercase !important;
  font-weight: 900 !important;
  color: rgba(17, 24, 39, 0.62) !important;
  white-space: nowrap !important;
}

body:has(.desk-v2-clean) .desk-v2-clock-card strong {
  display: block !important;
  font-size: clamp(21px, 4.2vw, 29px) !important;
  line-height: 0.95 !important;
  letter-spacing: 0.02em !important;
  font-weight: 950 !important;
  white-space: nowrap !important;
  color: #111827 !important;
}

body:has(.desk-v2-clean) .desk-v2-clock-card em {
  display: block !important;
  font-style: normal !important;
  font-size: 9px !important;
  line-height: 1.08 !important;
  letter-spacing: 0.28em !important;
  text-transform: uppercase !important;
  font-weight: 950 !important;
  color: rgba(17, 24, 39, 0.62) !important;
}

@media (max-width: 560px) {
  body:has(.desk-v2-clean) .desk-v2-flow-stack {
    padding: 16px !important;
    gap: 12px !important;
  }

  body:has(.desk-v2-clean) .desk-v2-position-inline {
    grid-template-columns: 1fr !important;
    gap: 8px !important;
  }

  body:has(.desk-v2-clean) .desk-v2-position-inline span {
    text-align: left !important;
  }

  body:has(.desk-v2-clean) .desk-v2-clock-row {
    gap: 7px !important;
  }

  body:has(.desk-v2-clean) .desk-v2-clock-card {
    min-height: 72px !important;
    height: 72px !important;
    padding: 7px 4px !important;
  }

  body:has(.desk-v2-clean) .desk-v2-clock-card strong {
    font-size: clamp(20px, 5.1vw, 24px) !important;
    letter-spacing: 0 !important;
  }

  body:has(.desk-v2-clean) .desk-v2-clock-card span,
  body:has(.desk-v2-clean) .desk-v2-clock-card em {
    font-size: 8px !important;
    letter-spacing: 0.24em !important;
  }
}

/* FINAL REMOVE OUTER DESK BACK CARD + REDUCE CLOCK TIME */
/* Removes the full rear card behind the desk module. Reduces clock time only. */

body:has(.desk-v2-clean) .desk-v2-clean {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
}

body:has(.desk-v2-clean) .desk-v2-flow-stack {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
  border-radius: 0 !important;
}

body:has(.desk-v2-clean) .desk-v2-action-row {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

/* keep actual functional cards intact */
body:has(.desk-v2-clean) .desk-v2-position-inline,
body:has(.desk-v2-clean) .desk-v2-role-card,
body:has(.desk-v2-clean) .desk-v2-active-card,
body:has(.desk-v2-clean) .desk-v2-panel {
  background: rgba(255,255,255,0.94) !important;
  border: 1px solid rgba(17,24,39,0.08) !important;
  box-shadow: 0 14px 34px rgba(15,23,42,0.055) !important;
}

/* clock row stays clean, not boxed */
body:has(.desk-v2-clean) .desk-v2-clock-row {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
}

/* reduce ONLY the time size */
body:has(.desk-v2-clean) .desk-v2-clock-card strong {
  font-size: clamp(18px, 4.3vw, 24px) !important;
  line-height: 0.98 !important;
  letter-spacing: 0 !important;
  white-space: nowrap !important;
}

@media (max-width: 560px) {
  body:has(.desk-v2-clean) .desk-v2-clock-card strong {
    font-size: clamp(17px, 4.6vw, 21px) !important;
  }
}

/* FINAL DESK POSITION INSIDE ROLE CARD LOCK */

/* Keeps Desk Position, clocks, Role Position, and Market Position in one clean card. */

body:has(.desk-v2-clean) .desk-v2-clean {

  background: transparent !important;

  border: 0 !important;

  box-shadow: none !important;

  padding: 0 !important;

}

body:has(.desk-v2-clean) .desk-v2-flow-stack {

  background: transparent !important;

  border: 0 !important;

  box-shadow: none !important;

  padding: 0 !important;

}

body:has(.desk-v2-clean) .desk-v2-role-card {

  background: rgba(255,255,255,0.94) !important;

  border: 1px solid rgba(17,24,39,0.08) !important;

  box-shadow: 0 14px 34px rgba(15,23,42,0.055) !important;

  border-radius: 22px !important;

  padding: 16px !important;

}

body:has(.desk-v2-clean) .desk-v2-position-cluster {

  display: grid !important;

  gap: 10px !important;

  margin: 0 0 14px !important;

  padding: 0 !important;

  background: transparent !important;

  border: 0 !important;

  box-shadow: none !important;

}

body:has(.desk-v2-clean) .desk-v2-position-inline {

  display: grid !important;

  grid-template-columns: 140px minmax(0, 1fr) !important;

  align-items: center !important;

  gap: 10px !important;

  margin: 0 !important;

  padding: 0 !important;

  background: transparent !important;

  border: 0 !important;

  box-shadow: none !important;

}

body:has(.desk-v2-clean) .desk-v2-clock-row {

  display: grid !important;

  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;

  gap: 8px !important;

  margin: 0 !important;

  padding: 0 !important;

  background: transparent !important;

  border: 0 !important;

  box-shadow: none !important;

}

body:has(.desk-v2-clean) .desk-v2-clock-card {

  min-height: 76px !important;

  padding: 10px 6px !important;

  display: grid !important;

  place-items: center !important;

  align-content: center !important;

  justify-items: center !important;

  text-align: center !important;

}

body:has(.desk-v2-clean) .desk-v2-clock-card strong {

  font-size: clamp(18px, 4.2vw, 23px) !important;

  line-height: 1 !important;

  letter-spacing: 0 !important;

  white-space: nowrap !important;

}

body:has(.desk-v2-clean) .desk-v2-clock-card span,

body:has(.desk-v2-clean) .desk-v2-clock-card em {

  display: block !important;

  text-align: center !important;

  line-height: 1.05 !important;

}

@media (max-width: 560px) {

  body:has(.desk-v2-clean) .desk-v2-role-card {

    padding: 14px !important;

  }

  body:has(.desk-v2-clean) .desk-v2-position-inline {

    grid-template-columns: 1fr !important;

    gap: 6px !important;

  }

  body:has(.desk-v2-clean) .desk-v2-clock-row {

    gap: 6px !important;

  }

  body:has(.desk-v2-clean) .desk-v2-clock-card {

    min-height: 72px !important;

    padding: 9px 4px !important;

  }

  body:has(.desk-v2-clean) .desk-v2-clock-card strong {

    font-size: clamp(17px, 4.4vw, 21px) !important;

  }

}


/* FINAL DESK POSITION INSIDE ROLE CARD LOCK */
/* Keeps Desk Position, clocks, Role Position, and Market Position in one clean card. */

body:has(.desk-v2-clean) .desk-v2-clean {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
}

body:has(.desk-v2-clean) .desk-v2-flow-stack {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
}

body:has(.desk-v2-clean) .desk-v2-role-card {
  background: rgba(255,255,255,0.94) !important;
  border: 1px solid rgba(17,24,39,0.08) !important;
  box-shadow: 0 14px 34px rgba(15,23,42,0.055) !important;
  border-radius: 22px !important;
  padding: 16px !important;
}

body:has(.desk-v2-clean) .desk-v2-position-cluster {
  display: grid !important;
  gap: 10px !important;
  margin: 0 0 14px !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

body:has(.desk-v2-clean) .desk-v2-position-inline {
  display: grid !important;
  grid-template-columns: 140px minmax(0, 1fr) !important;
  align-items: center !important;
  gap: 10px !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

body:has(.desk-v2-clean) .desk-v2-clock-row {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 8px !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

body:has(.desk-v2-clean) .desk-v2-clock-card {
  min-height: 76px !important;
  padding: 10px 6px !important;
  display: grid !important;
  place-items: center !important;
  align-content: center !important;
  justify-items: center !important;
  text-align: center !important;
}

body:has(.desk-v2-clean) .desk-v2-clock-card strong {
  font-size: clamp(18px, 4.2vw, 23px) !important;
  line-height: 1 !important;
  letter-spacing: 0 !important;
  white-space: nowrap !important;
}

body:has(.desk-v2-clean) .desk-v2-clock-card span,
body:has(.desk-v2-clean) .desk-v2-clock-card em {
  display: block !important;
  text-align: center !important;
  line-height: 1.05 !important;
}

@media (max-width: 560px) {
  body:has(.desk-v2-clean) .desk-v2-role-card {
    padding: 14px !important;
  }

  body:has(.desk-v2-clean) .desk-v2-position-inline {
    grid-template-columns: 1fr !important;
    gap: 6px !important;
  }

  body:has(.desk-v2-clean) .desk-v2-clock-row {
    gap: 6px !important;
  }

  body:has(.desk-v2-clean) .desk-v2-clock-card {
    min-height: 72px !important;
    padding: 9px 4px !important;
  }

  body:has(.desk-v2-clean) .desk-v2-clock-card strong {
    font-size: clamp(17px, 4.4vw, 21px) !important;
  }
}

/* FINAL CLEAN POSITION CARD REPAIR */
/* One card only: Desk Position, clocks, Role Position, Market Position. */

body:has(.desk-v2-clean) .desk-v2-clean,
body:has(.desk-v2-clean) .desk-v2-flow-stack {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
}

body:has(.desk-v2-clean) .desk-v2-role-card {
  background: rgba(255,255,255,0.94) !important;
  border: 1px solid rgba(17,24,39,0.08) !important;
  border-radius: 22px !important;
  box-shadow: 0 14px 34px rgba(15,23,42,0.055) !important;
  padding: 14px !important;
}

body:has(.desk-v2-clean) .desk-v2-position-cluster {
  display: grid !important;
  gap: 10px !important;
  margin: 0 0 14px !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

body:has(.desk-v2-clean) .desk-v2-position-inline,
body:has(.desk-v2-clean) .desk-v2-role-row,
body:has(.desk-v2-clean) .desk-v2-setup-row {
  display: grid !important;
  grid-template-columns: 135px minmax(0, 1fr) !important;
  align-items: center !important;
  gap: 10px !important;
  margin: 0 !important;
}

body:has(.desk-v2-clean) .desk-v2-clock-row {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 8px !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

body:has(.desk-v2-clean) .desk-v2-clock-card {
  min-height: 74px !important;
  padding: 9px 5px !important;
  display: grid !important;
  place-items: center !important;
  align-content: center !important;
  justify-items: center !important;
  text-align: center !important;
  overflow: hidden !important;
}

body:has(.desk-v2-clean) .desk-v2-clock-card span {
  font-size: 9px !important;
  line-height: 1 !important;
  letter-spacing: 0.22em !important;
  text-transform: uppercase !important;
  white-space: nowrap !important;
}

body:has(.desk-v2-clean) .desk-v2-clock-card strong {
  font-size: clamp(17px, 4vw, 22px) !important;
  line-height: 1 !important;
  letter-spacing: 0 !important;
  white-space: nowrap !important;
}

body:has(.desk-v2-clean) .desk-v2-clock-card em {
  font-size: 9px !important;
  line-height: 1.05 !important;
  letter-spacing: 0.22em !important;
  text-transform: uppercase !important;
  font-style: normal !important;
  white-space: normal !important;
}

@media (max-width: 560px) {
  body:has(.desk-v2-clean) .desk-v2-role-card {
    padding: 12px !important;
  }

  body:has(.desk-v2-clean) .desk-v2-position-inline,
  body:has(.desk-v2-clean) .desk-v2-role-row,
  body:has(.desk-v2-clean) .desk-v2-setup-row {
    grid-template-columns: 1fr !important;
    gap: 6px !important;
  }

  body:has(.desk-v2-clean) .desk-v2-clock-row {
    gap: 6px !important;
  }

  body:has(.desk-v2-clean) .desk-v2-clock-card {
    min-height: 72px !important;
    padding: 8px 3px !important;
  }

  body:has(.desk-v2-clean) .desk-v2-clock-card strong {
    font-size: clamp(16px, 4.1vw, 20px) !important;
  }

  body:has(.desk-v2-clean) .desk-v2-clock-card span,
  body:has(.desk-v2-clean) .desk-v2-clock-card em {
    font-size: 8px !important;
    letter-spacing: 0.2em !important;
  }
}

/* FINAL DESK CLOCK RETURN LOCK */
/* Desk + clocks inside the same role card. Labels are Desk, Role, Market. */

body:has(.desk-v2-clean) .desk-v2-clean,
body:has(.desk-v2-clean) .desk-v2-flow-stack {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

body:has(.desk-v2-clean) .desk-v2-position-cluster {
  display: grid !important;
  gap: 10px !important;
  margin: 0 0 14px !important;
}

body:has(.desk-v2-clean) .desk-v2-position-inline,
body:has(.desk-v2-clean) .desk-v2-role-row,
body:has(.desk-v2-clean) .desk-v2-setup-row {
  display: grid !important;
  grid-template-columns: 120px minmax(0, 1fr) !important;
  align-items: center !important;
  gap: 10px !important;
}

body:has(.desk-v2-clean) .desk-v2-clock-row {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 8px !important;
  width: 100% !important;
}

body:has(.desk-v2-clean) .desk-v2-clock-card {
  min-height: 76px !important;
  padding: 9px 4px !important;
  display: grid !important;
  place-items: center !important;
  align-content: center !important;
  justify-items: center !important;
  text-align: center !important;
  overflow: hidden !important;
}

body:has(.desk-v2-clean) .desk-v2-clock-card span {
  font-size: 9px !important;
  line-height: 1 !important;
  letter-spacing: 0.22em !important;
  text-transform: uppercase !important;
  white-space: nowrap !important;
}

body:has(.desk-v2-clean) .desk-v2-clock-card strong {
  font-size: clamp(17px, 4vw, 22px) !important;
  line-height: 1 !important;
  letter-spacing: 0 !important;
  white-space: nowrap !important;
}

body:has(.desk-v2-clean) .desk-v2-clock-card em {
  font-size: 8px !important;
  line-height: 1.08 !important;
  letter-spacing: 0.24em !important;
  text-transform: uppercase !important;
  font-style: normal !important;
  white-space: normal !important;
}

@media (max-width: 560px) {
  body:has(.desk-v2-clean) .desk-v2-position-inline,
  body:has(.desk-v2-clean) .desk-v2-role-row,
  body:has(.desk-v2-clean) .desk-v2-setup-row {
    grid-template-columns: 1fr !important;
    gap: 6px !important;
  }

  body:has(.desk-v2-clean) .desk-v2-clock-row {
    gap: 6px !important;
  }

  body:has(.desk-v2-clean) .desk-v2-clock-card {
    min-height: 72px !important;
    padding: 8px 3px !important;
  }

  body:has(.desk-v2-clean) .desk-v2-clock-card strong {
    font-size: clamp(16px, 4vw, 20px) !important;
  }

  body:has(.desk-v2-clean) .desk-v2-clock-card span,
  body:has(.desk-v2-clean) .desk-v2-clock-card em {
    font-size: 8px !important;
  }
}

/* FINAL DESK CONTROL CARD + CLOCK RESTORE */
body:has(.desk-v2-clean) .desk-v2-flow-stack {
  background: rgba(255,255,255,0.92) !important;
  border: 1px solid rgba(17,24,39,0.08) !important;
  border-radius: 22px !important;
  box-shadow: 0 16px 42px rgba(15,23,42,0.07) !important;
  padding: 16px !important;
}

body:has(.desk-v2-clean) .desk-v2-position-inline,
body:has(.desk-v2-clean) .desk-v2-role-row,
body:has(.desk-v2-clean) .desk-v2-setup-row {
  display: grid !important;
  grid-template-columns: 122px minmax(0, 1fr) !important;
  align-items: center !important;
  gap: 10px !important;
  margin: 0 0 12px !important;
}

body:has(.desk-v2-clean) .desk-v2-position-inline span,
body:has(.desk-v2-clean) .desk-v2-role-row span,
body:has(.desk-v2-clean) .desk-v2-setup-row span {
  font-size: 11px !important;
  font-weight: 900 !important;
  letter-spacing: 0.22em !important;
  text-transform: uppercase !important;
  color: rgba(17,24,39,0.55) !important;
  white-space: nowrap !important;
}

body:has(.desk-v2-clean) .desk-v2-clock-row {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 8px !important;
  width: 100% !important;
  margin: 0 0 14px !important;
  visibility: visible !important;
  opacity: 1 !important;
}

body:has(.desk-v2-clean) .desk-v2-clock-card {
  min-height: 76px !important;
  padding: 10px 6px !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;
  border-radius: 14px !important;
  background: rgba(255,255,255,0.9) !important;
  border: 1px solid rgba(17,24,39,0.08) !important;
  overflow: hidden !important;
}

body:has(.desk-v2-clean) .desk-v2-clock-card strong {
  display: block !important;
  font-size: clamp(20px, 5.2vw, 26px) !important;
  line-height: 0.95 !important;
  letter-spacing: 0.02em !important;
  white-space: nowrap !important;
  max-width: 100% !important;
}

body:has(.desk-v2-clean) .desk-v2-clock-card span,
body:has(.desk-v2-clean) .desk-v2-clock-card em {
  display: block !important;
  font-size: 9px !important;
  line-height: 1.05 !important;
  font-weight: 900 !important;
  letter-spacing: 0.22em !important;
  text-transform: uppercase !important;
  white-space: normal !important;
  font-style: normal !important;
}

@media (max-width: 520px) {
  body:has(.desk-v2-clean) .desk-v2-flow-stack {
    padding: 14px !important;
    border-radius: 20px !important;
  }

  body:has(.desk-v2-clean) .desk-v2-position-inline,
  body:has(.desk-v2-clean) .desk-v2-role-row,
  body:has(.desk-v2-clean) .desk-v2-setup-row {
    grid-template-columns: 132px minmax(0, 1fr) !important;
    gap: 8px !important;
  }

  body:has(.desk-v2-clean) .desk-v2-clock-card {
    min-height: 72px !important;
    padding: 9px 4px !important;
  }

  body:has(.desk-v2-clean) .desk-v2-clock-card strong {
    font-size: clamp(19px, 5vw, 23px) !important;
  }

  body:has(.desk-v2-clean) .desk-v2-clock-card span,
  body:has(.desk-v2-clean) .desk-v2-clock-card em {
    font-size: 8px !important;
    letter-spacing: 0.2em !important;
  }
}

/* FINAL DESK CLOCK RETURN LAYOUT */
body:has(.desk-v2-clean) .desk-v2-position-inline,
body:has(.desk-v2-clean) .desk-v2-role-row,
body:has(.desk-v2-clean) .desk-v2-setup-row {
  display: grid !important;
  grid-template-columns: 72px minmax(0, 1fr) !important;
  gap: 10px !important;
  align-items: center !important;
  margin: 0 0 12px !important;
}

body:has(.desk-v2-clean) .desk-v2-position-inline span,
body:has(.desk-v2-clean) .desk-v2-role-row span,
body:has(.desk-v2-clean) .desk-v2-setup-row span {
  font-size: 11px !important;
  font-weight: 900 !important;
  letter-spacing: 0.22em !important;
  text-transform: uppercase !important;
  color: rgba(17,24,39,0.55) !important;
  white-space: nowrap !important;
}

body:has(.desk-v2-clean) .desk-v2-clock-row {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 8px !important;
  margin: 0 0 14px !important;
  width: 100% !important;
  visibility: visible !important;
  opacity: 1 !important;
}

body:has(.desk-v2-clean) .desk-v2-clock-card {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 76px !important;
  padding: 9px 5px !important;
  text-align: center !important;
  overflow: hidden !important;
}

body:has(.desk-v2-clean) .desk-v2-clock-card strong {
  font-size: clamp(20px, 5vw, 25px) !important;
  line-height: 0.95 !important;
  white-space: nowrap !important;
}

body:has(.desk-v2-clean) .desk-v2-clock-card span,
body:has(.desk-v2-clean) .desk-v2-clock-card em {
  display: block !important;
  font-size: 8px !important;
  line-height: 1.05 !important;
  font-weight: 900 !important;
  letter-spacing: 0.22em !important;
  text-transform: uppercase !important;
  font-style: normal !important;
}

@media (max-width: 520px) {
  body:has(.desk-v2-clean) .desk-v2-position-inline,
  body:has(.desk-v2-clean) .desk-v2-role-row,
  body:has(.desk-v2-clean) .desk-v2-setup-row {
    grid-template-columns: 72px minmax(0, 1fr) !important;
    gap: 8px !important;
  }

  body:has(.desk-v2-clean) .desk-v2-clock-card {
    min-height: 72px !important;
    padding: 8px 4px !important;
  }

  body:has(.desk-v2-clean) .desk-v2-clock-card strong {
    font-size: clamp(18px, 4.7vw, 22px) !important;
  }
}

/* FINAL SINGLE CONTROL CARD LOCK */
/* Desk + clocks + Role + Market sit in one card. No rear wrapper card. */

body:has(.desk-v2-clean) .desk-v2-clean {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
}

body:has(.desk-v2-clean) .desk-v2-flow-stack {
  background: rgba(255, 255, 255, 0.94) !important;
  border: 1px solid rgba(17, 24, 39, 0.07) !important;
  border-radius: 24px !important;
  box-shadow: 0 18px 44px rgba(15, 23, 42, 0.07) !important;
  padding: 16px !important;
  margin: 0 0 14px !important;
}

body:has(.desk-v2-clean) .desk-v2-position-inline,
body:has(.desk-v2-clean) .desk-v2-role-row,
body:has(.desk-v2-clean) .desk-v2-setup-row {
  display: grid !important;
  grid-template-columns: 72px minmax(0, 1fr) !important;
  gap: 10px !important;
  align-items: center !important;
  margin: 0 0 12px !important;
}

body:has(.desk-v2-clean) .desk-v2-position-inline span,
body:has(.desk-v2-clean) .desk-v2-role-row span,
body:has(.desk-v2-clean) .desk-v2-setup-row span {
  font-size: 11px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  letter-spacing: 0.22em !important;
  text-transform: uppercase !important;
  color: rgba(17, 24, 39, 0.55) !important;
  white-space: nowrap !important;
}

body:has(.desk-v2-clean) .desk-v2-position-select,
body:has(.desk-v2-clean) .desk-v2-role-select,
body:has(.desk-v2-clean) .desk-v2-setup-select {
  width: 100% !important;
  min-width: 0 !important;
  height: 38px !important;
  border-radius: 11px !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  text-align: center !important;
  text-align-last: center !important;
}

body:has(.desk-v2-clean) .desk-v2-clock-row {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 8px !important;
  width: 100% !important;
  margin: 0 0 14px !important;
  visibility: visible !important;
  opacity: 1 !important;
}

body:has(.desk-v2-clean) .desk-v2-clock-card {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 72px !important;
  padding: 8px 4px !important;
  border-radius: 14px !important;
  text-align: center !important;
  overflow: hidden !important;
}

body:has(.desk-v2-clean) .desk-v2-clock-card span,
body:has(.desk-v2-clean) .desk-v2-clock-card em {
  display: block !important;
  font-size: 7.5px !important;
  line-height: 1.05 !important;
  font-weight: 900 !important;
  letter-spacing: 0.22em !important;
  text-transform: uppercase !important;
  font-style: normal !important;
  white-space: normal !important;
}

body:has(.desk-v2-clean) .desk-v2-clock-card strong {
  display: block !important;
  font-size: clamp(18px, 4.6vw, 23px) !important;
  line-height: 0.95 !important;
  font-weight: 950 !important;
  letter-spacing: -0.04em !important;
  white-space: nowrap !important;
}

body:has(.desk-v2-clean) .desk-v2-role-stats {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 8px !important;
  margin: 8px 0 10px !important;
}

body:has(.desk-v2-clean) .desk-v2-role-note {
  margin: 0 0 14px !important;
}

body:has(.desk-v2-clean) .desk-v2-setup-chip-row {
  margin-top: 8px !important;
}

@media (max-width: 520px) {
  body:has(.desk-v2-clean) .desk-v2-flow-stack {
    padding: 14px !important;
    border-radius: 22px !important;
  }

  body:has(.desk-v2-clean) .desk-v2-position-inline,
  body:has(.desk-v2-clean) .desk-v2-role-row,
  body:has(.desk-v2-clean) .desk-v2-setup-row {
    grid-template-columns: 72px minmax(0, 1fr) !important;
    gap: 8px !important;
  }

  body:has(.desk-v2-clean) .desk-v2-clock-card {
    min-height: 70px !important;
    padding: 7px 3px !important;
  }

  body:has(.desk-v2-clean) .desk-v2-clock-card strong {
    font-size: clamp(17px, 4.4vw, 21px) !important;
  }
}

/* FINAL DESK CONTROL CLUSTER LOCK */
/* One card only: Desk + clocks + Role + Market. */

body:has(.desk-v2-clean) .desk-v2-flow-stack {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
  margin: 0 !important;
  display: grid !important;
  gap: 16px !important;
}

body:has(.desk-v2-clean) .desk-v2-control-card {
  width: 100% !important;
  background: rgba(255,255,255,.94) !important;
  border: 1px solid rgba(17,24,39,.08) !important;
  box-shadow: 0 18px 44px rgba(15,23,42,.08) !important;
  border-radius: 24px !important;
  padding: 18px !important;
  display: grid !important;
  gap: 14px !important;
}

body:has(.desk-v2-clean) .desk-v2-position-inline,
body:has(.desk-v2-clean) .desk-v2-role-row,
body:has(.desk-v2-clean) .desk-v2-setup-row {
  display: grid !important;
  grid-template-columns: 116px minmax(0, 1fr) !important;
  align-items: center !important;
  gap: 10px !important;
  margin: 0 !important;
  width: 100% !important;
}

body:has(.desk-v2-clean) .desk-v2-position-inline span,
body:has(.desk-v2-clean) .desk-v2-role-row span,
body:has(.desk-v2-clean) .desk-v2-setup-row span {
  font-size: 12px !important;
  line-height: 1 !important;
  letter-spacing: .22em !important;
  text-transform: uppercase !important;
  font-weight: 900 !important;
  color: rgba(17,24,39,.58) !important;
  white-space: nowrap !important;
}

body:has(.desk-v2-clean) .desk-v2-position-select,
body:has(.desk-v2-clean) .desk-v2-role-select,
body:has(.desk-v2-clean) .desk-v2-setup-select {
  width: 100% !important;
  min-width: 0 !important;
  height: 42px !important;
  border-radius: 10px !important;
  border: 1px solid rgba(17,24,39,.1) !important;
  background: #fff !important;
  text-align: center !important;
  font-weight: 900 !important;
  font-size: 15px !important;
}

body:has(.desk-v2-clean) .desk-v2-clock-row {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 8px !important;
  margin: 0 !important;
  width: 100% !important;
}

body:has(.desk-v2-clean) .desk-v2-clock-card {
  min-width: 0 !important;
  min-height: 74px !important;
  padding: 10px 6px !important;
  border-radius: 14px !important;
  background: rgba(255,255,255,.82) !important;
  border: 1px solid rgba(17,24,39,.08) !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  align-items: center !important;
  text-align: center !important;
  overflow: hidden !important;
}

body:has(.desk-v2-clean) .desk-v2-clock-card.is-active {
  border-color: rgba(32,184,164,.38) !important;
  box-shadow: inset 0 0 0 1px rgba(32,184,164,.2) !important;
}

body:has(.desk-v2-clean) .desk-v2-clock-card span {
  font-size: 9px !important;
  line-height: 1 !important;
  letter-spacing: .28em !important;
  text-transform: uppercase !important;
  font-weight: 900 !important;
  color: rgba(17,24,39,.62) !important;
  margin: 0 0 5px !important;
}

body:has(.desk-v2-clean) .desk-v2-clock-card strong {
  font-size: clamp(20px, 5vw, 25px) !important;
  line-height: .95 !important;
  letter-spacing: .02em !important;
  font-weight: 950 !important;
  color: #111827 !important;
  white-space: nowrap !important;
}

body:has(.desk-v2-clean) .desk-v2-clock-card em {
  display: block !important;
  margin-top: 6px !important;
  font-style: normal !important;
  font-size: 9px !important;
  line-height: 1.05 !important;
  letter-spacing: .26em !important;
  text-transform: uppercase !important;
  font-weight: 900 !important;
  color: rgba(17,24,39,.58) !important;
}

@media (max-width: 520px) {
  body:has(.desk-v2-clean) .desk-v2-control-card {
    padding: 14px !important;
    border-radius: 22px !important;
    gap: 12px !important;
  }

  body:has(.desk-v2-clean) .desk-v2-position-inline,
  body:has(.desk-v2-clean) .desk-v2-role-row,
  body:has(.desk-v2-clean) .desk-v2-setup-row {
    grid-template-columns: 92px minmax(0, 1fr) !important;
    gap: 8px !important;
  }

  body:has(.desk-v2-clean) .desk-v2-clock-row {
    gap: 6px !important;
  }

  body:has(.desk-v2-clean) .desk-v2-clock-card {
    min-height: 70px !important;
    padding: 9px 4px !important;
  }

  body:has(.desk-v2-clean) .desk-v2-clock-card strong {
    font-size: clamp(19px, 4.7vw, 22px) !important;
  }

  body:has(.desk-v2-clean) .desk-v2-clock-card span,
  body:has(.desk-v2-clean) .desk-v2-clock-card em {
    font-size: 8px !important;
    letter-spacing: .24em !important;
  }
}

/* FINAL DESK SPACING + SELECTOR CLEANUP */
/* Adds clean space between desk setup and scenario card, tightens selectors, and keeps desktop/mobile balanced. */

body:has(.desk-v2-clean) .desk-v2-main,
body:has(.desk-v2-clean) .desk-v2-panel,
body:has(.desk-v2-clean) .desk-v2-flow-stack {
  gap: 18px !important;
}

body:has(.desk-v2-clean) .desk-v2-panel + .desk-v2-panel,
body:has(.desk-v2-clean) .desk-v2-setup-card + .desk-v2-scenario-card,
body:has(.desk-v2-clean) .desk-v2-position-card + .desk-v2-scenario-card,
body:has(.desk-v2-clean) .desk-v2-main-card + .desk-v2-scenario-card,
body:has(.desk-v2-clean) [data-desk-watchlist] + section,
body:has(.desk-v2-clean) .desk-v2-flow-stack > section + section {
  margin-top: 18px !important;
}

body:has(.desk-v2-clean) .desk-v2-panel {
  border-radius: 24px !important;
  overflow: hidden !important;
}

body:has(.desk-v2-clean) .desk-v2-position-inline,
body:has(.desk-v2-clean) .desk-v2-select-row,
body:has(.desk-v2-clean) .desk-v2-control-row {
  display: grid !important;
  grid-template-columns: 92px minmax(0, 1fr) !important;
  align-items: center !important;
  gap: 16px !important;
  width: 100% !important;
}

body:has(.desk-v2-clean) .desk-v2-position-inline > span,
body:has(.desk-v2-clean) .desk-v2-select-row > span,
body:has(.desk-v2-clean) .desk-v2-control-row > span,
body:has(.desk-v2-clean) .desk-v2-position-inline label,
body:has(.desk-v2-clean) .desk-v2-select-row label,
body:has(.desk-v2-clean) .desk-v2-control-row label {
  width: auto !important;
  min-width: 0 !important;
  white-space: nowrap !important;
  letter-spacing: 0.2em !important;
}

body:has(.desk-v2-clean) select,
body:has(.desk-v2-clean) .desk-v2-select,
body:has(.desk-v2-clean) .desk-v2-position-inline select,
body:has(.desk-v2-clean) .desk-v2-select-row select,
body:has(.desk-v2-clean) .desk-v2-control-row select {
  width: 100% !important;
  max-width: 100% !important;
  min-height: 44px !important;
  border-radius: 12px !important;
  text-align: center !important;
  text-align-last: center !important;
}

body:has(.desk-v2-clean) .desk-v2-clock-row {
  margin-top: 14px !important;
  margin-bottom: 18px !important;
}

body:has(.desk-v2-clean) .desk-v2-role-stats,
body:has(.desk-v2-clean) .desk-v2-role-grid,
body:has(.desk-v2-clean) .desk-v2-stat-row {
  margin-top: 14px !important;
  margin-bottom: 12px !important;
}

body:has(.desk-v2-clean) .desk-v2-note,
body:has(.desk-v2-clean) .desk-v2-role-note {
  margin-top: 10px !important;
  margin-bottom: 18px !important;
}

body:has(.desk-v2-clean) .desk-v2-market-buttons,
body:has(.desk-v2-clean) .desk-v2-chip-row {
  margin-top: 14px !important;
  justify-content: center !important;
  gap: 10px !important;
}

body:has(.desk-v2-clean) .desk-v2-scenario-card,
body:has(.desk-v2-clean) .desk-v2-session-card,
body:has(.desk-v2-clean) .desk-v2-output-card {
  margin-top: 20px !important;
  border-radius: 22px !important;
}

@media (max-width: 720px) {
  body:has(.desk-v2-clean) .desk-v2-main,
  body:has(.desk-v2-clean) .desk-v2-panel,
  body:has(.desk-v2-clean) .desk-v2-flow-stack {
    gap: 16px !important;
  }

  body:has(.desk-v2-clean) .desk-v2-position-inline,
  body:has(.desk-v2-clean) .desk-v2-select-row,
  body:has(.desk-v2-clean) .desk-v2-control-row {
    grid-template-columns: 84px minmax(0, 1fr) !important;
    gap: 12px !important;
  }

  body:has(.desk-v2-clean) .desk-v2-position-inline > span,
  body:has(.desk-v2-clean) .desk-v2-select-row > span,
  body:has(.desk-v2-clean) .desk-v2-control-row > span,
  body:has(.desk-v2-clean) .desk-v2-position-inline label,
  body:has(.desk-v2-clean) .desk-v2-select-row label,
  body:has(.desk-v2-clean) .desk-v2-control-row label {
    font-size: 10px !important;
    letter-spacing: 0.18em !important;
  }

  body:has(.desk-v2-clean) .desk-v2-panel + .desk-v2-panel,
  body:has(.desk-v2-clean) .desk-v2-flow-stack > section + section,
  body:has(.desk-v2-clean) .desk-v2-scenario-card,
  body:has(.desk-v2-clean) .desk-v2-session-card,
  body:has(.desk-v2-clean) .desk-v2-output-card {
    margin-top: 18px !important;
  }
}

/* FINAL DESK SELECTOR ROW + CHART HEIGHT LOCK */
/* Equalizes Desk, Role, and Market rows. Adds graph height only. */

body:has(.desk-v2-clean) .desk-v2-position-row,
body:has(.desk-v2-clean) .desk-v2-position-inline,
body:has(.desk-v2-clean) .desk-v2-select-row,
body:has(.desk-v2-clean) .desk-v2-control-row {
  display: grid !important;
  grid-template-columns: 96px minmax(0, 1fr) !important;
  align-items: center !important;
  column-gap: 14px !important;
  row-gap: 0 !important;
  width: 100% !important;
  min-height: 48px !important;
  margin: 0 0 18px !important;
}

body:has(.desk-v2-clean) .desk-v2-position-row > label,
body:has(.desk-v2-clean) .desk-v2-position-inline > label,
body:has(.desk-v2-clean) .desk-v2-select-row > label,
body:has(.desk-v2-clean) .desk-v2-control-row > label,
body:has(.desk-v2-clean) .desk-v2-position-row > span:first-child,
body:has(.desk-v2-clean) .desk-v2-position-inline > span:first-child,
body:has(.desk-v2-clean) .desk-v2-select-row > span:first-child,
body:has(.desk-v2-clean) .desk-v2-control-row > span:first-child {
  display: flex !important;
  align-items: center !important;
  height: 44px !important;
  margin: 0 !important;
  padding: 0 !important;
  color: #6b7280 !important;
  font-size: 11px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  letter-spacing: 0.24em !important;
  text-transform: uppercase !important;
  white-space: nowrap !important;
}

body:has(.desk-v2-clean) .desk-v2-position-row select,
body:has(.desk-v2-clean) .desk-v2-position-inline select,
body:has(.desk-v2-clean) .desk-v2-select-row select,
body:has(.desk-v2-clean) .desk-v2-control-row select,
body:has(.desk-v2-clean) select[data-desk-select],
body:has(.desk-v2-clean) select[data-role-select],
body:has(.desk-v2-clean) select[data-market-select] {
  display: block !important;
  width: 100% !important;
  height: 44px !important;
  min-height: 44px !important;
  max-height: 44px !important;
  margin: 0 !important;
  padding: 0 42px 0 16px !important;
  border-radius: 12px !important;
  border: 1px solid rgba(17, 24, 39, 0.1) !important;
  background-color: #fff !important;
  font-size: 15px !important;
  line-height: 44px !important;
  font-weight: 800 !important;
  text-align: center !important;
  text-align-last: center !important;
  box-sizing: border-box !important;
}

body:has(.desk-v2-clean) .desk-v2-clock-row {
  margin-top: 8px !important;
  margin-bottom: 22px !important;
}

body:has(.desk-v2-clean) .desk-v2-role-stats,
body:has(.desk-v2-clean) .desk-v2-role-grid,
body:has(.desk-v2-clean) .desk-v2-stat-row {
  margin-top: 6px !important;
  margin-bottom: 12px !important;
}

body:has(.desk-v2-clean) .desk-v2-note,
body:has(.desk-v2-clean) .desk-v2-role-note {
  margin-top: 8px !important;
  margin-bottom: 22px !important;
}

body:has(.desk-v2-clean) .desk-v2-market-buttons,
body:has(.desk-v2-clean) .desk-v2-chip-row {
  margin-top: 4px !important;
  margin-bottom: 4px !important;
}

/* More graph room so the chart does not feel squeezed on mobile */
body:has(.desk-v2-clean) .desk-v2-chart,
body:has(.desk-v2-clean) .desk-v2-chart-box,
body:has(.desk-v2-clean) .desk-v2-graph,
body:has(.desk-v2-clean) .desk-v2-graph-card,
body:has(.desk-v2-clean) canvas {
  min-height: 260px !important;
}

@media (max-width: 720px) {
  body:has(.desk-v2-clean) .desk-v2-position-row,
  body:has(.desk-v2-clean) .desk-v2-position-inline,
  body:has(.desk-v2-clean) .desk-v2-select-row,
  body:has(.desk-v2-clean) .desk-v2-control-row {
    grid-template-columns: 88px minmax(0, 1fr) !important;
    column-gap: 10px !important;
    min-height: 44px !important;
    margin-bottom: 16px !important;
  }

  body:has(.desk-v2-clean) .desk-v2-position-row > label,
  body:has(.desk-v2-clean) .desk-v2-position-inline > label,
  body:has(.desk-v2-clean) .desk-v2-select-row > label,
  body:has(.desk-v2-clean) .desk-v2-control-row > label,
  body:has(.desk-v2-clean) .desk-v2-position-row > span:first-child,
  body:has(.desk-v2-clean) .desk-v2-position-inline > span:first-child,
  body:has(.desk-v2-clean) .desk-v2-select-row > span:first-child,
  body:has(.desk-v2-clean) .desk-v2-control-row > span:first-child {
    height: 42px !important;
    font-size: 10px !important;
    letter-spacing: 0.2em !important;
  }

  body:has(.desk-v2-clean) .desk-v2-position-row select,
  body:has(.desk-v2-clean) .desk-v2-position-inline select,
  body:has(.desk-v2-clean) .desk-v2-select-row select,
  body:has(.desk-v2-clean) .desk-v2-control-row select,
  body:has(.desk-v2-clean) select[data-desk-select],
  body:has(.desk-v2-clean) select[data-role-select],
  body:has(.desk-v2-clean) select[data-market-select] {
    height: 42px !important;
    min-height: 42px !important;
    max-height: 42px !important;
    line-height: 42px !important;
    font-size: 14px !important;
    padding-left: 12px !important;
    padding-right: 34px !important;
  }

  body:has(.desk-v2-clean) .desk-v2-chart,
  body:has(.desk-v2-clean) .desk-v2-chart-box,
  body:has(.desk-v2-clean) .desk-v2-graph,
  body:has(.desk-v2-clean) .desk-v2-graph-card,
  body:has(.desk-v2-clean) canvas {
    min-height: 300px !important;
  }
}

/* FINAL DESK / ROLE / MARKET SINGLE CARD LOCK */
/* Keeps Desk Position, clocks, Role Position, stats, note, and Market Position in one clean card. */

body:has(.desk-v2-clean) .desk-v2-flow-stack {
  display: grid !important;
  gap: 16px !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 18px 20px 20px !important;
  border-radius: 24px !important;
  background: rgba(255, 255, 255, 0.96) !important;
  border: 1px solid rgba(17, 24, 39, 0.08) !important;
  box-shadow: 0 18px 44px rgba(15, 23, 42, 0.07) !important;
}

body:has(.desk-v2-clean) .desk-v2-position-inline,
body:has(.desk-v2-clean) .desk-v2-role-row,
body:has(.desk-v2-clean) .desk-v2-market-row {
  display: grid !important;
  grid-template-columns: 120px minmax(0, 1fr) !important;
  align-items: center !important;
  gap: 12px !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

body:has(.desk-v2-clean) .desk-v2-position-inline span,
body:has(.desk-v2-clean) .desk-v2-role-row span,
body:has(.desk-v2-clean) .desk-v2-market-row span {
  white-space: nowrap !important;
  font-size: 11px !important;
  font-weight: 900 !important;
  letter-spacing: 0.18em !important;
  text-transform: uppercase !important;
  color: rgba(17, 24, 39, 0.55) !important;
}

body:has(.desk-v2-clean) .desk-v2-position-select,
body:has(.desk-v2-clean) .desk-v2-role-select,
body:has(.desk-v2-clean) .desk-v2-setup-select {
  width: 100% !important;
  min-width: 0 !important;
  height: 44px !important;
  border-radius: 12px !important;
  font-size: 15px !important;
  font-weight: 800 !important;
  text-align: center !important;
  text-align-last: center !important;
}

body:has(.desk-v2-clean) .desk-v2-clock-row {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 8px !important;
  width: 100% !important;
  margin: -4px 0 4px !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

body:has(.desk-v2-clean) .desk-v2-clock-card {
  min-width: 0 !important;
  min-height: 82px !important;
  padding: 10px 8px !important;
  border-radius: 16px !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;
  gap: 4px !important;
  background: rgba(255, 255, 255, 0.9) !important;
  border: 1px solid rgba(17, 24, 39, 0.08) !important;
}

body:has(.desk-v2-clean) .desk-v2-clock-card strong {
  font-size: clamp(21px, 5.8vw, 32px) !important;
  line-height: 0.95 !important;
  letter-spacing: 0.02em !important;
  white-space: nowrap !important;
}

body:has(.desk-v2-clean) .desk-v2-clock-card span,
body:has(.desk-v2-clean) .desk-v2-clock-card em {
  display: block !important;
  font-size: 9px !important;
  line-height: 1.05 !important;
  font-weight: 900 !important;
  letter-spacing: 0.28em !important;
  text-transform: uppercase !important;
  font-style: normal !important;
  white-space: normal !important;
}

body:has(.desk-v2-clean) .desk-v2-role-stats {
  margin: 0 !important;
}

body:has(.desk-v2-clean) .desk-v2-setup-chip {
  margin: 0 !important;
}

body:has(.desk-v2-clean) .desk-v2-setup-row {
  margin: 0 !important;
}

@media (max-width: 640px) {
  body:has(.desk-v2-clean) .desk-v2-flow-stack {
    padding: 16px 14px 18px !important;
    gap: 14px !important;
    border-radius: 22px !important;
  }

  body:has(.desk-v2-clean) .desk-v2-position-inline,
  body:has(.desk-v2-clean) .desk-v2-role-row,
  body:has(.desk-v2-clean) .desk-v2-market-row {
    grid-template-columns: 126px minmax(0, 1fr) !important;
    gap: 8px !important;
  }

  body:has(.desk-v2-clean) .desk-v2-position-inline span,
  body:has(.desk-v2-clean) .desk-v2-role-row span,
  body:has(.desk-v2-clean) .desk-v2-market-row span {
    font-size: 10px !important;
    letter-spacing: 0.16em !important;
  }

  body:has(.desk-v2-clean) .desk-v2-clock-row {
    gap: 6px !important;
  }

  body:has(.desk-v2-clean) .desk-v2-clock-card {
    min-height: 78px !important;
    padding: 9px 6px !important;
    border-radius: 15px !important;
  }

  body:has(.desk-v2-clean) .desk-v2-clock-card strong {
    font-size: clamp(20px, 5.3vw, 25px) !important;
    letter-spacing: 0 !important;
  }
}

/* FINAL DESK CONTROL ALIGNMENT */
/* Locks Desk, Role, and Market into the same row system. Does not touch bottom nav or sprint naming. */

body:has(.desk-v2-clean) .desk-v2-flow-stack {
  gap: 22px !important;
}

body:has(.desk-v2-clean) .desk-v2-panel {
  overflow: visible !important;
}

body:has(.desk-v2-clean) .desk-v2-position-inline,
body:has(.desk-v2-clean) .desk-v2-position-row,
body:has(.desk-v2-clean) .desk-v2-select-row,
body:has(.desk-v2-clean) .desk-v2-control-row {
  display: grid !important;
  grid-template-columns: 104px minmax(0, 1fr) !important;
  align-items: center !important;
  gap: 12px !important;
  width: 100% !important;
  margin: 0 0 18px !important;
  padding: 0 !important;
}

body:has(.desk-v2-clean) .desk-v2-position-inline > label,
body:has(.desk-v2-clean) .desk-v2-position-row > label,
body:has(.desk-v2-clean) .desk-v2-select-row > label,
body:has(.desk-v2-clean) .desk-v2-control-row > label,
body:has(.desk-v2-clean) .desk-v2-position-inline > span:first-child,
body:has(.desk-v2-clean) .desk-v2-position-row > span:first-child,
body:has(.desk-v2-clean) .desk-v2-select-row > span:first-child,
body:has(.desk-v2-clean) .desk-v2-control-row > span:first-child {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  height: 42px !important;
  min-height: 42px !important;
  margin: 0 !important;
  padding: 0 !important;
  color: #6b7280 !important;
  font-size: 11px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  letter-spacing: 0.24em !important;
  text-transform: uppercase !important;
  white-space: nowrap !important;
}

body:has(.desk-v2-clean) .desk-v2-position-inline select,
body:has(.desk-v2-clean) .desk-v2-position-row select,
body:has(.desk-v2-clean) .desk-v2-select-row select,
body:has(.desk-v2-clean) .desk-v2-control-row select {
  width: 100% !important;
  height: 42px !important;
  min-height: 42px !important;
  max-height: 42px !important;
  margin: 0 !important;
  padding: 0 40px 0 14px !important;
  border-radius: 10px !important;
  border: 1px solid rgba(17, 24, 39, 0.1) !important;
  background-color: #fff !important;
  box-sizing: border-box !important;
  color: #111827 !important;
  font-size: 14px !important;
  line-height: 42px !important;
  font-weight: 800 !important;
  text-align: center !important;
  text-align-last: center !important;
}

body:has(.desk-v2-clean) .desk-v2-clock-row {
  margin: 8px 0 24px !important;
}

body:has(.desk-v2-clean) .desk-v2-role-stats,
body:has(.desk-v2-clean) .desk-v2-role-grid,
body:has(.desk-v2-clean) .desk-v2-stat-row {
  margin: 2px 0 10px !important;
}

body:has(.desk-v2-clean) .desk-v2-note,
body:has(.desk-v2-clean) .desk-v2-role-note {
  margin: 8px 0 24px !important;
}

body:has(.desk-v2-clean) .desk-v2-market-buttons,
body:has(.desk-v2-clean) .desk-v2-chip-row {
  display: flex !important;
  flex-wrap: wrap !important;
  justify-content: center !important;
  gap: 8px !important;
  margin: 6px 0 2px !important;
}

/* Keeps the setup card from kissing the control card */
body:has(.desk-v2-clean) .desk-v2-main-panel,
body:has(.desk-v2-clean) .desk-v2-scenario-card,
body:has(.desk-v2-clean) .desk-v2-step-card {
  margin-top: 22px !important;
}

/* Chart gets usable height without stretching the whole page awkwardly */
body:has(.desk-v2-clean) .desk-v2-chart,
body:has(.desk-v2-clean) .desk-v2-chart-box,
body:has(.desk-v2-clean) .desk-v2-graph,
body:has(.desk-v2-clean) .desk-v2-graph-card {
  min-height: 280px !important;
}

body:has(.desk-v2-clean) canvas {
  min-height: 260px !important;
}

@media (max-width: 720px) {
  body:has(.desk-v2-clean) .desk-v2-position-inline,
  body:has(.desk-v2-clean) .desk-v2-position-row,
  body:has(.desk-v2-clean) .desk-v2-select-row,
  body:has(.desk-v2-clean) .desk-v2-control-row {
    grid-template-columns: 88px minmax(0, 1fr) !important;
    gap: 10px !important;
    margin-bottom: 18px !important;
  }

  body:has(.desk-v2-clean) .desk-v2-position-inline > label,
  body:has(.desk-v2-clean) .desk-v2-position-row > label,
  body:has(.desk-v2-clean) .desk-v2-select-row > label,
  body:has(.desk-v2-clean) .desk-v2-control-row > label,
  body:has(.desk-v2-clean) .desk-v2-position-inline > span:first-child,
  body:has(.desk-v2-clean) .desk-v2-position-row > span:first-child,
  body:has(.desk-v2-clean) .desk-v2-select-row > span:first-child,
  body:has(.desk-v2-clean) .desk-v2-control-row > span:first-child {
    height: 40px !important;
    min-height: 40px !important;
    font-size: 10px !important;
    letter-spacing: 0.2em !important;
  }

  body:has(.desk-v2-clean) .desk-v2-position-inline select,
  body:has(.desk-v2-clean) .desk-v2-position-row select,
  body:has(.desk-v2-clean) .desk-v2-select-row select,
  body:has(.desk-v2-clean) .desk-v2-control-row select {
    height: 40px !important;
    min-height: 40px !important;
    max-height: 40px !important;
    line-height: 40px !important;
    font-size: 13px !important;
    border-radius: 10px !important;
  }

  body:has(.desk-v2-clean) .desk-v2-main-panel,
  body:has(.desk-v2-clean) .desk-v2-scenario-card,
  body:has(.desk-v2-clean) .desk-v2-step-card {
    margin-top: 20px !important;
  }

  body:has(.desk-v2-clean) .desk-v2-chart,
  body:has(.desk-v2-clean) .desk-v2-chart-box,
  body:has(.desk-v2-clean) .desk-v2-graph,
  body:has(.desk-v2-clean) .desk-v2-graph-card {
    min-height: 300px !important;
  }

  body:has(.desk-v2-clean) canvas {
    min-height: 280px !important;
  }
}

/* FINAL REMOVE EXTRA BACK CARD ONLY */
/* Removes the wrapper card behind Desk Position, Role Position, and Market Position. */

body:has(.desk-v2-clean) .desk-v2-flow-stack {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  border-radius: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
}

/* Keep the actual working card only. */
body:has(.desk-v2-clean) .desk-v2-role-card,
body:has(.desk-v2-clean) .desk-v2-control-card,
body:has(.desk-v2-clean) .desk-v2-position-card {
  background: rgba(255, 255, 255, 0.96) !important;
  border: 1px solid rgba(17, 24, 39, 0.08) !important;
  box-shadow: 0 18px 44px rgba(15, 23, 42, 0.07) !important;
  border-radius: 24px !important;
}

/* Desk, Role, Market labels stay consistent. */
body:has(.desk-v2-clean) .desk-v2-position-inline span,
body:has(.desk-v2-clean) .desk-v2-role-row span,
body:has(.desk-v2-clean) .desk-v2-market-row span {
  font-size: 11px !important;
  font-weight: 900 !important;
  letter-spacing: 0.18em !important;
  text-transform: uppercase !important;
}

/* Clock labels stay broken into two lines. */
body:has(.desk-v2-clean) .desk-v2-clock-card em,
body:has(.desk-v2-clean) .desk-v2-clock-card span {
  white-space: normal !important;
  line-height: 1.05 !important;
}

body:has(.desk-v2-clean) .desk-v2-clock-card strong {
  font-size: clamp(20px, 5.2vw, 30px) !important;
  line-height: 0.95 !important;
  white-space: nowrap !important;
}

@media (max-width: 640px) {
  body:has(.desk-v2-clean) .desk-v2-flow-stack {
    padding: 0 !important;
  }

  body:has(.desk-v2-clean) .desk-v2-clock-card strong {
    font-size: clamp(19px, 5vw, 24px) !important;
  }
}

/* FINAL SELECTOR ALIGNMENT CSS ONLY */
/* Makes Desk Position, Role Position, and Market Position selectors match. */

body:has(.desk-v2-clean) .desk-v2-position-inline,
body:has(.desk-v2-clean) .desk-v2-role-row,
body:has(.desk-v2-clean) .desk-v2-market-row,
body:has(.desk-v2-clean) .desk-v2-setup-row {
  display: grid !important;
  grid-template-columns: 132px minmax(0, 1fr) !important;
  align-items: center !important;
  gap: 10px !important;
  width: 100% !important;
  margin: 0 !important;
}

body:has(.desk-v2-clean) .desk-v2-position-inline span,
body:has(.desk-v2-clean) .desk-v2-role-row span,
body:has(.desk-v2-clean) .desk-v2-market-row span,
body:has(.desk-v2-clean) .desk-v2-setup-row span {
  display: block !important;
  width: 132px !important;
  min-width: 132px !important;
  max-width: 132px !important;
  white-space: nowrap !important;
  overflow: visible !important;
  text-align: left !important;
  font-size: 11px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  letter-spacing: 0.18em !important;
  text-transform: uppercase !important;
  color: rgba(17, 24, 39, 0.56) !important;
}

body:has(.desk-v2-clean) .desk-v2-position-select,
body:has(.desk-v2-clean) .desk-v2-role-select,
body:has(.desk-v2-clean) .desk-v2-setup-select,
body:has(.desk-v2-clean) select[data-desk-position-select],
body:has(.desk-v2-clean) select[data-role-position],
body:has(.desk-v2-clean) select[data-setup-category] {
  width: 100% !important;
  min-width: 0 !important;
  height: 42px !important;
  min-height: 42px !important;
  max-height: 42px !important;
  padding: 0 42px 0 16px !important;
  border-radius: 10px !important;
  text-align: center !important;
  text-align-last: center !important;
  font-size: 15px !important;
  line-height: 42px !important;
  font-weight: 900 !important;
  letter-spacing: -0.01em !important;
  color: #111827 !important;
  background-color: #fff !important;
  border: 1px solid rgba(17, 24, 39, 0.11) !important;
  box-shadow: none !important;
  box-sizing: border-box !important;
}

body:has(.desk-v2-clean) .desk-v2-flow-stack,
body:has(.desk-v2-clean) .desk-v2-role-card,
body:has(.desk-v2-clean) .desk-v2-position-card,
body:has(.desk-v2-clean) .desk-v2-control-card {
  gap: 10px !important;
}

body:has(.desk-v2-clean) .desk-v2-clock-row {
  margin: 8px 0 12px !important;
}

body:has(.desk-v2-clean) .desk-v2-role-stats {
  margin-top: 10px !important;
  gap: 8px !important;
}

body:has(.desk-v2-clean) .desk-v2-role-note {
  margin-top: 8px !important;
}

body:has(.desk-v2-clean) .desk-v2-setup-chip-row,
body:has(.desk-v2-clean) .desk-v2-market-chip-row {
  margin-top: 10px !important;
  gap: 8px !important;
}

@media (max-width: 640px) {
  body:has(.desk-v2-clean) .desk-v2-position-inline,
  body:has(.desk-v2-clean) .desk-v2-role-row,
  body:has(.desk-v2-clean) .desk-v2-market-row,
  body:has(.desk-v2-clean) .desk-v2-setup-row {
    grid-template-columns: 118px minmax(0, 1fr) !important;
    gap: 8px !important;
  }

  body:has(.desk-v2-clean) .desk-v2-position-inline span,
  body:has(.desk-v2-clean) .desk-v2-role-row span,
  body:has(.desk-v2-clean) .desk-v2-market-row span,
  body:has(.desk-v2-clean) .desk-v2-setup-row span {
    width: 118px !important;
    min-width: 118px !important;
    max-width: 118px !important;
    font-size: 10px !important;
    letter-spacing: 0.16em !important;
  }

  body:has(.desk-v2-clean) .desk-v2-position-select,
  body:has(.desk-v2-clean) .desk-v2-role-select,
  body:has(.desk-v2-clean) .desk-v2-setup-select,
  body:has(.desk-v2-clean) select[data-desk-position-select],
  body:has(.desk-v2-clean) select[data-role-position],
  body:has(.desk-v2-clean) select[data-setup-category] {
    height: 40px !important;
    min-height: 40px !important;
    max-height: 40px !important;
    line-height: 40px !important;
    font-size: 14px !important;
    padding-left: 12px !important;
    padding-right: 34px !important;
  }

  body:has(.desk-v2-clean) .desk-v2-clock-row {
    margin: 7px 0 10px !important;
    gap: 7px !important;
  }

  body:has(.desk-v2-clean) .desk-v2-role-stats,
  body:has(.desk-v2-clean) .desk-v2-setup-chip-row,
  body:has(.desk-v2-clean) .desk-v2-market-chip-row {
    gap: 7px !important;
  }
}

/* FINAL SELECTOR + CHART CSS FIX ONLY */
/* Fixes Desk Position / Role Position / Market Position selector alignment and chart centering only. */

/* Selector rows */
body:has(.desk-v2-clean) .desk-v2-position-inline,
body:has(.desk-v2-clean) .desk-v2-role-row,
body:has(.desk-v2-clean) .desk-v2-market-row,
body:has(.desk-v2-clean) .desk-v2-setup-row {
  display: grid !important;
  grid-template-columns: 150px minmax(0, 1fr) !important;
  align-items: center !important;
  gap: 12px !important;
  width: 100% !important;
  margin: 0 !important;
  box-sizing: border-box !important;
}

/* Labels */
body:has(.desk-v2-clean) .desk-v2-position-inline span,
body:has(.desk-v2-clean) .desk-v2-role-row span,
body:has(.desk-v2-clean) .desk-v2-market-row span,
body:has(.desk-v2-clean) .desk-v2-setup-row span {
  display: block !important;
  width: 150px !important;
  min-width: 150px !important;
  max-width: 150px !important;
  white-space: nowrap !important;
  overflow: visible !important;
  text-align: left !important;
  font-size: 11px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  letter-spacing: 0.18em !important;
  text-transform: uppercase !important;
  color: rgba(17, 24, 39, 0.58) !important;
}

/* All three selectors match */
body:has(.desk-v2-clean) .desk-v2-position-select,
body:has(.desk-v2-clean) .desk-v2-role-select,
body:has(.desk-v2-clean) .desk-v2-setup-select,
body:has(.desk-v2-clean) select[data-desk-position-select],
body:has(.desk-v2-clean) select[data-role-position],
body:has(.desk-v2-clean) select[data-setup-category] {
  display: block !important;
  width: 100% !important;
  min-width: 0 !important;
  height: 42px !important;
  min-height: 42px !important;
  max-height: 42px !important;
  padding: 0 42px 0 16px !important;
  border-radius: 10px !important;
  text-align: center !important;
  text-align-last: center !important;
  font-size: 15px !important;
  line-height: 42px !important;
  font-weight: 900 !important;
  letter-spacing: -0.01em !important;
  color: #111827 !important;
  background-color: #fff !important;
  border: 1px solid rgba(17, 24, 39, 0.11) !important;
  box-shadow: none !important;
  box-sizing: border-box !important;
}

/* Section spacing */
body:has(.desk-v2-clean) .desk-v2-flow-stack {
  gap: 12px !important;
}

body:has(.desk-v2-clean) .desk-v2-role-card,
body:has(.desk-v2-clean) .desk-v2-position-card,
body:has(.desk-v2-clean) .desk-v2-control-card {
  gap: 10px !important;
}

/* Chart wrapper centering */
body:has(.desk-v2-clean) .desk-v2-chart,
body:has(.desk-v2-clean) .desk-v2-chart-card,
body:has(.desk-v2-clean) .desk-v2-chart-wrap,
body:has(.desk-v2-clean) [data-desk-chart] {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  overflow: hidden !important;
  box-sizing: border-box !important;
}

/* Chart inner layers should fill cleanly instead of pinning to the top */
body:has(.desk-v2-clean) .desk-v2-chart svg,
body:has(.desk-v2-clean) .desk-v2-chart canvas,
body:has(.desk-v2-clean) .desk-v2-chart-card svg,
body:has(.desk-v2-clean) .desk-v2-chart-card canvas,
body:has(.desk-v2-clean) .desk-v2-chart-wrap svg,
body:has(.desk-v2-clean) .desk-v2-chart-wrap canvas,
body:has(.desk-v2-clean) [data-desk-chart] svg,
body:has(.desk-v2-clean) [data-desk-chart] canvas {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  height: auto !important;
  max-height: 100% !important;
  margin: auto !important;
  flex: 0 1 auto !important;
}

/* If the chart is made from div layers instead of canvas/svg */
body:has(.desk-v2-clean) .desk-v2-chart > *,
body:has(.desk-v2-clean) .desk-v2-chart-card > *,
body:has(.desk-v2-clean) .desk-v2-chart-wrap > *,
body:has(.desk-v2-clean) [data-desk-chart] > * {
  margin-top: auto !important;
  margin-bottom: auto !important;
}

/* Mobile */
@media (max-width: 640px) {
  body:has(.desk-v2-clean) .desk-v2-position-inline,
  body:has(.desk-v2-clean) .desk-v2-role-row,
  body:has(.desk-v2-clean) .desk-v2-market-row,
  body:has(.desk-v2-clean) .desk-v2-setup-row {
    grid-template-columns: 142px minmax(0, 1fr) !important;
    gap: 8px !important;
  }

  body:has(.desk-v2-clean) .desk-v2-position-inline span,
  body:has(.desk-v2-clean) .desk-v2-role-row span,
  body:has(.desk-v2-clean) .desk-v2-market-row span,
  body:has(.desk-v2-clean) .desk-v2-setup-row span {
    width: 142px !important;
    min-width: 142px !important;
    max-width: 142px !important;
    font-size: 10px !important;
    letter-spacing: 0.14em !important;
  }

  body:has(.desk-v2-clean) .desk-v2-position-select,
  body:has(.desk-v2-clean) .desk-v2-role-select,
  body:has(.desk-v2-clean) .desk-v2-setup-select,
  body:has(.desk-v2-clean) select[data-desk-position-select],
  body:has(.desk-v2-clean) select[data-role-position],
  body:has(.desk-v2-clean) select[data-setup-category] {
    height: 40px !important;
    min-height: 40px !important;
    max-height: 40px !important;
    line-height: 40px !important;
    font-size: 14px !important;
    padding-left: 12px !important;
    padding-right: 34px !important;
  }
}

@media (max-width: 430px) {
  body:has(.desk-v2-clean) .desk-v2-position-inline,
  body:has(.desk-v2-clean) .desk-v2-role-row,
  body:has(.desk-v2-clean) .desk-v2-market-row,
  body:has(.desk-v2-clean) .desk-v2-setup-row {
    grid-template-columns: 132px minmax(0, 1fr) !important;
    gap: 7px !important;
  }

  body:has(.desk-v2-clean) .desk-v2-position-inline span,
  body:has(.desk-v2-clean) .desk-v2-role-row span,
  body:has(.desk-v2-clean) .desk-v2-market-row span,
  body:has(.desk-v2-clean) .desk-v2-setup-row span {
    width: 132px !important;
    min-width: 132px !important;
    max-width: 132px !important;
    font-size: 9.5px !important;
    letter-spacing: 0.12em !important;
  }

  body:has(.desk-v2-clean) .desk-v2-position-select,
  body:has(.desk-v2-clean) .desk-v2-role-select,
  body:has(.desk-v2-clean) .desk-v2-setup-select,
  body:has(.desk-v2-clean) select[data-desk-position-select],
  body:has(.desk-v2-clean) select[data-role-position],
  body:has(.desk-v2-clean) select[data-setup-category] {
    font-size: 13px !important;
  }
}

/* FINAL REAL SELECTOR + CHART LOCK */
/* Uses the actual HTML classes: position-inline, role-inline, setup-inline. */

/* Exact selector rows */
body:has(.desk-v2-clean) .desk-v2-position-inline,
body:has(.desk-v2-clean) .desk-v2-role-inline,
body:has(.desk-v2-clean) .desk-v2-setup-inline {
  display: grid !important;
  grid-template-columns: 158px minmax(0, 1fr) !important;
  align-items: center !important;
  gap: 12px !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  box-sizing: border-box !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

/* Exact labels */
body:has(.desk-v2-clean) .desk-v2-position-inline > span,
body:has(.desk-v2-clean) .desk-v2-role-inline > span,
body:has(.desk-v2-clean) .desk-v2-setup-inline > span {
  display: block !important;
  width: 158px !important;
  min-width: 158px !important;
  max-width: 158px !important;
  white-space: nowrap !important;
  overflow: visible !important;
  text-align: left !important;
  font-size: 11px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  letter-spacing: 0.15em !important;
  text-transform: uppercase !important;
  color: rgba(17, 24, 39, 0.58) !important;
}

/* Exact selects */
body:has(.desk-v2-clean) .desk-v2-position-inline > select,
body:has(.desk-v2-clean) .desk-v2-role-inline > select,
body:has(.desk-v2-clean) .desk-v2-setup-inline > select,
body:has(.desk-v2-clean) select[data-desk-position-select],
body:has(.desk-v2-clean) select[data-role-position],
body:has(.desk-v2-clean) select[data-setup-category] {
  display: block !important;
  width: 100% !important;
  min-width: 0 !important;
  height: 42px !important;
  min-height: 42px !important;
  max-height: 42px !important;
  padding: 0 42px 0 16px !important;
  border-radius: 10px !important;
  text-align: center !important;
  text-align-last: center !important;
  font-size: 15px !important;
  line-height: 42px !important;
  font-weight: 900 !important;
  letter-spacing: -0.01em !important;
  color: #111827 !important;
  background-color: #fff !important;
  border: 1px solid rgba(17, 24, 39, 0.11) !important;
  box-shadow: none !important;
  box-sizing: border-box !important;
}

/* Tighten this card only */
body:has(.desk-v2-clean) .desk-v2-watchlist .desk-v2-flow-stack {
  gap: 11px !important;
}

/* Clock spacing under Desk Position */
body:has(.desk-v2-clean) .desk-v2-clock-row {
  margin: 8px 0 12px !important;
}

/* Role context spacing */
body:has(.desk-v2-clean) .desk-v2-role-context {
  margin: 0 !important;
}

body:has(.desk-v2-clean) .desk-v2-role-stats {
  margin: 8px 0 8px !important;
  gap: 8px !important;
}

body:has(.desk-v2-clean) .desk-v2-role-note {
  margin: 6px 0 12px !important;
}

/* Market chips spacing */
body:has(.desk-v2-clean) [data-desk-watchlist] {
  margin-top: 8px !important;
}

/* Chart area */
body:has(.desk-v2-clean) .desk-v2-chart,
body:has(.desk-v2-clean) [data-desk-chart] {
  min-height: 220px !important;
  height: 220px !important;
  display: flex !important;
  align-items: stretch !important;
  justify-content: stretch !important;
  overflow: hidden !important;
  border-radius: 20px !important;
}

body:has(.desk-v2-clean) .desk-v2-chart svg,
body:has(.desk-v2-clean) [data-desk-chart] svg {
  width: 100% !important;
  height: 100% !important;
  min-height: 220px !important;
  max-height: none !important;
  margin: 0 !important;
  display: block !important;
  flex: 1 1 auto !important;
}

/* Keep chart children from being vertically auto-centered by older patches */
body:has(.desk-v2-clean) .desk-v2-chart > *,
body:has(.desk-v2-clean) [data-desk-chart] > * {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

/* Mobile fit */
@media (max-width: 640px) {
  body:has(.desk-v2-clean) .desk-v2-position-inline,
  body:has(.desk-v2-clean) .desk-v2-role-inline,
  body:has(.desk-v2-clean) .desk-v2-setup-inline {
    grid-template-columns: 142px minmax(0, 1fr) !important;
    gap: 8px !important;
  }

  body:has(.desk-v2-clean) .desk-v2-position-inline > span,
  body:has(.desk-v2-clean) .desk-v2-role-inline > span,
  body:has(.desk-v2-clean) .desk-v2-setup-inline > span {
    width: 142px !important;
    min-width: 142px !important;
    max-width: 142px !important;
    font-size: 10px !important;
    letter-spacing: 0.12em !important;
  }

  body:has(.desk-v2-clean) .desk-v2-position-inline > select,
  body:has(.desk-v2-clean) .desk-v2-role-inline > select,
  body:has(.desk-v2-clean) .desk-v2-setup-inline > select,
  body:has(.desk-v2-clean) select[data-desk-position-select],
  body:has(.desk-v2-clean) select[data-role-position],
  body:has(.desk-v2-clean) select[data-setup-category] {
    height: 40px !important;
    min-height: 40px !important;
    max-height: 40px !important;
    line-height: 40px !important;
    font-size: 14px !important;
    padding-left: 12px !important;
    padding-right: 34px !important;
  }

  body:has(.desk-v2-clean) .desk-v2-chart,
  body:has(.desk-v2-clean) [data-desk-chart] {
    min-height: 210px !important;
    height: 210px !important;
  }

  body:has(.desk-v2-clean) .desk-v2-chart svg,
  body:has(.desk-v2-clean) [data-desk-chart] svg {
    min-height: 210px !important;
  }
}

@media (max-width: 430px) {
  body:has(.desk-v2-clean) .desk-v2-position-inline,
  body:has(.desk-v2-clean) .desk-v2-role-inline,
  body:has(.desk-v2-clean) .desk-v2-setup-inline {
    grid-template-columns: 132px minmax(0, 1fr) !important;
    gap: 7px !important;
  }

  body:has(.desk-v2-clean) .desk-v2-position-inline > span,
  body:has(.desk-v2-clean) .desk-v2-role-inline > span,
  body:has(.desk-v2-clean) .desk-v2-setup-inline > span {
    width: 132px !important;
    min-width: 132px !important;
    max-width: 132px !important;
    font-size: 9.5px !important;
    letter-spacing: 0.1em !important;
  }

  body:has(.desk-v2-clean) .desk-v2-position-inline > select,
  body:has(.desk-v2-clean) .desk-v2-role-inline > select,
  body:has(.desk-v2-clean) .desk-v2-setup-inline > select,
  body:has(.desk-v2-clean) select[data-desk-position-select],
  body:has(.desk-v2-clean) select[data-role-position],
  body:has(.desk-v2-clean) select[data-setup-category] {
    font-size: 13px !important;
  }
}

/* FINAL REAL SELECTOR + CHART LOCK */
/* Uses the actual HTML classes: position-inline, role-inline, setup-inline. */

/* Exact selector rows */
body:has(.desk-v2-clean) .desk-v2-position-inline,
body:has(.desk-v2-clean) .desk-v2-role-inline,
body:has(.desk-v2-clean) .desk-v2-setup-inline {
  display: grid !important;
  grid-template-columns: 158px minmax(0, 1fr) !important;
  align-items: center !important;
  gap: 12px !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  box-sizing: border-box !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

/* Exact labels */
body:has(.desk-v2-clean) .desk-v2-position-inline > span,
body:has(.desk-v2-clean) .desk-v2-role-inline > span,
body:has(.desk-v2-clean) .desk-v2-setup-inline > span {
  display: block !important;
  width: 158px !important;
  min-width: 158px !important;
  max-width: 158px !important;
  white-space: nowrap !important;
  overflow: visible !important;
  text-align: left !important;
  font-size: 11px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  letter-spacing: 0.15em !important;
  text-transform: uppercase !important;
  color: rgba(17, 24, 39, 0.58) !important;
}

/* Exact selects */
body:has(.desk-v2-clean) .desk-v2-position-inline > select,
body:has(.desk-v2-clean) .desk-v2-role-inline > select,
body:has(.desk-v2-clean) .desk-v2-setup-inline > select,
body:has(.desk-v2-clean) select[data-desk-position-select],
body:has(.desk-v2-clean) select[data-role-position],
body:has(.desk-v2-clean) select[data-setup-category] {
  display: block !important;
  width: 100% !important;
  min-width: 0 !important;
  height: 42px !important;
  min-height: 42px !important;
  max-height: 42px !important;
  padding: 0 42px 0 16px !important;
  border-radius: 10px !important;
  text-align: center !important;
  text-align-last: center !important;
  font-size: 15px !important;
  line-height: 42px !important;
  font-weight: 900 !important;
  letter-spacing: -0.01em !important;
  color: #111827 !important;
  background-color: #fff !important;
  border: 1px solid rgba(17, 24, 39, 0.11) !important;
  box-shadow: none !important;
  box-sizing: border-box !important;
}

/* Tighten this card only */
body:has(.desk-v2-clean) .desk-v2-watchlist .desk-v2-flow-stack {
  gap: 11px !important;
}

/* Clock spacing under Desk Position */
body:has(.desk-v2-clean) .desk-v2-clock-row {
  margin: 8px 0 12px !important;
}

/* Role context spacing */
body:has(.desk-v2-clean) .desk-v2-role-context {
  margin: 0 !important;
}

body:has(.desk-v2-clean) .desk-v2-role-stats {
  margin: 8px 0 8px !important;
  gap: 8px !important;
}

body:has(.desk-v2-clean) .desk-v2-role-note {
  margin: 6px 0 12px !important;
}

/* Market chips spacing */
body:has(.desk-v2-clean) [data-desk-watchlist] {
  margin-top: 8px !important;
}

/* Chart area */
body:has(.desk-v2-clean) .desk-v2-chart,
body:has(.desk-v2-clean) [data-desk-chart] {
  min-height: 220px !important;
  height: 220px !important;
  display: flex !important;
  align-items: stretch !important;
  justify-content: stretch !important;
  overflow: hidden !important;
  border-radius: 20px !important;
}

body:has(.desk-v2-clean) .desk-v2-chart svg,
body:has(.desk-v2-clean) [data-desk-chart] svg {
  width: 100% !important;
  height: 100% !important;
  min-height: 220px !important;
  max-height: none !important;
  margin: 0 !important;
  display: block !important;
  flex: 1 1 auto !important;
}

/* Keep chart children from being vertically auto-centered by older patches */
body:has(.desk-v2-clean) .desk-v2-chart > *,
body:has(.desk-v2-clean) [data-desk-chart] > * {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

/* Mobile fit */
@media (max-width: 640px) {
  body:has(.desk-v2-clean) .desk-v2-position-inline,
  body:has(.desk-v2-clean) .desk-v2-role-inline,
  body:has(.desk-v2-clean) .desk-v2-setup-inline {
    grid-template-columns: 142px minmax(0, 1fr) !important;
    gap: 8px !important;
  }

  body:has(.desk-v2-clean) .desk-v2-position-inline > span,
  body:has(.desk-v2-clean) .desk-v2-role-inline > span,
  body:has(.desk-v2-clean) .desk-v2-setup-inline > span {
    width: 142px !important;
    min-width: 142px !important;
    max-width: 142px !important;
    font-size: 10px !important;
    letter-spacing: 0.12em !important;
  }

  body:has(.desk-v2-clean) .desk-v2-position-inline > select,
  body:has(.desk-v2-clean) .desk-v2-role-inline > select,
  body:has(.desk-v2-clean) .desk-v2-setup-inline > select,
  body:has(.desk-v2-clean) select[data-desk-position-select],
  body:has(.desk-v2-clean) select[data-role-position],
  body:has(.desk-v2-clean) select[data-setup-category] {
    height: 40px !important;
    min-height: 40px !important;
    max-height: 40px !important;
    line-height: 40px !important;
    font-size: 14px !important;
    padding-left: 12px !important;
    padding-right: 34px !important;
  }

  body:has(.desk-v2-clean) .desk-v2-chart,
  body:has(.desk-v2-clean) [data-desk-chart] {
    min-height: 210px !important;
    height: 210px !important;
  }

  body:has(.desk-v2-clean) .desk-v2-chart svg,
  body:has(.desk-v2-clean) [data-desk-chart] svg {
    min-height: 210px !important;
  }
}

@media (max-width: 430px) {
  body:has(.desk-v2-clean) .desk-v2-position-inline,
  body:has(.desk-v2-clean) .desk-v2-role-inline,
  body:has(.desk-v2-clean) .desk-v2-setup-inline {
    grid-template-columns: 132px minmax(0, 1fr) !important;
    gap: 7px !important;
  }

  body:has(.desk-v2-clean) .desk-v2-position-inline > span,
  body:has(.desk-v2-clean) .desk-v2-role-inline > span,
  body:has(.desk-v2-clean) .desk-v2-setup-inline > span {
    width: 132px !important;
    min-width: 132px !important;
    max-width: 132px !important;
    font-size: 9.5px !important;
    letter-spacing: 0.1em !important;
  }

  body:has(.desk-v2-clean) .desk-v2-position-inline > select,
  body:has(.desk-v2-clean) .desk-v2-role-inline > select,
  body:has(.desk-v2-clean) .desk-v2-setup-inline > select,
  body:has(.desk-v2-clean) select[data-desk-position-select],
  body:has(.desk-v2-clean) select[data-role-position],
  body:has(.desk-v2-clean) select[data-setup-category] {
    font-size: 13px !important;
  }
}
/* FINAL CLEAN CHART LOCK */
/* Chart only: one teal grid surface, one SVG overlay, no split panel. */

body:has(.desk-v2-clean) .desk-v2-main-screen .desk-v2-chart,
body:has(.desk-v2-clean) .desk-v2-main-screen [data-desk-chart] {
  position: relative !important;
  display: block !important;
  box-sizing: border-box !important;
  width: 100% !important;
  height: 260px !important;
  min-height: 260px !important;
  max-height: 260px !important;
  margin: 18px 0 12px !important;
  padding: 0 !important;
  overflow: hidden !important;
  border-radius: 22px !important;
  border: 1px solid rgba(25, 198, 184, 0.16) !important;
  background-color: rgba(25, 198, 184, 0.055) !important;
  background-image:
    linear-gradient(rgba(17, 24, 39, 0.045) 1px, transparent 1px),
    linear-gradient(90deg, rgba(17, 24, 39, 0.045) 1px, transparent 1px) !important;
  background-size: 40px 40px !important;
  background-position: 0 0 !important;
}

body:has(.desk-v2-clean) .desk-v2-main-screen .desk-v2-chart-svg,
body:has(.desk-v2-clean) .desk-v2-main-screen .desk-v2-chart svg,
body:has(.desk-v2-clean) .desk-v2-main-screen [data-desk-chart] svg {
  position: absolute !important;
  inset: 0 !important;
  display: block !important;
  box-sizing: border-box !important;
  width: 100% !important;
  height: 100% !important;
  min-height: 100% !important;
  max-height: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: visible !important;
  border-radius: 22px !important;
  background: transparent !important;
}

body:has(.desk-v2-clean) .desk-v2-chart-surface,
body:has(.desk-v2-clean) .desk-v2-chart-grid-fill {
  display: none !important;
}

body:has(.desk-v2-clean) .desk-v2-chart-note {
  margin: 12px 0 16px !important;
  text-align: center !important;
}

@media (max-width: 520px) {
  body:has(.desk-v2-clean) .desk-v2-main-screen .desk-v2-chart,
  body:has(.desk-v2-clean) .desk-v2-main-screen [data-desk-chart] {
    height: 220px !important;
    min-height: 220px !important;
    max-height: 220px !important;
    margin: 14px 0 10px !important;
    border-radius: 20px !important;
    background-size: 34px 34px !important;
  }

  body:has(.desk-v2-clean) .desk-v2-main-screen .desk-v2-chart-svg,
  body:has(.desk-v2-clean) .desk-v2-main-screen .desk-v2-chart svg,
  body:has(.desk-v2-clean) .desk-v2-main-screen [data-desk-chart] svg {
    border-radius: 20px !important;
  }
}


/* FINAL MOBILE HERO WIDTH LOCK */
/* Keeps Trading Desk hero card aligned to the same responsive width as the main desk/control sections. */

body:has(.desk-v2-clean) .sim-page-shell {
  width: min(100%, 1120px) !important;
  max-width: 1120px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

body:has(.desk-v2-clean) .sim-page-hero {
  width: 100% !important;
  max-width: none !important;
  box-sizing: border-box !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

body:has(.desk-v2-clean) .sim-page-section,
body:has(.desk-v2-clean) .desk-v2-panel,
body:has(.desk-v2-clean) .desk-v2-main-screen {
  max-width: none !important;
}

@media (max-width: 760px) {
  body:has(.desk-v2-clean) .sim-page-shell {
    width: 100% !important;
    max-width: none !important;
    padding-left: 16px !important;
    padding-right: 16px !important;
  }

  body:has(.desk-v2-clean) .sim-page-hero {
    width: 100% !important;
    max-width: none !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding: 26px 28px !important;
    border-radius: 24px !important;
  }
}

@media (max-width: 520px) {
  body:has(.desk-v2-clean) .sim-page-shell {
    padding-left: 16px !important;
    padding-right: 16px !important;
  }

  body:has(.desk-v2-clean) .sim-page-hero {
    width: 100% !important;
    max-width: none !important;
    padding: 24px 28px !important;
  }
}

/* FINAL CLOCK REFERENCE STATE */
/* Clicked clock becomes the active market reference without changing the selected desk position. */

body:has(.desk-v2-clean) .desk-v2-clock-card {
  cursor: pointer !important;
  appearance: none !important;
  -webkit-appearance: none !important;
}

body:has(.desk-v2-clean) .desk-v2-clock-card.is-reference {
  border-color: rgba(25, 198, 184, 0.55) !important;
  box-shadow: 0 0 0 2px rgba(25, 198, 184, 0.12) inset !important;
}

/* FINAL DESK CLOCK RESTORE + WIRE LOCK */
body:has(.desk-v2-clean) .desk-v2-position-inline,
body:has(.desk-v2-clean) .desk-v2-role-inline,
body:has(.desk-v2-clean) .desk-v2-setup-inline {
  display: grid !important;
  grid-template-columns: 150px minmax(0, 1fr) !important;
  align-items: center !important;
  gap: 12px !important;
  width: 100% !important;
  margin: 0 !important;
}

body:has(.desk-v2-clean) .desk-v2-position-inline span,
body:has(.desk-v2-clean) .desk-v2-role-inline span,
body:has(.desk-v2-clean) .desk-v2-setup-inline span {
  display: block !important;
  min-width: 0 !important;
  font-size: 12px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  white-space: nowrap !important;
}

body:has(.desk-v2-clean) .desk-v2-position-select,
body:has(.desk-v2-clean) .desk-v2-role-select,
body:has(.desk-v2-clean) .desk-v2-setup-select,
body:has(.desk-v2-clean) select[data-desk-position-select],
body:has(.desk-v2-clean) select[data-role-position],
body:has(.desk-v2-clean) select[data-setup-category] {
  width: 100% !important;
  height: 42px !important;
  min-height: 42px !important;
  max-height: 42px !important;
  box-sizing: border-box !important;
  border-radius: 999px !important;
  padding: 0 38px 0 14px !important;
  font-size: 12px !important;
  line-height: 42px !important;
  font-weight: 900 !important;
  text-align: center !important;
  text-align-last: center !important;
}

body:has(.desk-v2-clean) .desk-v2-clock-row {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 8px !important;
  width: 100% !important;
  margin: 8px 0 10px !important;
}

body:has(.desk-v2-clean) .desk-v2-clock-card {
  appearance: none !important;
  border: 1px solid rgba(17, 24, 39, 0.08) !important;
  border-radius: 18px !important;
  background: rgba(255,255,255,0.92) !important;
  min-width: 0 !important;
  min-height: 76px !important;
  height: 76px !important;
  padding: 8px 4px !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 3px !important;
  text-align: center !important;
  overflow: hidden !important;
  cursor: pointer !important;
}

body:has(.desk-v2-clean) .desk-v2-clock-card.is-active {
  border-color: rgba(25, 198, 184, 0.42) !important;
  box-shadow: inset 0 0 0 1px rgba(25, 198, 184, 0.22) !important;
}

body:has(.desk-v2-clean) .desk-v2-clock-card span {
  display: block !important;
  font-size: 10px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  white-space: nowrap !important;
}

body:has(.desk-v2-clean) .desk-v2-clock-card strong {
  display: block !important;
  font-size: clamp(17px, 4.8vw, 21px) !important;
  line-height: 0.95 !important;
  font-weight: 950 !important;
  letter-spacing: -0.04em !important;
  white-space: nowrap !important;
}

body:has(.desk-v2-clean) .desk-v2-clock-card em {
  display: block !important;
  font-style: normal !important;
  font-size: 9px !important;
  line-height: 1.05 !important;
  font-weight: 900 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  white-space: normal !important;
}

@media (max-width: 520px) {
  body:has(.desk-v2-clean) .desk-v2-position-inline,
  body:has(.desk-v2-clean) .desk-v2-role-inline,
  body:has(.desk-v2-clean) .desk-v2-setup-inline {
    grid-template-columns: 118px minmax(0, 1fr) !important;
    gap: 8px !important;
  }

  body:has(.desk-v2-clean) .desk-v2-position-inline span,
  body:has(.desk-v2-clean) .desk-v2-role-inline span,
  body:has(.desk-v2-clean) .desk-v2-setup-inline span {
    font-size: 10px !important;
    letter-spacing: 0.05em !important;
  }

  body:has(.desk-v2-clean) .desk-v2-position-select,
  body:has(.desk-v2-clean) .desk-v2-role-select,
  body:has(.desk-v2-clean) .desk-v2-setup-select,
  body:has(.desk-v2-clean) select[data-desk-position-select],
  body:has(.desk-v2-clean) select[data-role-position],
  body:has(.desk-v2-clean) select[data-setup-category] {
    height: 40px !important;
    min-height: 40px !important;
    max-height: 40px !important;
    line-height: 40px !important;
    font-size: 11px !important;
    padding-left: 10px !important;
    padding-right: 32px !important;
  }

  body:has(.desk-v2-clean) .desk-v2-clock-row {
    gap: 6px !important;
    margin: 8px 0 10px !important;
  }

  body:has(.desk-v2-clean) .desk-v2-clock-card {
    min-height: 72px !important;
    height: 72px !important;
    border-radius: 16px !important;
    padding: 7px 3px !important;
  }

  body:has(.desk-v2-clean) .desk-v2-clock-card span {
    font-size: 9px !important;
  }

  body:has(.desk-v2-clean) .desk-v2-clock-card strong {
    font-size: clamp(15px, 4.4vw, 18px) !important;
  }

  body:has(.desk-v2-clean) .desk-v2-clock-card em {
    font-size: 8px !important;
    line-height: 1.05 !important;
  }
}
