/* Plataforma AXIS: Ajuda (manual por tarefa), tour de primeiro acesso e comemoração de medalha nova. Usa os tokens do app-glow.css. */

/* o atributo hidden precisa vencer o display dos componentes (.btn é inline-flex): várias janelas escondem o "Salvar" assim */
[hidden]{display:none!important}

/* ---------- botão "?" e link do menu ---------- */
.ajuda-b{font:700 14px var(--f);width:34px;justify-content:center;padding:7px 0}
nav.rail a.aj-link svg{fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}

/* ---------- tela de ajuda ---------- */
.aj-busca{width:100%;max-width:640px;padding:12px 14px;font-size:14.5px}
.aj-g{display:grid;grid-template-columns:280px minmax(0,1fr);gap:18px;align-items:start}
.aj-lista{display:flex;flex-direction:column;gap:2px;background:var(--card);border-radius:var(--r);box-shadow:var(--anel),var(--sombra);padding:12px;position:sticky;top:76px;max-height:calc(100vh - 110px);overflow:auto}
.aj-lista h6{font:500 10px var(--m);letter-spacing:.18em;text-transform:uppercase;color:var(--mudo);margin:12px 8px 4px}
.aj-lista h6:first-child{margin-top:2px}
.aj-it{border:0;background:none;text-align:left;padding:9px 10px;border-radius:9px;font:500 13.5px/1.35 var(--f);color:var(--fg-2);cursor:pointer}
.aj-it:hover{background:var(--bg-2);color:var(--fg)}
.aj-it[aria-current="true"]{background:var(--roxo-s);color:var(--roxo);font-weight:600}
.aj-art{background:var(--card);border-radius:var(--r);box-shadow:var(--anel),var(--sombra);padding:24px 28px;max-width:760px;line-height:1.65;font-size:14.5px;color:var(--fg-2)}
.aj-art h2,.aj-modal h2{font-size:20px;letter-spacing:-.02em;color:var(--fg);margin:0 0 12px;text-wrap:balance}
.aj-art b,.aj-modal b{color:var(--fg)}
.aj-art ol,.aj-art ul,.aj-modal ol,.aj-modal ul{padding-left:22px;display:grid;gap:7px;margin:10px 0 14px}
.aj-art p,.aj-modal p{margin:0 0 12px;max-width:68ch}
.aj-modal .aj-sec+.aj-sec{margin-top:26px}
.aj-modal .aj-sec{line-height:1.6}
dialog.aj-modal{width:min(720px,calc(100vw - 32px))}
dialog.aj-modal form{max-height:calc(100vh - 64px);overflow:auto}
@media (max-width:900px){.aj-g{grid-template-columns:minmax(0,1fr)}.aj-lista{position:static;max-height:none}}

/* ---------- tour ---------- */
.tour-mascara{position:fixed;inset:0;z-index:80;background:transparent}
.tour-anel{position:fixed;z-index:81;border-radius:12px;pointer-events:none;box-shadow:0 0 0 3px #A777FF,0 0 0 9999px rgba(8,9,28,.62);transition:left .25s,top .25s,width .25s,height .25s}
.tour-card{position:fixed;z-index:82;width:min(320px,calc(100vw - 24px));background:var(--card);color:var(--fg);border-radius:16px;padding:16px 18px;box-shadow:0 0 0 1px var(--linha),var(--sombra-2);display:flex;flex-direction:column;gap:6px}
.tour-card small{font:500 10px var(--m);letter-spacing:.16em;text-transform:uppercase;color:var(--roxo)}
.tour-card b{font-size:16px}
.tour-card p{margin:0 0 6px;font-size:13.5px;line-height:1.5;color:var(--fg-2)}
.tour-card .acoes{justify-content:flex-end}
@media (max-width:900px){.tour-card{left:12px!important;right:12px;top:auto!important;bottom:calc(16px + env(safe-area-inset-bottom,0px));width:auto}}
@media (prefers-reduced-motion:reduce){.tour-anel{transition:none}}

/* ---------- medalha nova ---------- */
.cq-festa{position:fixed;inset:0;z-index:90;display:grid;place-items:center;padding:20px;background:rgba(8,9,28,.66);backdrop-filter:blur(4px);animation:cqFundo .3s ease-out}
.cq-festa-c{position:relative;width:min(520px,100%);text-align:center;padding:28px 24px 22px;border-radius:24px;color:#fff;
  background:radial-gradient(420px 260px at 50% 0%,rgba(167,119,255,.55),transparent 65%),linear-gradient(160deg,#1D1B55,#0F1030);box-shadow:0 30px 80px rgba(0,0,0,.5),inset 0 0 0 1px rgba(255,255,255,.08);
  animation:cqEntra .5s cubic-bezier(.2,.9,.25,1.2)}
.cq-festa-c small{font:500 10.5px var(--m);letter-spacing:.2em;text-transform:uppercase;color:#C7A6FF}
.cq-festa-meds{display:flex;justify-content:center;gap:14px;margin:12px 0 6px;flex-wrap:wrap}
.cq-festa-meds>div{display:flex;flex-direction:column;align-items:center;gap:6px}
.cq-festa-meds .medalha{animation:cqGira 1.1s cubic-bezier(.2,.8,.2,1) both}
.cq-festa-meds>div:nth-child(2) .medalha{animation-delay:.12s}.cq-festa-meds>div:nth-child(3) .medalha{animation-delay:.24s}
.cq-festa-c p{margin:8px auto 14px;max-width:40ch;color:rgba(255,255,255,.78);font-size:14px}
.cq-festa-c .acoes{justify-content:center}
.cq-festa-c .btn.sec{background:rgba(255,255,255,.08);color:#fff;box-shadow:inset 0 0 0 1px rgba(255,255,255,.14)}
.cq-conf{position:absolute;left:50%;top:38%;width:8px;height:14px;border-radius:2px;background:#C7A6FF;opacity:0;transform:rotate(var(--a)) translateY(0);animation:cqConf 1.2s var(--d) ease-out forwards}
.cq-conf:nth-child(3n){background:#F8CF4F}.cq-conf:nth-child(3n+1){background:#8436FE}
@keyframes cqFundo{from{opacity:0}to{opacity:1}}
@keyframes cqEntra{from{opacity:0;transform:translateY(18px) scale(.94)}to{opacity:1;transform:none}}
@keyframes cqGira{from{opacity:0;transform:perspective(600px) rotateY(-160deg) scale(.6)}to{opacity:1;transform:perspective(600px) rotateY(0) scale(1)}}
@keyframes cqConf{0%{opacity:1;transform:rotate(var(--a)) translateY(0)}100%{opacity:0;transform:rotate(var(--a)) translateY(-190px) rotate(240deg)}}
@media (prefers-reduced-motion:reduce){.cq-festa,.cq-festa-c,.cq-festa-meds .medalha{animation:none}.cq-conf{display:none}}
