/* Telas de login e administração do site, com os mesmos tokens do app */
html,body{margin:0}
[hidden]{display:none!important}
body{min-height:100vh}
.boot{padding:3rem 16px;text-align:center;color:var(--muted)}
.gate{min-height:100vh;display:grid;grid-template-columns:minmax(0,1fr);place-items:center;padding:1.5rem 16px calc(1.5rem + env(safe-area-inset-bottom,0px))}
.gate-card{width:min(26rem,100%);background:var(--surface);border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow);padding:1.5rem 1.4rem;display:flex;flex-direction:column;gap:.8rem}
.gate-card.wide{width:min(46rem,100%)}
.gate-brand{display:flex;align-items:center;gap:.6rem;font-family:var(--f-display);font-weight:800;font-stretch:112%;font-size:1.15rem}
.gate-brand .mk{width:34px;height:34px;border-radius:9px;background:#15141d;color:#c9f03d;display:grid;place-items:center}
.gate-brand .mk svg{width:23px;height:23px}
.gate-card h1{font-size:1.4rem;font-weight:800;font-stretch:110%}
.gate-card h2{font-size:1.05rem;font-weight:700;margin:.4rem 0 .5rem}
.gate-card p{margin:0}
.gate-card label{font-weight:600;font-size:.9rem}
.gate-card input[type=email],.gate-card input[type=password],.gate-card input[type=text]{width:100%;border:1px solid var(--line);background:var(--surface-2);border-radius:10px;padding:.6rem .7rem;min-height:46px;font-size:1rem}
.gate-card form{display:flex;flex-direction:column;gap:.45rem}
.gate-card form .btn{margin-top:.4rem}
.wfull{width:100%}
.seg{display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--line);border-radius:12px;overflow:hidden}
.seg button{border:0;background:var(--surface);padding:.6rem;font-weight:700;font-family:var(--f-display)}
.seg button[aria-selected="true"]{background:var(--accent);color:var(--accent-ink)}
.or{display:flex;align-items:center;gap:.6rem;color:var(--muted);font-size:.85rem}
.or::before,.or::after{content:"";flex:1;height:1px;background:var(--line)}
.fine{font-size:.8rem;color:var(--muted);line-height:1.45}
.gmsg{font-size:.9rem;border-radius:10px;padding:.55rem .7rem;background:var(--surface-2)}
.gmsg[data-kind="err"]{background:var(--bad-soft);color:var(--bad)}
.gmsg[data-kind="ok"]{background:var(--ok-soft);color:var(--ok)}
.row2{display:flex;gap:.6rem;flex-wrap:wrap}
.row2 .btn{flex:1}
.adm-head{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;flex-wrap:wrap}
.gate-card section{border-top:1px solid var(--line);padding-top:.9rem;display:flex;flex-direction:column;gap:.6rem}
.addrow{display:grid!important;grid-template-columns:minmax(0,2fr) minmax(0,1.3fr) auto;gap:.5rem!important}
.addrow .btn{margin-top:0!important}
@media (max-width:560px){.addrow{grid-template-columns:1fr}}
.alist{display:flex;flex-direction:column}
.arow{display:flex;justify-content:space-between;align-items:center;gap:.6rem;padding:.5rem 0;border-bottom:1px solid var(--line);font-size:.92rem;min-width:0}
.arow span{min-width:0;overflow-wrap:anywhere}
.adm-head .row2 .btn{flex:none;white-space:nowrap}

/* celular: o cartão nunca passa da largura da tela */
.gate-card{min-width:0;max-width:100%;overflow-wrap:anywhere}
.gate-card input[type=file]{max-width:100%}
@media (max-width:560px){
  .gate{padding:1rem 10px calc(1rem + env(safe-area-inset-bottom,0px));place-items:start center}
  .gate-card{padding:1.2rem 1rem}
  .adm-head .row2{width:100%}
  .adm-head .row2 .btn{flex:1}
}
