/* Estilos que th_headerMenu.html inyecta por JS en <head> (ensureToastStyles, líneas 2037-2052,
   y ensureInvalidCss, líneas 2095-2106). Mismo texto, solo con un salto de línea por regla. */
#staffToastWrap { position:fixed; top:16px; right:16px; z-index:99999; display:flex; flex-direction:column; gap:10px; pointer-events:none; max-width:380px; }
.staff-toast { pointer-events:auto; background:#fff; border-left:5px solid #2563eb; border-radius:4px; padding:12px 34px 12px 14px; box-shadow:0 6px 18px rgba(0,0,0,0.15); display:flex; gap:10px; align-items:flex-start; position:relative; min-height:48px; opacity:0; transform:translateX(20px); transition:opacity .25s ease, transform .25s ease; }
.staff-toast.show { opacity:1; transform:translateX(0); }
.staff-toast .staff-toast-icon { font-size:22px; line-height:1; flex-shrink:0; }
.staff-toast .staff-toast-body { flex:1; min-width:0; }
.staff-toast .staff-toast-title { font-weight:600; color:#1f2937; margin-bottom:2px; }
.staff-toast .staff-toast-msg { font-size:13px; color:#4b5563; line-height:1.4; }
.staff-toast .staff-toast-close { position:absolute; top:4px; right:8px; cursor:pointer; color:#9ca3af; font-size:20px; line-height:1; background:none; border:none; padding:0; }
.staff-toast .staff-toast-close:hover { color:#374151; }
.staff-form input.invalid, .staff-form select.invalid, .staff-form textarea.invalid,input.invalid, select.invalid, textarea.invalid {  border-color:#dc3545 !important;  box-shadow:0 0 0 0.15rem rgba(220,53,69,0.18) !important;}
