/* Shared presentation tokens, based on Cuenta Mayor. Business-specific grids,
   report totals, editors and filter behavior remain owned by their modules. */
:root{--ui-ink:#173342;--ui-muted:#5d7068;--ui-accent:#147d70;--ui-line:#cbd5d3;--ui-grid-line:#e0e5e3;--ui-surface:#fff;--ui-header:#f0f3f1;--ui-hover:#f5f9f7;--ui-radius:6px;--ui-control:34px}
#content{min-width:0}#content :is(.page-heading,.ar-heading,.ap-head,.tpv-heading,.unique-heading,.connections-heading){display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;margin-bottom:14px}
#content h1{font-size:23px;line-height:1.25;font-weight:650;letter-spacing:-.3px;margin:0}
#content>.tpv-page{padding:0}
#content :is(.page-heading,.ar-heading,.ap-head,.tpv-heading,.unique-heading)>div:first-child{min-width:0}
#content :is(.page-heading,.ar-heading,.ap-head,.tpv-heading,.unique-heading) p{font-size:12px;color:var(--ui-muted);line-height:1.5;margin:5px 0 0}
.ui-action-toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:6px}
:is(button,a,summary).ui-action{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:var(--ui-control);border:1px solid var(--ui-line);border-radius:var(--ui-radius);background:var(--ui-surface);color:var(--ui-accent);padding:6px 10px;vertical-align:middle}
:is(button,a,summary).ui-icon-action{width:var(--ui-control);height:var(--ui-control);min-width:var(--ui-control);flex:none;padding:7px;font-size:13px;position:relative}
:is(button,a,summary).ui-action.primary{background:var(--ui-accent);border-color:var(--ui-accent);color:white}
:is(button,a,summary).ui-action:hover:not(:disabled){background:#e4f1eb;border-color:var(--ui-accent);color:#0c6659}
:is(button,a,summary).ui-action.primary:hover:not(:disabled){background:#0c6659;color:white}
:is(button,a,summary).ui-action.danger{color:#a33c31;border-color:#d9b8b1}:is(button,a,summary).ui-action.danger:hover:not(:disabled){background:#fff0ed;color:#8c3028;border-color:#a33c31}
:is(button,a,summary).ui-action:focus-visible{outline:2px solid var(--ui-accent);outline-offset:3px}
.ui-action-icon{width:18px;height:18px;flex:none;pointer-events:none;stroke-width:1.7}
.ui-action-count{position:absolute;top:-5px;right:-5px;min-width:16px;padding:1px 4px;border-radius:9px;background:#fff;border:1px solid var(--ui-accent);color:var(--ui-accent);font-size:10px;line-height:12px;font-weight:600}
.ui-icon-action>.ui-action-copy{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip-path:inset(50%);white-space:nowrap}
.ui-tooltip{position:fixed;z-index:10000;max-width:min(300px,calc(100vw - 16px));padding:6px 9px;background:#173c32;color:#fff;border-radius:5px;font-size:12px;line-height:1.4;pointer-events:none;box-shadow:0 3px 12px #172e2222}
/* Advisory notices use no report height; source nodes keep their original owner. */
.ui-notice-source{display:none!important}
.ui-routine-message,.ui-routine-status{display:none!important}
#financialFootnote:empty,#financialFootnote:has(>.ui-notice-source){display:none}
.ar-dashboard-hint:not(:has(:not(.ui-routine-status,.ui-routine-message,.ui-notice-source))){display:none}
.ui-notice-trigger[data-severity=error].ui-action{color:#a33c31;border-color:#dcafa6;background:#fff1ee}
.ui-notice-trigger[data-severity=error] .ui-notice-count{background:#a33c31}
.ui-view-notices{display:inline-flex;align-items:center;gap:7px;flex:none}
.ui-view-notices .ui-notice-trigger.ui-action{position:relative;color:#8b5b0c;border-color:#e0c78f;background:#fffbef;border-radius:50%}
.ui-view-notices .ui-notice-trigger.ui-action:hover,.ui-notice-trigger[aria-expanded=true]{background:#fff1ce;border-color:#b78022;color:#714805}
.ui-notice-count{position:absolute;top:-5px;right:-5px;min-width:16px;padding:1px 4px;box-sizing:border-box;border-radius:10px;background:#aa6d10;color:white;font-size:10px;font-weight:650;line-height:14px}
.ui-notice-partial{font-size:11px;font-weight:600;color:#8b5b0c;white-space:nowrap}
.ui-notice-partial[hidden],.ui-notice-panel[hidden]{display:none!important}
.ui-notice-panel{position:fixed;z-index:1000;display:flex;flex-direction:column;box-sizing:border-box;margin:0;padding:0;background:#fff;border:1px solid #d9c797;border-radius:9px;box-shadow:0 8px 28px #17334226;color:var(--ui-ink);font-size:12px;line-height:1.5;overflow:hidden}
.ui-notice-heading{display:flex;flex:none;align-items:center;justify-content:space-between;gap:12px;background:#fffaf0;border-bottom:1px solid #eee3c9;padding:10px 12px}
.ui-notice-heading h2{margin:0;font-size:14px;line-height:1.4;font-weight:650;min-width:0;overflow-wrap:anywhere}
.ui-notice-heading .ui-action{--ui-control:28px}
.ui-notice-list{overflow:auto;overscroll-behavior:contain;min-height:0;padding:0 14px;scrollbar-gutter:stable}
.ui-notice-item{padding:12px 0;border-bottom:1px solid #e9edeb;overflow-wrap:anywhere}
.ui-notice-item:last-child{border:0}.ui-notice-item p{margin:0;white-space:normal}
.ui-notice-dates{display:block;color:var(--ui-muted);font-size:11px;margin:4px 0}
.ui-notice-dates summary{cursor:pointer;color:var(--ui-accent)}.ui-notice-dates p{margin-top:5px}
.ui-notice-link{display:block;border:0;background:none;color:var(--ui-accent);font:inherit;padding:5px 0 0;cursor:pointer;text-align:left}
.ui-notice-link:focus-visible,.ui-notice-dates summary:focus-visible{outline:2px solid var(--ui-accent);outline-offset:2px}
@media print{.ui-view-notices,.ui-notice-panel{display:none!important}.ui-notice-source{display:block!important}details.ui-notice-source>p{display:block!important}#financialFootnote:has(>.ui-notice-source){display:block}}
/* Apply the same density to comparable record tables. Report matrices and the
   ledger's resize/selection implementation keep their own geometry. */
#content :is(.table-scroll,.ar-table-wrap,.ap-table-wrap,.tpv-table-wrap,.unique-data-scroll,.unique-table) table{font-size:12px;line-height:18px;border-spacing:0;font-variant-numeric:tabular-nums}
#content :is(.table-scroll,.ar-table-wrap,.ap-table-wrap,.tpv-table-wrap,.unique-data-scroll,.unique-table):not(.gl-grid) :is(td,th){padding:5px 8px;vertical-align:middle;border-bottom:1px solid var(--ui-grid-line)}
#content :is(.table-scroll,.ar-table-wrap,.ap-table-wrap,.tpv-table-wrap,.unique-data-scroll,.unique-table) th{background:var(--ui-header);color:#42554e;font-size:11px;font-weight:600;letter-spacing:0;text-transform:none}
#content :is(.table-scroll,.ar-table-wrap,.ap-table-wrap,.tpv-table-wrap,.unique-data-scroll,.unique-table) tbody tr:hover td{background:var(--ui-hover)}
#content :is(td,th):is(.numeric,.num,.money,.number){text-align:right;font-variant-numeric:tabular-nums}
#content :is(.table-scroll,.ar-table-wrap,.ap-table-wrap,.tpv-table-wrap,.unique-data-scroll,.unique-table){max-width:100%;overflow:auto;overscroll-behavior:contain}
.enterprise-grid{border:1px solid var(--ui-line);max-height:65dvh;border-radius:0!important}
.enterprise-grid table{table-layout:fixed;border-collapse:separate!important;border-spacing:0;min-width:100%}
.enterprise-grid :is(td,th){height:30px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;border-right:1px solid var(--ui-grid-line);box-sizing:border-box}
.enterprise-grid th{position:sticky;top:0;z-index:2;height:34px;background:var(--ui-header)}
.enterprise-grid td{cursor:cell;user-select:none}.enterprise-grid .report-cell-selected{background:#e4f1eb!important}.enterprise-grid .report-cell-active{box-shadow:inset 0 0 0 2px var(--ui-accent);outline:0}
.enterprise-grid-tools{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:5px 2px;font-size:11px;color:var(--ui-muted)}
.enterprise-grid-tools button{font-size:11px;padding:4px 8px;min-height:26px}
.enterprise-grid td :is(.pill,.badge){padding:2px 6px;line-height:18px;min-height:0;border-radius:4px;font-size:11px}
.enterprise-grid td .text-button{padding:2px 5px;min-height:24px;font-size:12px}
.enterprise-grid td :is(button,a){max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;vertical-align:middle}
#content :is(button,a,summary).ui-icon-action{flex:0 0 var(--ui-control);width:var(--ui-control);height:var(--ui-control);min-width:var(--ui-control);padding:7px}
#content .ui-action-toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:6px}
.entity-link{display:inline;padding:0;border:0;background:none;color:var(--ui-accent);font:inherit;text-align:inherit;text-decoration: none;}
/* Link-like actions share discreet feedback without changing numeric layout. */
:is(.text-button,.entity-link,.document-link,.ar-link,.ap-link,.mnt-link,.tpv-link,.um-amount-link,.unique-number,.bank-amount,.bank-link,.outlet-reset,.bank-kpi>button){cursor:pointer}
:is(.text-button,.entity-link,.document-link,.ar-link,.ap-link,.mnt-link,.tpv-link,.um-amount-link,.unique-number,.bank-amount,.bank-link,.outlet-reset,.bank-kpi>button):hover{background-color:#edf5fb;border-radius:2px}
:is(.text-button,.entity-link,.document-link,.ar-link,.ap-link,.mnt-link,.tpv-link,.um-amount-link,.unique-number,.bank-amount,.bank-link,.outlet-reset,.bank-kpi>button):focus-visible{outline:2px solid #1677af;outline-offset:2px;border-radius:2px}
#content .table-card>.card-toolbar{padding:12px 14px;min-height:0}#content .table-card>.card-toolbar h3{font-size:14px;margin:0 0 3px}
#content #searchForm.filters{padding:12px 14px;gap:10px;margin-bottom:14px}
#content :is(.ap-scroll,.um-table-wrap,.bank-scroll){max-width:100%;overflow:auto;overscroll-behavior:contain}
#content :is(.ap-scroll,.um-table-wrap) table{font-size:12px;line-height:18px;font-variant-numeric:tabular-nums}
#content :is(.ap-scroll,.um-table-wrap) :is(td,th){padding:5px 8px;vertical-align:middle;border-bottom:1px solid var(--ui-grid-line)}
#content :is(.ap-scroll,.um-table-wrap) th{background:var(--ui-header);font-size:11px;font-weight:600;text-transform:none;letter-spacing:0}
#content :is(.unique-report-heading,.outlet-heading,.bank-heading){display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:14px}
#content :is(.ar-pagination,.tpv-pagination,.um-pagination,.unique-pagination,.outlet-pagination,.count-pagination){display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:12px}
#content :is(.pagination,.pager){display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:8px;font-size:12px;padding-block:10px}
#content :is(.empty,.ap-welcome){border:1px dashed var(--ui-line);border-radius:var(--ui-radius);padding:30px 18px;background:#fff;color:var(--ui-muted);text-align:center;line-height:1.6}
#content .empty h3{color:var(--ui-ink);font-size:16px;margin:0 0 6px}
#content .loading{padding:22px;color:var(--ui-muted);font-size:13px}
dialog{max-width:calc(100vw - 24px);max-height:calc(100dvh - 24px);overscroll-behavior:contain}
dialog::backdrop{background:#112a3559}
:is(#content,dialog) :is(input,select,textarea):not([type=checkbox]):not([type=radio]):not([type=file]){border-radius:5px;min-width:0}
:is(#content,dialog) :is(input,select,textarea):focus-visible{outline:2px solid var(--ui-accent);outline-offset:2px}
button:disabled{cursor:not-allowed}
:is(.error,[role=alert]){overflow-wrap:anywhere}
@media(max-width:700px){#content h1{font-size:20px}.ui-action-toolbar{gap:5px}:is(button,a,summary).ui-icon-action{width:36px;height:36px}#content :is(.page-heading,.ar-heading,.ap-head,.tpv-heading,.unique-heading){align-items:flex-start}dialog{padding:14px}#content .pagination{justify-content:flex-start}.dialog-form{grid-template-columns:minmax(0,1fr)}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}
@media print{.ui-tooltip,.ui-action-toolbar{display:none!important}}
@media(max-width:600px){
  :root{--ui-control:36px}
  #dialog{padding:0}
  #dialog>.dialog-heading{padding:12px 14px;margin:0;gap:10px}
  #dialog>.dialog-heading h2{font-size:18px;overflow-wrap:anywhere}
  #dialog>#dialogBody{padding:12px 14px;min-width:0}
  #dialog :is(.ar-filter-footer,.gl-modal-actions,.ap-actions,.actions,.dialog-actions){flex-wrap:wrap}
  #dialog .ar-filter-footer .button{flex:1 1 90px;margin:0}
  .ar-company-actions{flex-wrap:wrap}
  .ar-chip{max-width:100%}
}
@media(max-width:480px){.tpv-record-dialog .tpv-summary{grid-template-columns:minmax(0,1fr)}.tpv-record-dialog .tpv-summary .tpv-kpi{min-width:0;padding:10px 12px}.tpv-record-dialog .tpv-summary strong{font-size:24px}}

/* Compact module presentation. The workspace tab bar keeps its existing design. */
#content .ui-module-heading{display:flex;flex-direction:row;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px;margin:0 0 8px;min-height:34px;padding:0;border:0;text-align:left}
#content .ui-module-heading>div:first-child{min-width:0}
#content .ui-module-heading h1{display:inline;font-size:22px;line-height:1.35;vertical-align:middle}
.work-view #content .ui-module-heading .eyebrow{display:none}
#content .ui-module-heading .ui-context-line{margin:2px 0 0;font-size:11px}
.ui-context-help{display:inline-block;vertical-align:middle;position:relative;margin-left:7px;color:var(--ui-muted)}
.ui-context-help>summary{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;cursor:pointer;list-style:none;border-radius:4px}
.ui-context-help>summary>span{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.ui-context-help>summary svg,.ui-data-state>summary svg{width:16px;height:16px;flex:none}
.ui-context-help>summary::-webkit-details-marker,.ui-data-state>summary::-webkit-details-marker{display:none}
.ui-context-help>summary:hover,.ui-context-help[open]>summary{background:#e5efea;color:var(--ui-accent)}
.ui-context-help .ui-context-body{position:absolute;top:30px;left:0;z-index:25;min-width:230px;width:min(350px,60vw);padding:12px;background:#fff;border:1px solid var(--ui-line);border-radius:6px;box-shadow:0 6px 18px #1733421a;font-size:12px;line-height:1.5}
.ui-context-body p{margin:0!important;font-size:12px!important;line-height:1.5!important}
.ui-data-state{max-width:100%;margin:3px 0 7px;color:var(--ui-muted);font-size:11px;line-height:1.5}
.ui-data-state>summary{display:flex;align-items:center;gap:6px;max-width:100%;min-height:24px;cursor:pointer;list-style:none;width:fit-content}
.ui-data-state>summary::before{content:'';width:6px;height:6px;flex:none;border-radius:50%;background:#147d70}
.ui-data-state>summary svg{width:13px;height:13px;order:2;color:#788b83}
.ui-data-state>summary>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ui-data-state>.ui-context-body{padding:8px 10px;border-left:2px solid #cbd5d3;background:#f5f8f6}
.ui-data-state .ui-context-body>*{background:none!important;border:0!important;padding:0!important;margin:0!important;font-size:11px!important;line-height:1.6!important}
.ui-data-state>summary:focus-visible,.ui-context-help>summary:focus-visible{outline:2px solid var(--ui-accent);outline-offset:2px}
#main .ui-feedback{box-sizing:border-box;margin:6px 0;padding:7px 10px;border:1px solid #cbdedc;border-left:3px solid #4b8b92;border-radius:4px;background:#edf6f7;color:#27525b;font-size:12px;line-height:1.45;white-space:normal;overflow-wrap:anywhere}
#main .ui-feedback[data-ui-severity=warning]{background:#fff8e9;border-color:#ead6a5;border-left-color:#b97d15;color:#745017}
#main .ui-feedback[data-ui-severity=error]{background:#fff0ed;border-color:#e8beb7;border-left-color:#b44335;color:#8b3027}
#main .ui-feedback[data-ui-severity=success]{background:#edf7f0;border-color:#bddbc7;border-left-color:#278755;color:#26683f}
#content .um-coverage>summary{font-size:12px;font-weight:600;cursor:pointer}
#content .um-coverage p{margin:4px 0;font-size:12px;line-height:1.45}
#content :is(.unique-scope,.ap-context,.ar-context,.ar-toolbar,.tpv-list-controls,.outlet-applied,#umSelection,.applied-filters){margin:5px 0 8px;padding-block:4px;font-size:12px;line-height:1.5;min-height:0}
#content #searchForm.filters{padding:6px 10px;gap:8px;margin:6px 0 8px;border-radius:5px;align-items:end}
#content #searchForm.filters :is(input,select){height:32px;padding-block:4px;font-size:12px}
#content #searchForm.filters label{font-size:11px;gap:3px}
#content .table-card>.card-toolbar{padding:6px 10px;gap:10px;display:flex;align-items:center;flex-wrap:wrap}
#content .table-card>.card-toolbar h3{font-size:12px;margin:0}
.ui-redundant-title{display:none}
.card-toolbar>.enterprise-grid-tools{margin-left:auto;padding:0;gap:10px;flex:0 1 auto}
.enterprise-grid-tools,.card-toolbar>.enterprise-grid-tools{position:absolute!important;width:1px!important;height:1px!important;min-height:0!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip-path:inset(50%);white-space:nowrap;border:0!important}
#content .enterprise-grid-tools :is(button,a,summary).ui-icon-action{--ui-control:28px;padding:5px}
.enterprise-grid-tools>[role=status]{font-size:10px;color:#75857f}
.ui-action-format{position:absolute;bottom:-5px;right:-3px;background:#fff;border:1px solid var(--ui-line);border-radius:3px;padding:0 2px;font-size:8px;line-height:12px;color:var(--ui-accent);font-weight:700}
.ui-export-select{display:inline-flex;position:relative;width:34px;height:34px;align-items:center;justify-content:center;border:1px solid var(--ui-line);border-radius:6px;background:#fff;color:var(--ui-accent)}
.ui-export-select select{position:absolute;inset:0;width:100%!important;height:100%!important;opacity:0;cursor:pointer}
.ui-export-select:focus-within{outline:2px solid var(--ui-accent);outline-offset:2px}.ui-export-select:has(select:disabled){opacity:.45}.ui-export-symbol{font-size:23px;line-height:1;pointer-events:none}
#content .financial-title>.actions{margin-left:auto;display:flex;align-items:center;gap:6px}
#content .financial-title>span{font-size:11px;margin-left:6px}
#content .financial-top{display:block;margin:0 0 10px}
#content :is(.financial-kpis,.bank-kpis){gap:10px;margin-bottom:10px}
#content .financial-kpi{padding:8px 14px;border-radius:6px}
#content .bank-kpi{padding:12px 14px;border-radius:6px}
#content .bank-table-toolbar{padding:10px 14px}
#content .bank-table-footer{padding:8px 12px}
#content .count-page,#content .count-page #countBody{gap:10px}
#content .gl-variant-status{display:block;font-size:10px;line-height:1.4;margin-top:2px}
@media(max-width:700px){#content .ui-module-heading h1{font-size:20px}.ui-context-help .ui-context-body{position:fixed;left:12px;right:12px;top:auto;width:auto;min-width:0;margin-top:5px}.card-toolbar>.enterprise-grid-tools{margin-left:0;flex:1;justify-content:space-between}#content .ui-module-heading{align-items:center}.ui-action-toolbar{row-gap:9px}}
@media print{.ui-context-help,.ui-export-select{display:none}.ui-data-state>.ui-context-body{display:block!important}.ui-data-state>summary{display:none}.ui-redundant-title{display:block}}
/* One content-sized viewport contract across record lists and report matrices. */
.ui-adaptive-table{max-height:var(--ui-table-space)!important;min-height:0!important;height:auto!important;overflow:auto;overscroll-behavior:contain;scrollbar-gutter:stable}
@media print{.ui-adaptive-table{max-height:none!important;height:auto!important;overflow:visible!important;scrollbar-gutter:auto}}
.ui-adaptive-table table{margin:0}.ui-adaptive-table thead th{position:sticky;top:0}
/* Sizing must not flatten the grid's layers. Keep this fallback less specific
   than module headers/corners: fixed body cells < header < fixed header corner. */
:where(.ui-adaptive-table) thead th{z-index:3}
#content .unique-report-page:has(.ui-adaptive-table){height:auto;min-height:0}
#content .unique-report-body:has(.ui-adaptive-table){flex:none;min-height:0}
#content .unique-report-body .ui-adaptive-table{flex:none}
.ui-icon-action{text-decoration:none;box-sizing:border-box;cursor:pointer;list-style:none}
summary.ui-icon-action::-webkit-details-marker{display:none}
.ui-icon-action:disabled,.ui-icon-action[aria-disabled=true]{opacity:.45;cursor:default}
.sap-filter-extension{min-width:0;grid-column:1/-1;border:1px solid var(--ui-line);border-radius:6px;padding:10px;display:flex;flex-wrap:wrap;align-items:start;gap:10px;margin:8px 0}
.sap-filter-extension>legend{font-size:12px;font-weight:600;padding:0 5px}
.sap-filter-extension>label{display:flex;flex:1 1 160px;flex-direction:column;gap:4px;font-size:12px;min-width:0}
.sap-filter-extension>label :is(input,select){width:100%;min-width:0;box-sizing:border-box}
.sap-filter-extension>[data-record-editor],.sap-filter-extension>.caption,.sap-filter-extension>.sap-filter-legacy{flex:1 1 100%}
.sap-filter-extension>:is(.ap-company-choices,.sap-filter-options){flex:1 1 100%;display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:6px}
.sap-filter-extension>:is(.ap-company-choices,.sap-filter-options)>label{min-width:0;margin:0;padding:7px 9px}
.sap-filter-body>label:has(.sap-filter-search){display:flex;flex-direction:column;gap:4px;font-size:12px}
.sap-filter-search{width:min(100%,400px);box-sizing:border-box}
#content :is(.incident-search,.movement-tools,#ratesSearch){padding:6px 10px;gap:8px;margin:6px 0 8px;align-items:end}
#content :is(.incident-search,.movement-tools,#ratesSearch) label{font-size:11px;gap:3px}
#content :is(.incident-search,.movement-tools,#ratesSearch) :is(input,select){height:32px;min-height:32px;padding-block:4px}
.ui-action-toolbar{row-gap:9px!important}
#content :is(td,th) .ui-icon-action{--ui-control:22px;min-height:22px;padding:3px}
#content :is(td,th) .ui-action-icon{width:14px;height:14px}
#content .enterprise-grid td:has(.ui-icon-action){padding-block:3px}
.ui-export-symbol{width:18px;height:18px;stroke-width:1.7}
#content .metrics{gap:8px;margin-bottom:10px;grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}
#content .metric{padding:9px 12px;border-radius:6px}
#content .metric strong{font-size:21px;margin:4px 0 2px}
#content .metric .metric-icon{display:none}
#content .plain-grid{gap:10px;align-items:start;grid-template-columns:repeat(auto-fit,minmax(min(280px,100%),1fr))}
#content .info-card{padding:12px 14px;border-radius:6px}
#content .info-card h2{font-size:17px;margin:7px 0}
#content .info-card p{font-size:12px;line-height:1.5;margin:8px 0}
#content .unique-report-page{gap:6px}
#content .unique-report-page .ui-module-heading{margin-bottom:2px}
.tpv-dialog .tpv-editor-actions{bottom:0;flex-wrap:wrap;gap:8px;padding-block:10px}
#dialog :is(.bank-filter-footer,.gl-modal-actions){bottom:0;margin-bottom:0}
/* The heading may wrap on a phone. Allocate the remaining space to the body
   instead of subtracting an assumed header height from each module. */
#dialog[open]{display:flex;flex-direction:column;overflow:hidden}
#dialog>.dialog-heading{flex:none}
#dialog>#dialogBody{flex:1 1 auto;min-height:0;max-height:none;overflow:auto}
#content .database-scroll :is(th,td) .database-icon-button{width:22px;height:22px;min-width:22px;flex-basis:22px;padding:3px}
#content .database-scroll thead th{height:32px}
@media(max-width:420px){#content .metrics{grid-template-columns:repeat(2,minmax(0,1fr))}#content .metric strong{font-size:18px}}
/* Data exploration keeps its own workspace and grid; compact the repeated
   context rows so the records are usable even with a collapsed catalogue. */
#content .database-origins{margin-bottom:6px;gap:4px 14px}
#content .database-origins button{min-height:30px;padding-block:5px;font-size:12px}
#content .database-work-controls{padding-bottom:6px}
#content .database-table-heading{display:flex;flex-wrap:wrap;align-items:center;gap:5px 12px;padding-bottom:5px;margin-bottom:6px}
#content .database-table-heading h2{font-size:14px;margin:0}
#content .database-table-heading>.database-area{font-size:10px}
#content .database-table-heading .database-table-info{margin:0;margin-left:auto}
#content .database-table-info[open]{flex-basis:100%}
#content .database-record-search{gap:6px;margin-bottom:6px}
#content .database-record-search label{gap:3px;font-size:10px}
#content .database-record-search input{min-height:32px;padding:6px 8px}
#content .database-tabs{gap:16px;margin-bottom:6px}
#content .database-tabs button{font-size:12px;padding-block:7px}
#content .database-toolbar{margin-block:3px;padding-block:3px}
@media(max-width:1100px){#content .database-workspace{gap:6px}#content .database-explorer{padding-bottom:5px}#content #databaseExplorerToggle{padding-block:3px}}
@media(min-width:760px){
  #content .database-data{display:grid;grid-template-columns:auto minmax(0,1fr);column-gap:18px}
  #content .database-data>.database-table-heading{grid-column:1/-1;grid-row:1}
  #content .database-data>.database-tabs{grid-column:1;grid-row:2;align-self:end}
  #content .database-data>.database-record-search{grid-column:2;grid-row:2}
  #content .database-data>:is(.database-selection,#databaseResults,.database-scope){grid-column:1/-1}
}
@media(pointer:coarse){#content :is(td,th) .ui-icon-action{--ui-control:30px;min-height:30px}}
@media print{.ui-adaptive-table{max-height:none!important;overflow:visible!important}}

/* Workspace orientation already lives in the sidebar, active tab and title.
   Keep the breadcrumb DOM for navigation metadata, without a redundant band. */
.work-host .main-shell>.topbar{display:none}
html.work-view #main{padding-block:12px}
#dialogEyebrow{display:none}
#dialog>.dialog-heading{margin-bottom:10px;padding-bottom:10px}
#dialog>.dialog-heading h2{font-size:19px;margin:0;line-height:1.35}
#dialog>.dialog-heading{padding:12px 18px}
#dialog>#dialogBody{padding:12px 18px}
dialog :is(.error,[role=alert]):empty{display:none}
dialog :is(.financial-filter-form,.dialog-form){gap:12px}
dialog .financial-filter-form>.caption{margin:2px 0;font-size:11px;line-height:1.45}
/* A closed catalogue occupies one line; checked inputs remain in the form. */
.ui-choice-picker{min-width:0;max-width:100%;margin:8px 0;flex:1 1 100%;font-size:12px}
.ui-choice-picker>summary{display:flex;align-items:center;gap:10px;min-height:34px;box-sizing:border-box;padding:7px 10px;border:1px solid var(--ui-line);border-radius:5px;list-style:none;cursor:pointer;background:#fff;color:var(--ui-ink)}
.ui-choice-picker>summary::-webkit-details-marker{display:none}
.ui-choice-picker>summary>strong{font-weight:550;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-left:auto}
.ui-choice-picker>summary:focus-visible{outline:2px solid var(--ui-accent);outline-offset:2px}
.ui-choice-panel{padding:8px;border:1px solid var(--ui-line);border-top:0;border-radius:0 0 5px 5px;background:#fff}
.ui-choice-panel>input[type=search]{width:100%;box-sizing:border-box;height:32px;min-height:32px;padding:5px 8px;margin:0 0 6px;border:1px solid var(--ui-line)}
.ui-choice-picker .ui-choice-list{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(min(260px,100%),1fr))!important;gap:2px!important;max-height:240px;overflow:auto;margin:0!important}
.ui-choice-picker .ui-choice-list>label{display:flex!important;align-items:center;flex-direction:row;gap:8px;min-width:0;min-height:30px!important;height:auto!important;padding:5px 7px!important;margin:0!important;border:0!important;border-radius:3px;cursor:pointer;font-weight:400;font-size:12px;text-align:left}
.ui-choice-picker .ui-choice-list>label[hidden]{display:none!important}
.ui-choice-picker .ui-choice-list>label:hover{background:var(--ui-hover)}
.ui-choice-picker .ui-choice-list input[type=checkbox]{flex:none;width:14px!important;height:14px!important;min-height:0!important;margin:0;padding:0;accent-color:var(--ui-accent)}
.ui-choice-picker .ui-choice-list :is(span,small){min-width:0;overflow-wrap:anywhere}
.ui-choice-picker .ui-choice-list small{display:inline!important;font-size:11px;color:var(--ui-muted);margin-left:5px}
.ui-choice-picker .ar-company-title{margin:0 0 6px;justify-content:flex-end}
/* Let content determine modal height; reserve header/footer through flex. */
dialog[open]:has(.ar-filter-panel){height:auto;max-height:calc(100dvh - 24px)}
.sap-filter-dialog[open],.outlet-filter-dialog[open],.report-detail-dialog[open]{display:flex;flex-direction:column;overflow:hidden}
.sap-filter-dialog>.dialog-heading,.sap-filter-dialog>footer,.outlet-filter-dialog>header,.outlet-filter-dialog>footer{flex:none}
.sap-filter-dialog>.sap-filter-body,.outlet-filter-dialog>.outlet-filter-scroll{flex:0 1 auto;min-height:0;max-height:none;overflow:auto}
.report-detail-dialog>.report-detail-body{flex:1;min-height:0;height:auto}
.report-detail-dialog>header{flex:none;min-height:0;padding-block:10px}
#content .unique-template{padding:10px}
#content .unique-template h3{font-size:15px;margin:16px 0 8px}
#content .unique-template>section:first-of-type h3{margin-top:0}
#content .unique-template-title.ui-redundant-title{display:none}
#content .unique-empty{height:auto!important;padding-block:18px!important}
@media print{#content .unique-template-title.ui-redundant-title{display:flex}}
@media(max-width:600px){.ui-choice-picker .ui-choice-list{grid-template-columns:minmax(0,1fr)!important}#dialog>.dialog-heading h2{font-size:17px}}
@media(max-width:420px){#dialog :is(.ar-filter-scope,.ar-filter-grid,.ap-fields){grid-template-columns:minmax(0,1fr)}}
@media(max-width:420px){#dialog .gl-scope-grid>label{grid-column:1/-1}}
/* Independent explorer controls share rows when there is room. Their DOM,
   saved queries, tabs, selected origin and keyboard controls remain intact. */
@media(min-width:920px){
  #content .database-page{display:grid;grid-template-columns:minmax(220px,1fr) auto;column-gap:16px;align-items:center}
  #content .database-page>.page-heading{grid-column:1;grid-row:1}
  #content .database-page>.database-origins{grid-column:2;grid-row:1;justify-content:flex-end;border:0;gap:4px 12px}
  #content .database-page>.database-work-controls{grid-column:1/-1;grid-row:2;justify-content:flex-end;min-width:0}
  #content .database-work-controls .database-saved-choice select{max-width:190px}
  #content .database-page>.database-workspace{grid-column:1/-1;grid-row:3;align-self:start}
}

/* Selection belongs to the shared grid, independent of the module wrapper. */
table.report-grid [data-report-row][data-report-col]{cursor:cell;user-select:none}
table.report-grid .report-cell-selected{background:#e4f1eb!important}
table.report-grid .report-cell-active{box-shadow:inset 0 0 0 2px var(--ui-accent,#147d6c);outline:0}
table.report-grid .report-cell-text-mode,table.report-grid .report-cell-text-mode *{user-select:text!important;cursor:text}
@media (forced-colors:active){table.report-grid .report-cell-active{outline:2px solid Highlight}table.report-grid .report-cell-selected{outline:1px solid Highlight}}
@media print{.enterprise-grid-tools{display:none!important}table.report-grid .report-cell-selected{background:transparent!important}table.report-grid .report-cell-active{box-shadow:none}}

/* Dragging text from a value button must be as possible as from plain text. */
:is(#content,dialog) table button:not(.ui-action):not([aria-haspopup]){user-select:text}

/* Form display adapters: original controls remain canonical form members. */
.ui-form-field{position:relative;display:flex;align-items:center;min-width:0;width:100%}
.ui-form-field[hidden]{display:none!important}
.ui-form-field>.ui-field-source{display:none!important}
.ui-form-field>.ui-field-display{box-sizing:border-box;width:100%;min-width:0;margin:0}
.ui-money-field>.ui-field-display{text-align:right;font-variant-numeric:tabular-nums}
.ui-catalog-field>.ui-field-display{padding-right:30px!important;text-overflow:ellipsis}
.ui-catalog-field>[data-show-values]{position:absolute;right:3px;width:25px;min-height:26px;height:26px;border:0;background:transparent;padding:4px;display:grid;place-items:center;color:inherit}
.ui-catalog-field>[data-show-values] svg{width:16px;height:16px}
.ui-catalog-field:has(:disabled)>[data-show-values]{visibility:hidden}
.ui-catalog-field:focus-within>[data-show-values]{color:#147d70}
.sap-value-popup{z-index:1001;overscroll-behavior:contain}
.ui-field-display:focus-visible{outline:2px solid #147d70;outline-offset:2px}
.ui-money-currency{position:absolute;left:10px;font-size:12px;font-weight:600;color:#526875;pointer-events:none}
.ui-money-currency[hidden]{display:none}
.ui-money-with-currency>.ui-field-display{padding-left:48px!important}
.ui-multiple-catalog{display:grid;gap:4px;min-width:0}
.ui-multiple-catalog>input{box-sizing:border-box;width:100%;min-width:0}
.ui-multiple-catalog>small{font-size:11px;color:#526875}
