/* ---------- Acceso (página acceso.html) ---------- */
.login-card [hidden] { display: none !important; }   /* .login-card form/label usan display:grid y anulaban el atributo hidden */
.login-note { margin: 0; font-size: 13px; color: #C9D3EA; line-height: 1.4; }
.login-link { background: none; border: none; color: #AEBBD6; cursor: pointer; font-size: 12.5px; text-decoration: underline; padding: 2px; }
.login-link:hover { color: #FFFFFF; }
.login-card button[type=submit]:disabled { opacity: .6; cursor: wait; }

/* ---------- Menú de usuario ---------- */
#userName::before { content: '● '; color: #7BD88F; font-size: 10px; vertical-align: 2px; }
#userMenu .menu-panel { width: 300px; }

/* ---------- Administración de usuarios ---------- */
dialog.adm { max-width: min(1000px, 96vw); width: 1000px; }
.adm-form { display: grid; gap: 10px; padding: 12px 14px; margin-bottom: 14px; border: 1px solid var(--cf-line); border-left: 5px solid var(--cornflower); border-radius: 9px; background: var(--cf-wash); }
.mk-panel.adm-form { border-left: none; background: var(--panel); margin: 0; }
.adm-form-title { font-weight: 700; color: var(--cf-deep); }
.adm-form.editing { border-left-color: var(--burgundy); background: var(--burgundy-wash); }
.adm-form.editing .adm-form-title { color: var(--burgundy); }
.adm-grid { display: grid; grid-template-columns: 1fr 1.3fr .8fr 1.4fr; gap: 10px 12px; }
@media (max-width: 760px) { .adm-grid { grid-template-columns: 1fr 1fr; } }
.adm-form .field input, .adm-form .field select { width: 100%; }
.adm-pass-row { display: flex; gap: 6px; } .adm-pass-row input { flex: 1; min-width: 0; }
.adm-check { display: inline-flex; gap: 6px; align-items: center; font-size: 13px; cursor: pointer; }
.adm-error { text-align: left; color: #B3261E; min-height: 0; }
.adm-error:empty { display: none; }
.adm-table td { font-size: 13px; padding: 6px; }
.adm-table td.acts { white-space: nowrap; text-align: right; }
.adm-table td.acts .btn { margin-left: 4px; }
.adm-table tr.inactivo td { color: var(--muted); }
.adm-table tr.yo td:first-child b::after { content: ' (tú)'; font-weight: 400; color: var(--muted); }
.adm-tag { display: inline-block; font-size: 11px; font-weight: 600; padding: 1px 7px; border-radius: 4px; background: #E4ECF7; color: #2A4F86; }
.adm-tag.admin { background: var(--burgundy-wash); color: var(--burgundy); }
.adm-tag.on { background: #E1F1EA; color: #1E6B47; }
.adm-tag.off { background: #EDEFF1; color: var(--muted); }
.adm-tag.temp { background: var(--warn-bg); color: var(--warn); }
.btn.danger { color: #B3261E; border-color: #E5B4B0; }
.btn.danger:hover:not(:disabled) { border-color: #B3261E; background: #FCEEEE; }
