:root{--cor-primaria: #1e4a72;--cor-primaria-escura: #123350;--cor-primaria-clara: #2f6494;--cor-primaria-suave: #eaf1f8;--cor-acento: #0f9d78;--cor-acento-suave: #e3f6ee;--cor-perigo: #c0392b;--cor-perigo-suave: #fbeae8;--cor-aviso: #9a6b00;--cor-aviso-bg: #fdf1d0;--cor-aviso-borda: #f0d896;--cor-info: #5b3aa8;--cor-info-bg: #efe9fb;--cor-fundo: #f2f4f7;--cor-superficie: #ffffff;--cor-borda: #e3e6ec;--cor-borda-forte: #c9cfd9;--cor-texto: #1c222e;--cor-texto-suave: #5c6577;--cor-texto-fraco: #8993a4;--raio-sm: 6px;--raio-md: 10px;--raio-lg: 16px;--sombra-sm: 0 1px 2px rgba(20, 30, 50, .06), 0 1px 1px rgba(20, 30, 50, .04);--sombra-md: 0 4px 16px rgba(20, 30, 50, .08), 0 1px 3px rgba(20, 30, 50, .06);--sombra-lg: 0 12px 32px rgba(20, 30, 50, .14);--espaco-1: .25rem;--espaco-2: .5rem;--espaco-3: .75rem;--espaco-4: 1rem;--espaco-5: 1.5rem;--espaco-6: 2rem;--espaco-7: 3rem;--fonte: "Inter", system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;color-scheme:light}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;font-family:var(--fonte);background:var(--cor-fundo);color:var(--cor-texto);font-size:15px;line-height:1.5;-webkit-font-smoothing:antialiased}h1,h2,h3{margin:0;font-weight:700;letter-spacing:-.01em;color:var(--cor-texto)}h1{font-size:1.5rem;margin-bottom:var(--espaco-5)}h2{font-size:1.05rem;color:var(--cor-primaria)}p{margin:0}a{color:var(--cor-primaria)}::selection{background:var(--cor-primaria-clara);color:#fff}:focus-visible{outline:2px solid var(--cor-primaria-clara);outline-offset:2px;border-radius:var(--raio-sm)}.carregando-app{padding:var(--espaco-7);text-align:center;color:var(--cor-texto-suave);font-size:.95rem}.app-shell{display:flex;flex-direction:column;min-height:100vh}.cabecalho{background:linear-gradient(135deg,var(--cor-primaria) 0%,var(--cor-primaria-escura) 100%);color:#fff;padding:.9rem var(--espaco-6);display:flex;justify-content:space-between;align-items:center;gap:var(--espaco-4);flex-wrap:wrap;box-shadow:var(--sombra-md);position:sticky;top:0;z-index:20}.cabecalho>span:first-child{font-weight:700;font-size:1.05rem;letter-spacing:-.01em;white-space:nowrap}.usuario-logado{display:flex;align-items:center;gap:var(--espaco-3);font-size:.9rem;opacity:.95}.usuario-logado button{margin-left:0;background:#ffffff24;border-color:#ffffff4d}.usuario-logado button:hover{background:#ffffff3d}main{padding:var(--espaco-6);flex:1;width:100%;max-width:1320px;margin:0 auto}button{cursor:pointer;border:1px solid var(--cor-primaria);background:var(--cor-primaria);color:#fff;border-radius:var(--raio-sm);padding:.55rem 1.1rem;font-size:.88rem;font-weight:600;transition:background-color .15s ease,border-color .15s ease,transform .05s ease;font-family:inherit}button:hover:not(:disabled){background:var(--cor-primaria-clara);border-color:var(--cor-primaria-clara)}button:active:not(:disabled){transform:translateY(1px)}button:disabled{opacity:.55;cursor:not-allowed}input,select{padding:.5rem .65rem;border:1px solid var(--cor-borda-forte);border-radius:var(--raio-sm);font-size:.9rem;font-family:inherit;color:var(--cor-texto);background:var(--cor-superficie);width:100%;transition:border-color .15s ease,box-shadow .15s ease}input:hover,select:hover{border-color:var(--cor-texto-fraco)}input:focus,select:focus{outline:none;border-color:var(--cor-primaria-clara);box-shadow:0 0 0 3px var(--cor-primaria-suave)}.campo-com-sufixo{position:relative}.campo-com-sufixo input{padding-right:1.9rem}.campo-sufixo{position:absolute;right:.65rem;top:50%;transform:translateY(-50%);color:var(--cor-texto-fraco);font-size:.85rem;font-weight:600;pointer-events:none}select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='none' stroke='%235c6577' stroke-width='2'%3E%3Cpath d='M5 7l5 5 5-5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .6rem center;background-size:1rem;padding-right:2rem}input[type=checkbox]{width:auto;accent-color:var(--cor-primaria)}.pagina-login{display:flex;justify-content:center;align-items:center;min-height:100vh;background:linear-gradient(160deg,var(--cor-primaria-escura) 0%,var(--cor-primaria) 55%,var(--cor-primaria-clara) 100%);padding:var(--espaco-5)}.form-login{background:var(--cor-superficie);padding:var(--espaco-6) var(--espaco-6);border-radius:var(--raio-lg);box-shadow:var(--sombra-lg);display:flex;flex-direction:column;gap:var(--espaco-4);width:100%;max-width:380px}.form-login h1{font-size:1.3rem;color:var(--cor-primaria);margin-bottom:var(--espaco-2);text-align:center}.form-login button{margin-top:var(--espaco-2);padding:.7rem 1rem;font-size:.95rem}.campo-form{display:flex;flex-direction:column;gap:.3rem}.campo-form--alterado label{color:var(--cor-aviso)}.campo-form--alterado input,.campo-form--alterado select{border-color:var(--cor-aviso-borda);background-color:var(--cor-aviso-bg)}.campo-form label{font-size:.8rem;font-weight:600;color:var(--cor-texto-suave);text-transform:uppercase;letter-spacing:.02em}.erro-inline{color:var(--cor-perigo);font-size:.85rem;background:var(--cor-perigo-suave);padding:var(--espaco-2) var(--espaco-3);border-radius:var(--raio-sm)}.erros-campo{color:var(--cor-perigo);font-size:.78rem;margin:0;padding-left:1.1rem}.aviso-influencia{color:var(--cor-primaria);font-size:.76rem;margin:.2rem 0 0}.pagina-busca h1{margin-bottom:var(--espaco-4)}.filtros-busca{display:flex;flex-wrap:wrap;gap:var(--espaco-4);background:var(--cor-superficie);padding:var(--espaco-5);border-radius:var(--raio-lg);margin-bottom:var(--espaco-4);align-items:end;box-shadow:var(--sombra-sm);border:1px solid var(--cor-borda)}.campo-filtro{display:flex;flex-direction:column;gap:.3rem;font-size:.85rem;min-width:150px;flex:1 1 150px}.campo-filtro label{font-size:.78rem;font-weight:600;color:var(--cor-texto-suave);text-transform:uppercase;letter-spacing:.02em}.campo-filtro--acoes{flex-direction:row;gap:.5rem;flex:0 0 auto}.campo-filtro--sem-calculo{flex-direction:row;align-items:center;gap:.4rem;flex:1 1 100%;padding-top:var(--espaco-2);border-top:1px dashed var(--cor-borda)}.campo-filtro--sem-calculo label{display:flex;align-items:center;gap:.45rem;font-weight:600;color:var(--cor-texto);text-transform:none;letter-spacing:normal;font-size:.85rem;cursor:pointer}.campo-filtro--sem-calculo input[type=checkbox]{width:1.05rem;height:1.05rem}.barra-fator-lote{display:flex;flex-wrap:wrap;align-items:center;gap:var(--espaco-3);background:var(--cor-primaria-suave);border:1px solid var(--cor-primaria-clara);color:var(--cor-primaria-escura);padding:var(--espaco-3) var(--espaco-4);border-radius:var(--raio-md);margin-bottom:var(--espaco-4);font-size:.88rem;font-weight:600}.barra-fator-lote select{width:auto;min-width:180px;font-weight:500}.barra-fator-lote .erro-inline{font-weight:500}.tabela-scroll{overflow-x:auto;border-radius:var(--raio-lg);box-shadow:var(--sombra-sm);border:1px solid var(--cor-borda);background:var(--cor-superficie)}.tabela-imoveis{width:100%;min-width:760px;border-collapse:collapse;background:var(--cor-superficie)}.tabela-imoveis thead th{background:var(--cor-fundo);box-shadow:inset 0 -1px 0 var(--cor-borda-forte)}.tabela-imoveis th,.tabela-imoveis td{padding:.6rem .5rem;text-align:left;border-bottom:1px solid var(--cor-borda);white-space:nowrap}.td-truncada{max-width:160px;overflow:hidden;text-overflow:ellipsis}.td-truncada--estreita{max-width:135px}.tabela-imoveis th.th-ativa{background:var(--cor-primaria-suave)}.tabela-imoveis tbody tr:nth-child(2n){background:#fafbfc}.tabela-imoveis tbody tr:hover{background:var(--cor-primaria-suave)}.td-destaque{font-weight:700;color:var(--cor-primaria-escura)}.botao-ordenar{background:none;border:none;color:var(--cor-texto-suave);font-weight:700;padding:0;font-size:.78rem;text-transform:uppercase;letter-spacing:.03em}.botao-ordenar:hover{background:none;color:var(--cor-primaria)}.th-ativa .botao-ordenar{color:var(--cor-primaria)}.linha-clicavel td:not(:first-child){cursor:pointer}.tabela-vazia{text-align:center;color:var(--cor-texto-fraco);padding:var(--espaco-6)!important;white-space:normal!important}.badge{display:inline-block;padding:.2rem .6rem;border-radius:999px;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.02em;white-space:nowrap}.badge--pendente{background:var(--cor-aviso-bg);color:var(--cor-aviso);border:1px solid var(--cor-aviso-borda)}.badge--manual{background:var(--cor-info-bg);color:var(--cor-info)}.badge--automatico{background:var(--cor-fundo);color:var(--cor-texto-suave)}.paginacao{display:flex;gap:var(--espaco-4);align-items:center;justify-content:center;margin-top:var(--espaco-5);flex-wrap:wrap;font-size:.88rem;color:var(--cor-texto-suave)}.paginacao button{padding:.45rem .95rem}.pagina-edicao h1{margin-bottom:var(--espaco-5)}.botao-voltar{background:none;border:none;color:var(--cor-primaria);padding:0;margin-bottom:var(--espaco-4);font-size:.88rem;font-weight:600}.botao-voltar:hover{background:none;text-decoration:underline}.secao{background:var(--cor-superficie);padding:var(--espaco-5) var(--espaco-5);border-radius:var(--raio-lg);margin-bottom:var(--espaco-4);box-shadow:var(--sombra-sm);border:1px solid var(--cor-borda)}.secao h2{margin-bottom:var(--espaco-4);padding-bottom:var(--espaco-3);border-bottom:1px solid var(--cor-borda)}.secao-calculada{border-color:var(--cor-primaria-clara);background:linear-gradient(180deg,var(--cor-primaria-suave) 0%,var(--cor-superficie) 140px)}.grade-campos{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:var(--espaco-4) var(--espaco-5)}.secao-calculada .lista-calculada{display:flex;gap:var(--espaco-6);margin:0;flex-wrap:wrap}.bloco-calculado{margin-top:var(--espaco-5);padding-top:var(--espaco-4);border-top:1px solid var(--cor-borda)}.bloco-calculado:first-of-type{margin-top:var(--espaco-2);padding-top:0;border-top:none}.bloco-calculado h3{font-size:.82rem;font-weight:700;color:var(--cor-texto-suave);text-transform:uppercase;letter-spacing:.04em;margin:0 0 var(--espaco-3)}.bloco-calculado--resultado h3{color:var(--cor-primaria)}.valor-principal{font-size:2rem!important;color:var(--cor-primaria-escura);font-weight:800!important;letter-spacing:-.02em}.valor-principal--positivo{color:var(--cor-acento)}.valor-principal--negativo{color:var(--cor-perigo)}.variacao-positiva{color:var(--cor-acento);font-weight:600}.variacao-negativa{color:var(--cor-perigo);font-weight:600}.rotulo-simulado{font-size:.85rem;font-weight:600;color:var(--cor-texto-fraco);text-transform:none;letter-spacing:normal}.explicacao-calculo{font-size:.85rem;color:var(--cor-texto-suave);margin:-.5rem 0 var(--espaco-4)}.detalhes-fatores{margin-top:var(--espaco-4)}.detalhes-fatores summary{cursor:pointer;font-size:.85rem;color:var(--cor-primaria);font-weight:600;list-style:none;display:inline-flex;align-items:center;gap:.35rem}.detalhes-fatores summary::-webkit-details-marker{display:none}.detalhes-fatores summary:before{content:"▸";font-size:.7rem;transition:transform .15s ease}.detalhes-fatores[open] summary:before{transform:rotate(90deg)}.lista-calculada--fatores{margin-top:var(--espaco-4);padding:var(--espaco-4);background:var(--cor-fundo);border-radius:var(--raio-md)}.item-calculado--fator dd{font-size:.92rem;font-weight:500;display:flex;align-items:center;gap:.5rem}.ajuda-glossario{position:relative;display:inline-block;margin-left:var(--espaco-2);vertical-align:middle}.botao-ajuda{width:1.5rem;height:1.5rem;padding:0;border-radius:50%;font-size:.8rem;font-weight:700;line-height:1;background:var(--cor-primaria-suave);color:var(--cor-primaria);border:1px solid var(--cor-primaria-clara)}.botao-ajuda:hover{background:var(--cor-primaria-clara);color:#fff}.popover-glossario{display:none;position:fixed;top:10vh;left:50%;transform:translate(-50%);z-index:30;width:min(480px,92vw);max-height:80vh;overflow-y:auto;background:var(--cor-superficie);border:1px solid var(--cor-borda);border-radius:var(--raio-md);box-shadow:var(--sombra-lg);padding:var(--espaco-4)}.ajuda-glossario:hover .popover-glossario,.ajuda-glossario:focus-within .popover-glossario{display:block}.glossario-lista{display:grid;gap:var(--espaco-3)}.glossario-item dt{font-size:.85rem;font-weight:700;color:var(--cor-primaria);margin-bottom:.1rem}.glossario-nome-completo{font-weight:500;color:var(--cor-texto-suave)}.glossario-item dd{margin:0;font-size:.85rem;color:var(--cor-texto-suave);line-height:1.45}.item-calculado{margin:0}.item-calculado dt{font-size:.76rem;color:var(--cor-texto-fraco);text-transform:uppercase;letter-spacing:.02em;margin-bottom:.15rem}.item-calculado dd{margin:0;font-size:1.15rem;font-weight:700;color:var(--cor-texto);transition:background-color .4s ease;border-radius:var(--raio-sm);padding:.15rem .35rem;margin-left:-.35rem}.item-calculado--destacado dd{background-color:#fff3b0}.acoes-simulacao{display:flex;align-items:center;gap:var(--espaco-3);margin:calc(-1 * var(--espaco-2)) 0 var(--espaco-4)}.acoes-simulacao button:first-child{background:var(--cor-aviso);border-color:var(--cor-aviso)}.acoes-simulacao button:first-child:hover:not(:disabled){background:#b07d00;border-color:#b07d00}.acoes-simulacao button:last-of-type:not(:first-child){background:var(--cor-superficie);color:var(--cor-texto-suave);border-color:var(--cor-borda-forte)}.aviso-pendencia{background:var(--cor-aviso-bg);color:var(--cor-aviso);border:1px solid var(--cor-aviso-borda);padding:var(--espaco-3) var(--espaco-4);border-radius:var(--raio-md);margin-bottom:var(--espaco-4);font-size:.87rem}.badge--padrao{background:var(--cor-aviso-bg);color:var(--cor-aviso);border:1px solid var(--cor-aviso-borda)}.valor-clicavel{display:inline-flex;align-items:center;gap:var(--espaco-2);background:none;border:none;padding:0;font:inherit;color:inherit;cursor:pointer;border-bottom:1px dashed var(--cor-borda-forte)}.valor-clicavel:hover{background:none;border-bottom-color:var(--cor-primaria);color:var(--cor-primaria-escura)}.modal-fundo{position:fixed;top:0;right:0;bottom:0;left:0;background:#141e3273;display:flex;align-items:center;justify-content:center;padding:var(--espaco-5);z-index:1000}.modal-caixa{background:var(--cor-superficie);border-radius:var(--raio-lg);box-shadow:var(--sombra-lg);padding:var(--espaco-5);max-width:480px;width:100%;max-height:85vh;overflow-y:auto}.modal-cabecalho{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--espaco-4);margin-bottom:var(--espaco-4)}.modal-cabecalho h3{font-size:1.05rem}.modal-fechar{background:none;border:none;padding:0;font-size:1.4rem;line-height:1;color:var(--cor-texto-fraco)}.modal-fechar:hover{background:none;color:var(--cor-texto)}.modal-tag{padding:var(--espaco-3) var(--espaco-4);border-radius:var(--raio-md);font-size:.87rem;margin:0 0 var(--espaco-4)}.modal-tag--manual{background:var(--cor-info-bg);color:var(--cor-info)}.modal-tag--padrao{background:var(--cor-aviso-bg);color:var(--cor-aviso);border:1px solid var(--cor-aviso-borda)}.modal-formula{margin:0 0 var(--espaco-4)}.modal-formula dt{font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.03em;color:var(--cor-texto-suave);margin-bottom:var(--espaco-2)}.modal-formula dd{margin:0}.modal-formula code{display:block;background:var(--cor-fundo);border:1px solid var(--cor-borda);border-radius:var(--raio-sm);padding:var(--espaco-3);font-size:.85rem;line-height:1.5;white-space:pre-wrap;word-break:break-word}@media (max-width: 780px){main{padding:var(--espaco-4)}.cabecalho{padding:.75rem var(--espaco-4)}h1{font-size:1.25rem}.filtros-busca{padding:var(--espaco-4);flex-direction:column;align-items:stretch}.campo-filtro{min-width:0;flex:0 0 auto}.campo-filtro--acoes{flex-direction:row}.campo-filtro--acoes button{flex:1}.secao{padding:var(--espaco-4)}.secao-calculada .lista-calculada{gap:var(--espaco-4) var(--espaco-6)}.valor-principal{font-size:1.6rem!important}.acoes-simulacao{flex-direction:column;align-items:stretch}.paginacao{justify-content:space-between}}@media (max-width: 480px){.cabecalho{flex-direction:column;align-items:flex-start;gap:var(--espaco-2)}.form-login{padding:var(--espaco-5) var(--espaco-4)}}.barra-selecao-persistente{background:#fff;border-bottom:2px solid #1f3a5f;padding:.6rem 1.5rem}.barra-selecao-persistente__resumo{display:flex;align-items:center;gap:1rem;font-weight:600}.barra-selecao-persistente__lista{list-style:none;margin:.75rem 0 0;padding:0;max-height:200px;overflow-y:auto;display:flex;flex-direction:column;gap:.35rem}.barra-selecao-persistente__lista li{display:flex;justify-content:space-between;align-items:center;background:#f4f5f7;border-radius:4px;padding:.35rem .6rem;font-size:.85rem}.barra-selecao-persistente__lista button{background:none;border:none;color:#b3261e;font-size:1rem;padding:0 .25rem}
