/* @overa/ui-kit 0.11.0 · los estados de una pantalla y el aviso breve (js/console.js; SUITE-CONSOLAS.md §6 y §7).
   Con los tokens de la app si los tiene y, si no, los de la suite. Sin `style=` en el HTML. */
.ov-state{display:flex;align-items:center;gap:10px;padding:24px 4px;font-size:13px;color:var(--grey,var(--color-text-muted,#6b7280))}
.ov-state-empty{padding:16px 4px}
.ov-state-error{padding:10px 12px;border:1px solid var(--crit-l,var(--color-danger-line,#e0533d));border-left-width:4px;
  border-radius:8px;background:var(--crit-w,var(--color-danger-soft,#fbe7e3));color:var(--crit,var(--color-danger,#b3402c))}
.ov-state-retry{margin-left:auto;font:inherit;font-size:12px;padding:3px 10px;border-radius:6px;cursor:pointer;
  border:1px solid currentColor;background:transparent;color:inherit}
.ov-spin{width:16px;height:16px;flex:none;border:2px solid var(--rule,var(--color-border,#e4e8ec));
  border-top-color:var(--ink,var(--color-text,#1f2937));border-radius:50%;animation:ov-spin .8s linear infinite}
@keyframes ov-spin{to{transform:rotate(360deg)}}
@media (prefers-reduced-motion:reduce){.ov-spin{animation:none}}
.ov-toasts{position:fixed;right:16px;bottom:16px;z-index:100;display:flex;flex-direction:column;gap:8px;max-width:min(420px,calc(100vw - 32px))}
.ov-toast{padding:10px 14px;border-radius:8px;background:#282828;color:#f7f7f5;font-size:13px;box-shadow:0 6px 20px rgba(0,0,0,.18)}
.ov-toast-error{background:var(--crit,var(--color-danger,#b3402c))}
