/* ============================================================
   components/alerts.css — Public-Alert-Klassen (0.1.3)
   ------------------------------------------------------------
   Inline-Meldungen für Forms, Page-Top-Hinweise, Login-Errors.
============================================================ */

.pub-alert {
    display: flex;
    gap: 10px;
    align-items: flex-start;
    padding: 12px 14px;
    border-radius: var(--pub-radius-sm);
    border: 1px solid transparent;
    font-size: 0.95rem;
    line-height: 1.45;
}

.pub-alert__icon {
    flex: 0 0 auto;
    font-size: 1.1rem;
    line-height: 1.3;
}

.pub-alert__body { flex: 1 1 auto; }

.pub-alert__body p:first-child { margin-top: 0; }
.pub-alert__body p:last-child  { margin-bottom: 0; }

/* ----------------------------------------------------------------
   Varianten
   ---------------------------------------------------------------- */
.pub-alert--success {
    background: var(--pub-success-bg);
    border-color: var(--pub-success-border);
    color: var(--pub-success);
}

.pub-alert--warning {
    background: var(--pub-warning-bg);
    border-color: var(--pub-warning-border);
    color: var(--pub-warning);
}

.pub-alert--error {
    background: var(--pub-danger-bg);
    border-color: var(--pub-danger-border);
    color: var(--pub-danger);
}

.pub-alert--info {
    background: var(--pub-info-bg);
    border-color: var(--pub-info-border);
    color: var(--pub-info);
}

/* Listen innerhalb Alerts (z.B. Validation-Errors) */
.pub-alert ul {
    margin: 4px 0 0 0;
    padding-left: 20px;
}

.pub-alert ul li + li { margin-top: 2px; }
