/* =====================================================
   BTC Donations Pro — Dark Luxury Theme
   Matches Altered Reality AI dark aesthetic
   ===================================================== */

.btcd-campaign {
    max-width: 620px;
    margin: 0 auto;
    font-family: Georgia, serif;
    color: #d8cfbf;
}

/* ── Campaign image ── */
.btcd-campaign-image img {
    width: 100%;
    border-radius: 18px 18px 0 0;
    max-height: 240px;
    object-fit: cover;
}

/* ── Main card body — dark floating card with orange glow ── */
.btcd-campaign-body {
    position: relative;
    background: linear-gradient(180deg, #0d0d16 0%, #090910 100%);
    border: 1px solid #191723;
    border-radius: 18px;
    padding: 28px 28px;
    overflow: hidden;
    box-shadow:
        0 28px 90px rgba(0,0,0,.62),
        0 0 0 1px rgba(247,147,26,.04),
        0 0 56px rgba(247,147,26,.09);
}

/* Ambient glow top */
.btcd-campaign-body::before {
    content: '';
    position: absolute;
    top: -60px;
    left: 50%;
    transform: translateX(-50%);
    width: 80%;
    height: 200px;
    background: radial-gradient(circle, rgba(247,147,26,.10) 0%, rgba(247,147,26,.04) 40%, transparent 74%);
    filter: blur(20px);
    pointer-events: none;
    z-index: 0;
}

/* Ambient glow bottom */
.btcd-campaign-body::after {
    content: '';
    position: absolute;
    bottom: -40px;
    left: 50%;
    transform: translateX(-50%);
    width: 70%;
    height: 180px;
    background: radial-gradient(circle, rgba(247,147,26,.13) 0%, rgba(247,147,26,.05) 40%, transparent 74%);
    filter: blur(24px);
    pointer-events: none;
    z-index: 0;
}

.btcd-campaign-body > * {
    position: relative;
    z-index: 1;
}

.btcd-campaign-image + .btcd-campaign-body {
    border-radius: 0 0 18px 18px;
}

/* ── Title & description ── */
.btcd-campaign-title {
    font-size: 22px;
    font-weight: 400;
    margin: 0 0 10px;
    color: #f4ecdf;
    letter-spacing: .2px;
}

.btcd-campaign-desc {
    font-size: 14px;
    line-height: 1.75;
    color: #8f7f6d;
    margin-bottom: 20px;
}

/* ── Goal bar ── */
.btcd-goal-block { margin-bottom: 24px; }

.btcd-goal-bar {
    background: rgba(247,147,26,.12);
    border-radius: 6px;
    height: 8px;
    overflow: hidden;
    margin-bottom: 8px;
    border: 1px solid rgba(247,147,26,.15);
}

.btcd-goal-fill {
    background: linear-gradient(90deg, #f7931a, #e8c060);
    height: 8px;
    border-radius: 6px;
    transition: width .6s ease;
    box-shadow: 0 0 10px rgba(247,147,26,.4);
}

.btcd-goal-meta {
    display: flex;
    justify-content: space-between;
    font-size: 13px;
    color: #5f5567;
    margin-bottom: 4px;
}

.btcd-raised-usd { color: #f2eadb; font-size: 17px; font-weight: 700; }
.btcd-pct { font-weight: 700; color: #f7931a; }
.btcd-donor-count { font-size: 12px; color: #5f5567; }
.btcd-raised-simple { font-size: 14px; color: #8f7f6d; margin-bottom: 20px; }

/* ── Amount buttons ── */
.btcd-donate-wrap { margin-top: 20px; }

.btcd-amount-buttons {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-bottom: 12px;
}

.btcd-amount-btn {
    background: rgba(247,147,26,.08);
    border: 1px solid rgba(247,147,26,.25);
    border-radius: 8px;
    padding: 8px 18px;
    font-size: 13px;
    font-weight: 600;
    cursor: pointer;
    transition: all .15s;
    color: #d8cfbf;
    font-family: Georgia, serif;
}

.btcd-amount-btn:hover,
.btcd-amount-btn.active {
    background: rgba(247,147,26,.2);
    border-color: #f7931a;
    color: #f7931a;
    box-shadow: 0 0 12px rgba(247,147,26,.2);
}

/* ── Custom amount input ── */
.btcd-custom-amount-row {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 16px;
}

.btcd-currency-symbol { font-size: 18px; color: #5f5567; }

.btcd-amount-input {
    flex: 1;
    background: rgba(20,26,36,.92);
    border: 1px solid rgba(247,147,26,.2);
    border-radius: 8px;
    padding: 10px 14px;
    font-size: 15px;
    outline: none;
    transition: border-color .15s;
    max-width: 180px;
    color: #f2eadb;
    font-family: Georgia, serif;
}

.btcd-amount-input:focus { border-color: rgba(247,147,26,.5); box-shadow: 0 0 0 3px rgba(247,147,26,.08); }
.btcd-sats-equiv { font-size: 11px; color: #5f5567; min-width: 80px; }

/* ── Form groups ── */
.btcd-form-group { margin-bottom: 14px; }

.btcd-form-group label {
    display: block;
    font-size: 11px;
    font-weight: 600;
    letter-spacing: 1.5px;
    text-transform: uppercase;
    color: #5f5567;
    margin-bottom: 6px;
}

.btcd-optional { font-weight: 400; color: #3f3547; text-transform: none; letter-spacing: 0; }

.btcd-input {
    width: 100%;
    background: rgba(20,26,36,.92);
    border: 1px solid rgba(247,147,26,.18);
    border-radius: 8px;
    padding: 10px 14px;
    font-size: 13px;
    outline: none;
    box-sizing: border-box;
    transition: border-color .15s;
    font-family: Georgia, serif;
    color: #d8cfbf;
}

.btcd-input:focus { border-color: rgba(247,147,26,.5); box-shadow: 0 0 0 3px rgba(247,147,26,.08); }
.btcd-input::placeholder { color: rgba(216,207,191,.3); }
textarea.btcd-input { resize: vertical; min-height: 64px; }

.btcd-checkbox-label {
    display: flex !important;
    align-items: center;
    gap: 8px;
    cursor: pointer;
    font-weight: 400 !important;
    font-size: 13px !important;
    letter-spacing: 0 !important;
    text-transform: none !important;
    color: #8f7f6d !important;
}

/* ── Donate button ── */
.btcd-btn-primary {
    background: rgb(247,147,26);
    color: #000;
    border: none;
    border-radius: 10px;
    padding: 13px 28px;
    font-size: 14px;
    font-weight: 700;
    cursor: pointer;
    transition: background .15s;
    font-family: Georgia, serif;
    letter-spacing: .5px;
}

.btcd-btn-primary:hover { background: rgb(224,124,10); }
.btcd-btn-primary:disabled { opacity: .4; cursor: default; }

.btcd-btn-secondary {
    background: transparent;
    color: #5f5567;
    border: 1px solid rgba(247,147,26,.2);
    border-radius: 8px;
    padding: 11px 20px;
    font-size: 13px;
    cursor: pointer;
    font-family: Georgia, serif;
    transition: all .15s;
}

.btcd-btn-secondary:hover { background: rgba(247,147,26,.06); color: #d8cfbf; }

/* ── Payment step ── */
.btcd-payment-step {
    background: linear-gradient(180deg, #0b0b15, #090913);
    border: 1px solid #161628;
    border-radius: 14px;
    padding: 24px;
    text-align: center;
}

.btcd-payment-header { margin-bottom: 20px; }

.btcd-payment-amount {
    font-size: 30px;
    font-weight: 700;
    color: #f7931a;
    font-family: 'Courier New', monospace;
    text-shadow: 0 0 20px rgba(247,147,26,.15);
}

.btcd-payment-rate { font-size: 12px; color: #5f5567; margin-top: 4px; }

.btcd-payment-body {
    display: flex;
    gap: 24px;
    align-items: flex-start;
    margin-bottom: 20px;
    text-align: left;
}

.btcd-qr-wrap { flex-shrink: 0; }

.btcd-qr {
    border: 10px solid #fff;
    border-radius: 8px;
    box-shadow: 0 0 0 1px #241a12, 0 8px 30px rgba(0,0,0,.5);
}

.btcd-address-wrap { flex: 1; min-width: 0; }

.btcd-address-label {
    display: block;
    font-size: 9px;
    font-weight: 700;
    color: #5f5567;
    text-transform: uppercase;
    letter-spacing: 2px;
    margin-bottom: 8px;
}

.btcd-address-row {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 10px;
}

.btcd-address-text {
    font-size: 11px;
    word-break: break-all;
    color: #e3d8c8 !important;
    background: rgba(11,11,21,.8) !important;
    border: 1px solid #161628;
    border-radius: 6px;
    padding: 8px 10px;
    flex: 1;
    display: block;
    font-family: 'Courier New', monospace;
}

.btcd-copy-btn {
    flex-shrink: 0;
    background: rgba(247,147,26,.12);
    border: 1px solid rgba(247,147,26,.3);
    border-radius: 6px;
    padding: 6px 12px;
    font-size: 11px;
    cursor: pointer;
    color: #f7931a;
    font-weight: 700;
    transition: all .15s;
}

.btcd-copy-btn:hover { background: rgba(247,147,26,.25); }

.btcd-open-wallet a {
    font-size: 12px;
    color: #f7931a;
    text-decoration: none;
    opacity: .8;
}

.btcd-open-wallet a:hover { opacity: 1; }

/* ── Status row ── */
.btcd-status-row {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 12px;
    background: rgba(11,11,21,.6);
    border-radius: 8px;
    border: 1px solid #141420;
}

.btcd-status-dot {
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background: #f7931a;
    box-shadow: 0 0 8px rgba(247,147,26,.6);
    animation: btcd-pulse 1.4s ease-in-out infinite;
}

.btcd-status-dot.confirmed {
    background: #25d39b;
    box-shadow: 0 0 8px rgba(37,211,155,.6);
    animation: none;
}

.btcd-status-text { font-size: 13px; color: #8f7f6d; }

@keyframes btcd-pulse {
    0%, 100% { transform: scale(1); opacity: 1; }
    50% { transform: scale(1.35); opacity: .5; }
}

.btcd-static-note { font-size: 11px; color: #3f3547; margin-top: 10px; }

/* ── Success step ── */
.btcd-success-step {
    text-align: center;
    padding: 32px 20px;
}

.btcd-success-icon {
    width: 56px;
    height: 56px;
    background: rgba(37,211,155,.15);
    color: #25d39b;
    border-radius: 50%;
    font-size: 24px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 16px;
    border: 1px solid rgba(37,211,155,.3);
}

.btcd-success-title { font-size: 20px; font-weight: 600; margin: 0 0 8px; color: #f4ecdf; }
.btcd-success-msg { font-size: 14px; color: #8f7f6d; margin: 0 0 16px; }
.btcd-receipt-link { color: #f7931a; font-size: 14px; font-weight: 600; }

/* ── Donor wall ── */
.btcd-donor-wall {
    border-top: 1px solid #141420;
    margin-top: 24px;
    padding-top: 20px;
}

.btcd-wall-title { font-size: 10px; letter-spacing: 2.5px; text-transform: uppercase; color: #f7931a; margin: 0 0 14px; }

.btcd-wall-list { list-style: none; margin: 0; padding: 0; }

.btcd-wall-item {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 10px 0;
    border-bottom: 1px solid #141420;
}

.btcd-wall-item:last-child { border-bottom: none; }

.btcd-wall-avatar {
    width: 34px;
    height: 34px;
    border-radius: 50%;
    background: rgba(247,147,26,.1);
    color: #f7931a;
    border: 1px solid rgba(247,147,26,.25);
    font-weight: 700;
    font-size: 13px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.btcd-wall-info { flex: 1; min-width: 0; }
.btcd-wall-name { display: block; font-size: 13px; font-weight: 600; color: #f2eadb; }
.btcd-wall-msg { display: block; font-size: 11px; color: #5f5567; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; margin-top: 2px; }
.btcd-wall-amount { font-size: 14px; font-weight: 700; color: #f7931a; flex-shrink: 0; }

/* ── Tip button ── */
.btcd-tip-widget { display: inline-block; }

.btcd-btn-tip {
    background: linear-gradient(180deg, #f7931a16, #f7931a10);
    color: #f7931a;
    border: 1px solid rgba(247,147,26,.4);
    border-radius: 999px;
    padding: 10px 22px;
    font-size: 13px;
    font-weight: 700;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    transition: all .15s;
    font-family: Georgia, serif;
}

.btcd-btn-tip:hover {
    background: rgba(247,147,26,.2);
    box-shadow: 0 0 16px rgba(247,147,26,.2);
}

.btcd-tip-icon { font-size: 16px; }

.btcd-tip-panel {
    background: linear-gradient(180deg, #0d0d16, #090910);
    border: 1px solid #191723;
    border-radius: 14px;
    padding: 16px 20px;
    margin-top: 8px;
    min-width: 280px;
    box-shadow: 0 16px 60px rgba(0,0,0,.5), 0 0 30px rgba(247,147,26,.06);
}

.btcd-tip-amount-row {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 12px;
}

/* ── Progress widget ── */
.btcd-progress-widget { max-width: 480px; }

/* ── Campaign closed ── */
.btcd-campaign-closed {
    padding: 16px;
    background: rgba(20,26,36,.6);
    border: 1px solid #161628;
    border-radius: 8px;
    font-size: 13px;
    color: #5f5567;
    text-align: center;
    margin-top: 16px;
}

/* ── Responsive ── */
@media (max-width: 560px) {
    .btcd-campaign-body { padding: 20px 16px; }
    .btcd-payment-body { flex-direction: column; align-items: center; }
    .btcd-qr-wrap { margin-bottom: 16px; }
    .btcd-amount-buttons { gap: 6px; }
    .btcd-amount-btn { padding: 7px 14px; font-size: 12px; }
}

/* ── Campaigns grid [btcd_campaigns] ── */
.btcd-campaigns-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
    gap: 20px;
    margin: 0 auto;
}

.btcd-campaigns-card {
    background: linear-gradient(180deg, #0d0d16 0%, #090910 100%);
    border: 1px solid #191723;
    border-radius: 14px;
    overflow: hidden;
    box-shadow: 0 12px 40px rgba(0,0,0,.5), 0 0 30px rgba(247,147,26,.06);
    transition: box-shadow .2s, transform .2s;
}

.btcd-campaigns-card:hover {
    box-shadow: 0 20px 60px rgba(0,0,0,.6), 0 0 40px rgba(247,147,26,.12);
    transform: translateY(-2px);
}

.btcd-campaigns-card-img img {
    width: 100%;
    max-height: 160px;
    object-fit: cover;
    display: block;
}

.btcd-campaigns-card-body {
    padding: 20px;
}

.btcd-campaigns-card-title {
    font-size: 16px;
    font-weight: 400;
    color: #f4ecdf;
    margin: 0 0 8px;
}

.btcd-campaigns-card-desc {
    font-size: 13px;
    color: #5f5567;
    line-height: 1.6;
    margin-bottom: 12px;
}

.btcd-campaigns-card-meta {
    font-size: 12px;
    color: #3f3547;
    margin-top: 8px;
}

.btcd-no-campaigns,
.btcd-no-donors {
    color: #5f5567;
    font-size: 14px;
    font-style: italic;
}

/* Standalone donate form only variant */
.btcd-donate-form-only .btcd-campaign-body {
    border-radius: 14px;
}
