.kfw-alert {
    width: 100%;
    padding: 12px 14px;
    border: var(--global-border);
    border-radius: var(--global-radius);
    display: flex;
    align-items: start;
    justify-content: center;
    gap: 12px;
    box-shadow: var(--box-shadow);
}
.kfw-alert-icon {
    width: 56px;
    height: 56px;
    min-height: 56px;
    min-width: 56px;
    border-radius: 50%;
    background: rgba(30, 41, 59, 0.06);
    color: rgba(30, 41, 59, 0.55);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}
.kfw-alert-icon i {
    font-size: 30px;
}
.kfw-alert.small .kfw-alert-icon {
    width: 38px;
    height: 38px;
    min-width: 38px;
    min-height: 38px;
}
.kfw-alert.small .kfw-alert-icon i {
    font-size: 20px;
    margin: 0;
}
.kfw-alert.primary {
    border-color: rgba(var(--primary-rgb), 0.25);
    background: rgba(var(--primary-rgb), 0.08);
}
.kfw-alert.success {
    border-color: rgba(var(--success-rgb), 0.25);
    background: rgba(var(--success-rgb), 0.08);
}
.kfw-alert.warning {
    border-color: rgba(var(--warning-rgb), 0.28);
    background: rgba(var(--warning-rgb), 0.09);
}
.kfw-alert.danger {
    border-color: rgba(var(--danger-rgb), 0.25);
    background: rgba(var(--danger-rgb), 0.08);
}
.kfw-alert.primary .kfw-alert-icon {
    background: rgba(var(--primary-rgb), 0.14);
    color: var(--primary-color-darker);
}
.kfw-alert.success .kfw-alert-icon {
    background: rgba(var(--success-rgb), 0.14);
    color: var(--success-color-darker);
}
.kfw-alert.warning .kfw-alert-icon {
    background: rgba(var(--warning-rgb), 0.16);
    color: var(--warning-color-darker);
}
.kfw-alert.danger .kfw-alert-icon {
    background: rgba(var(--danger-rgb), 0.14);
    color: var(--danger-color-darker);
}
html.dark .kfw-alert.primary .kfw-alert-icon,
html.dark .kfw-alert.success .kfw-alert-icon,
html.dark .kfw-alert.warning .kfw-alert-icon,
html.dark .kfw-alert.danger .kfw-alert-icon {
    color: var(--font-color);
}
.kfw-alert-page {
    margin-left: 30px;
    margin-right: 30px;
    width: 100%;
}
.kfw-alert-title {
    margin-top: 6px;
    font-size: calc(var(--font-size-base) * 1.1);
    font-weight: 600;
    letter-spacing: -0.01em;
    margin-bottom: 10px;
}
.kfw-alert.small .kfw-alert-title {
    margin-top: 0;
    margin-bottom: 3px;
}
.kfw-alert-link {
    display: flex;
    align-items: end;
    height: 100%;
    justify-content: center;
}
