/* Acesso público móvel: prioridade máxima, arquivo novo para evitar cache antigo. */
@media(max-width:760px){
  /* Fundo fixo obriga repintura contínua em navegadores móveis durante a
     rolagem. Em telas pequenas preservamos a arte, sem o custo do parallax. */
  body.rl-public{background-attachment:scroll!important}
  body.rl-public .rl-header{height:auto!important;min-height:76px!important}
  body.rl-public .rl-header .rl-wrap{min-height:76px!important;gap:7px!important}
  body.rl-public .rl-header .rl-logo-wordmark{width:126px!important;height:52px!important;object-fit:contain!important}
  body.rl-public .rl-header-actions{display:flex!important;flex:none!important;gap:6px!important;margin-left:auto!important}
  body.rl-public .rl-header-actions .rl-btn:first-child{display:inline-flex!important;visibility:visible!important;opacity:1!important}
  body.rl-public .rl-header-actions .rl-btn{min-height:42px!important;padding:8px 9px!important;font-size:11px!important;line-height:1!important;white-space:nowrap!important}
}

/* Alvos de toque: os links de texto permanecem visualmente iguais, mas ganham
   uma caixa de interacao segura para polegar e teclado em telas sensiveis. */
@media (pointer: coarse) {
  body.rl-public :is(.rl-nav a,.rl-footer a,.rl-legal a) {
    display:inline-flex!important;
    align-items:center;
    min-height:44px;
  }
}

body.rl-public :is(a,button,input,select,textarea):focus-visible {
  outline:3px solid #a9d1bf!important;
  outline-offset:3px;
}
@media(max-width:360px){
  body.rl-public .rl-header .rl-logo-wordmark{width:108px!important;height:48px!important}
  body.rl-public .rl-header-actions{gap:4px!important}
  body.rl-public .rl-header-actions .rl-btn{padding-inline:7px!important;font-size:10px!important}
}
@media(max-width:850px){
  .auth-page{display:grid!important;grid-template-columns:1fr!important;grid-template-rows:minmax(170px,30vh) auto!important;min-height:100vh!important;background:#e3ebe7!important}
  .auth-page .auth-brand{display:grid!important;min-height:170px!important;max-height:240px!important;padding:22px!important;background:linear-gradient(135deg,#121d18,#253d32)!important}
  .auth-page .auth-brand img{display:block!important;width:min(300px,88%)!important;max-height:190px!important;object-fit:contain!important}
  .auth-page .auth-main{padding:26px 20px 34px!important;align-items:start!important}
  .auth-page .auth-card{width:min(460px,100%)!important}
}
