/* V2 visual layer for Finance screens that still use their legacy templates. */
.finance-settings-form-v2 { position: relative; width: 100%; height: 100%; min-width: 0; min-height: 0; overflow: auto; background: var(--maya-v2-bg); }
.finance-settings-form-v2 > .app-content-inner { top: 0 !important; right: 0; bottom: 0; left: 0; }
.finance-settings-form-v2 .container { width: min(100%, 1180px); max-width: 1180px; padding: 18px 20px; }
.finance-settings-form-v2 .panel { overflow: hidden; border: 1px solid #e5e9f0; border-radius: 12px; background: #fff; box-shadow: 0 8px 24px rgba(15, 23, 42, .06); }
.finance-settings-form-v2 .panel-heading { padding: 14px 18px; border-color: #edf0f5; color: #293852; background: #fff; font-weight: 700; }
.finance-settings-form-v2 .panel-body { padding: 20px; }
.finance-settings-form-v2 .form-control,
.finance-settings-form-v2 .ui-select-match > .btn { min-height: 36px; border: 1px solid #dfe4ed; border-radius: 7px; box-shadow: none; }
.finance-settings-form-v2 .form-control:focus,
.finance-settings-form-v2 .ui-select-match > .btn:focus { border-color: #a99cff; box-shadow: 0 0 0 3px rgba(102, 84, 221, .1); }
.finance-settings-form-v2 .form-horizontal .control-label { padding-top: 8px; color: #687589; font-size: 11px; font-weight: 700; text-align: left; }
.finance-settings-form-v2 .form-horizontal .form-group { margin-bottom: 16px; }
.finance-settings-form-v2 .form-horizontal .form-group.no-margin.m-b-n.p-v.text-center.b-t { display: flex; justify-content: center; gap: 8px; margin: 20px -20px 0 !important; padding: 14px 20px !important; border-top: 1px solid #edf0f5; }
.finance-settings-form-v2 .form-horizontal .form-group.no-margin.m-b-n.p-v.text-center.b-t .btn { min-width: 88px; min-height: 36px; border-radius: 7px; }
.finance-settings-form-v2 .form-horizontal .form-group.no-margin.m-b-n.p-v.text-center.b-t .btn-info { border-color: #6654dd; color: #fff; background: #6654dd; }
.finance-division-v2-page .maya-v2-form { max-width: 860px; margin: 0 auto; }
.finance-division-v2-page .maya-v2-form .form-group { display: grid; grid-template-columns: 20% minmax(0, 1fr); column-gap: 12px; row-gap: 24px; align-items: start; margin: 0 0 24px; }
.finance-division-v2-page .maya-v2-form .form-group > label.col-sm-3,
.finance-division-v2-page .maya-v2-form .form-group > .col-sm-7 { float: none; width: 100% !important; padding-right: 0; padding-left: 0; }
.finance-division-v2-page .maya-v2-form .form-group > label.col-sm-3 { float: none; width: 100% !important; padding-right: 0; padding-left: 0; white-space: nowrap; }
.finance-division-v2-page .maya-v2-form textarea { resize: vertical; }
.finance-settings-v2-actions { display: inline-flex; gap: 6px; }
.finance-settings-v2-actions button { width: 30px; height: 30px; border: 0; border-radius: 6px; color: #69778c; background: transparent; }
.finance-settings-v2-actions button:hover { color: #5544c5; background: #f1efff; }
.finance-settings-v2-number { display: block; text-align: right; }
.finance-account-tree-v2 .app-content-inner { background: #f5f7fb; }
.finance-account-tree-v2 .app-content-inner > .p-v-sm.bg-white.box-shadow { display: flex; align-items: center; min-height: 54px; padding: 9px 16px; border-bottom: 1px solid #e5e9f0; background: #fff; box-shadow: none; }
.finance-account-tree-v2 .app-content-inner > .p-v-sm h3 { min-width: 0 !important; margin-right: 12px; color: #293852; font-size: 14px; font-weight: 700; }
.finance-account-tree-v2 .content-left { border-right: 1px solid #e5e9f0; background: #f5f7fb; }
.finance-account-tree-v2 .content-left .p,
.finance-account-tree-v2 .content-left .p-v-sm { color: #475569; font-size: 12px; font-weight: 700; }
.finance-account-tree-v2 .content-main { background: #fff; }
.finance-account-tree-v2 .table-fixed-body { background: #fff; }
.finance-account-tree-v2 table.table { margin-bottom: 0; border-color: #e5e9f0; color: #475569; }
.finance-account-tree-v2 table.table > thead > tr > th { background: #f8f9fc; color: #687589; }
.maya-v2-finance-surface { display: contents; }
.maya-v2-finance-surface .app-content-inner { color: #475569; background: #f5f7fb; }
.maya-v2-finance-surface .app-content-inner > div:first-child.p-v-sm,
.maya-v2-finance-surface .app-content-inner > .p-v-sm.bg-white.box-shadow {
  min-height: 52px;
  padding: 9px 16px;
  border-bottom: 1px solid #e5e9f0;
  background: #fff;
  box-shadow: none;
}
.maya-v2-finance-surface .app-content-inner > div:first-child h3,
.maya-v2-finance-surface .app-content-inner > .p-v-sm.bg-white.box-shadow h3 {
  color: #293852;
  font-size: 14px;
  font-weight: 700;
}
.maya-v2-finance-surface .content-left .bg-light,
.maya-v2-finance-surface .content-left.bg-light { background: #f5f7fb; }
.maya-v2-finance-surface .content-left { border-right: 1px solid #e5e9f0; }
.maya-v2-finance-surface .content-left .p,
.maya-v2-finance-surface .content-left .p-v-sm { color: #475569; font-size: 12px; font-weight: 700; }
.maya-v2-finance-surface .list-group-item.bg-light { border-color: #e9edf3; background: transparent; }
.maya-v2-finance-surface .table-responsive { max-width: 100%; overflow: auto; background: #fff; }
.maya-v2-finance-surface table.table {
  margin-bottom: 0;
  border-color: #e5e9f0;
  color: #475569;
  background: #fff;
}
.maya-v2-finance-surface table.table > thead > tr > th {
  padding: 11px 12px;
  border-top: 0;
  border-bottom: 1px solid #e5e9f0;
  color: #8190a4;
  background: #f7f8fb;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .04em;
  text-transform: uppercase;
  white-space: nowrap;
}
.maya-v2-finance-surface table.table > tbody > tr > td {
  padding: 10px 12px;
  border-top: 1px solid #edf0f5;
  color: #475569;
  vertical-align: middle;
}
.maya-v2-finance-surface table.table-hover > tbody > tr:hover { background: #fafbfe; }
.maya-v2-finance-surface .form-control {
  min-height: 36px;
  border-color: #dfe4ed;
  border-radius: 7px;
  color: #475569;
  box-shadow: none;
  font-size: 12px;
}
.maya-v2-finance-surface .form-control:focus {
  border-color: #a99cff;
  box-shadow: 0 0 0 3px rgba(102, 84, 221, .1);
}
.maya-v2-finance-surface .form-group > label,
.maya-v2-finance-surface .form-horizontal .control-label {
  color: #687589;
  font-size: 11px;
  font-weight: 600;
}
.maya-v2-finance-surface .btn-default,
.maya-v2-finance-surface .btn-addon.btn-default {
  border-color: #e1e6ef;
  border-radius: 7px;
  color: #596577;
  background: #fff;
}
.maya-v2-finance-surface .btn-default:hover { border-color: #d9d2ff; color: #5544c5; background: #f8f7ff; }
.maya-v2-finance-surface .btn-success,
.maya-v2-finance-surface .btn-info {
  border-color: #6654dd;
  border-radius: 7px;
  color: #fff;
  background: #6654dd;
}
.maya-v2-finance-surface .nav.nav-sm.nav-pills { display: flex; align-items: center; gap: 4px; }
.maya-v2-finance-surface .nav.nav-sm.nav-pills > li { float: none; }
.maya-v2-finance-surface .nav.nav-sm.nav-pills > li > a { border-radius: 6px; color: #687589; }
.maya-v2-finance-surface .nav.nav-sm.nav-pills > li > a:hover { color: #5544c5; background: #f3f0ff; }
.maya-v2-finance-surface .nav.pg > li > a { min-height: 30px; padding: 5px 8px; }
.maya-v2-finance-surface .panel,
.maya-v2-finance-surface .panel-default { border-color: #e5e9f0; border-radius: 9px; background: #fff; box-shadow: 0 2px 8px rgba(15, 23, 42, .04); }
.maya-v2-finance-surface .panel-heading { border-color: #edf0f5; border-radius: 9px 9px 0 0; color: #293852; background: #f8f9fc; }
.maya-v2-finance-surface .pagination > li > a,
.maya-v2-finance-surface .pagination > li > span { border-color: #e5e9f0; color: #596577; }
.maya-v2-finance-surface .pagination > .active > a,
.maya-v2-finance-surface .pagination > .active > span { border-color: #6654dd; color: #fff; background: #6654dd; }
.finance-request-list-v2 .maya-v2-list-table-scroll table { min-width: 980px; }
.finance-request-layout-v2 { display: flex; flex-direction: column; width: 100%; height: 100%; min-width: 0; min-height: 0; overflow: hidden; background: #fff; }
.finance-request-tabs-v2 { position: relative; z-index: 3; flex: 0 0 46px; display: flex; align-items: stretch; gap: 4px; min-width: 0; overflow-x: auto; padding: 0 16px; border-bottom: 1px solid #e5e9f0; background: #fff; scrollbar-width: thin; }
.finance-request-tabs-v2 > a { display: inline-flex; flex: 0 0 auto; align-items: center; padding: 0 14px; border-bottom: 2px solid transparent; color: #687589; font-size: 13px; font-weight: 500; text-decoration: none; white-space: nowrap; }
.finance-request-tabs-v2 > a:hover,
.finance-request-tabs-v2 > a.active { border-bottom-color: #6654dd; color: #5544c5; background: #faf9ff; }
.finance-request-outlet-v2 { flex: 1 1 0; display: flex; flex-direction: column; width: 100%; min-width: 0; min-height: 0; overflow: hidden; }
.finance-request-outlet-v2 > [ui-view] { flex: 1 1 0; display: flex; flex-direction: column; width: 100%; min-width: 0; min-height: 0; overflow: hidden; }
.finance-request-outlet-v2 .maya-v2-list-page { flex: 1 1 0; width: 100% !important; max-width: none; min-width: 0; min-height: 0; }
.finance-request-cell-stack { display: flex; flex-direction: column; gap: 3px; }
.finance-request-cell-stack small { color: #94a0b2; }
.finance-request-status { display: inline-flex; padding: 4px 9px; border-radius: 999px; color: #936515; background: #fff4d6; font-size: 11px; font-weight: 700; }
.finance-request-status.is-complete { color: #258360; background: #e2f6ed; }
.finance-request-actions { display: inline-flex; gap: 6px; }
.finance-request-actions button { width: 30px; height: 30px; border: 1px solid #e5e9f0; border-radius: 6px; color: #687589; background: #fff; }
.finance-v2-form-page { width: 100%; height: 100%; min-width: 0; min-height: 0; overflow: auto; padding: 18px 20px 28px; background: #f5f7fb; }
.finance-v2-form-page > .container { width: min(100%, 1180px); max-width: 1180px; margin: 0 auto; padding: 0; }
.finance-v2-form-page > .container > .col-md-10 { float: none; width: 100%; margin: 0; padding: 0; }
.finance-v2-form-page .panel { overflow: hidden; margin: 0; border: 1px solid #e5e9f0; border-radius: 12px; background: #fff; box-shadow: 0 8px 24px rgba(15,23,42,.06); }
.finance-v2-form-page .panel-heading { padding: 16px 20px; border-color: #e9edf3; color: #293852; background: #fff; text-align: left; }
.finance-v2-form-page .panel-heading h3 { font-size: 18px; font-weight: 700; }
.finance-v2-form-page .panel-body { padding: 24px; }
.finance-v2-form-page .form-horizontal .form-group:not(.p-h) { display: grid; grid-template-columns: minmax(130px, 22%) minmax(0, 1fr); column-gap: 18px; row-gap: 8px; align-items: start; margin: 0 0 18px; }
.finance-v2-form-page .form-horizontal .form-group:not(.p-h) > label[class*="col-"] { float: none; width: auto; padding: 9px 0 0; color: #596577; font-weight: 600; text-align: left; }
.finance-v2-form-page .form-horizontal .form-group:not(.p-h) > div[class*="col-"] { float: none; width: auto; min-width: 0; padding: 0; }
.finance-v2-form-page .form-horizontal .form-control,
.finance-v2-form-page .form-horizontal .ui-select-match > .btn { min-height: 40px; border-color: #dfe4ed; border-radius: 7px; box-shadow: none; }
.finance-v2-form-page .form-horizontal textarea.form-control { min-height: 96px; }
.finance-v2-form-page .form-group.no-margin.m-b-n.p-v.text-center.b-t { display: flex; justify-content: flex-end; gap: 8px; margin: 22px -24px -24px !important; padding: 14px 24px !important; border-top: 1px solid #edf0f5; }
.finance-v2-form-page .form-group.no-margin.m-b-n.p-v.text-center.b-t .btn { min-width: 92px; min-height: 38px; border-radius: 7px; }
.finance-v2-form-page .form-group.no-margin.m-b-n.p-v.text-center.b-t .btn-info { border-color: #6654dd; color: #fff; background: #6654dd; }
.finance-project-form-v2 .maya-v2-form .panel-body > .form-group:not(.p-h) { margin-bottom: 48px !important; }
.finance-project-form-v2 .maya-v2-form .form-group.p-h { margin-bottom: 0; }
.finance-request-type-v2-form .finance-request-type-hidden-field { align-items: center; }
.finance-request-type-v2-form .maya-v2-checkbox { display: inline-flex; align-items: center; gap: 9px; min-height: 40px; margin: 0; color: #596577; font-weight: 500; cursor: pointer; }
.finance-request-type-v2-form .maya-v2-checkbox input { width: 16px; height: 16px; margin: 0; accent-color: #6654dd; }
.finance-request-type-v2-form-actions { margin: 20px -24px 0 !important; padding: 14px 24px !important; border-top: 1px solid #edf0f5; }
.finance-request-type-v2-form-actions .btn-default { color: #687589; background: #f1f3f7; }
.finance-request-type-v2-form-actions .btn-info { color: #fff; background: #6654dd; }
.finance-v2-request-form .finance-request-date-row { margin-right: -6px; margin-left: -6px; }
.finance-v2-request-form .finance-request-date-row > [class*="col-"] { padding-right: 6px; padding-left: 6px; }
.finance-v2-request-form .finance-request-amount-input { min-height: 52px; padding: 10px 14px; color: #293852; font-size: 20px; font-weight: 650; font-variant-numeric: tabular-nums; letter-spacing: .02em; }
.finance-v2-request-form .finance-request-form-footer { display: flex; justify-content: center; gap: 8px; }
.finance-v2-report-layout { display: flex; flex-direction: column; width: 100%; height: 100%; min-width: 0; min-height: 0; background: #fff; }
.finance-v2-report-tabs { position: relative; z-index: 3; flex: 0 0 46px; display: flex; align-items: stretch; gap: 4px; min-width: 0; overflow-x: auto; padding: 0 14px; border-bottom: 1px solid #e5e9f0; background: #fff; }
.finance-v2-report-tabs a { display: inline-flex; flex: 0 0 auto; align-items: center; padding: 0 14px; border-bottom: 2px solid transparent; color: #687589; font-size: 13px; text-decoration: none; white-space: nowrap; }
.finance-v2-report-tabs a:hover,
.finance-v2-report-tabs a.active { border-bottom-color: #6654dd; color: #5544c5; background: #faf9ff; }
.finance-v2-report-outlet { flex: 1 1 auto; min-width: 0; min-height: 0; overflow: auto; }
.finance-account-balance-v2 .maya-v2-list-table-scroll table { min-width: 720px; }
.finance-account-balance-col-amount,
.finance-v2-amount { text-align: right; font-variant-numeric: tabular-nums; }
.finance-account-balance-v2 .finance-account-balance-col-amount { text-align: right; }
.finance-v2-journal-link { display: inline-flex; align-items: center; min-height: 28px; padding: 0 10px; border: 1px solid #e5e9f0; border-radius: 6px; color: #5544c5; background: #fff; text-decoration: none; }
.finance-reports-list-v2 .maya-v2-list-table-scroll table { min-width: 1040px; }
.finance-report-name-cell,
.finance-report-created { display: flex; flex-direction: column; gap: 4px; }
.finance-report-name-cell a { color: #6654dd; font-size: 11px; }
.finance-report-related-list { display: flex; flex-wrap: wrap; gap: 3px 6px; }
.finance-report-users { display: flex; align-items: center; gap: 0; overflow: visible; }
.maya-v2-list-table-scroll td.finance-reports-col-users { position: relative; z-index: 1; overflow: visible; }
.maya-v2-list-table-scroll td.finance-reports-col-users:hover,
.maya-v2-list-table-scroll td.finance-reports-col-users:focus-within { z-index: 8; }
.finance-report-user-item { position: relative; z-index: 1; display: inline-flex; flex: 0 0 34px; align-items: center; justify-content: center; width: 34px; height: 34px; border-radius: 50%; outline: none; }
.finance-report-user-item + .finance-report-user-item { margin-left: -9px; }
.finance-report-user-item:hover,
.finance-report-user-item:focus { z-index: 99 !important; }
.finance-report-user-avatar { display: inline-flex; align-items: center; justify-content: center; box-sizing: border-box; width: 34px; height: 34px; border: 2px solid #fff; border-radius: 50%; color: #fff; background: #6654dd; font-size: 11px; font-weight: 700; letter-spacing: .02em; line-height: 1; object-fit: cover; text-transform: uppercase; }
.finance-report-user-tooltip { position: absolute; z-index: 12; bottom: calc(100% + 10px); left: 50%; width: max-content; max-width: 220px; padding: 5px 9px; transform: translate(-50%, 3px); border-radius: 8px; color: #fff; background: #242424; box-shadow: 0 3px 10px rgba(0, 0, 0, .18); font-size: 11px; line-height: 1.25; text-align: center; white-space: nowrap; opacity: 0; visibility: hidden; pointer-events: none; transition: opacity .12s ease, transform .12s ease, visibility .12s ease; }
.finance-report-user-tooltip::after { position: absolute; top: 100%; left: 50%; width: 0; height: 0; transform: translateX(-50%); border: 6px solid transparent; border-top-color: #242424; content: ''; }
.finance-report-user-item:hover .finance-report-user-tooltip,
.finance-report-user-item:focus .finance-report-user-tooltip { transform: translate(-50%, 0); opacity: 1; visibility: visible; }
.finance-report-user-delete { position: absolute; z-index: 13; top: -5px; right: -5px; display: inline-flex; align-items: center; justify-content: center; width: 19px; height: 19px; padding: 0; border: 1px solid #fff; border-radius: 50%; color: #fff; background: #737373; cursor: pointer; opacity: 0; visibility: hidden; transition: opacity .12s ease, visibility .12s ease; }
.finance-report-user-item:hover .finance-report-user-delete,
.finance-report-user-item:focus .finance-report-user-delete { opacity: 1; visibility: visible; }
.finance-report-add-user,
.finance-report-actions button { display: inline-flex; align-items: center; justify-content: center; width: 30px; height: 30px; padding: 0; border: 1px solid #e5e9f0; border-radius: 50%; color: #687589; background: #fff; overflow: hidden; }
.finance-report-add-user { margin-left: 8px; border-radius: 7px; color: #6654dd; }
.finance-report-created small { color: #94a0b2; }
.finance-report-actions { display: inline-flex; gap: 5px; }
.finance-report-actions button { border-radius: 6px; }
.finance-trial-balance-panel { min-width: 0; overflow: auto; background: #fff; }
.finance-trial-balance-tree-scroll { width: 100%; min-width: 700px; min-height: 100%; padding: 16px; overflow: auto; }
.finance-trial-balance-tree-scroll .ad-tree-browser { display: block; width: 100%; min-width: 660px; color: #475569; }
.finance-trial-tree-header,
.finance-trial-tree-row { display: grid; grid-template-columns: minmax(300px, 1fr) minmax(150px, 220px) 100px; align-items: center; gap: 14px; width: 100%; }
.finance-trial-tree-header { padding: 10px 14px; color: #8190a4; background: #f7f8fb; font-size: 10px; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; }
.finance-trial-tree-row { min-height: 42px; padding: 6px 14px; border-bottom: 1px solid #edf0f5; background: #fff; }
.finance-trial-tree-name { min-width: 0; color: #34445e; }
.finance-trial-tree-balance { color: #34445e; text-align: right; font-variant-numeric: tabular-nums; }
.finance-trial-tree-journal { text-align: right; }
.finance-trial-tree-journal a { color: #6654dd; font-size: 11px; }
.finance-trial-balance-error { margin: 20px; padding: 14px 16px; border: 1px solid #f2c9c9; border-radius: 8px; color: #a33434; background: #fff5f5; }
.finance-trial-balance-v2 .maya-v2-pager-group { visibility: hidden; }

@media (max-width: 760px) {
  .finance-v2-form-page { padding: 10px; }
  .finance-v2-form-page .panel-body { padding: 16px; }
  .finance-v2-form-page .form-horizontal .form-group:not(.p-h) { grid-template-columns: minmax(0, 1fr); row-gap: 5px; margin-bottom: 14px; }
  .finance-v2-form-page .form-horizontal .form-group:not(.p-h) > label[class*="col-"] { padding-top: 0; }
  .finance-v2-form-page .form-group.no-margin.m-b-n.p-v.text-center.b-t { margin: 18px -16px -16px !important; padding: 12px 16px !important; }
  .finance-settings-form-v2 .container { width: 100%; padding: 10px; }
  .finance-settings-form-v2 .panel-body { padding: 14px; }
  .finance-division-v2-page .maya-v2-form .form-group { grid-template-columns: minmax(0, 1fr); row-gap: 5px; }
  .finance-division-v2-page .maya-v2-form .form-group > label.col-sm-3 { padding-top: 0; }
  .finance-settings-form-v2 .form-horizontal .form-group > [class*="col-sm-"] { float: none; width: 100%; }
  .finance-settings-form-v2 .form-horizontal .control-label { width: 100%; padding: 0 0 6px; }
  .finance-settings-form-v2 .form-horizontal .form-group.no-margin.m-b-n.p-v.text-center.b-t { margin-right: -14px !important; margin-left: -14px !important; padding-right: 14px !important; padding-left: 14px !important; }
  .finance-account-tree-v2 .content-left { border-right: 0; }
  .finance-v2-report-tabs { flex: 0 0 42px; width: 100%; max-width: 100%; min-width: 0; padding-right: 6px; padding-left: 6px; overflow-x: auto; overflow-y: hidden; white-space: nowrap; touch-action: pan-x; overscroll-behavior-x: contain; -webkit-overflow-scrolling: touch; scrollbar-width: thin; }
  .finance-v2-report-tabs a { padding-right: 10px; padding-left: 10px; font-size: 12px; }
  .maya-v2-finance-surface .app-content-inner > div:first-child.p-v-sm,
  .maya-v2-finance-surface .app-content-inner > .p-v-sm.bg-white.box-shadow { padding-right: 10px; padding-left: 10px; }
  .maya-v2-finance-surface .app-content-inner > div:first-child h3,
  .maya-v2-finance-surface .app-content-inner > .p-v-sm.bg-white.box-shadow h3 { font-size: 12px; }
  .maya-v2-finance-surface table.table { min-width: 640px; }
  .maya-v2-finance-surface .content-container .content-left { background: #f5f7fb; }
}
