blob: 900794f4b52b79788d5d37007c4427a66e79f8e2 [file] [log] [blame]
// Toast container positioning - below AppHeader
.b-toaster,
.toast-container {
top: calc(#{$header-height} + #{$spacer})!important; // position below AppHeader (48px + spacing)
}
// Toast component and status icon style
.toast {
padding: calc(#{$spacer} / 2) calc(#{$spacer} / 2) calc(#{$spacer} / 2) $spacer+2;
border-width: 0 0 0 3px; // physical width retained; color via logical property
box-shadow: $box-shadow;
margin-bottom: $spacer; // vertical spacing between stacked toasts
.close {
font-weight: 300;
opacity: 1;
}
// Hide progress bar in all toasts (CSS workaround since JS props don't work as documented in Bootstrap Vue Next 0.40.8)
.progress {
display: none !important;
}
}
.toast-header {
display: flex;
align-items: flex-start;
background-color: inherit!important; //override specificity
border: none;
color: theme-color("dark")!important; //override specificity
padding-bottom: calc(#{$spacer} / 4); // spacing between header and body
}
.toast-icon {
display: flex;
margin-inline-end: 1rem;
svg {
margin-inline-start: -2.5rem;
}
+ .close {
line-height: .9;
}
}
.toast-body {
color: theme-color("dark");
padding-top: calc(#{$spacer} / 4); // spacing below header
white-space: pre-line; // Preserve newlines from \n characters
line-height: 1.6; // Better line spacing for multi-line content and timestamps
}
// Bootstrap Vue 2 class names (backward compatibility)
.b-toast-success .toast {
border-inline-start-color: theme-color("success")!important;
background-color: theme-color-light("success")!important;
}
.b-toast-info .toast {
border-inline-start-color: theme-color("info")!important;
background-color: theme-color-light("info")!important;
}
.b-toast-danger .toast {
border-inline-start-color: theme-color("danger")!important;
background-color: theme-color-light("danger")!important;
}
.b-toast-warning .toast {
border-inline-start-color: theme-color("warning")!important;
background-color: theme-color-light("warning")!important;
}
// Bootstrap Vue Next class names
.toast.bg-success {
border-inline-start-color: theme-color("success")!important;
background-color: theme-color-light("success")!important;
}
.toast.bg-info {
border-inline-start-color: theme-color("info")!important;
background-color: theme-color-light("info")!important;
}
.toast.bg-danger {
border-inline-start-color: theme-color("danger")!important;
background-color: theme-color-light("danger")!important;
}
.toast.bg-warning {
border-inline-start-color: theme-color("warning")!important;
background-color: theme-color-light("warning")!important;
}
// Override Bootstrap's solid variant backgrounds
.toast.text-bg-success,
.toast.text-bg-info,
.toast.text-bg-danger,
.toast.text-bg-warning {
color: theme-color("dark")!important;
}
.toast.text-bg-success {
border-inline-start-color: theme-color("success")!important;
background-color: theme-color-light("success")!important;
}
.toast.text-bg-info {
border-inline-start-color: theme-color("info")!important;
background-color: theme-color-light("info")!important;
}
.toast.text-bg-danger {
border-inline-start-color: theme-color("danger")!important;
background-color: theme-color-light("danger")!important;
}
.toast.text-bg-warning {
border-inline-start-color: theme-color("warning")!important;
background-color: theme-color-light("warning")!important;
}