/* CHODAT INVEST F4.6.85 — quiet-luxury controls.
 * Load after the retained F81–F84 styles. Scope prevents changes to deal screens.
 * Behaviour, labels, permissions and analytics remain in the existing modules. */
.cn-deal-journey-demo[data-controls-release],
.pb-shell[data-controls-release],
.pb-companion[data-controls-release],
.pb-report[data-controls-release] {
  --ctl-fill: #243240;
  --ctl-hover: #2d3e4d;
  --ctl-border: #81909e;
  --ctl-text: #edf0f3;
  --ctl-gold: #d2bb8c;
  --ctl-gold-hover: #dfc99f;
  --ctl-ink: #17212b;
  --ctl-focus: #ead6af;
}

/* Consistent size, complete labels and a fine, visible edge. */
.cn-deal-journey-demo[data-controls-release] :is(.djd-button,.bgn-primary,.bgn-secondary,.bgn-tools :where(button),.bgn-step-review :where(button)),
.pb-shell[data-controls-release] .pb-button,
.pb-report[data-controls-release] .pb-button,
.pb-companion[data-controls-release] a {
  box-sizing: border-box;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  min-width: 0;
  max-width: 100%;
  min-height: 50px;
  padding: 12px 20px;
  border: 1px solid var(--ctl-border);
  border-radius: 9px;
  background: var(--ctl-fill);
  color: var(--ctl-text);
  font-family: inherit;
  font-size: 15px;
  font-weight: 600;
  line-height: 1.55;
  letter-spacing: 0;
  text-align: center;
  white-space: normal;
  overflow-wrap: anywhere;
  text-decoration: none;
  cursor: pointer;
  box-shadow: inset 0 1px 0 #ffffff0a, 0 3px 8px #00000018;
  transition: background-color .16s ease, border-color .16s ease, box-shadow .16s ease;
  -webkit-tap-highlight-color: #d2bb8c24;
  touch-action: manipulation;
}
.pb-shell[data-controls-release] .pb-button,
.pb-report[data-controls-release] .pb-button { color: var(--ctl-text) !important; }

.cn-deal-journey-demo[data-controls-release] :is(.djd-primary,.bgn-primary),
.pb-shell[data-controls-release] .pb-primary {
  background: var(--ctl-gold);
  border-color: #e2cda6;
  color: var(--ctl-ink);
  box-shadow: inset 0 1px 0 #ffffff2b, 0 4px 12px #00000020;
}
.pb-shell[data-controls-release] .pb-primary { color: var(--ctl-ink) !important; }
.cn-deal-journey-demo[data-controls-release] .bgn-primary {
  width: 100%;
  min-height: 58px;
  justify-content: space-between;
  text-align: left;
  font-size: 16px;
  padding: 16px 20px;
}
.cn-deal-journey-demo[data-controls-release] .bgn-secondary {
  width: 100%;
  justify-content: flex-start;
  text-align: left;
}
.cn-deal-journey-demo[data-controls-release] :is(.djd-button,.bgn-primary,.bgn-secondary) > span[aria-hidden],
.pb-shell[data-controls-release] .pb-button > span[aria-hidden] { flex: 0 0 auto; }

/* Plain actions still look clickable; in-paragraph links retain text flow. */
.cn-deal-journey-demo[data-controls-release] .djd-text-button,
.pb-shell[data-controls-release] :is(.pb-link,.pb-current > a,.pb-bottom > a,.pb-session-note a,.pb-hint > a) {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  max-width: 100%;
  padding: 10px 14px;
  border: 1px solid #6f7e8c;
  border-radius: 8px;
  background: #192632;
  color: #e5d0a8;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.6;
  text-align: center;
  white-space: normal;
  overflow-wrap: anywhere;
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 4px;
}
.cn-deal-journey-demo[data-controls-release] .djd-real-entry {
  background: #1c2833;
  color: #e5d0a8;
  border-color: #a4916e;
}
.cn-deal-journey-demo[data-controls-release] .djd-real-entry-row { margin: 14px 0 0; }
.cn-deal-journey-demo[data-controls-release] .djd-actions,
.pb-shell[data-controls-release] .pb-quick,
.pb-report[data-controls-release] .pb-report-actions,
.pb-companion[data-controls-release] > div > div { gap: 12px; }
.cn-deal-journey-demo[data-controls-release] .djd-actions { align-items: stretch; }
.pb-shell[data-controls-release] .pb-quick .pb-button { flex: 0 1 auto; }
.pb-shell[data-controls-release] .pb-quick .pb-button[aria-pressed=true] {
  background: #35362f;
  border-color: #d2bb8c;
  color: #f0ddb8 !important;
  box-shadow: inset 0 -3px 0 #d2bb8c;
}
.pb-shell[data-controls-release] .pb-modes {
  gap: 10px;
  padding-bottom: 18px;
}
.pb-shell[data-controls-release] .pb-modes :is(a,span[aria-current]) {
  display: inline-flex;
  align-items: center;
  min-height: 48px;
  padding: 10px 16px;
  border: 1px solid #72818f;
  border-radius: 8px;
  background: #1c2935;
  color: #e1e7ec;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.6;
}
.pb-shell[data-controls-release] .pb-modes span[aria-current] {
  border-color: #b5a07b;
  background: #30312d;
  color: #ead6af;
  box-shadow: inset 0 -2px 0 #d2bb8c;
}
.pb-shell[data-controls-release] .pb-map a {
  min-height: 56px;
  padding: 12px 10px;
  font-size: 13px;
  border-color: #5a6a78;
  background: #17232e;
}
.pb-shell[data-controls-release] .pb-map li + li { margin-top: 8px; }
.pb-shell[data-controls-release] .pb-map a[aria-current=step] {
  background: #2b3843;
  border-color: #c2aa7e;
  box-shadow: inset 3px 0 0 #d2bb8c;
  color: #f0f2f4;
  font-weight: 600;
}
.pb-shell[data-controls-release] .pb-map small { font-size: 11px; }
.pb-shell[data-controls-release] :is(.pb-proof-top,.pb-bottom) { gap: 16px; flex-wrap: wrap; }
.pb-shell[data-controls-release] .pb-proof-top strong { flex: 1 1 150px; }
.pb-shell[data-controls-release] .pb-bottom > form { max-width: 100%; }
.pb-shell[data-controls-release] .pb-task > form { margin: 4px 0 26px; }
.pb-shell[data-controls-release] .pb-task > .pb-link { margin-bottom: 22px; }
.pb-shell[data-controls-release] .pb-task .pb-primary { min-height: 54px; }
.pb-shell[data-controls-release] .pb-choose > form > .pb-primary { margin-top: 8px; }
.pb-shell[data-controls-release] .pb-current > a { flex: 0 1 auto; }
.pb-shell[data-controls-release] .pb-companion > div,
.pb-companion[data-controls-release] > div { min-width: 0; }

/* Dense learning controls use the same readable type and touch targets. */
.cn-deal-journey-demo[data-controls-release] :is(.djd-mode-switch button,.djd-tabs button,.djd-step-nav button,.djd-role-card,.djd-scenario-card,.djd-document-button) {
  min-height: 48px;
  font-size: 14px;
  line-height: 1.6;
  white-space: normal;
  overflow-wrap: anywhere;
}
.cn-deal-journey-demo[data-controls-release] .djd-mode-switch { flex-wrap: wrap; gap: 8px; padding: 6px; }
.cn-deal-journey-demo[data-controls-release] .djd-mode-switch button {
  flex: 1 1 110px;
  padding: 10px 14px;
  border: 1px solid #718190;
  border-radius: 7px;
  color: #d6dfe7;
}
.cn-deal-journey-demo[data-controls-release] .djd-tabs { gap: 8px; padding-bottom: 12px; }
.cn-deal-journey-demo[data-controls-release] .djd-tabs button {
  padding: 11px 15px;
  border: 1px solid #718190;
  border-radius: 7px;
  background: #1b2834;
  color: #d6dfe7;
}
.cn-deal-journey-demo[data-controls-release] :is(.djd-mode-switch button[aria-pressed=true],.djd-tabs button[aria-selected=true]) {
  background: #30332f;
  border-color: #c2aa7e;
  color: #efdbb4;
  box-shadow: inset 0 -3px 0 #d2bb8c;
  font-weight: 600;
}
.cn-deal-journey-demo[data-controls-release] .djd-learning-modes .djd-button[aria-pressed=true] {
  background: #30332f;
  border-color: #c2aa7e;
  color: #efdbb4;
  box-shadow: inset 0 -3px 0 #d2bb8c;
}
.cn-deal-journey-demo[data-controls-release] .bgn-tools { gap: 10px; }
.cn-deal-journey-demo[data-controls-release] .bgn-tools button {
  min-height: 48px;
  padding: 10px 14px;
  font-size: 14px;
  font-weight: 500;
}
.cn-deal-journey-demo[data-controls-release] .bgn-step-review button {
  justify-content: flex-start;
  text-align: left;
  font-size: 14px;
}
.cn-deal-journey-demo[data-controls-release] .djd-role-name { font-size: 15px; }
.cn-deal-journey-demo[data-controls-release] .djd-role-caption { -webkit-line-clamp: unset; overflow: visible; font-size: 12px; }
.cn-deal-journey-demo[data-controls-release] .djd-scenario-card { padding: 18px; }
.cn-deal-journey-demo[data-controls-release] .djd-scenario-card span { font-size: 14px; }
.cn-deal-journey-demo[data-controls-release] .djd-modal-close {
  width: 48px;
  height: 48px;
  border-color: #81909e;
  border-radius: 9px;
  color: #edf0f3;
}
.cn-deal-journey-demo[data-controls-release] .djd-modal h2 { padding-right: 42px; }
.cn-deal-journey-demo[data-controls-release] .djd-work-section > .djd-section-head button {
  min-height: 48px;
  font-size: 14px;
  padding: 12px 16px;
  flex: 0 1 auto;
}
.cn-deal-journey-demo[data-controls-release] .djd-guide-primary {
  min-height: 54px;
  justify-content: space-between;
  text-align: left;
}
.cn-deal-journey-demo[data-controls-release] .djd-zone-stops { gap: 8px; }
.cn-deal-journey-demo[data-controls-release] .djd-map-stop {
  flex: 0 0 48px;
  width: 48px;
  min-width: 48px;
  max-width: none;
  min-height: 48px;
  font-size: 14px;
  border-radius: 8px;
}
.cn-deal-journey-demo[data-controls-release] summary,
.pb-shell[data-controls-release] summary {
  min-height: 48px;
  padding-top: 12px;
  padding-bottom: 12px;
  font-size: 14px;
  line-height: 1.65;
}

/* Feedback states: restrained colour changes, visible keyboard ring, no glow. */
@media (hover:hover) {
  .cn-deal-journey-demo[data-controls-release] :is(.djd-button,.bgn-secondary,.bgn-tools :where(button),.bgn-step-review :where(button)):not(:disabled):hover,
  .pb-shell[data-controls-release] .pb-button:not(:disabled):hover,
  .pb-report[data-controls-release] .pb-button:not(:disabled):hover,
  .pb-companion[data-controls-release] a:hover {
    background: var(--ctl-hover);
    border-color: #b5c0c9;
    color: var(--ctl-text);
  }
  .cn-deal-journey-demo[data-controls-release] :is(.djd-primary,.bgn-primary):not(:disabled):hover,
  .pb-shell[data-controls-release] .pb-primary:not(:disabled):hover {
    background: var(--ctl-gold-hover);
    border-color: #ecd8b4;
    color: var(--ctl-ink);
  }
  .cn-deal-journey-demo[data-controls-release] .djd-text-button:hover,
  .pb-shell[data-controls-release] :is(.pb-link,.pb-current > a,.pb-bottom > a,.pb-modes a):hover {
    background: #293846;
    border-color: #b5a07b;
    color: #f1deba;
  }
}
.cn-deal-journey-demo[data-controls-release] :is(button,a,summary,select,input):focus-visible,
.pb-shell[data-controls-release] :is(button,a,summary,select,input,textarea):focus-visible,
.pb-companion[data-controls-release] a:focus-visible,
.pb-report[data-controls-release] :is(button,a,select,input):focus-visible {
  outline: 3px solid var(--ctl-focus);
  outline-offset: 4px;
}
.cn-deal-journey-demo[data-controls-release] button:disabled,
.pb-shell[data-controls-release] .pb-button:disabled,
.pb-report[data-controls-release] .pb-button:disabled {
  opacity: 1;
  background: #202b36;
  border-color: #667583;
  border-style: dashed;
  color: #b5c0ca !important;
  box-shadow: none;
  cursor: not-allowed;
}

@media (max-width:767px) {
  .cn-deal-journey-demo[data-controls-release] .djd-hero .djd-button,
  .cn-deal-journey-demo[data-controls-release] .djd-hero .djd-text-button,
  .pb-shell[data-controls-release] .pb-task .pb-primary,
  .pb-shell[data-controls-release] .pb-bottom .pb-button { width: 100%; }
  .cn-deal-journey-demo[data-controls-release] :is(.djd-button,.bgn-secondary) { font-size: 15px; padding: 13px 16px; }
  .cn-deal-journey-demo[data-controls-release] .bgn-top { flex-wrap: wrap; gap: 16px; }
  .cn-deal-journey-demo[data-controls-release] .bgn-top > div:first-child { min-width: 0; flex: 1 1 100%; }
  .cn-deal-journey-demo[data-controls-release] .bgn-tools { display: flex; width: 100%; max-width: none; justify-content: flex-start; }
  .cn-deal-journey-demo[data-controls-release] .bgn-tools button { flex: 1 1 90px; }
  .cn-deal-journey-demo[data-controls-release] .djd-learning-modes { grid-template-columns: 1fr; gap: 10px; }
  .cn-deal-journey-demo[data-controls-release] .djd-work-section > .djd-section-head { display: block; }
  .cn-deal-journey-demo[data-controls-release] .djd-work-section > .djd-section-head button { width: 100%; margin-top: 14px; }
  .cn-deal-journey-demo[data-controls-release] .djd-map-zone { flex-basis: 184px; }
  .cn-deal-journey-demo[data-controls-release] .djd-map-zone:nth-child(2) { flex-basis: 240px; }
  .cn-deal-journey-demo[data-controls-release] .djd-map-zone:nth-child(3),
  .cn-deal-journey-demo[data-controls-release] .djd-map-zone:nth-child(5) { flex-basis: 128px; }
  .pb-shell[data-controls-release] .pb-quick .pb-button { flex: 1 1 42%; padding: 12px; font-size: 14px; }
  .pb-shell[data-controls-release] .pb-modes :is(a,span[aria-current]) { flex: 1 1 160px; justify-content: center; text-align: center; }
  .pb-shell[data-controls-release] .pb-proof-top > form { width: 100%; }
  .pb-shell[data-controls-release] .pb-proof-top .pb-button { width: 100%; font-size: 14px; }
  .pb-shell[data-controls-release] .pb-bottom { align-items: stretch; gap: 12px; }
  .pb-shell[data-controls-release] .pb-choose > form > .pb-primary { width: 100%; }
  .pb-shell[data-controls-release] :is(select,textarea,input[type=search]),
  .pb-report[data-controls-release] :is(select,input) { font-size: 16px; }
  .pb-companion[data-controls-release] > div > div { flex-direction: column; align-items: stretch; }
  .pb-companion[data-controls-release] a { width: 100%; font-size: 14px; padding: 12px; }
  .pb-report[data-controls-release] .pb-report-actions > .pb-button { flex: 1 1 100%; }
}
@media (max-width:374px) {
  .pb-shell[data-controls-release] .pb-quick .pb-button { flex-basis: 100%; }
  .pb-shell[data-controls-release] .pb-filter-row { grid-template-columns: 1fr; }
}
@media (prefers-reduced-motion:reduce) {
  .cn-deal-journey-demo[data-controls-release] *,
  .pb-shell[data-controls-release] *,
  .pb-companion[data-controls-release] *,
  .pb-report[data-controls-release] * { transition: none !important; }
}
