/* ========== TOAST SYSTEM - CINEMARKETER ========== */
#cm-toast-container {
    position: fixed;
    top: 1.5rem;
    right: 1.5rem;
    z-index: 999999;
    display: flex;
    flex-direction: column;
    gap: 0.6rem;
    pointer-events: none;
    max-width: 340px;
    width: calc(100% - 2rem);
}
.cm-toast {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    padding: 0.75rem 1rem;
    border-radius: 10px;
    font-size: 0.9rem;
    line-height: 1.4;
    pointer-events: auto;
    opacity: 0;
    transform: translateX(30px);
    transition: opacity 0.3s ease, transform 0.3s ease;
    box-shadow: 0 4px 16px rgba(0,0,0,0.13);
    cursor: pointer;
    position: relative;
}
.cm-toast.show  { opacity: 1; transform: translateX(0); }
.cm-toast.hide  { opacity: 0; transform: translateX(30px); }
.cm-toast-icon  { font-size: 1.1rem; flex-shrink: 0; margin-top: 1px; }
.cm-toast-msg   { flex: 1; font-weight: 500; }
.cm-toast-close { font-size: 1rem; opacity: 0.5; cursor: pointer; flex-shrink: 0; }
.cm-toast-close:hover { opacity: 1; }
.cm-toast-progress {
    position: absolute;
    bottom: 0; left: 0;
    height: 3px;
    border-radius: 0 0 10px 10px;
    animation: cm-progress linear forwards;
}
@keyframes cm-progress { from { width: 100%; } to { width: 0%; } }

.cm-toast.success { background: #e8f5e9; border-left: 4px solid #4caf50; color: #1b5e20; }
.cm-toast.success .cm-toast-progress { background: #4caf50; }
.cm-toast.error   { background: #ffebee; border-left: 4px solid #e50914; color: #7f0000; }
.cm-toast.error   .cm-toast-progress { background: #e50914; }
.cm-toast.info    { background: #e8eaf6; border-left: 4px solid #324C89; color: #1a237e; }
.cm-toast.info    .cm-toast-progress { background: #324C89; }
.cm-toast.warning { background: #fff8e1; border-left: 4px solid #f9a825; color: #6d4c00; }
.cm-toast.warning .cm-toast-progress { background: #f9a825; }

@media (max-width: 480px) {
    #cm-toast-container { top: auto; bottom: 1.5rem; right: 0.75rem; left: 0.75rem; max-width: 100%; }
}