/* FCA · funil "Teste a Fábrica" — base visual de /teste/ e /v/ (IDV FCA v2: preto de fábrica, um dourado só, ciano só em HUD) */
:root{
  --bg:#05060A;--grafite:#12141F;--aco:#2A2F45;--gold:#FFC21A;--amber:#FF8A1A;--sombra:#B8680A;
  --cyan:#00F0FF;--creme:#F4F1E8;--muted:#A2A7B8;--erro:#FF5C73;--ok:#25D366;
  --r:14px;--g:16px;
}
*{box-sizing:border-box;margin:0;padding:0}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{background:var(--bg);color:var(--creme);font-family:Inter,system-ui,-apple-system,sans-serif;font-size:16px;line-height:1.5;min-height:100vh;overflow-x:hidden;
  background-image:linear-gradient(var(--grafite) 1px,transparent 1px),linear-gradient(90deg,var(--grafite) 1px,transparent 1px);background-size:40px 40px;background-position:-1px -1px}
body::before{content:"";position:fixed;inset:0;pointer-events:none;z-index:0;
  background:radial-gradient(120% 60% at 50% -10%,rgba(255,194,26,.10),transparent 60%),radial-gradient(80% 50% at 50% 110%,rgba(255,138,26,.08),transparent 60%)}
img{max-width:100%;display:block}
a{color:var(--gold)}
button{font:inherit;cursor:pointer}
:focus-visible{outline:3px solid var(--cyan);outline-offset:3px;border-radius:6px}
.sr{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

.wrap{position:relative;z-index:1;width:100%;max-width:560px;margin:0 auto;padding:0 var(--g)}

/* HUD */
.hud{font-family:VT323,monospace;font-size:19px;letter-spacing:1.5px;color:var(--muted);display:flex;justify-content:space-between;align-items:center;gap:10px;padding:14px 0 6px;text-transform:uppercase}
.hud b{color:var(--gold);font-weight:400}
.hud .on{color:var(--cyan)}
.hud .marca{height:22px;width:auto}

/* tipografia */
.kicker{font-family:VT323,monospace;font-size:21px;letter-spacing:2px;color:var(--cyan);text-transform:uppercase}
.h1{font-family:'Chakra Petch',sans-serif;font-weight:700;text-transform:uppercase;font-size:clamp(28px,8.2vw,40px);line-height:.98;letter-spacing:-.2px}
.h1 em,.h2 em{font-style:normal;color:var(--gold)}
.h2{font-family:'Chakra Petch',sans-serif;font-weight:700;text-transform:uppercase;font-size:clamp(22px,6.4vw,30px);line-height:1.02}
.lead{color:#D9DBE3;font-size:16.5px;margin-top:12px}
.lead b{color:var(--creme)}
.muted{color:var(--muted)}
.letreiro{font-family:Lobster,cursive;font-weight:400;display:inline-block;line-height:1.05;
  background:linear-gradient(180deg,#FFE27A,#FFC21A 48%,#FF8A1A);-webkit-background-clip:text;background-clip:text;color:transparent;
  filter:drop-shadow(0 4px 0 #6B2C00) drop-shadow(0 0 18px rgba(255,194,26,.45));transform:rotate(-3deg)}
.letreiro-apoio{font-family:'Chakra Petch',sans-serif;font-weight:600;text-transform:uppercase;letter-spacing:.12em;color:var(--creme);font-size:13px}

/* botões */
.btn{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;min-height:56px;padding:14px 20px;border:0;border-radius:12px;
  font-family:'Chakra Petch',sans-serif;font-weight:700;font-size:18px;letter-spacing:.4px;text-transform:uppercase;text-decoration:none;text-align:center;
  background:linear-gradient(180deg,var(--gold),var(--amber));color:#140C00;box-shadow:0 6px 0 var(--sombra);transition:transform .08s,box-shadow .08s,filter .2s}
.btn:active{transform:translateY(4px);box-shadow:0 2px 0 var(--sombra)}
.btn[disabled]{filter:grayscale(.7) brightness(.6);cursor:not-allowed;transform:none;box-shadow:0 6px 0 #3a3a3a}
.btn.wa{background:var(--ok);color:#05210F;box-shadow:0 6px 0 #138a40;text-transform:none;font-size:18px}
.btn.wa:active{box-shadow:0 2px 0 #138a40}
.btn.ghost{background:transparent;color:var(--creme);border:1px solid var(--aco);box-shadow:none;min-height:48px;font-size:15px}
.btn svg{width:22px;height:22px;flex:none}
.link{background:none;border:0;color:var(--muted);text-decoration:underline;min-height:44px;padding:8px;font-size:14px}

/* campos */
.campo{display:block;margin-top:14px}
.chips{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.chip{min-height:48px;padding:10px 12px;border-radius:12px;border:1px solid var(--aco);background:var(--grafite);color:var(--creme);font:600 15px/1.2 Inter,system-ui,sans-serif;text-align:left;cursor:pointer}
.chip[aria-checked="true"]{border-color:var(--gold);background:rgba(255,194,26,.12);color:var(--gold);box-shadow:0 0 0 1px var(--gold) inset}
.chip:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
#fTipoOutro{margin-top:8px}
.campo label,.rot{display:block;font-family:VT323,monospace;font-size:19px;letter-spacing:1.5px;text-transform:uppercase;color:var(--muted);margin-bottom:6px}
.inp,textarea.inp{width:100%;min-height:54px;background:#0B0D16;border:2px solid var(--aco);border-radius:12px;color:var(--creme);font:inherit;font-size:17px;padding:14px 14px;transition:border-color .15s,box-shadow .15s}
textarea.inp{min-height:132px;resize:vertical;line-height:1.45}
.inp::placeholder{color:#6E7386}
.inp:focus{outline:none;border-color:var(--gold);box-shadow:0 0 0 4px rgba(255,194,26,.15)}
.inp.err{border-color:var(--erro)}
.msg-err{color:var(--erro);font-size:14.5px;margin-top:8px;min-height:0}
.msg-err:empty{display:none}
.dica{color:var(--muted);font-size:14px;margin-top:8px}

/* esteira (listras douradas/pretas) */
.esteira{height:14px;border-top:2px solid var(--sombra);border-bottom:2px solid var(--sombra);
  background:repeating-linear-gradient(-45deg,var(--gold) 0 10px,#0B0B0F 10px 20px);background-size:28.28px 14px}
.esteira.anda{animation:anda .6s linear infinite}
@keyframes anda{to{background-position:28.28px 0}}

/* cartão */
.card{background:linear-gradient(180deg,rgba(18,20,31,.92),rgba(10,11,18,.95));border:1px solid var(--aco);border-radius:var(--r);padding:20px 18px;box-shadow:0 24px 60px rgba(0,0,0,.45)}

/* modal */
.modal{position:fixed;inset:0;z-index:50;display:none;align-items:flex-end;justify-content:center;background:rgba(3,3,6,.78);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}
.modal.on{display:flex}
.modal .sheet{width:100%;max-width:520px;max-height:94vh;overflow:auto;background:#0D0F19;border:1px solid var(--aco);border-bottom:0;border-radius:20px 20px 0 0;padding:22px var(--g) calc(22px + env(safe-area-inset-bottom));animation:sobe .28s ease-out}
@media (min-width:640px){.modal{align-items:center}.modal .sheet{border-radius:20px;border-bottom:1px solid var(--aco)}}
@keyframes sobe{from{transform:translateY(40px);opacity:0}}
.x{position:absolute;right:10px;top:10px;width:44px;height:44px;border:0;background:transparent;color:var(--muted);font-size:26px;line-height:1}

.rodape{position:relative;z-index:1;text-align:center;color:#7C8194;font-size:12.5px;padding:28px var(--g) 40px}
.rodape a{color:#9AA0AE}

@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition:none!important}}

/* referências (opcional) */
.ref-envio{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:14px}
.ref-envio .rbtn{padding:10px 6px;font-size:14px;letter-spacing:0;text-transform:none;text-align:center;white-space:nowrap}
.ref-lista{list-style:none;margin-top:12px;display:grid;gap:10px}
.ref-lista:empty{display:none}
.ref-item{display:grid;grid-template-columns:56px 1fr 44px;grid-template-areas:"th nome x" "sel sel sel";gap:8px 10px;align-items:center;border:1px solid var(--aco);background:#0B0D16;border-radius:12px;padding:8px}
.ref-th{grid-area:th;width:56px;height:56px;border-radius:8px;background:#161929;display:grid;place-items:center;font-size:26px;overflow:hidden}
.ref-th img,.ref-th video{width:100%;height:100%;object-fit:cover}
.ref-nome{grid-area:nome;min-width:0;font-size:14px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ref-item .ref-sel{grid-area:sel}
.ref-sel{width:100%;min-height:44px;background:#0B0D16;border:1px solid var(--aco);border-radius:10px;color:var(--creme);font:inherit;font-size:15px;padding:8px 10px}
.ref-uso{margin-top:8px}
.ref-x{grid-area:x;width:44px;height:44px;border:1px solid var(--aco);background:transparent;color:var(--muted);border-radius:10px;font-size:22px;line-height:1}
.ref-x:hover{color:var(--erro);border-color:var(--erro)}
.envio-ref{text-align:center;padding:10px 0}
.barra{height:14px;border-radius:7px;border:1px solid var(--aco);background:#0B0D16;overflow:hidden;margin-top:14px}
.barra i{display:block;height:100%;width:0;background:repeating-linear-gradient(-45deg,var(--gold) 0 10px,#0B0B0F 10px 20px);background-size:28.28px 14px;animation:anda .6s linear infinite;transition:width .25s}

.idioma-linha{display:flex;align-items:center;gap:12px}
.idioma-linha .ref-sel{flex:0 0 auto;width:auto;min-width:148px;max-width:48%}
.idioma-dica{flex:1;min-width:0;font-size:12px;line-height:1.35;color:var(--muted)}
.btn[hidden]{display:none}
#repAcoes{display:flex;flex-direction:column;gap:12px;margin-top:18px}
