/* ============================================================
   GUILDA — estilo compartilhado (mural, dev, mestre)
   ============================================================ */
:root{
  color-scheme: dark;
  --ink:#14100c; --ink-2:#1f1812; --ink-3:#2a2119; --deep:#0e0b08;
  --line:#3a2d20; --line-2:#5a4a38;
  --text:#efe6d2; --soft:#e3d7bf; --muted:#b7a88c; --muted-2:#a39276;
  --gold:#d4a849; --gold-2:#e2b95a; --gold-ink:#1b140c;
  --parch:#eadcbc; --parch-2:#dccaa0; --parch-line:#b99d68; --parch-text:#2b2016; --parch-muted:#5a4632; --parch-lbl:#6b5540;
  --seal:#9b2c20; --seal-text:#fff4e6;
  --ok:#3f6b3a; --ok-bg:#24331f; --ok-text:#d7ecc9; --ok-soft:#6fa865;
  --bad-bg:#4a1f1a; --bad-text:#ffd9d2;
  --display:'Cinzel','Trajan Pro',Georgia,serif;
  --body:'Alegreya Sans','Segoe UI',system-ui,sans-serif;
}
*{box-sizing:border-box}
html,body{background:var(--ink)}
body{margin:0;color:var(--text);font-family:var(--body);font-size:16px;line-height:1.5;-webkit-font-smoothing:antialiased}
a{color:var(--gold);text-decoration:none} a:hover{color:var(--gold-2);text-decoration:underline;text-underline-offset:3px}
/* botões e cards que são links nunca ganham sublinhado */
a.btn:hover,a.ghost:hover,a.pill:hover,a.panel:hover,a.brand:hover,.nav a:hover,a.sino-item:hover,footer.pe nav a:hover{text-decoration:none}
h1,h2,h3{font-family:var(--display);font-weight:700;line-height:1.15;margin:0;text-wrap:balance}
button,input,select,textarea{font:inherit}
:focus-visible{outline:3px solid var(--gold-2);outline-offset:3px}
[hidden]{display:none!important}
@media (prefers-reduced-motion: reduce){*{transition:none!important;animation:none!important}}

.wrap{max-width:1400px;margin:0 auto;padding-inline:24px}
.dlbl{font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--muted-2)}
.lbl{font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--parch-lbl)}
.num{font-variant-numeric:tabular-nums}

/* topo */
.top{background:var(--deep);border-bottom:1px solid var(--line);position:sticky;top:env(safe-area-inset-top,0px);z-index:10}
.top .wrap{display:flex;align-items:center;gap:24px;min-height:68px;flex-wrap:wrap;padding-block:8px}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--text)}
.brand b{font-family:var(--display);font-size:20px;letter-spacing:.16em}
.nav{display:flex;gap:4px;flex-wrap:wrap}
.nav a{color:var(--muted);text-decoration:none;font-weight:600;font-size:15px;padding:9px 14px;border-radius:6px}
.nav a:hover{color:var(--text);background:var(--ink-2)}
.nav a[aria-current="page"]{background:var(--gold);color:var(--gold-ink);font-weight:800}
.top .right{margin-left:auto;display:flex;align-items:center;gap:12px}
.me{display:flex;align-items:center;gap:10px;text-align:right}
.me b{display:block;font-size:15px}
.me small{display:block;font-size:13px;color:var(--muted)}
.ava{width:40px;height:40px;border-radius:50%;background:var(--line);border:2px solid var(--gold);display:flex;align-items:center;justify-content:center;font-weight:800;flex-shrink:0}

/* aviso de prévia */
.preview{background:var(--ink-3);border-bottom:1px solid var(--line);color:var(--soft);font-size:14px}
.preview .wrap{display:flex;gap:10px;align-items:center;padding-block:10px;flex-wrap:wrap}
.preview b{color:var(--gold)}

/* botões */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:0 20px;border-radius:6px;border:1px solid var(--gold);background:var(--gold);color:var(--gold-ink);font-weight:800;font-size:16px;cursor:pointer;text-decoration:none;white-space:nowrap}
.btn:hover{background:var(--gold-2);color:var(--gold-ink)}
.btn-dark{background:var(--parch-text);border-color:var(--parch-text);color:#f3e7cb}
.btn-dark:hover{background:#3d2e1f;color:#f3e7cb}
.ghost{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 16px;border-radius:6px;border:1px solid var(--line-2);background:transparent;color:var(--text);font-weight:600;cursor:pointer;white-space:nowrap}
.ghost:hover{background:var(--ink-3)}
.pill{min-height:44px;padding:0 16px;border-radius:999px;border:1px solid var(--line-2);background:transparent;color:var(--soft);font-weight:600;cursor:pointer}
.pill:hover{border-color:var(--gold)}
.pill.on{background:var(--gold);border-color:var(--gold);color:var(--gold-ink);font-weight:800}

/* escudos de rank */
.shield{display:inline-flex;align-items:center;justify-content:center;width:30px;height:34px;padding-bottom:4px;font-family:var(--display);font-weight:700;font-size:16px;clip-path:polygon(0 0,100% 0,100% 68%,50% 100%,0 68%);flex-shrink:0}
.r-F{background:#6b6358;color:#fff8ea}.r-D{background:#8a5a2b;color:#fff8ea}.r-C{background:#aab3bb;color:#1b140c}
.r-B{background:#d4a849;color:#1b140c}.r-A{background:#6d3a8e;color:#fff8ea}.r-S{background:#9b2c20;color:#fff8ea}

/* painéis e chips */
.panel{background:var(--ink-2);border:1px solid var(--line);border-radius:8px}
.chip{display:inline-block;font-size:13px;font-weight:800;padding:5px 10px;border-radius:999px;white-space:nowrap}
.chip-ok{background:var(--ok);color:#f3f7ee}
.chip-okl{background:var(--ok-bg);color:var(--ok-text)}
.chip-bad{background:var(--seal);color:var(--seal-text)}
.chip-badl{background:var(--bad-bg);color:var(--bad-text)}
.chip-mute{background:var(--line);color:var(--soft)}
.chip-gold{background:var(--gold);color:var(--gold-ink)}
.tag{font-size:12px;font-weight:800;padding:4px 10px;border-radius:999px;background:#d6c396;color:#3d2e1f}
.selo-key{display:inline-block;font-size:12px;font-weight:800;padding:4px 10px;border-radius:999px;background:#2e5e3e;color:#eaf7ee;white-space:nowrap}
.seal{font-size:11px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;padding:4px 9px;border-radius:4px;background:var(--seal);color:var(--seal-text);white-space:nowrap}
.bar{height:8px;background:var(--line);border-radius:4px;overflow:hidden}
.bar > span{display:block;height:8px;background:var(--gold)}

/* pergaminho */
.parch{background:var(--parch);color:var(--parch-text);border:1px solid var(--parch-line);border-radius:6px;box-shadow:0 8px 20px rgba(0,0,0,.5)}

/* campos */
.field{display:flex;flex-direction:column;gap:8px;min-width:0}
.input{width:100%;min-height:48px;padding:0 14px;border-radius:6px;border:1px solid var(--line-2);background:var(--ink);color:var(--text);font-size:16px}
textarea.input{min-height:84px;padding:12px 14px;resize:vertical}
.input:focus{border-color:var(--gold);outline:none;box-shadow:0 0 0 3px rgba(212,168,73,.3)}

/* tabelas roláveis no celular */
.scroll-x{overflow-x:auto;-webkit-overflow-scrolling:touch}
table.t{width:100%;border-collapse:collapse;min-width:860px}
table.t th{font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted-2);text-align:left;padding:14px 10px;border-bottom:1px solid var(--line);white-space:nowrap}
table.t td{padding:12px 10px;border-bottom:1px solid var(--ink-3);vertical-align:middle;color:var(--soft)}
table.t td b{color:var(--text)}

footer.pe{border-top:1px solid var(--line);padding-block:24px;color:var(--muted);font-size:14px;margin-top:48px}
footer.pe .wrap{display:flex;flex-direction:column-reverse;gap:22px;align-items:stretch}
footer.pe .wrap > span{padding-top:16px;border-top:1px solid var(--line);font-family:var(--display);letter-spacing:.12em;color:var(--muted-2)}
footer.pe nav{display:flex;flex-direction:column;gap:14px;align-items:flex-start}
footer.pe .pe-grupos{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px 32px;width:100%}
footer.pe .pe-g{display:flex;flex-direction:column;gap:9px;min-width:0}
footer.pe .pe-g b{font-size:12px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--gold);margin-bottom:2px}
footer.pe nav a{color:var(--muted);text-decoration:none;font-size:15px} footer.pe nav a:hover{color:var(--gold-2)}
footer.pe nav a[aria-current="page"]{color:var(--text)}
@media (max-width:760px){footer.pe .pe-grupos{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* promoção de taxa */
.promo-faixa{background:linear-gradient(90deg,#3a1712,#4a3414 50%,#3a1712);border-bottom:1px solid var(--line-2);color:var(--text);font-size:15px}
.promo-faixa .wrap{display:flex;gap:10px 14px;align-items:center;justify-content:center;padding-block:10px;flex-wrap:wrap;text-align:center}
.promo-faixa a{color:var(--gold-2);font-weight:700;white-space:nowrap}
.promo-tag{font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;background:var(--seal);color:var(--seal-text);padding:3px 8px;border-radius:4px}
.promo-selo{display:flex;gap:10px;align-items:center;border:1px solid var(--gold);background:rgba(212,168,73,.08);color:var(--text);border-radius:8px;padding:10px 14px;font-size:15px}
.promo-selo b{color:var(--gold-2)}

@media (max-width: 720px){
  .wrap{padding-inline:16px}
  .top .right .me div{display:none}
  .nav a{padding:8px 10px;font-size:14px}
}

/* página trancada até o login ser conferido */
html.guard body{visibility:hidden}

/* seletor de idioma */
.lang{display:flex;border:1px solid var(--line-2);border-radius:6px;overflow:hidden}
.lang button{min-height:40px;min-width:46px;border:0;background:transparent;color:var(--muted);font-weight:800;cursor:pointer}
.lang button[aria-pressed="true"]{background:var(--gold);color:var(--gold-ink)}
.btn-twitch{background:#772ce8;border-color:#772ce8;color:#fff}
.btn-twitch:hover{background:#8a43f0;color:#fff}
.linkbtn{background:none;border:none;color:var(--muted);text-decoration:none;cursor:pointer;padding:8px 4px;font-size:15px}
.linkbtn:hover{color:var(--text)}
.alert{padding:14px 16px;border-radius:8px;font-size:15px}
.alert-err{background:#3a1a16;border:1px solid var(--seal);color:var(--bad-text)}
.alert-ok{background:var(--ok-bg);border:1px solid var(--ok);color:var(--ok-text)}
.alert-demo{background:var(--ink-3);border:1px dashed var(--line-2);color:var(--soft)}

/* topo no celular: quebra em linhas e esconde o avatar */
.top .right{flex-wrap:wrap;justify-content:flex-end}
@media (max-width: 720px){
  .top .right .me{display:none}
  .top .right{margin-left:0;width:100%;justify-content:flex-start}
}
@media (max-width: 560px){ .promo-faixa{font-size:14px} .promo-faixa .wrap{padding-block:8px;gap:6px 10px} }

/* convite para instalar o app (pwa.js) */
.app-convite{position:fixed;left:50%;bottom:calc(16px + env(safe-area-inset-bottom,0px));transform:translateX(-50%);z-index:50;width:min(560px,calc(100% - 24px));display:flex;align-items:center;gap:12px;padding:12px;background:var(--ink-2);border:1px solid var(--line-2);border-radius:10px;box-shadow:0 12px 30px rgba(0,0,0,.55)}
.app-convite img{width:44px;height:44px;border-radius:10px;flex-shrink:0}
.app-convite-txt{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px;font-size:14px;line-height:1.35;color:var(--soft)}
.app-convite-txt b{font-size:15px;color:var(--text)}
.app-convite .btn{order:3;min-height:42px;padding:0 16px;font-size:15px;white-space:nowrap}
.app-convite-x{order:4;align-self:flex-start;width:32px;height:32px;flex-shrink:0;border:0;border-radius:6px;background:transparent;color:var(--muted);font-size:22px;line-height:1;cursor:pointer}
.app-convite-x:hover{background:var(--ink-3);color:var(--text)}
html.com-convite body{padding-bottom:120px}
@media (max-width: 480px){
  .app-convite{flex-wrap:wrap}
  .app-convite-x{order:2}
  .app-convite .btn{flex-basis:100%}
}
footer.pe .linkbtn[data-instalar]{padding:0;font-size:inherit;text-decoration:none;color:var(--muted)}
footer.pe .linkbtn[data-instalar]:hover{color:var(--gold-2)}
.num-dev{margin:-6px 0 2px;color:var(--soft);font-size:15px}
.num-dev b{color:var(--gold)}
/* botão travado (ex.: Validar sem o relatório do streamer) */
.btn:disabled,.ghost:disabled{opacity:.45;cursor:not-allowed;filter:grayscale(.5)}
/* popup (perfil do streamer, quest): fundo escuro, caixa no meio, rola junto se for comprida */
body.modal-aberto{overflow:hidden}
.modal{position:fixed;inset:0;z-index:200;display:flex;justify-content:center;align-items:flex-start;padding:48px 16px;overflow-y:auto}
.modal[hidden]{display:none}
.modal-fundo{position:fixed;inset:0;background:rgba(8,6,4,.72)}
.modal-caixa{position:relative;width:min(640px,100%);margin:auto 0;box-shadow:0 24px 60px rgba(0,0,0,.55)}
.modal-caixa.larga{width:min(860px,100%)}
.modal-x{position:absolute;top:10px;right:10px;z-index:3;width:40px;height:40px;border-radius:50%;border:1px solid var(--line);background:rgba(20,16,12,.85);color:var(--text);font-size:20px;line-height:1;cursor:pointer}
.modal-x:hover{border-color:var(--gold)}
@media (max-width: 560px){ .modal{padding:16px 10px} }
.linkbtn-nome{background:none;border:0;padding:0;font:inherit;color:inherit;font-weight:inherit;cursor:pointer;text-align:left;text-decoration:underline;text-decoration-color:rgba(212,168,73,.45);text-underline-offset:3px}
.linkbtn-nome:hover{color:var(--gold)}
/* 🔔 notificações */
.sino{position:relative;min-height:40px;min-width:44px;padding:0 10px;font-size:18px}
.sino-n{position:absolute;top:-6px;right:-6px;min-width:20px;height:20px;padding:0 5px;border-radius:10px;background:var(--seal,#b8432f);color:#fff;font-size:12px;font-weight:800;line-height:20px;text-align:center}
.sino-n[hidden]{display:none}
.sino-painel{position:fixed;right:16px;z-index:150;width:min(380px,calc(100vw - 24px));max-height:70vh;overflow-y:auto;padding:0;box-shadow:0 18px 48px rgba(0,0,0,.55)}
.sino-painel[hidden]{display:none}
.sino-topo{padding:14px 16px;border-bottom:1px solid var(--line);position:sticky;top:0;background:inherit}
.sino-item{display:flex;flex-direction:column;gap:2px;padding:12px 16px;border-bottom:1px solid var(--line);color:var(--text);text-decoration:none}
.sino-item:hover{background:rgba(212,168,73,.07)}
.sino-item.nova{background:rgba(212,168,73,.12);box-shadow:inset 3px 0 0 var(--gold)}
.sino-item b{font-size:15px}
.sino-item span{font-size:14px;color:var(--soft)}
.sino-item small{font-size:12px;color:var(--muted)}
.sino-vazio{padding:20px 16px;color:var(--muted)}
@media (max-width: 560px){ .sino-painel{right:12px} }
/* visualizador de arquivo (comprovante): acima do popup normal */
.visor{z-index:260}
.visor-caixa{width:min(760px,100%);padding:0;overflow:hidden}
.visor-topo{padding:16px 60px 12px 20px;border-bottom:1px solid var(--line)}
.visor-corpo{padding:16px 20px 20px;color:var(--soft)}
.visor-img{display:block;max-width:100%;max-height:70vh;margin:0 auto;border-radius:6px;background:#fff}
.visor-pdf{display:block;width:100%;height:70vh;border:0;border-radius:6px;background:#fff}
.visor-acoes{display:flex;justify-content:flex-end;margin-top:14px}
/* etiquetas da quest (formato e avisos de conteúdo) */
.etqs{display:flex;gap:6px;flex-wrap:wrap}
.etq{display:inline-flex;align-items:center;gap:4px;padding:3px 9px;border-radius:999px;border:1px solid var(--line);font-size:13px;font-weight:700;color:var(--soft);background:rgba(0,0,0,.18);white-space:nowrap}
.etq-formato{border-color:var(--gold);color:var(--gold)}
.etq-aviso{border-color:rgba(216,90,65,.6);color:#f0b8a9}

/* 💛 card "Apoie a Guilda" (fecha e some por 30 dias) */
.apoio-card{display:flex;gap:14px;align-items:center;padding:14px 16px;margin:16px 0 0;border-color:#8a6a2a;position:relative}
.apoio-ic{font-size:26px;line-height:1}
.apoio-txt{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}
.apoio-txt b{font-size:16px}
.apoio-txt span{color:var(--soft);font-size:14px}
.apoio-meta{display:flex;flex-direction:column;gap:4px;margin-top:4px;font-size:13px!important;color:var(--muted)!important}
.apoio-meta i{display:block;height:6px;border-radius:999px;background:var(--line);overflow:hidden;max-width:320px}
.apoio-meta em{display:block;height:100%;background:#f5b041;border-radius:999px}
.apoio-x{background:none;border:0;color:var(--muted);font-size:22px;line-height:1;cursor:pointer;padding:4px 6px;min-height:auto}
.apoio-x:hover{color:var(--text)}
@media (max-width:560px){.apoio-card{flex-wrap:wrap}.apoio-txt{flex-basis:calc(100% - 80px)}.apoio-card .btn{margin-left:40px}}

/* 💬 mensagem do Mestre (card no topo do painel do streamer e do estúdio) */
.msg-card{display:flex;flex-direction:column;gap:10px;padding:14px 16px;margin:16px 0 0}
.msg-card.nova{border-color:var(--gold)}
.msg-t{font-size:16px;display:flex;gap:8px;align-items:center}
.msg-lista,.msg-old{display:flex;flex-direction:column;gap:8px}
.msg-old summary{cursor:pointer;color:var(--muted);font-size:13px;margin-bottom:6px}
.msg-b{max-width:min(560px,92%);padding:8px 12px;border-radius:10px;background:rgba(212,168,73,.1);border:1px solid rgba(212,168,73,.35);white-space:pre-wrap;overflow-wrap:anywhere;font-size:15px}
.msg-b.eu{align-self:flex-end;background:var(--bg-2,rgba(255,255,255,.04));border-color:var(--line)}
.msg-q{display:block;font-size:12px;color:var(--muted);margin-bottom:2px}
.msg-form{display:flex;gap:8px;align-items:flex-end}
.msg-form textarea{flex:1;min-height:44px;resize:vertical}
.msg-fim{color:var(--muted);font-size:13px}
@media (max-width:560px){.msg-form{flex-direction:column;align-items:stretch}}

/* 🏅 conquistas (medalhas) */
.conq-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,150px),1fr));gap:10px;margin-top:12px}
.conq{display:flex;flex-direction:column;align-items:center;text-align:center;gap:4px;padding:14px 10px;border:1px solid var(--line);border-radius:12px;opacity:.55;filter:grayscale(.8)}
.conq.ok{opacity:1;filter:none;border-color:var(--gold);background:rgba(212,168,73,.07)}
.conq.rara.ok{border-color:#b48cff;background:rgba(145,70,255,.08)}
.conq-ic{font-size:30px;line-height:1}
.conq b{font-size:14px}
.conq small{font-size:12px;color:var(--muted);line-height:1.3}
.conq-bar{display:block;width:80%;height:6px;border-radius:999px;background:var(--line);overflow:hidden;margin-top:4px}
.conq-bar i{display:block;height:100%;background:var(--gold);border-radius:999px}

/* título no lugar do rank (ex.: Mestre da Guilda) */
.titulo-tag{display:inline-flex;align-items:center;padding:2px 10px;border-radius:999px;border:1px solid rgba(212,168,73,.6);background:rgba(212,168,73,.14);color:var(--gold-2);font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;vertical-align:middle;white-space:nowrap}

/* 🎉 faixa de marco da Guilda (app.js → Guilda.marco) */
.marco-faixa{display:flex;gap:12px;align-items:center;flex-wrap:wrap;border:1px solid var(--gold);background:linear-gradient(90deg,rgba(212,168,73,.18),rgba(212,168,73,.04));border-radius:10px;padding:12px 16px;margin:16px 0;color:var(--text);font-size:15px;position:relative}
.marco-faixa .marco-n{font:700 22px var(--display,'Cinzel',serif);color:var(--gold-2)}
.marco-faixa b{color:var(--gold-2)}
.marco-faixa a{font-weight:800;color:var(--gold);white-space:nowrap}
.marco-faixa button{margin-left:auto;background:none;border:0;color:var(--muted);font-size:20px;cursor:pointer;min-width:32px;min-height:32px}
.marco-faixa a[data-lanc-novidades]{color:var(--soft);font-weight:600}
.lanc-caixa{padding:24px 24px 20px}
.lanc-caixa h2{margin:0 40px 14px 0;font-size:22px}
.lanc-lista{list-style:none;margin:0 0 18px;padding:0;display:grid;gap:12px}
.lanc-lista li{display:flex;gap:12px;align-items:flex-start;line-height:1.5}
.lanc-lista li>span:first-child{font-size:22px;line-height:1.2}
.lanc-botoes{display:flex;gap:10px;flex-wrap:wrap}

/* 📜 aceite dos Termos (app.js → termosAviso): não fecha clicando fora, fica acima de tudo */
.termos-modal{z-index:300}
.termos-caixa{padding:24px 24px 20px;width:min(560px,100%)}
.termos-caixa h2{margin:0 0 12px;font-size:22px}
.termos-caixa p{margin:0 0 12px;line-height:1.55}
.termos-botoes{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}
.termos-erro{margin-top:8px}
.termos-faixa{display:flex;gap:12px;align-items:center;flex-wrap:wrap;justify-content:space-between}
.termos-faixa .btn{min-height:40px}

/* abas de atalho das páginas públicas (app.js → abas) */
.abas{background:var(--ink-2);border-bottom:1px solid var(--line)}
.abas .wrap{display:flex;gap:8px;overflow-x:auto;padding-block:10px;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.abas .wrap::-webkit-scrollbar{display:none}
.abas a{display:inline-flex;align-items:center;gap:7px;flex-shrink:0;min-height:40px;padding:0 14px;border-radius:999px;border:1px solid var(--line-2);color:var(--soft);font-weight:700;font-size:15px;text-decoration:none;white-space:nowrap}
.abas a:hover{border-color:var(--gold);color:var(--text);text-decoration:none}
.abas a[aria-current="page"]{background:var(--gold);border-color:var(--gold);color:var(--gold-ink)}
.abas a[aria-current="page"] svg{stroke:var(--gold-ink)}
.abas a svg{flex-shrink:0}
.abas a.vivo{border-color:#7a2a22}
.dot-vivo{width:9px;height:9px;border-radius:50%;background:#e5484d;box-shadow:0 0 0 0 rgba(229,72,77,.6);animation:pulsa 1.8s infinite;flex-shrink:0}
@keyframes pulsa{70%{box-shadow:0 0 0 7px rgba(229,72,77,0)}100%{box-shadow:0 0 0 0 rgba(229,72,77,0)}}
@media (prefers-reduced-motion: reduce){.dot-vivo{animation:none}}
.n-vivo{font-size:12px;font-weight:800;background:#e5484d;color:#fff;border-radius:999px;padding:1px 7px}
/* faixas do topo: só uma por vez (app.js → umaFaixa) */
.faixa-extra{display:none!important}
/* menu sem links (páginas públicas): marca e idioma na mesma linha no celular */
@media (max-width: 560px){.top .wrap:not(:has(.nav)){flex-wrap:nowrap;gap:12px}}
@media (max-width: 560px){.marco-faixa{padding:10px 12px;font-size:14px;gap:6px 14px;margin:12px 0}.marco-faixa .marco-n{font-size:18px}}
/* tela vazia com próximo passo (app.js → Guilda.vazio) */
.vazio-bom{padding:36px 24px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:10px}
.vazio-bom .vz-ic{font-size:34px;line-height:1}
.vazio-bom h3{font-size:20px;margin:0}
.vazio-bom p{margin:0;color:var(--soft);max-width:34em}
.vazio-bom .vz-bt{display:flex;gap:10px;flex-wrap:wrap;justify-content:center;margin-top:6px}
.vazio-bom .vz-bt a{text-decoration:none}
