/* Bloqueo global de pantalla mientras se graba / edita / envía a SAP (ver dartel-busy.js).
   Capa transparente al instante (bloquea clics) + tarjeta con loader a los 250 ms. */
#dartel-busy {
    position: fixed; inset: 0; z-index: 19000; display: none;
    align-items: center; justify-content: center;
    background: transparent; cursor: progress;
    transition: background .2s ease;
}
#dartel-busy.on { display: flex; }
#dartel-busy.show { background: rgba(32, 12, 26, .38); backdrop-filter: blur(1.5px); }

#dartel-busy .dartel-busy-card {
    display: flex; align-items: center; gap: 16px;
    padding: 18px 26px; max-width: calc(100vw - 32px);
    background: var(--dt-surface, #fff); color: #2a1f27;
    border-radius: 16px; border: 1px solid var(--dt-line, #ece5eb);
    box-shadow: 0 18px 48px rgba(60, 20, 50, .28);
    opacity: 0; transform: translateY(6px) scale(.98);
    transition: opacity .18s ease, transform .18s ease;
}
#dartel-busy.show .dartel-busy-card { opacity: 1; transform: none; }
#dartel-busy .dartel-busy-card strong { display: block; font-size: 15px; font-weight: 700; }
#dartel-busy .dartel-busy-card small { display: block; font-size: 12.5px; opacity: .7; margin-top: 1px; }

#dartel-busy .dartel-busy-spin {
    flex: 0 0 auto; width: 30px; height: 30px; border-radius: 50%;
    border: 3px solid var(--primary-100, #fadfef); border-top-color: var(--dt-brand, #8d0e58);
    animation: dartel-busy-rot .8s linear infinite;
}
@keyframes dartel-busy-rot { to { transform: rotate(360deg); } }

[data-theme="dark"] #dartel-busy .dartel-busy-card { background: #1f1a21; color: #f1e9f0; border-color: #3a2f3a; }
[data-theme="dark"] #dartel-busy .dartel-busy-spin { border-color: #3a2f3a; border-top-color: #dc57a3; }

@media (prefers-reduced-motion: reduce) {
    #dartel-busy .dartel-busy-spin { animation-duration: 1.6s; }
    #dartel-busy, #dartel-busy .dartel-busy-card { transition: none; }
}
