/* Cadastro (/cadastre-se/) e ativação: painel da marca à esquerda, formulário à direita. Usa os tokens de tokens.css. */
body.pd-register {
	margin: 0; background: var(--pd-bg); color: var(--pd-text); font-family: var(--pd-font);
	display: grid; grid-template-columns: 1fr 1fr; align-items: start; min-height: 100vh;
}

/* ---------- Painel esquerdo (fixo na altura da janela) ---------- */
.pd-register__aside {
	position: sticky; top: 0; height: 100vh; box-sizing: border-box;
	display: flex; align-items: center; padding: 48px 56px;
	background-color: #e0883a;
	background-image: linear-gradient(180deg, rgba(70, 30, 0, .30) 0%, rgba(70, 30, 0, .42) 100%), var(--pd-register-bg, none);
	background-size: cover; background-position: center;
}
.pd-register__aside-inner { max-width: 460px; color: #fff; text-shadow: 0 1px 14px rgba(60, 25, 0, .55); }
.pd-register__brand { margin: 0 0 16px; font-size: 38px; font-weight: 700; line-height: 1.1; }
.pd-register__lead { margin: 0; font-size: 18px; line-height: 1.55; color: rgba(255, 255, 255, .95); }

/* ---------- Coluna do formulário ---------- */
.pd-register__main { box-sizing: border-box; width: 100%; max-width: 482px; margin: 0 auto; padding: 56px 16px 72px; }
.pd-register__logo { display: block; margin: 0 0 40px; text-align: center; }
.pd-register__logo img { display: inline-block; width: 320px; max-width: 100%; height: auto; }
.pd-register__header { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; margin: 0 0 28px; }
.pd-register__header h1 { margin: 0; font-size: 28px; font-weight: 700; color: #1E293B; line-height: 1.2; }
.pd-register__header span { font-size: 13px; color: #475569; }
.pd-register__header a { color: #475569; text-decoration: underline; }
.pd-register__header a:hover { color: var(--pd-accent-text); }

/* Formulário do BuddyBoss */
body.pd-register #buddypress, body.pd-register .buddypress-wrap { max-width: none; margin: 0; padding: 0; }
body.pd-register .register-section, body.pd-register .layout-wrap { display: block; margin: 0; padding: 0; }
body.pd-register .bb-signup-field, body.pd-register .editfield { margin: 0 0 14px; padding: 0; }
body.pd-register .editfield fieldset { border: 0; padding: 0; margin: 0; min-width: 0; }
body.pd-register .bb-signup-field > label, body.pd-register .editfield > label, body.pd-register .editfield legend, body.pd-register .editfield fieldset > legend {
	display: block; margin: 0 0 8px; padding: 0; font-size: 16px; font-weight: 400; color: #1E293B;
}
body.pd-register .editfield .description, body.pd-register .editfield .bp-field-visibility, body.pd-register .field-visibility-settings-toggle, body.pd-register .field-visibility-settings-notoggle {
	margin: -2px 0 8px; font-size: 14px; color: var(--pd-muted-text);
}
body.pd-register .bb-signup-field input[type], body.pd-register .editfield input[type="text"], body.pd-register .editfield input[type="tel"], body.pd-register .editfield input[type="url"], body.pd-register select {
	box-sizing: border-box; width: 100%; height: 40px; margin: 0; padding: 0 12px; border: 1px solid var(--pd-border); border-radius: 4px;
	background-color: #fff; font-size: 16px; color: var(--pd-text); box-shadow: none;
}
body.pd-register select {
	appearance: none; padding-right: 34px;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23334155' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");
	background-repeat: no-repeat; background-position: right 12px center; background-size: 14px;
}
body.pd-register input:focus, body.pd-register select:focus { border-color: var(--pd-accent); box-shadow: 0 0 0 3px rgba(235, 93, 55, .12); outline: none; }
body.pd-register .bb-password-wrap { position: relative; }
body.pd-register .bb-password-wrap input { padding-right: 44px; }
body.pd-register .bb-toggle-password { position: absolute; top: 0; right: 0; display: flex; align-items: center; justify-content: center; width: 44px; height: 40px; color: var(--pd-muted-text); }

body.pd-register [id$="strength-result"]:empty { display: none; }
body.pd-register [id$="strength-result"] { margin: 6px 0 0; min-height: 0; font-size: 13px; }

/* Formação (rádios) em coluna, como no antigo */
body.pd-register .radio-button-options, body.pd-register .checkbox-options { display: flex; flex-direction: column; gap: 10px; flex-wrap: nowrap; }
body.pd-register .bp-radio-wrap, body.pd-register .bp-checkbox-wrap { display: flex; align-items: center; gap: 10px; }
body.pd-register .bp-radio-wrap label, body.pd-register .bp-checkbox-wrap label { margin: 0; font-size: 14px; font-weight: 400; color: var(--pd-text); }
body.pd-register input[type="radio"], body.pd-register input[type="checkbox"] { width: 20px; height: 20px; min-height: 0; margin: 0; accent-color: var(--pd-accent); }
body.pd-register input[type="file"] { box-sizing: border-box; width: 100%; padding: 6px 0; border: 0; background: transparent; font-size: 14px; }

/* Concordância com os termos e botão */
body.pd-register .register-privacy-info, body.pd-register .legal_agreement, body.pd-register .bb-signup-field.legal_agreement { margin: 18px 0; font-size: 14px; color: #334155; }
body.pd-register .legal_agreement label, body.pd-register .option-label { display: inline; margin: 0; font-size: 14px; font-weight: 400; color: #334155; }
body.pd-register .legal_agreement a, body.pd-register .option-label a { color: #1E293B; font-weight: 700; text-decoration: none; }
body.pd-register .legal_agreement a:hover, body.pd-register .option-label a:hover { color: var(--pd-accent-text); }
body.pd-register .submit { margin: 22px 0 0; }
body.pd-register #signup_submit {
	width: 100%; min-height: 44px; border: 1px solid var(--pd-accent-bg); border-radius: var(--pd-radius-btn); background: var(--pd-accent-bg); color: #fff;
	font-size: 15px; font-weight: 500; cursor: pointer;
}
body.pd-register #signup_submit:disabled { opacity: .55; cursor: not-allowed; }
body.pd-register #signup_submit:not(:disabled):hover { background: var(--pd-accent-hover); border-color: var(--pd-accent-hover); }
body.pd-register .mfp-hide { display: none !important; }
body.pd-register .error, body.pd-register .bp-feedback.error { margin: 6px 0 0; font-size: 14px; color: var(--pd-error); }

/* Até 999 px (no portal anterior o painel vira lado a lado só a partir de 1000 px) a faixa da marca fica empilhada no topo, com 262 px (285 px no celular estreito) */
@media (max-width: 999px) {
	body.pd-register { display: block; }
	.pd-register__aside { position: static; height: auto; min-height: 262px; padding: 48px 20px 40px; }
	.pd-register__aside-inner { max-width: 442px; margin: 0 auto; width: 100%; }
	.pd-register__brand { font-size: 32px; margin: 0 0 14px; }
	.pd-register__lead { font-size: 17px; }
	.pd-register__main { padding: 32px 20px 56px; }
	.pd-register__logo { margin: 0 0 28px; text-align: left; }
	.pd-register__logo img { width: 320px; }
}
@media (max-width: 480px) { .pd-register__aside { min-height: 285px; } }
