/* Trang Doanh thu thư ký (SecretaryRevenueView) */
.secretary-page { --secretary-border: var(--tts-vien, #e4e9f0); --secretary-ink: var(--tts-muc, #23334e); --secretary-muted: var(--tts-muc-nhat, #64748b); --secretary-accent: var(--rv-head, #2ba3c7); padding: 16px; color: var(--secretary-ink); background: #f5f6fa; border-radius: 10px; }
/* Bảng mẫu thư ký dùng tông info, đường kẻ trắng và chữ thu/trả rõ hơn bảng doanh thu chung.
   Scope theo cả hai class để không bị .rv-page nạp sau ghi đè và không đổi màu các trang khác. */
.rv-page.secretary-page { --rv-head: #17a2b8; --rv-head-ink: #fff; --rv-line: #fff; --rv-band: #eaf1fb; --rv-ink: #344155; --rv-thu: #ff2525; --rv-tra: #3524c9; background: #f4f6f9; }
.secretary-sr-only { position: absolute; width: 1px; height: 1px; padding: 0; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; }
.secretary-toolbar { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin-bottom: 12px; padding: 12px; border: 1px solid var(--secretary-border); border-radius: 12px; background: #fff; }
.secretary-toolbar label { margin: 0; color: var(--secretary-muted); font-size: 12px; font-weight: 600; }
.secretary-toolbar input { min-height: 36px; padding: 6px 10px; border: 1px solid var(--secretary-border); border-radius: 8px; font-size: 13px; }
.secretary-toolbar .btn { min-height: 36px; font-size: 13px; }
.secretary-quick { display: inline-flex; flex-wrap: wrap; gap: 6px; }
.secretary-panel { position: relative; overflow: visible; }
/* Phủ lên bảng trong khi tải lại, không thêm hàng làm thay đổi vị trí bảng/tổng. */
.secretary-loading-overlay { position: absolute; inset: 0; z-index: 8; display: flex; align-items: flex-start; justify-content: center; padding: 16px; border-radius: 10px; background: rgb(244 246 249 / 72%); pointer-events: none; }
.secretary-loading-overlay > span { position: sticky; top: 16px; padding: 10px 16px; border: 1px solid var(--secretary-border); border-radius: 8px; color: var(--secretary-ink); background: #fff; box-shadow: 0 2px 10px #23334e14; font-size: 14px; font-weight: 600; line-height: 1.5; text-align: center; }
.secretary-loading-overlay small { display: block; margin-top: 2px; font-size: 12px; font-weight: 400; }
.secretary-filter .rv-date input[type="date"] { width: 100%; min-width: 0; padding-right: 10px; }
.secretary-filter .rv-button:disabled { opacity: .6; cursor: wait; }
.secretary-overview-table .secretary-number { text-align: right; }
.secretary-overview-table .secretary-win { color: var(--rv-head); }
.secretary-page .secretary-overview-table thead th { background: var(--rv-head); color: #fff; border-color: #fff; }
.secretary-page .secretary-overview-table thead tr:last-child th { text-transform: none; }
.secretary-page .secretary-overview-table tbody td:not(.mn-gap) { border-color: #fff; }
.secretary-page .secretary-overview-table .mn-gap { background: transparent; border: 0; }
.secretary-page .secretary-overview-table .secretary-final.rv-thu { color: var(--rv-thu); }
.secretary-page .secretary-overview-table .secretary-final.rv-tra { color: var(--rv-tra); }
.secretary-page .secretary-overview-table .secretary-final:not(.rv-thu):not(.rv-tra) { color: var(--rv-ink); }
.secretary-overview-table .mn-member { width: 128px; min-width: 128px; max-width: 128px; }
.secretary-overview-table .secretary-name { max-width: 100%; white-space: normal; overflow-wrap: anywhere; font: inherit; color: var(--rv-head); }
.secretary-overview-table .secretary-name:disabled { opacity: .65; cursor: wait; }
.secretary-overview-table tfoot { font-weight: 700; }
.secretary-table-scroll:focus-visible { outline: 2px solid var(--rv-head); outline-offset: 2px; }
.secretary-state { margin: 0; padding: 24px; color: var(--secretary-muted); text-align: center; }
.secretary-state.is-error { color: #b42318; }
.secretary-table-scroll { overflow-x: auto; }
.secretary-table { width: 100%; min-width: 1100px; border-collapse: collapse; font-size: 12px; font-variant-numeric: tabular-nums; }
.secretary-table th, .secretary-table td { padding: 8px 10px; border: 1px solid var(--secretary-border); white-space: nowrap; }
.secretary-table thead th { color: var(--secretary-ink); background: #edf2f9; font-size: 11px; font-weight: 700; text-align: center; text-transform: uppercase; }
.secretary-table tfoot th, .secretary-table tfoot td { background: #f8fafc; font-weight: 700; }
.secretary-number { text-align: right; }
.secretary-final { font-weight: 700; }
.secretary-page .is-negative { color: #c0362c; }
.secretary-page .is-positive { color: #146c43; }
.secretary-page .secretary-summary { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px 20px; margin: 16px 0 4px; padding: 0; font-family: inherit; font-size: 13px; font-weight: 400; }
.secretary-summary dl { min-width: 0; margin: 0; }
.secretary-page .secretary-summary dl > div { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); align-items: baseline; gap: 4px 12px; line-height: 1.65; }
.secretary-page .secretary-summary dt { min-width: 0; color: #526580; font-size: 12px; font-weight: 400; }
.secretary-page .secretary-summary dd { min-width: 0; margin: 0; color: var(--tts-navy, #22356b); font-family: inherit; font-size: 13px; font-weight: 600; text-align: right; font-variant-numeric: tabular-nums; overflow-wrap: anywhere; }
.secretary-page .secretary-summary .secretary-summary-settle { margin-top: 6px; padding-top: 7px; padding-bottom: 7px; border-top: 1px solid #e0e7f0; }
.secretary-page .secretary-summary .secretary-summary-settle dt { font-size: 12px; font-weight: 500; }
.secretary-page .secretary-summary .secretary-summary-settle dd { font-size: 17px; font-weight: 700; line-height: 1.4; }
.secretary-page .secretary-summary-settle.rv-thu dt > span,
.secretary-page .secretary-summary-settle.rv-thu dd { color: var(--rv-thu, #e53935); }
.secretary-page .secretary-summary-settle.rv-tra dt > span,
.secretary-page .secretary-summary-settle.rv-tra dd { color: var(--rv-tra, #2c2a8f); }
@media (max-width: 767px) {
  .secretary-page { padding: 12px; }
  .secretary-page .secretary-summary { grid-template-columns: repeat(2, minmax(0, 1fr)); font-size: 12px; }
  .secretary-toolbar input[type="search"] { flex: 1 1 100%; }
}

/* Tên danh bạ mở hộp thoại chi tiết */
.secretary-name { padding: 0; border: 0; background: none; color: var(--secretary-accent); font-weight: 600; text-align: left; cursor: pointer; }
.secretary-name:hover, .secretary-name:focus-visible { text-decoration: underline; }

/* Hộp thoại Doanh thu thư ký (ModalSecretaryRevenueView) */
.secretary-modal { --secretary-border: var(--tts-vien, #e4e9f0); --secretary-ink: var(--tts-muc, #23334e); --secretary-muted: var(--tts-muc-nhat, #64748b); --secretary-accent: var(--tts-xanh, #146db1); color: var(--secretary-ink); }
.secretary-modal .modal-dialog { width: calc(100% - 32px); max-width: 960px !important; margin: 20px auto; }
.secretary-tabs { display: flex; gap: 4px; margin-bottom: 12px; border-bottom: 1px solid var(--secretary-border); }
.secretary-tab { margin-bottom: -1px; padding: 8px 14px; border: 1px solid transparent; border-radius: 8px 8px 0 0; background: none; color: var(--secretary-muted); font-size: 12px; font-weight: 700; text-transform: uppercase; letter-spacing: .03em; }
.secretary-tab.is-active { border-color: var(--secretary-border); border-bottom-color: #fff; background: #fff; color: var(--secretary-accent); }
.secretary-compare { display: grid; gap: 12px; }
.secretary-compare .secretary-table { min-width: 520px; }
.secretary-compare tbody th, .secretary-compare tfoot th { font-weight: 600; text-align: left; }
.secretary-compare-percent { min-width: 0 !important; }
.secretary-compare-title { margin: 0 0 6px; color: var(--secretary-accent); font-size: 13px; font-weight: 700; text-transform: uppercase; }
.secretary-modal .is-diff { background: #fff4d6; font-weight: 700; }
.secretary-note { margin: 0; color: var(--secretary-muted); font-size: 12px; }
.secretary-report { display: grid; gap: 10px; justify-items: start; }
.secretary-report-text { width: 100%; max-height: 60vh; margin: 0; padding: 12px; overflow: auto; border: 1px solid var(--secretary-border); border-radius: 8px; background: #f8fafc; font-size: 12px; line-height: 1.6; white-space: pre-wrap; font-variant-numeric: tabular-nums; }
.secretary-modal .modal-footer .btn, .secretary-report .btn { min-width: 104px; }
.secretary-check { display: inline-flex; align-items: center; gap: 6px; margin: 0; font-size: 13px; cursor: pointer; }
.secretary-checks { display: flex; flex-wrap: wrap; gap: 8px 16px; }
.secretary-modal .modal-body { padding: 14px 18px; }
.secretary-modal .secretary-tabs { display: inline-flex; gap: 4px; padding: 4px; margin-bottom: 14px; border: 1px solid #dce6f1; border-radius: 9px; background: #edf2f8; }
.secretary-modal .secretary-tab { margin: 0; padding: 8px 14px; border: 0; border-radius: 6px; text-transform: none; letter-spacing: 0; }
.secretary-modal .secretary-tab.is-active { color: #fff; background: var(--tts-xanh, #146db1); }
.secretary-rebate-strip { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 22px; padding: 10px 12px; border: 1px solid #dce6f1; border-radius: 9px; background: #f4f8fd; color: #526580; font-size: 12px; }
.secretary-rebate-strip strong { margin-left: 6px; color: var(--tts-navy, #22356b); font-size: 14px; }
.secretary-region-tabs { display: flex; gap: 5px; }
.secretary-region-tabs button { flex: 1; min-height: 36px; padding: 6px 10px; border: 1px solid #dce6f1; border-radius: 7px; background: #f8fafc; color: #526580; font-size: 12px; font-weight: 600; }
.secretary-region-tabs button[aria-pressed="true"] { background: #e3eefb; border-color: #a8c9eb; color: var(--tts-xanh, #146db1); }
.secretary-modal .secretary-compare-title { display: none; }
.secretary-modal .secretary-table { min-width: 560px; font-size: 12px; }
.secretary-modal .secretary-table :is(th, td) { padding: 7px 10px; }
#app .secretary-modal .secretary-table td.is-diff { background: #fff4d6 !important; }
.secretary-modal .secretary-table-scroll { border: 1px solid #dce5ef; border-radius: 9px; overflow: auto; max-height: 48vh; }
#app .secretary-modal .secretary-table { clip-path: none; border-radius: 0; }
.secretary-modal .secretary-table tfoot :is(th, td) { color: #526580; background: #edf3fa; }
.secretary-modal .secretary-report-text { max-height: 46vh; font-family: inherit; font-size: 13px; line-height: 1.7; }
@media (max-width: 575px) {
  .secretary-modal .modal-dialog { width: calc(100% - 16px); margin: 8px auto; }
  .secretary-modal .secretary-tabs { display: flex; }
  .secretary-modal .secretary-tab { flex: 1; padding-inline: 8px; }
}

@media (max-width: 1100px) {
  .money-page.secretary-page .secretary-summary { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 8px; }
}
@media (max-width: 767px) {
  .money-page.secretary-page .secretary-summary > dl { padding: 10px; border-radius: 8px; }
  .money-page.secretary-page .secretary-summary > dl::before { display: none; }
  .secretary-page .secretary-summary dl > div { grid-template-columns: minmax(0,1fr); gap: 0; }
  .secretary-page .secretary-summary dd { font-size: 13px; }
  .secretary-page .secretary-summary .secretary-summary-settle dd { font-size: 16px; }
}
