/* Cadastro com teste grátis, assinatura (planos), em construção e avisos de plano na tela de escolha. Prefixo pl-. */
.pl-selo { text-align: center; margin: -10px 0 18px; color: var(--neon); font-weight: 600; font-size: 14px; letter-spacing: .04em; }
.pl-criar { margin-top: 10px; }
.pl-mudo { color: var(--texto2); font-size: 14px; }
.pl-construcao { text-align: center; }
.pl-construcao h1 { font-size: clamp(30px, 6vw, 42px); line-height: 1.05; margin: 10px 0 12px; }
.pl-construcao .pl-mudo { margin: 0 0 22px; }
.pl-cone { font-size: 56px; line-height: 1; margin-top: 8px; }

.pl-periodo { width: fit-content; align-self: flex-start; display: inline-flex; gap: 4px; padding: 4px; border: 1px solid var(--linha2); border-radius: 12px; background: rgba(15, 15, 15, .8); margin: 4px 0 22px; }
.pl-periodo button { border: 0; background: none; color: var(--texto2); font: 600 15px var(--corpo); padding: 9px 22px; border-radius: 9px; cursor: pointer; }
.pl-periodo button.on { background: var(--neon); color: #052600; }
.pl-grade { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: clamp(16px, 2.4vw, 26px); }
.pl-cartao { position: relative; display: flex; flex-direction: column; gap: 14px; border: 1px solid var(--linha2); border-radius: 18px; padding: 28px; background: rgba(20, 20, 20, .85); }
.pl-cartao.destaque { border-color: rgba(57, 255, 20, .5); box-shadow: 0 0 60px -24px rgba(57, 255, 20, .6); }
.pl-cartao h2 { font-family: var(--titulo); font-style: italic; font-weight: 800; font-stretch: 78%; text-transform: uppercase; font-size: 32px; margin: 0; }
.pl-fita { position: absolute; top: 18px; right: 18px; background: var(--neon); color: #052600; font-size: 12px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; padding: 4px 10px; border-radius: 99px; }
.pl-preco { font: 800 34px var(--corpo); color: var(--neon); display: flex; flex-direction: column; }
.pl-preco span { font-size: 16px; font-weight: 600; color: var(--texto2); }
.pl-preco small { font-size: 13px; font-weight: 500; color: var(--texto2); }
.pl-cartao ul { list-style: none; margin: 0 0 6px; padding: 0; display: flex; flex-direction: column; gap: 8px; flex: 1; }
.pl-cartao li { padding-left: 24px; position: relative; color: var(--texto); }
.pl-cartao li::before { content: "✓"; position: absolute; left: 0; color: var(--neon); font-weight: 800; }
.pl-rodape { margin-top: 22px; }

/* Tela de escolha: faixa do teste grátis e cartão bloqueado */
.pl-faixa { display: flex; align-items: center; justify-content: space-between; gap: 12px; flex-wrap: wrap; border: 1px solid rgba(240, 180, 41, .45); background: rgba(240, 180, 41, .08); color: var(--texto); border-radius: 14px; padding: 12px 16px; margin: 0 0 20px; }
.pl-faixa b { color: var(--amarelo); }
.escolha-cartao.pl-bloqueado { opacity: .45; filter: grayscale(.7); pointer-events: none; }
.escolha-cartao.pl-bloqueado .escolha-cta { background: none; border: 1px solid var(--linha2); color: var(--texto2); box-shadow: none; }
@media (max-width: 760px) { .pl-grade { grid-template-columns: 1fr; } .pl-cartao { padding: 22px 18px; } }
.pl-minha { border: 1px solid var(--linha2); border-radius: 14px; padding: 16px 18px; margin: 0 0 20px; background: rgba(20, 20, 20, .85); display: flex; justify-content: space-between; align-items: center; gap: 12px; flex-wrap: wrap; }
.pl-minha b { color: var(--neon); }
.pl-dlg { background: var(--painel); color: var(--texto); border: 1px solid var(--linha2); border-radius: 18px; padding: 26px; width: min(460px, calc(100% - 32px)); }
.pl-dlg::backdrop { background: rgba(0, 0, 0, .7); }
.pl-dlg h2 { font-family: var(--titulo); font-style: italic; font-weight: 800; font-stretch: 78%; text-transform: uppercase; font-size: 28px; margin: 0 0 6px; }
.pl-peq { font-size: 13px; }
.pl-dlg-botoes { display: flex; gap: 10px; justify-content: flex-end; margin-top: 16px; }
/* Login e cadastro da Alpha Green: só a marca Alpha */
.login-logos.so-alpha { justify-content: center; }
.login-logos.so-alpha .marca-alpha { justify-content: center; }
.caixa .login-logos.so-alpha .marca img { height: 64px; }

/* Checkout em linha (componente de planos) */
.pl-pagar { max-width: 520px; display: flex; flex-direction: column; gap: 10px; border: 1px solid var(--linha2); border-radius: 16px; padding: 22px; background: rgba(20, 20, 20, .9); }
.pl-pagar h3 { font-family: var(--titulo); font-style: italic; font-weight: 800; font-stretch: 78%; text-transform: uppercase; font-size: 26px; margin: 0; }
.pl-pagar[hidden], .pl-grade[hidden], .pl-periodo[hidden] { display: none; }

/* Pop-up de planos dentro da Alpha */
.pl-popup { width: min(980px, calc(100vw - 24px)); max-height: calc(100vh - 32px); margin: auto; padding: 24px 26px; border: 1px solid rgba(57, 255, 20, .35); border-radius: 20px;
  background: #0d0f0e; color: var(--texto); box-shadow: 0 0 80px -30px rgba(57, 255, 20, .6); overflow: auto; font-family: var(--corpo); }
.pl-popup::backdrop { background: rgba(0, 0, 0, .75); }
.pl-popup-cab { display: flex; justify-content: space-between; align-items: flex-start; gap: 12px; margin-bottom: 14px; }
.pl-popup-cab h2 { font-family: var(--titulo); font-style: italic; font-weight: 800; font-stretch: 78%; text-transform: uppercase; font-size: clamp(28px, 4vw, 40px); margin: 4px 0; line-height: 1; }
.pl-popup-cab p { margin: 6px 0 0; }
.pl-fechar { flex: none; width: 40px; height: 40px; border-radius: 10px; border: 1px solid var(--linha2); background: none; color: var(--texto); font-size: 18px; cursor: pointer; }
.pl-fechar:hover { border-color: var(--neon); color: var(--neon); }
.pl-popup .pl-cartao { padding: 22px; } .pl-popup .pl-cartao h2 { font-size: 26px; } .pl-popup .pl-preco { font-size: 28px; }
.pl-popup-pe { display: flex; justify-content: center; margin-top: 18px; }

/* Faixa do teste grátis no topo da Alpha */
.pl-faixa-teste { display: flex; align-items: center; justify-content: center; gap: 12px; flex-wrap: wrap; padding: 8px 16px; background: rgba(240, 180, 41, .1); border-bottom: 1px solid rgba(240, 180, 41, .35); color: var(--texto); font-size: 14px; }
.pl-faixa-teste b { color: var(--amarelo); }
.pl-faixa-teste button { border: 0; border-radius: 8px; padding: 6px 14px; background: var(--neon); color: #052600; font: 700 13px var(--corpo); cursor: pointer; }
.pl-faixa-teste b[data-relogio] { font-variant-numeric: tabular-nums; }
.pl-faixa-teste.urgente { background: rgba(255, 59, 59, .12); border-bottom-color: rgba(255, 59, 59, .45); }
.pl-faixa-teste.urgente b { color: #ff7a7a; }
