/* Keep the source structure readable; redact detail, not the whole workspace. */
.source-card .protected-content,.analytics-card .protected-content,.summary-tile.protected-content,.funnel-flow.protected-content{filter:none;opacity:1;pointer-events:auto}
.profile-row b,.chart-metrics b,.summary-tile b,.funnel-stage b{filter:blur(3px);user-select:none}
.source-card .section-lock-overlay,.analytics-card .section-lock-overlay,.funnel-card .section-lock-overlay{position:static;background:none;backdrop-filter:none;padding:12px 0 0;justify-content:flex-start;text-align:left}
.section-lock-overlay .lock-message{padding:6px 10px;font-size:11px;box-shadow:none;backdrop-filter:none;max-width:none;color:var(--text-muted)}
.section-lock-overlay .lock-message br{display:none}.section-lock-overlay .lock-message i{width:auto;height:auto;border:0;margin:0 8px 0 0}
.chart-area{opacity:.85}.preview-tools{display:flex;align-items:center;gap:20px;margin-bottom:20px;color:var(--text-muted);font-size:12px}.preview-tools input{max-width:300px;margin:0}
.preview-banner{padding:14px 18px;margin-bottom:20px;border:1px solid var(--glass-border);border-left:3px solid var(--neon-blue);border-radius:10px;color:var(--text-muted);font-size:13px;background:rgba(17,29,35,.65)}
.source-card button{margin-top:14px}.source-detail{padding:16px 0 0;font-size:13px;color:var(--text-muted);line-height:1.7}.history-item{width:100%;text-align:left;color:var(--text-main);font:inherit;cursor:pointer}.history-details{line-height:1.8;overflow-wrap:anywhere}.history-tools{display:flex;gap:12px;margin:16px 0}.history-tools input{margin:0;min-width:0}.history-empty{padding:32px 10px;line-height:1.8;color:var(--text-muted);text-align:center}
button:disabled{opacity:.5;cursor:wait}button:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--neon-blue);outline-offset:4px}.chart-area svg{transition:opacity .2s}.source-card.expanded{border-color:rgba(0,243,255,.35)}
@media(max-width:600px){.preview-tools,.history-tools{flex-direction:column;align-items:stretch}.preview-tools input{max-width:none}.history-tools button{min-height:44px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}}

#recovery-screen { display: flex; align-items: center; justify-content: center; min-height: 100dvh; padding: 24px 16px; box-sizing: border-box; }
.recovery-description { color: var(--text-muted); line-height: 1.6; margin-bottom: 24px; }
#recovery-message { margin: 18px 0; line-height: 1.5; }
#recovery-message[data-error="true"] { color: var(--danger); }
#password-hint { display: block; margin-top: 8px; color: var(--text-muted); }

.status-processing{color:#f5a347;display:inline-flex;align-items:center;gap:8px}
.payment-spinner{display:inline-block;width:13px;height:13px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:payment-spin 1s linear infinite;flex-shrink:0}
@keyframes payment-spin{to{transform:rotate(360deg)}}
#wallet-address{overflow-wrap:anywhere;min-width:0;user-select:all;line-height:1.7}
#payment-expired,.icon-warning{color:#f5c542}
#payment-box .qr-code-img{width:232px;height:232px;max-width:100%;object-fit:contain;box-shadow:none}
#btn-paid:disabled{cursor:not-allowed}
@media(max-width:600px){.wallet-address-wrapper{flex-direction:column}}

/* A receipt-like hierarchy shared by the payment and its history details. */
.payment-breakdown{display:grid;gap:10px;margin:18px 0 24px;text-align:left}
.payment-detail{display:flex;align-items:center;justify-content:space-between;gap:12px;min-width:0;padding:12px 14px;border:1px solid var(--glass-border);border-radius:10px;background:rgba(255,255,255,.025);line-height:1.5}
.payment-detail-label{color:var(--text-muted);font-size:13px}
.payment-detail-value{color:var(--text-main);font-size:16px;font-weight:600;text-align:right;font-variant-numeric:tabular-nums;overflow-wrap:anywhere;min-width:0}
.payment-detail-fee{border-color:rgba(230,180,99,.3);background:rgba(230,180,99,.07)}
.payment-detail-fee .payment-detail-label,.payment-detail-fee .payment-detail-value{color:#ebc485}
.payment-detail-total{display:grid;gap:6px;padding:17px 18px;border-color:rgba(102,216,211,.4);border-left:3px solid #66d8d3;background:rgba(102,216,211,.09)}
.payment-detail-total .payment-detail-label{color:#b1e4e1;font-weight:600}
.payment-detail-total .payment-detail-value{text-align:left;color:#91e7e1;font-size:clamp(22px,4vw,30px);font-weight:700;letter-spacing:-.025em}
.history-details:not(.hidden){display:block}
.payment-details-heading{display:block;font-size:12px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);margin-top:4px}
.history-details .payment-breakdown{margin:14px 0}
.payment-reference{display:grid;gap:10px}
.payment-reference .payment-detail{align-items:flex-start;background:transparent;border:0;border-radius:0;padding:8px 0}
.payment-reference .payment-detail-value{font-size:13px}
.payment-reference .payment-detail-address,.payment-reference .payment-detail-id{display:grid;gap:6px;border-top:1px solid var(--glass-border)}
.payment-detail-address .payment-detail-value,.payment-detail-id .payment-detail-value{text-align:left;font-family:monospace;font-weight:400}
.payment-detail-network .payment-detail-value{padding:3px 9px;border-radius:6px;color:#b1e4e1;background:rgba(102,216,211,.09);border:1px solid rgba(102,216,211,.25)}
@media(max-width:400px){.payment-detail{flex-direction:column;align-items:flex-start;gap:6px}.payment-detail-value{text-align:left}.payment-detail-total{padding:14px}}
