/* Criado, desenvolvido, testado, abandonado, rejeitado, recuperado e testado fonte vozes da minha cabeça - William Tassi Moreira */
/* ACCTNN — telas do membro (versão 28): Ser membro, carteirinha, conferir, cheguei na cidade, agenda cultural, direitos, ajude seu conterrâneo */
.membro-grade { display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: var(--e-4); }
.membro-item { display: grid; gap: .5rem; align-content: start; position: relative; padding-top: var(--e-6); }
.membro-item h3 { font-size: 1.35rem; text-transform: none; }
.membro-num { position: absolute; top: -12px; left: var(--e-5); width: 34px; height: 34px; border-radius: 50%; display: grid; place-items: center;
  background: var(--sol); color: var(--sobre-sol); font: 900 1rem/1 var(--f-titulo); }

/* carteirinha: sempre clara e com as cores da marca, para a loja ler bem mesmo com o celular no escuro */
.carteirinha-env { max-width: 460px; }
.carteirinha { background: linear-gradient(135deg, #0C6A5A 0%, #063A31 100%); color: #fff;
  border-radius: 18px; padding: 1.1rem 1.2rem; box-shadow: var(--sombra); display: grid; gap: .9rem; aspect-ratio: 1.586; min-height: 0; overflow: hidden; }
.carteirinha header { display: flex; align-items: center; gap: .6rem; }
.carteirinha header b { display: block; font: 900 1.25rem/1 var(--f-titulo); letter-spacing: .04em; }
.carteirinha header small { display: block; font-size: .6rem; letter-spacing: .14em; text-transform: uppercase; opacity: .85; }
.carteirinha__selo { width: 36px; height: 36px; flex: none; background: #fff; border-radius: 50%; padding: 2px; }
.carteirinha__num { margin-left: auto; font: 600 .78rem/1 var(--f-mono); background: rgba(255,255,255,.16); padding: .3rem .5rem; border-radius: 6px; }
.carteirinha__corpo { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: .8rem; align-items: end; min-height: 0; }
.carteirinha__corpo > div:first-child { display: grid; gap: .05rem; min-width: 0; }
.carteirinha__corpo small { font-size: .58rem; letter-spacing: .12em; text-transform: uppercase; opacity: .78; margin-top: .3rem; }
.carteirinha__corpo strong { font: 800 1.15rem/1.15 var(--f-texto); overflow-wrap: anywhere; }
.carteirinha__corpo span { font-size: .85rem; }
.carteirinha__qr { display: grid; justify-items: center; gap: .3rem; background: #fff; color: #111; border-radius: 10px; padding: .4rem; }
.carteirinha__qr svg { width: 104px; height: 104px; display: block; }
.carteirinha__qr .mono { font-size: .72rem; letter-spacing: .08em; }
.carteirinha footer { display: flex; align-items: center; gap: .5rem; font-size: .68rem; opacity: .92; }
@media (max-width: 420px) { .carteirinha { aspect-ratio: auto; } .carteirinha__qr svg { width: 88px; height: 88px; } }
@media print {
  body.imprimindo-carteirinha * { visibility: hidden !important; }
  body.imprimindo-carteirinha .carteirinha, body.imprimindo-carteirinha .carteirinha * { visibility: visible !important; }
  body.imprimindo-carteirinha .carteirinha { position: fixed; left: 10mm; top: 10mm; width: 86mm; box-shadow: none; -webkit-print-color-adjust: exact; print-color-adjust: exact; }
}

.conferido { border-width: 2px; }
.conferido b { font-size: 1.05rem; }
.conferido--ok { border-color: var(--ok); }
.conferido--ok b { color: var(--ok); }
.conferido--nao { border-color: var(--erro); }
.conferido--nao b { color: var(--erro); }

.chegando-grade { display: grid; grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)); gap: var(--e-4); align-items: start; }
.passos-lista { margin: .5rem 0 .2rem 1.1rem; padding: 0; display: grid; gap: .35rem; font-size: var(--t-sm); }
.links-lista { list-style: none; margin: .5rem 0 0; padding: 0; display: grid; gap: .45rem; font-size: var(--t-sm); }
.links-lista li { overflow-wrap: anywhere; }

.agenda-lista { display: grid; gap: var(--e-3); }
.agenda-item { display: grid; grid-template-columns: 64px minmax(0, 1fr); gap: var(--e-4); align-items: start; }
.agenda-item h4 { margin: .3rem 0 .1rem; font-size: 1.05rem; }
.agenda-dia { display: grid; justify-items: center; background: var(--sol-claro); color: var(--tinta); border-radius: var(--raio); padding: .4rem 0; }
.agenda-dia b { font: 900 1.7rem/1 var(--f-titulo); }
.agenda-dia span { font-size: .7rem; text-transform: uppercase; letter-spacing: .1em; }

.direitos-lista { display: grid; grid-template-columns: repeat(auto-fill, minmax(320px, 1fr)); gap: var(--e-4); align-items: start; }
.direitos-lista h3 { font-size: 1.3rem; text-transform: none; margin-bottom: .4rem; }
.direitos-lista p { font-size: var(--t-sm); }

.casos-lista { display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: var(--e-4); align-items: start; }
.caso { padding: 0; overflow: hidden; display: grid; }
.caso__foto { width: 100%; aspect-ratio: 4 / 3; object-fit: cover; display: block; background: var(--papel-2); }
.caso__corpo { padding: var(--e-4); display: grid; gap: .35rem; min-width: 0; }
.caso__corpo h4 { font-size: 1.05rem; }
.caso__corpo p { font-size: var(--t-sm); overflow-wrap: anywhere; }
