/* ==========================================================================
   STARGATE 42 — DONATE (BASE)
   Estruturas compartilhadas: cartão, grid, HUD, lista de doações, collapse e responsivo.
   ========================================================================== */

/* ---------- WRAPPER / CARDS ------------------------------------------------ */

.donate-banner {
    display: block;
    padding: 14px 16px;
    border-radius: 14px;
    background: linear-gradient(180deg, rgba(255, 255, 255, .05), transparent), var(--card, #0f172a);
    border: 1px solid var(--border, rgba(255, 255, 255, .06));
    box-shadow: 0 8px 28px rgba(0, 0, 0, .24);
}

.donate-banner--split {
    padding: 0;
    background: transparent;
    border: 0;
    box-shadow: none;
    margin-bottom: clamp(12px, 1.8vw, 24px);
}

.donate-banner .db-grid {
    display: grid;
    grid-template-columns: minmax(260px, 320px) minmax(0, 1fr);
    gap: 16px;
    align-items: center;
}

.donate-banner .db-card {
    padding: 14px 16px;
    border-radius: 14px;
    border: 1px solid rgba(255, 255, 255, .06);
    background:
        radial-gradient(90% 120% at 100% -20%, rgba(89, 166, 255, .14), rgba(89, 166, 255, 0) 60%),
        linear-gradient(180deg, rgba(255, 255, 255, .04), rgba(255, 255, 255, .01) 40%, rgba(0, 0, 0, .08));
    box-shadow: 0 6px 20px rgba(0, 0, 0, .28);
}

.donate-banner .db-card--left {
    background:
        radial-gradient(120% 100% at -10% 0%, rgba(255, 214, 102, .16), rgba(255, 214, 102, 0) 60%),
        linear-gradient(180deg, rgba(255, 255, 255, .04), rgba(255, 255, 255, .01) 40%, rgba(0, 0, 0, .08));
}

.donate-banner .db-card--right {
    position: relative;
}

/* ---------- TIPOGRAFIA BÁSICA ---------------------------------------------- */

.db-title {
    margin: 0;
    font-weight: 800;
    font-size: 1.15rem;
    color: #fff;
}

.db-sub {
    margin: 0;
    color: #cfd8e3;
    font-size: .92rem;
    line-height: 1.5;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    line-clamp: 2;
    overflow: hidden;
}

/* ---------- HUD / TELEMETRIA ---------------------------------------------- */

.db-hud {
    --bd: #223044;
    --panel: #0a111b;
    position: relative;
    display: grid;
    grid-template-columns: 14px auto auto 1fr auto;
    align-items: center;
    gap: 10px;
    padding: 8px 10px;
    margin-bottom: 8px;
    border: 1px solid var(--bd);
    border-radius: 12px;
    background:
        radial-gradient(120% 80% at 100% -10%, rgba(124, 199, 255, .18) 0%, rgba(124, 199, 255, 0) 55%),
        linear-gradient(180deg, #0c1420 0%, var(--panel) 100%),
        repeating-linear-gradient(90deg, rgba(255, 255, 255, .035), rgba(255, 255, 255, .035) 1px, transparent 1px, transparent 3px);
    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .04);
    font-size: .88rem;
    color: #cfe6ff;
}

.db-hud .hud-led {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #6df2b3;
    box-shadow: 0 0 10px #6df2b3;
}

.db-hud .hud-label {
    opacity: .8;
}

.db-hud .hud-amount {
    font-weight: 800;
    color: #8ef39a;
    font-variant-numeric: tabular-nums;
}

.db-hud .hud-donor b {
    color: #e6f1ff;
}

.db-hud .hud-time {
    opacity: .75;
    font-size: .8rem;
}

/* ---------- LISTA DE DOAÇÕES ---------------------------------------------- */

.last-donations {
    list-style: none;
    padding: 10px 10px 12px;
    margin: 0;
    display: grid;
    gap: 10px;
}

.dnr-item {
    position: relative;
    padding: 10px 10px 8px;
    border-radius: 12px;
    background: linear-gradient(180deg, rgba(89, 166, 255, .07), rgba(89, 166, 255, 0));
    border: 1px solid rgba(89, 166, 255, .15);
    overflow: hidden;
}

.dnr-item::before {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    background: linear-gradient(90deg, rgba(124, 199, 255, .06), transparent 25%, transparent 75%, rgba(124, 199, 255, .06));
    mix-blend-mode: screen;
    opacity: .4;
}

.row-top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
}

.dnr-left {
    display: flex;
    align-items: center;
    gap: 10px;
    min-width: 0;
}

.avatar {
    width: 22px;
    height: 22px;
    border-radius: 6px;
    transform: rotate(45deg);
    background: linear-gradient(180deg, #4ef1c8, #32d0ff);
    border: 1px solid rgba(255, 255, 255, .35);
    display: grid;
    place-items: center;
    color: #08131c;
    font-weight: 900;
    font-size: .8rem;
}

.avatar>* {
    transform: rotate(-45deg);
}

.dnr-name {
    font-weight: 800;
    color: #e6f1ff;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.dnr-time {
    font-size: .78rem;
    color: #9fb4d0;
    margin-left: 6px;
    white-space: nowrap;
}

/* ---------- EXTRA / COLLAPSE ---------------------------------------------- */

.dnr-empty {
    text-align: center;
    color: #aabbd3;
    padding: 16px 8px;
    border: 1px dashed rgba(124, 199, 255, .25);
    border-radius: 10px;
}

.db-preview {
    margin-top: .6rem;
    opacity: 1;
    transition: opacity .25s ease;
}

.db-extra {
    margin-top: .6rem;
    border-radius: 14px;
    border: 1px solid #223044;
    background:
        radial-gradient(120% 80% at 100% -10%, rgba(89, 166, 255, .18) 0%, rgba(89, 166, 255, 0) 50%),
        linear-gradient(180deg, #0c1420 0%, #0a111b 100%),
        repeating-linear-gradient(0deg, rgba(255, 255, 255, 0.035), rgba(255, 255, 255, 0.035) 1px, transparent 1px, transparent 3px);
    overflow: hidden;
}

/* ---------- RESPONSIVO ---------------------------------------------------- */

@media (max-width: 980px) {
    .donate-banner .db-grid {
        grid-template-columns: 1fr;
        gap: 14px;
    }
}