
/* =========================================================
   CAMPUS SANTA ROSA · INTERFAZ FÁCIL v8.0
   Capa global de usabilidad: menos ruido, textos claros,
   controles grandes y mejor lectura para usuarios no técnicos.
   ========================================================= */
:root{
  --easy-blue:#173b8f;--easy-blue-soft:#eef4ff;--easy-green:#5ebd23;
  --easy-ink:#182230;--easy-muted:#667085;--easy-line:#e4e9f1;
  --easy-card:#fff;--easy-bg:#f6f8fb;--easy-danger:#b42318;
}
.campus-content-pro{max-width:1480px;margin:0 auto;width:100%}
.page-head{border-radius:18px!important;padding:22px 24px!important;box-shadow:none!important;gap:18px}
.page-head h1{font-size:clamp(1.55rem,2.4vw,2.15rem);letter-spacing:-.025em;margin:.2rem 0 .35rem}
.page-head p{font-size:.98rem;line-height:1.55;max-width:780px;color:var(--easy-muted);margin:.2rem 0}
.page-head .eyebrow{color:var(--easy-blue);opacity:1}
.form-card,.table-card,.timeline-card{border-radius:18px!important;border-color:var(--easy-line)!important;box-shadow:0 4px 16px rgba(16,24,40,.035)!important}
.form-card{padding:22px!important}
.form-grid{gap:16px!important}
.form-grid label,.form-card label{font-size:.95rem;line-height:1.35;color:var(--easy-ink)}
.form-grid input,.form-grid select,.form-grid textarea,.form-card select,.form-card input,.toolbar input,.toolbar select{min-height:46px;border:1.5px solid #d6dde8!important;border-radius:12px!important;background:#fff!important}
.form-grid input:focus,.form-grid select:focus,.form-grid textarea:focus,.form-card select:focus,.form-card input:focus,.toolbar input:focus,.toolbar select:focus{outline:none;border-color:var(--easy-blue)!important;box-shadow:0 0 0 4px rgba(23,59,143,.10)}
.btn{min-height:42px;display:inline-flex;align-items:center;justify-content:center;gap:7px;border-radius:11px!important;padding:10px 15px!important}
.btn.primary{background:var(--easy-blue)!important}
.toolbar{background:#fff;border:1px solid var(--easy-line);border-radius:16px;padding:12px;margin:16px 0!important;align-items:center}
.table-card table{font-size:.94rem}
.table-card th{font-size:.72rem!important;white-space:nowrap}
.table-card td{vertical-align:middle;line-height:1.4}
.table-card td .btn{margin:2px}
.badge{font-size:.75rem!important;padding:6px 9px!important}
.empty-cell{padding:54px 24px!important;font-size:1rem}
.sr-optional{color:var(--easy-muted);font-size:.82rem;font-weight:500}

/* Acciones grandes y comprensibles */
.easy-actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px;margin:18px 0}
.easy-action{display:flex;align-items:center;gap:14px;background:#fff;border:1px solid var(--easy-line);border-radius:16px;padding:18px;min-height:100px;transition:.15s}
.easy-action:hover{border-color:#c6d2e5;transform:translateY(-1px);box-shadow:0 8px 24px rgba(16,24,40,.06)}
.easy-action .easy-icon{width:46px;height:46px;border-radius:13px;background:var(--easy-blue-soft);color:var(--easy-blue);display:grid;place-items:center;font-size:1.35rem;flex:none}
.easy-action strong,.easy-action small{display:block}.easy-action strong{font-size:1rem;margin-bottom:4px}.easy-action small{color:var(--easy-muted);line-height:1.4}
.easy-action.primary{border-color:#bed0f7;background:#f8fbff}.easy-action.primary .easy-icon{background:var(--easy-blue);color:#fff}

/* Asistente de 4 pasos */
.easy-wizard{max-width:920px;margin:18px auto 0}
.easy-progress{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:0 0 16px}
.easy-progress div{border:1px solid var(--easy-line);background:#fff;border-radius:13px;padding:11px 12px;color:#7b8492;font-size:.82rem;font-weight:800;text-align:center}
.easy-progress div.active{background:var(--easy-blue);color:#fff;border-color:var(--easy-blue)}
.easy-progress div.done{background:#eef9e8;color:#397b16;border-color:#cce8bd}
.easy-step{display:none;background:#fff;border:1px solid var(--easy-line);border-radius:20px;padding:28px}
.easy-step.active{display:block}
.easy-step .step-kicker{color:var(--easy-blue);font-weight:900;font-size:.75rem;letter-spacing:.08em;text-transform:uppercase}
.easy-step h2{font-size:1.5rem;margin:.35rem 0 .4rem}.easy-step>p{color:var(--easy-muted);margin:.2rem 0 22px;line-height:1.55}
.easy-choice-label{display:block;font-weight:800;margin-bottom:8px}
.easy-select{width:100%;min-height:54px!important;font-size:1rem!important;padding:0 14px!important}
.easy-nav{display:flex;justify-content:space-between;gap:12px;margin-top:24px;padding-top:20px;border-top:1px solid var(--easy-line)}
.easy-summary{display:grid;gap:10px;background:#f8fafc;border:1px solid var(--easy-line);border-radius:14px;padding:16px;margin:16px 0}
.easy-summary div{display:flex;justify-content:space-between;gap:20px}.easy-summary span{color:var(--easy-muted)}.easy-summary strong{text-align:right}
.easy-note{padding:13px 15px;border-radius:12px;background:#f3f7ff;border:1px solid #dbe6fb;color:#334c7b;font-size:.9rem;line-height:1.5}
.easy-success{padding:22px;border-radius:18px;background:#f0f9eb;border:1px solid #cfe8c0}

/* Listados: las acciones importantes primero */
.easy-row-actions{display:flex;flex-wrap:wrap;gap:6px}.easy-row-actions .primary{order:-1}
.easy-status-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:16px 0}.easy-status-tabs a{background:#fff;border:1px solid var(--easy-line);border-radius:999px;padding:9px 14px;font-weight:750;color:#536071}.easy-status-tabs a.active{background:var(--easy-blue);border-color:var(--easy-blue);color:#fff}

/* Configuración avanzada claramente separada */
.easy-advanced{margin-top:20px;border:1px dashed #cbd5e1;border-radius:14px;background:#fbfcfe}
.easy-advanced>summary{cursor:pointer;padding:14px 16px;font-weight:800;color:#475467}
.easy-advanced>div{padding:0 16px 16px}

/* Navegación simple */
.campus-nav-simple-details{margin-top:5px}.campus-nav-simple-details summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:10px;color:inherit;font-weight:700}.campus-nav-simple-details summary::-webkit-details-marker{display:none}.campus-nav-simple-submenu{display:grid;padding:4px 0 6px 33px}.campus-nav-simple-submenu a{padding:8px 10px!important;font-size:.86rem!important}

/* Accesibilidad / pantallas pequeñas */
@media(max-width:900px){
 .easy-progress{grid-template-columns:1fr 1fr}.easy-step{padding:22px}.easy-summary div{display:block}.easy-summary strong{text-align:left;display:block;margin-top:2px}
 .table-card{border:0!important;background:transparent!important;box-shadow:none!important}.table-card table{min-width:720px}
}
@media(max-width:600px){
 .page-head{padding:18px!important}.page-head h1{font-size:1.55rem}.easy-progress{grid-template-columns:1fr 1fr}.easy-progress div{padding:8px;font-size:.75rem}.easy-step{padding:18px}.easy-nav{flex-direction:column-reverse}.easy-nav .btn{width:100%}.easy-actions{grid-template-columns:1fr}.toolbar{display:grid!important}.toolbar .btn{width:100%}
}
@media print{.campus-sidebar-pro,.campus-topbar-pro,.page-head .btn,.toolbar,.easy-actions{display:none!important}.campus-main-pro{margin:0!important}.campus-content-pro{padding:0!important}.table-card{border:0!important}}


/* =========================================================
   RRHH - interfaz visual integrada al Campus Santa Rosa
   ========================================================= */
.stats-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:14px;
  margin:18px 0 22px;
}
.stat-card{
  display:flex;
  min-height:112px;
  flex-direction:column;
  justify-content:center;
  padding:20px;
  background:#fff;
  border:1px solid var(--easy-line,#e3e8ef);
  border-radius:18px;
  box-shadow:0 5px 18px rgba(16,24,40,.045);
  transition:.18s ease;
}
.stat-card:hover{transform:translateY(-2px);box-shadow:0 10px 26px rgba(16,24,40,.08)}
.stat-card strong{font-size:2rem;line-height:1;color:var(--easy-blue,#173b8f);margin-bottom:9px}
.stat-card span{font-size:.9rem;font-weight:700;color:var(--easy-muted,#667085)}

.quick-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
  margin-top:16px;
}
.quick-card{
  display:flex;
  min-height:126px;
  flex-direction:column;
  justify-content:center;
  padding:20px;
  border:1px solid var(--easy-line,#e3e8ef);
  border-radius:16px;
  background:#f9fbfd;
  transition:.18s ease;
}
.quick-card:hover{background:#fff;transform:translateY(-2px);box-shadow:0 8px 22px rgba(16,24,40,.07)}
.quick-card strong{display:block;font-size:1rem;color:var(--easy-ink,#172033);margin-bottom:7px}
.quick-card span{font-size:.88rem;line-height:1.45;color:var(--easy-muted,#667085)}

.table-wrap{
  width:100%;
  margin-top:18px;
  overflow:auto;
  background:#fff;
  border:1px solid var(--easy-line,#e3e8ef);
  border-radius:18px;
  box-shadow:0 4px 16px rgba(16,24,40,.035);
}
.table-wrap table{width:100%;border-collapse:collapse;min-width:760px}
.table-wrap th,.table-wrap td{padding:14px 16px;border-bottom:1px solid var(--easy-line,#e3e8ef);text-align:left;vertical-align:middle}
.table-wrap th{background:#f7f9fc;color:var(--easy-muted,#667085);font-size:.76rem;text-transform:uppercase;letter-spacing:.045em}
.table-wrap tr:last-child td{border-bottom:0}
.table-wrap tbody tr:hover td{background:#fbfcfe}
.btn.small{padding:8px 11px!important;border-radius:10px!important;font-size:.82rem!important}

body.campus-role-admin .page-head,
body.campus-role-administracion .page-head,
body.campus-role-director .page-head{margin-bottom:0}

@media(max-width:1050px){
  .stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .quick-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:620px){
  .stats-grid,.quick-grid{grid-template-columns:1fr}
  .stat-card{min-height:92px}
  .quick-card{min-height:104px}
}

/* RRHH 1.1 - Ficha integral */
.rrhh-profile-head{display:flex;align-items:center;gap:16px;background:#fff;border:1px solid var(--easy-line,#e3e8ef);border-radius:18px;padding:18px 20px;margin:18px 0 12px;box-shadow:0 5px 18px rgba(16,24,40,.045)}
.rrhh-avatar{width:54px;height:54px;border-radius:16px;display:grid;place-items:center;background:#edf4ff;color:var(--easy-blue,#173b8f);font-size:1.15rem;font-weight:900}
.rrhh-profile-main{display:flex;flex:1;flex-direction:column;gap:3px}.rrhh-profile-main strong{font-size:1.05rem}.rrhh-profile-main span{color:var(--easy-muted,#667085);font-size:.88rem}
.rrhh-status{padding:7px 11px;border-radius:999px;font-size:.78rem;font-weight:800}.rrhh-status.ok{background:#e9f8ef;color:#177245}.rrhh-status.off{background:#f1f3f5;color:#667085}
.rrhh-tabs{position:sticky;top:70px;z-index:8;display:flex;gap:7px;overflow:auto;padding:9px;background:#f7f9fc;border:1px solid var(--easy-line,#e3e8ef);border-radius:14px;margin-bottom:18px}
.rrhh-tabs a{white-space:nowrap;padding:9px 12px;border-radius:9px;font-size:.82rem;font-weight:800;color:var(--easy-ink,#172033)}.rrhh-tabs a:hover{background:#fff;color:var(--easy-blue,#173b8f)}
.rrhh-section{scroll-margin-top:145px;margin-bottom:18px}.rrhh-section-title{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:16px}.rrhh-section-title h2{margin:2px 0 0}.rrhh-section-title p{margin:4px 0 0;color:var(--easy-muted,#667085)}
.rrhh-data-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.rrhh-data-grid>div{padding:14px;border-radius:13px;background:#f8fafc;border:1px solid #edf0f4}.rrhh-data-grid small{display:block;color:#667085;margin-bottom:5px}.rrhh-data-grid strong{display:block;overflow-wrap:anywhere}
.rrhh-note,.rrhh-info{margin-top:14px;padding:14px 16px;border-radius:13px;background:#f7f9fc;border:1px solid #e6eaf0;color:#475467}
.rrhh-schedule{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.rrhh-schedule>div{display:flex;flex-direction:column;gap:4px;padding:14px;border-radius:13px;background:#f8fafc;border:1px solid #edf0f4}.rrhh-schedule span{font-weight:800;color:#173b8f}.rrhh-schedule small{color:#667085}
.empty-state{padding:24px;border:1px dashed #cbd5e1;border-radius:14px;text-align:center;background:#fbfcfe}.empty-state strong,.empty-state span{display:block}.empty-state span{margin-top:5px;color:#667085}
.rrhh-kpi-inline{display:flex;align-items:baseline;gap:8px;margin:4px 0 12px}.rrhh-kpi-inline strong{font-size:1.8rem;color:#173b8f}.rrhh-kpi-inline span{color:#667085}
.rrhh-summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.rrhh-summary-grid>div{padding:18px;border-radius:14px;background:#f8fafc;border:1px solid #edf0f4}.rrhh-summary-grid strong{display:block;font-size:1.7rem;color:#173b8f}.rrhh-summary-grid span{font-size:.85rem;color:#667085}
@media(max-width:900px){.rrhh-data-grid,.rrhh-schedule{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.rrhh-profile-head{align-items:flex-start;flex-wrap:wrap}.rrhh-status{margin-left:70px}.rrhh-data-grid,.rrhh-schedule,.rrhh-summary-grid{grid-template-columns:1fr}.rrhh-section-title{flex-direction:column}.rrhh-section-title .btn{width:100%;text-align:center}.rrhh-tabs{top:58px}}
