.public-access{text-align:center;margin:28px 0}
.public-access button,#accessForm button[type=submit]{border:0;border-radius:9px;background:#ff7514;color:#fff;padding:12px 20px;font-size:15px;font-family:inherit;font-weight:700;cursor:pointer}
#accessDialog{width:min(440px,calc(100% - 32px));border:1px solid #dce4ed;border-radius:16px;padding:28px;color:#12344e;box-shadow:0 20px 80px #0004}
#accessDialog::backdrop{background:#071d3bb3}
#accessForm{display:grid;gap:14px}#accessForm h2,#accessForm p{margin:0}#accessForm input{width:100%;padding:12px;border:1px solid #8394ad;border-radius:8px;font:inherit}#accessForm label{font-weight:700}
.access-close{justify-self:end;border:0;background:transparent;font-size:26px;color:#12344e;cursor:pointer}
#accessError{color:#b32727;min-height:20px}#accessForm button:disabled{opacity:.65}
.access-logout{position:fixed;bottom:16px;right:18px;z-index:50;background:#fff;border:1px solid #a4b4c9;border-radius:8px;padding:9px 14px;color:#12344e;cursor:pointer}

#accessPassword{font-size:16px}

.pc-integrated .access-logout{bottom:80px}

/* ---------- Tablero con acceso pendiente ---------- */

/* Aviso principal: el tablero no está incompleto, está reservado. */
.lock-note{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin:0 0 20px;padding:18px 20px;
  border:1px solid #ffd2a8;border-left:5px solid #ff7514;border-radius:12px;background:#fff6ee;color:#12344e}
.lock-note__icon{flex:0 0 auto;color:#ff7514}
.lock-note h2{margin:0 0 4px;font-size:17px;font-weight:800}
.lock-note p{margin:0;font-size:13.5px;line-height:1.5;max-width:70ch;color:#3d5570}
.lock-note a{color:#b3530a}
.lock-note div{flex:1 1 320px;min-width:0}
.lock-note__btn{flex:0 0 auto;border:0;border-radius:9px;background:#ff7514;color:#fff;
  padding:12px 20px;font:inherit;font-weight:700;cursor:pointer}
.lock-note__btn:hover{background:#e9650c}

/* Los indicadores quedan cubiertos hasta que se ingresa la contraseña. */
.locked-data{position:relative;isolation:isolate}
.locked-data>*:not(.locked-data__veil){filter:blur(6px);pointer-events:none;user-select:none}
.locked-data__veil{position:absolute;inset:0;z-index:2;display:flex;flex-direction:column;align-items:center;
  justify-content:center;gap:12px;padding:24px;text-align:center;color:#12344e;
  background:linear-gradient(180deg,#ffffffd9,#fffffff2)}
.locked-data__veil p{margin:0;font-size:15px;font-weight:700}
.locked-data__veil svg{color:#ff7514}

/* Candado en cada módulo del menú lateral. */
.nav-lock{flex:0 0 auto;margin-left:auto;opacity:.75}
.nav-link .nav-badge+.nav-lock{margin-left:8px}
