/* ESDE 15.10.252 — tarjetas de actividad, promedio por categorías y diálogos AJAX. */
.esde-cert244[data-esde-theme] .esde-cert252-activity-card{--esde252-card-bg:#155e63;--esde252-card-fg:#fff;--esde252-card-border:#45b8e8;background:var(--esde252-card-bg)!important;color:var(--esde252-card-fg)!important;border:1px solid var(--esde252-card-border)!important;border-radius:12px!important;overflow:hidden;box-shadow:0 4px 14px rgba(0,0,0,.12)}
.esde-cert244[data-esde-theme] .esde-cert252-activity-card:nth-child(6n + 2){--esde252-card-bg:#4b5563;--esde252-card-fg:#fff;--esde252-card-border:#8993a2}
.esde-cert244[data-esde-theme] .esde-cert252-activity-card:nth-child(6n + 3){--esde252-card-bg:#f2cc3d;--esde252-card-fg:#172333;--esde252-card-border:#d7a91b}
.esde-cert244[data-esde-theme] .esde-cert252-activity-card:nth-child(6n + 4){--esde252-card-bg:#8baa2d;--esde252-card-fg:#172333;--esde252-card-border:#a7c84e}
.esde-cert244[data-esde-theme] .esde-cert252-activity-card:nth-child(6n + 5){--esde252-card-bg:#672b3d;--esde252-card-fg:#fff;--esde252-card-border:#9b5268}
.esde-cert244[data-esde-theme] .esde-cert252-activity-card:nth-child(6n + 6){--esde252-card-bg:#9b795b;--esde252-card-fg:#fff;--esde252-card-border:#c2a486}
.esde-cert244[data-esde-theme] .esde-cert252-activity-card :is(h5,p,span,strong,small,label,summary){color:var(--esde252-card-fg)!important}
.esde-cert244[data-esde-theme] .esde-cert252-activity-card .esde-cert242-state,.esde-cert244[data-esde-theme] .esde-cert252-activity-card .esde-cert242-topic-pill{background:rgba(0,0,0,.17)!important;border:1px solid rgba(255,255,255,.25)!important;color:var(--esde252-card-fg)!important}
.esde-cert244[data-esde-theme] .esde-cert252-activity-assessment{margin:12px;padding:13px;background:rgba(0,0,0,.13);border:1px solid rgba(255,255,255,.27);border-radius:10px;color:var(--esde252-card-fg)}
.esde-cert244 .esde-cert252-progress-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:14px;font-weight:700;margin-bottom:7px}
.esde-cert244 .esde-cert252-progress-track{height:9px;border-radius:99px;background:rgba(0,0,0,.25);overflow:hidden}
.esde-cert244 .esde-cert252-progress-track span{display:block;height:100%;border-radius:99px;background:#45b8e8;transition:width .2s ease}
.esde-cert244 .esde-cert252-progress-note{font-size:12px;opacity:.94;margin:7px 0 12px}
.esde-cert244 .esde-cert252-activity-grade{display:grid;grid-template-columns:minmax(110px,.65fr) minmax(180px,1.35fr);gap:10px;align-items:start}
.esde-cert244 .esde-cert252-activity-grade label{display:grid;gap:5px;font-size:12px;font-weight:700}
.esde-cert244 .esde-cert252-activity-grade input,.esde-cert244 .esde-cert252-activity-grade textarea{width:100%;min-width:0;border:1px solid #cbd5e1;border-radius:8px;background:#fff;color:#182536;padding:9px 10px;font:500 14px Poppins,Arial,sans-serif;box-sizing:border-box}
.esde-cert244 .esde-cert252-progress-override{grid-column:1/-1;border-top:1px solid rgba(255,255,255,.2);padding-top:8px;font-size:12px}
.esde-cert244 .esde-cert252-progress-override summary{cursor:pointer;font-weight:700;padding:5px 0}
.esde-cert244 .esde-cert252-progress-override label{max-width:240px;margin-top:8px}
.esde-cert244 .esde-cert252-progress-override small{display:block;margin-top:7px;font-size:11px;opacity:.9}
.esde-cert244 .esde-cert252-save-grade{grid-column:1/-1;justify-self:start;border:0;border-radius:8px;padding:10px 15px;background:#45b8e8;color:#08233a!important;font-size:13px;font-weight:800;cursor:pointer}
.esde-cert244 .esde-cert252-score-current{display:inline-flex;margin:7px 12px;padding:5px 8px;background:rgba(0,0,0,.22);border-radius:6px;font-size:12px;color:inherit}
.esde-cert244 .esde-cert252-ajax-status{grid-column:1/-1;margin:4px 0 0;font-size:12px;min-height:1.2em;color:inherit!important}
.esde-cert244 .esde-cert252-ajax-status[data-state="success"]{font-weight:700}
.esde-cert244 .esde-cert252-ajax-status[data-state="error"]{color:#ffccd1!important}
.esde-cert244 .esde-cert252-ajax-status[data-state="saving"]{opacity:.82}
.esde-cert244 .esde-cert252-retry{justify-self:start;border:1px solid currentColor;border-radius:7px;background:transparent;color:inherit;padding:7px 10px;cursor:pointer}
.esde-cert244 .esde-cert252-result-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important}
.esde-cert244 .esde-cert252-result-grid article.is-activity{border-top:4px solid #45b8e8}
.esde-cert244 .esde-cert252-result-grid article.is-overall{border-top:4px solid #ffd43d}
.esde-cert252-profile-summary{grid-template-columns:repeat(4,minmax(0,1fr))!important}
.esde-cert252-profile-summary>div.is-activity{border-top:4px solid #45b8e8}
.esde-cert252-profile-summary>div.is-overall{border-top:4px solid #ffd43d}
.esde-cert252-confirm-overlay{position:fixed;z-index:1000000;inset:0;background:rgba(5,13,22,.78);backdrop-filter:blur(5px);display:flex;align-items:center;justify-content:center;padding:18px;overflow:auto}
.esde-cert252-confirm-dialog{width:min(720px,100%);max-height:min(88vh,900px);overflow:auto;background:#fff;color:#1a2b3d;border:2px solid #45b8e8;border-radius:16px;padding:clamp(18px,3vw,30px);box-shadow:0 24px 80px rgba(0,0,0,.35)}
.esde-cert252-confirm-dialog h3{font:800 clamp(22px,3vw,30px) Marvin,Poppins,sans-serif;color:#173b59;margin:7px 0 8px}
.esde-cert252-confirm-dialog p{line-height:1.5}
.esde-cert252-eyebrow{font:800 11px Montserrat,Arial,sans-serif;letter-spacing:.12em;color:#087e92}
.esde-cert252-close-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:16px 0}
.esde-cert252-close-summary>div{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:11px 12px;background:#f2f6f9;border:1px solid #dce5ec;border-radius:8px}
.esde-cert252-close-summary span{font-size:12px;color:#52657a}.esde-cert252-close-summary strong{font-size:14px;color:#173b59;text-align:right}
.esde-cert252-close-warning{padding:11px 12px;background:#fff8df;border-left:4px solid #ffd43d;border-radius:6px;font-size:13px}
.esde-cert252-close-warning[data-state="error"]{background:#fff0f1;border-color:#a22b45;color:#84223a}
.esde-cert252-modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:18px}
.esde-cert252-modal-actions button{border:0;border-radius:8px;padding:12px 16px;font:700 14px Montserrat,Arial,sans-serif;cursor:pointer}
.esde-cert252-primary{background:#173b59;color:#fff}.esde-cert252-secondary{background:#e8eef3;color:#173b59}
.esde-cert252-modal-actions button:disabled{opacity:.55;cursor:wait}
.esde-cert252-issued{display:flex;flex-wrap:wrap;align-items:center;gap:14px;padding:16px;border:1px solid #45b8e8;border-radius:10px;background:#eaf8fc;color:#173b59}
.esde-cert252-issued>div{display:grid;gap:5px;flex:1 1 220px}.esde-cert252-issued a{font-weight:700;color:#12527a;text-decoration:underline}
.esde-cert244[data-esde-theme="light"] .esde-cert252-activity-assessment{background:rgba(255,255,255,.22)}
.esde-cert244[data-esde-theme="light"] .esde-cert252-activity-grade input,.esde-cert244[data-esde-theme="light"] .esde-cert252-activity-grade textarea{background:#fff;color:#182536}
@media(max-width:900px){.esde-cert244 .esde-cert252-result-grid,.esde-cert252-profile-summary{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:600px){.esde-cert244 .esde-cert252-activity-grade{grid-template-columns:1fr}.esde-cert244 .esde-cert252-progress-override,.esde-cert244 .esde-cert252-save-grade,.esde-cert244 .esde-cert252-ajax-status{grid-column:1}.esde-cert244 .esde-cert252-result-grid,.esde-cert252-profile-summary{grid-template-columns:1fr!important}.esde-cert252-close-summary{grid-template-columns:1fr}.esde-cert252-modal-actions{flex-direction:column-reverse}.esde-cert252-modal-actions button{width:100%}}
.esde-cert252-detail-title{font:800 15px Marvin,Poppins,sans-serif;color:#173b59;margin:18px 0 8px}
.esde-cert252-activity-details{display:grid;gap:7px;margin-bottom:14px}
.esde-cert252-activity-detail{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:3px 12px;padding:10px 12px;background:#f7fafc;border:1px solid #dce5ec;border-radius:8px}
.esde-cert252-activity-detail strong{font-size:13px;color:#173b59}.esde-cert252-activity-detail small{font-size:11px;color:#52657a;grid-column:1}.esde-cert252-activity-detail b{font-size:13px;color:#173b59;grid-column:2;grid-row:1/3;align-self:center}
.esde-cert244 .esde-cert252-close-readiness button[disabled]{opacity:.48;cursor:not-allowed}
