/* CELAR 0.10: official identity, local assets only. */
:root{color:#303d38;background:#f4f6f4;font-family:ui-sans-serif,system-ui,-apple-system,"Segoe UI",Arial,sans-serif;--purple:#4b285e;--green:#138640;--gray:#6e7972;--yellow:#e9bd46;--line:#e2e8e3}
a,.row-action,.back-link,summary{color:var(--purple)}h1,h2,h3{color:#392549}h1{font-size:26px;line-height:1.25}p{line-height:1.65}.layout{grid-template-columns:266px minmax(0,1fr)}.sidebar{width:auto;background:#48285b;padding:23px 16px 16px;scrollbar-width:thin;scrollbar-color:#8d6d9e #48285b}.brand{padding:0 0 20px;gap:11px;border-color:#70537e}.brand strong{font-size:17px;letter-spacing:0}.brand small{color:#dfd3e5;font-size:11px;line-height:1.5}.official-logo{width:76px;height:76px;object-fit:contain;flex-shrink:0}.nav-body{flex:1;display:flex;flex-direction:column}.menu-title{color:#cabbce;font-size:10px;margin-top:23px;letter-spacing:1.6px}.sidebar nav a{color:#f2edf4;line-height:1.45;font-weight:500;font-size:13px;white-space:normal;padding:9px 12px}.sidebar nav a:hover,.sidebar nav a.current{background:#664777;color:white}.sidebar nav a.current{box-shadow:inset 3px 0 #e9bd46}.side-bottom{border-color:#70537e;margin-top:25px}.signout,.user-info small{color:#e6dce9}.user-dot{background:var(--yellow)}.micro{color:#828c84;letter-spacing:1.25px}.topbar{padding:25px 30px;border-color:var(--line);align-items:flex-start}.topright{flex-shrink:0}.content{padding:27px 30px}.date-pill{background:#f0f5f0;color:#53705b}.secure{color:#137a3b}.panel,.stat,.detail-summary{border-color:var(--line);box-shadow:0 3px 14px #253c2b04;border-radius:14px}.btn{min-height:36px;border-radius:9px;white-space:normal;text-align:center;line-height:1.4}.btn.primary{background:var(--green);color:#fff}.btn.gold{background:#edc75c;color:#3d3417}.btn.outline{background:#f1ecf5;color:var(--purple)}.btn.ghost{background:#eff3f0;color:#43604e}.btn:focus-visible,a:focus-visible{outline:3px solid #e7bd50;outline-offset:3px}.stat strong,.money-strong,.detail-summary strong,.treasury-card strong,.method-card strong{color:#3f2d4d}.stat.featured{background:var(--purple)}.stat-link.featured:hover{background:#5b366f}.stat-link:hover{border-color:#b299bd;box-shadow:0 7px 22px #48285b14}.stat-link::after{color:#6e4e7e}.hint,.muted,.intro{color:#6c7871}.note{background:#f5f2f7;color:#584663;border-left-color:var(--yellow)}label{color:#46544b}label input,label select,label textarea{border-color:#cfd9d1;color:#2b3830}input:focus,select:focus,textarea:focus{outline:2px solid #cee6d4;border-color:#63a277}th{background:#f7f9f6;color:#68786b;border-color:var(--line)}td{color:#37473d;border-color:#eef2ee}summary{line-height:1.5;padding:5px 0}details[open]>summary{margin-bottom:15px}.searchbar{flex-wrap:wrap}.searchbar input{max-width:100%}.class-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(265px,1fr));gap:16px;margin:23px 0}.class-card{display:block;border:1px solid var(--line);background:white;border-radius:14px;padding:23px;color:#344c3b;box-shadow:0 3px 13px #36533c05;transition:transform .15s,border-color .15s}.class-card:hover{border-color:#9eb6a3;text-decoration:none;transform:translateY(-2px)}.class-card h2{font-size:23px;margin:10px 0 22px}.card-kicker{font-size:10px;letter-spacing:.6px;text-transform:uppercase;color:#808b83;line-height:1.55}.class-meta{display:flex;gap:12px;flex-wrap:wrap;justify-content:space-between;font-size:12px}.card-action{display:block;border-top:1px solid #eef2ed;margin-top:20px;padding-top:14px;font-size:12px;color:var(--green);font-weight:700}.tuition-indicator{display:inline-flex;align-items:center;gap:7px;font-size:12px;line-height:1.45;color:#546157}.status-dot{display:inline-block;flex-shrink:0;width:10px;height:10px;border-radius:50%;vertical-align:middle;box-shadow:0 0 0 3px #f3f5f2}.status-dot.green{background:#168b43}.status-dot.red{background:#c23547}.status-dot.amber{background:#d5a318}.status-dot.gray{background:#9baba0}.status-legend{display:flex;gap:17px;flex-wrap:wrap;margin:20px 0 8px;font-size:11px;color:#69786c}.status-legend>span{display:inline-flex;align-items:center;gap:7px}.guardian-layout{display:grid;grid-template-columns:minmax(320px,1fr) minmax(340px,1.2fr);gap:20px}.guardian-list{max-height:70vh;overflow-y:auto;margin-top:18px}.guardian-row{display:flex;align-items:center;gap:9px;padding:15px 10px;border-bottom:1px solid #edf1eb;border-radius:9px}.guardian-row.selected{background:#f2edf6;box-shadow:inset 3px 0 var(--purple)}.guardian-name{flex:1;min-width:0;font-size:12px;line-height:1.5}.guardian-name strong{display:block}.guardian-name small{display:block;font-size:11px;color:#818b83;margin-top:5px}.wa-button{color:#11733a;background:#edf8ee;padding:8px 9px;border:1px solid #cee5d2;border-radius:7px;font-size:10px;font-weight:700;white-space:nowrap}.wa-disabled{color:#8e958e;font-size:10px}.linked-student{padding:19px 0;border-bottom:1px solid #e8eee7}.linked-student:last-child{border:0}.linked-student .muted{margin:6px 0 10px}.pill{color:#5d406b;background:#f1ecf5}.pill.ok{background:#ebf6ec;color:#237242}.import-person{border-bottom:1px solid #e6ece5;padding:14px 0}.import-warning{color:#8e6325;font-size:12px;margin:8px 0}.table-scroll select{max-width:100%;padding:9px;border:1px solid #cfd9d1;border-radius:7px;min-width:180px}.login-layout{background:linear-gradient(125deg,#f3f6f2 0%,#f1ecf5 65%,#eaf4ed 100%)}.login-card{box-shadow:0 20px 70px #3c26421c;border:1px solid #e0e7de;padding:35px 40px}.login-logo{display:block;width:146px;height:146px;object-fit:contain;margin:0 auto 20px}.login-card .micro{text-align:center;color:#73627c}.login-card h1{text-align:center;color:var(--purple);font-size:31px}.login-card .muted{text-align:center}.login-card .hint{text-align:center}.v09-action-card,.renewal-class{border-color:var(--line);color:#43314e}.v09-action-card strong,.renewal-class-head strong{color:var(--purple)}.v09-action-card:hover{border-color:#b4c4b4}.treasury-card,.method-card{border-color:var(--line)}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}#menuToggle{display:none}button:disabled{opacity:.5;cursor:not-allowed}
@media(max-width:1150px){.layout{grid-template-columns:236px minmax(0,1fr)}.official-logo{width:60px;height:60px}.guardian-layout{grid-template-columns:1fr}.guardian-list{max-height:440px}.content{padding:23px}.topbar{padding:23px}.class-grid{grid-template-columns:repeat(auto-fit,minmax(230px,1fr))}}
@media(max-width:740px){.layout{display:block}.sidebar{position:relative;width:100%;height:auto;max-height:none;padding:14px 18px}.brand{padding:0;border:0}.brand .official-logo{width:55px;height:55px}.brand small{margin-top:1px}.nav-body{display:none}.sidebar.is-open .nav-body{display:flex}.sidebar nav{display:grid;overflow:visible}.sidebar nav a{white-space:normal}.sidebar .menu-title,.sidebar .side-bottom{display:block}.side-bottom{margin-top:12px}#menuToggle{display:block;margin-left:auto;border:1px solid #9b82a9;background:transparent;color:#fff;padding:9px;border-radius:8px}.topbar{display:block;padding:20px 17px}.content{padding:18px 15px}.topbar h1{font-size:24px}.class-grid{grid-template-columns:1fr}.guardian-layout{grid-template-columns:1fr}.guardian-row{padding:13px 8px}.panel{padding:19px}.class-card{padding:22px}.form-grid .span2{grid-column:span 1}.searchbar input{width:100%}.section-head{align-items:stretch}.login-card{padding:30px 24px}.topright{margin-top:12px}.status-legend{gap:13px}.btn{min-height:40px}}
@media print{.sidebar,.topbar,footer{display:none!important}.content{padding:0}.panel{border:0;box-shadow:none}.layout{display:block}.contract-editor{border:0!important}.import-person{break-inside:avoid}}

/* Version 0.12: finite recurring charges, readable on desktop and mobile. */
.repeat-section{margin:24px 0;padding:22px;background:#f8f6fa;border:1px solid #d8cfe0;border-radius:14px}
.repeat-heading{align-items:center;gap:16px}.repeat-heading h3{margin:0 0 6px}.repeat-heading .hint{margin:0}
.repeat-section [hidden]{display:none!important}.repeat-table{min-width:730px}.repeat-table input:not([type="hidden"]){min-width:86px;width:100%;box-sizing:border-box}
.repeat-table td{vertical-align:middle}.repeat-note-row td{padding-top:0;padding-bottom:20px}.repeat-note-row label{font-size:.85rem;font-weight:normal;color:#62616e}.repeat-note-row input{margin-top:5px}
.repeat-current,.repeat-totals{display:flex;gap:16px;justify-content:space-between;flex-wrap:wrap;margin:16px 0;padding:14px;background:#fff;border-radius:10px}
.repeat-current{border-left:4px solid #6d3e82}.repeat-totals{border-left:4px solid #16833a}
.series-table{min-width:900px}.series-table small{display:block}.checkbox-label{display:flex;align-items:flex-start;gap:10px;margin-top:16px;line-height:1.5}.checkbox-label input{width:18px;height:18px;flex-shrink:0;margin-top:3px}
@media(max-width:700px){.repeat-section{padding:14px}.repeat-heading{align-items:flex-start}.repeat-current,.repeat-totals{gap:8px;flex-direction:column}.repeat-section .form-grid{grid-template-columns:1fr}}

.repeat-table input:not([type="hidden"]){border:1px solid #cfd9d1;border-radius:8px;background:#fff;color:#2b3830;padding:10px 11px;min-height:40px;font-size:13px}.repeat-heading h3{color:var(--purple)}

.permission-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:12px;margin:18px 0}.permission-grid .check{align-items:flex-start;line-height:1.5}#novo:target{border-color:#159647}button:disabled{opacity:.5;cursor:not-allowed}.panel details form{margin-top:16px}.login-card h1{font-size:1.85rem}

/* 0.14 - school-year context and historical trend comparison */
.year-select{display:flex;align-items:center;gap:8px;background:#f6f2f8;padding:8px 12px;border:1px solid #e3dce9;border-radius:14px;margin:0}
.year-select label{font-size:12px;font-weight:700;color:#522664;white-space:nowrap}
.year-select select{min-width:93px;width:auto;padding:7px 26px 7px 10px;border:1px solid #cab7d8;border-radius:9px;background:white;font-size:16px;font-weight:800;color:#49245c;cursor:pointer}
.year-context{display:flex;align-items:center;gap:10px;flex-wrap:wrap;background:#f2f7f3;border-left:4px solid #169345;padding:11px 15px;border-radius:9px;margin-bottom:18px;font-size:13px}
.year-context strong{color:#24603d}.year-context span{color:#56635b}
.trends-panel h3{font-size:16px;margin:8px 0 15px}.trend-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px;margin-bottom:20px}
.trend-row{display:grid;grid-template-columns:43px minmax(0,1fr) 52px;align-items:center;gap:8px;font-size:13px;margin-bottom:9px}.trend-row strong{text-align:right;font-variant-numeric:tabular-nums}
.trend-track{background:#f2eff5;height:16px;border-radius:10px;overflow:hidden}.trend-bar{height:100%;border-radius:10px;min-width:0}.trend-bar.students{background:#128b42}.trend-bar.classrooms{background:#693a7d}
.trend-selected{background:#ecf6ed}@media(max-width:860px){.trend-grid{grid-template-columns:1fr}.year-select{flex-wrap:wrap}.year-context{align-items:flex-start}.topright{flex-wrap:wrap}}

.trend-cash{margin:12px 0 20px}.trend-row.cash{grid-template-columns:43px minmax(0,1fr) 125px}.trend-bar.income{background:#dfb521}.trend-row.cash strong{font-size:12px}.trend-cash h3{margin-bottom:12px}

/* 0.15 - straightforward month selector and drill-down finance */
.dashboard-actions{display:flex;justify-content:flex-end;gap:8px;margin-bottom:10px;flex-wrap:wrap}
.period-header{display:flex;align-items:flex-end;justify-content:space-between;padding:19px 23px;background:#fff;border:1px solid var(--line);border-radius:14px;margin:0 0 17px;gap:16px}
.period-header label{font-size:15px;display:block;font-weight:750;color:#493054;margin-bottom:8px}
.period-header input[type=month]{font-size:17px;min-height:47px;min-width:202px;border:1px solid #d5d9d3;border-radius:10px;padding:10px;background:#fff;color:#3a3542;cursor:pointer}
.period-year{background:#f2edf6;color:#552d6c;border-radius:11px;padding:12px 14px;font-size:14px;font-weight:750}
.clean-stats .stat{min-height:142px;display:flex;flex-direction:column;justify-content:center;padding:23px 24px;gap:16px}
.clean-stats .stat span{font-size:15px;font-weight:650}
.clean-stats .stat strong{font-size:clamp(23px,2.2vw,31px);line-height:1.14;overflow-wrap:anywhere}
.clean-stats .stat.featured strong{color:#fff}
.discreet-notice{margin:12px 0 20px;color:#67726a;font-size:13px;padding:13px 16px;background:#f6f7f5;border:1px solid var(--line);border-radius:11px}
.discreet-notice summary{cursor:pointer;font-weight:650}
.receipt-nav{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:15px;font-size:14px;font-weight:700;color:#718071}
.receipt-hero{display:flex;justify-content:space-between;align-items:center;gap:20px;background:linear-gradient(110deg,#4b285e,#644078);color:#fff;border-radius:17px;padding:28px 32px;margin-bottom:24px}
.receipt-hero span{display:block;font-size:13px;font-weight:750;letter-spacing:.065em;color:#f5eafc}
.receipt-hero strong{display:block;font-size:clamp(31px,3.9vw,52px);line-height:1.15;color:#fff;letter-spacing:-.025em;margin:8px 0}
.receipt-hero small{display:block;color:#ece0f2;font-size:13px}
.receipt-period{background:#ffffff1b;border-radius:12px;padding:14px 18px;font-weight:700;font-size:17px}
.receipt-block-title{display:flex;justify-content:space-between;align-items:baseline;margin:22px 0 13px;gap:8px}
.receipt-block-title h2{font-size:20px;margin:0}.receipt-block-title>span{color:#708075;font-size:13px}
.receipt-choice-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(178px,1fr));gap:12px}
.receipt-choice{display:flex;flex-direction:column;min-height:125px;background:#fff;border-radius:12px;padding:16px 18px;border:1px solid var(--line);text-decoration:none;color:#3f4550;transition:box-shadow .12s,border-color .12s}
.receipt-choice span{font-size:14px;color:#46544b;font-weight:700}
.receipt-choice strong{font-size:clamp(18px,1.7vw,25px);font-weight:800;margin:10px 0 9px;color:#422453;line-height:1.12;overflow-wrap:anywhere}
.receipt-choice small{margin-top:auto;color:#158544;font-size:11px;font-weight:700}
.receipt-choice:hover{border-color:#9978ab;box-shadow:0 6px 18px #351a4717}
.receipt-choice.chosen{border:2px solid #148d4e;background:#eef8f0;padding:15px 17px}
.receipt-choice.chosen small{color:#116d37}
.receipt-register{margin-top:27px}
.receipt-register-head{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:15px}
.receipt-register-head h2{margin:0;font-size:22px}.receipt-register-head p{margin:6px 0 0;color:#66726b;font-size:14px}
.receipt-search{display:block;font-size:12px;color:#66726b;margin:12px 0 18px}
.receipt-search input{display:block;margin-top:7px;width:100%;max-width:410px;font-size:15px;border:1px solid #d6ded8;border-radius:9px;padding:11px 13px}
.receipt-register table th{font-size:12px}.receipt-register table td{font-size:14px;vertical-align:middle}
.receipt-register table td small{display:block;margin-top:4px;font-size:12px;color:#6a776f}
.receipt-register table .money-strong{font-size:16px;white-space:nowrap}
@media(max-width:760px){.dashboard-actions{justify-content:flex-start}.period-header{padding:15px;align-items:center}.period-header input[type=month]{min-width:0;width:100%}.receipt-hero{padding:23px 19px}.receipt-period{display:none}.receipt-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.receipt-choice{padding:13px;min-height:111px}.receipt-choice.chosen{padding:12px}.receipt-choice strong{font-size:18px}.clean-stats .stat{min-height:118px}.receipt-register table{min-width:760px}}
#registros{scroll-margin-top:18px}

/* 0.16: editable expense review, accessible in desktop and mobile. */
.expense-intro{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:17px}.expense-intro h2{font-size:23px;margin:0 0 6px}.expense-intro p{margin:0;color:#637068;font-size:14px}
.expense-progress{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:18px 0}.expense-progress>div{background:#fff;border:1px solid #e0e6e1;border-radius:13px;padding:17px}.expense-progress small{font-size:11px;letter-spacing:.04em;color:#64746b;font-weight:700;display:block}.expense-progress strong{display:block;color:#48285b;font-size:clamp(20px,2vw,26px);margin:10px 0}.expense-progress strong span{font-size:12px;color:#738077}
.expense-review-actions{display:flex;align-items:center;gap:15px;flex-wrap:wrap;background:#f0edf3;border:1px solid #e0d6e6;padding:14px 18px;border-radius:13px;margin:18px 0 12px}.expense-review-actions>.btn{margin-left:auto;min-height:47px;font-size:15px;font-weight:750}.expense-review-actions>span{color:#64726a;font-size:13px}.expense-select-all,.expense-row-check{display:inline-flex;align-items:center;gap:10px;font-weight:750;color:#4a2b5b;font-size:16px;cursor:pointer}.expense-select-all input,.expense-row-check input{width:20px;height:20px;accent-color:#167c42;cursor:pointer}.expense-review-actions.bottom{margin-top:20px}
.expense-row{margin:12px 0;padding:20px 22px;border:1px solid #dce6dd;border-radius:14px;background:#fff}.expense-row:has([data-expense-check]:checked){border-color:#6daf80;background:#fcfffc}.expense-row-done{opacity:.8;background:#f2f8f3}.expense-row-locked{background:#faf8f1;border-color:#e9ddc5}
.expense-row-header{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-bottom:11px}.expense-row-id{font-size:12px;color:#77817c}.expense-link{margin-left:auto;font-size:13px;font-weight:700}.expense-row-name{font-size:18px;font-weight:750;color:#402b4c;line-height:1.35;margin:9px 0}.expense-detail{display:block;font-size:12px;font-weight:400;color:#66716a;margin:5px 0 0}.expense-review-flags{font-size:12px;margin:9px 0 13px;color:#8b6326}.expense-review-flags summary{font-weight:650}.expense-protected{background:#fff5e2;padding:12px;border-radius:9px;font-size:13px;color:#674923}.expense-noselect,.expense-confirmed{font-weight:750;color:#227b47}.expense-locked-label{color:#926a30;font-size:13px}.expense-row-footer{margin-top:13px;display:flex;justify-content:flex-end}.expense-form-grid{display:grid;grid-template-columns:minmax(175px,1.5fr) minmax(105px,.7fr) minmax(170px,1.35fr) minmax(120px,.85fr);gap:10px;margin-top:14px}.expense-form-grid label{font-size:12px;color:#58665e;display:flex;flex-direction:column;gap:6px;font-weight:650}.expense-form-grid input,.expense-form-grid select{min-width:0;width:100%;box-sizing:border-box;padding:10px;border:1px solid #d5dfd7;border-radius:9px;background:#fff;color:#263b2d;font-size:13px;height:42px}.expense-form-grid .wide{grid-column:auto}.expense-form-grid [hidden]{display:none!important}.expense-help{font-size:12px;line-height:1.6;color:#6d796f;margin:20px 0}.expense-error{background:#fff0f0;border:1px solid #e9c5c5;color:#9d2e35;padding:15px 18px;border-radius:12px;margin:17px 0}.expense-success{background:#eaf6ed;border:1px solid #cde2d0;color:#25683d;padding:15px 18px;border-radius:12px;margin:17px 0}.expense-batch-links{display:grid;gap:8px}.expense-batch-links a{display:flex;justify-content:space-between;gap:12px;padding:12px;border-radius:9px;background:#f8f7fa;color:#49245c;font-size:14px}.expense-batch-links a span{color:#198746;font-size:12px}
@media(max-width:1180px){.expense-form-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.expense-progress{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:740px){.expense-intro{flex-direction:column;align-items:flex-start}.expense-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.expense-row{padding:16px}.expense-review-actions{gap:10px}.expense-review-actions>.btn{width:100%;margin-left:0}.expense-progress{grid-template-columns:repeat(2,minmax(0,1fr))}.expense-progress>div{padding:12px}}@media(max-width:440px){.expense-form-grid{grid-template-columns:1fr}.expense-progress{grid-template-columns:1fr 1fr}.expense-progress strong{font-size:19px}}

.expense-default-bank{display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:700;color:#4d3a5e}.expense-default-bank select{min-width:170px;max-width:220px;padding:9px;border:1px solid #cfbdd8;border-radius:8px;background:#fff;color:#45344b}@media(max-width:740px){.expense-default-bank{width:100%;justify-content:space-between}.expense-default-bank select{flex:1;min-width:0}}

/* CELAR 0.18 - visible roster, high-contrast controls, touch-friendly alternatives */
.roster-toolbar{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;margin:2px 0 16px}
.roster-toolbar h2{font-size:clamp(1.45rem,2.3vw,2rem);margin:4px 0 0;color:#4b2b5d}
.roster-kicker{font-size:.71rem;letter-spacing:.055em;font-weight:750;text-transform:uppercase;color:#677478;margin:0}
.roster-tools{display:flex;align-items:end;gap:10px;flex-wrap:wrap}
.month-choice{font-size:.8rem}.month-choice input{margin-top:6px}
.roster-status{margin-bottom:12px}.roster-helper{font-size:.9rem;padding:11px 14px;background:#f5f2f7;border-left:4px solid #6a3a83;border-radius:8px;margin-bottom:16px}
.roster-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;align-items:start}
.roster-card{border:1px solid #e1e5e3;background:#fff;border-radius:17px;padding:17px;box-shadow:0 3px 14px rgba(51,51,51,.035);min-width:0;transition:border .14s,background .14s}
.roster-card.roster-over{background:#e9f9ee;border:2px dashed #148641}
.roster-card-head{display:flex;justify-content:space-between;gap:8px;align-items:start}
.roster-card h3{font-size:1.5rem;font-weight:780;color:#49275d;margin:5px 0 0}
.roster-count{color:#23693d;background:#e8f5eb;border-radius:999px;padding:5px 9px;font-size:.82rem;white-space:nowrap;font-weight:700}
.roster-card-summary{display:flex;align-items:center;justify-content:space-between;gap:8px;border-bottom:1px solid #e8eaeb;padding:11px 0}
.roster-detail-link,.roster-manage-link{font-size:.84rem;color:#3b6f49;text-decoration:none;font-weight:700}
.roster-drop{min-height:74px;padding:7px 0}
.roster-student{padding:9px 2px;border-bottom:1px solid #eff1ef;display:flex;justify-content:space-between;align-items:center;gap:10px}
.roster-student:last-child{border-bottom:0}
.roster-student-main{display:flex;align-items:center;gap:7px;min-width:0}
.roster-student-main a{color:#2e3434;text-decoration:none;font-size:.91rem;font-weight:650;overflow-wrap:anywhere}
.roster-student-main a:hover{text-decoration:underline;color:#148541}
.roster-drag{color:#9392a0;cursor:grab;font-size:1.1rem}
.roster-student-actions{display:flex;align-items:center;gap:7px;flex-shrink:0}
.roster-small-action{background:#f4f5f5;border:1px solid #e4e5e5;border-radius:7px;color:#4b2b5d;font-size:.75rem;font-weight:700;padding:5px 8px;cursor:pointer}
.roster-small-action:hover{border-color:#784393;background:#f8f3fa}
.roster-small-action.danger-text{color:#a5293b}
.roster-empty{color:#66737b;font-size:.86rem;padding:13px 2px}
.roster-card-foot{border-top:1px solid #edf0ed;padding-top:12px;display:flex;justify-content:space-between;align-items:center;gap:7px}
.roster-create{margin-top:19px}
.roster-modal{max-width:min(550px,calc(100vw - 24px));width:100%;border:0;border-radius:17px;padding:22px;box-shadow:0 20px 70px rgba(12,18,22,.3);background:white;color:#3e3444}
.roster-modal::backdrop{background:rgba(30,24,32,.52)}
.roster-modal h2{font-size:1.35rem;margin-top:0}
.roster-modal label{display:block;margin:15px 0 5px}
.roster-modal-actions{display:flex;justify-content:end;gap:12px;margin-top:20px}
.roster-dragging{opacity:.42}
.receipt-switch{display:flex;align-items:center;justify-content:space-between;gap:12px;background:#f6f2f8;border:1px solid #e5d9e9;border-radius:12px;padding:12px 15px;margin:12px 0 18px;flex-wrap:wrap}
.receipt-switch strong{font-size:1rem}
.receipt-year-total{background:#49265f;border-radius:14px;color:white;padding:14px 22px;display:flex;flex-direction:column;gap:4px}
.receipt-year-total span{font-size:.8rem}.receipt-year-total strong{font-size:1.65rem}
.byroom-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:13px;margin:15px 0 24px}
.byroom-card{background:white;border:1px solid #dce5de;border-radius:14px;padding:17px;text-decoration:none;color:#342b3a;display:flex;flex-direction:column;gap:7px}
.byroom-card.chosen{border:2px solid #168945;background:#f5fcf7}
.byroom-card span,.byroom-card small{font-size:.8rem;color:#686d70}.byroom-card h3{font-size:1.05rem;margin:0}.byroom-card strong{font-size:1.55rem;color:#47265f}
.byroom-breakdown{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin:10px 0 22px}
.byroom-filter{display:flex;flex-direction:column;gap:5px;border:1px solid #dedee2;border-radius:10px;padding:12px;text-decoration:none;color:#3d2b42}
.byroom-filter strong{font-size:1.13rem}.byroom-filter.chosen{background:#f4eafa;border-color:#693781}.byroom-sum{font-size:1.4rem;color:#49265f}
@media (max-width:800px){.roster-grid{grid-template-columns:1fr}.roster-card{padding:13px}.roster-student{gap:5px}.roster-small-action{padding:6px}.byroom-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:460px){.byroom-grid{grid-template-columns:1fr}.roster-student{flex-wrap:wrap}.roster-student-actions{margin-left:20px}.receipt-switch{align-items:stretch}.receipt-switch .btn{width:100%;text-align:center}}

.roster-modal [hidden]{display:none!important}
/* CELAR v0.19 - concise chronological financial activity */
.activity-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 0 16px}
.activity-head p{margin:0;font-size:14px}.activity-count{background:#e9f4eb;color:#117a39;font-size:15px;font-weight:800;border-radius:12px;padding:11px 16px;white-space:nowrap}
.activity-filter-box{padding:18px;background:white;border:1px solid #e1e4e3;border-radius:16px;margin:12px 0 18px}
.activity-filters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) auto;align-items:end;gap:12px}
.activity-filters label{display:block;margin:0 0 6px;font-size:12px;color:#514662;font-weight:800}.activity-filters select,.activity-filters input{margin:0;width:100%;padding:11px 12px;min-height:43px;font-size:15px}
.activity-clear{text-align:center;justify-content:center;min-height:43px;display:flex;align-items:center}
.activity-note{font-size:13px;line-height:1.55;color:#62646c;margin-bottom:17px}
.activity-day{margin:20px 0}.activity-day h2{font-size:20px;font-weight:800;margin:0 0 10px;color:#4b2659}
.activity-items{display:grid;gap:9px}.activity-item{display:grid;grid-template-columns:100px minmax(0,1fr) auto;align-items:center;background:white;border:1px solid #e3e5e5;border-radius:13px;padding:15px;gap:16px;min-width:0}
.activity-marker{font-weight:800;color:#4c2e58;font-size:15px;border-left:4px solid #9ea4a7;padding-left:12px;white-space:nowrap}
.activity-marker.activity-green{border-color:#0d9344}.activity-marker.activity-purple{border-color:#753d84}.activity-data{min-width:0}.activity-kind{display:flex;align-items:center;gap:8px;margin-bottom:4px;font-size:12px;font-weight:800;color:#6e557b}
.activity-data strong{display:block;font-size:16px;line-height:1.4;overflow-wrap:anywhere;color:#30283b}
.activity-data small{display:block;font-size:12px;color:#66737b;margin-top:5px;line-height:1.4}
.activity-end{text-align:right;display:grid;gap:6px;justify-items:end;min-width:118px}.activity-amount{font-size:20px;white-space:nowrap}.activity-positive{color:#088442}.activity-negative{color:#513465}.activity-open{font-size:13px;color:#127c47;font-weight:700}
.activity-inactive{background:#fafafb}.activity-inactive .activity-data strong{text-decoration:none;color:#687078}.activity-void{border-radius:20px;background:#ece9eb;color:#5d5862;padding:3px 8px}
.activity-manage{margin-top:3px;text-align:left;max-width:300px}.activity-manage summary{font-size:12px;font-weight:700;color:#964343;cursor:pointer;text-align:right}.activity-manage form{display:grid;gap:10px;margin-top:8px;min-width:250px;padding:12px;border:1px solid #eddcdd;border-radius:10px;background:#fffafa}.activity-manage label{font-size:12px;color:#493f50;font-weight:600}.activity-manage input[type=text],.activity-manage input:not([type]){width:100%;margin-top:5px;padding:8px;font-size:14px}.activity-manage .activity-check{display:flex;align-items:center;gap:7px;line-height:1.4}.activity-danger{background:#ab434b!important;color:white!important;border:0!important}
.activity-alert{margin:0 0 16px;padding:12px 16px;border-radius:12px;background:#ecf7ef;border:1px solid #bfdec9;color:#176a3f;font-weight:700}.activity-pages{display:flex;gap:12px;align-items:center;justify-content:center;margin-top:30px}
@media(max-width:760px){.activity-filters{grid-template-columns:1fr 1fr}.activity-filter-box{padding:12px}.activity-item{grid-template-columns:60px minmax(0,1fr);padding:11px;gap:9px}.activity-marker{font-size:13px;padding-left:7px}.activity-end{grid-column:2;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px;text-align:left}.activity-amount{font-size:18px}.activity-manage{flex-basis:100%;width:100%;max-width:unset}.activity-manage form{min-width:0}.activity-day h2{font-size:18px}}

/* 0.20 - calm, two-column enrollment board */
.renew20-toolbar{display:flex;flex-wrap:wrap;align-items:end;justify-content:space-between;gap:16px;margin-bottom:16px}
.renew20-toolbar h2{margin:0 0 4px;color:#442451;font-size:1.8rem}.renew20-toolbar p{margin:0;color:#69717a}
.renew20-years{display:flex;align-items:end;gap:9px;flex-wrap:wrap}.renew20-years label{display:flex;flex-direction:column;gap:4px;font-size:.83rem;color:#58616a;font-weight:650}
.renew20-years input{max-width:126px;font-size:1.05rem;font-weight:700;min-height:43px;padding:7px 12px;background:#fff}
.renew20-board{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px;align-items:start}
.renew20-column{border-radius:17px;background:#fff;border:1px solid #e4e7e7;min-width:0;padding:16px}
.renew20-origin{border-top:5px solid #6c3b86}.renew20-destination{border-top:5px solid #148f45}
.renew20-col-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;margin-bottom:16px}
.renew20-col-head h3{margin:3px 0;font-size:1.35rem;color:#48285a}.renew20-col-head>span{font-weight:750;color:#66717c}
.renew20-eyebrow{font-size:.7rem;color:#727e89;text-transform:uppercase;letter-spacing:.08em;font-weight:750}
.renew20-cards,.renew20-target-list{display:grid;gap:11px}
.renew20-room{border:1px solid #e5e7e8;border-radius:14px;overflow:hidden;background:#fff;min-width:0;box-shadow:0 2px 10px #20232b08}
.renew20-drag-room[draggable=true]{cursor:grab}.renew20-drag-room[draggable=true]:active{cursor:grabbing}
.renew20-room-head{padding:13px 14px;background:#f8f8fa;display:flex;justify-content:space-between;gap:9px;align-items:center;flex-wrap:wrap}
.renew20-target-room .renew20-room-head{background:#f3faf5}.renew20-room-head h4{font-size:1.15rem;color:#442451;margin:3px 0;line-height:1.25}
.renew20-room-stats{font-size:.78rem;color:#64707a}
.renew20-move-all{background:#e6f5e9;color:#137443;border:1px solid #b5dfc0;border-radius:10px;padding:9px 11px;font-weight:750;cursor:pointer}
.renew20-move-all:hover{background:#d5f0dd}.renew20-students{padding:5px 12px 10px;max-height:255px;overflow-y:auto}
.renew20-student,.renew20-target-student{padding:8px 2px;display:flex;justify-content:space-between;gap:8px;align-items:center;border-bottom:1px solid #eff1f2;font-size:.88rem}
.renew20-student:last-child,.renew20-target-student:last-child{border:0}
.renew20-student a,.renew20-target-student a{color:#412551;text-decoration:none;font-weight:600;overflow-wrap:anywhere}
.renew20-student button{border:1px solid #d3e4d9;border-radius:7px;background:#f0f9f3;color:#177841;padding:4px 10px;font-size:1rem;cursor:pointer}
.renew20-target-student{padding:9px 14px}.renew20-target-student small{color:#597968;white-space:nowrap}
.renew20-rename{border-top:1px solid #ecedef;padding:8px 14px;font-size:.84rem;color:#70418a}
.renew20-rename summary{font-weight:750;cursor:pointer}.renew20-rename form{display:flex;align-items:center;gap:8px;margin-top:8px;flex-wrap:wrap}
.renew20-rename input{min-width:140px;flex:1;font-size:.94rem}
.renew20-dropzone{border:2px dashed #acd4b5;border-radius:14px;min-height:162px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:20px;background:#f6fbf7;color:#275d3b;gap:7px;margin-bottom:12px}
.renew20-dropzone small{font-size:.82rem;max-width:310px;line-height:1.45;color:#63786a}.renew20-drop-icon{font-size:2.4rem;line-height:1;color:#15954a}
.renew20-over{outline:3px solid #f2c400!important;background:#e3fae9!important}
.renew20-existing{margin-top:16px;border-top:1px solid #e7e9eb;padding-top:13px}.renew20-existing>summary{font-weight:750;cursor:pointer;color:#4d2b65}
.renew20-existing>p{font-size:.81rem;color:#65727d}.renew20-existing-row{display:flex;gap:8px;align-items:center;justify-content:space-between;border-bottom:1px solid #eaeded;padding:10px 3px;font-size:.85rem}
.renew20-existing-row small{color:#7b858e}.renew20-bottom{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-top:18px;flex-wrap:wrap}
.renew20-bottom small{color:#64717c;max-width:400px}.renew20-empty,.renew20-empty-small{font-size:.87rem;color:#879199;padding:10px}
.renew20-dialog{border:0;border-radius:18px;width:min(550px,calc(100vw - 24px));padding:25px;box-shadow:0 12px 55px #1c16214f;max-height:90vh;overflow:auto}
.renew20-dialog::backdrop{background:#1a162bad}.renew20-dialog h3{margin:0 0 8px;color:#422653;font-size:1.4rem}
.renew20-dialog p{font-size:.93rem;color:#58616a}
.renew20-dialog label{display:block;margin-top:12px;font-size:.9rem;font-weight:650;color:#43284e}
.renew20-dialog fieldset{border:1px solid #e0e5e3;border-radius:12px;padding:11px 14px;margin:14px 0}
.renew20-dialog legend{font-weight:750;font-size:.85rem;color:#58616a}
.renew20-dialog fieldset label{display:flex;align-items:start;gap:8px;margin:7px 0;font-weight:500;line-height:1.35}
.renew20-dialog input[type=radio]{width:19px;height:19px;min-width:19px;margin:0}
.renew20-dialog input:not([type=radio]),.renew20-dialog select,.renew20-dialog textarea{display:block;margin-top:5px;width:100%;font-size:1rem}
.renew20-dialog-actions{display:flex;justify-content:end;gap:9px;margin-top:20px;flex-wrap:wrap}
.renew20-dialog .renew20-legal{font-size:.77rem;color:#6a7a70;margin-bottom:0}
@media(max-width:950px){.renew20-board{grid-template-columns:1fr}.renew20-students{max-height:200px}}

/* CELAR v0.20 — event dashboard: clean, large, readable, works on mobile. */
.event20-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:14px 0 20px;flex-wrap:wrap}
.event20-head h2{font-size:clamp(1.4rem,2vw,2rem);margin:0;color:#46265b}.event20-head p{color:#61726e;margin:4px 0}
.event20-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:16px}
.event20-stat{background:white;border:1px solid #e2e8e4;border-radius:16px;padding:18px 16px;min-width:0}
.event20-stat>span{display:block;color:#526560;font-size:.9rem;font-weight:600;min-height:2.8em}
.event20-stat>strong{display:block;color:#452759;font-size:clamp(1.2rem,1.6vw,1.75rem);line-height:1.25;margin-top:8px;overflow-wrap:anywhere}
.event20-result{background:#452759;border-color:#452759}.event20-result>span,.event20-result>strong{color:#fff}
.event20-breakdowns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:13px}
.event20-method{display:flex;justify-content:space-between;gap:12px;align-items:center;border-bottom:1px solid #e9ede9;padding:12px 0;font-size:1rem}.event20-method strong{font-size:1.1rem;color:#49285d;white-space:nowrap}
.event20-meta{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0 24px}.event20-meta>span{padding:9px 12px;border-radius:10px;background:#eef4ef;font-size:.92rem}.event20-small{font-size:.84rem}
.event20-ledger{margin:18px 0}.event20-ledger table td{font-size:.96rem}
@media(max-width:900px){.event20-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:620px){.event20-breakdowns{grid-template-columns:1fr}.event20-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.event20-stat{padding:13px}.event20-stat>strong{font-size:1.15rem}}

/* 0.20: reading-first monthly status. Red for not registered is an operational alert, not a debt statement. */
.tuition-name{font-weight:750!important;font-size:1rem!important;text-decoration:none!important;line-height:1.5;display:inline-block}
.tuition-name-green{color:#087b3b!important}.tuition-name-red{color:#b5203b!important}.tuition-name-gray{color:#69716f!important}
.tuition-word{margin-left:7px;display:inline-flex;vertical-align:middle;font-size:.72rem;font-weight:700;padding:3px 8px;border-radius:999px;line-height:1.5;white-space:nowrap}
.tuition-word-green{background:#e6f6eb;color:#096b34}.tuition-word-red{background:#fcebf0;color:#a81f38}.tuition-word-gray{background:#edf0f0;color:#626d6a}
.tuition-name:focus-visible{outline:3px solid #e7bd50!important;outline-offset:3px}
.tuition-alert-action{background:#fcebf0!important;color:#ad2040!important;border:1px solid #ebc8d3!important;font-weight:750!important;display:inline-flex!important;gap:9px;align-items:center!important}
.tuition-alert-action strong{font-size:1rem;color:#a8203d}
.tuition-alert-list tr.missing-row{background:#fff9fa}
.tuition-alert-list td{vertical-align:middle}
.tuition-summary{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin:14px 0}
.tuition-summary b{font-size:1.55rem;color:#a8203d}
.tuition-actions{display:flex;gap:6px;flex-wrap:wrap}

/* Annual finance and invoice control: concise, high-contrast, keyboard friendly. */
.annual-stats{margin:16px 0 22px}.annual-stats .stat strong{font-size:clamp(1.3rem,2vw,2rem)}
.invoice-pref-form{display:flex;align-items:flex-end;flex-wrap:wrap;gap:12px}.invoice-pref-form label{flex:1;min-width:220px}
.student-invoice{border-left:4px solid #6f4095}.dashboard-reminders{margin:20px 0}.dashboard-reminders .section-head{align-items:center}
.reminders-sub{display:flex;flex-wrap:wrap;gap:12px;margin-top:8px}.reminders-sub a{font-weight:700;color:#4b2365}
@media(max-width:720px){.invoice-pref-form>*{width:100%}.annual-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* 0.22: balanced primary activity dashboard */
.event22-list{display:grid;gap:12px;margin:18px 0 26px}.event22-item{display:flex;align-items:center;gap:18px;justify-content:space-between;text-decoration:none;color:inherit;background:#fff;border:1px solid #e4e5e8;border-radius:14px;padding:20px 23px;box-shadow:0 3px 10px rgba(41,24,63,.04)}.event22-item:hover{border-color:#2b9655;box-shadow:0 4px 14px rgba(41,24,63,.11)}.event22-item h3{font-size:1.35rem;margin:5px 0;color:#432451}.event22-metrics{display:flex;gap:26px;flex-wrap:wrap}.event22-metrics span{color:#6b7180;font-size:.88rem}.event22-metrics strong{color:#432451;font-size:1.3rem;display:block}.event22-arrow{color:#168744}.event22-create{margin-top:18px}@media(max-width:790px){.event22-item{display:block}.event22-metrics{margin:15px 0}.event22-metrics strong{font-size:1.1rem}}

.annual22-cta{display:flex;gap:14px;align-items:center;flex-wrap:wrap;background:#f0f7f1;border:1px solid #bddbc4;border-left:5px solid #159447;border-radius:13px;padding:16px 20px;margin:15px 0;color:#34244c}.annual22-cta strong{font-size:1.15rem}.annual22-cta span{flex:1;min-width:175px;color:#566771}.annual22-cta .btn{margin-left:auto}

.expenses22-group{border:1px solid #e4e4ea;border-radius:12px;margin:12px 0;padding:0}.expenses22-group summary{display:flex;justify-content:space-between;padding:16px 18px;cursor:pointer;color:#48255c;background:#f7f5f9;border-radius:12px}.expenses22-group[open] summary{border-bottom:1px solid #dedce5;border-radius:12px 12px 0 0}.expenses22-group summary span{color:#67727c}.expenses22-group table{margin:6px 12px;min-width:660px}

/* CELAR 0.22 - category-based expense entry, deliberate interaction */
.expense22-head{display:flex;gap:16px;align-items:center;justify-content:space-between;flex-wrap:wrap;margin-bottom:16px}
.expense22-head h2{font-size:1.6rem;margin:0 0 5px;color:#392047}
.expense22-head .muted{margin:0}
.expense22-groups{display:grid;grid-template-columns:repeat(auto-fit,minmax(166px,1fr));gap:10px;margin:16px 0 20px}
.expense22-kind{position:relative;display:flex;align-items:center;cursor:pointer;margin:0}
.expense22-kind input{position:absolute;opacity:0;inset:0;width:100%;height:100%;cursor:pointer}
.expense22-kind span{display:block;width:100%;padding:16px;background:#f7f6f8;border:2px solid #e5e0e9;border-radius:12px;color:#382344;font-size:1rem;font-weight:750;min-height:76px}
.expense22-kind small{display:block;color:#6f7280;font-size:.78rem;margin-top:5px;line-height:1.35;font-weight:450}
.expense22-kind input:checked+span{background:#f3eaf9;border-color:#6b3683;box-shadow:0 0 0 1px #6b3683}
.expense22-kind input:focus-visible+span{outline:3px solid #e1b626;outline-offset:2px}
.expense22-category-cols{display:grid;grid-template-columns:minmax(240px,.8fr) minmax(320px,1.2fr);gap:24px}
.expense22-create{display:grid;align-content:start;gap:12px;background:#f8f7f9;border-radius:12px;padding:16px}
.expense22-create label,.expense22-category-edit label{display:grid;gap:5px}
.expense22-category-list{border-top:1px solid #e5e0e9;padding:10px 0}
.expense22-category-list>summary{cursor:pointer;font-size:1rem;font-weight:750;color:#4a275e;list-style:auto}
.expense22-category-list>summary small{font-weight:400;color:#7b7b86}
.expense22-category-edit{margin:6px 2px;border-radius:8px;border:1px solid #e6e3e9;padding:8px 10px}
.expense22-category-edit>summary{cursor:pointer}
.expense22-category-edit form{display:grid;gap:10px;margin-top:12px}
.expense22-category-edit form label.check{display:flex;align-items:flex-start;gap:8px}
.expense22-category-edit form input[type=checkbox]{width:auto;margin-top:4px}
@media(max-width:820px){.expense22-category-cols{grid-template-columns:1fr}.expense22-kind span{min-height:70px}}

/* 0.22 - escolha de pagamento clara e padrao Paga agora. */
.expense22-payment-choices{min-width:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;border:0;margin:2px 0 4px;padding:0}
.expense22-payment-choices legend{font-size:.88rem;font-weight:750;color:#42344d;margin-bottom:8px}
.expense22-paykind{position:relative;cursor:pointer;display:block;margin:0}
.expense22-paykind input{position:absolute;opacity:0;width:100%;height:100%;inset:0;cursor:pointer}
.expense22-paykind span{display:flex;flex-direction:column;gap:6px;padding:14px 16px;border:2px solid #e0dbe7;border-radius:12px;background:#faf9fb;color:#4c315d;min-height:74px}
.expense22-paykind small{font-size:.8rem;color:#68717a;font-weight:400}
.expense22-paykind input:checked+span{background:#edf7f1;border-color:#268a5d;box-shadow:0 0 0 1px #268a5d}
.expense22-paykind input:focus-visible+span{outline:3px solid #f2c64b;outline-offset:2px}
.expense22-source-info{border:1px solid #dfe7e2;background:#f4f8f5;color:#28543e;border-radius:9px;padding:10px 14px;font-size:.88rem;line-height:1.5}
@media(max-width:610px){.expense22-payment-choices{grid-template-columns:1fr}}

.expense22-manager>summary{cursor:pointer;list-style:none;display:flex;align-items:center;justify-content:space-between}
.expense22-manager>summary::-webkit-details-marker{display:none}
.expense22-manager>summary::after{content:'Abrir categorias';font-size:.84rem;font-weight:700;color:#5c3476;background:#f1eaf6;border-radius:8px;padding:7px 11px}
.expense22-manager[open]>summary::after{content:'Recolher'}
.expense22-manager[open]>summary{margin-bottom:16px}
