.impersonation-banner{background:#fff7ed;border-bottom:1px solid #fed7aa;color:#9a3412;padding:8px 0}.impersonation-banner .shell{display:flex;justify-content:center;align-items:center;gap:12px;flex-wrap:wrap}.admin-shell{display:grid;grid-template-columns:220px minmax(0,1fr);gap:18px;align-items:start}.sidebar{position:sticky;top:84px;padding:9px}.admin-nav{display:grid;gap:5px}.admin-nav button{border:0;background:transparent;text-align:left;padding:10px 11px;border-radius:9px;font-weight:850;color:#475569}.admin-nav button:hover{background:#f8fafc}.admin-nav button.active{background:#eef8e9;color:#225d0d}.admin-content{min-width:0}.section-head{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:15px}.section-head h2{margin:0;font-size:1.32rem}.section-head p{margin:4px 0 0;color:var(--muted)}.metric-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;margin-bottom:16px}.metric{background:#fff;border:1px solid var(--line);border-radius:12px;padding:13px;box-shadow:var(--shadow)}.metric-label{font-size:.68rem;text-transform:uppercase;letter-spacing:.07em;color:#64748b;font-weight:900}.metric-value{font-size:1.6rem;font-weight:950;margin-top:6px}.toolbar{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin:12px 0}.toolbar input,.toolbar select{min-width:145px;flex:1 1 150px}.table-wrap{overflow:auto;border:1px solid var(--line);border-radius:12px;background:#fff}.data-table{width:100%;border-collapse:collapse;min-width:850px}.data-table th{position:sticky;top:0;background:#f8fafc;color:#475569;font-size:.72rem;text-transform:uppercase;letter-spacing:.04em;text-align:left;padding:10px;border-bottom:1px solid var(--line)}.data-table td{padding:10px;border-bottom:1px solid #eef2f7;font-size:.84rem;vertical-align:top}.data-table tr:hover td{background:#fcfdfb}.actions-cell{display:flex;gap:5px;flex-wrap:wrap}.area-bars{display:grid;gap:8px}.area-bar{display:grid;grid-template-columns:1fr auto;gap:8px}.pending-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.pending-item{border:1px solid var(--line);border-radius:9px;padding:8px;background:#f8fafc;font-size:.8rem}.large-text{min-height:190px}.actions-row{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.day-preview{display:grid;gap:10px}.preview-day{border:1px solid var(--line);border-radius:10px;padding:10px}.preview-slots{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.preview-slot{border:1px solid #badbaa;background:#f5fbf1;border-radius:8px;padding:7px 9px;font-size:.75rem}.preview-slot.off{background:#f1f5f9;color:#94a3b8;text-decoration:line-through}.program-card{display:grid;gap:8px}.program-link{display:flex;gap:7px;align-items:center;flex-wrap:wrap;background:#f8fafc;border:1px solid var(--line);border-radius:9px;padding:9px}.program-link code{word-break:break-all}.audit-list{display:grid;gap:7px}.audit-item{border-left:3px solid #cbd5e1;padding:7px 10px;background:#f8fafc;border-radius:0 8px 8px 0;font-size:.8rem}.complete-banner{margin-bottom:14px}.modal-form{display:grid;gap:11px}.modal-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.status-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:#94a3b8;margin-right:5px}.status-dot.on{background:#39a900}.badge.open{background:#ecfdf5;color:#047857;border-color:#a7f3d0}.badge.closed{background:#f1f5f9;color:#64748b}.badge.archived{background:#eef2ff;color:#4338ca}.badge.superadmin{background:#fef3c7;color:#92400e}
@media(max-width:1100px){.metric-grid{grid-template-columns:repeat(3,1fr)}.pending-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:800px){.admin-shell{grid-template-columns:1fr}.sidebar{position:static;overflow:auto}.admin-nav{display:flex;min-width:max-content}.admin-nav button{text-align:center}.metric-grid{grid-template-columns:repeat(2,1fr)}.modal-grid{grid-template-columns:1fr}.pending-grid{grid-template-columns:1fr}}
@media print{.sidebar,.toolbar,.section-head button,.actions-cell,.impersonation-banner{display:none!important}.admin-shell{display:block}.admin-panel[hidden]{display:none!important}.data-table{min-width:0}.table-wrap{border:0;overflow:visible}.data-table th{position:static}}
.login-wrap{min-height:calc(100vh - 130px);display:grid;place-items:center}.login-card{width:min(430px,100%);text-align:left}.login-logo{width:76px;height:76px;object-fit:contain;display:block;margin:0 auto 8px}.auth-title{text-align:center;margin:0}.auth-help{text-align:center;color:var(--muted);margin:7px 0 18px}.session-user{font-size:.8rem;font-weight:900;color:#475569}.confirmation-grid{background:#f8fafc;border:1px solid var(--line);border-radius:12px;padding:14px;line-height:1.6}.consent{display:flex;gap:8px;align-items:flex-start}

/* V4.2 */
.import-card{width:100%}.extra-wide-text{width:100%;min-height:245px;resize:vertical}.conflict-list{margin-top:12px;display:grid;gap:8px}.conflict-list h4{margin:0 0 2px}.conflict-item{display:flex;justify-content:space-between;gap:12px;align-items:center;border:1px solid #fed7aa;background:#fff7ed;border-radius:10px;padding:10px}.error-details{margin-top:10px;border:1px solid #fecaca;background:#fff7f7;border-radius:10px;padding:10px}.history-dashboard{margin-bottom:16px}.history-chart{display:grid;gap:12px}.chart-row{display:grid;gap:5px}.chart-label{display:flex;justify-content:space-between;gap:10px;font-size:.8rem}.chart-label strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chart-track{height:10px;border-radius:999px;background:#e2e8f0;overflow:hidden}.chart-fill{height:100%;background:var(--sena);border-radius:inherit;min-width:2px}.donut-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.status-stat{border:1px solid var(--line);border-radius:12px;padding:14px;text-align:center;background:#f8fafc}.status-stat strong{display:block;font-size:1.7rem;margin-top:8px}.report-filter-card{margin-bottom:16px}.report-table{min-width:1500px}.report-results{overflow:hidden}
@media(max-width:800px){.donut-summary{grid-template-columns:1fr}.conflict-item{align-items:flex-start;flex-direction:column}.extra-wide-text{min-height:210px}}
@media print{#panel-reports .report-filter-card,#panel-reports .section-head .actions-row,#panel-reports .metric-grid,#panel-reports .grid{display:none!important}.report-table{min-width:0;font-size:9px}.report-table th,.report-table td{padding:4px!important}}

/* V4.3 - selección masiva y ordenamiento */
.selectable-table .select-col{width:44px;text-align:center}.selectable-table .row-check,.selectable-table thead input[type="checkbox"]{width:18px;height:18px;cursor:pointer;accent-color:var(--sena)}.sort-head{appearance:none;border:0;background:transparent;padding:0;color:inherit;font:inherit;font-weight:900;text-transform:uppercase;letter-spacing:.04em;cursor:pointer;display:inline-flex;align-items:center;gap:4px}.sort-head:hover{color:#225d0d}.sort-head:focus-visible{outline:2px solid var(--sena);outline-offset:3px;border-radius:4px}.selection-status{font-size:.78rem;color:var(--muted);font-weight:800;margin:0 0 8px}.compact-head{margin-bottom:8px}.recipient-preview{max-height:260px;overflow:auto;border:1px solid var(--line);border-radius:10px;background:#f8fafc;padding:10px;display:grid;gap:4px;font-size:.8rem}.muted{color:var(--muted)}
@media(max-width:800px){.selectable-table{min-width:960px}.selection-status{margin-left:2px}}

/* V4.4 - Análisis temporal de informes de formación */
.fa-upload-card{margin-bottom:16px}.fa-file-list{display:grid;gap:8px;max-height:250px;overflow:auto}.fa-file{display:flex;align-items:center;justify-content:space-between;gap:10px;border:1px solid var(--line);border-radius:10px;padding:9px 10px;background:#f8fafc}.fa-file span{display:grid;gap:2px;min-width:0}.fa-file strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fa-file small{color:var(--muted)}.fa-filter-card{margin:16px 0}.fa-bars{display:grid;gap:12px}.fa-bar-row{display:grid;gap:5px}.fa-bar-label{display:flex;justify-content:space-between;gap:12px;font-size:.8rem}.fa-bar-label strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:80%}.fa-bar-track{height:12px;background:#e2e8f0;border-radius:999px;overflow:hidden}.fa-bar-fill{height:100%;background:var(--sena);border-radius:inherit}.fa-small-table{min-width:760px}.fa-review-table{min-width:1050px}.fa-knowledge-list{display:grid;gap:8px;max-height:440px;overflow:auto}.fa-knowledge-item{display:grid;grid-template-columns:auto 1fr;align-items:start;gap:8px;border-bottom:1px solid #eef2f7;padding:8px 0;font-size:.84rem}.fa-knowledge-item:last-child{border-bottom:0}.fa-detail-head h3{margin:4px 0}.fa-detail-head p{margin:0;color:var(--muted)}.fa-detail-block{border-top:1px solid var(--line);padding-top:14px;margin-top:14px}.fa-detail-block h4,.fa-detail-block h5{margin:0 0 7px}.fa-detail-block p{margin:0 0 12px}.fa-detail-block li{margin-bottom:7px}.fa-edit-competence{border:1px solid var(--line);border-radius:12px;padding:13px;margin-bottom:12px;background:#f8fafc}.fa-edit-competence textarea{width:100%}.fa-hidden-row{opacity:.55}.fa-print-report{display:none}.fa-print-warning{padding:8px 10px;border:1px solid #f59e0b}.fa-print-total{margin:12px 0;font-size:1.05rem}.fa-print-foot{margin-top:14px;color:#475569}
@media(max-width:800px){.fa-bar-label{align-items:flex-start;flex-direction:column;gap:2px}.fa-bar-label strong{max-width:100%;white-space:normal}.fa-review-table{min-width:980px}}
@media print{
  body.formation-print{background:#fff;color:#111}.formation-print .site-header,.formation-print .footer,.formation-print .sidebar,.formation-print .toast-region,.formation-print #modal{display:none!important}.formation-print .page{padding:0}.formation-print .shell{width:100%;max-width:none}.formation-print .admin-shell{display:block}.formation-print .admin-content{width:100%}.formation-print .admin-panel{display:none!important}.formation-print #panel-formation-analysis{display:block!important}.formation-print #panel-formation-analysis>*:not(.fa-print-report){display:none!important}.formation-print .fa-print-report{display:block!important;padding:0 4mm;font-family:Arial,sans-serif;font-size:10pt}.formation-print .fa-print-report h1{font-size:19pt;margin:0 0 6px}.formation-print .fa-print-report h2{font-size:13pt;margin:16px 0 6px}.formation-print .fa-print-report p{margin:3px 0}.formation-print .fa-print-report table{width:100%;border-collapse:collapse;margin:5px 0 10px}.formation-print .fa-print-report th,.formation-print .fa-print-report td{border:1px solid #bbb;padding:5px;text-align:left;vertical-align:top;font-size:8.5pt}.formation-print .fa-print-report th{background:#f2f2f2}.formation-print .fa-print-report ol{margin:5px 0 0;padding-left:20px}.formation-print .fa-print-report li{margin-bottom:3px}.formation-print .fa-print-header{border-bottom:2px solid #39a900;padding-bottom:8px;margin-bottom:12px}@page{size:A4;margin:12mm}
}
.fa-mini-metrics{grid-template-columns:repeat(3,minmax(0,1fr));margin:14px 0}.fa-mini-chart{border:1px solid var(--line);border-radius:12px;padding:12px;background:#f8fafc}.fa-mini-chart h4{margin:0 0 10px}
@media(max-width:650px){.fa-mini-metrics{grid-template-columns:1fr}}

/* V4.4.1 - navegación superior y dashboard de formación */
.page>.shell.admin-shell{width:min(1480px,calc(100% - 28px));display:block}
.sidebar{position:sticky;top:76px;z-index:45;margin:0 0 18px;padding:8px;overflow-x:auto;overflow-y:hidden;scrollbar-width:thin;background:rgba(255,255,255,.98);backdrop-filter:blur(8px)}
.admin-nav{display:flex;gap:6px;min-width:max-content}
.admin-nav button{flex:0 0 auto;text-align:center;white-space:nowrap;padding:9px 12px}
.admin-content{width:100%;min-width:0}
.fa-chart-stack{display:grid;grid-template-columns:minmax(0,1fr);gap:16px}
.fa-chart-card{min-width:0;max-width:100%;overflow:hidden}
.fa-chart-card>div{min-width:0;max-width:100%}
.fa-bars,.fa-bar-row,.fa-bar-label,.fa-bar-track{min-width:0;max-width:100%}
.fa-bar-label{width:100%;align-items:flex-start}
.fa-bar-label strong{white-space:normal;overflow:visible;text-overflow:clip;overflow-wrap:anywhere;word-break:break-word;max-width:min(82%,100%)}
.fa-bar-label span{flex:0 0 auto;white-space:nowrap}.fa-bar-fill{display:block}
.fa-bar-action{appearance:none;border:1px solid transparent;background:transparent;color:inherit;width:100%;text-align:left;padding:8px;border-radius:10px;font:inherit;cursor:pointer}
.fa-bar-action:hover{background:#f8fafc;border-color:var(--line)}
.fa-bar-action:focus-visible{outline:2px solid var(--sena);outline-offset:2px}
.fa-bar-action.is-active{background:#eef8e9;border-color:#badbaa}
.fa-active-filter{margin-top:12px}
.fa-filter-notice{align-items:center;justify-content:space-between;flex-wrap:wrap}
.fa-knowledge-button{appearance:none;width:100%;border:1px solid transparent;border-bottom-color:#eef2f7;background:transparent;color:inherit;text-align:left;cursor:pointer;border-radius:9px}
.fa-knowledge-button:hover{background:#f8fafc;border-color:var(--line)}
.fa-knowledge-button:focus-visible{outline:2px solid var(--sena);outline-offset:2px}
.fa-knowledge-button.is-selected{background:#eef8e9;border-color:#badbaa;color:#225d0d}
#formationRapContext{overflow-wrap:anywhere}
#formationResults,#formationPeriodChart,#formationFichaChart{min-width:0;max-width:100%}
@media(max-width:800px){.page>.shell.admin-shell{width:min(calc(100% - 18px),1480px)}.sidebar{position:sticky;top:64px;overflow-x:auto;margin-bottom:14px}.admin-nav{display:flex;min-width:max-content}.fa-bar-label strong{max-width:100%}.fa-filter-notice{align-items:flex-start;flex-direction:column}}


/* V4.4.3 - fichas agrupadas por programa, sin desplazamiento horizontal */
.fa-drop-zone{position:relative;min-height:210px;border:2px dashed #b8c5d1;border-radius:16px;background:#f8fafc;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:7px;padding:24px;cursor:pointer;transition:border-color .18s ease,background .18s ease,transform .18s ease}
.fa-drop-zone:hover,.fa-drop-zone.is-dragover{border-color:var(--sena);background:#f1faed}
.fa-drop-zone.is-dragover{transform:translateY(-1px)}
.fa-drop-zone:focus-within{outline:2px solid var(--sena);outline-offset:3px}
.fa-drop-zone strong{font-size:1rem;color:#24440f}.fa-drop-zone>span:not(.fa-drop-icon){color:var(--muted);font-size:.86rem}.fa-drop-zone small{color:#64748b}
.fa-drop-icon{font-size:2.2rem;line-height:1}
.fa-file-input{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.fa-ficha-program-card{min-width:0;overflow:hidden}
.fa-ficha-program-list{display:grid;gap:14px;max-width:100%;min-width:0;overflow:hidden;padding:2px 0}
.fa-program-group{min-width:0;padding-top:2px}
.fa-program-group+.fa-program-group{border-top:1px solid var(--line);padding-top:14px}
.fa-program-title{margin:0 0 8px;font-size:.94rem;line-height:1.25;color:var(--text);overflow-wrap:anywhere}
.fa-ficha-program-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:7px;min-width:0;max-width:100%}
.fa-ficha-program-button{appearance:none;width:100%;min-width:0;display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:7px;border:1px solid var(--line);border-radius:10px;background:#fff;color:inherit;text-align:left;padding:7px 8px;cursor:pointer}
.fa-ficha-program-button:hover{background:#f8fafc;border-color:#badbaa}
.fa-ficha-program-button:focus-visible{outline:2px solid var(--sena);outline-offset:2px}
.fa-ficha-program-button.is-selected{background:#eef8e9;border-color:#8fcf72;color:#225d0d}
.fa-ficha-program-button .badge{font-size:.68rem;min-width:22px;height:22px;display:inline-grid;place-items:center;padding:0 5px}
.fa-ficha-program-copy{display:grid;gap:1px;min-width:0}
.fa-ficha-program-copy strong,.fa-ficha-program-copy small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.fa-ficha-program-copy strong{font-size:.78rem;line-height:1.15}
.fa-ficha-program-copy small{font-size:.68rem;color:var(--muted);line-height:1.15}
.fa-period-count{font-size:.68rem;font-weight:850;white-space:nowrap;color:#475569;background:#f1f5f9;border-radius:999px;padding:4px 7px}
.fa-ficha-program-button.is-selected .fa-period-count{background:#dff3d6;color:#225d0d}

@media(max-width:1100px){.fa-ficha-program-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:850px){.fa-ficha-program-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:650px){
  .fa-drop-zone{min-height:180px;padding:18px}
  .fa-ficha-program-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:390px){.fa-ficha-program-grid{grid-template-columns:1fr}}

@media print{
  .formation-print .fa-print-program{margin-top:16px}
  .formation-print .fa-print-program>h2{border-bottom:2px solid #444;padding-bottom:4px;margin-top:20px}
  .formation-print .fa-print-ficha{border-top:1px solid #bbb;padding-top:8px;margin-top:12px}
  .formation-print .fa-print-ficha>h3{font-size:11.5pt;margin:0 0 7px}
  .formation-print .fa-print-competency{margin:8px 0 10px;padding-left:8px;border-left:2px solid #d8d8d8}
  .formation-print .fa-print-competency h4{font-size:9.5pt;margin:0 0 2px}
  .formation-print .fa-print-competency h5{font-size:8.8pt;margin:5px 0 2px}
  .formation-print .fa-print-competency-text{font-weight:700}
  .formation-print .fa-print-competency ul{margin:3px 0 0;padding-left:18px}
  .formation-print .fa-print-competency li{margin-bottom:2px;line-height:1.25}
  .formation-print .fa-print-hours{margin-top:8px;padding:6px 8px;background:#f5f5f5;border:1px solid #ddd}
  .formation-print .fa-print-subtitle{margin-top:8px}
  .formation-print .fa-print-program-total{margin-top:9px;padding:7px 8px;border-top:2px solid #555;border-bottom:1px solid #aaa}
  .formation-print .fa-print-muted{color:#666;font-style:italic}
  .formation-print .fa-print-period-table{break-inside:avoid}
}


/* V4.4.4 - programas como grupos y fichas compactas en matriz de 5 columnas */
.fa-ficha-program-list{display:grid;gap:18px;width:100%;max-width:100%;min-width:0;overflow:visible}
.fa-program-group{display:block;width:100%;min-width:0;padding:0}
.fa-program-group+.fa-program-group{border-top:1px solid var(--line);padding-top:17px}
.fa-program-heading{display:flex;align-items:baseline;gap:8px;min-width:0;margin:0 0 9px}
.fa-program-heading>span{flex:0 0 auto;font-size:.68rem;line-height:1;text-transform:uppercase;letter-spacing:.07em;font-weight:850;color:var(--muted)}
.fa-program-title{min-width:0;margin:0;font-size:.94rem;line-height:1.3;font-weight:850;color:var(--text);overflow-wrap:anywhere}
.fa-ficha-program-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;width:100%;max-width:100%;min-width:0}
.fa-ficha-program-button{appearance:none;display:flex;align-items:center;justify-content:center;gap:5px;width:100%;min-width:0;min-height:38px;border:1px solid var(--line);border-radius:9px;background:#fff;color:inherit;text-align:center;padding:7px 8px;cursor:pointer;overflow:hidden}
.fa-ficha-program-button strong{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.78rem;line-height:1.2;font-weight:800}
.fa-ficha-program-button small{flex:0 0 auto;font-size:.64rem;line-height:1;color:var(--muted);white-space:nowrap}
.fa-ficha-program-button:hover{background:#f8fafc;border-color:#badbaa}
.fa-ficha-program-button.is-selected{background:#eef8e9;border-color:#8fcf72;color:#225d0d}
.fa-ficha-program-button.is-selected small{color:#397622}
@media(max-width:1100px){.fa-ficha-program-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:850px){.fa-ficha-program-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:650px){.fa-ficha-program-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:390px){.fa-ficha-program-grid{grid-template-columns:1fr}}


/* V4.4.5 - programas en columnas compactas; hasta 5 bloques por fila */
.fa-ficha-program-list{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:12px;
  width:100%;
  max-width:100%;
  min-width:0;
  overflow:visible;
  align-items:start;
}
.fa-program-group,
.fa-program-group+.fa-program-group{
  display:block;
  width:100%;
  min-width:0;
  margin:0;
  padding:10px;
  border:1px solid var(--line);
  border-radius:12px;
  background:#fff;
  align-self:start;
}
.fa-program-heading{
  display:block;
  min-width:0;
  margin:0 0 9px;
}
.fa-program-heading>span{
  display:none;
}
.fa-program-title{
  min-width:0;
  margin:0;
  font-size:.82rem;
  line-height:1.25;
  font-weight:850;
  color:var(--text);
  overflow-wrap:anywhere;
}
.fa-ficha-program-grid{
  display:grid;
  grid-template-columns:1fr;
  gap:6px;
  width:100%;
  max-width:100%;
  min-width:0;
}
.fa-ficha-program-button{
  min-height:34px;
  padding:6px 7px;
}
.fa-ficha-program-button strong{
  font-size:.75rem;
}
.fa-ficha-program-button small{
  font-size:.62rem;
}
@media(max-width:1250px){.fa-ficha-program-list{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:980px){.fa-ficha-program-list{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:720px){.fa-ficha-program-list{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:460px){.fa-ficha-program-list{grid-template-columns:1fr}}

/* V4.4.7 - gráfica mensual de horas */
#formationMonthlyChart{min-width:0;max-width:100%;overflow:hidden}
.fa-line-chart-wrap{width:100%;max-width:100%;overflow:hidden;padding:4px 0}
.fa-line-chart{display:block;width:100%;height:auto;max-width:100%;min-height:220px}
.fa-line-grid{stroke:#e2e8f0;stroke-width:1}
.fa-line-path{fill:none;stroke:var(--sena);stroke-width:4;stroke-linejoin:round;stroke-linecap:round}
.fa-line-point{fill:#fff;stroke:var(--sena);stroke-width:4}
.fa-line-xlabel,.fa-line-ylabel{font-size:14px;fill:#64748b}
.fa-line-value{font-size:13px;font-weight:800;fill:#334155}
@media(max-width:650px){.fa-line-chart{min-height:190px}.fa-line-xlabel,.fa-line-ylabel{font-size:12px}.fa-line-value{font-size:11px}}

/* V4.4.9 - Analizador GF */
.gf-upload-card{margin-bottom:16px}.gf-drop-zone{position:relative;min-height:210px;border:2px dashed #b8c5d1;border-radius:16px;background:#f8fafc;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:7px;padding:24px;cursor:pointer;transition:border-color .18s ease,background .18s ease,transform .18s ease}.gf-drop-zone:hover,.gf-drop-zone.is-dragover{border-color:var(--sena);background:#f1faed}.gf-drop-zone.is-dragover{transform:translateY(-1px)}.gf-drop-zone:focus-within{outline:2px solid var(--sena);outline-offset:3px}.gf-drop-zone strong{font-size:1rem;color:#24440f}.gf-drop-zone>span:not(.gf-drop-icon){color:var(--muted);font-size:.86rem}.gf-drop-zone small{color:#64748b}.gf-drop-icon{font-size:2.2rem;line-height:1}.gf-file-input{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.gf-file-list{display:grid;gap:8px}.gf-file{display:flex;align-items:center;justify-content:space-between;gap:10px;border:1px solid var(--line);border-radius:10px;padding:10px;background:#f8fafc}.gf-file span{display:grid;gap:2px;min-width:0}.gf-file strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.gf-file small{color:var(--muted)}.gf-rules{display:grid;gap:5px;margin-top:12px;padding:12px;border:1px solid var(--line);border-radius:10px;background:#fff}.gf-rules strong{font-size:.78rem;color:#334155}.gf-rules span{font-size:.78rem;color:var(--muted);line-height:1.45}.gf-result{display:flex;justify-content:space-between;align-items:center;gap:18px;border-radius:14px;padding:18px;margin:16px 0;border:1px solid var(--line);background:#fff}.gf-result>div:first-child{display:grid;gap:3px}.gf-result>div:first-child>span{font-size:.7rem;text-transform:uppercase;letter-spacing:.08em;font-weight:900}.gf-result>div:first-child>strong{font-size:1.7rem;line-height:1}.gf-result p{margin:3px 0 0;font-size:.84rem}.gf-result-ok{border-color:#86efac;background:#f0fdf4;color:#166534}.gf-result-review{border-color:#fde68a;background:#fffbeb;color:#92400e}.gf-result-fail{border-color:#fecaca;background:#fff1f2;color:#991b1b}.gf-operator{display:grid;gap:2px;text-align:right}.gf-operator small{opacity:.78}.gf-summary-grid{margin-bottom:16px}.gf-dl{display:grid;gap:0;margin:0}.gf-dl>div{display:grid;grid-template-columns:155px minmax(0,1fr);gap:10px;padding:8px 0;border-bottom:1px solid #eef2f7}.gf-dl>div:last-child{border-bottom:0}.gf-dl dt{font-size:.76rem;font-weight:850;color:#64748b}.gf-dl dd{margin:0;font-size:.84rem;font-weight:700;overflow-wrap:anywhere}.gf-table-card{margin-top:16px}.gf-table{min-width:760px}.gf-check{display:inline-flex;align-items:center;gap:5px;border-radius:999px;padding:4px 8px;font-size:.72rem;font-weight:900;white-space:nowrap}.gf-check-ok{background:#dcfce7;color:#166534}.gf-check-review{background:#fef3c7;color:#92400e}.gf-check-fail{background:#fee2e2;color:#991b1b}.gf-info-match,.gf-info-diff,.gf-info-unknown{display:inline-flex;border-radius:999px;padding:4px 8px;font-size:.72rem;font-weight:900;white-space:nowrap}.gf-info-match{background:#dcfce7;color:#166534}.gf-info-diff{background:#e0f2fe;color:#075985}.gf-info-unknown{background:#f1f5f9;color:#64748b}
@media(max-width:800px){.gf-result{align-items:flex-start;flex-direction:column}.gf-operator{text-align:left}.gf-dl>div{grid-template-columns:1fr;gap:2px}.gf-drop-zone{min-height:180px;padding:18px}.gf-table{min-width:700px}}

/* v4.5 - Reporte de Tiempos integrado y roles */
.time-report-card{padding:0;overflow:hidden;min-height:720px}
.time-report-frame{display:block;width:100%;height:calc(100vh - 190px);min-height:720px;border:0;background:#f6f6f6}
.badge.role-analyst{background:#eef5ff;color:#174b85;border-color:#cbdff7}
.badge.role-admin{background:#eef7ea;color:#2e6f16;border-color:#cfe6c3}
@media(max-width:900px){.time-report-frame{height:calc(100vh - 150px);min-height:640px}}

/* Usuarios - acciones compactas v4.5.10 */
.user-actions-cell{vertical-align:middle!important}.user-action-icons{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.icon-action-btn{width:38px;height:38px;min-width:38px;padding:0;border-radius:10px;border:1px solid #d7dee8;background:#fff;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:transform .16s ease,box-shadow .16s ease,background .16s ease,border-color .16s ease;color:#334155}.icon-action-btn svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;pointer-events:none}.icon-action-btn:hover{transform:translateY(-1px);box-shadow:0 5px 14px rgba(15,23,42,.10)}.icon-action-btn:focus-visible{outline:3px solid rgba(57,169,0,.22);outline-offset:2px}.icon-action-edit{color:#2563eb;background:#f8fbff;border-color:#c9d9fa}.icon-action-edit:hover{background:#eef5ff;border-color:#9ebaf2}.icon-action-reset{color:#a16207;background:#fffbeb;border-color:#f3d89a}.icon-action-reset:hover{background:#fff5cf;border-color:#e9c66c}.icon-action-delete{color:#c62828;background:#fff7f7;border-color:#f2c6c6}.icon-action-delete:hover{background:#ffecec;border-color:#eaa2a2}.user-action-icons .btn{min-height:38px;display:inline-flex;align-items:center}

/* Analizador GC v4.5.11 */
.gc-upload-card{margin-bottom:16px}.gc-drop-zone{position:relative;min-height:230px;border:2px dashed #b8c5d1;border-radius:16px;background:#f8fafc;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:7px;padding:24px;cursor:pointer;transition:border-color .18s ease,background .18s ease,transform .18s ease}.gc-drop-zone:hover,.gc-drop-zone.is-dragover{border-color:var(--sena);background:#f1faed}.gc-drop-zone.is-dragover{transform:translateY(-1px)}.gc-drop-zone:focus-within{outline:2px solid var(--sena);outline-offset:3px}.gc-drop-zone strong{font-size:1rem;color:#24440f}.gc-drop-zone>span:not(.gc-drop-icon){color:var(--muted);font-size:.86rem}.gc-drop-zone small{color:#64748b}.gc-drop-icon{font-size:2.35rem;line-height:1}.gc-file-input{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.gc-file-list{display:grid;gap:8px}.gc-file{display:flex;align-items:center;justify-content:space-between;gap:10px;border:1px solid var(--line);border-radius:10px;padding:10px;background:#f8fafc}.gc-file span{display:grid;gap:2px;min-width:0}.gc-file strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.gc-file small{color:var(--muted)}.gc-rules{display:grid;gap:5px;margin-top:12px;padding:12px;border:1px solid var(--line);border-radius:10px;background:#fff}.gc-rules strong{font-size:.78rem;color:#334155;margin-top:3px}.gc-rules span{font-size:.78rem;color:var(--muted);line-height:1.45}.gc-analyze-actions{align-items:center;flex-wrap:wrap}.gc-ocr-toggle{display:inline-flex;align-items:center;gap:7px;font-size:.78rem;color:#475569;font-weight:700}.gc-ocr-toggle input{width:auto}.gc-process{border:1px solid #bfdbfe;background:#eff6ff;border-radius:10px;padding:10px 12px}.gc-process.done{border-color:#86efac;background:#f0fdf4}.gc-process.error{border-color:#fecaca;background:#fff1f2}.gc-process-row{display:flex;align-items:center;gap:8px;font-size:.8rem}.gc-process-row strong{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.gc-process-row>span:last-child{font-variant-numeric:tabular-nums}.gc-spinner{width:14px;height:14px;border-radius:50%;border:2px solid #93c5fd;border-top-color:#2563eb;animation:gcspin .8s linear infinite;flex:0 0 auto}.gc-spinner.is-done{border-color:#22c55e;animation:none;position:relative}.gc-spinner.is-done:after{content:'✓';position:absolute;inset:-5px;font-size:13px;color:#166534;font-weight:900}.gc-progress{height:6px;background:#dbeafe;border-radius:999px;overflow:hidden;margin-top:8px}.gc-progress span{display:block;height:100%;background:#2563eb;border-radius:inherit;transition:width .25s ease}@keyframes gcspin{to{transform:rotate(360deg)}}
.gc-result-banner{display:flex;justify-content:space-between;align-items:center;gap:18px;border-radius:14px;padding:18px;margin:16px 0;border:1px solid var(--line);background:#fff}.gc-result-banner>div:first-child{display:grid;gap:3px}.gc-result-banner>div:first-child>span{font-size:.7rem;text-transform:uppercase;letter-spacing:.08em;font-weight:900}.gc-result-banner>div:first-child>strong{font-size:1.55rem;line-height:1.1}.gc-result-banner p{margin:3px 0 0;font-size:.84rem}.gc-result-ok{border-color:#86efac;background:#f0fdf4;color:#166534}.gc-result-review{border-color:#fde68a;background:#fffbeb;color:#92400e}.gc-result-fail{border-color:#fecaca;background:#fff1f2;color:#991b1b}.gc-banner-actions{display:flex;align-items:center;justify-content:flex-end;gap:7px;flex-wrap:wrap}.gc-summary-grid{margin-bottom:16px}.gc-tabs{display:flex;gap:6px;overflow-x:auto;padding:2px 0 10px;margin-bottom:6px}.gc-tabs button{border:1px solid var(--line);background:#fff;color:#475569;border-radius:999px;padding:7px 11px;font-size:.76rem;font-weight:800;white-space:nowrap;cursor:pointer}.gc-tabs button.active{border-color:var(--sena);background:#f1faed;color:#24440f}.gc-tab-count{display:inline-flex;min-width:18px;height:18px;border-radius:999px;align-items:center;justify-content:center;background:#e2e8f0;font-size:.66rem;margin-left:3px}.gc-tabs button.active .gc-tab-count{background:#d8f4c8}.gc-card-gap{margin-top:16px}.gc-dl{display:grid;gap:0;margin:0}.gc-dl>div{display:grid;grid-template-columns:145px minmax(0,1fr);gap:10px;padding:8px 0;border-bottom:1px solid #eef2f7}.gc-dl>div:last-child{border-bottom:0}.gc-dl dt{font-size:.76rem;font-weight:850;color:#64748b}.gc-dl dd{margin:0;font-size:.84rem;font-weight:700;overflow-wrap:anywhere}.gc-inventory{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.gc-inventory-item{display:flex;align-items:center;gap:8px;border:1px solid #eef2f7;border-radius:10px;padding:9px}.gc-inventory-item>span:last-child{display:grid;gap:1px}.gc-inventory-item strong{font-size:.78rem}.gc-inventory-item small{font-size:.7rem;color:var(--muted)}.gc-doc-dot{width:10px;height:10px;border-radius:50%;background:#cbd5e1;flex:0 0 auto}.gc-doc-dot.ok{background:#22c55e}.gc-doc-dot.miss{background:#ef4444}.gc-finding-list{display:grid;gap:8px}.gc-finding-mini{display:grid;grid-template-columns:72px 1fr;gap:9px;border-left:4px solid #94a3b8;background:#f8fafc;border-radius:8px;padding:9px 10px}.gc-finding-mini>span{font-size:.68rem;font-weight:900}.gc-finding-mini>div{display:grid;gap:2px}.gc-finding-mini strong{font-size:.8rem}.gc-finding-mini small{font-size:.7rem;color:#64748b}.gc-finding-mini.gc-sev-critical{border-left-color:#dc2626;background:#fff1f2}.gc-finding-mini.gc-sev-warning{border-left-color:#d97706;background:#fffbeb}.gc-finding-mini.gc-sev-review{border-left-color:#0284c7;background:#f0f9ff}.gc-finding-mini.gc-sev-info{border-left-color:#64748b}.gc-table{min-width:900px}.gc-ficha-table{min-width:930px}.gc-type-pill,.gc-severity,.gc-check,.gc-chip{display:inline-flex;align-items:center;border-radius:999px;font-size:.69rem;font-weight:850;white-space:nowrap}.gc-type-pill{padding:4px 7px;background:#f1f5f9;color:#475569}.gc-type-monthly{background:#dcfce7;color:#166534}.gc-type-evidence{background:#fef3c7;color:#92400e}.gc-type-schedule{background:#dbeafe;color:#1d4ed8}.gc-type-time_report{background:#e0f2fe;color:#075985}.gc-type-guide{background:#ede9fe;color:#6d28d9}.gc-type-attendance{background:#fce7f3;color:#9d174d}.gc-type-judgments{background:#ffedd5;color:#9a3412}.gc-type-instructors{background:#ccfbf1;color:#115e59}.gc-type-antecedents{background:#e2e8f0;color:#334155}.gc-type-ok{background:#dcfce7;color:#166534}.gc-chip{padding:3px 6px;background:#eef2ff;color:#4338ca;margin:1px}.gc-check{padding:4px 7px}.gc-check-ok{background:#dcfce7;color:#166534}.gc-check-review{background:#fef3c7;color:#92400e}.gc-check-neutral{background:#f1f5f9;color:#64748b}.gc-severity{padding:4px 7px}.gc-sev-critical{background:#fee2e2;color:#991b1b}.gc-sev-warning{background:#fef3c7;color:#92400e}.gc-sev-review{background:#e0f2fe;color:#075985}.gc-sev-info{background:#f1f5f9;color:#475569}.gc-text-danger{color:#b91c1c}.gc-callout{border:1px solid #dbeafe;background:#eff6ff;color:#1e3a8a;border-radius:10px;padding:10px 12px;margin-bottom:12px;font-size:.8rem}.gc-card-list{display:grid;gap:12px}.gc-antecedent-card{display:flex;justify-content:space-between;align-items:center;gap:14px}.gc-antecedent-card h3{margin:6px 0 4px;font-size:.92rem}.gc-antecedent-card p{margin:0 0 4px;font-size:.8rem}.gc-antecedent-card small{color:#64748b}.gc-findings-toolbar{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:10px}.gc-findings-toolbar .active{border-color:var(--sena);background:#f1faed;color:#24440f}.gc-findings-table{min-width:980px}
@media(max-width:800px){.gc-result-banner{align-items:flex-start;flex-direction:column}.gc-banner-actions{justify-content:flex-start}.gc-dl>div{grid-template-columns:1fr;gap:2px}.gc-drop-zone{min-height:190px;padding:18px}.gc-inventory{grid-template-columns:1fr}.gc-antecedent-card{align-items:flex-start;flex-direction:column}.gc-table,.gc-ficha-table,.gc-findings-table{min-width:780px}}

/* Analizador GC v4.5.12 - progreso detallado y KPIs */
.gc-progress-panel{border:1px solid #bfdbfe;background:linear-gradient(180deg,#f8fbff 0%,#eff6ff 100%);border-radius:14px;padding:14px;box-shadow:0 8px 24px rgba(37,99,235,.06)}
.gc-progress-panel.done{border-color:#86efac;background:linear-gradient(180deg,#f7fff9 0%,#f0fdf4 100%)}
.gc-progress-panel.error{border-color:#fecaca;background:linear-gradient(180deg,#fff8f8 0%,#fff1f2 100%)}
.gc-progress-main{display:flex;align-items:center;justify-content:space-between;gap:14px}
.gc-progress-title{display:flex;align-items:center;gap:10px;min-width:0}.gc-progress-title>div{display:grid;gap:2px;min-width:0}.gc-progress-title strong{font-size:.9rem;color:#1e293b}.gc-progress-title small{font-size:.74rem;color:#64748b;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.gc-progress-percent{display:grid;justify-items:end;gap:1px;flex:0 0 auto}.gc-progress-percent strong{font-size:1.35rem;line-height:1;color:#1d4ed8;font-variant-numeric:tabular-nums}.gc-progress-panel.done .gc-progress-percent strong{color:#15803d}.gc-progress-percent small{font-size:.68rem;color:#64748b;font-weight:700}
.gc-progress-overall{height:9px;margin-top:11px;background:#dbeafe}.gc-progress-overall span{background:linear-gradient(90deg,#2563eb,#3b82f6)}.gc-progress-panel.done .gc-progress-overall{background:#dcfce7}.gc-progress-panel.done .gc-progress-overall span{background:#22c55e}
.gc-progress-meta{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;margin-top:8px;font-size:.7rem;color:#64748b;font-weight:700}
.gc-doc-progress-list{display:grid;gap:7px;margin-top:11px;max-height:390px;overflow:auto;padding-right:3px}
.gc-doc-progress-row{border:1px solid #e2e8f0;background:#fff;border-radius:10px;padding:8px 9px;transition:border-color .2s ease,background .2s ease,opacity .2s ease}.gc-doc-progress-row.pending{opacity:.68}.gc-doc-progress-row.working{border-color:#bfdbfe;background:#f8fbff}.gc-doc-progress-row.done{border-color:#bbf7d0;background:#fbfffc}.gc-doc-progress-row.error{border-color:#fecaca;background:#fff7f7}
.gc-doc-progress-head{display:grid;grid-template-columns:25px minmax(0,1fr) auto;gap:8px;align-items:center}.gc-doc-order{width:23px;height:23px;display:inline-flex;align-items:center;justify-content:center;border-radius:7px;background:#f1f5f9;color:#475569;font-size:.68rem;font-weight:900}.gc-doc-progress-row.working .gc-doc-order{background:#dbeafe;color:#1d4ed8}.gc-doc-progress-row.done .gc-doc-order{background:#dcfce7;color:#166534}.gc-doc-progress-row.error .gc-doc-order{background:#fee2e2;color:#991b1b}
.gc-doc-progress-head>div{display:grid;gap:1px;min-width:0}.gc-doc-progress-head strong{font-size:.75rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#334155}.gc-doc-progress-head small{font-size:.65rem;color:#64748b;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.gc-doc-progress-head b{font-size:.72rem;color:#475569;font-variant-numeric:tabular-nums}
.gc-doc-progress-bar{height:4px;background:#e2e8f0;border-radius:999px;overflow:hidden;margin:6px 0 0 33px}.gc-doc-progress-bar span{display:block;height:100%;border-radius:inherit;background:#60a5fa;transition:width .2s ease}.gc-doc-progress-row.done .gc-doc-progress-bar span{background:#22c55e}.gc-doc-progress-row.error .gc-doc-progress-bar span{background:#ef4444}
.gc-kpi-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;margin:0 0 16px}.gc-kpi{position:relative;overflow:hidden;background:#fff;border:1px solid var(--line);border-radius:13px;padding:13px 14px 12px;min-height:108px;box-shadow:var(--shadow);display:flex;flex-direction:column;justify-content:center;gap:4px}.gc-kpi:before{content:'';position:absolute;inset:0 auto 0 0;width:4px;background:#94a3b8}.gc-kpi-label{font-size:.68rem;text-transform:uppercase;letter-spacing:.055em;color:#64748b;font-weight:900;line-height:1.25}.gc-kpi-value{font-size:1.75rem;line-height:1;font-weight:950;color:#0f172a;font-variant-numeric:tabular-nums}.gc-kpi-sub{font-size:.7rem;line-height:1.3;color:#64748b;font-weight:650}.gc-kpi-blue:before{background:#3b82f6}.gc-kpi-violet:before{background:#8b5cf6}.gc-kpi-red:before{background:#ef4444}.gc-kpi-amber:before{background:#f59e0b}.gc-kpi-cyan:before{background:#06b6d4}.gc-kpi-red .gc-kpi-value{color:#b91c1c}.gc-kpi-amber .gc-kpi-value{color:#b45309}.gc-kpi-cyan .gc-kpi-value{color:#0e7490}
@media(max-width:1200px){.gc-kpi-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:800px){.gc-progress-main{align-items:flex-start}.gc-progress-title small{white-space:normal}.gc-progress-meta{display:grid}.gc-doc-progress-list{max-height:330px}.gc-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){.gc-progress-main{display:grid;grid-template-columns:1fr auto}.gc-doc-progress-head{grid-template-columns:23px minmax(0,1fr) auto}.gc-kpi-grid{grid-template-columns:1fr 1fr}.gc-kpi{min-height:96px;padding:11px 12px}.gc-kpi-value{font-size:1.55rem}}


/* GC v4.5.89 - lista de progreso estable, scroll accesible y acciones compactas */
#gcProcessStatus .gc-doc-progress-list{
  max-height:clamp(260px,55vh,600px);
  overflow-y:auto;
  overflow-x:hidden;
  scrollbar-gutter:stable;
  scrollbar-width:auto;
  scrollbar-color:#94a3b8 #edf2f7;
  -webkit-overflow-scrolling:touch;
  touch-action:pan-y;
}
#gcProcessStatus .gc-doc-progress-list::-webkit-scrollbar{width:11px}
#gcProcessStatus .gc-doc-progress-list::-webkit-scrollbar-track{background:#edf2f7;border-radius:20px}
#gcProcessStatus .gc-doc-progress-list::-webkit-scrollbar-thumb{background:#94a3b8;border:2px solid #edf2f7;border-radius:20px}
#gcProcessStatus .gc-doc-progress-list:focus-visible{outline:2px solid #2563eb;outline-offset:2px}
#gcProcessStatus .gc-doc-progress-row[hidden],#gcProcessStatus [hidden]{display:none!important}
#gcProcessStatus .gc-progress-toolbar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:10px}
#gcProcessStatus .gc-progress-toolbar small{font-size:11px;color:#64748b;margin-left:auto}
#gcProcessStatus .gc-progress-toolbtn{padding:6px 10px;min-height:32px;cursor:pointer;font-size:11px;font-weight:750;color:#1d4ed8;background:white;border:1px solid #bfdbfe;border-radius:8px}
#gcProcessStatus .gc-progress-toolbtn:hover:not(:disabled){background:#eff6ff;border-color:#93c5fd}
#gcProcessStatus .gc-progress-toolbtn:focus-visible{outline:2px solid #2563eb;outline-offset:2px}
#gcProcessStatus .gc-progress-toolbtn:disabled{cursor:default;color:#94a3b8;border-color:#e2e8f0}
@media(max-width:800px){#gcProcessStatus .gc-doc-progress-list{max-height:min(48vh,460px)}#gcProcessStatus .gc-progress-toolbar small{margin-left:0;width:100%}}

/* GC v4.5.90 · segundo plano: estado discreto y contrastado. */
.gc-progress-background{font-size:11px;color:#4a617b;line-height:1.45;margin:5px 0 8px;padding-left:2px;}

/* GC 4.5.92 - acordeones y búsqueda documental */
#panel-gc-analyzer .gc-upload-flow{align-items:start;}
#panel-gc-analyzer .gc-gc-accordion{min-width:0;max-width:100%;border:1px solid #dde7f0;border-radius:13px;background:#fff;overflow:hidden;}
#panel-gc-analyzer .gc-gc-accordion>summary{display:list-item;cursor:pointer;list-style-position:inside;padding:13px 16px;color:#1d2939;font-weight:800;background:#f7fafc;border-bottom:1px solid transparent;}
#panel-gc-analyzer .gc-gc-accordion[open]>summary{border-bottom-color:#e4e7ec;}
#panel-gc-analyzer .gc-gc-accordion>*:not(summary){margin-left:12px;margin-right:12px;}
#panel-gc-analyzer .gc-gc-accordion.gc-upload-step{padding:0 0 12px;}
#panel-gc-analyzer .gc-progress-accordion{margin-top:12px;padding-bottom:4px;}
#panel-gc-analyzer .gc-gc-accordion summary:focus-visible{outline:2px solid #39a900;outline-offset:-3px;}
.gc-viewer-search-tools,.gc-viewer-pdf-tools{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:10px 12px;border:1px solid #d8e3ed;border-radius:10px;background:#fff;margin-bottom:8px;}
.gc-viewer-search-tools label,.gc-viewer-pdf-tools label{font-size:.8rem;font-weight:750;color:#334155;}
.gc-viewer-search-tools input{flex:1 1 210px;min-width:135px;max-width:420px;border:1px solid #cbd5e1;border-radius:8px;padding:8px 9px;}
.gc-viewer-pdf-tools input{width:72px;border:1px solid #cbd5e1;border-radius:8px;padding:7px;}
.gc-viewer-search-tools [role=status]{font-size:.79rem;color:#475569;}
.gc-viewer-search-hit{padding:1px 3px;background:#ffdb83;border:2px solid #db8500;border-radius:3px;}
.gc-pdf-evidence-canvas{overflow:auto;max-height:none;}
@media(max-width:760px){#panel-gc-analyzer .gc-upload-flow{grid-template-columns:minmax(0,1fr)}.gc-viewer-search-tools input{width:100%;max-width:none;}}

#panel-gc-analyzer .gc-gc-accordion.gc-upload-step::before{display:none!important;}
.gc-image-stage{position:relative;display:inline-block;line-height:0;max-width:100%;}
.gc-image-stage img{display:block;width:auto;max-width:100%;height:auto;}
#gcImageHighlightLayer{position:absolute;inset:0;pointer-events:none;}
.gc-image-search-box{position:absolute;border:2px solid #e14b28;background:rgba(252,199,42,.22);box-sizing:border-box;border-radius:3px;}

/* GC v4.5.93 · vista previa (ojo), descarga del archivo original y esquinas discretas. */
#panel-gc-analyzer .gc-file-actions{display:inline-flex;align-items:center;gap:5px;flex-wrap:nowrap;vertical-align:middle;max-width:100%;}
#panel-gc-analyzer .gc-file-icon{box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;gap:6px;min-width:32px;min-height:32px;padding:6px;line-height:1.2;border:1px solid #cbd5e1;background:#fff;color:#334155;border-radius:4px;text-decoration:none;cursor:pointer;font:inherit;font-size:11px;font-weight:750;white-space:nowrap;}
#panel-gc-analyzer .gc-file-icon svg{width:17px;height:17px;display:block;flex:0 0 17px;}
#panel-gc-analyzer .gc-file-download{color:#166534;border-color:#bbdcc2;background:#f9fdf9;}
#panel-gc-analyzer .gc-file-icon:hover{background:#eff6ff;border-color:#93c5fd;color:#1d4ed8;}
#panel-gc-analyzer .gc-file-download:hover{background:#f0fdf4;color:#166534;border-color:#86cfa1;}
#panel-gc-analyzer .gc-file-icon:focus-visible{outline:2px solid #2563eb;outline-offset:2px;}
#panel-gc-analyzer .gc-file-label{display:inline-block;overflow:hidden;text-overflow:ellipsis;max-width:220px;}
#panel-gc-analyzer .gc-download-labeled{padding-left:10px;padding-right:10px;}
#panel-gc-analyzer .gc-finding-actions .gc-file-actions{margin:2px 3px 2px 0;}
#panel-gc-analyzer .gc-viewer-head-actions .gc-file-icon{min-height:34px;}
/* No modificar elementos de otras pantallas: solo tarjetas, etiquetas y controles GC. */
#panel-gc-analyzer :is(.gc-chip,.gc-type-pill,.gc-severity,.gc-check,.gc-doc-state,.gc-read-tag,.gc-confidence,.gc-tabs button,.gc-tab-count,.gc-context-chip,.gc-compare-item,.gc-calendar-session,.gc-calendar-day,.gc-calendar-day-number,.gc-finding-group-count,.gc-score-tag,.gc-progress-toolbtn,.gc-time-chip,.gc-progress-stage,.gc-gc-accordion,.gc-file-actions .gc-file-icon){border-radius:3px!important;}
#panel-gc-analyzer :is(.gc-kpi,.gc-finding-card,.gc-finding-detail,.gc-calendar-wrapper,.gc-calendar-empty,.gc-finding-group,.gc-finding-group-head,.gc-card-gap,.gc-inventory-item,.gc-progress-panel,.gc-doc-progress-row,.gc-score-overall,.gc-score-row,.gc-preview-note,.gc-viewer,.gc-sheet-preview,.gc-drawer,.gc-callout,.gc-guide-subgroup,.gc-guide-subgroup-head,.gc-viewer-search-tools,.gc-viewer-pdf-tools){border-radius:5px!important;}
#panel-gc-analyzer .gc-viewer-search-tools :is(input,button),#panel-gc-analyzer .gc-viewer-pdf-tools :is(input,button),#panel-gc-analyzer .gc-drawer-close,#panel-gc-analyzer .gc-findings-toolbar .btn{border-radius:4px!important;}
@media(max-width:680px){#panel-gc-analyzer .gc-file-label{max-width:140px;}#panel-gc-analyzer .gc-file-icon{min-width:34px;min-height:34px;}}

/* GC v4.5.94: una ficha por fila y pareja de acciones inseparable. */
#panel-gc-analyzer .gc-delivery-grid{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:12px!important;width:100%;}
#panel-gc-analyzer .gc-delivery-grid>.gc-delivery-card{grid-column:1/-1!important;width:100%;min-width:0;max-width:none;box-sizing:border-box;}
#panel-gc-analyzer .gc-delivery-grid>.gc-formation-group-heading{grid-column:1/-1!important;}
#panel-gc-analyzer .gc-finding-actions{align-items:flex-start;}
#panel-gc-analyzer .gc-file-actions{display:inline-flex!important;align-items:center;gap:4px;flex-wrap:nowrap!important;white-space:nowrap;min-width:0;max-width:100%;vertical-align:middle;}
#panel-gc-analyzer .gc-file-actions>.gc-file-icon{flex:0 0 auto;}
#panel-gc-analyzer .gc-file-actions>.gc-file-preview{flex:0 1 auto;min-width:0;max-width:min(400px,76vw);}
#panel-gc-analyzer .gc-file-actions .gc-file-label{min-width:0;display:block;max-width:340px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:left;}
#panel-gc-analyzer .gc-file-actions>.gc-file-download{display:inline-flex!important;align-items:center;justify-content:center;margin:0!important;order:1;}
#panel-gc-analyzer .gc-file-actions>.gc-file-preview{order:0;}
#panel-gc-analyzer .gc-period-info{border:0;background:transparent;color:#2459a5;padding:4px 5px;font-size:11px;cursor:pointer;font-weight:750;text-decoration:underline;text-underline-offset:2px;}
#panel-gc-analyzer .gc-period-info:focus-visible{outline:2px solid #2459a5;outline-offset:2px;}
@media(max-width:700px){#panel-gc-analyzer .gc-file-actions .gc-file-label{max-width:175px;}}

/* GC 4.5.95: vista de Juicios compacta y novedades plegables */
#panel-gc-analyzer .gc-file-actions>.gc-preview-icon-only{width:34px;min-width:34px;max-width:34px;padding:6px;flex:0 0 34px;justify-content:center;}
#panel-gc-analyzer .gc-finding-group>summary.gc-finding-group-head{cursor:pointer;list-style:none;outline-offset:-3px;user-select:none;}
#panel-gc-analyzer .gc-finding-group>summary.gc-finding-group-head::-webkit-details-marker{display:none;}
#panel-gc-analyzer .gc-finding-group>summary.gc-finding-group-head::after{content:"";flex:none;width:8px;height:8px;border:solid #475569;border-width:0 2px 2px 0;transform:rotate(45deg);transition:transform .15s;margin-left:8px;}
#panel-gc-analyzer .gc-finding-group[open]>summary.gc-finding-group-head::after{transform:rotate(225deg);}
#panel-gc-analyzer .gc-finding-group:not([open])>summary.gc-finding-group-head{border-bottom:0;}
#panel-gc-analyzer .gc-finding-group>summary.gc-finding-group-head:focus-visible{outline:2px solid #2563eb;}
#panel-gc-analyzer details.gc-finding-card{position:relative;padding:0;min-width:0;overflow:hidden;}
#panel-gc-analyzer details.gc-finding-card>summary.gc-finding-summary{display:flex;align-items:center;cursor:pointer;list-style:none;min-height:54px;box-sizing:border-box;padding:13px 190px 13px 13px;position:relative;gap:9px;}
#panel-gc-analyzer details.gc-finding-card>summary.gc-finding-summary::-webkit-details-marker{display:none;}
#panel-gc-analyzer details.gc-finding-card>summary.gc-finding-summary::after{content:"";position:absolute;right:14px;top:calc(50% - 6px);width:8px;height:8px;border:solid #64748b;border-width:0 2px 2px 0;transform:rotate(45deg);transition:transform .15s;}
#panel-gc-analyzer details.gc-finding-card[open]>summary.gc-finding-summary::after{transform:rotate(225deg);top:calc(50% - 2px);}
#panel-gc-analyzer details.gc-finding-card[open]>summary.gc-finding-summary{border-bottom:1px solid #e7ecf2;}
#panel-gc-analyzer details.gc-finding-card>summary.gc-finding-summary:focus-visible{outline:2px solid #2563eb;outline-offset:-3px;}
#panel-gc-analyzer .gc-finding-summary .gc-finding-title{display:flex;min-width:0;gap:8px;align-items:center;flex-wrap:wrap;font-size:12.5px;line-height:1.4;}
#panel-gc-analyzer .gc-finding-report-toggle{position:absolute;right:43px;top:13px;min-height:29px;z-index:2;margin:0;cursor:pointer;}
#panel-gc-analyzer .gc-finding-report-toggle input{accent-color:#39a900;cursor:pointer;}
#panel-gc-analyzer .gc-finding-expanded{padding:13px;min-width:0;}
#panel-gc-analyzer .gc-finding-expanded .gc-finding-detail-grid{margin-top:12px;}
@media(max-width:620px){#panel-gc-analyzer details.gc-finding-card>summary.gc-finding-summary{padding-right:135px;min-height:70px;}#panel-gc-analyzer .gc-finding-report-toggle{right:35px;font-size:10px;}#panel-gc-analyzer .gc-finding-group>summary.gc-finding-group-head{gap:7px;padding:10px 8px;}#panel-gc-analyzer .gc-finding-group-head h3{font-size:14px;}}

#panel-gc-analyzer .gc-finding-group-head>.gc-finding-group-text{min-width:0;flex:1;display:flex;flex-direction:column;gap:3px;}
#panel-gc-analyzer .gc-finding-group-text .gc-finding-group-title{font-size:16px;line-height:1.3;color:#1f2937;font-weight:850;}
#panel-gc-analyzer .gc-finding-group-text small{display:block;color:#667085;line-height:1.4;}
@media(max-width:620px){#panel-gc-analyzer .gc-finding-group-text .gc-finding-group-title{font-size:14px;}}

/* UX/UI ajustes compactos GC v4.5.96 */
#panel-gc-analyzer .gc-executive-strip{display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:space-between;background:#f8fafc;border:1px solid #e5e7eb;border-radius:12px;padding:12px 14px;margin:12px 0}
#panel-gc-analyzer .gc-executive-kpis{display:grid;grid-template-columns:repeat(4,minmax(120px,1fr));gap:10px;flex:1 1 520px}
#panel-gc-analyzer .gc-mini-kpi{background:#fff;border:1px solid #e5e7eb;border-radius:10px;padding:10px 12px;min-width:0}
#panel-gc-analyzer .gc-mini-kpi small{display:block;font-size:11px;color:#667085;font-weight:700;margin-bottom:4px}
#panel-gc-analyzer .gc-mini-kpi strong{font-size:22px;line-height:1.1;color:#17212b}
#panel-gc-analyzer .gc-mini-kpi-amber{border-color:#f5d9a5;background:#fffaf2}
#panel-gc-analyzer .gc-mini-kpi-cyan{border-color:#b7e3ee;background:#f4fbfd}
#panel-gc-analyzer .gc-mini-kpi-green{border-color:#cfe8bd;background:#f5fbef}
#panel-gc-analyzer .gc-executive-message{margin:0;flex:1 1 280px;color:#344054;font-size:13px;font-weight:600}
#panel-gc-analyzer .gc-quick-nav{position:sticky;top:10px;z-index:4;display:flex;gap:8px;flex-wrap:wrap;background:rgba(255,255,255,.96);backdrop-filter:blur(6px);border:1px solid #e5e7eb;border-radius:12px;padding:8px 10px;margin:12px 0}
#panel-gc-analyzer .gc-quick-nav-btn{border:1px solid #d0d5dd;background:#fff;color:#1d2939;border-radius:999px;padding:7px 12px;font-size:12px;font-weight:700;cursor:pointer}
#panel-gc-analyzer .gc-quick-nav-btn:hover{background:#f8fafc;border-color:#b9c2cf}
#panel-gc-analyzer .gc-docs-table-compact td,#panel-gc-analyzer .gc-docs-table-compact th{vertical-align:top}
#panel-gc-analyzer .gc-doc-actions-compact .gc-file-actions{justify-content:flex-start}
#panel-gc-analyzer .gc-doc-actions-compact .gc-file-actions .gc-file-download,#panel-gc-analyzer .gc-doc-actions-compact .gc-file-actions .gc-file-preview{height:34px}
#panel-gc-analyzer .gc-calendar-session-btn{width:100%;text-align:left;border:none;cursor:pointer;box-shadow:none;border-radius:10px;padding:8px 9px;display:flex;flex-direction:column;gap:3px;align-items:flex-start}
#panel-gc-analyzer .gc-calendar-session-btn b{display:block;width:100%}
#panel-gc-analyzer .gc-calendar-session-btn .gc-calendar-session-time{font-weight:700}
#panel-gc-analyzer .gc-calendar-session-btn .gc-calendar-session-comp{display:block;width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;opacity:.95}
#panel-gc-analyzer .gc-calendar-session-btn:hover{filter:brightness(.98);transform:translateY(-1px)}
#panel-gc-analyzer .gc-finding-summary-line{display:flex;align-items:center;gap:8px;flex-wrap:wrap;min-width:0}
#panel-gc-analyzer .gc-finding-summary-line strong{min-width:0;flex:1 1 260px}
#panel-gc-analyzer .gc-finding-summary-ficha{display:inline-flex;align-items:center;padding:4px 8px;border-radius:999px;background:#eef2f6;color:#475467;font-weight:700}
#panel-gc-analyzer .gc-compare-quick-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:10px 0 14px}
#panel-gc-analyzer .gc-compare-quick-card{border:1px solid #e5e7eb;border-radius:12px;background:#fcfcfd;padding:12px;display:flex;flex-direction:column;gap:8px;min-width:0}
#panel-gc-analyzer .gc-compare-quick-top{display:flex;justify-content:space-between;gap:8px;align-items:center}
#panel-gc-analyzer .gc-compare-quick-top small{font-size:11px;color:#667085;font-weight:700;text-transform:uppercase}
#panel-gc-analyzer .gc-compare-quick-name{font-weight:700;color:#17212b;line-height:1.35;overflow-wrap:anywhere}
#panel-gc-analyzer .gc-compare-quick-value small{display:block;font-size:11px;color:#667085;margin-bottom:4px}
#panel-gc-analyzer .gc-compare-quick-value span{display:block;font-size:12.5px;color:#344054;line-height:1.45;overflow-wrap:anywhere}
#panel-gc-analyzer .gc-compare-quick-actions .gc-file-actions{justify-content:flex-start}
#panel-gc-analyzer .gc-result-banner,#panel-gc-analyzer .card,#panel-gc-analyzer .gc-progress-panel,#panel-gc-analyzer .gc-finding-card,#panel-gc-analyzer .gc-finding-group,#panel-gc-analyzer .gc-guide-subgroup{border-radius:10px}
#panel-gc-analyzer .gc-progress-toolbar small{color:#667085}
#panel-gc-analyzer .gc-sticky-summary{top:58px}
@media (max-width:900px){
  #panel-gc-analyzer .gc-executive-kpis{grid-template-columns:repeat(2,minmax(120px,1fr))}
  #panel-gc-analyzer .gc-compare-quick-grid{grid-template-columns:minmax(0,1fr)}
}
@media (max-width:640px){
  #panel-gc-analyzer .gc-executive-kpis{grid-template-columns:minmax(0,1fr)}
  #panel-gc-analyzer .gc-quick-nav{top:6px}
}

/* GC v4.5.97: Periodo compacto y detalle auditable PER-009. */
#panel-gc-analyzer .gc-period-table{width:100%;table-layout:fixed;}
#panel-gc-analyzer .gc-period-table th:nth-child(1){width:18%;}
#panel-gc-analyzer .gc-period-table th:nth-child(2){width:17%;}
#panel-gc-analyzer .gc-period-table th:nth-child(3){width:39%;}
#panel-gc-analyzer .gc-period-table th:nth-child(4){width:15%;}
#panel-gc-analyzer .gc-period-table th:nth-child(5){width:11%;min-width:91px;}
#panel-gc-analyzer .gc-period-table td{vertical-align:middle;overflow-wrap:anywhere;line-height:1.48;}
#panel-gc-analyzer .gc-period-table .gc-period-serial{display:block;font-size:11px;color:#64748b;margin-top:4px;}
#panel-gc-analyzer .gc-period-table .gc-period-evidence{color:#334155;}
#panel-gc-analyzer .gc-period-table .gc-period-alert{text-align:center;}
#panel-gc-analyzer .gc-period-table .gc-period-actions{white-space:nowrap;text-align:center;}
#panel-gc-analyzer .gc-period-table .gc-period-actions .gc-file-actions{justify-content:center;max-width:none;}
#panel-gc-analyzer .gc-period-table .gc-period-actions .gc-file-icon{width:35px;min-width:35px;height:35px;padding:7px;}
#panel-gc-analyzer .gc-period-table button.gc-period-info.gc-check{border:1px solid #f1c578;text-decoration:none;font-size:11px;padding:6px 8px;cursor:pointer;white-space:normal;}
#panel-gc-analyzer .gc-judgment-audit{margin:14px 0 5px;min-width:0;border:1px solid #dce6f2;background:#fcfdff;padding:12px;border-radius:5px;}
#panel-gc-analyzer .gc-judgment-header{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;margin-bottom:10px;}
#panel-gc-analyzer .gc-judgment-header h4{font-size:14px;color:#25445d;margin:0 0 4px;font-weight:800;}
#panel-gc-analyzer .gc-judgment-header p{font-size:12px;color:#64748b;margin:0;}
#panel-gc-analyzer .gc-judgment-table{min-width:790px;width:100%;}
#panel-gc-analyzer .gc-judgment-table th{font-size:11px;white-space:normal;}
#panel-gc-analyzer .gc-judgment-table td{font-size:12px;line-height:1.4;vertical-align:top;overflow-wrap:anywhere;white-space:normal;}
#panel-gc-analyzer .gc-judgment-count{text-align:center;font-weight:800;color:#1f4e70;}
#panel-gc-analyzer .gc-judgment-sep{color:#94a3b8;}
#panel-gc-analyzer .gc-judgment-entries{margin-top:12px;}
#panel-gc-analyzer .gc-judgment-entries summary{cursor:pointer;font-size:12px;font-weight:750;color:#2459a5;padding:8px 2px;}
#panel-gc-analyzer .gc-judgment-entries[open] summary{margin-bottom:8px;}
#panel-gc-analyzer .gc-judgment-footnote{font-size:11px;color:#667085;line-height:1.45;margin:10px 2px 0;}
@media(max-width:820px){#panel-gc-analyzer .gc-period-table{min-width:650px;}#panel-gc-analyzer .gc-period-table th:nth-child(3){width:33%;}#panel-gc-analyzer .gc-period-table th:nth-child(5){width:14%;}}
