/* AMIN title and tools share one row; the sidebar owns desktop company identity. */
.af-header-refresh {
  display: none;
}
#appView.amin-finance-user #unifiedTopbar {
  display: flex !important;
  position: relative;
  align-items: center;
  gap: 8px;
  height: auto;
  min-height: 64px;
  max-width: 1500px;
  box-sizing: border-box;
  margin: 0 auto;
  padding: 24px 30px 0 !important;
  border: 0 !important;
  background: transparent;
  box-shadow: none;
}
#appView.amin-finance-user #unifiedTopbar::before {
  display: none !important;
}
#appView.amin-finance-user
  #unifiedTopbar
  :is(
    .fm-brand,
    .platform-design-brand,
    .mh-title,
    .mh-department,
    #topUser,
    #dashboardTopSummary
  ) {
  display: none !important;
}
#appView.amin-finance-user #unifiedTopbar .topbar-copy:has(#pageTitle) {
  display: block !important;
  order: 0;
  min-width: 0;
  flex: 1;
  margin: 0;
  margin-inline-end: auto;
}
#appView.amin-finance-user #unifiedTopbar #pageTitle {
  display: block !important;
  font-size: 26px !important;
  line-height: 1.3;
}
#appView.amin-finance-user #unifiedTopbar .wb-reminder-bell {
  order: 1;
  position: relative !important;
  inset: auto !important;
  transform: none !important;
  margin: 0;
}
#appView.amin-finance-user #unifiedTopbar .af-header-refresh {
  display: flex;
  order: 2;
}
#appView.amin-finance-user:not(:has(#mainContent [data-finance-workbench]))
  #unifiedTopbar
  .af-header-refresh {
  display: none !important;
}
#appView.amin-finance-user.finance-unified-user #unifiedTopbar #financeLanguageSwitcher {
  display: block !important;
  order: 3;
  flex: none;
  margin: 0;
}
#appView.amin-finance-user
  #unifiedTopbar
  :is(.af-header-refresh, .wb-reminder-bell, #financeLanguageButton) {
  display: flex !important;
  align-items: center;
  justify-content: center;
  flex: 0 0 44px;
  width: 44px;
  min-width: 44px;
  height: 44px;
  min-height: 44px;
  padding: 9px !important;
  border: 0;
  border-radius: 8px;
  background: transparent;
  box-shadow: none;
  color: var(--archive-navy-900, #10243a);
}
#appView.amin-finance-user #unifiedTopbar .af-header-refresh svg {
  width: 23px;
  height: 23px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.7;
  stroke-linecap: round;
  stroke-linejoin: round;
}
#appView.amin-finance-user #financeLanguageCurrent,
#appView.amin-finance-user [data-af-refresh],
#appView.amin-finance-user.finance-unified-user #mainContent .pf-page .pf-heading,
#appView.amin-finance-user .af-toolbar > span {
  display: none !important;
}
#appView.amin-finance-user .af-toolbar:not(:has([data-af-tab])) {
  display: none;
}
#appView.amin-finance-user #mainContent {
  padding-top: 16px;
}
#appView.amin-finance-user #financeLanguageMenu {
  inset-inline-end: 0;
  inset-inline-start: auto;
  max-width: calc(100vw - 32px);
}
@media (min-width: 761px) {
  #appView.amin-finance-user #unifiedTopbar .mh-brand {
    display: none !important;
  }
}
@media (max-width: 760px) {
  #appView.amin-finance-user #unifiedTopbar {
    flex-wrap: wrap;
    gap: 4px;
    padding: max(8px, env(safe-area-inset-top)) 16px 0 !important;
  }
  #appView.amin-finance-user #unifiedTopbar .mh-brand {
    order: -1;
    flex-basis: 100%;
    margin-bottom: 8px;
  }
  #appView.amin-finance-user #unifiedTopbar #pageTitle {
    font-size: 22px !important;
  }
  #appView.amin-finance-user #unifiedTopbar .topbar-copy:has(#pageTitle) {
    margin: 0;
  }
}
.af-page {
  min-width: 0;
  color: var(--archive-navy-900, #10243a);
  container-type: inline-size;
  container-name: amin-page;
}
.af-registration [hidden] {
  display: none !important;
}
.af-registration input,
.af-registration select,
.af-registration textarea {
  min-width: 0;
  width: 100%;
  box-sizing: border-box;
}
.af-registration footer {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  justify-content: flex-end;
}
.af-registration-type {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 23px;
  padding: 23px 0;
  margin-bottom: 23px;
  border-bottom: 1px solid var(--archive-line, #e5dfd5);
}
.af-registration-type > div {
  display: flex;
  gap: 10px;
}
.af-registration-type button {
  min-width: 119px;
  min-height: 40px;
  border-radius: 7px !important;
}
.af-registration-type small {
  margin-inline-start: auto;
  color: var(--archive-muted, #778391);
}
.af-registration:has([data-af-register-other]:not([hidden])) {
  background: #fff;
  padding: 25px 27px 22px;
  border-radius: 14px;
}
#appView .af-registration .af-other-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 21px 20px;
}
#appView .af-registration .af-other-grid > label {
  min-width: 0;
  grid-column: auto;
  display: grid;
  align-content: start;
  gap: 9px;
}
#appView .af-other-grid label.af-other-purpose {
  grid-column: span 2;
}
#appView .af-other-grid :is(label.af-other-proof, .af-other-account-note) {
  grid-column: 1 / -1;
}
.af-required {
  color: #bc7730;
  font-size: 12px;
}
.af-other-purpose textarea {
  min-height: 84px;
  resize: vertical;
}
.af-other-upload {
  min-width: 0;
  min-height: 93px;
  display: flex;
  align-items: center;
  gap: 17px;
  padding: 15px 19px;
  background: #fdfbf7;
  border: 1px dashed #d5b981;
  border-radius: 9px;
}
.af-other-upload > span {
  flex: 0 0 44px;
  color: #b48b3c;
  text-align: center;
  font-size: 25px;
}
.af-other-upload > div {
  min-width: 0;
  flex: 1;
  overflow-wrap: anywhere;
}
.af-other-upload :is(b, small) {
  display: block;
}
.af-other-upload small {
  color: var(--archive-muted, #778391);
  font-weight: 400;
  margin-top: 6px;
}
.af-other-upload input {
  flex: 0 1 245px;
  max-width: 100%;
}
@container amin-page (max-width: 950px) {
  #appView .af-registration .af-other-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .af-registration-type small {
    flex-basis: 100%;
    margin-inline-start: 0;
  }
}
@media (max-width: 600px) {
  .af-registration:has([data-af-register-other]:not([hidden])) {
    padding: 21px 17px;
  }
  .af-registration-type {
    gap: 14px;
  }
  .af-registration-type button {
    min-width: 93px;
    padding-inline: 12px !important;
  }
  #appView .af-registration .af-other-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px 13px;
  }
  #appView .af-other-grid label.af-other-purpose {
    grid-column: 1 / -1;
  }
  .af-other-upload {
    flex-wrap: wrap;
    padding: 12px;
  }
  .af-other-upload input {
    flex-basis: 100%;
  }
}
.af-toolbar {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 10px;
}
.af-toolbar > span {
  margin-inline-end: auto;
  font-size: 20px;
  font-weight: 700;
}
.af-toolbar .af-shortcuts {
  margin: 0;
}
#appView .af-page .af-filters {
  padding: 8px 0;
  border: 0;
  margin: 8px 0;
}
#appView .af-page .finance-mobile-list {
  display: none !important;
}
#appView .af-page .finance-table-wrap {
  overflow: visible;
}
#appView .af-page .af-table :is(td, th) {
  white-space: normal;
}
.af-receipts td:first-child small,
.af-table .finance-cell-stack > :is(strong, small) {
  display: block;
  overflow-wrap: anywhere;
}
.af-tabs,
.af-shortcuts {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin: 8px 0;
}
.af-tabs button,
.af-shortcuts button {
  border: 1px solid var(--archive-line, #e6e5e2);
  border-radius: 8px;
  background: white;
  min-height: 44px;
  padding: 8px 14px;
}
.af-tabs .is-active,
.af-shortcuts .is-active {
  color: white;
  background: var(--archive-gold-600, #c68b26);
  border-color: var(--archive-gold-600, #c68b26);
}
.af-filters {
  display: flex;
  align-items: end;
  flex-wrap: wrap;
  gap: 10px;
  padding: 8px 0;
  border: 0;
  margin: 8px 0;
  background: white;
}
.af-filters label {
  display: grid;
  gap: 5px;
  font-size: 13px;
  min-width: 110px;
  flex: 1 1 120px;
}
.af-filters .af-search {
  flex: 2 1 190px;
}
.af-filters input,
.af-filters select {
  width: 100%;
  min-width: 0;
  min-height: 44px;
}
.af-filter-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}
.af-table {
  width: 100%;
  table-layout: fixed;
  border-collapse: collapse;
  background: white;
  font-size: 14px;
}
.af-table td,
.af-table th {
  padding: 12px 9px;
  text-align: start;
  border-bottom: 1px solid var(--archive-line, #e6e5e2);
  vertical-align: top;
  overflow-wrap: anywhere;
  white-space: normal;
  min-width: 0;
}
.af-table th {
  color: var(--archive-muted, #71808c);
  font-weight: 600;
}
.af-table .finance-money {
  font-size: 14px;
}
.af-orders th:first-child {
  width: 17%;
}
.af-orders th:nth-child(4) {
  width: 25%;
}
.af-orders th:last-child {
  width: 9%;
}
.af-platform-orders th:first-child {
  width: 12%;
}
.af-platform-orders th:nth-child(2) {
  width: 8%;
}
.af-platform-orders th:nth-child(3) {
  width: 13%;
}
.af-platform-orders th:nth-child(4) {
  width: 6%;
}
.af-platform-orders th:nth-child(5) {
  width: 10%;
}
.af-platform-orders th:nth-child(6) {
  width: 7%;
}
.af-platform-orders th:nth-child(7) {
  width: 10%;
}
.af-platform-orders th:nth-child(8) {
  width: 25%;
}
.af-platform-orders th:last-child {
  width: 9%;
}
.af-linked summary {
  cursor: pointer;
}
.af-linked p {
  margin: 6px 0;
}
.af-progress {
  display: grid;
  gap: 6px;
  font-size: 13px;
}
.af-progress > span,
.af-progress small {
  display: block;
}
.af-progress small {
  color: var(--archive-muted, #71808c);
}
.af-inline {
  white-space: normal;
  overflow-wrap: anywhere;
  padding: 18px;
  background: var(--archive-surface, #faf9f6);
  border: 1px solid var(--archive-line, #e6e5e2);
  border-radius: 9px;
  min-width: 0;
}
.af-inline > header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
}
.af-inline h3 {
  margin: 0;
}
.af-inline-finance {
  margin-top: 16px;
}
.af-inline .fm-fields {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}
.af-inline .fm-fields > div {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) !important;
  min-width: 0;
  margin: 0 !important;
}
.af-inline .fm-fields dd {
  white-space: normal;
  overflow-wrap: anywhere;
}
.af-existing {
  margin-top: 16px;
}
.af-cash-cards {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 10px;
}
.af-cash-cards > button {
  display: grid;
  gap: 10px;
  text-align: start;
  background: white;
  border: 1px solid var(--archive-line, #e6e5e2);
  border-radius: 9px;
  padding: 16px;
}
.af-cash-cards strong {
  font-size: 24px;
  color: var(--archive-gold-600, #c68b26);
}
.af-cash-cards small {
  font-size: 12px;
}
.af-balance-cards {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin: 14px 0;
}
.af-balance-cards > button {
  display: grid;
  gap: 8px;
  min-width: 0;
  padding: 16px;
  text-align: start;
  border: 1px solid var(--archive-line, #e6e5e2);
  border-radius: 9px;
  background: white;
}
.af-balance-cards .finance-money {
  font-size: 25px;
  font-weight: 700;
  color: var(--archive-gold-600, #c68b26);
}
.af-balance-cards small {
  color: var(--archive-muted, #71808c);
  font-size: 12px;
}
.af-workbench-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr);
  gap: 20px;
}
.af-todos .fm-metrics {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  margin-top: 24px;
}
.af-daily > button {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 6px;
  padding: 12px;
  width: 100%;
  text-align: start;
  border: 0;
  border-bottom: 1px solid var(--archive-line, #e6e5e2);
  background: white;
}
.af-page :disabled {
  opacity: 0.7;
  cursor: default;
}
/* The in-app right panel can be narrow even on a desktop-sized screen. */
@container amin-page (max-width: 900px) {
  #appView .af-page .af-table,
  #appView .af-page .af-table tbody {
    display: block;
    width: 100%;
  }
  #appView .af-page .af-table thead {
    display: none;
  }
  #appView .af-page .af-table tr {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px 12px;
    padding: 12px 0;
    border-bottom: 1px solid var(--archive-line, #e6e5e2);
  }
  #appView .af-page .af-table td {
    display: block;
    padding: 0 4px;
    border: 0;
    white-space: normal;
  }
  #appView .af-page .af-table td::before {
    content: attr(data-label);
    display: block;
    color: var(--archive-muted, #71808c);
    font-size: 12px;
    margin-bottom: 4px;
  }
  #appView .af-page .af-table td:first-child,
  #appView .af-page .af-table td:last-child,
  #appView .af-page .af-platform-orders td:nth-child(8) {
    grid-column: 1 / -1;
  }
  #appView .af-page .af-orders td:is(:first-child, :last-child)::before {
    display: none;
  }
  #appView .af-page .af-table tr[data-af-expanded],
  #appView .af-page .af-table tr[data-af-history-detail],
  #appView .af-page .af-table tr[data-af-record-inline] {
    display: block;
    padding: 0;
  }
  .af-inline {
    padding: 12px;
  }
  .af-registration .finance-form-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
  }
}
@media (max-width: 1100px) {
  .af-cash-cards {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}
@media (max-width: 760px) {
  #appView.amin-finance-user.mobile-unified-header .mh-brand {
    display: flex;
  }
  #appView.amin-finance-user.mobile-unified-header :is(.mh-title, .mh-department) {
    display: none;
  }
  #appView.amin-finance-user.mobile-unified-header #unifiedTopbar #financeLanguageSwitcher {
    display: block !important;
  }
  #appView .af-table td {
    padding: 0 4px;
    font-size: 14px;
  }
  #appView .af-orders td:is(:first-child, :last-child)::before {
    display: none;
  }
  .af-toolbar > span {
    font-size: 16px;
  }
  .af-cash-cards {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .af-cash-cards > button {
    padding: 12px;
  }
  .af-workbench-grid {
    display: flex;
    flex-direction: column;
  }
  .af-table,
  .af-table tbody {
    display: block;
    width: 100%;
  }
  .af-table thead {
    display: none;
  }
  .af-table tr {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
    padding: 12px 0;
    border-bottom: 1px solid var(--archive-line, #e6e5e2);
  }
  .af-table td {
    display: block;
    padding: 0 4px;
    border: 0;
  }
  .af-table td::before {
    content: attr(data-label);
    display: block;
    color: var(--archive-muted, #71808c);
    font-size: 12px;
    margin-bottom: 4px;
  }
  .af-table td:first-child,
  .af-table td:last-child,
  .af-orders td:nth-child(4) {
    grid-column: 1/-1;
  }
  .af-platform-orders td:nth-child(4) {
    grid-column: auto;
  }
  .af-platform-orders td:nth-child(8) {
    grid-column: 1/-1;
  }
  .af-table tr[data-af-expanded],
  .af-table tr[data-af-history-detail] {
    display: block;
    padding: 0;
  }
  .af-inline {
    padding: 12px;
  }
  .af-inline .fm-fields {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .af-filters label {
    min-width: 0;
    flex: 1 1 40%;
  }
  .af-filters .af-search,
  .af-filter-actions {
    flex-basis: 100%;
  }
}

/* Approved AMIN payment preview: presentation only; original actions remain. */
#appView.amin-finance-user
  .af-page[data-finance-tab-active='payables']:has([data-af-registration-host]) {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  grid-template-areas: 'entry utility' 'body body' 'note note';
  gap: 20px 16px;
  align-items: center;
}
#appView.amin-finance-user
  .af-page[data-finance-tab-active='payables']:has([data-af-registration-host])
  > .af-tabs {
  grid-area: entry;
  min-width: 0;
  margin: 0;
  gap: 10px;
}
#appView.amin-finance-user
  .af-page[data-finance-tab-active='payables']:has([data-af-registration-host])
  > .af-toolbar {
  grid-area: utility;
  justify-content: flex-end;
  min-width: 0;
  margin: 0;
}
#appView.amin-finance-user
  .af-page[data-finance-tab-active='payables']:has([data-af-registration-host])
  > .finance-content {
  grid-area: body;
  min-width: 0;
}
#appView.amin-finance-user
  .af-page[data-finance-tab-active='payables']:has([data-af-registration-host])
  > .fm-note {
  grid-area: note;
  margin: 0;
}
#appView.amin-finance-user
  .af-page[data-finance-tab-active='payables']
  .af-registration:has([data-af-register-other]:not([hidden])) {
  padding: 24px;
  border: 1px solid var(--archive-line, #e5dfd5);
  border-radius: 12px;
  background: #fff;
}
#appView.amin-finance-user .af-page[data-finance-tab-active='payables'] .af-registration > h3 {
  margin: 0;
  font-size: 22px;
  line-height: 1.35;
}
#appView.amin-finance-user .af-page[data-finance-tab-active='payables'] .af-registration-type {
  gap: 16px;
  margin-bottom: 22px;
  padding: 18px 0;
}
#appView.amin-finance-user .af-page[data-finance-tab-active='payables'] .af-other-grid {
  grid-template-columns: minmax(0, 1.45fr) minmax(0, 1.1fr) minmax(0, 0.85fr) minmax(0, 1.05fr);
  gap: 20px 22px;
}
#appView.amin-finance-user
  .af-page[data-finance-tab-active='payables']
  .af-other-grid
  > label:has([name='otherParty']) {
  order: 1;
}
#appView.amin-finance-user
  .af-page[data-finance-tab-active='payables']
  .af-other-grid
  > label:has([name='otherAmount']) {
  order: 2;
}
#appView.amin-finance-user
  .af-page[data-finance-tab-active='payables']
  .af-other-grid
  > label:has([name='otherCurrency']) {
  order: 3;
}
#appView.amin-finance-user
  .af-page[data-finance-tab-active='payables']
  .af-other-grid
  > label:has([name='otherDate']) {
  order: 4;
}
#appView.amin-finance-user
  .af-page[data-finance-tab-active='payables']
  .af-other-grid
  > label:has([name='otherMethod']) {
  order: 5;
}
#appView.amin-finance-user
  .af-page[data-finance-tab-active='payables']
  .af-other-grid
  > label:has([name='otherFundAccountId']) {
  order: 6;
}
#appView.amin-finance-user
  .af-page[data-finance-tab-active='payables']
  .af-other-grid
  > .af-other-purpose {
  order: 7;
  grid-column: 1 / -1;
}
#appView.amin-finance-user
  .af-page[data-finance-tab-active='payables']
  .af-other-grid
  > .af-other-proof {
  order: 8;
}
#appView.amin-finance-user
  .af-page[data-finance-tab-active='payables']
  .af-other-grid
  > .af-other-account-note {
  order: 9;
}
#appView.amin-finance-user
  .af-page[data-finance-tab-active='payables']
  .af-other-grid
  :is(input, select) {
  height: 46px;
  font-size: 16px;
}
#appView.amin-finance-user
  .af-page[data-finance-tab-active='payables']
  .af-other-grid
  [name='otherDate']
  ~ button {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  width: 100%;
  min-height: 46px;
  box-sizing: border-box;
  padding: 10px 12px;
  border: 1px solid var(--archive-line, #e5dfd5);
  border-radius: 8px;
  background: #fff;
  color: var(--archive-navy-900, #10243a);
  font: inherit;
  font-size: 16px;
  line-height: 1.4;
  cursor: pointer;
}
#appView.amin-finance-user .af-page[data-finance-tab-active='payables'] .af-other-purpose textarea {
  min-height: 76px;
  font-size: 16px;
}
#appView.amin-finance-user .af-page[data-finance-tab-active='payables'] .af-registration footer {
  margin-top: 22px;
  padding-top: 16px;
  gap: 12px;
  border-top: 1px solid var(--archive-line, #e5dfd5);
}
#appView.amin-finance-user
  .af-page[data-finance-tab-active='payables']
  .af-registration
  footer
  button {
  min-height: 44px;
  padding: 10px 20px;
  font-size: 16px;
}

/* Shared leave guard, styled only for AMIN; no change to discard/keep logic. */
#appView.amin-finance-user #financeMobileDiscard {
  display: grid;
  place-items: center;
  padding: 16px;
  height: var(--fm-viewport-height, 100dvh);
  max-height: var(--fm-viewport-height, 100dvh);
  background: rgba(16, 36, 58, 0.28);
}
#appView.amin-finance-user #financeMobileDiscard > .fm-discard {
  display: grid;
  grid-template-rows: auto auto auto;
  gap: 14px;
  width: min(440px, 100%);
  box-sizing: border-box;
  max-height: calc(var(--fm-viewport-height, 100dvh) - 32px);
  padding: 24px;
  border: 1px solid var(--archive-line, #e5dfd5);
  border-radius: 12px;
  background: #fff;
  color: var(--archive-navy-900, #10243a);
  box-shadow: 0 14px 46px rgba(16, 36, 58, 0.18);
  overflow: auto;
}
#appView.amin-finance-user #financeMobileDiscard > .fm-discard > h2 {
  margin: 0;
  font-size: 22px;
  line-height: 1.4;
  text-align: center;
}
#appView.amin-finance-user #financeMobileDiscard > .fm-discard > p {
  margin: 0;
  font-size: 16px;
  line-height: 1.6;
  text-align: center;
}
#appView.amin-finance-user #financeMobileDiscard > .fm-discard > footer {
  position: static;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 12px;
  margin: 6px 0 0;
  padding: 0;
  border: 0;
  background: transparent;
}
#appView.amin-finance-user #financeMobileDiscard [data-fm-discard] {
  min-width: 0;
  min-height: 44px;
  padding: 10px 12px;
  border: 1px solid var(--archive-line, #d7d4cc);
  border-radius: 8px;
  color: var(--archive-navy-900, #10243a);
  background: #fff;
  font: inherit;
  font-size: 16px;
  font-weight: 650;
  line-height: 1.4;
  white-space: normal;
  overflow-wrap: break-word;
  cursor: pointer;
}
#appView.amin-finance-user #financeMobileDiscard [data-fm-discard='stay'] {
  color: #fff;
  background: var(--archive-gold-600, #c68b26);
  border-color: var(--archive-gold-600, #c68b26);
}
#appView.amin-finance-user #financeMobileDiscard [data-fm-discard]:focus-visible {
  outline: 2px solid var(--archive-gold-600, #c68b26);
  outline-offset: 3px;
}
@container amin-page (max-width: 950px) {
  #appView.amin-finance-user .af-page[data-finance-tab-active='payables'] .af-other-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 600px) {
  #appView.amin-finance-user
    .af-page[data-finance-tab-active='payables']:has([data-af-registration-host]) {
    grid-template-columns: minmax(0, 1fr);
    grid-template-areas: 'entry' 'utility' 'body' 'note';
    gap: 10px;
  }
  #appView.amin-finance-user
    .af-page[data-finance-tab-active='payables']
    .af-registration:has([data-af-register-other]:not([hidden])) {
    padding: 18px 16px;
  }
  #appView.amin-finance-user .af-page[data-finance-tab-active='payables'] .af-registration-type {
    gap: 10px;
    margin-bottom: 18px;
    padding: 14px 0;
  }
  #appView.amin-finance-user
    .af-page[data-finance-tab-active='payables']
    .af-registration
    footer
    button {
    flex: 1 1 120px;
  }
  #appView.amin-finance-user #financeMobileDiscard > .fm-discard > footer {
    grid-template-columns: minmax(0, 1fr);
  }
}
@media (max-width: 420px) {
  #appView.amin-finance-user .af-page[data-finance-tab-active='payables'] .af-other-grid {
    grid-template-columns: minmax(0, 1fr);
    gap: 16px;
  }
}
/* AMIN-owned settlement bodies. Shared toolbar dimensions are integrated separately. */
#appView.amin-finance-user .af-direct-tour,
#appView.amin-finance-user .af-statement {
  margin-block: 16px;
  padding: 20px;
  border: 1px solid #e5dfd5;
  border-radius: 12px;
  background: white;
}
/* To B / To C cards follow the Chenchen card: header, state row, country panel. */
#appView.amin-finance-user .af-direct-summary,
#appView.amin-finance-user .af-direct-state {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 20px;
}
#appView.amin-finance-user .af-direct-summary {
  padding-block-end: 16px;
  border-block-end: 1px solid #e6ebf0;
}
#appView.amin-finance-user .af-direct-state {
  padding-block: 16px;
}
#appView.amin-finance-user .af-direct-state > .af-direct-actions {
  margin-inline-start: auto;
}
#appView.amin-finance-user .af-direct-summary b,
#appView.amin-finance-user .af-direct-state b {
  font-weight: 650;
}
/* Amount labels stay on one line with their value, like the Chenchen header. */
#appView.amin-finance-user .af-direct-summary .finance-money-list,
#appView.amin-finance-user .af-country-summary .finance-money-list {
  display: inline-flex;
  flex-wrap: wrap;
  gap: 4px 8px;
  vertical-align: baseline;
}
#appView.amin-finance-user .af-country-summary {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  margin-block: 0 12px;
}
#appView.amin-finance-user .af-country-summary > section {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 16px;
  padding: 12px;
  border-radius: 8px;
  background: #f4f6f9;
}
#appView.amin-finance-user .af-country-summary h4 {
  margin: 0;
  inline-size: 100%;
}
#appView.amin-finance-user .af-country-summary p {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 16px;
  margin: 0;
}
#appView.amin-finance-user .af-direct-note {
  margin: 0 0 12px;
  color: #8b6629;
}
#appView.amin-finance-user .af-settlement-row-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
}
#appView.amin-finance-user .af-batch-host > td {
  padding: 0 12px 16px;
}
#appView.amin-finance-user .af-batch-host .af-settlement-confirm {
  display: flex;
  flex-wrap: wrap;
  align-items: end;
  gap: 12px;
  padding: 16px;
  border-radius: 8px;
  background: #fbf6ec;
}
#appView.amin-finance-user .af-batch-host [data-as-batch-summary] {
  flex-basis: 100%;
  margin: 0;
}
#appView.amin-finance-user .af-batch-host .af-settlement-confirm label {
  flex: 0 1 180px;
}
#appView.amin-finance-user [data-af-page] {
  position: relative;
}
#appView.amin-finance-user .af-company-menu {
  position: absolute;
  z-index: 30;
  min-inline-size: 220px;
  max-block-size: 320px;
  overflow-y: auto;
  padding: 6px;
  border: 1px solid #dbe2ea;
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 8px 24px rgb(16 24 40 / 12%);
}
#appView.amin-finance-user .af-company-menu button {
  display: block;
  inline-size: 100%;
  min-block-size: 40px;
  padding: 8px 12px;
  border: 0;
  border-radius: 6px;
  text-align: start;
  background: #fff;
  color: #263545;
}
#appView.amin-finance-user .af-company-menu button:hover {
  background: #f3f5f8;
}
#appView.amin-finance-user .af-company-menu [data-as-company-add] {
  border-block-start: 1px solid #e4e8ee;
  color: #8b6629;
}
#appView.amin-finance-user .af-company-menu p {
  margin: 8px 12px;
  color: #8b6629;
}
#appView.amin-finance-user .af-cash-extra {
  display: contents;
}
#appView.amin-finance-user .af-direct-actions,
#appView.amin-finance-user .af-settlement-cash {
  display: flex;
  flex-wrap: wrap;
  align-items: end;
  gap: 12px;
}
#appView.amin-finance-user .af-settlement-cash {
  margin-block-start: 16px;
}
#appView.amin-finance-user .af-settlement-cash label,
#appView.amin-finance-user .af-settlement-confirm label {
  display: grid;
  gap: 6px;
  min-inline-size: 0;
}
#appView.amin-finance-user .af-settlement-cash input,
#appView.amin-finance-user .af-settlement-cash select {
  inline-size: 160px;
  block-size: 44px;
}
#appView.amin-finance-user .af-settlement-confirm {
  display: grid;
  gap: 8px;
  margin-block-start: 12px;
}
#appView.amin-finance-user .af-settlement-confirm input,
#appView.amin-finance-user .af-settlement-confirm select {
  inline-size: 100%;
  min-inline-size: 0;
  block-size: 40px;
}
#appView.amin-finance-user .af-settlement-cash > p {
  flex-basis: 100%;
}
@media (max-width: 600px) {
  #appView.amin-finance-user .af-country-summary {
    grid-template-columns: minmax(0, 1fr);
  }
  #appView.amin-finance-user .af-direct-tour,
  #appView.amin-finance-user .af-statement {
    padding: 12px;
  }
  #appView.amin-finance-user .af-settlement-cash > label {
    flex: 1 1 120px;
  }
  #appView.amin-finance-user .af-settlement-cash input,
  #appView.amin-finance-user .af-settlement-cash select {
    inline-size: 100%;
  }
}
/* Payment statement lookup: one list row per statement, details open in place. */
#appView.amin-finance-user .af-table-scroll {
  max-inline-size: 100%;
  overflow-x: auto;
}
#appView.amin-finance-user .af-statement-list tr.is-open {
  background: var(--archive-gold-100);
}
/* 付款单工作区链接：古胡深金（白底金字对比度足够）。 */
#appView.amin-finance-user .af-statement-results .af-link {
  color: var(--archive-gold-700);
}
#appView.amin-finance-user .af-link {
  padding: 0;
  border: 0;
  background: none;
  color: #8b6629;
  font: inherit;
  text-decoration: underline;
  cursor: pointer;
}
#appView.amin-finance-user .af-statement[hidden] {
  display: none;
}
#appView.amin-finance-user .af-statement-head {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 12px 20px;
}
#appView.amin-finance-user .af-statement-head > button {
  margin-inline-start: auto;
}
/* A team's recorded subtotal starts on its own line under the team number. */
#appView.amin-finance-user [data-as-team-registered] {
  display: block;
  margin-block-start: 2px;
}
