/* Porta das casas: molde do login do BCX-Brain, na cor do cliente. */
html{ background:var(--e) !important; }
body.login{ margin:0; font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; color:#0F172A; -webkit-font-smoothing:antialiased;
  background:var(--e) !important;
  background-image:radial-gradient(circle at 18% 12%,color-mix(in srgb,var(--p) 55%,transparent) 0%,transparent 46%),radial-gradient(circle at 84% 88%,color-mix(in srgb,var(--a) 45%,transparent) 0%,transparent 52%),linear-gradient(160deg,rgba(0,0,0,.10),rgba(0,0,0,.38)) !important;
  background-attachment:fixed !important; min-height:100vh; display:flex; flex-direction:column; align-items:center; padding:24px 16px; box-sizing:border-box; }
body.login #login{ width:100% !important; max-width:448px; margin:auto auto 0 !important; padding:40px 36px 32px !important; box-sizing:border-box; position:relative; text-align:center;
  background:#FFFFFF; border:1px solid rgba(255,255,255,.6); border-radius:20px; box-shadow:0 30px 80px rgba(0,0,0,.42),0 2px 0 rgba(255,255,255,.5) inset; }
#login h1{ display:none; }
.cn-marca{ margin:0 0 18px; font-size:30px; font-weight:800; letter-spacing:-.02em; color:var(--p); line-height:1.1; }
.cn-marca img{ height:64px; width:auto; display:block; margin:0 auto; }
.cn-selo{ display:inline-flex; align-items:center; gap:8px; background:var(--c); border:1px solid color-mix(in srgb,var(--p) 22%,transparent); color:var(--e); font-size:12px; font-weight:700; letter-spacing:.04em; padding:5px 12px; border-radius:100px; margin:0 0 16px; text-transform:none; }
.cn-selo i{ width:7px; height:7px; background:var(--p); border-radius:50%; box-shadow:0 0 0 0 color-mix(in srgb,var(--p) 60%,transparent); animation:cnpulso 2s infinite; }
@keyframes cnpulso{ 0%{ box-shadow:0 0 0 0 color-mix(in srgb,var(--p) 55%,transparent); } 70%{ box-shadow:0 0 0 7px transparent; } 100%{ box-shadow:0 0 0 0 transparent; } }
@media (prefers-reduced-motion:reduce){ .cn-selo i{ animation:none; } }
.cn-hero h2{ font-size:24px; font-weight:800; letter-spacing:-.02em; color:#0F172A; margin:0 0 8px; line-height:1.2; }
.cn-hero p{ color:#475569; font-size:16px; line-height:1.55; margin:0 0 26px; }
.login form, #loginform{ background:transparent !important; border:0 !important; box-shadow:none !important; padding:0 !important; margin:0 !important; text-align:left; overflow:visible; }
.login form p, .login .user-pass-wrap{ margin:0 0 16px; }
.login label{ display:block; font-size:14px; font-weight:600; color:#334155 !important; margin:0 0 6px; }
.login .wp-pwd{ position:relative; }
.login form .input, .login input[type=text], .login input[type=password]{ width:100%; box-sizing:border-box; font:inherit; font-size:16px !important; min-height:48px; padding:11px 14px !important; margin:0 !important;
  background:#F8FAFC !important; border:1.5px solid #CBD5E1 !important; border-radius:10px !important; color:#0F172A !important; box-shadow:none !important; transition:border-color .15s,box-shadow .15s,background .15s; }
.login input[type=password]{ padding-right:48px !important; }
.login form .input:focus, .login input[type=text]:focus, .login input[type=password]:focus{ background:#fff !important; border-color:var(--p) !important; box-shadow:0 0 0 4px color-mix(in srgb,var(--p) 18%,transparent) !important; outline:0; }
.login .button.wp-hide-pw{ position:absolute; right:4px; top:4px; width:40px; height:40px; min-height:0; background:none; border:0; color:#64748B; cursor:pointer; box-shadow:none; }
.login .button.wp-hide-pw:focus-visible{ outline:2px solid var(--p); border-radius:8px; }
.login .forgetmenot{ display:flex; align-items:center; gap:8px; float:none; margin:0 0 20px; }
.login .forgetmenot label{ font-weight:500; font-size:14px; color:#475569 !important; margin:0; }
.login input[type=checkbox]{ width:18px; height:18px; margin:0; accent-color:var(--p); border-radius:5px; }
.login .submit{ display:block; margin:0; padding:0; }
body.login.wp-core-ui .button-primary{ display:block; width:100%; float:none; min-height:50px; line-height:50px !important; padding:0 18px !important; margin:0; cursor:pointer;
  background:linear-gradient(180deg,var(--p) 0%,color-mix(in srgb,var(--p) 78%,#000) 100%) !important; color:#fff !important; border:0 !important; border-radius:10px !important; font:inherit; font-weight:700 !important; font-size:16px !important; text-shadow:none !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.22),0 10px 24px color-mix(in srgb,var(--p) 32%,transparent) !important; transition:transform .18s,filter .18s,box-shadow .18s; }
body.login.wp-core-ui .button-primary:hover{ filter:brightness(1.07); transform:translateY(-1px); }
body.login.wp-core-ui .button-primary:focus-visible{ outline:3px solid color-mix(in srgb,var(--p) 45%,#fff); outline-offset:3px; }
.login #nav, .login #backtoblog, .language-switcher, .privacy-policy-page-link{ display:none !important; }
.login .message, .login #login_error, .login .success{ background:var(--c); color:#0F172A; border:0; border-left:4px solid var(--p); border-radius:10px; box-shadow:none; font-size:14px; text-align:left; padding:12px 14px; margin:0 0 18px; }
.login #login_error{ border-left-color:#DC2626; background:#FEF2F2; }
.cn-pe{ max-width:520px; margin:auto auto 0 !important; padding:40px 8px 8px !important; text-align:center; font-size:12px; line-height:1.7; color:rgba(255,255,255,.72); }
.cn-pe b{ color:#fff; font-weight:600; }
@media (max-width:480px){ body.login #login{ padding:30px 22px 26px !important; border-radius:18px; } .cn-hero h2{ font-size:22px; } .cn-marca img{ height:56px; } }
/* O estilo padrão da plataforma zera margem e padding de tudo dentro do login e carrega depois deste arquivo: o respiro volta aqui. */
body.login #login .cn-marca{ margin:0 0 18px !important; }
body.login #login .cn-selo{ padding:5px 12px !important; margin:0 0 16px !important; }
body.login #login .cn-hero h2{ margin:0 0 8px !important; }
body.login #login .cn-hero p{ margin:0 0 26px !important; }
body.login #login form p, body.login #login .user-pass-wrap{ margin:0 0 16px !important; }
body.login #login form label{ margin:0 0 6px !important; }
body.login #login form .forgetmenot{ margin:4px 0 20px !important; }
body.login #login form .forgetmenot label{ margin:0 !important; }
body.login #login form p.submit{ margin:0 !important; }
body.login #login form .input{ min-height:48px !important; }
