/* Área do Morador, Galeria e inscrição — páginas do blog */
.artigo .texto:has(.tdv-am-visitante,.tdv-am,.tdv-am-login,.tdv-gal-albuns,.tdv-gal-fotos,.tdv-gal-cab){max-width:1080px}

/* Login da área do morador */
.tdv-am-login{max-width:420px;margin:10px auto 0;text-align:center;background:#fff;border:1px solid #e4e3dc;border-radius:12px;padding:34px 30px;box-shadow:0 14px 40px rgba(0,0,0,.07)}
.tdv-am-icone{width:56px;height:56px;border-radius:50%;background:#eaf6ef;color:#239a55;display:grid;place-items:center;margin:0 auto 14px}
.tdv-am-icone svg{width:26px;height:26px}
.tdv-am-login h2{font-size:1.35rem;margin:0 0 8px!important}
.tdv-am-login p{font-size:.95rem;color:#5d6661;line-height:1.6;margin:0 0 14px}
.tdv-am-login form{text-align:left;margin-top:8px}
.tdv-am-login form p{margin:0 0 14px}
.tdv-am-login label{display:block;font-size:.85rem;font-weight:500;color:#1d2421;margin-bottom:4px}
.tdv-am-login input[type=text],.tdv-am-login input[type=password]{width:100%;padding:11px 13px;border:1px solid #d6d5cc;border-radius:8px;font:inherit;font-size:1rem}
.tdv-am-login input:focus{outline:2px solid rgba(35,154,85,.35);border-color:#239a55}
.tdv-am-login .login-remember label{display:flex;gap:8px;align-items:center;font-weight:400;color:#5d6661}
.tdv-am-login input[type=submit]{width:100%;background:#239a55;color:#fff;border:0;border-radius:8px;padding:13px;font:inherit;font-weight:600;cursor:pointer}
.tdv-am-login input[type=submit]:hover{background:#1b7f45}
.tdv-am-login .tdv-am-links{font-size:.85rem;margin:14px 0 0}
.tdv-am-login .tdv-am-links a{color:#239a55;text-decoration:underline}
.tdv-am-erro{background:#fde8e8;color:#a12626!important;border-radius:8px;padding:9px 12px}

/* Documentos */
.tdv-am-topo{display:flex;justify-content:space-between;align-items:center;gap:16px;background:#f3f2ec;border-radius:10px;padding:14px 18px;margin-bottom:22px}
.tdv-am-ola{font-weight:600;font-size:1.05rem;display:block}
.tdv-am-topo small{color:#5d6661}
.tdv-am-sair{font-size:.85rem;font-weight:500;border:1px solid #cfcfc6;border-radius:6px;padding:7px 14px;background:#fff;text-decoration:none!important;color:#1d2421!important}
.tdv-am-sair:hover{border-color:#1d2421}
.tdv-am-filtros{margin:0 0 26px!important}
.tdv-am-grupo{margin-bottom:30px}
.tdv-am-grupo h3{font-size:1.1rem!important;margin:0 0 12px!important;color:#1d2421!important}
.tdv-am-lista{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.tdv-am-lista li{display:flex;align-items:center;gap:16px;background:#fff;border:1px solid #e4e3dc;border-radius:10px;padding:14px 16px}
.tdv-am-lista li+li{margin-top:0}
.tdv-am-ext{flex:none;width:46px;height:46px;border-radius:8px;background:#eaf6ef;color:#1b7f45;display:grid;place-items:center;font-size:.72rem;font-weight:700;letter-spacing:.04em}
.tdv-am-info{flex:1;min-width:0;line-height:1.4}
.tdv-am-info strong{display:block;font-size:1rem}
.tdv-am-info small{color:#5d6661;font-size:.82rem}
.tdv-am-info p{margin:4px 0 0;font-size:.88rem;color:#5d6661}
.tdv-am-lista .btn{padding:9px 18px;font-size:.85rem;text-decoration:none!important;color:#fff!important}
.tdv-am-vazio{text-align:center;color:#5d6661;padding:30px 0}

/* Galeria: álbuns */
.tdv-gal-albuns{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.tdv-gal-album{position:relative;display:block;border-radius:10px;overflow:hidden;aspect-ratio:4/3;background:#0e2c21;text-decoration:none!important}
.tdv-gal-album img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.tdv-gal-album:hover img{transform:scale(1.05)}
.tdv-gal-info{position:absolute;left:0;right:0;bottom:0;padding:34px 18px 16px;color:#fff;background:linear-gradient(0deg,rgba(8,20,14,.85),transparent);display:flex;flex-direction:column}
.tdv-gal-info strong{font-size:1.05rem}
.tdv-gal-info small{opacity:.85;font-size:.82rem}

/* Galeria: fotos do álbum */
.tdv-gal-cab{margin-bottom:22px}
.tdv-gal-cab h2{margin:6px 0 4px!important}
.tdv-gal-cab p{color:#5d6661;margin:0}
.tdv-gal-voltar{font-size:.88rem;font-weight:500;color:#239a55!important;text-decoration:none!important}
.tdv-gal-fotos{columns:3;column-gap:14px}
.tdv-gal-foto{display:block;margin:0 0 14px;border-radius:8px;overflow:hidden;break-inside:avoid;cursor:zoom-in;background:#eee}
.tdv-gal-foto img{width:100%;height:auto;transition:transform .4s}
.tdv-gal-foto:hover img{transform:scale(1.03)}

/* Visualizador (lightbox) */
.tdv-lb{position:fixed;inset:0;z-index:99999;background:rgba(6,14,10,.94);display:none;align-items:center;justify-content:center;padding:24px}
.tdv-lb.on{display:flex}
.tdv-lb img{max-width:100%;max-height:calc(100vh - 90px);border-radius:6px;box-shadow:0 20px 60px rgba(0,0,0,.5)}
.tdv-lb-leg{position:absolute;bottom:20px;left:0;right:0;text-align:center;color:rgba(255,255,255,.85);font-size:.9rem;padding:0 60px}
.tdv-lb button{position:absolute;background:rgba(255,255,255,.12);border:0;color:#fff;width:46px;height:46px;border-radius:50%;font-size:26px;cursor:pointer;line-height:1}
.tdv-lb button:hover{background:rgba(255,255,255,.25)}
.tdv-lb-x{top:18px;right:18px}.tdv-lb-p{left:18px;top:50%}.tdv-lb-n{right:18px;top:50%}

/* Inscrição */
.tdv-inscricao{display:grid;gap:12px;max-width:420px}
.tdv-inscricao label{font-size:.88rem;font-weight:500;display:grid;gap:4px}
.tdv-inscricao input{padding:11px 13px;border:1px solid #d6d5cc;border-radius:8px;font:inherit}
.tdv-inscricao button{background:#239a55;color:#fff;border:0;border-radius:8px;padding:13px;font:inherit;font-weight:600;cursor:pointer}
.tdv-ok{background:#e3f4ea;color:#1b7f45;border-radius:8px;padding:10px 14px}

@media (max-width:900px){.tdv-gal-albuns{grid-template-columns:repeat(2,1fr)}.tdv-gal-fotos{columns:2}}
@media (max-width:560px){
  .tdv-gal-albuns{grid-template-columns:1fr}.tdv-gal-fotos{columns:1}
  .tdv-am-lista li{flex-wrap:wrap}.tdv-am-lista .btn{width:100%;justify-content:center}
  .tdv-am-topo{flex-direction:column;align-items:flex-start}
}

/* Visitante: login + prévia dos itens */
.tdv-am-visitante{display:grid;grid-template-columns:minmax(300px,420px) 1fr;gap:40px;align-items:start}
.tdv-am-visitante .tdv-am-login{margin:0;position:sticky;top:96px}
.tdv-am-solicitar{margin-top:20px;padding-top:18px;border-top:1px solid #e4e3dc;display:grid;gap:6px;font-size:.9rem;color:#5d6661}
.tdv-am-solicitar strong{color:#1d2421}
.tdv-am-solicitar .btn{justify-content:center;margin-top:8px;color:#fff!important;text-decoration:none!important}
.tdv-am-previa .eyebrow{color:#1b7f45}
.tdv-am-previa h2{font-size:1.5rem;margin:8px 0 8px!important}
.tdv-am-previa>p{color:#5d6661;margin:0 0 20px}
.tdv-am-exemplo .tdv-am-lista li{opacity:.85;background:#fbfbf8}
.tdv-am-exemplo .tdv-am-ext{background:#eceae1;color:#7a827d}
.tdv-am-cad{flex:none;display:inline-flex;align-items:center;gap:6px;font-size:.8rem;font-weight:600;color:#7a827d;border:1px dashed #cfcfc6;border-radius:6px;padding:7px 12px}
.tdv-am-cad svg{width:15px;height:15px}
@media (max-width:900px){.tdv-am-visitante{grid-template-columns:1fr}.tdv-am-visitante .tdv-am-login{position:static;max-width:520px;margin:0 auto}}
