/*
 * AOTS Gestión 0.9.18 · Formación y perfil de buceador
 * Componentes propios del versionado de cursos, progreso, titulaciones
 * y previsualización segura del Área privada.
 */

/* ===== Cursos y versiones ===== */
.aots-embed .aots-course-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.aots-embed .aots-course-card{display:grid;grid-template-columns:minmax(0,1fr) auto 22px;gap:16px;align-items:center;padding:18px 20px;border:1px solid var(--angels-line);border-radius:18px;background:var(--angels-surface);color:var(--angels-text);text-decoration:none;box-shadow:0 9px 24px rgba(18,59,69,.05);transition:.18s ease}
.aots-embed .aots-course-card:hover{transform:translateY(-1px);border-color:rgba(11,145,173,.42);box-shadow:0 13px 30px rgba(18,59,69,.09)}
.aots-embed .aots-course-card.is-inactive{opacity:.62}
.aots-embed .aots-course-card h3{margin:3px 0 4px;font-size:18px;line-height:1.2}
.aots-embed .aots-course-card small{color:var(--angels-muted)}
.aots-embed .aots-course-card__versions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:7px}
.aots-embed .aots-version-chip{display:inline-flex;align-items:center;width:max-content;padding:5px 9px;border-radius:999px;background:var(--angels-cyan-soft);color:var(--angels-cyan-dark);font-size:12px;font-weight:850;white-space:nowrap}
.aots-embed .aots-version-chip.is-draft{background:var(--angels-orange-soft);color:var(--angels-warning)}
.aots-embed .aots-version-chip.is-muted{background:var(--angels-surface-soft);color:var(--angels-muted)}
.aots-embed .aots-check-line{display:inline-flex;align-items:center;gap:9px;color:var(--angels-text);font-weight:750}
.aots-embed .aots-check-line input{width:auto;margin:0}
.aots-embed .aots-course-add-exercise{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:12px;align-items:end;padding:0 0 18px;border-bottom:1px solid var(--angels-line)}
.aots-embed .aots-course-exercise-list{display:grid;gap:10px;margin-top:16px}
.aots-embed .aots-course-exercise-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:end;padding:12px;border:1px solid var(--angels-line);border-radius:15px;background:var(--angels-surface-soft)}
.aots-embed .aots-course-exercise-edit{display:grid;grid-template-columns:20px minmax(220px,1fr) 90px auto auto;gap:10px;align-items:end}
.aots-embed .aots-course-exercise-edit>.dashicons{align-self:center;color:var(--angels-muted)}
.aots-embed .aots-course-exercise-tools{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:16px}
.aots-embed .aots-course-exercise-tools .aots-course-add-exercise{margin-top:0;padding:14px;border:1px solid var(--angels-line);border-radius:16px;background:var(--angels-surface-soft)}
.aots-embed .aots-course-exercise-name{display:grid;gap:5px;align-self:center}
.aots-embed .aots-course-exercise-name>span{color:var(--angels-muted);font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.06em}
.aots-embed .aots-course-exercise-name>strong{font-size:14px}
.aots-embed .aots-catalog-panel details>summary{display:flex;align-items:center;justify-content:space-between;gap:14px;cursor:pointer;list-style:none}
.aots-embed .aots-catalog-panel details>summary::-webkit-details-marker{display:none}
.aots-embed .aots-catalog-panel details>summary span:first-child{display:grid;gap:3px}
.aots-embed .aots-catalog-panel details>summary small{color:var(--angels-muted);font-weight:600}
.aots-embed .aots-catalog-panel details[open]>summary .dashicons{transform:rotate(180deg)}
.aots-embed .aots-catalog-list{display:grid;gap:8px;margin-top:16px}
.aots-embed .aots-catalog-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;padding:10px 12px;border:1px solid var(--angels-line);border-radius:13px;background:var(--angels-surface-soft)}
.aots-embed .aots-catalog-row>div{display:grid;gap:2px}
.aots-embed .aots-catalog-row small{color:var(--angels-muted)}
.aots-embed .aots-catalog-row.is-inactive{opacity:.58}
.aots-embed .aots-catalog-help{margin:12px 0 0;color:var(--angels-muted);font-size:12px}

.aots-embed .aots-published-plan-list{display:grid;gap:7px;margin-top:14px}
.aots-embed .aots-published-plan-row{display:grid;grid-template-columns:32px minmax(0,1fr) auto;gap:10px;align-items:center;padding:10px 12px;border:1px solid var(--angels-line);border-radius:13px;background:var(--angels-surface-soft)}
.aots-embed .aots-published-plan-row>span{display:grid;place-items:center;width:28px;height:28px;border-radius:999px;background:var(--angels-cyan-soft);color:var(--angels-cyan-dark);font-size:12px;font-weight:900}
.aots-embed .aots-published-plan-row>strong{font-size:14px}
.aots-embed .aots-published-plan-row>small{color:var(--angels-muted);font-size:11px;font-weight:700}

.aots-embed .aots-sort-field input{max-width:90px}
.aots-embed .aots-danger-soft{color:var(--angels-danger)!important}
.aots-embed .aots-publish-panel{border-color:rgba(11,145,173,.28);background:linear-gradient(135deg,var(--angels-surface),rgba(223,243,245,.48))}
.aots-embed .aots-publish-actions{display:flex;flex-wrap:wrap;gap:9px;align-items:center}
.aots-embed .aots-publish-actions form{margin:0}
.aots-embed .aots-version-history{display:grid;gap:8px}
.aots-embed .aots-version-history__row{display:grid;grid-template-columns:54px 100px 120px 130px minmax(0,1fr);gap:12px;align-items:center;padding:10px 12px;border-bottom:1px solid var(--angels-line)}
.aots-embed .aots-version-history__row:last-child{border-bottom:0}
.aots-embed .aots-version-history__row small{color:var(--angels-muted)}

/* ===== Certificadoras ===== */
.aots-embed .aots-inline-form{display:grid;grid-template-columns:minmax(220px,1fr) minmax(130px,.4fr) auto;gap:12px;align-items:end;margin-bottom:18px}
.aots-embed .aots-agency-list{display:grid;gap:8px}
.aots-embed .aots-agency-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:12px;align-items:center;padding:11px 13px;border:1px solid var(--angels-line);border-radius:14px;background:var(--angels-surface-soft)}
.aots-embed .aots-agency-row.is-inactive{opacity:.56}
.aots-embed .aots-agency-row strong,.aots-embed .aots-agency-row small{display:block}
.aots-embed .aots-agency-row small{margin-top:2px;color:var(--angels-muted)}

/* ===== Formación en ficha de alumno ===== */
.aots-embed .aots-student-hero-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.aots-embed .aots-enrollment-card{grid-template-columns:minmax(0,1fr) auto;gap:14px}
.aots-embed .aots-enrollment-main{display:grid;gap:9px}
.aots-embed .aots-enrollment-title{display:flex;flex-wrap:wrap;align-items:center;gap:7px}
.aots-embed .aots-enrollment-title h3{flex-basis:100%;margin:2px 0 0}
.aots-embed .aots-mini-progress{display:flex;gap:10px;align-items:center;max-width:320px}
.aots-embed .aots-mini-progress>div{height:7px;flex:1;overflow:hidden;border-radius:999px;background:var(--angels-line)}
.aots-embed .aots-mini-progress>div>span{display:block;height:100%;border-radius:inherit;background:var(--angels-cyan)}
.aots-embed .aots-mini-progress small,.aots-embed .aots-no-progress{color:var(--angels-muted);white-space:nowrap}
.aots-embed .aots-enrollment-actions{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.aots-embed .aots-enrollment-actions form{margin:0}
.aots-embed .aots-incomplete-note,.aots-embed .aots-exercise-lock{display:inline-flex;align-items:center;padding:6px 9px;border-radius:999px;background:var(--angels-orange-soft);color:var(--angels-warning);font-size:12px;font-weight:800}
.aots-embed .aots-force-complete{width:100%;padding:8px 10px;border-radius:12px;background:var(--angels-orange-soft);color:var(--angels-warning)}
.aots-embed .aots-force-complete summary{cursor:pointer;font-weight:800}
.aots-embed .aots-force-complete form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;margin-top:8px}
.aots-embed .aots-force-complete textarea{min-height:58px}
.aots-embed .aots-plan-update{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;padding:12px 14px;border:1px solid rgba(239,178,11,.35);border-radius:14px;background:var(--angels-orange-soft)}
.aots-embed .aots-plan-update strong,.aots-embed .aots-plan-update small{display:block}
.aots-embed .aots-plan-update small{margin-top:3px;color:var(--angels-warning)}
.aots-embed .aots-plan-update form{display:flex;gap:8px;align-items:center}
.aots-embed .aots-plan-impact{display:flex;flex-wrap:wrap;gap:6px 12px;color:var(--angels-warning);font-size:12px}
.aots-embed .aots-plan-impact span{white-space:nowrap}
.aots-embed .aots-plan-impact b{color:var(--angels-text)}
.aots-embed .aots-plan-update select{min-width:120px}
.aots-embed .angels-exercise-row.is-retired{opacity:.6;background:var(--angels-surface-soft)}
.aots-embed .angels-exercise-row.is-retired .angels-exercise-check{pointer-events:none}

/* ===== Seguro y titulaciones en Gestión ===== */
.aots-embed .aots-insurance-state{display:inline-flex;align-items:center;padding:5px 9px;border-radius:999px;font-size:12px;font-weight:850;background:var(--angels-surface-soft);color:var(--angels-muted)}
.aots-embed .aots-insurance-state--valid{background:#e5f5ee;color:var(--angels-success)}
.aots-embed .aots-insurance-state--warning{background:var(--angels-orange-soft);color:var(--angels-warning)}
.aots-embed .aots-insurance-state--expired{background:#fae7e7;color:var(--angels-danger)}
.aots-embed .aots-certification-list{display:grid;gap:10px}
.aots-embed .aots-certification-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:15px;align-items:center;padding:15px;border:1px solid var(--angels-line);border-radius:16px;background:var(--angels-surface-soft)}
.aots-embed .aots-certification-card h3{margin:5px 0 3px}
.aots-embed .aots-certification-card p,.aots-embed .aots-certification-card small{margin:0;color:var(--angels-muted)}
.aots-embed .aots-certification-card__actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:7px}
.aots-embed .aots-cert-status{display:inline-flex;padding:4px 8px;border-radius:999px;background:var(--angels-orange-soft);color:var(--angels-warning);font-size:11px;font-weight:850}
.aots-embed .aots-cert-status.is-verified{background:#e5f5ee;color:var(--angels-success)}

/* ===== Vista de alumno ===== */
.aots-student-portal .aots-student-preview-banner{position:sticky;top:0;z-index:30;display:flex;justify-content:space-between;align-items:center;gap:16px;padding:11px 18px;background:#091f26;color:#fff;border-bottom:1px solid rgba(255,255,255,.14);box-shadow:0 8px 22px rgba(0,0,0,.14)}
.aots-student-portal .aots-student-preview-banner>div{display:grid;grid-template-columns:auto auto;column-gap:8px;align-items:center}
.aots-student-portal .aots-student-preview-banner .dashicons{grid-row:1/3}
.aots-student-portal .aots-student-preview-banner small{grid-column:2;color:rgba(255,255,255,.66)}
.aots-student-portal .aots-student-preview-banner a{padding:7px 11px;border:1px solid rgba(255,255,255,.28);border-radius:999px;color:#fff;text-decoration:none;font-weight:800}
.aots-student-portal .aots-preview-readonly-note{margin:12px 0 0;padding:10px 12px;border-radius:12px;background:#eef4f4;color:#607a80;font-size:13px}

/* ===== Perfil de buceador · Área privada ===== */
.aots-student-portal .aots-student-profile-notice{margin:0 0 16px;padding:11px 13px;border-radius:13px;background:#e9f6f2;color:#276b56;font-weight:750}
.aots-student-portal .aots-student-profile-notice--error{background:#fae7e7;color:#9d3d3d}
.aots-student-portal .aots-student-insurance-card{align-self:stretch}
.aots-student-portal .aots-student-insurance-date{margin:18px 0 12px;font-size:28px;font-weight:900;letter-spacing:-.04em;color:var(--sp-text,#16363d)}
.aots-student-portal .aots-student-inline-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:9px;align-items:end;margin-top:12px}
.aots-student-portal .aots-student-inline-form label span,.aots-student-portal .aots-student-form-grid label span{display:block;margin-bottom:5px;color:#647d82;font-size:12px;font-weight:800}
.aots-student-portal .aots-student-inline-form input,.aots-student-portal .aots-student-form-grid input,.aots-student-portal .aots-student-form-grid select{width:100%;min-height:42px;border:1px solid #cddede;border-radius:11px;background:#fff;color:#16363d;padding:8px 10px}
.aots-student-portal .aots-student-inline-form button,.aots-student-portal .aots-student-primary-button{min-height:42px;border:0;border-radius:11px;background:#0b91ad;color:#fff;padding:9px 15px;font-weight:850;cursor:pointer}
.aots-student-portal .aots-student-certifications{margin-top:16px}
.aots-student-portal .aots-student-cert-list{display:grid;gap:9px}
.aots-student-portal .aots-student-cert-list article{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:center;padding:12px 0;border-top:1px solid #dbe7e7}
.aots-student-portal .aots-student-cert-list article:first-child{border-top:0}
.aots-student-portal .aots-student-cert-list h3{margin:5px 0 2px;color:#16363d}
.aots-student-portal .aots-student-cert-list p,.aots-student-portal .aots-student-cert-list small{margin:0;color:#6f858a}
.aots-student-portal .aots-student-cert-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.aots-student-portal .aots-student-cert-actions a{padding:7px 10px;border:1px solid #cddede;border-radius:10px;color:#0b7188;text-decoration:none;font-size:13px;font-weight:800}
.aots-student-portal .aots-student-cert-form{margin-top:16px}
.aots-student-portal .aots-student-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:14px 0}
.aots-student-portal .aots-student-form-grid .is-wide{grid-column:1/-1}
.aots-student-portal .aots-student-course-progress{display:flex;align-items:center;gap:9px;margin-top:10px}
.aots-student-portal .aots-student-course-progress>div{height:7px;flex:1;overflow:hidden;border-radius:999px;background:#dbe7e7}
.aots-student-portal .aots-student-course-progress>div>span{display:block;height:100%;border-radius:inherit;background:#0b91ad}
.aots-student-portal .aots-student-course-progress small,.aots-student-portal .aots-student-course-no-progress{color:#6f858a}

@media (max-width:900px){
  .aots-embed .aots-course-exercise-tools{grid-template-columns:1fr}
  .aots-embed .aots-course-grid{grid-template-columns:1fr}
  .aots-embed .aots-version-history__row{grid-template-columns:48px 92px 1fr}
  .aots-embed .aots-version-history__row small{grid-column:1/-1}
  .aots-embed .aots-course-exercise-edit{grid-template-columns:20px minmax(0,1fr) 82px}
  .aots-embed .aots-course-exercise-edit .aots-check-line,.aots-embed .aots-course-exercise-edit button{grid-column:auto}
}
@media (max-width:700px){
  .aots-embed .aots-course-card{grid-template-columns:minmax(0,1fr) 20px}
  .aots-embed .aots-course-card__versions{grid-column:1/-1;justify-content:flex-start}
  .aots-embed .aots-inline-form,.aots-embed .aots-course-add-exercise{grid-template-columns:1fr}
  .aots-embed .aots-agency-row{grid-template-columns:minmax(0,1fr) auto}
  .aots-embed .aots-agency-row form{grid-column:1/-1}
  .aots-embed .aots-course-exercise-row{grid-template-columns:1fr}
  .aots-embed .aots-catalog-row{grid-template-columns:1fr}
  .aots-embed .aots-published-plan-row{grid-template-columns:30px minmax(0,1fr)}
  .aots-embed .aots-published-plan-row>small{grid-column:2}

  .aots-embed .aots-course-exercise-edit{grid-template-columns:20px minmax(0,1fr)}
  .aots-embed .aots-course-exercise-edit .aots-sort-field,.aots-embed .aots-course-exercise-edit .aots-check-line,.aots-embed .aots-course-exercise-edit button{grid-column:2}
  .aots-embed .aots-enrollment-card,.aots-embed .aots-certification-card{grid-template-columns:1fr}
  .aots-embed .aots-certification-card__actions{justify-content:flex-start}
  .aots-embed .aots-plan-update{grid-template-columns:1fr}
  .aots-embed .aots-plan-update form{align-items:stretch;flex-direction:column}
  .aots-embed .aots-force-complete form{grid-template-columns:1fr}
  .aots-student-portal .aots-student-preview-banner{align-items:flex-start;flex-direction:column}
  .aots-student-portal .aots-student-form-grid,.aots-student-portal .aots-student-inline-form{grid-template-columns:1fr}
  .aots-student-portal .aots-student-cert-list article{grid-template-columns:1fr}
  .aots-student-portal .aots-student-cert-actions{justify-content:flex-start}
}

/* 0.9.19 · Seguro responsive en ficha de alumno */
.aots-embed .aots-insurance-form{width:100%;min-width:0;overflow:hidden}
.aots-embed .aots-insurance-form .angels-field{min-width:0}
.aots-embed .aots-insurance-form input[type="date"]{display:block;box-sizing:border-box;width:100%;min-width:0;max-width:100%}
@media(max-width:700px){
  .aots-embed .aots-insurance-form .angels-form-actions{justify-content:stretch}
  .aots-embed .aots-insurance-form .angels-form-actions .angels-button{width:100%;justify-content:center}
}

/* 0.9.19 · Certificadoras plegables */
.aots-embed .aots-agency-manager>details>summary{
  display:flex;align-items:center;justify-content:space-between;gap:14px;cursor:pointer;list-style:none
}
.aots-embed .aots-agency-manager>details>summary::-webkit-details-marker{display:none}
.aots-embed .aots-agency-manager>details>summary>span:first-child{display:grid;gap:3px}
.aots-embed .aots-agency-manager>details>summary strong{font-size:18px}
.aots-embed .aots-agency-manager>details>summary small{color:var(--angels-muted);font-size:11px}
.aots-embed .aots-agency-manager>details[open]>summary>.dashicons{transform:rotate(180deg)}
.aots-embed .aots-agency-manager__body{margin-top:16px;padding-top:16px;border-top:1px solid var(--angels-line)}
.aots-embed .aots-agency-manager__body>p{margin:0 0 14px;color:var(--angels-muted);font-size:12px;line-height:1.5}
