/* public/assets/paginas/cadastro.css — CSS da página cadastro.html (saiu do <style> inline na onda F2, 26/out/2026: CSP estrita
   sem 'unsafe-inline' em style-src). Movimento puro: mesmo conteúdo, carregado no MESMO ponto da página. */
*{margin:0;padding:0;box-sizing:border-box}
/* :root herdado de /design-tokens.css */
body{font-family:'Inter','Segoe UI',system-ui,sans-serif;background:var(--bg);color:var(--text);min-height:100vh;display:flex;align-items:flex-start;justify-content:center;padding:24px 16px}
@media(min-height:900px){body{align-items:center}}
@media(max-width:480px),(max-height:700px){body{display:block;min-height:auto;overflow-y:auto;padding:16px}.signup-container{margin:0 auto}}
.signup-container{width:100%;max-width:460px}
.signup-card{background:var(--card);border:1px solid var(--border);border-radius:16px;padding:36px 32px}
@media(max-width:400px){.signup-card{padding:24px 18px;border-radius:12px}}
.logo-area{text-align:center;margin-bottom:24px}
.logo-area img{width:44px;height:44px;margin-bottom:10px;border-radius:8px}
.logo-link{display:inline-block;text-decoration:none;color:inherit;border-radius:12px}
.logo-link:hover h1{text-decoration:underline;text-underline-offset:3px}
.logo-link:focus-visible{outline:2px solid var(--primary);outline-offset:4px}
.logo-area h1{font-size:18px;font-weight:700;color:#fff;letter-spacing:0.5px}
.logo-area p{font-size:12px;color:var(--muted);margin-top:4px}
.trial-badge{display:inline-block;background:rgba(16,185,129,0.12);color:var(--success);font-size:12px;font-weight:600;padding:4px 12px;border-radius:20px;margin-top:10px}

/* Persona selector */
.persona-label{font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:0.5px;font-weight:600;margin-bottom:8px}
.persona-grid{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:20px}
.persona-btn{flex:1 1 90px}
.persona-btn{background:var(--bg);border:1px solid var(--border);border-radius:10px;padding:10px 6px;cursor:pointer;text-align:center;transition:all 0.2s;color:var(--muted);font-family:inherit}
.persona-btn:hover{border-color:#334155;color:var(--text)}
.persona-btn.active{border-color:var(--primary);background:rgba(37,99,235,0.1);color:#60a5fa}
.persona-btn .persona-icon{font-size:20px;display:block;margin-bottom:4px}
.persona-btn .persona-name{font-size:11px;font-weight:600;line-height:1.2}

.form-group{margin-bottom:14px}
.form-group label{display:block;font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:0.5px;margin-bottom:5px;font-weight:600}
.form-group input,.form-group select{width:100%;background:var(--bg);border:1px solid var(--border);color:var(--text);padding:11px 14px;border-radius:10px;font-size:13px;outline:none;font-family:inherit;transition:border-color 0.2s;min-height:44px}
.form-group input:focus,.form-group select:focus{border-color:var(--primary)}
.form-group select option{background:var(--card)}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}
@media(max-width:480px){.form-row{grid-template-columns:1fr}}
@media(max-width:768px){input,select,textarea{font-size:16px!important}}
.pass-wrap{position:relative}
.pass-wrap input{padding-right:46px}
.eye-toggle{position:absolute;right:0;top:0;bottom:0;width:44px;background:none;border:none;cursor:pointer;color:var(--muted);font-size:16px;display:flex;align-items:center;justify-content:center;border-radius:0 10px 10px 0;transition:color .2s}
.eye-toggle:hover{color:var(--text)}
.btn{padding:12px 16px;border:none;border-radius:10px;font-size:14px;font-weight:600;cursor:pointer;width:100%;transition:all 0.2s;font-family:inherit;min-height:44px}
.btn-primary{background:var(--primary);color:#fff}
.btn-primary:hover{opacity:0.9}
.btn-primary:disabled{opacity:0.5;cursor:not-allowed}
.error-msg{color:var(--danger);font-size:13px;text-align:center;margin-bottom:14px;display:none}
.success-msg{color:var(--success);font-size:13px;text-align:center;margin-bottom:14px;display:none}
.convite-box{border:1px solid var(--primary);background:rgba(37,99,235,0.08);border-radius:10px;padding:10px 12px;font-size:13px;line-height:1.45;margin-bottom:14px}
.convite-box b{color:var(--text)}
.links{text-align:center;margin-top:18px;font-size:13px;color:var(--muted)}
.links a{color:var(--primary);text-decoration:none}
.links a:hover{text-decoration:underline}
.hidden{display:none}
/* Embarcador = contato comercial: só o seletor de persona fica no formulário de conta */
#cadastroForm.modo-contato > :not(.persona-label):not(.persona-grid){display:none !important}
.uf-on{background:rgba(37,99,235,0.15)!important;border-color:var(--primary)!important;color:#60a5fa!important}

/* ── Painel com VÍDEO (redesign v2, out/2026) — só ≥1000px: coluna fixa à esquerda (metade da
   tela, como o login) e o cartão centra no resto. Abaixo de 1000px some — e o /assets/cd-site.js
   nem cria o <video> (data-video-min). Painel sempre escuro (imagem atrás) → texto branco. ── */
.cad-media{display:none}
@media(min-width:1000px){
  body{padding-left:calc(50vw + 16px)}
  .cad-media{position:fixed;top:0;bottom:0;left:0;width:50vw;display:flex;flex-direction:column;justify-content:space-between;gap:24px;padding:40px 44px;overflow:hidden;isolation:isolate;background:#0a0f1f;color:#fff}
}
.cad-media .cm-layer{position:absolute;inset:0;z-index:-1}
.cad-media .media-poster,.cad-media .media-poster img,.cad-media .media-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.cad-media .media-grad{position:absolute;inset:0;background:linear-gradient(180deg,rgba(7,11,21,.78) 0%,rgba(7,11,21,.38) 34%,rgba(7,11,21,.5) 60%,rgba(7,11,21,.92) 100%)}
.cad-media .cm-brand{display:flex;align-items:center;gap:12px;align-self:flex-start;text-decoration:none;color:#fff;border-radius:10px}
.cad-media .cm-brand:hover b{text-decoration:underline;text-underline-offset:3px}
.cad-media .cm-brand:focus-visible{outline:2px solid #fff;outline-offset:4px}
.cad-media .cm-brand img{width:30px;height:30px;border-radius:8px}
.cad-media .cm-brand b{display:block;font-size:16px;font-weight:800;color:#fff}
.cad-media .cm-brand small{display:block;font-size:10px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,.8)}
.cad-media .cm-tag{font-size:30px;font-weight:800;line-height:1.15;letter-spacing:-.01em;max-width:440px;color:#fff;text-shadow:0 1px 14px rgba(0,0,0,.5)}
.cad-media .pause-btn{position:absolute;top:36px;right:24px;font:600 13px/1 'Inter','Segoe UI',system-ui,sans-serif;color:#fff;background:rgba(7,11,21,.55);border:1px solid rgba(255,255,255,.3);border-radius:999px;padding:9px 13px;cursor:pointer}
.cad-media .pause-btn:hover{background:rgba(7,11,21,.75)}
.cad-media .pause-btn:focus-visible{outline:2px solid #fff;outline-offset:2px}
.cad-media .pause-btn[hidden]{display:none}
