/* DPX v0.7.3 Patch 1
   Scope: Auto Trade Setup regrouping, read-only Logic Reference, and responsive visibility.
   Loaded after v071-m7.css so these rules only correct the affected lower-tab UI. */

/* ----- Shared v0.7.3 settings structure ----- */
.v073-settings-grid {
  display: grid !important;
  grid-template-columns: minmax(0, 1.08fr) minmax(0, .92fr) !important;
  grid-template-areas:
    "entry settlement"
    "adjust settlement" !important;
  gap: 7px !important;
  align-items: start !important;
  width: 100% !important;
  min-width: 0 !important;
  overflow: visible !important;
}
.v073-entry-card { grid-area: entry !important; }
.v073-adjustment-card { grid-area: adjust !important; }
.v073-settlement-card { grid-area: settlement !important; }

.v073-settings-grid > .auto-rule-card,
.v073-settings-grid > .auto-rule-details {
  box-sizing: border-box !important;
  min-width: 0 !important;
  width: 100% !important;
  margin: 0 !important;
  overflow: visible !important;
}
.v073-settings-grid .auto-rule-details > summary {
  min-height: 24px !important;
  padding: 4px 7px !important;
  font-size: 10px !important;
}
.v073-settings-grid .auto-rule-details[open] > summary { margin-bottom: 4px !important; }

.v073-settings-grid .horizon-param-grid.six-horizon-grid {
  box-sizing: border-box !important;
  display: grid !important;
  grid-template-columns: minmax(84px, 1.28fr) repeat(6, minmax(42px, .72fr)) !important;
  gap: 3px !important;
  width: 100% !important;
  min-width: 0 !important;
  overflow: visible !important;
}
.v073-settings-grid .horizon-param-grid.six-horizon-grid .horizon-grid-head,
.v073-settings-grid .horizon-param-grid.six-horizon-grid .horizon-row-label {
  min-width: 0 !important;
  font-size: 8px !important;
  line-height: 1.08 !important;
}
.v073-settings-grid .horizon-param-grid.six-horizon-grid .text-input,
.v073-settings-grid .horizon-param-grid.six-horizon-grid input {
  box-sizing: border-box !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: none !important;
  height: 25px !important;
  min-height: 25px !important;
  padding: 2px 3px !important;
  font-size: 9px !important;
  text-align: center !important;
}

.v073-prediction-persistence,
.v073-entry-filters,
.v073-settlement-basics,
.v073-protection-grid,
.v073-signal-grid,
.v073-execution-grid {
  box-sizing: border-box !important;
  display: grid !important;
  min-width: 0 !important;
  width: 100% !important;
  gap: 4px 7px !important;
}
.v073-prediction-persistence {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  margin-top: 5px !important;
}
.v073-entry-filters {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  margin-top: 5px !important;
}
.v073-settlement-basics,
.v073-protection-grid,
.v073-signal-grid,
.v073-execution-grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }

.v073-prediction-persistence label,
.v073-entry-filters label,
.v073-settlement-basics label,
.v073-protection-grid label,
.v073-signal-grid label,
.v073-execution-grid label,
.v073-value-field,
.v073-settings-grid .checkbox-field {
  box-sizing: border-box !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(52px, 74px) !important;
  align-items: center !important;
  gap: 5px !important;
  min-width: 0 !important;
  margin: 0 !important;
  font-size: 9px !important;
  line-height: 1.12 !important;
}
.v073-settings-grid .checkbox-field { grid-template-columns: minmax(0, 1fr) 26px !important; }
.v073-settings-grid label > span { min-width: 0 !important; overflow-wrap: anywhere !important; }
.v073-settings-grid label .text-input,
.v073-settings-grid label select,
.v073-settings-grid label input[type="text"],
.v073-settings-grid label input[type="number"] {
  box-sizing: border-box !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: none !important;
  height: 26px !important;
  min-height: 26px !important;
  padding: 2px 5px !important;
  font-size: 9px !important;
}
.v073-settings-grid input[type="checkbox"] { justify-self: end !important; }
.v073-settings-grid .mini-pair {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 3px !important;
  min-width: 0 !important;
}

.v073-section-box {
  box-sizing: border-box !important;
  min-width: 0 !important;
  width: 100% !important;
  margin-top: 5px !important;
  padding: 5px !important;
  overflow: visible !important;
}
.v073-section-box > .v073-subtitle {
  margin: 0 0 4px !important;
  font-size: 9px !important;
  line-height: 1.1 !important;
}
.v073-signal-box,
.v073-execution-box { margin-top: 6px !important; }
.v073-kalman-box {
  box-sizing: border-box !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(52px, 76px) !important;
  align-items: center !important;
  gap: 4px 6px !important;
  min-width: 0 !important;
  padding: 5px !important;
}
.v073-kalman-box > label {
  grid-column: 1 / -1 !important;
}
.v073-kalman-box .v073-kalman-param {
  display: contents !important;
}
.v073-kalman-box .v073-kalman-param > span { font-size: 8px !important; }
.v073-kalman-box .text-input {
  box-sizing: border-box !important;
  width: 100% !important;
  min-width: 0 !important;
  height: 24px !important;
  min-height: 24px !important;
  font-size: 8.5px !important;
}
.v073-settings-grid #autoSimulationSummary,
.v073-settings-grid #autoFlipDiagnosticLog {
  box-sizing: border-box !important;
  min-width: 0 !important;
  max-width: 100% !important;
  overflow-wrap: anywhere !important;
  white-space: normal !important;
  font-size: 8px !important;
  line-height: 1.15 !important;
}

/* ----- Read-only Logic Reference tab ----- */
#logicReferenceCard {
  box-sizing: border-box !important;
  width: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
  overflow: auto !important;
}
.logic-reference-grid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 8px !important;
  width: 100% !important;
  min-width: 0 !important;
}
.logic-reference-grid .logic-field {
  min-width: 0 !important;
  width: 100% !important;
}
.logic-reference-grid .condition-input {
  box-sizing: border-box !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;
  min-height: 180px !important;
  resize: vertical !important;
  overflow: auto !important;
  white-space: pre-wrap !important;
  overflow-wrap: anywhere !important;
  font-size: 10px !important;
  line-height: 1.25 !important;
}
.v073-logic-help {
  margin: 0 0 7px !important;
  font-size: 10px !important;
  line-height: 1.25 !important;
}

/* ----- Laptop, tablet and phone-landscape use the same wide lower-tab layout ----- */
body.desktop-tab-layout .desktop-tab-list {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  min-width: 0 !important;
}
body.desktop-tab-layout .desktop-tab-panels {
  min-width: 0 !important;
  overflow: hidden !important;
}
body.desktop-tab-layout .desktop-tab-panels > .ledger-card,
body.desktop-tab-layout .desktop-tab-panels > .auto-trading-card,
body.desktop-tab-layout .desktop-tab-panels > #logicReferenceCard,
body.desktop-tab-layout .desktop-tab-panels > #dailyRecommendationsPanel {
  box-sizing: border-box !important;
  width: 100% !important;
  min-width: 0 !important;
  height: 100% !important;
  min-height: 0 !important;
  max-height: 100% !important;
  margin: 0 !important;
}
body.desktop-tab-layout .desktop-tab-panels > .auto-trading-card,
body.desktop-tab-layout .desktop-tab-panels > #logicReferenceCard,
body.desktop-tab-layout .desktop-tab-panels > #dailyRecommendationsPanel {
  overflow: auto !important;
}
body.desktop-tab-layout .desktop-tab-panels > * { display: none !important; }
body.desktop-tab-layout.desktop-tab-history .desktop-tab-panels > #phoneHistoryPanel,
body.desktop-tab-layout.desktop-tab-setup .desktop-tab-panels > #autoTradingCard,
body.desktop-tab-layout.desktop-tab-logic .desktop-tab-panels > #logicReferenceCard,
body.desktop-tab-layout.desktop-tab-recommendations .desktop-tab-panels > #dailyRecommendationsPanel {
  display: block !important;
}
body.desktop-tab-layout.desktop-tab-history .desktop-tab-panels > #phoneHistoryPanel { display: flex !important; }
body.desktop-tab-layout #autoTradingCard {
  padding: 6px !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
}
body.desktop-tab-layout #logicReferenceCard {
  padding: 8px !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
}

/* Phone landscape is intentionally desktop-tab-layout in app.js. Keep it wide and compact. */
@media (min-width: 601px) and (max-width: 1100px) and (orientation: landscape) {
  body.desktop-tab-layout .v073-settings-grid {
    grid-template-columns: minmax(0, 1.04fr) minmax(0, .96fr) !important;
    gap: 4px !important;
  }
  body.desktop-tab-layout .v073-settings-grid .horizon-param-grid.six-horizon-grid {
    grid-template-columns: minmax(72px, 1.22fr) repeat(6, minmax(35px, .72fr)) !important;
    gap: 2px !important;
  }
  body.desktop-tab-layout .v073-settings-grid .horizon-param-grid.six-horizon-grid .horizon-grid-head,
  body.desktop-tab-layout .v073-settings-grid .horizon-param-grid.six-horizon-grid .horizon-row-label { font-size: 7px !important; }
  body.desktop-tab-layout .v073-settings-grid .horizon-param-grid.six-horizon-grid input { height: 22px !important; min-height: 22px !important; font-size: 8px !important; }
  body.desktop-tab-layout .v073-prediction-persistence label,
  body.desktop-tab-layout .v073-entry-filters label,
  body.desktop-tab-layout .v073-settlement-basics label,
  body.desktop-tab-layout .v073-protection-grid label,
  body.desktop-tab-layout .v073-signal-grid label,
  body.desktop-tab-layout .v073-execution-grid label { font-size: 7.5px !important; }
  body.desktop-tab-layout .desktop-bottom-tab { padding-left: 5px !important; padding-right: 5px !important; font-size: 9px !important; }
  body.desktop-tab-layout .logic-reference-grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: 5px !important; }
  body.desktop-tab-layout .logic-reference-grid .condition-input { min-height: 150px !important; font-size: 8.5px !important; }
}

/* ----- Phone portrait: stacked/tappable layout ----- */
@media (max-width: 600px) and (orientation: portrait) {
  body.phone-tab-layout .phone-tab-list {
    grid-template-columns: repeat(7, minmax(0, 1fr)) !important;
    min-width: 0 !important;
  }
  body.phone-tab-layout .phone-bottom-tab {
    box-sizing: border-box !important;
    min-width: 0 !important;
    padding-left: 2px !important;
    padding-right: 2px !important;
    font-size: 8px !important;
    white-space: nowrap !important;
  }
  body.phone-tab-layout .phone-tab-panels {
    min-width: 0 !important;
    overflow: hidden !important;
  }
  body.phone-tab-layout .phone-tab-panels > * { display: none !important; }
  body.phone-tab-layout .phone-tab-panels > [aria-hidden="false"] {
    box-sizing: border-box !important;
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    height: 100% !important;
    min-height: 0 !important;
    max-height: 100% !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
  }
  body.phone-tab-layout #phoneHistoryPanel[aria-hidden="false"],
  body.phone-tab-layout #phoneChartPanel[aria-hidden="false"] { display: flex !important; }

  body.phone-tab-layout .phone-auto-panel,
  body.phone-tab-layout #logicReferenceCard {
    padding: 6px !important;
  }
  body.phone-tab-layout .phone-auto-panel > .auto-rule-card,
  body.phone-tab-layout .phone-auto-panel > .auto-rule-details {
    box-sizing: border-box !important;
    width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    overflow: visible !important;
  }
  body.phone-tab-layout .phone-auto-panel .horizon-param-grid.six-horizon-grid {
    display: grid !important;
    grid-template-columns: 72px repeat(6, minmax(0, 1fr)) !important;
    gap: 2px !important;
    width: 100% !important;
    min-width: 0 !important;
  }
  body.phone-tab-layout .phone-auto-panel .horizon-param-grid.six-horizon-grid .horizon-grid-head,
  body.phone-tab-layout .phone-auto-panel .horizon-param-grid.six-horizon-grid .horizon-row-label {
    min-width: 0 !important;
    font-size: 7px !important;
    line-height: 1.05 !important;
  }
  body.phone-tab-layout .phone-auto-panel .horizon-param-grid.six-horizon-grid input,
  body.phone-tab-layout .phone-auto-panel .horizon-param-grid.six-horizon-grid .text-input {
    box-sizing: border-box !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    height: 28px !important;
    min-height: 28px !important;
    padding: 2px !important;
    font-size: 9px !important;
  }
  body.phone-tab-layout .v073-prediction-persistence,
  body.phone-tab-layout .v073-entry-filters,
  body.phone-tab-layout .v073-settlement-basics,
  body.phone-tab-layout .v073-protection-grid,
  body.phone-tab-layout .v073-signal-grid,
  body.phone-tab-layout .v073-execution-grid,
  body.phone-tab-layout .logic-reference-grid {
    grid-template-columns: 1fr !important;
  }
  body.phone-tab-layout .v073-prediction-persistence label,
  body.phone-tab-layout .v073-entry-filters label,
  body.phone-tab-layout .v073-settlement-basics label,
  body.phone-tab-layout .v073-protection-grid label,
  body.phone-tab-layout .v073-signal-grid label,
  body.phone-tab-layout .v073-execution-grid label,
  body.phone-tab-layout .v073-value-field,
  body.phone-tab-layout .v073-settings-grid .checkbox-field {
    min-height: 32px !important;
    font-size: 10px !important;
  }
  body.phone-tab-layout .v073-settings-grid label .text-input,
  body.phone-tab-layout .v073-settings-grid label input[type="text"],
  body.phone-tab-layout .v073-settings-grid label input[type="number"],
  body.phone-tab-layout .v073-settings-grid label select {
    height: 30px !important;
    min-height: 30px !important;
    font-size: 10px !important;
  }
  body.phone-tab-layout .v073-kalman-box { grid-template-columns: minmax(0, 1fr) 80px !important; }
  body.phone-tab-layout .logic-reference-grid .condition-input {
    min-height: 190px !important;
    font-size: 10px !important;
  }
}

@media (max-width: 380px) and (orientation: portrait) {
  body.phone-tab-layout .phone-bottom-tab { font-size: 7px !important; }
  body.phone-tab-layout .phone-auto-panel .horizon-param-grid.six-horizon-grid {
    grid-template-columns: 64px repeat(6, minmax(0, 1fr)) !important;
    gap: 1px !important;
  }
  body.phone-tab-layout .phone-auto-panel .horizon-param-grid.six-horizon-grid input,
  body.phone-tab-layout .phone-auto-panel .horizon-param-grid.six-horizon-grid .text-input { font-size: 8px !important; }
}

/* Actual v0.7.3 settlement subsection classes. */
.v073-settlement-basics { margin-bottom: 5px !important; }
.v073-protection-grid { margin-top: 5px !important; }
.v073-protection-box,
.v073-signal-flip,
.v073-execution-cost {
  box-sizing: border-box !important;
  min-width: 0 !important;
  width: 100% !important;
  padding: 5px !important;
  overflow: visible !important;
}
.v073-protection-box {
  display: grid !important;
  gap: 4px !important;
  align-content: start !important;
}
.v073-protection-box > strong,
.v073-kalman-box > strong,
.v073-subsection-title {
  min-width: 0 !important;
  font-size: 8px !important;
  line-height: 1.12 !important;
  overflow-wrap: anywhere !important;
}
.v073-kalman-box > strong { grid-column: 1 / -1 !important; }
.v073-kalman-box > label {
  box-sizing: border-box !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(52px, 76px) !important;
  grid-column: 1 / -1 !important;
  align-items: center !important;
  gap: 6px !important;
  min-width: 0 !important;
  margin: 0 !important;
  font-size: 8px !important;
}
.v073-signal-flip { margin-top: 5px !important; }
.v073-signal-grid { margin-top: 4px !important; }
.v073-execution-cost { margin-top: 5px !important; }
.v073-execution-grid { margin-top: 4px !important; }

/* The execution mode names must remain fully readable on laptop, phone portrait,
   and the laptop-style phone landscape layout. */
.v073-execution-grid .v073-execution-mode {
  grid-template-columns: minmax(0, 1fr) minmax(132px, 150px) !important;
}

@media (max-width: 600px) and (orientation: portrait) {
  body.phone-tab-layout .v073-protection-grid { grid-template-columns: 1fr !important; }
  body.phone-tab-layout .v073-protection-box,
  body.phone-tab-layout .v073-signal-flip,
  body.phone-tab-layout .v073-execution-cost { padding: 6px !important; }
  body.phone-tab-layout .v073-kalman-box > label {
    grid-template-columns: minmax(0, 1fr) 80px !important;
    min-height: 32px !important;
    font-size: 10px !important;
  }
}

/* Phone panels receive the individual <details> cards outside #autoConditionsGrid,
   so these controls cannot rely on a .v073-settings-grid ancestor. */
@media (max-width: 600px) and (orientation: portrait) {
  body.phone-tab-layout .phone-auto-panel .checkbox-field {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 28px !important;
    align-items: center !important;
    gap: 5px !important;
    min-width: 0 !important;
  }
  body.phone-tab-layout .phone-auto-panel label > span { min-width: 0 !important; overflow-wrap: anywhere !important; }
  body.phone-tab-layout .phone-auto-panel label .text-input,
  body.phone-tab-layout .phone-auto-panel label input[type="text"],
  body.phone-tab-layout .phone-auto-panel label input[type="number"],
  body.phone-tab-layout .phone-auto-panel label select,
  body.phone-tab-layout .phone-auto-panel .compact-select {
    box-sizing: border-box !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    height: 30px !important;
    min-height: 30px !important;
    padding-left: 4px !important;
    padding-right: 16px !important;
    font-size: 10px !important;
  }
  body.phone-tab-layout .phone-auto-panel .mini-pair {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 3px !important;
    min-width: 0 !important;
  }
}

/* v0.7.3 permission preservation: Logic Reference is part of administrator Auto Setup. */
body.user-normal #desktopLogicTab,
body.user-normal #logicReferenceCard,
body.user-normal #phoneLogicTab {
  display: none !important;
}

/* ========================================================================== 
   DPX v0.7.3 Patch List - 2
   Scope: iPhone 14 portrait visibility, wide-layout space use, Kalman alignment,
   and Historical Orders wide-summary restoration. Trading behavior is unchanged.
   ========================================================================== */

/* Patches 2-3: independent content-sized left stack + dedicated wide tools column. */
.v073-settings-grid {
  grid-template-areas: none !important;
  grid-template-columns: minmax(0, 1.08fr) minmax(0, 1.02fr) minmax(250px, .82fr) !important;
  gap: 7px !important;
  align-items: start !important;
}
.v073-left-stack {
  display: flex !important;
  flex-direction: column !important;
  gap: 7px !important;
  align-self: start !important;
  min-width: 0 !important;
  width: 100% !important;
}
.v073-left-stack > .v073-entry-card,
.v073-left-stack > .v073-adjustment-card,
.v073-settings-grid > .v073-settlement-card,
.v073-settings-grid > .v073-tools-card {
  grid-area: auto !important;
  align-self: start !important;
  box-sizing: border-box !important;
  width: 100% !important;
  min-width: 0 !important;
  min-height: 0 !important;
  height: auto !important;
  max-height: none !important;
}
.v073-left-stack > .v073-entry-card,
.v073-left-stack > .v073-adjustment-card {
  margin: 0 !important;
}
.v073-tools-card {
  display: flex !important;
  flex-direction: column !important;
  gap: 7px !important;
  padding: 5px !important;
  overflow: visible !important;
}
.v073-tools-card .v073-execution-cost {
  margin-top: 0 !important;
}
.v073-tools-card .flip-diagnostic-panel {
  box-sizing: border-box !important;
  min-width: 0 !important;
  width: 100% !important;
  margin: 0 !important;
}
.v073-tools-card #autoFlipDiagnosticLog {
  box-sizing: border-box !important;
  width: 100% !important;
  min-width: 0 !important;
  min-height: 210px !important;
  max-height: 320px !important;
  overflow: auto !important;
}
.v073-tools-card .v073-execution-grid {
  grid-template-columns: 1fr !important;
}
.v073-tools-card .v073-execution-grid > label {
  grid-template-columns: minmax(0, 1fr) minmax(92px, 132px) !important;
}
.v073-tools-card .v073-execution-grid .v073-execution-mode {
  grid-template-columns: minmax(0, 1fr) minmax(166px, 1.65fr) !important;
}
#autoPaperExecutionMode {
  min-width: 166px !important;
  width: 100% !important;
  max-width: none !important;
}

/* Patch 4: Q, R and Flip Threshold are one horizontal parameter row on wide views. */
.v073-kalman-box > .v073-kalman-params-row {
  grid-column: 1 / -1 !important;
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 6px !important;
  width: 100% !important;
  min-width: 0 !important;
}
.v073-kalman-box > .v073-kalman-params-row > label {
  display: grid !important;
  grid-template-columns: max-content minmax(52px, 1fr) !important;
  align-items: center !important;
  gap: 4px !important;
  min-width: 0 !important;
  margin: 0 !important;
  font-size: 8px !important;
}
.v073-kalman-box > .v073-kalman-params-row > label > span {
  min-width: 0 !important;
  white-space: nowrap !important;
}
.v073-kalman-box > .v073-kalman-params-row .text-input {
  min-width: 0 !important;
  width: 100% !important;
}

/* Patches 2-4: phone landscape remains laptop-style, but uses a compact 3-column setup. */
@media (min-width: 601px) and (max-width: 1100px) and (orientation: landscape) {
  body.desktop-tab-layout .v073-settings-grid {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) minmax(210px, .76fr) !important;
    gap: 4px !important;
  }
  body.desktop-tab-layout .v073-left-stack { gap: 4px !important; }
  body.desktop-tab-layout .v073-tools-card { gap: 4px !important; padding: 4px !important; }
  body.desktop-tab-layout .v073-tools-card .v073-execution-grid > label {
    grid-template-columns: minmax(0, 1fr) minmax(72px, 102px) !important;
    font-size: 7px !important;
  }
  body.desktop-tab-layout .v073-tools-card .v073-execution-grid .v073-execution-mode {
    grid-template-columns: minmax(0, 1fr) minmax(142px, 1.8fr) !important;
  }
  body.desktop-tab-layout #autoPaperExecutionMode { min-width: 142px !important; font-size: 8px !important; }
  body.desktop-tab-layout .v073-tools-card #autoFlipDiagnosticLog {
    min-height: 130px !important;
    max-height: 200px !important;
    font-size: 7.3px !important;
  }
  body.desktop-tab-layout .v073-kalman-box > .v073-kalman-params-row { gap: 3px !important; }
  body.desktop-tab-layout .v073-kalman-box > .v073-kalman-params-row > label {
    grid-template-columns: max-content minmax(42px, 1fr) !important;
    gap: 2px !important;
    font-size: 7px !important;
  }
  body.desktop-tab-layout .v073-kalman-box > .v073-kalman-params-row .text-input {
    height: 22px !important;
    min-height: 22px !important;
    font-size: 7.5px !important;
    padding-left: 2px !important;
    padding-right: 2px !important;
  }
}

/* Patch 1: iPhone 14 / phone portrait. Keep all six horizons visible without
   relying on horizontal page scrolling or clipping the numeric value text. */
@media (max-width: 600px) and (orientation: portrait) {
  body.phone-tab-layout .phone-auto-panel {
    box-sizing: border-box !important;
    width: 100% !important;
    min-width: 0 !important;
    padding: 5px !important;
    overflow-x: hidden !important;
  }
  body.phone-tab-layout .phone-auto-panel > .auto-rule-details,
  body.phone-tab-layout .phone-auto-panel > .v073-tools-card {
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
  }
  body.phone-tab-layout .phone-auto-panel .horizon-param-grid.six-horizon-grid {
    grid-template-columns: minmax(76px, 1.42fr) repeat(6, minmax(0, 1fr)) !important;
    gap: 2px !important;
  }
  body.phone-tab-layout .phone-auto-panel .horizon-param-grid.six-horizon-grid .horizon-grid-head,
  body.phone-tab-layout .phone-auto-panel .horizon-param-grid.six-horizon-grid .horizon-row-label {
    font-size: 7.8px !important;
    line-height: 1.08 !important;
  }
  body.phone-tab-layout .phone-auto-panel .horizon-param-grid.six-horizon-grid input,
  body.phone-tab-layout .phone-auto-panel .horizon-param-grid.six-horizon-grid .text-input {
    height: 31px !important;
    min-height: 31px !important;
    padding: 1px !important;
    font-size: 10.5px !important;
    line-height: 29px !important;
    text-align: center !important;
    letter-spacing: -0.02em !important;
  }
  body.phone-tab-layout .phone-auto-panel .v073-prediction-persistence,
  body.phone-tab-layout .phone-auto-panel .v073-entry-filters,
  body.phone-tab-layout .phone-auto-panel .v073-settlement-basics,
  body.phone-tab-layout .phone-auto-panel .v073-protection-grid,
  body.phone-tab-layout .phone-auto-panel .v073-signal-grid,
  body.phone-tab-layout .phone-auto-panel .v073-execution-grid {
    grid-template-columns: 1fr !important;
    gap: 5px !important;
  }
  body.phone-tab-layout .phone-auto-panel .v073-prediction-persistence label,
  body.phone-tab-layout .phone-auto-panel .v073-entry-filters label,
  body.phone-tab-layout .phone-auto-panel .v073-settlement-basics label,
  body.phone-tab-layout .phone-auto-panel .v073-protection-grid label,
  body.phone-tab-layout .phone-auto-panel .v073-signal-grid label,
  body.phone-tab-layout .phone-auto-panel .v073-execution-grid label,
  body.phone-tab-layout .phone-auto-panel .v073-kalman-box > label,
  body.phone-tab-layout .phone-auto-panel .v073-kalman-params-row > label {
    min-height: 38px !important;
    font-size: 11px !important;
  }
  body.phone-tab-layout .phone-auto-panel .v073-tools-card {
    display: flex !important;
    flex-direction: column !important;
    gap: 7px !important;
    margin-top: 7px !important;
    padding: 6px !important;
  }
  body.phone-tab-layout .phone-auto-panel .v073-tools-card .v073-execution-grid > label,
  body.phone-tab-layout .phone-auto-panel .v073-tools-card .v073-execution-mode {
    grid-template-columns: minmax(0, 1fr) minmax(155px, 1fr) !important;
  }
  body.phone-tab-layout #autoPaperExecutionMode { min-width: 155px !important; font-size: 10px !important; }
  body.phone-tab-layout .v073-kalman-box > .v073-kalman-params-row {
    grid-template-columns: 1fr !important;
    gap: 4px !important;
  }
  body.phone-tab-layout .v073-kalman-box > .v073-kalman-params-row > label {
    grid-template-columns: minmax(0, 1fr) 96px !important;
  }
  body.phone-tab-layout .v073-tools-card #autoFlipDiagnosticLog {
    min-height: 150px !important;
    max-height: 240px !important;
  }
}

/* Patch 6: on desktop/laptop and phone landscape, the daily Historical summary
   stays in a dedicated header row above the table headings instead of visually
   occupying a left-side table column. Phone portrait is intentionally excluded. */
@media (min-width: 601px) {
  body.desktop-tab-layout #phoneHistoryPanel {
    display: flex !important;
    flex-direction: column !important;
  }
  body.desktop-tab-layout #phoneHistoryPanel .ledger-header {
    box-sizing: border-box !important;
    position: static !important;
    display: flex !important;
    flex: 0 0 auto !important;
    min-height: 34px !important;
    height: auto !important;
    max-height: none !important;
    width: 100% !important;
    margin: 0 0 3px !important;
    padding: 2px 5px !important;
    align-items: center !important;
    overflow: visible !important;
  }
  body.desktop-tab-layout #phoneHistoryPanel .ledger-title-line {
    position: static !important;
    display: flex !important;
    width: 100% !important;
    min-width: 0 !important;
    align-items: center !important;
    gap: 10px !important;
    flex-wrap: wrap !important;
  }
  body.desktop-tab-layout #phoneHistoryPanel .daily-pnl-totals {
    position: static !important;
    display: block !important;
    float: none !important;
    width: auto !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    white-space: normal !important;
    overflow: visible !important;
  }
  body.desktop-tab-layout #phoneHistoryPanel #ledgerTableWrap {
    position: relative !important;
    flex: 1 1 auto !important;
    margin-top: 0 !important;
    min-height: 0 !important;
  }
  body.desktop-tab-layout #phoneHistoryPanel #ledgerTable th:first-child,
  body.desktop-tab-layout #phoneHistoryPanel #ledgerTable td:first-child {
    margin-left: 0 !important;
  }
}

/* Patch 2 visibility correction: older shared CSS fixed horizon labels at 118px.
   In the new three-column wide layout that could make the label overflow left at
   844/932px landscape widths. Let the label/head size to the v0.7.3 grid cell. */
.v073-settings-grid .horizon-param-grid.six-horizon-grid .horizon-row-label,
.v073-settings-grid .six-horizon-grid .horizon-row-label {
  box-sizing: border-box !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;
  padding-right: 3px !important;
  white-space: normal !important;
  overflow: visible !important;
  overflow-wrap: normal !important;
  word-break: normal !important;
  justify-self: stretch !important;
}
.v073-settings-grid .horizon-param-grid.six-horizon-grid .horizon-grid-head,
.v073-settings-grid .six-horizon-grid .horizon-grid-head {
  box-sizing: border-box !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;
  justify-self: stretch !important;
}

/* ========================================================================== 
   DPX v0.7.3 Patch List - 3
   Scope: strict Historical-tab separation + iPhone 14 portrait field visibility.
   Display/layout only. Trading behavior and values are unchanged.
   ========================================================================== */

/* Patch 1: the lower Historical ledger belongs only to Historical Orders.
   These final rules deliberately override older wide-layout #phoneHistoryPanel
   declarations that could force the ledger visible below non-Historical tabs. */
body.desktop-tab-layout .desktop-tab-panels > #phoneHistoryPanel,
body.desktop-tab-layout .desktop-tab-panels > #autoTradingCard,
body.desktop-tab-layout .desktop-tab-panels > #logicReferenceCard,
body.desktop-tab-layout .desktop-tab-panels > #dailyRecommendationsPanel {
  display: none !important;
}
body.desktop-tab-layout.desktop-tab-history .desktop-tab-panels > #phoneHistoryPanel {
  display: flex !important;
}
body.desktop-tab-layout.desktop-tab-setup .desktop-tab-panels > #autoTradingCard,
body.desktop-tab-layout.desktop-tab-logic .desktop-tab-panels > #logicReferenceCard,
body.desktop-tab-layout.desktop-tab-recommendations .desktop-tab-panels > #dailyRecommendationsPanel {
  display: block !important;
}

@media (max-width: 600px) and (orientation: portrait) {
  /* Inactive phone panels must stay absent even when legacy rules target a
     panel ID with higher specificity. The active panel is selected by app.js
     through aria-hidden and the phone-tab-* body class. */
  body.phone-tab-layout #phoneTabPanels > [aria-hidden="true"] {
    display: none !important;
  }
  body.phone-tab-layout.phone-tab-history #phoneHistoryPanel[aria-hidden="false"] {
    display: flex !important;
  }
  body.phone-tab-layout.phone-tab-entry #phoneEntryPanel[aria-hidden="false"],
  body.phone-tab-layout.phone-tab-adjust #phoneAdjustPanel[aria-hidden="false"],
  body.phone-tab-layout.phone-tab-setting #phoneSettingPanel[aria-hidden="false"],
  body.phone-tab-layout.phone-tab-logic #logicReferenceCard[aria-hidden="false"],
  body.phone-tab-layout.phone-tab-recommendations #dailyRecommendationsPanel[aria-hidden="false"] {
    display: block !important;
  }

  /* Patch 2: give the six horizon value fields more horizontal room by using
     a narrower wrapping label column and smaller value text. The fields are
     also taller to preserve a comfortable tap target on iPhone 14. */
  body.phone-tab-layout .phone-auto-panel .horizon-param-grid.six-horizon-grid {
    grid-template-columns: minmax(58px, .82fr) repeat(6, minmax(0, 1fr)) !important;
    gap: 1px !important;
  }
  body.phone-tab-layout .phone-auto-panel .horizon-param-grid.six-horizon-grid .horizon-grid-head,
  body.phone-tab-layout .phone-auto-panel .horizon-param-grid.six-horizon-grid .horizon-row-label {
    font-size: 7px !important;
    line-height: 1.02 !important;
  }
  body.phone-tab-layout .phone-auto-panel .horizon-param-grid.six-horizon-grid input,
  body.phone-tab-layout .phone-auto-panel .horizon-param-grid.six-horizon-grid .text-input {
    box-sizing: border-box !important;
    height: 34px !important;
    min-height: 34px !important;
    padding: 1px !important;
    font-size: 8.5px !important;
    line-height: 32px !important;
    letter-spacing: -0.04em !important;
    -webkit-text-size-adjust: none !important;
    text-size-adjust: none !important;
    font-variant-numeric: tabular-nums !important;
  }

  /* Increase the value-field column on portrait. Checkbox rows keep their own
     compact checkbox column and are not widened by this rule. */
  body.phone-tab-layout .phone-auto-panel .v073-prediction-persistence label:not(.checkbox-field),
  body.phone-tab-layout .phone-auto-panel .v073-entry-filters label:not(.checkbox-field),
  body.phone-tab-layout .phone-auto-panel .v073-settlement-basics label:not(.checkbox-field),
  body.phone-tab-layout .phone-auto-panel .v073-protection-grid label:not(.checkbox-field),
  body.phone-tab-layout .phone-auto-panel .v073-signal-grid label:not(.checkbox-field),
  body.phone-tab-layout .phone-auto-panel .v073-execution-grid label:not(.checkbox-field),
  body.phone-tab-layout .phone-auto-panel .v073-kalman-params-row > label {
    grid-template-columns: minmax(0, 1fr) minmax(112px, 128px) !important;
    gap: 6px !important;
  }
  body.phone-tab-layout .phone-auto-panel .v073-entry-filters .v073-value-field > .mini-pair {
    width: 128px !important;
    min-width: 128px !important;
    justify-self: end !important;
    gap: 4px !important;
  }

  body.phone-tab-layout .phone-auto-panel label .text-input,
  body.phone-tab-layout .phone-auto-panel label input[type="text"],
  body.phone-tab-layout .phone-auto-panel label input[type="number"],
  body.phone-tab-layout .phone-auto-panel label select,
  body.phone-tab-layout .phone-auto-panel .compact-select {
    height: 34px !important;
    min-height: 34px !important;
    padding-left: 5px !important;
    padding-right: 12px !important;
    font-size: 9px !important;
    line-height: 32px !important;
    -webkit-text-size-adjust: none !important;
    text-size-adjust: none !important;
    font-variant-numeric: tabular-nums !important;
  }

  /* Q/R need enough room for all six decimal places. */
  body.phone-tab-layout .v073-kalman-box > .v073-kalman-params-row > label {
    grid-template-columns: minmax(0, 1fr) 128px !important;
  }
  body.phone-tab-layout #autoKalmanQ,
  body.phone-tab-layout #autoKalmanR {
    font-size: 8.5px !important;
    letter-spacing: -0.035em !important;
    padding-left: 5px !important;
    padding-right: 5px !important;
  }

  /* The Mode selector is intentionally wider than the other value fields so
     both full choices remain visible on an iPhone 14 portrait viewport. */
  body.phone-tab-layout .phone-auto-panel .v073-tools-card .v073-execution-grid > label.v073-execution-mode,
  body.phone-tab-layout .phone-auto-panel .v073-tools-card .v073-execution-mode {
    grid-template-columns: minmax(0, 1fr) minmax(184px, 196px) !important;
  }
  body.phone-tab-layout #autoPaperExecutionMode {
    box-sizing: border-box !important;
    width: 100% !important;
    min-width: 184px !important;
    max-width: 196px !important;
    font-size: 8.5px !important;
    padding-left: 6px !important;
    padding-right: 24px !important;
    -webkit-text-size-adjust: none !important;
    text-size-adjust: none !important;
  }
}
