/* Donation Theme Renderer v2.0 */

.theme-dark {
    --page-surface: rgba(18, 25, 44, 0.94);
    --page-border: rgba(255, 255, 255, 0.10);
}

.theme-light {
    --page-surface: rgba(255, 255, 255, 0.96);
    --page-border: rgba(0, 0, 0, 0.10);
}

.theme-light,
.theme-light input,
.theme-light textarea,
.theme-light select {
    color: #111827;
}

.theme-light input,
.theme-light textarea,
.theme-light select {
    background: rgba(255, 255, 255, 0.92);
    border-color: rgba(0, 0, 0, 0.12);
}

.theme-light .donate-card {
    box-shadow: 0 24px 70px rgba(0, 0, 0, 0.12);
}

.theme-light .panel-heading p,
.theme-light .form-group small,
.theme-light .payment-note p,
.theme-light .tracking-link-box,
.theme-light .donate-profile p {
    color: #4b5563;
}

.theme-glass {
    --page-surface: rgba(18, 25, 44, 0.55);
    --page-border: rgba(255, 255, 255, 0.18);
}

.theme-glass .donate-card {
    backdrop-filter: blur(22px);
}

.theme-gradient {
    --page-surface:
        linear-gradient(
            145deg,
            rgba(30, 21, 61, 0.96),
            rgba(10, 38, 66, 0.96)
        );
    --page-border: rgba(255, 255, 255, 0.13);
}

.themed-donate-body {
    min-height: 100vh;
    color: var(--theme-text, #fff);
    background:
        radial-gradient(
            circle at top left,
            color-mix(in srgb, var(--donate-accent), transparent 72%),
            transparent 34%
        ),
        radial-gradient(
            circle at bottom right,
            color-mix(in srgb, var(--donate-accent), transparent 82%),
            transparent 32%
        ),
        var(--theme-background, #070b17);
}

.themed-donate-body .donate-card {
    color: var(--theme-text, #fff);
    background: var(--page-surface);
    border-color: var(--page-border);
}

.themed-donate-body .donate-profile h1,
.themed-donate-body .donate-profile p,
.themed-donate-body .donate-profile .creator-name {
    color: var(--theme-text, #fff);
}

.themed-donate-body .eyebrow {
    color: color-mix(
        in srgb,
        var(--donate-accent),
        white 35%
    );
}

.card-square .donate-card {
    border-radius: 0;
}

.card-square .payment-box,
.card-square input,
.card-square textarea,
.card-square button {
    border-radius: 0;
}

.card-soft .donate-card {
    border-radius: 12px;
}

.card-rounded .donate-card {
    border-radius: 28px;
}

.donation-cover {
    position: relative;
    width: 100%;
    height: 280px;
    overflow: hidden;
    margin-bottom: 26px;
    border: 1px solid rgba(255, 255, 255, 0.10);
    border-radius: 28px;
    box-shadow: 0 22px 70px rgba(0, 0, 0, 0.25);
}

.donation-cover::after {
    position: absolute;
    inset: 0;
    content: "";
    background:
        linear-gradient(
            to bottom,
            transparent 50%,
            color-mix(
                in srgb,
                var(--theme-background),
                transparent 30%
            )
        );
    pointer-events: none;
}

.donation-cover img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.social-links {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 17px;
}

.social-links a {
    padding: 7px 12px;
    border: 1px solid color-mix(
        in srgb,
        var(--donate-accent),
        transparent 55%
    );
    border-radius: 999px;
    color: var(--theme-text, #fff);
    text-decoration: none;
    background: color-mix(
        in srgb,
        var(--donate-accent),
        transparent 88%
    );
    font-size: 0.85rem;
    font-weight: 800;
    transition:
        transform 0.2s ease,
        background 0.2s ease;
}

.social-links a:hover {
    transform: translateY(-2px);
    background: color-mix(
        in srgb,
        var(--donate-accent),
        transparent 75%
    );
}

.cover-preview {
    height: 190px;
    overflow: hidden;
    border: 1px solid var(--border);
    border-radius: 16px;
}

.cover-preview img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

@media (max-width: 700px) {
    .donation-cover {
        height: 180px;
        border-radius: 18px;
    }

    .social-links {
        gap: 6px;
    }

    .social-links a {
        padding: 6px 10px;
        font-size: 0.8rem;
    }
}

/* EP30 R1A: unified profile media hero */
.donation-cover {
    min-height: var(--cover-height, 300px);
    height: auto;
    display: grid;
    place-items: stretch;
    isolation: isolate;
    background:
        radial-gradient(circle at 20% 0%, color-mix(in srgb, var(--donate-accent), transparent 65%), transparent 44%),
        linear-gradient(145deg, #11152d, var(--theme-background, #070b17));
}
.donation-cover::after { display: none; }
.donation-cover-media,
.donation-cover-overlay {
    position: absolute;
    inset: 0;
}
.donation-cover-media {
    z-index: -2;
    overflow: hidden;
}
.donation-cover-media img,
.donation-cover-media video {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: var(--cover-fit, cover);
    object-position: var(--cover-position, center);
    filter: blur(var(--cover-blur, 0px));
    transform: scale(1.035);
}
.donation-cover-overlay {
    z-index: -1;
    background:
        linear-gradient(180deg, rgba(4, 5, 16, .28), rgba(4, 5, 16, .78)),
        rgba(4, 5, 16, var(--cover-overlay, .35));
}
.donation-cover-content {
    min-height: var(--cover-height, 300px);
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
    width: min(100%, 980px);
    padding: 38px 38px 34px;
    margin: 0 auto;
    text-align: left;
}
.donation-cover-content .eyebrow {
    margin-bottom: 8px;
}
.donation-cover-content .donate-avatar {
    width: 108px;
    height: 108px;
    margin: 0 0 16px;
    border: 4px solid rgba(255,255,255,.2);
    box-shadow: 0 18px 44px rgba(0,0,0,.38);
}
.donation-cover-content h1 {
    max-width: 850px;
    margin: 8px 0 12px;
    color: #fff;
    text-shadow: 0 4px 22px rgba(0,0,0,.45);
}
.donation-cover-content p {
    max-width: 720px;
    margin: 0;
    color: rgba(255,255,255,.84) !important;
    line-height: 1.7;
    text-shadow: 0 3px 14px rgba(0,0,0,.4);
}
.donation-cover-content .creator-name {
    margin-top: 14px;
    color: #fff !important;
    background: rgba(7, 8, 22, .48);
    backdrop-filter: blur(10px);
}
.donation-cover-content .social-links a {
    color: #fff;
    border-color: rgba(255,255,255,.24);
    background: rgba(7,8,22,.45);
    backdrop-filter: blur(8px);
}

.donate-profile-cover-spacer{
    min-height:var(--cover-height,300px);
    padding:0;
}
.donation-profile-band{
    width:min(100%,980px);
    margin:-52px auto 22px;
    padding:0 18px;
    position:relative;
    z-index:7;
}
.donation-profile-card{
    display:grid;
    gap:14px;
    padding:18px;
    border:1px solid rgba(255,255,255,.12);
    border-radius:28px;
    background:linear-gradient(180deg,rgba(10,15,32,.96),rgba(8,12,26,.95));
    box-shadow:0 24px 54px rgba(0,0,0,.26);
    backdrop-filter:blur(18px);
}
.donation-profile-card-head{
    display:flex;
    align-items:flex-start;
    gap:16px;
}
.donation-profile-card-avatar{
    width:92px;
    height:92px;
    flex:0 0 92px;
    border-radius:24px;
    overflow:hidden;
    display:grid;
    place-items:center;
    border:3px solid rgba(255,255,255,.14);
    background:linear-gradient(135deg,var(--donate-accent,#7c5cff),#182a53);
    color:#fff;
    font-size:32px;
    font-weight:1000;
}
.donation-profile-card-avatar img{width:100%;height:100%;object-fit:cover}
.donation-profile-card-copy{min-width:0;display:grid;gap:7px;align-content:start}
.donation-profile-card-copy strong{color:#fff;font-size:32px;line-height:1.1}
.donation-profile-card-handle{display:inline-flex;align-items:center;width:max-content;min-height:34px;padding:0 14px;border-radius:999px;border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.05);color:#d8e1ff;font-size:18px;font-weight:900}
.donation-profile-card-copy p{margin:0;max-width:760px;color:#a6b0cf;line-height:1.55;font-size:14px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.donation-profile-card-badges{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.donation-profile-card-foot{display:grid;gap:12px}
.donation-profile-live-pill{display:inline-flex;align-items:center;gap:9px;width:max-content;min-height:34px;padding:0 14px;border-radius:999px;background:rgba(18,196,113,.12);border:1px solid rgba(79,234,154,.26);color:#8ef0bc;font-size:12px;font-weight:900}
.donation-profile-live-pill i{width:10px;height:10px;border-radius:50%;background:#28d67f;box-shadow:0 0 0 5px rgba(40,214,127,.16)}
.donation-profile-socials{
    justify-content:flex-start;
    width:100%;
    max-width:none;
    margin-top:0;
    padding:12px;
    border-color:rgba(255,255,255,.08);
    background:linear-gradient(135deg,rgba(255,255,255,.03),rgba(255,255,255,.02));
    box-shadow:none;
}
.donation-profile-card-seasonal .seasonal-public-banner{width:100%;margin-top:0}
.donation-cover.is-zaven-free-ad .donation-cover-content.donate-profile-cover-spacer{display:none!important}
.donation-cover.is-zaven-free-ad + .donation-profile-band{margin-top:-34px}
.donation-cover.no-media .donation-cover-overlay {
    background:
        radial-gradient(circle at 25% 0%, color-mix(in srgb, var(--donate-accent), transparent 58%), transparent 45%),
        linear-gradient(145deg, rgba(8,10,28,.45), rgba(4,5,18,.82));
}
@media (max-width: 700px) {
    .donation-cover,
    .donation-cover-content {
        min-height: max(220px, var(--cover-height, 260px));
    }
    .donation-cover-content {
        align-items: center;
        padding: 28px 16px;
        text-align: center;
    }
    .donation-cover-content .donate-avatar {
        width: 92px;
        height: 92px;
        border-radius: 25px;
    }
}

/* EP86 R281: donate page hero + social dock refresh */
.social-links.social-petal-links{
    display:flex;
    justify-content:flex-start;
    align-items:center;
    flex-wrap:wrap;
    gap:14px;
    width:100%;
    max-width:740px;
    margin-top:18px;
    padding:14px;
    border:1px solid rgba(255,255,255,.12);
    border-radius:22px;
    background:linear-gradient(135deg,rgba(6,10,28,.62),rgba(12,18,42,.36));
    box-shadow:0 16px 34px rgba(0,0,0,.28);
    backdrop-filter:blur(14px);
}
.social-petal-links .social-petal-group{
    display:grid;
    grid-template-columns:56px 56px;
    grid-template-rows:56px 56px;
    gap:6px;
}
.social-petal-links .social-petal{
    padding:0;
    width:56px;
    height:56px;
    display:grid;
    place-items:center;
    border:0;
    background:#fff;
    box-shadow:rgba(50,50,93,.18) 0 8px 18px -10px,rgba(0,0,0,.24) 0 10px 18px -12px;
    transition:transform .18s ease,background .18s ease,box-shadow .18s ease;
    overflow:hidden;
    -webkit-tap-highlight-color:transparent;
}
.social-petal-links .social-petal-1{border-radius:56px 7px 7px 7px}
.social-petal-links .social-petal-2{border-radius:7px 56px 7px 7px}
.social-petal-links .social-petal-3{border-radius:7px 7px 7px 56px}
.social-petal-links .social-petal-4{border-radius:7px 7px 56px 7px}
.social-petal-links .social-petal img{width:26px;height:26px;object-fit:contain;filter:none!important;transform:none!important}
.social-petal-links .social-petal b{color:#555a71;font-size:18px;line-height:1}
.social-petal-links .social-petal:not(.is-empty):hover{transform:translateY(-2px) scale(1.05);background:var(--social-hover,var(--donate-accent,#7c5cff));box-shadow:0 16px 26px rgba(0,0,0,.22)}
.social-petal-links .social-petal:not(.is-empty):hover img{filter:none!important}
.social-petal-links .social-petal:not(.is-empty):hover b{color:#fff}
.social-petal-links .social-petal.is-empty{opacity:0;pointer-events:none}
.donate-layout{
    gap:24px;
    align-items:start;
}
.donate-card{
    border:1px solid rgba(255,255,255,.1);
    border-radius:24px;
    background:linear-gradient(180deg,rgba(13,19,36,.96),rgba(10,14,28,.94));
    box-shadow:0 20px 48px rgba(0,0,0,.20);
}
.panel-heading{
    margin-bottom:18px;
}
.panel-heading h2{
    margin:0 0 6px;
    font-size:clamp(1.4rem,2vw,1.9rem);
}
.panel-heading p{
    margin:0;
    color:var(--muted);
}
.payment-card{
    top:22px;
}
.payment-box{
    border-radius:18px;
    background:linear-gradient(180deg,rgba(255,255,255,.055),rgba(255,255,255,.03));
}
.supporter-member-strip,
.donate-mini-leaderboard,
.donation-sticker-section,
.donation-alert-style-section,
.payment-channel-selector,
.payment-status-list{
    border-radius:18px;
}
@media(max-width:700px){
    .social-links.social-petal-links{justify-content:center;padding:12px;max-width:100%}
    .social-petal-links .social-petal-group{grid-template-columns:50px 50px;grid-template-rows:50px 50px}
    .social-petal-links .social-petal{width:50px;height:50px}
    .social-petal-links .social-petal-1{border-radius:50px 5px 5px 5px}
    .social-petal-links .social-petal-2{border-radius:5px 50px 5px 5px}
    .social-petal-links .social-petal-3{border-radius:5px 5px 5px 50px}
    .social-petal-links .social-petal-4{border-radius:5px 5px 50px 5px}
    .social-petal-links .social-petal img{width:24px;height:24px}
}


@media (max-width: 860px) {
    .donation-profile-band{margin:-38px auto 18px;padding:0 14px}
    .donation-profile-card-copy strong{font-size:26px}
    .donation-profile-card-handle{font-size:15px}
}
@media (max-width: 700px) {
    .donation-profile-band{margin:-28px auto 16px;padding:0 12px}
    .donation-profile-card{padding:14px;border-radius:22px}
    .donation-profile-card-head{flex-direction:column;align-items:flex-start}
    .donation-profile-card-avatar{width:78px;height:78px;flex-basis:78px;border-radius:20px}
    .donation-profile-card-copy strong{font-size:22px}
    .donation-profile-card-handle{font-size:14px;min-height:30px;padding:0 12px}
    .donation-profile-card-copy p{font-size:12px;-webkit-line-clamp:3}
    .donation-profile-socials{justify-content:center}
}


/* V37 safety: never let profile avatar media escape its card even if legacy styles conflict */
.donation-profile-card-avatar{width:92px!important;height:92px!important;max-width:92px!important;max-height:92px!important;overflow:hidden!important;flex:0 0 92px!important}
.donation-profile-card-avatar img{display:block!important;width:100%!important;height:100%!important;max-width:100%!important;max-height:100%!important;object-fit:cover!important;object-position:center!important}
@media(max-width:700px){.donation-profile-card-avatar{width:78px!important;height:78px!important;max-width:78px!important;max-height:78px!important;flex-basis:78px!important}}

/* V38 — clean profile card like modern support pages (real HTML, not a flat image) */
.donation-cover{
    width:min(calc(100% - 32px),980px);
    margin:24px auto 0;
    border-radius:28px 28px 0 0;
    border-color:rgba(255,255,255,.16);
    border-bottom:0;
    box-shadow:0 18px 44px rgba(0,0,0,.20);
}
.donation-cover.is-zaven-default-cover .donation-cover-overlay{display:none!important}
.donation-cover.is-zaven-default-cover .donation-cover-media img{
    object-fit:cover!important;
    object-position:center!important;
    filter:none!important;
    transform:none!important;
}
.donation-cover.is-zaven-free-ad{
    width:min(calc(100% - 32px),980px);
    margin:24px auto 0;
    border-radius:28px 28px 0 0;
}
.donation-profile-band{
    width:min(calc(100% - 32px),980px);
    margin:0 auto 26px;
    padding:0;
    position:relative;
    z-index:8;
}
.donation-cover.is-zaven-free-ad + .donation-profile-band{margin-top:0}
.donation-profile-card.donation-profile-card-v2{
    display:block;
    padding:0 26px 22px;
    border:1px solid rgba(16,24,40,.09);
    border-top:0;
    border-radius:0 0 28px 28px;
    background:#fff;
    color:#172033;
    box-shadow:0 20px 46px rgba(15,31,63,.14);
    backdrop-filter:none;
}
.donation-profile-card-main{
    display:flex;
    align-items:flex-start;
    gap:20px;
    min-height:132px;
}
.donation-profile-card-v2 .donation-profile-card-avatar{
    width:118px!important;
    height:118px!important;
    flex:0 0 118px!important;
    margin-top:-58px;
    border:7px solid #fff!important;
    border-radius:28px!important;
    background:linear-gradient(145deg,#eff5ff,#fff)!important;
    box-shadow:0 14px 28px rgba(39,70,120,.16)!important;
    color:#3368ef!important;
    font-size:34px!important;
    overflow:hidden!important;
    position:relative;
    z-index:2;
}
.donation-profile-card-v2 .donation-profile-card-avatar img{
    width:100%!important;
    height:100%!important;
    max-width:100%!important;
    max-height:100%!important;
    display:block!important;
    object-fit:cover!important;
}
.donation-profile-card-v2 .donation-profile-card-copy{
    min-width:0;
    flex:1;
    display:grid;
    gap:7px;
    padding-top:22px;
    color:#172033;
}
.donation-profile-name-row{
    display:flex;
    align-items:center;
    gap:9px;
    min-width:0;
}
.donation-profile-card-v2 .donation-profile-name-row>strong{
    min-width:0;
    color:#172033!important;
    font-size:clamp(22px,3vw,32px)!important;
    font-weight:950;
    line-height:1.1;
    overflow-wrap:anywhere;
}
.donation-profile-zaven-check{
    width:24px;
    height:24px;
    flex:0 0 24px;
    display:grid;
    place-items:center;
    border-radius:50%;
    background:#3378ff;
    color:#fff;
    font-size:13px;
    font-weight:1000;
    box-shadow:0 5px 14px rgba(51,120,255,.24);
}
.donation-profile-handle-row{
    display:flex;
    align-items:center;
    gap:6px;
    width:max-content;
    max-width:100%;
}
.donation-profile-card-v2 .donation-profile-card-handle{
    min-height:31px;
    display:inline-flex;
    align-items:center;
    padding:0 12px;
    border:1px solid #e3e8f2;
    border-radius:999px;
    background:#f3f6fa;
    color:#687287!important;
    font-size:14px;
    font-weight:850;
}
.donation-profile-copy-handle{
    width:31px;
    height:31px;
    display:grid;
    place-items:center;
    padding:0;
    border:1px solid #e3e8f2;
    border-radius:10px;
    background:#f8fafc;
    color:#77829a;
    font-size:17px;
    cursor:pointer;
    transition:.16s ease;
}
.donation-profile-copy-handle:hover,.donation-profile-copy-handle.is-copied{
    color:#246bff;
    border-color:#bfd1ff;
    background:#edf3ff;
}
.donation-profile-card-v2 .donation-profile-card-copy p{
    margin:1px 0 0;
    max-width:700px;
    color:#7b8498!important;
    font-size:12px;
    line-height:1.5;
    text-shadow:none!important;
    display:-webkit-box;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
    overflow:hidden;
}
.donation-profile-card-v2 .donation-profile-card-badges{
    display:flex;
    align-items:center;
    gap:7px;
    flex-wrap:wrap;
    margin-top:2px;
}
.donation-profile-card-v2 .supporter-theme-public-badge,
.donation-profile-card-v2 .supporter-theme-platform-branding{
    margin-top:0;
    color:#6c7485;
    background:#f7f9fc;
    border-color:#e4e8ef;
    text-shadow:none;
}
.donation-profile-card-divider{
    height:1px;
    margin:0 0 16px;
    background:#e8ecf3;
}
.donation-profile-card-status-row{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:14px;
    min-height:44px;
}
.donation-profile-card-v2 .donation-profile-live-pill{
    display:inline-flex;
    align-items:center;
    gap:9px;
    min-height:34px;
    padding:0;
    border:0;
    background:transparent;
    color:#687287;
    font-size:13px;
    font-weight:850;
}
.donation-profile-card-v2 .donation-profile-live-pill i{
    width:9px;
    height:9px;
    border-radius:50%;
    background:#22c983;
    box-shadow:0 0 0 6px rgba(34,201,131,.10);
}
.donation-profile-payment-icons{
    display:flex;
    align-items:center;
    justify-content:flex-end;
    gap:7px;
}
.donation-profile-payment-icon{
    width:42px;
    height:34px;
    display:grid;
    place-items:center;
    overflow:hidden;
    border:1px solid #e5eaf2;
    border-radius:10px;
    background:#fff;
    color:#64748b;
    box-shadow:0 3px 10px rgba(31,49,83,.06);
}
.donation-profile-payment-icon img{
    width:30px;
    height:24px;
    display:block;
    object-fit:contain;
}
.donation-profile-payment-icon b{font-size:10px}
.donation-profile-card-v2 .donation-profile-socials{
    display:flex;
    align-items:center;
    justify-content:flex-start;
    flex-wrap:wrap;
    gap:8px;
    width:100%;
    max-width:none;
    margin:14px 0 0;
    padding:12px 0 0;
    border:0;
    border-top:1px solid #eef1f5;
    border-radius:0;
    background:transparent;
    box-shadow:none;
    backdrop-filter:none;
}
.donation-profile-card-v2 .donation-profile-socials .social-petal-group{
    display:contents!important;
}
.donation-profile-card-v2 .donation-profile-socials .social-petal{
    width:42px!important;
    height:42px!important;
    padding:0!important;
    display:grid!important;
    place-items:center!important;
    border:1px solid #e4e9f1!important;
    border-radius:12px!important;
    background:#f8fafc!important;
    box-shadow:none!important;
    overflow:hidden!important;
}
.donation-profile-card-v2 .donation-profile-socials .social-petal:hover{
    transform:translateY(-2px)!important;
    border-color:color-mix(in srgb,var(--social-hover,var(--donate-accent,#7c5cff)),white 55%)!important;
    background:color-mix(in srgb,var(--social-hover,var(--donate-accent,#7c5cff)),white 91%)!important;
}
.donation-profile-card-v2 .donation-profile-socials .social-petal img{
    width:24px!important;
    height:24px!important;
    object-fit:contain!important;
}
.donation-profile-card-v2 .donation-profile-socials .social-petal b{
    color:#667085!important;
    font-size:13px!important;
}
.donation-profile-card-v2 .donation-profile-socials .social-petal.is-empty{display:none!important}
.donation-profile-card-v2 .donation-profile-card-seasonal{margin-top:14px}
.donation-profile-card-v2 .seasonal-public-banner{margin:0;width:100%}

@media(max-width:700px){
    .donation-cover,.donation-cover.is-zaven-free-ad{
        width:min(calc(100% - 20px),980px);
        margin-top:10px;
        border-radius:20px 20px 0 0;
    }
    .donation-profile-band{
        width:min(calc(100% - 20px),980px);
        margin-bottom:18px;
    }
    .donation-profile-card.donation-profile-card-v2{
        padding:0 16px 16px;
        border-radius:0 0 20px 20px;
    }
    .donation-profile-card-main{gap:12px;min-height:106px}
    .donation-profile-card-v2 .donation-profile-card-avatar{
        width:84px!important;
        height:84px!important;
        flex-basis:84px!important;
        margin-top:-34px;
        border-width:5px!important;
        border-radius:22px!important;
    }
    .donation-profile-card-v2 .donation-profile-card-copy{padding-top:13px;gap:5px}
    .donation-profile-card-v2 .donation-profile-name-row>strong{font-size:19px!important}
    .donation-profile-zaven-check{width:20px;height:20px;flex-basis:20px;font-size:11px}
    .donation-profile-card-v2 .donation-profile-card-handle{font-size:12px;min-height:28px}
    .donation-profile-copy-handle{width:28px;height:28px}
    .donation-profile-card-v2 .donation-profile-card-copy p{font-size:11px;-webkit-line-clamp:1}
    .donation-profile-card-status-row{align-items:flex-start;flex-direction:column;gap:8px}
    .donation-profile-payment-icons{justify-content:flex-start}
    .donation-profile-card-v2 .donation-profile-socials{gap:6px}
    .donation-profile-card-v2 .donation-profile-socials .social-petal{width:38px!important;height:38px!important;border-radius:11px!important}
    .donation-profile-card-v2 .donation-profile-socials .social-petal img{width:22px!important;height:22px!important}
}


/* V39 — mobile readability boost for donate form */
.donate-layout > .donate-card,
.donate-layout > .payment-card{
    padding:22px;
}
.donate-layout form{
    display:grid;
    gap:16px;
}
.panel-heading h2{
    font-size:clamp(1.45rem,2.2vw,2rem);
    line-height:1.15;
}
.panel-heading p,
.form-group small,
.payment-channel-selector > p,
.donation-time-action-head p,
.donation-alert-style-section > p,
.donation-sticker-section > p,
.donation-alert-font-control small,
.slip-upload-info small,
.tracking-link-box,
.payment-note p{
    color:rgba(255,255,255,.78);
    font-size:14px;
    line-height:1.55;
}
.theme-light .panel-heading p,
.theme-light .form-group small,
.theme-light .payment-channel-selector > p,
.theme-light .donation-time-action-head p,
.theme-light .donation-alert-style-section > p,
.theme-light .donation-sticker-section > p,
.theme-light .donation-alert-font-control small,
.theme-light .slip-upload-info small,
.theme-light .tracking-link-box,
.theme-light .payment-note p{
    color:#5b6477;
}
.amount-presets{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(110px,1fr));
    gap:10px;
}
.amount-presets button,
.btn.donate-primary,
.copy-link,
.payment-box .btn,
.promptpay-payload-box .btn,
.supporter-member-strip-actions a,
.tracking-link-box a{
    min-height:48px;
    font-size:15px;
    font-weight:800;
}
.amount-presets button{
    border-radius:14px;
    padding:0 14px;
    border:1px solid rgba(255,255,255,.16);
    background:linear-gradient(180deg,rgba(255,255,255,.08),rgba(255,255,255,.04));
    color:inherit;
}
.form-group label,
.payment-channel-selector h3,
.donation-time-action-head h3,
.donation-alert-style-section h3,
.donation-sticker-section h3,
.donation-alert-font-control label{
    display:block;
    margin:0 0 8px;
    font-size:15px;
    font-weight:900;
    line-height:1.35;
}
input[type="text"],
input[type="email"],
input[type="number"],
input[type="url"],
input[type="tel"],
input[type="search"],
select,
textarea{
    width:100%;
    min-height:52px;
    padding:14px 16px;
    border-radius:14px;
    font-size:16px;
    line-height:1.45;
    border:1px solid rgba(255,255,255,.16);
    background:rgba(255,255,255,.06);
    color:inherit;
    box-sizing:border-box;
}
textarea{
    min-height:120px;
    resize:vertical;
}
.theme-light input[type="text"],
.theme-light input[type="email"],
.theme-light input[type="number"],
.theme-light input[type="url"],
.theme-light input[type="tel"],
.theme-light input[type="search"],
.theme-light select,
.theme-light textarea{
    background:#fff;
    border-color:#d6dbea;
    color:#111827;
}
.form-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:14px;
}
.donation-time-action-section,
.donation-alert-style-section,
.donation-sticker-section,
.payment-channel-selector,
.supporter-member-strip,
.donate-mini-leaderboard{
    padding:16px;
    border:1px solid rgba(255,255,255,.10);
    background:linear-gradient(180deg,rgba(255,255,255,.05),rgba(255,255,255,.025));
}
.theme-light .donation-time-action-section,
.theme-light .donation-alert-style-section,
.theme-light .donation-sticker-section,
.theme-light .payment-channel-selector,
.theme-light .supporter-member-strip,
.theme-light .donate-mini-leaderboard{
    border-color:#dde3f1;
    background:linear-gradient(180deg,rgba(255,255,255,.96),rgba(248,250,255,.95));
}
.donation-time-action-grid,
.donation-alert-style-grid,
.donation-sticker-grid,
.payment-channel-options{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:12px;
}
.donation-time-action-card,
.donation-alert-style-card,
.donation-sticker-card,
.payment-channel-option-card,
.donation-time-fixed-card,
.payment-box{
    min-height:84px;
    padding:14px;
    border-radius:16px;
    box-sizing:border-box;
}
.payment-channel-option-card{
    display:flex;
    align-items:flex-start;
    gap:12px;
}
.payment-channel-option-card i{
    width:46px;
    height:46px;
    flex:0 0 46px;
    border-radius:14px;
    display:grid;
    place-items:center;
    background:rgba(255,255,255,.08);
}
.payment-channel-option-card strong,
.donation-time-action-card b,
.donation-alert-style-card strong,
.donation-sticker-card strong{
    display:block;
    font-size:15px;
    line-height:1.35;
}
.payment-channel-option-card small,
.donation-time-action-card small,
.donation-alert-style-card small,
.donation-sticker-card small,
.donation-time-action-note,
.donation-sticker-note{
    display:block;
    margin-top:5px;
    font-size:13px;
    line-height:1.5;
    color:rgba(255,255,255,.74);
}
.theme-light .payment-channel-option-card small,
.theme-light .donation-time-action-card small,
.theme-light .donation-alert-style-card small,
.theme-light .donation-sticker-card small,
.theme-light .donation-time-action-note,
.theme-light .donation-sticker-note{
    color:#667085;
}
.slip-upload-shell{
    padding:14px;
    border-radius:18px;
    border:1px dashed rgba(255,255,255,.18);
    background:linear-gradient(180deg,rgba(255,255,255,.04),rgba(255,255,255,.025));
}
.theme-light .slip-upload-shell{
    border-color:#cfd6e6;
    background:#f8faff;
}
.slip-upload-info strong{font-size:15px;line-height:1.4}
.tracking-link-box{
    margin-top:16px;
    padding:14px 16px;
    border-radius:16px;
    border:1px solid rgba(255,255,255,.08);
    background:rgba(255,255,255,.03);
}
@media (max-width: 860px){
    .donate-layout > .donate-card,
    .donate-layout > .payment-card{padding:18px}
}
@media (max-width: 700px){
    .donate-layout{gap:18px}
    .donate-layout > .donate-card,
    .donate-layout > .payment-card{
        padding:16px;
        border-radius:20px;
    }
    .panel-heading{margin-bottom:14px}
    .panel-heading h2{font-size:1.5rem}
    .panel-heading p{font-size:13px}
    .amount-presets{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
    .amount-presets button,
    .btn.donate-primary,
    .copy-link,
    .payment-box .btn,
    .promptpay-payload-box .btn,
    .supporter-member-strip-actions a,
    .tracking-link-box a{min-height:46px;font-size:14px}
    .form-grid,
    .donation-time-action-grid,
    .donation-alert-style-grid,
    .donation-sticker-grid,
    .payment-channel-options{grid-template-columns:1fr}
    .form-group label,
    .payment-channel-selector h3,
    .donation-time-action-head h3,
    .donation-alert-style-section h3,
    .donation-sticker-section h3,
    .donation-alert-font-control label{font-size:14px;margin-bottom:7px}
    .panel-heading p,
    .form-group small,
    .payment-channel-selector > p,
    .donation-time-action-head p,
    .donation-alert-style-section > p,
    .donation-sticker-section > p,
    .donation-alert-font-control small,
    .slip-upload-info small,
    .tracking-link-box,
    .payment-note p{font-size:13px;line-height:1.5}
    input[type="text"],
    input[type="email"],
    input[type="number"],
    input[type="url"],
    input[type="tel"],
    input[type="search"],
    select,
    textarea{min-height:50px;padding:13px 14px;font-size:16px}
    textarea{min-height:110px}
    .donation-time-action-section,
    .donation-alert-style-section,
    .donation-sticker-section,
    .payment-channel-selector,
    .supporter-member-strip,
    .donate-mini-leaderboard{padding:14px;border-radius:16px}
    .payment-channel-option-card,
    .donation-time-action-card,
    .donation-alert-style-card,
    .donation-sticker-card,
    .donation-time-fixed-card,
    .payment-box{min-height:76px;padding:12px;border-radius:14px}
    .payment-channel-option-card i{width:42px;height:42px;flex-basis:42px;border-radius:12px}
    .slip-upload-shell{padding:12px;border-radius:16px}
    .tracking-link-box{padding:12px 14px;border-radius:14px}
}


/* V40 — stronger borders + clearer cards for donate options */
.donation-time-action-option,
.donation-alert-style-option,
.donation-sticker-option,
.payment-channel-option{
    display:block;
}
.donation-time-action-option input,
.donation-alert-style-option input,
.donation-sticker-option input,
.payment-channel-option input{
    position:absolute;
    opacity:0;
    pointer-events:none;
}
.donation-time-action-card,
.donation-alert-style-card,
.donation-sticker-card,
.payment-channel-option-card,
.donation-time-fixed-card{
    position:relative;
    display:block;
    border:2px solid rgba(255,255,255,.16);
    background:linear-gradient(180deg,rgba(255,255,255,.07),rgba(255,255,255,.035));
    box-shadow:0 8px 18px rgba(0,0,0,.08);
    transition:border-color .18s ease, box-shadow .18s ease, transform .18s ease, background .18s ease;
}
.theme-light .donation-time-action-card,
.theme-light .donation-alert-style-card,
.theme-light .donation-sticker-card,
.theme-light .payment-channel-option-card,
.theme-light .donation-time-fixed-card{
    border-color:#d6dcef;
    background:linear-gradient(180deg,#ffffff,#f6f8fd);
    box-shadow:0 10px 20px rgba(15,23,42,.06);
}
.donation-time-action-option:hover .donation-time-action-card,
.donation-alert-style-option:hover .donation-alert-style-card,
.donation-sticker-option:hover .donation-sticker-card,
.payment-channel-option:hover .payment-channel-option-card{
    transform:translateY(-1px);
    border-color:color-mix(in srgb,var(--donate-accent,#7c5cff),white 18%);
}
.donation-time-action-option input:checked + .donation-time-action-card,
.donation-alert-style-option input:checked + .donation-alert-style-card,
.donation-sticker-option input:checked + .donation-sticker-card,
.payment-channel-option input:checked + .payment-channel-option-card{
    border-color:var(--donate-accent,#7c5cff);
    box-shadow:0 0 0 3px color-mix(in srgb,var(--donate-accent,#7c5cff),transparent 78%), 0 12px 24px rgba(0,0,0,.12);
    background:linear-gradient(180deg,color-mix(in srgb,var(--donate-accent,#7c5cff),transparent 88%),rgba(255,255,255,.05));
}
.theme-light .donation-time-action-option input:checked + .donation-time-action-card,
.theme-light .donation-alert-style-option input:checked + .donation-alert-style-card,
.theme-light .donation-sticker-option input:checked + .donation-sticker-card,
.theme-light .payment-channel-option input:checked + .payment-channel-option-card{
    background:linear-gradient(180deg,#ffffff,color-mix(in srgb,var(--donate-accent,#7c5cff),white 92%));
}
.donation-time-action-card i{
    width:38px;
    height:38px;
    border-radius:12px;
    display:inline-grid;
    place-items:center;
    margin-bottom:10px;
    font-style:normal;
    font-size:24px;
    font-weight:1000;
    background:rgba(255,255,255,.08);
}
.donation-time-action-option.is-add .donation-time-action-card i{
    color:#4ef0d9;
    background:rgba(78,240,217,.12);
}
.donation-time-action-option.is-subtract .donation-time-action-card i{
    color:#ff7b8c;
    background:rgba(255,123,140,.12);
}
.theme-light .donation-time-action-option.is-add .donation-time-action-card i{
    color:#0ea88e;
    background:#e7fbf7;
}
.theme-light .donation-time-action-option.is-subtract .donation-time-action-card i{
    color:#d6465f;
    background:#fff0f3;
}
.donation-time-action-card b,
.donation-alert-style-card strong,
.donation-sticker-card strong,
.payment-channel-option-card strong,
.donation-time-fixed-card b{
    color:inherit;
    font-size:16px;
    font-weight:900;
}
.donation-time-action-card em,
.donation-time-fixed-card small[data-time-preview]{
    display:block;
    margin-top:10px;
    font-style:normal;
    font-size:15px;
    font-weight:900;
}
.donation-time-action-option.is-add .donation-time-action-card em,
.donation-time-fixed-card.is-add small[data-time-preview]{color:#4ef0d9}
.donation-time-action-option.is-subtract .donation-time-action-card em,
.donation-time-fixed-card.is-subtract small[data-time-preview]{color:#ff7b8c}
.theme-light .donation-time-action-option.is-add .donation-time-action-card em,
.theme-light .donation-time-fixed-card.is-add small[data-time-preview]{color:#0ea88e}
.theme-light .donation-time-action-option.is-subtract .donation-time-action-card em,
.theme-light .donation-time-fixed-card.is-subtract small[data-time-preview]{color:#d6465f}
.theme-light .donation-time-action-card b,
.theme-light .donation-alert-style-card strong,
.theme-light .donation-sticker-card strong,
.theme-light .payment-channel-option-card strong,
.theme-light .donation-time-fixed-card b{
    color:#1a2234;
}
.payment-channel-option-card small,
.donation-time-action-card small,
.donation-alert-style-card small,
.donation-sticker-card small,
.donation-time-action-note,
.donation-sticker-note{
    color:rgba(255,255,255,.84);
}
.theme-light .payment-channel-option-card small,
.theme-light .donation-time-action-card small,
.theme-light .donation-alert-style-card small,
.theme-light .donation-sticker-card small,
.theme-light .donation-time-action-note,
.theme-light .donation-sticker-note{
    color:#586174;
}
.payment-channel-option-card i{
    border:1px solid rgba(255,255,255,.10);
}
.theme-light .payment-channel-option-card i{
    border-color:#dde3f0;
    background:#f3f6fc;
}
@media (max-width:700px){
    .donation-time-action-card b,
    .donation-alert-style-card strong,
    .donation-sticker-card strong,
    .payment-channel-option-card strong,
    .donation-time-fixed-card b{font-size:15px}
    .donation-time-action-card em,
    .donation-time-fixed-card small[data-time-preview]{font-size:14px}
}


/* V41 — preset amount buttons visible and readable */
.amount-presets{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(110px,1fr));
    gap:12px;
    margin-bottom:16px;
}
.amount-presets button{
    appearance:none;
    -webkit-appearance:none;
    width:100%;
    min-height:54px;
    display:flex;
    align-items:center;
    justify-content:center;
    padding:12px 14px;
    border-radius:16px;
    border:2px solid #d5dbeb;
    background:linear-gradient(180deg,#ffffff,#f7f9fe);
    color:#142033;
    font-size:16px;
    font-weight:900;
    line-height:1.2;
    box-shadow:0 8px 18px rgba(18,30,52,.06);
    cursor:pointer;
    transition:border-color .18s ease, box-shadow .18s ease, transform .18s ease, background .18s ease, color .18s ease;
}
.amount-presets button:hover{
    transform:translateY(-1px);
    border-color:color-mix(in srgb,var(--donate-accent,#7c5cff),white 25%);
    box-shadow:0 12px 22px rgba(18,30,52,.10);
}
.amount-presets button:active{
    transform:translateY(0);
}
.amount-presets button.is-active,
.amount-presets button:focus-visible{
    outline:none;
    border-color:var(--donate-accent,#7c5cff);
    background:linear-gradient(180deg,#ffffff,color-mix(in srgb,var(--donate-accent,#7c5cff),white 90%));
    box-shadow:0 0 0 4px color-mix(in srgb,var(--donate-accent,#7c5cff),transparent 80%), 0 12px 24px rgba(18,30,52,.12);
    color:#1a1740;
}
.theme-dark .amount-presets button,
.theme-glass .amount-presets button,
.theme-gradient .amount-presets button{
    border-color:rgba(255,255,255,.14);
    background:linear-gradient(180deg,rgba(255,255,255,.08),rgba(255,255,255,.04));
    color:#ffffff;
    box-shadow:0 8px 18px rgba(0,0,0,.18);
}
.theme-dark .amount-presets button.is-active,
.theme-dark .amount-presets button:focus-visible,
.theme-glass .amount-presets button.is-active,
.theme-glass .amount-presets button:focus-visible,
.theme-gradient .amount-presets button.is-active,
.theme-gradient .amount-presets button:focus-visible{
    border-color:var(--donate-accent,#7c5cff);
    background:linear-gradient(180deg,color-mix(in srgb,var(--donate-accent,#7c5cff),transparent 84%),rgba(255,255,255,.06));
    color:#fff;
}
@media (max-width:700px){
    .amount-presets{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
    .amount-presets button{min-height:50px;padding:10px 12px;font-size:15px;border-radius:14px}
}


/* V42 — hard light-theme override: readable preset amount buttons */
body.theme-light .amount-presets button{
    color:#111827!important;
    background:linear-gradient(180deg,#ffffff 0%,#f2f5fb 100%)!important;
    border:2px solid #c8d0e2!important;
    box-shadow:0 7px 16px rgba(24,39,75,.10)!important;
    text-shadow:none!important;
    opacity:1!important;
}
body.theme-light .amount-presets button:hover{
    color:#111827!important;
    border-color:#8c9bb9!important;
    background:#ffffff!important;
}
body.theme-light .amount-presets button.is-active,
body.theme-light .amount-presets button:focus-visible,
body.theme-light .amount-presets button:focus{
    color:#211c54!important;
    border-color:var(--donate-accent,#7c5cff)!important;
    background:color-mix(in srgb,var(--donate-accent,#7c5cff),white 92%)!important;
    box-shadow:0 0 0 4px color-mix(in srgb,var(--donate-accent,#7c5cff),transparent 82%),0 8px 18px rgba(24,39,75,.12)!important;
}


.donation-profile-live-games{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}
.donation-profile-live-game-chip{display:inline-flex;align-items:center;gap:8px;min-height:38px;padding:6px 12px;border-radius:999px;background:#f5f7fc;border:1px solid #dbe2f0;color:#1c2436;font-size:13px;font-weight:800;line-height:1.25}
.donation-profile-live-game-chip img{width:20px;height:20px;border-radius:50%;object-fit:cover;flex:0 0 20px}
.theme-dark .donation-profile-live-game-chip,
body.theme-dark .donation-profile-live-game-chip{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.12);color:#fff}
@media (max-width:700px){.donation-profile-live-games{gap:8px}.donation-profile-live-game-chip{min-height:34px;padding:5px 10px;font-size:12px}}


/* V52 — make ZAVEN fallback cover fit the full 16:9 artwork */
.donation-cover.is-zaven-default-cover{
    width:min(calc(100% - 32px),980px)!important;
    height:auto!important;
    min-height:0!important;
    aspect-ratio:16 / 9!important;
    overflow:hidden!important;
    background:#08140d!important;
}
.donation-cover.is-zaven-default-cover .donation-cover-media{
    inset:0!important;
    width:100%!important;
    height:100%!important;
    overflow:hidden!important;
}
.donation-cover.is-zaven-default-cover .donation-cover-media img{
    width:100%!important;
    height:100%!important;
    object-fit:contain!important;
    object-position:center center!important;
    filter:none!important;
    transform:none!important;
}
.donation-cover.is-zaven-default-cover .donation-cover-content.donate-profile-cover-spacer{
    min-height:0!important;
    height:100%!important;
    padding:0!important;
}
@media(max-width:700px){
    .donation-cover.is-zaven-default-cover{
        width:min(calc(100% - 20px),980px)!important;
        aspect-ratio:16 / 9!important;
        min-height:0!important;
    }
}
