/* Trecho Corporativo · portal. Mesma linguagem visual do site público (claro, azul, Manrope + Inter). */
:root{--fundo:#F3F5F9;--papel:#FFFFFF;--tinta:#0B1220;--texto:#1B2535;--suave:#3A4558;--fraco:#5B6577;--linha:#E3E6EC;--linha2:#C9CFDA;
  --azul:#2F5BFF;--azul2:#1B3FCC;--azul-claro:#E9EEFF;--ambar:#8A5A00;--ambar-claro:#FFF1CC;--verde:#17603A;--verde-claro:#DDF3E4;--erro:#B42318;--erro-claro:#FEE4E2}
*{box-sizing:border-box}
body{margin:0;background:var(--fundo);color:var(--texto);font:16px/1.5 Inter,system-ui,sans-serif}
a{color:var(--azul)}a:hover{color:var(--azul2)}
h1,h2,h3{font-family:Manrope,sans-serif;font-weight:800;letter-spacing:-.02em;margin:0;color:var(--tinta)}
h1{font-size:clamp(24px,3.4vw,32px)}h2{font-size:19px}h3{font-size:16px}
.mono{font-variant-numeric:tabular-nums}
.centro{text-align:center;padding:72px 20px;color:var(--fraco)}

/* topo */
.topo{background:var(--papel);border-bottom:1px solid var(--linha);position:sticky;top:0;z-index:5}
.topo>div{max-width:1320px;margin:0 auto;padding:10px 24px;display:flex;flex-wrap:wrap;gap:10px 18px;align-items:center}
.marca{font-family:Manrope,sans-serif;font-weight:800;font-size:20px;letter-spacing:-.02em;color:var(--tinta);text-decoration:none}
.marca span{color:var(--azul)}
.empresa{font-size:15px;color:var(--suave);margin-right:auto;padding-left:14px;border-left:1px solid var(--linha)}
.topo nav{display:flex;flex-wrap:wrap;gap:2px}
.topo nav a{color:var(--suave);text-decoration:none;padding:9px 12px;border-radius:10px;font-size:15px;font-weight:500}
.topo nav a:hover{background:var(--fundo);color:var(--tinta)}
.topo nav a.on{color:var(--tinta);background:var(--azul-claro);font-weight:600}
.topo select{width:auto;min-height:40px}
.topo button{min-height:40px;padding:8px 14px;font-size:14px}

main{max-width:1320px;margin:0 auto;padding:28px 24px 80px;display:flex;flex-direction:column;gap:20px}
.linha{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.entre{justify-content:space-between}
.cartao{background:var(--papel);border:1px solid var(--linha);border-radius:18px;padding:20px;display:flex;flex-direction:column;gap:12px}
.cartao.destaque{border-color:#BFD0FF;box-shadow:0 0 0 4px var(--azul-claro)}
.grade{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px}
.lista{display:flex;flex-direction:column;gap:10px}
.item{display:grid;grid-template-columns:1fr auto;gap:6px 14px;align-items:center;padding:16px 18px;border:1px solid var(--linha);border-radius:14px;background:var(--papel);color:inherit;text-decoration:none}
a.item:hover{border-color:var(--azul);color:inherit;box-shadow:0 6px 18px rgba(11,18,32,.06)}
.item strong{font-family:Manrope,sans-serif;font-size:17px;color:var(--tinta)}
.sub{color:var(--fraco);font-size:14px}

.chip{display:inline-block;font:600 12px Inter,sans-serif;padding:6px 10px;border-radius:6px;background:var(--azul-claro);color:var(--azul2);white-space:nowrap}
.chip.ok{background:var(--verde-claro);color:var(--verde)}.chip.at{background:var(--ambar-claro);color:var(--ambar)}
.chip.fim{background:#EEF0F4;color:var(--fraco)}.chip.ruim{background:var(--erro-claro);color:var(--erro)}

button,.btn{font:600 15px Inter,sans-serif;min-height:44px;padding:10px 18px;border-radius:12px;border:1px solid var(--linha2);background:var(--papel);color:var(--tinta);cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:6px}
button:hover,.btn:hover{border-color:var(--tinta);color:var(--tinta)}
button.pri,.btn.pri{background:var(--azul);border-color:var(--azul);color:#fff}
button.pri:hover,.btn.pri:hover{background:var(--azul2);border-color:var(--azul2);color:#fff}
button.perigo{border-color:#F4B7B0;color:var(--erro)}
button:disabled{opacity:.5;cursor:wait}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #9DB2FF;outline-offset:2px}

form{display:flex;flex-direction:column;gap:14px}
.campos{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px}
label{display:flex;flex-direction:column;gap:6px;font-size:14px;font-weight:600;color:var(--suave)}
label.check{flex-direction:row;align-items:center;gap:10px;min-height:44px;font-weight:500}
input,select,textarea{font:16px Inter,sans-serif;color:var(--tinta);background:var(--papel);border:1px solid var(--linha2);border-radius:10px;padding:11px 12px;min-height:44px;width:100%}
input[type=checkbox]{width:20px;min-height:20px;height:20px;accent-color:var(--azul)}
textarea{min-height:90px;resize:vertical}

.opcao{border:1px solid var(--linha);border-radius:14px;padding:16px;display:flex;flex-direction:column;gap:10px;background:var(--papel)}
.opcao.sel{border:2px solid var(--azul);background:#F4F6FF;padding:15px}
.preco{font:800 24px Manrope,sans-serif;color:var(--tinta)}
.alerta{border:1px solid #F5D98A;background:var(--ambar-claro);color:var(--ambar);border-radius:10px;padding:10px 12px;font-size:14px}

.barra{display:grid;grid-template-columns:minmax(90px,170px) 1fr auto;gap:12px;align-items:center;font-size:15px}
.barra i{display:block;height:12px;border-radius:6px;background:#EEF1F6;overflow:hidden}
.barra i b{display:block;height:100%;background:var(--azul);border-radius:6px}
.kpi b{display:block;font:800 28px Manrope,sans-serif;color:var(--tinta)}
dl{display:grid;grid-template-columns:auto 1fr;gap:6px 16px;margin:0}dt{color:var(--fraco);font-size:14px}dd{margin:0}

#aviso{position:fixed;left:50%;bottom:24px;transform:translateX(-50%);max-width:min(92vw,520px);z-index:9}
#aviso div{background:var(--tinta);color:#fff;border-radius:12px;padding:12px 18px;box-shadow:0 12px 30px rgba(11,18,32,.25)}
#aviso div.erro{background:var(--erro)}
.login{max-width:420px;margin:10vh auto;padding:28px;display:flex;flex-direction:column;gap:18px;background:var(--papel);border:1px solid var(--linha);border-radius:20px;box-shadow:0 30px 60px rgba(11,18,32,.08)}
.login form button{width:100%}

/* escritório: planta baixa */
.esc{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:20px;align-items:start}
.cab{display:flex;flex-direction:column;gap:2px}.cab .sub::first-letter{text-transform:uppercase}
.palco{background:var(--papel);border:1px solid var(--linha);border-radius:22px;padding:20px;display:flex;flex-direction:column;gap:14px;overflow:hidden}
.cena{display:block;width:100%;height:auto;font-family:Inter,sans-serif}
.cena .andar{fill:#FFFFFF;stroke:#D5DCE8;stroke-width:2}
.cena .porta{fill:none;stroke:#C9CFDA;stroke-width:2;stroke-dasharray:5 4}.cena .porta-vao{fill:#FFFFFF}
.cena .leve{font-size:12px;fill:var(--fraco)}
.cena .janela{fill:#BFD6FF}.cena .rotulo-topo{font-size:12px;font-weight:600;fill:var(--fraco)}
.cena .sala-fundo{fill:#F3F6FB;stroke:#D5DCE8}.cena .sala-fundo.sem{fill:#FAFBFD;stroke-dasharray:6 4}
.cena .sala-nome{font:800 14px Manrope,sans-serif;fill:var(--tinta)}
.cena .selo-ap{fill:#FDE8E8}.cena .selo-ap-txt{font-size:11px;font-weight:700;fill:#B42318}
.cena .mesa{fill:#FFFFFF;stroke:#D5DCE8}.cena .mesa.eu{stroke:var(--azul);stroke-width:2}
.cena .ini{fill:#EEF1F6}.cena .ini.eu{fill:var(--azul)}
.cena .ini-txt{font-size:11px;font-weight:700;fill:var(--tinta)}.cena .ini-txt.eu{fill:#FFFFFF}
.cena .mesa-txt{font-size:12px;font-weight:600;fill:var(--texto)}
.cena .sua{fill:#0B1220}.cena .sua-tit{font:800 16px Manrope,sans-serif;fill:#FFFFFF}.cena .sua-sub{font-size:12px;fill:#A9B4C6}
.cena .bloco{fill:#131C2E}.cena .bloco-n{font:800 22px Manrope,sans-serif;fill:#FFFFFF}.cena .bloco-n.peq{font-size:15px}.cena .bloco-r{font-size:12px;fill:#A9B4C6}
.cena .balcao{fill:#E9EEFF;stroke:#BFD0FF}.cena .toldo{fill:var(--azul)}
.cena .toldo-txt{font-size:12px;font-weight:700;fill:#FFFFFF;letter-spacing:1px}
.cena .balcao-txt{font-size:13px;fill:var(--texto)}.cena .balcao-st{font-size:12px;font-weight:600;fill:var(--azul2)}.cena .balcao-vazio{font-size:13px;fill:var(--fraco)}
.cena a.alvo{cursor:pointer}.cena a.alvo:focus{outline:none}
.cena a.alvo:hover .mesa,.cena a.alvo:focus-visible .mesa{stroke:var(--azul);stroke-width:2}
.cena a.alvo:hover .bloco,.cena a.alvo:focus-visible .bloco{fill:#1E2A44}
.cena a.alvo:hover .balcao,.cena a.alvo:focus-visible .balcao{stroke:var(--azul);stroke-width:2}
.cena a.alvo:hover .janela,.cena a.alvo:focus-visible .janela{fill:#8FB4FF}
.cena a.alvo:focus-visible{outline:3px solid #9DB2FF}
.legenda{display:flex;flex-wrap:wrap;gap:8px 18px;font-size:13px;color:var(--suave)}
.leg-item{display:inline-flex;align-items:center;gap:6px}.bolinha{width:10px;height:10px;border-radius:50%;display:inline-block}
.lado{background:var(--papel);border:1px solid var(--linha);border-radius:22px;padding:22px;display:flex;flex-direction:column;gap:12px}
.decisao{border:1px solid var(--linha);border-radius:14px;padding:14px;display:flex;flex-direction:column;gap:10px;background:var(--papel);color:inherit;text-decoration:none}
a.decisao:hover{border-color:var(--azul);color:inherit}
.decisao strong{font-size:15px;color:var(--tinta)}
.topo-dec{align-items:flex-start;flex-wrap:nowrap}
.preco-dec{font:800 17px Manrope,sans-serif;color:var(--tinta);white-space:nowrap}
.motivo{font-size:13px;color:#8A3B00;background:#FFF4EB;border-radius:8px;padding:7px 10px}
.decisao .linha button.pri{flex:1}
.mais{color:var(--azul);font-weight:600;font-size:14px}
.divisor{height:1px;background:var(--linha);margin:4px 0}
.rot-sec{font-size:12px;font-weight:600;letter-spacing:.06em;color:var(--fraco)}
.acont{display:flex;justify-content:space-between;gap:10px;font-size:14px;color:var(--texto);text-decoration:none;padding:4px 0}
a.acont:hover{color:var(--azul)}
.modo{display:inline-flex;background:#E6EAF1;border-radius:12px;padding:4px;gap:2px}
.modo button{min-height:38px;padding:7px 14px;border:0;border-radius:9px;background:transparent;color:var(--suave);font-size:14px}
.modo button.on{background:var(--papel);color:var(--tinta);box-shadow:0 1px 3px rgba(11,18,32,.14)}

@media (max-width:1000px){.esc{grid-template-columns:1fr}.lado{order:-1}}
@media (max-width:560px){.item{grid-template-columns:1fr}.barra{grid-template-columns:1fr auto}.barra i{grid-column:1/-1;order:3}
  .empresa{display:none}main{padding:20px 14px 64px}.palco{border-radius:16px;padding:12px;overflow-x:auto}.cena{width:720px;max-width:none}}
