/* Bootstrap Toast component, scoped to preserve the application's existing layout. */
.app-toast-container { position: fixed; top: 18px; right: 18px; z-index: 1090; width: min(380px, calc(100vw - 32px)); pointer-events: none; }
.app-toast { width: 100%; margin-bottom: 10px; pointer-events: auto; background: white; color: #243b32; border: 1px solid var(--line, #e1e8e3); border-left: 4px solid var(--green, #237354); border-radius: 12px; box-shadow: 0 8px 28px #183d3226; font: 13px/1.5 var(--font-ui, 'Poppins', sans-serif); overflow: hidden; }
.app-toast:not(.show) { display: none; }
.app-toast.showing { opacity: 0; }
.app-toast.fade { transition: opacity .15s linear; }
.app-toast .toast-header { display: flex; align-items: center; justify-content: space-between; padding: 10px 14px 4px; color: var(--green, #237354); }
.app-toast .toast-body { padding: 6px 14px 14px; white-space: pre-line; overflow-wrap: anywhere; }
.app-toast .toast-close { background: transparent; border: 0; color: #52635a; font-size: 24px; line-height: 1; padding: 4px; cursor: pointer; }
.app-toast .toast-actions { display: flex; justify-content: flex-end; gap: 8px; padding: 0 14px 14px; }
.app-toast .toast-actions .btn { padding: 7px 12px; border-color: var(--line, #e1e8e3); }
.app-toast.toast-error { border-left-color: #b42318; }
.app-toast.toast-error .toast-header { color: #b42318; }
.app-toast.toast-warning { border-left-color: #996200; }
.app-toast.toast-warning .toast-header { color: #996200; }
.app-toast.toast-info { border-left-color: #28628a; }
.app-toast.toast-info .toast-header { color: #28628a; }
@media (prefers-reduced-motion: reduce) { .app-toast.fade { transition: none; } }
@media print { .app-toast-container { display: none !important; } }

