/* =====================================================================
   Gracel V0.0.49 — Login (Escritório GC e Portal do Cliente)
   Painel da marca limpo (sem formas decorativas) com recursos do portal;
   formulário direto no fundo claro, campos de 48px com ícone, botão com seta.
   Carregado depois de login-v048.css.
   ===================================================================== */
.login-shell{
 --lg-navy:#14213d;--lg-navy-2:#1b2d55;--lg-yellow:#fca311;--lg-text:#12223a;--lg-muted:#6b7a90;--lg-line:#dde3ec;
 display:grid!important;grid-template-columns:minmax(0,1.05fr) minmax(420px,.95fr)!important;min-height:100vh!important;min-height:100dvh!important;background:#f5f7fb!important
}

/* ---------- Painel da marca ---------- */
.login-shell .gc-lg-brand{position:relative;display:flex!important;flex-direction:column;justify-content:space-between;gap:40px;padding:48px 56px!important;background:linear-gradient(160deg,#0f1a33 0%,#14213d 45%,#1b2d55 100%)!important;color:#fff;overflow:hidden}
.login-shell .gc-lg-brand::before,.login-shell .gc-lg-brand::after{content:none!important;display:none!important}
.login-shell .gc-lg-brand .brand-logo{width:176px!important;height:auto;margin:0!important;position:static!important}
.login-shell .gc-lg-brand .brand-copy{max-width:520px;margin:0!important}
.login-shell .gc-lg-brand .brand-chip{display:inline-flex!important;align-items:center;gap:8px;height:28px;padding:0 12px!important;border:0!important;border-radius:999px!important;background:rgba(252,163,17,.14)!important;color:var(--lg-yellow)!important;font-size:11.5px!important;font-weight:800!important;letter-spacing:.1em!important}
.login-shell .gc-lg-brand .brand-chip::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--lg-yellow)}
.login-shell .gc-lg-brand h1{margin:18px 0 12px!important;font-size:clamp(34px,3.6vw,48px)!important;line-height:1.08!important;font-weight:800!important;letter-spacing:-.02em!important;color:#fff!important}
.login-shell .gc-lg-brand .brand-copy>p{margin:0!important;max-width:460px;font-size:15.5px!important;line-height:1.6!important;color:rgba(255,255,255,.72)!important}
.login-shell .gc-lg-feats{display:flex;flex-direction:column;gap:14px;margin:36px 0 0;padding:0;list-style:none}
.login-shell .gc-lg-feats li{display:flex;align-items:center;gap:14px}
.login-shell .gc-lg-feat-ico{flex:none;display:grid;place-items:center;width:42px;height:42px;border-radius:12px;background:rgba(255,255,255,.07);color:var(--lg-yellow);box-shadow:inset 0 0 0 1px rgba(255,255,255,.08)}
.login-shell .gc-lg-feat-ico svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.login-shell .gc-lg-feats b{display:block;font-size:14.5px;font-weight:700;color:#fff}
.login-shell .gc-lg-feats small{display:block;margin-top:2px;font-size:13px;color:rgba(255,255,255,.6)}
.login-shell .gc-lg-brand>small{font-size:12.5px!important;color:rgba(255,255,255,.45)!important}

/* ---------- Formulário ---------- */
.login-shell .login-panel{display:flex!important;align-items:center;justify-content:center;padding:48px 40px!important;background:#f5f7fb!important}
.login-shell .login-panel::before,.login-shell .login-panel::after{content:none!important}
.login-shell .login-card{width:min(400px,100%)!important;max-width:400px!important;margin:0!important;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}
.login-shell .login-card .mobile-logo{display:none}
.login-shell .login-card .eyebrow{display:block;font-size:11.5px!important;font-weight:800!important;letter-spacing:.1em!important;color:#a86b00!important}
.login-shell .login-card h2{margin:10px 0 8px!important;font-size:30px!important;line-height:1.15!important;font-weight:800!important;letter-spacing:-.015em;color:var(--lg-navy)!important}
.login-shell .login-card>p{margin:0 0 28px!important;font-size:14.5px!important;line-height:1.55!important;color:var(--lg-muted)!important}
.login-shell .login-card .field{display:flex!important;flex-direction:column;gap:8px;margin:0 0 18px!important}
.login-shell .login-card .field label{font-size:13px!important;font-weight:700!important;color:var(--lg-text)!important;letter-spacing:0!important;text-transform:none!important}
.login-shell .login-card .field>small,.login-shell .login-card .password-wrap~small{display:none!important}
.login-shell .login-card :is(#gcUsername,#loginUser,#gcPassword,#loginPass,#gcOTP){
 box-sizing:border-box;width:100%!important;height:50px!important;min-height:50px!important;padding:0 16px 0 46px!important;border:1px solid var(--lg-line)!important;border-radius:12px!important;
 background-color:#fff!important;background-repeat:no-repeat!important;background-position:16px center!important;background-size:18px!important;
 font-size:15px!important;color:var(--lg-text)!important;box-shadow:0 1px 2px rgba(16,32,64,.04)!important;transition:border-color .15s,box-shadow .15s
}
.login-shell .login-card :is(#gcUsername,#loginUser){background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%238a96a8' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='8' r='4'/%3E%3Cpath d='M4 21a8 8 0 0 1 16 0'/%3E%3C/svg%3E")!important}
.login-shell .login-card :is(#gcPassword,#loginPass){padding-right:52px!important;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%238a96a8' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='4' y='11' width='16' height='10' rx='2'/%3E%3Cpath d='M8 11V7a4 4 0 0 1 8 0v4'/%3E%3C/svg%3E")!important}
.login-shell .login-card #gcOTP{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%238a96a8' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3 4 6v6c0 4.5 3.4 8.4 8 9 4.6-.6 8-4.5 8-9V6z'/%3E%3C/svg%3E")!important;letter-spacing:.12em}
.login-shell .login-card :is(#gcUsername,#loginUser,#gcPassword,#loginPass,#gcOTP):hover{border-color:#c4cedb!important}
.login-shell .login-card :is(#gcUsername,#loginUser,#gcPassword,#loginPass,#gcOTP):focus{outline:none!important;border-color:var(--lg-navy)!important;box-shadow:0 0 0 4px rgba(20,33,61,.1)!important}
.login-shell .login-card ::placeholder{color:#a3adbd!important}
.login-shell .login-card .password-wrap{position:relative}
.login-shell .login-card .password-eye{position:absolute!important;right:8px!important;top:50%!important;transform:translateY(-50%)!important;display:grid!important;place-items:center;width:36px!important;height:36px!important;min-height:36px!important;padding:0!important;border:0!important;border-radius:8px!important;background:transparent!important;color:#8a96a8!important;box-shadow:none!important;cursor:pointer}
.login-shell .login-card .password-eye:hover{background:#f1f4f8!important;color:var(--lg-navy)!important}
.login-shell .login-card .password-eye svg{width:19px;height:19px}

.login-shell .login-card button.gc-lg-submit{position:relative;display:flex!important;align-items:center;justify-content:center;gap:10px;width:100%!important;height:52px!important;min-height:52px!important;margin-top:8px!important;padding:0 20px!important;border:0!important;border-radius:12px!important;background:var(--lg-navy)!important;color:#fff!important;font-size:15px!important;font-weight:700!important;letter-spacing:.01em;box-shadow:0 8px 20px rgba(20,33,61,.22)!important;transition:background-color .15s,transform .15s,box-shadow .15s!important;cursor:pointer}
.login-shell .login-card button.gc-lg-submit::after{content:"";width:18px;height:18px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fca311' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14M13 6l6 6-6 6'/%3E%3C/svg%3E") center/18px no-repeat;transition:transform .15s}
.login-shell .login-card button.gc-lg-submit:hover:not(:disabled){background:#1d3260!important;box-shadow:0 10px 24px rgba(20,33,61,.28)!important}
.login-shell .login-card button.gc-lg-submit:hover:not(:disabled)::after{transform:translateX(3px)}
.login-shell .login-card button.gc-lg-submit:active:not(:disabled){transform:translateY(1px)}
.login-shell .login-card button.gc-lg-submit:disabled{opacity:.6;cursor:progress}
.login-shell .login-card button.gc-lg-submit:focus-visible{outline:3px solid rgba(252,163,17,.6)!important;outline-offset:2px}

.login-shell .login-card #gcLoginError:not(:empty){margin:14px 0 0!important;padding:10px 12px;border-radius:10px;background:#fdecec;color:#c03434!important;font-size:13px!important;font-weight:600}
.login-shell .login-card .login-help{margin:18px 0 0!important;font-size:13px!important;color:var(--lg-muted)!important;text-align:center}
.login-shell .gc-lg-secure{display:flex;align-items:center;justify-content:center;gap:8px;margin:28px 0 0!important;padding-top:20px;border-top:1px solid #e3e8f0;font-size:12px!important;line-height:1.5;color:#8a96a8!important;text-align:center}
.login-shell .gc-lg-secure svg{flex:none;width:15px;height:15px;fill:none;stroke:#16794a;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.login-shell [data-gc-turnstile]{margin:4px 0 12px!important}

/* ---------- Telas menores ---------- */
@media (max-width:1100px){
 .login-shell .gc-lg-brand{padding:40px!important}
 .login-shell .gc-lg-feats{margin-top:28px}
}
@media (max-width:860px){
 .login-shell{grid-template-columns:1fr!important;background:#f5f7fb!important}
 .login-shell .gc-lg-brand{gap:0;padding:28px 24px 30px!important;border-radius:0 0 24px 24px}
 .login-shell .gc-lg-brand .brand-logo{width:140px!important}
 .login-shell .gc-lg-brand .brand-copy{margin-top:22px!important}
 .login-shell .gc-lg-brand h1{font-size:28px!important;margin:12px 0 6px!important}
 .login-shell .gc-lg-brand .brand-copy>p{font-size:14px!important}
 .login-shell .gc-lg-feats,.login-shell .gc-lg-brand>small{display:none!important}
 .login-shell .login-panel{align-items:flex-start;padding:28px 20px 40px!important}
 .login-shell .login-card h2{font-size:24px!important}
}

/* Olho de mostrar senha centralizado no campo (vence a regra antiga top:5px) e aviso de segurança alinhado à esquerda */
html body .login-shell .login-card .password-wrap>.password-eye{top:50%!important;bottom:auto!important;transform:translateY(-50%)!important;right:8px!important;margin:0!important}
.login-shell .gc-lg-secure{justify-content:flex-start!important;align-items:flex-start!important;text-align:left!important}
.login-shell .gc-lg-secure svg{margin-top:1px}
