/* Datos v2 — maqueta visual de alta fidelidad. Se carga después de styles.css. */
body.data-active { background: #f3f5fb; }
body.data-active .legacy-main { max-width: 1600px; padding: 30px clamp(18px,3vw,48px) 56px; }
.data-view { --data-navy:#18233f; --data-ink:#29334d; --data-muted:#6f7990; --data-violet:#554fd3; --data-coral:#e77a67; --data-mint:#1a9b70; color: var(--data-ink); }
.data-status { margin: 40px auto; color: #59647c; font-size: 16px; text-align: center; }
.data-workbench { grid-template-columns: 278px minmax(0,1fr); gap: 28px; }
.data-content { min-width: 0; }

.data-sidebar { top: 92px; border: 0; border-radius: 26px; box-shadow: 0 22px 60px rgba(38,44,85,.12); }
.data-sidebar > header { gap: 14px; padding: 24px 20px; background: radial-gradient(circle at 16% 0,rgba(149,142,255,.72),transparent 42%),linear-gradient(145deg,#3933bc,#181552); }
.data-sidebar > header > span { width: 48px; height: 48px; border-radius: 15px; }
.data-sidebar > header small { margin-bottom: 4px; font-size: 12px; letter-spacing: .14em; }
.data-sidebar > header strong { font-size: 16px; line-height: 1.25; }
.data-sidebar nav { gap: 4px; padding: 14px; }
.data-sidebar nav button { grid-template-columns: 42px minmax(0,1fr); min-height: 58px; column-gap: 12px; padding: 9px 10px; border-radius: 14px; color: #68728a; }
.data-sidebar nav button > span { width: 42px; height: 42px; border-radius: 13px; color: #5e5bd6; background: #f0f1ff; }
.data-sidebar nav button .app-icon { width: 20px; height: 20px; }
.data-sidebar nav button b { color: #2f3951; font-size: 14px; }
.data-sidebar nav button small { margin-top: 3px; font-size: 12px; line-height: 1.25; }
.data-sidebar nav button:hover { transform: translateX(2px); background: #f5f5ff; }
.data-sidebar nav button.is-active { color: #4c47c6; background: linear-gradient(90deg,#efefff,#f8f8ff); box-shadow: inset 4px 0 #554fd3; }
.data-sidebar nav button.is-active > span { color: #fff; background: linear-gradient(145deg,#6862e2,#4943c1); box-shadow: 0 8px 18px rgba(76,70,195,.25); }
.data-sidebar > aside { margin: 4px 14px 15px; padding: 14px; border: 1px solid #cdebdc; border-radius: 15px; }
.data-sidebar > aside strong { font-size: 13px; }
.data-sidebar > aside span { margin-top: 5px; font-size: 12px; line-height: 1.45; }

.data-command-bar { display: flex; align-items: flex-start; justify-content: space-between; gap: 22px; margin-bottom: 18px; }
.data-command-bar p,.data-screen-heading p { margin: 0 0 6px; color: #5b56ce; font-size: 12px; font-weight: 900; letter-spacing: .13em; }
.data-command-bar h1 { margin: 0; color: var(--data-navy); font-size: clamp(30px,3vw,42px); line-height: 1.05; letter-spacing: -.045em; }
.data-command-bar > div:first-child > span { display: block; margin-top: 8px; color: var(--data-muted); font-size: 15px; }
.data-command-badges { display: flex; align-items: center; justify-content: flex-end; gap: 8px; flex-wrap: wrap; }
.data-demo-badge,.data-readonly-badge { display: inline-flex; min-height: 35px; align-items: center; gap: 7px; padding: 8px 11px; border-radius: 999px; font-size: 12px; font-weight: 900; letter-spacing: .04em; }
.data-demo-badge { color: #4943b7; background: #efefff; box-shadow: inset 0 0 0 1px #d9d7fb; }
.data-demo-badge i { width: 8px; height: 8px; border-radius: 50%; background: #625bd5; box-shadow: 0 0 0 4px rgba(98,91,213,.15); }
.data-readonly-badge { color: #176b50; background: #e8f8f0; box-shadow: inset 0 0 0 1px #cfeade; }
.data-readonly-badge .app-icon { width: 16px; height: 16px; }

.data-period-panel { display: grid; grid-template-columns: auto minmax(280px,1fr); gap: 14px 20px; align-items: end; margin-bottom: 20px; padding: 15px 16px; border: 1px solid #dde2ef; border-radius: 18px; background: rgba(255,255,255,.92); box-shadow: 0 8px 24px rgba(42,51,88,.06); }
.data-presets { display: flex; gap: 5px; padding: 4px; border-radius: 13px; background: #eef0f6; }
.data-presets button { min-height: 40px; padding: 8px 15px; border: 0; border-radius: 10px; color: #616c82; background: transparent; font-size: 13px; font-weight: 800; }
.data-presets button:hover { color: #38327f; background: #fafaff; }
.data-presets button.is-active { color: #fff; background: #4943c5; box-shadow: 0 6px 15px rgba(73,67,197,.24); }
.data-filters { display: flex; align-items: flex-end; justify-content: flex-end; gap: 10px; }
.data-filters label,.data-custom-dates label { display: grid; gap: 5px; min-width: 155px; font-size: 12px; }
.data-filters label > span,.data-custom-dates label > span,.data-payment-fields label > span { color: #5f6a80; font-size: 12px; font-weight: 850; }
.data-filters select,.data-filters input,.data-custom-dates input,.data-payment-fields select,.data-payment-fields input { min-height: 42px; padding: 8px 11px; border: 1px solid #cfd6e5; border-radius: 11px; color: #2d3850; background: #fff; font: inherit; font-size: 14px; }
.data-custom-dates { display: flex; align-items: flex-end; gap: 8px; }
.data-custom-dates button,#dataApplyDates { min-height: 42px; padding: 8px 14px; border: 0; border-radius: 11px; color: #fff; background: #4d47c8; font-size: 13px; font-weight: 850; }
.data-period-panel > p { grid-column: 1/-1; display: flex; align-items: center; gap: 8px; margin: 0; padding-top: 11px; border-top: 1px solid #eceff5; color: #3a455d; font-size: 14px; }
.data-period-panel > p .app-icon { width: 18px; height: 18px; color: #5a54cf; }
.data-period-panel > p span { margin-left: auto; color: #7b8497; }

/* El rango personalizado necesita una fila propia: nunca puede empujar los filtros encima de los períodos. */
body.data-active .data-period-panel:has(#dataCustomDates:not([hidden])) { grid-template-columns: minmax(0,1fr); }
body.data-active .data-period-panel:has(#dataCustomDates:not([hidden])) .data-filters { justify-content: flex-start; flex-wrap: wrap; }
body.data-active .data-period-panel:has(#dataCustomDates:not([hidden])) .data-presets { width: max-content; max-width: 100%; }

.data-screen { animation: data-screen-in .24s ease both; }
.data-screen[hidden] { display: none !important; }
@keyframes data-screen-in { from { opacity: 0; transform: translateY(7px); } to { opacity: 1; transform: none; } }
.data-hero { position: relative; display: grid; grid-template-columns: minmax(0,1.4fr) minmax(260px,.6fr); gap: 28px; overflow: hidden; margin-bottom: 18px; padding: clamp(24px,4vw,44px); border-radius: 27px; color: #fff; background: radial-gradient(circle at 12% 5%,rgba(145,137,255,.75),transparent 38%),radial-gradient(circle at 93% 90%,rgba(40,194,157,.3),transparent 40%),linear-gradient(135deg,#282379,#15183d); box-shadow: 0 24px 52px rgba(36,32,111,.2); }
.data-hero::after { position: absolute; right: 27%; bottom: -100px; width: 250px; height: 250px; border: 1px solid rgba(255,255,255,.12); border-radius: 50%; box-shadow: 0 0 0 38px rgba(255,255,255,.035),0 0 0 78px rgba(255,255,255,.02); content: ""; }
.data-hero > div,.data-hero > aside { position: relative; z-index: 1; }
.data-hero-kicker { color: #cbc9ff; font-size: 12px; font-weight: 900; letter-spacing: .15em; }
.data-hero h2 { margin: 11px 0 12px; font-size: clamp(29px,3.4vw,48px); line-height: 1.07; letter-spacing: -.045em; }
.data-hero h2 em { color: #8ce2c4; font-style: normal; }
.data-hero > div > p { max-width: 700px; margin: 0; color: #d5d8ed; font-size: 16px; line-height: 1.55; }
.data-hero > aside { align-self: center; padding: 22px; border: 1px solid rgba(255,255,255,.17); border-radius: 19px; background: rgba(255,255,255,.1); backdrop-filter: blur(10px); }
.data-hero > aside > span { color: #a9f0d6; font-size: 12px; font-weight: 900; letter-spacing: .13em; }
.data-hero > aside strong { display: block; margin: 8px 0 17px; font-size: 20px; line-height: 1.3; }
.data-hero > aside button { display: inline-flex; min-height: 42px; align-items: center; gap: 8px; padding: 9px 13px; border: 0; border-radius: 11px; color: #24216f; background: #fff; font-size: 13px; font-weight: 900; }
.data-hero > aside button .app-icon { width: 16px; height: 16px; }

.data-metrics { grid-template-columns: repeat(4,minmax(0,1fr)); gap: 12px; margin-bottom: 18px; }
.data-metrics article { min-height: 145px; padding: 20px; border: 0; border-radius: 19px; background: #fff; box-shadow: 0 10px 28px rgba(47,56,96,.075); }
.data-metrics article > span { width: 43px; height: 43px; border-radius: 13px; }
.data-metrics article small { font-size: 12px; letter-spacing: .08em; }
.data-metrics article strong { margin-top: 8px; font-size: clamp(20px,2vw,27px); }
.data-metrics article p { margin-top: 7px; font-size: 12px; line-height: 1.35; }
.data-chart-card,.data-table-card,.data-channel-card,.data-activity-card,.data-integrity-card,.data-coverage-card { border: 0; border-radius: 22px; background: #fff; box-shadow: 0 12px 34px rgba(46,55,94,.08); }
.data-chart-card { margin-bottom: 16px; }
.data-chart-card > header { padding: 23px 24px 10px; }
.data-chart-card header p,.data-activity-card header p,.data-integrity-card header p { font-size: 12px; }
.data-chart-card header h2,.data-activity-card header h2,.data-integrity-card header h2 { font-size: 24px; }
.data-chart-card header > div:first-child > span { margin-top: 5px; font-size: 14px; }
.data-chart-legend { gap: 15px; font-size: 13px; }
body.data-active .data-chart-legend span { font-size: 12px; }
.data-chart { height: 315px; padding: 4px 18px 0; }
.data-chart svg text { font-size: 12px !important; }
.data-chart-card > footer { padding: 14px 24px 18px; font-size: 13px; }
.data-chart-card > footer b { font-size: 15px; }
.data-overview-actions { display: grid; grid-template-columns: repeat(3,1fr); gap: 12px; }
.data-overview-actions button { display: grid; grid-template-columns: 45px minmax(0,1fr); gap: 3px 13px; align-items: center; min-height: 84px; padding: 16px; border: 1px solid #e0e4ef; border-radius: 17px; color: #374159; background: #fff; text-align: left; transition: .18s ease; }
.data-overview-actions button:hover { transform: translateY(-2px); border-color: #bfc0ed; box-shadow: 0 12px 26px rgba(59,55,147,.1); }
.data-overview-actions button > span { display: grid; grid-row: 1/3; width: 45px; height: 45px; place-items: center; border-radius: 14px; color: #514bd0; background: #efefff; }
.data-overview-actions strong { font-size: 15px; }.data-overview-actions small { font-size: 12px; color: #7c8597; }

.data-screen-heading { display: flex; align-items: flex-start; justify-content: space-between; gap: 20px; margin-bottom: 18px; padding: 4px 2px; }
.data-screen-heading h2 { margin: 0; color: var(--data-navy); font-size: clamp(27px,3vw,38px); letter-spacing: -.04em; }
.data-screen-heading > div > span { display: block; max-width: 760px; margin-top: 8px; color: var(--data-muted); font-size: 15px; line-height: 1.5; }
.data-screen-heading > button,.data-table-card > header button,.data-legacy-payments button { display: inline-flex; min-height: 43px; align-items: center; gap: 8px; padding: 9px 14px; border: 1px solid #d2d8e6; border-radius: 11px; color: #444ec0; background: #fff; font-size: 13px; font-weight: 850; }
.data-screen-heading > button { border-color: #4d47c8; color: #fff; background: #4d47c8; box-shadow: 0 8px 19px rgba(77,71,200,.2); }
.data-screen-heading button .app-icon { width: 17px; height: 17px; }
.data-section-stats { display: grid; grid-template-columns: repeat(4,1fr); overflow: hidden; margin-bottom: 16px; border: 1px solid #dee3ee; border-radius: 19px; background: #fff; box-shadow: 0 9px 27px rgba(48,56,92,.06); }
.data-section-stats article { position: relative; padding: 20px 22px; border-left: 1px solid #e8ebf2; }
.data-section-stats article:first-child { border-left: 0; }
.data-section-stats span,.data-section-stats strong,.data-section-stats small { display: block; }
.data-section-stats span { color: #6d778b; font-size: 13px; font-weight: 750; }
.data-section-stats strong { margin-top: 7px; color: #29334a; font-size: 23px; }
.data-section-stats small { margin-top: 5px; color: #8590a2; font-size: 12px; }
.data-section-stats .is-balance { background: linear-gradient(145deg,#f1f2ff,#fafaff); }.data-section-stats .is-balance strong { color: #4b4aa3; }
.data-table-card { overflow: hidden; }
.data-table-card > header { display: flex; align-items: center; justify-content: space-between; gap: 18px; padding: 20px 22px; border-bottom: 1px solid #e7eaf1; }
.data-table-card h3,.data-channel-card h3,.data-legacy-payments h3 { margin: 0; color: #263149; font-size: 20px; letter-spacing: -.02em; }
.data-table-card header p,.data-channel-card header p,.data-legacy-payments header span { margin: 5px 0 0; color: #7a8497; font-size: 13px; }
.data-table-tools { display: flex; align-items: center; gap: 8px; }
.data-table-tools label { display: flex; min-width: 250px; min-height: 42px; align-items: center; gap: 8px; padding: 0 11px; border: 1px solid #d0d7e4; border-radius: 11px; background: #fff; }
.data-table-tools label .app-icon { width: 17px; height: 17px; color: #768095; }
.data-table-tools input { width: 100%; border: 0; outline: 0; color: #303a51; background: transparent; font: inherit; font-size: 13px; }
.data-table-tools select { min-height: 42px; padding: 8px 10px; border: 1px solid #d0d7e4; border-radius: 11px; color: #3b455c; background: #fff; font: inherit; font-size: 13px; }
.data-table-wrap { max-width: 100%; overflow-x: auto; }
.data-table-wrap table { width: 100%; min-width: 860px; border-collapse: collapse; }
.data-table-wrap th { padding: 12px 18px; color: #687286; background: #f7f8fb; font-size: 12px; font-weight: 900; letter-spacing: .055em; text-align: left; text-transform: uppercase; }
.data-table-wrap td { padding: 16px 18px; border-top: 1px solid #eceef4; color: #4d586e; font-size: 13px; line-height: 1.35; vertical-align: middle; }
.data-table-wrap td strong,.data-table-wrap td small { display: block; }.data-table-wrap td strong { color: #2c374f; font-size: 14px; }.data-table-wrap td small { margin-top: 4px; color: #8992a2; font-size: 12px; }
.data-table-card > footer { display: flex; align-items: center; justify-content: space-between; gap: 15px; padding: 14px 20px; border-top: 1px solid #e8ebf1; color: #788397; background: #fbfcfd; font-size: 12px; }
.data-table-card > footer button { min-height: 35px; padding: 7px 11px; border: 1px solid #d7dce7; border-radius: 9px; color: #505a6e; background: #fff; font-size: 12px; }.data-table-card > footer button:disabled { opacity: .45; }
.data-state,.data-channel-pill { display: inline-flex; min-height: 28px; align-items: center; padding: 5px 9px; border-radius: 999px; font-size: 12px; font-weight: 850; white-space: nowrap; }
.data-state.is-ok { color: #13704f; background: #e5f7ee; }.data-state.is-info { color: #2d5f9c; background: #e8f1fb; }.data-state.is-read { color: #5b48b8; background: #efebff; }.data-state.is-danger { color: #a44b44; background: #ffebe8; }
.data-channel-pill.is-whatsapp { color: #137553; background: #e5f8ee; }.data-channel-pill.is-email { color: #3965a8; background: #e9f1fc; }

.data-cash-explainer { display: grid; grid-template-columns: 1fr 44px 1fr 44px 1fr; align-items: center; gap: 10px; margin-bottom: 16px; padding: 20px; border: 1px solid #d9e4e5; border-radius: 20px; background: linear-gradient(120deg,#f2fbf8,#fff); box-shadow: 0 10px 28px rgba(31,91,82,.07); }
.data-cash-explainer > div { display: flex; align-items: center; gap: 13px; }.data-cash-explainer > div > span { display: grid; width: 46px; height: 46px; place-items: center; flex: 0 0 auto; border-radius: 14px; color: #14795e; background: #dff5ec; }.data-cash-explainer .app-icon { width: 21px; height: 21px; }
.data-cash-explainer p { margin: 0; }.data-cash-explainer small,.data-cash-explainer strong,.data-cash-explainer b { display: block; }.data-cash-explainer small { color: #718079; font-size: 12px; font-weight: 900; }.data-cash-explainer strong { margin-top: 5px; color: #263e3b; font-size: 22px; }.data-cash-explainer b { margin-top: 3px; color: #7c8987; font-size: 12px; font-weight: 650; }
.data-cash-explainer > i { height: 1px; background: #c9dddc; }
.data-split-grid { display: grid; grid-template-columns: minmax(0,1.4fr) minmax(310px,.6fr); gap: 16px; }
.data-compact-list article { display: grid; grid-template-columns: 45px minmax(0,1fr) auto; gap: 13px; align-items: center; padding: 17px 20px; border-top: 1px solid #eceff4; }.data-compact-list article:first-child { border-top: 0; }
.data-compact-list article > span { display: grid; width: 45px; height: 45px; place-items: center; border-radius: 13px; color: #4c50be; background: #efeffe; }.data-compact-list article > span.is-cash { color: #17785c; background: #e5f6ef; }.data-compact-list article > span.is-mp { color: #34739e; background: #e8f4fb; }
.data-compact-list p { margin: 0; }.data-compact-list strong,.data-compact-list small { display: block; }.data-compact-list strong { color: #2f394f; font-size: 14px; }.data-compact-list small { margin-top: 4px; color: #818b9d; font-size: 12px; }.data-compact-list article > b { color: #2a354c; font-size: 15px; }
.data-channel-card { padding: 22px; }.data-channel-card header p { color: #5a55cb; font-size: 12px; font-weight: 900; letter-spacing: .1em; }.data-channel-ring { display: grid; width: 160px; height: 160px; place-items: center; margin: 24px auto; border-radius: 50%; background: conic-gradient(#5c55d2 0 55%,#34a98b 55% 73%,#65a9d8 73% 81%,#e6d0af 81% 100%); }.data-channel-ring::before { grid-area: 1/1; width: 112px; height: 112px; border-radius: 50%; background: #fff; content:""; }.data-channel-ring span { z-index: 1; grid-area: 1/1; text-align: center; }.data-channel-ring strong,.data-channel-ring small { display: block; }.data-channel-ring strong { color: #292f50; font-size: 30px; }.data-channel-ring small { color: #7e8799; font-size: 12px; }
.data-channel-card dl { margin: 0; }.data-channel-card dl div { display: flex; justify-content: space-between; gap: 12px; padding: 9px 0; border-top: 1px solid #edf0f4; }.data-channel-card dt,.data-channel-card dd { margin: 0; color: #566176; font-size: 13px; }.data-channel-card dd { color: #29354b; font-weight: 800; }.data-channel-card dt i { display: inline-block; width: 9px; height: 9px; margin-right: 8px; border-radius: 50%; background: #5c55d2; }.data-channel-card dt i.is-mp { background:#34a98b; }.data-channel-card dt i.is-card { background:#65a9d8; }.data-channel-card dt i.is-cash { background:#e6d0af; }

/* Flujos existentes: misma densidad visual que Ficha y Agenda. */
.data-coverage-workflow > header { padding: 25px 26px 20px; }.data-coverage-workflow > header p { font-size: 12px; }.data-coverage-workflow > header h2 { font-size: 27px; }.data-coverage-workflow > header > div:first-child > span { margin-top: 7px; font-size: 14px; line-height: 1.45; }
.coverage-stage-strip { margin: 0 26px; }.coverage-stage-strip article { min-height: 120px; padding: 18px; }.coverage-stage-strip article > span { width: 36px; height: 36px; font-size: 13px; }.coverage-stage-strip small { font-size: 12px; }.coverage-stage-strip strong { margin-top: 7px; font-size: 19px; }.coverage-stage-strip b { margin-top: 4px; font-size: 12px; }
.coverage-legacy-details summary { padding: 15px 26px; font-size: 13px; }.coverage-legacy-details > aside { padding: 14px; }.coverage-legacy-details > aside strong { font-size: 13px; }.coverage-legacy-details > aside span { font-size: 12px; }
.data-coverage-visual dt { font-size: 13px; }.data-coverage-visual dd { font-size: 17px; }.data-coverage-list article p { font-size: 13px; }.data-coverage-list article small { font-size: 12px; }
.payables-row { padding: 15px; }.payables-row strong,.payables-row p b { font-size: 13px; }.payables-row div > span { margin-top: 5px; font-size: 12px; }.payables-row > em,.payables-row > button { font-size: 12px; }
.payables-workflow .payables-row.is-overdue > em { color: #3d6593; background: #eaf3fc; }
.payables-workflow .payables-row strong,.payables-workflow .payables-row div > span { overflow: visible; text-overflow: clip; white-space: normal; overflow-wrap: anywhere; }
.payables-workflow .data-legacy-payments { margin: 0 26px 22px; overflow: hidden; border: 1px solid #dfe5ea; border-radius: 19px; background: #fff; box-shadow: 0 12px 34px rgba(42,55,88,.06); }
.payables-workflow .data-legacy-payment-filters { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 11px; align-items: end; padding: 16px 20px; background: #f7f9fb; }
.payables-workflow .data-legacy-payment-filters label { display: grid; min-width: 0; gap: 6px; }.payables-workflow .data-legacy-payment-filters .is-wide { grid-column: 1/-1; }
.payables-workflow .data-legacy-payment-filters label > span { color: #5f6a7d; font-size: 12px; font-weight: 850; }
.payables-workflow .data-legacy-payment-filters input,.payables-workflow .data-legacy-payment-filters select { width: 100%; min-height: 42px; padding: 8px 10px; border: 1px solid #d6ddea; border-radius: 10px; color: #2b3a51; background: #fff; font: inherit; font-size: 13px; }
.payables-workflow .data-legacy-payment-filters > div { display: flex; gap: 7px; grid-column: 1/-1; justify-content: flex-end; }
.payables-workflow .data-legacy-payment-filters button,.payables-workflow .data-legacy-payments > footer button { min-height: 40px; padding: 8px 11px; border: 1px solid #d7deea; border-radius: 9px; color: #566177; background: #fff; font-size: 12px; font-weight: 850; }
.payables-workflow .data-legacy-payment-filters button[type="submit"] { border-color: #4d46c6; color: #fff; background: #4d46c6; }
.payables-workflow .data-legacy-payment-status { margin: 0; padding: 13px 20px; color: #56657a; background: #edf5fb; font-size: 13px; }
.payables-workflow .data-legacy-payment-list { background: #fff; }
.payables-workflow .data-legacy-payment-row { border-top: 1px solid #e8ecf1; }
.payables-workflow .data-legacy-payment-row:first-child { border-top: 0; }
.payables-workflow .data-legacy-payment-main { padding: 16px 20px 14px; }
.payables-workflow .data-legacy-payment-main > p { display: flex; align-items: center; justify-content: space-between; gap: 18px; margin: 0; }
.payables-workflow .data-legacy-payment-main > p > span { min-width: 0; }
.payables-workflow .data-legacy-payment-main small,.payables-workflow .data-legacy-payment-main strong { display: block; }
.payables-workflow .data-legacy-payment-main small { color: #1d747c; font-size: 12px; font-weight: 900; text-transform: uppercase; }
.payables-workflow .data-legacy-payment-main strong { margin-top: 3px; color: #2e3d52; font-size: 14px; overflow-wrap: anywhere; }
.payables-workflow .data-legacy-payment-main > p > b { color: #263950; font-size: 18px; white-space: nowrap; }
.payables-workflow .data-legacy-payment-main > div { display: flex; gap: 7px; flex-wrap: wrap; margin-top: 10px; }
.payables-workflow .data-legacy-payment-main > div span { padding: 5px 8px; border-radius: 999px; color: #617086; background: #eef2f7; font-size: 12px; font-weight: 750; }
.payables-workflow .data-legacy-payment-main > div span:last-child { color: #176d53; background: #e7f6ef; }
.payables-workflow .data-legacy-payment-row details { border-top: 1px solid #edf0f3; background: #fafbfc; }
.payables-workflow .data-legacy-payment-row summary { padding: 11px 20px; color: #5752b7; font-size: 12px; font-weight: 850; cursor: pointer; }
.payables-workflow .data-legacy-payment-row details > div { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 10px; padding: 0 20px 16px; }
.payables-workflow .data-legacy-payment-row details p { margin: 0; padding: 11px; border: 1px solid #e5e9ef; border-radius: 10px; background: #fff; }
.payables-workflow .data-legacy-payment-row details p span,.payables-workflow .data-legacy-payment-row details p strong { display: block; overflow-wrap: anywhere; }
.payables-workflow .data-legacy-payment-row details p span { color: #7c8696; font-size: 12px; font-weight: 800; }
.payables-workflow .data-legacy-payment-row details p strong { margin-top: 4px; color: #35445a; font-size: 13px; }
.payables-workflow .data-legacy-payments > footer { display: flex; justify-content: space-between; align-items: center; gap: 15px; padding: 14px 20px; border-top: 1px solid #e8ebef; color: #6f7b8d; font-size: 13px; }
.payables-workflow .data-legacy-payments > footer p { margin: 0; }
.payables-workflow .data-legacy-payments > footer > div { display: flex; gap: 7px; }
.payables-workflow .data-legacy-payments > footer button:disabled { opacity: .45; cursor: not-allowed; }

#dataReminders .data-reminder-summary { display:grid; grid-template-columns:repeat(3,1fr); gap:12px; margin-bottom:16px; }
#dataReminders .data-reminder-summary article { display:flex; min-height:116px; align-items:center; gap:15px; padding:19px; border:1px solid #e4e8f1; border-radius:18px; background:#fff; box-shadow:0 9px 28px rgba(46,55,94,.07); }
#dataReminders .data-reminder-summary article > span { display:grid; width:48px; height:48px; place-items:center; flex:0 0 auto; border-radius:15px; color:#167653; background:#e3f7ed; }
#dataReminders .data-reminder-summary article > span.is-email { color:#3a67a8; background:#e8f1fc; }
#dataReminders .data-reminder-summary article.is-attention > span { color:#6558b8; background:#efedff; }
#dataReminders .data-reminder-summary p { margin:0; }
#dataReminders .data-reminder-summary small,#dataReminders .data-reminder-summary strong,#dataReminders .data-reminder-summary b { display:block; }
#dataReminders .data-reminder-summary small { color:#727d91; font-size:12px; font-weight:900; }
#dataReminders .data-reminder-summary strong { margin-top:6px; color:#2b364d; font-size:20px; }
#dataReminders .data-reminder-summary b { margin-top:4px; color:#737f92; font-size:12px; font-weight:650; line-height:1.4; }
#dataReminders .data-reminder-history { overflow:hidden; border:1px solid #dfe4ee; border-radius:20px; background:#fff; box-shadow:0 12px 36px rgba(41,51,86,.07); }
#dataReminders .data-reminder-history > header { display:flex; align-items:flex-start; justify-content:space-between; gap:18px; padding:22px; border-bottom:1px solid #e7eaf0; }
#dataReminders .data-reminder-history > header p { margin:0 0 5px; color:#5752c3; font-size:12px; font-weight:900; letter-spacing:.1em; }
#dataReminders .data-reminder-history > header h3 { margin:0; color:#27364d; font-size:23px; letter-spacing:-.025em; }
#dataReminders .data-reminder-history > header span { display:block; margin-top:6px; color:#707c8f; font-size:13px; }
#dataReminders .data-reminder-history > header button { display:inline-flex; min-height:42px; align-items:center; gap:7px; padding:9px 13px; border:0; border-radius:11px; color:#fff; background:#514bc7; font-size:13px; font-weight:850; }
#dataReminders .data-reminder-history > header button:disabled { opacity:.48; cursor:not-allowed; }
#dataReminders .data-reminder-history > header .app-icon { width:17px; height:17px; }
#dataReminders .data-reminder-filters { display:grid; grid-template-columns:minmax(235px,1.5fr) repeat(5,minmax(130px,1fr)) auto; gap:10px; align-items:end; padding:16px 20px; background:#f7f8fc; }
#dataReminders .data-reminder-filters label { display:grid; min-width:0; gap:6px; }
#dataReminders .data-reminder-filters label > span { color:#5e6a7f; font-size:12px; font-weight:850; }
#dataReminders .data-reminder-filters input,#dataReminders .data-reminder-filters select { width:100%; min-height:42px; padding:8px 10px; border:1px solid #d5dce8; border-radius:10px; color:#2e3c53; background:#fff; font:inherit; font-size:13px; }
#dataReminders .data-reminder-filters > div { display:flex; gap:7px; }
#dataReminders .data-reminder-filters button,#dataReminders .data-reminder-history > footer button { min-height:40px; padding:8px 11px; border:1px solid #d5dce8; border-radius:9px; color:#566278; background:#fff; font-size:12px; font-weight:850; }
#dataReminders .data-reminder-filters button[type="submit"] { border-color:#514bc7; color:#fff; background:#514bc7; }
#dataReminders .data-reminder-status { margin:0; padding:13px 20px; color:#4f637b; background:#edf5fb; font-size:13px; }
#dataReminders .data-reminder-list { background:#fff; }
#dataReminders .data-reminder-row { border-top:1px solid #e8ebf1; }
#dataReminders .data-reminder-row:first-child { border-top:0; }
#dataReminders .data-reminder-main { display:grid; grid-template-columns:48px minmax(260px,1fr) 145px minmax(130px,auto); gap:16px; align-items:center; padding:17px 20px; }
#dataReminders .data-reminder-channel { display:grid; width:44px; height:44px; place-items:center; border-radius:14px; color:#167653; background:#e4f7ee; }
#dataReminders .data-reminder-channel.is-email { color:#396aa9; background:#e8f1fc; }
#dataReminders .data-reminder-channel .app-icon { width:21px; height:21px; }
#dataReminders .data-reminder-identity strong,#dataReminders .data-reminder-identity span,#dataReminders .data-reminder-identity small { display:block; overflow-wrap:anywhere; }
#dataReminders .data-reminder-identity strong { color:#2b394f; font-size:15px; }
#dataReminders .data-reminder-identity span { margin-top:3px; color:#4f5d73; font-size:13px; }
#dataReminders .data-reminder-identity small { margin-top:5px; color:#7a8495; font-size:12px; }
#dataReminders .data-reminder-main time { text-align:right; }
#dataReminders .data-reminder-main time strong,#dataReminders .data-reminder-main time span { display:block; }
#dataReminders .data-reminder-main time strong { color:#3e4a60; font-size:13px; }
#dataReminders .data-reminder-main time span { margin-top:3px; color:#7a8496; font-size:12px; }
#dataReminders .data-reminder-state { justify-self:end; padding:7px 10px; border-radius:999px; color:#4b5870; background:#edf0f5; font-size:12px; font-weight:850; text-align:center; }
#dataReminders .data-reminder-state.is-delivered,#dataReminders .data-reminder-state.is-read { color:#146e51; background:#e5f6ed; }
#dataReminders .data-reminder-state.is-queued,#dataReminders .data-reminder-state.is-accepted,#dataReminders .data-reminder-state.is-sent { color:#3b62a0; background:#e9f1fb; }
#dataReminders .data-reminder-state.is-processing { color:#5850b7; background:#eeecff; }
#dataReminders .data-reminder-state.is-failed,#dataReminders .data-reminder-state.is-not-delivered,#dataReminders .data-reminder-state.is-no-balance { color:#62528e; background:#f0edf8; }
#dataReminders .data-reminder-state.is-recorded-no-delivery-confirmation { max-width:220px; color:#3c6685; background:#eaf3f8; }
#dataReminders .data-reminder-row details { border-top:1px solid #edf0f4; background:#fafbfc; }
#dataReminders .data-reminder-row summary { padding:11px 20px; color:#5752b7; font-size:12px; font-weight:850; cursor:pointer; }
#dataReminders .data-reminder-detail-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:9px; padding:0 20px 14px; }
#dataReminders .data-reminder-detail-grid p { margin:0; padding:10px; border:1px solid #e3e8ef; border-radius:10px; background:#fff; }
#dataReminders .data-reminder-detail-grid span,#dataReminders .data-reminder-detail-grid strong { display:block; overflow-wrap:anywhere; }
#dataReminders .data-reminder-detail-grid span { color:#778295; font-size:12px; font-weight:800; }
#dataReminders .data-reminder-detail-grid strong { margin-top:4px; color:#35445a; font-size:13px; }
#dataReminders .data-reminder-timeline { margin:0 20px 16px; padding:14px; border:1px solid #dfe4ee; border-radius:12px; background:#f5f7fb; }
#dataReminders .data-reminder-timeline > strong { color:#354258; font-size:13px; }
#dataReminders .data-reminder-timeline p { display:flex; justify-content:space-between; gap:14px; margin:9px 0 0; color:#6e798c; font-size:12px; }
#dataReminders .data-reminder-timeline p b { color:#4e5c72; }
#dataReminders .data-reminder-history > footer { display:flex; align-items:center; justify-content:space-between; gap:14px; padding:14px 20px; border-top:1px solid #e7eaf0; color:#6d788b; font-size:13px; }
#dataReminders .data-reminder-history > footer p { margin:0; }
#dataReminders .data-reminder-history > footer > div { display:flex; gap:7px; }
#dataReminders .data-reminder-history > footer button:disabled { opacity:.45; cursor:not-allowed; }
#dataReminders .data-reminder-integrity { display:flex; align-items:flex-start; gap:12px; margin-top:14px; padding:15px 17px; border:1px solid #d9dfeb; border-radius:15px; color:#667287; background:#f9fafc; }
#dataReminders .data-reminder-integrity .app-icon { width:25px; height:25px; flex:0 0 auto; color:#5a54c8; }
#dataReminders .data-reminder-integrity p { margin:0; }
#dataReminders .data-reminder-integrity strong,#dataReminders .data-reminder-integrity span { display:block; }
#dataReminders .data-reminder-integrity strong { color:#38465d; font-size:13px; }
#dataReminders .data-reminder-integrity span { margin-top:3px; font-size:12px; line-height:1.5; }

.data-activity-card { padding-bottom: 10px; }.data-activity-card > header { padding: 24px 24px 12px; }.data-source-tag { font-size: 12px; }.data-activity-totals { padding: 5px 24px 18px; }.data-activity-totals strong { font-size: 48px; }.data-activity-totals span { font-size: 14px; }.data-activity-bars { gap: 15px; padding: 0 24px 22px; }.data-activity-bars p { margin-bottom: 7px; font-size: 13px; }.data-activity-bars > div > i { height: 10px; }.data-professional-list { margin: 0 19px 18px; }.data-professional-list h3 { margin: 17px 5px 10px; font-size: 15px; }.data-professional-list article { padding: 12px 5px; }.data-professional-list article strong { font-size: 13px; }.data-professional-list article span { font-size: 12px; }.data-professional-list article > b { font-size: 14px; }
.data-integrity-card { padding: 26px; }.data-integrity-card > header h2 { font-size: 26px; }.data-integrity-grid { gap: 13px; margin-top: 20px; }.data-integrity-grid article { min-height: 160px; padding: 19px; border-radius: 16px; }.data-integrity-grid article > b { font-size: 12px; }.data-integrity-grid article strong { margin-top: 8px; font-size: 16px; }.data-integrity-grid article p { margin-top: 8px; font-size: 13px; line-height: 1.55; }.data-integrity-warning { padding: 13px; font-size: 13px; }

.coverage-dialog header small { font-size: 12px; }.coverage-dialog header h2 { font-size: 24px; }.coverage-form-grid label > span,.coverage-allocation-lines label > span { font-size: 12px; }.coverage-form-grid input,.coverage-form-grid select,.coverage-form-grid textarea,.coverage-allocation-lines input { min-height: 44px; font-size: 14px; }.coverage-dialog-note { font-size: 13px; }.coverage-dialog form > footer button { min-height: 42px; font-size: 13px; }.coverage-allocation-lines article > header strong,.coverage-allocation-lines article > header b { font-size: 13px; }

@media (max-width: 1250px) {
  .data-workbench { grid-template-columns: 238px minmax(0,1fr); }
  .data-metrics,.data-section-stats { grid-template-columns: repeat(2,1fr); }
  .data-section-stats article:nth-child(3) { border-left: 0; border-top: 1px solid #e8ebf2; }.data-section-stats article:nth-child(4) { border-top: 1px solid #e8ebf2; }
  .data-period-panel { grid-template-columns: 1fr; }.data-filters { justify-content: flex-start; }.data-payment-fields { grid-template-columns: repeat(3,1fr); }.data-payment-fields .is-wide { grid-column: span 2; }
  .payables-workflow .data-legacy-payment-filters { grid-template-columns: repeat(2,minmax(0,1fr)); }.payables-workflow .data-legacy-payment-filters .is-wide { grid-column: 1/-1; }
  .data-table-card > header { align-items: flex-start; flex-direction: column; }.data-table-tools { width: 100%; flex-wrap: wrap; }.data-table-tools label { flex: 1; }
  #dataReminders .data-reminder-filters { grid-template-columns:repeat(3,minmax(0,1fr)); }
  #dataReminders .data-reminder-filters .is-wide { grid-column:1/-1; }
  #dataReminders .data-reminder-detail-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}

/* Presupuestos: todo queda aislado dentro de su pantalla. */
#dataBudgets .data-budget-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:20px}
#dataBudgets .data-budget-summary article{min-height:142px;border:1px solid #dfe6f2;border-radius:24px;background:#fff;padding:20px;display:flex;gap:15px;align-items:flex-start;box-shadow:0 13px 34px rgba(53,70,105,.07)}
#dataBudgets .data-budget-summary article>span{width:46px;height:46px;border-radius:15px;display:grid;place-items:center;flex:0 0 auto;background:#edf3ff;color:#3970d8}
#dataBudgets .data-budget-summary article>span .app-icon{width:23px;height:23px}
#dataBudgets .data-budget-summary article p{margin:0;display:grid;gap:7px;min-width:0}
#dataBudgets .data-budget-summary article small{font-size:12px;font-weight:850;letter-spacing:.08em;color:#65728c}
#dataBudgets .data-budget-summary article strong{font-size:32px;line-height:1;color:#17223c}
#dataBudgets .data-budget-summary article b{font-size:13px;line-height:1.35;color:#66738c;font-weight:650}
#dataBudgets .data-budget-summary .is-pending>span{background:#f0edff;color:#6751d7}
#dataBudgets .data-budget-summary .is-accepted>span{background:#e7f7f1;color:#198565}
#dataBudgets .data-budget-summary .is-viewed>span{background:#eaf6fb;color:#247c9e}

#dataBudgets .data-budget-history{border:1px solid #dce4f0;border-radius:27px;background:#fff;box-shadow:0 18px 46px rgba(41,57,91,.08);overflow:hidden}
#dataBudgets .data-budget-history>header{padding:24px 26px 19px;display:flex;align-items:center;justify-content:space-between;gap:20px;border-bottom:1px solid #e7ecf4}
#dataBudgets .data-budget-history>header p{margin:0 0 4px;font-size:12px;font-weight:900;letter-spacing:.11em;color:#6654d7}
#dataBudgets .data-budget-history>header h3{margin:0;font-size:25px;line-height:1.15;color:#17223c}
#dataBudgets .data-budget-history>header span{display:block;margin-top:7px;font-size:14px;color:#6a758b}
#dataBudgets .data-budget-history>header button{min-height:46px;border:0;border-radius:15px;padding:0 18px;background:#4f46cf;color:#fff;font-size:13px;font-weight:850;display:flex;align-items:center;gap:9px;box-shadow:0 9px 22px rgba(79,70,207,.22)}
#dataBudgets .data-budget-history>header button:disabled{opacity:.45;box-shadow:none}
#dataBudgets .data-budget-history>header button .app-icon{width:18px;height:18px}

#dataBudgets .data-budget-filters{display:grid;grid-template-columns:minmax(250px,1.55fr) repeat(3,minmax(145px,1fr));gap:13px;padding:20px 26px;background:#f7f9fd;border-bottom:1px solid #e7ecf4}
#dataBudgets .data-budget-filters label{display:grid;gap:7px;min-width:0}
#dataBudgets .data-budget-filters label>span{font-size:12px;font-weight:850;letter-spacing:.04em;color:#56627a}
#dataBudgets .data-budget-filters input,#dataBudgets .data-budget-filters select{width:100%;min-height:46px;border:1px solid #ced8e8;border-radius:13px;background:#fff;padding:0 13px;color:#202b43;font:700 13px/1.2 inherit;outline:0}
#dataBudgets .data-budget-filters input:focus,#dataBudgets .data-budget-filters select:focus{border-color:#7169dc;box-shadow:0 0 0 3px rgba(113,105,220,.13)}
#dataBudgets .data-budget-filters .is-wide{grid-column:span 2}
#dataBudgets .data-budget-filters>div{display:flex;align-items:end;gap:9px}
#dataBudgets .data-budget-filters>div button{min-height:46px;border:1px solid #d2daea;border-radius:13px;padding:0 16px;background:#fff;color:#4d5972;font-size:13px;font-weight:850}
#dataBudgets .data-budget-filters>div button:first-child{border-color:#4f46cf;background:#4f46cf;color:#fff}
#dataBudgets .data-budget-status{margin:0;padding:18px 26px;background:#f4f6fb;color:#526078;font-size:14px;font-weight:700}
#dataBudgets .data-budget-list{display:grid}

#dataBudgets .data-budget-row{border-bottom:1px solid #e8edf4;background:#fff}
#dataBudgets .data-budget-row:last-child{border-bottom:0}
#dataBudgets .data-budget-main{display:grid;grid-template-columns:148px minmax(230px,1.5fr) minmax(185px,.8fr) minmax(215px,.9fr);gap:18px;align-items:center;padding:20px 26px}
#dataBudgets .data-budget-state{justify-self:start;border-radius:999px;padding:8px 12px;background:#edf1f7;color:#58657c;font-size:12px;font-weight:900;line-height:1.15;text-align:center}
#dataBudgets .data-budget-state.is-esperando{background:#efedff;color:#5948c4}
#dataBudgets .data-budget-state.is-aceptado,#dataBudgets .data-budget-state.is-finalizado{background:#e4f6ef;color:#17775c}
#dataBudgets .data-budget-state.is-activo{background:#e8f2ff;color:#246bc1}
#dataBudgets .data-budget-state.is-rechazado{background:#f1edf5;color:#74557f}
#dataBudgets .data-budget-state.is-unknown{background:#edf0f5;color:#586274}
#dataBudgets .data-budget-identity{display:grid;gap:4px;min-width:0}
#dataBudgets .data-budget-identity strong{font-size:17px;line-height:1.25;color:#18233d;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#dataBudgets .data-budget-identity span{font-size:14px;font-weight:750;color:#42506a}
#dataBudgets .data-budget-identity small{font-size:12px;color:#778197}
#dataBudgets .data-budget-dates{display:grid;grid-template-columns:1fr 1fr;gap:12px}
#dataBudgets .data-budget-dates p{margin:0;display:grid;gap:4px}
#dataBudgets .data-budget-dates span,#dataBudgets .data-budget-amount>span{font-size:12px;font-weight:800;color:#7a8498}
#dataBudgets .data-budget-dates strong{font-size:13px;color:#354158}
#dataBudgets .data-budget-amount{display:grid;gap:5px;text-align:right;justify-items:end}
#dataBudgets .data-budget-amount strong{font-size:20px;color:#26324d}
#dataBudgets .data-budget-amount small{font-size:12px;color:#447a6c;font-weight:750}
#dataBudgets .data-budget-row>details{border-top:1px solid transparent}
#dataBudgets .data-budget-row>details[open]{border-top-color:#e9edf5;background:#fafbfe}
#dataBudgets .data-budget-row>details>summary{list-style:none;cursor:pointer;padding:0 26px 17px;text-align:right;color:#5147c7;font-size:13px;font-weight:850}
#dataBudgets .data-budget-row>details>summary::-webkit-details-marker{display:none}
#dataBudgets .data-budget-row>details[open]>summary{padding-top:15px;padding-bottom:13px}
#dataBudgets .data-budget-detail{padding:0 26px 24px;display:grid;gap:18px}
#dataBudgets .data-budget-detail-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
#dataBudgets .data-budget-detail-grid p{margin:0;min-height:72px;border:1px solid #e1e7f1;border-radius:14px;background:#fff;padding:12px;display:grid;align-content:start;gap:5px}
#dataBudgets .data-budget-detail-grid span{font-size:12px;font-weight:800;color:#7a8498}
#dataBudgets .data-budget-detail-grid strong{font-size:13px;line-height:1.35;color:#2b3750;overflow-wrap:anywhere}
#dataBudgets .data-budget-narrative{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
#dataBudgets .data-budget-narrative:empty{display:none}
#dataBudgets .data-budget-narrative div{border-radius:16px;background:#f1f4fa;padding:15px}
#dataBudgets .data-budget-narrative strong{font-size:13px;color:#34415a}
#dataBudgets .data-budget-narrative p{margin:7px 0 0;white-space:pre-wrap;font-size:13px;line-height:1.55;color:#59667d}
#dataBudgets .data-budget-timeline{border-left:3px solid #7770dc;padding:2px 0 2px 17px;display:grid;gap:8px}
#dataBudgets .data-budget-timeline>strong{font-size:14px;color:#2c3850}
#dataBudgets .data-budget-timeline p{margin:0;display:flex;justify-content:space-between;gap:18px;font-size:13px;color:#606c82}
#dataBudgets .data-budget-timeline p b{color:#35425a}
#dataBudgets .data-budget-detail>footer{display:flex;justify-content:flex-end}
#dataBudgets .data-budget-detail>footer button{min-height:43px;border:1px solid #cec9f4;border-radius:13px;padding:0 15px;background:#f2f0ff;color:#4f46bd;font-size:13px;font-weight:850;display:flex;align-items:center;gap:8px}
#dataBudgets .data-budget-detail>footer .app-icon{width:17px;height:17px}
#dataBudgets .data-budget-history>footer{padding:17px 26px;display:flex;justify-content:space-between;align-items:center;border-top:1px solid #e7ecf4;background:#fbfcfe}
#dataBudgets .data-budget-history>footer p{margin:0;font-size:13px;color:#6b768c}
#dataBudgets .data-budget-history>footer div{display:flex;gap:9px}
#dataBudgets .data-budget-history>footer button{min-height:40px;border:1px solid #d3dbea;border-radius:12px;padding:0 15px;background:#fff;color:#4b5770;font-size:13px;font-weight:800}
#dataBudgets .data-budget-history>footer button:disabled{opacity:.42}
#dataBudgets .data-budget-integrity{margin-top:16px;border:1px solid #d9e7ea;border-radius:19px;background:#f3faf9;padding:17px 20px;display:flex;gap:14px;align-items:flex-start;color:#315d58}
#dataBudgets .data-budget-integrity>.app-icon{width:23px;height:23px;flex:0 0 auto}
#dataBudgets .data-budget-integrity p{margin:0;display:grid;gap:4px}
#dataBudgets .data-budget-integrity strong{font-size:14px}
#dataBudgets .data-budget-integrity span{font-size:13px;line-height:1.55;color:#52716d}

@media (max-width:1180px){
  #dataBudgets .data-budget-summary{grid-template-columns:repeat(2,minmax(0,1fr))}
  #dataBudgets .data-budget-filters{grid-template-columns:repeat(3,minmax(0,1fr))}
  #dataBudgets .data-budget-main{grid-template-columns:135px minmax(210px,1.4fr) minmax(170px,.8fr)}
  #dataBudgets .data-budget-amount{grid-column:2/4;text-align:left;justify-items:start;border-top:1px solid #edf0f5;padding-top:12px}
  #dataBudgets .data-budget-detail-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media (max-width:820px){
  #dataBudgets .data-budget-history>header{align-items:flex-start}
  #dataBudgets .data-budget-filters{grid-template-columns:repeat(2,minmax(0,1fr));padding:18px}
  #dataBudgets .data-budget-filters .is-wide{grid-column:1/-1}
  #dataBudgets .data-budget-main{grid-template-columns:1fr 1fr;padding:18px}
  #dataBudgets .data-budget-state{grid-column:1}
  #dataBudgets .data-budget-identity{grid-column:1/-1;grid-row:2}
  #dataBudgets .data-budget-dates{grid-column:1}
  #dataBudgets .data-budget-amount{grid-column:2;align-self:end;border:0;padding:0;text-align:right;justify-items:end}
  #dataBudgets .data-budget-detail{padding:0 18px 20px}
  #dataBudgets .data-budget-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  #dataBudgets .data-budget-narrative{grid-template-columns:1fr}
}
@media (max-width:560px){
  #dataBudgets .data-budget-summary{grid-template-columns:1fr}
  #dataBudgets .data-budget-summary article{min-height:0}
  #dataBudgets .data-budget-history>header{display:grid;padding:20px}
  #dataBudgets .data-budget-history>header button{width:100%;justify-content:center}
  #dataBudgets .data-budget-filters{grid-template-columns:1fr;padding:16px}
  #dataBudgets .data-budget-filters .is-wide{grid-column:auto}
  #dataBudgets .data-budget-filters>div{display:grid;grid-template-columns:1fr 1fr}
  #dataBudgets .data-budget-main{grid-template-columns:1fr;gap:13px;padding:17px}
  #dataBudgets .data-budget-state,#dataBudgets .data-budget-identity,#dataBudgets .data-budget-dates,#dataBudgets .data-budget-amount{grid-column:1;grid-row:auto}
  #dataBudgets .data-budget-amount{justify-items:start;text-align:left;border-top:1px solid #edf0f5;padding-top:12px}
  #dataBudgets .data-budget-row>details>summary{padding-right:17px}
  #dataBudgets .data-budget-detail-grid{grid-template-columns:1fr}
  #dataBudgets .data-budget-timeline p{display:grid;gap:3px}
  #dataBudgets .data-budget-history>footer{padding:15px 17px;align-items:flex-start;gap:10px;flex-direction:column}
  #dataBudgets .data-budget-history>footer div{width:100%}
  #dataBudgets .data-budget-history>footer button{flex:1}
}
@media (max-width: 900px) {
  body.data-active .legacy-main { padding: 18px 12px 40px; }
  .data-workbench { grid-template-columns: 1fr; gap: 18px; }
  .data-sidebar { position: static; border-radius: 19px; }.data-sidebar > header { padding: 16px; }.data-sidebar nav { display: flex; gap: 8px; overflow-x: auto; padding: 10px; }.data-sidebar nav button { grid-template-columns: 38px minmax(120px,1fr); min-width: 190px; }.data-sidebar nav button > span { width: 38px; height: 38px; }.data-sidebar > aside { display: none; }
  .data-command-bar { align-items: flex-start; flex-direction: column; }.data-command-badges { justify-content: flex-start; }
  .data-hero { grid-template-columns: 1fr; }.data-hero > aside { max-width: 500px; }
  .data-overview-actions,.data-reminder-summary { grid-template-columns: 1fr; }.data-cash-explainer { grid-template-columns: 1fr; }.data-cash-explainer > i { width: 1px; height: 18px; margin-left: 22px; }.data-split-grid { grid-template-columns: 1fr; }
  .data-screen-heading { flex-direction: column; }.data-payment-fields { grid-template-columns: 1fr 1fr; }.data-payment-fields .is-wide { grid-column: 1/-1; }
  .payables-workflow .data-legacy-payment-filters { grid-template-columns: 1fr; }.payables-workflow .data-legacy-payment-filters .is-wide { grid-column: auto; }.payables-workflow .data-legacy-payment-row details > div { grid-template-columns: 1fr; }
  #dataReminders .data-reminder-main { grid-template-columns:44px minmax(0,1fr) auto; }
  #dataReminders .data-reminder-main time { grid-column:2; text-align:left; }
  #dataReminders .data-reminder-state { grid-column:3; grid-row:1/3; }
}

@media print {
  body.data-payables-printing { background: #fff !important; }
  body.data-payables-printing .legacy-topbar,body.data-payables-printing .system-alert-center,
  body.data-payables-printing .data-sidebar,body.data-payables-printing .data-period-panel,
  body.data-payables-printing [data-data-context],body.data-payables-printing [data-overview-only],
  body.data-payables-printing #dataPayables > :not(.data-legacy-payments),body.data-payables-printing .data-technical-footer { display: none !important; }
  body.data-payables-printing .legacy-main { max-width: none; padding: 0; }
  body.data-payables-printing .data-workbench,body.data-payables-printing .data-content,
  body.data-payables-printing #dataPayables,body.data-payables-printing .data-legacy-payments { display: block !important; }
  body.data-payables-printing .data-legacy-payments { margin: 0; border: 0; box-shadow: none; }
  body.data-payables-printing .payables-rubro-filter,body.data-payables-printing .payables-history-filters,
  body.data-payables-printing .data-legacy-payment-filters,body.data-payables-printing .data-legacy-payments > footer,
  body.data-payables-printing .data-legacy-payment-main > button { display: none !important; }
  body.data-payables-printing .data-legacy-payment-row { break-inside: avoid; }
}
@media (max-width: 640px) {
  .data-command-bar h1 { font-size: 31px; }.data-command-badges { align-items: flex-start; flex-direction: column; }
  .data-period-panel { padding: 12px; }.data-presets { width: 100%; overflow-x: auto; }.data-presets button { flex: 0 0 auto; }.data-filters,.data-custom-dates { align-items: stretch; flex-direction: column; }.data-filters label,.data-custom-dates label { width: 100%; min-width: 0; }
  .data-hero { padding: 25px 20px; }.data-hero h2 { font-size: 30px; }.data-hero > div > p { font-size: 14px; }
  .data-metrics,.data-section-stats,.data-integrity-grid { grid-template-columns: 1fr; }.data-section-stats article { border-top: 1px solid #e8ebf2; border-left: 0; }.data-section-stats article:first-child { border-top: 0; }
  .data-chart { height: 250px; }.data-chart svg { min-width: 650px; }.data-chart-card > footer { align-items: flex-start; flex-direction: column; }
  .data-table-tools { align-items: stretch; flex-direction: column; }.data-table-tools label { min-width: 0; }.data-table-tools select { width: 100%; }
  .payables-workflow .payables-row { grid-template-columns: 1fr; }.payables-workflow .payables-row > button { justify-self: start; }
  .data-payment-fields { grid-template-columns: 1fr; }.data-payment-fields .is-wide { grid-column: auto; }.data-legacy-payments header > div:last-child { flex-wrap: wrap; }
  .coverage-stage-strip { grid-template-columns: 1fr; }.coverage-form-grid { grid-template-columns: 1fr; }
  #dataReminders .data-reminder-history > header { flex-direction:column; }
  #dataReminders .data-reminder-history > header button { width:100%; justify-content:center; }
  #dataReminders .data-reminder-filters { grid-template-columns:1fr; }
  #dataReminders .data-reminder-filters .is-wide { grid-column:auto; }
  #dataReminders .data-reminder-main { grid-template-columns:44px minmax(0,1fr); gap:12px; }
  #dataReminders .data-reminder-main time,#dataReminders .data-reminder-state { grid-column:2; grid-row:auto; justify-self:start; text-align:left; }
  #dataReminders .data-reminder-detail-grid { grid-template-columns:1fr; }
  #dataReminders .data-reminder-timeline p,#dataReminders .data-reminder-history > footer { align-items:flex-start; flex-direction:column; }
}

/* Duración de consultas: todos los selectores quedan dentro del panel propio de Actividad. */
#dataConsultationDurations { min-width: 0; margin-top: 14px; overflow: hidden; border: 1px solid #dfe8e9; border-radius: 22px; background: #fff; box-shadow: 0 12px 34px rgba(46,55,94,.07); }
#dataConsultationDurations > header { display: flex; align-items: flex-start; justify-content: space-between; gap: 16px; padding: 24px 24px 12px; }
#dataConsultationDurations > header p { margin: 0 0 5px; color: #16836d; font-size: 12px; font-weight: 900; letter-spacing: .12em; }
#dataConsultationDurations > header h2 { margin: 0; color: #202a43; font-size: 22px; letter-spacing: -.025em; }
#dataConsultationDurations > header .data-source-tag { flex: 0 0 auto; }
#dataConsultationDurations .data-duration-intro { margin: 0; padding: 0 24px 18px; color: #657286; font-size: 13px; line-height: 1.5; }
#dataConsultationDurations .data-duration-metrics { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 12px; padding: 0 24px 18px; }
#dataConsultationDurations .data-duration-metrics > div { display: grid; min-width: 0; align-content: start; gap: 6px; padding: 16px; border: 1px solid #e2ebed; border-radius: 15px; background: #f8fbfb; }
#dataConsultationDurations .data-duration-metrics > .data-duration-primary { border-color: #c8e7dc; background: #f2fbf7; }
#dataConsultationDurations .data-duration-metrics span { color: #617084; font-size: 12px; font-weight: 800; }
#dataConsultationDurations .data-duration-metrics strong { color: #26374a; font-size: 26px; line-height: 1.15; }
#dataConsultationDurations .data-duration-primary strong { color: #147958; font-size: 34px; }
#dataConsultationDurations .data-duration-metrics small { color: #778397; font-size: 12px; line-height: 1.4; }
#dataConsultationDurations .data-duration-integrity { display: flex; align-items: flex-start; gap: 10px; margin: 0 24px 18px; padding: 12px 14px; border: 1px solid #dce8ef; border-radius: 13px; color: #4e6475; background: #f4f9fc; }
#dataConsultationDurations .data-duration-integrity .app-icon { flex: 0 0 18px; width: 18px; height: 18px; margin-top: 1px; color: #487b96; }
#dataConsultationDurations .data-duration-integrity p { margin: 0; font-size: 12px; line-height: 1.45; }
#dataConsultationDurations .data-duration-details { display: grid; grid-template-columns: minmax(0,.9fr) minmax(0,1.1fr); gap: 22px; padding: 19px 24px 24px; border-top: 1px solid #e8edef; }
#dataConsultationDurations .data-duration-details section { min-width: 0; }
#dataConsultationDurations .data-duration-details h3 { margin: 0 0 13px; color: #344258; font-size: 15px; }
#dataConsultationDurations .data-duration-bands { display: grid; gap: 13px; }
#dataConsultationDurations .data-duration-band p { display: flex; justify-content: space-between; gap: 12px; margin: 0 0 6px; color: #697589; font-size: 12px; }
#dataConsultationDurations .data-duration-band b { color: #344258; font-size: 12px; }
#dataConsultationDurations .data-duration-track { height: 8px; overflow: hidden; border-radius: 99px; background: #edf2f3; }
#dataConsultationDurations .data-duration-track i { display: block; height: 100%; border-radius: inherit; background: linear-gradient(90deg,#37ae86,#72cfaa); }
#dataConsultationDurations .data-duration-longest-copy { margin: -5px 0 10px; color: #788397; font-size: 12px; line-height: 1.4; }
#dataConsultationDurations .data-duration-longest { display: grid; gap: 7px; margin: 0; padding: 0; list-style: none; }
#dataConsultationDurations .data-duration-longest li { display: flex; align-items: center; justify-content: space-between; gap: 12px; min-width: 0; padding: 10px 12px; border: 1px solid #e7edef; border-radius: 12px; background: #fbfcfc; }
#dataConsultationDurations .data-duration-longest li > div { display: grid; min-width: 0; gap: 3px; }
#dataConsultationDurations .data-duration-longest strong { color: #37455b; font-size: 12px; }
#dataConsultationDurations .data-duration-longest span { overflow-wrap: anywhere; color: #7c8798; font-size: 12px; }
#dataConsultationDurations .data-duration-longest li > b { flex: 0 0 auto; color: #177958; font-size: 14px; }
#dataConsultationDurations .data-duration-empty { margin: 0; padding: 14px; border-radius: 12px; color: #687589; background: #f6f8fa; font-size: 12px; line-height: 1.45; }
@media (max-width: 800px) {
  #dataConsultationDurations .data-duration-details { grid-template-columns: 1fr; }
}
@media (max-width: 640px) {
  #dataConsultationDurations > header { align-items: flex-start; padding: 19px 16px 11px; }
  #dataConsultationDurations > header h2 { font-size: 19px; }
  #dataConsultationDurations > header .data-source-tag { padding-inline: 8px; }
  #dataConsultationDurations .data-duration-intro { padding: 0 16px 15px; }
  #dataConsultationDurations .data-duration-metrics { grid-template-columns: 1fr 1fr; gap: 8px; padding: 0 16px 15px; }
  #dataConsultationDurations .data-duration-metrics > .data-duration-primary { grid-column: 1/-1; }
  #dataConsultationDurations .data-duration-metrics > div { padding: 13px; }
  #dataConsultationDurations .data-duration-integrity { margin: 0 16px 15px; }
  #dataConsultationDurations .data-duration-details { gap: 20px; padding: 17px 16px 19px; }
}

/* Gastos y Caja: fuentes preservadas, sin duplicar proyecciones de pagos */
#dataExpenses .data-expense-kpis { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; margin-bottom:16px; }
#dataExpenses .data-expense-kpis article { display:flex; min-width:0; min-height:142px; align-items:flex-start; gap:14px; padding:20px; overflow:hidden; border:1px solid #dfe5ef; border-radius:20px; background:#fff; box-shadow:0 10px 26px rgba(45,57,89,.07); }
#dataExpenses .data-expense-kpis article > span { display:grid; width:46px; height:46px; place-items:center; flex:0 0 auto; border-radius:14px; color:#fff; background:#5550c9; }
#dataExpenses .data-expense-kpis article.is-cash > span { background:#218368; }
#dataExpenses .data-expense-kpis article.is-digital > span { background:#3f76b7; }
#dataExpenses .data-expense-kpis article.is-legacy > span { color:#526076; background:#e8edf4; }
#dataExpenses .data-expense-kpis .app-icon { width:21px; height:21px; }
#dataExpenses .data-expense-kpis p { min-width:0; margin:0; }
#dataExpenses .data-expense-kpis small,#dataExpenses .data-expense-kpis strong,#dataExpenses .data-expense-kpis b { display:block; }
#dataExpenses .data-expense-kpis small { color:#657188; font-size:12px; font-weight:900; letter-spacing:.035em; }
#dataExpenses .data-expense-kpis strong { margin-top:14px; color:#253149; font-size:27px; line-height:1.05; letter-spacing:-.035em; }
#dataExpenses .data-expense-kpis b { margin-top:8px; color:#778195; font-size:12px; font-weight:700; line-height:1.45; }
#dataExpenses .data-expenses-card { min-width:0; }
#dataExpenses .data-expense-filters { display:grid; grid-template-columns:minmax(270px,1.55fr) repeat(5,minmax(140px,.75fr)); gap:12px; padding:17px 20px; border-bottom:1px solid #e7eaf1; background:#f8f9fc; }
#dataExpenses .data-expense-filters label { display:grid; min-width:0; gap:6px; color:#626d82; font-size:12px; font-weight:850; }
#dataExpenses .data-expense-filters label > span { font-size:12px; }
#dataExpenses .data-expense-filters input,#dataExpenses .data-expense-filters select { width:100%; min-height:44px; border:1px solid #d7dce8; border-radius:11px; color:#303b52; background:#fff; font:inherit; font-size:14px; outline:none; }
#dataExpenses .data-expense-filters input:focus,#dataExpenses .data-expense-filters select:focus { border-color:#6761d2; box-shadow:0 0 0 3px rgba(87,80,199,.12); }
#dataExpenses .data-expense-filters select { padding:0 34px 0 12px; }
#dataExpenses .data-expense-filters .is-search > div { position:relative; }
#dataExpenses .data-expense-filters .is-search input { padding:0 12px 0 42px; }
#dataExpenses .data-expense-filters .is-search .app-icon { position:absolute; top:13px; left:14px; width:18px; height:18px; color:#727d91; pointer-events:none; }
#dataExpenses .data-expense-filter-actions { display:flex; grid-column:1/-1; justify-content:flex-end; gap:8px; }
#dataExpenses .data-expense-filter-actions button { min-height:40px; padding:8px 14px; border:1px solid #d3d8e5; border-radius:10px; color:#525d72; background:#fff; font-size:13px; font-weight:850; }
#dataExpenses .data-expense-filter-actions button:first-child { border-color:#514bc8; color:#fff; background:#514bc8; }
#dataExpenses .data-expense-status { margin:0; padding:14px 20px; color:#4e5880; background:#f0f1ff; font-size:13px; font-weight:750; }
#dataExpenses .data-expense-list { display:grid; gap:1px; background:#e9ecf2; }
#dataExpenses .data-expense-list > .data-inline-empty { margin:0; background:#fff; }
#dataExpenses .data-expense-row { min-width:0; padding:0 20px; background:#fff; transition:background .16s ease; }
#dataExpenses .data-expense-row:hover { background:#fbfcff; }
#dataExpenses .data-expense-main { display:grid; grid-template-columns:128px minmax(220px,1.35fr) minmax(260px,1fr) minmax(125px,.45fr); gap:18px; align-items:center; min-height:102px; padding:15px 0; }
#dataExpenses .data-expense-main time strong,#dataExpenses .data-expense-main time span,#dataExpenses .data-expense-identity strong,#dataExpenses .data-expense-identity span { display:block; }
#dataExpenses .data-expense-main time strong { color:#354056; font-size:14px; }
#dataExpenses .data-expense-main time span { margin-top:5px; color:#8790a1; font-size:12px; }
#dataExpenses .data-expense-identity { min-width:0; }
#dataExpenses .data-expense-identity strong { overflow:hidden; color:#28334a; font-size:16px; text-overflow:ellipsis; white-space:nowrap; }
#dataExpenses .data-expense-identity span { margin-top:7px; overflow:hidden; color:#707b8e; font-size:12px; text-overflow:ellipsis; white-space:nowrap; }
#dataExpenses .data-expense-labels { display:flex; min-width:0; gap:7px; flex-wrap:wrap; }
#dataExpenses .data-expense-labels span { display:inline-flex; min-height:29px; align-items:center; padding:5px 9px; border-radius:99px; color:#4d5870; background:#edf0f5; font-size:12px; font-weight:800; }
#dataExpenses .data-expense-labels .is-confirmed { color:#167154; background:#e3f6ef; }
#dataExpenses .data-expense-labels .is-pending { color:#4e49a2; background:#ecebff; }
#dataExpenses .data-expense-labels .is-voided { color:#6b568e; background:#f1ebf8; }
#dataExpenses .data-expense-labels .is-method { color:#315e8b; background:#e9f2fb; }
#dataExpenses .data-expense-labels .is-legacy { color:#5e6577; background:#eef0f4; }
#dataExpenses .data-expense-labels .is-explicit { color:#176d58; background:#e5f5ef; }
#dataExpenses .data-expense-amount { color:#27364d; font-size:21px; text-align:right; letter-spacing:-.025em; }
#dataExpenses .data-expense-details { border-top:1px solid #edf0f4; }
#dataExpenses .data-expense-details summary { width:max-content; padding:11px 0 13px; color:#514bc0; cursor:pointer; font-size:12px; font-weight:850; }
#dataExpenses .data-expense-details > div { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; padding:0 0 17px; }
#dataExpenses .data-expense-details p { min-width:0; margin:0; padding:11px 13px; border-radius:11px; background:#f7f8fb; }
#dataExpenses .data-expense-details p span,#dataExpenses .data-expense-details p strong { display:block; }
#dataExpenses .data-expense-details p span { color:#7a8495; font-size:12px; }
#dataExpenses .data-expense-details p strong { margin-top:5px; overflow-wrap:anywhere; color:#3a465b; font-size:13px; line-height:1.45; }
#dataExpenses .data-expense-pagination p { margin:0; font-size:12px; }
#dataExpenses .data-expense-pagination > div { display:flex; gap:8px; }
#dataExpenses .data-expenses-card[aria-busy="true"] .data-expense-list { opacity:.55; pointer-events:none; }
#dataExpenses .data-daily-card { margin-top:18px; overflow:hidden; border:1px solid #dfe4ed; border-radius:20px; background:#fff; box-shadow:0 12px 30px rgba(41,52,83,.07); }
#dataExpenses .data-daily-card > header { padding:20px 22px; border-bottom:1px solid #e8ebf1; background:linear-gradient(115deg,#f5f4ff,#f7fbff); }
#dataExpenses .data-daily-card > header p { margin:0; color:#5750c5; font-size:12px; font-weight:900; letter-spacing:.08em; }
#dataExpenses .data-daily-card > header h3 { margin:5px 0 0; color:#263249; font-size:22px; }
#dataExpenses .data-daily-card > header span { display:block; margin-top:6px; color:#6d788b; font-size:13px; line-height:1.45; }
#dataExpenses .data-daily-columns { display:grid; grid-template-columns:1fr 1fr; gap:1px; background:#e5e9f0; }
#dataExpenses .data-daily-columns > section { min-width:0; padding:19px; background:#fff; }
#dataExpenses .data-daily-columns > section > header { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:12px; }
#dataExpenses .data-daily-columns > section > header small,#dataExpenses .data-daily-columns > section > header strong { display:block; }
#dataExpenses .data-daily-columns > section > header small { color:#6a63c9; font-size:12px; font-weight:900; }
#dataExpenses .data-daily-columns > section > header strong { margin-top:4px; color:#303b51; font-size:16px; }
#dataExpenses .data-daily-columns > section > header > span { padding:6px 9px; border-radius:99px; color:#536078; background:#edf0f5; font-size:12px; font-weight:800; }
#dataExpenses .data-daily-list { display:grid; max-height:560px; gap:10px; overflow:auto; }
#dataExpenses .data-daily-list > article { padding:14px; border:1px solid #e4e8ef; border-radius:14px; background:#fbfcfe; }
#dataExpenses .data-daily-list > article > header { display:flex; align-items:center; justify-content:space-between; gap:10px; margin-bottom:12px; }
#dataExpenses .data-daily-list > article > header strong { color:#344057; font-size:14px; }
#dataExpenses .data-daily-list > article > header span { color:#7a8496; font-size:12px; }
#dataExpenses .data-daily-list > article > header .is-closed { color:#167154; }
#dataExpenses .data-daily-list > article > header .is-open { color:#514bc0; }
#dataExpenses .data-daily-list dl { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:8px; margin:0; }
#dataExpenses .data-daily-list dl div { min-width:0; padding:9px; border-radius:10px; background:#f0f3f8; }
#dataExpenses .data-daily-list dt { color:#768195; font-size:12px; }
#dataExpenses .data-daily-list dd { margin:5px 0 0; overflow:hidden; color:#303c53; font-size:14px; font-weight:850; text-overflow:ellipsis; white-space:nowrap; }
#dataExpenses .data-daily-list dl small { display:block; margin-top:4px; color:#8a93a3; font-size:12px; }
#dataExpenses .data-daily-list > .data-inline-empty { margin:0; }

@media (max-width:1420px) {
  #dataExpenses .data-expense-kpis { grid-template-columns:repeat(2,minmax(0,1fr)); }
  #dataExpenses .data-expense-filters { grid-template-columns:repeat(3,minmax(150px,1fr)); }
  #dataExpenses .data-expense-filters .is-search { grid-column:span 2; }
  #dataExpenses .data-expense-main { grid-template-columns:115px minmax(220px,1fr) minmax(130px,.42fr); }
  #dataExpenses .data-expense-labels { grid-column:2/3; }
  #dataExpenses .data-expense-amount { grid-column:3; grid-row:1; }
}
@media (max-width:1050px) {
  #dataExpenses .data-daily-columns { grid-template-columns:1fr; }
}
@media (max-width:900px) {
  #dataExpenses .data-expense-filters { grid-template-columns:repeat(2,minmax(0,1fr)); }
  #dataExpenses .data-expense-filters .is-search { grid-column:1/-1; }
  #dataExpenses .data-expense-main { grid-template-columns:110px minmax(0,1fr) minmax(120px,.4fr); }
  #dataExpenses .data-expense-labels { grid-column:1/-1; }
  #dataExpenses .data-expense-details > div { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:640px) {
  #dataExpenses .data-expense-kpis { grid-template-columns:1fr; }
  #dataExpenses .data-expense-kpis article { min-height:126px; }
  #dataExpenses .data-expense-filters { grid-template-columns:1fr; padding:15px; }
  #dataExpenses .data-expense-filters .is-search { grid-column:auto; }
  #dataExpenses .data-expense-filter-actions { align-items:stretch; flex-direction:column; }
  #dataExpenses .data-expense-row { padding:0 15px; }
  #dataExpenses .data-expense-main { grid-template-columns:1fr auto; gap:12px; }
  #dataExpenses .data-expense-main time { grid-column:1; }
  #dataExpenses .data-expense-identity,#dataExpenses .data-expense-labels { grid-column:1/-1; }
  #dataExpenses .data-expense-amount { grid-column:2; grid-row:1; }
  #dataExpenses .data-expense-details > div { grid-template-columns:1fr; }
  #dataExpenses .data-expense-pagination { align-items:flex-start; flex-direction:column; }
  #dataExpenses .data-expense-pagination > div { width:100%; }
  #dataExpenses .data-expense-pagination > div button { flex:1; }
  #dataExpenses .data-daily-list dl { grid-template-columns:repeat(2,minmax(0,1fr)); }
}

/* Resumen administrativo v3 */
.data-overview-brief { display: flex; min-height: 116px; align-items: center; justify-content: space-between; gap: 24px; overflow: hidden; margin-bottom: 15px; padding: 20px 24px; border-radius: 21px; color: #fff; background: radial-gradient(circle at 88% 130%,rgba(82,204,164,.3),transparent 38%),linear-gradient(112deg,#292480,#1b315b 70%,#164e5b); box-shadow: 0 13px 32px rgba(31,35,92,.15); }
.data-overview-brief > div > span { color: #a8e7d0; font-size: 12px; font-weight: 900; letter-spacing: .13em; }
.data-overview-brief strong { display: block; margin-top: 4px; font-size: 22px; letter-spacing: -.02em; }
.data-overview-brief p { margin: 6px 0 0; color: #d9e1ed; font-size: 14px; }.data-overview-brief p b { color: #fff; }
.data-overview-brief button { display: inline-flex; min-height: 42px; align-items: center; gap: 8px; flex: 0 0 auto; padding: 9px 14px; border: 1px solid rgba(255,255,255,.22); border-radius: 12px; color: #20265b; background: #fff; font-size: 13px; font-weight: 900; box-shadow: 0 8px 18px rgba(7,17,46,.17); }
.data-overview-brief button .app-icon { width: 16px; height: 16px; }
.data-technical-footer { display: flex; align-items: center; justify-content: flex-end; gap: 8px; margin-top: 34px; padding: 14px 2px 4px; border-top: 1px solid #dfe4ee; }.data-technical-footer p { margin: 0 auto 0 0; color: #9098a8; font-size: 12px; }

.data-dashboard-kpis { display: grid; grid-template-columns: 1.55fr .92fr .95fr 1.05fr; gap: 13px; margin-bottom: 14px; }
.data-dashboard-kpis article { position: relative; min-width: 0; min-height: 172px; overflow: hidden; border-radius: 20px; box-shadow: 0 10px 28px rgba(43,52,91,.09); }
.data-kpi-income { padding: 20px 22px; color: #164c3e; background: linear-gradient(135deg,#dff8ee,#effbf6 62%,#d8f3e9); }
.data-kpi-income::after { position: absolute; right: -45px; bottom: -70px; width: 185px; height: 185px; border-radius: 50%; background: rgba(255,255,255,.45); content:""; }
.data-kpi-income header { display: flex; align-items: center; gap: 9px; }.data-kpi-income header > span { display: grid; width: 37px; height: 37px; place-items: center; border-radius: 11px; color: #147a5a; background: rgba(255,255,255,.7); }.data-kpi-income header .app-icon { width: 18px; height: 18px; }.data-kpi-income small { font-size: 12px; font-weight: 900; letter-spacing: .08em; }
.data-kpi-income > strong { display: block; margin-top: 12px; color: #133e35; font-size: clamp(27px,2.5vw,36px); letter-spacing: -.045em; }.data-kpi-income > p { margin: 5px 0 0; color: #37816b; font-size: 13px; font-weight: 750; }
.data-kpi-spark { position: absolute; right: 18px; bottom: 19px; z-index: 1; display: flex; height: 53px; align-items: flex-end; gap: 5px; }.data-kpi-spark i { width: 8px; height: var(--h); border-radius: 6px 6px 2px 2px; background: linear-gradient(#36b78e,#168264); opacity: .75; }
.data-kpi-net { padding: 21px; color: #fff; background: radial-gradient(circle at 90% 15%,rgba(131,126,255,.45),transparent 40%),linear-gradient(145deg,#3832a0,#232060); }.data-kpi-net > span { color: #cbc9ff; font-size: 12px; font-weight: 900; letter-spacing: .08em; }.data-kpi-net > strong { display: block; margin-top: 20px; font-size: clamp(23px,2.2vw,31px); letter-spacing: -.04em; }.data-kpi-net p { display: flex; align-items: center; gap: 6px; margin: 16px 0 0; color: #d4d3ef; font-size: 12px; }.data-kpi-net p .app-icon { width: 16px; height: 16px; color: #8fe4c6; }.data-kpi-net > small { display:block; margin-top:4px; color:#aaa9d5; font-size:12px; }
.data-kpi-outflow { padding: 20px; color: #315c84; background: linear-gradient(145deg,#edf6ff,#f8fbff); }.data-kpi-outflow header { display: flex; align-items: center; justify-content: space-between; color: #477aa5; font-size: 12px; font-weight: 900; letter-spacing: .08em; }.data-kpi-outflow header .app-icon { width: 22px; height: 22px; }.data-kpi-outflow > strong { display: block; margin-top: 22px; color: #294f72; font-size: clamp(23px,2.1vw,30px); letter-spacing: -.04em; }.data-kpi-outflow > p { margin: 5px 0 18px; color: #6e8ca8; font-size: 12px; }.data-kpi-outflow > div > i { display: block; height: 7px; overflow: hidden; border-radius: 99px; background: #d8e7f4; }.data-kpi-outflow > div > i::after { display:block; width:22.5%; height:100%; border-radius:inherit; background:#64a4cf; content:""; }.data-kpi-outflow > div > b { display: block; margin-top: 7px; color: #587b99; font-size: 12px; }
.data-kpi-debt { display: grid; grid-template-columns: 43px minmax(0,1fr) 32px; gap: 11px; align-items: center; padding: 18px; color: #4b478f; background: linear-gradient(145deg,#f0efff,#fafaff); }.data-kpi-debt > span { display: grid; width: 43px; height: 43px; place-items: center; align-self: start; border-radius: 13px; color: #5751b5; background: #dedcff; }.data-kpi-debt > span .app-icon { width: 21px; height: 21px; }.data-kpi-debt small { font-size: 12px; font-weight: 900; letter-spacing: .07em; }.data-kpi-debt strong { display:block; margin-top: 11px; color: #403c80; font-size: clamp(22px,2vw,28px); letter-spacing: -.04em; }.data-kpi-debt p { margin: 5px 0 0; color: #7773a8; font-size: 12px; line-height: 1.4; }.data-kpi-debt > button { display: grid; width: 32px; height: 32px; place-items: center; align-self: end; border: 0; border-radius: 10px; color: #514bc0; background: #e7e5ff; }.data-kpi-debt > button .app-icon { width: 15px; height: 15px; }

.data-section-context { display:flex; min-height:82px; align-items:center; justify-content:space-between; gap:20px; margin-bottom:12px; padding:13px 16px 13px 19px; border:1px solid #dde2ef; border-radius:18px; background:rgba(255,255,255,.94); box-shadow:0 8px 24px rgba(42,51,88,.06); }
.data-section-context[hidden] { display:none; }
.data-section-context > div:first-child { min-width:0; }
.data-section-context > div:first-child > span { display:inline-block; margin-right:10px; color:#5a54cf; font-size:12px; font-weight:900; letter-spacing:.11em; vertical-align:baseline; }
.data-section-context h2 { display:inline; margin:0; color:#263249; font-size:clamp(20px,2vw,26px); letter-spacing:-.035em; }
.data-section-context p { margin:5px 0 0; color:#737e91; font-size:13px; line-height:1.35; }
.data-section-context > button,.data-context-actions button { display:inline-flex; min-height:40px; align-items:center; justify-content:center; gap:7px; flex:0 0 auto; padding:8px 13px; border:1px solid #d5daea; border-radius:11px; color:#4c47bb; background:#f9f9ff; font-size:12px; font-weight:850; white-space:nowrap; }
.data-section-context > button { border-color:#514bc8; color:#fff; background:#514bc8; box-shadow:0 7px 16px rgba(81,75,200,.18); }
.data-section-context .app-icon { width:16px; height:16px; }
.data-context-actions { display:flex; justify-content:flex-end; gap:7px; flex-wrap:wrap; }
.data-context-actions button:first-child { border-color:#514bc8; color:#fff; background:#514bc8; }

.data-dashboard-primary { display: grid; grid-template-columns: minmax(0,1.85fr) minmax(285px,.65fr); gap: 14px; margin-bottom: 14px; }
.data-dashboard-trend { min-width: 0; margin: 0; }.data-dashboard-trend .data-chart { height: 290px; }
.data-chart-income-area { fill:url(#incomeArea); }.data-chart-outflow-area { fill:url(#outflowArea); }
.data-dashboard-attendance,.data-dashboard-methods,.data-dashboard-reminders,.data-dashboard-professionals { border-radius: 21px; background: #fff; box-shadow: 0 11px 30px rgba(43,52,91,.08); }
.data-dashboard-attendance { padding: 21px; }.data-dashboard-attendance > header { display: flex; align-items: flex-start; justify-content: space-between; gap: 10px; }.data-dashboard-attendance header p,.data-dashboard-methods header p,.data-dashboard-reminders header p,.data-dashboard-professionals header p { margin:0 0 4px; color:#5a55cb; font-size:12px; font-weight:900; letter-spacing:.1em; }.data-dashboard-attendance h2 { margin:0; color:#253047; font-size:24px; }.data-dashboard-attendance header button { padding:6px 8px; border:0; border-radius:8px; color:#514bc8; background:#f0efff; font-size:12px; font-weight:850; }
.data-attendance-ring { display:grid; width:164px; height:164px; place-items:center; margin:19px auto; border-radius:50%; background:conic-gradient(#2daf80 0 81%,#4f78cf 81% 90%,#e87668 90% 97%,#dce1eb 97% 100%); }.data-attendance-ring::before { grid-area:1/1; width:117px; height:117px; border-radius:50%; background:#fff; content:""; }.data-attendance-ring span { z-index:1; grid-area:1/1; text-align:center; }.data-attendance-ring strong,.data-attendance-ring small { display:block; }.data-attendance-ring strong { color:#26334a; font-size:31px; }.data-attendance-ring small { color:#7a8497; font-size:12px; }
.data-dashboard-attendance dl { margin:0; }.data-dashboard-attendance dl div { display:flex; justify-content:space-between; gap:10px; padding:7px 0; border-top:1px solid #edf0f4; }.data-dashboard-attendance dt,.data-dashboard-attendance dd { margin:0; color:#5e697d; font-size:12px; }.data-dashboard-attendance dd { color:#2d384e; font-weight:900; }.data-dashboard-attendance dt i,.data-professional-legend i { display:inline-block; width:9px; height:9px; margin-right:7px; border-radius:50%; }.data-dashboard-attendance .is-attended,.data-professional-legend .is-attended { background:#2daf80; }.data-dashboard-attendance .is-absent,.data-professional-legend .is-absent { background:#4f78cf; }.data-dashboard-attendance .is-cancelled,.data-professional-legend .is-cancelled { background:#e87668; }.data-dashboard-attendance .is-other,.data-professional-legend .is-other { background:#c8cfdd; }.data-dashboard-attendance > footer { margin-top:11px; padding-top:11px; border-top:1px solid #e9edf3; }.data-dashboard-attendance > footer span,.data-dashboard-attendance > footer small { display:block; font-size:12px; }.data-dashboard-attendance > footer span { color:#3a455b; }.data-dashboard-attendance > footer span b { color:#16805c; }.data-dashboard-attendance > footer small { margin-top:3px; color:#8891a1; }

.data-dashboard-secondary { display:grid; grid-template-columns:minmax(0,1.25fr) minmax(310px,.75fr); gap:14px; margin-bottom:14px; }.data-dashboard-methods,.data-dashboard-reminders { padding:22px; }.data-dashboard-methods h3,.data-dashboard-reminders h3,.data-dashboard-professionals h3 { margin:0; color:#273249; font-size:21px; letter-spacing:-.025em; }.data-dashboard-methods { display:grid; grid-template-columns:minmax(180px,.42fr) minmax(300px,1fr); column-gap:28px; }.data-dashboard-methods header { grid-column:1/-1; }.data-method-total { align-self:center; padding:24px 0; }.data-method-total strong,.data-method-total span { display:block; }.data-method-total strong { color:#4c46c5; font-size:48px; letter-spacing:-.05em; }.data-method-total span { margin-top:3px; color:#7b8597; font-size:13px; }.data-method-bars { display:grid; align-content:center; gap:13px; }.data-method-bars article p { display:flex; justify-content:space-between; gap:12px; margin:0 0 6px; color:#59647a; font-size:12px; }.data-method-bars article p b { color:#2e394f; }.data-method-bars article > i { display:block; height:8px; overflow:hidden; border-radius:99px; background:#edf0f5; }.data-method-bars article > i b { display:block; height:100%; border-radius:inherit; background:linear-gradient(90deg,#5a54cf,#8380e3); }.data-method-bars article:nth-child(2) > i b { background:linear-gradient(90deg,#31a982,#6ac6a9); }.data-method-bars article:nth-child(3) > i b { background:linear-gradient(90deg,#537bd2,#8eabeb); }.data-method-bars article:nth-child(4) > i b { background:linear-gradient(90deg,#6ca4cd,#91c1e1); }
.data-dashboard-reminders { display:grid; grid-template-columns:145px minmax(0,1fr); gap:0 18px; }.data-dashboard-reminders header { grid-column:1/-1; }.data-reminder-gauge { display:grid; width:132px; height:132px; place-items:center; align-self:center; margin-top:16px; border-radius:50%; background:conic-gradient(#2bab7c 0 91%,#e6eaf0 91% 100%); }.data-reminder-gauge::before { grid-area:1/1; width:96px; height:96px; border-radius:50%; background:#fff; content:""; }.data-reminder-gauge span { z-index:1; grid-area:1/1; text-align:center; }.data-reminder-gauge strong,.data-reminder-gauge small { display:block; }.data-reminder-gauge strong { color:#218263; font-size:27px; }.data-reminder-gauge small { color:#7f899b; font-size:12px; }.data-reminder-numbers { display:flex; align-items:center; gap:17px; }.data-reminder-numbers span { flex:1; }.data-reminder-numbers strong,.data-reminder-numbers small { display:block; }.data-reminder-numbers strong { color:#29344b; font-size:24px; }.data-reminder-numbers small { margin-top:3px; color:#7c8799; font-size:12px; line-height:1.3; }.data-dashboard-reminders > button { grid-column:1/-1; min-height:38px; margin-top:14px; border:1px solid #d7dced; border-radius:10px; color:#4e49c2; background:#f8f8ff; font-size:12px; font-weight:850; }

.data-dashboard-professionals { padding:22px; }.data-dashboard-professionals > header { display:flex; align-items:flex-start; justify-content:space-between; gap:18px; margin-bottom:23px; }.data-professional-legend { display:flex; gap:14px; flex-wrap:wrap; color:#737d90; font-size:12px; }.data-professional-chart { display:grid; gap:17px; }.data-professional-chart article { display:grid; grid-template-columns:140px minmax(0,1fr) 80px; gap:14px; align-items:center; }.data-professional-chart article > span,.data-professional-chart article > b { color:#445066; font-size:13px; }.data-professional-chart article > b { text-align:right; }.data-professional-chart article > div { display:flex; height:18px; overflow:hidden; border-radius:99px; background:#eff1f5; }.data-professional-chart article > div i { display:block; width:var(--w); height:100%; }.data-professional-chart article > div .is-attended { background:#2daf80; }.data-professional-chart article > div .is-absent { background:#4f78cf; }.data-professional-chart article > div .is-cancelled { background:#e87668; }

@media (max-width: 1240px) {
  .data-dashboard-kpis { grid-template-columns:repeat(2,minmax(0,1fr)); }.data-dashboard-primary { grid-template-columns:1fr; }.data-dashboard-attendance { display:grid; grid-template-columns:1fr 190px minmax(220px,1fr); gap:15px; align-items:center; }.data-dashboard-attendance > header { grid-column:1/-1; }.data-attendance-ring { margin:0; }.data-dashboard-attendance > footer { margin:0; }.data-dashboard-secondary { grid-template-columns:1fr; }
}
@media (max-width: 760px) {
  .data-overview-brief { align-items:flex-start; flex-direction:column; padding:18px; }.data-overview-brief strong { font-size:19px; }.data-section-context { align-items:flex-start; flex-direction:column; }.data-section-context > button,.data-context-actions { width:100%; }.data-context-actions { justify-content:flex-start; }.data-dashboard-kpis { grid-template-columns:1fr; }.data-dashboard-kpis article { min-height:150px; }.data-dashboard-primary { grid-template-columns:1fr; }.data-dashboard-attendance { display:block; }.data-attendance-ring { margin:18px auto; }.data-dashboard-methods { grid-template-columns:1fr; }.data-method-total { padding:18px 0; }.data-dashboard-reminders { grid-template-columns:1fr; }.data-reminder-gauge { margin:18px auto; }.data-reminder-numbers { margin-top:4px; }.data-dashboard-professionals > header { flex-direction:column; }.data-professional-chart article { grid-template-columns:1fr; gap:6px; }.data-professional-chart article > b { text-align:left; }.data-technical-footer { align-items:flex-start; flex-direction:column; }.data-technical-footer p { margin:0 0 4px; }
}

/* Cobros detallados: consulta real, filtros y exportación */
.data-collections-card { min-width: 0; }
.data-collections-card > header { flex-direction: row; align-items: center; }
.data-collection-advanced { border-bottom: 1px solid #d9d8f5; background: #f1f0ff; }
.data-collection-advanced > summary { display: grid; min-height: 72px; grid-template-columns: 42px minmax(0,1fr) auto; align-items: center; gap: 12px; padding: 12px 20px; color: #37338d; cursor: pointer; list-style: none; }
.data-collection-advanced > summary::-webkit-details-marker { display: none; }
.data-collection-advanced > summary::marker { content: ''; }
.data-collection-advanced-icon { display: grid; width: 40px; height: 40px; place-items: center; border: 1px solid #d5d3fb; border-radius: 11px; color: #514bc8; background: #fff; }
.data-collection-advanced-icon .app-icon { width: 19px; height: 19px; }
.data-collection-advanced-copy strong,.data-collection-advanced-copy small { display: block; }
.data-collection-advanced-copy strong { color: #343174; font-size: 15px; font-weight: 900; }
.data-collection-advanced-copy small { margin-top: 3px; color: #626287; font-size: 12px; line-height: 1.35; }
.data-collection-advanced-action { display: inline-flex; min-height: 40px; align-items: center; gap: 9px; padding: 8px 12px; border: 1px solid #c6c3f1; border-radius: 10px; color: #4540a9; background: #fff; font-size: 13px; font-weight: 850; white-space: nowrap; }
.data-collection-advanced-action .app-icon { width: 17px; height: 17px; transition: transform .18s ease; }
.data-collection-advanced-close,.data-collection-advanced[open] .data-collection-advanced-open { display: none; }
.data-collection-advanced[open] .data-collection-advanced-close { display: inline; }
.data-collection-advanced[open] > summary .data-collection-advanced-action .app-icon { transform: rotate(180deg); }
.data-collection-advanced > .data-collection-filters { border-top: 1px solid #e7eaf1; }
.data-collection-filters { display: grid; grid-template-columns: minmax(270px,1.55fr) repeat(5,minmax(140px,.75fr)); gap: 12px; padding: 17px 20px; border-bottom: 1px solid #e7eaf1; background: #f8f9fc; }
.data-collection-filters label { display: grid; min-width: 0; gap: 6px; color: #626d82; font-size: 12px; font-weight: 850; }
.data-collection-filters label > span { font-size: 12px; }
.data-collection-filters input,.data-collection-filters select { width: 100%; min-height: 44px; border: 1px solid #d7dce8; border-radius: 11px; color: #303b52; background: #fff; font: inherit; font-size: 14px; outline: none; }
.data-collection-filters input:focus,.data-collection-filters select:focus { border-color: #6761d2; box-shadow: 0 0 0 3px rgba(87,80,199,.12); }
.data-collection-filters select { padding: 0 34px 0 12px; }
.data-collection-filters .is-search > div { position: relative; }.data-collection-filters .is-search input { padding: 0 12px 0 42px; }.data-collection-filters .is-search .app-icon { position: absolute; top: 13px; left: 14px; width: 18px; height: 18px; color: #727d91; pointer-events: none; }
.data-collection-filter-actions { display: flex; grid-column: 1/-1; justify-content: flex-end; gap: 8px; }
.data-collection-filter-actions button { min-height: 40px; padding: 8px 14px; border: 1px solid #d3d8e5; border-radius: 10px; color: #525d72; background: #fff; font-size: 13px; font-weight: 850; }
.data-collection-filter-actions button:first-child { border-color: #514bc8; color: #fff; background: #514bc8; }
.data-collection-status { margin: 0; padding: 14px 20px; color: #4e5880; background: #f0f1ff; font-size: 13px; font-weight: 750; }
.data-collection-list { display: grid; gap: 1px; background: #e9ecf2; }
.data-collection-list > .data-inline-empty { margin: 0; background: #fff; }
.data-collection-row { min-width: 0; padding: 0 20px; background: #fff; transition: background .16s ease; }
.data-collection-row:hover { background: #fbfcff; }
.data-collection-main { display: grid; grid-template-columns: 128px minmax(220px,1.35fr) minmax(260px,1fr) minmax(125px,.45fr); gap: 18px; align-items: center; min-height: 108px; padding: 15px 0; }
.data-collection-main time strong,.data-collection-main time span,.data-collection-identity > strong,.data-collection-identity > span,.data-collection-amount strong,.data-collection-amount span { display: block; }
.data-collection-main time strong { color: #354056; font-size: 14px; }.data-collection-main time span { margin-top: 5px; color: #8790a1; font-size: 12px; }
.data-collection-identity { min-width: 0; }.data-collection-identity > strong { overflow: hidden; color: #28334a; font-size: 16px; text-overflow: ellipsis; white-space: nowrap; }.data-collection-identity > span { margin-top: 3px; overflow: hidden; color: #707b8e; font-size: 12px; text-overflow: ellipsis; white-space: nowrap; }.data-collection-identity > p { margin: 8px 0 0; overflow: hidden; color: #536075; font-size: 13px; line-height: 1.4; text-overflow: ellipsis; white-space: nowrap; }
.data-collection-labels { display: flex; min-width: 0; gap: 7px; flex-wrap: wrap; }.data-collection-labels span { display: inline-flex; min-height: 29px; align-items: center; padding: 5px 9px; border-radius: 99px; color: #4d5870; background: #edf0f5; font-size: 12px; font-weight: 800; }
.data-collection-labels .is-confirmed { color: #167154; background: #e3f6ef; }.data-collection-labels .is-pending { color: #4e49a2; background: #ecebff; }.data-collection-labels .is-not-received { color: #59667b; background: #edf0f4; }.data-collection-labels .is-voided { color: #6b568e; background: #f1ebf8; }.data-collection-labels .is-refunded { color: #246a83; background: #e6f4f8; }.data-collection-labels .is-method { color: #315e8b; background: #e9f2fb; }.data-collection-labels .is-legacy { color: #5e6577; background: #eef0f4; }.data-collection-labels .is-explicit { color: #176d58; background: #e5f5ef; }
.data-collection-amount { text-align: right; }.data-collection-amount strong { color: #27364d; font-size: 21px; letter-spacing: -.025em; }.data-collection-amount span { margin-top: 4px; color: #828c9e; font-size: 12px; }
.data-collection-details { border-top: 1px solid #edf0f4; }.data-collection-details summary { width: max-content; padding: 11px 0 13px; color: #514bc0; cursor: pointer; font-size: 12px; font-weight: 850; }.data-collection-details > div { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 12px; padding: 0 0 17px; }.data-collection-details p { min-width: 0; margin: 0; padding: 11px 13px; border-radius: 11px; background: #f7f8fb; }.data-collection-details p span,.data-collection-details p strong { display: block; }.data-collection-details p span { color: #7a8495; font-size: 12px; }.data-collection-details p strong { margin-top: 5px; overflow-wrap: anywhere; color: #3a465b; font-size: 13px; line-height: 1.45; }
.data-collection-pagination p { margin: 0; font-size: 12px; }.data-collection-pagination > div { display: flex; gap: 8px; }
.data-collections-card[aria-busy="true"] .data-collection-list { opacity: .55; pointer-events: none; }

.data-section-stats .is-balance { padding: 0; }
.data-section-stats .is-balance > button { display: block; width: 100%; height: 100%; padding: 20px 22px; border: 0; color: inherit; background: transparent; font: inherit; text-align: left; cursor: pointer; }
.data-section-stats .is-balance > button:hover strong { text-decoration: underline; text-underline-offset: 4px; }
.data-section-stats .is-balance > button:focus-visible { outline: 3px solid rgba(87,80,199,.35); outline-offset: -3px; }
#dataDebtors { margin-top: 16px; scroll-margin-top: 90px; }
#dataDebtors .data-debtor-filters { display: grid; grid-template-columns: minmax(260px,1fr) minmax(180px,.4fr) auto; gap: 12px; align-items: end; padding: 17px 20px; border-bottom: 1px solid #e7eaf1; background: #f8f9fc; }
#dataDebtors .data-debtor-filters label { display: grid; min-width: 0; gap: 6px; color: #626d82; font-size: 12px; font-weight: 850; }
#dataDebtors .data-debtor-filters input,#dataDebtors .data-debtor-filters select { width: 100%; min-height: 44px; border: 1px solid #d7dce8; border-radius: 11px; color: #303b52; background: #fff; font: inherit; font-size: 14px; outline: none; }
#dataDebtors .data-debtor-filters select { padding: 0 34px 0 12px; }
#dataDebtors .data-debtor-filters input:focus,#dataDebtors .data-debtor-filters select:focus { border-color: #6761d2; box-shadow: 0 0 0 3px rgba(87,80,199,.12); }
#dataDebtors .data-debtor-filters .is-search > div { position: relative; }
#dataDebtors .data-debtor-filters .is-search input { padding: 0 12px 0 42px; }
#dataDebtors .data-debtor-filters .is-search .app-icon { position: absolute; top: 13px; left: 14px; width: 18px; height: 18px; color: #727d91; pointer-events: none; }
#dataDebtors .data-debtor-filter-actions { display: flex; gap: 8px; }
#dataDebtors .data-debtor-filter-actions button { min-height: 44px; padding: 8px 14px; border: 1px solid #d3d8e5; border-radius: 10px; color: #525d72; background: #fff; font-size: 13px; font-weight: 850; }
#dataDebtors .data-debtor-filter-actions button:first-child { border-color: #514bc8; color: #fff; background: #514bc8; }
#dataDebtors .data-debtor-status { margin: 0; padding: 14px 20px; color: #4e5880; background: #f0f1ff; font-size: 13px; font-weight: 750; }
#dataDebtors .data-debtor-list { display: grid; gap: 1px; background: #e9ecf2; }
#dataDebtors .data-debtor-list > .data-inline-empty { margin: 0; background: #fff; }
#dataDebtors .data-debtor-row { display: grid; grid-template-columns: minmax(220px,1fr) minmax(200px,1fr) minmax(120px,auto) auto; gap: 18px; align-items: center; min-height: 84px; padding: 14px 20px; background: #fff; }
#dataDebtors .data-debtor-row:hover { background: #fbfcff; }
#dataDebtors .data-debtor-identity { min-width: 0; }
#dataDebtors .data-debtor-identity > strong,#dataDebtors .data-debtor-identity > span { display: block; overflow-wrap: anywhere; }
#dataDebtors .data-debtor-identity > strong { color: #28334a; font-size: 16px; }
#dataDebtors .data-debtor-identity > span { margin-top: 3px; color: #707b8e; font-size: 13px; }
#dataDebtors .data-debtor-reason { min-width: 0; margin: 0; color: #536075; font-size: 13px; line-height: 1.45; overflow-wrap: anywhere; }
#dataDebtors .data-debtor-amount { color: #27364d; font-size: 21px; letter-spacing: -.025em; text-align: right; white-space: nowrap; }
#dataDebtors .data-debtor-row > button { min-height: 40px; padding: 8px 14px; border: 1px solid #d2d8e6; border-radius: 10px; color: #444ec0; background: #fff; font-size: 13px; font-weight: 850; white-space: nowrap; }
#dataDebtors .data-debtor-pagination p { margin: 0; font-size: 12px; }
#dataDebtors .data-debtor-pagination > div { display: flex; gap: 8px; }
#dataDebtors[aria-busy="true"] .data-debtor-list { opacity: .55; pointer-events: none; }
@media (max-width: 900px) {
  #dataDebtors .data-debtor-filters { grid-template-columns: 1fr 1fr; }
  #dataDebtors .data-debtor-filters .is-search { grid-column: 1/-1; }
  #dataDebtors .data-debtor-row { grid-template-columns: minmax(0,1fr) auto; }
  #dataDebtors .data-debtor-reason { grid-column: 1/-1; grid-row: 2; }
  #dataDebtors .data-debtor-row > button { grid-column: 1/-1; justify-self: start; }
}
@media (max-width: 640px) {
  #dataDebtors .data-debtor-filters { grid-template-columns: 1fr; padding: 15px; }
  #dataDebtors .data-debtor-filter-actions button { flex: 1; }
  #dataDebtors .data-debtor-row { padding: 14px 15px; }
  #dataDebtors .data-debtor-pagination { align-items: flex-start; flex-direction: column; }
  #dataDebtors .data-debtor-pagination > div { width: 100%; }
  #dataDebtors .data-debtor-pagination > div button { flex: 1; }
}

@media (max-width: 1420px) {
  .data-collection-filters { grid-template-columns: repeat(3,minmax(150px,1fr)); }.data-collection-filters .is-search { grid-column: span 2; }
  .data-collection-main { grid-template-columns: 115px minmax(220px,1fr) minmax(130px,.42fr); }.data-collection-labels { grid-column: 2/3; }.data-collection-amount { grid-column: 3; grid-row: 1; }
}
@media (max-width: 1180px) and (min-width: 901px) {
  body.data-active .legacy-topbar { gap: 10px; padding-inline: 12px; }
  body.data-active .legacy-brand small { display: none; }
  body.data-active .legacy-nav button { padding: 9px 8px; font-size: 13px; }
}
@media (max-width: 900px) {
  .data-collection-filters { grid-template-columns: repeat(2,minmax(0,1fr)); }.data-collection-filters .is-search { grid-column: 1/-1; }
  .data-collection-main { grid-template-columns: 110px minmax(0,1fr) minmax(120px,.4fr); }.data-collection-labels { grid-column: 1/-1; }.data-collection-details > div { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width: 640px) {
  .data-collections-card > header { align-items: flex-start; }
  .data-collection-advanced > summary { grid-template-columns: 40px minmax(0,1fr) auto; gap: 9px; padding-inline: 15px; }
  .data-collection-advanced-copy strong { font-size: 14px; }
  .data-collection-advanced-action { padding-inline: 9px; font-size: 12px; }
  .data-collection-filters { grid-template-columns: 1fr; padding: 15px; }.data-collection-filters .is-search { grid-column: auto; }.data-collection-filter-actions { align-items: stretch; flex-direction: column; }
  .data-collection-row { padding: 0 15px; }.data-collection-main { grid-template-columns: 1fr auto; gap: 12px; }.data-collection-main time { grid-column: 1; }.data-collection-identity { grid-column: 1/-1; }.data-collection-labels { grid-column: 1/-1; }.data-collection-amount { grid-column: 2; grid-row: 1; }.data-collection-details > div { grid-template-columns: 1fr; }
  .data-collection-pagination { align-items: flex-start; flex-direction: column; }.data-collection-pagination > div { width: 100%; }.data-collection-pagination > div button { flex: 1; }
}

/* Seguimiento de coberturas: estilos aislados de Datos. */
.data-screen[data-data-panel="collections"] .data-coverage-receipts { margin: 0 0 20px; border: 1px solid #d6e9e2; border-radius: 18px; background: #f7fcfa; overflow: hidden; }
.data-screen[data-data-panel="collections"] .data-coverage-receipts > header { padding: 20px 24px; border-bottom: 1px solid #dcece6; }
.data-screen[data-data-panel="collections"] .data-coverage-receipts > header p { margin: 0 0 5px; color: #14795b; font-size: 12px; font-weight: 850; letter-spacing: .08em; }
.data-screen[data-data-panel="collections"] .data-coverage-receipts > header h3 { margin: 0 0 5px; color: #244136; font-size: 20px; }
.data-screen[data-data-panel="collections"] .data-coverage-receipts > header span { color: #596d64; font-size: 13px; }
.data-screen[data-data-panel="collections"] #dataCoverageReceipts article { display: flex; justify-content: space-between; align-items: center; gap: 14px; padding: 14px 24px; border-top: 1px solid #e2eee9; }
.data-screen[data-data-panel="collections"] #dataCoverageReceipts article:first-child { border-top: 0; }
.data-screen[data-data-panel="collections"] #dataCoverageReceipts article strong,.data-screen[data-data-panel="collections"] #dataCoverageReceipts article span { display: block; }
.data-screen[data-data-panel="collections"] #dataCoverageReceipts article strong { color: #253d35; font-size: 15px; }
.data-screen[data-data-panel="collections"] #dataCoverageReceipts article span { margin-top: 4px; color: #60736b; font-size: 13px; }
.data-screen[data-data-panel="collections"] #dataCoverageReceipts article b { color: #0c805b; font-size: 19px; white-space: nowrap; }
.data-screen[data-data-panel="collections"] #dataCoverageReceipts > .data-inline-empty { margin: 0; padding: 20px 24px; color: #60736b; font-size: 13px; }
.data-coverage-workflow > [hidden] { display: none !important; }
.data-coverage-workflow .data-coverage-worklist { padding: 20px 26px 28px; color: #26334b; }
.data-coverage-workflow .data-coverage-worklist__stages { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 12px; }
.data-coverage-workflow .data-coverage-worklist__stages article { display: grid; gap: 5px; padding: 19px; border: 1px solid #dde5f3; border-radius: 18px; background: #f8faff; }
.data-coverage-workflow .data-coverage-worklist__stages article:nth-child(2) { background: #f2f6ff; }
.data-coverage-workflow .data-coverage-worklist__stages article:nth-child(3) { background: #ebf9f3; }
.data-coverage-workflow .data-coverage-worklist__stages small { color: #526287; font-size: 12px; font-weight: 800; letter-spacing: .08em; }
.data-coverage-workflow .data-coverage-worklist__stages strong { color: #273354; font-size: 30px; line-height: 1.1; }
.data-coverage-workflow .data-coverage-worklist__stages span { color: #59687e; font-size: 13px; }
.data-coverage-workflow .data-coverage-worklist__filters { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)) auto; align-items: end; gap: 12px; margin-top: 20px; }
.data-coverage-workflow .data-coverage-worklist__filters label { display: grid; gap: 6px; color: #45546d; font-size: 13px; font-weight: 700; min-width: 0; }
.data-coverage-workflow .data-coverage-worklist__filters input,
.data-coverage-workflow .data-coverage-worklist__filters select { width: 100%; min-width: 0; min-height: 44px; padding: 8px 10px; border: 1px solid #cbd6e8; border-radius: 11px; background: white; color: #273354; font: inherit; font-size: 13px; }
.data-coverage-workflow .data-coverage-worklist__filters button[type="submit"],
.data-coverage-workflow .data-coverage-worklist__toolbar button { min-height: 44px; padding: 8px 15px; border: 0; border-radius: 11px; background: #4543b9; color: white; font-size: 13px; font-weight: 800; cursor: pointer; }
.data-coverage-workflow .data-coverage-worklist__toolbar button:last-child { background: #0e9b69; }
.data-coverage-workflow .data-coverage-worklist__toolbar #coverageWorkExport { border: 1px solid #b8b4e8; background: #f4f2ff; color: #39369e; }
.data-coverage-workflow .data-coverage-worklist__toolbar button:disabled { background: #d4d9e8; color: #65718a; cursor: default; }
.data-coverage-workflow .data-coverage-worklist__toolbar #coverageWorkExport:disabled { border-color: #d4d9e8; background: #f0f2f7; color: #65718a; }
.data-coverage-workflow .data-coverage-worklist__toolbar { display: flex; align-items: center; flex-wrap: wrap; gap: 10px; margin: 20px 0 12px; }
.data-coverage-workflow .data-coverage-worklist__toolbar label { display: inline-flex; align-items: center; gap: 7px; font-size: 13px; font-weight: 700; }
.data-coverage-workflow .data-coverage-worklist__toolbar input[type="checkbox"],
.data-coverage-workflow .data-coverage-worklist__item input[type="checkbox"] {
  appearance: none; -webkit-appearance: none; display: inline-grid; width: 22px; height: 22px; flex: 0 0 22px;
  place-content: center; margin: 0; border: 1.5px solid #aeb9ce; border-radius: 7px; background: #fff;
  box-shadow: 0 1px 2px rgba(35,48,78,.08); cursor: pointer;
  transition: background .16s ease, border-color .16s ease, box-shadow .16s ease, transform .16s ease;
}
.data-coverage-workflow .data-coverage-worklist__toolbar input[type="checkbox"]:hover,
.data-coverage-workflow .data-coverage-worklist__item input[type="checkbox"]:hover { border-color: #635bce; box-shadow: 0 0 0 4px rgba(81,75,200,.1); }
.data-coverage-workflow .data-coverage-worklist__toolbar input[type="checkbox"]:checked,
.data-coverage-workflow .data-coverage-worklist__item input[type="checkbox"]:checked {
  border-color: #514bc8; background: linear-gradient(145deg,#655de0,#4543b9); box-shadow: 0 3px 8px rgba(81,75,200,.23);
}
.data-coverage-workflow .data-coverage-worklist__toolbar input[type="checkbox"]:checked::after,
.data-coverage-workflow .data-coverage-worklist__item input[type="checkbox"]:checked::after {
  width: 6px; height: 10px; margin-top: -2px; border: solid #fff; border-width: 0 2.5px 2.5px 0; content: ""; transform: rotate(45deg);
}
.data-coverage-workflow .data-coverage-worklist__toolbar input[type="checkbox"]:focus-visible,
.data-coverage-workflow .data-coverage-worklist__item input[type="checkbox"]:focus-visible { outline: 3px solid rgba(81,75,200,.24); outline-offset: 2px; }
.data-coverage-workflow .data-coverage-worklist__toolbar input[type="checkbox"]:disabled,
.data-coverage-workflow .data-coverage-worklist__item input[type="checkbox"]:disabled { border-color: #d6dbe5; background: #f0f2f6; box-shadow: none; cursor: not-allowed; }
.data-coverage-workflow .data-coverage-worklist__toolbar span { margin-right: auto; color: #586881; font-size: 13px; }
.data-coverage-workflow .data-coverage-worklist__guide { margin: 0 0 13px; color: #586881; font-size: 13px; line-height: 1.5; }
.data-coverage-workflow .data-coverage-worklist__items { display: grid; gap: 8px; max-height: 650px; overflow-y: auto; }
.data-coverage-workflow .data-coverage-worklist__item { display: grid; grid-template-columns: auto minmax(0,1fr) auto; align-items: center; gap: 14px; padding: 13px 16px; border: 1px solid #dce4f1; border-radius: 13px; background: white; transition: border-color .16s ease, background .16s ease, box-shadow .16s ease; }
.data-coverage-workflow .data-coverage-worklist__item:hover { border-color: #c4c7ef; box-shadow: 0 5px 16px rgba(43,52,92,.06); }
.data-coverage-workflow .data-coverage-worklist__item:has(input[type="checkbox"]:checked) { border-color: #8c87dd; background: #f8f7ff; box-shadow: 0 0 0 2px rgba(81,75,200,.08); }
.data-coverage-workflow .data-coverage-worklist__item strong { display: block; overflow-wrap: anywhere; font-size: 14px; }
.data-coverage-workflow .data-coverage-worklist__item p { margin: 3px 0; color: #52627b; font-size: 13px; overflow-wrap: anywhere; }
.data-coverage-workflow .data-coverage-worklist__item small { color: #69768c; font-size: 12px; }
.data-coverage-workflow .data-coverage-worklist__item > div:last-child { text-align: right; }
.data-coverage-workflow .data-coverage-worklist__item > div:last-child small { display: block; margin-bottom: 3px; }
.data-coverage-workflow .data-coverage-worklist__item b { display: block; white-space: nowrap; font-size: 15px; }
.data-coverage-workflow .data-coverage-worklist__item em { display: block; margin-top: 4px; color: #3755a4; font-size: 12px; font-style: normal; font-weight: 800; }
.data-coverage-workflow .data-coverage-worklist__receipts { margin-top: 22px; padding: 18px; border: 1px solid #dce7e1; border-radius: 16px; background: #f8fcfa; }
.data-coverage-workflow .data-coverage-worklist__receipts h3 { margin: 0; font-size: 17px; }
.data-coverage-workflow .data-coverage-worklist__receipts p { margin: 5px 0 12px; color: #586a64; font-size: 13px; }
.data-coverage-workflow .data-coverage-worklist__receipts article { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 8px; padding: 10px 0; border-top: 1px solid #dce7e1; font-size: 13px; }
.data-coverage-workflow .data-coverage-worklist__receipts article strong { font-size: 15px; white-space: nowrap; }
.data-coverage-batch-dialog [data-coverage-payment-field][hidden] { display: none !important; }
.data-coverage-batch-dialog #coverageWorkBatchSummary { margin: 14px 20px; font-size: 14px; color: #40506b; }
@media (max-width: 1080px) {
  .data-coverage-workflow .data-coverage-worklist__filters { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .data-coverage-workflow .data-coverage-worklist__filters button[type="submit"] { grid-column: 1/-1; }
}
@media (max-width: 640px) {
  .data-coverage-workflow .data-coverage-worklist { padding: 16px; }
  .data-coverage-workflow .data-coverage-worklist__stages { grid-template-columns: 1fr; }
  .data-coverage-workflow .data-coverage-worklist__filters { grid-template-columns: 1fr; }
  .data-coverage-workflow .data-coverage-worklist__filters button[type="submit"] { grid-column: auto; }
  .data-coverage-workflow .data-coverage-worklist__toolbar { align-items: stretch; flex-direction: column; }
  .data-coverage-workflow .data-coverage-worklist__toolbar span { margin: 0; }
  .data-coverage-workflow .data-coverage-worklist__item { grid-template-columns: auto minmax(0,1fr); }
  .data-coverage-workflow .data-coverage-worklist__item > div:last-child { grid-column: 2; }
}

/* T12: débitos y rechazos por atención en Coberturas. Acotado a la lista de trabajo y a sus diálogos. */
.data-coverage-workflow .data-coverage-worklist__stages { grid-template-columns: repeat(4,minmax(0,1fr)); }
.data-coverage-workflow .data-coverage-worklist__filters { grid-template-columns: minmax(0,.85fr) minmax(0,.85fr) minmax(0,1.35fr) minmax(0,1.1fr) auto; }
.data-coverage-workflow .data-coverage-worklist__stages article.is-issue { border-color: #f1d2da; background: #fff5f7; }
.data-coverage-workflow .data-coverage-worklist__stages article.is-issue strong { color: #a3304b; }
.data-coverage-workflow .data-coverage-worklist__stages article:last-child { background: #ebf9f3; }
.data-coverage-workflow .data-coverage-worklist__open-issues { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 14px; margin: 16px 0 0; padding: 11px 14px; border: 1px solid #f1d2da; border-radius: 12px; background: #fff7f9; color: #6d3443; font-size: 13px; }
.data-coverage-workflow .data-coverage-worklist__open-issues[hidden] { display: none; }
.data-coverage-workflow .data-coverage-worklist__open-issues button { min-height: 36px; padding: 6px 12px; border: 1px solid #e3b5c1; border-radius: 10px; background: white; color: #8c2a43; font-size: 13px; font-weight: 800; cursor: pointer; }
.data-coverage-workflow .data-coverage-worklist__order { display: flex; flex-wrap: wrap; align-items: end; justify-content: flex-end; gap: 10px; margin-top: 16px; }
.data-coverage-workflow .data-coverage-worklist__order label,
.data-coverage-workflow .data-coverage-worklist__summary-controls label { display: grid; gap: 6px; color: #45546d; font-size: 13px; font-weight: 700; }
.data-coverage-workflow .data-coverage-worklist__order select,
.data-coverage-workflow .data-coverage-worklist__summary-controls select { min-width: 190px; min-height: 40px; padding: 7px 10px; border: 1px solid #cbd6e8; border-radius: 11px; background: white; color: #273354; font: inherit; font-size: 13px; }
.data-coverage-workflow .data-coverage-sort-direction { display: inline-flex; align-items: center; gap: 7px; min-height: 40px; padding: 7px 12px; border: 1px solid #cbd6e8; border-radius: 11px; background: white; color: #35428a; font-size: 13px; font-weight: 800; cursor: pointer; }
.data-coverage-workflow .data-coverage-sort-direction svg { width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 2.2; stroke-linecap: round; stroke-linejoin: round; }
.data-coverage-workflow .data-coverage-sort-direction:focus-visible { outline: 3px solid rgba(81,75,200,.24); outline-offset: 2px; }
.data-coverage-workflow .data-coverage-worklist__toolbar button.is-resolve { border: 1px solid #c9c2f2; background: #f6f4ff; color: #4a3fb0; }
.data-coverage-workflow .data-coverage-worklist__toolbar #coverageWorkWriteOff { border-color: #d6dbe5; background: #f7f8fb; color: #4b566c; }
.data-coverage-workflow .data-coverage-worklist__toolbar button.is-resolve:disabled { border-color: #d4d9e8; background: #f0f2f7; color: #65718a; }
.data-coverage-workflow .data-coverage-worklist__toolbar button[hidden] { display: none; }
.data-coverage-workflow .data-coverage-worklist__item[data-state="ISSUE"] { border-left: 4px solid #d1435b; }
.data-coverage-workflow .data-coverage-worklist__item[data-state="ISSUE"] em { color: #a3304b; }
.data-coverage-workflow .data-coverage-worklist__item[data-state="ISSUE"] b { color: #a3304b; }
.data-coverage-workflow .data-coverage-worklist__item[data-state="PAID"] em { color: #0b7a54; }
.data-coverage-workflow .data-coverage-worklist__item[data-state="WRITTEN_OFF"] { background: #f8f9fb; }
.data-coverage-workflow .data-coverage-worklist__item[data-state="WRITTEN_OFF"] em,
.data-coverage-workflow .data-coverage-worklist__item[data-state="WRITTEN_OFF"] b { color: #626c80; }
.data-coverage-workflow .data-coverage-worklist__item[data-archived="true"] strong { color: #4b566c; }
.data-coverage-workflow .data-coverage-worklist__summary { margin-top: 22px; padding: 18px; border: 1px solid #dfe3f2; border-radius: 16px; background: #fafbff; }
.data-coverage-workflow .data-coverage-worklist__summary > header { display: flex; flex-wrap: wrap; align-items: flex-end; justify-content: space-between; gap: 12px 18px; margin-bottom: 14px; }
.data-coverage-workflow .data-coverage-worklist__summary > header h3 { margin: 0; font-size: 17px; }
.data-coverage-workflow .data-coverage-worklist__summary > header p { max-width: 560px; margin: 5px 0 0; color: #586881; font-size: 13px; line-height: 1.45; }
.data-coverage-workflow .data-coverage-worklist__summary-controls { display: flex; flex-wrap: wrap; align-items: end; gap: 10px; }
.data-coverage-workflow .data-coverage-worklist__summary-rows { display: grid; gap: 10px; }
.data-coverage-workflow .data-coverage-summary-row { display: grid; gap: 10px; padding: 14px 16px; border: 1px solid #dfe5f1; border-radius: 14px; background: white; }
.data-coverage-workflow .data-coverage-summary-row > header { display: flex; flex-wrap: wrap; align-items: baseline; justify-content: space-between; gap: 6px 12px; }
.data-coverage-workflow .data-coverage-summary-row > header strong { color: #26334b; font-size: 15px; overflow-wrap: anywhere; }
.data-coverage-workflow .data-coverage-summary-row > header span { color: #59687e; font-size: 13px; }
.data-coverage-workflow .data-coverage-summary-row__bar { display: flex; height: 10px; overflow: hidden; border-radius: 999px; background: #eef1f7; }
.data-coverage-workflow .data-coverage-summary-row__bar[hidden] { display: none; }
.data-coverage-workflow .data-coverage-summary-row__bar i { display: block; height: 100%; }
.data-coverage-workflow .data-coverage-summary-row__bar i[data-part="collected"] { background: #11a072; }
.data-coverage-workflow .data-coverage-summary-row__bar i[data-part="debited"] { background: #7b5fd8; }
.data-coverage-workflow .data-coverage-summary-row__bar i[data-part="rejected"] { background: #d1435b; }
.data-coverage-workflow .data-coverage-summary-row dl { display: grid; grid-template-columns: repeat(5,minmax(0,1fr)); gap: 10px 14px; margin: 0; }
.data-coverage-workflow .data-coverage-summary-row dl div { min-width: 0; }
.data-coverage-workflow .data-coverage-summary-row dt { color: #5d6880; font-size: 12px; font-weight: 800; }
.data-coverage-workflow .data-coverage-summary-row dd { margin: 3px 0 0; color: #26334b; font-size: 15px; font-weight: 800; overflow-wrap: anywhere; }
.data-coverage-workflow .data-coverage-summary-row dd small { display: block; margin-top: 2px; color: #69768c; font-size: 12px; font-weight: 700; }
.data-coverage-workflow .data-coverage-summary-row dl div:nth-child(3) dd { color: #8f2e47; }
.data-coverage-workflow .data-coverage-summary-row > p { margin: 0; color: #586881; font-size: 13px; }
.data-coverage-batch-dialog .data-coverage-batch-lines { margin: 0 22px 16px; border: 1px solid #e1e6f0; border-radius: 14px; background: white; }
.data-coverage-batch-dialog .data-coverage-batch-lines[hidden] { display: none; }
.data-coverage-batch-dialog .data-coverage-batch-lines > header { display: grid; gap: 10px; padding: 14px 16px; border-bottom: 1px solid #e6eaf2; }
.data-coverage-batch-dialog .data-coverage-batch-lines > header h3 { margin: 0; color: #26334b; font-size: 16px; }
.data-coverage-batch-dialog .data-coverage-batch-lines > header p { margin: 4px 0 0; color: #586881; font-size: 13px; }
.data-coverage-batch-dialog .data-coverage-batch-lines__tools { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; }
.data-coverage-batch-dialog .data-coverage-batch-lines__tools input[type="search"] { flex: 1 1 220px; min-width: 0; min-height: 40px; padding: 7px 10px; border: 1px solid #d3dbe9; border-radius: 10px; color: #263149; font: inherit; font-size: 14px; }
.data-coverage-batch-dialog .data-coverage-batch-lines__only { display: inline-flex; align-items: center; gap: 7px; color: #45546d; font-size: 13px; font-weight: 700; }
.data-coverage-batch-dialog .data-coverage-batch-lines__tools button { min-height: 40px; padding: 7px 12px; border: 1px solid #d3dbe9; border-radius: 10px; background: #f7f8fb; color: #3a4660; font-size: 13px; font-weight: 800; cursor: pointer; }
.data-coverage-batch-dialog .data-coverage-batch-lines__list { max-height: min(46vh,520px); overflow-y: auto; }
.data-coverage-batch-dialog .data-coverage-batch-line { display: grid; grid-template-columns: minmax(0,1fr) auto auto minmax(130px,160px); grid-template-areas: "identity claim outcome received" "reason reason reason reason"; align-items: center; gap: 10px 14px; padding: 12px 16px; border-top: 1px solid #eef1f6; }
.data-coverage-batch-dialog .data-coverage-batch-line:first-child { border-top: 0; }
.data-coverage-batch-dialog .data-coverage-batch-line[hidden] { display: none; }
.data-coverage-batch-dialog .data-coverage-batch-line[data-outcome="PARTIAL"] { background: #faf8ff; }
.data-coverage-batch-dialog .data-coverage-batch-line[data-outcome="REJECTED"] { background: #fff7f8; }
.data-coverage-batch-dialog .data-coverage-batch-line__identity { grid-area: identity; display: grid; gap: 2px; min-width: 0; }
.data-coverage-batch-dialog .data-coverage-batch-line__identity strong { color: #26334b; font-size: 14px; overflow-wrap: anywhere; }
.data-coverage-batch-dialog .data-coverage-batch-line__identity span { color: #59687e; font-size: 13px; overflow-wrap: anywhere; }
.data-coverage-batch-dialog .data-coverage-batch-line__claim { grid-area: claim; margin: 0; text-align: right; }
.data-coverage-batch-dialog .data-coverage-batch-line__claim small { display: block; color: #69768c; font-size: 12px; }
.data-coverage-batch-dialog .data-coverage-batch-line__claim b { color: #26334b; font-size: 15px; white-space: nowrap; }
.data-coverage-batch-dialog .data-coverage-outcome { grid-area: outcome; display: inline-flex; gap: 3px; padding: 3px; border-radius: 11px; background: #f0f2f8; }
.data-coverage-batch-dialog .data-coverage-outcome label { position: relative; display: flex; }
.data-coverage-batch-dialog .data-coverage-outcome input { position: absolute; inset: 0; width: 100%; height: 100%; margin: 0; opacity: 0; cursor: pointer; }
.data-coverage-batch-dialog .data-coverage-outcome span { display: inline-flex; align-items: center; min-height: 36px; padding: 6px 11px; border-radius: 9px; color: #4b566c; font-size: 13px; font-weight: 800; white-space: nowrap; }
.data-coverage-batch-dialog .data-coverage-outcome input:checked + span { background: white; box-shadow: 0 2px 6px rgba(35,46,80,.12); }
.data-coverage-batch-dialog .data-coverage-outcome input[value="PAID"]:checked + span { color: #0b7a54; }
.data-coverage-batch-dialog .data-coverage-outcome input[value="PARTIAL"]:checked + span { color: #5b43c4; }
.data-coverage-batch-dialog .data-coverage-outcome input[value="REJECTED"]:checked + span { color: #a3304b; }
.data-coverage-batch-dialog .data-coverage-outcome input:focus-visible + span { outline: 3px solid rgba(81,75,200,.3); outline-offset: 1px; }
.data-coverage-batch-dialog .data-coverage-batch-line__received { grid-area: received; display: grid; gap: 4px; }
.data-coverage-batch-dialog .data-coverage-batch-line__received span,
.data-coverage-batch-dialog .data-coverage-batch-line__reason label span { color: #626d82; font-size: 12px; font-weight: 800; }
.data-coverage-batch-dialog .data-coverage-batch-line input[name="received"],
.data-coverage-batch-dialog .data-coverage-batch-line__reason select,
.data-coverage-batch-dialog .data-coverage-batch-line__reason input { width: 100%; min-width: 0; min-height: 40px; padding: 7px 10px; border: 1px solid #d3dbe9; border-radius: 10px; background: white; color: #263149; font: inherit; font-size: 14px; }
.data-coverage-batch-dialog .data-coverage-batch-line input[name="received"] { text-align: right; }
.data-coverage-batch-dialog .data-coverage-batch-line input[name="received"]:disabled { background: #f3f4f7; color: #6b7487; }
.data-coverage-batch-dialog .data-coverage-batch-line__reason { grid-area: reason; display: grid; grid-template-columns: minmax(0,1.45fr) minmax(0,1fr) auto; align-items: end; gap: 10px 14px; }
.data-coverage-batch-dialog .data-coverage-batch-line[data-outcome="PAID"] .data-coverage-batch-line__reason { display: none; }
.data-coverage-batch-dialog .data-coverage-batch-line__reason label { display: grid; gap: 4px; min-width: 0; }
.data-coverage-batch-dialog .data-coverage-batch-line__loss { margin: 0; padding-bottom: 10px; color: #8f2e47; font-size: 13px; font-weight: 800; white-space: nowrap; }
.data-coverage-batch-dialog .data-coverage-batch-lines__totals { display: grid; gap: 8px; padding: 12px 16px 14px; border-top: 1px solid #e6eaf2; background: #fafbfe; border-radius: 0 0 14px 14px; }
.data-coverage-batch-dialog .data-coverage-batch-lines__totals dl { display: flex; flex-wrap: wrap; gap: 8px 24px; margin: 0; }
.data-coverage-batch-dialog .data-coverage-batch-lines__totals dt { color: #5d6880; font-size: 12px; font-weight: 800; }
.data-coverage-batch-dialog .data-coverage-batch-lines__totals dd { margin: 2px 0 0; color: #26334b; font-size: 15px; font-weight: 850; white-space: nowrap; }
.data-coverage-batch-dialog #coverageWorkBatchBalance { display: flex; align-items: center; gap: 8px; margin: 0; color: #3f3a9e; font-size: 13px; font-weight: 800; }
.data-coverage-batch-dialog #coverageWorkBatchBalance[data-state="balanced"] { color: #0b7a54; }
.data-coverage-batch-dialog #coverageWorkBatchBalance[data-state="balanced"]::before { content: ""; flex: none; width: 6px; height: 11px; margin: 0 4px 3px 3px; border: solid currentColor; border-width: 0 2.5px 2.5px 0; transform: rotate(45deg); }
.data-coverage-batch-dialog form > footer button[type="submit"]:disabled { border-color: #d4d9e8; background: #d4d9e8; color: #5d6880; cursor: not-allowed; }
.data-coverage-resolve-dialog #coverageWorkResolveSummary { margin: 14px 22px 6px; color: #40506b; font-size: 14px; }
.data-coverage-resolve-dialog .data-coverage-resolve-items { display: grid; gap: 4px; margin: 0 22px 4px; padding-left: 18px; color: #4b566c; font-size: 13px; }
.data-coverage-resolve-dialog .coverage-form-grid textarea { font-size: 14px; }
@media (max-width: 1080px) {
  .data-coverage-workflow .data-coverage-worklist__stages { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .data-coverage-workflow .data-coverage-worklist__filters { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .data-coverage-workflow .data-coverage-summary-row dl { grid-template-columns: repeat(3,minmax(0,1fr)); }
}
@media (max-width: 960px) {
  .data-coverage-batch-dialog .data-coverage-batch-line { grid-template-columns: minmax(0,1fr) minmax(130px,auto); grid-template-areas: "identity claim" "outcome received" "reason reason"; }
  .data-coverage-batch-dialog .data-coverage-batch-line__reason { grid-template-columns: minmax(0,1fr) auto; }
  .data-coverage-batch-dialog .data-coverage-batch-line__reason label:first-child { grid-column: 1/-1; }
}
@media (max-width: 640px) {
  .data-coverage-workflow .data-coverage-worklist__stages { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px; }
  .data-coverage-workflow .data-coverage-worklist__stages article { padding: 14px; }
  .data-coverage-workflow .data-coverage-worklist__stages strong { font-size: 26px; }
  .data-coverage-workflow .data-coverage-worklist__filters { grid-template-columns: 1fr; }
  .data-coverage-workflow .data-coverage-worklist__order { justify-content: stretch; }
  .data-coverage-workflow .data-coverage-worklist__order label { flex: 1 1 180px; }
  .data-coverage-workflow .data-coverage-worklist__order select,
  .data-coverage-workflow .data-coverage-worklist__summary-controls select { min-width: 0; width: 100%; }
  .data-coverage-workflow .data-coverage-worklist__summary-controls { width: 100%; }
  .data-coverage-workflow .data-coverage-worklist__summary-controls label { flex: 1 1 100%; }
  .data-coverage-workflow .data-coverage-summary-row dl { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .data-coverage-batch-dialog .data-coverage-batch-lines { margin: 0 14px 14px; }
  .data-coverage-batch-dialog .data-coverage-batch-lines__list { max-height: none; overflow: visible; }
  .data-coverage-batch-dialog .data-coverage-batch-line { grid-template-columns: minmax(0,1fr); grid-template-areas: "identity" "claim" "outcome" "received" "reason"; padding: 12px; }
  .data-coverage-batch-dialog .data-coverage-batch-line__claim { text-align: left; }
  .data-coverage-batch-dialog .data-coverage-outcome { display: flex; }
  .data-coverage-batch-dialog .data-coverage-outcome label { flex: 1 1 0; }
  .data-coverage-batch-dialog .data-coverage-outcome span { justify-content: center; width: 100%; padding: 6px 4px; }
  .data-coverage-batch-dialog .data-coverage-batch-line__reason { grid-template-columns: minmax(0,1fr); }
}
/* Fin T12 Coberturas */

#dataExpenses .data-expense-actions { display: flex; align-items: center; justify-content: flex-end; gap: 12px; padding: 0 0 12px; }
#dataExpenses .data-expense-row.is-voided .data-expense-amount,#dataExpenses .data-expense-row.is-voided .data-expense-identity strong { color: #8a93a6; text-decoration: line-through; }
#dataExpenses .data-expense-actions .data-void-note { flex: 1; }
#dataView .data-void-note { margin: 0; padding: 10px 13px; border-radius: 11px; color: #5d4a7a; background: #f1ebf8; font-size: 13px; font-weight: 700; line-height: 1.45; overflow-wrap: anywhere; }
#dataView .data-void-button { min-height: 38px; padding: 7px 14px; border: 1px solid #e3c4cb; border-radius: 10px; color: #9a3b4b; background: #fff; font-size: 13px; font-weight: 850; cursor: pointer; }
#dataView .data-void-button:hover { background: #fdf3f5; }
#dataView .data-void-button:focus-visible { outline: 3px solid rgba(154,59,75,.3); outline-offset: 2px; }
.payables-workflow .data-legacy-payment-row.is-voided .data-legacy-payment-main > p > b,.payables-workflow .data-legacy-payment-row.is-voided .data-legacy-payment-main strong { color: #8a93a6; text-decoration: line-through; }
.payables-workflow .data-legacy-payment-main .data-void-button { margin-top: 12px; }
.payables-workflow .data-legacy-payment-main .data-void-note { margin-top: 12px; }
.payables-workflow .data-legacy-payment-row.is-pending .data-legacy-payment-main > div span:last-child { color: #3d4aa8; background: #eceffd; }
.payables-workflow .data-legacy-payment-row.is-voided .data-legacy-payment-main > div span:last-child { color: #6b7385; background: #eef0f4; }
.payables-workflow .data-legacy-payment-main > button[data-payables-action] { min-height: 38px; margin-top: 12px; padding: 7px 14px; border: 1px solid #4d46c6; border-radius: 10px; color: #fff; background: #4d46c6; font-size: 13px; font-weight: 850; cursor: pointer; }
.payables-workflow .data-legacy-payment-main > button[data-payables-action]:disabled { opacity: .55; cursor: wait; }
.payables-workflow .data-legacy-payment-main > button[data-payables-action]:focus-visible { outline: 3px solid rgba(77,70,198,.3); outline-offset: 2px; }
#dataVoidDialog textarea { width: 100%; resize: vertical; border: 1px solid #d7dce8; border-radius: 11px; padding: 11px 13px; font: inherit; font-size: 14px; }

#dataCollections .data-collection-actions { display: flex; align-items: center; justify-content: flex-end; gap: 12px; padding: 0 0 12px; }
#dataCollections .data-collection-actions .data-void-note { flex: 1; }
#dataCollections .data-collection-row.is-voided .data-collection-amount strong,#dataCollections .data-collection-row.is-voided .data-collection-identity > strong { color: #8a93a6; text-decoration: line-through; }

/* Tipografía mínima legible en Datos: estados vacíos y etiqueta del gráfico de coberturas (T4). */
#dataView .data-inline-empty,#dataView .data-empty { font-size: 13px; }
#dataView .data-donut small { font-size: 12px; }

/* Hojas imprimibles de Cobros, Gastos y Deudores. Todo cuelga de .data-print-sheet o de body.data-printing-sheet. */
/* Los botones Imprimir y Exportar viven sólo en la franja de cada sección (data-identity.css). */
.data-print-sheet { display: none; }
@media print {
  body.data-printing-sheet { background: #fff !important; }
  body.data-printing-sheet #appShell > :not(.legacy-main),
  body.data-printing-sheet .legacy-main > :not(#dataView),
  body.data-printing-sheet #dataView > :not(.data-print-sheet) { display: none !important; }
  body.data-printing-sheet .legacy-main { max-width: none; padding: 0; margin: 0; }
  body.data-printing-sheet #dataView { display: block !important; padding: 0; background: #fff; }
  body.data-printing-sheet .data-print-sheet { display: block; color: #1b2438; background: #fff; font-size: 13px; line-height: 1.4; }
  .data-print-sheet .data-print-head { margin-bottom: 14px; padding-bottom: 12px; border-bottom: 2px solid #1b2438; }
  .data-print-sheet .data-print-office { margin: 0 0 2px; font-size: 15px; font-weight: 700; letter-spacing: .02em; }
  .data-print-sheet h1 { margin: 0 0 8px; font-size: 26px; line-height: 1.15; }
  .data-print-sheet .data-print-facts { display: grid; gap: 3px; margin: 0; }
  .data-print-sheet .data-print-facts > div { display: grid; grid-template-columns: 96px minmax(0,1fr); gap: 10px; }
  .data-print-sheet .data-print-facts dt { color: #4c5670; font-weight: 600; }
  .data-print-sheet .data-print-facts dd { margin: 0; }
  .data-print-sheet .data-print-warning { margin: 10px 0 0; padding: 8px 10px; border: 1.5px solid #1b2438; font-weight: 700; }
  .data-print-sheet .data-print-table { width: 100%; border-collapse: collapse; font-size: 13px; }
  .data-print-sheet .data-print-table thead { display: table-header-group; }
  .data-print-sheet .data-print-table th { padding: 6px 8px; border-bottom: 1.5px solid #1b2438; color: #1b2438; background: none; font-size: 13px; letter-spacing: 0; text-align: left; text-transform: none; }
  .data-print-sheet .data-print-table td { padding: 7px 8px; border-bottom: 1px solid #c9cfdc; color: #1b2438; background: none; font-size: 13px; overflow-wrap: break-word; vertical-align: top; white-space: normal; }
  .data-print-sheet .data-print-table tr { break-inside: avoid; page-break-inside: avoid; }
  .data-print-sheet .data-print-table th.is-amount,
  .data-print-sheet .data-print-table td.data-print-amount { text-align: right; }
  .data-print-sheet .data-print-table td b { display: block; color: inherit; font-size: 13px; font-weight: 700; }
  .data-print-sheet .data-print-table td span,
  .data-print-sheet .data-print-table td small { display: block; color: #4c5670; font-size: 13px; }
  .data-print-sheet .data-print-table td.data-print-when,
  .data-print-sheet .data-print-table td.data-print-amount,
  .data-print-sheet .data-print-table td.data-print-contact b,
  .data-print-sheet .data-print-table td.data-print-contact span { white-space: nowrap; }
  .data-print-sheet .data-print-table .is-struck { text-decoration: line-through; }
  .data-print-sheet .data-print-table .data-print-void { margin-top: 3px; color: #1b2438; font-style: italic; }
  .data-print-sheet .data-print-totals { margin-top: 14px; padding-top: 10px; border-top: 2px solid #1b2438; break-inside: avoid; }
  .data-print-sheet .data-print-totals p { display: flex; justify-content: space-between; gap: 16px; margin: 0 0 3px; }
  .data-print-sheet .data-print-totals p b { color: inherit; font-size: inherit; white-space: nowrap; }
  .data-print-sheet .data-print-totals p.is-main { font-size: 16px; }
  .data-print-sheet .data-print-totals small { display: block; margin-top: 6px; color: #4c5670; font-size: 13px; }
  .data-print-sheet .data-print-foot { margin-top: 18px; color: #4c5670; font-size: 13px; }
}

/* Mes a mes (T6): tres gráficos mensuales dentro del Resumen. Todo acotado a #dataMonthly. */
#dataMonthly { --monthly-collected:#1f9d70; --monthly-expenses:#e0614f; --monthly-payments:#554fd3; display: grid; gap: 12px; padding: 4px 24px 8px; }
#dataMonthly[hidden] { display: none; }
#dataMonthly .data-monthly-panel { display: grid; grid-template-columns: minmax(190px,240px) minmax(0,1fr); gap: 20px; align-items: stretch; padding: 16px 18px; border-radius: 18px; background: #f6f7fc; border-left: 5px solid var(--monthly-tone); }
#dataMonthly .data-monthly-panel.is-collected { --monthly-tone: var(--monthly-collected); }
#dataMonthly .data-monthly-panel.is-expenses { --monthly-tone: var(--monthly-expenses); }
#dataMonthly .data-monthly-panel.is-payments { --monthly-tone: var(--monthly-payments); }
#dataMonthly .data-monthly-info { display: flex; flex-direction: column; gap: 4px; min-width: 0; }
#dataMonthly .data-monthly-info h3 { margin: 0; font-size: 16px; color: var(--monthly-tone); }
#dataMonthly .data-monthly-info strong { font-size: 22px; line-height: 1.15; color: #18233f; white-space: nowrap; }
#dataMonthly .data-monthly-info small { font-size: 12px; color: #5d6780; }
#dataMonthly .data-monthly-readout { margin: auto 0 0; padding-top: 8px; font-size: 13px; line-height: 1.35; color: #29334d; }
#dataMonthly .data-monthly-bars { display: grid; grid-template-columns: repeat(var(--months),minmax(0,1fr)); gap: 6px; height: 140px; margin: 0; padding: 0; list-style: none; }
#dataMonthly .data-monthly-bars li { min-width: 0; }
#dataMonthly .data-monthly-bar { display: flex; flex-direction: column; justify-content: flex-end; align-items: center; width: 100%; height: 100%; padding: 0; border: 0; background: transparent; cursor: pointer; font: inherit; color: #5d6780; }
#dataMonthly .data-monthly-bar i { display: block; width: 100%; max-width: 34px; min-height: 0; border-radius: 7px 7px 2px 2px; background: var(--monthly-tone); opacity: .72; transition: opacity .15s ease, transform .15s ease; }
#dataMonthly .data-monthly-bar.is-best i { opacity: 1; }
#dataMonthly .data-monthly-bar:hover i, #dataMonthly .data-monthly-bar:focus-visible i { opacity: 1; transform: translateY(-2px); }
#dataMonthly .data-monthly-bar:focus-visible { outline: 2px solid var(--monthly-tone); outline-offset: 2px; border-radius: 8px; }
#dataMonthly .data-monthly-bar.is-empty::before { content: ""; display: block; width: 100%; max-width: 34px; height: 0; margin-bottom: 0; border-top: 2px dashed #b7bfd3; }
#dataMonthly .data-monthly-bar span { display: block; min-height: 16px; margin-top: 6px; font-size: 12px; line-height: 1.2; text-align: center; white-space: nowrap; }
#dataMonthly .data-monthly-bars.has-years .data-monthly-bar span { min-height: 32px; }
#dataMonthly .data-monthly-bar span b { display: block; font-size: 12px; font-weight: 700; }
@media (max-width: 760px) {
  #dataMonthly { padding: 4px 14px 8px; }
  #dataMonthly .data-monthly-panel { grid-template-columns: minmax(0,1fr); gap: 12px; }
  #dataMonthly .data-monthly-bars { gap: 4px; }
}

/* Censo del consultorio en el Resumen: todo el CSS queda bajo #dataCensus. */
#dataCensus { --census-ink: #273249; --census-muted: #5f6b80; --census-women: #5a54cf; --census-men: #4f78cf; --census-unknown: #a9b2c3; --census-teal: #2daf80; margin-top: 14px; padding: 22px; border-radius: 21px; background: #fff; box-shadow: 0 11px 30px rgba(43,52,91,.08); }
#dataCensus > header { display: flex; align-items: flex-start; justify-content: space-between; gap: 18px; margin-bottom: 20px; }
#dataCensus > header p { margin: 0 0 4px; color: #5a55cb; font-size: 12px; font-weight: 900; letter-spacing: .1em; }
#dataCensus > header h3 { margin: 0; color: var(--census-ink); font-size: 21px; letter-spacing: -.025em; }
#dataCensus > header > div > span { display: block; margin-top: 4px; color: var(--census-muted); font-size: 13px; }
#dataCensus .data-census-total { text-align: right; flex: 0 0 auto; }
#dataCensus .data-census-total strong { display: block; color: #4c46c5; font-size: 44px; line-height: 1; letter-spacing: -.05em; }
#dataCensus .data-census-total span { display: block; margin-top: 4px; color: var(--census-muted); font-size: 13px; }
#dataCensus .data-census-status { margin: 0; padding: 14px 16px; border-radius: 12px; color: #3b4660; background: #eef0fb; font-size: 14px; }
#dataCensus .data-census-body { display: grid; grid-template-columns: minmax(250px,.9fr) minmax(0,1.1fr); grid-template-rows: auto 1fr; gap: 18px 24px; }
#dataCensus .data-census-body[hidden], #dataCensus .data-census-status[hidden], #dataCensus .data-census-coverages[hidden], #dataCensus .data-census-birthdays p[hidden] { display: none; }
#dataCensus h4 { margin: 0; color: var(--census-ink); font-size: 15px; }
#dataCensus .data-census-birthdays { grid-row: 1 / span 2; align-self: start; padding: 18px; border-radius: 17px; background: linear-gradient(160deg,#f1f0ff,#e6f6f0); }
#dataCensus .data-census-birthdays > header { display: flex; align-items: center; gap: 12px; margin-bottom: 14px; }
#dataCensus .data-census-birthdays > header > span { display: grid; width: 40px; height: 40px; place-items: center; flex: 0 0 auto; border-radius: 12px; color: #fff; background: linear-gradient(135deg,#5a54cf,#8380e3); }
#dataCensus .data-census-birthdays > header .app-icon { width: 20px; height: 20px; }
#dataCensus .data-census-birthdays small { display: block; margin-top: 2px; color: var(--census-muted); font-size: 12px; }
#dataCensus .data-census-birthdays ul { display: grid; gap: 8px; margin: 0; padding: 0; list-style: none; }
#dataCensus .data-census-birthdays li { display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 10px 12px; border-radius: 12px; background: rgba(255,255,255,.82); }
#dataCensus .data-census-birthdays li strong { min-width: 0; color: var(--census-ink); font-size: 14px; line-height: 1.25; overflow-wrap: anywhere; }
#dataCensus .data-census-birthdays li span { flex: 0 0 auto; padding: 4px 9px; border-radius: 99px; color: #4c46c5; background: #e9e8ff; font-size: 12px; font-weight: 800; }
#dataCensus .data-census-birthdays li.is-more { justify-content: center; color: var(--census-muted); background: transparent; font-size: 13px; }
#dataCensus .data-census-birthdays > p { margin: 0; padding: 14px 12px; border-radius: 12px; color: var(--census-muted); background: rgba(255,255,255,.7); font-size: 14px; line-height: 1.4; }
#dataCensus .data-census-sex h4, #dataCensus .data-census-coverages h4 { margin-bottom: 12px; }
#dataCensus .data-census-sexbar { display: flex; height: 18px; overflow: hidden; border-radius: 99px; background: #eff1f5; }
#dataCensus .data-census-sexbar i { display: block; width: var(--w); height: 100%; }
#dataCensus .data-census-sexbar .is-women { background: var(--census-women); }
#dataCensus .data-census-sexbar .is-men { background: var(--census-men); }
#dataCensus .data-census-sexbar .is-unknown { background: var(--census-unknown); }
#dataCensus .data-census-sex dl { display: flex; flex-wrap: wrap; gap: 8px 22px; margin: 12px 0 0; }
#dataCensus .data-census-sex dl > div { display: flex; flex-wrap: wrap; align-items: baseline; gap: 4px 8px; }
#dataCensus .data-census-sex dt { display: inline-flex; align-items: center; gap: 7px; color: var(--census-muted); font-size: 13px; }
#dataCensus .data-census-sex dt i { width: 10px; height: 10px; border-radius: 50%; background: var(--census-unknown); }
#dataCensus .data-census-sex .is-women dt i { background: var(--census-women); }
#dataCensus .data-census-sex .is-men dt i { background: var(--census-men); }
#dataCensus .data-census-sex dd { margin: 0; color: var(--census-muted); font-size: 13px; }
#dataCensus .data-census-sex dd b { color: var(--census-ink); font-size: 15px; }
#dataCensus .data-census-coverages > div { display: grid; gap: 12px; }
#dataCensus .data-census-coverages article > p { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; margin: 0 0 6px; font-size: 13px; }
#dataCensus .data-census-coverages article > p > span { min-width: 0; color: var(--census-ink); font-weight: 700; overflow-wrap: anywhere; }
#dataCensus .data-census-coverages article > p > b { flex: 0 0 auto; color: var(--census-ink); }
#dataCensus .data-census-coverages article > p > span em { display: inline-block; margin-left: 8px; padding: 2px 8px; border-radius: 99px; color: #4a5470; background: #eceef4; font-size: 12px; font-style: normal; font-weight: 700; }
#dataCensus .data-census-coverages article > i { display: block; height: 8px; overflow: hidden; border-radius: 99px; background: #edf0f5; }
#dataCensus .data-census-coverages article > i b { display: block; width: var(--w); height: 100%; border-radius: inherit; background: linear-gradient(90deg,#5a54cf,#8380e3); }
#dataCensus .data-census-coverages article.is-particular > i b { background: linear-gradient(90deg,#31a982,#6ac6a9); }
#dataCensus .data-census-coverages article.is-inactive > i b { background: linear-gradient(90deg,#8f98ab,#b5bccb); }
#dataCensus .data-census-coverages article.is-idle > p > b { color: var(--census-muted); font-weight: 600; }
#dataCensus .data-census-coverages article.is-idle > p > span { color: var(--census-muted); }
@media (max-width: 900px) {
  #dataCensus .data-census-body { grid-template-columns: minmax(0,1fr); }
  #dataCensus .data-census-birthdays { grid-row: auto; }
}
@media (max-width: 560px) {
  #dataCensus { padding: 18px; }
  #dataCensus > header { flex-direction: column; }
  #dataCensus .data-census-total { text-align: left; }
}
