/* CSYSO Gestiona · Visual Dashboards 5.78.1 */
:root{--vd-blue:#075f9f;--vd-navy:#17324d;--vd-line:#dce6ed;--vd-muted:#667b8c;--vd-soft:#f5f9fc;--vd-ok:#16794a;--vd-warn:#9a6700;--vd-danger:#b42318;--vd-purple:#6f42c1}

/* Barra contextual por módulo */
.csyso-vd-toolbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:13px 0 16px;padding:10px 12px;background:rgba(255,255,255,.96);border:1px solid var(--vd-line);border-radius:15px;box-shadow:0 7px 22px rgba(20,55,82,.055);font-family:Arial,sans-serif;color:var(--vd-navy)}
.csyso-vd-toolbar-main{display:flex;align-items:center;gap:9px;margin-right:auto;min-width:185px}.csyso-vd-toolbar-icon{width:36px;height:36px;border-radius:10px;display:grid;place-items:center;background:#eaf4fb;color:var(--vd-blue);font-size:17px}.csyso-vd-toolbar-main b,.csyso-vd-toolbar-main small{display:block}.csyso-vd-toolbar-main b{font-size:12px}.csyso-vd-toolbar-main small{font-size:9px;color:var(--vd-muted);margin-top:2px}
.csyso-vd-jumps{display:flex;gap:5px;flex-wrap:wrap}.csyso-vd-jumps button,.csyso-vd-toolbtn{border:1px solid #d8e4eb;background:#f8fbfd;color:#31536f;border-radius:9px;padding:7px 9px;font:800 10px Arial;cursor:pointer;white-space:nowrap}.csyso-vd-jumps button:hover,.csyso-vd-toolbtn:hover{background:#eaf4fb;border-color:#a9cde3;color:var(--vd-blue)}.csyso-vd-toolbtn.on{background:var(--vd-blue);border-color:var(--vd-blue);color:#fff}.csyso-vd-tools{display:flex;gap:5px;margin-left:auto}.csyso-vd-live{display:inline-flex;align-items:center;gap:5px;border-radius:999px;background:#edf8f2;color:#166534;padding:5px 8px;font:900 9px Arial}.csyso-vd-live:before{content:'';width:6px;height:6px;border-radius:50%;background:#22a05a;box-shadow:0 0 0 3px rgba(34,160,90,.12)}

/* Navegación de sección y anclas */
.csyso-vd-anchor{scroll-margin-top:145px}.csyso-vd-collapser{margin-left:auto!important;border:1px solid #dbe6ed!important;background:#f8fbfd!important;color:#50697c!important;border-radius:8px!important;width:28px!important;height:28px!important;padding:0!important;display:inline-grid!important;place-items:center!important;cursor:pointer!important;font:900 12px Arial!important;box-shadow:none!important;transform:none!important}.csyso-vd-collapser:hover{background:#eaf4fb!important;color:var(--vd-blue)!important}.csyso-vd-collapsible>.csyso-vd-content-hidden{display:none!important}.csyso-vd-collapsed{padding-bottom:12px!important}.csyso-vd-collapsed>*:not(h3):not(.csyso-vd-head):not(.sup-section-head):not(.ctv-module-head){display:none!important}

/* KPI comunes: más lectura, tono y jerarquía */
body.csyso-visual-active :where(.g-kpi,.g-control-kpi,.cf-stat,.ctv-stat,.ctv-mini-stat,.tr-stat,.sup-stat,.med-stat){position:relative!important;overflow:hidden!important;isolation:isolate!important;box-shadow:0 7px 22px rgba(20,55,82,.055)!important;transition:.16s ease!important}
body.csyso-visual-active :where(.g-kpi,.g-control-kpi,.cf-stat,.ctv-stat,.ctv-mini-stat,.tr-stat,.sup-stat,.med-stat):before{content:'';position:absolute;left:0;top:0;bottom:0;width:4px;background:#9fc8df;z-index:-1}
body.csyso-visual-active [data-vd-tone="ok"]:before{background:#2f9e63!important}body.csyso-visual-active [data-vd-tone="warn"]:before{background:#e2a400!important}body.csyso-visual-active [data-vd-tone="danger"]:before{background:#d92d20!important}body.csyso-visual-active [data-vd-tone="purple"]:before{background:#7751c7!important}
body.csyso-visual-active :where(.g-kpi,.cf-stat,.ctv-stat,.tr-stat,.sup-stat,.med-stat):hover{transform:translateY(-2px);box-shadow:0 12px 30px rgba(20,55,82,.10)!important}
.csyso-vd-kpi-icon{position:absolute;right:10px;top:9px;width:27px;height:27px;border-radius:8px;background:#eef6fb;color:var(--vd-blue);display:grid;place-items:center;font-size:13px;opacity:.92}
[data-vd-tone="ok"] .csyso-vd-kpi-icon{background:#eaf8ef;color:#16794a}[data-vd-tone="warn"] .csyso-vd-kpi-icon{background:#fff6df;color:#8a6100}[data-vd-tone="danger"] .csyso-vd-kpi-icon{background:#fdecec;color:#b42318}[data-vd-tone="purple"] .csyso-vd-kpi-icon{background:#f2ecfb;color:#6f42c1}

/* Modo compacto, persiste por navegador */
.csyso-vd-compact :where(.cf-agenda-card,.cf-history-row,.tr-card,.ctv-row,.sup-hi-row,.med-card,.g-alert-row){padding-top:8px!important;padding-bottom:8px!important;gap:7px!important}.csyso-vd-compact :where(.cf-box,.sup-box,.med-box,.g-box,.ctv-module){margin-top:9px!important}.csyso-vd-compact :where(.cf-stat,.tr-stat,.sup-stat,.med-stat,.ctv-stat){padding:10px!important}

/* Foco de atención: preserva contenido pero eleva lo crítico */
.csyso-vd-attention-focus :where(.g-box,.cf-box,.ctv-module,.sup-box,.med-box){transition:opacity .15s,filter .15s}.csyso-vd-attention-focus :where(.g-box,.cf-box,.ctv-module,.sup-box,.med-box):not(.csyso-vd-priority){opacity:.40;filter:saturate(.55)}.csyso-vd-attention-focus .csyso-vd-priority{outline:2px solid rgba(226,164,0,.26);box-shadow:0 12px 34px rgba(130,90,0,.11)!important}

/* GERENCIA */
body.csyso-visual-active .csyso-gerencia.csyso-vd-upgraded .g-hero{padding:27px 30px!important;border-radius:22px!important}.csyso-gerencia .csyso-vd-toolbar{position:sticky;top:67px;z-index:115}.admin-bar .csyso-gerencia .csyso-vd-toolbar{top:99px}.csyso-gerencia .g-box{transition:.16s ease}.csyso-gerencia .g-box:hover{border-color:#c7dce8!important}.csyso-gerencia .g-alert-row{border-radius:11px!important;margin:5px 0!important;border:1px solid #e5edf2!important;background:#fff!important}.csyso-gerencia .g-timeline .g-event{position:relative;padding-left:18px!important}.csyso-gerencia .g-timeline .g-event:before{content:'';position:absolute;left:2px;top:9px;width:8px;height:8px;border-radius:50%;background:#0b78bd;box-shadow:0 0 0 4px #eaf4fb}.csyso-gerencia .g-table tbody tr{cursor:default}.csyso-gerencia .csyso-vd-priority{border-top-color:#e2a400!important}

/* COORDINACIÓN */
.csyso-coord-front.csyso-vd-upgraded .cf-hero{padding:27px 29px!important}.csyso-coord-front .cf-agenda-card{position:relative;overflow:hidden}.csyso-coord-front .cf-agenda-card:before{content:'';position:absolute;left:0;top:0;bottom:0;width:4px;background:#9cc9e3}.csyso-coord-front .cf-agenda-card[data-vd-status="realizada"]:before{background:#2d9a60}.csyso-coord-front .cf-agenda-card[data-vd-status="cancelada"]:before{background:#d92d20}.csyso-coord-front .cf-agenda-card[data-vd-status="borrador"],.csyso-coord-front .cf-agenda-card[data-vd-status="por coordinar"]{background:#fffaf0}.csyso-coord-front .cf-services .cf-card{position:relative}.csyso-coord-front .cf-services .cf-card:after{content:'→';position:absolute;right:16px;bottom:15px;width:28px;height:28px;border-radius:9px;background:#eef6fb;color:#075f9f;display:grid;place-items:center;font-weight:900}.csyso-coord-front .cf-attention,.csyso-coord-front [class*="attention"]{scroll-margin-top:150px}

/* TÉCNICO HI */
.csyso-tech-v2.csyso-vd-upgraded .ctv-hero{border-radius:22px!important}.csyso-tech-v2 .ctv-launch{position:relative;overflow:hidden}.csyso-tech-v2 .ctv-launch:after{content:'Abrir';position:absolute;right:11px;bottom:10px;font:900 9px Arial;color:#075f9f;background:#eef6fb;border-radius:999px;padding:4px 7px}.csyso-tech-v2 .ctv-workitem{transition:.15s}.csyso-tech-v2 .ctv-workitem:hover{transform:translateY(-2px);box-shadow:0 9px 24px rgba(20,55,82,.08)}.csyso-tech-v2 .ctv-row{transition:.12s}.csyso-tech-v2 .ctv-row:hover{background:#f7fbfd}.csyso-tech-v2 .ctv-alertbox{border-top:4px solid #e2a400!important}

/* CAPACITACIONES: flujo interactivo */
.csyso-training.csyso-vd-upgraded .tr-hero,.csyso-training-session .ts-head{box-shadow:0 13px 34px rgba(8,72,117,.15)!important}.csyso-vd-training-flow{display:flex;gap:6px;align-items:stretch;overflow:auto;margin:12px 0 15px;padding:8px;background:#fff;border:1px solid var(--vd-line);border-radius:15px;box-shadow:0 6px 20px rgba(20,55,82,.045);scrollbar-width:thin}.csyso-vd-training-stage{min-width:145px;flex:1;border:1px solid #dce6ed;background:#f8fbfd;border-radius:11px;padding:9px 10px;text-align:left;color:#31536f;cursor:pointer;position:relative}.csyso-vd-training-stage b{display:block;font:900 11px Arial}.csyso-vd-training-stage small{display:block;font:700 9px Arial;color:#718798;margin-top:3px}.csyso-vd-training-stage.active{background:#075f9f;border-color:#075f9f;color:#fff}.csyso-vd-training-stage.active small{color:#d9edf9}.csyso-training .tr-card{position:relative;overflow:hidden;padding-bottom:21px!important}.csyso-vd-progress{position:absolute;left:14px;right:14px;bottom:8px;height:4px;border-radius:99px;background:#e8eef2;overflow:hidden}.csyso-vd-progress>i{display:block;height:100%;background:linear-gradient(90deg,#0b78bd,#2d9a60);border-radius:99px}.csyso-training-session .ts-box{box-shadow:0 7px 22px rgba(20,55,82,.055)!important}.csyso-training-session .csyso-vd-toolbar{margin-top:10px}

/* SUPERVISIÓN */
.csyso-supervision.csyso-vd-upgraded .sup-attention{box-shadow:0 10px 28px rgba(130,90,0,.08)!important}.csyso-supervision .sup-alert{transition:.15s ease}.csyso-supervision .sup-alert:hover{transform:translateY(-2px);box-shadow:0 8px 20px rgba(130,90,0,.08)}.csyso-supervision .sup-report-card{transition:.14s}.csyso-supervision .sup-report-card:hover{transform:translateX(2px);box-shadow:0 7px 20px rgba(20,55,82,.06)}

/* MÉDICO */
.csyso-medico.csyso-vd-upgraded .med-card{transition:.15s ease;background:#fff!important;position:relative;overflow:hidden}.csyso-medico .med-card:hover{transform:translateY(-2px);box-shadow:0 9px 24px rgba(20,55,82,.08)}.csyso-medico .med-card[data-vd-today="1"]{border-left:5px solid #16794a!important;background:#f7fcf9!important}.csyso-medico .med-card[data-vd-pending="1"]{border-left:5px solid #d89b12!important}.csyso-medico .csyso-vd-today-chip{display:inline-flex;margin-left:6px;background:#eaf8ef;color:#16794a;border-radius:999px;padding:3px 6px;font:900 8px Arial}.csyso-medico .med-box:first-of-type{scroll-margin-top:150px}

/* PORTAL EMPRESA - también para visitantes no logueados */
.csyso-gi-portal.csyso-vd-company{--portal-blue:#075f9f;--portal-navy:#17324d;max-width:1240px!important;color:#17324d!important}.csyso-gi-portal.csyso-vd-company .gi-head{background:linear-gradient(135deg,#f9fcfe,#edf6fb)!important;border:1px solid #d3e3ed!important;border-radius:22px!important;padding:26px 28px!important;box-shadow:0 10px 30px rgba(20,55,82,.07)!important}.csyso-gi-portal.csyso-vd-company .gi-head h2{font-size:30px!important;color:#17324d!important}.csyso-gi-portal.csyso-vd-company .gi-rel{background:#eaf4fb!important;color:#075f9f!important;border:1px solid #c8e0ee}.csyso-gi-portal.csyso-vd-company .gi-value{border:0!important;background:transparent!important;padding:2px 2px 8px!important;margin-bottom:8px!important}.csyso-vd-company-overview{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin:10px 0 14px}.csyso-vd-company-kpi{border:1px solid #dce6ed;background:#fff;border-radius:14px;padding:12px 13px;box-shadow:0 5px 18px rgba(20,55,82,.045)}.csyso-vd-company-kpi b{display:block;font:900 20px Arial;color:#075f9f}.csyso-vd-company-kpi small{display:block;font:700 9px Arial;color:#667b8c;margin-top:3px}.csyso-gi-portal.csyso-vd-company .gi-tabs{position:sticky;top:8px;z-index:80;padding:8px!important;background:rgba(245,249,252,.94);backdrop-filter:blur(9px);border:1px solid #dce6ed;border-radius:15px!important;box-shadow:0 6px 20px rgba(20,55,82,.05);overflow-x:auto;flex-wrap:nowrap!important;scrollbar-width:none}.csyso-gi-portal.csyso-vd-company .gi-tabs button{display:inline-flex!important;align-items:center!important;gap:6px!important;white-space:nowrap!important;border-radius:10px!important;padding:9px 11px!important}.csyso-gi-portal.csyso-vd-company .gi-tabs button:before{content:attr(data-vd-icon);font-size:13px}.csyso-gi-portal.csyso-vd-company .gi-tabs button.active{box-shadow:0 5px 14px rgba(7,95,159,.20)}.csyso-gi-portal.csyso-vd-company .gi-panel{animation:csysoVDPanel .18s ease}.csyso-gi-portal.csyso-vd-company :where(.ce-box,.ccc-wrap,.csyso-public-map,.csyso-public-empty){border-radius:16px!important}.csyso-gi-portal.csyso-vd-company .ce-course{transition:.15s}.csyso-gi-portal.csyso-vd-company .ce-course:hover{transform:translateY(-1px);box-shadow:0 7px 20px rgba(20,55,82,.06)}@keyframes csysoVDPanel{from{opacity:.35;transform:translateY(4px)}to{opacity:1;transform:none}}

/* Aparición sutil de cards */
.csyso-vd-upgraded :where(.cf-stat,.tr-stat,.sup-stat,.med-stat,.ctv-stat,.g-kpi){animation:csysoVDIn .24s ease both}.csyso-vd-upgraded :where(.cf-stat,.tr-stat,.sup-stat,.med-stat,.ctv-stat,.g-kpi):nth-child(2){animation-delay:.03s}.csyso-vd-upgraded :where(.cf-stat,.tr-stat,.sup-stat,.med-stat,.ctv-stat,.g-kpi):nth-child(3){animation-delay:.06s}.csyso-vd-upgraded :where(.cf-stat,.tr-stat,.sup-stat,.med-stat,.ctv-stat,.g-kpi):nth-child(4){animation-delay:.09s}@keyframes csysoVDIn{from{opacity:.15;transform:translateY(5px)}to{opacity:1;transform:none}}

@media(max-width:1050px){.csyso-vd-toolbar{align-items:flex-start}.csyso-vd-jumps{order:3;flex-basis:100%;overflow:auto;flex-wrap:nowrap;padding-bottom:2px}.csyso-vd-company-overview{grid-template-columns:repeat(2,1fr)}}
@media(max-width:720px){.csyso-vd-toolbar-main small,.csyso-vd-live{display:none}.csyso-vd-toolbar{padding:8px}.csyso-vd-tools{margin-left:0}.csyso-vd-company-overview{grid-template-columns:1fr 1fr}.csyso-gi-portal.csyso-vd-company .gi-head{padding:20px!important}.csyso-gi-portal.csyso-vd-company .gi-head h2{font-size:24px!important}}
@media(max-width:460px){.csyso-vd-company-overview{grid-template-columns:1fr}.csyso-vd-toolbtn{font-size:0}.csyso-vd-toolbtn:before{font-size:13px}.csyso-vd-toolbtn[data-vd-density]:before{content:'↕'}.csyso-vd-toolbtn[data-vd-attention]:before{content:'⚠'}}
@media print{.csyso-vd-toolbar,.csyso-vd-training-flow,.csyso-vd-company-overview{display:none!important}}
