/* Área de Cliente ZEN Home — os mesmos tokens do tema zenhome (main.css :root, contrastes verificados a 09/09/2026). */
@font-face{font-family:'Manrope';font-style:normal;font-weight:400 700;font-display:swap;src:url(fonts/Manrope-400-latin.woff2) format('woff2')}
:root{
	--bg:#FFFCFA;--creme:#FDEFE9;--bg2:#F7F0EB;--linha:#F3E4DD;--linha-forte:#9C8E86;--txt:#3F3A36;--txt2:#6B615B;--txt3:#6E635C;
	--coral:#E8836A;--coral-hover:#E0745A;--coral-txt:#A64A33;--coral-txt-hover:#8C3B27;--btn-txt:#2B221E;
	--verde:#2F7D5B;
	--r:14px;--sombra-s:0 1px 2px rgba(60,30,20,.05),0 8px 24px rgba(60,30,20,.08);--foco:0 0 0 3px #FFFCFA,0 0 0 5px #B8563F;
	--gutter:clamp(16px,4vw,48px)
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--txt);font:16px/1.55 'Manrope','Segoe UI',system-ui,sans-serif;min-height:100vh;display:flex;flex-direction:column;text-wrap:pretty}
img{max-width:100%;height:auto;display:block}
a{color:var(--coral-txt);text-decoration:none}a:hover{color:var(--coral-txt-hover)}
h1,h2{margin:0;font-weight:700;line-height:1.12;letter-spacing:-.02em;text-wrap:balance}
h1{font-size:clamp(1.75rem,2.6vw,2.375rem)}h2{font-size:1.25rem}
:focus-visible{outline:none;box-shadow:var(--foco);border-radius:6px}
.ac-wrap{width:100%;max-width:1120px;margin:0 auto;padding:0 var(--gutter)}
.ac-kicker{margin:0 0 .35rem;font-size:.8125rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--coral-txt)}
.ac-ic{flex:none;vertical-align:-4px}

/* botões */
.ac-btn{display:inline-flex;align-items:center;gap:.5rem;min-height:46px;padding:0 1.25rem;border:0;border-radius:999px;background:var(--coral);color:var(--btn-txt);font:inherit;font-weight:700;cursor:pointer}
.ac-btn:hover{background:var(--coral-hover)}
.ac-btn-s{min-height:38px;padding:0 .9rem;background:transparent;border:1px solid var(--linha-forte);color:var(--txt)}
.ac-btn-s:hover{background:var(--creme)}

/* landing page + login */
.ac-login{flex:1;display:flex;align-items:center;justify-content:center;padding:clamp(24px,6vw,72px) var(--gutter);background:linear-gradient(180deg,var(--creme),var(--bg) 60%)}
.ac-login-card{width:100%;max-width:440px;background:#fff;border:1px solid var(--linha);border-radius:20px;box-shadow:var(--sombra-s);padding:clamp(24px,5vw,40px)}
.ac-login .ac-logo img{width:168px;margin-bottom:1.25rem}
.ac-login h1{font-size:1.625rem;margin-bottom:.5rem}
.ac-lead{margin:0 0 1.25rem;color:var(--txt2)}
.ac-form{display:grid;gap:.4rem}
.ac-form label{font-size:.875rem;font-weight:600;color:var(--txt2);margin-top:.5rem}
.ac-form input{width:100%;min-height:48px;padding:0 .9rem;border:1px solid var(--linha-forte);border-radius:12px;font:inherit;color:var(--txt);background:#fff}
.ac-form input:focus{border-color:var(--coral-txt);box-shadow:var(--foco);outline:0}
.ac-form .ac-btn{margin-top:1rem;justify-content:center}
.ac-erro{margin:0 0 .75rem;padding:.75rem .9rem;border-radius:12px;background:#FBE9E4;color:#7A2E1E;font-size:.9375rem}
.ac-ajuda{margin:1.25rem 0 0;font-size:.875rem;color:var(--txt2)}
.ac-ok{margin:0 0 1rem;padding:.75rem .9rem;border-radius:12px;background:#E6F4EC;color:#1F5A40;font-size:.9375rem}
.ac-voltar{display:inline-block;margin-top:1.25rem;font-weight:600}
.ac-pill-eq{background:var(--bg2);color:var(--txt2);font-size:.75rem;padding:.15rem .55rem;margin-right:.25rem}

/* cabeçalho da área */
.ac-header{background:#fff;border-bottom:1px solid var(--linha)}
.ac-header-in{display:flex;align-items:center;gap:1rem;min-height:72px}
.ac-header .ac-logo img{width:110px}
.ac-header-t{font-weight:600;color:var(--txt2);padding-left:1rem;border-left:1px solid var(--linha)}
.ac-sair{margin:0 0 0 auto;display:flex;align-items:center;gap:.75rem}
.ac-quem{font-weight:600}

/* imóvel */
.ac-main{padding:clamp(20px,4vw,40px) var(--gutter) 24px;flex:1}
.ac-hero{display:grid;gap:0;align-items:stretch;background:#fff;border:1px solid var(--linha);border-radius:20px;box-shadow:var(--sombra-s);overflow:hidden}
/* a foto aparece INTEIRA, na proporção dela; nunca cortada (Marco 27/10/2026) */
.ac-hero-foto img{display:block;width:100%;height:auto}
.ac-hero-txt{padding:clamp(20px,4vw,40px)}
.ac-morada{margin:.5rem 0 0;color:var(--txt2)}
.ac-factos{margin:.25rem 0 0;color:var(--txt3);font-size:.9375rem}
/* imóvel à venda: a descrição do anúncio, o preço e o botão para o anúncio */
.ac-desc{margin:.5rem 0 0;color:var(--txt2)}
.ac-preco{margin:.9rem 0 0;font-size:1.5rem;font-weight:700;color:var(--txt)}
.ac-anuncio{margin:1rem 0 0;display:flex;flex-wrap:wrap;gap:.6rem}
/* ficha à venda, só a equipa (27/10/2026): chaves, factos confirmados e propostas da propostas_lib */
.ac-chaves{display:flex;gap:.5rem;align-items:flex-start;margin:0 0 .9rem;padding:.7rem .85rem;border-radius:12px;background:var(--bg2)}
.ac-factos-lista{margin:0;padding-left:1.15rem}
.ac-factos-lista li{margin:.3rem 0}
.ac-tag{display:inline-block;margin-left:.3rem;padding:.05rem .45rem;border-radius:999px;background:var(--creme);color:var(--coral-txt);font-size:.75rem;font-weight:700;white-space:nowrap}
.ac-tag-ok{background:#E6F4EC;color:#1F5A40}
.ac-inativa td{color:var(--txt3);opacity:.55} /* proposta que já não está ativa: tem de se ver à primeira */
.ac-props-eq .ac-doc-m{display:block}
/* numa grelha, cada coluna cresce até à largura do conteúdo (min-width:auto) — a tabela das propostas empurrava a
   página 419 px para fora no telemóvel. Com min-width:0 a tabela desliza dentro do cartão (.ac-tabela-wrap). */
.ac-grelha > .ac-col,.ac-col > .ac-card{min-width:0}
.ac-estado{margin:.9rem 0 0}
.ac-pill{display:inline-block;padding:.3rem .8rem;border-radius:999px;background:var(--creme);color:var(--coral-txt);font-weight:600;font-size:.875rem}
.ac-prox{margin-top:1.25rem;padding:1rem 1.1rem;border-radius:14px;background:var(--bg2);border-left:4px solid var(--coral)}
.ac-prox p{margin:0}
.ac-prox-k{font-size:.8125rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--coral-txt);margin-bottom:.25rem!important}
@media(min-width:840px){
	.ac-hero{grid-template-columns:minmax(280px,40%) 1fr}
	.ac-hero.ac-hero-so-txt{grid-template-columns:1fr} /* sem fotografia (imóvel a entrar): o texto ocupa a largura toda */
	.ac-hero-foto{align-self:center}
}

/* grelha de cartões */
.ac-grelha{display:grid;gap:1.25rem;margin-top:1.25rem;align-items:start}
.ac-col{display:grid;gap:1.25rem}
@media(min-width:900px){.ac-grelha{grid-template-columns:1fr 1fr}.ac-grelha.ac-grelha-1{grid-template-columns:1fr}} /* -1: à venda, sem etapas */
.ac-card{background:#fff;border:1px solid var(--linha);border-radius:20px;box-shadow:var(--sombra-s);padding:clamp(18px,3vw,28px)}
.ac-card h2{margin-bottom:.75rem}
.ac-main > .ac-card + .ac-card{margin-top:1.25rem} /* lista da equipa: clientes e «A entrar no mercado» */
.ac-sub{margin:0 0 1rem;color:var(--txt2)}
.ac-vazio{margin:0;padding:1rem;border-radius:12px;background:var(--bg2);color:var(--txt2)}
.ac-nota{margin:1rem 0 0;font-size:.875rem;color:var(--txt3)}

/* etapas */
.ac-timeline{list-style:none;margin:0;padding:0}
.ac-et{position:relative;display:flex;gap:.9rem;padding:0 0 1.1rem}
.ac-et::before{content:"";position:absolute;left:13px;top:30px;bottom:0;width:2px;background:var(--linha)}
.ac-et:last-child::before{display:none}
.ac-et-dot{flex:none;width:28px;height:28px;border-radius:50%;border:2px solid var(--linha-forte);background:#fff;display:grid;place-items:center;color:#fff}
.ac-et-feito .ac-et-dot{background:var(--verde);border-color:var(--verde)}
.ac-et-feito .ac-et-dot .ac-ic{width:16px;height:16px}
.ac-et-em_curso .ac-et-dot{border-color:var(--coral);box-shadow:0 0 0 4px var(--creme)}
.ac-et-em_curso .ac-et-dot::after{content:"";width:10px;height:10px;border-radius:50%;background:var(--coral)}
.ac-et-a_seguir{color:var(--txt2)}
.ac-et-b{min-width:0}
.ac-et-t{margin:.15rem 0 0;font-weight:700}
.ac-et-r{font-weight:500;font-size:.875rem;color:var(--txt3);white-space:nowrap}
.ac-et-feito .ac-et-r{color:var(--verde)}
.ac-et-em_curso .ac-et-r{color:var(--coral-txt)}
.ac-et-n{margin:.2rem 0 0;font-size:.9375rem;color:var(--txt2)}

/* documentos */
.ac-lista-docs{list-style:none;margin:0;padding:0;display:grid;gap:.5rem}
.ac-doc{display:flex;align-items:center;gap:.8rem;padding:.8rem .9rem;border:1px solid var(--linha);border-radius:14px;color:var(--txt);background:#fff}
.ac-doc:hover{border-color:var(--coral);background:var(--bg);color:var(--txt)}
.ac-doc>.ac-ic{color:var(--coral-txt)}
.ac-doc-b{display:grid;min-width:0;flex:1}
.ac-doc-t{font-weight:600}
.ac-doc-m{font-size:.8125rem;color:var(--txt3)}
.ac-doc-a{display:inline-flex;align-items:center;gap:.25rem;font-weight:600;color:var(--coral-txt);white-space:nowrap}
.ac-doc-destaque{background:var(--bg2)}
/* lista da equipa com a foto de capa de cada imóvel (Marco 27/10/2026); o que não tem foto leva um quadrado do mesmo tamanho */
.ac-lista-fotos .ac-doc{padding:.55rem .9rem .55rem .55rem}
.ac-doc-foto{flex:none;display:block;width:128px;height:96px;border-radius:10px;object-fit:cover;background:var(--bg2)}
.ac-doc-foto-vazia{display:grid;place-items:center;color:var(--txt3)}

/* propostas */
.ac-tabela{width:100%;border-collapse:collapse;font-size:.9375rem}
.ac-tabela th,.ac-tabela td{text-align:left;padding:.6rem .5rem;border-bottom:1px solid var(--linha);vertical-align:top}
.ac-tabela th{font-size:.8125rem;text-transform:uppercase;letter-spacing:.05em;color:var(--txt3)}
.ac-num{font-variant-numeric:tabular-nums;white-space:nowrap}
/* ordenar e filtrar as propostas da equipa (Marco 27/10/2026): links, a página não tem JavaScript */
.ac-filtros{display:flex;flex-wrap:wrap;gap:.6rem 1.5rem;margin:0 0 1rem}
.ac-filtros-g{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem}
.ac-filtros-r{margin-right:.2rem;font-size:.75rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--txt3)}
.ac-filtro{display:inline-flex;align-items:center;min-height:36px;padding:.3rem .85rem;border:1px solid var(--linha);border-radius:999px;background:#fff;color:var(--txt2);font-size:.875rem;font-weight:600;text-decoration:none}
.ac-filtro:hover{border-color:var(--coral);color:var(--txt)}
.ac-filtro-on{background:var(--creme);border-color:var(--coral);color:var(--coral-txt)}

/* equipa */
.ac-lista-ctos{list-style:none;margin:0;padding:0;display:grid;gap:.75rem}
.ac-cto{padding:.9rem 1rem;border-radius:14px;background:var(--bg2)}
.ac-cto p{margin:0}
.ac-cto-n{font-weight:700}
.ac-cto-c{font-size:.875rem;color:var(--txt2)}
.ac-cto-l{display:flex;flex-wrap:wrap;gap:.4rem 1.1rem;margin-top:.5rem!important;font-size:.9375rem}
.ac-cto-l a{display:inline-flex;align-items:center;gap:.35rem;min-height:36px}
.ac-atualizado{margin:1.5rem 0 0;font-size:.8125rem;color:var(--txt3);text-align:right}

/* investidor (instalação REB): resumo em tiles e linhas de total nas tabelas */
.ac-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:.75rem;margin-top:1.25rem}
.ac-kpi{padding:.9rem 1rem;border-radius:14px;background:var(--bg2)}
.ac-kpi p{margin:0}
.ac-kpi-r{font-size:.75rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--txt3)}
/* um valor nunca se parte ao meio (a 390 px saía «233.293,9 / 0 €», 27/10/2026): em telemóvel cada tile é uma linha */
.ac-kpi-v{margin-top:.2rem!important;font-size:1.35rem;font-weight:700;line-height:1.15;font-variant-numeric:tabular-nums;color:var(--txt);white-space:nowrap}
.ac-tabela .ac-total td{font-weight:700;border-top:2px solid var(--linha-forte);border-bottom:0}
.ac-tabela td.ac-num{text-align:right}
.ac-tabela th.ac-num{text-align:right}
.ac-nw{white-space:nowrap}
.ac-tabela-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch} /* a 320 px a tabela desliza dentro do cartão, não parte a página */
@media(max-width:600px){
	.ac-kpis{grid-template-columns:1fr;gap:.5rem}
	.ac-kpi{display:flex;justify-content:space-between;align-items:baseline;gap:1rem;padding:.7rem .9rem}
	.ac-kpi-v{font-size:1.15rem;margin-top:0!important}
	.ac-tabela-wrap .ac-tabela{font-size:.875rem}
	.ac-tabela-wrap .ac-tabela th,.ac-tabela-wrap .ac-tabela td{padding:.5rem .35rem}
}

/* rodapé */
.ac-footer{margin-top:auto;background:var(--creme);border-top:1px solid var(--linha);padding:1.25rem 0;font-size:.8125rem;color:var(--txt2)}
.ac-footer p{margin:0}
.ac-footer-nota{margin-top:.35rem!important;color:var(--txt3)}

@media(max-width:600px){
	.ac-header-t,.ac-quem{display:none}
	.ac-et-r{white-space:normal;display:block}
	.ac-doc-foto{width:88px;height:66px}
	.ac-lista-fotos .ac-doc-a-t{display:none} /* com a foto ao lado, o nome precisa do espaço; a linha toda é o link */
	.ac-filtros{gap:.75rem}
	.ac-filtros-r{flex-basis:100%} /* «Ordenar» / «Mostrar» numa linha; os botões juntos por baixo */
	.ac-filtros-g{gap:.35rem}
	.ac-filtro{padding:.3rem .6rem;font-size:.8125rem}
}
