/* =========================================================
   TELA DE LOGIN / CADASTRO DO TEMA
   - /novatopnet (admin): split-screen com lateral verde + form limpo
   - /cliente e /cadastro: SOLO (só o formulário, centralizado, fundo branco)
   ========================================================= */
:root{
  --lk-ink:#0a0a0a; --lk-paper:#ffffff; --lk-muted:#6b6b6b; --lk-line:#e6e6e6;
  --lk-accent:#2d5016; --lk-accent-d:#1f3a0f; --lk-gold:#e9d9b3;
  --lk-serif:'Playfair Display',Georgia,serif; --lk-sans:'Inter',system-ui,sans-serif;
}
*{box-sizing:border-box}
html,body{height:100%}
body.login, .amc-ls-body{
  margin:0; font-family:var(--lk-sans); color:var(--lk-ink); background:var(--lk-paper);
  display:flex; flex-direction:row; min-height:100vh;
}
.amc-login-grid{display:flex; flex:1 1 auto; min-height:100vh; width:100%}

/* ---- COLUNA ESQUERDA (form) ---- */
#login, .amc-login-main{
  flex:1 1 50%; width:100%; max-width:none; margin:0;
  display:flex; flex-direction:column; justify-content:center;
  padding:clamp(28px,5vw,72px);
  background:var(--lk-paper);
}
#loginform, #registerform, .amc-card{
  width:100%; max-width:420px; margin:0 auto; background:transparent; border:0; box-shadow:none; padding:0;
}

/* elementos do FRONT (.amc-*) — visíveis em /cliente e /cadastro */
.amc-eyebrow{ display:block; font-size:12px; letter-spacing:.26em; text-transform:uppercase; color:var(--lk-accent); font-weight:600; margin-bottom:14px }
.amc-h1{ font-family:var(--lk-serif); font-weight:600; font-size:clamp(28px,4vw,40px); line-height:1.12; margin:0 0 12px; color:var(--lk-ink) }
.amc-lead{ font-size:15px; line-height:1.65; color:var(--lk-muted); margin:0 0 26px }
.amc-alt{ font-size:13px; color:var(--lk-muted); margin-top:18px; text-align:center }
.amc-alt a{ color:var(--lk-accent); text-decoration:none; font-weight:600 }
.amc-alt a:hover{ text-decoration:underline }
.amc-back-site{ display:block; margin-top:14px; text-align:center; font-size:12px; color:var(--lk-muted); text-decoration:none }
.amc-back-site:hover{ color:var(--lk-accent); text-decoration:underline }
.amc-note{ font-size:12px; color:var(--lk-muted); margin:-6px 0 18px }

/* campos (core + front) */
.amc-label, #loginform label, #registerform label{ display:block; font-size:12px; font-weight:600; letter-spacing:.04em; color:var(--lk-ink); margin:0 0 7px }
.amc-input, #user_login, #user_pass, #user_email, .input{
  width:100%!important; height:auto!important; margin:0 0 18px!important; padding:14px 16px!important;
  border:1px solid var(--lk-line)!important; border-radius:3px!important; background:#fafafa!important;
  font-family:var(--lk-sans)!important; font-size:15px!important; color:var(--lk-ink)!important;
  transition:border-color .25s ease, background .25s ease, box-shadow .25s ease;
}
.amc-input:focus, #user_login:focus, #user_pass:focus, #user_email:focus, .input:focus{
  outline:none!important; border-color:var(--lk-accent)!important; background:#fff!important;
  box-shadow:0 0 0 3px rgba(45,80,22,.12)!important;
}
.amc-check, #loginform .forgetmenot label{ display:flex; align-items:center; gap:8px; font-size:13px; color:var(--lk-muted); margin:0 0 20px; font-weight:400 }
.amc-check input, #rememberme{ width:auto; margin:0 }

/* botões (core + front) */
.amc-btn, #wp-submit, #submit{
  display:inline-flex; align-items:center; justify-content:center; gap:8px;
  padding:15px 26px; border-radius:3px; border:1px solid transparent; cursor:pointer;
  font-family:var(--lk-sans); font-weight:600; font-size:13px; letter-spacing:.12em; text-transform:uppercase;
  transition:all .3s ease; text-decoration:none;
}
.amc-btn-primary, #wp-submit, #submit{ background:var(--lk-accent); color:#fff; border-color:var(--lk-accent); width:auto }
.amc-btn-primary:hover, #wp-submit:hover, #submit:hover{ background:var(--lk-accent-d); border-color:var(--lk-accent-d); transform:translateY(-1px) }
.amc-btn-block{ width:100% }
#wp-submit{ height:auto; padding:15px 26px; font-size:13px; letter-spacing:.12em; text-transform:uppercase; box-shadow:none }
#loginform .forgetmenot{ margin-bottom:0 }

/* mensagens (core + front) */
.amc-msg, .message, #login_error{
  border:0!important; border-left:3px solid var(--lk-accent)!important; background:#f4f7f1!important;
  color:var(--lk-ink)!important; padding:12px 16px!important; margin:0 0 20px!important; border-radius:0 3px 3px 0;
  font-size:14px; box-shadow:none!important;
}
.amc-msg-err, #login_error{ border-left-color:#b32d2e!important; background:#fbf1f1!important }
.amc-card-ok .amc-h1{ color:var(--lk-accent) }

/* =========================================================
   TELA DE LOGIN DO ADMIN (/novatopnet) — 100% LIMPA
   Esconde TODO ruído nativo do core, deixando só o formulário.
   (não afeta /cliente nem /cadastro, que usam .amc-*, não #login)
   ========================================================= */
#login h1,
#login #nav,
#login #backtoblog,
#login .language-switcher,
#login select[name="wp_lang"],
#login #wp_lang,
#login .privacy-policy-page-link{ display:none !important; }
#login{ padding-top:clamp(24px,6vh,64px); }

/* ---- COLUNA DIREITA (lateral verde da marca) — SÓ no admin ---- */
.amc-login-side-wrap{ flex:1 1 50%; display:flex; min-height:100vh }
.amc-login-side{
  flex:1; position:relative; overflow:hidden; color:#fff;
  display:flex; flex-direction:column; justify-content:center; align-items:flex-start;
  padding:clamp(32px,5vw,72px);
  background:
    radial-gradient(120% 90% at 85% 10%, rgba(233,217,179,.18), transparent 55%),
    radial-gradient(120% 120% at 0% 100%, rgba(10,10,10,.55), transparent 60%),
    linear-gradient(135deg, #12210a 0%, #2d5016 55%, #1f3a0f 100%);
}
.amc-login-side::before{
  content:""; position:absolute; inset:0; pointer-events:none; opacity:.06;
  background-image:repeating-linear-gradient(115deg, #fff 0 1px, transparent 1px 26px);
}
.amc-side-brand{ position:relative; z-index:1; margin-bottom:auto }
.amc-side-mark{ display:block; font-family:var(--lk-serif); font-size:clamp(34px,5vw,56px); font-weight:700; line-height:1; letter-spacing:.01em }
.amc-side-sub{ display:block; margin-top:10px; font-size:12px; letter-spacing:.24em; text-transform:uppercase; color:rgba(255,255,255,.7) }
.amc-side-actions{ position:relative; z-index:1; display:flex; flex-direction:column; gap:14px; width:100%; max-width:340px; margin:48px 0 auto }
.amc-side-btn{
  display:inline-flex; align-items:center; justify-content:center; gap:10px;
  padding:16px 24px; border-radius:3px; font-family:var(--lk-sans); font-weight:600;
  font-size:13px; letter-spacing:.12em; text-transform:uppercase; text-decoration:none; cursor:pointer;
  transition:all .3s ease; border:1px solid rgba(255,255,255,.55);
}
.amc-side-btn-site{ background:transparent; color:#fff }
.amc-side-btn-site:hover{ background:#fff; color:var(--lk-accent-d); border-color:#fff }
.amc-side-btn-video{ background:var(--lk-gold); color:#1a1407; border-color:var(--lk-gold) }
.amc-side-btn-video:hover{ background:#fff; border-color:#fff; transform:translateY(-1px) }
.amc-side-foot-note{ position:relative; z-index:1; margin:24px 0 0; font-size:12px; color:rgba(255,255,255,.6); letter-spacing:.04em }

/* =========================================================
   TELAS SOLO (/cliente e /cadastro) — form ocupa a tela toda
   ========================================================= */
.amc-login-grid--solo .amc-login-main{ flex:1 1 100% }

/* ---- MODAL DE VÍDEO (10px de folga + proporção) ---- */
.amc-video-modal{
  position:fixed; inset:0; z-index:99999; padding:10px;
  display:flex; align-items:center; justify-content:center;
  background:rgba(5,5,5,.9); backdrop-filter:blur(4px); -webkit-backdrop-filter:blur(4px);
}
.amc-video-modal[hidden]{ display:none }
.amc-video-stage{ display:flex; align-items:center; justify-content:center; max-width:calc(100vw - 20px); max-height:calc(100vh - 20px) }
.amc-video-frame{
  position:relative; background:#000; border-radius:4px; overflow:hidden;
  box-shadow:0 20px 60px rgba(0,0,0,.5);
  display:flex; align-items:center; justify-content:center;
  max-width:calc(100vw - 20px); max-height:calc(100vh - 20px);
}
.amc-video-frame iframe{ display:block; border:0; background:#000 }
.amc-video-frame video{
  display:block; background:#000; width:auto; height:auto;
  max-width:calc(100vw - 20px); max-height:calc(100vh - 20px); object-fit:contain;
}
.amc-video-close{
  position:absolute; top:10px; right:10px; z-index:2; width:40px; height:40px; border-radius:50%;
  background:rgba(255,255,255,.14); color:#fff; border:0; cursor:pointer; font-size:26px; line-height:1;
  display:flex; align-items:center; justify-content:center; transition:background .3s ease;
}
.amc-video-close:hover{ background:rgba(255,255,255,.3) }

/* ---- MOBILE ---- */
@media (max-width: 860px){
  body.login, .amc-ls-body, .amc-login-grid{ flex-direction:column }
  #login, .amc-login-main{ flex:0 0 auto; min-height:auto; padding:32px 22px 24px }
  .amc-login-grid--solo .amc-login-main{ padding:48px 22px }
  .amc-login-side-wrap{ flex:0 0 auto; min-height:auto }
  .amc-login-side{ min-height:46vh; padding:32px 22px }
  .amc-side-actions{ margin:28px 0 0; max-width:none }
  .amc-side-foot-note{ margin-top:18px }
}
@media (prefers-reduced-motion: reduce){
  .amc-btn, #wp-submit, .amc-side-btn, .amc-input, #user_login, #user_pass{ transition:none }
  .amc-btn-primary:hover, #wp-submit:hover, .amc-side-btn:hover{ transform:none }
}

/* =========================================================
   [3.8.6] Vídeo do modal preenche a tela (sem chutar classe)
   :has() força o palco + iframe a ocuparem o modal inteiro.
   Só casa onde há iframe de YouTube/Vimeo = tela de login.
   ========================================================= */
:not(body):not(html):has(
  iframe[src*="youtube.com/embed"],
  iframe[src*="youtube-nocookie.com"],
  iframe[src*="player.vimeo.com"]
){
  width:100% !important;  max-width:100% !important;
  height:100% !important; max-height:100% !important;
  aspect-ratio:auto !important;
  padding:0 !important; margin:0 !important;
  border-radius:0 !important;
  overflow:hidden !important;
}
iframe[src*="youtube.com/embed"],
iframe[src*="youtube-nocookie.com"],
iframe[src*="player.vimeo.com"]{
  position:absolute !important; inset:0 !important;
  width:100% !important; height:100% !important;
  border:0 !important; display:block !important;
}