/* Painel Luximob — mesma identidade do site (base.css): mármore/grafite, ouro, Bodoni com itálico dourado.
   Topo escuro sempre (regra do site: nenhuma página com topo branco de saída), menu lateral que vira abas
   roláveis no celular, cartões com filete dourado no alto (como a caixa de visita do imóvel). */
.pn{min-height:100vh;min-height:100dvh}
.pn-topo{position:sticky;top:0;z-index:40;background:#0C0F0E;color:#F2EFE6;padding-top:env(safe-area-inset-top,0px)}
.pn-topo::after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:var(--filete)}
.pn-topo__in{display:flex;align-items:center;justify-content:space-between;gap:16px;height:68px;padding:0 var(--gut-r) 0 var(--gut)}
.pn-topo .marca svg{color:#E9CD86}
.pn-topo .marca__nome i{background:linear-gradient(100deg,#E9CD86,#FFF0C4 50%,#E9CD86);-webkit-background-clip:text;background-clip:text}
.pn-topo__acoes{display:flex;align-items:center;gap:6px;min-width:0}
.pn-ico{width:42px;height:42px;border-radius:999px;border:0;background:transparent;color:inherit;display:grid;place-items:center;cursor:pointer}
.pn-ico:hover{background:rgba(255,255,255,.1)}
.pn-ico svg{width:20px;height:20px}
.pn-ico .sol{display:none}.is-dark .pn-ico .sol{display:block}.is-dark .pn-ico .lua{display:none}
.pn-quem{position:relative}
.pn-quem__bt{display:flex;align-items:center;gap:10px;height:42px;padding:0 14px 0 4px;border-radius:999px;border:1px solid rgba(233,205,134,.35);background:transparent;color:inherit;cursor:pointer;max-width:240px}
.pn-quem__bt img,.pn-quem__ini{width:32px;height:32px;border-radius:999px;flex:none;object-fit:cover}
.pn-quem__ini{display:grid;place-items:center;background:var(--ouro);color:var(--accent-ink);font-weight:700}
.pn-quem__bt span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:500}
.pn-quem__menu{position:absolute;right:0;top:calc(100% + 10px);min-width:240px;background:var(--surface);color:var(--ink);border-radius:var(--r);box-shadow:0 0 0 1px var(--line),0 20px 50px -20px rgba(0,0,0,.45);padding:8px;display:grid;z-index:50}
.pn-quem__menu a,.pn-quem__menu button{display:block;text-align:left;padding:11px 12px;border-radius:10px;border:0;background:none;cursor:pointer;font-size:15px}
.pn-quem__menu a:hover,.pn-quem__menu button:hover{background:color-mix(in srgb,var(--accent) 10%,transparent)}
.pn-quem__eu{padding:10px 12px 12px;border-bottom:1px solid var(--line);margin-bottom:6px;font-weight:600;font-size:15px}
.pn-quem__eu small{display:block;font-weight:400;color:var(--muted);font-size:13px;overflow-wrap:anywhere}
@media (max-width:560px){.pn-quem__bt span:not(.pn-quem__ini){display:none}.pn-quem__bt{padding:0 4px}}

/* ---------- casca ---------- */
.pn-app{display:grid;grid-template-columns:248px minmax(0,1fr);min-height:calc(100dvh - 68px)}
.pn-app>*{min-width:0}
.pn-menu{position:sticky;top:68px;align-self:start;height:calc(100dvh - 68px);overflow:auto;padding:28px 16px 40px var(--gut);border-right:1px solid var(--line);display:grid;align-content:start;gap:2px}
.pn-menu__grupo{font:500 11.5px/1 var(--f-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--brass);padding:18px 12px 10px}
.pn-menu__grupo:first-child{padding-top:0}
.pn-menu a{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:10px;font-size:15px;font-weight:500;color:var(--muted);position:relative}
.pn-menu a svg{width:18px;height:18px;flex:none}
.pn-menu a:hover{color:var(--ink);background:color-mix(in srgb,var(--ink) 5%,transparent)}
.pn-menu a[aria-current="page"]{color:var(--ink);background:color-mix(in srgb,var(--accent) 12%,transparent)}
.pn-menu a[aria-current="page"]::before{content:"";position:absolute;left:0;top:9px;bottom:9px;width:3px;border-radius:3px;background:var(--ouro)}
.pn-menu .pn-num{margin-left:auto;font:500 12px/1 var(--f-mono);background:var(--ouro);color:var(--accent-ink);border-radius:999px;padding:4px 8px}
.pn-conteudo{padding:clamp(28px,4vw,48px) var(--gut-r) 80px clamp(24px,4vw,56px);outline:none;max-width:1200px}
@media (max-width:900px){
  .pn-app{grid-template-columns:minmax(0,1fr)}
  .pn-menu{position:sticky;top:68px;z-index:30;height:auto;display:flex;gap:4px;overflow-x:auto;overflow-y:hidden;padding:10px var(--gut-r) 10px var(--gut);border-right:0;border-bottom:1px solid var(--line);background:var(--bg);scrollbar-width:none;
    background-image:linear-gradient(90deg,var(--bg),transparent 24px),linear-gradient(270deg,var(--bg),transparent 24px);}
  .pn-menu::-webkit-scrollbar{display:none}
  .pn-menu__grupo{display:none}
  .pn-menu a{flex:none;padding:9px 14px;font-size:14px}
  .pn-menu a svg{display:none}
  .pn-menu a[aria-current="page"]::before{left:12px;right:12px;top:auto;bottom:2px;width:auto;height:2px}
  .pn-conteudo{padding:28px var(--gut-r) 72px var(--gut)}
}

/* ---------- cabeçalho de tela ---------- */
.pn-cab{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;flex-wrap:wrap;margin-bottom:28px}
.pn-cab>div{display:grid;gap:12px;min-width:0}
.pn-cab .h2{font-size:clamp(30px,3.6vw,46px)}
.pn-cab__txt{color:var(--muted);max-width:620px}

/* ---------- cartões ---------- */
.pn-cartao{position:relative;background:var(--surface);border-radius:18px;box-shadow:0 0 0 1px var(--line);padding:clamp(20px,2.4vw,28px);min-width:0}
.pn-cartao::before{content:"";position:absolute;left:18px;right:18px;top:0;height:2px;background:var(--filete);border-radius:2px}
.pn-cartao>h3{font:500 22px/1.2 var(--f-display);margin-bottom:14px}
.pn-cartao>h3 em{font-style:italic;color:var(--accent)}
.pn-grade{display:grid;gap:16px}
.pn-grade--4{grid-template-columns:repeat(4,minmax(0,1fr))}
.pn-grade--3{grid-template-columns:repeat(3,minmax(0,1fr))}
.pn-grade--2{grid-template-columns:repeat(2,minmax(0,1fr))}
@media (max-width:1100px){.pn-grade--4{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:760px){.pn-grade--3,.pn-grade--2{grid-template-columns:minmax(0,1fr)}}
@media (max-width:420px){.pn-grade--4{grid-template-columns:minmax(0,1fr)}}
.pn-kpi{display:grid;gap:8px}
.pn-kpi__rot{font:500 12px/1.2 var(--f-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.pn-kpi__num{font:500 clamp(30px,3vw,40px)/1 var(--f-display);font-variant-numeric:lining-nums}
.pn-kpi__var{font-size:13px;color:var(--muted)}
.pn-kpi__var.sobe{color:#2F7A55}.pn-kpi__var.desce{color:#B0453A}
.is-dark .pn-kpi__var.sobe{color:#7FD1A6}.is-dark .pn-kpi__var.desce{color:#F09A8E}
.pn-sec{margin-top:28px}

/* ---------- faixas de estado ---------- */
.pn-faixa{display:flex;gap:14px;align-items:flex-start;padding:16px 18px;border-radius:14px;margin-bottom:22px;box-shadow:inset 0 0 0 1px var(--line);background:var(--surface)}
.pn-faixa svg{width:22px;height:22px;flex:none;margin-top:1px}
.pn-faixa strong{display:block;margin-bottom:2px}
.pn-faixa p{color:var(--muted);font-size:15px}
.pn-faixa--ouro{box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 55%,transparent);background:color-mix(in srgb,var(--accent) 7%,var(--surface))}
.pn-faixa--ouro svg{color:var(--accent)}
.pn-faixa--ok svg{color:#2F7A55}.is-dark .pn-faixa--ok svg{color:#7FD1A6}
.pn-faixa--erro{box-shadow:inset 0 0 0 1px color-mix(in srgb,#B0453A 55%,transparent)}
.pn-faixa--erro svg{color:#B0453A}

.pn-passos{display:grid;gap:2px;counter-reset:p}
.pn-passo{display:flex;gap:14px;align-items:center;padding:12px 0;border-bottom:1px solid var(--line)}
.pn-passo:last-child{border-bottom:0}
.pn-passo__n{width:30px;height:30px;border-radius:999px;display:grid;place-items:center;flex:none;font:500 13px/1 var(--f-mono);box-shadow:inset 0 0 0 1px var(--line);color:var(--muted)}
.pn-passo.feito .pn-passo__n{background:var(--ouro);color:var(--accent-ink);box-shadow:none}
.pn-passo p{font-size:15px}
.pn-passo small{display:block;color:var(--muted);font-size:13.5px}

/* ---------- formulários ---------- */
.pn-form{display:grid;gap:18px}
.pn-campos{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 18px}
.pn-campos .inteiro{grid-column:1/-1}
@media (max-width:640px){.pn-campos{grid-template-columns:minmax(0,1fr)}}
.pn-campo{display:grid;gap:7px;min-width:0}
.pn-campo>span{font-size:14px;font-weight:600}
.pn-campo>small{color:var(--muted);font-size:13px}
.pn-campo input,.pn-campo select,.pn-campo textarea{width:100%;min-height:48px;padding:12px 14px;border-radius:12px;border:1px solid var(--line);background:var(--bg);font-size:16px;color:var(--ink)}
.pn-campo textarea{min-height:110px;resize:vertical;line-height:1.5}
.pn-campo input:focus,.pn-campo select:focus,.pn-campo textarea:focus{outline:none;border-color:var(--brass);box-shadow:0 0 0 3px color-mix(in srgb,var(--brass) 22%,transparent)}
.pn-campo.pn-invalido input,.pn-campo.pn-invalido select,.pn-campo.pn-invalido textarea{border-color:#B0453A}
.pn-campo>.pn-campo__erro,.pn-campo__erro{color:#B0453A;font-size:13.5px;font-weight:500}
.is-dark .pn-campo__erro{color:#F09A8E}
.pn-opcoes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.pn-opcao{position:relative;display:grid;gap:4px;padding:16px 18px;border-radius:14px;box-shadow:inset 0 0 0 1px var(--line);cursor:pointer;background:var(--bg)}
.pn-opcao input{position:absolute;opacity:0;pointer-events:none}
.pn-opcao strong{font-size:16px}
.pn-opcao small{color:var(--muted);font-size:13.5px}
.pn-opcao:has(input:checked){box-shadow:inset 0 0 0 2px var(--brass);background:color-mix(in srgb,var(--accent) 7%,var(--bg))}
.pn-opcao:has(input:focus-visible){outline:2px solid var(--brass);outline-offset:3px}
@media (max-width:480px){.pn-opcoes{grid-template-columns:minmax(0,1fr)}}
.pn-aceite{display:flex;gap:10px;align-items:flex-start;font-size:14.5px;color:var(--muted)}
.pn-aceite input{width:20px;height:20px;margin-top:2px;accent-color:#B88B3E;flex:none}
.pn-aceite a{color:var(--accent);text-decoration:underline}
.pn-acoes{display:flex;gap:12px;flex-wrap:wrap;align-items:center}
.pn-msg{font-size:14.5px;color:var(--muted);min-height:1.4em}
.pn-msg.pn-msg--erro{color:#B0453A}.is-dark .pn-msg.pn-msg--erro{color:#F09A8E}

/* ---------- tabela / lista ---------- */
.pn-filtros{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin-bottom:18px}
.pn-pilula{display:inline-flex;align-items:center;gap:8px;min-height:38px;padding:0 14px;border-radius:999px;border:0;background:transparent;box-shadow:inset 0 0 0 1px var(--line);cursor:pointer;font-size:14px;font-weight:500;color:var(--muted)}
.pn-pilula b{font:500 12px/1 var(--f-mono)}
.pn-pilula[aria-pressed="true"]{background:var(--ouro);color:var(--accent-ink);box-shadow:none}
.pn-busca{flex:1 1 220px;min-width:0;max-width:340px;min-height:40px;padding:0 14px;border-radius:999px;border:1px solid var(--line);background:var(--surface);font-size:15px}
.pn-lista{display:grid;gap:12px}
.pn-item{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px 18px;align-items:center;padding:18px 20px;border-radius:16px;background:var(--surface);box-shadow:0 0 0 1px var(--line)}
.pn-item__tit{font-weight:600;font-size:16.5px;display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.pn-item__meta{color:var(--muted);font-size:14px;margin-top:4px;overflow-wrap:anywhere}
.pn-item__acoes{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
@media (max-width:700px){.pn-item{grid-template-columns:minmax(0,1fr)}.pn-item__acoes{justify-content:flex-start}}
.pn-bt{display:inline-flex;align-items:center;gap:8px;min-height:38px;padding:0 16px;border-radius:999px;border:0;cursor:pointer;font-size:14px;font-weight:600;background:transparent;box-shadow:inset 0 0 0 1px var(--line);color:var(--ink)}
.pn-bt:hover{box-shadow:inset 0 0 0 1px var(--ink)}
.pn-bt--ouro{background:var(--ouro);color:var(--accent-ink);box-shadow:none}
.pn-bt--perigo{color:#B0453A}.is-dark .pn-bt--perigo{color:#F09A8E}
.pn-bt[disabled]{opacity:.5;cursor:default}
.pn-selo{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:999px;font:500 11.5px/1.2 var(--f-mono);letter-spacing:.06em;text-transform:uppercase;box-shadow:inset 0 0 0 1px var(--line);color:var(--muted)}
.pn-selo--ouro{background:var(--ouro);color:var(--accent-ink);box-shadow:none}
.pn-selo--ok{color:#2F7A55;box-shadow:inset 0 0 0 1px color-mix(in srgb,#2F7A55 45%,transparent)}
.pn-selo--erro{color:#B0453A;box-shadow:inset 0 0 0 1px color-mix(in srgb,#B0453A 45%,transparent)}
.is-dark .pn-selo--ok{color:#7FD1A6}.is-dark .pn-selo--erro{color:#F09A8E}
.pn-vazio{padding:40px 24px;text-align:center;color:var(--muted);border-radius:16px;box-shadow:inset 0 0 0 1px var(--line)}
.pn-vazio strong{display:block;color:var(--ink);font:500 22px/1.2 var(--f-display);margin-bottom:6px}
.pn-linhas{display:grid}
.pn-linha{display:flex;gap:12px;justify-content:space-between;padding:11px 0;border-bottom:1px solid var(--line);font-size:14.5px}
.pn-linha:last-child{border-bottom:0}
.pn-linha span:last-child{color:var(--muted);text-align:right;flex:none}

/* ---------- diálogo ---------- */
.pn-dialogo{border:0;border-radius:18px;padding:0;background:var(--surface);color:var(--ink);width:min(520px,calc(100% - 32px));box-shadow:0 30px 80px -20px rgba(0,0,0,.55)}
.pn-dialogo::backdrop{background:rgba(8,12,12,.55);backdrop-filter:blur(3px)}
.pn-dialogo form{padding:26px;display:grid;gap:16px}
.pn-dialogo h3{font:500 24px/1.2 var(--f-display)}

/* ---------- entrar / carregando ---------- */
.pn-entrar{min-height:calc(100dvh - 68px);display:grid;place-items:center;padding:40px var(--gut-r) 60px var(--gut);
  background:radial-gradient(ellipse at 50% 0%,color-mix(in srgb,var(--accent) 12%,transparent),transparent 60%)}
.pn-entrar__cartao{max-width:520px;display:grid;gap:18px;padding:clamp(28px,5vw,44px)}
.pn-entrar__cartao .h2{font-size:clamp(34px,5vw,48px)}
.pn-entrar__txt{color:var(--muted);font-size:17px}
.pn-entrar__bt{justify-self:start}
.pn-entrar__pe{font-size:13.5px;color:var(--muted)}
.pn-entrar__pe a{color:var(--accent);text-decoration:underline}
.pn-carregando{position:fixed;inset:68px 0 0;display:grid;place-items:center;color:var(--muted);font:500 13px/1 var(--f-mono);letter-spacing:.12em;text-transform:uppercase}
.pn-carregando[hidden]{display:none}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
