/* One visual language for React alerts, action toasts and standalone feedback. */
:is(.MuiAlert-colorSuccess, .sn-notify-success, .kp-feedback--success, .auth-shell .notice.success) {
    --kp-feedback-background: #ecfdf5;
    --kp-feedback-border: #a7f3d0;
    --kp-feedback-color: #064e3b;
    --kp-feedback-icon-color: #059669;
    --kp-feedback-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Ccircle cx='12' cy='12' r='9' fill='none' stroke='black' stroke-width='2'/%3E%3Cpath d='m7.5 12 3 3 6-6' fill='none' stroke='black' stroke-width='2'/%3E%3C/svg%3E");
}
:is(.MuiAlert-colorError, .sn-notify-error, .kp-feedback--error, .auth-shell .notice.error) {
    --kp-feedback-background: #fef2f2;
    --kp-feedback-border: #fecaca;
    --kp-feedback-color: #7f1d1d;
    --kp-feedback-icon-color: #dc2626;
    --kp-feedback-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Ccircle cx='12' cy='12' r='9' fill='none' stroke='black' stroke-width='2'/%3E%3Cpath d='M12 7v6m0 3v1' stroke='black' stroke-width='2'/%3E%3C/svg%3E");
}
:is(.MuiAlert-colorWarning, .sn-notify-warning, .kp-feedback--warning) {
    --kp-feedback-background: #fffbeb;
    --kp-feedback-border: #fde68a;
    --kp-feedback-color: #78350f;
    --kp-feedback-icon-color: #d97706;
    --kp-feedback-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 3 2 21h20L12 3Z' fill='none' stroke='black' stroke-width='2' stroke-linejoin='round'/%3E%3Cpath d='M12 9v5m0 3v1' stroke='black' stroke-width='2'/%3E%3C/svg%3E");
}
:is(.MuiAlert-colorInfo, .sn-notify-info, .kp-feedback--info) {
    --kp-feedback-background: #f0f9ff;
    --kp-feedback-border: #bae6fd;
    --kp-feedback-color: #0c4a6e;
    --kp-feedback-icon-color: #0284c7;
    --kp-feedback-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Ccircle cx='12' cy='12' r='9' fill='none' stroke='black' stroke-width='2'/%3E%3Cpath d='M12 11v6m0-10v1' stroke='black' stroke-width='2'/%3E%3C/svg%3E");
}
.MuiAlert-root.MuiPaper-root, .sn-notify.kp-toast, .kp-feedback, .auth-shell .notice {
    box-sizing: border-box;
    display: flex;
    align-items: flex-start;
    gap: 12px;
    min-width: 0;
    padding: 12px 16px;
    border: 1px solid var(--kp-feedback-border, #bae6fd);
    border-radius: 4px;
    background: var(--kp-feedback-background, #f0f9ff);
    color: var(--kp-feedback-color, #0c4a6e);
    box-shadow: none;
    font: 400 14px/1.5 Inter, sans-serif;
    letter-spacing: normal;
    overflow-wrap: anywhere;
}
.MuiAlert-root.MuiPaper-root::before, .sn-notify.kp-toast::before, .kp-feedback::before, .auth-shell .notice::before {
    content: '';
    position: static;
    display: block;
    flex: 0 0 20px;
    width: 20px;
    height: 20px;
    margin-top: 1px;
    border-radius: 0;
    animation: none;
    will-change: auto;
    background: var(--kp-feedback-icon-color, #0284c7);
    mask: var(--kp-feedback-icon) center / contain no-repeat;
}
.MuiAlert-root.MuiPaper-root > .MuiAlert-icon, .sn-notify.kp-toast > .sn-notify-icon { display: none; }
.MuiAlert-root.MuiPaper-root > .MuiAlert-message, .sn-notify.kp-toast > .sn-notify-content, .kp-feedback__body {
    flex: 1;
    min-width: 0;
    padding: 0;
}
.MuiAlert-root.MuiPaper-root > .MuiAlert-action { margin: -4px -8px -4px 0; padding: 0; }
.MuiAlert-root.MuiPaper-root .MuiIconButton-root { color: inherit; }
.kp-feedback__content { display: flex; flex: 1; min-width: 0; flex-direction: column; align-items: flex-start; gap: 12px; }
.kp-feedback__content > span { flex: 1; min-width: 0; }
.kp-feedback__retry, .kp-feedback__retry.MuiButton-root { flex-shrink: 0; min-height: 32px; border: 1px solid var(--kp-feedback-border); border-radius: 4px; background: transparent; color: inherit; padding: 4px 12px; font: inherit; font-weight: 600; cursor: pointer; }
.kp-feedback__retry:hover, .kp-feedback__retry.MuiButton-root:hover { background: rgb(255 255 255 / 60%); }
.kp-feedback__retry:focus-visible { outline: 2px solid currentColor; outline-offset: 2px; }
.MuiAlert-root.MuiPaper-root .MuiAlert-action .MuiIconButton-root { width: 28px; height: 28px; padding: 6px; border: 0; }
.MuiAlert-root.MuiPaper-root .MuiAlert-action .MuiSvgIcon-root { font-size: 16px; }
.kp-feedback__retry.Mui-disabled { opacity: .5; }
.sn-notifications-container { --sn-notifications-gap: 12px; --sn-notifications-padding: 16px; z-index: 1500; overflow-y: auto; }
.sn-notify.kp-toast { width: min(480px, calc(100vw - 32px)); max-width: 100%; box-shadow: 0 2px 8px rgb(15 23 42 / 8%); }
.sn-notify.kp-toast > .sn-notify-content { order: 1; }
.sn-notify.kp-toast .sn-notify-text { margin: 0; padding: 0; color: inherit; font: inherit; }
.sn-notify.kp-toast > .sn-notify-close {
    position: static;
    order: 2;
    display: inline-flex;
    flex: 0 0 28px;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    margin: -4px -8px -4px 0;
    padding: 6px;
    border: 0;
    border-radius: 4px;
    background: transparent;
    color: inherit;
    cursor: pointer;
}
.sn-notify.kp-toast > .sn-notify-close:hover { background: rgb(0 0 0 / 5%); }
.sn-notify.kp-toast > .sn-notify-close:focus-visible { outline: 2px solid currentColor; outline-offset: 2px; }
.sn-notify.kp-toast::after { display: none; }
@media (min-width: 640px) {
    .kp-feedback__content { flex-direction: row; align-items: center; justify-content: space-between; }
}
@media (prefers-reduced-motion: reduce) {
    .sn-notify.kp-toast { transition-duration: 0s; animation: none; }
}
