
:root{
  --dm-bg:#030818;
  --dm-panel:#0b1d43;
  --dm-panel-2:#24175d;
  --dm-text:#f7fbff;
  --dm-muted:#aebed3;
  --dm-cyan:#34c8ff;
  --dm-blue:#428fe5;
  --dm-purple:#7651ef;
  --dm-pink:#e85ec0;
  --dm-line:rgba(104,185,239,.20);
  --dm-white:#ffffff;
  --dm-ink:#10203b;
}

*{box-sizing:border-box}
html,body{min-height:100%;margin:0}
body.dm-access-page{
  min-height:100vh;
  background:
    radial-gradient(circle at 15% 18%,rgba(35,111,219,.10),transparent 26%),
    radial-gradient(circle at 82% 10%,rgba(110,69,225,.10),transparent 22%),
    var(--dm-bg);
  color:var(--dm-text);
  font-family:Arial,Helvetica,sans-serif;
}

.dm-access-header{
  height:76px;
  padding:0 clamp(22px,3.2vw,58px);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  border-bottom:1px solid rgba(101,166,224,.15);
  background:rgba(3,8,24,.88);
  backdrop-filter:blur(14px);
}
.dm-access-logo{
  display:flex;
  align-items:center;
  gap:12px;
  text-decoration:none;
  color:#fff;
}
.dm-access-logo img{width:54px;height:54px;object-fit:contain}
.dm-access-logo-copy{display:grid;line-height:.95}
.dm-access-logo-copy strong{font:900 30px/1 "Trebuchet MS",Arial,sans-serif;letter-spacing:-1.5px}
.dm-access-logo-copy strong b{color:#26baff}
.dm-access-logo-copy strong em{color:#e84fc2;font-style:normal}
.dm-access-logo-copy strong span{font-family:Georgia,"Times New Roman",serif;font-size:.8em}
.dm-access-logo-copy small{font-size:9px;font-weight:900;letter-spacing:.18em;color:#a8bce0;margin-top:5px}
.dm-access-back{
  color:#dbe6f9;
  text-decoration:none;
  font-size:13px;
  font-weight:800;
  padding:11px 14px;
  border:1px solid rgba(131,169,239,.20);
  border-radius:12px;
}
.dm-access-back:hover{border-color:rgba(110,206,255,.45);color:#fff}

.dm-access-main{
  min-height:calc(100vh - 76px);
  padding:22px clamp(22px,3vw,54px) 28px;
}
.dm-access-shell{
  width:min(1760px,100%);
  min-height:calc(100vh - 126px);
  margin:0 auto;
  display:grid;
  grid-template-columns:minmax(0,1.62fr) minmax(410px,.88fr);
  gap:24px;
  align-items:stretch;
}

/* painel visual */
.dm-access-showcase{
  position:relative;
  min-height:720px;
  overflow:hidden;
  border:1px solid rgba(84,170,235,.25);
  border-radius:28px;
  background:
    radial-gradient(circle at 72% 48%,rgba(55,183,244,.17),transparent 25%),
    radial-gradient(circle at 84% 75%,rgba(202,75,225,.15),transparent 25%),
    linear-gradient(132deg,#071d42 0%,#17265c 51%,#2b1c62 100%);
  box-shadow:0 30px 80px rgba(0,0,0,.28);
}
.dm-access-showcase:after{
  content:"";
  position:absolute;inset:0;pointer-events:none;
  background:linear-gradient(112deg,transparent 0 46%,rgba(119,211,255,.04) 58%,transparent 77%);
}
.dm-access-copy{
  position:relative;
  z-index:6;
  width:58%;
  max-width:760px;
  padding:56px 0 38px 54px;
}
.dm-access-kicker{
  display:block;
  color:#63d7fb;
  font-size:12px;
  font-weight:950;
  letter-spacing:.20em;
}
.dm-access-copy h1{
  margin:18px 0 22px;
  font:900 clamp(54px,4.75vw,84px)/.94 "Trebuchet MS",Arial,sans-serif;
  letter-spacing:-.045em;
}
.dm-access-copy h1 em{
  font-style:normal;
  background:linear-gradient(90deg,#43c7ff,#5e9cff 35%,#7d5ff2 67%,#ea62c4);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
}
.dm-access-copy>p{
  max-width:650px;
  margin:0;
  color:#c0cee0;
  font-size:16px;
  line-height:1.65;
}

.dm-access-feature-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
  width:min(760px,100%);
  margin-top:30px;
}
.dm-access-feature{
  min-height:154px;
  padding:18px;
  border:1px solid rgba(90,181,235,.20);
  border-radius:18px;
  background:linear-gradient(145deg,rgba(6,29,65,.75),rgba(18,26,69,.56));
}
.dm-access-feature i{
  width:40px;height:40px;display:grid;place-items:center;
  border-radius:12px;font-style:normal;font-size:16px;font-weight:950;
  border:1px solid rgba(83,191,241,.30);background:rgba(38,145,199,.12);color:#67d9ff;
}
.dm-access-feature:nth-child(2) i{color:#ad8cff;border-color:rgba(164,113,246,.30);background:rgba(109,71,207,.13)}
.dm-access-feature:nth-child(3) i{color:#ef78ca;border-color:rgba(233,89,190,.30);background:rgba(183,55,149,.13)}
.dm-access-feature b{display:block;margin-top:16px;color:#6ed9fb;font-size:10px}
.dm-access-feature:nth-child(2) b{color:#ae8cf8}.dm-access-feature:nth-child(3) b{color:#f07acb}
.dm-access-feature strong{display:block;margin-top:5px;font-size:17px;color:#fff}
.dm-access-feature p{margin:8px 0 0;color:#98acc4;font-size:12px;line-height:1.55}

.dm-access-automation{
  width:min(760px,100%);
  margin-top:15px;
  padding:17px 18px;
  display:grid;
  grid-template-columns:48px 1fr;
  gap:14px;
  align-items:center;
  border:1px solid rgba(91,194,248,.26);
  border-radius:18px;
  background:
    linear-gradient(90deg,rgba(18,47,102,.83),rgba(45,25,92,.72));
  box-shadow:inset 0 0 32px rgba(77,157,243,.06);
}
.dm-access-automation-icon{
  width:48px;height:48px;border-radius:14px;display:grid;place-items:center;
  color:#fff;font-size:22px;font-weight:900;
  background:linear-gradient(135deg,#218ad9,#6b57ef);
}
.dm-access-automation small{
  display:block;
  color:#52d5ff;
  font-size:10px;
  font-weight:950;
  letter-spacing:.15em;
}
.dm-access-automation strong{
  display:block;margin-top:4px;color:#fff;font-size:16px;
}
.dm-access-automation p{
  margin:5px 0 0;color:#aebed6;font-size:11.5px;line-height:1.45;
}

/* visual mascote */
.dm-access-visual{
  position:absolute;
  z-index:3;
  right:0;
  bottom:0;
  width:47%;
  height:100%;
  pointer-events:none;
}
.dm-access-glow,
.dm-access-ring{
  position:absolute;border-radius:50%;left:50%;top:53%;transform:translate(-50%,-50%);
}
.dm-access-glow{
  width:520px;height:520px;
  background:radial-gradient(circle,rgba(120,79,234,.18),transparent 68%);
}
.dm-access-ring.a{width:510px;height:510px;border:1px solid rgba(55,192,255,.28)}
.dm-access-ring.b{width:390px;height:390px;border:1px solid rgba(229,79,197,.25)}
.dm-access-visual img{
  position:absolute;
  z-index:5;
  right:24px;
  bottom:10px;
  width:min(500px,94%);
  max-height:670px;
  object-fit:contain;
  filter:drop-shadow(0 30px 45px rgba(0,0,0,.34));
}
.dm-access-float{
  position:absolute;z-index:7;
  min-width:150px;padding:14px 16px;border-radius:16px;
  border:1px solid rgba(82,195,245,.26);
  background:rgba(6,25,58,.86);
  box-shadow:0 18px 40px rgba(0,0,0,.20);
}
.dm-access-float small{display:block;color:#5edaff;font-size:9px;font-weight:950;letter-spacing:.14em}
.dm-access-float strong{display:block;margin-top:6px;color:#fff;font-size:13px}
.dm-access-float.one{left:-13%;top:15%}
.dm-access-float.two{right:8%;top:6%}
.admin .dm-access-float.two small{color:#bc8dff}
.team .dm-access-float.two small{color:#7fe2ff}

/* card de login */
.dm-access-card{
  position:relative;
  min-height:720px;
  padding:74px 34px 28px;
  display:flex;
  flex-direction:column;
  border-radius:28px;
  background:#fff;
  color:var(--dm-ink);
  box-shadow:0 30px 80px rgba(0,0,0,.28);
}
.dm-access-neon{
  position:absolute;
  top:12px;
  left:50%;
  transform:translateX(-50%);
  min-width:260px;
  padding:12px 22px 11px;
  border-radius:15px;
  color:#fff;
  text-align:center;
  font-size:16px;
  font-weight:950;
  letter-spacing:.10em;
  text-transform:uppercase;
  background:linear-gradient(100deg,#0a6a91,#2593b8);
  box-shadow:0 0 14px rgba(75,204,255,.30),0 15px 34px rgba(0,0,0,.18);
}
.admin .dm-access-neon{background:linear-gradient(100deg,#5d36c2,#7d4fe7);box-shadow:0 0 16px rgba(144,95,255,.36),0 15px 34px rgba(0,0,0,.18)}
.team .dm-access-neon{background:linear-gradient(100deg,#0b6a8f,#2691b6)}
.dm-access-neon span{display:block;margin-top:5px;font-size:8.5px;letter-spacing:.16em;color:#e5efff}

.dm-access-card-head{
  display:flex;align-items:center;gap:12px;margin:0 0 24px;
}
.dm-access-card-icon{
  width:46px;height:46px;display:grid;place-items:center;border-radius:13px;
  background:#eef7fd;color:#2788cf;font-size:17px;
}
.admin .dm-access-card-icon{background:#f1edff;color:#7450de}
.dm-access-card-head small{display:block;color:#8da0b5;font-size:9px;letter-spacing:.08em}
.dm-access-card-head strong{display:block;margin-top:4px;color:#12213a;font-size:13px}

.dm-access-card h2{
  margin:0 0 10px;
  color:#0f1c34;
  font:900 36px/1.08 "Trebuchet MS",Arial,sans-serif;
  letter-spacing:-.035em;
}
.dm-access-card>p{
  margin:0 0 22px;color:#778aa2;font-size:13px;line-height:1.6;
}
.dm-access-card label{
  display:block;margin:0 0 6px;color:#0f1d34;font-size:10px;font-weight:950;
}
.dm-access-card input{
  width:100%;min-height:54px;margin-bottom:15px;padding:0 15px;
  border:1px solid #cfdbe8;border-radius:12px;outline:none;
  color:#13213a;font-size:12px;background:#fff;
}
.dm-access-card input:focus{border-color:#70afe0;box-shadow:0 0 0 3px rgba(72,147,213,.10)}
.dm-access-submit{
  width:100%;min-height:56px;margin-top:3px;border:0;border-radius:12px;
  background:linear-gradient(90deg,#2f91da,#7753ef);
  color:#fff;font-size:13px;font-weight:950;cursor:pointer;
  box-shadow:0 15px 35px rgba(91,83,229,.22);
}
.dm-access-submit span{margin-left:6px}
.dm-access-error{min-height:18px;margin:8px 0 0;color:#c83355;font-size:11px}
.dm-access-forgot{display:flex;justify-content:flex-end;margin:-7px 0 11px}
.dm-access-forgot button{border:0;background:none;color:#6745ef;font-size:10px;cursor:pointer;padding:0}

.dm-access-bottom{margin-top:auto}
.dm-access-dev{
  padding:11px 12px;border:1px solid #efc96d;border-radius:11px;
  background:#fff4cf;color:#6f5105;font-size:9px;line-height:1.4;
}
.dm-access-dev strong,.dm-access-dev span,.dm-access-dev small{display:block}
.dm-access-dev span{margin-top:3px}.dm-access-dev small{margin-top:3px}
.dm-access-state{
  margin-top:7px;padding:7px 9px;border:1px solid #dce7f1;border-radius:8px;
  background:#f2f6fa;color:#718397;font-size:8px;
}
.dm-access-note{
  display:flex;gap:10px;margin-top:12px;padding-top:13px;border-top:1px solid #e4ebf2;
}
.dm-access-note>span{color:#6a4aef;font-size:15px;line-height:1}
.dm-access-note strong,.dm-access-note small{display:block}
.dm-access-note strong{color:#17243c;font-size:9px}
.dm-access-note small{margin-top:4px;color:#91a3b6;font-size:8px;line-height:1.5}

/* oculto: primeiro acesso admin fica sobre o card */
.dm-owner-setup{
  position:absolute;inset:24px;z-index:50;overflow:auto;
  padding:22px;border-radius:18px;background:#fff;box-shadow:0 24px 60px rgba(0,0,0,.25);
}
.dm-owner-setup[hidden]{display:none!important}

@media(max-width:1180px){
  .dm-access-main{padding:18px}
  .dm-access-shell{grid-template-columns:1fr;min-height:auto}
  .dm-access-showcase{min-height:760px}
  .dm-access-card{width:min(680px,100%);margin:0 auto;min-height:650px}
}
@media(max-width:760px){
  .dm-access-header{height:68px;padding:0 14px}
  .dm-access-logo img{width:44px;height:44px}
  .dm-access-logo-copy strong{font-size:24px}
  .dm-access-logo-copy small{font-size:7px}
  .dm-access-main{padding:14px}
  .dm-access-showcase{min-height:auto;padding-bottom:420px}
  .dm-access-copy{width:100%;padding:38px 22px 0}
  .dm-access-copy h1{font-size:clamp(42px,11vw,58px)}
  .dm-access-copy>p{font-size:14px}
  .dm-access-feature-grid{grid-template-columns:1fr}
  .dm-access-feature{min-height:0}
  .dm-access-automation{grid-template-columns:42px 1fr}
  .dm-access-visual{width:100%;height:420px}
  .dm-access-visual img{left:50%;right:auto;transform:translateX(-50%);width:320px;bottom:0}
  .dm-access-glow,.dm-access-ring.a{width:360px;height:360px}
  .dm-access-ring.b{width:270px;height:270px}
  .dm-access-float.one{left:5%;top:22%}.dm-access-float.two{right:5%;top:9%}
  .dm-access-card{min-height:auto;padding:72px 22px 24px}
}


/* ==========================================================
   V201 — ACESSOS FULLSCREEN COM TEXTO MAIOR E SEM CORTE
   ========================================================== */

.dm-access-header{
  height:86px!important;
}
.dm-access-main{
  min-height:calc(100vh - 86px)!important;
  padding:18px clamp(18px,2.3vw,38px) 24px!important;
}
.dm-access-shell{
  width:min(1840px,100%)!important;
  min-height:calc(100vh - 128px)!important;
  grid-template-columns:minmax(0,1.7fr) minmax(440px,.82fr)!important;
  gap:22px!important;
}
.dm-access-showcase,
.dm-access-card{
  min-height:calc(100vh - 128px)!important;
}

.dm-access-copy{
  width:59%!important;
  max-width:800px!important;
  padding:50px 0 30px 50px!important;
}
.dm-access-kicker{
  font-size:13px!important;
}
.dm-access-copy h1{
  font-size:clamp(58px,5vw,88px)!important;
}
.dm-access-copy>p{
  font-size:17px!important;
}
.dm-access-feature{
  min-height:160px!important;
}
.dm-access-feature strong{
  font-size:18px!important;
}
.dm-access-feature p{
  font-size:13px!important;
}
.dm-access-automation strong{
  font-size:17px!important;
}
.dm-access-automation p{
  font-size:12.5px!important;
}

.dm-access-card{
  padding:78px 36px 26px!important;
  overflow:auto!important;
}
.dm-access-card-head small{
  font-size:10px!important;
}
.dm-access-card-head strong{
  font-size:14px!important;
}
.dm-access-card h2{
  font-size:40px!important;
}
.dm-access-card>p{
  font-size:14px!important;
}
.dm-access-card label{
  font-size:11px!important;
}
.dm-access-card input{
  min-height:58px!important;
  font-size:14px!important;
}
.dm-access-submit{
  min-height:60px!important;
  font-size:15px!important;
}
.dm-access-note strong{
  font-size:10px!important;
}
.dm-access-note small{
  font-size:9px!important;
}
.dm-access-dev{
  font-size:10px!important;
}
.dm-access-state{
  font-size:9px!important;
}

@media(max-width:1180px){
  .dm-access-shell{
    grid-template-columns:1fr!important;
  }
  .dm-access-showcase,
  .dm-access-card{
    min-height:auto!important;
  }
  .dm-access-card{
    width:min(760px,100%)!important;
    margin:0 auto!important;
  }
}

/* ==========================================================
   V231 — LOGIN MOBILE PRIORITÁRIO
   Mantém desktop da V230 e reorganiza parceiro/admin/equipe
   para que o formulário apareça primeiro em telas pequenas.
   ========================================================== */
@media(max-width:760px){
  html,body.dm-access-page{
    overflow-x:hidden!important;
  }
  .dm-access-header{
    height:68px!important;
    padding:0 14px!important;
  }
  .dm-access-logo{
    min-width:0!important;
  }
  .dm-access-logo img{
    width:44px!important;
    height:44px!important;
  }
  .dm-access-logo-copy strong{
    font-size:23px!important;
  }
  .dm-access-logo-copy small{
    font-size:6.5px!important;
    letter-spacing:.12em!important;
  }
  .dm-access-back{
    padding:9px 11px!important;
    font-size:10px!important;
    white-space:nowrap!important;
  }
  .dm-access-main{
    min-height:calc(100svh - 68px)!important;
    padding:12px 12px 22px!important;
  }
  .dm-access-shell{
    display:flex!important;
    flex-direction:column!important;
    width:100%!important;
    min-height:0!important;
    gap:14px!important;
  }

  /* Login vem primeiro no celular */
  .dm-access-card{
    order:1!important;
    width:100%!important;
    min-height:0!important;
    margin:0!important;
    padding:68px 20px 22px!important;
    border-radius:22px!important;
    overflow:visible!important;
    box-shadow:0 20px 55px rgba(0,0,0,.26)!important;
  }
  .dm-access-neon{
    top:10px!important;
    min-width:0!important;
    width:calc(100% - 28px)!important;
    max-width:340px!important;
    padding:10px 14px 9px!important;
    font-size:13px!important;
    letter-spacing:.08em!important;
  }
  .dm-access-neon span{
    margin-top:3px!important;
    font-size:7px!important;
  }
  .dm-access-card-head{
    margin-bottom:18px!important;
  }
  .dm-access-card-icon{
    width:42px!important;
    height:42px!important;
    flex:0 0 42px!important;
  }
  .dm-access-card-head small{
    font-size:9px!important;
  }
  .dm-access-card-head strong{
    font-size:12px!important;
  }
  .dm-access-card h2{
    font-size:clamp(28px,8vw,34px)!important;
    line-height:1.08!important;
    margin-bottom:8px!important;
  }
  .dm-access-card>p{
    margin-bottom:18px!important;
    font-size:13px!important;
    line-height:1.5!important;
  }
  .dm-access-card label{
    font-size:10px!important;
  }
  .dm-access-card input{
    min-height:52px!important;
    margin-bottom:13px!important;
    font-size:16px!important; /* evita zoom automático no iPhone */
  }
  .dm-access-forgot{
    margin:-4px 0 10px!important;
  }
  .dm-access-forgot button{
    font-size:11px!important;
  }
  .dm-access-submit{
    min-height:54px!important;
    font-size:13px!important;
  }
  .dm-access-bottom{
    margin-top:12px!important;
  }
  .dm-access-state{
    font-size:9px!important;
  }
  .dm-access-note{
    margin-top:10px!important;
    padding-top:11px!important;
  }
  .dm-access-note strong{
    font-size:10px!important;
  }
  .dm-access-note small{
    font-size:9px!important;
  }

  /* Apresentação continua existindo, mas compacta e após o login */
  .dm-access-showcase{
    order:2!important;
    min-height:0!important;
    padding:0!important;
    border-radius:22px!important;
    overflow:hidden!important;
  }
  .dm-access-copy{
    width:100%!important;
    max-width:none!important;
    padding:28px 20px 24px!important;
  }
  .dm-access-kicker{
    font-size:10px!important;
  }
  .dm-access-copy h1{
    margin:10px 0 12px!important;
    font-size:clamp(34px,10vw,44px)!important;
    line-height:.98!important;
  }
  .dm-access-copy>p{
    max-width:none!important;
    margin:0!important;
    font-size:13px!important;
    line-height:1.55!important;
  }
  .dm-access-feature-grid{
    display:none!important;
  }
  .dm-access-automation{
    width:100%!important;
    margin-top:18px!important;
    padding:13px!important;
    grid-template-columns:40px 1fr!important;
    gap:11px!important;
  }
  .dm-access-automation-icon{
    width:40px!important;
    height:40px!important;
    border-radius:12px!important;
    font-size:18px!important;
  }
  .dm-access-automation small{
    font-size:8px!important;
  }
  .dm-access-automation strong{
    font-size:13px!important;
  }
  .dm-access-automation p{
    font-size:10px!important;
    line-height:1.4!important;
  }
  .dm-access-visual{
    display:none!important;
  }

  .dm-owner-setup{
    position:fixed!important;
    inset:12px!important;
    max-height:calc(100svh - 24px)!important;
    padding:20px!important;
  }
}

@media(max-width:390px){
  .dm-access-logo-copy small{display:none!important}
  .dm-access-back{font-size:0!important;padding:9px 12px!important}
  .dm-access-back::after{content:"← Site";font-size:10px!important}
  .dm-access-card{padding-left:16px!important;padding-right:16px!important}
  .dm-access-copy{padding-left:17px!important;padding-right:17px!important}
}


/* ==========================================================
   V271 — AUTENTICAÇÃO RESPONSIVA / DESKTOP ESTÁVEL
   Telas de ativação, recuperação, redefinição e 2FA usam uma
   coluna real e não são afetadas pelo grid antigo da V201.
   ========================================================== */
.dm-access-shell.dm-access-shell--compact{
  width:min(820px,100%)!important;
  max-width:820px!important;
  min-height:auto!important;
  margin:clamp(22px,4vh,48px) auto!important;
  display:block!important;
}
.dm-access-shell--compact .dm-access-card,
.dm-access-card.dm-access-card--compact{
  width:100%!important;
  max-width:760px!important;
  min-height:0!important;
  margin:0 auto!important;
  padding:78px clamp(28px,5vw,52px) 36px!important;
  overflow:visible!important;
}
.dm-access-shell--compact .dm-access-card h2{
  font-size:clamp(32px,4vw,42px)!important;
}
.dm-access-shell--compact .dm-access-card>p{
  font-size:14px!important;
  max-width:62ch;
}
.dm-access-shell--compact form{
  width:100%;
}
.dm-access-shell--compact .dm-access-note{
  margin-top:22px!important;
}
.dm-access-shell--compact .dm-security-secret,
.dm-access-shell--compact .dm-security-recovery{
  width:100%;
}

/* Evita que desktop intermediário transforme as telas de login em uma faixa.
   O card nunca fica abaixo de 420px e o conjunto centraliza corretamente. */
@media(min-width:761px){
  .dm-access-page .dm-access-card{
    min-width:0!important;
  }
  .dm-access-shell--compact{
    padding:0 18px!important;
  }
}

@media(max-width:760px){
  .dm-access-shell.dm-access-shell--compact{
    width:100%!important;
    margin:0 auto!important;
    display:block!important;
    padding:0!important;
  }
  .dm-access-shell--compact .dm-access-card,
  .dm-access-card.dm-access-card--compact{
    max-width:none!important;
    padding:68px 20px 24px!important;
    border-radius:22px!important;
  }
}


/* V279 — checkbox de consentimento consistente */
.dm-security-consent{display:grid!important;grid-template-columns:20px minmax(0,1fr)!important;gap:10px!important;align-items:start!important;line-height:1.45!important}
.dm-security-consent input[type="checkbox"]{appearance:auto!important;-webkit-appearance:checkbox!important;width:18px!important;height:18px!important;min-width:18px!important;max-width:18px!important;margin:2px 0 0!important;padding:0!important;box-shadow:none!important;transform:none!important}


/* V281 — consentimento alinhado e toda a linha clicável */
.dm-security-consent{display:grid!important;grid-template-columns:20px minmax(0,1fr)!important;gap:10px!important;align-items:start!important;width:100%!important;padding:12px 14px!important;margin:10px 0 4px!important;border:1px solid rgba(83,126,176,.18)!important;border-radius:13px!important;background:#f8fbff!important;cursor:pointer!important;box-sizing:border-box!important}
.dm-security-consent input[type="checkbox"]{appearance:none!important;-webkit-appearance:none!important;width:18px!important;height:18px!important;min-width:18px!important;margin:2px 0 0!important;border:2px solid #8da8c2!important;border-radius:5px!important;background:#fff!important;display:grid!important;place-content:center!important;cursor:pointer!important}
.dm-security-consent input[type="checkbox"]::before{content:"";width:9px;height:9px;transform:scale(0);transition:transform .12s ease;background:#fff;clip-path:polygon(14% 44%,0 59%,40% 100%,100% 18%,84% 4%,39% 70%)}
.dm-security-consent input[type="checkbox"]:checked{background:#0a75bd!important;border-color:#0a75bd!important}.dm-security-consent input[type="checkbox"]:checked::before{transform:scale(1)}
.dm-security-consent span{min-width:0;color:#53677e;font-size:13px;line-height:1.45}.dm-security-consent a{color:#096eaf;font-weight:900;text-decoration:underline;text-underline-offset:2px}

/* ==========================================================
   V315 — CHECKBOXES COM TAMANHO FIXO E ACESSÍVEL
   Impede que regras gerais de inputs estiquem o consentimento.
   ========================================================== */
.dm-access-card .dm-security-consent{
  display:grid!important;
  grid-template-columns:24px minmax(0,1fr)!important;
  align-items:start!important;
  gap:12px!important;
  padding:16px!important;
  margin:14px 0 10px!important;
}
.dm-access-card .dm-security-consent input[type="checkbox"]{
  appearance:none!important;
  -webkit-appearance:none!important;
  box-sizing:border-box!important;
  width:22px!important;
  min-width:22px!important;
  max-width:22px!important;
  height:22px!important;
  min-height:22px!important;
  max-height:22px!important;
  margin:2px 0 0!important;
  padding:0!important;
  border:2px solid #8da8c2!important;
  border-radius:6px!important;
  background:#fff!important;
  box-shadow:none!important;
  transform:none!important;
  display:grid!important;
  place-items:center!important;
  align-self:start!important;
  flex:0 0 22px!important;
  cursor:pointer!important;
}
.dm-access-card .dm-security-consent input[type="checkbox"]::before{
  content:""!important;
  width:11px!important;
  height:11px!important;
  background:#fff!important;
  clip-path:polygon(14% 44%,0 59%,40% 100%,100% 18%,84% 4%,39% 70%)!important;
  transform:scale(0)!important;
  transition:transform .14s ease!important;
}
.dm-access-card .dm-security-consent input[type="checkbox"]:checked{
  border-color:#0878c3!important;
  background:linear-gradient(145deg,#1595df,#0a6eb5)!important;
}
.dm-access-card .dm-security-consent input[type="checkbox"]:checked::before{transform:scale(1)!important}
.dm-access-card .dm-security-consent input[type="checkbox"]:focus-visible{
  outline:3px solid rgba(20,145,218,.25)!important;
  outline-offset:3px!important;
}
.dm-access-card .dm-security-consent span{
  display:block!important;
  min-width:0!important;
  font-size:14px!important;
  line-height:1.5!important;
}
@media(max-width:760px){
  .dm-access-card .dm-security-consent{grid-template-columns:22px minmax(0,1fr)!important;padding:14px!important;gap:10px!important}
  .dm-access-card .dm-security-consent input[type="checkbox"]{width:20px!important;min-width:20px!important;max-width:20px!important;height:20px!important;min-height:20px!important;max-height:20px!important;flex-basis:20px!important}
  .dm-access-card .dm-security-consent span{font-size:13px!important}
}


/* V330.7.29 — refino visual isolado das telas de acesso */
.dm-access-kicker .dm-tight-brand,
.dm-access-neon .dm-tight-brand{
  display:inline-block;
  letter-spacing:0!important;
  word-spacing:0!important;
  white-space:nowrap;
}
/* Dá mais respiro entre o selo superior e a identificação do tipo de acesso. */
.dm-access-card > .dm-access-card-head{
  margin-top:10px!important;
}
@media (max-width:700px){
  .dm-access-card > .dm-access-card-head{margin-top:6px!important;}
}

/* ==========================================================
   V330.7.31 — FECHAMENTO VISUAL DOS ACESSOS
   Identidade premium alinhada ao site + refinamento responsivo.
   ========================================================== */
body.dm-access-page{
  background:
    radial-gradient(circle at 9% 16%,rgba(32,169,220,.13),transparent 24%),
    radial-gradient(circle at 88% 13%,rgba(233,59,159,.10),transparent 23%),
    radial-gradient(circle at 62% 84%,rgba(109,88,232,.10),transparent 28%),
    linear-gradient(145deg,#030818 0%,#07172f 48%,#090b20 100%);
}
.dm-access-header{height:82px;border-bottom-color:rgba(104,185,239,.18);box-shadow:0 14px 36px rgba(0,0,0,.13)}
.dm-access-logo img{width:58px;height:58px;filter:drop-shadow(0 9px 20px rgba(24,169,221,.16))}
.dm-access-logo-copy strong{letter-spacing:-1.9px}
.dm-access-shell{width:min(1540px,100%);grid-template-columns:minmax(0,1.34fr) minmax(430px,.66fr);gap:20px}
.dm-access-showcase,.dm-access-card{min-height:690px;border-radius:30px}
.dm-access-showcase{isolation:isolate;box-shadow:0 34px 90px rgba(0,0,0,.32)}
.dm-access-showcase:before{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(125deg,rgba(255,255,255,.035),transparent 30%,transparent 72%,rgba(255,255,255,.025));z-index:1}
.dm-access-copy{width:61%;padding:62px 0 40px 56px}
.dm-access-copy h1{font-size:clamp(50px,4.2vw,76px);max-width:740px}
.dm-access-copy>p{font-size:15.5px;max-width:610px}
.dm-access-feature{backdrop-filter:blur(12px);box-shadow:inset 0 1px 0 rgba(255,255,255,.025)}
.dm-access-card{padding:88px 36px 30px;background:linear-gradient(180deg,#fff 0%,#fbfdff 100%);border:1px solid rgba(188,213,235,.74);box-shadow:0 34px 90px rgba(0,0,0,.29)}
.dm-access-card:before{content:"";position:absolute;left:28px;right:28px;top:64px;height:1px;background:linear-gradient(90deg,transparent,rgba(70,143,224,.25),rgba(123,78,234,.25),transparent)}
.dm-access-card.partner{box-shadow:0 34px 90px rgba(0,0,0,.29),inset 0 3px 0 rgba(32,169,220,.42)}
.dm-access-card.team{box-shadow:0 34px 90px rgba(0,0,0,.29),inset 0 3px 0 rgba(52,200,255,.42)}
.dm-access-card.admin{box-shadow:0 34px 90px rgba(0,0,0,.29),inset 0 3px 0 rgba(118,81,239,.46)}
.dm-access-neon{top:14px;min-width:282px;padding:11px 22px 10px;border:1px solid rgba(255,255,255,.18);box-shadow:0 0 22px rgba(75,204,255,.23),0 14px 34px rgba(0,0,0,.17)}
.dm-access-card-head{margin-top:0!important;margin-bottom:20px;position:relative}
.dm-access-card-icon{width:50px;height:50px;border-radius:15px;font-size:20px;box-shadow:inset 0 0 0 1px rgba(54,138,204,.08)}
.dm-access-card-head small{font-size:9.5px;font-weight:950;letter-spacing:.11em}
.dm-access-card-head strong{font-size:13.5px}
.dm-access-card h2{font-size:34px;margin-bottom:9px}
.dm-access-card>p{font-size:13.2px;line-height:1.55;margin-bottom:25px}
.dm-access-card label{font-size:10.5px;letter-spacing:.02em;margin-bottom:7px}
.dm-access-card input{min-height:56px;border-color:#c9d9e8;border-radius:14px;background:#fff;box-shadow:inset 0 1px 0 rgba(16,32,59,.015)}
.dm-access-card input:hover{border-color:#abc8df}
.dm-access-card input:focus{border-color:#4e9dde;box-shadow:0 0 0 4px rgba(64,151,220,.10)}
.dm-access-submit{min-height:58px;border-radius:14px;background:linear-gradient(90deg,#178dcc 0%,#526fe4 48%,#7b52ed 100%);box-shadow:0 16px 34px rgba(70,97,218,.22);transition:transform .16s ease,filter .16s ease,box-shadow .16s ease}
.dm-access-submit:hover{transform:translateY(-1px);filter:brightness(1.04);box-shadow:0 20px 40px rgba(70,97,218,.28)}
.admin .dm-access-submit{background:linear-gradient(90deg,#4f49c9,#7951e8,#b14fd7)}
.team .dm-access-submit{background:linear-gradient(90deg,#0879ad,#2099c4,#526fe4)}
.dm-access-forgot a,.dm-access-forgot button{font-weight:850;text-decoration:none}
.dm-access-note{border-top-color:#e3ebf3}
.dm-access-note strong{color:#19314d}
.dm-access-note small{color:#71859b}
.dm-login-legal{max-width:760px;margin:16px auto 22px!important;line-height:1.5}

@media(max-width:1180px){
  .dm-access-shell{grid-template-columns:minmax(0,1.06fr) minmax(410px,.82fr)}
  .dm-access-copy{width:67%;padding-left:42px}
  .dm-access-feature-grid{grid-template-columns:1fr 1fr}
  .dm-access-feature:nth-child(3){display:none}
  .dm-access-visual{width:42%}
}
@media(max-width:920px){
  .dm-access-main{padding:18px 18px 28px}
  .dm-access-shell{display:block;min-height:auto}
  .dm-access-showcase{min-height:360px;margin-bottom:16px}
  .dm-access-copy{width:100%;padding:34px 30px 32px;max-width:none}
  .dm-access-copy h1{font-size:clamp(38px,8vw,58px);max-width:650px}
  .dm-access-copy>p{max-width:620px}
  .dm-access-feature-grid{grid-template-columns:repeat(3,minmax(0,1fr));width:100%;max-width:740px}
  .dm-access-feature:nth-child(3){display:block}
  .dm-access-automation{width:100%;max-width:740px}
  .dm-access-visual{display:none}
  .dm-access-card{min-height:0;max-width:620px;margin:0 auto;padding:86px 30px 30px}
}
@media(max-width:620px){
  .dm-access-header{height:70px;padding:0 16px}
  .dm-access-logo img{width:48px;height:48px}
  .dm-access-logo-copy strong{font-size:25px}
  .dm-access-main{min-height:calc(100vh - 70px);padding:14px 12px 24px}
  .dm-access-showcase{min-height:0;border-radius:23px}
  .dm-access-copy{padding:24px 20px 25px}
  .dm-access-copy h1{font-size:34px;line-height:1;margin:12px 0 14px}
  .dm-access-copy>p{font-size:13px;line-height:1.5}
  .dm-access-feature-grid,.dm-access-automation{display:none}
  .dm-access-card{border-radius:23px;padding:78px 18px 24px}
  .dm-access-neon{min-width:230px;max-width:calc(100% - 34px);font-size:13px}
  .dm-access-card h2{font-size:29px}
  .dm-access-card>p{font-size:12.5px}
}

/* ==========================================================
   V338 — RECONSTRUÇÃO CONTROLADA DOS ACESSOS
   Base visual: V331. Mantém a identidade premium do site,
   com hierarquia fixa e conteúdo autoexplicativo.
   ========================================================== */
@media(min-width:1181px){
  .dm-access-shell{
    grid-template-columns:minmax(0,1.64fr) minmax(430px,.92fr)!important;
    gap:20px!important;
  }
  .dm-access-copy{
    width:61%!important;
    max-width:820px!important;
    padding:46px 0 28px 48px!important;
  }
  .dm-access-copy h1{
    font-size:clamp(54px,4.45vw,80px)!important;
    margin:14px 0 18px!important;
  }
  .dm-access-copy>p{
    max-width:690px!important;
    font-size:16px!important;
    line-height:1.58!important;
  }
  .dm-access-card{
    min-width:430px!important;
  }
}

.dm-access-showcase{
  background:
    radial-gradient(circle at 70% 43%,rgba(39,184,248,.18),transparent 27%),
    radial-gradient(circle at 84% 76%,rgba(232,82,196,.16),transparent 27%),
    linear-gradient(132deg,#061b3f 0%,#17265c 50%,#2b195f 100%)!important;
}

.dm-access-feature-grid{gap:12px!important;margin-top:24px!important}
.dm-access-feature{
  position:relative;
  min-height:148px!important;
  padding:17px 16px 16px!important;
  overflow:hidden;
  border-color:rgba(107,197,244,.24)!important;
  background:
    linear-gradient(145deg,rgba(9,34,74,.84),rgba(24,27,73,.69))!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.03),0 14px 34px rgba(0,0,0,.12);
}
.dm-access-feature:after{
  content:"";position:absolute;left:16px;right:16px;bottom:0;height:2px;border-radius:3px;
  background:linear-gradient(90deg,#36c9ff,transparent 72%);opacity:.72;
}
.dm-access-feature:nth-child(2):after{background:linear-gradient(90deg,#9872ff,transparent 72%)}
.dm-access-feature:nth-child(3):after{background:linear-gradient(90deg,#ed6bc7,transparent 72%)}
.dm-premium-icon{
  display:grid!important;place-items:center!important;
  width:42px!important;height:42px!important;border-radius:13px!important;
  color:#69ddff!important;
  border:1px solid rgba(95,207,255,.30)!important;
  background:linear-gradient(145deg,rgba(50,168,226,.18),rgba(23,105,178,.08))!important;
  box-shadow:inset 0 0 18px rgba(76,198,255,.08),0 8px 22px rgba(0,0,0,.12)!important;
}
.dm-access-feature:nth-child(2) .dm-premium-icon{color:#b59aff!important;border-color:rgba(177,139,255,.30)!important;background:linear-gradient(145deg,rgba(126,85,225,.18),rgba(77,54,171,.08))!important}
.dm-access-feature:nth-child(3) .dm-premium-icon{color:#ff8bd6!important;border-color:rgba(240,106,202,.30)!important;background:linear-gradient(145deg,rgba(218,78,177,.17),rgba(142,50,123,.08))!important}
.dm-premium-icon svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.dm-access-feature b{margin-top:13px!important;font-size:9px!important;letter-spacing:.14em!important}
.dm-access-feature strong{margin-top:4px!important;font-size:16px!important;line-height:1.15!important}
.dm-access-feature p{margin-top:7px!important;color:#b3c2d7!important;font-size:11.5px!important;line-height:1.45!important}

.dm-access-automation{
  margin-top:12px!important;padding:14px 16px!important;
  grid-template-columns:46px 1fr!important;
  background:linear-gradient(100deg,rgba(17,55,112,.82),rgba(54,29,103,.76))!important;
  border-color:rgba(108,200,248,.28)!important;
}
.dm-access-automation-icon.dm-premium-icon{
  width:46px!important;height:46px!important;color:#fff!important;
  border-color:rgba(255,255,255,.16)!important;
  background:linear-gradient(135deg,#168ec8,#7356ed)!important;
}
.dm-access-automation small{font-size:9px!important;letter-spacing:.16em!important}
.dm-access-automation strong{font-size:15px!important;margin-top:3px!important}
.dm-access-automation p{font-size:11px!important;line-height:1.4!important;margin-top:4px!important}

/* O formulário faz parte do mesmo universo visual; não é uma “folha branca” isolada. */
.dm-access-card{
  isolation:isolate;
  overflow:hidden!important;
  padding:78px 34px 26px!important;
  border:1px solid rgba(142,185,230,.35)!important;
  background:
    radial-gradient(circle at 90% 2%,rgba(109,81,239,.10),transparent 30%),
    radial-gradient(circle at 5% 92%,rgba(52,200,255,.08),transparent 28%),
    linear-gradient(160deg,#fbfdff 0%,#f3f7fd 58%,#eef3fb 100%)!important;
  box-shadow:0 30px 80px rgba(0,0,0,.30),inset 0 1px 0 rgba(255,255,255,.9)!important;
}
.dm-access-card:after{
  content:"";position:absolute;z-index:-1;inset:auto -70px -90px auto;width:220px;height:220px;border-radius:50%;
  background:radial-gradient(circle,rgba(111,77,232,.09),transparent 66%);pointer-events:none;
}
.dm-access-neon{min-width:248px!important;padding:11px 20px 10px!important;font-size:14px!important}
.dm-access-card-head{margin-bottom:20px!important}
.dm-access-card-icon{
  border:1px solid rgba(84,157,216,.18);
  box-shadow:0 8px 20px rgba(28,104,170,.08);
}
.dm-access-card h2{font-size:38px!important;margin-bottom:8px!important}
.dm-access-card>p{max-width:430px;font-size:13px!important;line-height:1.52!important;margin-bottom:20px!important;color:#61758f!important}
.dm-access-card input{background:rgba(255,255,255,.86)!important;border-color:#c9d8e8!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.9)}
.dm-access-submit{background:linear-gradient(90deg,#238fd4 0%,#6657e8 58%,#9253df 100%)!important;box-shadow:0 15px 32px rgba(85,74,211,.24)!important}
.dm-access-note{border-top-color:#dce7f2!important}

/* remove qualquer posição reservada aos cards flutuantes da V331 */
.dm-access-float{display:none!important}

@media(max-width:1500px) and (min-width:1181px){
  .dm-access-copy{width:63%!important;padding-left:38px!important}
  .dm-access-copy h1{font-size:clamp(48px,4vw,68px)!important}
  .dm-access-feature p{font-size:10.8px!important}
}


/* ==========================================================
   V330.7.39 — POLIMENTO PREMIUM CONTROLADO
   Mantém 100% da estrutura V338. Apenas acabamento visual.
   ========================================================== */
.dm-access-showcase{
  box-shadow:0 34px 92px rgba(0,0,0,.34),inset 0 1px 0 rgba(255,255,255,.035)!important;
}
.dm-access-showcase:before{
  background:
    linear-gradient(125deg,rgba(255,255,255,.045),transparent 26%,transparent 72%,rgba(255,255,255,.028)),
    radial-gradient(circle at 48% 16%,rgba(82,197,255,.045),transparent 28%)!important;
}
.dm-access-copy h1{text-shadow:0 10px 34px rgba(1,8,28,.16)}
.dm-access-copy>p{color:#c8d5e6!important}

.dm-access-feature{
  border-radius:20px!important;
  border-color:rgba(118,205,250,.27)!important;
  background:linear-gradient(145deg,rgba(8,34,75,.90),rgba(25,28,76,.72))!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.045),0 16px 38px rgba(0,0,0,.14)!important;
  transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease;
}
.dm-access-feature:hover{
  transform:translateY(-2px);
  border-color:rgba(123,211,255,.40)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.055),0 19px 42px rgba(0,0,0,.18)!important;
}
.dm-premium-icon{
  width:46px!important;height:46px!important;border-radius:15px!important;
  position:relative;
  box-shadow:inset 0 0 20px rgba(76,198,255,.10),0 9px 24px rgba(0,0,0,.15),0 0 0 5px rgba(79,198,255,.025)!important;
}
.dm-premium-icon svg{width:25px!important;height:25px!important;stroke-width:1.75!important}
.dm-access-feature:nth-child(2) .dm-premium-icon{box-shadow:inset 0 0 20px rgba(161,125,255,.11),0 9px 24px rgba(0,0,0,.15),0 0 0 5px rgba(161,125,255,.025)!important}
.dm-access-feature:nth-child(3) .dm-premium-icon{box-shadow:inset 0 0 20px rgba(244,113,207,.10),0 9px 24px rgba(0,0,0,.15),0 0 0 5px rgba(244,113,207,.025)!important}
.dm-access-feature strong{font-size:16.5px!important;letter-spacing:-.01em}
.dm-access-feature p{color:#becbdb!important}

.dm-access-automation{
  border-radius:20px!important;
  background:linear-gradient(100deg,rgba(15,59,119,.88),rgba(58,31,111,.82))!important;
  border-color:rgba(123,209,255,.32)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04),0 14px 32px rgba(0,0,0,.11)!important;
}
.dm-access-automation-icon.dm-premium-icon{
  width:50px!important;height:50px!important;border-radius:16px!important;
  box-shadow:0 12px 28px rgba(72,91,222,.28),0 0 0 5px rgba(92,184,255,.035)!important;
}

.dm-access-glow{
  width:560px!important;height:560px!important;
  background:radial-gradient(circle,rgba(102,82,236,.22),rgba(61,160,246,.07) 44%,transparent 70%)!important;
}
.dm-access-ring.a{border-color:rgba(69,201,255,.34)!important;box-shadow:0 0 38px rgba(54,187,245,.06)}
.dm-access-ring.b{border-color:rgba(239,92,204,.30)!important;box-shadow:0 0 34px rgba(232,85,197,.055)}
.dm-access-visual img{
  right:14px!important;bottom:6px!important;width:min(510px,96%)!important;
  filter:drop-shadow(0 34px 50px rgba(0,0,0,.38)) drop-shadow(0 0 24px rgba(85,153,255,.08))!important;
}

.dm-access-card{
  background:
    radial-gradient(circle at 90% 4%,rgba(126,96,239,.065),transparent 24%),
    radial-gradient(circle at 5% 93%,rgba(36,166,220,.055),transparent 25%),
    linear-gradient(180deg,rgba(255,255,255,.985),rgba(248,251,255,.975))!important;
  border:1px solid rgba(170,204,231,.82)!important;
  box-shadow:0 34px 92px rgba(0,0,0,.31),inset 0 1px 0 rgba(255,255,255,.98)!important;
}
.dm-access-card:after{
  content:"";position:absolute;inset:10px;border-radius:22px;pointer-events:none;
  border:1px solid rgba(255,255,255,.64);
}
.dm-access-neon{
  border:1px solid rgba(255,255,255,.22)!important;
  box-shadow:0 0 24px rgba(75,204,255,.22),0 14px 34px rgba(0,0,0,.17),inset 0 1px 0 rgba(255,255,255,.12)!important;
}
.admin .dm-access-neon{box-shadow:0 0 25px rgba(144,95,255,.25),0 14px 34px rgba(0,0,0,.17),inset 0 1px 0 rgba(255,255,255,.12)!important}
.dm-access-card-head{gap:13px!important;margin-bottom:18px!important}
.dm-access-card-icon{
  width:52px!important;height:52px!important;border-radius:16px!important;
  background:linear-gradient(145deg,#edf8ff,#e6f2fb)!important;
  color:#218bcf!important;border:1px solid rgba(64,151,216,.14);
  box-shadow:0 9px 24px rgba(45,125,190,.10),inset 0 1px 0 #fff;
}
.team .dm-access-card-icon{color:#178bb8!important;background:linear-gradient(145deg,#edfaff,#e6f6fb)!important}
.admin .dm-access-card-icon{color:#7652df!important;background:linear-gradient(145deg,#f3efff,#ece8fc)!important}
.dm-access-card-icon svg{width:25px;height:25px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.dm-access-card-head small{color:#71869d!important;font-size:9.5px!important}
.dm-access-card-head strong{color:#13243d!important;font-size:14px!important}
.dm-access-card h2{color:#0c1c34!important;letter-spacing:-.04em!important}
.dm-access-card>p{color:#627892!important}
.dm-access-card label{color:#172943!important;font-size:10.5px!important}
.dm-access-card input{
  min-height:55px!important;border-radius:14px!important;
  background:rgba(255,255,255,.92)!important;
  border-color:#c5d6e6!important;
  box-shadow:inset 0 1px 1px rgba(16,32,59,.018),0 4px 14px rgba(29,62,99,.025)!important;
  transition:border-color .16s ease,box-shadow .16s ease,background .16s ease;
}
.dm-access-card input:hover{border-color:#a9c7df!important;background:#fff!important}
.dm-access-card input:focus{border-color:#4a9cdd!important;background:#fff!important;box-shadow:0 0 0 4px rgba(64,151,220,.10),0 7px 18px rgba(38,96,151,.05)!important}
.dm-access-submit{
  border-radius:14px!important;
  background:linear-gradient(92deg,#168fd0 0%,#526fe5 48%,#8950e4 100%)!important;
  box-shadow:0 17px 34px rgba(71,91,215,.25),inset 0 1px 0 rgba(255,255,255,.18)!important;
}
.dm-access-submit:hover{transform:translateY(-1px);filter:brightness(1.035);box-shadow:0 20px 40px rgba(71,91,215,.30),inset 0 1px 0 rgba(255,255,255,.18)!important}
.dm-access-note{border-top-color:#d9e5f0!important}
.dm-access-note strong{color:#21344e!important}
.dm-access-note small{color:#74899f!important}

@media(max-width:1500px) and (min-width:1181px){
  .dm-premium-icon{width:44px!important;height:44px!important}
  .dm-access-visual img{width:min(485px,95%)!important}
}
@media(max-width:620px){
  .dm-access-card:after{inset:7px;border-radius:18px}
  .dm-access-card-icon{width:48px!important;height:48px!important}
}

/* V330.7.95 — restaura a identidade aprovada sem reintroduzir ícones ilustrados */
.dm-portal-brand-logo{width:min(238px,100%)!important;height:auto!important;max-height:none!important;object-fit:contain!important;object-position:center!important;overflow:visible!important}
.oa-brand.dm-portal-brand,.pa-brand.dm-portal-brand{overflow:visible!important;padding-top:8px!important;padding-bottom:8px!important}
.dm-access-logo--official{display:flex!important;align-items:center!important;gap:12px!important;max-width:min(390px,72vw)!important}
.dm-access-logo--official>img{width:230px!important;height:auto!important;max-height:92px!important;object-fit:contain!important;object-position:center!important;filter:drop-shadow(0 8px 18px rgba(16,142,255,.18))!important}
.dm-access-role{font:900 9px/1.2 "Trebuchet MS",Arial,sans-serif;letter-spacing:.18em;color:#9fc9ff;text-transform:uppercase;white-space:nowrap}
@media(max-width:760px){
 .dm-portal-brand-logo{width:185px!important;max-height:none!important}
 .oa-brand.dm-portal-brand,.pa-brand.dm-portal-brand{padding-right:74px!important;min-height:82px!important;align-items:flex-start!important}
 .dm-access-logo--official>img{width:175px!important;max-height:72px!important}
 .dm-access-role{font-size:7px!important;letter-spacing:.12em!important}
}
@media(max-width:430px){.dm-portal-brand-logo{width:160px!important}.dm-access-logo--official>img{width:150px!important}.dm-access-logo--official{max-width:72vw!important}}
