.dev-code{background:#f9e5f3;color:#6B217E;border-radius:7px;padding:13px;text-align:center;font:700 22px 'Space Grotesk';letter-spacing:4px;margin:12px 0}

/* Catálogo dinámico de la portada */
.courses-empty{grid-column:1/-1;padding:36px;border:1px dashed #cfc8d8;border-radius:14px;color:#6b6674;text-align:center;font-size:15px;line-height:1.6}

/* Vista de ejemplo de Mi campus en la portada: replica la pantalla real (clara), no el backoffice */
.campus-demo{max-width:1180px;margin:0 auto;background:var(--paper);border:1px solid #e4e1e8;border-radius:18px;padding:0 34px 40px;box-shadow:0 20px 50px #3920731a;overflow:hidden}
.campus-demo .demo-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 -34px 30px;padding:14px 34px;background:#fff;border-bottom:1px solid #e4e1e8;font-size:11px;font-weight:700;letter-spacing:1px;color:#8e8994}
.campus-demo .demo-links{display:flex;gap:16px;align-items:center;letter-spacing:0;font-size:13px;color:var(--ink)}
.campus-demo .demo-links i{font-style:normal;background:var(--ink);color:#fff;padding:8px 14px;border-radius:8px}
.campus-demo .c-grid{grid-template-columns:minmax(0,420px)}
.campus-demo .c-btn{cursor:default}
@media(max-width:560px){.campus-demo{padding:0 18px 28px}.campus-demo .demo-bar{margin:0 -18px 22px;padding:12px 18px;flex-wrap:wrap}}
.forgot{margin:10px 0 0;text-align:center;font-size:13px}.forgot a{color:inherit;text-decoration:underline}

.forgot.switch{margin-top:6px;font-size:13px}.linkish{background:none;border:0;padding:0;color:var(--p);font-weight:700;text-decoration:underline;cursor:pointer;font:inherit;font-weight:700}

/* Menú superior: enlaces en magenta, activo en negrita (igual que la web principal) */
header nav a{color:var(--ink);text-decoration:none;font-weight:400;transition:color .15s}
header nav a:hover{color:var(--pink)}
header nav a[aria-current]{color:var(--pink);font-weight:700}
.hamb{border:0;cursor:pointer;color:var(--ink);padding:8px 10px;line-height:1}
.hamb:focus-visible{outline:3px solid var(--pink);outline-offset:2px;border-radius:6px}
@media(max-width:800px){
  header{flex-wrap:wrap;height:auto;min-height:84px}
  header.menu-open nav{display:flex;flex-direction:column;gap:4px;order:3;width:100%;padding:8px 0 4px}
  header.menu-open nav a{padding:12px 4px;font-size:17px;border-top:1px solid #eae8ed}
  header.menu-open .actions{display:flex;order:4;width:100%;padding:10px 0 16px}
}

/* Ventana de acceso: logo de exergía arriba (en lugar de la "e." suelta) */
.modal-logo{display:block;height:44px;width:auto;margin:0 auto 18px}

/* Ojo de contraseña */
.pw-wrap{position:relative;display:block;width:100%}
.pw-wrap input{width:100%;padding-right:46px!important}
.pw-eye{position:absolute;right:6px;top:50%;transform:translateY(-50%);width:36px;height:36px;display:grid;place-items:center;background:none;border:0;border-radius:8px;color:#666;cursor:pointer;padding:0}
.pw-eye:hover{color:var(--pink,#E6007D)}
.pw-eye:focus-visible{outline:3px solid var(--pink,#E6007D);outline-offset:1px}
body.admin .pw-eye,.a-field .pw-eye{color:#cfcfcf}
.pw-wrap input::-webkit-credentials-auto-fill-button{visibility:hidden;pointer-events:none;position:absolute;right:0}

.pw-rules{list-style:none;margin:6px 0 12px;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:2px 12px;font-size:13px;color:#777}
.pw-rules li::before{content:"○ ";color:#aaa}
.pw-rules li.ok{color:#2e7d4f;font-weight:700}.pw-rules li.ok::before{content:"✓ ";color:#2e7d4f}
.a-field+.pw-rules,.a-form .pw-rules{color:#bdbdbd}.a-form .pw-rules li.ok{color:#7fd6a0}
