/* Escopo de seleção, densidade e controles acessíveis. */
@media(max-width:600px){
 .data-table[data-ui-filtered="true"]{min-width:0;display:block;width:100%}
 .data-table[data-ui-filtered="true"] thead{display:none}
 .data-table[data-ui-filtered="true"] tbody{display:grid;gap:12px}
 .data-table[data-ui-filtered="true"] tr{display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--line);border-radius:8px;overflow:hidden}
 .data-table[data-ui-filtered="true"] td{display:block;padding:12px;min-width:0;word-break:break-word}
 .data-table[data-ui-filtered="true"] td:first-child,.data-table[data-ui-filtered="true"] td:last-child{grid-column:1/-1}
 .data-table[data-ui-filtered="true"] td:before{display:block;font-size:10px;color:var(--muted);margin-bottom:6px}
 .data-table[data-ui-filtered="true"] td:nth-child(2):before{content:'Mensalidade'}
 .data-table[data-ui-filtered="true"] td:nth-child(3):before{content:'Previsto no mês'}
 .data-table[data-ui-filtered="true"] td:nth-child(4):before{content:'Recebido'}
 .data-table[data-ui-filtered="true"] td:nth-child(5):before{content:'Situação e data'}
 .data-table[data-ui-filtered="true"] td:last-child{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
}
html{--ui-gold:#bd932b;--ui-gold-soft:#f8edcb;--ui-good:#157352;--ui-bad:#b44248;color-scheme:light}
body{-webkit-user-select:none;user-select:none;caret-color:transparent}
input,textarea,[contenteditable="true"],[contenteditable=""],.selectable{-webkit-user-select:text;user-select:text;caret-color:auto}
button,input,select,textarea{touch-action:manipulation}
button:focus-visible,[role="button"]:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid var(--ui-gold);outline-offset:3px}
[hidden]{display:none!important}
.card,.kpi,.modal,.list-item,.sidebar-bottom{border-radius:10px}.btn,.nav-btn,.period,.chip,.square-btn,.text-field,input,select,textarea,.notice,.alert,.empty{border-radius:7px!important}
.auth-card{border-radius:14px}.auth-card .brand-icon,.brand-icon{border-radius:10px}.cards-grid,.two-col,.kpi-grid,.triple{gap:12px}.cards-grid{margin-top:12px}.card{padding:20px}.kpi{padding:18px;min-height:140px}.page-heading{margin:27px 0 18px}.card-header{margin-bottom:15px}.main{padding-left:25px;padding-right:25px}
.ui-theme{white-space:nowrap}.ui-auth-theme{position:fixed;right:22px;top:18px}.topbar{flex-wrap:wrap;min-height:90px;height:auto;padding:15px 0}.topbar-right{margin-left:auto;flex-wrap:wrap}.ui-function-search{position:relative;flex:1 1 220px;max-width:300px;order:2}.ui-function-search input{width:100%;height:38px;border:1px solid var(--line);border-radius:7px;background:var(--surface);padding:9px 11px;color:var(--ink);font-size:12px}.ui-function-results{position:absolute;top:44px;right:0;min-width:300px;width:100%;background:var(--surface);border:1px solid var(--line);box-shadow:0 15px 40px #0002;z-index:60;border-radius:8px;padding:7px;max-height:380px;overflow:auto}.ui-function-results button{display:flex;align-items:center;gap:8px;width:100%;border:0;background:transparent;color:var(--ink);text-align:left;padding:11px 9px;border-radius:5px;font-size:12px}.ui-function-results button:hover{background:var(--ui-gold-soft)}.ui-function-results button small{margin-left:auto;color:var(--muted);font-size:10px}.ui-function-results button span{color:var(--ui-gold);font-weight:800}.ui-function-results p{padding:8px;font-size:12px;color:var(--muted)}.ui-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.ui-filter-panel{padding:16px 18px;background:var(--surface);border:1px solid var(--line);border-left:3px solid var(--ui-gold);border-radius:9px;margin:0 0 16px;box-shadow:0 4px 15px #00000003}.ui-filter-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.ui-filter-heading strong{font-size:13px}.ui-filter-heading span{font-size:11px;color:var(--muted);margin-left:12px}.ui-filter-grid{display:grid;grid-template-columns:minmax(180px,1.6fr) minmax(130px,1.1fr) minmax(125px,1fr) minmax(125px,1fr) minmax(145px,1.1fr);gap:10px}.ui-filter-grid label{font-size:10px;color:var(--muted);margin-bottom:0;line-height:1.4}.ui-filter-grid input,.ui-filter-grid select{width:100%;padding:9px;height:38px;margin-top:5px;background:var(--surface);color:var(--ink);font-size:11px;border:1px solid var(--line)}.ui-filter-grid input:disabled{opacity:.45}.ui-filter-footer{margin-top:12px;display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.ui-filter-footer [data-ui-scope]{font-size:11px;color:var(--ink);font-weight:600}.ui-month-label{font-size:10px;display:flex;gap:9px;align-items:center;margin:0;color:var(--muted)}.ui-month-label input{padding:6px 8px;font-size:11px;min-height:31px;width:145px;background:var(--surface);color:var(--ink);border:1px solid var(--line)}.ui-scope-note{font-size:10px;color:var(--muted);line-height:1.6;margin:10px 0 0}.ui-date-error{font-size:12px;color:var(--ui-bad);margin-bottom:0}.ui-filter-empty{padding:20px;text-align:center;font-size:12px;color:var(--muted);background:var(--bg)}.ui-filter-empty td{padding:22px!important}
.kpi[data-ui-kpi]{cursor:pointer;transition:border-color .16s,box-shadow .16s}.kpi[data-ui-kpi]:hover{border-color:var(--ui-gold);box-shadow:0 8px 24px #b38b211a}.ui-kpi-hint{display:block;color:#92701e;margin-top:10px;font-size:10px;font-weight:700}.kpi.highlight .ui-kpi-hint{color:#f3d480}.ui-detail-modal{width:min(940px,100%);border-radius:12px}.ui-detail-top{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.ui-detail-top h2{margin-top:8px}.ui-detail-top .eyebrow{font-size:9px}.ui-detail-value{font-weight:800;font-size:32px;letter-spacing:-1px;margin:14px 0}.ui-detail-modal .data-table{min-width:620px}.ui-detail-modal .notice{margin-bottom:14px}.ui-detail-modal .subtle{font-size:10px;margin-top:4px}
.ui-filtered-analysis{margin-top:24px}.ui-analysis-heading h2{font-size:16px;margin:0 0 5px}.ui-analysis-heading p{font-size:11px;color:var(--muted);margin:0 0 13px}.ui-analysis-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.ui-analysis-card:last-child:nth-child(odd){grid-column:1/-1}.ui-analysis-card .card-header h2{font-size:14px}.ui-analysis-card .card-header p{line-height:1.5}.ui-scope-tag{font-size:9px;background:var(--ui-gold-soft);color:#826016}.ui-chart-bar{margin:14px 0}.ui-chart-bar>div:first-child{display:flex;justify-content:space-between;gap:13px;align-items:center;margin-bottom:6px;font-size:11px}.ui-chart-bar strong{white-space:nowrap}.ui-chart-track{height:8px;background:#e8e6df;border-radius:3px;overflow:hidden}.ui-chart-track i{display:block;height:100%;border-radius:3px;background:#bf9630}.ui-chart-bar:nth-child(3n+2) i{background:#647b93}.ui-chart-bar:nth-child(3n) i{background:#71917e}.ui-daily-chart{width:100%;max-height:230px}.ui-chart-axis{stroke:var(--line)}.ui-chart-line{stroke:var(--ui-gold)}.ui-daily-chart text{fill:var(--muted);font-family:inherit;font-size:11px}
html[data-theme="dark"]{color-scheme:dark;--bg:#171b20;--surface:#22272e;--ink:#ecece6;--muted:#a6b0bd;--line:#39414b;--ui-gold:#ddbb5a;--ui-gold-soft:#3d3522;--teal:#d4ae49;--red:#ec8589;--ui-good:#82d9ad;--ui-bad:#ffa3a8;--shadow:0 9px 28px #00000014}
html[data-theme="dark"] body{background:linear-gradient(180deg,#1a1f25,#14181d);color:var(--ink)}
html[data-theme="dark"] .card,html[data-theme="dark"] .kpi,html[data-theme="dark"] .modal,html[data-theme="dark"] .auth-card,html[data-theme="dark"] .list-item{background:var(--surface);color:var(--ink);border-color:var(--line)}
html[data-theme="dark"] .kpi.highlight{background:linear-gradient(135deg,#3d3a2e,#292b2c);border:1px solid #68582d}
html[data-theme="dark"] .page-heading h1,html[data-theme="dark"] .card-header h2,html[data-theme="dark"] .modal h2,html[data-theme="dark"] .auth-card h1,html[data-theme="dark"] .donut-core b{color:var(--ink)}
html[data-theme="dark"] .page-heading p,html[data-theme="dark"] .auth-card p,html[data-theme="dark"] .card-header p,html[data-theme="dark"] .subtle,html[data-theme="dark"] .kpi .k-label,html[data-theme="dark"] .kpi .helper,html[data-theme="dark"] label,html[data-theme="dark"] .helptext,html[data-theme="dark"] .rowline .secondary,html[data-theme="dark"] .list-item .meta,html[data-theme="dark"] .footer-note,html[data-theme="dark"] .modal-desc,html[data-theme="dark"] .muted-note{color:var(--muted)}
html[data-theme="dark"] .btn,html[data-theme="dark"] .square-btn,html[data-theme="dark"] .mobile-menu,html[data-theme="dark"] .chip,html[data-theme="dark"] .auth-card .btn:not(.primary){background:#2b3139;border-color:#4a4b43;color:var(--ink)}
html[data-theme="dark"] .btn.primary{background:linear-gradient(135deg,#e2c467,#c19c36);border-color:#c19c36;color:#21251f}
html[data-theme="dark"] .btn.danger,html[data-theme="dark"] .action-text.red{color:#f19a9e}
html[data-theme="dark"] input,html[data-theme="dark"] select,html[data-theme="dark"] textarea,html[data-theme="dark"] .text-field,html[data-theme="dark"] .period,html[data-theme="dark"] .auth-card input{background:#1a1f25;border-color:#4c4b40;color:var(--ink)}
html[data-theme="dark"] input::placeholder,html[data-theme="dark"] textarea::placeholder{color:#909eac}
html[data-theme="dark"] .data-table thead,html[data-theme="dark"] .data-table tr:hover td{background:#2a3038}
html[data-theme="dark"] .data-table th,html[data-theme="dark"] .data-table td,html[data-theme="dark"] .rowline{border-color:#363d46}
html[data-theme="dark"] .data-table th{color:#bac3ce}
html[data-theme="dark"] .notice{background:#332f24;border-color:#655738;color:#e4d4a0}
html[data-theme="dark"] .notice.warn{background:#3d3121;border-color:#705b2d;color:#ebd19c}
html[data-theme="dark"] .notice.red{background:#3a242a;border-color:#76424a;color:#ffb3b7}
html[data-theme="dark"] .empty{background:#20252c;border-color:#48515d;color:var(--muted)}
html[data-theme="dark"] .tag{background:#343b45;color:#cbd3df}html[data-theme="dark"] .tag.good{background:#203d32;color:#9be2bb}html[data-theme="dark"] .tag.warn{background:#443820;color:#f1cf81}html[data-theme="dark"] .tag.bad{background:#49272f;color:#ffb0b8}html[data-theme="dark"] .tag.blue{background:#27384d;color:#b4c9f5}
html[data-theme="dark"] .donut-core{background:var(--surface);color:var(--muted)}html[data-theme="dark"] .alert{border-color:var(--line)}html[data-theme="dark"] .alert .iconbox{background:#3d3522;color:#e9c871}html[data-theme="dark"] .alert p{color:var(--muted)}html[data-theme="dark"] .progress,html[data-theme="dark"] .bar-track,html[data-theme="dark"] .ui-chart-track{background:#39414a}
html[data-theme="dark"] .upload-drop{background:#292a25;border-color:#7c6b35}html[data-theme="dark"] .upload-drop:hover{background:#353224}html[data-theme="dark"] .upload-icon{background:#443820;color:#e4c66c}html[data-theme="dark"] .import-duplicate{background:#3c3221}
html[data-theme="dark"] .ui-kpi-hint{color:#e4bd59}html[data-theme="dark"] .ui-scope-tag{background:#3d3522;color:#eed087}html[data-theme="dark"] .topbar{border-color:var(--line)}
html[data-theme="dark"] .auth-card input:-webkit-autofill{-webkit-text-fill-color:var(--ink);-webkit-box-shadow:0 0 0 1000px #1a1f25 inset}
@media(max-width:1200px){.ui-filter-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.ui-search-label{grid-column:span 2}.ui-function-search{max-width:240px}.topbar .breadcrumb{display:none}}
@media(max-width:880px){.main{padding-left:16px;padding-right:16px}.ui-function-search{max-width:none;flex-basis:100%;order:3}.topbar{gap:12px}.ui-filter-heading span{display:block;margin:4px 0 0}.ui-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ui-search-label{grid-column:1/-1}.ui-analysis-grid{grid-template-columns:1fr}.ui-analysis-card:last-child:nth-child(odd){grid-column:auto}.ui-function-results{left:0;right:auto}}
@media(max-width:530px){.ui-filter-panel{padding:13px}.ui-filter-grid{gap:9px}.ui-filter-grid>label:last-child{grid-column:1/-1}.ui-filter-footer{align-items:flex-start}.ui-filter-footer [data-ui-scope]{line-height:1.6}.ui-month-label{width:100%;justify-content:space-between}.topbar-right{gap:6px}.topbar-right .btn{font-size:10px;padding:7px}.card{padding:16px}.kpi{min-height:134px}.ui-auth-theme{top:12px;right:12px}.ui-detail-value{font-size:27px}.ui-detail-top h2{font-size:17px}}
