.pro-area,.pro-dialog { color:var(--white); font:inherit; }
.pro-area { padding:8px 0 32px; }
.pro-toolbar { display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:18px; }
.pro-toolbar h2 {margin-right:auto;font-size:23px;}
.pro-area button,.pro-dialog button {font:inherit;font-size:12px;padding:10px 14px;min-height:38px;background:var(--panel-light);color:var(--white);border:1px solid var(--border-light);cursor:pointer;}
.pro-area button:hover,.pro-dialog button:hover {border-color:var(--gold);}
.pro-area button:disabled,.pro-dialog button:disabled {opacity:.5;cursor:wait;}
.pro-primary {background:var(--gold)!important;color:var(--black)!important;}
.pro-grid {display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px;}
.pro-card {padding:18px;background:var(--panel);border:1px solid var(--border-light);min-width:0;}
.pro-card h3 {font-size:17px;margin:4px 0 8px;}
.pro-card p,.pro-muted {color:var(--gray);font-size:13px;line-height:1.55;}
.pro-card strong.pro-number {display:block;font-size:30px;margin-top:10px;}
.pro-photo {width:64px;height:64px;object-fit:cover;border-radius:50%;margin-bottom:10px;}
.pro-list {display:grid;gap:8px;margin:16px 0;}
.pro-row {display:flex;gap:14px;align-items:center;justify-content:space-between;padding:13px;border:1px solid var(--border);background:var(--panel);}
.pro-row > div {min-width:0;overflow-wrap:anywhere;}.pro-row small{display:block;color:var(--gray);margin-top:5px;}
.pro-dialog {width:min(620px,calc(100% - 24px));max-height:90dvh;margin:auto;padding:22px;background:var(--panel);border:1px solid var(--border-light);overflow:auto;}
.pro-dialog::backdrop {background:rgba(0,0,0,.65);}
.pro-dialog h2 {font-size:22px;margin:0 0 16px;}
.pro-form {display:grid;grid-template-columns:1fr 1fr;gap:13px;}
.pro-form label {display:flex;flex-direction:column;gap:6px;font-size:12px;color:var(--gray);min-width:0;}
.pro-form input,.pro-form select,.pro-form textarea,.pro-toolbar input,.pro-toolbar select {width:100%;font:inherit;font-size:14px;color:var(--white);background:var(--panel-soft);border:1px solid var(--border-light);padding:10px;min-height:40px;}
.pro-form textarea {min-height:90px;resize:vertical;}.pro-wide{grid-column:1/-1;}
.pro-form select[multiple]{min-height:110px;}.pro-actions{display:flex;justify-content:flex-end;gap:8px;grid-column:1/-1;}
.pro-message {font-size:13px;color:var(--gold);grid-column:1/-1;white-space:pre-wrap;overflow-wrap:anywhere;}
.pro-tabs {display:flex;gap:8px;flex-wrap:wrap;margin-bottom:15px;}
.pro-area details {margin:12px 0;}.pro-area pre{white-space:pre-wrap;overflow-wrap:anywhere;font-size:12px;}
.sidebar-nav {overflow-y:auto;min-height:0;}
:root[data-admin-theme="light"] :is(.pro-card,.pro-row,.pro-dialog,.pro-area button,.pro-dialog button,.pro-form input,.pro-form textarea,.pro-form select){border-radius:8px;}
:root[data-admin-theme="light"] .pro-primary{background:#f8d481!important;color:#202124!important;}
@media(max-width:560px){.pro-form{grid-template-columns:1fr}.pro-row{flex-wrap:wrap}.pro-grid{grid-template-columns:1fr}.pro-dialog{padding:16px}.pro-toolbar h2{width:100%}}
.sidebar-nav button[hidden]{display:none!important;}
@media(max-width:560px){.pro-form input,.pro-form select,.pro-form textarea,.pro-toolbar input{font-size:16px;}}

/* Filtros financieros y alta de gastos. */
#proRange{align-items:flex-end}
#proRange label{display:flex;flex-direction:column;gap:6px;font-size:12px;min-width:0}
#proRange input,#proRange>button{height:42px;box-sizing:border-box;margin:0}
.pro-area button.pro-expense-button{background:var(--panel);color:var(--danger);border-color:var(--danger-border)}
.pro-area button.pro-expense-button:hover,.pro-area button.pro-expense-button:focus-visible{background:rgba(190,65,65,.12);border-color:var(--danger);color:var(--danger)}
:root[data-admin-theme="light"] .pro-area button.pro-expense-button{color:#a83232;background:#fff2f2;border-color:#dda8a8}
:root[data-admin-theme="light"] .pro-area button.pro-expense-button:hover,:root[data-admin-theme="light"] .pro-area button.pro-expense-button:focus-visible{color:#862525;background:#ffe3e3;border-color:#b95b5b}
@media(max-width:560px){#proRange{display:grid;grid-template-columns:1fr 1fr}#proRange>button{grid-column:1/-1}}
