/* Sesión de operador: pantalla de acceso y zona del operador en la cabecera. */
.topbar-session { display:flex; align-items:center; gap:12px; flex-wrap:wrap; justify-content:flex-end; }
.operator-session { display:flex; align-items:center; gap:10px; margin:0; font-size:0.90625rem; color:var(--muted); }
.operator-name strong { color:var(--ink); }
.login-main { display:grid; place-items:center; min-height:70vh; padding:24px; }
.login-card { width:min(380px, 100%); background:var(--surface); border:1px solid var(--line); border-radius:16px; box-shadow:var(--shadow); padding:28px; display:flex; flex-direction:column; gap:8px; }
.login-card h1 { margin:0 0 4px; font-size:1.375rem; color:var(--ink); }
.login-help { margin:0 0 10px; color:var(--muted); font-size:0.9375rem; line-height:1.5; }
.login-card label { font-size:0.96875rem; font-weight:700; color:var(--ink); margin-top:6px; }
.login-card input { border:1px solid var(--line-strong); border-radius:9px; padding:12px; font:inherit; font-size:1.09375rem; background:var(--surface); color:var(--ink); }
.login-card input:focus { outline:3px solid var(--focus); outline-offset:2px; }
/* Colores naranjas de la app (texto oscuro sobre el naranja de marca, para que se lea bien). */
.login-submit { margin-top:14px; border:0; border-radius:9px; padding:13px 16px; font-weight:750; color:var(--on-brand); background:var(--brand); }
.login-submit:hover { background:var(--brand-hover); }
.login-submit:focus-visible { outline:3px solid var(--focus); outline-offset:2px; }
.login-error { margin:0; color:var(--danger); background:var(--danger-bg); border:1px solid var(--danger); padding:10px 12px; border-radius:9px; font-size:0.9375rem; }

