/* ============================================================================
   RSL Inlay Alerts
   ============================================================================
   Contextual inline alerts (not floating like Toast). Used for displaying
   status messages, notifications, and feedback within the page flow.

   Usage:
   <div class="inlay-alert alert-success">Success message</div>
   <div class="inlay-alert alert-danger">Error message</div>
   ============================================================================ */

/* ──────────────────────────────────────────────
   Base Alert Styles
   ────────────────────────────────────────────── */

.inlay-alert {
    position: relative;
    padding: 1rem 1.5rem;
    margin-bottom: 1rem;
    border: 1px solid transparent;
    border-radius: 0.25rem;
    color: #fff;
    display: flex;
    align-items: center;
    transition: opacity 0.15s linear;
}

/* ──────────────────────────────────────────────
   Drop Shadow Variants
   ────────────────────────────────────────────── */

.inlay-alert.alert-dropshadow-a {
    box-shadow: rgba(50, 50, 93, 0.25) 0px 30px 60px -12px inset,
                rgba(0, 0, 0, 0.3) 0px 18px 36px -18px inset;
}

.inlay-alert.alert-dropshadow-b {
    box-shadow: rgba(0, 0, 0, 0.17) 0px -23px 25px 0px inset,
                rgba(0, 0, 0, 0.15) 0px -36px 30px 0px inset,
                rgba(0, 0, 0, 0.1) 0px -79px 40px 0px inset,
                rgba(0, 0, 0, 0.06) 0px 2px 1px,
                rgba(0, 0, 0, 0.09) 0px 4px 2px,
                rgba(0, 0, 0, 0.09) 0px 8px 4px,
                rgba(0, 0, 0, 0.09) 0px 16px 8px,
                rgba(0, 0, 0, 0.09) 0px 32px 16px;
}

.inlay-alert.alert-dropshadow-c {
    box-shadow: rgba(0, 0, 0, 0.06) 0px 2px 4px 0px inset;
}

.inlay-alert.alert-dropshadow-d {
    box-shadow: rgba(0, 0, 0, 0.19) 0px 10px 20px,
                rgba(0, 0, 0, 0.23) 0px 6px 6px;
}

/* ──────────────────────────────────────────────
   Dynamic Alert (Compact)
   ────────────────────────────────────────────── */

.inlay-alert.dynamic {
    padding: 0.3rem 1.5rem;
}

/* ──────────────────────────────────────────────
   Alert Type Colors
   ────────────────────────────────────────────── */

.alert-success {
    background-color: #28a745;
    --text-color: white;
}

.alert-danger {
    background-color: #dc3545;
    --text-color: white;
}

.alert-warning {
    background-color: #ffc107;
    --text-color: #212529;
}

.alert-info {
    background-color: #17a2b8;
    --text-color: white;
}

.alert-default {
    background-color: #6c757d;
    --text-color: white;
}

/* ──────────────────────────────────────────────
   Alert Content & Icons
   ────────────────────────────────────────────── */

.inlay-alert i {
    color: #fff;
}

.inlay-alert .alert-message,
.inlay-alert .alert-message h4 {
    --text-color: white;
}

.alert-message-around {
    display: inline;
    padding: 10px;
    border-radius: 5px;
    margin: 3px;
}

.inlay-alert:not(.dynamic) i {
    vertical-align: middle;
    margin-right: 20px;
}

.inlay-alert i.closer {
    margin-right: 20px;
}

/* ──────────────────────────────────────────────
   Alert Content Layout
   ────────────────────────────────────────────── */

.alert-content {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.alert-content .alert-message {
    flex-grow: 1;
    margin-left: 10px;
}

.alert-content .alert-close {
    margin-left: auto;
}

.message-wrapper {
    display: flex;
    align-items: center;
}

/* ──────────────────────────────────────────────
   Close Button
   ────────────────────────────────────────────── */

.inlay-alert .close {
    position: absolute;
    top: 50%;
    right: 0.5rem;
    cursor: pointer;
    transform: translateY(-50%);
}

.inlay-alert button.close {
    background: none;
    border: none;
    padding: 0;
    font: inherit;
    outline: inherit;
    color: white;
    cursor: pointer;
    position: absolute;
    top: 50%;
    right: 0.5rem;
    transform: translateY(-50%);
}

.inlay-alert button.close i {
    color: inherit;
}
