/* =====================================================================
   Mi cuenta, fondos, voz y votación. Va después de theme.css.
   ===================================================================== */

/* ---------- avisos de éxito, fondos en la barra y anuncios personales ---------- */
.toast.ok { background: linear-gradient(90deg, #1fbf86, #19a3c9); box-shadow: 0 10px 30px rgba(46, 230, 255, 0.35); }
.announce.ok { background: linear-gradient(90deg, #13a874, #1b8fd0); box-shadow: 0 10px 30px rgba(57, 240, 165, 0.35); }
.announce.bad { background: linear-gradient(90deg, #c42c4c, #8b2bd1); }
button.chip-pill { border: 0; cursor: pointer; font: inherit; font-weight: 800; color: #1b1030; }
.funds-btn {
  position: relative; display: inline-flex; align-items: center; gap: 2px; padding: 6px 12px; border-radius: 12px; cursor: pointer;
  font: 800 0.9rem system-ui, sans-serif; color: #12081f; border: 0;
  background: linear-gradient(90deg, var(--neo-green), var(--neo-cyan)); box-shadow: 0 0 14px rgba(57, 240, 165, 0.35);
}
.funds-btn:hover { filter: brightness(1.08); }
.funds-btn .badge-count { top: -8px; right: -8px; }
@media (max-width: 560px) { .funds-btn { padding: 6px 9px; } .funds-btn .lbl { display: none; } }
button.stat-neo { appearance: none; font: inherit; text-align: left; cursor: pointer; color: var(--neo-gold); display: grid; transition: transform 0.15s, box-shadow 0.2s; }
button.stat-neo:hover { transform: translateY(-2px); box-shadow: 0 0 22px rgba(255, 215, 106, 0.3); }
button.stat-neo u { text-decoration: none; color: var(--neo-cyan); }
.mode-empty { display: grid; gap: 10px; }

.hero-side { display: grid; gap: 12px; }

/* ---------- Mi cuenta ---------- */
body.acct-open { overflow: hidden; }
.acct-back { position: fixed; inset: 0; z-index: 80; display: grid; place-items: center; padding: 16px; background: rgba(4, 2, 10, 0.75); backdrop-filter: blur(6px); -webkit-backdrop-filter: blur(6px); }
.acct-back[hidden] { display: none; }
.acct-sheet {
  width: min(980px, 100%); height: min(860px, calc(100dvh - 32px)); display: grid; grid-template-rows: auto auto 1fr; overflow: hidden;
  border-radius: 24px; color: var(--neo-text); background: linear-gradient(165deg, #1d1240, #0b0719 70%);
  border: 1px solid rgba(139, 92, 255, 0.45); box-shadow: 0 30px 80px rgba(0, 0, 0, 0.6), 0 0 40px rgba(139, 92, 255, 0.2);
  animation: acct-in 0.28s cubic-bezier(0.2, 1.2, 0.4, 1);
}
@keyframes acct-in { from { transform: translateY(24px) scale(0.98); opacity: 0; } }
.acct-head { display: flex; align-items: center; justify-content: space-between; padding: 16px 20px 6px; }
.acct-head h2 { margin: 0; font: 900 1.4rem Georgia, serif; background: linear-gradient(90deg, var(--neo-gold), var(--neo-pink)); -webkit-background-clip: text; background-clip: text; color: transparent; }
.acct-tabs { display: flex; gap: 6px; padding: 8px 16px 12px; overflow-x: auto; border-bottom: 1px solid var(--neo-line); scrollbar-width: none; }
.acct-tabs button {
  position: relative; flex: 0 0 auto; display: inline-flex; align-items: center; gap: 6px; padding: 9px 14px; border-radius: 12px; cursor: pointer;
  font: 700 0.92rem system-ui, sans-serif; color: var(--neo-muted); background: var(--neo-glass); border: 1px solid var(--neo-line); transition: all 0.2s;
}
.acct-tabs button:hover { color: var(--neo-text); }
.acct-tabs button[aria-selected="true"] { color: #12081f; background: linear-gradient(90deg, var(--neo-cyan), var(--neo-violet)); border-color: transparent; box-shadow: 0 0 16px rgba(46, 230, 255, 0.35); }
.acct-tabs .badge-count { position: static; margin-left: 2px; }
.acct-body { overflow-y: auto; padding: 18px 20px 28px; display: grid; gap: 16px; align-content: start; }
.acct-loading { padding: 40px; text-align: center; color: var(--neo-muted); }
.acct-card { padding: 16px; border-radius: 18px; background: var(--neo-glass); border: 1px solid var(--neo-line); display: grid; gap: 10px; align-content: start; min-width: 0; }
.acct-card h3 { margin: 0; font: 800 1.02rem system-ui, sans-serif; color: var(--neo-gold); letter-spacing: 0.02em; }
.acct-row { display: flex; gap: 8px; flex-wrap: wrap; align-items: center; }
.acct-row .neo-input { flex: 1 1 200px; }
.acct-form { display: grid; gap: 10px; }
.acct-hero { display: flex; gap: 18px; align-items: center; padding: 18px; border-radius: 20px; background: radial-gradient(circle at 15% 30%, rgba(139, 92, 255, 0.35), transparent 60%), var(--neo-glass); border: 1px solid rgba(139, 92, 255, 0.4); }
.acct-av { width: 110px; height: 124px; flex: 0 0 auto; border-radius: 20px; overflow: hidden; background: radial-gradient(#3a2470, #140a2a); border: 2px solid var(--neo-cyan); box-shadow: 0 0 22px rgba(46, 230, 255, 0.35); }
.acct-av > * { width: 100%; height: 100%; }
.acct-hero-text { display: grid; gap: 4px; min-width: 0; }
.acct-name { font: 900 1.6rem Georgia, serif; overflow-wrap: anywhere; }
.acct-user { color: var(--neo-muted); font-size: 0.9rem; }
.acct-motto { color: var(--neo-cyan); font-style: italic; }
.acct-pills { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 4px; }
.acct-pill { padding: 4px 10px; border-radius: 999px; font: 800 0.82rem system-ui, sans-serif; border: 1px solid currentColor; }
.acct-pill.gold { color: var(--neo-gold); }
.acct-pill.cyan { color: var(--neo-cyan); }
.acct-pill.pink { color: var(--neo-pink); }
.neon-btn.wide { width: 100%; }
.danger-text { color: #ff8fa8 !important; }

/* Fondos */
.funds-hero { display: flex; align-items: center; justify-content: space-between; padding: 18px 22px; border-radius: 20px; background: linear-gradient(120deg, rgba(255, 215, 106, 0.22), rgba(255, 63, 180, 0.1)); border: 1px solid rgba(255, 215, 106, 0.45); }
.funds-label { font-size: 0.75rem; letter-spacing: 0.14em; text-transform: uppercase; color: var(--neo-muted); font-weight: 800; }
.funds-balance { font: 900 clamp(2rem, 6vw, 2.8rem) system-ui, sans-serif; color: var(--neo-gold); text-shadow: 0 0 22px rgba(255, 215, 106, 0.5); }
.funds-coins { font-size: 3rem; animation: coin-bob 2.4s ease-in-out infinite; }
@keyframes coin-bob { 50% { transform: translateY(-6px) rotate(10deg); } }
.funds-grid { display: grid; gap: 16px; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); }
.funds-card.in { border-color: rgba(57, 240, 165, 0.4); box-shadow: inset 0 0 26px rgba(57, 240, 165, 0.06); }
.funds-card.out { border-color: rgba(255, 63, 180, 0.4); box-shadow: inset 0 0 26px rgba(255, 63, 180, 0.06); }
.alias-box { display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 12px 14px; border-radius: 14px; background: rgba(10, 6, 24, 0.75); border: 1px dashed rgba(57, 240, 165, 0.6); }
.alias-k { font-size: 0.7rem; letter-spacing: 0.12em; text-transform: uppercase; color: var(--neo-muted); font-weight: 800; }
.alias-v { font: 900 1.35rem system-ui, sans-serif; color: var(--neo-green); text-shadow: 0 0 12px rgba(57, 240, 165, 0.45); overflow-wrap: anywhere; }
.alias-box.small .alias-v { font-size: 0.95rem; }
.mono { font-family: ui-monospace, Consolas, monospace !important; letter-spacing: 0.04em; }
.copy-btn { flex: 0 0 auto; padding: 8px 12px; border-radius: 10px; cursor: pointer; font: 800 0.82rem system-ui, sans-serif; border: 0; color: #12081f; background: linear-gradient(90deg, var(--neo-green), var(--neo-cyan)); }
.copy-btn.done { background: #fff; }
.req-list, .tx-list { list-style: none; margin: 0; padding: 0; display: grid; gap: 8px; }
.req, .tx { display: flex; align-items: center; gap: 10px; padding: 10px 12px; border-radius: 14px; background: rgba(10, 6, 24, 0.55); border: 1px solid var(--neo-line); }
.req-icon, .tx-icon { font-size: 1.4rem; flex: 0 0 auto; width: 34px; text-align: center; }
.req-main, .tx-main { flex: 1; min-width: 0; }
.req-title, .tx-title { font-weight: 800; }
.req-sub, .tx-sub { font-size: 0.78rem; color: var(--neo-muted); overflow-wrap: anywhere; }
.req-status { flex: 0 0 auto; padding: 4px 10px; border-radius: 999px; font: 800 0.75rem system-ui, sans-serif; background: var(--neo-glass-2); }
.req-status.pending { color: var(--neo-gold); box-shadow: 0 0 0 1px rgba(255, 215, 106, 0.5); }
.req-status.ok { color: var(--neo-green); box-shadow: 0 0 0 1px rgba(57, 240, 165, 0.5); }
.req-status.bad { color: #ff8fa8; box-shadow: 0 0 0 1px rgba(255, 90, 122, 0.5); }
.req-status.off { color: var(--neo-muted); }
.req-cancel { flex: 0 0 auto; width: 30px; height: 30px; border-radius: 50%; border: 1px solid var(--neo-line); background: transparent; color: var(--neo-muted); cursor: pointer; }
.req-cancel:hover { color: #fff; border-color: #ff8fa8; }
.tx-right { text-align: right; flex: 0 0 auto; max-width: 45%; }
.tx-amt { font: 900 1rem system-ui, sans-serif; }
.tx-amt.up { color: var(--neo-green); }
.tx-amt.down { color: #ff7a9a; }
.tx-amt small { font-weight: 600; color: var(--neo-muted); font-size: 0.7rem; }

/* Estadísticas */
.net-hero { padding: 18px 22px; border-radius: 20px; border: 1px solid; text-align: center; }
.net-hero.up { border-color: rgba(57, 240, 165, 0.5); background: radial-gradient(circle at 50% 0%, rgba(57, 240, 165, 0.22), transparent 70%); }
.net-hero.down { border-color: rgba(255, 90, 122, 0.5); background: radial-gradient(circle at 50% 0%, rgba(255, 90, 122, 0.2), transparent 70%); }
.net-v { font: 900 clamp(2rem, 7vw, 3rem) system-ui, sans-serif; }
.net-hero.up .net-v { color: var(--neo-green); text-shadow: 0 0 22px rgba(57, 240, 165, 0.5); }
.net-hero.down .net-v { color: #ff7a9a; text-shadow: 0 0 22px rgba(255, 90, 122, 0.45); }
.kpis { display: grid; gap: 10px; grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); }
.kpi { display: grid; gap: 2px; padding: 12px; border-radius: 16px; background: var(--neo-glass); border: 1px solid var(--neo-line); animation: kpi-in 0.4s ease backwards; }
@keyframes kpi-in { from { transform: translateY(8px); opacity: 0; } }
.kpi-icon { font-size: 1.3rem; }
.kpi-v { font: 900 1.15rem system-ui, sans-serif; overflow-wrap: anywhere; }
.kpi-l { font-size: 0.75rem; color: var(--neo-muted); }
.kpi.ok .kpi-v { color: var(--neo-green); }
.kpi.bad .kpi-v { color: #ff7a9a; }
.kpi.gold .kpi-v { color: var(--neo-gold); }
.net-chart { width: 100%; height: auto; }
.net-chart .axis { stroke: rgba(255, 255, 255, 0.2); stroke-dasharray: 4 4; }
.net-chart rect { transform-box: fill-box; transform-origin: center bottom; animation: bar-in 0.5s ease backwards; }
.net-chart rect.up { fill: var(--neo-green); filter: drop-shadow(0 0 4px rgba(57, 240, 165, 0.6)); }
.net-chart rect.down { fill: #ff5a7a; transform-origin: center top; filter: drop-shadow(0 0 4px rgba(255, 90, 122, 0.6)); }
@keyframes bar-in { from { transform: scaleY(0); } }

/* Ajustes */
.switch-row { display: flex; align-items: center; justify-content: space-between; gap: 14px; padding: 10px 0; border-top: 1px solid var(--neo-line); cursor: pointer; }
.switch-title { font-weight: 800; }
.switch { appearance: none; -webkit-appearance: none; flex: 0 0 auto; width: 52px; height: 30px; border-radius: 999px; position: relative; cursor: pointer; background: rgba(255, 255, 255, 0.12); border: 1px solid var(--neo-line); transition: background 0.2s; margin: 0; padding: 0; min-height: 0; }
.switch::after { content: ""; position: absolute; top: 3px; left: 3px; width: 22px; height: 22px; border-radius: 50%; background: #fff; transition: transform 0.2s; }
.switch:checked { background: linear-gradient(90deg, var(--neo-green), var(--neo-cyan)); box-shadow: 0 0 14px rgba(57, 240, 165, 0.4); }
.switch:checked::after { transform: translateX(22px); }
.voice-modes { display: grid; gap: 10px; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); }
.voice-mode { appearance: none; display: grid; gap: 4px; justify-items: start; text-align: left; padding: 14px; border-radius: 16px; cursor: pointer; color: var(--neo-text); font: inherit; background: var(--neo-glass); border: 1px solid var(--neo-line); transition: all 0.2s; }
.voice-mode small { color: var(--neo-muted); }
.voice-mode.on { border-color: var(--neo-cyan); box-shadow: 0 0 0 1px var(--neo-cyan), 0 0 22px rgba(46, 230, 255, 0.3); background: rgba(46, 230, 255, 0.08); }

@media (max-width: 640px) {
  .acct-back { padding: 0; align-items: end; }
  .acct-sheet { height: 94dvh; border-radius: 22px 22px 0 0; }
  .acct-body { padding: 14px 14px calc(24px + env(safe-area-inset-bottom)); }
  .acct-tabs button span { display: none; }
  .acct-tabs button[aria-selected="true"] span { display: inline; }
  .acct-hero { flex-direction: column; text-align: center; }
  .acct-hero-text { justify-items: center; }
  .acct-pills { justify-content: center; }
  .tx { flex-wrap: wrap; }
  .tx-right { max-width: none; width: 100%; text-align: left; padding-left: 44px; }
}

/* ---------- chat de voz: botón grande flotante y modo de micrófono ---------- */
.voice-seg { display: inline-flex; padding: 3px; gap: 3px; border-radius: 12px; background: rgba(10, 6, 24, 0.7); border: 1px solid var(--neo-line); }
.voice-seg button { appearance: none; border: 0; cursor: pointer; padding: 6px 10px; border-radius: 9px; font: 700 0.82rem system-ui, sans-serif; color: var(--neo-muted); background: transparent; }
.voice-seg button[aria-pressed="true"] { color: #12081f; background: linear-gradient(90deg, var(--neo-green), var(--neo-cyan)); }
.voice-seg .lbl { margin-left: 4px; }
.voice-join { background: rgba(57, 240, 165, 0.14) !important; border-color: rgba(57, 240, 165, 0.55) !important; }
.mic-fab {
  position: fixed; left: 16px; bottom: calc(var(--dock-h, 200px) + 16px); z-index: 26;
  width: 76px; height: 76px; border-radius: 50%; cursor: pointer; display: grid; place-items: center; align-content: center; gap: 0;
  color: #fff; touch-action: none; user-select: none; -webkit-user-select: none; -webkit-touch-callout: none; -webkit-tap-highlight-color: transparent;
  background: radial-gradient(circle at 35% 30%, #4b3a8a, #1c1240); border: 2px solid rgba(57, 240, 165, 0.7);
  box-shadow: 0 10px 26px rgba(0, 0, 0, 0.5), 0 0 18px rgba(57, 240, 165, 0.35); transition: transform 0.12s, background 0.2s, box-shadow 0.2s;
}
.mic-fab[hidden] { display: none; }
.mic-icon { font-size: 1.8rem; line-height: 1; pointer-events: none; }
.mic-label { font: 800 0.56rem system-ui, sans-serif; letter-spacing: 0.02em; text-transform: uppercase; pointer-events: none; opacity: 0.9; max-width: 90%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.mic-ring { position: absolute; inset: -6px; border-radius: 50%; border: 3px solid transparent; pointer-events: none; }
.mic-fab.live { transform: scale(1.08); background: radial-gradient(circle at 35% 30%, #ff8fcf, #d81f72); border-color: #fff; box-shadow: 0 10px 30px rgba(255, 63, 180, 0.55), 0 0 0 6px rgba(255, 63, 180, 0.25); }
.mic-fab.live .mic-ring { border-color: rgba(255, 63, 180, 0.7); animation: mic-pulse 1.1s ease-out infinite; }
.mic-fab.open-mode { border-color: rgba(46, 230, 255, 0.8); }
.mic-fab.open-mode.live { transform: none; background: radial-gradient(circle at 35% 30%, #6ff7c8, #13a874); box-shadow: 0 10px 30px rgba(57, 240, 165, 0.5), 0 0 0 6px rgba(57, 240, 165, 0.22); }
.mic-fab.open-mode.live .mic-ring { border-color: rgba(57, 240, 165, 0.7); }
@keyframes mic-pulse { from { transform: scale(0.9); opacity: 1; } to { transform: scale(1.45); opacity: 0; } }
@media (max-width: 979px) { .mic-fab { width: 70px; height: 70px; left: 12px; bottom: calc(var(--dock-h, 180px) + 10px); } }
@media (max-width: 979px) and (orientation: landscape) and (max-height: 520px) { .mic-fab { bottom: 12px; left: 12px; width: 62px; height: 62px; } }
@media (max-width: 560px) { .voice-seg .lbl { display: none; } }

/* ---------- banca de ruleta: pedir entrar y votar ---------- */
.outsider-card { display: flex; gap: 12px; align-items: flex-start; padding: 12px 14px; border-radius: 16px; background: linear-gradient(120deg, rgba(255, 63, 180, 0.14), rgba(139, 92, 255, 0.12)); border: 1px solid rgba(255, 63, 180, 0.4); }
.outsider-card p { margin: 4px 0 0; font-size: 0.85rem; color: var(--neo-muted); }
@media (max-width: 560px) { .outsider-card .extra { display: none; } .outsider-card { padding: 10px 12px; } }
.outsider-icon { font-size: 1.8rem; animation: wheel-spin 6s linear infinite; }
@keyframes wheel-spin { to { transform: rotate(360deg); } }
.vote-progress { display: flex; align-items: center; justify-content: space-between; gap: 10px; flex-wrap: wrap; font-weight: 700; color: var(--neo-gold); }
.vote-box { display: grid; gap: 6px; }
.vote-box:empty { display: none; }
.vote-card { display: flex; align-items: center; justify-content: space-between; gap: 10px; flex-wrap: wrap; padding: 8px 12px; border-radius: 14px; background: rgba(46, 230, 255, 0.1); border: 1px solid rgba(46, 230, 255, 0.45); animation: vote-in 0.35s cubic-bezier(0.2, 1.4, 0.4, 1); }
@keyframes vote-in { from { transform: translateY(10px); opacity: 0; } }
.vote-btns { display: flex; gap: 6px; }
.vote-btns button { appearance: none; cursor: pointer; padding: 8px 14px; border-radius: 12px; font: 800 0.9rem system-ui, sans-serif; border: 1px solid var(--neo-line); color: var(--neo-text); background: var(--neo-glass); }
.vote-btns .vote-yes.on { background: linear-gradient(90deg, var(--neo-green), var(--neo-cyan)); color: #12081f; border-color: transparent; }
.vote-btns .vote-no.on { background: linear-gradient(90deg, #ff5a7a, var(--neo-pink)); color: #fff; border-color: transparent; }

/* ---------- ruleta ganada: cartel dorado, corona y brillo ---------- */
.banner.jackpot { border-color: var(--neo-gold); background: radial-gradient(circle at 50% 0%, rgba(255, 215, 106, 0.35), rgba(30, 12, 50, 0.94) 70%); box-shadow: 0 0 80px rgba(255, 215, 106, 0.6); }
.banner.jackpot .banner-title { font-size: clamp(28px, 7vw, 58px); color: #fff3c4; text-shadow: 0 2px 0 #8a5a00, 0 0 30px rgba(255, 215, 106, 0.9); animation: jackpot-pop 0.6s cubic-bezier(0.2, 1.6, 0.4, 1); }
@keyframes jackpot-pop { from { transform: scale(0.4) rotate(-6deg); opacity: 0; } }
.dealer.ruleta-winner .av-holder { filter: drop-shadow(0 0 22px rgba(255, 215, 106, 0.95)); animation: winner-bounce 0.7s ease-in-out 3; }
.dealer.ruleta-winner .plate { border-color: var(--neo-gold); box-shadow: 0 0 26px rgba(255, 215, 106, 0.7); }
@keyframes winner-bounce { 50% { transform: translateY(-14px) scale(1.04); } }
.crown { position: absolute; left: 50%; top: -14%; translate: -50% 0; font-size: 64px; z-index: 7; pointer-events: none; filter: drop-shadow(0 0 14px rgba(255, 215, 106, 0.9)); animation: crown-drop 0.8s cubic-bezier(0.3, 1.6, 0.5, 1); }
@keyframes crown-drop { from { transform: translateY(-120px) rotate(-30deg); opacity: 0; } }

/* ---------- pantalla completa ---------- */
#btn-full[aria-pressed="true"] { border-color: var(--neo-cyan); box-shadow: 0 0 12px rgba(46, 230, 255, 0.45); }
.fs-help-card {
  width: min(420px, 100%); display: grid; gap: 10px; padding: 22px; border-radius: 22px; color: var(--neo-text);
  background: linear-gradient(165deg, #1d1240, #0b0719 70%); border: 1px solid rgba(139, 92, 255, 0.45);
  box-shadow: 0 30px 80px rgba(0, 0, 0, 0.6), 0 0 40px rgba(139, 92, 255, 0.2); animation: acct-in 0.28s cubic-bezier(0.2, 1.2, 0.4, 1);
}
.fs-help-card h2 { margin: 0; font: 900 1.3rem Georgia, serif; color: var(--neo-gold); }
.fs-help-card p { margin: 0; color: var(--neo-muted); }
.fs-help-card ol { margin: 0; padding-left: 20px; display: grid; gap: 8px; }
.ios-share { display: inline-grid; place-items: center; width: 22px; height: 22px; border-radius: 6px; border: 1px solid var(--neo-cyan); color: var(--neo-cyan); font-size: 0.8rem; }
@media (max-width: 640px) { .acct-back:has(.fs-help-card) { align-items: center; padding: 16px; } }
@media (max-width: 400px) { .topbar .me { gap: 4px; } .topbar .icon-btn { width: 32px; height: 32px; } }

/* ---------- mensajes con la administración ---------- */
.support-btn { position: relative; }
.support-btn .badge-count { position: absolute; top: -5px; right: -5px; }
.support-sheet {
  width: min(480px, 100%); height: min(640px, calc(100dvh - 32px)); display: flex; flex-direction: column; gap: 8px; padding: 16px;
  border-radius: 22px; color: var(--neo-text); background: linear-gradient(170deg, rgba(36, 22, 70, 0.97), rgba(12, 8, 26, 0.98));
  border: 1px solid rgba(139, 92, 255, 0.45); box-shadow: 0 30px 80px rgba(0, 0, 0, 0.6);
}
.support-sub { margin: 0; font-size: 0.85rem; color: var(--neo-muted); }
.support-msgs { list-style: none; margin: 0; padding: 4px 2px; flex: 1; min-height: 0; overflow-y: auto; display: grid; align-content: start; gap: 8px; }
.support-msgs li { justify-self: start; max-width: 84%; display: grid; gap: 2px; padding: 8px 12px; border-radius: 14px 14px 14px 4px; background: rgba(255, 215, 106, 0.1); border: 1px solid rgba(255, 215, 106, 0.25); }
.support-msgs li.mine { justify-self: end; border-radius: 14px 14px 4px 14px; background: rgba(46, 230, 255, 0.12); border-color: rgba(46, 230, 255, 0.3); }
.support-from { font-size: 0.72rem; font-weight: 800; color: var(--neo-gold); }
.support-txt { white-space: pre-wrap; overflow-wrap: anywhere; }
.support-msgs li small { font-size: 0.68rem; color: var(--neo-muted); }
.support-msgs li.mine small { text-align: right; }
.support-msgs .support-hint { justify-self: center; text-align: center; background: none; border: 0; color: var(--neo-muted); max-width: 100%; }
.support-form { display: flex; gap: 8px; align-items: flex-end; }
.support-form textarea { flex: 1; min-width: 0; resize: none; min-height: 44px; padding: 10px 12px; border-radius: 14px; border: 1px solid rgba(255, 255, 255, 0.18); background: rgba(10, 6, 24, 0.85); color: var(--neo-text); font: inherit; }
.support-form .neon-btn { min-width: 50px; min-height: 44px; padding: 0 14px; }
#announce-text { cursor: default; }
@media (max-width: 640px) {
  #support { padding: 0; align-items: end; }
  .support-sheet { height: 88dvh; border-radius: 22px 22px 0 0; padding: 14px; }
}
