/* Tela de entrada copiada do XRM (crm-frontend/src/styles/layouts/login.scss), com os tokens resolvidos. */
@font-face{font-family:"Open Sans XRM";font-style:normal;font-weight:300 800;font-display:swap;src:url(/OpenSans-latin-normal.woff2) format("woff2")}
:root{
  --login-depth-1:#20303a;--login-depth-2:#182026;--login-depth-3:#0e1519;--login-accent:#d0ba8f;
  --accent-200:#e1cea1;--accent-500:#b58e4a;--accent-600:#9c7a3b;--accent-text:#856730;--accent-ring-soft:0 0 0 3px rgba(181,142,74,.16);
  --brand-gold:#caa360;--brand-gold-soft:#c9b795;--brand-offwhite:#faf9f5;--brand-graphite:#141413;
  --text-1:#141413;--text-3:#566678;--text-4:#8a93a0;--border-strong:#d3d6db;--border-default:#e6e8eb;
  --surface-1:#ffffff;--surface-2:#f2f3f5;--ERRO:#b54a3d;--radius-sm:8px;--radius-pill:999px;
  --font-sans:"Open Sans XRM","Segoe UI Variable","Segoe UI",system-ui,-apple-system,Roboto,"Helvetica Neue",Arial,sans-serif
}
*{box-sizing:border-box}
html,body{margin:0;background:var(--brand-offwhite)}
.login{position:relative;overflow:hidden;min-height:100vh;min-height:100dvh;display:grid;grid-template-columns:1.35fr 1fr;font-family:var(--font-sans);background:var(--login-depth-2)}
@media (max-width:900px){.login{grid-template-columns:1fr;background:var(--brand-offwhite)}}
.login__aside{position:relative;z-index:1;padding:clamp(32px,5vw,72px);color:#fff;background:transparent}
@media (max-width:900px){.login__aside{display:none}}
.login__art{position:absolute;inset:0;z-index:0;width:100%;height:100%;pointer-events:none}
@media (max-width:900px){.login__art{display:none}}
.login__art-depth--1{stop-color:var(--login-depth-1)}.login__art-depth--2{stop-color:var(--login-depth-2)}.login__art-depth--3{stop-color:var(--login-depth-3)}
.login__art-stop--1{stop-color:var(--accent-200)}.login__art-stop--2{stop-color:var(--brand-gold-soft)}.login__art-stop--3{stop-color:var(--accent-600)}
.login__art-nodes{fill:var(--brand-gold-soft);opacity:.9}
.login__aside-inner{position:relative;z-index:1;height:100%;display:flex;flex-direction:column;justify-content:space-between;gap:40px}
.login__logo{width:112px;height:auto;filter:drop-shadow(0 2px 10px rgba(0,0,0,.35))}
.login__pitch{display:flex;flex-direction:column;align-items:flex-start;gap:20px}
.login__eyebrow{margin:0;font-size:.75rem;font-weight:500;letter-spacing:.45em;text-transform:uppercase;color:var(--brand-gold)}
.login__headline{margin:0;font-size:clamp(2.6rem,4.2vw,3.75rem);font-weight:340;line-height:1.05;letter-spacing:.12em;text-transform:uppercase;color:#fff}
.login__rule{width:56px;height:2px;background:var(--brand-gold);border-radius:var(--radius-pill)}
.login__lead{margin:0;max-width:28rem;font-size:.875rem;font-weight:300;line-height:1.625;letter-spacing:.025em;color:rgba(255,255,255,.55)}
.login__org{margin:0;font-size:.6875rem;font-weight:400;letter-spacing:.35em;text-transform:uppercase;color:rgba(255,255,255,.35)}
.login__panel{position:relative;z-index:1;display:grid;place-items:center;padding:clamp(32px,6vw,72px);background:var(--brand-offwhite)}
.login-form{width:100%;max-width:360px;display:flex;flex-direction:column;gap:20px}
.login-form__head{display:flex;flex-direction:column;gap:8px;margin-bottom:8px}
.login-form__head h1{margin:0;font-size:1.45rem;font-weight:600;letter-spacing:-.02em;color:var(--brand-graphite)}
.login-form__eyebrow{margin:0;font-size:.7rem;font-weight:600;letter-spacing:.24em;text-transform:uppercase;color:var(--accent-text)}
.login-form__sub{margin:0;font-size:.9rem;color:var(--text-3);line-height:1.5}
.login-form__error{margin:0;font-size:.85rem;color:var(--ERRO)}
.login-form__foot{margin:8px 0 0;text-align:center;font-size:.66rem;font-weight:500;letter-spacing:.2em;text-transform:uppercase;color:var(--text-4)}
.login-form__sso{display:flex;flex-direction:column;gap:12px}
.login-form__sso-btn{display:flex;align-items:center;justify-content:center;gap:8px;height:44px;border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface-1);color:var(--text-1);font:500 .9rem var(--font-sans);cursor:pointer;transition:background .15s,border-color .15s;text-decoration:none}
.login-form__sso-btn:hover:not(:disabled){background:var(--surface-2);border-color:var(--text-3)}
.login-form__sso-btn:disabled{opacity:.6;cursor:default}
.login-form__sso-icon{width:18px;height:18px;flex-shrink:0}
.login-form__submit{height:44px;border:none;border-radius:var(--radius-sm);background:var(--login-accent);color:var(--login-depth-2);font:500 .95rem var(--font-sans);cursor:pointer}
/* espera pela liberação (Portal) */
.espera{display:flex;flex-direction:column;gap:18px}
.espera__selo{width:52px;height:52px;border-radius:50%;display:grid;place-items:center;background:rgba(202,163,96,.14);color:var(--accent-text)}
.espera__selo svg{width:26px;height:26px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round}
.espera__quem{display:flex;align-items:center;gap:10px;padding:10px 12px;border:1px solid var(--border-default);border-radius:var(--radius-sm);background:var(--surface-1);font-size:.85rem;color:var(--text-3)}
.espera__quem b{color:var(--text-1);font-weight:600;display:block}
.espera__pulso{width:8px;height:8px;border-radius:50%;background:var(--brand-gold);animation:pulso 1.6s ease-in-out infinite;flex:none}
@keyframes pulso{0%,100%{opacity:.25}50%{opacity:1}}
.espera__sair{align-self:flex-start;background:none;border:0;padding:0;color:var(--accent-text);font:600 .85rem var(--font-sans);cursor:pointer;text-decoration:underline;text-underline-offset:3px}
