/* Curva horizontal — locação e transição.
 *
 * Herda a folha da família. A geometria de página NÃO é redeclarada; só a
 * colocação do painel de resultados, que é do produto.
 */
@import url("../estabilidade-taludes/styles.css");
@import url("../shared/ep-como-usar.css");

.curva-workspace > .results-panel { grid-column: 1 / -1; }

/* --------------------------------------------------- entrada */

/* O aviso do que a fonte não cobre. É a ressalva mais importante do produto e
 * não pode parecer rodapé. */
/* Era caixa âmbar de "o que esta fonte não cobre". Hoje é a citação das duas
 * publicações, e a cor acompanha. */
.falta-na-fonte {
  margin-top: 9px; padding: 11px 13px; border-radius: 10px;
  border: 1px solid #cfe0d8; border-left: 3px solid #0e6b4f; background: #f4f9f7;
  font-size: .77rem; line-height: 1.6; color: #2f4c42;
}
.falta-na-fonte b { color: #0e6b4f; }

/* A janela do comprimento da espiral: três estados, e o do meio importa. */
.criterio-nota { margin: 10px 0 4px; font-size: .78rem; color: var(--muted, #848f8b); line-height: 1.5; }
.criterio-janela {
  margin: 10px 0 0; padding: 10px 12px; border-radius: 9px;
  font-size: .8rem; line-height: 1.55; border: 1px solid var(--line, #d7e0dc);
}
.criterio-janela.dentro { border-color: #0e6b4f; background: #f2f9f6; color: #14503c; }
.criterio-janela.fora { border-color: #d9a441; background: #fdf9f0; color: #6b4a12; }
.criterio-janela.vazia { border-color: #b02a37; background: #fdf4f4; color: #7a2b2b; }

/* A nota de fonte dentro da memória de cálculo. */
.mem-fonte {
  margin: 0 0 14px; padding: 12px 14px; border-radius: 10px;
  border: 1px solid #cfe0d8; border-left: 3px solid #0e6b4f; background: #f4f9f7;
  font-size: .8rem; line-height: 1.6; color: #2f4c42;
}
.mem-fonte b { color: #0e6b4f; }
.falta-na-fonte b { color: #5a3f10; }

/* Os seis critérios de Ls do IPR-706: quatro mínimos e dois máximos, com o
 * governante de cada lado marcado. Eram três, e todos rotulados como
 * provisórios, enquanto o produto citava o manual sem tê-lo. */
.criterios-ls { display: grid; gap: 6px; margin-top: 8px; }
.criterio-ls {
  display: grid; grid-template-columns: 1fr auto; gap: 2px 10px; align-items: baseline;
  padding: 7px 10px; border-radius: 8px; border: 1px solid var(--line, #d7e0dc); background: #fff;
  font-size: .76rem;
}
.criterio-ls.governa { border-color: #d9a441; background: #fdf9f0; }
.criterio-ls strong { font-weight: 600; color: var(--ink, #24302c); }
.criterio-ls b { font-variant-numeric: tabular-nums; font-size: .84rem; }
.criterio-ls small { grid-column: 1 / -1; color: var(--muted, #848f8b); line-height: 1.45; }
/* O selo do critério. Era "provisório · não está no IPR-719", em âmbar de
 * advertência. Com o manual em mãos passou a ser a CITAÇÃO da página, e a cor
 * tem de dizer isso: manter o âmbar seria advertir sobre um problema resolvido. */
.criterio-ls .selo-fonte {
  grid-column: 1 / -1; font-size: .64rem; letter-spacing: .06em;
  color: var(--muted, #848f8b); font-weight: 600;
}
/* Um MÁXIMO não é um mínimo que sobrou: ele prende por cima, e a borda diz. */
.criterio-ls.maximo { border-style: dashed; }
.criterio-ls.maximo.governa { border-color: #a4670f; background: #fdf9f0; }
.criterio-ls.maximo.governa .selo-fonte { color: #8a5a0f; }

/* --------------------------------------------------------------- desenho */

.ch-eixo, .ch-cota, .ch-hachura { pointer-events: none; }
.ch-tangente { stroke: #848f8b; stroke-width: 1.2; stroke-dasharray: 10 4; fill: none; }
.ch-curva { fill: none; stroke: #0e6b4f; stroke-width: 2.4; }
.ch-espiral { fill: none; stroke: #a4670f; stroke-width: 2.6; }
.ch-raio { stroke: #93a8a4; stroke-width: 1; stroke-dasharray: 5 4; }
/* O afastamento E vai em linha cheia: é cota, não linha de construção. */
.ch-cota-linha { stroke: #848f8b; stroke-width: 1.2; }
/* Marca de quebra do raio, quando o centro cai fora do enquadramento. */
.ch-quebra { stroke: #848f8b; stroke-width: 1.4; }
.ch-ponto { fill: #fff; stroke: #0e6b4f; stroke-width: 2; }
.ch-ponto-pi { fill: #fff; stroke: #b02a37; stroke-width: 2; }
/* --- a plataforma, que é o que existe no terreno ------------------------- */
/* O corpo da pista em vista de cima: tom claro com grão, porque um cinza de
 * asfalto de verdade brigaria com as anotações preto-sobre-branco. */
.ch-plataforma-corpo { fill: url(#pista-planta); stroke: none; }
.ch-bordo { fill: none; stroke: #7d8b86; stroke-width: 1.6; }
/* Estacas: traço fino de bordo a bordo, e cheio nas de cem em cem. */
.ch-estaca { stroke: #b3c0bb; stroke-width: 0.7; }
.ch-estaca-cheia { stroke: #7d8b86; stroke-width: 1.1; }
.ch-plataforma { fill: none; stroke: #cfd8d5; stroke-width: 1; }

/* -------------------------------------------------------- quadros das abas */

.quadro-elementos td.simbolo { font-weight: 600; color: var(--ink, #24302c); width: 4.5rem; }
.quadro-deflexoes { font-variant-numeric: tabular-nums; }
.quadro-deflexoes tr.marco td { font-weight: 600; background: #eef6f2; }
.quadro-provisorio td { color: #a4670f; }

/* Últimos dois tokens secundários acertados no piso de contraste.
 *
 * `#7d9389` sobre branco dava 3,28:1; `#65736e` sobre o verde escuro da faixa
 * de saídas dava 3,06:1. O segundo é texto CLARO sobre fundo escuro, e por isso
 * foi CLAREADO, não escurecido — a primeira tentativa escureceu os dois, o que
 * levou o rótulo da faixa a 1,38:1, pior que estava. A direção da correção vem
 * de comparar a luminância do texto com a do fundo, e não de supor. */
