
#access-panel{grid-template-columns:minmax(0,1fr) minmax(0,1.18fr)}
#access-panel .welcome-story{background:radial-gradient(circle at 10% 8%,#2b5b48,#102e27 65%)}
#access-panel .welcome-story-inner{max-width:540px}
#access-panel .welcome-story h1{font-size:clamp(39px,3.8vw,62px);margin:10px 0 22px}
#access-panel .welcome-story .welcome-lead{font-size:clamp(15px,1.2vw,19px);line-height:1.55}
#access-panel .welcome-seo{font:13px/1.65 Arial,sans-serif;color:#dfebe0;margin:15px 0}
#access-panel .welcome-benefits{display:grid;gap:9px;margin-top:18px;font:12px/1.5 Arial,sans-serif;color:#efe7cd}
#access-panel .welcome-benefits span::before{content:"✓";margin-right:10px;color:#e7dbac}
#access-panel .welcome-points{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 23px}
#access-panel .welcome-points span{font-size:11px;border:1px solid #d6dfd4;background:#fffef8;border-radius:16px;padding:7px 9px;color:#28513e}
#access-panel .welcome-points span::before{content:"✓ ";color:#28513e}
#access-panel .welcome-proof{border-top:1px solid #d8dfd5;margin-top:20px;padding-top:17px;font-size:12px;color:#3a6250}
#access-panel .welcome-proof p{margin:7px 0;color:#667b6b;font-size:12px}
#access-panel .landing-extra{grid-column:1/-1;min-width:0}
#access-panel .landing-block{padding:65px clamp(24px,7vw,120px);background:#fffdf8;color:#173e34}
#access-panel .landing-alt{background:#f0f3ec}
#access-panel .landing-block h2{font:normal clamp(29px,3vw,38px) Georgia,serif;margin:0 0 14px;color:#173e34}
#access-panel .landing-block>p{max-width:720px;color:#63766a;font-size:14px}
#access-panel .landing-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:27px}
#access-panel .landing-cards article{background:white;border:1px solid #d9e1d7;border-radius:12px;padding:25px;box-shadow:0 4px 18px #17362907}
#access-panel .landing-cards article>span{font:normal 26px Georgia,serif;color:#ad9457}
#access-panel .landing-cards h3{font:normal 21px Georgia,serif;margin:12px 0;color:#173e34}
#access-panel .landing-cards p{font:13px/1.65 Arial,sans-serif;margin:0;color:#667b6b}
#access-panel .landing-final{background:#173e31;color:white;text-align:center;padding:52px 24px}
#access-panel .landing-final h2{font:normal clamp(27px,3vw,35px) Georgia,serif;color:white;margin:0}
#access-panel .landing-final p{font-size:13px;color:#d9e5da;margin:14px 0}
#access-panel .landing-final button{background:#f5f0db;border:0;border-radius:5px;color:#1b4536;padding:14px 25px;font-weight:bold;cursor:pointer}
@media(max-width:850px){#access-panel{grid-template-columns:1fr}#access-panel .landing-cards{grid-template-columns:1fr}#access-panel .landing-block{padding:45px 7vw}}
@media(max-width:700px){#access-panel .welcome-story{display:flex!important;min-height:0;padding:42px 7vw}#access-panel .welcome-story-inner::before{height:140px!important;margin-bottom:10px!important}#access-panel .welcome-story h1{font-size:clamp(35px,8vw,52px)}#access-panel .welcome-seo{font-size:12px}#access-panel .welcome-login{min-height:0}#access-panel .landing-block{padding:42px 7vw}}
html[data-theme="dark"] #access-panel .landing-block{background:#1b2c22;color:#e9f1e6}
html[data-theme="dark"] #access-panel .landing-alt{background:#20362a}
html[data-theme="dark"] #access-panel .landing-block h2,html[data-theme="dark"] #access-panel .landing-cards h3{color:#e9f1e6}
html[data-theme="dark"] #access-panel .landing-cards article{background:#243b30;border-color:#385343}
html[data-theme="dark"] #access-panel .landing-cards p,html[data-theme="dark"] #access-panel .landing-block>p{color:#d1d9cc}

/* Separação visual dos benefícios em todos os tamanhos de ecrã. */
#access-panel .welcome-points{display:flex;flex-wrap:wrap;align-items:center;column-gap:10px;row-gap:10px;margin:0 0 24px}
#access-panel .welcome-points span{display:inline-flex;align-items:center;white-space:normal;line-height:1.45}

/* Melhor legibilidade e alinhamento das vantagens junto ao registo. */
#access-panel .welcome-login .welcome-points{
 display:flex;
 flex-wrap:wrap;
 align-items:center;
 justify-content:flex-start;
 gap:10px 12px;
 margin:18px 0 27px;
}
#access-panel .welcome-login .welcome-points > span{
 display:inline-flex;
 align-items:center;
 gap:8px;
 padding:9px 13px;
 border:1px solid #d4dfd5;
 border-radius:999px;
 background:#fffef9;
 font:500 12px/1.4 system-ui,sans-serif;
 color:#24513e;
 letter-spacing:0;
 white-space:normal;
}
#access-panel .welcome-login .welcome-points > span::before{
 content:"✓";
 display:inline-flex;
 align-items:center;
 justify-content:center;
 flex:0 0 17px;
 width:17px;
 height:17px;
 margin:0;
 border-radius:50%;
 background:#dcebe1;
 color:#225641;
 font-size:12px;
 font-weight:700;
}
@media(max-width:520px){
 #access-panel .welcome-login .welcome-points{gap:8px;margin-bottom:23px}
 #access-panel .welcome-login .welcome-points > span{padding:8px 11px;font-size:12px}
}

/* Três vantagens alinhadas, sem uma etiqueta isolada na linha seguinte. */
#access-panel .welcome-login .welcome-points{
 display:grid;
 grid-template-columns:repeat(3,minmax(0,1fr));
 align-items:stretch;
 gap:8px;
 width:100%;
 margin:17px 0 26px;
}
#access-panel .welcome-login .welcome-points > span{
 display:flex;
 align-items:center;
 justify-content:center;
 gap:6px;
 min-width:0;
 width:100%;
 margin:0;
 padding:9px 7px;
 box-sizing:border-box;
 text-align:left;
 white-space:normal;
 overflow-wrap:normal;
 font-size:clamp(10.5px,1vw,12px);
 line-height:1.35;
}
#access-panel .welcome-login .welcome-points > span::before{
 flex:0 0 16px;
 width:16px;
 height:16px;
 font-size:11px;
}
@media(max-width:430px){
 #access-panel .welcome-login .welcome-points{grid-template-columns:1fr;gap:7px}
 #access-panel .welcome-login .welcome-points > span{justify-content:flex-start;padding:9px 13px;font-size:12px}
}

/* Ajuste final da distribuição desktop: três etiquetas compactas e alinhadas. */
@media(min-width:431px){
 #access-panel .welcome-login-inner .welcome-points{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:7px!important;
  width:100%!important;
  max-width:100%!important;
 }
 #access-panel .welcome-login-inner .welcome-points > span{
  min-width:0!important;
  width:100%!important;
  padding:9px 6px!important;
  font-size:11px!important;
  line-height:1.35!important;
  border-radius:12px!important;
 }
}
@media(min-width:851px){
 #access-panel .welcome-story{align-items:flex-start;justify-content:center}
 #access-panel .welcome-story-inner{margin-top:0}
}

/* Aviso visível junto à confirmação do código de acesso. */
#access-panel #code-form .code-spam-warning{margin:4px 0;padding:13px 15px;border:1px solid #cbdaca;border-radius:10px;background:#edf4eb;color:#244d3b;font-size:13px;line-height:1.55}
#access-panel #code-form .code-spam-warning strong{font-weight:700}
html[data-theme="dark"] #access-panel #code-form .code-spam-warning{background:#244133;color:#ecf5e9;border-color:#50745a}
