/* além — acesso: entrar, criar conta (por etapas) e minha conta.
   Linguagem comum: painel escuro com tubo de TV sutil e eclipse devagar, campos de contorno fino,
   rótulos em fonte de máquina, botão preto em pílula e brilho ciano só na interação. */
:root {
	--ax-ink: var(--alem-ink, #111213);
	--ax-paper: var(--alem-paper, #f6f3ee);
	--ax-night: var(--alem-night-cover, #0c0d0e);
	--ax-on-night: #f6f3ee;
	--ax-accent: var(--alem-accent, #067378);
	--ax-cyan: var(--alem-accent-on-dark, #36aeb0);
	--ax-rule: var(--alem-rule, #b8afa1);
	--ax-muted: #5b5750;
	--ax-field: #fffdfa;
	--ax-mono: "IBM Plex Mono", ui-monospace, Menlo, "Courier New", monospace;
	--ax-sans: "Source Sans 3", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
	--ax-serif: Fraunces, Georgia, serif;
}

/* ---------- painel escuro ---------- */
.ax-side {
	position: sticky; top: 0; z-index: 1; box-sizing: border-box; height: 100vh; overflow: hidden; isolation: isolate;
	display: flex; flex-direction: column; justify-content: space-between; gap: 28px;
	padding: clamp(28px, 4vw, 60px); background: var(--ax-night); color: var(--ax-on-night);
}
.ax-side::before { content: ""; position: absolute; inset: 0; z-index: 3; pointer-events: none; background: repeating-linear-gradient(0deg, rgb(0 0 0 / 7%) 0 1px, transparent 1px 4px), radial-gradient(130% 160% at 50% 0%, transparent 65%, rgb(0 0 0 / 16%)); }
.ax-side::after { content: ""; position: absolute; left: 0; right: 0; top: -90px; height: 90px; z-index: 3; pointer-events: none; background: linear-gradient(180deg, transparent, rgb(255 255 255 / 2%), transparent); animation: ax-roll 8s linear infinite; }
@keyframes ax-roll { to { top: 100%; } }
.ax-eclipse { position: relative; width: clamp(96px, 11vw, 150px); aspect-ratio: 1; flex: none; margin: 30px 0 0 30px; }
.ax-eclipse i { position: absolute; inset: 0; border-radius: 50%; }
.ax-eclipse i:first-child { background: var(--ax-on-night); box-shadow: 0 0 0 clamp(9px, 1vw, 14px) rgb(246 243 238 / 10%), 0 0 0 clamp(18px, 2vw, 28px) rgb(246 243 238 / 5%); animation: ax-pulse 10s ease-in-out infinite; }
.ax-eclipse i:last-child { background: var(--ax-night); animation: ax-eclipse 20s ease-in-out infinite; }
@keyframes ax-eclipse { 0%, 100% { transform: translateX(-34%); } 50% { transform: translateX(-8%); } }
@keyframes ax-pulse { 50% { box-shadow: 0 0 0 clamp(12px, 1.4vw, 20px) rgb(246 243 238 / 7%), 0 0 0 clamp(24px, 2.8vw, 38px) rgb(246 243 238 / 3%); } }
.ax-side .ax-kicker, .ax-kicker { margin: 0 0 12px; color: var(--ax-cyan); font: 500 11px/1.3 var(--ax-mono); letter-spacing: .2em; text-transform: uppercase; }
.ax-side h1 { margin: 0 0 14px; max-width: 14ch; color: var(--ax-on-night); font: 700 clamp(30px, 3.4vw, 50px)/1.02 var(--ax-serif); letter-spacing: -.035em; }
.ax-side p { margin: 0 0 10px; max-width: 34ch; color: #cfd6d4; font: 400 16px/1.55 var(--ax-sans); }
.ax-side strong em { font-weight: 700; font-style: italic; }
.ax-side-list { margin: 16px 0 0; padding: 0; list-style: none; display: grid; gap: 8px; }
.ax-side-list li { padding-left: 18px; position: relative; color: #cfd6d4; font: 500 12px/1.4 var(--ax-mono); letter-spacing: .04em; }
.ax-side-list li::before { content: ""; position: absolute; left: 0; top: .5em; width: 8px; height: 8px; background: var(--ax-cyan); }
.ax-side a { color: var(--ax-cyan); }

/* ---------- coluna principal ---------- */
body.alem-access { margin: 0; display: grid; grid-template-columns: minmax(300px, 38%) minmax(0, 1fr); min-height: 100vh; background: var(--ax-paper); color: var(--ax-ink); font-family: var(--ax-sans); }
.ax-main { box-sizing: border-box; width: 100%; max-width: 760px; padding: clamp(24px, 5vw, 72px); }
.ax-logo { display: inline-block; margin-bottom: clamp(18px, 3vw, 32px); }
.ax-logo img { display: block; width: auto; height: 46px; }
.ax-main h2 { margin: 0 0 8px; font: 700 clamp(30px, 3.4vw, 46px)/1.04 var(--ax-serif); letter-spacing: -.035em; }
.ax-lede { margin: 0 0 22px; color: var(--ax-muted); font: 400 17px/1.5 var(--ax-sans); }
.ax-main a:not(.ax-btn):not(.ax-logo) { color: var(--ax-accent); text-decoration: underline; text-underline-offset: 3px; text-decoration-thickness: 1px; background: none; border: 0; }
.ax-main a:not(.ax-btn):not(.ax-logo):is(:hover, :focus-visible) { color: var(--ax-ink); background: none; }
.ax-back { display: inline-block; margin-top: 26px; font: 500 11px/1 var(--ax-mono); letter-spacing: .14em; text-transform: uppercase; }
.ax-notice { margin: 0 0 18px; padding: 12px 16px; border: 1.5px solid var(--ax-ink); border-left-width: 6px; border-radius: 8px; background: var(--ax-field); font: 600 15px/1.45 var(--ax-sans); }
.ax-notice.is-ok { border-color: var(--ax-accent); }

/* ---------- campos ---------- */
.ax-form { display: grid; gap: 18px; }
.ax-field { display: grid; gap: 7px; }
.ax-label { color: var(--ax-accent); font: 500 11px/1.2 var(--ax-mono); letter-spacing: .16em; text-transform: uppercase; }
.ax-label em { color: var(--ax-muted); font-style: normal; letter-spacing: .06em; text-transform: none; }
.ax-form :is(input:not([type="checkbox"]):not([type="file"]):not([type="hidden"]), textarea, select) {
	box-sizing: border-box; width: 100%; min-height: 48px; padding: 12px 14px; border: 1.5px solid var(--ax-ink); border-radius: 10px; outline: 0;
	background: var(--ax-field); color: var(--ax-ink); font: 400 17px/1.35 var(--ax-sans); transition: box-shadow .2s ease, border-color .2s ease;
}
.ax-form textarea { min-height: 120px; resize: vertical; }
.ax-form :is(input, textarea, select):focus { border-color: var(--ax-accent); box-shadow: 0 0 0 3px color-mix(in srgb, var(--ax-cyan) 32%, transparent); }
.ax-hint { margin: 0; color: var(--ax-muted); font: 400 14px/1.45 var(--ax-sans); }
.ax-check { display: grid; grid-template-columns: 22px 1fr; gap: 12px; align-items: start; font: 400 16px/1.45 var(--ax-sans); cursor: pointer; }
.ax-check input { appearance: none; width: 22px; height: 22px; margin: 1px 0 0; border: 1.5px solid var(--ax-ink); border-radius: 5px; background: var(--ax-field); display: grid; place-items: center; cursor: pointer; transition: background-color .15s ease, box-shadow .2s ease; }
.ax-check input::after { content: ""; width: 10px; height: 6px; margin-top: -2px; border: solid var(--ax-paper); border-width: 0 0 2.5px 2.5px; transform: rotate(-45deg) scale(0); transition: transform .15s ease; }
.ax-check input:checked { background: var(--ax-ink); }
.ax-check input:checked::after { transform: rotate(-45deg) scale(1); }
.ax-check input:focus-visible { box-shadow: 0 0 0 3px color-mix(in srgb, var(--ax-cyan) 45%, transparent); }
.ax-set { margin: 0; padding: 18px 0 0; border: 0; border-top: 2px solid var(--ax-ink); display: grid; gap: 14px; min-width: 0; }
.ax-set > legend { padding: 0 12px 0 0; font: 700 22px/1.1 var(--ax-serif); letter-spacing: -.03em; }
.ax-fold { border-top: 1px solid var(--ax-rule); padding-top: 12px; }
.ax-fold summary { cursor: pointer; font: 600 16px/1.3 var(--ax-sans); }
.ax-fold[open] summary { margin-bottom: 14px; }

/* ---------- botões ---------- */
.ax-btn, .ax-main button[type="submit"], .ax-form button.ax-btn {
	appearance: none; display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 48px; padding: 0 26px; border: 1.5px solid var(--ax-night); border-radius: 999px;
	background: var(--ax-night); color: var(--ax-on-night); font: 700 12px/1 var(--ax-sans); letter-spacing: .12em; text-transform: uppercase; text-decoration: none; cursor: pointer;
	transition: box-shadow .25s ease, transform .2s ease, background-color .2s ease, color .2s ease;
}
.ax-btn:is(:hover, :focus-visible), .ax-main button[type="submit"]:is(:hover, :focus-visible) { background: var(--ax-night); color: var(--ax-on-night); transform: translateY(-2px); box-shadow: 0 0 0 1.5px var(--ax-cyan), 0 0 16px 2px color-mix(in srgb, var(--ax-cyan) 50%, transparent); }
.ax-btn:active { transform: translateY(0); }
.ax-btn.is-ghost { background: transparent; color: var(--ax-ink); border-color: var(--ax-ink); }
.ax-btn.is-ghost:is(:hover, :focus-visible) { background: transparent; color: var(--ax-ink); }
.ax-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; margin-top: 8px; }

/* ---------- etapas do cadastro ---------- */
.ax-progress { display: grid; grid-auto-flow: column; grid-auto-columns: 1fr; gap: 6px; margin: 0 0 8px; padding: 0; list-style: none; }
.ax-progress li { height: 5px; border-radius: 3px; background: color-mix(in srgb, var(--ax-ink) 16%, transparent); transition: background-color .3s ease; }
.ax-progress li.is-done { background: var(--ax-cyan); }
.ax-progress li.is-current { background: var(--ax-ink); }
.ax-stepno { margin: 0 0 18px; color: var(--ax-accent); font: 500 11px/1.3 var(--ax-mono); letter-spacing: .18em; text-transform: uppercase; }
.ax-step { display: grid; gap: 18px; border: 0; margin: 0; padding: 0; min-width: 0; }
.ax-step[hidden] { display: none; }
.ax-step > legend { padding: 0; margin: 0 0 4px; font: 700 clamp(24px, 2.6vw, 32px)/1.1 var(--ax-serif); letter-spacing: -.03em; }
.ax-js .ax-step:not(.is-current) { display: none; }
.ax-step-note { margin: 0; padding: 12px 14px; border-radius: 10px; background: color-mix(in srgb, var(--ax-cyan) 14%, var(--ax-paper)); font: 500 14px/1.45 var(--ax-sans); }
.ax-nojs-actions { display: grid; }
.ax-js .ax-nojs-actions { display: none; }
.ax-wizard-nav { display: none; }
.ax-js .ax-wizard-nav { display: flex; }
.trap { position: absolute !important; left: -9999px !important; }

/* ---------- minha conta ---------- */
body.alem-access .alem-account-profile-heading { display: flex; align-items: center; gap: 18px; margin: 4px 0 22px; padding: 0; border: 0; }
body.alem-access .alem-account-profile-heading > img { width: 76px; height: 76px; flex: 0 0 76px; border-radius: 50%; object-fit: cover; }
body.alem-access .alem-account-eyebrow { margin: 0 0 4px; color: var(--ax-accent); font: 500 11px/1.3 var(--ax-mono); letter-spacing: .18em; }
body.alem-access .alem-account-intro { margin: 0; max-width: 56ch; font: 400 17px/1.45 var(--ax-sans); }
body.alem-access .alem-account-nav[role="tablist"] { display: inline-flex; flex-wrap: nowrap; gap: 0; max-width: 100%; margin: 0 0 24px; padding: 3px; overflow-x: auto; border: 1.5px solid var(--ax-ink); border-radius: 999px; scrollbar-width: none; }
body.alem-access .alem-account-nav[role="tablist"]::-webkit-scrollbar { display: none; }
body.alem-access .alem-account-nav[role="tablist"] [role="tab"] { flex: none; min-height: 40px; margin: 0; padding: 0 18px; border: 0; border-radius: 999px; background: transparent; color: var(--ax-ink); font: 700 11px/1 var(--ax-sans); letter-spacing: .1em; text-transform: uppercase; transform: none; transition: box-shadow .25s ease, background-color .2s ease, color .2s ease; }
body.alem-access .alem-account-nav[role="tablist"] [role="tab"]::after { content: none; }
body.alem-access .alem-account-nav[role="tablist"] [role="tab"][aria-selected="true"] { background: var(--ax-night); color: var(--ax-on-night); }
body.alem-access .alem-account-nav[role="tablist"] [role="tab"]:not([aria-selected="true"]):is(:hover, :focus-visible) { background: transparent; color: var(--ax-ink); transform: none; box-shadow: inset 0 0 0 1.5px var(--ax-cyan), 0 0 12px 1px color-mix(in srgb, var(--ax-cyan) 45%, transparent); }
.ax-stats { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; margin: 0 0 26px; }
.ax-stats div { padding: 12px 14px; border: 1px solid var(--ax-rule); border-radius: 10px; background: var(--ax-field); }
.ax-stats b { display: block; font: 700 28px/1 var(--ax-serif); letter-spacing: -.03em; }
.ax-stats span { display: block; margin-top: 4px; color: var(--ax-accent); font: 500 10px/1.2 var(--ax-mono); letter-spacing: .16em; text-transform: uppercase; }
body.alem-access .alem-account-panel h3 { font: 700 clamp(24px, 2.6vw, 32px)/1.1 var(--ax-serif); letter-spacing: -.03em; }
body.alem-access .alem-saved-page-title, body.alem-access .alem-saved-page-title * { color: var(--ax-ink); }
body.alem-access .alem-saved-page-intro { color: var(--ax-muted); }
body.alem-access .alem-support-eyebrow { color: var(--ax-accent); font: 500 11px/1.3 var(--ax-mono); letter-spacing: .18em; text-transform: uppercase; }
body.alem-access .alem-account-panel :is(input:not([type="checkbox"]):not([type="file"]):not([type="hidden"]), textarea, select) { box-sizing: border-box; width: 100%; min-height: 48px; padding: 12px 14px; border: 1.5px solid var(--ax-ink); border-radius: 10px; background: var(--ax-field); color: var(--ax-ink); font: 400 17px/1.35 var(--ax-sans); outline: 0; }
body.alem-access .alem-account-panel :is(input, textarea, select):focus { border-color: var(--ax-accent); box-shadow: 0 0 0 3px color-mix(in srgb, var(--ax-cyan) 32%, transparent); }
body.alem-access .alem-account-panel label { display: grid; gap: 6px; margin: 14px 0 0; font: 600 14px/1.3 var(--ax-sans); }
body.alem-access .alem-account-panel label.check { display: grid; grid-template-columns: 22px 1fr; gap: 12px; align-items: start; font-weight: 400; font-size: 16px; }
body.alem-access .alem-account-panel label.check input { appearance: none; width: 22px; min-height: 22px; height: 22px; padding: 0; border-radius: 5px; display: grid; place-items: center; cursor: pointer; }
body.alem-access .alem-account-panel label.check input::after { content: ""; width: 10px; height: 6px; margin-top: -2px; border: solid var(--ax-paper); border-width: 0 0 2.5px 2.5px; transform: rotate(-45deg) scale(0); transition: transform .15s ease; }
body.alem-access .alem-account-panel label.check input:checked { background: var(--ax-ink); }
body.alem-access .alem-account-panel label.check input:checked::after { transform: rotate(-45deg) scale(1); }
body.alem-access .alem-account-panel fieldset { margin: 22px 0 0; padding: 16px 0 0; border: 0; border-top: 2px solid var(--ax-ink); }
body.alem-access .alem-account-panel legend { padding: 0 10px 0 0; font: 700 21px/1.15 var(--ax-serif); letter-spacing: -.03em; }
body.alem-access .alem-account-panel small { display: block; margin: 6px 0 0; color: var(--ax-muted); font: 400 14px/1.45 var(--ax-sans); }
body.alem-access .alem-account-panel button[type="submit"] { margin-top: 18px; }
body.alem-access .alem-saved-card { border-radius: 12px; }

/* ---------- celular ---------- */
@media (max-width: 860px) {
	body.alem-access { display: block; }
	.ax-side { position: relative; height: auto; flex-direction: row; align-items: center; gap: 18px; padding: 20px clamp(18px, 5vw, 28px); }
	.ax-side .ax-eclipse { width: 64px; }
	.ax-side h1 { font-size: 22px; margin: 0; max-width: none; }
	.ax-side p, .ax-side-list, .ax-side .ax-kicker { display: none; }
	.ax-main { padding: 22px clamp(18px, 5vw, 28px) 48px; }
	.ax-stats { grid-template-columns: 1fr 1fr 1fr; }
	.ax-stats b { font-size: 22px; }
}
@media (prefers-reduced-motion: reduce) { .ax-side::after, .ax-eclipse i { animation: none !important; } }

/* ---------- tela de entrada (wp-login.php) ---------- */
body.login.alem-login .language-switcher { display: none !important; }
body.login.alem-login #login { width: min(440px, calc(44vw - 96px)); }
body.login.alem-login #loginform, body.login.alem-login #lostpasswordform, body.login.alem-login #resetpassform { padding: 0; border: 0; background: transparent; box-shadow: none; }
body.login.alem-login label { color: var(--ax-accent); font: 500 11px/1.3 var(--ax-mono); letter-spacing: .16em; text-transform: uppercase; }
body.login.alem-login input[type="text"], body.login.alem-login input[type="password"], body.login.alem-login input[type="email"] {
	box-sizing: border-box; min-height: 50px; padding: 12px 14px; border: 1.5px solid var(--ax-ink); border-radius: 10px; background: var(--ax-field); color: var(--ax-ink); font: 400 17px/1.35 var(--ax-sans); box-shadow: none; outline: 0;
}
body.login.alem-login input:focus { border-color: var(--ax-accent); box-shadow: 0 0 0 3px color-mix(in srgb, var(--ax-cyan) 32%, transparent); }
body.login.alem-login .forgetmenot label { font: 400 15px/1.3 var(--ax-sans); letter-spacing: 0; text-transform: none; color: var(--ax-ink); }
body.login.alem-login .button-primary, body.login.alem-login #wp-submit {
	min-height: 48px; padding: 0 28px; border: 1.5px solid var(--ax-night); border-radius: 999px; background: var(--ax-night); color: var(--ax-on-night); font: 700 12px/1 var(--ax-sans); letter-spacing: .12em; text-transform: uppercase; box-shadow: none; text-shadow: none;
	transition: box-shadow .25s ease, transform .2s ease;
}
body.login.alem-login .button-primary:is(:hover, :focus-visible), body.login.alem-login #wp-submit:is(:hover, :focus-visible) { background: var(--ax-night); color: var(--ax-on-night); transform: translateY(-2px); box-shadow: 0 0 0 1.5px var(--ax-cyan), 0 0 16px 2px color-mix(in srgb, var(--ax-cyan) 50%, transparent); }
.alem-login-cta { margin-top: 22px; padding: 14px 0; border-top: 2px solid var(--ax-ink); border-bottom: 1px solid var(--ax-ink); display: grid; gap: 4px; font: 400 15px/1.4 var(--ax-sans); }
.alem-login-cta a { color: var(--ax-accent); font-weight: 700; text-decoration: underline; text-underline-offset: 3px; text-decoration-thickness: 1px; }
.alem-login-cta a:is(:hover, :focus-visible) { color: var(--ax-ink); }

/* ---------- entrar: painel escuro e convite para criar conta ---------- */
body.login.alem-login .alem-login-brand.ax-side { position: fixed; inset: 0 44vw 0 0; height: auto; padding: clamp(28px, 4vw, 60px); }
body.login.alem-login .alem-login-brand.ax-side::after { right: 0; bottom: auto; width: auto; height: 90px; background: linear-gradient(180deg, transparent, rgb(255 255 255 / 2%), transparent); }
body.login.alem-login .ax-login-title { margin: 0 0 14px; max-width: 14ch; color: var(--ax-on-night); font: 700 clamp(30px, 3.4vw, 50px)/1.02 var(--ax-serif); letter-spacing: -.035em; }
body.login.alem-login .alem-login-cta { position: fixed; right: 0; bottom: 0; z-index: 2; box-sizing: border-box; width: 44vw; margin: 0; padding: 16px max(48px, calc((44vw - 440px) / 2)); border-top: 2px solid var(--ax-ink); border-bottom: 0; background: var(--ax-paper); }
body.login.alem-login #backtoblog a { font: 500 11px/1 var(--ax-mono); letter-spacing: .14em; text-transform: uppercase; }
@media (max-width: 1000px) {
	html, body.login.alem-login { background: var(--ax-paper); }
	body.login.alem-login { display: block; padding: 0 32px 48px; }
	body.login.alem-login::before { display: none; }
	body.login.alem-login .alem-login-brand.ax-side { position: relative; inset: auto; width: calc(100% + 64px); height: auto; margin: 0 -32px 32px; flex-direction: row; align-items: center; justify-content: flex-start; gap: 18px; padding: 18px 28px; }
	body.login.alem-login .alem-login-brand.ax-side .ax-eclipse { width: 60px; margin: 6px; }
	body.login.alem-login .alem-login-brand.ax-side p:not(.ax-login-title), body.login.alem-login .alem-login-brand.ax-side .ax-kicker { display: none; }
	body.login.alem-login .ax-login-title { font-size: 22px; margin: 0; max-width: none; }
	body.login.alem-login .ax-login-title br { display: none; }
	body.login.alem-login #login { width: min(420px, 100%); margin: 0 auto; }
	body.login.alem-login .alem-login-cta { position: static; width: auto; max-width: 420px; margin: 22px auto 0; padding: 14px 0; border-bottom: 1px solid var(--ax-ink); }
	body.login.alem-login .language-switcher, body.login.alem-login .privacy-policy-page-link { position: static; margin: 22px auto 0; }
}

.ax-form label, .ax-form .ax-field, .ax-form .ax-check { margin: 0 !important; }
.ax-form .ax-hint, .ax-form small { margin: 0 !important; }
.ax-form .ax-field > .ax-label { margin-bottom: 0; }
.ax-main .ax-lede, .ax-main .ax-hint { max-width: 62ch; }
@media (max-width: 860px) { .ax-side .ax-eclipse { margin: 6px 0 0 6px; } }
.ax-form label.ax-check { display: grid !important; grid-template-columns: 22px minmax(0, 1fr); }
.ax-form label.ax-field { display: grid !important; }
.ax-btn[hidden], .ax-main button[hidden] { display: none !important; }
.ax-photo { display: flex; align-items: center; gap: 20px; }
.ax-photo > div { display: grid; gap: 8px; justify-items: start; min-width: 0; }
.ax-photo-preview { width: 96px; height: 96px; flex: 0 0 96px; border-radius: 50%; object-fit: cover; background: var(--ax-night); }
.ax-photo label.ax-btn { width: auto; display: inline-flex !important; }
.ax-main a:not(.ax-btn):not(.ax-logo), .ax-main a:not(.ax-btn):not(.ax-logo):is(:hover, :focus-visible) { background-image: none !important; background-color: transparent !important; box-shadow: none; }
.ax-form label.ax-field[hidden], .ax-form [data-whatsapp-phone][hidden] { display: none !important; }
@media (max-width: 1000px) {
	body.login.alem-login.alem-login { padding: 0 24px 48px !important; position: relative; }
	body.login.alem-login.alem-login .alem-login-brand.ax-side { position: relative !important; inset: auto !important; display: flex !important; min-height: 0 !important; height: auto !important; width: calc(100% + 48px) !important; margin: 0 -24px 28px !important; padding: 16px 24px !important; overflow: hidden; z-index: 1; }
	body.login.alem-login.alem-login .alem-login-brand.ax-side .ax-eclipse { width: 54px !important; margin: 6px !important; }
	body.login.alem-login.alem-login .ax-login-title { display: block !important; margin: 0 !important; font-size: 24px !important; line-height: 1.05; max-width: 14ch; color: var(--ax-on-night); }
	body.login.alem-login.alem-login #login { margin: 0 auto !important; }
}
body.login.alem-login.alem-login #wp-submit, body.login.alem-login.alem-login .button-primary, body.login.alem-login.alem-login .wp-core-ui .button-primary { border-radius: 999px !important; }
body.login.alem-login.alem-login .button.wp-hide-pw { border-radius: 999px !important; }

/* ---------- Meu apoio (quem ainda não apoia): cartão "Eclipse" ---------- */
body.alem-access .alem-account-support:not(:has(.alem-account-rewards)) {
	position: relative; isolation: isolate; overflow: hidden; margin: 0; padding: clamp(22px, 4vw, 40px); border: 0; border-radius: 14px; color: var(--ax-on-night);
	background-color: var(--ax-accent);
	background-image: repeating-linear-gradient(0deg, rgb(0 0 0 / 15%) 0 2px, transparent 2px 5px), radial-gradient(130% 120% at 50% 50%, transparent 55%, rgb(0 0 0 / 34%)), radial-gradient(120% 140% at 85% 0%, color-mix(in srgb, var(--ax-accent) 70%, #3fb6b8), var(--ax-accent) 55%, color-mix(in srgb, var(--ax-accent) 78%, #000));
}
body.alem-access .alem-account-support:not(:has(.alem-account-rewards)) > * { position: relative; z-index: 2; max-width: 46ch; }
body.alem-access .alem-account-support:not(:has(.alem-account-rewards)) h3, body.alem-access .alem-account-support:not(:has(.alem-account-rewards)) .alem-support-eyebrow, body.alem-access .alem-account-support:not(:has(.alem-account-rewards)) p { color: var(--ax-on-night); }
body.alem-access .alem-account-support:not(:has(.alem-account-rewards))::before { content: ""; position: absolute; z-index: 1; top: 50%; right: clamp(24px, 6vw, 80px); width: clamp(84px, 11vw, 140px); aspect-ratio: 1; border-radius: 50%; transform: translateY(-50%); background: var(--ax-on-night); box-shadow: 0 0 0 clamp(8px, 1vw, 14px) rgb(246 243 238 / 14%), 0 0 0 clamp(16px, 2vw, 28px) rgb(246 243 238 / 7%); }
body.alem-access .alem-account-support:not(:has(.alem-account-rewards))::after { content: ""; position: absolute; z-index: 1; top: 50%; right: clamp(24px, 6vw, 80px); width: clamp(84px, 11vw, 140px); aspect-ratio: 1; border-radius: 50%; background: var(--ax-night); animation: ax-soon-eclipse 22s ease-in-out infinite; transform: translate(-34%, -50%); }
@keyframes ax-soon-eclipse { 0%, 100% { transform: translate(-34%, -50%); } 50% { transform: translate(-8%, -50%); } }
body.alem-access .alem-account-support:not(:has(.alem-account-rewards)) a { display: inline-flex; align-items: center; min-height: 46px; padding: 0 22px; border-radius: 999px; background: var(--ax-on-night) !important; background-image: none !important; color: var(--ax-ink) !important; font: 700 12px/1 var(--ax-sans); letter-spacing: .12em; text-transform: uppercase; text-decoration: none; transition: box-shadow .25s ease, transform .2s ease; }
body.alem-access .alem-account-support:not(:has(.alem-account-rewards)) a:is(:hover, :focus-visible) { transform: translateY(-2px); box-shadow: 0 0 0 1.5px var(--ax-cyan), 0 0 16px 2px color-mix(in srgb, var(--ax-cyan) 50%, transparent); }
@media (max-width: 700px) { body.alem-access .alem-account-support:not(:has(.alem-account-rewards))::before, body.alem-access .alem-account-support:not(:has(.alem-account-rewards))::after { top: 24px; right: 22px; width: 64px; transform: none; } body.alem-access .alem-account-support:not(:has(.alem-account-rewards)) h3 { margin-top: 56px; } }
@media (prefers-reduced-motion: reduce) { body.alem-access .alem-account-support:not(:has(.alem-account-rewards))::after { animation: none; } }
body.alem-access .alem-account-support:not(:has(.alem-account-rewards)) > * { max-width: min(46ch, calc(100% - clamp(150px, 21vw, 250px))); }
@media (max-width: 700px) { body.alem-access .alem-account-support:not(:has(.alem-account-rewards)) > * { max-width: none; } }

/* ---------- Meus comentários ---------- */
body.alem-access .alem-comment-history-intro { margin: 6px 0 20px; color: var(--ax-muted); font: 400 16px/1.5 var(--ax-sans); max-width: 62ch; }
body.alem-access .alem-account-comment-list { list-style: none; margin: 0; padding: 0; border-top: 2px solid var(--ax-ink); counter-reset: none; }
body.alem-access .alem-account-comment { display: grid; gap: 8px; padding: 18px 0 16px; border-bottom: 1px solid var(--ax-rule); }
body.alem-access .alem-account-comment-meta { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 6px 14px; color: var(--ax-muted); font: 500 11px/1.3 var(--ax-mono); letter-spacing: .14em; text-transform: uppercase; }
body.alem-access .alem-account-comment-status { display: inline-flex; align-items: center; gap: 7px; padding: 5px 10px; border: 1px solid currentColor; border-radius: 999px; color: var(--ax-accent); font: inherit; }
body.alem-access .alem-account-comment-status::before { content: ""; width: 7px; height: 7px; background: currentColor; }
body.alem-access .alem-account-comment.is-pending .alem-account-comment-status { color: #8a5a00; }
body.alem-access .alem-account-comment.is-removed .alem-account-comment-status, body.alem-access .alem-account-comment.is-hidden .alem-account-comment-status { color: #8a2d2d; }
body.alem-access .alem-account-comment-on { margin: 0; font: 400 15px/1.4 var(--ax-sans); color: var(--ax-muted); }
body.alem-access .ax-main .alem-account-comment-on a { color: var(--ax-ink); font: 700 clamp(18px, 1.8vw, 22px)/1.2 var(--ax-serif); letter-spacing: -.02em; text-decoration: none; background: none; }
body.alem-access .ax-main .alem-account-comment-on a:is(:hover, :focus-visible) { text-decoration: underline; text-underline-offset: 4px; text-decoration-thickness: 1px; }
body.alem-access .alem-account-comment-body { max-width: 66ch; color: var(--ax-ink); font: 400 17px/1.55 var(--ax-sans); display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 7; overflow: hidden; }
body.alem-access .alem-account-comment-body > :first-child { margin-top: 0; }
body.alem-access .alem-account-comment-body > :last-child { margin-bottom: 0; }
body.alem-access .alem-account-comment-body p { margin: 0 0 8px; max-width: none; color: inherit; font: inherit; }
body.alem-access .alem-account-comment-body blockquote { margin: 8px 0; padding: 10px 14px; border: 0; border-left: 4px solid var(--ax-accent); background: color-mix(in srgb, var(--ax-ink) 6%, transparent); font: inherit; font-size: .94em; }
body.alem-access .alem-account-comment-removed { margin: 0; padding: 10px 14px; border-left: 4px solid #8a2d2d; background: color-mix(in srgb, #8a2d2d 8%, transparent); font: 400 15px/1.5 var(--ax-sans); color: var(--ax-ink); }
body.alem-access .alem-account-comment-foot { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 6px 16px; }
body.alem-access .alem-account-comment-counts { display: inline-flex; gap: 16px; color: var(--ax-muted); font: 500 11px/1 var(--ax-mono); letter-spacing: .12em; text-transform: uppercase; }
body.alem-access .ax-main .alem-account-comment-link { color: var(--ax-accent); font: 700 12px/1 var(--ax-sans); letter-spacing: .1em; text-transform: uppercase; text-decoration: none; background: none; }
body.alem-access .ax-main .alem-account-comment-link:is(:hover, :focus-visible) { color: var(--ax-ink); text-decoration: underline; text-underline-offset: 4px; }
body.alem-access .alem-account-comment-pages { display: flex; flex-wrap: wrap; gap: 8px; margin: 22px 0 0; }
body.alem-access .ax-main .alem-account-comment-pages a { display: grid; place-items: center; min-width: 40px; min-height: 40px; padding: 0 10px; border: 1.5px solid var(--ax-ink); border-radius: 999px; background: none; color: var(--ax-ink); font: 700 13px/1 var(--ax-sans); text-decoration: none; transition: box-shadow .2s ease; }
body.alem-access .ax-main .alem-account-comment-pages a[aria-current="page"] { background: var(--ax-night) !important; color: var(--ax-on-night); border-color: var(--ax-night); }
body.alem-access .ax-main .alem-account-comment-pages a:not([aria-current="page"]):is(:hover, :focus-visible) { box-shadow: 0 0 0 1.5px var(--ax-cyan), 0 0 12px 1px color-mix(in srgb, var(--ax-cyan) 45%, transparent); }


/* ---------- Abas da conta: indicador deslizante, rótulos curtos no celular, painéis que entram suave ---------- */
body.alem-access .alem-account-nav[role="tablist"] { position: relative; }
body.alem-access .alem-account-nav[role="tablist"] [role="tab"] { position: relative; z-index: 1; }
.ax-tab-ind { position: absolute; z-index: 0; top: 3px; bottom: 3px; left: 0; width: 0; border-radius: 999px; background: var(--ax-night); box-shadow: 0 0 0 0 transparent; transition: transform .38s cubic-bezier(.2, .8, .2, 1), width .3s cubic-bezier(.2, .8, .2, 1); pointer-events: none; }
body.alem-access .alem-account-nav.ax-tabs-ind [role="tab"][aria-selected="true"] { background: transparent; color: var(--ax-on-night); }
body.alem-access .alem-account-nav [role="tab"] .ax-tab-short { display: none; }
body.alem-access .alem-account-panel:not([hidden]) { animation: ax-panel-in .36s cubic-bezier(.2, .8, .2, 1) both; }
@keyframes ax-panel-in { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: none; } }
body.alem-access .alem-account-comment { animation: ax-panel-in .4s cubic-bezier(.2, .8, .2, 1) both; }
body.alem-access .alem-account-comment:nth-child(2) { animation-delay: .06s; }
body.alem-access .alem-account-comment:nth-child(3) { animation-delay: .12s; }
body.alem-access .alem-account-comment:nth-child(n+4) { animation-delay: .18s; }
@media (max-width: 700px) {
	body.alem-access .alem-account-nav[role="tablist"] { display: flex; width: 100%; }
	body.alem-access .alem-account-nav [role="tab"] { flex: 1 1 auto; padding: 0 8px; letter-spacing: .06em; font-size: 10px; }
	body.alem-access .alem-account-nav [role="tab"] .ax-tab-full { display: none; }
	body.alem-access .alem-account-nav [role="tab"] .ax-tab-short { display: inline; }
}
@media (prefers-reduced-motion: reduce) { .ax-tab-ind { transition: none; } body.alem-access .alem-account-panel:not([hidden]), body.alem-access .alem-account-comment { animation: none; } }

/* ---------- Meus comentários: disposição mais limpa ---------- */
body.alem-access .alem-account-panel > .alem-support-eyebrow:first-child { margin-top: 0; }
body.alem-access #alem-panel-comments h3 { margin: 4px 0 8px; }
body.alem-access .alem-comment-history-intro { margin: 0 0 18px; font-size: 15px; }
body.alem-access .alem-account-comment-list { border-top: 2px solid var(--ax-ink); }
body.alem-access .alem-account-comment { gap: 10px; padding: 18px 0 18px; }
body.alem-access .alem-account-comment-meta { justify-content: space-between; gap: 8px 12px; letter-spacing: .08em; font-size: 10.5px; }
body.alem-access .alem-account-comment-status { padding: 4px 9px; font-size: 10px; letter-spacing: .1em; }
body.alem-access .alem-account-comment-on { margin: 0; line-height: 1.25; }
body.alem-access .ax-main .alem-account-comment-on a { font-size: clamp(20px, 2.2vw, 24px); letter-spacing: -.025em; }
body.alem-access .alem-account-comment-body { max-width: none; margin: 2px 0 0; padding: 2px 0 2px 14px; border-left: 3px solid var(--ax-accent); font-size: 16.5px; line-height: 1.55; color: color-mix(in srgb, var(--ax-ink) 88%, transparent); }
body.alem-access .alem-account-comment-removed { margin: 2px 0 0; }
body.alem-access .alem-account-comment-foot { gap: 6px 14px; margin-top: 2px; padding-top: 10px; border-top: 1px dashed color-mix(in srgb, var(--ax-ink) 22%, transparent); }
body.alem-access .alem-account-comment-counts { gap: 14px; letter-spacing: .08em; font-size: 10.5px; }
body.alem-access .ax-main .alem-account-comment-link { font-size: 11px; letter-spacing: .08em; }
@media (max-width: 520px) {
	body.alem-access .alem-account-comment-meta { flex-direction: row-reverse; justify-content: space-between; }
	body.alem-access .alem-account-comment-foot { flex-direction: column; align-items: flex-start; }
}
@media (max-width: 700px) { body.alem-access .alem-account-nav [role="tab"] { flex: 1 1 0; text-align: center; justify-content: center; } }
body.alem-access .alem-account-panel h3 { margin: 4px 0 8px; }
body.alem-access .alem-account-panel .alem-support-eyebrow { margin: 0 0 2px; }
body.alem-access .alem-account-panel .alem-comment-history-intro { margin: 0 0 16px; }
body.alem-access .alem-account-nav[role="tablist"] { margin-bottom: 20px; }
@media (max-width: 700px) { body.alem-access .alem-account-nav[role="tablist"] [role="tab"] { flex: 1 1 0; text-align: center; justify-content: center; } }
body.alem-access .alem-account-panel label.check input { border: 1.5px solid var(--ax-ink); background: var(--ax-field); margin: 1px 0 0; }
body.alem-access .alem-account-panel label.check input:checked { background: var(--ax-ink); }
body.alem-access .alem-account-panel label.check { text-align: left; }

/* Cada comentário vira uma caixa própria, com espaço entre elas */
body.alem-access .alem-account-comment-list { display: grid; gap: 14px; border-top: 0; margin-top: 4px; }
body.alem-access .alem-account-comment { padding: 16px 16px 14px; border: 1px solid var(--ax-rule); border-radius: 14px; background: var(--ax-field); box-shadow: 0 1px 0 color-mix(in srgb, var(--ax-ink) 6%, transparent); }
body.alem-access .alem-account-comment.is-pending { border-color: #c79a3a; }
body.alem-access .alem-account-comment.is-removed, body.alem-access .alem-account-comment.is-hidden { border-color: color-mix(in srgb, #8a2d2d 45%, var(--ax-rule)); background: color-mix(in srgb, #8a2d2d 4%, var(--ax-field)); }
body.alem-access .alem-account-comment-foot { margin-top: 2px; padding-top: 0; border-top: 0; }
body.alem-access .alem-account-comment-body { background: color-mix(in srgb, var(--ax-ink) 4%, transparent); border-radius: 0 8px 8px 0; padding: 10px 12px 10px 14px; }

/* ---- Cadastro em duas telas (9ª entrega) ---- */
.ax-link { appearance: none; background: none; border: 0; padding: 0; margin: 0; font: inherit; color: var(--ax-accent); text-decoration: underline; text-underline-offset: 3px; text-decoration-thickness: 1px; cursor: pointer; min-height: 0; width: auto; letter-spacing: inherit; text-transform: none; }
.ax-link:is(:hover, :focus-visible) { color: var(--ax-ink); }
.ax-link:disabled { color: var(--ax-muted); text-decoration: none; cursor: default; }
.ax-reenvio p { margin: 18px 0 8px; }
.ax-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 8px; }
.ax-senha { position: relative; display: block; }
.ax-senha input { width: 100%; padding-right: 52px; }
.ax-olho { position: absolute; right: 4px; top: 50%; width: 44px; height: 44px; margin-top: -22px; padding: 0; border: 0; background: none; cursor: pointer; color: var(--ax-muted); min-height: 0; }
.ax-olho::before { content: ""; display: block; width: 22px; height: 22px; margin: auto; background: currentColor; -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8'%3E%3Cpath d='M1.5 12S5.5 5 12 5s10.5 7 10.5 7-4 7-10.5 7S1.5 12 1.5 12z'/%3E%3Ccircle cx='12' cy='12' r='3'/%3E%3C/svg%3E") center / contain no-repeat; mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8'%3E%3Cpath d='M1.5 12S5.5 5 12 5s10.5 7 10.5 7-4 7-10.5 7S1.5 12 1.5 12z'/%3E%3Ccircle cx='12' cy='12' r='3'/%3E%3C/svg%3E") center / contain no-repeat; }
.ax-olho[aria-pressed="true"] { color: var(--ax-ink); }
.ax-olho:focus-visible { outline: 2px solid var(--ax-cyan); outline-offset: 0; border-radius: 6px; }
.ax-regras { list-style: none; margin: 0; padding: 0; display: grid; gap: 8px; font: 400 15px/1.4 var(--ax-sans); color: var(--ax-muted); }
.ax-regras li { display: grid; grid-template-columns: 20px 1fr; gap: 10px; align-items: center; }
.ax-regras i { width: 18px; height: 18px; border-radius: 50%; border: 1.5px solid var(--ax-muted); box-sizing: border-box; position: relative; }
.ax-regras li.is-ok { color: var(--ax-ink); }
.ax-regras li.is-ok i { background: var(--ax-ink); border-color: var(--ax-ink); }
.ax-regras li.is-ok i::after { content: ""; position: absolute; left: 4px; top: 3px; width: 8px; height: 4px; border: solid var(--ax-paper); border-width: 0 0 2px 2px; transform: rotate(-45deg); }
[hidden] { display: none !important; }
.ax-main button.ax-link[type="submit"], .ax-main button.ax-link { all: unset; box-sizing: border-box; display: inline; color: var(--ax-accent); font: inherit; text-decoration: underline; text-underline-offset: 3px; text-decoration-thickness: 1px; cursor: pointer; }
.ax-main button.ax-link:is(:hover, :focus-visible) { color: var(--ax-ink); }
.ax-main button.ax-link:focus-visible { outline: 2px solid var(--ax-cyan); outline-offset: 2px; border-radius: 2px; }
.ax-main button.ax-link:disabled { color: var(--ax-muted); text-decoration: none; cursor: default; }
.ax-main button.ax-btn.is-ghost[type="submit"] { background: transparent; color: var(--ax-ink); border-color: var(--ax-ink); }
.ax-main button.ax-btn.is-ghost[type="submit"]:is(:hover, :focus-visible) { background: transparent; color: var(--ax-ink); }
