/* ESDE 15.10.249 — refinamiento visual, mejor contraste, jerarquía tipográfica y disposición compacta */
.esde-cert244{
  --esde-bg:#11161d;
  --esde-panel:#1a212b;
  --esde-panel-2:#202936;
  --esde-border:#324154;
  --esde-text:#f4f7fb;
  --esde-muted:#c2cfdd;
  --esde-soft:#91a3b7;
  --esde-accent:#45B8E8;
  --esde-accent-2:#FFD43D;
  --esde-red:#d65a67;
  --esde-success:#5ec7a8;
  --esde-radius:18px;
  --esde-shadow:0 14px 38px rgba(0,0,0,.18);
  color:var(--esde-text);
  font-family:'Poppins', 'Montserrat', system-ui, sans-serif;
}
.esde-cert244, .esde-cert244 *{box-sizing:border-box;}
.esde-cert244 h1,.esde-cert244 h2,.esde-cert244 h3,.esde-cert244 h4,.esde-cert244 h5,.esde-cert244 summary,.esde-cert244 .esde-cert243-open-program,.esde-cert244 .esde-cert248-expand-student{font-family:'Marvin Round','Poppins','Montserrat',sans-serif; letter-spacing:.01em;}
.esde-cert244 p,.esde-cert244 label,.esde-cert244 input,.esde-cert244 select,.esde-cert244 textarea,.esde-cert244 span,.esde-cert244 small,.esde-cert244 li,.esde-cert244 td,.esde-cert244 th{font-family:'Poppins','Montserrat',system-ui,sans-serif;}
.esde-cert244 p,.esde-cert244 li,.esde-cert244 td,.esde-cert244 th,.esde-cert244 label,.esde-cert244 input,.esde-cert244 select,.esde-cert244 textarea{font-size:14px; line-height:1.5;}
.esde-cert244 .esde-cert238-section-title h2,
.esde-cert244 .esde-cert238-hero h1,
.esde-cert244 .esde-cert237-program h3{font-size:clamp(28px,2.2vw,38px); line-height:1.08;}
.esde-cert244 .esde-cert237-program h3{font-size:clamp(24px,1.55vw,30px); margin:6px 0 0; color:#ffd43d;}
.esde-cert244 .esde-cert238-form-heading h4{font-size:clamp(20px,1.2vw,24px); margin:0 0 4px; color:#fff;}
.esde-cert244 .esde-cert238-form-heading p{color:var(--esde-muted); margin:0;}
.esde-cert244 .esde-cert237-program,
.esde-cert244 .esde-cert238-create,
.esde-cert244 .esde-cert238-history,
.esde-cert244 .esde-cert248-skills-panel,
.esde-cert244 .esde-cert248-evaluation-summary,
.esde-cert244 .esde-cert241-topic-eval-form,
.esde-cert244 .esde-cert248-edit-panel,
.esde-cert244 .esde-cert248-plan-panel{
  background:linear-gradient(180deg,rgba(255,255,255,.03),rgba(255,255,255,.015));
  border:1px solid var(--esde-border);
  border-radius:var(--esde-radius);
  box-shadow:var(--esde-shadow);
}
.esde-cert244 .esde-cert237-program{padding:14px 14px 16px; margin:0 0 18px; background:linear-gradient(180deg,#1a212b,#151b24);}
.esde-cert244 .esde-cert237-program-head{gap:18px; align-items:start;}
.esde-cert244 .esde-cert243-participant-row{
  display:grid; grid-template-columns:auto 1fr auto; gap:16px; align-items:center;
  background:linear-gradient(90deg, rgba(69,184,232,.12), rgba(255,255,255,.03));
  border:1px solid rgba(69,184,232,.36); border-radius:16px; padding:14px 16px;
}
.esde-cert244 .esde-cert243-avatar{width:64px; height:64px; border:3px solid rgba(255,255,255,.6);}
.esde-cert244 .esde-cert243-participant-copy{min-width:0;}
.esde-cert244 .esde-cert243-participant-label{display:block; color:var(--esde-accent); font-size:11px; letter-spacing:.16em; font-weight:700; margin-bottom:4px;}
.esde-cert244 .esde-cert248-expand-student{display:block; border:0; background:none; color:#fff; padding:0; text-align:left; font-size:28px; line-height:1.08; cursor:pointer;}
.esde-cert244 .esde-cert243-participant-login,.esde-cert244 .esde-cert243-participant-role{display:block; color:var(--esde-muted); font-size:14px; margin-top:4px;}
.esde-cert244 .esde-cert243-open-program,
.esde-cert244 .esde-cert238-primary,
.esde-cert244 .esde-cert238-secondary,
.esde-cert244 .esde-cert248-save-skill,
.esde-cert244 .esde-cert242-danger{
  display:inline-flex; align-items:center; justify-content:center; gap:8px; min-height:44px;
  border-radius:14px; font-size:14px; font-weight:700; padding:11px 18px; text-decoration:none; cursor:pointer;
  border:1px solid transparent;
}
.esde-cert244 .esde-cert243-open-program{background:var(--esde-accent); color:#0f2230; white-space:nowrap;}
.esde-cert244 .esde-cert238-primary,.esde-cert244 .esde-cert248-save-skill{background:var(--esde-accent); color:#0f2230;}
.esde-cert244 .esde-cert238-secondary{background:rgba(255,212,61,.14); color:#ffe37a; border-color:rgba(255,212,61,.35);}
.esde-cert244 .esde-cert242-danger{background:rgba(214,90,103,.14); color:#ffc2ca; border-color:rgba(214,90,103,.36);}
.esde-cert244 .esde-cert237-metrics{display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; margin-top:14px;}
.esde-cert244 .esde-cert237-metrics > div{background:#171d26; border:1px solid var(--esde-border); border-radius:14px; padding:14px 12px; text-align:center;}
.esde-cert244 .esde-cert237-metrics strong{display:block; font-size:34px; line-height:1; color:#fff;}
.esde-cert244 .esde-cert237-metrics span{display:block; color:var(--esde-muted); margin-top:4px; font-size:13px;}
.esde-cert244 .esde-cert237-detail{margin-top:14px; background:#131922; border:1px solid rgba(255,255,255,.08); border-radius:16px; overflow:hidden;}
.esde-cert244 .esde-cert237-detail > summary{display:flex; align-items:center; justify-content:space-between; gap:12px; padding:14px 18px; list-style:none; cursor:pointer; color:#fff; background:rgba(255,255,255,.03); border-bottom:1px solid rgba(255,255,255,.08);}
.esde-cert244 .esde-cert237-detail > summary::-webkit-details-marker{display:none;}
.esde-cert244 .esde-cert238-detail-hint{font-family:'Poppins','Montserrat',sans-serif; font-size:12px; color:var(--esde-muted);}
.esde-cert244 .esde-cert248-management-grid{display:grid; grid-template-columns:minmax(300px,.95fr) minmax(420px,1.55fr); gap:22px; align-items:start; margin-bottom:22px;}
.esde-cert244 .esde-cert248-edit-panel{border-color:rgba(255,212,61,.35); background:linear-gradient(180deg, rgba(255,212,61,.06), rgba(255,255,255,.015));}
.esde-cert244 .esde-cert248-plan-panel{border-color:rgba(69,184,232,.36); background:linear-gradient(180deg, rgba(69,184,232,.06), rgba(255,255,255,.015));}
.esde-cert244 .esde-cert238-edit-wrap,
.esde-cert244 .esde-cert248-plan-panel > *,
.esde-cert244 .esde-cert248-skills-panel,
.esde-cert244 .esde-cert241-topic-eval-form,
.esde-cert244 .esde-cert248-evaluation-summary,
.esde-cert244 .esde-cert238-history{padding:16px 18px;}
.esde-cert244 label{display:flex; flex-direction:column; gap:6px; color:#fff; font-weight:600; margin:0;}
.esde-cert244 input:not([type="checkbox"]):not([type="radio"]),
.esde-cert244 select,
.esde-cert244 textarea{
  width:100%; min-height:46px; border-radius:13px; border:1px solid #516173; background:#f7fafc; color:#101722;
  padding:11px 14px; outline:none; box-shadow:none;
}
.esde-cert244 textarea{min-height:92px; resize:vertical;}
.esde-cert244 input:focus,.esde-cert244 select:focus,.esde-cert244 textarea:focus{border-color:var(--esde-accent); box-shadow:0 0 0 3px rgba(69,184,232,.18);}
.esde-cert244 small,.esde-cert244 .esde-cert242-help,.esde-cert244 .esde-cert248-skill-instructions{color:var(--esde-muted);}
.esde-cert244 .esde-cert243-batch-form [data-activity-list]{display:grid; gap:18px;}
.esde-cert244 .esde-cert243-batch-form [data-activity-card],
.esde-cert244 .esde-cert248-plan-panel .esde-cert243-activity-card,
.esde-cert244 .esde-cert248-plan-panel .esde-cert242-activity-card{
  width:100%; max-width:none; background:#171e27; border:1px solid var(--esde-border); border-radius:16px; padding:14px;
}
.esde-cert244 .esde-cert248-plan-panel .esde-cert243-activity-card h5,
.esde-cert244 .esde-cert248-plan-panel [data-activity-card] h5{font-size:20px; color:#fff; margin:0 0 4px;}
.esde-cert244 .esde-cert248-plan-panel [data-activity-card] .esde-cert243-activity-grid,
.esde-cert244 .esde-cert248-plan-panel [data-activity-card] .esde-cert242-activity-grid,
.esde-cert244 .esde-cert248-plan-panel [data-activity-card] .esde-cert241-topic-eval-grid{display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px;}
.esde-cert244 .esde-cert248-plan-panel [data-activity-card] .esde-cert242-wide,
.esde-cert244 .esde-cert248-plan-panel [data-activity-card] [class*='wide']{grid-column:1/-1;}
.esde-cert244 .esde-cert243-topic-bank,
.esde-cert244 [data-activity-curriculum]{background:#121821; border:1px solid rgba(255,255,255,.08); border-radius:16px; padding:14px;}
.esde-cert244 .esde-cert243-topic-block{background:#1a212b; border:1px solid rgba(255,255,255,.08); border-radius:14px; overflow:hidden; margin-bottom:12px;}
.esde-cert244 .esde-cert243-topic-block > summary{display:flex; align-items:center; justify-content:space-between; gap:12px; padding:12px 14px; background:#f1f7f9; color:#143248; cursor:pointer;}
.esde-cert244 .esde-cert243-topic-block > summary *{color:inherit;}
.esde-cert244 [data-topic-label]{display:grid; grid-template-columns:auto auto 1fr; gap:10px; align-items:start; padding:10px 12px; border-top:1px solid rgba(255,255,255,.06); color:#eaf2fb; background:#171e27;}
.esde-cert244 [data-topic-label].is-selected{background:rgba(69,184,232,.12);}
.esde-cert244 [data-topic-label] small{grid-column:2 / -1; color:#b9d9e8;}
.esde-cert244 .esde-cert241-skill-form > label{max-width:420px; margin-bottom:14px;}
.esde-cert244 .esde-cert248-skill-grid{display:grid; grid-template-columns:repeat(5,minmax(210px,1fr)); gap:14px; align-items:start;}
.esde-cert244 .esde-cert248-skill-card{padding:14px; border:1px solid var(--esde-border); border-radius:16px; background:#171d26; display:flex; flex-direction:column; gap:10px; min-height:100%;}
.esde-cert244 .esde-cert248-skill-card:nth-child(1){border-top:4px solid #45B8E8;}
.esde-cert244 .esde-cert248-skill-card:nth-child(2){border-top:4px solid #FFD43D;}
.esde-cert244 .esde-cert248-skill-card:nth-child(3){border-top:4px solid #7A2434;}
.esde-cert244 .esde-cert248-skill-card:nth-child(4){border-top:4px solid #9b7cf4;}
.esde-cert244 .esde-cert248-skill-card:nth-child(5){border-top:4px solid #5ec7a8;}
.esde-cert244 .esde-cert241-skill-card-head{display:flex; justify-content:space-between; gap:10px; align-items:center; padding-bottom:8px; border-bottom:1px solid rgba(255,255,255,.08);}
.esde-cert244 .esde-cert241-skill-card-head span{font-size:19px; color:#fff;}
.esde-cert244 .esde-cert241-skill-card-head small{display:inline-block; padding:4px 8px; border-radius:999px; background:rgba(255,255,255,.08); color:var(--esde-muted);}
.esde-cert244 .esde-cert248-last-score{margin:0; color:#d6e5f3; font-size:13px;}
.esde-cert244 .esde-cert248-result-grid{display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px;}
.esde-cert244 .esde-cert248-result-grid article{padding:16px; border-radius:16px; border:1px solid rgba(255,255,255,.09); background:#171d26;}
.esde-cert244 .esde-cert248-result-grid article span{display:block; color:var(--esde-muted); margin-bottom:8px;}
.esde-cert244 .esde-cert248-result-grid article strong{display:block; color:#fff; font-size:34px; line-height:1.05; margin-bottom:6px;}
.esde-cert244 .esde-cert248-result-grid .is-topic{border-left:4px solid var(--esde-accent);}
.esde-cert244 .esde-cert248-result-grid .is-skill{border-left:4px solid var(--esde-accent-2);}
.esde-cert244 .esde-cert248-result-grid .is-overall{border-left:4px solid #7A2434;}
.esde-cert244 .esde-cert242-activity-list{display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; align-items:start;}
.esde-cert244 .esde-cert242-activity-card{background:#171e27; border:1px solid var(--esde-border); border-radius:16px; padding:14px; min-width:0;}
.esde-cert244 .esde-cert242-activity-card-head{display:flex; flex-direction:column; gap:10px; align-items:flex-start;}
.esde-cert244 .esde-cert242-activity-card h5{margin:0; font-size:24px; color:#fff;}
.esde-cert244 .esde-cert242-state{display:inline-block; padding:5px 10px; border-radius:999px; font-size:12px; font-weight:700;}
.esde-cert244 .esde-cert242-state-confirmed{background:rgba(94,199,168,.14); color:#a7f0da;}
.esde-cert244 .esde-cert242-state-planned{background:rgba(69,184,232,.14); color:#aee4f9;}
.esde-cert244 .esde-cert242-state-cancelled{background:rgba(214,90,103,.14); color:#ffc2ca;}
.esde-cert244 .esde-cert242-topic-pill{display:inline-flex; align-items:center; gap:6px; padding:6px 10px; border-radius:999px; background:#202936; color:#d8e5f2; font-size:12px;}
.esde-cert244 .esde-cert242-activity-summary{color:#e8eef6; margin:10px 0 12px;}
.esde-cert244 .esde-cert242-session-topics{display:flex; flex-wrap:wrap; gap:8px; margin-bottom:12px;}
.esde-cert244 .esde-cert242-session-topics span{display:inline-flex; align-items:flex-start; padding:8px 10px; border-radius:12px; background:#202936; color:#f0f5fa; border:1px solid rgba(255,255,255,.08); font-size:12px; line-height:1.4;}
.esde-cert244 .esde-cert242-card-actions{background:#121821; border:1px solid rgba(255,255,255,.08); border-radius:12px; margin-top:10px; overflow:hidden;}
.esde-cert244 .esde-cert242-card-actions > summary{padding:10px 12px; cursor:pointer; color:var(--esde-accent); font-size:14px; list-style:none;}
.esde-cert244 .esde-cert242-card-actions > summary::-webkit-details-marker{display:none;}
.esde-cert244 .esde-cert242-card-actions form{padding:0 12px 12px;}
.esde-cert244 .esde-cert242-card-actions.is-danger > summary{color:#ffc2ca;}
.esde-cert244 .esde-cert247-topic-conflict{margin:14px 0; padding:12px 14px; border-radius:14px; background:rgba(214,90,103,.14); border:1px solid rgba(214,90,103,.28); color:#ffd9de;}
.esde-cert244 .esde-cert248-profile-results{background:#171e27; border:1px solid var(--esde-border); border-radius:18px; padding:18px;}
.esde-cert244 .esde-cert238-programs{display:flex; flex-direction:column; gap:18px;}
.esde-cert244 .esde-cert237-empty{color:var(--esde-muted);}
.esde-cert244 .esde-cert238-create summary{padding:16px 18px; cursor:pointer; list-style:none;}
.esde-cert244 .esde-cert238-create summary::-webkit-details-marker{display:none;}
.esde-cert244 .esde-cert238-step{display:inline-flex; align-items:center; justify-content:center; width:34px; height:34px; border-radius:10px; background:#ecf6fb; color:#0e4f73; font-weight:700; flex:0 0 34px;}
.esde-cert244 .esde-cert238-history .esde-cert238-form-heading,
.esde-cert244 .esde-cert248-evaluation-summary .esde-cert238-form-heading,
.esde-cert244 .esde-cert241-topic-eval-form .esde-cert238-form-heading,
.esde-cert244 .esde-cert248-skills-panel .esde-cert238-form-heading,
.esde-cert244 .esde-cert248-edit-panel .esde-cert238-form-heading,
.esde-cert244 .esde-cert248-plan-panel .esde-cert238-form-heading{display:flex; gap:12px; align-items:flex-start; margin-bottom:16px;}
.esde-cert244 .esde-cert243-curriculum-progress,
.esde-cert244 .esde-cert243-route-panel{padding:16px; border-radius:16px; background:#171d26; border:1px solid rgba(255,255,255,.08);}
.esde-cert244 .esde-cert243-route-grid{display:grid; grid-template-columns:repeat(auto-fit,minmax(220px,1fr)); gap:14px;}
.esde-cert244 .esde-cert243-route-step{min-height:unset;}
.esde-cert244 .esde-cert243-route-step h5{font-size:18px;}
.esde-cert244 .esde-cert238-issued{display:flex; flex-wrap:wrap; gap:16px; align-items:center; justify-content:space-between; padding:14px 16px; background:#111822; border:1px solid var(--esde-border); border-radius:16px;}
.esde-cert244 .esde-cert238-issued a{color:#8edaf8; text-decoration:none; font-weight:600;}

@media (max-width: 1280px){
  .esde-cert244 .esde-cert248-management-grid{grid-template-columns:1fr;}
  .esde-cert244 .esde-cert248-skill-grid{grid-template-columns:repeat(3,minmax(0,1fr));}
  .esde-cert244 .esde-cert242-activity-list{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media (max-width: 980px){
  .esde-cert244 .esde-cert243-participant-row{grid-template-columns:auto 1fr;}
  .esde-cert244 .esde-cert243-open-program{grid-column:1/-1; width:100%;}
  .esde-cert244 .esde-cert237-metrics,
  .esde-cert244 .esde-cert248-result-grid{grid-template-columns:1fr;}
  .esde-cert244 .esde-cert248-skill-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
  .esde-cert244 .esde-cert242-activity-list{grid-template-columns:1fr;}
  .esde-cert244 .esde-cert248-plan-panel [data-activity-card] .esde-cert243-activity-grid,
  .esde-cert244 .esde-cert248-plan-panel [data-activity-card] .esde-cert242-activity-grid,
  .esde-cert244 .esde-cert241-topic-eval-grid{grid-template-columns:1fr;}
}
@media (max-width: 640px){
  .esde-cert244 .esde-cert248-expand-student{font-size:22px;}
  .esde-cert244 .esde-cert237-program h3{font-size:22px;}
  .esde-cert244 .esde-cert248-skill-grid{grid-template-columns:1fr;}
  .esde-cert244 .esde-cert238-edit-wrap,
  .esde-cert244 .esde-cert248-plan-panel > *,
  .esde-cert244 .esde-cert248-skills-panel,
  .esde-cert244 .esde-cert241-topic-eval-form,
  .esde-cert244 .esde-cert248-evaluation-summary,
  .esde-cert244 .esde-cert238-history{padding:14px;}
}
