:root{font-family:Segoe UI,Arial,sans-serif;color:#17324d;background:#f7f9fc}*{box-sizing:border-box}body{margin:0;background:#f7f9fc}.top{background:#0f4c81;color:#fff;padding:11px 18px;display:flex;gap:15px;align-items:center;position:sticky;top:0;z-index:20;box-shadow:0 2px 8px #0002}.top a,.top .menu>span{color:#fff;text-decoration:none;cursor:pointer;white-space:nowrap}.top .spacer{flex:1}.menu{position:relative}.dropdown{display:none;position:absolute;top:22px;left:0;background:#fff;border:1px solid #ccd9e5;border-radius:7px;min-width:160px;box-shadow:0 6px 18px #0003;padding:6px}.dropdown a{display:block;color:#17324d;padding:7px 9px}.dropdown a:hover{background:#eaf3fb}.menu:hover .dropdown{display:block}.wrap{max-width:1380px;margin:16px auto;padding:0 16px}.card{background:#fff;border:1px solid #dbe5ef;border-radius:10px;padding:15px;margin-bottom:13px;box-shadow:0 2px 8px #00000008}.grid4{display:grid;grid-template-columns:repeat(4,1fr);gap:11px}.reportmetrics{grid-template-columns:repeat(7,1fr)}.metric{padding:14px;border-radius:10px;background:#eaf3fb;text-align:center}.metric b{display:block;font-size:27px;margin-top:7px}.btn{display:inline-block;padding:8px 13px;border:0;border-radius:7px;background:#62c7ef;color:#08334d;text-decoration:none;font-weight:600;cursor:pointer}.btn.green{background:#78e7a2}.btn.yellow{background:#ffe04d}.btn.red{background:#ff9b9b}.btn.purple{background:#c0a5ff}.btn.small{font-size:11px;padding:5px 8px}input,select,textarea{padding:7px;border:1px solid #aebdca;border-radius:5px;width:100%;background:#fff}textarea{min-height:62px;resize:vertical}label{font-size:13px;font-weight:600;display:block;margin:5px 0}.row{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:9px}.row2{display:grid;grid-template-columns:1fr 1fr;gap:13px}.tablewrap{overflow:auto;max-height:470px}.tablewrap.mini{max-height:360px}table{width:100%;border-collapse:collapse;font-size:12.5px}th,td{padding:6px 7px;border-bottom:1px solid #e3eaf0;text-align:left;white-space:nowrap;vertical-align:top}th{position:sticky;top:0;background:#eaf3fb;z-index:1}.muted{color:#61778a;font-size:12px}.alert{padding:10px;border-radius:7px;margin-bottom:12px}.alert.error{background:#ffe5e5;color:#8a2020}.alert.ok{background:#e2f8e8;color:#185c2d}.login{max-width:440px;margin:70px auto}.actions,.search{display:flex;gap:8px;flex-wrap:wrap;align-items:end}.search input,.search select{min-width:260px;flex:1}.inline{display:flex;gap:6px;align-items:center}.inline input{width:auto;min-width:130px}.small{font-size:12px}.badge{padding:3px 7px;border-radius:999px;font-size:11px;font-weight:700}.badge.red{background:#ffd7d7;color:#8a2020}.badge.yellow{background:#fff0b5;color:#6e5300}.good{background:#e5f8e9}.bad{background:#ffe2e2}.checks{display:flex;gap:14px;flex-wrap:wrap;margin:12px 0}.checks label{display:flex;gap:5px;align-items:center}.checks input{width:auto}@media(max-width:1050px){.reportmetrics{grid-template-columns:repeat(4,1fr)}}@media(max-width:850px){.grid4,.reportmetrics,.row,.row2{grid-template-columns:1fr}.top{flex-wrap:wrap}.wrap{padding:0 8px}}
.metric-link{display:block;text-decoration:none;color:inherit;border:2px solid transparent;transition:.15s}.metric-link small{display:block;margin-top:8px;font-weight:700;color:#14547e}.metric-link:hover,.metric-link.active{border-color:#62c7ef;transform:translateY(-1px);box-shadow:0 4px 12px #00000012}.dashboard-head{display:flex;gap:12px;align-items:flex-start;justify-content:space-between}.dashboard-head .actions{justify-content:flex-end}.dashboard-head form{margin:0}@media(max-width:850px){.dashboard-head{display:block}.dashboard-head .actions{justify-content:flex-start}}
.report-summary-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:13px}.report-summary-grid .card{margin-bottom:0}.report-summary-grid .tablewrap{max-height:180px}.reportmetrics{display:grid;grid-template-columns:repeat(4,1fr);gap:11px;margin-bottom:13px}@media(max-width:1050px){.report-summary-grid{grid-template-columns:1fr 1fr}.reportmetrics{grid-template-columns:repeat(4,1fr)}}@media(max-width:850px){.report-summary-grid,.reportmetrics{grid-template-columns:1fr}}

/* ========================================================================== */
/* V3.8 - identidad visual y navegación                                      */
/* ========================================================================== */
:root{
  --dos-navy:#0a3161;
  --dos-navy-deep:#071f3a;
  --dos-red:#b31942;
  --dos-blue:#0f4c81;
  --pasmo-red:#c9283e;
  --ink:#17324d;
  --muted:#60778a;
  --line:#d9e4ed;
  --surface:#ffffff;
  --canvas:#f4f7fa;
  --soft-blue:#eaf3fb;
  --soft-red:#fcebed;
  --soft-gold:#fff6dc;
  --soft-green:#eaf7ef;
}
body{background:var(--canvas);color:var(--ink)}
.app-header{position:sticky;top:0;z-index:40;background:#fff;box-shadow:0 2px 12px #071f3a18;border-bottom:1px solid #d7e1e9}
.brand-row{max-width:1440px;margin:0 auto;min-height:66px;padding:7px 20px;display:grid;grid-template-columns:minmax(250px,1fr) auto minmax(235px,1fr);align-items:center;gap:22px;background:#fff}
.brand-system{display:flex;flex-direction:column;text-decoration:none;color:var(--dos-navy);min-width:250px}
.brand-title{font-size:19px;font-weight:800;letter-spacing:.1px}
.brand-subtitle{font-size:11px;color:var(--muted);margin-top:1px;letter-spacing:.2px}
.funding-brand{background:#fff;padding:3px 5px;display:flex;align-items:center;justify-content:flex-end;min-width:235px;justify-self:end}
.funding-brand img{display:block;width:218px;height:auto;max-height:52px;object-fit:contain}
.top{position:static;max-width:none;margin:0;background:var(--dos-navy);padding:0 20px;min-height:43px;display:flex;gap:2px;align-items:stretch;box-shadow:none}
.top>a,.menu-trigger{display:flex;align-items:center;padding:0 14px;min-height:43px;color:#fff;text-decoration:none;font-size:13.5px;font-weight:600;border:0;background:transparent;cursor:pointer;white-space:nowrap;font-family:inherit}
.top>a:hover,.menu:hover>.menu-trigger,.menu-trigger:focus{background:#ffffff18;outline:none}
.menu{position:relative;display:flex;align-items:stretch}
.menu-trigger span{margin-left:7px;font-size:10px;opacity:.8}
.dropdown{top:42px;left:0;min-width:210px;border:1px solid #ccd9e5;border-radius:0 0 9px 9px;box-shadow:0 10px 24px #071f3a2b;padding:7px;background:#fff}
.dropdown-wide{min-width:235px}
.dropdown a{color:var(--ink)!important;padding:9px 11px;border-radius:6px;font-size:13px;font-weight:600}
.dropdown a:hover{background:#eef4f8;color:var(--dos-navy)!important}
.user-link{font-weight:700!important}.logout-link{background:var(--dos-red)!important;margin-left:4px}
.logout-link:hover{background:#921535!important}
.wrap{max-width:1280px;margin:20px auto 36px;padding:0 20px}
.site-footer{max-width:1280px;margin:8px auto 22px;padding:0 20px;color:#728597;font-size:11px;display:flex;gap:8px;align-items:center}.footer-dot{color:var(--dos-red)}
.page-heading{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:15px}.page-heading h2{margin:0 0 4px;font-size:27px;color:var(--dos-navy-deep)}
.eyebrow{margin:0 0 4px;text-transform:uppercase;letter-spacing:1.2px;font-size:10px;font-weight:800;color:var(--dos-red)}
.card{border:1px solid var(--line);border-radius:12px;box-shadow:0 5px 18px #071f3a0d}
.btn{background:#56bce6;color:#082f4a;border-radius:7px;box-shadow:0 1px 2px #0000000d;transition:.12s}
.btn:hover{transform:translateY(-1px);filter:brightness(.98)}.btn.secondary{background:var(--dos-navy);color:#fff}.btn.green{background:#77dda0}.btn.yellow{background:#ffe064}.btn.purple{background:#c5adf5}.btn.red{background:#f5a1aa}

/* Dashboard cards */
.dashboard-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:13px;margin:0 0 14px}
.metric-card{position:relative;overflow:hidden;display:flex;flex-direction:column;min-height:156px;padding:17px 18px 14px;border-radius:13px;text-decoration:none;color:var(--ink);background:#fff;border:1px solid var(--line);box-shadow:0 5px 16px #071f3a0b;transition:transform .14s,box-shadow .14s,border-color .14s}
.metric-card:before{content:"";position:absolute;left:0;top:0;right:0;height:5px;background:var(--dos-navy)}
.metric-card:hover{transform:translateY(-2px);box-shadow:0 9px 22px #071f3a18;border-color:#bacbd9}.metric-card.active{box-shadow:0 0 0 2px #0f4c8133,0 8px 20px #071f3a16}
.metric-top{display:flex;justify-content:space-between;align-items:center}.metric-kicker{font-size:9px;font-weight:800;letter-spacing:1.3px;color:#6a7d8d}.metric-symbol{width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:900;background:#edf3f7;color:var(--dos-navy)}
.metric-label{font-size:15px;font-weight:700;margin-top:13px}.metric-value{font-size:39px;line-height:1;font-weight:800;color:var(--dos-navy-deep);margin:7px 0 10px}.metric-foot{margin-top:auto;display:flex;justify-content:space-between;gap:7px;font-size:10.5px;color:#6d8191}.metric-foot span{font-weight:800;color:var(--dos-navy)}
.metric-overdue:before{background:var(--dos-red)}.metric-overdue .metric-symbol{background:var(--soft-red);color:var(--dos-red)}.metric-overdue .metric-value{color:var(--dos-red)}
.metric-followup:before{background:#d29a19}.metric-followup .metric-symbol{background:var(--soft-gold);color:#8e6712}
.metric-attempts:before{background:#247a9d}.metric-attempts .metric-symbol{background:#e9f6fb;color:#247a9d}
.dashboard-detail-card{padding:17px 18px}.dashboard-head{align-items:center;margin-bottom:9px}.dashboard-head h3{margin:0;font-size:19px;color:var(--dos-navy-deep)}.dashboard-head .muted{margin:4px 0 0}.dashboard-actions{max-width:720px;justify-content:flex-end}.dashboard-actions form{display:inline-flex}.dashboard-table{border:1px solid #e1e9ef;border-radius:8px}.dashboard-table table{font-size:12px}.dashboard-table th{background:#e9f0f6;color:#23435e;font-size:11px;text-transform:none}.dashboard-table tr:hover td{background:#f8fbfd}.country-chip,.status-pill{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;font-size:10px;font-weight:800;padding:3px 7px}.country-chip{background:#e9f0f6;color:var(--dos-navy)}.status-ok{background:#e4f7eb;color:#23643a}.status-pending{background:#fff2c9;color:#795c00}.empty-state{text-align:center!important;padding:22px!important}

@media(max-width:1000px){.dashboard-metrics{grid-template-columns:repeat(2,1fr)}.brand-row{padding-left:12px;padding-right:12px}.top{padding:0 8px;flex-wrap:wrap}.top .spacer{display:none}.wrap{padding:0 12px}.dashboard-head{align-items:flex-start}.dashboard-actions{justify-content:flex-start}}
@media(max-width:680px){.brand-row{display:grid;grid-template-columns:1fr auto;align-items:center;gap:5px}.header-edit-slot{grid-column:1 / -1;grid-row:2;justify-self:center}.funding-brand{justify-content:flex-start;padding-left:0}.funding-brand img{width:200px}.dashboard-metrics{grid-template-columns:1fr}.metric-card{min-height:130px}.top>a,.menu-trigger{padding:0 10px;font-size:12.5px}.dropdown{position:fixed;top:auto}.page-heading h2{font-size:23px}}

/* ========================================================================== */
/* V3.10 - identidad longitudinal, búsqueda compacta y responsive móvil       */
/* ========================================================================== */
.mobile-nav-toggle{display:none}
.compact-heading{margin-bottom:10px}.compact-heading h2{font-size:25px}
.card-title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:15px;margin-bottom:10px}.card-title-row h3{margin:0 0 3px}.identity-badge{background:#e8f1f8;color:var(--dos-navy);border:1px solid #c9d9e6;border-radius:999px;padding:7px 11px;font-size:11px;font-weight:800;white-space:nowrap}
.person-editor-card{padding:16px 18px;margin-bottom:10px}.form-grid{display:grid;gap:9px 10px}.form-grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}.form-grid>div{min-width:0}.form-actions{display:flex;gap:8px;align-items:center;margin-top:12px}.good-text{color:#22643a!important}.warning-text{color:#8a6200!important}
.compact-search-card{padding:10px 13px;margin-bottom:10px}.search-toolbar{display:grid;grid-template-columns:minmax(220px,1fr) auto auto;gap:8px;align-items:end}.search-field label{margin:0 0 4px}.search-toolbar .btn{min-height:34px;display:flex;align-items:center;justify-content:center}.people-list-card{padding:10px 12px}

/* Dashboard: barra flotante compacta */
.dashboard-page-heading{margin-bottom:8px}.dashboard-status-dock{position:sticky;top:112px;z-index:22;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;margin:0 0 9px;padding:7px;background:#f4f7fae8;border:1px solid #dfe7ee;border-radius:13px;backdrop-filter:blur(9px);box-shadow:0 5px 16px #071f3a10}
.status-chip{display:flex;align-items:center;gap:10px;min-height:64px;padding:7px 11px;background:#fff;border:1px solid #d9e4ed;border-left:4px solid var(--dos-navy);border-radius:9px;text-decoration:none;color:var(--ink);box-shadow:0 2px 7px #071f3a0a;transition:.12s}.status-chip:hover,.status-chip.active{border-color:#9ebdd3;transform:translateY(-1px);box-shadow:0 5px 12px #071f3a16}.status-chip-value{font-size:28px;line-height:1;font-weight:900;color:var(--dos-navy-deep);min-width:33px;text-align:center}.status-chip-copy{display:flex;flex-direction:column;min-width:0}.status-chip-copy b{font-size:12.5px;line-height:1.1}.status-chip-copy small{font-size:9.5px;color:#718392;margin-top:3px}.status-chip.overdue{border-left-color:var(--dos-red)}.status-chip.overdue .status-chip-value{color:var(--dos-red)}.status-chip.followup{border-left-color:#cf9412}.status-chip.attempts{border-left-color:#247a9d}

/* Menú móvil */
@media(max-width:760px){
  .app-header{position:sticky;top:0}.brand-row{min-height:50px;padding:5px 10px;flex-direction:row;align-items:center}.brand-title{font-size:15px}.brand-subtitle{font-size:9px}.funding-brand{min-width:auto}.funding-brand img{width:145px;max-height:38px}.mobile-nav-toggle{display:flex;width:100%;align-items:center;justify-content:space-between;border:0;background:var(--dos-navy);color:#fff;padding:10px 13px;font-weight:800;font-family:inherit}.top{display:none;flex-direction:column;align-items:stretch;padding:4px 8px 9px;min-height:0}.top.nav-open{display:flex}.top>a,.menu-trigger{width:100%;justify-content:space-between;min-height:38px;padding:0 10px}.menu{display:block}.dropdown{display:none!important;position:static!important;min-width:0!important;box-shadow:none;border:0;border-radius:7px;background:#ffffff0e;padding:2px 7px 5px;margin:0 0 4px}.menu.menu-open>.dropdown{display:block!important}.dropdown a{color:#fff!important;background:transparent;padding:8px 11px}.dropdown a:hover{background:#ffffff14;color:#fff!important}.logout-link{margin-left:0!important}.wrap{margin-top:10px;padding:0 8px}.site-footer{padding:0 10px}
  .page-heading{margin-bottom:9px}.page-heading h2{font-size:22px}.eyebrow{font-size:9px}
  .form-grid-4{grid-template-columns:1fr 1fr}.card-title-row{display:block}.identity-badge{display:inline-flex;margin-top:4px}.person-editor-card{padding:13px 12px}.compact-search-card{padding:9px}.search-toolbar{grid-template-columns:1fr auto auto}.search-field{grid-column:1/-1}.search-toolbar .btn{min-width:74px}
  .dashboard-status-dock{top:52px;grid-template-columns:repeat(4,150px);overflow-x:auto;scroll-snap-type:x proximity;padding:6px;margin-left:-2px;margin-right:-2px}.status-chip{min-height:58px;scroll-snap-align:start;padding:6px 9px}.status-chip-value{font-size:24px}.status-chip-copy b{font-size:11.5px}.dashboard-detail-card{padding:12px}.dashboard-head{display:block}.dashboard-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin-top:8px}.dashboard-actions>*{width:100%}.dashboard-actions .btn,.dashboard-actions button{width:100%;text-align:center}
}

/* En teléfono las tablas clave se convierten en tarjetas legibles. */
@media(max-width:640px){
  .form-grid-4{grid-template-columns:1fr}.form-actions{position:sticky;bottom:0;background:#fff;padding:8px 0 2px;z-index:4}.compact-search-card{position:sticky;top:52px;z-index:18}
  .responsive-cards-table{max-height:none!important;overflow:visible!important;border:0!important}.responsive-cards-table table,.responsive-cards-table tbody{display:block;width:100%}.responsive-cards-table thead{display:none}.responsive-cards-table tr{display:block;background:#fff;border:1px solid #dbe5ed;border-radius:10px;margin:0 0 9px;padding:8px 9px;box-shadow:0 2px 8px #071f3a0a}.responsive-cards-table td{display:grid;grid-template-columns:112px minmax(0,1fr);gap:8px;align-items:start;width:100%;padding:5px 2px;border:0!important;white-space:normal!important;overflow-wrap:anywhere}.responsive-cards-table td:before{content:attr(data-label);font-size:10px;font-weight:800;color:#637a8c}.responsive-cards-table td[data-label="Acciones"]{display:block;border-top:1px solid #e5edf3!important;margin-top:5px;padding-top:8px}.responsive-cards-table td[data-label="Acciones"]:before{display:none}.responsive-cards-table .empty-state{display:block!important}.responsive-cards-table .empty-state:before{display:none}.mobile-action-row{display:grid;grid-template-columns:1fr 1fr}.mobile-action-row .btn{text-align:center}
  .people-list-card{padding:8px;background:transparent;border:0;box-shadow:none}.dashboard-page-heading{display:none}
}
.simo-toolbar{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:end}.simo-actions{justify-content:flex-end}.sync-meta{margin:7px 0 0}.compact-side-search{align-self:start}.responsive-form-layout{align-items:start}
@media(max-width:760px){.simo-toolbar{grid-template-columns:1fr}.simo-actions{display:grid;grid-template-columns:1fr 1fr;justify-content:stretch}.simo-actions>*{width:100%}.simo-actions .btn{width:100%;text-align:center}.responsive-form-layout{grid-template-columns:1fr}.compact-side-search{padding:10px}.mobile-program-form{display:grid;grid-template-columns:1fr auto;width:100%}}
@media(max-width:640px){.simo-responsive td[data-label="CUI intervención"],.simo-responsive td[data-label="CUI servicio"],.simo-responsive td[data-label="Nuevo PASMO"],.simo-responsive td[data-label="Provisión PrEP"],.simo-responsive td[data-label="Cantidad"]{display:none}.simo-responsive tr{border-left:4px solid var(--dos-navy)}.simo-responsive td[data-label="Id Cliente"]{font-weight:800}.simo-responsive td[data-label="Cupón"]{font-size:14px}}
/* V3.11: tarjetas compactas, no flotantes */
.dashboard-status-dock{display:none!important}.compact-metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:0 0 10px}.compact-metric{min-height:72px;padding:9px 12px;border:1px solid #d8e4ed;border-top:4px solid var(--dos-navy);border-radius:10px;background:#fff;text-decoration:none;color:var(--ink);display:flex;align-items:center;justify-content:space-between;gap:10px;box-shadow:0 2px 7px #071f3a0a}.compact-metric:hover,.compact-metric.active{border-color:#9ebdd3;box-shadow:0 4px 12px #071f3a14}.compact-metric span{display:flex;align-items:center;gap:9px;min-width:0}.compact-metric b{font-size:28px;line-height:1;color:var(--dos-navy-deep)}.compact-metric small{font-size:12px;font-weight:800;line-height:1.1}.compact-metric em{font-size:9.5px;color:#718392;font-style:normal;text-align:right}.compact-metric.overdue{border-top-color:var(--dos-red)}.compact-metric.overdue b{color:var(--dos-red)}.compact-metric.followup{border-top-color:#cf9412}.compact-metric.attempts{border-top-color:#247a9d}@media(max-width:760px){.compact-metric-grid{grid-template-columns:1fr 1fr;gap:6px}.compact-metric{min-height:62px;padding:7px 9px}.compact-metric b{font-size:23px}.compact-metric small{font-size:11px}.compact-metric em{display:none}}@media(max-width:420px){.compact-metric{min-height:58px}.compact-metric span{gap:6px}.compact-metric b{font-size:21px}}
.admin-country-switch{display:flex;align-items:center;gap:4px;font-size:10px;max-width:320px;overflow-x:auto;overflow-y:hidden;white-space:nowrap;scrollbar-width:thin}.admin-country-switch span{opacity:.8;margin-right:3px;flex:0 0 auto}.country-switch-link{padding:4px 6px!important;border-radius:5px;background:#ffffff12;flex:0 0 auto}.country-switch-link.active{background:#fff!important;color:var(--dos-navy)!important;font-weight:800}@media(max-width:760px){.admin-country-switch{flex-wrap:wrap;padding:4px 8px}.admin-country-switch .country-switch-link{width:auto!important;min-height:auto!important}}
.alert.warning{background:#fff3cd;color:#765700;border:1px solid #f0d98a}.coupon-person-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px}.coupon-person-grid>div{background:#f4f8fb;border:1px solid #dde8f0;border-radius:8px;padding:9px}.coupon-person-grid small{display:block;color:#61778a;font-size:10px;margin-bottom:3px}.coupon-person-grid b{font-size:13px;overflow-wrap:anywhere}.span-2{grid-column:span 2}@media(max-width:900px){.coupon-person-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:640px){.coupon-person-grid{grid-template-columns:1fr 1fr}.span-2{grid-column:auto}.coupon-search-card{position:static!important}}
/* V3.13 - proveedores, cierre y autorizaciones de edición */
.nav-badge{display:inline-flex;min-width:18px;height:18px;align-items:center;justify-content:center;border-radius:999px;background:#c4163a;color:#fff;font-size:9px;font-weight:900;margin-left:5px;padding:0 5px}.status-pill{display:inline-flex;align-items:center;border-radius:999px;padding:4px 8px;font-size:10px;font-weight:800}.status-open{background:#e6f6ee;color:#22643a}.status-closed{background:#f9e8ec;color:#9e1735}.status-pending{background:#fff3cd;color:#765700}.status-authorized{background:#e7effb;color:#1d4f8d}.authorization-code{font-size:34px;font-weight:900;letter-spacing:8px;color:var(--dos-navy-deep);background:#eef5fb;border:2px dashed #9cb9cf;border-radius:10px;padding:16px;text-align:center;margin:12px 0}.coupon-history-card{margin-top:12px}.request-edit-panel{border:1px solid #eed38b;background:#fff9e9;border-radius:10px;padding:12px;margin-top:12px}.locked-panel{border-left:4px solid var(--dos-red);background:#fff5f6;padding:10px 12px;border-radius:7px;margin:10px 0}.provider-summary{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.provider-summary .identity-badge{margin:0}
.report-compact-metrics{margin-top:10px}.report-compact-metrics .compact-metric{min-height:70px}.provider-sync-note{padding:9px 11px;border-radius:8px;background:#fff8d8;color:#6c5411;border:1px solid #edd78d}

/* V3.15 - control posterior a proveedor */
.summary-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:10px 0 12px}.summary-strip>span{display:block;padding:9px 10px;border:1px solid #d8e4ed;border-radius:9px;background:#f7fafc;font-size:11px;line-height:1.35}.summary-strip strong{color:var(--dos-navy-deep);font-size:10px;text-transform:uppercase;letter-spacing:.02em}@media(max-width:760px){.summary-strip{grid-template-columns:1fr 1fr}}@media(max-width:420px){.summary-strip{grid-template-columns:1fr}}

/* V3.18 - Citas y atención de proveedor más compactas y responsive */
.appointment-create-card{padding:12px 14px;margin-bottom:10px}.appointment-create-card .card-title-row{margin-bottom:6px}.appointment-create-card h3{font-size:16px}.appointment-create-grid{display:grid;grid-template-columns:minmax(280px,2fr) minmax(135px,.8fr) minmax(135px,.8fr) minmax(220px,1.3fr) auto;gap:8px;align-items:end}.appointment-create-grid label{margin-bottom:3px}.appointment-create-grid input,.appointment-create-grid select{min-height:34px}.appointment-create-action{display:flex;align-items:end}.appointment-create-action .btn{min-height:34px;white-space:nowrap}.appointment-list-card{padding:10px 12px}.compact-list-toolbar{display:grid;grid-template-columns:auto minmax(360px,1fr);gap:16px;align-items:end;margin-bottom:8px}.compact-list-toolbar h3{margin:0}.compact-list-toolbar p{margin:2px 0 0}.compact-search-inline{display:grid;grid-template-columns:minmax(180px,1fr) auto auto;gap:7px;align-items:center;max-width:720px;justify-self:end;width:100%}.compact-search-inline input{min-height:34px}.compact-search-inline .btn{min-height:34px;display:flex;align-items:center;justify-content:center}

.provider-workspace{display:grid;grid-template-columns:minmax(280px,.82fr) minmax(480px,1.65fr);gap:10px;align-items:start;margin-bottom:10px}.provider-coupon-summary{padding:12px;position:sticky;top:118px}.provider-coupon-summary .coupon-person-grid{grid-template-columns:1fr 1fr}.provider-coupon-summary .coupon-person-grid>div{padding:7px 8px}.provider-coupon-summary .coupon-person-grid b{font-size:12px}.provider-service-panel{min-width:0}.provider-service-panel>.card{margin-bottom:10px;padding:13px 14px}.provider-form-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px 10px}.provider-form-grid .span-2{grid-column:span 2}.coupon-search-card{padding:10px 12px;margin-bottom:10px}.coupon-search-card .search-toolbar{grid-template-columns:minmax(220px,1fr) auto}.coupon-search-card label{margin-bottom:3px}.coupon-search-card input,.coupon-search-card .btn{min-height:34px}.coupon-history-card{padding:11px 12px;margin-top:10px}

@media(max-width:1050px){.appointment-create-grid{grid-template-columns:2fr 1fr 1fr}.appointment-notes-field{grid-column:1/3}.appointment-create-action{grid-column:3}.compact-list-toolbar{grid-template-columns:1fr}.compact-search-inline{justify-self:stretch;max-width:none}.provider-workspace{grid-template-columns:1fr}.provider-coupon-summary{position:static}.provider-coupon-summary .coupon-person-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:760px){.appointment-create-grid{grid-template-columns:1fr 1fr}.appointment-person-field,.appointment-notes-field{grid-column:1/-1}.appointment-create-action{grid-column:2;justify-content:flex-end}.compact-list-toolbar{display:block}.compact-search-inline{grid-template-columns:1fr auto auto;margin-top:8px}.provider-form-grid{grid-template-columns:1fr 1fr}.provider-coupon-summary .coupon-person-grid{grid-template-columns:1fr 1fr}.provider-service-panel>.card{padding:11px}.coupon-history-card{padding:8px}}
@media(max-width:520px){.appointment-create-card{padding:10px}.appointment-create-grid{grid-template-columns:1fr}.appointment-person-field,.appointment-notes-field,.appointment-create-action{grid-column:1}.appointment-create-action .btn{width:100%}.compact-search-inline{grid-template-columns:1fr 1fr}.compact-search-inline input{grid-column:1/-1}.compact-search-inline .btn{width:100%}.appointment-list-card{padding:7px;background:transparent;border:0;box-shadow:none}.provider-form-grid{grid-template-columns:1fr}.provider-form-grid .span-2{grid-column:1}.provider-coupon-summary .coupon-person-grid{grid-template-columns:1fr 1fr}.provider-workspace{gap:7px}.coupon-search-card .search-toolbar{grid-template-columns:1fr}.coupon-search-card .btn{width:100%}.coupon-history-card{background:transparent;border:0;box-shadow:none;padding:0}}

/* V3.19 - No. Identificación y evidencias de atención */
.evidence-upload-field input[type="file"]{padding:8px;background:#f8fbfd;border:1px dashed #a9bfd0;border-radius:8px;min-height:42px}
.evidence-upload-field small{display:block;margin-top:4px;color:#6d8191;line-height:1.35}.evidence-list{margin:7px 0 11px;padding:9px 10px;background:#f7fafc;border:1px solid #dbe6ee;border-radius:9px}.evidence-list>b{display:block;font-size:11px;margin-bottom:6px;color:var(--dos-navy-deep)}.evidence-chips{display:flex;flex-wrap:wrap;gap:6px}.evidence-chip{display:inline-flex;align-items:center;gap:5px;padding:6px 8px;border-radius:7px;background:#e9f2f8;color:var(--dos-navy);text-decoration:none;font-size:11px;font-weight:700;border:1px solid #d0e0eb;max-width:100%;overflow-wrap:anywhere}.evidence-chip:hover{background:#dcecf6}.evidence-chip small{font-size:9px;color:#6e8190;font-weight:600}
@media(max-width:520px){.evidence-chip{width:100%;justify-content:space-between}.evidence-upload-field{grid-column:1!important}}

/* V3.21 - atenciones de proveedor aún sin cita interna */
.provider-pending-box{margin-top:14px;padding-top:12px;border-top:1px solid #d7e2ec}
.provider-pending-box h4{margin:0 0 4px;color:#17324d}
.warning{background:#fff4cc;border:1px solid #e5c85f;border-radius:8px;padding:10px 12px;color:#624d00}

/* V3.22 - administración de evidencias */
.evidence-manage-list{display:flex;flex-direction:column;gap:8px;margin-top:8px}
.evidence-manage-item{border:1px solid #dce7ef;border-radius:9px;padding:8px;background:#fff}
.evidence-manage-item.compact{display:flex;align-items:flex-start;gap:8px;flex-wrap:wrap}
.evidence-main-line{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.evidence-actions{display:flex;align-items:flex-start;gap:7px;flex-wrap:wrap;margin-top:6px}
.evidence-actions details{position:relative}
.evidence-actions summary{list-style:none;cursor:pointer;display:inline-block}
.evidence-actions summary::-webkit-details-marker{display:none}
.evidence-edit-form{display:grid;gap:6px;min-width:300px;max-width:460px;padding:10px;margin-top:7px;border:1px solid #dce7ef;border-radius:8px;background:#f8fbfd;box-shadow:0 5px 16px rgba(0,0,0,.08)}
.evidence-edit-form label{font-size:.78rem;font-weight:600}
.evidence-edit-form small{color:#5e7182}
.btn.red{background:#dc5a66;color:#fff;border-color:#dc5a66}
@media(max-width:680px){
  .evidence-edit-form{min-width:0;width:min(82vw,420px)}
  .evidence-actions{width:100%}
  .evidence-actions details{width:100%}
  .evidence-actions summary{width:100%;text-align:center}
  .evidence-actions form{width:100%}
  .evidence-actions form .btn{width:100%}
}

/* V3.30 - acceso visible a autorización de ediciones */
.authorization-nav-callout{display:inline-flex!important;align-items:center;gap:6px;margin:4px 8px;padding:7px 12px!important;border-radius:8px;background:#fff1c2!important;color:#5e4300!important;font-weight:900!important;border:1px solid #e6be43;box-shadow:0 1px 4px rgba(0,0,0,.12);white-space:nowrap}.authorization-nav-callout:hover{background:#ffe69a!important}.authorization-nav-callout.has-pending{background:#fff0f3!important;color:#9e1735!important;border-color:#d94d6a;box-shadow:0 0 0 2px rgba(196,22,58,.10)}@media(max-width:900px){.authorization-nav-callout{margin:4px 0;width:100%;justify-content:space-between}}

.danger-zone{border:1px solid #e5a4a4;background:#fff8f8}.btn.danger{background:#b4233c;color:#fff}.inline-actions{display:flex;gap:6px;flex-wrap:wrap}

/* Personas: filtros de completitud y acción de edición siempre visible */
.people-filter-toolbar{display:grid;grid-template-columns:minmax(280px,1.8fr) minmax(210px,.8fr) auto auto;gap:8px;align-items:end}
.people-filter-toolbar label{margin-bottom:3px}
.people-tablewrap{position:relative}
.people-table .action-col{position:sticky;left:0;z-index:5;background:#fff;min-width:74px;text-align:center;box-shadow:2px 0 4px #071f3a12}
.people-table thead .action-col{z-index:7;background:#e9f0f6}
.people-table tr:hover .action-col{background:#f8fbfd}
@media(max-width:850px){.people-filter-toolbar{grid-template-columns:1fr 1fr}.people-filter-toolbar .search-field{grid-column:1/-1}.people-filter-toolbar .btn{width:100%;text-align:center}}
@media(max-width:520px){.people-filter-toolbar{grid-template-columns:1fr}.people-filter-toolbar .search-field{grid-column:auto}.responsive-cards-table .people-table .action-col{position:static;box-shadow:none;text-align:left}}

/* V3.38: columna de acciones siempre visible a la izquierda en tablas operativas */
.tablewrap table .action-col{position:sticky;left:0;z-index:5;background:#fff;min-width:78px;text-align:center;box-shadow:2px 0 4px #071f3a12}
.tablewrap table thead .action-col,.tablewrap table tr:first-child .action-col{z-index:7;background:#e9f0f6}
.tablewrap table tr:hover .action-col{background:#f8fbfd}
@media(max-width:520px){.responsive-cards-table table .action-col{position:static;box-shadow:none;text-align:left}}

/* Solicitudes de edición: acceso compacto en encabezado */
.header-edit-slot{display:flex;align-items:center;justify-content:center;justify-self:center}.header-edit-slot-empty{width:1px;height:1px}
.edit-request-card{display:inline-flex;align-items:center;gap:7px;width:auto;min-width:0;height:38px;box-sizing:border-box;padding:5px 9px;border:1px solid #d5e0e8;border-radius:9px;background:#f7fafc;color:var(--dos-navy-deep);text-decoration:none;box-shadow:0 1px 4px #071f3a12;transition:.14s;white-space:nowrap}
.edit-request-card:hover{transform:translateY(-1px);border-color:#9db8cb;box-shadow:0 3px 9px #071f3a18}
.edit-request-icon{width:25px;height:25px;flex:0 0 25px;border-radius:7px;display:inline-flex;align-items:center;justify-content:center;background:#e8f1f8;color:var(--dos-navy-deep);line-height:1;overflow:hidden}.edit-request-icon svg{display:block;width:17px;height:17px}
.edit-request-copy{display:inline-flex;align-items:center;line-height:1}.edit-request-copy b{font-size:11.5px;white-space:nowrap}
.edit-request-count{min-width:21px;height:21px;padding:0 5px;box-sizing:border-box;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;background:#c4163a;color:#fff;font-size:10px;font-weight:900;line-height:1;box-shadow:0 0 0 2px #fff,0 1px 4px rgba(196,22,58,.35)}
.edit-request-card.has-pending{background:#fff8df;border-color:#e7c85c}.edit-request-card.has-pending .edit-request-icon{background:#ffe79a;color:#7a5600}.edit-request-card.has-pending .edit-request-count{background:#c4163a;color:#fff}
@media(max-width:760px){.header-edit-slot{justify-self:center}.edit-request-card{height:34px;padding:4px 7px}.edit-request-icon{width:23px;height:23px;flex-basis:23px;font-size:15px}.edit-request-copy b{font-size:10.5px}.funding-brand img{width:135px}}
@media(max-width:480px){.edit-request-copy{display:none}.edit-request-card{gap:4px}.edit-request-count{min-width:19px;height:19px;padding:0 4px}}

/* Datos identificables en Atención servicios: ocultos visualmente hasta interacción. */
.sensitive-hover{display:inline-block;filter:blur(5px);transition:filter .15s ease;cursor:help;user-select:none}
.sensitive-hover:hover,.sensitive-hover:focus,.sensitive-hover:focus-visible{filter:none;user-select:text;outline:none}

/* V3.48 - protección visual parametrizable de datos sensibles */
.sensitive-partial{display:inline-flex;align-items:baseline;max-width:100%;cursor:help;white-space:nowrap;outline:none}
.sensitive-visible{display:inline-block}
.sensitive-blurred{display:inline-block;filter:blur(4.5px);transition:filter .16s ease;user-select:none}
.sensitive-partial:hover .sensitive-blurred,.sensitive-partial:focus .sensitive-blurred,.sensitive-partial:focus-visible .sensitive-blurred{filter:none;user-select:text}
.sensitive-denied{letter-spacing:.08em;color:#718096}
.sensitive-settings-panel{margin-top:16px;padding:14px;border:1px solid #d9e5ef;border-radius:12px;background:#f8fbfd}
.sensitive-settings-panel h3{margin:0 0 4px}
.check-card{display:flex;align-items:center;gap:8px;padding:10px 12px;border:1px solid #dbe7ef;border-radius:9px;background:white;font-weight:600}
.admin-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:14px}.check-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:10px 0 14px}.check-grid label,.check-line{display:flex;gap:7px;align-items:center}.compact-form{margin-top:12px}.compact-table{max-height:320px;overflow:auto}@media(max-width:900px){.admin-grid-2{grid-template-columns:1fr}.check-grid{grid-template-columns:1fr}}
.service-selector-card{border-left:4px solid #4db6e5}.date-with-action{display:flex;gap:8px;align-items:center}.date-with-action input{flex:1}.today-btn{white-space:nowrap}.calculated-field{background:#eef5fb;font-weight:700}.dynamic-field{transition:opacity .15s ease}

/* V3.56 - Configuración de atención guiada por pasos */
.attention-context-card{padding:12px 14px;margin-bottom:12px}.attention-context-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.attention-context-summary{display:flex;gap:18px;flex-wrap:wrap;margin-top:8px;padding-top:8px;border-top:1px solid #e2eaf0;color:#5c7285;font-size:10.5px}.attention-config-shell{display:grid;grid-template-columns:225px minmax(0,1fr);gap:14px;align-items:start}.attention-config-nav{position:sticky;top:112px;padding:9px}.attention-config-nav-title{padding:5px 8px 9px;font-size:11px;font-weight:900;color:var(--dos-navy-deep);text-transform:uppercase;letter-spacing:.05em}.attention-config-step{display:grid;grid-template-columns:30px 1fr;gap:8px;align-items:center;padding:9px 8px;margin-bottom:5px;border:1px solid transparent;border-radius:9px;text-decoration:none;color:var(--ink);transition:.12s}.attention-config-step>span{width:28px;height:28px;border-radius:8px;display:flex;align-items:center;justify-content:center;background:#e9f1f7;color:var(--dos-navy);font-weight:900}.attention-config-step b{display:block;font-size:11.5px}.attention-config-step small{display:block;margin-top:2px;color:#718392;font-size:9px;line-height:1.2}.attention-config-step:hover{background:#f5f9fc;border-color:#dbe6ee}.attention-config-step.active{background:#eaf5fb;border-color:#9dcbe2;color:var(--dos-navy-deep);box-shadow:0 2px 8px #071f3a0b}.attention-config-step.active>span{background:#4db6e5;color:#08324d}.attention-help-box{margin-top:10px;padding:9px;border-radius:8px;background:#fff8dd;border:1px solid #eedb8d}.attention-help-box b{display:block;font-size:10px;color:#6b5500}.attention-help-box small{display:block;margin-top:3px;color:#766526;font-size:9px;line-height:1.35}.attention-config-content{min-width:0}.attention-panel{min-height:420px}.panel-heading{display:flex;justify-content:space-between;gap:12px;align-items:start;margin-bottom:12px}.panel-heading h3{margin:0}.panel-heading .eyebrow{margin-bottom:3px}.attention-split{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr);gap:14px;align-items:start}.attention-editor-box{padding:12px;border:1px solid #dce7ef;border-radius:10px;background:#f8fbfd}.attention-editor-box h4{margin:0 0 9px;color:var(--dos-navy-deep)}.attention-fields-table{max-height:340px;margin-bottom:12px}.attention-service-checks{grid-template-columns:repeat(2,minmax(0,1fr))}.attention-service-checks label{border:1px solid #dce7ef;border-radius:9px;padding:9px;background:#fff}.attention-service-checks label span{display:flex;flex-direction:column}.attention-service-checks label small{font-size:9px;color:#718392}.empty-guidance{padding:28px;text-align:center;border:1px dashed #b7cbd9;border-radius:10px;background:#f8fbfd;color:#607789}.empty-guidance b{display:block;font-size:14px;color:var(--dos-navy-deep);margin-bottom:4px}.rule-example{padding:10px 12px;margin-bottom:12px;border-left:4px solid #cf9412;background:#fff8de;border-radius:7px;color:#6a5300;font-size:10.5px}
@media(max-width:900px){.attention-context-grid{grid-template-columns:1fr 1fr}.attention-context-grid label:last-child{grid-column:1/-1}.attention-config-shell{grid-template-columns:1fr}.attention-config-nav{position:static;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.attention-config-nav-title,.attention-help-box{grid-column:1/-1}.attention-config-step{margin:0}.attention-split{grid-template-columns:1fr}.attention-service-checks{grid-template-columns:1fr}}
@media(max-width:600px){.attention-context-grid{grid-template-columns:1fr}.attention-context-grid label:last-child{grid-column:auto}.attention-config-nav{grid-template-columns:1fr 1fr}.attention-config-step{grid-template-columns:26px 1fr;padding:7px 6px}.attention-config-step>span{width:25px;height:25px}.attention-panel{padding:11px}.attention-editor-box{padding:10px}}
/* v3.60 - edición de maestros y catálogos de atención */
.editable-row{cursor:pointer;transition:background .12s}.editable-row:hover{background:#f2f8fc}.editable-row.selected{background:#e4f3fb;box-shadow:inset 3px 0 0 #339bc9}.btn-mini{border:1px solid #b9ccd9;background:#fff;color:#164c70;border-radius:6px;padding:4px 8px;font-size:9px;font-weight:800;cursor:pointer}.btn-mini:hover{background:#eef7fc}.locked-input{background:#eef2f5!important;color:#60717d!important;cursor:not-allowed}.editor-actions{display:flex;gap:8px;align-items:center}.editor-hint{font-size:9.5px;margin:-3px 0 9px}

/* v3.62 - edición visible de listas y catálogos en pantallas de 13 pulgadas */
.options-editor-stack{display:grid;grid-template-columns:1fr;gap:12px}.options-table{max-height:335px}.options-table table{min-width:760px}.options-table .action-col{position:sticky;left:0;z-index:2;background:#fff;min-width:68px}.options-table thead .action-col{z-index:4;background:#eaf3f9}.options-table tr.selected .action-col{background:#e4f3fb}.options-table tr:hover .action-col{background:#f2f8fc}

/* v3.63 - Alineación compacta de controles de Armar formulario */
.service-field-flags{display:grid;grid-template-columns:repeat(4,minmax(120px,1fr));gap:8px;margin-top:2px;padding:9px 10px;border:1px solid #dce7ef;border-radius:9px;background:#fff}
.flag-check{display:flex;align-items:center;justify-content:flex-start;gap:8px;min-height:34px;padding:5px 9px;border:1px solid #e1e9ef;border-radius:7px;background:#f8fbfd;font-weight:700;color:var(--dos-navy-deep);cursor:pointer}
.flag-check input[type=checkbox]{width:16px;height:16px;margin:0;flex:0 0 auto}
.flag-check span{line-height:1}
@media(max-width:900px){.service-field-flags{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){.service-field-flags{grid-template-columns:1fr}}

/* v3.64 - identidad parametrizable y reglas con múltiples condiciones */
.login-branded{text-align:left}.login-brand-logo{text-align:center;margin:-2px 0 12px}.login-brand-logo img{max-width:280px;max-height:90px;object-fit:contain}.login-branded h2{text-align:center;margin-bottom:4px}.login-subtitle{text-align:center;margin-top:0;margin-bottom:18px}.branding-upload-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:14px 0}.branding-upload-card{border:1px solid #dbe5ef;border-radius:10px;padding:12px;background:#f9fbfd;display:grid;gap:9px}.branding-upload-card img{width:100%;height:90px;object-fit:contain;background:#fff;border:1px solid #e3eaf0;border-radius:8px;padding:8px}.rule-conditions-box{border:1px solid #dbe5ef;border-radius:10px;padding:11px;background:#f9fbfd}.rule-conditions-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px}.rule-condition-row{display:grid;grid-template-columns:1.5fr .55fr 1fr auto;gap:8px;align-items:end;padding:8px 0;border-top:1px solid #e7edf3}.rule-condition-row:first-child{border-top:0}.danger-mini{color:#8a2020!important}.rule-condition-summary{white-space:normal}.system-identity-card .panel-heading{margin-bottom:8px}@media(max-width:850px){.branding-upload-grid,.rule-condition-row{grid-template-columns:1fr}.rule-condition-row .btn-mini{justify-self:start}}


/* v3.65 - controles booleanos uniformes + herencia efectiva de campos */
.boolean-options-grid{display:grid;grid-template-columns:repeat(4,minmax(135px,1fr));gap:8px;margin:4px 0 2px;padding:9px 10px;border:1px solid #dce7ef;border-radius:9px;background:#fff}
.boolean-options-grid.boolean-options-wide{grid-template-columns:repeat(4,minmax(165px,1fr));margin:12px 0}
.boolean-options-grid.boolean-options-single{grid-template-columns:minmax(220px,360px);width:max-content;max-width:100%;margin:12px 0}
.boolean-options-grid .flag-check{margin:0;min-width:0}
.service-field-flags{display:grid;grid-template-columns:repeat(4,minmax(135px,1fr));gap:8px;margin-top:2px;padding:9px 10px;border:1px solid #dce7ef;border-radius:9px;background:#fff}
@media(max-width:1050px){.boolean-options-grid,.boolean-options-grid.boolean-options-wide,.service-field-flags{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.boolean-options-grid,.boolean-options-grid.boolean-options-wide,.boolean-options-grid.boolean-options-single,.service-field-flags{grid-template-columns:1fr;width:100%}}

/* v3.70 - tour guiado de Configuración de atención */
.attention-tour-btn{align-self:center;background:#2468f2;color:#fff;border:0;white-space:nowrap}.attention-tour-btn:hover{filter:brightness(.96)}
.attention-tour-overlay{display:none;position:fixed;inset:0;z-index:10050;background:rgba(5,22,42,.56)}.attention-tour-overlay.open{display:block}
.attention-tour-spotlight{position:fixed;z-index:10051;border:3px solid #59b9ec;border-radius:12px;box-shadow:0 0 0 9999px rgba(5,22,42,.38),0 0 0 5px rgba(89,185,236,.18);pointer-events:none;transition:.18s ease}
.attention-tour-card{position:fixed;z-index:10052;background:#fff;border:1px solid #cddde9;border-radius:14px;padding:16px 17px;box-shadow:0 18px 55px rgba(3,24,45,.30);max-height:78vh;overflow:auto}
.attention-tour-topline{display:flex;align-items:center;justify-content:space-between;color:#64798a;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.05em}.attention-tour-close{border:0;background:transparent;font-size:25px;line-height:1;color:#526a7c;cursor:pointer}.attention-tour-card h3{margin:5px 0 9px;color:var(--dos-navy-deep);font-size:18px}.attention-tour-body{font-size:12.5px;line-height:1.55;color:#344f63}.attention-tour-actions{display:flex;align-items:center;gap:8px;margin-top:14px;padding-top:12px;border-top:1px solid #e2eaf0}.attention-tour-actions .btn{margin:0}.attention-tour-next{margin-left:auto!important;background:#2468f2;color:#fff}.attention-tour-actions button:disabled{opacity:.4;cursor:not-allowed}
.tour-action-grid{display:grid;grid-template-columns:110px 1fr;gap:7px 10px;margin-top:6px}.tour-action-grid b{color:#123e6e}.tour-note{margin:12px 0 0;padding:9px 10px;border-radius:8px;background:#fff7d6;border:1px solid #ead888;color:#695500}
@media(max-width:700px){.attention-tour-card{width:calc(100vw - 24px)!important;left:12px!important;right:auto!important}.tour-action-grid{grid-template-columns:1fr}.tour-action-grid b{margin-top:4px}}

/* V3.73 - indicador de carga de Login */
.login-loading-compact{position:fixed;top:14px;left:50%;transform:translateX(-50%) translateY(-12px);width:min(390px,calc(100vw - 32px));background:rgba(255,255,255,.98);border:1px solid #d8e4f0;border-radius:10px;box-shadow:0 8px 26px rgba(12,44,78,.16);padding:9px 12px 10px;z-index:9999;opacity:0;pointer-events:none;transition:.18s ease}.login-loading-compact.open{opacity:1;transform:translateX(-50%) translateY(0)}.login-loading-text{font-size:12px;font-weight:700;color:#234d78;text-align:center;margin-top:6px}.login-loading-progress{height:4px;background:#e5edf5;border-radius:99px;overflow:hidden}.login-loading-progress span{display:block;height:100%;width:38%;border-radius:99px;background:#2c73d2;animation:loginProgress 1.15s ease-in-out infinite}@keyframes loginProgress{0%{transform:translateX(-110%)}55%{transform:translateX(110%)}100%{transform:translateX(300%)}}
/* V3.73 - acceso uniforme a tours por pantalla */
.generic-tour-launch{position:fixed;right:20px;bottom:22px;z-index:1200;border:0;border-radius:999px;padding:10px 15px;background:#356df3;color:#fff;font-weight:700;box-shadow:0 8px 24px rgba(26,64,128,.22);cursor:pointer}.generic-tour-launch:hover{filter:brightness(.96)}
/* V3.77 · verificación de identificación y reportes de proveedor */
.recorded-at-note{font-size:.78rem;color:#6d7f91;background:#f5f8fb;border:1px solid #dce6ef;border-radius:999px;padding:5px 10px;white-space:nowrap}
.provider-identification-card{grid-column:1/-1;border:1px solid #d9e5ef;background:#f8fbfd;border-radius:12px;padding:12px 14px;margin:4px 0 14px}
.provider-id-head{display:flex;justify-content:space-between;gap:12px;margin-bottom:10px}.provider-id-head small{display:block;color:#6d7f91;margin-top:3px;font-weight:400}
.provider-id-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.provider-id-grid input[readonly]{background:#eef3f7;color:#51667a}
.identity-reconcile-alert,.identity-reconcile-ok,.identity-reconcile-info{margin-top:10px;border-radius:8px;padding:8px 10px;font-size:.82rem}.identity-reconcile-alert{background:#fff4cf;border:1px solid #e9c85b;color:#705515}.identity-reconcile-ok{background:#edf9f1;border:1px solid #b8e1c5;color:#27643a}.identity-reconcile-info{background:#eef7ff;border:1px solid #c5ddf2;color:#315d7c}
.report-filter-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;align-items:end}.provider-report-filter .form-actions{margin-top:12px}
@media(max-width:1000px){.report-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:700px){.provider-id-grid,.report-filter-grid{grid-template-columns:1fr}.recorded-at-note{white-space:normal}}
/* V3.79 · identidad internacional, pagos y conciliación */
.provider-identity-meta-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:10px 0}.provider-identity-meta-grid label{margin:0}.conflict-block-card{border-left:4px solid #c0392b}.payment-status-timeline{display:flex;gap:14px;flex-wrap:wrap;align-items:center}.payment-status-timeline span{font-size:.9rem;color:#53657a}.payment-action-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.payment-action-grid form{border:1px solid #dbe5ef;border-radius:10px;padding:12px;background:#f9fbfd}.payment-action-grid textarea{min-height:58px}@media(max-width:900px){.provider-identity-meta-grid,.payment-action-grid{grid-template-columns:1fr}}

/* V3.80 - accesos operativos en cabecera: edición, conciliaciones y pagos */
.header-workflow-slot{display:flex;align-items:center;justify-content:center;gap:7px;min-width:0;flex-wrap:nowrap}
.header-workflow-slot .edit-request-card{height:36px;padding:4px 8px}
.header-workflow-slot .edit-request-icon{font-weight:900}
@media(max-width:980px){.header-workflow-slot{gap:4px}.header-workflow-slot .edit-request-copy b{font-size:10px}.header-workflow-slot .edit-request-card{padding:3px 6px}}
@media(max-width:760px){.header-workflow-slot{width:100%;overflow-x:auto;justify-content:flex-start;padding:2px 0}.header-workflow-slot .edit-request-card{flex:0 0 auto}}

/* V3.84 - Cabecera documental común de reportes */
.report-document-head{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin:4px 0 12px}.report-document-head h2{margin:2px 0 5px}.report-emission{min-width:190px;background:#f5f8fb;border:1px solid #d6e1ec;border-radius:10px;padding:9px 12px;text-align:right}.report-emission b,.report-emission span{display:block}.report-emission b{font-size:11px;color:#60758b}.report-emission span{font-weight:700;color:#153b64;margin-top:2px}.report-meta-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;background:#fff;border:1px solid #d6e1ec;border-radius:12px;padding:10px 12px;margin-bottom:12px}.report-meta-strip>div{background:#f7fafc;border:1px solid #e2eaf2;border-radius:8px;padding:7px 9px;min-width:0}.report-meta-strip b,.report-meta-strip span{display:block}.report-meta-strip b{font-size:10px;text-transform:uppercase;letter-spacing:.03em;color:#60758b;margin-bottom:2px}.report-meta-strip span{font-size:12px;color:#183a5a;overflow-wrap:anywhere}.report-meta-strip .wide{grid-column:span 3}@media(max-width:900px){.report-document-head{display:block}.report-emission{text-align:left;margin-top:8px}.report-meta-strip{grid-template-columns:1fr}.report-meta-strip .wide{grid-column:auto}}

/* V3.85 · conciliación de identificación y seguimiento con contacto */
.readonly-box{min-height:38px;padding:9px 11px;border:1px solid #d3deea;border-radius:7px;background:#f6f9fc;color:#173957;display:flex;align-items:center}
.reconcile-form{margin-top:8px;min-width:260px;display:grid;gap:6px}.reconcile-form textarea{resize:vertical}

/* V3.86 - tema parametrizable y paneles de configuración */
.btn{background:var(--theme-action,var(--dos-blue));}
.btn.green{background:var(--theme-success,#77dda0)}
.btn.yellow{background:var(--theme-warning,#ffe064)}
body{background:var(--canvas,#f4f7fa);color:var(--ink,#17324d)}
.card,.brand-row,.funding-brand{background:var(--surface,#fff)}
.theme-color-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:8px 0 16px}.theme-color-field{border:1px solid var(--line);border-radius:10px;padding:11px;background:var(--surface)}.theme-color-field>span{display:block;margin-bottom:8px}.theme-color-field>div{display:flex;align-items:center;gap:10px}.theme-color-field input[type=color]{width:54px;height:38px;padding:2px;cursor:pointer}.theme-color-field code{font-size:12px}.inline-form{display:inline}.form-span-2{grid-column:1/-1}@media(max-width:850px){.theme-color-grid{grid-template-columns:1fr}.form-span-2{grid-column:auto}}


/* V3.87 · listas filtrables y columnas reordenables */
.smart-table-tools{display:flex;justify-content:space-between;align-items:center;gap:10px;margin:0 0 8px;flex-wrap:wrap}.smart-table-search{display:flex;align-items:center;gap:7px;min-width:230px;flex:1;max-width:460px;border:1px solid #ccd9e4;background:var(--surface,#fff);border-radius:8px;padding:5px 8px}.smart-table-search span{font-size:16px;color:#60778a}.smart-table-search input{border:0!important;outline:0!important;box-shadow:none!important;padding:4px 2px!important;margin:0!important;background:transparent!important;width:100%;min-width:0}.smart-table-actions{display:flex;gap:7px;flex-wrap:wrap}.smart-table-btn{border:1px solid #b9cad8;background:#fff;color:#214b6b;border-radius:7px;padding:6px 9px;font-size:10.5px;font-weight:800;cursor:pointer}.smart-table-btn:hover{background:#f0f7fb}.movable-column{cursor:grab;user-select:none}.movable-column:active,.dragging-column{cursor:grabbing}.dragging-column{opacity:.55;background:#dcebf6!important}.smart-column-filters th{position:sticky;top:31px;z-index:2;background:#f5f9fc;padding:4px}.smart-column-filters input{min-width:76px;width:100%;font-size:10px;padding:5px 6px;border:1px solid #c9d6e1;border-radius:6px;background:#fff}.tablewrap[data-smart-table="1"]{border-top-left-radius:0;border-top-right-radius:0}@media(max-width:760px){.smart-table-tools{align-items:stretch}.smart-table-search{max-width:none;width:100%}.smart-table-actions{width:100%}.smart-table-btn{flex:1}.movable-column{cursor:default}.smart-column-filters{display:none}}

.smart-table-tools{position:relative}.smart-column-picker{position:absolute;right:0;top:42px;z-index:40;width:min(360px,calc(100vw - 36px));background:var(--surface,#fff);border:1px solid #c8d6e2;border-radius:10px;box-shadow:0 12px 32px rgba(25,55,80,.18);padding:11px}.smart-column-picker[hidden]{display:none!important}.smart-column-picker-head{display:flex;align-items:center;justify-content:space-between;gap:8px;color:#214b6b}.smart-column-picker-head button{border:0;background:transparent;font-size:22px;line-height:1;cursor:pointer;color:#60778a}.smart-column-picker p{margin:5px 0 9px;font-size:10px;color:#64798a}.smart-column-picker-list{display:grid;grid-template-columns:1fr 1fr;gap:5px 8px;max-height:270px;overflow:auto}.smart-column-choice{display:flex!important;align-items:center;gap:7px;margin:0!important;padding:6px 7px;border:1px solid #e0e8ee;border-radius:7px;background:#fafcfd;font-size:10.5px!important;font-weight:700!important;color:#294c67!important}.smart-column-choice input{width:auto!important;margin:0!important}.smart-column-picker-foot{display:flex;justify-content:flex-end;gap:6px;margin-top:10px}@media(max-width:760px){.smart-column-picker{left:0;right:auto;top:84px}.smart-column-picker-list{grid-template-columns:1fr}}

/* v3.90: filtros múltiples de tablas */
.smart-filter-panel{position:absolute;right:0;top:42px;z-index:41;width:min(520px,calc(100vw - 36px));background:var(--surface,#fff);border:1px solid #c8d6e2;border-radius:10px;box-shadow:0 12px 32px rgba(25,55,80,.18);padding:11px}.smart-filter-panel[hidden]{display:none!important}.smart-filter-panel p{margin:5px 0 9px;font-size:10px;color:#64798a}.smart-filter-builder{display:grid;grid-template-columns:minmax(150px,1fr) minmax(160px,1.3fr) auto;gap:7px;align-items:center}.smart-filter-builder select,.smart-filter-builder input{width:100%;min-width:0;border:1px solid #c9d6e1;border-radius:7px;background:#fff;padding:7px 8px;font-size:11px}.smart-active-filters{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px;min-height:27px;align-items:center}.smart-filter-chip{display:inline-flex;align-items:center;gap:6px;border:1px solid #c7d9e6;background:#f1f7fb;color:#244f6d;border-radius:999px;padding:5px 8px;font-size:10.5px;font-weight:700}.smart-filter-chip button{border:0;background:transparent;color:#60778a;font-size:15px;line-height:1;cursor:pointer;padding:0}.smart-filter-empty{font-size:10.5px;color:#758896;font-style:italic}@media(max-width:760px){.smart-filter-panel{left:0;right:auto;top:84px}.smart-filter-builder{grid-template-columns:1fr}.smart-filter-builder .smart-table-btn{width:100%}}

/* v3.91 · exportación de listas y logo documental */
.smart-table-actions .export-list{background:#f7fbfe}.smart-table-actions .export-list[data-fmt="xlsx"]{border-color:#a8d8bc}.smart-table-actions .export-list[data-fmt="pdf"]{border-color:#e3b4b4}.smart-table-actions .export-list[data-fmt="csv"]{border-color:#c4c8e8}.smart-table-actions .export-list:disabled{opacity:.6;cursor:wait}.export-logo-toggle{display:flex!important;align-items:center;gap:7px;margin:8px 0 2px!important;font-size:11px!important}.export-logo-toggle input{width:auto!important;margin:0!important}

/* v3.92 · barra compacta de listas y seguridad de contraseñas */
.smart-table-tools{gap:8px;margin-bottom:7px;flex-wrap:nowrap}
.smart-table-search{min-width:210px;max-width:none;flex:1 1 360px}
.smart-table-actions{display:flex;align-items:center;gap:5px;flex:0 0 auto;flex-wrap:nowrap}
.smart-table-btn{padding:6px 8px;white-space:nowrap}
.smart-filter-count{display:inline-flex;align-items:center;justify-content:center;min-width:17px;height:17px;padding:0 5px;margin-left:3px;border-radius:999px;background:var(--theme-action,#2f7fa8);color:#fff;font-size:9px}
.smart-table-menu{position:relative}
.smart-export-menu{position:absolute;right:0;top:calc(100% + 5px);z-index:55;min-width:145px;background:var(--surface,#fff);border:1px solid #c8d6e2;border-radius:9px;box-shadow:0 10px 28px rgba(25,55,80,.18);padding:5px}
.smart-export-menu[hidden]{display:none!important}
.smart-export-option{display:block;width:100%;border:0;background:transparent;text-align:left;padding:8px 10px;border-radius:6px;color:#214b6b;font-size:11px;font-weight:800;cursor:pointer}
.smart-export-option:hover{background:#f0f7fb}
.smart-export-option[data-fmt="xlsx"]::before{content:"▦  ";}.smart-export-option[data-fmt="pdf"]::before{content:"▤  ";}.smart-export-option[data-fmt="csv"]::before{content:"≡  ";}
.smart-table-actions .export-list{background:transparent;border:0}
@media(max-width:900px){.smart-table-tools{flex-wrap:wrap}.smart-table-search{flex-basis:100%}.smart-table-actions{width:100%;justify-content:flex-end;flex-wrap:wrap}}
@media(max-width:560px){.smart-table-actions{justify-content:stretch}.smart-table-actions>.smart-table-btn,.smart-table-actions>.smart-table-menu{flex:1}.smart-table-menu>.smart-table-btn{width:100%}}

.password-input-wrap{position:relative;width:100%}
.password-input-wrap>input{padding-right:38px!important;width:100%}
.password-visibility-toggle{position:absolute;right:6px;top:50%;transform:translateY(-50%);width:29px;height:29px;border:0;border-radius:6px;background:transparent;color:#60778a;cursor:pointer;font-size:13px;line-height:1}
.password-visibility-toggle:hover,.password-visibility-toggle.active{background:#eef5f9;color:#214b6b}
.system-modal-backdrop{position:fixed;inset:0;z-index:10050;background:rgba(15,35,52,.34);display:flex;align-items:center;justify-content:center;padding:18px;backdrop-filter:blur(2px)}
.system-modal-backdrop[hidden]{display:none!important}
.system-modal-card{width:min(430px,96vw);background:var(--surface,#fff);border:1px solid #cad7e1;border-radius:14px;box-shadow:0 18px 55px rgba(17,42,62,.24);padding:18px}
.system-modal-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:8px}.system-modal-head h3{margin:0}.system-modal-head .eyebrow{margin:0 0 3px}
.system-modal-close{border:0;background:transparent;color:#60778a;font-size:24px;line-height:1;cursor:pointer;padding:0 3px}
.system-modal-card label{display:block;margin:12px 0 5px}.system-modal-card .compact-actions{justify-content:flex-end;margin-top:14px}.compact-alert{padding:8px 10px;margin:8px 0;font-size:11px}
body.modal-open{overflow:hidden}

/* V3.95 · accesos operativos desplazables y ayuda contextual */
.brand-row{grid-template-columns:minmax(220px,.75fr) minmax(0,760px) minmax(210px,.75fr)}
.header-workflow-shell{width:100%;min-width:0;display:grid;grid-template-columns:26px minmax(0,1fr) 26px;align-items:center;gap:4px;justify-self:center}
.header-workflow-slot{width:100%;max-width:none!important;overflow-x:auto;overflow-y:hidden;justify-content:flex-start!important;scrollbar-width:thin;scroll-behavior:smooth;padding:3px 1px;overscroll-behavior-inline:contain}
.header-workflow-slot::-webkit-scrollbar{height:5px}.header-workflow-slot::-webkit-scrollbar-thumb{background:#b7c7d4;border-radius:99px}.header-workflow-slot .edit-request-card{flex:0 0 auto}
.workflow-scroll-btn{width:26px;height:30px;border:1px solid #d6e1e9;border-radius:8px;background:#f6f9fb;color:var(--dos-navy-deep);font-weight:900;font-size:20px;line-height:1;cursor:pointer;padding:0}.workflow-scroll-btn:disabled{opacity:.25;cursor:default}.workflow-scroll-btn[hidden]{display:none}
.context-help-bubble{position:fixed;left:18px;bottom:18px;z-index:1300;width:min(390px,calc(100vw - 36px));padding:10px 12px;border:1px solid #cbdbe7;border-left:4px solid var(--theme-action,#56bce6);border-radius:10px;background:rgba(255,255,255,.98);box-shadow:0 8px 24px rgba(7,31,58,.16);color:#29465f;opacity:0;transform:translateY(5px);transition:.12s ease;pointer-events:none}.context-help-bubble.show{opacity:1;transform:translateY(0)}.context-help-bubble b{display:block;color:var(--dos-navy-deep);font-size:11px;margin-bottom:2px}.context-help-bubble span{font-size:11.5px;line-height:1.4}
@media(max-width:980px){.brand-row{grid-template-columns:minmax(190px,.65fr) minmax(0,1fr) minmax(160px,.65fr)}.header-workflow-shell{grid-template-columns:22px minmax(0,1fr) 22px}.workflow-scroll-btn{width:22px}}
@media(max-width:680px){.brand-row{grid-template-columns:1fr auto}.header-workflow-shell{grid-column:1/-1;grid-row:2;width:100%}.header-edit-slot{grid-column:auto;grid-row:auto}.context-help-bubble{bottom:72px}}

/* v3.97 · importación segura de Configuración de atención */
.config-import-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap;justify-content:flex-end}
.config-import-actions .btn{white-space:nowrap}
.import-config-shell{align-items:start}
.import-steps .attention-config-step{cursor:default}
.import-note{padding:12px 14px;border:1px solid var(--border,#d8e2ec);border-radius:10px;background:#f7fafc;line-height:1.55}
.import-preview-table{max-height:430px;overflow:auto;margin-top:12px}
.import-preview-table td{vertical-align:top}
.import-state{display:inline-flex;padding:3px 8px;border-radius:999px;font-size:.78rem;font-weight:700}
.import-state.válido,.import-state.valido{background:#e8f7ee;color:#17653a}
.import-state.advertencia{background:#fff4d6;color:#815d00}
.import-state.error{background:#fde8e8;color:#a52626}
.text-error{color:#a52626;font-size:.85rem}.text-warn{color:#815d00;font-size:.85rem}
.import-confirm-form{display:flex;justify-content:flex-end;margin-top:14px}
@media(max-width:760px){.config-import-actions{justify-content:flex-start}.import-preview-table{max-height:none}}

.report-library-grid{display:grid;grid-template-columns:220px minmax(0,1fr);gap:14px;align-items:start}.report-nav{position:sticky;top:120px;padding:12px}.report-nav a{display:flex;justify-content:space-between;gap:10px;padding:9px 10px;border-radius:9px;text-decoration:none;color:var(--theme-text,#17324d)}.report-nav a:hover{background:#eef6fb}.report-admin-note{display:block;margin-top:10px;font-size:11px;color:#60788f}.report-share-users{display:grid;gap:7px;max-height:240px;overflow:auto}.report-share-row{display:grid;grid-template-columns:1fr 210px;gap:10px;align-items:center;padding:7px 8px;border:1px solid #dce7ef;border-radius:9px}.compact-filter-card{padding:12px 14px}.filter-submit{display:flex;gap:8px;align-items:end}.report-meta{display:flex;gap:18px;flex-wrap:wrap;font-size:12px;color:#60788f;margin-bottom:8px}@media(max-width:900px){.report-library-grid{grid-template-columns:1fr}.report-nav{position:static}.report-share-row{grid-template-columns:1fr}}

/* v3.99 · Biblioteca de reportes al estilo Configuración de atención */
.report-config-shell{display:grid;grid-template-columns:225px minmax(0,1fr);gap:14px;align-items:start}.report-config-nav{position:sticky;top:112px}.report-config-content{min-width:0}.report-library-panel{min-height:420px}.report-library-table{max-height:520px}.report-library-table .btn.small{margin-right:4px}
.smart-filter-builder .smart-filter-value-wrap{min-width:0}.smart-filter-builder .smart-filter-value-wrap input{width:100%}.smart-filter-value-hint{display:block;margin-top:3px;font-size:9px;color:#718392}.smart-filter-panel .smart-filter-builder{grid-template-columns:minmax(150px,1fr) minmax(190px,1.4fr) auto}
@media(max-width:900px){.report-config-shell{grid-template-columns:1fr}.report-config-nav{position:static;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.report-config-nav .attention-config-nav-title,.report-config-nav .attention-help-box{grid-column:1/-1}}
@media(max-width:600px){.report-config-nav{grid-template-columns:1fr}.smart-filter-panel .smart-filter-builder{grid-template-columns:1fr}}
/* v3.101: mensajes compactos de filtros y alcance de reportes */
.smart-filter-panel .smart-column-picker-head>div{display:flex;align-items:center;gap:8px;min-width:0;flex-wrap:wrap}
.smart-filter-value-hint{display:inline-flex!important;margin:0!important;padding:2px 7px;border-radius:999px;background:#eef5f9;color:#60788a;font-size:9px;line-height:1.35;max-width:310px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.smart-filter-builder .smart-filter-value-wrap{align-self:center}
.report-scope-strip{display:grid;grid-template-columns:1.05fr 1fr 1.25fr;gap:10px;padding:11px;margin:0 0 6px;border:1px solid #d8e4ec;border-radius:10px;background:#f8fbfd}
.report-scope-strip label{font-size:10.5px}.report-scope-strip select{width:100%}.report-scope-help{font-size:10.5px;color:#60788a;margin:0 0 12px;padding-left:2px}
.app-error-page{background:var(--canvas,#f4f7fa);min-height:100vh}.app-error-shell{max-width:760px;margin:8vh auto;padding:20px}.app-error-card{padding:28px}.app-error-message{font-size:15px;line-height:1.6;color:var(--ink,#17324d)}
@media(max-width:760px){.report-scope-strip{grid-template-columns:1fr}.smart-filter-value-hint{max-width:220px}}
.report-run-error{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:0 0 12px;padding:11px 13px;border-radius:10px}.report-run-error span{flex:1;min-width:220px}

/* V3.107 · archivos parametrizados y logos opcionales */
.empty-logo-preview{min-height:92px;border:1px dashed #b8c9d9;border-radius:12px;display:flex;align-items:center;justify-content:center;color:#6b7f91;background:#f8fafc;font-weight:700}
.evidence-config-layout{display:grid;grid-template-columns:minmax(0,1fr);gap:18px;align-items:start}
.evidence-config-layout>div{min-width:0}.evidence-config-layout h4{margin:0 0 10px}
.evidence-requirements{display:grid;gap:12px;margin-top:10px}.evidence-request-card{border:1px solid #d7e2ec;border-radius:12px;padding:12px;background:#fbfdff}.evidence-request-card.required{border-left:4px solid #b31942}.evidence-request-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;margin-bottom:8px}.evidence-request-head small{display:block;margin-top:3px}.evidence-type-tag{font-size:12px;font-weight:800;color:#0a3161;background:#edf5fb;border-radius:999px;padding:4px 8px;white-space:nowrap}.evidence-existing-type{font-size:12px;color:#49647b;margin-top:5px}.evidence-file-grid{display:grid;grid-template-columns:1fr;gap:8px}
@media(max-width:980px){.evidence-config-layout{grid-template-columns:1fr}}

/* V3.108 · Archivos: evitar solapamientos y mantener cada bloque contenido */
.evidence-config-layout>div{border:1px solid #dbe6ee;border-radius:12px;padding:14px;background:#fff;overflow:hidden}.evidence-config-layout .smart-table-toolbar{display:flex;flex-wrap:wrap;gap:7px;align-items:center}.evidence-config-layout .smart-table-toolbar .smart-search{flex:1 1 320px;min-width:180px}.evidence-config-layout .tablewrap{max-width:100%;overflow:auto}

.status-pill.status-info{background:#eaf2ff;color:#174a7e;border:1px solid #c9dcf5}

/* V3.108 · Archivos y evidencias: bloques verticales, contenidos y sin solapamientos */
.evidence-config-layout{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:16px!important}
.evidence-config-layout>div{min-width:0;width:100%;box-sizing:border-box;border:1px solid #dbe6ee;border-radius:12px;padding:14px;background:#fff;overflow:hidden}
.evidence-config-layout .tablewrap{width:100%;max-width:100%;overflow-x:auto;overflow-y:auto}
.evidence-config-layout table{width:100%;min-width:720px}
.evidence-config-layout .smart-table-toolbar{display:grid!important;grid-template-columns:minmax(220px,1fr) repeat(4,max-content);gap:7px;align-items:center;width:100%;box-sizing:border-box}
.evidence-config-layout .smart-table-toolbar .smart-search{min-width:0!important;width:100%!important}
.evidence-config-layout .attention-editor-box{margin-top:12px;max-width:100%;box-sizing:border-box}
.evidence-config-layout .form-grid{min-width:0}
.evidence-config-layout .form-grid>*{min-width:0}
.evidence-config-layout input,.evidence-config-layout select{max-width:100%;box-sizing:border-box}
@media(max-width:1180px){.evidence-config-layout .smart-table-toolbar{grid-template-columns:minmax(0,1fr);}.evidence-config-layout .smart-table-toolbar>*{max-width:100%}.evidence-config-layout .smart-table-toolbar .btn{justify-self:start}}

/* V3.112 · verificación AlerTAR */
.alertar-checks{display:grid;gap:7px;margin:8px 0 12px}.alertar-bubble{padding:9px 11px;border-radius:10px;display:flex;flex-direction:column;gap:2px;font-size:12px}.alertar-bubble.yellow{background:#fff4b8;border:1px solid #d7b627;color:#594700}.alertar-bubble.red{background:#ffe0e4;border:1px solid #c92b46;color:#781127}.alertar-bubble.orange{background:#ffe2bd;border:1px solid #e68a1b;color:#6b3c00}
/* AlerTAR: reautenticación obligatoria por cada visualización sensible. */
.alertar-auth-backdrop{background:rgba(7,31,58,.42);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
.alertar-auth-card{max-width:460px}.alertar-auth-card label{display:block;margin:12px 0}.alertar-auth-card input{width:100%}
.alertar-checks{display:grid;gap:8px;margin:10px 0}.alertar-bubble{padding:10px 12px;border-radius:11px;display:flex;align-items:center;justify-content:space-between;gap:10px}.alertar-bubble.yellow{background:#fff4b8;border:1px solid #e0bd28;color:#5a4700}.alertar-bubble.red{background:#ffe0e4;border:1px solid #c92b46;color:#7b1025}.alertar-bubble.orange{background:#ffe2bd;border:1px solid #ee8a19;color:#6c3c00}

/* v3.116: verificación AlerTAR separada y evidencias móvil corregidas */
.build-version{font-size:.72rem;font-weight:700;background:#eaf2fb;color:#173b65;border:1px solid #b8cee3;border-radius:999px;padding:3px 7px;white-space:nowrap}

.match-sphere{display:inline-block;width:18px;height:18px;border-radius:50%;vertical-align:middle;box-shadow:inset 0 0 0 1px rgba(0,0,0,.18)}.match-sphere.yellow{background:#f4cf32}.match-sphere.red{background:#d92d4b}.match-sphere.orange{background:#f28b1d}.match-sphere.gray{background:#9aa8b6}.alertar-legend{display:flex;gap:18px;align-items:center;flex-wrap:wrap;margin:0 0 10px;font-size:12px}.alertar-legend span{display:flex;align-items:center;gap:6px}
/* v3.119 - AlerTAR: fondo siempre desenfocado durante reautenticación y visualización sensible */
.alertar-auth-backdrop{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:rgba(7,31,58,.58)!important}
.alertar-results-modal{width:min(1320px,94vw);max-width:1320px;max-height:88vh;overflow:auto}

/* AlerTAR v3.120: el desenfoque pertenece al listado, no a una pantalla modal de resultados. */
.alertar-inline-results{scroll-margin-top:88px}
.alertar-auth-backdrop{backdrop-filter:none!important;-webkit-backdrop-filter:none!important;background:rgba(7,31,58,.26)!important}
.alertar-sensitive-partial{display:inline-flex;align-items:baseline;gap:0;max-width:100%}
.alertar-sensitive-blurred{display:inline-block;filter:blur(5px);user-select:none;pointer-events:none}
.alertar-sensitive-partial:hover .alertar-sensitive-blurred,.alertar-sensitive-partial:focus .alertar-sensitive-blurred,.alertar-sensitive-partial:focus-visible .alertar-sensitive-blurred{filter:blur(5px)!important;user-select:none!important}

/* v3.121: AlerTAR list blur follows configuration, independent of role permission. */
.alertar-inline-results .alertar-sensitive-full{display:inline-block;filter:blur(5px);-webkit-filter:blur(5px);user-select:none;pointer-events:none}

/* v3.122: AlerTAR permanece desenfocado por defecto. Solo roles con permiso
   de datos identificables pueden revelarlo al pasar el cursor o enfocar. */
.alertar-inline-results .alertar-sensitive-full.reveal-on-hover{pointer-events:auto;cursor:help;transition:filter .14s ease}
.alertar-inline-results .alertar-sensitive-full.reveal-on-hover:hover,
.alertar-inline-results .alertar-sensitive-full.reveal-on-hover:focus,
.alertar-inline-results .alertar-sensitive-full.reveal-on-hover:focus-visible{filter:none!important;-webkit-filter:none!important;user-select:text!important;outline:none}


/* v3.124 · roles y archivos: organización y asignación explícita */
.permission-searchbar{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:8px;align-items:center;margin:14px 0;padding:10px 12px;background:#f5f9fc;border:1px solid #d9e5ee;border-radius:12px}.permission-searchbar input{width:100%}.permission-groups{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.permission-group{border:1px solid #dbe6ee;border-radius:12px;padding:12px;background:#fbfdff}.permission-group-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px}.permission-group-head h3{margin:0;font-size:14px}.permission-group-head span{font-size:10px;color:#667f92;background:#edf4f8;padding:3px 7px;border-radius:999px}.permission-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;margin:0!important}.permission-item[hidden],.permission-group[hidden]{display:none!important}
.evidence-assignment-helper{border:1px solid #bcd6e8;border-radius:12px;background:#f7fbfe;padding:13px;margin-bottom:14px}.evidence-helper-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.evidence-helper-head h4{margin:0 0 4px!important}.evidence-helper-head p{margin:0;color:#587185;font-size:12px;line-height:1.45}.evidence-count{white-space:nowrap;background:#e7f3fb;color:#174a72;border-radius:999px;padding:4px 9px;font-size:11px;font-weight:800}.compact-alert{padding:9px 11px;margin:10px 0}.evidence-picker-toolbar{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:7px;margin:10px 0}.evidence-quick-picker{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;max-height:240px;overflow:auto;padding:2px}.evidence-pick-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px;padding:9px;border:1px solid #dce7ef;border-radius:9px;background:#fff;cursor:pointer}.evidence-pick-row small{display:block;color:#6b8192;font-size:10px}.evidence-pick-row em{font-size:10px;font-style:normal;color:#5c7181}.evidence-pick-row:has(input:disabled){opacity:.58;cursor:default}.evidence-request-search{margin:-3px 0 9px}.evidence-request-search input{width:100%}
@media(max-width:980px){.permission-groups,.evidence-quick-picker{grid-template-columns:1fr}.permission-grid{grid-template-columns:1fr!important}.evidence-picker-toolbar{grid-template-columns:1fr}.permission-searchbar{grid-template-columns:auto 1fr}.permission-searchbar .btn{grid-column:2}}

/* v3.125 · roles compactos y estado visible de documentos ya solicitados */
.permission-groups-compact{display:flex!important;flex-wrap:wrap;gap:8px;align-items:flex-start}
.permission-groups-compact .permission-group{flex:1 1 31%;min-width:285px;padding:8px 9px;border-radius:9px}
.permission-groups-compact .permission-group-head{margin-bottom:5px}
.permission-groups-compact .permission-group-head h3{font-size:12.5px}
.permission-groups-compact .permission-group-head span{font-size:9px;padding:2px 6px}
.permission-groups-compact .permission-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:5px!important}
.permission-groups-compact .permission-item{min-height:30px;padding:5px 7px;font-size:11px}
.permission-searchbar{margin:8px 0!important;padding:7px 9px!important}
.evidence-pick-row:has(input:checked:disabled){opacity:1;background:#eef8f1;border-color:#9fd3ad}
.evidence-pick-row:has(input:checked:disabled) em{color:#1d6f38;font-weight:800}
@media(max-width:1180px){.permission-groups-compact .permission-group{flex-basis:48%}}
@media(max-width:760px){.permission-groups-compact .permission-group{flex-basis:100%;min-width:0}.permission-groups-compact .permission-grid{grid-template-columns:1fr!important}}

/* Administración de accesos compacta v3.126 */
.access-admin-layout{display:grid;grid-template-columns:245px minmax(0,1fr);gap:14px;align-items:start}.access-admin-nav{padding:10px;position:sticky;top:84px}.access-nav-title{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.04em;margin:2px 4px 8px;color:#314e67}.access-nav-step{display:flex;align-items:center;gap:8px;padding:7px 8px;border-radius:8px;text-decoration:none;color:var(--text,#17324d);margin-bottom:4px}.access-nav-step span{display:grid;place-items:center;width:24px;height:24px;border-radius:7px;background:#eaf3f9;font-weight:800}.access-nav-step.active{background:#e7f5fb;border:1px solid #73c6e8}.access-nav-actions{margin:9px 0}.access-nav-actions .btn{width:100%;box-sizing:border-box;text-align:center}.access-record-list{display:flex;flex-direction:column;gap:5px;margin-top:8px;max-height:430px;overflow:auto}.access-record-card{display:flex;flex-direction:column;gap:2px;border:1px solid #dce7ef;border-radius:8px;padding:7px 8px;text-decoration:none;color:#17324d;background:#fff}.access-record-card b{font-size:11.5px}.access-record-card small{font-size:9.5px;color:#6d8191}.access-record-card:hover,.access-record-card.selected{border-color:#55bce7;background:#f0f9fd}.access-admin-work{min-width:0;padding:14px}.access-work-head{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #e3edf3;padding-bottom:8px;margin-bottom:10px}.access-work-head h3{margin:0}.compact-form-grid{gap:8px!important}.compact-form-grid label{font-size:10px}.compact-form-grid input,.compact-form-grid select{padding:7px 8px}.compact-permission-search{margin:9px 0!important;padding:7px 8px!important}.access-permission-groups{gap:6px!important}.access-permission-groups .permission-group{min-width:235px!important;padding:7px!important}.access-permission-groups .permission-grid{gap:4px!important}.access-permission-groups .permission-item{min-height:27px!important;padding:4px 6px!important;font-size:10.5px!important}.sticky-form-actions{position:sticky;bottom:0;background:rgba(255,255,255,.96);padding:8px 0 2px;z-index:5}.span-2{grid-column:span 2}.source-status-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:12px}.source-status-summary .card{display:flex;justify-content:space-between;align-items:center;padding:12px}.source-status-summary span{font-size:11px;color:#60778a}.status-pill{display:inline-block;border-radius:999px;padding:3px 8px;font-size:10px;font-weight:800;background:#edf3f7}.status-ok{background:#dcf6e5;color:#14713b}.status-error{background:#ffe0e3;color:#a3152d}.status-actualizando{background:#fff0c2;color:#825e00}.status-detail{max-width:420px;white-space:normal}.evidence-requested-check input[disabled]:checked{accent-color:#198754;opacity:1}
@media(max-width:900px){.access-admin-layout{grid-template-columns:1fr}.access-admin-nav{position:static}.access-record-list{max-height:180px}.source-status-summary{grid-template-columns:1fr}.span-2{grid-column:auto}}
/* v3.128 fuentes, filtros regionales y cupones multiservicio */
.mini-label{display:block;font-size:9.5px;font-weight:800;color:#60778a;margin:8px 2px 3px;text-transform:uppercase;letter-spacing:.04em}
.user-country-heading{font-size:9px;font-weight:900;text-transform:uppercase;letter-spacing:.06em;color:#5e7588;background:#eef5f9;border-radius:6px;padding:4px 7px;margin:5px 0 1px}
.copy-role-panel{display:flex;align-items:center;gap:8px;background:#eef8fc;border:1px solid #b9dceb;border-radius:8px;padding:8px;margin-bottom:9px}.copy-role-panel b{font-size:11px}.copy-role-panel select{min-width:220px;padding:6px}
.inline-actions{display:flex;gap:6px;align-items:center}.field-help{font-size:9px;color:#6e8192;margin-top:3px;display:block}

.access-record-card[hidden],.user-country-heading[hidden],.permission-item[hidden],.permission-group[hidden]{display:none!important}

/* v3.129 · selección compacta y clara */
.service-map-picker{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:8px;margin-top:6px}.service-map-picker.compact{grid-template-columns:repeat(auto-fit,minmax(165px,1fr));min-width:360px}.service-map-option{display:grid;grid-template-columns:22px 1fr 24px;gap:8px;align-items:center;border:1px solid #d7e2ec;border-radius:10px;padding:8px 10px;background:#fff;cursor:pointer}.service-map-option:hover{border-color:#7bb7d8;background:#f7fbfd}.service-map-option input{width:18px;height:18px;margin:0}.service-map-option small{display:block;color:#66788a;font-size:.72rem}.service-map-option .check-indicator{opacity:0;font-weight:900;color:#087a50}.service-map-option:has(input:checked){border-color:#5fcf9b;background:#eefbf5}.service-map-option:has(input:checked) .check-indicator{opacity:1}.referral-map-guide{display:flex;justify-content:space-between;align-items:center;gap:15px}.compact-filter{max-width:320px}.provider-service-toolbar{display:flex;gap:12px;align-items:center;margin:0 0 10px}.provider-service-toolbar input{max-width:320px}.provider-service-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(290px,1fr));gap:8px;margin:0 0 14px}.provider-service-row{display:flex;align-items:center;justify-content:space-between;gap:14px;border:1px solid #d7e2ec;border-radius:10px;padding:10px 12px;background:#fff;cursor:pointer}.provider-service-row:hover{background:#f7fbfd;border-color:#8dbbd4}.provider-service-copy small{display:block;color:#708090;font-size:.74rem;margin-top:2px}.switch-control{position:relative;width:42px;height:24px;flex:0 0 42px}.switch-control input{opacity:0;width:0;height:0;position:absolute}.switch-slider{position:absolute;inset:0;border-radius:20px;background:#cbd5df;transition:.15s}.switch-slider:before{content:'';position:absolute;width:18px;height:18px;left:3px;top:3px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #0003;transition:.15s}.switch-control input:checked+.switch-slider{background:#149b6b}.switch-control input:checked+.switch-slider:before{transform:translateX(18px)}@media(max-width:800px){.provider-service-toolbar{align-items:stretch;flex-direction:column}.provider-service-toolbar input{max-width:none}.service-map-picker,.service-map-picker.compact,.provider-service-list{grid-template-columns:1fr}.service-map-picker.compact{min-width:0}}

/* v3.131 · fuentes y relación Tipo de referencia → servicios */
.source-frequency-card{display:flex;align-items:end;justify-content:space-between;gap:18px;margin-bottom:14px}.source-frequency-card h3{margin:0 0 4px}.source-frequency-form{display:flex;gap:10px;align-items:end}.source-frequency-form label{min-width:150px}.referral-inline-panel{margin-top:18px;padding-top:16px;border-top:1px solid var(--border,#d9e4ec)}.referral-country-form{max-width:300px;margin:10px 0 12px}.referral-inline-list{display:grid;gap:8px}.referral-inline-row{display:grid;grid-template-columns:minmax(210px,1.2fr) minmax(380px,3fr) auto;gap:12px;align-items:center;padding:10px;border:1px solid #d9e4ec;border-radius:10px;background:#fbfdff}.referral-inline-name{display:flex;flex-direction:column;gap:2px}.referral-inline-name small{color:#647789}.referral-inline-services{display:flex;gap:7px;flex-wrap:wrap}.service-chip-check{display:inline-flex;align-items:center;gap:6px;border:1px solid #cfdae4;border-radius:999px;padding:6px 9px;background:white;cursor:pointer}.service-chip-check:has(input:checked){background:#e5f7ed;border-color:#6fd59a}.service-chip-check input{margin:0}.referral-example{margin-top:10px}.status-detail{max-width:420px;overflow-wrap:anywhere}@media(max-width:900px){.source-frequency-card,.source-frequency-form{align-items:stretch;flex-direction:column}.referral-inline-row{grid-template-columns:1fr}.referral-inline-services{min-width:0}}

/* v3.132 · administración compacta de tipos de referencia */
.referral-admin-country{max-width:330px;margin:0 0 12px}.referral-admin-layout{display:grid;grid-template-columns:330px minmax(0,1fr);gap:14px;align-items:start}.referral-master-list{border:1px solid #d9e4ec;border-radius:10px;background:#f8fbfd;padding:10px}.referral-master-actions{display:flex;justify-content:flex-end;margin-bottom:8px}.referral-search{width:100%;margin-bottom:8px}.referral-master-rows{display:grid;gap:6px;max-height:520px;overflow:auto}.referral-master-row{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:9px 10px;border:1px solid #dbe5ed;border-radius:9px;background:#fff;color:var(--ink);text-decoration:none}.referral-master-row:hover{border-color:#8fbfd8;background:#f4faff}.referral-master-row.selected{border-color:#4eb6e2;background:#eaf7fd;box-shadow:inset 3px 0 0 #1595cf}.referral-master-row div{min-width:0}.referral-master-row b{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:11px}.referral-master-row small{display:block;color:#718392;font-size:9px;margin-top:2px}.source-badge{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:4px 8px;font-size:8.5px;font-weight:900;white-space:nowrap}.source-badge.simo{background:#e7f5ff;color:#0a5e8d;border:1px solid #a9d5ed}.source-badge.manual{background:#fff4d8;color:#765000;border:1px solid #efd287}.referral-editor{border:1px solid #d9e4ec;border-radius:10px;background:#fff;padding:13px}.referral-editor-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;padding-bottom:10px;margin-bottom:10px;border-bottom:1px solid #e3ebf1}.referral-editor-head h4{margin:0}.referral-service-table{margin-top:6px;border:1px solid #d9e4ec;border-radius:9px;overflow:hidden}.referral-service-table-head,.referral-service-line{display:grid;grid-template-columns:minmax(170px,1fr) minmax(130px,.8fr) 70px;gap:10px;align-items:center;padding:8px 10px}.referral-service-table-head{background:#edf5fa;font-size:9px;font-weight:900;color:#24445d;text-transform:uppercase}.referral-service-line{margin:0;border-top:1px solid #edf1f4;background:#fff;cursor:pointer}.referral-service-line:hover{background:#f8fbfd}.referral-service-line span{font-weight:700;font-size:10.5px}.referral-service-line small{color:#718392;font-size:9px}.referral-service-line input{width:18px;height:18px;justify-self:center}.compact-note{margin:6px 0 0}.compact-empty{padding:16px}.referral-admin-panel .compact-form{max-width:none}@media(max-width:900px){.referral-admin-layout{grid-template-columns:1fr}.referral-master-rows{max-height:280px}.referral-service-table-head,.referral-service-line{grid-template-columns:minmax(130px,1fr) minmax(100px,.8fr) 58px}}

/* v3.134 · catálogo compacto + cupón multiservicio */
.service-admin-layout{display:grid;grid-template-columns:minmax(250px,32%) minmax(0,1fr);gap:14px;align-items:start}
.service-master-list{border:1px solid var(--border,#d8e3ec);border-radius:12px;padding:10px;background:#f9fbfd;max-height:570px;overflow:auto}
.service-master-list .full-width{display:block;text-align:center;width:100%;box-sizing:border-box;margin-bottom:8px}
.service-search{width:100%;margin-bottom:8px}
.service-master-rows{display:grid;gap:6px}
.service-master-row{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:9px 10px;border:1px solid #dbe6ee;border-radius:9px;background:white;color:inherit;text-decoration:none}
.service-master-row:hover,.service-master-row.selected{border-color:#6fb9dc;background:#edf8fd}
.service-master-row div{min-width:0}.service-master-row b{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.service-master-row small{display:block;color:#65798a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.service-editor-pane{margin:0;min-height:280px}
.referral-service-table-head.four,.referral-service-line.four{grid-template-columns:minmax(170px,1fr) minmax(150px,.8fr) 80px minmax(130px,.7fr)}
.referral-service-line.four select{min-width:125px;padding:6px 8px}
.coupon-package-card{border-left:4px solid #2e8bc0}
.coupon-package-list{display:grid;gap:7px;margin-top:10px}
.coupon-package-row{display:grid;grid-template-columns:minmax(220px,1fr) 155px 150px;gap:10px;align-items:center;padding:10px;border:1px solid #dce6ee;border-radius:10px;background:#fff}
.coupon-package-row.done{background:#f3fbf6}.coupon-package-row.unavailable{background:#f7f8fa}
.package-service-copy b,.package-service-copy small{display:block}.package-service-copy small{color:#667b8d;margin-top:2px}
.package-status{display:inline-flex;align-items:center;padding:5px 10px;border-radius:999px;font-weight:700;font-size:.82rem;background:#eef3f7}
.package-status.completado{background:#dcf7e5;color:#176b38}.package-status.parcial{background:#fff1c9;color:#805b00}.package-status.pendiente{background:#eef3f7;color:#415568}
@media(max-width:900px){.service-admin-layout{grid-template-columns:1fr}.service-master-list{max-height:300px}.coupon-package-row{grid-template-columns:1fr}.referral-service-table-head.four,.referral-service-line.four{grid-template-columns:1fr 1fr}.referral-service-table-head.four span:nth-child(3),.referral-service-table-head.four span:nth-child(4){display:none}}

/* v3.134: hierarchy Tipo de Referencia -> Servicios */
.referral-order-note{margin:0 0 12px;padding:10px 12px;border:1px solid #bcdced;background:#f2f9fd;border-radius:9px;color:#284b63;font-size:10px}.stage-title{display:flex;align-items:center;gap:8px;margin:0 0 8px}.stage-title.inline{display:inline-flex;margin-bottom:5px}.stage-title div{display:grid;gap:1px}.stage-title small{font-weight:500;color:#6f8290}.stage-number{display:inline-flex;width:24px;height:24px;border-radius:50%;align-items:center;justify-content:center;background:#1595cf;color:white;font-weight:900;font-size:11px;flex:0 0 24px}.referral-type-stage>input{margin-top:4px}.referral-services-stage{padding-top:4px}.referral-admin-panel .panel-heading{margin-bottom:8px}
/* v3.135 · contexto maestro País -> Tipo de Referencia -> Proveedor */
.service-scope-bar{display:flex;align-items:end;gap:14px;justify-content:space-between;background:#f5f9fc;border:1px solid #d9e6f0;border-radius:10px;padding:10px 12px;margin:0 0 14px}.service-scope-bar form{min-width:320px;max-width:560px;flex:1}.service-scope-bar label{display:grid;gap:5px;font-weight:700}.service-scope-bar small{color:#536b7e}.attention-context-summary{display:flex;flex-wrap:wrap;gap:8px 18px}.attention-context-grid select:disabled{background:#eef2f5;color:#7b8791}
@media(max-width:900px){.service-scope-bar{display:block}.service-scope-bar form{min-width:0;max-width:none}.service-scope-bar small{display:block;margin-top:8px}}

/* v3.137 - Separación clara entre relación Tipo→Servicios y configuración del servicio */
.attention-catalog-link{display:block;margin-top:8px;font-weight:700;color:#0b5d87;text-decoration:none}
.attention-next-step{background:#0b6fa4;color:#fff}
.advanced-config{padding:0!important;overflow:hidden}
.advanced-config summary{cursor:pointer;padding:12px 14px;display:flex;gap:8px;align-items:center;justify-content:space-between;background:#f7fafc}
.advanced-config summary span{font-size:.82rem;color:#5f7386;font-weight:400}
.advanced-config-body{padding:14px;border-top:1px solid #dbe6ef}
.referral-order-note{line-height:1.45}
@media(max-width:900px){.advanced-config summary{align-items:flex-start;flex-direction:column}}

.selected-referral-summary{display:flex;align-items:center;gap:10px;padding:10px 12px;border:1px solid #cfe0eb;border-radius:10px;background:#f7fbfd}.selected-referral-summary div{display:flex;flex-direction:column;gap:2px}.selected-referral-summary small{color:#5f7180}.referral-select-guidance{min-height:220px;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center}

/* V3.142 · previsualización compacta del formulario */
.form-preview-box{margin:12px 0;border:1px solid #b9d8ea;background:#f8fcff}
.form-preview-box>summary{cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:14px;padding:12px 14px;list-style:none}
.form-preview-box>summary::-webkit-details-marker{display:none}
.form-preview-box>summary span{font-size:12px;color:#60758a;font-weight:500}
.form-preview-body{border-top:1px solid #d7e7f1;padding:14px;background:#fff}
.preview-header{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;margin-bottom:12px;padding-bottom:10px;border-bottom:1px solid #e4edf3}
.preview-header small{color:#60758a;text-transform:uppercase;letter-spacing:.04em}.preview-header h4{margin:3px 0 2px}.preview-header p{margin:0;color:#60758a;font-size:12px}
.preview-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 12px}
.preview-field{display:flex;flex-direction:column;gap:5px;font-size:12px;font-weight:700}.preview-field.span-2{grid-column:1/-1}.preview-field>span{color:#17324d}.preview-field>small{font-size:10px;color:#7a8b9a;font-weight:500}
.preview-field input,.preview-field select,.preview-field textarea{width:100%;box-sizing:border-box;background:#f7f9fb;color:#55697c;border:1px solid #cbd9e3;border-radius:7px;padding:8px 9px;opacity:1}.required-mark{color:#b61f43}
@media(max-width:780px){.preview-grid{grid-template-columns:1fr}.preview-field.span-2{grid-column:auto}.form-preview-box>summary{align-items:flex-start;flex-direction:column}}
/* v3.144: vista previa funcional */
.functional-preview-box .preview-field input,.functional-preview-box .preview-field select,.functional-preview-box .preview-field textarea{background:#fff;color:#17324d;cursor:text}
.functional-preview-box .preview-field select{cursor:pointer}.functional-preview-box .preview-field input:required,.functional-preview-box .preview-field select:required,.functional-preview-box .preview-field textarea:required{border-left:3px solid #b31942}
.preview-actions{margin-top:14px;align-items:center}.preview-actions small{max-width:620px}
.catalog-inactive-toggle{align-self:end;margin-bottom:3px}
/* Vista previa funcional: validación v3.145 */
.functional-preview-box .preview-invalid{border:2px solid #c62845!important;box-shadow:0 0 0 2px rgba(198,40,69,.10)!important;background:#fff8f9!important}
.functional-preview-box #previewValidationSummary ul{margin:.4rem 0 0 1.25rem;padding:0}

.dropdown-group-title{padding:10px 14px 5px;font-size:11px;font-weight:800;letter-spacing:.07em;text-transform:uppercase;color:#6b7f93;border-top:1px solid #e5edf5;margin-top:4px}.dropdown-subitem{padding-left:26px!important;position:relative}.dropdown-subitem:before{content:"";position:absolute;left:14px;top:50%;width:5px;height:5px;border-radius:50%;background:#8aa5bd;transform:translateY(-50%)}
.catalog-card-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px}.catalog-record-card{border:1px solid #d9e5ef;border-radius:12px;padding:14px;background:#fff;display:flex;align-items:center;justify-content:space-between;gap:12px}.catalog-record-card.active{border-color:#56bce6;box-shadow:0 0 0 2px rgba(86,188,230,.12)}.catalog-record-card .meta{display:flex;flex-direction:column;gap:2px;min-width:0}.catalog-record-card .meta b{font-size:14px}.catalog-record-card .meta small{color:#60758b}.catalog-card-actions{display:flex;gap:6px;flex-wrap:wrap}.btn-mini.danger{background:#fff0f1;color:#a61932;border:1px solid #efbcc5}.catalog-toolbar{display:flex;gap:10px;align-items:center;justify-content:space-between;margin-bottom:12px}.catalog-toolbar input{max-width:420px}.security-policy-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}.security-policy-card{border:1px solid #dce6ef;border-radius:12px;padding:14px;background:#fff}.totp-code{font-family:monospace;letter-spacing:.12em;font-size:1.1rem}

.nested-menu{position:relative}.nested-menu-trigger{width:100%;border:0;background:#eef5fb;text-align:left;padding:9px 14px;color:#17324d!important;font:inherit;font-weight:700;display:flex;justify-content:space-between;cursor:pointer;border-left:3px solid #56bce6}.nested-menu-trigger:hover,.nested-menu:focus-within>.nested-menu-trigger{background:#dcecf8;color:#0a3161!important}.nested-menu-panel{display:none;position:absolute;left:100%;top:0;min-width:255px;background:#fff;border:1px solid #dce6ef;border-radius:8px;box-shadow:0 12px 30px rgba(11,42,72,.16);z-index:1000;padding:6px}.nested-menu:hover>.nested-menu-panel,.nested-menu:focus-within>.nested-menu-panel{display:block}.nested-menu-panel a{display:block;white-space:nowrap}

.internal-coupon-panel{margin-top:18px;padding:16px;border:1px solid #d8e5ef;border-radius:12px;background:#f8fbfd}.internal-coupon-panel h3{margin:0 0 5px;color:#17324d}
/* v3.150: nested menu legibility and field editor reliability */
.dropdown .nested-menu-trigger{background:#e9f3fb!important;color:#0a3161!important;border-left:4px solid #2f9fd1!important;text-shadow:none!important;opacity:1!important}
.dropdown .nested-menu-trigger:hover,.dropdown .nested-menu:focus-within>.nested-menu-trigger{background:#d7eafa!important;color:#062a54!important}
.inline-action-form{display:inline-flex;margin:0 0 0 4px;vertical-align:middle}
.inline-action-form .btn-mini{margin:0}
.attention-editor-box.editor-active{border:2px solid #56bce6;background:#f7fcff;box-shadow:0 0 0 3px rgba(86,188,230,.12)}
#fieldEditor{scroll-margin-top:180px}
/* v3.151 · catálogos de preguntas más claros y navegables */
.catalog-selector-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:10px;margin:12px 0 14px}.catalog-selector-card{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border:1px solid #c9d9e7;border-radius:12px;background:#fff;color:#0d355d;text-decoration:none}.catalog-selector-card:hover,.catalog-selector-card.active{border-color:#45a8d8;background:#eef8fd;box-shadow:0 0 0 2px rgba(69,168,216,.08)}.catalog-selector-card span{display:flex;flex-direction:column;gap:4px}.catalog-selector-card small{font-size:11px;color:#60758a;font-weight:500}.catalog-selector-card em{font-size:11px;font-style:normal;background:#e8f1f7;border-radius:999px;padding:4px 8px;white-space:nowrap}.catalog-link{display:flex;flex-direction:column;gap:2px;color:#0d5b8f;text-decoration:none;font-weight:700}.catalog-link small{font-weight:600;color:#4f7793}.catalog-link:hover{text-decoration:underline}.options-table .table-actions{min-width:190px}

/* v3.152: lectura clara de herencia Global -> País -> Proveedor */
.effective-change-summary{margin:10px 0 12px;padding:10px 12px;border:1px solid #bfd4e7;border-radius:10px;background:#f7fbff;color:#123b62}
.effective-change-summary>div{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.effective-change-summary>div>span{background:#e7f2fb;border-radius:999px;padding:3px 8px;font-size:.78rem;font-weight:700}
.effective-change-summary small{display:block;margin-top:5px;color:#587089}
.effective-change-summary details{margin-top:7px}
.excluded-chip-list{display:flex;flex-wrap:wrap;gap:6px;margin-top:7px}
.excluded-chip-list>span,.change-chip{display:inline-block;border-radius:999px;padding:3px 8px;background:#fff3d8;border:1px solid #efd08a;font-size:.76rem;margin:1px 3px 1px 0;white-space:nowrap}
.field-difference-cell{min-width:215px;max-width:330px}


/* v3.153 - Opciones de preguntas: panel maestro/detalle y herencia visible */
.options-workspace{display:grid;grid-template-columns:minmax(240px,30%) 1fr;gap:14px;align-items:start}
.options-catalog-panel,.options-editor-panel{border:1px solid #d9e5ef;border-radius:12px;background:#fff;padding:12px}
.options-catalog-panel h4,.options-editor-panel h4{margin:0 0 6px}
.options-catalog-list{display:flex;flex-direction:column;gap:8px;margin-top:10px}
.options-catalog-item{position:relative;display:flex;flex-direction:column;gap:3px;padding:10px 38px 10px 11px;border:1px solid #cddcea;border-radius:10px;text-decoration:none;color:var(--text,#17324d);background:#fbfdff}
.options-catalog-item:hover{border-color:#7abfe3;background:#f5fbff}
.options-catalog-item.active{border-color:#44afe0;background:#eaf7fd;box-shadow:inset 3px 0 0 #1598d0}
.options-catalog-title{font-weight:750;font-size:.92rem}
.options-catalog-fields{font-size:.76rem;color:#60758a;line-height:1.25}
.options-catalog-count{position:absolute;right:9px;top:9px;min-width:24px;padding:2px 6px;border-radius:999px;background:#eaf1f7;text-align:center;font-size:.72rem;font-weight:700}
.options-scope-header{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;padding-bottom:10px;border-bottom:1px solid #e4edf4}
.scope-kicker{font-size:.7rem;text-transform:uppercase;letter-spacing:.08em;color:#63798c;font-weight:750}
.scope-badge{display:inline-flex;align-items:center;padding:5px 9px;border-radius:999px;font-size:.74rem;font-weight:750;background:#eef4f8;color:#24445f}
.scope-proveedor{background:#e6f7ed;color:#166534}
.scope-país,.scope-pais{background:#fff2cf;color:#7b5700}
.scope-global{background:#eaf2ff;color:#164e8f}
.options-effective-list{display:flex;flex-direction:column;gap:7px;margin:11px 0}
.option-effective-row{display:grid;grid-template-columns:42px 1fr auto;gap:10px;align-items:center;border:1px solid #dce7ef;border-radius:10px;padding:9px 10px;background:#fff}
.option-effective-row.option-disabled{background:#fff8f8;border-style:dashed;opacity:.82}
.option-order{width:32px;height:32px;display:grid;place-items:center;border-radius:8px;background:#eef5fa;font-weight:750;color:#31506b}
.option-label{font-weight:720;margin-bottom:3px}
.option-meta{display:flex;gap:6px;align-items:center;flex-wrap:wrap}
.option-meta code{font-size:.74rem;background:#f1f5f8;padding:2px 5px;border-radius:5px;color:#496176}
.option-differences{display:flex;gap:5px;flex-wrap:wrap;margin-top:5px}
.option-differences span{font-size:.72rem;background:#f7f0ff;color:#65408c;border-radius:999px;padding:2px 7px}
.option-actions{display:flex;gap:5px;align-items:center;flex-wrap:wrap;justify-content:flex-end}
@media(max-width:900px){
  .options-workspace{grid-template-columns:1fr}
  .options-catalog-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:600px){
  .options-catalog-list{grid-template-columns:1fr}
  .option-effective-row{grid-template-columns:36px 1fr}
  .option-actions{grid-column:1/-1;justify-content:flex-start;padding-left:46px}
}

/* v3.153 - Cupones internos */
.internal-coupon-status{display:flex;justify-content:space-between;align-items:center;gap:16px}
.coupon-mode-badge{padding:7px 11px;border-radius:999px;font-weight:800;font-size:.76rem}
.coupon-mode-badge.enabled{background:#dcf7e6;color:#176036}
.coupon-mode-badge.disabled{background:#fff0d6;color:#875b00}
.internal-coupon-grid{display:grid;grid-template-columns:minmax(320px,.9fr) minmax(420px,1.1fr);gap:14px;margin:14px 0}
.search-row{display:grid;grid-template-columns:1fr auto;gap:8px}
.person-result-list{display:flex;flex-direction:column;gap:7px;margin-top:10px;max-height:430px;overflow:auto}
.person-result{display:flex;flex-direction:column;gap:2px;border:1px solid #d9e5ef;border-radius:9px;padding:9px 10px;text-decoration:none;color:inherit;background:#fff}
.person-result:hover,.person-result.active{border-color:#59b7df;background:#eef9fd}
.person-result span{font-size:.77rem;color:#61778b}
.selected-person-card{display:flex;flex-direction:column;gap:4px;border:1px solid #cce5d6;background:#f3fbf6;border-radius:10px;padding:11px;margin-bottom:12px}
.selected-person-card span:last-child{font-size:.8rem;color:#536b5e}
.coupon-format-preview{display:grid;grid-template-columns:auto auto 1fr;gap:10px;align-items:center;border:1px dashed #a9c6dc;border-radius:10px;padding:10px;background:#f8fbfd}
.coupon-format-preview b{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:1.05rem;letter-spacing:.08em}
.coupon-format-preview small{color:#63788b}
@media(max-width:900px){.internal-coupon-grid{grid-template-columns:1fr}}

.compact-selector-card{margin-bottom:12px}.compact-selector-card label{display:block}.compact-selector-card select{margin-top:5px;width:100%}

/* v3.169 · constructor visual unificado Persona/Servicios */
.visual-form-builder{display:grid;grid-template-columns:minmax(210px,24%) minmax(0,1fr) minmax(210px,24%);gap:12px;align-items:start;margin:12px 0}.builder-library,.builder-properties,.builder-stage{border:1px solid #cfdeea;border-radius:12px;background:#fff;min-width:0}.builder-library,.builder-properties{padding:11px;position:sticky;top:214px;max-height:68vh;overflow:auto}.builder-stage{padding:11px;background:#f8fbfe}.builder-panel-head,.builder-stage-head{display:flex;justify-content:space-between;gap:8px;align-items:flex-start;margin-bottom:9px}.builder-panel-head{flex-direction:column}.builder-panel-head small,.builder-stage-head small{color:#687d8f}.builder-search{padding:8px 9px;margin-bottom:9px}.builder-library-list{display:grid;gap:6px}.builder-library-item{display:grid;grid-template-columns:24px minmax(0,1fr) auto;gap:7px;align-items:center;padding:8px;border:1px solid #dbe6ee;border-radius:9px;background:#fbfdff;cursor:grab;min-width:0}.builder-library-item:hover{border-color:#73bce0;background:#f1f9fd}.builder-library-item b,.builder-library-item small{display:block;overflow-wrap:anywhere}.builder-library-item b{font-size:11.5px}.builder-library-item small{font-size:9.5px;color:#708391;margin-top:2px}.builder-library-item em{font-size:8.5px;font-style:normal;padding:3px 6px;border-radius:999px;background:#eaf1f6;color:#587085;white-space:nowrap}.drag-dots{font-size:19px;color:#4d718c;cursor:grab;user-select:none}.unified-layout-canvas{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:9px;min-height:300px;padding:10px;border:2px dashed #bdd2e2;border-radius:11px;background:#fff;align-content:start}.unified-layout-card{grid-column:span var(--span,6);display:grid;grid-template-columns:24px minmax(0,1fr) 26px;grid-template-areas:"drag copy menu" "width width width";gap:5px 7px;align-items:start;min-width:0;padding:9px 10px;border:1px solid #bad0df;border-radius:10px;background:#fff;box-shadow:0 1px 2px #17324d0c;cursor:default}.unified-layout-card.selected{outline:2px solid #42aee0;outline-offset:1px}.unified-layout-card.dragging{opacity:.45}.unified-layout-card.drag-over{box-shadow:inset 4px 0 0 #30a9df}.unified-layout-card .drag-dots{grid-area:drag}.card-copy{grid-area:copy;min-width:0}.card-copy b,.card-copy small{display:block;overflow-wrap:anywhere}.card-copy b{font-size:12px;line-height:1.2}.card-copy small{font-size:9.5px;color:#6d8191;margin-top:2px;line-height:1.2}.card-menu{grid-area:menu;width:25px;height:25px;min-height:0;padding:0;border:1px solid #c9d9e5;border-radius:7px;background:#f4f9fc;color:#315b78;font-size:17px;line-height:1}.width-chip{grid-area:width;justify-self:end;font-size:9px;font-weight:800;color:#3f718e;background:#eaf6fc;border-radius:999px;padding:2px 6px}.canvas-empty{grid-column:1/-1;display:none;text-align:center;padding:28px 10px;color:#718595}.unified-layout-canvas:not(:has(.unified-layout-card)) .canvas-empty{display:block}.builder-properties label{display:grid;gap:5px;margin-top:12px;font-size:11px}.property-editor>b,.property-editor>small{display:block}.property-editor>small{color:#718595;margin-top:3px}.width-quick{display:grid;grid-template-columns:repeat(3,1fr);gap:5px;margin-top:9px}.width-quick button,.view-mode{min-height:31px;padding:5px 7px;border:1px solid #c7d9e6;background:#f5fafd;color:#234f6b;border-radius:7px;font-size:10px}.width-quick button:hover,.view-mode.active{background:#dff3fc;border-color:#54b8e5}.responsive-view-toolbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:9px 11px;border:1px solid #d7e4ee;border-radius:10px;background:#f8fbfd}.responsive-view-toolbar>div{display:flex;gap:5px}.responsive-view-toolbar small{margin-left:auto;color:#657a8c}.builder-breakpoint-label{padding:4px 8px;border-radius:999px;background:#e8f4fa;font-size:9px;font-weight:800}.unified-layout-canvas[data-view="tablet"]{max-width:720px;margin:auto}.unified-layout-canvas[data-view="tablet"] .unified-layout-card{grid-column:span 6}.unified-layout-canvas[data-view="mobile"]{max-width:390px;margin:auto}.unified-layout-canvas[data-view="mobile"] .unified-layout-card{grid-column:1/-1}.service-field-details{margin-top:12px}.preview-grid{grid-template-columns:repeat(12,minmax(0,1fr))!important}.service-responsive-field{grid-column:span 6}.service-responsive-field[data-span="25"]{grid-column:span 3}.service-responsive-field[data-span="33"]{grid-column:span 4}.service-responsive-field[data-span="50"]{grid-column:span 6}.service-responsive-field[data-span="66"]{grid-column:span 8}.service-responsive-field[data-span="75"]{grid-column:span 9}.service-responsive-field[data-span="100"]{grid-column:span 12}
.provider-form-grid{grid-template-columns:repeat(12,minmax(0,1fr))!important}.provider-form-grid .dynamic-field{grid-column:span 6}
@media(max-width:1100px){.visual-form-builder{grid-template-columns:220px minmax(0,1fr)}.builder-properties{grid-column:1/-1;position:static;max-height:none}.builder-properties .property-editor{display:grid;grid-template-columns:minmax(160px,1fr) minmax(160px,1fr);gap:8px 12px}.builder-properties .property-editor label{margin-top:0}}
@media(max-width:820px){.visual-form-builder{grid-template-columns:1fr}.builder-library,.builder-properties{position:static;max-height:none}.builder-library-list{grid-template-columns:repeat(2,minmax(0,1fr))}.service-responsive-field{grid-column:span 6!important}}
@media(max-width:560px){.builder-library-list{grid-template-columns:1fr}.unified-layout-card{grid-column:1/-1!important}.service-responsive-field{grid-column:1/-1!important}.responsive-view-toolbar small{margin-left:0}.provider-form-grid .dynamic-field{grid-column:1/-1!important}}


/* v3.170 · diseñador visual claramente delimitado */
.visual-form-builder{display:grid!important;grid-template-columns:minmax(235px,270px) minmax(0,1fr)!important;grid-template-areas:"library stage" "properties stage"!important;gap:14px!important;align-items:start!important;margin:14px 0!important}
.builder-library{grid-area:library!important}.builder-properties{grid-area:properties!important}.builder-stage{grid-area:stage!important;min-height:510px!important}
.builder-library,.builder-properties{position:static!important;max-height:none!important;overflow:visible!important;border:1px solid #bfd6e5!important;border-radius:12px!important;background:#fff!important;padding:11px!important}
.builder-library{box-shadow:0 3px 12px rgba(26,77,112,.08)!important}
.builder-panel-head{display:flex!important;flex-direction:row!important;justify-content:space-between!important;align-items:flex-start!important;gap:8px!important;margin-bottom:8px!important}.builder-panel-head>div{min-width:0}.builder-panel-head b{font-size:12px}.builder-panel-head small{display:block;font-size:9.5px;margin-top:2px;color:#687d8f}
.builder-count{flex:0 0 auto;padding:3px 7px;border-radius:999px;background:#e5f4fb;color:#286984;font-size:9px;font-weight:800;white-space:nowrap}
.builder-dropbox-hint{margin:0 0 8px;padding:8px 9px;border:1px dashed #65b9df;border-radius:8px;background:#f0faff;color:#356b84;font-size:9.5px;line-height:1.35}
.builder-search{width:100%!important;box-sizing:border-box!important;padding:8px 9px!important;margin-bottom:8px!important;border:1px solid #c7d9e5!important;border-radius:8px!important;background:#fff!important}
.builder-library-list{display:flex!important;flex-direction:column!important;gap:6px!important;max-height:430px!important;overflow:auto!important;padding-right:2px!important}
.builder-library-item{display:grid!important;grid-template-columns:22px minmax(0,1fr)!important;gap:7px!important;align-items:center!important;padding:8px 9px!important;border:1px solid #d6e5ee!important;border-radius:9px!important;background:#fbfdff!important;cursor:grab!important;min-width:0!important}.builder-library-item:hover{border-color:#4fb4df!important;background:#edf9fe!important}.builder-library-item .library-state{display:none!important}.builder-library-item.dragging{opacity:.45!important}.builder-library-item[hidden]{display:none!important}.builder-library-item b,.builder-library-item small{display:block!important;line-height:1.2!important;overflow-wrap:anywhere!important}.builder-library-item b{font-size:11px!important}.builder-library-item small{font-size:8.8px!important;color:#6d8191!important;margin-top:2px!important}
.builder-stage{padding:12px!important;border:1px solid #b9d7e8!important;border-radius:13px!important;background:#f5fbfe!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.8)!important}.builder-stage-head{display:flex!important;justify-content:space-between!important;align-items:flex-start!important;gap:12px!important;margin-bottom:9px!important}.builder-stage-head b{font-size:12px;color:#0d4f75}.builder-stage-head small{display:block;margin-top:2px;font-size:9.5px;color:#668092}
.unified-layout-canvas{display:grid!important;grid-template-columns:repeat(12,minmax(0,1fr))!important;gap:10px!important;min-height:440px!important;padding:14px!important;border:2px dashed #67b8de!important;border-radius:12px!important;background:linear-gradient(180deg,#fff 0%,#f7fcff 100%)!important;align-content:start!important;position:relative!important;transition:.12s ease!important}
.unified-layout-canvas::before{content:"LIENZO · ARRASTRE LOS CAMPOS AQUÍ";position:absolute;right:12px;bottom:8px;font-size:9px;font-weight:800;letter-spacing:.04em;color:#9ebdcd;pointer-events:none}.unified-layout-canvas.drag-target{border-color:#119edb!important;background:#eaf8ff!important;box-shadow:0 0 0 4px rgba(42,169,220,.12)!important}
.unified-layout-card{grid-column:span var(--span,6)!important;display:grid!important;grid-template-columns:22px minmax(0,1fr) 25px!important;grid-template-areas:"drag copy menu" "width width width"!important;gap:4px 7px!important;align-items:start!important;min-width:0!important;padding:9px!important;border:1px solid #afd0e2!important;border-radius:9px!important;background:#fff!important;box-shadow:0 2px 5px rgba(22,68,99,.07)!important}.unified-layout-card .drag-dots{grid-area:drag!important}.card-copy{grid-area:copy!important;min-width:0!important}.card-menu{grid-area:menu!important;width:24px!important;height:24px!important;min-width:24px!important;min-height:24px!important;padding:0!important}.width-chip{grid-area:width!important;justify-self:end!important}
.canvas-empty{grid-column:1/-1!important;display:none!important;align-self:center!important;justify-self:stretch!important;text-align:center!important;padding:70px 16px!important;border:1px dashed #c9e1ed!important;border-radius:10px!important;background:rgba(239,249,254,.75)!important;color:#5c8298!important;font-size:12px!important;font-weight:700!important}.unified-layout-canvas:not(.has-cards) .canvas-empty{display:block!important}
.builder-properties{background:#fbfdff!important}.property-empty{font-size:10px;color:#6d8191;padding:8px 0}.property-editor label{font-size:10px}.width-quick button{min-width:0!important}
@media(max-width:900px){.visual-form-builder{grid-template-columns:1fr!important;grid-template-areas:"library" "stage" "properties"!important}.builder-library-list{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;max-height:280px!important}.builder-stage{min-height:420px!important}.unified-layout-canvas{min-height:340px!important}}
@media(max-width:560px){.builder-library-list{grid-template-columns:1fr!important}.unified-layout-card{grid-column:1/-1!important}}


/* v3.172 · redimensionado con mouse, tarjetas compactas y distribución separada */
.unified-layout-card{position:relative!important;grid-template-columns:17px minmax(0,1fr) 20px!important;grid-template-areas:"drag copy menu"!important;gap:3px 5px!important;padding:6px 8px!important;min-height:48px!important;align-items:start!important}
.unified-layout-card .drag-dots{font-size:15px!important;line-height:18px!important}.card-copy b{font-size:10.5px!important;line-height:1.12!important;display:-webkit-box!important;-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important;overflow:hidden!important}.card-copy small{font-size:8px!important;line-height:1.12!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;margin-top:2px!important}.card-menu{width:20px!important;height:20px!important;min-width:20px!important;min-height:20px!important;font-size:14px!important;border-radius:6px!important}.width-chip{position:absolute!important;right:7px!important;bottom:4px!important;font-size:8px!important;padding:1px 5px!important;pointer-events:none!important}.resize-handle{position:absolute;top:5px;right:-4px;width:9px;height:calc(100% - 10px);cursor:ew-resize;z-index:4;border-radius:7px;background:transparent;touch-action:none}.resize-handle::after{content:"";position:absolute;top:22%;bottom:22%;left:3px;width:2px;border-radius:2px;background:#91bfd5;opacity:.35}.unified-layout-card:hover .resize-handle::after,.unified-layout-card.selected .resize-handle::after,.unified-layout-card.resizing .resize-handle::after{opacity:1;background:#159ed7}.unified-layout-card.resizing{outline:2px solid #159ed7!important;user-select:none!important}.unified-layout-canvas{gap:7px!important;padding:10px!important}.distribution-only{grid-template-columns:minmax(0,1fr) minmax(220px,250px)!important;grid-template-areas:"stage properties"!important}.distribution-only .builder-stage{grid-area:stage!important}.distribution-only .builder-properties{grid-area:properties!important;position:sticky!important;top:214px!important}.distribution-only .unified-layout-canvas{min-height:390px!important}
@media(max-width:900px){.distribution-only{grid-template-columns:1fr!important;grid-template-areas:"stage" "properties"!important}.distribution-only .builder-properties{position:static!important}}

/* v3.175 preguntas visibles y compactas */
.configured-questions-box{border:1px solid #d8e4ee;border-radius:12px;background:#fff;margin:12px 0;padding:10px}
.configured-questions-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px}
.configured-questions-head>div{display:flex;flex-direction:column;gap:2px}.configured-questions-head small{color:#60758a}
.configured-question-list{display:grid;gap:6px;max-height:330px;overflow:auto}
.configured-question-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 10px;border:1px solid #dce7ef;border-radius:9px;background:#f9fcfe}
.configured-question-row>div:first-child{min-width:0}.configured-question-row b{display:block}.configured-question-row small{display:block;color:#60758a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.question-flags{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.question-flags span{font-size:11px;padding:3px 7px;border-radius:999px;background:#eaf4fa;color:#204b67}
@media(max-width:780px){.configured-question-row{align-items:flex-start;flex-direction:column}.question-flags{width:100%}}

/* v3.177: alineación de campos sin obligarlos a ocupar 100% */
.unified-layout-card.align-left,.unified-layout-card.align-center,.unified-layout-card.align-right{grid-column:1/-1!important;width:var(--width-pct,50%)!important}.unified-layout-card.align-left{justify-self:start!important}.unified-layout-card.align-center{justify-self:center!important}.unified-layout-card.align-right{justify-self:end!important}.service-responsive-field[data-align="LEFT"],.service-responsive-field[data-align="CENTER"],.service-responsive-field[data-align="RIGHT"]{grid-column:1/-1!important;width:var(--field-width,50%)}.service-responsive-field[data-align="LEFT"]{justify-self:start}.service-responsive-field[data-align="CENTER"]{justify-self:center}.service-responsive-field[data-align="RIGHT"]{justify-self:end}.service-responsive-field[data-span="25"]{--field-width:25%}.service-responsive-field[data-span="33"]{--field-width:33%}.service-responsive-field[data-span="50"]{--field-width:50%}.service-responsive-field[data-span="66"]{--field-width:66%}.service-responsive-field[data-span="75"]{--field-width:75%}.service-responsive-field[data-span="100"]{--field-width:100%}@media(max-width:560px){.service-responsive-field[data-align]{width:100%!important;justify-self:stretch!important}}

/* v3.178: acciones de Persona compactas; Mensaje vive junto al WhatsApp, no apilado bajo Editar. */

/* v3.181 · historial multicanal de comunicaciones */
.communication-form{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px 12px;padding:14px;border:1px solid var(--border,#dbe5ef);border-radius:14px;background:#fbfdff;margin-top:12px}
.communication-form label{display:flex;flex-direction:column;gap:5px;font-weight:600}.communication-form .span-2{grid-column:span 2}.communication-form .actions{align-self:end}
.communication-timeline{display:flex;flex-direction:column;gap:9px;margin-top:16px}.communication-item{display:grid;grid-template-columns:36px 1fr;gap:10px;border:1px solid var(--border,#dbe5ef);border-radius:12px;padding:10px 12px;background:#fff}.communication-item.inbound{border-left:4px solid #5da76a}.communication-item.outbound{border-left:4px solid #4aa9d8}.communication-icon{font-size:20px;padding-top:2px}.communication-head{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.communication-head small{margin-left:auto;color:#6c7a89}.next-contact{margin-top:6px;font-weight:700;color:#745a00}.wa-details{margin-top:16px;border-top:1px solid var(--border,#dbe5ef);padding-top:10px}.wa-details summary{cursor:pointer;font-weight:700;color:#123f73}.wa-send-actions{margin-top:10px}.wa-send-actions form{display:grid;grid-template-columns:minmax(180px,1fr) minmax(260px,2fr) auto;gap:10px;align-items:end}
@media(max-width:980px){.communication-form{grid-template-columns:repeat(2,minmax(0,1fr))}.wa-send-actions form{grid-template-columns:1fr}.communication-form .span-2{grid-column:span 2}}
@media(max-width:620px){.communication-form{grid-template-columns:1fr}.communication-form .span-2{grid-column:span 1}.communication-head small{margin-left:0;width:100%}}
/* v3.184 · Asignación independiente de servicios a proveedores */
.provider-assignment-context{padding:18px 20px;margin-bottom:16px}.provider-assignment-context-grid{display:grid;grid-template-columns:minmax(220px,1fr) minmax(280px,1.4fr);gap:14px}.assignment-help{margin-top:14px;padding-top:12px;border-top:1px solid #dce8f2;display:flex;gap:12px;align-items:baseline}.assignment-help b{white-space:nowrap}.assignment-help span{color:#627b91}.assignment-empty{min-height:180px;display:flex;flex-direction:column;justify-content:center}.assignment-toolbar{padding:14px 18px;margin-bottom:14px;display:flex;justify-content:space-between;align-items:center;gap:16px}.assignment-toolbar h3{margin:2px 0 0}.assignment-toolbar-actions{display:flex;gap:8px;flex-wrap:wrap}.provider-referral-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.provider-referral-card{padding:0;overflow:hidden;border:1px solid #d7e4ef;transition:.15s ease}.provider-referral-card.provider-referral-enabled{border-color:#65bde5;box-shadow:0 0 0 2px rgba(86,188,230,.10)}.provider-referral-head{padding:15px 16px;background:#f7fafc;border-bottom:1px solid #e3edf5;display:flex;align-items:center;justify-content:space-between;gap:14px}.provider-referral-title{display:flex;align-items:center;gap:8px}.provider-referral-title h3{margin:0;font-size:1rem}.referral-state-dot{width:10px;height:10px;border-radius:50%;background:#c9d7e2}.provider-referral-enabled .referral-state-dot{background:#35b879}.provider-referral-head p{margin:4px 0 0;font-size:.78rem}.provider-referral-toggle{display:flex;align-items:center;gap:7px;font-size:.79rem;font-weight:700;white-space:nowrap}.provider-assignment-services{padding:9px 12px 13px;display:grid;gap:7px}.provider-assignment-service{display:flex;align-items:center;gap:10px;padding:9px 10px;border:1px solid #dbe7f0;border-radius:9px;background:#fff;cursor:pointer}.provider-assignment-service:hover{background:#f5fbfe;border-color:#a8d8ee}.provider-assignment-service input{width:17px;height:17px;flex:0 0 auto}.provider-assignment-service span{display:flex;flex-direction:column;min-width:0}.provider-assignment-service b{font-size:.84rem}.provider-assignment-service small{color:#70869a;font-size:.72rem}.assignment-warning{margin-top:14px;padding:14px 16px}.assignment-warning p{margin:4px 0 10px;color:#627b91}.assignment-chip-list{display:flex;gap:7px;flex-wrap:wrap}.assignment-chip-list span{padding:6px 9px;border-radius:999px;background:#fff4cf;border:1px solid #f0d778;font-size:.78rem}.assignment-savebar{position:sticky;bottom:0;margin-top:14px;padding:12px 0;display:flex;gap:9px;background:linear-gradient(to top,#f4f7fa 70%,rgba(244,247,250,0));z-index:5}.attention-provider-assignment-link{margin-top:8px;border-top:1px solid #e1ebf3;padding-top:12px!important;font-weight:700!important}.attention-context-grid label:nth-child(3){position:relative}.attention-context-grid label:nth-child(3)::after{content:'Solo cambia el formulario de este proveedor; no autoriza servicios.';display:block;font-size:.68rem;color:#778da0;margin-top:4px;font-weight:400}@media(max-width:900px){.provider-referral-grid{grid-template-columns:1fr}.provider-assignment-context-grid{grid-template-columns:1fr}.assignment-toolbar{align-items:flex-start;flex-direction:column}.provider-referral-head{align-items:flex-start;flex-direction:column}}

/* v3.185 · seguimiento unificado y asignación jerárquica */
.config-workspace{display:grid;grid-template-columns:225px minmax(0,1fr);gap:14px;align-items:start}.config-sidebar{position:sticky;top:112px;padding:9px;border:1px solid #dce7ef;border-radius:12px;background:#fff}.config-sidebar-title{padding:5px 8px 9px;font-size:11px;font-weight:900;color:var(--dos-navy-deep);text-transform:uppercase;letter-spacing:.05em}.config-step{display:grid;grid-template-columns:30px 1fr;gap:8px;align-items:center;padding:9px 8px;margin-bottom:5px;border:1px solid transparent;border-radius:9px;text-decoration:none;color:var(--ink);transition:.12s}.config-step .step-number{width:28px;height:28px;border-radius:8px;display:flex;align-items:center;justify-content:center;background:#e9f1f7;color:var(--dos-navy);font-weight:900}.config-step b{display:block;font-size:11.5px}.config-step small{display:block;margin-top:2px;color:#718392;font-size:9px;line-height:1.2}.config-step:hover{background:#f5f9fc;border-color:#dbe6ee}.config-step.active{background:#eaf5fb;border-color:#9dcbe2;color:var(--dos-navy-deep);box-shadow:0 2px 8px #071f3a0b}.config-step.active .step-number{background:#4db6e5;color:#08324d}.config-main-panel{min-width:0;min-height:430px;padding:16px;border:1px solid #dce7ef;border-radius:12px;background:#fff}.followup-subject-card{display:flex;justify-content:space-between;gap:16px;align-items:center}.followup-subject-card h3{margin:2px 0}.subject-meta{display:flex;gap:18px;flex-wrap:wrap;color:#526b7d}.followup-selector-card{margin-bottom:12px}.followup-search{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;margin-bottom:10px}.followup-appointments{max-height:210px}.selected-row{background:#eef8fd}.communication-form-clean{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.communication-form-clean .span-2{grid-column:1/-1}.communication-form-clean .actions{grid-column:1/-1}.whatsapp-status-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:12px 0}.status-card{padding:12px;border:1px solid #dce7ef;border-radius:10px;background:#f8fbfd}.status-card span{display:block;font-size:10px;color:#6a7f90;text-transform:uppercase;letter-spacing:.04em}.status-card b{display:block;margin-top:4px;color:var(--dos-navy-deep)}.inner-card{margin-top:14px;background:#fbfdff}.wa-send-form{display:grid;gap:10px}.compact-timeline{max-height:420px;overflow:auto}.communication-timeline{display:grid;gap:9px}.communication-item{display:grid;grid-template-columns:36px minmax(0,1fr);gap:10px;padding:10px;border:1px solid #dce7ef;border-radius:10px;background:#fff}.communication-item.inbound{border-left:4px solid #42a5f5}.communication-item.outbound{border-left:4px solid #40b97a}.communication-icon{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#edf4f8}.communication-head{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.communication-head small{margin-left:auto;color:#758897}.next-contact{margin-top:5px;font-size:11px;color:#8a6500}

.referral-assignment-list{display:grid;gap:10px}.referral-assignment-row{border:1px solid #d8e4ec;border-radius:12px;background:#fff;overflow:hidden;transition:.15s}.referral-assignment-row.enabled{border-color:#8bc8aa;box-shadow:0 0 0 2px #e7f5ed inset}.referral-assignment-main{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:12px 14px;background:#f8fbfd;border-bottom:1px solid #e4edf3}.referral-master{display:flex;align-items:center;gap:10px;cursor:pointer}.referral-master input{width:18px;height:18px;flex:0 0 auto}.referral-master span{display:flex;flex-direction:column}.referral-master b{font-size:14px;color:var(--dos-navy-deep)}.referral-master small{font-size:10px;color:#6e8190;margin-top:2px}.referral-state-label{padding:4px 9px;border-radius:999px;background:#edf2f6;color:#647788;font-size:10px;font-weight:800}.referral-assignment-row.enabled .referral-state-label{background:#e2f5e9;color:#237346}.referral-services-panel{padding:12px 14px}.referral-services-title{font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.04em;color:#6a7f90;margin-bottom:8px}.referral-service-checks{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.provider-assignment-service{display:flex;gap:8px;align-items:flex-start;padding:9px 10px;border:1px solid #dce7ef;border-radius:9px;background:#fff}.provider-assignment-service input{margin-top:2px}.provider-assignment-service span{display:flex;flex-direction:column}.provider-assignment-service b{font-size:11px}.provider-assignment-service small{font-size:9px;color:#758897}.assignment-toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px}.assignment-toolbar h3{margin:2px 0}.assignment-toolbar-actions{display:flex;gap:7px;flex-wrap:wrap}.assignment-savebar{position:sticky;bottom:0;display:flex;gap:8px;padding:10px 0;background:linear-gradient(180deg,rgba(248,251,253,0),#f8fbfd 28%)}
@media(max-width:900px){.config-workspace{grid-template-columns:1fr}.config-sidebar{position:static;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.config-sidebar-title{grid-column:1/-1}.config-step{margin:0}.referral-service-checks{grid-template-columns:repeat(2,minmax(0,1fr))}.followup-subject-card{align-items:flex-start;flex-direction:column}.whatsapp-status-grid{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.config-sidebar{grid-template-columns:1fr}.communication-form-clean{grid-template-columns:1fr}.communication-form-clean .span-2,.communication-form-clean .actions{grid-column:auto}.referral-service-checks{grid-template-columns:1fr}.assignment-toolbar{align-items:flex-start;flex-direction:column}.whatsapp-status-grid{grid-template-columns:1fr}}
/* v3.186 · Asociación Tipo de referencia → Servicios en dos paneles */
.referral-link-workspace{padding:12px}.referral-link-layout{display:grid;grid-template-columns:340px minmax(0,1fr);gap:14px;align-items:start}.referral-link-left{border:1px solid #d8e4ec;border-radius:12px;background:#f7fbfd;padding:12px;position:sticky;top:150px}.referral-link-left-head,.referral-link-right-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.referral-link-left-head h3,.referral-link-right-head h3{margin:2px 0 4px}.referral-link-list{display:grid;gap:7px;max-height:570px;overflow:auto;padding-right:2px}.referral-link-item{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:11px;border:1px solid #dbe6ed;border-radius:10px;background:#fff;color:var(--ink);text-decoration:none}.referral-link-item:hover{border-color:#83c3e1;background:#f1faff}.referral-link-item.selected{border-color:#1595cf;background:#eaf7fd;box-shadow:inset 4px 0 0 #1595cf}.referral-link-item div{min-width:0}.referral-link-item b{display:block;font-size:11.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.referral-link-item small{display:block;margin-top:3px;color:#718493;font-size:9px}.referral-link-right{min-height:520px;border:1px solid #d8e4ec;border-radius:12px;background:#fff;padding:14px}.referral-service-picker-head{display:flex;align-items:center;justify-content:space-between;margin:14px 0 7px;font-weight:900;color:var(--dos-navy-deep)}.referral-service-picker-head span:last-child{font-size:10px;color:#5d7688;font-weight:700}.referral-available-services{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;max-height:520px;overflow:auto;padding:2px}.referral-available-service{display:grid;grid-template-columns:minmax(0,1fr) 130px;gap:8px;align-items:center;border:1px solid #dce7ef;border-radius:10px;background:#fff;padding:10px;transition:.12s}.referral-available-service:hover{border-color:#9bcbe0;background:#f7fcff}.referral-available-service.selected{border-color:#69bf91;background:#f1fbf5;box-shadow:inset 3px 0 0 #42aa72}.referral-service-select{display:flex;gap:9px;align-items:flex-start;cursor:pointer;min-width:0}.referral-service-select input{width:18px;height:18px;margin-top:1px;flex:0 0 auto}.referral-service-select span{min-width:0}.referral-service-select b{display:block;font-size:11px}.referral-service-select small{display:block;color:#718493;font-size:9px;margin-top:2px}.referral-available-service select{padding:7px 8px;min-width:0}.referral-extra-settings{margin-top:12px;border:1px solid #dce7ef;border-radius:10px;background:#fafcfd;padding:9px 11px}.referral-extra-settings summary{cursor:pointer;font-weight:800}.referral-extra-settings .form-grid{margin-top:10px}.referral-link-savebar{display:flex;gap:8px;flex-wrap:wrap;position:sticky;bottom:0;margin-top:12px;padding:12px 0 2px;background:linear-gradient(180deg,rgba(255,255,255,0),#fff 25%)}.referral-link-empty{min-height:430px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.referral-link-empty p{max-width:520px}@media(max-width:980px){.referral-link-layout{grid-template-columns:1fr}.referral-link-left{position:static}.referral-link-list{max-height:280px}.referral-available-services{grid-template-columns:1fr}}@media(max-width:600px){.referral-available-service{grid-template-columns:1fr}.referral-link-left-head,.referral-link-right-head{flex-direction:column}}
/* v3.187 · Asignación a proveedores en dos paneles */
.provider-two-panel{display:grid;grid-template-columns:minmax(260px,31%) minmax(0,1fr);gap:14px;align-items:start}.provider-referral-picker,.provider-service-picker{padding:14px}.provider-panel-heading,.provider-service-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.provider-panel-heading h3,.provider-service-heading h3{margin:2px 0}.provider-service-heading p{margin:4px 0 0;color:#6d8294;font-size:.78rem}.count-pill{background:#e9f4fb;border:1px solid #c9e2f2;border-radius:999px;padding:4px 8px;font-size:.72rem;font-weight:800}.provider-referral-picker>input,.provider-service-tools>input{width:100%;margin:10px 0}.provider-referral-list{display:grid;gap:6px;max-height:560px;overflow:auto;padding-right:3px}.provider-referral-item{width:100%;border:1px solid #dce7ef;background:#fff;border-radius:9px;padding:10px 10px;display:flex;align-items:center;justify-content:space-between;gap:9px;text-align:left;cursor:pointer}.provider-referral-item:hover{background:#f5fbfe;border-color:#afd8ea}.provider-referral-item.active{background:#e8f5fc;border-color:#55b9e3;box-shadow:0 0 0 2px rgba(72,174,220,.12)}.provider-referral-item.enabled .provider-referral-badge{background:#dff4e7;color:#267044}.provider-referral-item-main{display:flex;flex-direction:column;min-width:0}.provider-referral-item-main b{font-size:.86rem;overflow-wrap:anywhere;color:var(--dos-navy-deep)}.provider-referral-item-main small{font-size:.68rem;color:#6e8190;margin-top:2px}.provider-referral-badge{min-width:24px;height:24px;padding:0 6px;border-radius:999px;background:#edf2f6;color:#65798a;display:inline-flex;align-items:center;justify-content:center;font-size:.7rem;font-weight:900}.provider-referral-detail{display:none}.provider-referral-detail.active{display:block}.provider-authorize-all{display:flex;gap:7px;align-items:center;border:1px solid #d8e6ef;border-radius:9px;padding:8px 10px;background:#f8fbfd;font-size:.76rem;font-weight:800;white-space:nowrap}.provider-authorize-all input{width:17px;height:17px}.provider-service-tools{display:grid;grid-template-columns:minmax(180px,1fr) auto;gap:10px;align-items:center;margin:12px 0}.provider-service-tools>div{display:flex;gap:6px}.mini-btn{border:1px solid #cadbe8;background:#fff;color:#173d68;border-radius:8px;padding:7px 9px;font-size:.72rem;font-weight:800;cursor:pointer}.mini-btn:hover{background:#f0f7fb}.provider-service-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.provider-service-option{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:9px;border:1px solid #dce7ef;border-radius:10px;padding:10px 11px;background:#fff;cursor:pointer;min-height:58px}.provider-service-option:hover{border-color:#9fd3e9;background:#f8fcfe}.provider-service-option.selected{border-color:#65c395;background:#f0fbf5;box-shadow:0 0 0 2px rgba(75,183,128,.08)}.provider-service-option input{width:18px;height:18px}.provider-service-option span:nth-child(2){display:flex;flex-direction:column;min-width:0}.provider-service-option b{font-size:.82rem}.provider-service-option small{font-size:.68rem;color:#70869a;margin-top:2px}.service-checkmark{opacity:0;color:#24804d;font-weight:900}.provider-service-option.selected .service-checkmark{opacity:1}.provider-no-services{min-height:300px;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center}.provider-no-services .btn{margin-top:8px}@media(max-width:900px){.provider-two-panel{grid-template-columns:1fr}.provider-referral-list{max-height:240px}.provider-service-grid{grid-template-columns:1fr}.provider-service-tools{grid-template-columns:1fr}.provider-service-tools>div{flex-wrap:wrap}.provider-service-heading{flex-direction:column}}
/* v3.188: servicios disponibles dentro de asignación a proveedores */
.provider-service-section-title{display:flex;justify-content:space-between;gap:14px;align-items:flex-end;margin:16px 0 8px;padding-top:12px;border-top:1px solid #dce8f2}.provider-service-section-title:first-child{margin-top:0;padding-top:0;border-top:0}.provider-service-section-title span{font-size:.78rem;font-weight:900;text-transform:uppercase;letter-spacing:.04em;color:#536f86}.provider-service-section-title small{font-size:.72rem;color:#74899a;text-align:right}.provider-service-section-title.available span{color:#8b5c00}.provider-extra-services{margin-top:4px}.provider-service-add{background:#fffaf0;border-style:dashed;border-color:#e7c36b}.provider-service-add:hover,.provider-service-add.selected{background:#fff5d8;border-color:#d6a62f}.service-plus{margin-left:auto;width:24px;height:24px;border-radius:50%;display:grid;place-items:center;background:#fff0b8;color:#8b6500;font-weight:900}.provider-service-option.selected .service-plus{background:#dff4e7;color:#247443}.source-badge.global{background:#e7f0ff;color:#265a9b}

/* v3.196 · fases visibles directamente dentro de Atención de servicios */
.attention-phase-layout{display:grid;grid-template-columns:minmax(210px,27%) minmax(0,1fr);gap:14px;align-items:start;margin-top:12px}
.attention-phase-nav{border:1px solid #d9e6ef;border-radius:12px;background:#f8fbfd;padding:10px;position:sticky;top:150px}
.attention-phase-nav-title{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:3px 4px 9px}.attention-phase-nav-title small{color:#718697;font-size:.7rem}
.attention-phase-item{display:grid;grid-template-columns:28px minmax(0,1fr) 22px;gap:8px;align-items:center;padding:9px 8px;margin-bottom:6px;border:1px solid #dbe7ef;border-radius:10px;background:#fff;color:var(--ink);text-decoration:none;transition:.12s}
.attention-phase-item:hover{background:#f2faff;border-color:#9ed3e9}.attention-phase-item.active{background:#e9f6fc;border-color:#4db6e2;box-shadow:inset 3px 0 0 #159ed7}.attention-phase-item.completada{border-color:#b9dfc8;background:#f6fcf8}.attention-phase-item.en_proceso{border-color:#8bcce8}
.phase-index{width:26px;height:26px;display:grid;place-items:center;border-radius:8px;background:#eaf3f8;font-weight:900;font-size:.78rem}.attention-phase-item.active .phase-index{background:#46b6e1;color:#fff}.attention-phase-item.completada .phase-index{background:#daf2e3;color:#226940}
.phase-copy{display:flex;flex-direction:column;min-width:0}.phase-copy b{font-size:.82rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.phase-copy small{font-size:.68rem;color:#718596;margin-top:2px}.phase-state-dot{text-align:center;font-weight:900;color:#70879a}.attention-phase-item.completada .phase-state-dot{color:#24804d}.attention-phase-item.en_proceso .phase-state-dot{color:#168ec4}
.attention-phase-workarea{min-width:0}.attention-phase-heading{display:flex;align-items:flex-start;justify-content:space-between;border:1px solid #dce8f0;border-radius:11px;background:#fbfdff;padding:10px 12px;margin-bottom:10px}.attention-phase-heading h3{margin:2px 0 3px;font-size:1rem}.attention-phase-heading p{margin:0;font-size:.76rem}
.phase-operation-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:12px;padding:11px 12px;border-top:1px solid #dce8ef;background:#f8fbfd;border-radius:0 0 10px 10px}.phase-operation-state{display:flex;flex-direction:column;gap:2px}.phase-operation-state small{color:#6f8293}.phase-actions{margin:0!important;display:flex;gap:8px;align-items:center;flex-wrap:wrap}
@media(max-width:900px){.attention-phase-layout{grid-template-columns:1fr}.attention-phase-nav{position:static}.attention-phase-nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.attention-phase-nav-title{grid-column:1/-1}.attention-phase-item{margin:0}.phase-operation-bar{align-items:flex-start;flex-direction:column}}
@media(max-width:600px){.attention-phase-nav{grid-template-columns:1fr}.phase-operation-bar .btn{width:100%}.phase-actions{width:100%}}

/* v3.197 · Navegación compacta de fases en atención */
.attention-phase-strip-wrap{border:1px solid #d9e6ef;border-radius:12px;background:#f8fbfd;padding:10px 12px;margin:10px 0 12px}
.attention-phase-strip-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px}
.attention-phase-strip-head>div:first-child{display:flex;align-items:baseline;gap:8px}.attention-phase-strip-head b{font-size:.86rem}.attention-phase-strip-head small{font-size:.68rem;color:#738898}
.attention-phase-strip-summary{display:flex;align-items:center;justify-content:flex-end;gap:5px;flex-wrap:wrap}.phase-summary-pill{display:inline-flex;align-items:center;gap:4px;border-radius:999px;padding:3px 7px;font-size:.66rem;font-weight:800;background:#edf3f7;color:#506778}.phase-summary-pill.done{background:#e4f5ea;color:#236a41}.phase-summary-pill.active{background:#e7f5fb;color:#176c93}.phase-summary-pill.overdue{background:#fff0e4;color:#a45114}
.attention-phase-strip{display:flex;align-items:center;gap:5px;overflow-x:auto;padding:2px 1px 4px;scrollbar-width:thin}
.attention-phase-step{flex:0 0 auto;min-width:132px;max-width:190px;display:flex;align-items:center;gap:7px;padding:7px 9px;border:1px solid #d7e4ec;border-radius:9px;background:#fff;color:var(--ink);text-decoration:none;transition:.12s}
.attention-phase-step:hover{border-color:#90cfe8;background:#f4fbfe}.attention-phase-step.active{border-color:#38aadb;background:#eaf7fc;box-shadow:0 0 0 1px #38aadb inset}.attention-phase-step.completada{border-color:#a9d9bb;background:#f3fbf6}.attention-phase-step.en_proceso{border-color:#72c2e4;background:#f4fbfe}.attention-phase-step.overdue{border-color:#e6ad75;background:#fff9f3}
.phase-step-icon{width:24px;height:24px;border-radius:50%;display:grid;place-items:center;flex:0 0 24px;background:#eaf1f5;color:#5d7485;font-weight:900;font-size:.72rem}.attention-phase-step.active .phase-step-icon{background:#35acd9;color:#fff}.attention-phase-step.completada .phase-step-icon{background:#42a86a;color:#fff}.attention-phase-step.en_proceso .phase-step-icon{background:#299dca;color:#fff}.attention-phase-step.overdue .phase-step-icon{background:#d88738;color:#fff}
.phase-step-copy{display:flex;flex-direction:column;min-width:0;line-height:1.1}.phase-step-copy b{font-size:.76rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.phase-step-copy small{font-size:.64rem;color:#74899a;margin-top:2px}.attention-phase-step.completada .phase-step-copy small{color:#318151;font-weight:800}.attention-phase-step.en_proceso .phase-step-copy small{color:#197aa3;font-weight:800}.attention-phase-step.overdue .phase-step-copy small{color:#ad5a18;font-weight:800}
.phase-step-arrow{flex:0 0 auto;color:#91a4b2;font-size:1.05rem;font-weight:900;margin:0 -1px}
.attention-phase-workarea{min-width:0}.attention-phase-heading{padding:8px 11px;margin-bottom:9px}.attention-phase-heading h3{font-size:.95rem;margin:1px 0 2px}.attention-phase-heading p{font-size:.72rem}
@media(max-width:760px){.attention-phase-strip-head{align-items:flex-start;flex-direction:column}.attention-phase-strip-summary{justify-content:flex-start}.attention-phase-step{min-width:118px}.phase-step-arrow{display:none}}
/* v3.200 · administrador visual del menú */
.menu-builder-layout{display:grid;grid-template-columns:minmax(360px,42%) minmax(420px,58%);gap:16px;align-items:start}.menu-builder-tree-card,.menu-builder-editor{min-height:560px}.menu-builder-title{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;margin-bottom:12px}.menu-builder-title div{display:grid;gap:3px}.menu-tree-root{min-height:90px;padding:8px;border:1px dashed #9fc7df;border-radius:14px;background:#f7fbfe}.menu-tree-node{margin:6px 0}.menu-tree-cardline{display:grid;grid-template-columns:24px 58px 1fr auto;align-items:center;gap:8px;padding:9px 10px;border:1px solid #c9deeb;border-radius:11px;background:#fff;box-shadow:0 1px 2px rgba(16,55,90,.04)}.menu-tree-node.dragging>.menu-tree-cardline{opacity:.45;border-color:#2c9fd2}.menu-tree-node.inactive>.menu-tree-cardline{opacity:.55}.menu-tree-cardline a{display:grid;text-decoration:none;color:#12395b;line-height:1.1}.menu-tree-cardline small{font-weight:400;color:#688198;margin-top:3px}.drag-handle{font-size:18px;cursor:grab;color:#3d7598}.menu-kind,.system-tag{font-size:10px;font-weight:800;border-radius:999px;padding:3px 6px;background:#edf5fa;color:#426a82}.system-tag{background:#eef1f4;color:#6b737c}.menu-tree-children{min-height:8px;margin-left:30px;padding-left:10px;border-left:2px solid #d9e9f3}.menu-tree-children:empty{min-height:10px}.menu-dropzone.drag-over{background:#e9f7ff;outline:2px dashed #45afe0;outline-offset:2px}.menu-builder-help{display:grid;gap:4px;margin-top:14px;padding:10px 12px;background:#fff8dc;border:1px solid #efd47b;border-radius:10px;font-size:12px}.role-visibility-panel{margin-top:18px;padding:14px;border:1px solid #d8e5ee;border-radius:12px}.role-visibility-panel>div:first-child{display:grid;gap:3px;margin-bottom:10px}.toast-status{position:fixed;right:24px;bottom:24px;background:#0f3d68;color:#fff;padding:10px 16px;border-radius:10px;z-index:9999}@media(max-width:980px){.menu-builder-layout{grid-template-columns:1fr}.menu-builder-tree-card,.menu-builder-editor{min-height:auto}}

/* v3.201 · fases compactas y evidencias al cierre */
.phase-compact-settings{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;padding:9px 10px;border:1px solid #d9e4ec;border-radius:12px;background:#f8fbfd}
.phase-toggle{display:flex;align-items:center;justify-content:space-between;gap:8px;min-width:0}
.phase-toggle>span{font-size:12px;font-weight:700;color:#294257;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.phase-toggle select{width:auto;min-width:72px;height:34px;padding:4px 26px 4px 8px}
.phase-hours>div{display:flex;align-items:center;gap:4px}.phase-hours input{width:68px;height:34px;padding:5px 8px}.phase-hours small{font-weight:700;color:#63788a}
.final-evidence-block{margin-top:12px;border:1px solid #b9dcc7;background:#f7fcf8;border-radius:14px;padding:14px}
.final-evidence-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:10px}.final-evidence-heading h3{margin:2px 0 0}
@media(max-width:900px){.phase-compact-settings{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.phase-compact-settings{grid-template-columns:1fr}}

/* v3.203 - jerarquia visual del editor de menu */
.menu-tree-cardline{position:relative;transition:background .12s,border-color .12s,box-shadow .12s}
.menu-tree-cardline.drop-before{box-shadow:0 -4px 0 #24a8df,0 1px 2px rgba(16,55,90,.04);border-top-color:#24a8df}
.menu-tree-cardline.drop-after{box-shadow:0 4px 0 #24a8df,0 1px 2px rgba(16,55,90,.04);border-bottom-color:#24a8df}
.menu-tree-cardline.drop-inside{background:#e8f7ff;border:2px solid #24a8df;box-shadow:inset 0 0 0 2px #fff}
.menu-tree-cardline.drop-before:before,.menu-tree-cardline.drop-after:after{content:"";position:absolute;left:6px;width:10px;height:10px;border-radius:50%;background:#24a8df}
.menu-tree-cardline.drop-before:before{top:-7px}.menu-tree-cardline.drop-after:after{bottom:-7px}
.menu-tree-children{padding-top:4px;padding-bottom:4px;min-height:18px}
.menu-tree-root.menu-dropzone.drag-over,.menu-tree-children.menu-dropzone.drag-over{background:#e9f7ff;outline:2px dashed #45afe0;outline-offset:2px}

.menu-root-target{display:none;margin:0 0 8px;padding:8px 10px;text-align:center;border:2px dashed #8ebbd5;border-radius:10px;background:#f4faff;color:#416b85;font-size:11px;font-weight:800}
body.menu-drag-active .menu-root-target{display:block}
.menu-root-target.drag-over{background:#dff4ff;border-color:#239fd6;color:#0c638d}
body.menu-drag-active .menu-tree-children:empty{min-height:30px;border-left-color:#79bddf;background:linear-gradient(90deg,#edf9ff,transparent);border-radius:0 8px 8px 0}
body.menu-drag-active .menu-tree-children:empty:after{content:"Soltar dentro";display:block;padding:6px 8px;color:#6190aa;font-size:9px;font-weight:700}

/* v3.205: drag & drop de menú - tarjeta completa como superficie de arrastre */
.menu-tree-cardline[draggable="true"]{cursor:grab;user-select:none;-webkit-user-select:none}
.menu-tree-cardline[draggable="true"]:active,.menu-tree-cardline.drag-ready{cursor:grabbing}
.menu-tree-node.dragging>.menu-tree-cardline{opacity:.38;transform:scale(.995);box-shadow:0 6px 18px rgba(16,55,90,.14)}
body.menu-drag-active .menu-tree-cardline:not(.dragging>.menu-tree-cardline){transition:box-shadow .08s,background .08s,border-color .08s}

/* v3.206: arrastre jerárquico por Pointer Events, independiente del DnD nativo */
.menu-tree-cardline{touch-action:none;cursor:grab}.menu-tree-cardline:active{cursor:grabbing}
.menu-drag-ghost{position:fixed;z-index:20000;pointer-events:none;opacity:.86;background:#fff;border:2px solid #24a8df;border-radius:11px;box-shadow:0 12px 28px rgba(16,55,90,.24);padding:9px 10px;display:grid;grid-template-columns:24px 58px 1fr auto;align-items:center;gap:8px;transform-origin:top left}
.menu-drag-ghost a{display:grid;text-decoration:none;color:#12395b}.menu-drag-ghost small{display:block;color:#688198;margin-top:3px}
body.menu-drag-active{cursor:grabbing!important;user-select:none!important}
body.menu-drag-active *{cursor:grabbing!important}

/* v3.207: menú jerárquico robusto */
.menu-tree-cardline,.menu-tree-cardline *{-webkit-user-drag:none!important}
.menu-tree-cardline{user-select:none;-webkit-user-select:none;touch-action:none;grid-template-columns:24px 58px minmax(0,1fr) auto auto;cursor:grab}
.menu-tree-cardline a{user-select:none;-webkit-user-select:none}
.menu-move-btn{border:1px solid #b9d6e8;background:#f4fbff;color:#14527a;border-radius:8px;padding:4px 7px;font-size:10px;font-weight:800;cursor:pointer}
.menu-tree-node.move-source>.menu-tree-cardline{outline:3px solid #24a8df;background:#e9f8ff}
.menu-tree-cardline.move-target{position:relative;padding-bottom:38px}
.menu-move-actions{position:absolute;left:8px;right:8px;bottom:5px;display:flex;gap:5px;justify-content:center;z-index:3}
.menu-move-actions button{border:1px solid #58acd2;background:white;color:#0f4f72;border-radius:7px;padding:3px 8px;font-size:10px;font-weight:800;cursor:pointer}
body.menu-click-move-active #menuRootTarget{display:block}


/* v3.215 · actualización de Persona desde la atención del proveedor */
.person-update-inline{margin-top:12px;border:1px solid #cbddeb;border-radius:10px;background:#f9fcff;overflow:hidden}
.person-update-inline>summary{cursor:pointer;display:flex;justify-content:space-between;gap:10px;padding:10px 12px;color:#0a3161;background:#eef7fc}
.person-update-inline>summary span{font-size:.78rem;font-weight:700;color:#547087}
.person-update-form{display:grid;grid-template-columns:1fr 1fr;gap:9px;padding:12px}
.person-update-form label{display:flex;flex-direction:column;gap:3px;font-size:.78rem;font-weight:700}
.person-update-form label em{font-style:normal;color:#9a6200;font-size:.68rem}
.person-update-form input,.person-update-form select,.person-update-form textarea{width:100%}
.person-update-form small{font-weight:400;color:#667c8d}
.person-update-form .span-all{grid-column:1/-1}
.person-pending-list,.person-history-mini{margin:0 12px 12px;padding:9px;border-radius:8px;background:#fff7dc;display:flex;flex-direction:column;gap:4px}
.person-history-mini{background:#fff}
.person-history-mini summary{cursor:pointer;font-weight:700;color:#0a3161}
@media(max-width:900px){.person-update-form{grid-template-columns:1fr}}

/* v3.216: edición compacta de Persona + transferencia de configuración de menú */
.person-update-form{display:flex;flex-direction:column;gap:0;padding:0}
.person-update-scroll{display:grid;grid-template-columns:1fr 1fr;gap:9px;padding:12px;max-height:430px;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable}
.person-update-scroll label{display:flex;flex-direction:column;gap:3px;font-size:.78rem;font-weight:700}
.person-update-scroll label em{font-style:normal;color:#9a6200;font-size:.68rem}
.person-update-scroll input,.person-update-scroll select,.person-update-scroll textarea{width:100%}
.person-update-scroll small{font-weight:400;color:#667c8d}
.person-update-scroll .span-all{grid-column:1/-1}
.person-update-actions{position:sticky;bottom:0;padding:9px 12px;border-top:1px solid #d8e5ef;background:#f9fcff;z-index:2}
.menu-config-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px}
.menu-import-form{display:none}
@media(max-width:900px){.person-update-scroll{grid-template-columns:1fr;max-height:55vh}.menu-config-actions{justify-content:flex-start}}

/* v3.217: workspace de atención con desplazamiento independiente en escritorio */
@media(min-width:1051px){
  .provider-service-panel{
    max-height:calc(100vh - 220px);
    overflow-y:auto;
    overscroll-behavior:contain;
    scrollbar-gutter:stable;
    padding-right:5px;
  }
  .provider-service-panel::-webkit-scrollbar{width:9px}
  .provider-service-panel::-webkit-scrollbar-thumb{background:#c5d7e5;border-radius:999px;border:2px solid transparent;background-clip:padding-box}
  .provider-service-panel::-webkit-scrollbar-track{background:transparent}
}

/* v3.220 - Atención de proveedor: dos columnas equilibradas, un solo scroll por columna */
@media (min-width:1051px){
  .provider-workspace{
    grid-template-columns:minmax(300px,.88fr) minmax(560px,1.62fr);
    gap:12px;
    height:calc(100vh - 255px);
    min-height:520px;
    align-items:stretch;
    overflow:hidden;
  }
  .provider-coupon-summary{
    position:relative;
    top:auto;
    height:100%;
    max-height:none;
    overflow-y:auto;
    overscroll-behavior:contain;
    scrollbar-gutter:stable;
    padding:12px;
  }
  .provider-service-panel{
    height:100%;
    max-height:none;
    overflow-y:auto;
    overscroll-behavior:contain;
    scrollbar-gutter:stable;
    padding-right:3px;
  }
  .provider-coupon-summary::-webkit-scrollbar,
  .provider-service-panel::-webkit-scrollbar{width:9px}
  .provider-coupon-summary::-webkit-scrollbar-thumb,
  .provider-service-panel::-webkit-scrollbar-thumb{background:#c5d7e5;border-radius:999px;border:2px solid transparent;background-clip:padding-box}
  .provider-coupon-summary::-webkit-scrollbar-track,
  .provider-service-panel::-webkit-scrollbar-track{background:transparent}

  /* Evita scroll anidado dentro del editor de Persona */
  .person-update-scroll{
    max-height:none;
    overflow:visible;
    scrollbar-gutter:auto;
  }
  .person-update-actions{
    position:static;
  }
  .person-update-inline{
    margin-top:10px;
  }
  .person-update-inline>summary{
    position:sticky;
    top:0;
    z-index:3;
    border-bottom:1px solid #d8e5ef;
  }
}


/* v3.221 - Atención de proveedor: jerarquía visual clara */
.coupon-person-more{margin-top:7px;border-top:1px solid #e4edf4;padding-top:5px}
.coupon-person-more>summary{cursor:pointer;color:#315c7d;font-size:.76rem;font-weight:700;padding:5px 2px;list-style:none}
.coupon-person-more>summary::-webkit-details-marker{display:none}
.coupon-person-more>summary::before{content:"＋ ";font-weight:800}
.coupon-person-more[open]>summary::before{content:"− "}
.coupon-person-grid-secondary{margin-top:4px}
@media (min-width:1051px){
  .provider-workspace{grid-template-columns:340px minmax(0,1fr);gap:14px}
  .provider-coupon-summary{padding:11px}
  .provider-coupon-summary .card-title-row{margin-bottom:8px}
  .provider-coupon-summary .coupon-person-grid{grid-template-columns:1fr 1fr;gap:6px}
  .provider-coupon-summary .coupon-person-grid>div{padding:6px 7px}
  .person-update-inline{margin-top:8px;border-radius:9px}
  .person-update-inline>summary{padding:9px 10px;background:#edf7fc}
  .person-update-scroll{display:grid;grid-template-columns:1fr!important;gap:8px;padding:10px}
  .person-update-scroll .span-all{grid-column:1}
  .person-update-actions{padding:8px 10px;background:#f9fcff;border-top:1px solid #d8e5ef}
  .provider-service-panel>.card{padding:12px 14px}
}

/* v3.225 · Adjuntos desde vínculos externos */
.evidence-link-box{margin-top:10px;padding-top:10px;border-top:1px dashed #cbd5e1}.evidence-source-label{display:block;font-size:.78rem;font-weight:700;color:#475569;margin-bottom:5px}.evidence-link-row{display:grid;grid-template-columns:minmax(170px,.8fr) minmax(240px,1.5fr);gap:8px;align-items:center}.external-source-layout{grid-template-columns:minmax(300px,.8fr) minmax(520px,1.4fr)}
@media(max-width:900px){.evidence-link-row,.external-source-layout{grid-template-columns:1fr}}
.two-panel-config{display:grid;grid-template-columns:minmax(280px,.8fr) minmax(480px,1.3fr);gap:16px;align-items:start}.simple-list{display:flex;flex-direction:column;gap:7px;margin-top:12px}.simple-list-row{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;border:1px solid #e2e8f0;border-radius:10px;text-decoration:none;color:inherit;background:#fff}.simple-list-row:hover,.simple-list-row.active{border-color:#93c5fd;background:#eff6ff}.simple-list-row small{display:block;color:#64748b;margin-top:3px}
@media(max-width:900px){.two-panel-config{grid-template-columns:1fr}}
.provider-id-origin-only{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
.identity-person-source-note{border:1px solid #cfe0eb;background:#f5f9fc;border-radius:9px;padding:8px 10px;display:flex;flex-direction:column;justify-content:center}.identity-person-source-note small{color:#647b8b;margin-top:3px}


/* v3.241 · configuración por pasos horizontales */
.horizontal-config-shell{display:block}
.horizontal-config-shell>.attention-config-nav{
  position:static;top:auto;padding:7px;margin-bottom:12px;
  display:grid;grid-template-columns:repeat(auto-fit,minmax(118px,1fr));gap:6px;
  overflow-x:auto;align-items:stretch
}
.horizontal-config-shell>.attention-config-nav .attention-config-nav-title{display:none}
.horizontal-config-shell>.attention-config-nav .attention-config-step{
  margin:0;min-width:112px;display:flex;align-items:center;justify-content:center;gap:6px;
  padding:8px 7px;text-align:center;border-radius:999px;background:#eef4f8;border:1px solid transparent
}
.horizontal-config-shell>.attention-config-nav .attention-config-step>span{
  width:22px;height:22px;min-width:22px;border-radius:50%;font-size:10px
}
.horizontal-config-shell>.attention-config-nav .attention-config-step>div{min-width:0}
.horizontal-config-shell>.attention-config-nav .attention-config-step b{font-size:10.5px;white-space:nowrap}
.horizontal-config-shell>.attention-config-nav .attention-config-step small{display:none}
.horizontal-config-shell>.attention-config-nav .attention-config-step.active{background:#dff2fb;border-color:#77c5e8}
.horizontal-config-shell>.attention-config-nav .attention-help-box{display:none}
.horizontal-config-shell>.attention-config-content{width:100%}
@media(max-width:900px){
  .horizontal-config-shell>.attention-config-nav{display:flex;overflow-x:auto;scrollbar-width:thin}
  .horizontal-config-shell>.attention-config-nav .attention-config-step{flex:0 0 auto}
}

.param-stepbar{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:6px;margin:0 0 12px}
.param-stepbar button{border:1px solid transparent;background:#eef4f8;color:var(--dos-navy-deep);border-radius:999px;padding:9px 10px;font-weight:800;cursor:pointer;white-space:nowrap}
.param-stepbar button.active{background:#dff2fb;border-color:#77c5e8;color:#064f7a}
.param-panel{display:none}
.param-panel.active{display:block}
.param-panel .card{margin-top:0}
@media(max-width:760px){.param-stepbar{display:flex;overflow-x:auto}.param-stepbar button{flex:0 0 auto}}

/* v1.2.0 · identidad visual y recursos parametrizables */
.header-brand-logo{display:block;max-width:150px;max-height:54px;object-fit:contain}.nav-resource-icon{width:15px;height:15px;object-fit:contain;vertical-align:-3px;margin-right:5px;border-radius:3px}.app-breadcrumb{display:flex;align-items:center;gap:7px;font-size:10.5px;color:#6b7f90;margin:0 0 10px}.app-breadcrumb a{color:var(--dos-navy);font-weight:800;text-decoration:none}.country-context{margin-left:auto;background:#e8f2f8;color:var(--dos-navy);padding:3px 7px;border-radius:999px;font-weight:800}.context-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:12px}.context-head h1{margin:2px 0 4px}.toggle-card{display:flex;gap:9px;align-items:flex-start;border:1px solid #d8e2eb;border-radius:9px;padding:10px;background:#fbfdff}.toggle-card input{width:auto!important;margin-top:2px}.toggle-card span{display:grid;gap:3px}.toggle-card small{color:#6b7f90}.visual-library{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.visual-card{border:1px solid #d8e2eb;border-radius:10px;background:#fff;padding:9px;display:grid;grid-template-rows:115px auto;gap:8px}.visual-card.disabled{opacity:.55}.visual-thumb{height:115px;display:flex;align-items:center;justify-content:center;background:#f6f9fc;border:1px solid #e3ebf2;border-radius:8px;overflow:hidden}.visual-thumb img{width:100%;height:100%;object-fit:contain}.assignment-mini{width:68px;height:38px;object-fit:contain}.visual-assignment-preview{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.visual-assignment-preview>div{border:1px solid #d8e2eb;border-radius:9px;padding:9px;display:grid;gap:7px}.visual-assignment-preview img{width:100%;height:72px;object-fit:contain;background:#f6f9fc;border-radius:6px}.context-visual{display:grid;grid-template-columns:minmax(0,360px) 1fr;gap:12px;align-items:center;border:1px solid #d7e3ed;background:#fff;border-radius:11px;padding:9px;margin:8px 0 12px}.context-visual img{width:100%;max-height:170px;object-fit:contain;border-radius:7px}.context-visual>div{display:grid;gap:5px;color:#50667b}.context-visual>div b{color:#173a59}.login-logo{display:block;width:min(280px,85%);max-height:90px;object-fit:contain;margin:0 auto 12px}.compact-mode .wrap{padding-top:10px}.compact-mode .meal-card{padding:11px}.compact-mode .meal-table th,.compact-mode .meal-table td{padding:6px 7px}@media(max-width:1050px){.visual-library{grid-template-columns:repeat(3,1fr)}}@media(max-width:760px){.visual-library{grid-template-columns:1fr 1fr}.visual-assignment-preview{grid-template-columns:1fr}.context-visual{grid-template-columns:1fr}.context-head{display:block}.context-head>.btn{margin-top:8px}}@media(max-width:480px){.visual-library{grid-template-columns:1fr}}

/* v1.6.0 · listas inteligentes, alineadas con Conecta Salud */
.smart-table-scroll{max-width:100%;overflow:auto;border-radius:0 0 10px 10px}.smart-table-tools{position:relative;display:flex;justify-content:space-between;align-items:center;gap:8px;margin:0 0 8px;flex-wrap:nowrap}.smart-table-search{display:flex;align-items:center;gap:7px;min-width:220px;flex:1 1 360px;border:1px solid #ccd9e4;background:var(--surface,#fff);border-radius:8px;padding:5px 8px}.smart-table-search>span:first-child{font-size:16px;color:#60778a}.smart-table-search input{border:0!important;outline:0!important;box-shadow:none!important;padding:4px 2px!important;margin:0!important;background:transparent!important;width:100%;min-width:0}.smart-row-count{white-space:nowrap;font-size:10px;color:#6d8192;border-left:1px solid #dce5ec;padding-left:8px}.smart-table-actions{display:flex;align-items:center;gap:5px;flex:0 0 auto;flex-wrap:nowrap}.smart-table-btn{border:1px solid #b9cad8;background:#fff;color:#214b6b;border-radius:7px;padding:6px 9px;font-size:10.5px;font-weight:800;cursor:pointer;white-space:nowrap}.smart-table-btn:hover{background:#f0f7fb}.smart-table-menu{position:relative}.smart-export-menu{position:absolute;right:0;top:34px;z-index:55;min-width:130px;background:#fff;border:1px solid #c8d6e2;border-radius:8px;box-shadow:0 10px 28px rgba(25,55,80,.18);padding:5px}.smart-export-menu[hidden]{display:none!important}.smart-export-menu button{display:block;width:100%;border:0;background:transparent;text-align:left;padding:7px 9px;border-radius:6px;color:#214b6b;font-size:11px;font-weight:700;cursor:pointer}.smart-export-menu button:hover{background:#f0f7fb}.smart-column-picker,.smart-filter-panel{position:absolute;right:0;top:42px;z-index:54;background:#fff;border:1px solid #c8d6e2;border-radius:10px;box-shadow:0 12px 32px rgba(25,55,80,.18);padding:11px}.smart-column-picker{width:min(370px,calc(100vw - 36px))}.smart-filter-panel{width:min(540px,calc(100vw - 36px))}.smart-column-picker[hidden],.smart-filter-panel[hidden]{display:none!important}.smart-panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;color:#214b6b}.smart-panel-head small{display:block;color:#718596;font-weight:400;margin-top:2px}.smart-panel-head>button{border:0;background:transparent;font-size:22px;line-height:1;cursor:pointer;color:#60778a}.smart-column-picker-list{display:grid;grid-template-columns:1fr 1fr;gap:5px 8px;max-height:280px;overflow:auto;margin-top:9px}.smart-column-choice{display:flex!important;align-items:center;gap:7px;margin:0!important;padding:6px 7px;border:1px solid #e0e8ee;border-radius:7px;background:#fafcfd;font-size:10.5px!important;font-weight:700!important;color:#294c67!important}.smart-column-choice input{width:auto!important;margin:0!important}.smart-panel-foot{display:flex;justify-content:flex-end;gap:6px;margin-top:10px}.smart-filter-builder{display:grid;grid-template-columns:minmax(150px,1fr) minmax(170px,1.3fr) auto;gap:7px;align-items:center;margin-top:10px}.smart-filter-builder select,.smart-filter-builder input{width:100%;min-width:0;border:1px solid #c9d6e1;border-radius:7px;background:#fff;padding:7px 8px;font-size:11px}.smart-active-filters{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px;min-height:28px;align-items:center}.smart-filter-chip{display:inline-flex;align-items:center;gap:6px;border:1px solid #c7d9e6;background:#f1f7fb;color:#244f6d;border-radius:999px;padding:5px 8px;font-size:10.5px;font-weight:700}.smart-filter-chip button{border:0;background:transparent;color:#60778a;font-size:15px;line-height:1;cursor:pointer;padding:0}.smart-filter-empty{font-size:10.5px;color:#758896;font-style:italic}.smart-filter-count{display:inline-flex;align-items:center;justify-content:center;min-width:17px;height:17px;margin-left:3px;border-radius:999px;background:#123f6d;color:#fff;font-size:9px}.smart-movable-column{cursor:grab;user-select:none}.smart-movable-column:active,.dragging-column{cursor:grabbing}.dragging-column{opacity:.55;background:#dcebf6!important}.meal-card>.smart-table-tools:first-of-type{margin-top:2px}.milestone-section-panel .smart-table-tools{margin-top:5px}.milestone-activities-table{min-width:980px}@media(max-width:900px){.smart-table-tools{flex-wrap:wrap}.smart-table-search{flex-basis:100%}.smart-table-actions{width:100%;justify-content:flex-end;flex-wrap:wrap}}@media(max-width:620px){.smart-table-actions{justify-content:stretch}.smart-table-actions>.smart-table-btn,.smart-table-actions>.smart-table-menu{flex:1}.smart-table-menu>.smart-table-btn{width:100%}.smart-column-picker,.smart-filter-panel{left:0;right:auto;top:84px}.smart-column-picker-list,.smart-filter-builder{grid-template-columns:1fr}}
/* v1.8.0 · constructor de menú */
.menu-builder-layout{display:grid;grid-template-columns:minmax(480px,1.35fr) minmax(340px,.65fr);gap:14px;align-items:start}.menu-tree-root,.menu-tree-children{display:flex;flex-direction:column;gap:6px}.menu-tree-children{margin:6px 0 0 28px;padding-left:12px;border-left:2px solid #d9e5ee;min-height:5px}.menu-tree-cardline{display:flex;align-items:center;gap:9px;padding:9px 10px;border:1px solid #d9e5ee;border-radius:9px;background:#fff}.menu-tree-cardline a{display:flex;flex-direction:column;flex:1;text-decoration:none;color:inherit}.menu-tree-cardline small{color:#6c7f90}.drag-handle{cursor:grab;font-weight:800;color:#6e8192}.menu-kind,.system-tag{font-size:10px;font-weight:800;border-radius:999px;padding:3px 6px;background:#eaf3f8;color:#174e78}.system-tag{background:#eef1f4;color:#596b7a}.menu-tree-node.inactive>.menu-tree-cardline{opacity:.5}.menu-tree-node.dragging{opacity:.42}.drag-over{outline:2px dashed var(--theme-action,#159bd3);outline-offset:2px}.menu-root-target{border:1px dashed #a9bfd0;border-radius:8px;padding:8px;margin:8px 0;text-align:center;color:#607588;background:#f7fafc}.menu-builder-help{display:flex;gap:12px;flex-wrap:wrap;margin-top:10px;font-size:11px;color:#65798b}.role-visibility-panel{padding:10px;border:1px solid #dde7ee;border-radius:9px;background:#f8fbfd}.permission-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin-top:8px}.flag-check{display:flex;align-items:center;gap:6px;font-size:12px}.toast-status{position:fixed;right:20px;bottom:20px;background:#123f6d;color:#fff;padding:10px 14px;border-radius:8px;z-index:9999}@media(max-width:950px){.menu-builder-layout{grid-template-columns:1fr}}

/* v1.9.0 · Módulos y jerarquía Actividad/Subactividad */
.feature-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.feature-card{background:var(--surface,#fff);border:1px solid #d6e1ea;border-radius:12px;padding:14px;box-shadow:0 2px 8px rgba(20,50,80,.04)}.feature-card.is-active{border-left:4px solid var(--success,#77dda0)}.feature-card.is-off{opacity:.8;border-left:4px solid #b9c5cf}.feature-card-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.feature-card-head h3{margin:3px 0 2px}.feature-card-head code{font-size:11px;color:#667b8d}.feature-group{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:#537087;font-weight:700}.feature-card p{min-height:38px;color:#506578;font-size:13px}.feature-card-actions{display:grid;grid-template-columns:1fr auto auto;gap:12px;align-items:center;border-top:1px solid #edf2f6;padding-top:10px}.feature-card-actions>div{display:flex;flex-direction:column}.feature-switch{display:flex;align-items:center;gap:7px;cursor:pointer}.feature-switch input{display:none}.feature-switch span{width:38px;height:20px;border-radius:20px;background:#c8d2da;position:relative;transition:.2s}.feature-switch span:after{content:"";width:16px;height:16px;background:#fff;border-radius:50%;position:absolute;top:2px;left:2px;box-shadow:0 1px 2px rgba(0,0,0,.2);transition:.2s}.feature-switch input:checked+span{background:#239b56}.feature-switch input:checked+span:after{left:20px}.feature-switch em{font-style:normal;font-size:12px;color:#52677a}.module-summary{display:flex;align-items:baseline;gap:5px}.module-summary b{font-size:26px;color:var(--primary,#0a3161)}.status-pill{font-size:11px;font-weight:700;border-radius:999px;padding:4px 8px;background:#eef3f6}.status-pill.ok{background:#dff5e6;color:#176b36}.muted-pill{color:#687b8b}.activity-builder-layout{grid-template-columns:minmax(300px,360px) minmax(0,1fr)}.activity-tree-card{min-width:0}.activity-tree-table .subactivity-row td{background:#f8fbfd}.tree-branch{color:#7290a5;font-size:17px;margin-right:4px}.pill.soft{background:#eaf2f7;color:#45657b}.activity-tree-name.child{padding-left:12px;border-left:2px solid #d7e5ef}.activity-tree-name small{display:block;color:#6b7f90;margin:2px 0}.subactivity-row td:first-child{border-left:3px solid #9fc6db}.activity-create-card small{display:block;margin-top:4px}.milestone-activities-table .subactivity-row td{background:#f8fbfd}.milestone-activities-table .subactivity-row td:nth-child(2){padding-left:16px}@media(max-width:1000px){.feature-grid{grid-template-columns:1fr}.activity-builder-layout{grid-template-columns:1fr}}

/* v1.14.0 · Dashboard ejecutivo General + vistas por Milestone */
.dashboard-page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:12px}.dashboard-page-head h1{margin:2px 0 4px}.dashboard-updated{display:flex;align-items:center;gap:10px;border:1px solid #d7e3ed;background:#fff;border-radius:11px;padding:9px 11px;box-shadow:0 2px 8px rgba(18,63,109,.05);min-width:270px}.dashboard-updated>div{display:grid;gap:2px;flex:1}.dashboard-updated small{color:#6c8092}.dashboard-ms-tabs{display:flex;gap:7px;overflow-x:auto;padding:4px;margin:0 0 12px;border:1px solid #dce6ee;background:#f7fafc;border-radius:13px;scrollbar-width:thin}.dashboard-ms-tabs a{flex:1 0 auto;min-width:110px;text-align:center;padding:8px 12px;border-radius:9px;color:#34516b;text-decoration:none;font-weight:800;font-size:11px;white-space:nowrap}.dashboard-ms-tabs a:hover{background:#eaf4fb}.dashboard-ms-tabs a.active{background:linear-gradient(135deg,#0d5797,#1c8fe0);color:white;box-shadow:0 3px 10px rgba(21,114,184,.22)}
.dashboard-kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:0 0 12px}.milestone-kpis{grid-template-columns:repeat(6,minmax(0,1fr))}.dashboard-kpi-card{display:flex;align-items:center;gap:12px;border:1px solid #d7e3ed;background:#fff;border-radius:12px;padding:12px 14px;min-height:68px;box-shadow:0 2px 9px rgba(24,61,94,.05)}.dashboard-kpi-card>div{display:grid;gap:2px;min-width:0}.dashboard-kpi-card b{font-size:22px;color:#0b3767;line-height:1.05;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dashboard-kpi-card small{color:#668094}.kpi-icon{width:42px;height:42px;min-width:42px;border-radius:11px;display:grid;place-items:center;background:#e7f3fd;color:#147fd1;font-size:23px;font-weight:900}.kpi-icon.success{background:#e6f7ed;color:#1e9b56}.kpi-icon.danger{background:#fee9eb;color:#d64550}.kpi-icon.violet{background:#f0eafe;color:#7555d9}
.dashboard-general-grid{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(310px,.8fr);gap:12px;align-items:start}.dashboard-side-stack{display:grid;gap:12px}.dashboard-main-card{min-width:0}.card-title-link{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px}.card-title-link h3{margin:0}.card-title-link a{font-size:10.5px;font-weight:800;text-decoration:none;color:#167ec1;white-space:nowrap}.progress-inline{display:flex;align-items:center;gap:7px;min-width:105px}.progress-inline>span{font-size:10px;font-weight:800;min-width:30px}.progress-inline .progressbar{flex:1}.dashboard-row-go{display:inline-grid;place-items:center;width:24px;height:24px;border-radius:999px;text-decoration:none;background:#edf6fc;color:#167ec1;font-size:20px;font-weight:900}.alert-summary{display:grid;gap:2px;padding:9px 10px;border-left:4px solid #82abc8;border-bottom:1px solid #edf2f6}.alert-summary:last-child{border-bottom:0}.alert-summary.danger{border-left-color:#dc4f59}.alert-summary.warning{border-left-color:#e9a52a}.alert-summary.info{border-left-color:#2995d6}.alert-summary small{color:#6d8192}.mini-summary-table{width:100%;border-collapse:collapse}.mini-summary-table th,.mini-summary-table td{font-size:10.5px;padding:7px;border-bottom:1px solid #e8eff4;text-align:left}.mini-summary-table td:first-child small{display:block;color:#738797;margin-top:2px;max-width:190px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dashboard-featured-ms{margin-top:12px;display:grid;grid-template-columns:auto minmax(0,1fr) auto auto auto;gap:16px;align-items:center}.featured-copy h3{margin:2px 0 4px}.featured-copy p{margin:0 0 5px;color:#607589;font-size:11px}.featured-stat{display:grid;text-align:center;min-width:80px}.featured-stat b{font-size:22px;color:#0c396a}.featured-stat small{color:#738696}.featured-ring{--p:0;width:82px;height:82px;border-radius:50%;background:conic-gradient(#1495dc calc(var(--p)*1%),#e7eef4 0);position:relative;display:grid;place-items:center}.featured-ring:before{content:"";position:absolute;inset:10px;background:#fff;border-radius:50%}.featured-ring b,.featured-ring small{position:relative;z-index:1}.featured-ring b{font-size:17px;color:#0b3767}.featured-ring small{font-size:9px;color:#6c8293;margin-top:-25px}.featured-ring.large{width:128px;height:128px}.featured-ring.large:before{inset:15px}.featured-ring.large b{font-size:25px}.featured-ring.large small{font-size:10px;margin-top:-36px}
.milestone-dashboard-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;align-items:stretch}.milestone-dashboard-grid>.meal-card{min-width:0}.milestone-summary-card{grid-row:span 1}.summary-core{display:grid;grid-template-columns:auto 1fr;gap:14px;align-items:center}.summary-dl{display:grid;grid-template-columns:130px 1fr;gap:7px 9px;margin:10px 0 0;font-size:11px}.summary-dl dt{font-weight:800;color:#314f69}.summary-dl dd{margin:0;color:#567086}.scope-chips{display:flex;gap:7px;flex-wrap:wrap;margin-top:12px}.scope-chips span{background:#eaf4fb;color:#166a9d;border-radius:999px;padding:5px 9px;font-size:10px;font-weight:800}.dashboard-compact-table{width:100%;border-collapse:collapse}.dashboard-compact-table th{background:#f1f6fa;color:#3d5870;font-size:9.5px;text-transform:uppercase;letter-spacing:.02em}.dashboard-compact-table th,.dashboard-compact-table td{padding:7px 6px;border-bottom:1px solid #e8eff4;text-align:left;vertical-align:top;font-size:10.5px}.dashboard-compact-table tbody tr:last-child td{border-bottom:0}.indicator-stack{display:grid;gap:13px}.indicator-line{display:grid;gap:6px;padding-bottom:10px;border-bottom:1px solid #e8eff4}.indicator-line:last-child{border-bottom:0}.indicator-line>b{font-size:11px;color:#204560}.indicator-values{display:flex;justify-content:space-between;gap:10px;color:#59748a;font-size:10.5px}.indicator-values strong{color:#0d4e82}.timeline-card{margin-top:12px}.milestone-timeline{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin:12px 8px 4px}.timeline-point{position:relative;padding:26px 12px 4px;border-top:2px solid #a9cbe0;display:grid;gap:2px}.timeline-point>span{position:absolute;top:-7px;left:10px;width:13px;height:13px;border-radius:50%;background:#fff;border:3px solid #2998d8}.timeline-point b{font-size:10px;color:#1576b3}.timeline-point strong{font-size:11px;color:#153d5d}.timeline-point small{color:#718698;font-size:9.5px}
@media(max-width:1250px){.milestone-kpis{grid-template-columns:repeat(3,1fr)}.milestone-dashboard-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-featured-ms{grid-template-columns:auto 1fr auto auto}.dashboard-featured-ms>.btn{grid-column:2/-1;justify-self:end}}
@media(max-width:900px){.dashboard-page-head{display:block}.dashboard-updated{margin-top:8px}.dashboard-general-grid{grid-template-columns:1fr}.dashboard-kpi-grid,.milestone-kpis{grid-template-columns:repeat(2,1fr)}.milestone-dashboard-grid{grid-template-columns:1fr}.dashboard-featured-ms{grid-template-columns:auto 1fr}.featured-stat{display:none}.dashboard-featured-ms>.btn{grid-column:1/-1;justify-self:stretch;text-align:center}.milestone-timeline{grid-template-columns:1fr}.timeline-point{border-top:0;border-left:2px solid #a9cbe0;padding:8px 8px 14px 26px}.timeline-point>span{top:8px;left:-7px}.summary-core{grid-template-columns:1fr;justify-items:center}.summary-dl{grid-template-columns:1fr}.summary-dl dd{margin-bottom:5px}}
@media(max-width:560px){.dashboard-kpi-grid,.milestone-kpis{grid-template-columns:1fr}.dashboard-kpi-card{min-height:58px}.dashboard-kpi-card b{font-size:18px}}

/* v1.15.0 · Dashboard fiel al mockup aprobado */
.dashboard-v115-shell{width:min(1510px,calc(100vw - 34px));margin-left:50%;transform:translateX(-50%);padding:2px 0 10px}.v115-head{display:flex;justify-content:space-between;align-items:flex-start;gap:22px;margin:0 0 14px}.v115-head-copy{min-width:0}.v115-breadcrumb{font-size:11px;color:#647d92;margin-bottom:7px}.v115-head h1{font-size:31px;line-height:1.12;margin:0 0 4px;color:#092d59;letter-spacing:-.45px}.v115-head p{margin:0;color:#62798e;font-size:13px}.v115-refresh-card{display:grid;grid-template-columns:44px 1fr auto;align-items:center;gap:11px;min-width:360px;padding:11px 12px;background:#fff;border:1px solid #dce7f0;border-radius:13px;box-shadow:0 4px 14px rgba(10,45,85,.07)}.v115-refresh-icon{width:40px;height:40px;border-radius:11px;display:grid;place-items:center;background:#ecf5fd;color:#116fb9;font-size:25px}.v115-refresh-card>div{display:grid;gap:2px}.v115-refresh-card b{font-size:12px;color:#173d65}.v115-refresh-card small{font-size:10px;color:#70879b}.v115-refresh-btn{padding:9px 13px;border-radius:8px;background:#168be0;color:#fff!important;text-decoration:none;font-size:11px;font-weight:800;white-space:nowrap}
.v115-step-tabs{display:flex;gap:7px;padding:5px;background:#f5f8fb;border:1px solid #dce7f0;border-radius:15px;overflow:auto;margin-bottom:14px}.v115-step-tabs a{flex:1 0 120px;text-align:center;padding:10px 15px;border-radius:10px;text-decoration:none;color:#35516c;background:#eef3f7;font-size:12px;font-weight:800;transition:.15s}.v115-step-tabs a:hover{background:#e4f0f8}.v115-step-tabs a.active{background:linear-gradient(135deg,#1261ab,#168be0);color:#fff;box-shadow:0 4px 10px rgba(22,116,191,.25)}
.v115-kpis{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;margin-bottom:14px}.v115-kpis-general{grid-template-columns:repeat(4,minmax(0,1fr))}.v115-kpi{min-height:80px;padding:13px 15px;border:1px solid #d9e4ee;border-radius:14px;background:#fff;box-shadow:0 4px 12px rgba(21,55,91,.06);display:flex;align-items:center;gap:13px;text-decoration:none;color:inherit;transition:.13s}.v115-kpi:hover{transform:translateY(-1px);box-shadow:0 7px 17px rgba(21,55,91,.10)}.v115-kpi>div{display:grid;gap:3px;min-width:0}.v115-kpi strong{font-size:25px;color:#0a3470;line-height:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.v115-kpi small{font-size:12px;color:#637d94}.v115-kpi-icon{width:50px;height:50px;min-width:50px;border-radius:13px;display:grid;place-items:center;font-size:26px;font-weight:900}.v115-kpi-icon.blue,.v115-kpi-icon.cyan{background:#e9f4fd;color:#1689d9}.v115-kpi-icon.green{background:#e9f8ee;color:#24a45b}.v115-kpi-icon.violet,.v115-kpi-icon.purple{background:#f1edff;color:#7155e7}.v115-kpi-icon.red{background:#ffeced;color:#de4951}
.v115-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:12px}.v115-panel{background:#fff;border:1px solid #d8e4ee;border-radius:14px;padding:14px 16px;box-shadow:0 4px 13px rgba(16,49,82,.055);min-width:0}.v115-panel-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}.v115-panel-head h3{margin:0;color:#0a3264;font-size:17px}.v115-panel-head a{font-size:11px;font-weight:800;color:#0b80d2;text-decoration:none;white-space:nowrap}.v115-summary-core{display:grid;grid-template-columns:145px minmax(0,1fr);gap:15px;align-items:center}.v115-ring{--p:0;width:132px;height:132px;border-radius:50%;background:conic-gradient(#168fdf calc(var(--p)*1%),#e7eef4 0);display:grid;place-items:center;position:relative}.v115-ring:after{content:"";position:absolute;inset:17px;background:#fff;border-radius:50%}.v115-ring>div{position:relative;z-index:2;display:grid;text-align:center}.v115-ring strong{font-size:27px;color:#0a3470}.v115-ring small{color:#6b8296}.v115-ring.small{width:88px;height:88px}.v115-ring.small:after{inset:11px}.v115-ring.small strong{font-size:18px}.v115-summary-text{min-width:0}.v115-summary-text dl{display:grid;grid-template-columns:130px 1fr;gap:7px 9px;margin:12px 0 0;font-size:11px}.v115-summary-text dt{font-weight:800;color:#38566f}.v115-summary-text dd{margin:0;color:#48657c;line-height:1.35}.v115-chips{display:flex;gap:8px;flex-wrap:wrap;margin-top:13px}.v115-chips span{background:#eaf4fd;color:#176ca6;border-radius:9px;padding:7px 10px;font-size:10.5px;font-weight:800}.v115-status{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:4px 8px;background:#e7f3fd;color:#176ca6;font-size:10px;font-weight:800;white-space:nowrap}.v115-status.ok{background:#e7f7ed;color:#1f7e46}.v115-status.danger{background:#fee8e9;color:#bd333c}.v115-status.warning{background:#fff2d4;color:#9b6c00}
.v115-table-wrap{overflow:auto}.v115-table{width:100%;border-collapse:collapse}.v115-table th{background:#eff5f9;color:#415c73;font-size:10px;text-transform:none;letter-spacing:0;position:static}.v115-table th,.v115-table td{padding:7px 8px;border-bottom:1px solid #e8eef3;font-size:10.5px;vertical-align:middle;white-space:normal}.v115-table tr:last-child td{border-bottom:0}.v115-table td:first-child{color:#224c72}.v115-progress-cell{display:grid;grid-template-columns:34px minmax(60px,1fr);align-items:center;gap:7px;min-width:105px}.v115-progress-cell>b{font-size:10px;color:#0e416f}.v115-progress-cell>span,.v115-progress{height:8px;background:#e6eef4;border-radius:999px;overflow:hidden;display:block}.v115-progress-cell i,.v115-progress i{height:100%;display:block;background:linear-gradient(90deg,#178bcf,#119fe0);border-radius:999px}.v115-indicators{display:grid;gap:10px}.v115-indicator{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px 12px;padding:3px 0 11px;border-bottom:1px solid #e9eff4}.v115-indicator:last-child{border-bottom:0}.v115-indicator>b{font-size:11px;color:#183f66;line-height:1.25}.v115-indicator-meta{display:flex;gap:14px;align-items:center;font-size:10px;color:#59758b}.v115-indicator .v115-progress{grid-column:1/-1}.v115-indicator small{grid-column:1/-1;color:#6e8192}.v115-doc{color:#0d8de0;font-size:14px}.v115-level{display:inline-flex;padding:4px 8px;border-radius:999px;font-size:10px;font-weight:800}.v115-level.high{background:#fee5e7;color:#bd303a}.v115-level.medium{background:#fff0c9;color:#926600}.v115-level.low{background:#e8f5ec;color:#2f7b4d}.v115-empty{padding:18px!important;text-align:center;color:#72879a!important}
.v115-timeline-panel{margin-top:0}.v115-timeline{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin:18px 15px 3px}.v115-time-point{position:relative;padding:18px 18px 4px;border-top:2px solid #b8d2e5;display:grid;gap:2px}.v115-time-point>span{position:absolute;width:14px;height:14px;border:3px solid #168ee0;background:#fff;border-radius:50%;left:0;top:-8px}.v115-time-point b{font-size:10px;color:#0d7fcf}.v115-time-point strong{font-size:11.5px;color:#163e63}.v115-time-point small{font-size:9.8px;color:#71879a}
.v115-general-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(330px,.85fr);gap:12px;margin-bottom:12px}.v115-side-stack{display:grid;gap:12px}.v115-head-actions{display:flex;gap:7px}.v115-head-actions a{background:#eaf4fd;padding:7px 10px;border-radius:8px}.v115-alert{display:grid;grid-template-columns:28px 1fr;gap:9px;padding:10px 0;border-bottom:1px solid #e9eff4}.v115-alert:last-child{border-bottom:0}.v115-alert>span{width:24px;height:24px;border-radius:50%;display:grid;place-items:center;color:#fff;font-weight:900;background:#7a9bb5}.v115-alert.danger>span{background:#df4650}.v115-alert.warning>span{background:#e7a12a}.v115-alert.info>span{background:#258ed0}.v115-alert>div{display:grid;gap:2px}.v115-alert b{font-size:11px;color:#173f65}.v115-alert small{font-size:10px;color:#6e8497}.v115-objective-table td:first-child small{display:block;margin-top:2px;color:#74889a;max-width:260px}.v115-row-go{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:#edf6fc;color:#147ac0;text-decoration:none;font-size:18px}.v115-featured{margin-top:12px}.v115-featured-body{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto auto;align-items:center;gap:18px}.v115-featured-copy h3{margin:0 0 4px;font-size:17px}.v115-featured-copy p{margin:0 0 6px;color:#657e92;font-size:11px}.v115-featured-stat{display:grid;text-align:center;min-width:95px}.v115-featured-stat b{font-size:25px;color:#0a3470}.v115-featured-stat small{color:#74889a}.v115-detail-btn{background:#0d4d8a;color:#fff!important;text-decoration:none;padding:11px 16px;border-radius:8px;font-weight:800;font-size:11px}
@media(max-width:1300px){.v115-kpis{grid-template-columns:repeat(3,1fr)}.v115-grid{grid-template-columns:repeat(2,1fr)}.v115-grid-top .v115-summary-panel{grid-column:1/-1}.v115-general-grid{grid-template-columns:1fr}.v115-featured-body{grid-template-columns:auto 1fr auto auto}.v115-detail-btn{grid-column:2/-1;justify-self:end}}
@media(max-width:850px){.dashboard-v115-shell{width:100%;margin-left:0;transform:none}.v115-head{display:grid}.v115-refresh-card{min-width:0;width:100%}.v115-kpis,.v115-kpis-general{grid-template-columns:repeat(2,1fr)}.v115-grid{grid-template-columns:1fr}.v115-summary-core{grid-template-columns:1fr;justify-items:center}.v115-summary-text dl{grid-template-columns:1fr}.v115-featured-body{grid-template-columns:auto 1fr}.v115-featured-stat{display:none}.v115-detail-btn{grid-column:1/-1;justify-self:stretch;text-align:center}.v115-timeline{grid-template-columns:1fr;margin-left:8px}.v115-time-point{border-top:0;border-left:2px solid #b8d2e5;padding:8px 8px 16px 22px}.v115-time-point>span{left:-8px;top:8px}}
@media(max-width:520px){.v115-kpis,.v115-kpis-general{grid-template-columns:1fr}.v115-head h1{font-size:24px}.v115-refresh-card{grid-template-columns:36px 1fr}.v115-refresh-btn{grid-column:1/-1;text-align:center}.v115-kpi{min-height:68px}.v115-kpi-icon{width:42px;height:42px;min-width:42px}.v115-kpi strong{font-size:21px}}

/* v1.18.0 - Alcances de usuario por proyecto/milestone */
.scope-project-card{margin-bottom:14px}.scope-project-pill{display:inline-flex;padding:7px 11px;border:1px solid #cbd8e6;border-radius:999px;text-decoration:none;color:#173a61;background:#fff;font-weight:700}.scope-project-pill.active{background:var(--primary,#0b3b6f);color:#fff;border-color:var(--primary,#0b3b6f)}.scope-mode-row{display:grid;grid-template-columns:minmax(220px,1.2fr) minmax(220px,1fr) minmax(200px,1fr) auto auto;gap:14px;align-items:center;margin-top:14px;padding-top:14px;border-top:1px solid #e2eaf2}.scope-mode-row>label{display:flex;align-items:center;gap:7px}.scope-perms{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.scope-perms label{display:inline-flex;gap:5px;align-items:center;white-space:nowrap;font-size:.9rem}.scope-help{margin-top:12px;padding:9px 11px;background:#f4f8fc;border-left:3px solid #2b8bc6;border-radius:6px;color:#4c6176}.scope-dual{display:grid;grid-template-columns:1fr 1.15fr;gap:14px;align-items:start}.compact-heading{margin-bottom:10px}.count-badge{display:inline-flex;align-items:center;justify-content:center;min-width:28px;height:28px;border-radius:999px;background:#edf4fb;color:#0b3b6f;font-weight:800}.scope-list{max-height:520px;overflow:auto;border:1px solid #dbe5ef;border-radius:8px}.scope-item{display:flex;gap:10px;padding:10px 12px;border-bottom:1px solid #edf2f7;cursor:pointer}.scope-item:last-child{border-bottom:0}.scope-item:hover{background:#f7fbff}.scope-item span{display:flex;flex-direction:column;gap:2px}.scope-item small,.scope-ms-name small{color:#708296}.scope-assign-footer{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-top:12px}.assigned-scope-list{display:flex;flex-direction:column;gap:8px}.assigned-scope-row{display:grid;grid-template-columns:minmax(230px,1fr) auto auto auto;gap:10px;align-items:center;padding:10px;border:1px solid #dbe5ef;border-radius:8px;background:#fff}.scope-ms-name{display:flex;flex-direction:column;gap:2px}.scope-ms-name>b{color:#0b3b6f}.empty-state{padding:18px;text-align:center;color:#73869a}.wrap{flex-wrap:wrap}@media(max-width:1100px){.scope-mode-row{grid-template-columns:1fr 1fr}.scope-dual{grid-template-columns:1fr}.assigned-scope-row{grid-template-columns:1fr}.scope-assign-footer{align-items:flex-start;flex-direction:column}}


/* ProEva v0.6.0 · Seguimiento de trabajo de campo */
.build-version{font-size:.72rem;font-weight:800;background:#eaf2fb;color:#173b65;border:1px solid #b8cee3;border-radius:4px;padding:5px 9px;white-space:nowrap;box-shadow:none}
.fieldwork-page-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:12px}.fieldwork-page-head h1{margin:2px 0 4px}.fieldwork-actions{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}.fieldwork-kpis{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:8px;margin-bottom:12px}.fieldwork-kpi{background:#fff;border:1px solid #d7e3ed;border-radius:9px;padding:10px 11px;min-height:66px;display:grid;gap:2px}.fieldwork-kpi b{font-size:21px;line-height:1;color:#0b3767}.fieldwork-kpi span{font-size:10px;color:#657b8f;font-weight:700}.fieldwork-kpi.alert b{color:#b85622}.fieldwork-kpi.success b{color:#237548}.fieldwork-filterbar{display:grid;grid-template-columns:1.5fr repeat(4,minmax(130px,1fr)) auto;gap:7px;align-items:end;margin-bottom:10px}.fieldwork-filterbar .field{margin:0}.fieldwork-filterbar input,.fieldwork-filterbar select{width:100%}.fieldwork-shell{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(360px,.75fr);gap:12px;align-items:start}.fieldwork-list-card{min-width:0}.fieldwork-table{min-width:1080px}.fieldwork-table tr.selected td{background:#edf6fb!important}.fieldwork-case-link{font-weight:800;color:#0d4f82;text-decoration:none}.fieldwork-case-meta{font-size:10px;color:#6a7f90;margin-top:2px}.fieldwork-status{display:inline-flex;align-items:center;border-radius:999px;padding:3px 7px;font-size:9.5px;font-weight:800;white-space:nowrap;background:#edf2f6;color:#496175}.fieldwork-status.completado{background:#e4f6e9;color:#22693d}.fieldwork-status.rechazo,.fieldwork-status.no-localizado{background:#fdebed;color:#9a3d46}.fieldwork-status.recontacto-programado,.fieldwork-status.no-respondio{background:#fff3cf;color:#7a5a00}.fieldwork-status.contactado,.fieldwork-status.kobo-recibido,.fieldwork-status.encuesta-iniciada{background:#e4f2fb;color:#176a9e}.fieldwork-status.reemplazo-solicitado,.fieldwork-status.reemplazado{background:#f2eafd;color:#6a49a1}.fieldwork-detail{position:sticky;top:104px;display:grid;gap:10px}.fieldwork-summary{display:grid;grid-template-columns:1fr 1fr;gap:7px 10px;font-size:11px}.fieldwork-summary dt{font-weight:800;color:#36536c}.fieldwork-summary dd{margin:0;color:#5f7487}.fieldwork-summary .wide{grid-column:1/-1}.fieldwork-timeline{display:grid;gap:8px;max-height:290px;overflow:auto;padding-right:3px}.fieldwork-event{position:relative;border-left:2px solid #bfd4e3;padding:2px 0 8px 12px}.fieldwork-event:before{content:"";position:absolute;left:-5px;top:4px;width:8px;height:8px;border-radius:50%;background:#258ec8}.fieldwork-event-head{display:flex;justify-content:space-between;gap:8px;font-size:10px}.fieldwork-event-head b{color:#234d6d}.fieldwork-event p{font-size:10.5px;color:#607589;margin:3px 0 0;white-space:pre-line}.fieldwork-followup-form{display:grid;grid-template-columns:1fr 1fr;gap:7px}.fieldwork-followup-form .wide{grid-column:1/-1}.fieldwork-empty{padding:24px;text-align:center;color:#708496}.replacement-box{border:1px dashed #c8d7e2;border-radius:8px;background:#fafcfd;padding:9px}.replacement-box summary{cursor:pointer;font-size:11px;font-weight:800;color:#31536c}.daily-control-note{font-size:10px;color:#687d8f;margin-top:5px}.fieldwork-new-case details>summary{cursor:pointer;font-weight:800;color:#1f4d70}.fieldwork-new-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:10px}.fieldwork-new-grid .span-2{grid-column:span 2}.fieldwork-new-grid .span-4{grid-column:1/-1}@media(max-width:1250px){.fieldwork-kpis{grid-template-columns:repeat(4,1fr)}.fieldwork-shell{grid-template-columns:1fr}.fieldwork-detail{position:static}.fieldwork-filterbar{grid-template-columns:repeat(3,1fr)}.fieldwork-filterbar .search-field{grid-column:1/-1}}@media(max-width:760px){.fieldwork-kpis{grid-template-columns:repeat(2,1fr)}.fieldwork-filterbar,.fieldwork-new-grid,.fieldwork-followup-form{grid-template-columns:1fr}.fieldwork-new-grid .span-2,.fieldwork-new-grid .span-4,.fieldwork-followup-form .wide{grid-column:1}.fieldwork-actions{justify-content:flex-start}.fieldwork-page-head{display:block}}

/* ===== ProEva v0.8.2 · Diseño aprobado AIMS/Conecta ===== */
.proeva-header{background:linear-gradient(180deg,#0d477c,#073762);border-bottom:0;box-shadow:0 3px 14px #072c4c33}
.proeva-header-main{height:58px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;max-width:1600px;margin:auto;padding:0 22px;position:relative;color:#fff}
.proeva-brand{color:#fff;text-decoration:none;display:flex;flex-direction:column;justify-self:start;line-height:1.1}
.proeva-brand-title{font-size:24px;font-weight:900;letter-spacing:-.4px}
.proeva-brand-subtitle{font-size:10.5px;color:#e5eff8;margin-top:3px}
.proeva-version-badge{justify-self:center;background:#143f69;border:1px solid #7c9cbb;border-radius:5px;padding:6px 12px;font-size:11px;font-weight:800;white-space:nowrap}
.proeva-user-tools{justify-self:end;display:flex;align-items:center;gap:10px;font-size:10.5px}
.proeva-country-chips{display:flex;gap:6px}.proeva-country-chips a{color:#fff;text-decoration:none;background:#1f5b96;border-radius:10px;padding:5px 8px;font-weight:800}.proeva-country-chips a.active{background:#32a0ef}
.proeva-user-link{color:#fff;text-decoration:none;font-weight:700}.proeva-logout{color:#fff;text-decoration:none;border:1px solid #9cb5cc;border-radius:6px;padding:7px 12px;font-weight:800}
.proeva-top{min-height:42px;background:#073762;justify-content:center!important;padding:0 20px!important;border-top:1px solid #ffffff13}
.proeva-nav-center{display:flex;align-items:center;justify-content:center;gap:3px;flex-wrap:wrap}
.proeva-nav-center>a,.proeva-nav-center .menu-trigger{min-height:42px;display:flex;align-items:center;padding:0 14px;color:#fff!important;font-size:12px;font-weight:700;text-decoration:none}
.proeva-nav-center>a:hover,.proeva-nav-center .menu-trigger:hover{background:#ffffff12}.proeva-top .menu{display:flex}
.wrap{max-width:1600px!important;padding:18px 24px 28px!important}.page-context-icon{display:none!important}
.proeva-page-head{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-bottom:12px}
.proeva-page-head h1{font-size:28px;line-height:1.1;margin:0;color:#0c3b70}.proeva-page-head p{margin:6px 0 0;color:#547394;font-size:13px}
.page-status{display:flex;align-items:center;gap:12px;font-size:10.5px;color:#66809a}.page-status b{background:#e4f7ee;color:#14784a;border-radius:20px;padding:8px 14px}
.coord-tabs{display:flex;align-items:stretch;gap:10px;background:#fff;border:1px solid #dbe7f1;border-radius:10px;padding:0 10px;margin-bottom:14px;overflow:auto}
.coord-tabs a{display:flex;align-items:center;gap:7px;min-height:48px;padding:0 14px;border-bottom:3px solid transparent;color:#234b73;text-decoration:none;font-size:12px;white-space:nowrap}
.coord-tabs a.active{color:#147bd1;border-bottom-color:#147bd1;font-weight:900}
.executive-kpis{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin-bottom:12px}
.exec-kpi{background:#fff;border:1px solid #dbe7f1;border-radius:12px;padding:14px;display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;min-height:118px}
.exec-kpi .kpi-icon{width:38px;height:38px;border-radius:10px;background:#e7f2ff;color:#147bd1;display:grid;place-items:center;font-size:20px;font-weight:900}
.exec-kpi .kpi-icon.success{background:#e4f7ee;color:#1f9d60}.exec-kpi .kpi-icon.danger{background:#ffe8ea;color:#dd3545}.exec-kpi .kpi-icon.warn{background:#fff3d8;color:#ec9b00}
.exec-kpi small{display:block;font-weight:800;color:#17466f}.exec-kpi strong{display:block;font-size:30px;color:#0d3568;line-height:1;margin:5px 0}.exec-kpi em{font-size:10px;color:#71879c;font-style:normal}
.ring{--pct:0;width:76px;height:76px;border-radius:50%;background:conic-gradient(#338df0 calc(var(--pct)*1%),#e9eff5 0);position:relative;display:grid;place-items:center}.ring:after{content:"";position:absolute;inset:10px;background:#fff;border-radius:50%}.ring b{position:relative;z-index:1;color:#0f3b6f;font-size:18px}.ring.green{background:conic-gradient(#2eba70 calc(var(--pct)*1%),#e9eff5 0)}.ring.orange{background:conic-gradient(#ff7b3b calc(var(--pct)*1%),#e9eff5 0)}
.dashboard-grid-main{display:grid;grid-template-columns:1.25fr 1fr 1fr;gap:12px;margin-bottom:12px}
.panel-card{background:#fff;border:1px solid #dbe7f1;border-radius:12px;padding:14px;box-shadow:0 2px 8px #103b6310}
.panel-title{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.panel-title h2{font-size:16px;margin:0;color:#0c3b70}.panel-title span,.panel-title a{font-size:10.5px;color:#67809a;text-decoration:none}
.instrument-bars{display:grid;gap:12px}.instrument-row{display:grid;grid-template-columns:150px 1fr 80px 46px;align-items:center;gap:8px;font-size:11px}.instrument-row b{color:#173f68}.instrument-row span{text-align:right;color:#627a90}.instrument-row strong{text-align:right;color:#0d3b6c}
.bar-track{height:10px;border-radius:20px;background:#e8eef4;overflow:hidden}.bar-track i{display:block;height:100%;background:#2d8df2;border-radius:20px}.bar-track .bar-2{background:#2ebd70}.bar-track .bar-3{background:#7c5ee7}.bar-track .bar-4{background:#ff7b3d}.bar-track .bar-5{background:#22bac2}
.coordinator-progress{display:grid;gap:8px}.coord-progress-row{display:grid;grid-template-columns:36px 140px 1fr 44px;align-items:center;gap:8px;text-decoration:none;color:#163d64;background:#f9fbfd;border:1px solid #edf2f6;border-radius:8px;padding:8px}
.avatar{width:34px;height:34px;border-radius:50%;background:#208cf0;color:#fff;display:grid;place-items:center;font-weight:900}.coord-progress-row small{display:block;color:#7890a5;font-size:9.5px}.coord-progress-row strong{color:#0b3b6f}
.alert-panel{display:grid;align-content:start}.alert-line{display:flex;align-items:center;gap:10px;padding:9px 0;border-top:1px solid #eef3f7}.alert-line:first-of-type{border-top:0}.alert-line>span{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;font-weight:900}.alert-line div{display:grid}.alert-line small{color:#8194a6;font-size:9.5px}.alert-line.danger>span{background:#ffe5e8;color:#df3043}.alert-line.warning>span{background:#fff2d6;color:#e79b00}.alert-line.info>span{background:#e4f0ff;color:#208cf0}.alert-line.success>span{background:#e0f7e9;color:#1d9f5f}
.instrument-cards{display:grid;grid-template-columns:repeat(5,1fr);gap:10px}.instrument-mini{border:1px solid #dfe8f0;border-radius:9px;padding:11px;text-decoration:none;color:#173f68;display:grid;gap:7px}.instrument-mini strong{font-size:22px;color:#0b376a}.instrument-mini span{font-size:10px;color:#6c8295}
.privacy-table-card{margin-top:12px}.privacy-help{font-size:10px!important;background:#eef5ff;color:#3f6f9e!important;border-radius:20px;padding:6px 10px}
.table-scroll{overflow:auto}.proeva-table{width:100%;border-collapse:collapse;font-size:10.5px;min-width:900px}.proeva-table th{background:#f2f6fa;color:#35546f;text-align:left;padding:9px;border-bottom:1px solid #dbe5ed;white-space:nowrap}.proeva-table td{padding:9px;border-bottom:1px solid #edf2f5;color:#35516b;vertical-align:middle}.proeva-table tr:hover td{background:#f9fcff}
.sensitive-value{display:inline-block;transition:filter .18s ease,opacity .18s ease;max-width:240px}.sensitive-value.authorized{filter:blur(5px);cursor:zoom-in;user-select:none}.sensitive-value.authorized:hover,.sensitive-value.authorized:focus{filter:blur(0);user-select:text;outline:none}.sensitive-value.locked{filter:blur(4px);color:#7d8b97;user-select:none}
.status-pill,.selection-pill,.scope-badge{display:inline-flex;align-items:center;border-radius:20px;padding:4px 8px;font-size:9px;font-weight:800;background:#eaf2f8;color:#41647e;white-space:nowrap}.selection-pill.titular{background:#e3f2ff;color:#1470bb}.selection-pill.reemplazo{background:#fff1cf;color:#a36b00}.status-pill{background:#e7f7ed;color:#258256}
.sample-summary-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:12px}.sample-summary-card{background:#fff;border:1px solid #dbe7f1;border-radius:12px;padding:14px;text-decoration:none;color:#173e65}.sample-summary-card>div{display:flex;align-items:center;gap:8px}.sample-icon{width:34px;height:34px;border-radius:10px;background:#e5f1ff;display:grid;place-items:center}.sample-summary-card dl{display:grid;grid-template-columns:repeat(3,1fr);margin:12px 0 0}.sample-summary-card dl div{border-right:1px solid #e6edf3;text-align:center}.sample-summary-card dl div:last-child{border:0}.sample-summary-card dt{font-size:10px;color:#70869a}.sample-summary-card dd{margin:3px 0 0;font-size:22px;font-weight:900;color:#0d3b6c}
.sample-filterbar{display:grid;grid-template-columns:1.4fr repeat(4,1fr) auto auto;gap:8px;align-items:end;background:#fff;border:1px solid #dbe7f1;border-radius:12px;padding:10px;margin-bottom:12px}.sample-filterbar .field{margin:0}.sample-filterbar input,.sample-filterbar select{width:100%}
.table-action{color:#0879d2;text-decoration:none;font-weight:800;font-size:9.5px}
.site-top-grid{display:grid;grid-template-columns:1.35fr .75fr .55fr;gap:12px;margin-bottom:12px}.site-selector{display:grid;grid-template-columns:1fr 1fr;gap:9px}.site-selector .wide{grid-column:1/-1}.site-note{background:#e9f4ff;color:#2374b8;border-radius:8px;padding:9px 11px;font-size:10px;margin-top:10px}.site-progress{display:flex;align-items:center;justify-content:center;gap:22px}.site-progress dl{margin:0;display:grid;gap:8px}.site-progress dl div{display:flex;justify-content:space-between;gap:20px}.site-progress dt{color:#66809a;font-size:10px}.site-progress dd{margin:0;font-weight:900;color:#0b3b6f}.site-actions{display:grid;align-content:start;gap:8px}.site-actions a{border:1px solid #cdddea;border-radius:7px;padding:10px;text-decoration:none;color:#156dac;font-weight:800;font-size:10px}
.sample-selected-strip{display:grid;grid-template-columns:repeat(7,1fr);gap:0;background:#fff;border:1px solid #dbe7f1;border-radius:12px;margin-bottom:12px;overflow:hidden}.sample-selected-strip>div{padding:13px;border-right:1px solid #e8eff4;display:grid;gap:4px}.sample-selected-strip>div:last-child{border:0}.sample-selected-strip small{font-size:9px;color:#71879b}.sample-selected-strip b{font-size:11px;color:#123e69}
.link-layout{display:grid;grid-template-columns:1fr 1fr;gap:12px}.link-config-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.link-config-grid>div{border:1px solid #e2eaf0;border-radius:8px;padding:12px;display:grid;gap:5px}.link-config-grid small{color:#72879a;font-size:9px}.link-config-grid b{font-size:11px;color:#17466e}.privacy-callout{margin-top:12px;background:#edf6ff;border-radius:8px;padding:11px;color:#3e6d98;font-size:10px}.qr-body{display:grid;grid-template-columns:240px 1fr;gap:18px;align-items:start}.large-qr{width:220px;height:220px;object-fit:contain;border:1px solid #e0e7ed;border-radius:9px;padding:8px}.qr-actions{display:grid;gap:8px}.qr-actions label{font-size:10px;font-weight:800;color:#294e6e}.link-copy-row{display:grid;grid-template-columns:1fr auto;gap:7px}.link-copy-row input{min-width:0}.success-btn{background:#22ae61!important}.whatsapp-btn{background:#31bf6d!important}.qr-not-configured{padding:40px;text-align:center;background:#f7fafc;border-radius:10px;color:#506a80}
.roles-layout{display:grid;grid-template-columns:minmax(360px,.75fr) minmax(0,1.7fr);gap:12px}.permission-groups{display:grid;grid-template-columns:1fr 1fr;gap:8px}.permission-group{border:1px solid #dfe8f0;border-radius:9px;padding:10px;display:grid;gap:8px}.permission-group h3{margin:0;color:#184b76;font-size:11px}.permission-group label{font-size:10px;color:#38566f}.permission-group p{font-size:9px;color:#758a9c;margin:0}.scope-badge.global{background:#e4f7ed;color:#18824d}.scope-badge.tabs{background:#efe9ff;color:#6d51b0}.scope-badge.local{background:#e8f2ff;color:#2475b9}.scope-badge.reveal{background:#fff0cf;color:#976600}.permission-chips{display:flex;gap:4px;flex-wrap:wrap}.permission-chips span{background:#e8f5ed;color:#21804e;padding:3px 6px;border-radius:12px;font-size:8.5px}.privacy-preview{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:12px}.privacy-preview>div{border:1px solid #dfe8ef;border-radius:8px;padding:10px;display:grid;gap:7px}.save-badge{background:#e4f7ed;color:#1a7d4d;border-radius:20px;padding:8px 12px;font-size:10px;font-weight:800}.fieldwork-cta{display:flex;gap:8px;margin:10px 0}.fieldwork-cta-copy{padding:22px;background:#f4f8fb;border:1px dashed #cbdbe7;border-radius:9px;color:#526f87}
@media(max-width:1150px){.executive-kpis{grid-template-columns:repeat(3,1fr)}.dashboard-grid-main{grid-template-columns:1fr 1fr}.site-top-grid{grid-template-columns:1fr 1fr}.site-actions{grid-column:1/-1}.sample-selected-strip{grid-template-columns:repeat(4,1fr)}}
@media(max-width:800px){.proeva-header-main{grid-template-columns:1fr auto}.proeva-version-badge{display:none}.proeva-user-tools{display:none}.executive-kpis,.sample-summary-grid,.instrument-cards,.dashboard-grid-main,.roles-layout,.link-layout,.site-top-grid{grid-template-columns:1fr}.sample-filterbar{grid-template-columns:1fr}.sample-selected-strip{grid-template-columns:1fr 1fr}.permission-groups{grid-template-columns:1fr}.qr-body{grid-template-columns:1fr}.proeva-top{justify-content:flex-start!important}.proeva-nav-center{justify-content:flex-start}}

.prefill-preview,.prefill-debug{margin-top:9px;padding:8px 10px;border:1px solid #d9e6f0;background:#f5f9fc;border-radius:7px;font-size:10px;color:#45657e}
.prefill-preview code,.prefill-debug code{display:inline-block;margin-left:5px;padding:3px 6px;background:#e8f2fb;border-radius:4px;color:#0b4f84;font-weight:800}
.prefill-debug{display:flex;align-items:center;gap:7px}.prefill-debug small{color:#6f879b}


/* ===== ProEva v0.8.4 · Kobo por pestañas estilo AIMS ===== */
.instrument-tabs{
  display:flex;
  align-items:stretch;
  gap:5px;
  margin:0 0 14px;
  padding:6px;
  border:1px solid #d9e5ee;
  border-radius:11px;
  background:#fff;
  overflow-x:auto;
  box-shadow:0 2px 8px #103b6310;
}
.instrument-tabs a{
  flex:1 0 150px;
  min-width:150px;
  display:flex;
  align-items:center;
  gap:9px;
  min-height:54px;
  padding:8px 11px;
  border:1px solid transparent;
  border-radius:8px;
  color:#31536f;
  text-decoration:none;
  background:#f8fbfd;
  transition:.16s ease;
}
.instrument-tabs a:hover{
  border-color:#c6dcea;
  background:#f1f7fb;
}
.instrument-tabs a.active{
  background:#e9f4ff;
  border-color:#7ab8ea;
  color:#0b5f9f;
  box-shadow:inset 0 -3px 0 #2089df;
}
.instrument-tabs a.state-tab{background:#f4f7fa}
.instrument-tabs a.state-tab.active{background:#edf2ff;border-color:#91a9df;color:#294f9c;box-shadow:inset 0 -3px 0 #345db5}
.instrument-tab-icon{
  width:32px;height:32px;border-radius:8px;
  display:grid;place-items:center;
  background:#dfefff;color:#1478c7;
  font-size:17px;font-weight:900;flex:0 0 auto;
}
.instrument-tabs a.active .instrument-tab-icon{background:#2089df;color:#fff}
.instrument-tabs a span:last-child{display:grid;gap:2px;min-width:0}
.instrument-tabs b{font-size:10.5px;line-height:1.15}
.instrument-tabs small{font-size:8.5px;color:#7b91a4;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

.instrument-active-head{
  display:flex;justify-content:space-between;align-items:center;
  gap:15px;margin-bottom:12px;padding:4px 2px;
}
.instrument-active-head h2{margin:2px 0 3px;color:#0c3b70;font-size:23px}
.instrument-active-head p{margin:0;color:#667f94;font-size:11px}
.instrument-active-code{
  padding:7px 10px;border-radius:7px;
  border:1px solid #cbdbe7;background:#f7fafc;
  color:#456781;font-size:10px;font-weight:900
}
.instrument-config-layout{
  display:grid;
  grid-template-columns:minmax(0,1.55fr) minmax(300px,.65fr);
  gap:12px;
}
.instrument-config-panel{min-height:390px}
.instrument-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.instrument-form-grid .field{margin:0}
.prefill-preview.large{
  display:flex;justify-content:space-between;align-items:center;
  gap:12px;padding:12px;
}
.prefill-preview.large>div{display:grid;gap:4px}
.prefill-preview.large small{font-size:9px;color:#72879a}
.prefill-preview.large code{margin:0;font-size:11px}
.prefill-status,.config-pill{
  display:inline-flex;align-items:center;justify-content:center;
  border-radius:20px;padding:4px 8px;
  font-size:8.5px;font-weight:900;white-space:nowrap
}
.prefill-status.ok,.config-pill.ok{background:#dff5e8;color:#167648}
.prefill-status.pending,.config-pill.pending{background:#fff0d3;color:#9d6900}

.qr-toggle-row{
  display:flex!important;align-items:center;justify-content:space-between;
  gap:12px;padding:11px 12px;
  border:1px solid #dfe8ef;border-radius:8px;background:#fafcfd;
}
.qr-toggle-row span{display:grid;gap:3px}
.qr-toggle-row b{color:#294d69;font-size:10.5px}
.qr-toggle-row small{color:#768b9d;font-size:9px}
.qr-toggle-row input{width:18px;height:18px}
.instrument-form-actions{display:flex;justify-content:flex-end}
.instrument-form-actions .btn{min-width:180px}

.instrument-summary-panel{align-self:start}
.instrument-health{display:grid;gap:7px;margin-bottom:12px}
.health-row{
  display:flex;align-items:center;justify-content:space-between;
  padding:9px 10px;border:1px solid #e2eaf0;border-radius:8px;
  background:#fbfdfe;font-size:9.5px
}
.health-row span{color:#60798d}
.health-row b{font-size:9px}
.health-ok{color:#16804c}
.health-pending{color:#b37700}
.instrument-test-card{
  border-top:1px solid #e5edf3;padding-top:12px;
}
.instrument-test-card h3{margin:0 0 8px;color:#173f68;font-size:11px}
.instrument-test-card ol{margin:0 0 12px;padding-left:17px;color:#5f788d;font-size:9.5px;line-height:1.75}
.privacy-callout.compact{font-size:9px}

.kobo-status-kpis{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:10px;margin-bottom:12px
}
.exec-kpi.compact{min-height:95px;grid-template-columns:auto 1fr}
.exec-kpi.compact .kpi-icon{width:34px;height:34px;font-size:11px}
.exec-kpi.compact strong{font-size:24px}
.exec-kpi.compact strong.text-value{font-size:12px;line-height:1.25;word-break:break-word}
.kobo-status-table td:first-child b{display:block}
.table-subcode{display:block;color:#8093a4;font-size:8.5px;margin-top:2px}
.kobo-status-table code{font-size:9px;background:#eef4f8;padding:3px 5px;border-radius:4px}

@media(max-width:1050px){
  .instrument-config-layout{grid-template-columns:1fr}
  .kobo-status-kpis{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:680px){
  .instrument-form-grid{grid-template-columns:1fr}
  .kobo-status-kpis{grid-template-columns:1fr}
}


/* ===== ProEva v0.8.5 · Estado Kobo / sincronización REST ===== */
.kobo-flash{
  margin:0 0 10px;padding:10px 12px;border-radius:8px;
  font-size:10.5px;font-weight:800;border:1px solid transparent
}
.kobo-flash.ok{background:#e6f7ed;color:#177348;border-color:#bfe8cf}
.kobo-flash.warning{background:#fff3d8;color:#956200;border-color:#f3dc9e}
.kobo-flash.error{background:#fdebed;color:#9b3642;border-color:#f2c2c8}
.kobo-status-layout{
  display:grid;grid-template-columns:minmax(0,1.5fr) minmax(300px,.65fr);
  gap:12px;margin-bottom:12px
}
.kobo-connection-form{
  display:grid;grid-template-columns:1fr 1fr;gap:10px;align-items:end
}
.kobo-connection-form .field{margin:0}
.kobo-connection-actions{display:flex;gap:8px;grid-column:1/-1;justify-content:flex-end}
.kobo-sync-now{
  margin-top:12px;padding:11px 12px;border:1px solid #dbe7ef;border-radius:9px;
  background:#f7fbfd;display:flex;align-items:center;justify-content:space-between;gap:14px
}
.kobo-sync-now>div{display:grid;gap:3px}
.kobo-sync-now b{font-size:10.5px;color:#224c6d}
.kobo-sync-now small{font-size:9px;color:#71889b}
button:disabled,.btn:disabled{opacity:.5;cursor:not-allowed}
.kobo-last-sync{align-self:start}
.last-sync-status{
  display:flex;justify-content:space-between;align-items:center;
  padding:9px 10px;border-radius:8px;margin-bottom:10px;background:#f4f7fa
}
.last-sync-status.ok{background:#e5f7ec;color:#19764a}
.last-sync-status.error{background:#fdebed;color:#9b3642}
.last-sync-status.running{background:#e9f4ff;color:#1f6ca9}
.last-sync-status b{font-size:11px}
.last-sync-status span{font-size:9px}
.sync-metrics{
  display:grid;grid-template-columns:repeat(2,1fr);gap:7px;margin:0
}
.sync-metrics>div{
  border:1px solid #e2eaf0;border-radius:7px;padding:8px;
  display:flex;justify-content:space-between;align-items:center
}
.sync-metrics dt{font-size:9px;color:#70869a}
.sync-metrics dd{font-size:14px;font-weight:900;color:#123e68;margin:0}
.kobo-last-sync p{font-size:9.5px;color:#62798c;margin:10px 0 0}
.kobo-row-actions{display:flex;gap:8px;align-items:center;white-space:nowrap}
.kobo-row-actions form{margin:0;display:inline}
.button-link{
  appearance:none;border:0;background:none;padding:0;cursor:pointer
}
.button-link:disabled{opacity:.4;cursor:not-allowed}
.kobo-history-grid{
  display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:12px
}
.compact-table{min-width:650px}
.compact-table th,.compact-table td{padding:7px 8px}
@media(max-width:1050px){
  .kobo-status-layout,.kobo-history-grid{grid-template-columns:1fr}
}
@media(max-width:720px){
  .kobo-connection-form{grid-template-columns:1fr}
}


/* ===== ProEva v0.8.6 · respuesta Kobo y actualización para todos ===== */
.dashboard-status-actions{flex-wrap:wrap;justify-content:flex-end}
.dashboard-status-actions form{margin:0}
.status-pill.responded{
  background:#dff5e8;color:#157a49;border:1px solid #bce6cc;
  letter-spacing:.2px
}
.answered-lock{
  display:inline-flex;align-items:center;gap:4px;
  color:#18764a;background:#e5f7ec;border:1px solid #c3e9d1;
  padding:4px 7px;border-radius:14px;font-size:9px;font-weight:900;
  white-space:nowrap
}
.responded-banner{
  display:grid;grid-template-columns:auto 1fr auto;gap:14px;align-items:center;
  padding:18px;border:1px solid #a9dfbd;border-radius:12px;
  background:linear-gradient(180deg,#f1fbf5,#e7f7ed);
  box-shadow:0 3px 12px #21664012
}
.responded-icon{
  width:48px;height:48px;border-radius:50%;display:grid;place-items:center;
  background:#25a760;color:#fff;font-size:25px;font-weight:900
}
.responded-banner h2{margin:0 0 5px;color:#176640;font-size:19px}
.responded-banner p{margin:0 0 5px;color:#3c6953;font-size:11px;line-height:1.45}
.responded-banner small{color:#668578;font-size:9.5px}
@media(max-width:720px){
  .responded-banner{grid-template-columns:auto 1fr}
  .responded-banner .btn{grid-column:1/-1}
}


/* ===== ProEva v0.8.7 · actualización por usuario + QR respondido ===== */
.user-operational-permissions{
  padding:10px 12px;border:1px solid #dbe7ef;border-radius:8px;background:#f8fbfd
}
.user-operational-permissions .switch-line span{display:grid;gap:2px}
.user-operational-permissions small{font-size:9px;color:#71879a;font-weight:400}

.answered-link{
  color:#9a6a00!important;
  background:#fff3d9;
  border-radius:13px;
  padding:4px 7px;
}
.responded-banner.warning-mode{
  margin-bottom:12px;
  border-color:#e9d59a;
  background:linear-gradient(180deg,#fffaf0,#fff4d9)
}
.responded-banner.warning-mode .responded-icon{
  background:#e7a514
}
.responded-banner.warning-mode h2{color:#825900}
.responded-banner.warning-mode p{color:#705d2f}

.qr-visual-wrap{
  position:relative;
  width:220px;
  min-width:220px;
}
.qr-visual-wrap.responded{
  border-radius:12px;
  overflow:hidden;
}
.qr-responded-blur{
  filter:blur(7px) grayscale(.15);
  transform:scale(1.02);
  opacity:.74;
  pointer-events:none;
  user-select:none;
}
.qr-answered-overlay{
  position:absolute;
  inset:0;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:5px;
  background:#fff6d844;
  border:1px solid #e9cb72;
  border-radius:10px;
  text-align:center;
  color:#7f5900;
  pointer-events:none;
}
.qr-answered-overlay b{
  background:#fff4c9dd;
  padding:6px 9px;
  border-radius:6px;
  font-size:12px;
  letter-spacing:.4px
}
.qr-answered-overlay small{
  background:#ffffffd9;
  padding:4px 7px;
  border-radius:5px;
  font-size:9px
}
.responded-mini-note{
  display:inline-flex!important;
  margin-top:4px;
  padding:4px 7px;
  border-radius:14px;
  background:#fff2ce;
  color:#956500!important;
  font-size:9px!important;
  font-weight:800
}
.link-copy-row.answered input{
  border-color:#e9c769;
  background:#fffaf0
}
.warning-btn{
  background:#e0a31f!important;
  border-color:#e0a31f!important;
  color:#fff!important
}
.reuse-warning{
  padding:8px 10px;
  border:1px solid #efd28a;
  border-radius:7px;
  background:#fff8e6;
  color:#805d0a;
  font-size:9.5px;
  line-height:1.4
}


/* ===== ProEva v0.8.8 · Mensajería interna de aplicación ===== */
.app-dialog-backdrop{
  position:fixed;inset:0;z-index:9999;background:#071f3a66;
  display:grid;place-items:center;padding:20px;backdrop-filter:blur(2px)
}
.app-dialog-backdrop[hidden]{display:none!important}
.app-dialog{
  width:min(520px,calc(100vw - 36px));background:#fff;border:1px solid #d6e2ec;
  border-radius:13px;box-shadow:0 20px 60px #071f3a3d;padding:18px;
  display:grid;grid-template-columns:auto 1fr;gap:13px
}
.app-dialog-icon{
  width:42px;height:42px;border-radius:50%;display:grid;place-items:center;
  background:#fff1c9;color:#986700;font-size:20px;font-weight:900
}
.app-dialog.danger .app-dialog-icon{background:#fde7ea;color:#b92538}
.app-dialog.info .app-dialog-icon{background:#e7f2ff;color:#1b6faa}
.app-dialog-copy h2{margin:1px 0 6px;font-size:18px;color:#123e68}
.app-dialog-copy p{margin:0;color:#506c82;font-size:11px;line-height:1.5;white-space:pre-line}
.app-dialog-actions{grid-column:1/-1;display:flex;justify-content:flex-end;gap:8px;margin-top:4px}
.app-toast-region{
  position:fixed;right:18px;top:118px;z-index:10010;width:min(390px,calc(100vw - 30px));
  display:grid;gap:8px;pointer-events:none
}
.app-toast{
  opacity:0;transform:translateY(-8px);transition:.18s ease;
  display:grid;grid-template-columns:auto 1fr auto;align-items:start;gap:10px;
  background:#fff;border:1px solid #dce6ed;border-left:4px solid #388bd0;
  border-radius:9px;padding:10px 11px;box-shadow:0 8px 28px #173c5a25;pointer-events:auto
}
.app-toast.show{opacity:1;transform:none}
.app-toast.success{border-left-color:#25a760}.app-toast.warning{border-left-color:#e3a41a}.app-toast.error{border-left-color:#d94655}
.app-toast-icon{width:25px;height:25px;border-radius:50%;display:grid;place-items:center;background:#eaf4ff;color:#2a78b6;font-weight:900}
.app-toast.success .app-toast-icon{background:#e5f7ed;color:#1d8551}.app-toast.warning .app-toast-icon{background:#fff2cf;color:#9a6900}.app-toast.error .app-toast-icon{background:#fde9eb;color:#b9283b}
.app-toast b{display:block;font-size:10.5px;color:#173e62;margin-bottom:2px}.app-toast p{margin:0;font-size:9.5px;line-height:1.4;color:#617a8f}
.app-toast button{border:0;background:transparent;color:#8295a5;font-size:17px;cursor:pointer;padding:0 2px}
.app-inline-message{padding:9px 11px;margin-bottom:10px;border-radius:8px;font-size:10px;font-weight:800}
.app-inline-message.success{background:#e7f7ee;color:#187648;border:1px solid #c3e7d2}

/* ===== ProEva v0.8.8 · Gestión de grupos focales ===== */
.focus-summary-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:10px}
.focus-summary-grid article{
  background:#fff;border:1px solid #dbe7f0;border-radius:11px;padding:13px;
  display:grid;gap:3px;box-shadow:0 2px 8px #103b6310
}
.focus-summary-grid small{font-size:9px;color:#698299}.focus-summary-grid strong{font-size:27px;line-height:1;color:#0c3b70}.focus-summary-grid span{font-size:9px;color:#8194a4}
.focus-protection-note{
  display:flex;gap:10px;align-items:center;background:#eef6ff;border:1px solid #d3e7f7;
  border-radius:9px;padding:9px 12px;margin-bottom:12px;color:#315f84
}
.focus-protection-note>span{font-size:19px}.focus-protection-note b{font-size:10px}.focus-protection-note p{margin:2px 0 0;font-size:9.5px}
.focus-event-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.focus-event-card{
  display:grid;gap:10px;background:#fff;border:1px solid #dbe7f0;border-radius:12px;
  padding:14px;text-decoration:none;color:#23455f;box-shadow:0 2px 8px #103b6310;
  transition:.16s ease
}
.focus-event-card:hover{transform:translateY(-1px);border-color:#91bfe1;box-shadow:0 6px 18px #103b6318}
.focus-card-top{display:flex;align-items:center;justify-content:space-between}.focus-code{font-size:9px;font-weight:900;color:#1479c7;background:#e7f3ff;border-radius:14px;padding:4px 7px}
.focus-status{display:inline-flex;border-radius:16px;padding:4px 8px;font-size:8.5px;font-weight:900;background:#edf2f6;color:#60778a}
.focus-status.status-realizado,.focus-status.status-cerrado{background:#def5e7;color:#187748}.focus-status.status-convocando{background:#e8f2ff;color:#2a70af}.focus-status.status-confirmado{background:#ece8ff;color:#624eb3}.focus-status.status-cancelado{background:#fce7ea;color:#a62c3c}
.focus-event-card h2{font-size:16px;line-height:1.25;margin:0;color:#0e3b68}
.focus-meta{display:flex;flex-wrap:wrap;gap:8px}.focus-meta span{font-size:9.5px;color:#647f95;background:#f7fafc;padding:5px 7px;border-radius:7px}
.focus-numbers{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid #e4ebf1;border-radius:8px;overflow:hidden}
.focus-numbers div{padding:8px;text-align:center;border-right:1px solid #e4ebf1}.focus-numbers div:last-child{border-right:0}
.focus-numbers strong{display:block;font-size:18px;color:#0c3b70}.focus-numbers small{font-size:8.5px;color:#7b90a2}
.focus-card-footer{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #edf2f6;padding-top:8px}.focus-card-footer span{font-size:9px;color:#70869a}.focus-card-footer b{font-size:9.5px;color:#1774ba}

.focus-event-header{
  display:grid;grid-template-columns:repeat(6,1fr);gap:0;background:#fff;border:1px solid #dbe7f0;
  border-radius:10px;overflow:hidden;margin-bottom:10px
}
.focus-event-header>div{padding:10px;border-right:1px solid #e7eef3}.focus-event-header>div:last-child{border-right:0}
.focus-event-header small{display:block;font-size:8.5px;color:#73899c;margin-bottom:4px}.focus-event-header strong:not(.focus-status){font-size:18px;color:#123e68}
.focus-tabs{display:flex;gap:4px;background:#fff;border:1px solid #dce7ef;border-radius:10px;padding:5px;margin-bottom:12px;overflow:auto}
.focus-tabs a{flex:1;display:flex;align-items:center;justify-content:center;gap:6px;min-width:150px;text-decoration:none;color:#49667c;font-size:10px;font-weight:800;padding:9px;border-radius:7px}
.focus-tabs a.active{background:#e8f3ff;color:#1472bb;box-shadow:inset 0 -3px 0 #2d8bd5}.focus-tabs a span{background:#d9e7f2;border-radius:12px;padding:2px 6px;font-size:8px}
.focus-two-col{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(310px,.55fr);gap:12px}
.focus-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px}.focus-form-grid .field{margin:0}.focus-form-grid .span2{grid-column:1/-1}
.form-actions-right{display:flex;justify-content:flex-end}
.focus-method-sheet{display:grid;gap:7px;margin:0 0 12px}.focus-method-sheet>div{display:grid;grid-template-columns:125px 1fr;gap:8px;border-bottom:1px solid #edf2f5;padding-bottom:7px}.focus-method-sheet dt{font-size:9px;color:#71889b}.focus-method-sheet dd{margin:0;font-size:9.5px;font-weight:800;color:#2c4f69}
.focus-objective{background:#f3f8fc;border-radius:8px;padding:10px;margin-bottom:10px}.focus-objective b{font-size:9.5px;color:#194f79}.focus-objective p{font-size:9.5px;color:#5a7388;line-height:1.5;margin:5px 0 0}
.participant-layout{grid-template-columns:minmax(0,1.65fr) minmax(300px,.55fr)}
.focus-participant-table td small{display:block;font-size:8.5px;color:#7990a3;margin-top:2px}
.participant-inline-form{display:grid;grid-template-columns:120px 110px 145px minmax(120px,1fr) auto;align-items:center;gap:5px;min-width:650px}
.participant-inline-form select,.participant-inline-form input{padding:5px 6px;font-size:9px}
.verification-checks{display:flex;gap:5px;flex-wrap:wrap}.verification-checks label{font-size:8px;white-space:nowrap}
.focus-privacy-rule{margin-top:10px;background:#eef6ff;border-radius:7px;padding:8px 10px;color:#426985;font-size:9.5px}
.guide-card{display:flex;gap:15px;align-items:flex-start}.guide-icon{width:58px;height:58px;border-radius:12px;background:#e7f2ff;color:#217dc3;display:grid;place-items:center;font-size:28px;font-weight:900;flex:0 0 auto}
.guide-card h2{margin:3px 0 5px;color:#0f3d6b;font-size:17px}.guide-card p{font-size:10px;color:#60798c;line-height:1.5}.guide-actions{display:flex;gap:8px;flex-wrap:wrap}
.focus-record-separation{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.focus-record-separation div{border:1px solid #e0e9f0;border-radius:8px;padding:10px;background:#fbfdfe}.focus-record-separation b{font-size:10px;color:#194b72}.focus-record-separation p{font-size:9px;color:#667f92;line-height:1.45;margin:4px 0 0}
.sensitive-file-badge{display:inline-flex;background:#fff0d2;color:#8d6100;border-radius:14px;padding:4px 7px;font-size:8.5px;font-weight:900}
.focus-upload-tip{margin-top:10px;background:#eef6ff;padding:9px;border-radius:7px;color:#52728a;font-size:9px;line-height:1.5}
@media(max-width:1050px){
  .focus-event-grid,.focus-two-col,.participant-layout{grid-template-columns:1fr}
  .focus-event-header{grid-template-columns:repeat(3,1fr)}
  .focus-summary-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:650px){
  .focus-summary-grid{grid-template-columns:1fr 1fr}
  .focus-event-header{grid-template-columns:1fr 1fr}
  .focus-form-grid{grid-template-columns:1fr}.focus-form-grid .span2{grid-column:auto}
  .focus-record-separation{grid-template-columns:1fr}
}


/* ===== ProEva v0.8.9 · Fuente documental parametrizable ===== */
.document-source-banner{
  display:flex;align-items:center;gap:10px;margin-bottom:12px;padding:10px 12px;
  background:#eaf5ff;border:1px solid #cfe4f5;border-radius:9px;color:#315f84
}
.document-source-banner>span{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:#2589d4;color:#fff;font-weight:900}
.document-source-banner b{font-size:10.5px}.document-source-banner p{margin:2px 0 0;font-size:9.5px;word-break:break-all}
.document-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.document-card{
  background:#fff;border:1px solid #dbe7f0;border-radius:11px;padding:13px;
  display:grid;gap:9px;box-shadow:0 2px 8px #103b6310
}
.document-card.primary{grid-column:1/-1;border-color:#8fc4e8;background:linear-gradient(180deg,#f8fcff,#fff)}
.document-card-head{display:flex;justify-content:space-between;align-items:center;gap:8px}
.document-type{display:inline-flex;padding:4px 7px;border-radius:13px;background:#e8f3ff;color:#1d71b3;font-size:8.5px;font-weight:900;white-space:nowrap}
.document-primary{display:inline-flex;padding:4px 7px;border-radius:13px;background:#e5f7ed;color:#1c7b4c;font-size:8.5px;font-weight:900}
.document-card h2{font-size:13px;line-height:1.35;color:#173f68;margin:0}
.document-card p{font-size:9.5px;line-height:1.45;color:#61798d;margin:0}
.document-id{display:flex;align-items:center;gap:6px}.document-id small{font-size:8.5px;color:#8194a4}.document-id code{font-size:8.5px;background:#eef4f8;padding:3px 5px;border-radius:4px}
.document-actions{display:flex;gap:6px;justify-content:flex-end;margin-top:auto}
.document-folder-panel{margin-bottom:12px}
.document-folder-form{display:grid;grid-template-columns:1fr auto;gap:8px;align-items:end}.document-folder-form .field{margin:0}
.document-source-note{margin-top:9px;padding:8px 10px;border-radius:7px;background:#f4f8fb;color:#647d91;font-size:9px}
.document-admin-list{display:grid;gap:8px}
.document-admin-row{
  display:grid;grid-template-columns:130px 1.2fr 2fr 1fr;gap:8px;align-items:end;
  padding:10px;border:1px solid #dfe8ef;border-radius:9px;background:#fbfdfe
}
.document-admin-label{align-self:center;display:grid;gap:5px}.document-admin-label b{font-size:9px;color:#54718a}
.document-admin-row .field{margin:0}.document-admin-row .field.wide{grid-column:span 2}
.document-admin-row .switch-line{align-self:center}
.document-admin-actions{display:flex;gap:6px;justify-content:flex-end}
.guide-source-ref{
  display:grid;grid-template-columns:auto auto 1fr;gap:6px;align-items:center;
  margin:8px 0;padding:7px 8px;border:1px solid #dce7ef;border-radius:7px;background:#f8fbfd
}
.guide-source-ref small{font-size:8.5px;color:#7b91a4}.guide-source-ref code{font-size:8.5px;color:#1b6ea8}.guide-source-ref span{font-size:9px;color:#4f6d84}
@media(max-width:1100px){
  .document-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .document-admin-row{grid-template-columns:110px 1fr 1fr}.document-admin-row .field.wide{grid-column:span 2}
}
@media(max-width:720px){
  .document-grid{grid-template-columns:1fr}
  .document-card.primary{grid-column:auto}
  .document-folder-form,.document-admin-row{grid-template-columns:1fr}
  .document-admin-row .field.wide{grid-column:auto}
}


/* ===== ProEva v0.9.0 · invitados de grupos focales ===== */
.focus-participant-layout{
  display:grid;grid-template-columns:minmax(0,1.7fr) minmax(330px,.58fr);gap:12px
}
.focus-list-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.focus-count-badge{
  display:inline-flex;padding:5px 8px;border-radius:14px;background:#e9f3fb;
  color:#416b8a;font-size:8.5px;font-weight:900
}
.invite-list{display:grid;gap:7px}
.invite-row-card{
  display:grid;
  grid-template-columns:minmax(145px,.85fr) minmax(170px,1fr) 145px 180px 178px minmax(150px,.8fr);
  gap:8px;align-items:center;padding:9px 10px;
  border:1px solid #dde7ee;border-radius:9px;background:#fbfdfe
}
.invite-row-card:hover{border-color:#b7d4e8;background:#fff}
.invite-person{display:grid;gap:4px;min-width:0}
.invite-code{font-size:8.5px;font-weight:900;color:#1a72b4}
.invite-person-name{font-size:10px;font-weight:800;color:#173f68;overflow:hidden;text-overflow:ellipsis}
.invite-context{display:flex;gap:4px;flex-wrap:wrap}
.invite-context span{
  display:inline-flex;padding:3px 5px;border-radius:11px;background:#f0f4f7;
  color:#668096;font-size:7.8px
}
.invite-context .invite-classification{background:#e8f3ff;color:#1d71b3;font-weight:800}
.invite-context-block{display:grid;gap:2px;min-width:0}
.invite-context-block small,.invite-status-block label,.invite-notes-block label{
  font-size:7.8px;color:#8093a3;font-weight:800;text-transform:uppercase;letter-spacing:.25px
}
.invite-context-block b{font-size:9.2px;color:#35566f;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.invite-context-block span{font-size:8.5px;color:#6c8497;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.invite-contact{color:#547a96!important}
.invite-status-block{display:grid;gap:4px}
.invite-status-block select{padding:5px 6px;font-size:8.5px;min-width:0;width:100%}
.invite-verification-block{display:grid;gap:4px}
.verify-chip{
  display:flex;align-items:center;gap:5px;padding:4px 6px;border:1px solid #e0e8ee;
  border-radius:6px;background:#fff;color:#647d90;font-size:8.3px;font-weight:700
}
.verify-chip.checked{background:#e8f7ee;border-color:#c0e6ce;color:#1c784a}
.verify-chip input{margin:0;width:13px;height:13px}
.invite-notes-block{display:grid;gap:4px}
.invite-notes-block input{padding:5px 6px;font-size:8.5px;min-width:0}
.invite-notes-block .btn{justify-self:end}
.focus-add-invite-panel{align-self:start;position:sticky;top:118px}
.invite-capture-form{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.invite-capture-form .field{margin:0}
.invite-capture-form .span2{grid-column:1/-1}
.invite-form-actions{display:flex;justify-content:flex-end}
.classification-manager{
  margin-top:10px;border:1px solid #dce7ef;border-radius:8px;background:#f8fbfd
}
.classification-manager summary{
  cursor:pointer;padding:9px 10px;font-size:9px;font-weight:900;color:#2472aa
}
.classification-add-form{display:grid;grid-template-columns:1fr auto;gap:7px;align-items:end;padding:0 9px 9px}
.classification-add-form .field{margin:0}
.invite-prefill-note{
  margin-top:10px;padding:9px 10px;border-radius:8px;background:#eef6ff;color:#52738c
}
.invite-prefill-note b{font-size:9.5px}.invite-prefill-note p{margin:3px 0 0;font-size:8.8px;line-height:1.45}
.warning-text{color:#9c6900!important}
.case-assignment-strip{
  display:grid;grid-template-columns:1fr minmax(210px,1fr) auto;gap:7px;align-items:center;
  margin:10px 0;padding:9px;border:1px solid #dce7ef;border-radius:8px;background:#f7fbfd
}
.case-assignment-strip>div{display:grid;gap:2px}.case-assignment-strip small{font-size:8px;color:#7b91a4}.case-assignment-strip b{font-size:9.5px;color:#214d6e}
.case-assignment-strip select{padding:6px;font-size:9px}

@media(max-width:1350px){
  .invite-row-card{grid-template-columns:145px 1fr 130px 165px 160px}
  .invite-notes-block{grid-column:2/-1;grid-template-columns:1fr auto;align-items:end}
}
@media(max-width:1050px){
  .focus-participant-layout{grid-template-columns:1fr}
  .focus-add-invite-panel{position:static}
}
@media(max-width:800px){
  .invite-row-card{grid-template-columns:1fr 1fr}
  .invite-person,.invite-context-block{grid-column:span 1}
  .invite-verification-block,.invite-notes-block{grid-column:1/-1}
  .case-assignment-strip{grid-template-columns:1fr}
}
