.s02-investment-guidance,
.s02-investment-type-help,
.s02-investment-legacy-notice {
  color: #4d5c52;
  font-size: .86rem;
  line-height: 1.4;
  margin: 0 0 6px;
  min-width: 0;
  overflow-wrap: anywhere;
}
.s02-business-information {
  background: #f7faf7;
  border: 1px solid #d7e3da;
  border-radius: 10px;
  margin: 0 0 10px;
  padding: 0;
}
.s02-business-information > summary {
  align-items: center;
  cursor: pointer;
  display: flex;
  gap: 8px;
  font-weight: 700;
  list-style: none;
  min-height: 40px;
  padding: 8px 12px;
}
.s02-business-information > summary::-webkit-details-marker { display: none; }
.s02-business-information[open] > summary .s02-optional-icon { transform: rotate(90deg); }
.s02-business-info-form {
  display: grid;
  gap: 0;
  padding: 0 12px 10px;
}
/* people | area | Save — always one row / three columns (desktop + 390/430). */
.s02-business-info-form .smp-resource-grid[data-s02-business-resource-grid] {
  align-items: start;
  column-gap: 14px;
  gap: 0 14px;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) auto;
}
.s02-business-info-actions {
  display: grid;
  gap: 4px;
  justify-items: stretch;
  min-width: 0;
  width: max-content;
}
.s02-business-info-save-field {
  margin-bottom: 0;
}
.s02-business-info-save-spacer {
  display: block;
  line-height: 1.25;
  min-height: calc(0.84rem * 1.25);
  visibility: hidden;
}
.s02-business-info-message {
  color: #4d5c52;
  font-size: 0.72rem;
  line-height: 1.3;
  margin: 0;
  max-width: 7.5rem;
  min-width: 0;
  text-align: center;
}
.s02-business-info-save {
  background: #eef4ef;
  border: 1px solid #c5d4c9;
  border-radius: 8px;
  color: #24352c;
  cursor: pointer;
  font: inherit;
  font-size: 0.84rem;
  font-weight: 650;
  min-height: 40px;
  min-width: 3.25rem;
  opacity: 0.55;
  padding: 4px 12px;
  white-space: nowrap;
}
.s02-business-info-save.is-active:not(:disabled),
.s02-business-info-save:not(:disabled) {
  background: #e4efe8;
  border-color: #9fb8a8;
  color: #1a2b22;
  cursor: pointer;
  opacity: 1;
}
.s02-business-info-save:disabled {
  cursor: default;
  opacity: 0.45;
}
@media (max-width: 430px) {
  .s02-business-info-form {
    padding: 0 8px 8px;
  }
  .s02-business-info-form .smp-resource-grid[data-s02-business-resource-grid] {
    column-gap: 8px;
    gap: 0 8px;
  }
  .s02-business-info-save {
    font-size: 0.78rem;
    min-height: 40px;
    min-width: 2.75rem;
    padding: 4px 8px;
  }
  .s02-business-info-message {
    font-size: 0.68rem;
    max-width: 5.5rem;
  }
}
.s02-classification-badge {
  color: #8a5a12;
  display: inline-block;
  font-size: .78rem;
  font-style: normal;
  font-weight: 700;
  margin-top: 2px;
}
.s02-section,
.s03-section {
  box-sizing: border-box;
  margin-inline: 0;
  max-width: none;
  overflow: clip;
  padding-inline: 0;
  width: 100%;
}
.s02-section > summary,
.s03-section > summary {
  align-items: center;
  box-sizing: border-box;
  column-gap: 10px;
  cursor: pointer;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  list-style: none;
  margin-inline: 0;
  max-width: none;
  min-height: 44px;
  padding: 6px 24px;
  position: relative;
  width: 100%;
}
.s02-section > summary::-webkit-details-marker,
.s03-section > summary::-webkit-details-marker { display: none; }
/*
 * dpc-all-sectors-operational-header-layout-001
 * 01/02/03 title geometry lives in dpcSectionHeader.css (left-aligned 3-col grid).
 * Keep only title text alignment helpers here; do not re-center by content width.
 */
.s02-section > summary.business-section-heading > .business-section-title-line > h2,
.s03-section > summary.business-section-heading > .business-section-title-line > h2 {
  min-width: 0;
  text-align: left;
}
.s02-section > summary.business-section-heading > .section-subtitle,
.s03-section > summary.business-section-heading > .section-subtitle {
  max-width: 100%;
  text-align: left;
}
/* section-expand-collapse-control-visibility-001: 02/03 section-level control.
   Visible circle 36px; arrow ~19px / stroke 2.75; hit pad ≥44×44.
   Collapsed = down; expanded = up (CSS rotate on existing right-pointing SVG). */
.business-section-heading .section-toggle-indicator {
  align-items: center;
  align-self: center;
  background: #edf4ef;
  border: 1px solid #b4c8bd;
  border-radius: 999px;
  box-shadow: 0 1px 2px rgba(24, 63, 49, .1);
  color: #214f3e;
  display: inline-flex;
  flex: 0 0 auto;
  /* Column 3 of the shared DPC header grid (number | copy | chevron). */
  grid-column: 3;
  grid-row: 1 / span 2;
  height: 36px;
  justify-content: center;
  justify-self: end;
  margin: 0;
  position: relative;
  right: auto;
  top: auto;
  transform: rotate(90deg);
  transition: background .15s ease, border-color .15s ease, box-shadow .15s ease, transform .16s ease;
  width: 36px;
}
.business-section-heading .section-toggle-indicator::before {
  content: "";
  height: 44px;
  left: 50%;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 44px;
}
.business-section-heading .section-toggle-indicator svg { fill: none; height: 19px; stroke: currentColor; stroke-linecap: round; stroke-linejoin: round; stroke-width: 2.75; width: 19px; }
.s02-section > summary.business-section-heading:hover .section-toggle-indicator,
.s03-section > summary.business-section-heading:hover .section-toggle-indicator {
  background: #e0eee6;
  border-color: #9bb5a8;
  box-shadow: 0 0 0 2px rgba(33, 79, 62, 0.08);
}
.s02-section > summary.business-section-heading:focus-visible,
.s03-section > summary.business-section-heading:focus-visible {
  border-radius: 10px;
  outline: 2px solid #214f3e;
  outline-offset: 2px;
}
.s02-section > summary.business-section-heading:focus-visible .section-toggle-indicator,
.s03-section > summary.business-section-heading:focus-visible .section-toggle-indicator {
  background: #d8eae0;
  border-color: #7fa093;
  box-shadow: 0 0 0 2px rgba(33, 79, 62, 0.16);
}
.s02-section > summary.business-section-heading:active .section-toggle-indicator,
.s03-section > summary.business-section-heading:active .section-toggle-indicator {
  background: #d2e6da;
}
.s02-section[open] > summary .section-toggle-indicator,
.s03-section[open] > summary .section-toggle-indicator { transform: rotate(-90deg); }
.s02-root { border-top: 1px solid var(--border, #ded7c8); padding: 14px 18px 18px; }
.s02-root button { touch-action: manipulation; }
.s02-navigation { display: flex; flex-wrap: wrap; gap: 6px; margin-bottom: 0; }
.s02-navigation.s02-entry-navigation { align-items: stretch; }
.s02-navigation > [data-s02-entry],
.s02-navigation > [data-s02-area] { background: #f6f2e8; border: 1px solid #cfc7b8; border-radius: 11px; color: #34443e; flex: 1 1 9.5rem; font-size: .9rem; font-weight: 800; min-height: 46px; padding: 8px 10px; text-align: left; }
.s02-navigation > [data-s02-entry][aria-pressed="true"],
.s02-navigation > [data-s02-area][aria-pressed="true"] { background: #214f3e; border-color: #214f3e; box-shadow: inset 0 0 0 2px #16382c; color: #fff; }
.s02-area-sales { grid-column: 1; grid-row: 1; }
.s02-area-purchases { grid-column: 2; grid-row: 1; }
.s02-sales-tabs { grid-column: 1; }
.s02-purchases-tabs { grid-column: 2; }
.s02-navigation .s02-type-tabs { margin: 0; }
.s02-navigation .s02-type-tabs[data-active="false"] { display: none; }
.s02-navigation .s02-type-tabs[data-active="true"] { grid-column: 1 / -1; }
.s02-sales-modes,
.s02-order-sources { display: flex; flex-wrap: wrap; gap: 6px; margin: 8px 0 4px; }
.s02-sales-modes button,
.s02-order-sources button { background: #fff; border: 1px solid #d8d0c2; border-radius: 999px; color: #31443c; font-size: .82rem; font-weight: 700; min-height: 34px; padding: 4px 12px; }
.s02-sales-modes button[aria-pressed="true"],
.s02-order-sources button[aria-pressed="true"] { background: #385f4e; border-color: #385f4e; color: #fff; }
.s02-sales-modes button:disabled { cursor: not-allowed; opacity: .45; }
.s02-mode-lock { background: #f4f8f5; border: 1px solid #d5e2da; border-radius: 10px; color: #40564c; display: grid; gap: 6px; font-size: .8rem; line-height: 1.4; margin: 0 0 8px; padding: 8px 10px; }
.s02-mode-lock[data-lock="ORDER"],
.s02-mode-lock[data-lock="DAILY_TOTAL"] { background: #fff7e8; border-color: #e0c789; }
.s02-mode-lock button { justify-self: start; min-height: 32px; }
.s02-source-label { color: #66756e; font-size: .72rem; font-weight: 650; }
.s02-more-actions { position: relative; }
.s02-more-actions > summary { color: #66756e; cursor: pointer; font-size: .72rem; font-weight: 700; list-style: none; min-height: 28px; }
.s02-more-actions > summary::-webkit-details-marker { display: none; }
.s02-more-actions[open] > button { display: block; margin-top: 4px; }
.s02-entry-heading span { display: none; }
.s02-overview { margin-top: 9px; }
.s02-overview > h3, .s02-records > h3 { color: #52615b; font-size: .78rem; letter-spacing: .02em; margin: 0 0 5px; text-transform: uppercase; }
.s02-total-grid { display: grid; gap: 6px; grid-template-columns: repeat(5, minmax(0, 1fr)); }
.s02-total-grid[data-count="2"] { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.s02-total-grid > div { background: #f1f5f1; border: 1px solid #e0e8e1; border-radius: 9px; display: grid; gap: 2px; min-width: 0; padding: 7px 9px; }
.s02-total-grid span { color: #61706a; font-size: .72rem; }
.s02-total-grid strong { font-size: .9rem; overflow-wrap: anywhere; }
.s02-type-tabs { display: flex; flex-wrap: wrap; gap: 6px; margin: 2px 0 2px; }
.s02-type-tabs button, .s02-secondary > button { background: #fff; border: 1px solid #d8d0c2; border-radius: 999px; min-height: 36px; padding: 5px 11px; }
.s02-type-tabs button[aria-pressed="true"] { background: #385f4e; border-color: #385f4e; color: #fff; }
.s02-source-conflict { background: #fff7e8; border: 1px solid #d7b978; border-radius: 10px; display: grid; gap: 7px; margin-bottom: 8px; padding: 9px 10px; }
.s02-source-conflict > strong { color: #684c16; font-size: .8rem; }
.s02-source-conflict > div { display: flex; flex-wrap: wrap; gap: 6px; }
.s02-source-conflict button { min-height: 36px; }
.s02-workspace { align-items: start; display: grid; gap: 8px; grid-template-columns: minmax(0, 1.08fr) minmax(300px, .92fr); margin-top: 4px; }
.s02-workspace > .s02-entry-panel { grid-column: 1; grid-row: 1; }
.s02-workspace > .s02-records,
.s02-workspace > .s02-records-empty { grid-column: 2; grid-row: 1; min-width: 0; }
.s02-entry-panel, .s02-records { background: #fbfaf6; border: 1px solid #ded7c9; border-radius: 12px; min-width: 0; padding: 11px; }
.s02-entry-heading { align-items: baseline; border-bottom: 1px solid #e4ddd0; display: flex; flex-wrap: wrap; gap: 4px 10px; margin: 0 0 8px; padding: 0 0 7px; }
.s02-entry-heading strong { color: #173f31; font-size: .88rem; font-weight: 850; letter-spacing: .01em; }
.s02-entry-heading span { color: #65746d; font-size: .76rem; font-weight: 650; }
.s02-records-empty { align-self: start; background: #f4f8f5; border: 1px solid #d7e2dc; border-radius: 11px; color: #65746d; font-size: .82rem; line-height: 1.45; margin: 0; padding: 14px; }
.s02-records h3 { align-items: baseline; display: flex; gap: 10px; justify-content: space-between; }
.s02-records h3 small { color: #6b766f; font-size: .72rem; font-weight: 650; white-space: nowrap; }
.s02-entry-form { display: grid; gap: 7px; }
.s02-form-core { align-items: end; display: grid; gap: 7px; grid-template-columns: repeat(4, minmax(100px, 1fr)); }
.s02-field { display: grid; gap: 3px; min-width: 0; }
.s02-field > span:first-child { color: #596762; font-size: .75rem; font-weight: 700; }
.s02-field input, .s02-field select { box-sizing: border-box; height: 40px; min-width: 0; padding-block: 7px; width: 100%; }
.s02-field textarea { border: 1px solid #cfc7b8; border-radius: 9px; box-sizing: border-box; font: inherit; min-height: 64px; min-width: 0; padding: 8px 9px; resize: vertical; width: 100%; }
.s02-field-description, .s02-field-name, .s02-field-productId { grid-column: span 2; }
.s02-money-shell { align-items: stretch; background: #fff; border: 1px solid #cfc7b8; border-radius: 9px; display: grid; grid-template-columns: minmax(0, 1fr); overflow: hidden; }
.s02-money-shell input { border: 0; border-radius: 0; height: 38px; }
.s02-calculated-result .s02-money-shell { background: #edf2ed; border-color: #aab9af; }
.s02-calculated-result output { align-items: center; color: #1d4434; display: flex; font-size: .92rem; font-weight: 850; min-height: 38px; overflow-wrap: anywhere; padding: 0 9px; }
.s02-quantity-unit-shell { background: #fff; border: 1px solid #cfc7b8; border-radius: 9px; display: grid; grid-template-columns: minmax(0, 1fr) minmax(64px, .55fr); overflow: hidden; }
.s02-quantity-unit-shell input, .s02-quantity-unit-shell select { border: 0; border-radius: 0; }
.s02-quantity-unit-shell select { border-left: 1px solid #d8d0c2; }
.s02-form-tail { min-width: 0; position: relative; }
.s02-optional { border-top: 1px solid #e2dccf; margin-top: 2px; padding-top: 5px; }
.s02-optional summary { align-items: center; color: #53665d; cursor: pointer; display: flex; font-size: .78rem; font-weight: 750; gap: 6px; list-style: none; min-height: 36px; width: 100%; }
.s02-optional summary::-webkit-details-marker { display: none; }
.s02-optional-icon { display: inline-block; flex: 0 0 auto; font-size: .72em; line-height: 1; transform-origin: center; transition: transform .15s ease; }
.s02-optional[open] .s02-optional-icon { transform: rotate(90deg); }
.s02-optional > div { display: grid; gap: 7px; grid-template-columns: repeat(2, minmax(0, 1fr)); padding-top: 6px; }
.s02-validation-status { background: #fff6e7; border: 1px solid #dfc48c; border-radius: 8px; color: #674d1c; font-size: .74rem; grid-column: 1 / -1; line-height: 1.45; margin: 0; order: 99; padding: 6px 8px; }
.s02-validation-status[hidden] { display: none; }
.s02-form-actions { align-items: center; display: flex; gap: 7px; justify-content: flex-end; }
.s02-form-actions button { min-height: 40px; padding-block: 7px; white-space: nowrap; }
.s02-message { color: #426353; font-size: .78rem; margin: 6px 0 0; min-height: .9em; }
.s02-records { background: #fff; }
.s02-record-list { display: grid; gap: 5px; }
.s02-record-row { align-items: center; background: #fffdf9; border: 1px solid #e2dccf; border-radius: 9px; display: grid; gap: 7px; grid-template-columns: minmax(0, 1.5fr) minmax(105px, .75fr) auto; padding: 7px 8px; }
.s02-record-row[data-status="voided"], .s02-record-row[data-status="replaced"] { opacity: .58; }
.s02-record-main, .s02-record-value { display: flex; flex-wrap: wrap; gap: 3px 8px; min-width: 0; }
.s02-record-main strong { min-width: 90px; overflow-wrap: anywhere; }
.s02-record-main span, .s02-record-value span { color: #65716d; font-size: .72rem; }
.s02-record-actions { display: flex; gap: 4px; }
.s02-record-actions button { min-height: 32px; padding: 4px 7px; white-space: nowrap; }
.s02-order-core-note { background: #edf4ef; border-left: 3px solid #729580; color: #375747; font-size: .78rem; margin: 0 0 8px; padding: 6px 8px; }
.s02-order-settlement-fields { align-items: end; display: grid; gap: 7px; grid-column: 1 / -1; grid-template-columns: repeat(3, minmax(0, 1fr)); }
.s02-readonly-money { background: #edf2ed; border-color: #aab9af; }
.s02-readonly-money output { align-items: center; color: #1d4434; display: flex; font-size: .88rem; font-weight: 850; min-height: 38px; padding: 0 8px; }
.s02-order-record { background: #fffdf9; border: 1px solid #ded7c9; border-radius: 9px; display: grid; gap: 6px; padding: 7px 8px; }
.s02-order-record[data-status="voided"], .s02-order-record[data-status="replaced"] { opacity: .58; }
.s02-order-facts { align-items: center; display: grid; gap: 7px 9px; grid-template-columns: repeat(3, minmax(0, 1fr)); }
.s02-order-facts > * { font-size: .72rem; min-width: 0; overflow-wrap: anywhere; }
.s02-order-facts > *::before { color: #77817c; content: attr(data-order-column); display: block; font-size: .63rem; font-weight: 600; margin-bottom: 1px; }
.s02-order-facts > strong { color: #244638; }
.s02-order-record > .s02-record-actions { border-top: 1px solid #ece6da; flex-wrap: wrap; justify-content: flex-end; padding-top: 5px; }
.s02-payment-form { align-items: end; border-top: 1px solid #e2dccf; display: grid; gap: 6px; grid-column: 1 / -1; grid-template-columns: repeat(2, minmax(0, 1fr)); padding-top: 6px; }
.s02-payment-form label { display: grid; gap: 3px; }
.s02-payment-form label > span, .s02-order-note { color: #65716d; font-size: .74rem; margin: 0; }
.s02-payment-form input, .s02-payment-form select { box-sizing: border-box; height: 38px; min-width: 0; width: 100%; }
.s02-payment-form button { grid-column: 1 / -1; min-height: 38px; white-space: nowrap; }
.s02-payment-history { background: #f5f3ec; border-radius: 7px; display: grid; gap: 4px; padding: 6px; }
.s02-payment-history > div { display: grid; font-size: .72rem; gap: 6px; grid-template-columns: 90px 100px 100px minmax(0, 1fr); }
.s02-payment-history p { color: #68736e; font-size: .74rem; margin: 0; }
.s02-empty { color: #6c7773; font-size: .8rem; margin: 0; padding: 6px 1px; }
.s02-expense-groups { display: grid; gap: 8px; }
.s02-expense-groups > h3 { margin-bottom: 0; }
.s02-expense-group h4 { color: #46584f; font-size: .8rem; margin: 0 0 4px; }
.s02-subtotal { align-items: center; border-top: 1px solid #dcd5c7; display: flex; gap: 10px; justify-content: flex-end; margin-top: 6px; padding-top: 6px; }
.s02-subtotal span { color: #66736d; font-size: .76rem; }
.s02-subtotal strong { color: #25483a; font-size: .9rem; }
.s02-secondary-row { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 8px; }
.s02-secondary { border: 1px solid #ddd6c8; border-radius: 9px; min-width: 190px; padding: 7px 9px; }
.s02-secondary summary { color: #344c43; cursor: pointer; font-size: .82rem; font-weight: 750; }
.s02-secondary > button { margin-top: 6px; }
.s02-history-list { display: grid; gap: 5px; margin-top: 7px; }
.s02-pos-panel { display: grid; gap: 9px; }
.s02-pos-progress { display: grid; gap: 4px; grid-template-columns: repeat(7, minmax(0, 1fr)); }
.s02-pos-progress span { align-items: center; background: #f2f0e9; border-radius: 8px; color: #77817d; display: flex; flex-direction: column; font-size: .67rem; gap: 2px; min-width: 0; padding: 5px 2px; text-align: center; }
.s02-pos-progress b { align-items: center; background: #dedbd2; border-radius: 50%; display: flex; height: 20px; justify-content: center; width: 20px; }
.s02-pos-progress span[data-state="current"] { background: #e0ece5; color: #204434; font-weight: 800; }
.s02-pos-progress span[data-state="current"] b, .s02-pos-progress span[data-state="done"] b { background: #385f4e; color: #fff; }
.s02-pos-step { border-top: 1px solid #ded7c9; display: grid; gap: 7px; padding-top: 8px; }
.s02-pos-step:first-of-type { border-top: 0; padding-top: 0; }
.s02-pos-step h4 { color: #40544b; font-size: .86rem; margin: 0; }
.s02-pos-file { align-items: center; border: 1px dashed #8fa69a; border-radius: 9px; cursor: pointer; display: flex; gap: 8px; min-height: 40px; padding: 6px 9px; }
.s02-pos-file input { max-width: 210px; }
.s02-pos-file span { color: #52635c; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.s02-pos-mapping { display: grid; gap: 6px; grid-template-columns: repeat(4, minmax(110px, 1fr)); }
.s02-pos-options { align-items: end; display: grid; gap: 7px; grid-template-columns: minmax(220px, 1fr) auto; }
.s02-pos-options button, .s02-pos-step > button { min-height: 40px; justify-self: end; }
.s02-pos-counts { display: grid; gap: 5px; grid-template-columns: repeat(5, minmax(0, 1fr)); }
.s02-pos-counts span { background: #eef3ef; border-radius: 8px; color: #53645c; display: grid; font-size: .7rem; gap: 1px; padding: 6px; }
.s02-pos-counts strong { color: #203c31; font-size: .92rem; }
.s02-pos-preview-list { display: grid; gap: 4px; max-height: 270px; overflow: auto; }
.s02-pos-preview-list article { align-items: center; border: 1px solid #e0d9cc; border-radius: 8px; display: grid; font-size: .76rem; gap: 6px; grid-template-columns: 62px minmax(130px, 1fr) 92px 110px 84px; padding: 6px 7px; }
.s02-pos-preview-list article[data-pos-status="invalid"], .s02-pos-preview-list article[data-pos-status="conflict"] { background: #fff5ed; }
.s02-pos-preview-list article[data-pos-status="duplicate"] { opacity: .65; }
.s02-pos-preview-list em { color: #66736d; font-style: normal; font-weight: 700; text-align: right; }
.s02-pos-preview-list small { color: #8a3f2f; grid-column: 1 / -1; }
.s02-pos-conflict { max-width: 680px; }
.s02-pos-batches { border-top: 1px solid #dcd5c7; padding-top: 7px; }
.s02-pos-batches > summary { color: #344c43; cursor: pointer; font-size: .82rem; font-weight: 750; }
.s02-pos-batch { align-items: start; border: 1px solid #e0d9cc; border-radius: 9px; display: grid; gap: 6px; grid-template-columns: minmax(0, 1fr) auto; margin-top: 6px; padding: 7px; }
.s02-pos-batch[data-status="voided"] { opacity: .6; }
.s02-pos-batch > div { display: flex; flex-wrap: wrap; gap: 3px 9px; }
.s02-pos-batch > div span { color: #65716d; font-size: .72rem; }
.s02-pos-unmatched { align-items: center; display: grid; gap: 6px; grid-column: 1 / -1; grid-template-columns: minmax(130px, 1fr) minmax(170px, 1fr); }
.legacy-section02-source { display: none !important; }

@media (min-width: 901px) {
  .s02-section,
  .s03-section {
    clear: both;
    grid-column: 1 / -1;
    max-width: none;
    width: 100%;
  }

  .s02-entry-form .s02-field input[type="date"] { padding-left: 2px !important; padding-right: 2px !important; }
  .s02-entry-form .s02-field input[type="date"]::-webkit-datetime-edit,
  .s02-entry-form .s02-field input[type="date"]::-webkit-datetime-edit-fields-wrapper { padding: 0; }
  .s02-entry-form .s02-field input[type="date"]::-webkit-calendar-picker-indicator { flex: 0 0 18px; margin: 0; padding: 0; width: 18px; }
  .s02-entry-form[data-record-type="product_sale"] { column-gap: 0; grid-template-columns: repeat(100, minmax(0, 1fr)); }
  .s02-entry-form[data-record-type="product_sale"] .s02-form-core,
  .s02-entry-form[data-record-type="product_sale"] .s02-form-tail { display: contents; }
  .s02-entry-form[data-record-type="product_sale"] .s02-field-dateStart { grid-column: 1 / 24; grid-row: 1; order: 1; }
  .s02-entry-form[data-record-type="product_sale"] .s02-field-productId { grid-column: 24 / 101; grid-row: 1; margin-left: 7px; order: 1; }
  .s02-entry-form[data-record-type="product_sale"] .s02-field-quantity { grid-column: 1 / 51; grid-row: 2; order: 2; }
  .s02-entry-form[data-record-type="product_sale"] .s02-field-unitPrice { grid-column: 51 / 101; grid-row: 2; margin-left: 7px; order: 2; }
  .s02-entry-form[data-record-type="product_sale"] .s02-field-amount { grid-column: 1 / 51; grid-row: 3; order: 3; }
  .s02-entry-form[data-record-type="product_sale"] .s02-form-actions { align-self: end; grid-column: 51 / 101; grid-row: 3; justify-self: stretch; margin-left: 7px; order: 3; position: static; width: auto; }
  .s02-entry-form[data-record-type="product_sale"] .s02-form-actions button { box-sizing: border-box; height: 40px; width: 100%; }
  .s02-entry-form[data-record-type="product_sale"] .s02-optional { grid-column: 1 / 101; grid-row: 4; order: 4; }
  .s02-entry-form[data-record-type="order_sale"] { grid-template-columns: repeat(6, minmax(0, 1fr)); }
  .s02-entry-form[data-record-type="order_sale"] .s02-form-core,
  .s02-entry-form[data-record-type="order_sale"] .s02-form-tail { display: contents; }
  .s02-entry-form[data-record-type="order_sale"] .s02-field-dateStart { grid-column: 1 / 3; order: 1; }
  .s02-entry-form[data-record-type="order_sale"] .s02-field-orderNumber { grid-column: 3 / 5; order: 1; }
  .s02-entry-form[data-record-type="order_sale"] .s02-field-orderStatus { grid-column: 5 / 7; order: 1; }
  .s02-entry-form[data-record-type="order_sale"] .s02-order-settlement-fields { grid-column: 1 / 7; order: 2; }
  .s02-entry-form[data-record-type="order_sale"] .s02-optional { grid-column: 1 / 7; order: 3; }
  .s02-entry-form[data-record-type="order_sale"] .s02-field-amount { grid-column: 1 / 4; order: 4; }
  .s02-entry-form[data-record-type="order_sale"] .s02-field-amount .s02-money-shell { box-sizing: border-box; height: 44px; }
  .s02-entry-form[data-record-type="order_sale"] .s02-field-amount .s02-money-shell input { height: 42px; }
  .s02-entry-form[data-record-type="order_sale"] .s02-form-actions { align-self: end; grid-column: 4 / 7; justify-self: stretch; order: 4; position: static; width: auto; }
  .s02-entry-form[data-record-type="order_sale"] .s02-form-actions button { box-sizing: border-box; height: 44px; min-height: 44px; width: 100%; }
  .s02-entry-form[data-record-type="purchase"] { column-gap: 0; grid-template-columns: repeat(100, minmax(0, 1fr)); row-gap: 7px; }
  .s02-entry-form[data-record-type="purchase"] .s02-form-core,
  .s02-entry-form[data-record-type="purchase"] .s02-form-tail { display: contents; }
  .s02-entry-form[data-record-type="purchase"] .s02-field-dateStart { grid-column: 1 / 23; grid-row: 1; }
  .s02-entry-form[data-record-type="purchase"] .s02-field-category { grid-column: 23 / 45; grid-row: 1; margin-left: 7px; }
  .s02-entry-form[data-record-type="purchase"] .s02-field-name { grid-column: 45 / 101; grid-row: 1; margin-left: 7px; }
  .s02-entry-form[data-record-type="purchase"] .s02-field-quantity-unit { grid-column: 1 / 51; grid-row: 2; }
  .s02-entry-form[data-record-type="purchase"] .s02-field-unitPrice { grid-column: 51 / 101; grid-row: 2; margin-left: 7px; }
  .s02-entry-form[data-record-type="purchase"] .s02-field-amount { grid-column: 1 / 71; grid-row: 3; }
  .s02-entry-form[data-record-type="purchase"] .s02-field-amount .s02-money-shell { box-sizing: border-box; height: 44px; }
  .s02-entry-form[data-record-type="purchase"] .s02-field-amount .s02-money-shell input { height: 42px; }
  .s02-entry-form[data-record-type="purchase"] .s02-form-actions { align-self: end; bottom: auto; grid-column: 71 / 101; grid-row: 3; margin-left: 7px; position: static; width: auto; }
  .s02-entry-form[data-record-type="purchase"] .s02-form-actions button { box-sizing: border-box; height: 44px; min-height: 44px; width: 100%; }
  .s02-entry-form[data-record-type="purchase"] .s02-optional { grid-column: 1 / 101; grid-row: 4; }
  .s02-entry-form[data-record-type="categorized_sale"] { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .s02-entry-form[data-record-type="categorized_sale"] .s02-form-core,
  .s02-entry-form[data-record-type="categorized_sale"] .s02-form-tail { display: contents; }
  .s02-entry-form[data-record-type="categorized_sale"] .s02-field-dateStart { grid-column: 1; order: 1; }
  .s02-entry-form[data-record-type="categorized_sale"] .s02-field-category { grid-column: 2; order: 1; }
  .s02-entry-form[data-record-type="categorized_sale"] .s02-optional { grid-column: 1 / -1; order: 2; }
  .s02-entry-form[data-record-type="categorized_sale"] .s02-field-amount { grid-column: 1; order: 3; }
  .s02-entry-form[data-record-type="categorized_sale"] .s02-field-amount .s02-money-shell { box-sizing: border-box; height: 44px; }
  .s02-entry-form[data-record-type="categorized_sale"] .s02-field-amount .s02-money-shell input { height: 42px; }
  .s02-entry-form[data-record-type="categorized_sale"] .s02-form-actions { align-self: end; grid-column: 2; justify-self: stretch; order: 3; position: static; width: auto; }
  .s02-entry-form[data-record-type="categorized_sale"] .s02-form-actions button { box-sizing: border-box; height: 44px; min-height: 44px; width: 100%; }
  .s02-entry-form[data-record-type="other_income"] { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .s02-entry-form[data-record-type="other_income"] .s02-form-core,
  .s02-entry-form[data-record-type="other_income"] .s02-form-tail { display: contents; }
  .s02-entry-form[data-record-type="other_income"] .s02-field-dateStart { grid-column: 1; grid-row: 1; order: 1; }
  .s02-entry-form[data-record-type="other_income"] .s02-field-dateEnd { grid-column: 2; grid-row: 1; order: 1; }
  .s02-entry-form[data-record-type="other_income"] .s02-field-name { grid-column: 1; grid-row: 2; order: 2; }
  .s02-entry-form[data-record-type="other_income"] .s02-field-category { grid-column: 2; grid-row: 2; order: 2; }
  .s02-entry-form[data-record-type="other_income"] .s02-field-amount { grid-column: 1; grid-row: 3; order: 3; }
  .s02-entry-form[data-record-type="other_income"] .s02-form-actions { align-self: end; grid-column: 2; grid-row: 3; justify-self: stretch; order: 3; position: static; width: auto; }
  .s02-entry-form[data-record-type="other_income"] .s02-optional { grid-column: 1 / -1; grid-row: 4; order: 4; }
  .s02-entry-form[data-record-type="other_income"] .s02-money-shell { box-sizing: border-box; height: 44px; }
  .s02-entry-form[data-record-type="other_income"] .s02-money-shell input { height: 42px; }
  .s02-entry-form[data-record-type="other_income"] .s02-form-actions button { box-sizing: border-box; height: 44px; min-height: 44px; width: 100%; }
  .s02-entry-form[data-record-type="operating_expense"] { column-gap: 0; grid-template-columns: repeat(100, minmax(0, 1fr)); row-gap: 7px; }
  .s02-entry-form[data-record-type="operating_expense"] .s02-form-core,
  .s02-entry-form[data-record-type="operating_expense"] .s02-form-tail { display: contents; }
  .s02-entry-form[data-record-type="operating_expense"] .s02-field-dateStart { grid-column: 1 / 51; grid-row: 1; }
  .s02-entry-form[data-record-type="operating_expense"] .s02-field-dateEnd { grid-column: 51 / 101; grid-row: 1; margin-left: 7px; }
  .s02-entry-form[data-record-type="operating_expense"] .s02-field-category { grid-column: 1 / 34; grid-row: 2; }
  .s02-entry-form[data-record-type="operating_expense"] .s02-field-description { grid-column: 34 / 101; grid-row: 2; margin-left: 7px; }
  .s02-entry-form[data-record-type="operating_expense"] .s02-field-amount { grid-column: 1 / 71; grid-row: 3; }
  .s02-entry-form[data-record-type="operating_expense"] .s02-field-amount .s02-money-shell { box-sizing: border-box; height: 44px; }
  .s02-entry-form[data-record-type="operating_expense"] .s02-field-amount .s02-money-shell input { height: 42px; }
  .s02-entry-form[data-record-type="operating_expense"] .s02-form-actions { align-self: end; bottom: auto; grid-column: 71 / 101; grid-row: 3; margin-left: 7px; position: static; width: auto; }
  .s02-entry-form[data-record-type="operating_expense"] .s02-form-actions button { box-sizing: border-box; height: 44px; min-height: 44px; width: 100%; }
  .s02-entry-form[data-record-type="operating_expense"] .s02-optional { grid-column: 1 / 101; grid-row: 4; }
  .s02-entry-form[data-record-type="long_term_investment"] { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .s02-entry-form[data-record-type="long_term_investment"] .s02-form-core,
  .s02-entry-form[data-record-type="long_term_investment"] .s02-form-tail { display: contents; }
  .s02-entry-form[data-record-type="long_term_investment"] .s02-field-dateStart { grid-column: 1; grid-row: 1; }
  .s02-entry-form[data-record-type="long_term_investment"] .s02-field-dateEnd { display: none; }
  .s02-entry-form[data-record-type="long_term_investment"] .s02-field-name { grid-column: 2 / 5; grid-row: 1; }
  .s02-entry-form[data-record-type="long_term_investment"] .s02-field-investmentType { grid-column: 1 / 3; grid-row: 2; }
  .s02-entry-form[data-record-type="long_term_investment"] .s02-field-investmentOrigin { grid-column: 3 / 5; grid-row: 2; }
  .s02-entry-form[data-record-type="long_term_investment"] .s02-field-paybackTreatment { grid-column: 3 / 5; grid-row: 2; }
  .s02-entry-form[data-record-type="long_term_investment"] .s02-field-amount { grid-column: 1 / 4; grid-row: 3; }
  .s02-entry-form[data-record-type="long_term_investment"] .s02-field-amount .s02-money-shell { box-sizing: border-box; height: 44px; }
  .s02-entry-form[data-record-type="long_term_investment"] .s02-field-amount .s02-money-shell input { height: 42px; }
  .s02-entry-form[data-record-type="long_term_investment"] .s02-form-actions { align-self: end; grid-column: 4; grid-row: 3; margin-left: 0; position: static; width: auto; }
  .s02-entry-form[data-record-type="long_term_investment"] .s02-form-actions button { box-sizing: border-box; height: 44px; min-height: 44px; width: 100%; }
  .s02-entry-form[data-record-type="long_term_investment"] .s02-optional { grid-column: 1 / -1; grid-row: 4; }
  .s02-investment-guidance,
  .s02-investment-type-help,
  .s02-investment-legacy-notice {
    color: #4d5c52;
    font-size: .86rem;
    grid-column: 1 / -1;
    line-height: 1.4;
    margin: 0 0 6px;
  }
  .s02-classification-badge {
    color: #8a5a12;
    display: inline-block;
    font-size: .78rem;
    font-style: normal;
    font-weight: 700;
    margin-top: 2px;
  }
  .s02-form-tail { min-height: 40px; }
  .s02-form-tail .s02-optional { margin: 0; padding-top: 0; }
  .s02-form-tail .s02-optional summary { align-items: center; display: flex; min-height: 40px; padding-right: 30%; }
  .s02-form-tail .s02-optional > div { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .s02-form-tail .s02-field-description { grid-column: 1 / -1; }
  .s02-form-tail .s02-field-notes { grid-column: 1 / -1; width: 72%; }
  .s02-form-tail .s02-form-actions { bottom: 0; position: absolute; right: 0; width: 28%; }
  .s02-form-tail .s02-form-actions button { box-sizing: border-box; min-width: 0; width: 100%; }

  .s02-section > summary.business-section-heading,
  .s03-section > summary.business-section-heading {
    background: transparent;
    border: 0;
    border-bottom: 1px solid var(--line);
    border-radius: 0;
    box-sizing: border-box;
    column-gap: 10px;
    display: grid;
    gap: 3px 10px;
    /* Geometry finalized in dpcSectionHeader.css (3-col operational grid). */
    grid-template-columns: minmax(0, 1fr) auto;
    justify-items: stretch;
    margin-bottom: 12px;
    margin-inline: 0;
    max-width: none;
    padding: 0 24px 8px;
    text-align: left;
    width: 100%;
  }

  .business-section-title-line {
    /* Keep the shared 02/03 grid alignment from dpcSectionHeader.css; do not re-center by content width. */
    min-width: 0;
  }

  .business-section-heading h2 {
    font-size: 24px;
    font-weight: 900;
    line-height: 1.2;
    margin: 0;
    text-align: left;
  }

  .business-section-heading .section-subtitle {
    line-height: 1.45;
    margin: 0;
    text-align: left;
    width: 100%;
  }

  .business-section-heading .section-toggle-indicator {
    display: inline-flex;
  }

  .s02-root {
    border-top: 0;
  }
}

@media (max-width: 900px) {
  .s02-section { margin-top: 8px; }
  .s02-root { padding: 6px 8px; }
  .s02-navigation { gap: 6px; }
  .s02-navigation > [data-s02-entry],
  .s02-navigation > [data-s02-area] { flex: 1 1 calc(33.33% - 6px); min-height: 42px; padding: 6px 8px; }
  .s02-overview { margin-top: 4px; }
  .s02-total-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .s02-total-grid > div { min-height: 40px; padding: 4px 6px; }
  .s02-total-grid > div:last-child { grid-column: 1 / -1; }
  .s02-total-grid[data-count="2"] > div:last-child { grid-column: auto; }
  .s02-navigation .s02-type-tabs[data-active="true"] { box-sizing: border-box; display: flex; grid-column: 1 / -1; grid-row: 2; width: 100%; }
  .s02-type-tabs { flex-wrap: wrap; margin: 0; overflow-x: visible; padding-bottom: 0; }
  .s02-type-tabs button { flex: 1 1 auto; font-size: .78rem; max-width: 100%; min-height: 34px; min-width: 0; overflow-wrap: anywhere; padding: 4px 9px; white-space: normal; }
  .s02-workspace { grid-template-columns: 1fr; gap: 6px; margin-top: 4px; }
  .s02-workspace > .s02-entry-panel,
  .s02-workspace > .s02-records,
  .s02-workspace > .s02-records-empty { grid-column: 1; grid-row: auto; }
  .s02-entry-panel, .s02-records { padding: 8px 10px; }
  .s02-entry-heading { margin-bottom: 6px; padding-bottom: 4px; }
  .s02-records-empty {
    background: #f4f8f5;
    border: 0;
    border-left: 3px solid #729580;
    border-radius: 0 10px 10px 0;
    padding: 8px 10px;
  }
  .s02-form-core { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
  .s02-field { gap: 2px; }
  .s02-field > span:first-child { font-size: .72rem; }
  .s02-field-description, .s02-field-name, .s02-field-productId { grid-column: span 2; }
  .s02-field input, .s02-field select { font-size: 16px; height: 40px; }
  .s02-money-shell input { height: 38px; }
  .s02-optional > div { gap: 5px; grid-template-columns: 1fr; }
  .s02-form-actions { margin-top: 0; }
  .s02-form-actions .primary-action { flex: 1; min-height: 42px; }
  .s02-order-core-note {
    background: #edf4ef;
    border: 0;
    border-left: 3px solid #729580;
    border-radius: 0 8px 8px 0;
    margin: 0 0 6px;
    padding: 4px 8px;
  }
  .s02-validation-status {
    border-radius: 6px;
    padding: 3px 7px;
  }
  .s02-record-row { align-items: start; grid-template-columns: minmax(0, 1fr) auto; }
  .s02-record-value { grid-column: 1; }
  .s02-record-actions { grid-column: 2; grid-row: 1 / span 2; }
  .s02-payment-form { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .s02-payment-form button { grid-column: 1 / -1; }
  .s02-order-facts { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .s02-order-settlement-fields { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .s02-order-settlement-fields .s02-field-dueDate { grid-column: 1 / -1; }
  .s02-payment-history > div { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .s02-secondary-row { margin-top: 6px; }
  .s02-secondary { flex: 1 1 150px; }
  .s02-pos-progress { grid-template-columns: repeat(7, minmax(52px, 1fr)); overflow-x: auto; padding-bottom: 2px; }
  .s02-pos-mapping { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .s02-pos-counts { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .s02-pos-preview-list article { grid-template-columns: auto minmax(0, 1fr) auto; }
  .s02-pos-preview-list article span:nth-of-type(2), .s02-pos-preview-list article em { grid-row: 2; }
  .s02-pos-preview-list article em { grid-column: 3; }
  .s02-message:empty { display: none; }
  .s02-empty { padding-block: 3px; }
  .s02-records:has(.s02-empty) { min-height: 0; }

  .s02-entry-form[data-record-type="product_sale"] { align-items: end; column-gap: 8px; grid-template-columns: minmax(0, 60fr) minmax(0, 40fr); }
  .s02-entry-form[data-record-type="product_sale"] .s02-form-core,
  .s02-entry-form[data-record-type="product_sale"] .s02-form-tail { display: contents; }
  .s02-entry-form[data-record-type="product_sale"] .s02-field-dateStart { grid-column: 1 / -1; order: 1; }
  .s02-entry-form[data-record-type="product_sale"] .s02-field-productId { grid-column: 1 / -1; order: 2; }
  .s02-entry-form[data-record-type="product_sale"] .s02-field-quantity { grid-column: 1; order: 3; }
  .s02-entry-form[data-record-type="product_sale"] .s02-field-unitPrice { grid-column: 2; order: 3; }
  .s02-entry-form[data-record-type="product_sale"] .s02-optional { grid-column: 1 / -1; order: 4; }
  .s02-entry-form[data-record-type="product_sale"] .s02-field-amount { grid-column: 1; order: 5; }
  .s02-entry-form[data-record-type="product_sale"] .s02-form-actions { align-self: end; display: grid; grid-column: 2; justify-content: stretch; justify-self: stretch; order: 5; width: 100%; }
  .s02-entry-form[data-record-type="product_sale"] .s02-form-actions button { box-sizing: border-box; font-size: .78rem; height: 40px; min-width: 0; padding-inline: 3px; width: 100%; }
  .s02-entry-form[data-record-type="product_sale"] .s02-calculated-result output { font-size: .84rem; min-width: 0; overflow: hidden; padding-inline: 6px; text-overflow: ellipsis; white-space: nowrap; }
  .s02-entry-form[data-record-type="product_sale"] .s02-calculated-result .s02-money-shell strong { min-width: 40px; padding-inline: 5px; white-space: nowrap; }

  .s02-entry-form[data-record-type="order_sale"] { align-items: end; column-gap: 8px; grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .s02-entry-form[data-record-type="order_sale"] .s02-form-core,
  .s02-entry-form[data-record-type="order_sale"] .s02-form-tail { display: contents; }
  .s02-entry-form[data-record-type="order_sale"] .s02-field-dateStart { grid-column: 1 / -1; order: 1; }
  .s02-entry-form[data-record-type="order_sale"] .s02-field-orderNumber { grid-column: 1 / -1; order: 2; }
  .s02-entry-form[data-record-type="order_sale"] .s02-field-amount { grid-column: 1; order: 3; }
  .s02-entry-form[data-record-type="order_sale"] .s02-field-orderStatus { grid-column: 2; order: 3; }
  .s02-entry-form[data-record-type="order_sale"] .s02-order-settlement-fields { grid-column: 1 / -1; order: 4; }
  .s02-entry-form[data-record-type="order_sale"] .s02-optional { grid-column: 1 / -1; order: 5; }
  .s02-entry-form[data-record-type="order_sale"] .s02-form-actions { grid-column: 1 / -1; order: 6; width: 100%; }
  .s02-entry-form[data-record-type="order_sale"] .s02-form-actions button { width: 100%; }

  .s02-entry-form[data-record-type="categorized_sale"] { align-items: end; grid-template-columns: minmax(0, 1fr); }
  .s02-entry-form[data-record-type="categorized_sale"] .s02-form-core,
  .s02-entry-form[data-record-type="categorized_sale"] .s02-form-tail { display: contents; }
  .s02-entry-form[data-record-type="categorized_sale"] .s02-field-dateStart { grid-column: 1; order: 1; }
  .s02-entry-form[data-record-type="categorized_sale"] .s02-field-category { grid-column: 1; order: 2; }
  .s02-entry-form[data-record-type="categorized_sale"] .s02-field-amount { grid-column: 1; order: 3; }
  .s02-entry-form[data-record-type="categorized_sale"] .s02-optional { grid-column: 1; order: 4; }
  .s02-entry-form[data-record-type="categorized_sale"] .s02-form-actions { grid-column: 1; order: 5; width: 100%; }
  .s02-entry-form[data-record-type="categorized_sale"] .s02-form-actions button { width: 100%; }

  .s02-entry-form[data-record-type="other_income"] { align-items: end; column-gap: 8px; grid-template-columns: minmax(0, 60fr) minmax(0, 40fr); }
  .s02-entry-form[data-record-type="other_income"] .s02-form-core,
  .s02-entry-form[data-record-type="other_income"] .s02-form-tail { display: contents; }
  .s02-entry-form[data-record-type="other_income"] .s02-field-dateStart { grid-column: 1; grid-row: 1; order: 1; }
  .s02-entry-form[data-record-type="other_income"] .s02-field-dateEnd { grid-column: 2; grid-row: 1; order: 1; }
  .s02-entry-form[data-record-type="other_income"] .s02-field-name { align-self: stretch; grid-column: 1; grid-row: 2; order: 2; }
  .s02-entry-form[data-record-type="other_income"] .s02-field-category { align-self: stretch; grid-column: 2; grid-row: 2; order: 2; }
  .s02-entry-form[data-record-type="other_income"] .s02-field-name input,
  .s02-entry-form[data-record-type="other_income"] .s02-field-category select { box-sizing: border-box; height: 40px; max-height: 40px; min-height: 40px; }
  .s02-entry-form[data-record-type="other_income"] .s02-field-category select { font-size: 16px; padding-left: 2px; padding-right: 2px; }
  .s02-entry-form[data-record-type="other_income"] .s02-field-amount { grid-column: 1; grid-row: 3; order: 3; }
  .s02-entry-form[data-record-type="other_income"] .s02-form-actions { align-self: end; grid-column: 2; grid-row: 3; justify-self: stretch; order: 3; width: 100%; }
  .s02-entry-form[data-record-type="other_income"] .s02-form-actions button { box-sizing: border-box; height: 40px; min-width: 0; padding-inline: 3px; width: 100%; }
  .s02-entry-form[data-record-type="other_income"] .s02-optional { grid-column: 1 / -1; grid-row: 4; order: 4; }

  .s02-entry-form[data-record-type="operating_expense"] { align-items: end; column-gap: 8px; grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .s02-entry-form[data-record-type="operating_expense"] .s02-form-core,
  .s02-entry-form[data-record-type="operating_expense"] .s02-form-tail { display: contents; }
  .s02-entry-form[data-record-type="operating_expense"] .s02-field-category { grid-column: 1 / -1; order: 1; }
  .s02-entry-form[data-record-type="operating_expense"] .s02-field-description { grid-column: 1 / -1; order: 2; }
  .s02-entry-form[data-record-type="operating_expense"] .s02-field-dateStart { grid-column: 1; order: 3; }
  .s02-entry-form[data-record-type="operating_expense"] .s02-field-dateEnd { grid-column: 2; order: 3; }
  .s02-entry-form[data-record-type="operating_expense"] .s02-field-amount { grid-column: 1 / -1; order: 4; }
  .s02-entry-form[data-record-type="operating_expense"] .s02-optional { grid-column: 1 / -1; order: 5; }
  .s02-entry-form[data-record-type="operating_expense"] .s02-form-actions { grid-column: 1 / -1; order: 6; width: 100%; }
  .s02-entry-form[data-record-type="operating_expense"] .s02-form-actions button { width: 100%; }

  .s02-entry-form[data-record-type="long_term_investment"] { align-items: end; column-gap: 8px; grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .s02-entry-form[data-record-type="long_term_investment"] .s02-form-core,
  .s02-entry-form[data-record-type="long_term_investment"] .s02-form-tail { display: contents; }
  .s02-entry-form[data-record-type="long_term_investment"] .s02-field-dateStart { grid-column: 1 / -1; order: 1; }
  .s02-entry-form[data-record-type="long_term_investment"] .s02-field-dateEnd { display: none; }
  .s02-entry-form[data-record-type="long_term_investment"] .s02-field-name { grid-column: 1 / -1; order: 2; }
  .s02-entry-form[data-record-type="long_term_investment"] .s02-field-investmentType { grid-column: 1; order: 3; min-width: 0; }
  .s02-entry-form[data-record-type="long_term_investment"] .s02-field-investmentOrigin { grid-column: 2; order: 3; min-width: 0; }
  .s02-entry-form[data-record-type="long_term_investment"] .s02-field-paybackTreatment { grid-column: 2; order: 3; min-width: 0; }
  .s02-entry-form[data-record-type="long_term_investment"] .s02-field-amount { grid-column: 1 / -1; order: 4; }
  .s02-entry-form[data-record-type="long_term_investment"] .s02-optional { grid-column: 1 / -1; order: 5; }
  .s02-entry-form[data-record-type="long_term_investment"] .s02-form-actions { grid-column: 1 / -1; order: 6; width: 100%; }
  .s02-entry-form[data-record-type="long_term_investment"] .s02-form-actions button { width: 100%; }
  .s02-investment-guidance,
  .s02-investment-type-help,
  .s02-investment-legacy-notice {
    font-size: .8rem;
    grid-column: 1 / -1;
    margin: 0 0 4px;
    min-width: 0;
    overflow-wrap: anywhere;
  }

  .s02-entry-form[data-record-type="purchase"] { align-items: end; column-gap: 8px; grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .s02-entry-form[data-record-type="purchase"] .s02-form-core,
  .s02-entry-form[data-record-type="purchase"] .s02-form-tail { display: contents; }
  .s02-entry-form[data-record-type="purchase"] .s02-field-dateStart { grid-column: 1; order: 1; }
  .s02-entry-form[data-record-type="purchase"] .s02-field-category { grid-column: 2; order: 1; }
  .s02-entry-form[data-record-type="purchase"] .s02-field-name { grid-column: 1 / -1; order: 2; }
  .s02-entry-form[data-record-type="purchase"] .s02-field-quantity-unit { grid-column: 1; order: 3; }
  .s02-entry-form[data-record-type="purchase"] .s02-field-unitPrice { grid-column: 2; order: 3; }
  .s02-entry-form[data-record-type="purchase"] .s02-field-amount { grid-column: 1 / -1; order: 4; }
  .s02-entry-form[data-record-type="purchase"] .s02-optional { grid-column: 1 / -1; order: 5; }
  .s02-entry-form[data-record-type="purchase"] .s02-form-actions { grid-column: 1 / -1; order: 6; width: 100%; }
  .s02-entry-form[data-record-type="purchase"] .s02-form-actions button { width: 100%; }
}

@media (max-width: 430px) {
  .s02-navigation .s02-sales-tabs[data-active="true"] { flex-wrap: wrap; overflow-x: visible; }
  .s02-sales-tabs button { flex: 1 1 auto; max-width: 100%; min-width: 0; overflow-wrap: anywhere; white-space: normal; }
  .s02-root { padding: 4px 6px 6px; }
  .s02-section { margin-top: 8px; }
  .s02-navigation { gap: 4px; margin-bottom: 0; }
  .s02-navigation > [data-s02-entry],
  .s02-navigation > [data-s02-area] { flex: 1 1 calc(50% - 4px); font-size: .78rem; min-height: 40px; padding: 5px 6px; }
  .s02-sales-modes,
  .s02-order-sources { gap: 4px; }
  .s02-sales-modes button,
  .s02-order-sources button { flex: 1 1 auto; font-size: .76rem; min-width: 0; overflow-wrap: anywhere; white-space: normal; }
  .s02-type-tabs { gap: 4px; margin: 0; }
  .s02-type-tabs button { border-radius: 10px; flex: 1 1 calc(33.33% - 4px); font-size: .78rem; min-height: 34px; padding: 4px 6px; }
  .s02-workspace { gap: 6px; grid-template-columns: minmax(0, 1fr); margin-top: 4px; }
  /* ONE outer frame for the main entry form. */
  .s02-entry-panel,
  .s02-records {
    background: #fff;
    border: 1px solid #ded7c9;
    border-radius: 10px;
    box-sizing: border-box;
    padding: 6px 8px;
    width: 100%;
  }
  .s02-form-core { gap: 4px; grid-template-columns: minmax(0, 1fr); }
  .s02-entry-form { gap: 3px; }
  .s02-records-empty {
    background: #f4f8f5;
    border: 0;
    border-left: 3px solid #729580;
    border-radius: 0 10px 10px 0;
    box-sizing: border-box;
    padding: 8px 10px;
    width: 100%;
  }
  .s02-field { gap: 3px; }
  .s02-field > span:first-child { font-size: .78rem; }
  .s02-field input,
  .s02-field select { font-size: 16px; height: 38px; }
  .s02-money-shell input { height: 36px; }
  .s02-money-shell strong { min-width: 48px; }
  .s02-calculated-result output { min-height: 36px; }
  .s02-optional {
    background: transparent;
    border: 0;
    border-top: 0;
    margin-top: 0;
    padding: 0;
  }
  .s02-optional summary { min-height: 32px; padding-block: 1px; font-size: .74rem; }
  .s02-optional > div { gap: 6px; grid-template-columns: 1fr; padding-top: 2px; }
  /* Tips: light bg + left accent — no separate rounded card. */
  .s02-order-core-note {
    background: #edf4ef;
    border: 0;
    border-left: 3px solid #729580;
    border-radius: 0 8px 8px 0;
    margin: 0 0 4px;
    padding: 3px 7px;
  }
  /* Errors: clear color + light border only, less padding. */
  .s02-validation-status {
    background: #fff6e7;
    border: 1px solid #e8d2a0;
    border-radius: 6px;
    margin-top: 0;
    padding: 2px 6px;
    font-size: .7rem;
  }
  .s02-form-actions { margin-top: 0; width: 100%; }
  .s02-entry-form { gap: 3px; }
  .s02-entry-heading { margin-bottom: 0; padding-bottom: 0; }
  .s02-field input,
  .s02-field select { font-size: 16px; height: 36px; }
  .s02-money-shell input { height: 34px; }
  .s02-calculated-result output { min-height: 34px; }
  .s02-form-actions .primary-action {
    border-radius: 10px;
    flex: 1 1 auto;
    font-weight: 750;
    min-height: 40px;
    width: 100%;
  }
  .s02-record-row { gap: 4px; padding: 8px; }
  .s02-record-main { display: grid; gap: 1px; }
  .s02-record-actions { flex-direction: column; }
  .s02-pos-mapping { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .s02-pos-options { grid-template-columns: 1fr; }
  .s02-pos-options button, .s02-pos-step > button { justify-self: stretch; }
  .s02-pos-counts { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .s02-pos-file { align-items: stretch; flex-direction: column; }
  .s02-pos-file input { max-width: 100%; width: 100%; }
  .s02-pos-batch { grid-template-columns: 1fr; }
  .s02-pos-batch > button { justify-self: start; }
  .s02-pos-unmatched { grid-template-columns: 1fr; }

  /* Phone widths: single-column continuous entry matching the mobile references. */
  .s02-entry-form[data-record-type="product_sale"],
  .s02-entry-form[data-record-type="purchase"],
  .s02-entry-form[data-record-type="long_term_investment"] {
    grid-template-columns: minmax(0, 1fr);
  }

  /* Shared start/end date pair: keep one 50/50 row on phone. */
  .s02-entry-form[data-record-type="other_income"],
  .s02-entry-form[data-record-type="operating_expense"] {
    column-gap: 8px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  /* Daily total: keep sales date and category on one 50/50 row on phone. */
  .s02-entry-form[data-record-type="categorized_sale"] {
    column-gap: 8px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  /* Completed order: keep completion date and order number on one 50/50 row on phone. */
  .s02-entry-form[data-record-type="order_sale"] {
    column-gap: 8px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .s02-entry-form[data-record-type="product_sale"] .s02-field,
  .s02-entry-form[data-record-type="product_sale"] .s02-optional,
  .s02-entry-form[data-record-type="product_sale"] .s02-form-actions,
  .s02-entry-form[data-record-type="order_sale"] .s02-field,
  .s02-entry-form[data-record-type="order_sale"] .s02-order-settlement-fields,
  .s02-entry-form[data-record-type="order_sale"] .s02-optional,
  .s02-entry-form[data-record-type="order_sale"] .s02-form-actions,
  .s02-entry-form[data-record-type="categorized_sale"] .s02-field,
  .s02-entry-form[data-record-type="categorized_sale"] .s02-optional,
  .s02-entry-form[data-record-type="categorized_sale"] .s02-form-actions,
  .s02-entry-form[data-record-type="other_income"] .s02-field,
  .s02-entry-form[data-record-type="other_income"] .s02-optional,
  .s02-entry-form[data-record-type="other_income"] .s02-form-actions,
  .s02-entry-form[data-record-type="purchase"] .s02-field,
  .s02-entry-form[data-record-type="purchase"] .s02-optional,
  .s02-entry-form[data-record-type="purchase"] .s02-form-actions,
  .s02-entry-form[data-record-type="operating_expense"] .s02-field,
  .s02-entry-form[data-record-type="operating_expense"] .s02-optional,
  .s02-entry-form[data-record-type="operating_expense"] .s02-form-actions,
  .s02-entry-form[data-record-type="long_term_investment"] .s02-field,
  .s02-entry-form[data-record-type="long_term_investment"] .s02-optional,
  .s02-entry-form[data-record-type="long_term_investment"] .s02-form-actions {
    grid-column: 1 / -1;
  }

  .s02-entry-form[data-record-type="other_income"] .s02-field-dateStart,
  .s02-entry-form[data-record-type="operating_expense"] .s02-field-dateStart {
    grid-column: 1;
    min-width: 0;
  }

  .s02-entry-form[data-record-type="other_income"] .s02-field-dateEnd,
  .s02-entry-form[data-record-type="operating_expense"] .s02-field-dateEnd {
    grid-column: 2;
    min-width: 0;
  }

  .s02-entry-form[data-record-type="categorized_sale"] .s02-field-dateStart {
    grid-column: 1;
    min-width: 0;
    order: 1;
  }

  .s02-entry-form[data-record-type="categorized_sale"] .s02-field-category {
    grid-column: 2;
    min-width: 0;
    order: 1;
  }

  .s02-entry-form[data-record-type="order_sale"] .s02-field-dateStart {
    grid-column: 1;
    min-width: 0;
    order: 1;
  }

  .s02-entry-form[data-record-type="order_sale"] .s02-field-orderNumber {
    grid-column: 2;
    min-width: 0;
    order: 1;
  }

  .s02-entry-form[data-record-type="other_income"] .s02-field-dateStart input[type="date"],
  .s02-entry-form[data-record-type="other_income"] .s02-field-dateEnd input[type="date"],
  .s02-entry-form[data-record-type="operating_expense"] .s02-field-dateStart input[type="date"],
  .s02-entry-form[data-record-type="operating_expense"] .s02-field-dateEnd input[type="date"],
  .s02-entry-form[data-record-type="categorized_sale"] .s02-field-dateStart input[type="date"],
  .s02-entry-form[data-record-type="order_sale"] .s02-field-dateStart input[type="date"] {
    box-sizing: border-box;
    min-width: 0;
    padding-left: 2px;
    padding-right: 2px;
    width: 100%;
  }

  .s02-entry-form[data-record-type="product_sale"] .s02-field-quantity { order: 3; }
  .s02-entry-form[data-record-type="product_sale"] .s02-field-unitPrice { order: 4; }
  .s02-entry-form[data-record-type="product_sale"] .s02-optional { order: 5; }
  .s02-entry-form[data-record-type="product_sale"] .s02-field-amount { order: 6; }
  .s02-entry-form[data-record-type="product_sale"] .s02-form-actions {
    align-self: stretch;
    display: grid;
    justify-content: stretch;
    justify-self: stretch;
    order: 7;
    width: 100%;
  }
  .s02-entry-form[data-record-type="product_sale"] .s02-form-actions button {
    font-size: .9rem;
    height: 40px;
    min-height: 40px;
    padding-inline: 10px;
    width: 100%;
  }

  .s02-entry-form[data-record-type="order_sale"] .s02-field-amount { order: 3; }
  .s02-entry-form[data-record-type="order_sale"] .s02-field-orderStatus { order: 4; }
  .s02-entry-form[data-record-type="order_sale"] .s02-order-settlement-fields { order: 5; }
  .s02-entry-form[data-record-type="order_sale"] .s02-optional { order: 6; }
  .s02-entry-form[data-record-type="order_sale"] .s02-form-actions { order: 7; width: 100%; }

  .s02-entry-form[data-record-type="other_income"] .s02-field-dateStart { grid-row: auto; order: 1; }
  .s02-entry-form[data-record-type="other_income"] .s02-field-dateEnd { grid-row: auto; order: 1; }
  .s02-entry-form[data-record-type="other_income"] .s02-field-name { grid-row: auto; order: 2; }
  .s02-entry-form[data-record-type="other_income"] .s02-field-category { grid-row: auto; order: 3; }
  .s02-entry-form[data-record-type="other_income"] .s02-field-amount { grid-row: auto; order: 4; }
  .s02-entry-form[data-record-type="other_income"] .s02-form-actions { grid-row: auto; order: 5; width: 100%; }
  .s02-entry-form[data-record-type="other_income"] .s02-optional { grid-row: auto; order: 6; }
  .s02-entry-form[data-record-type="other_income"] .s02-form-actions button {
    height: 40px;
    min-height: 40px;
    width: 100%;
  }

  .s02-entry-form[data-record-type="operating_expense"] .s02-field-dateStart { order: 3; }
  .s02-entry-form[data-record-type="operating_expense"] .s02-field-dateEnd { order: 3; }
  .s02-entry-form[data-record-type="operating_expense"] .s02-field-amount { order: 4; }
  .s02-entry-form[data-record-type="operating_expense"] .s02-optional { order: 5; }
  .s02-entry-form[data-record-type="operating_expense"] .s02-form-actions { order: 6; width: 100%; }

  .s02-entry-form[data-record-type="long_term_investment"] .s02-field-investmentType { order: 3; }
  .s02-entry-form[data-record-type="long_term_investment"] .s02-field-investmentOrigin,
  .s02-entry-form[data-record-type="long_term_investment"] .s02-field-paybackTreatment { order: 4; }
  .s02-entry-form[data-record-type="long_term_investment"] .s02-field-amount { order: 5; }
  .s02-entry-form[data-record-type="long_term_investment"] .s02-optional { order: 6; }
  .s02-entry-form[data-record-type="long_term_investment"] .s02-form-actions { order: 7; width: 100%; }

  .s02-entry-form[data-record-type="purchase"] .s02-field-dateStart { order: 1; }
  .s02-entry-form[data-record-type="purchase"] .s02-field-category { order: 2; }
  .s02-entry-form[data-record-type="purchase"] .s02-field-name { order: 3; }
  .s02-entry-form[data-record-type="purchase"] .s02-field-quantity-unit { order: 4; }
  .s02-entry-form[data-record-type="purchase"] .s02-field-unitPrice { order: 5; }
  .s02-entry-form[data-record-type="purchase"] .s02-field-amount { order: 6; }
  .s02-entry-form[data-record-type="purchase"] .s02-optional { order: 7; }
  .s02-entry-form[data-record-type="purchase"] .s02-form-actions { order: 8; width: 100%; }
}
