:root{--enc-primary:#006fb3;--enc-primary-dark:#004a7c;--enc-ink:#172033;--enc-muted:#64748b;--enc-bg:#f4f7fb;--enc-line:#dce5ef;--enc-success:#18794e;--enc-radius:16px;--enc-shadow:0 10px 30px rgba(19,52,82,.08)}
.enc-page{max-width:1180px;margin:0 auto;padding:28px 20px 56px;color:var(--enc-ink)}
.enc-hero{display:flex;justify-content:space-between;gap:24px;align-items:flex-start;margin-bottom:24px}.enc-eyebrow{margin:0 0 6px;color:var(--enc-primary);font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.enc-hero h1{margin:0;font-size:clamp(1.65rem,3vw,2.35rem);font-weight:800}.enc-hero p{color:var(--enc-muted);max-width:760px;margin:.65rem 0 0;line-height:1.65}
.enc-card{background:#fff;border:1px solid var(--enc-line);border-radius:var(--enc-radius);box-shadow:var(--enc-shadow);padding:24px;margin-bottom:20px}.enc-card h2,.enc-card h3{color:var(--enc-ink);font-weight:750}.enc-callout{display:flex;gap:12px;background:#eaf5fc;border-left:4px solid var(--enc-primary);border-radius:12px;padding:16px;margin:18px 0;color:#163b57}.enc-callout.success{background:#edf8f2;border-color:var(--enc-success);color:#145c3d}.enc-callout.warning{background:#fff7e6;border-color:#d89000;color:#694900}
.enc-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.enc-btn{min-height:44px;display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:10px;padding:10px 18px;font-weight:750;text-decoration:none;border:1px solid transparent;cursor:pointer}.enc-btn.primary{background:var(--enc-primary);color:#fff}.enc-btn.primary:hover{background:var(--enc-primary-dark);color:#fff}.enc-btn.secondary{background:#fff;color:var(--enc-primary);border-color:#9ec7e1}.enc-btn.danger{background:#fff;color:#b42318;border-color:#f0b4ae}.enc-btn:focus-visible,.enc-page input:focus-visible,.enc-page textarea:focus-visible,.enc-page select:focus-visible{outline:3px solid #ffbf47!important;outline-offset:2px!important}
.enc-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:16px}.enc-span-12{grid-column:span 12}.enc-span-8{grid-column:span 8}.enc-span-6{grid-column:span 6}.enc-span-4{grid-column:span 4}.enc-field label,.enc-label{display:block;font-weight:700;margin-bottom:7px}.enc-required{color:#b42318}.enc-help{display:block;color:var(--enc-muted);font-size:.9rem;margin-top:5px}.enc-fieldset{border:0;padding:0;margin:0}.enc-options{display:grid;gap:9px}.enc-option{display:flex;align-items:flex-start;gap:10px;border:1px solid var(--enc-line);border-radius:11px;padding:12px 14px;background:#fff;cursor:pointer}.enc-option:hover{border-color:#8fc0df;background:#f8fcff}.enc-option input{width:20px;height:20px;margin-top:1px;flex:0 0 auto;accent-color:var(--enc-primary)}.enc-complement{margin:8px 0 0 30px}.enc-question{padding:20px 0;border-top:1px solid #edf1f5}.enc-question.has-error{margin:8px 0;padding:18px 14px;border:1px solid #efb5ae;border-radius:12px;background:#fff8f7}.enc-question .invalid-feedback{margin-top:10px;font-weight:700}.enc-question:first-child{border-top:0}.enc-section[hidden],.enc-question[hidden]{display:none!important}.enc-section h2{font-size:1.3rem}.enc-progress{height:7px;border-radius:999px;background:#e5edf5;overflow:hidden;margin-bottom:22px}.enc-progress span{display:block;height:100%;background:var(--enc-primary);transition:width .2s ease}.enc-status{font-weight:700;border-radius:999px;padding:5px 10px;font-size:.78rem;display:inline-flex}.enc-status.borrador{background:#eef2f6;color:#475569}.enc-status.publicada,.enc-status.recibida{background:#e9f7ef;color:#18794e}.enc-status.cerrada{background:#fff0ef;color:#b42318}.enc-table-wrap{overflow:auto;border:1px solid var(--enc-line);border-radius:14px}.enc-table{width:100%;border-collapse:collapse;min-width:760px}.enc-table th{background:#edf5fa;color:#183b52;text-align:left;font-size:.8rem;text-transform:uppercase;letter-spacing:.04em}.enc-table th,.enc-table td{padding:13px 14px;border-bottom:1px solid var(--enc-line);vertical-align:top}.enc-table tr:last-child td{border-bottom:0}.enc-empty{text-align:center;padding:42px 18px;color:var(--enc-muted)}.enc-empty .material-symbols-outlined{font-size:46px;color:#8bb8d5}.enc-loading{display:flex;align-items:center;justify-content:center;gap:10px;min-height:180px;color:var(--enc-muted)}
.enc-admin-layout{display:grid;grid-template-columns:330px minmax(0,1fr);gap:20px}.enc-list{display:grid;gap:10px}.enc-list-item{border:1px solid var(--enc-line);border-radius:12px;padding:14px;background:#fff;text-align:left}.enc-list-item.active{border-color:var(--enc-primary);box-shadow:0 0 0 2px rgba(0,111,179,.12)}.enc-survey-picker{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,520px);align-items:end;gap:20px;padding:18px 20px}.enc-survey-picker .enc-label{margin-bottom:4px}.enc-survey-picker select{min-height:46px;font-weight:700}.enc-workspace-body{min-width:0}.enc-builder-section{border:1px solid var(--enc-line);border-radius:14px;padding:16px;margin-bottom:14px}.enc-builder-question{border-left:3px solid #9ec7e1;padding:12px 14px;margin:9px 0;background:#f8fafc;border-radius:0 10px 10px 0}.enc-muted{color:var(--enc-muted)}
.enc-admin-nav{display:flex;gap:6px;padding:5px;background:#eaf0f6;border-radius:12px;width:max-content;margin-bottom:20px}.enc-admin-nav button{display:inline-flex;align-items:center;gap:7px;border:0;background:transparent;color:#40546a;border-radius:9px;padding:9px 15px;font-weight:700}.enc-admin-nav button.active{background:#fff;color:var(--enc-primary-dark);box-shadow:0 2px 8px rgba(19,52,82,.1)}.enc-admin-nav .material-symbols-outlined{font-size:20px}.enc-kpis{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;margin-bottom:20px}.enc-kpi{display:flex;align-items:center;gap:13px;background:#fff;border:1px solid var(--enc-line);border-radius:14px;padding:17px;min-width:0}.enc-kpi>.material-symbols-outlined{display:grid;place-items:center;width:44px;height:44px;border-radius:12px;background:#eaf5fc;color:var(--enc-primary);font-size:25px;flex:0 0 auto}.enc-kpi strong{font-size:1.55rem;line-height:1;color:var(--enc-ink)}.enc-kpi p{margin:5px 0 0;color:var(--enc-muted);font-size:.86rem}.enc-section-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:18px}.enc-row-actions{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:6px}.enc-row-actions .btn,.enc-table .btn{display:inline-flex;align-items:center;gap:5px;white-space:nowrap}.enc-row-actions .material-symbols-outlined,.enc-table .btn .material-symbols-outlined{font-size:17px}.enc-positive{color:var(--enc-success)}.enc-chart-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(280px,.75fr);gap:20px}.enc-chart-box{height:270px;margin-top:16px}.enc-answer-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:18px}.enc-answer-card{border:1px solid var(--enc-line);border-radius:12px;padding:16px}.enc-answer-card h4{font-size:.97rem;margin:0 0 14px;line-height:1.45}.enc-answer-row{margin-top:11px}.enc-answer-row>div:first-child{display:flex;justify-content:space-between;gap:12px;font-size:.88rem}.enc-answer-bar{height:7px;background:#e7eef5;border-radius:999px;overflow:hidden;margin-top:5px}.enc-answer-bar span{display:block;height:100%;background:var(--enc-primary);border-radius:inherit}.enc-filter-inline{display:grid;gap:5px;min-width:190px;font-weight:700}.enc-status.observada{background:#fff7e6;color:#805b00}.enc-status.anulada{background:#f1f3f5;color:#586474}.enc-status.iniciada{background:#edf5fa;color:#245b7c}.enc-response-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;background:#f4f8fb;border-radius:13px;padding:16px}.enc-response-summary>div{display:flex;flex-direction:column;gap:4px}.enc-response-summary span,.enc-response-summary small{color:var(--enc-muted);font-size:.82rem}.enc-file-list{display:grid;gap:9px}.enc-file-item{display:flex;align-items:center;gap:12px;border:1px solid var(--enc-line);border-radius:11px;padding:12px;color:var(--enc-ink);text-decoration:none}.enc-file-item:hover{border-color:#8fc0df;background:#f8fcff;color:var(--enc-ink)}.enc-file-item span:nth-child(2){display:flex;flex:1;min-width:0;flex-direction:column}.enc-file-item small{color:var(--enc-muted)}
div.dataTables_wrapper div.dataTables_filter input,div.dataTables_wrapper div.dataTables_length select{min-height:38px;border-color:var(--enc-line)}
@media(max-width:900px){.enc-admin-layout{grid-template-columns:1fr}.enc-survey-picker{grid-template-columns:1fr}.enc-span-8,.enc-span-6,.enc-span-4{grid-column:span 12}.enc-hero{flex-direction:column}.enc-card{padding:19px}}
@media(max-width:1100px){.enc-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}.enc-chart-grid{grid-template-columns:1fr}.enc-answer-grid{grid-template-columns:1fr}}
@media(max-width:900px){.enc-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.enc-response-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.enc-section-heading{flex-direction:column}.enc-filter-inline{width:100%}}
@media(max-width:575px){.enc-page{padding:18px 12px 40px}.enc-card{border-radius:12px;padding:16px;box-shadow:none}.enc-btn{width:100%}.enc-option{padding:13px 11px}.enc-actions{align-items:stretch}.enc-question{padding:17px 0}.enc-admin-nav{width:100%}.enc-admin-nav button{flex:1;justify-content:center}.enc-kpis{grid-template-columns:1fr}.enc-kpi{padding:14px}.enc-response-summary{grid-template-columns:1fr}.enc-row-actions{justify-content:flex-start}.enc-survey-table{min-width:980px}}
.enc-toast{position:fixed;z-index:1085;right:20px;bottom:20px;display:flex;align-items:flex-start;gap:12px;width:min(420px,calc(100vw - 32px));padding:16px 14px;background:#173e58;color:#fff;border-radius:14px;box-shadow:0 14px 36px rgba(15,40,58,.28);opacity:0;visibility:hidden;transform:translateY(18px);transition:opacity .2s ease,transform .2s ease,visibility .2s}.enc-toast.show{opacity:1;visibility:visible;transform:translateY(0)}.enc-toast>.material-symbols-outlined{color:#ffd166;font-size:26px}.enc-toast>div{display:grid;gap:2px;flex:1}.enc-toast strong{font-size:.96rem}.enc-toast [data-toast-message]{font-size:.9rem;line-height:1.4;color:#e9f4fa}.enc-toast button{border:0;background:transparent;color:#fff;font-size:1.5rem;line-height:1;padding:0 2px;cursor:pointer}.enc-toast button:focus-visible{outline:3px solid #ffbf47;outline-offset:3px}@media(max-width:575px){.enc-toast{right:16px;bottom:16px}}
.enc-survey-nav{display:flex;gap:4px;overflow-x:auto;margin-bottom:18px;padding:5px;background:#eaf0f6;border-radius:12px;scrollbar-width:thin}.enc-survey-nav button{white-space:nowrap;border:0;background:transparent;color:#40546a;border-radius:9px;padding:9px 13px;font-weight:700}.enc-survey-nav button.active{background:#fff;color:var(--enc-primary-dark);box-shadow:0 2px 8px rgba(19,52,82,.1)}
.enc-option-context{display:flex;align-items:flex-start;gap:10px;margin-bottom:18px;padding:11px 13px;border-radius:10px;background:#eef6fb;color:#28536e}.enc-option-context>.material-symbols-outlined{font-size:21px}.enc-option-context small,.enc-option-context strong{display:block}.enc-option-context small{font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em}.enc-option-context strong{margin-top:2px;line-height:1.35}
.enc-filter-panel{display:grid;grid-template-columns:minmax(180px,1.5fr) repeat(5,minmax(120px,1fr));gap:12px;align-items:end;padding:16px;margin:18px 0;background:#f7fafc;border:1px solid var(--enc-line);border-radius:13px}.enc-filter-panel label{display:block;margin-bottom:5px;font-size:.84rem;font-weight:700}.enc-filter-actions{display:flex;gap:7px;align-items:center}.enc-filter-actions .btn{min-height:38px}
.enc-info-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.enc-definition{margin:0}.enc-definition>div{display:grid;grid-template-columns:minmax(100px,.8fr) minmax(0,1.2fr);gap:10px;padding:9px 0;border-bottom:1px solid #edf1f5}.enc-definition>div:last-child{border-bottom:0}.enc-definition dt{color:var(--enc-muted);font-weight:600}.enc-definition dd{margin:0;font-weight:700;overflow-wrap:anywhere}.enc-builder-title{display:flex;justify-content:space-between;align-items:flex-start;gap:14px}.enc-builder-toolbar{margin-bottom:14px}.enc-option-list{margin:12px 0 0;padding-left:24px}.enc-option-list li{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:5px 0}.enc-rule-summary{display:flex;gap:8px;align-items:flex-start;margin:10px 0;padding:9px 11px;border-radius:9px;background:#eef6fb;color:#28536e;font-size:.88rem}.enc-rule-summary .material-symbols-outlined{font-size:19px}.enc-condition-row{padding:14px;margin-bottom:12px;border:1px solid var(--enc-line);border-radius:11px;background:#f8fafc}.enc-pagination{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-top:14px;color:var(--enc-muted)}.enc-pagination>div{display:flex;align-items:center;gap:10px}.enc-clean-list{display:grid;gap:9px;margin:0;padding:0;list-style:none}.enc-clean-list li{padding-bottom:9px;border-bottom:1px solid #edf1f5}.enc-clean-list li:last-child{border-bottom:0}.enc-danger-zone{border-color:#efc8c4}.enc-timeline{display:grid;gap:14px;padding-left:22px}.enc-timeline li::marker{color:var(--enc-primary)}.enc-timeline li span{display:block;color:var(--enc-muted);font-size:.83rem}.enc-timeline li p{margin:5px 0 0}.enc-callout.info{background:#eef6fb;border-color:#4f91ba;color:#254e68}
@media(max-width:1100px){.enc-filter-panel{grid-template-columns:repeat(3,minmax(0,1fr))}.enc-info-grid{grid-template-columns:1fr 1fr}}
@media(max-width:767px){.enc-filter-panel,.enc-info-grid{grid-template-columns:1fr}.enc-builder-title,.enc-pagination{align-items:stretch;flex-direction:column}.enc-option-list li{align-items:flex-start;flex-direction:column}.enc-filter-actions .btn{flex:1}.enc-survey-nav{position:sticky;top:0;z-index:5}.enc-definition>div{grid-template-columns:1fr}.enc-definition dd{margin-top:-5px}}

/* Navegación operativa del módulo de funcionarios */
.enc-module-nav{display:flex;align-items:center;gap:6px;margin:0 0 18px;padding:6px;overflow-x:auto;background:#fff;border:1px solid var(--enc-line);border-radius:13px;box-shadow:0 5px 18px rgba(18,52,77,.06);scrollbar-width:thin}.enc-module-nav a{display:inline-flex;align-items:center;gap:7px;min-height:42px;padding:9px 13px;border-radius:9px;color:#40546a;font-weight:700;text-decoration:none;white-space:nowrap}.enc-module-nav a:hover,.enc-module-nav a:focus-visible{background:#edf6fb;color:var(--enc-primary-dark);outline:0}.enc-module-nav a.active{background:var(--enc-primary);color:#fff}.enc-module-nav .material-symbols-outlined{font-size:20px}.enc-module-nav a.active .material-symbols-outlined{color:inherit}
@media(max-width:767px){.enc-module-nav{position:sticky;top:0;z-index:20;margin-right:-12px;margin-left:-12px;border-right:0;border-left:0;border-radius:0;box-shadow:0 4px 12px rgba(18,52,77,.09)}.enc-module-nav a{min-height:44px;padding-right:12px;padding-left:12px}}

/* Accesos directos administrativos: visibles aun antes de cargar los datos API. */
.enc-tools{margin:0 0 24px}.enc-tool-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.enc-tool-card{display:flex;align-items:flex-start;gap:14px;min-height:108px;padding:18px;border:1px solid var(--enc-line);border-radius:14px;background:#fff;color:#263b4f;text-decoration:none;box-shadow:0 5px 18px rgba(18,52,77,.05);transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}.enc-tool-card:hover,.enc-tool-card:focus-visible{border-color:#83b9d8;color:var(--enc-primary-dark);box-shadow:0 9px 24px rgba(18,52,77,.11);transform:translateY(-1px);outline:0}.enc-tool-card>.material-symbols-outlined{display:grid;place-items:center;flex:0 0 42px;width:42px;height:42px;border-radius:11px;background:#eaf5fb;color:var(--enc-primary);font-size:24px}.enc-tool-card span:last-child{display:grid;gap:5px}.enc-tool-card strong{font-size:1rem}.enc-tool-card small{color:var(--enc-muted);line-height:1.45}
@media(max-width:1000px){.enc-tool-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:575px){.enc-tool-grid{grid-template-columns:1fr}.enc-tool-card{min-height:auto}}
