/* svetai-fix.css — utility classes to replace CSP-blocked inline styles */
.c-accent { color: #7da6ff; }
.c-green { color: var(--green, #34d399); }
.c-blue { color: var(--blue, #5b9dff); }
.bg-deep { background: var(--bg-deep, #070a0f); }
.fs-90 { font-size: 0.9rem; }
.ink-mute { color: var(--ink-mute, #8a93a6); }
.maxch60 { max-width: 60ch; }
.ar-4-3 { aspect-ratio: 4 / 3; }

/* customer account page */
.acct-head { display: flex; justify-content: space-between; align-items: flex-start; gap: 24px; flex-wrap: wrap; }
.acct-logout { margin: 0; }
.acct-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }
@media (max-width: 860px) { .acct-grid { grid-template-columns: 1fr; } }
.acct-card { display: flex; flex-direction: column; }
.acct-card h2 { font-size: 1.15rem; }
.acct-card .btn { margin-top: auto; }
.acct-badge { margin-top: 16px; font-size: 0.82rem; color: var(--ink-mute, #8a93a6); font-weight: 600; }
.acct-badge.ok { color: var(--green, #34d399); }

/* crypto payment QR */
.crypto-qr { display: flex; justify-content: center; margin: 14px 0 4px; }
.crypto-qr img { width: 190px; height: 190px; background: #fff; padding: 10px; border-radius: 12px; border: 1px solid var(--line, rgba(255,255,255,.08)); }

/* clean svetvai admin dashboard */
.admin-kpi-v { font-family: var(--display, inherit); font-size: 2rem; font-weight: 800; color: var(--ink, #0a0d12); line-height: 1; }
.admin-kpi-l { font-size: 0.8rem; color: var(--ink-mute, #8a93a6); margin-top: 6px; font-weight: 600; }
.admin-list { display: flex; flex-direction: column; gap: 8px; margin-top: 14px; }
.admin-row { display: flex; justify-content: space-between; align-items: center; gap: 12px; flex-wrap: wrap;
  background: var(--bg-soft, #11151c); border: 1px solid var(--line, rgba(255,255,255,.08)); border-radius: 10px; padding: 12px 16px; font-size: 0.92rem; }
.admin-badge { font-size: 0.7rem; font-weight: 800; text-transform: uppercase; letter-spacing: .04em; padding: 3px 9px; border-radius: 99px; }
.admin-badge.paid { background: rgba(52,211,153,.15); color: var(--green, #34d399); }
.admin-badge.pending { background: rgba(245,196,81,.15); color: var(--gold, #f5c451); }
.admin-badge.expired { background: rgba(138,147,166,.15); color: var(--ink-mute, #8a93a6); }
.admin-tools { display: flex; gap: 10px; flex-wrap: wrap; margin-top: 14px; }
.admin-user-right { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }
.admin-grant-form { display: flex; align-items: center; gap: 6px; margin: 0; flex-wrap: wrap; }
.admin-grant-select { padding: 5px 8px; border-radius: 8px; border: 1px solid var(--line, rgba(255,255,255,.12)); background: var(--bg, #0a0d12); color: var(--ink, #e8edf6); font-size: 0.82rem; }

/* /terms + public_base brand — no horizontal overflow on mobile */
@media (max-width: 560px) {
  .public-brand, .public-brand .brand-copy, .brand-copy span, .brand-copy strong { max-width: 100%; white-space: normal; overflow-wrap: anywhere; }
  .auth-shell, .auth-panel, .auth-panel-brand, .auth-panel-form { max-width: 100%; overflow-wrap: anywhere; }
}
