/* Estallo — Motor de briefings (reaproveita tokens/efeitos do design system) */
:root{
  --ink:#26333D;
  --ink-2:#3E4E5A;
  --ink-3:#6B7A86;
  --muted-ink:#92A0AB;
  --line:#E2E7EB;
  --bg:#F8FAFB;
  --surface-2:#F1F4F6;
  --white:#fff;
  --brand:#1099D3;
  --brand-hover:#0B6E9A;
  --brand-2:#10BA84;
  --brand-2-hover:#0C8A62;
  --sky:#8FD9F5;
  --tint-sky:#E7F5FC;
  --tint-mint:#E5F8F1;

  --brand-cliente:#1099D3;

  --gradient-brand:linear-gradient(135deg,var(--brand),var(--brand-2));

  --font-display:'Sora',sans-serif;
  --font-body:'Manrope',sans-serif;
  --font-mono:'JetBrains Mono',monospace;

  --r-sm:10px;
  --r-md:14px;
  --r-lg:20px;
  --r-xl:28px;
  --r-pill:100px;
  --container:640px;

  --shadow-soft:0 1px 2px rgba(38,51,61,.06),0 8px 24px -14px rgba(38,51,61,.16);
  --shadow-lift:0 20px 40px -18px rgba(38,51,61,.24);
  --shadow-glow:0 8px 28px -6px rgba(16,153,211,.45);
}

*{box-sizing:border-box;}
html,body{overflow-x:hidden;}
body{margin:0;min-height:100vh;background:#12171B;background-image:radial-gradient(130% 70% at 50% -8%,#2B3843 0%,#1C242B 45%,#12171B 100%);background-repeat:no-repeat;background-attachment:fixed;color:#fff;font-family:var(--font-body);-webkit-font-smoothing:antialiased;line-height:1.5;}
img{max-width:100%;display:block;}
main{position:relative;overflow:hidden;min-height:100vh;display:flex;flex-direction:column;}
.wrap{max-width:var(--container);margin:0 auto;padding:0 20px;width:100%;}
h1,h2,h3{font-family:var(--font-display);letter-spacing:-.03em;margin:0;color:#fff;}

.reveal{opacity:0;transform:translateY(26px);transition:opacity .7s cubic-bezier(.16,1,.3,1),transform .7s cubic-bezier(.16,1,.3,1);}
.reveal.in{opacity:1;transform:translateY(0);}

/* Cápsulas de vidro flutuando pela página (mesmo efeito do site institucional) */
.page-shapes{position:absolute;inset:0;overflow:hidden;z-index:0;pointer-events:none;}
.shape{position:absolute;}
.shape-bob{width:100%;height:100%;position:relative;animation:shapeBob 12s ease-in-out infinite;animation-delay:var(--delay,0s);}
.shape-fill{position:absolute;inset:0;border-radius:999px;backdrop-filter:blur(2px);border:2px solid rgba(255,255,255,.18);box-shadow:0 8px 32px rgba(0,0,0,.25);}
.shape-fill::after{content:"";position:absolute;inset:0;border-radius:999px;background:radial-gradient(circle at 50% 50%,rgba(255,255,255,.22),transparent 70%);}
.shape-blue{background:linear-gradient(90deg,rgba(16,153,211,.85),transparent);}
.shape-green{background:linear-gradient(90deg,rgba(16,186,132,.85),transparent);}
.shape-auto{opacity:0;transform:translateY(-150px) rotate(var(--rot-start,-10deg));animation:shapeIn 2.4s cubic-bezier(.23,.86,.39,.96) forwards;animation-delay:var(--delay,0s);}
@keyframes shapeIn{from{opacity:0;transform:translateY(-150px) rotate(var(--rot-start,-10deg));}to{opacity:1;transform:translateY(0) rotate(var(--rot,0deg));}}
@keyframes shapeBob{0%,100%{transform:translateY(0);}50%{transform:translateY(15px);}}

/* 4 cápsulas no desktop: 2 na esquerda (p1,p3), 2 na direita (p2,p4) */
.shape-p1{--rot:-14deg;--rot-start:-30deg;--delay:0s;left:-7%;top:12%;width:min(360px,30vw);height:min(84px,7vw);}
.shape-p2{--rot:16deg;--rot-start:4deg;--delay:.1s;right:-7%;top:28%;width:min(320px,26vw);height:min(74px,6vw);}
.shape-p3{--rot:10deg;--rot-start:-4deg;--delay:.2s;left:-6%;top:62%;width:min(280px,24vw);height:min(66px,5.5vw);}
.shape-p4{--rot:-18deg;--rot-start:-34deg;--delay:.15s;right:-6%;top:78%;width:min(340px,28vw);height:min(80px,6.5vw);}

@media (max-width:760px){
  .shape-p2,.shape-p4{display:none;}
  .shape-p1,.shape-p3{width:min(300px,50vw);height:min(70px,12vw);opacity:.7;}
}
@media (prefers-reduced-motion:reduce){.shape-auto{animation-duration:.01s;}.shape-bob{animation:none;}}

/* Botões */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;border:none;border-radius:var(--r-sm);padding:14px 24px;font-family:var(--font-body);font-weight:600;font-size:14.5px;cursor:pointer;text-decoration:none;transition:.2s;white-space:nowrap;}
.btn-gradient{background:linear-gradient(135deg,var(--brand-cliente),var(--brand-2));color:#fff;box-shadow:var(--shadow-glow);}
.btn-gradient:hover{filter:brightness(1.1);}
.btn-outline-dark{background:rgba(255,255,255,.05);color:#fff;border:1.5px solid rgba(255,255,255,.2);}
.btn-outline-dark:hover{background:rgba(255,255,255,.12);}

.pill{display:inline-flex;align-items:center;gap:9px;padding:8px 16px;border-radius:var(--r-pill);background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.15);font-family:var(--font-mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;font-weight:600;color:var(--sky);backdrop-filter:blur(8px);}

/* Cabeçalho */
.briefing-header{position:relative;z-index:1;padding-top:36px;padding-bottom:8px;text-align:center;}
.briefing-logo{height:40px;margin:0 auto 20px;}
.briefing-header h1{font-size:clamp(21px,3.2vw,28px);font-weight:700;}
.briefing-header p{margin:10px 0 0;font-size:14.5px;color:rgba(255,255,255,.65);}

/* Área do formulário */
.briefing-main{position:relative;z-index:1;flex:1;display:flex;align-items:center;padding-top:24px;padding-bottom:48px;}

.question-eyebrow{margin-bottom:22px;}
.question-eyebrow .num{font-family:var(--font-mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;font-weight:700;color:var(--sky);}
.question-eyebrow .contexto{display:block;margin-top:6px;font-size:13.5px;color:rgba(255,255,255,.55);font-style:italic;}

.question-card{width:100%;transition:opacity .3s cubic-bezier(.16,1,.3,1),transform .3s cubic-bezier(.16,1,.3,1);}
.question-card.leaving{opacity:0;transform:translateY(-16px);}
.question-card.entering{opacity:0;transform:translateY(16px);}

.question-title{font-size:clamp(22px,3.6vw,30px);font-weight:700;line-height:1.3;margin-bottom:24px;}

.option-list{display:flex;flex-direction:column;gap:12px;}
.option-btn,.option-checkbox{display:flex;align-items:center;gap:14px;width:100%;text-align:left;background:rgba(38,51,61,.55);border:1.5px solid rgba(255,255,255,.12);border-radius:var(--r-md);padding:16px 18px;color:#fff;font-family:var(--font-body);font-size:15px;font-weight:500;cursor:pointer;backdrop-filter:blur(14px);transition:border-color .2s,background .2s;}
.option-btn:hover,.option-checkbox:hover{border-color:rgba(255,255,255,.3);}
.option-btn.is-selected,.option-checkbox.is-checked{border-color:var(--brand-cliente);background:rgba(255,255,255,.08);}
.option-checkbox .box{width:20px;height:20px;flex:0 0 auto;border-radius:6px;border:1.5px solid rgba(255,255,255,.3);display:flex;align-items:center;justify-content:center;transition:.2s;}
.option-checkbox.is-checked .box{background:var(--brand-cliente);border-color:var(--brand-cliente);}
.option-checkbox .box svg{width:13px;height:13px;color:#fff;opacity:0;transition:.15s;}
.option-checkbox.is-checked .box svg{opacity:1;}

.conditional-field{margin:2px 0 0 0;padding:12px 14px 2px;}
.conditional-field input{width:100%;background:rgba(0,0,0,.25);border:1px solid rgba(255,255,255,.15);border-radius:var(--r-sm);padding:10px 12px;color:#fff;font-family:var(--font-body);font-size:14px;}
.conditional-field input::placeholder{color:rgba(255,255,255,.4);}

.text-question input,.text-question textarea{width:100%;background:rgba(38,51,61,.55);border:1.5px solid rgba(255,255,255,.12);border-radius:var(--r-md);padding:16px 18px;color:#fff;font-family:var(--font-body);font-size:15px;backdrop-filter:blur(14px);resize:vertical;}
.text-question textarea{min-height:120px;}
.text-question input::placeholder,.text-question textarea::placeholder{color:rgba(255,255,255,.4);}
.text-question input:focus,.text-question textarea:focus{outline:none;border-color:var(--brand-cliente);}

.question-actions{display:flex;align-items:center;gap:12px;margin-top:32px;}
.btn-voltar{flex:0 0 auto;}
.btn-continuar{margin-left:auto;}
.btn-continuar[disabled]{opacity:.35;cursor:not-allowed;box-shadow:none;filter:none;pointer-events:none;}

.progress-bar{position:fixed;left:0;right:0;bottom:0;height:4px;background:rgba(255,255,255,.08);z-index:20;}
.progress-bar-fill{height:100%;width:0%;background:linear-gradient(90deg,var(--brand-cliente),var(--brand-2));transition:width .3s cubic-bezier(.16,1,.3,1);}

/* Modal de retomada */
.resume-modal-overlay{position:fixed;inset:0;z-index:100;background:rgba(10,10,8,.7);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;padding:20px;}
.resume-modal{max-width:400px;width:100%;background:#1C242B;border:1px solid rgba(255,255,255,.12);border-radius:var(--r-lg);padding:32px;text-align:center;box-shadow:var(--shadow-lift);}
.resume-modal h2{font-size:19px;font-weight:700;}
.resume-modal p{margin:12px 0 0;font-size:14.5px;color:rgba(255,255,255,.65);}
.resume-modal .actions{margin-top:26px;display:flex;flex-direction:column;gap:10px;}

/* Erro de envio */
.error-banner{width:100%;text-align:center;}
.error-banner p{font-size:15.5px;color:rgba(255,255,255,.8);margin:0 0 20px;}
.error-banner .btn{margin:0 auto;}

/* Tela de agradecimento */
.thank-you-screen{width:100%;text-align:center;}
.thank-you-screen h2{font-size:clamp(24px,4vw,32px);font-weight:700;}
.thank-you-screen p{margin:16px 0 0;font-size:15.5px;color:rgba(255,255,255,.7);}

@media (max-width:600px){
  .question-actions .btn{flex:1;}
}
