/* PlebHelp — telas de doação direta ao criador (Lina, 07/out/2026).
   Só apresentação. Usa os tokens de /styles.css (Direção A); nenhuma cor nova sem contraste medido.
   Classes com prefixo dd- para não colidir com o checkout antigo (#support-dialog / .invoice-panel). */

.dd-panel{background:var(--surface);border:var(--bd);border-radius:var(--r-card);box-shadow:var(--sh-card);padding:24px;max-width:560px;overflow-wrap:anywhere}
.dd-panel h2{font-size:26px;margin:0 0 6px}
.dd-panel h3{margin:0 0 8px}
.dd-panel>p:last-child{margin-bottom:0}
.dd-sub{color:var(--muted);margin:0 0 16px}

/* quem recebe: sempre visível, nunca só cor */
.dd-receiver{display:flex;align-items:center;gap:12px;margin:16px 0;padding:12px 14px;border:var(--bd);border-radius:var(--r);background:var(--tint)}
.dd-receiver svg{width:26px;height:26px;flex:none;color:var(--primary)}
.dd-receiver span{display:block;font-size:14px;color:var(--muted);line-height:1.4}
.dd-receiver strong{display:block;font-size:20px;line-height:1.25;font-family:var(--f-display);letter-spacing:-.02em;word-break:break-all}

/* valor */
.dd-presets{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0 0 14px;padding:0;border:0}
.dd-presets legend{font-size:14px;font-weight:700;margin-bottom:8px;padding:0}
.dd-preset{min-height:48px;border:var(--bd);border-radius:var(--r);background:var(--surface);color:var(--foreground);font-weight:700;font-variant-numeric:tabular-nums}
.dd-preset[aria-pressed=true]{background:var(--secondary);color:var(--on-secondary);box-shadow:var(--sh)}
@media (min-width:520px){.dd-presets{grid-template-columns:repeat(4,minmax(0,1fr))}}
.dd-amount{display:flex;align-items:stretch;border:var(--bd);border-radius:var(--r);background:var(--surface);overflow:hidden}
.dd-amount input{border:0;border-radius:0;font-size:22px;font-weight:700;font-variant-numeric:tabular-nums;min-height:52px}
.dd-amount span{display:grid;place-items:center;padding:0 14px;font-weight:700;background:var(--tint);border-left:2px solid var(--foreground)}

/* aviso antes de pagar: reforça a borda, mantém o padrão .notice */
.dd-before{border-width:2px;border-left-width:6px}
.dd-before strong{display:block;margin-bottom:2px}

/* fatura */
.dd-invoice{display:grid;gap:16px;margin-top:8px}
.dd-amount-line{display:flex;justify-content:space-between;align-items:baseline;gap:12px;border-bottom:2px solid var(--border);padding-bottom:10px}
.dd-amount-line strong{font-size:24px;font-variant-numeric:tabular-nums;font-family:var(--f-display)}
.dd-qr{justify-self:center;width:min(264px,100%);aspect-ratio:1;background:#FFFFFF;border:var(--bd);border-radius:var(--r);padding:12px}
.dd-qr img{width:100%;height:100%;image-rendering:pixelated}
.dd-bolt11{width:100%;min-height:76px;resize:none;font-family:ui-monospace,Consolas,monospace;font-size:13px;line-height:1.45;word-break:break-all;background:var(--background)}
.dd-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.dd-actions .button{min-height:48px}
.dd-wait{display:flex;align-items:center;gap:10px;font-weight:700;margin:0}
.dd-pulse{width:12px;height:12px;flex:none;border-radius:50%;background:var(--accent);border:2px solid var(--foreground);animation:dd-pulse 1.4s ease-in-out infinite}
@keyframes dd-pulse{50%{opacity:.35}}
@media (prefers-reduced-motion:reduce){.dd-pulse{animation:none}}
.dd-expiry{font-size:14px;color:var(--muted);margin:0}

/* resultado */
.dd-result{display:grid;justify-items:start;gap:10px}
.dd-result .notice{margin:0;width:100%}
.dd-result .notice strong{display:block;font-size:17px;margin-bottom:2px}
.dd-big-ok{display:grid;place-items:center;width:56px;height:56px;border:var(--bd);border-radius:50%;background:var(--tint-success);color:var(--success)}
.dd-big-ok svg{width:30px;height:30px}

/* criador: carteiras que avisam */
.dd-wallets{list-style:none;margin:12px 0 0;padding:0;display:grid;gap:8px}
.dd-wallets li{display:flex;align-items:center;gap:10px;padding:10px 12px;border:2px solid var(--border);border-radius:var(--r);background:var(--surface)}
.dd-wallets b{flex:1}
.dd-tag{display:inline-flex;align-items:center;gap:6px;font-size:14px;font-weight:700;white-space:nowrap}
.dd-tag::before{content:"";width:10px;height:10px;border-radius:50%;border:2px solid currentColor}
.dd-tag.yes{color:var(--success)}.dd-tag.yes::before{background:currentColor}
.dd-tag.no{color:var(--danger)}

/* troca de endereço: linha do tempo */
.dd-steps{list-style:none;margin:16px 0;padding:0;display:grid;gap:0}
.dd-steps li{position:relative;padding:0 0 16px 40px}
.dd-steps li::before{content:"";position:absolute;left:0;top:0;width:24px;height:24px;border:var(--bd);border-radius:50%;background:var(--surface)}
.dd-steps li::after{content:"";position:absolute;left:12px;top:26px;bottom:2px;width:2px;background:var(--border)}
.dd-steps li:last-child::after{display:none}
.dd-steps li.done::before{background:var(--success);border-color:var(--success)}
.dd-steps li.now::before{background:var(--secondary)}
.dd-steps strong{display:block}
.dd-steps span{display:block;font-size:14px;color:var(--muted)}
.dd-swap{display:grid;grid-template-columns:1fr auto 1fr;gap:10px;align-items:center;margin:12px 0}
.dd-swap div{border:2px solid var(--border);border-radius:var(--r);padding:8px 10px;min-width:0}
.dd-swap span{display:block;font-size:13px;color:var(--muted)}
.dd-swap strong{display:block;word-break:break-all}
.dd-paused{display:inline-flex;align-items:center;gap:8px;font-weight:700;color:var(--warning);border:2px solid currentColor;border-radius:var(--r);padding:6px 10px;margin:0}

/* denunciar */
.dd-report-link{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 4px;border:0;background:none;color:var(--danger);font-weight:700;text-decoration:underline;text-underline-offset:3px}
.dd-report-link svg{width:18px;height:18px}
.dd-flush{margin:0}.dd-full{width:100%}.dd-mt{margin-top:20px}.dd-mt-s{margin-top:8px}
.dd-amount input{flex:1;min-width:0}.dd-amount span{white-space:nowrap}
.dd-panel .notice>strong,.lab-dialog .notice>strong{display:block;margin-bottom:2px}
.dd-report-title{font-size:24px;margin:0 0 8px}
/* Moderação no modo oficial: código do app autenticador (moderator-factor.js). Sem estilo inline (CSP). */
.mf{display:grid;gap:14px}
.mf h2{margin:0}
.mf p{margin:0}
.mf form{display:grid;gap:12px}
.mf .field{margin:0}
.mf-step{font-weight:700}
.mf-qr{margin:4px 0}
.mf-label{font-size:15px}
.mf-secret{display:block;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:18px;line-height:1.5;letter-spacing:.06em;padding:12px 14px;border:var(--bd);border-radius:var(--r);background:var(--background);color:var(--foreground);overflow-wrap:anywhere;user-select:all}
.mf-code{font-size:22px;letter-spacing:.18em;font-variant-numeric:tabular-nums}
.mf-codes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 20px;margin:0;padding-left:2em}
.mf-codes code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:16px;color:var(--foreground)}
.mf-check{margin:0}
.mf-link{justify-self:start;background:none;border:0;padding:0 2px;cursor:pointer;text-align:left;font-family:inherit}
.mf .button[disabled]{cursor:not-allowed}
@media (max-width:420px){.mf-codes{grid-template-columns:1fr}}

/* Bloco 2: the wallet note sits on its own line under "what fills the bar" (it was glued: "barraValor"). */
.metric [data-amount-source]{display:block;margin-top:6px}
/* Bloco 2: the two sign-in links are separate 44 px targets. */
.auth-links{display:flex;flex-wrap:wrap;gap:8px 16px;margin-top:12px}
.auth-links .text-link{display:inline-flex;align-items:center;min-height:44px}
