/* Pilar de madeira — este pilar aguenta?
 *
 * Herda a folha da família e as compartilhadas, e não redeclara a geometria de
 * página: largura, margem e as duas colunas do `.workspace` são da folha-base,
 * que mantém a escada de breakpoints inteira.
 *
 * O que é DESTE produto: a altura do canvas, a lista de travamentos e a lista
 * de ações de esforço.
 */
@import url("../shared/ep-hidrologia.css");
@import url("../shared/ep-como-usar.css");

/*
 * O CANVAS DO PILAR É ALTO, E O DA VIGA É BAIXO.
 *
 * A elevação de uma viga é larga e rasa; a de um pilar é o contrário — duas
 * elevações verticais lado a lado, cada uma com cota de segmentos, glifo de
 * vínculo em cima e embaixo, três linhas de rótulo sob o desenho e a seta da
 * força normal acima. 460 px é o que acomoda isso sem que o `ajustar` encolha a
 * peça a um fio: com os 380 px da viga, a peça ficava com 250 px de altura
 * útil e os rótulos de esbeltez encostavam na cota.
 */
.madeira-workspace .canvas-superficie { height: 460px; }
.madeira-workspace .figuras-card { grid-column: 1 / -1; }
.madeira-workspace > .results-panel { grid-column: 1 / -1; }

/* O inspetor do elemento selecionado é a PRIMEIRA seção do painel, porque num
 * produto com canvas é ele que se mexe a todo clique — e o canvas fica no topo
 * da coluna ao lado. Sem seleção, ele instrui o que clicar. */
#bloco-selecao .instrucao { font-size: .74rem; color: #62766e; line-height: 1.45; }
#bloco-selecao .alvo {
  display: flex; align-items: center; gap: 8px; margin-bottom: 8px;
  font-size: .72rem; color: #0e6b4f; font-weight: 600;
}
#bloco-selecao .alvo .marca {
  display: inline-block; width: 10px; height: 10px; border-radius: 3px;
}

.madeira-workspace [hidden] { display: none !important; }

/* Todo coeficiente aqui precisa ser conferido contra a edição da norma que
 * quem projeta tem em mãos: a de 1997 e a de 2022 não coincidem, e o produto
 * não escolhe entre elas. */
.pilula-confira {
  display: inline-block; padding: 1px 7px; border-radius: 999px; margin-left: 6px;
  font-size: .64rem; font-weight: 700; color: #fff6db; background: #8a6a10;
  letter-spacing: .03em;
}

/* -- as listas que crescem e encolhem: ações e travamentos --------------- */
.lista-acoes { display: grid; gap: 8px; }
.lista-acoes .acao {
  display: grid; grid-template-columns: 1fr; gap: 6px;
  padding: 10px 11px; border: 1px solid #dfe8e4; border-radius: 10px; background: #fbfdfc;
}
.lista-acoes .acao.inativo { opacity: .55; }
.lista-acoes .acao .topo {
  display: grid; grid-template-columns: 1fr auto; gap: 8px; align-items: center;
}
.lista-acoes .acao input[type="text"] {
  width: 100%; padding: 5px 7px; border: 1px solid #cfe0d8; border-radius: 7px;
  font-size: .75rem; font-family: inherit; color: #0b2b21; background: #fff;
}
.lista-acoes .acao select {
  width: 100%; padding: 5px 7px; border: 1px solid #cfe0d8; border-radius: 7px;
  font-size: .72rem; font-family: inherit; color: #0b2b21; background: #fff;
}
.lista-acoes .acao .valores { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.lista-acoes .acao .valores.tres { grid-template-columns: 1fr 1fr 1fr; }
/*
 * "Longa duração · 0,70" pede 123 px e o painel tem 275: em duas colunas o
 * seletor elide o texto, e a classe de carregamento é o campo que decide o
 * k_mod — que aqui decide também a carga crítica. Ela ocupa a linha inteira.
 */
.lista-acoes .acao .valores label.wide { grid-column: 1 / -1; }
.lista-acoes .acao .valores label {
  display: grid; gap: 3px; font-size: .68rem; color: #46655a;
}
.lista-acoes .acao .valores label small { display: block; color: #62766e; font-size: .62rem; }
.lista-acoes .acao label.checkbox {
  display: flex; align-items: center; gap: 7px; font-size: .7rem; color: #46655a;
}
.lista-acoes .acao label.checkbox input { width: auto; }
/* O botão é um "×" e não a palavra: num painel de 275 px a palavra come o
 * campo do nome, que é o que a pessoa lê para saber onde está mexendo. */
.lista-acoes .acao .remover {
  border: 1px solid #e8d2d2; background: #fdf5f5; color: #9b3232; border-radius: 7px;
  width: 26px; height: 26px; padding: 0; font-size: .9rem; line-height: 1;
  cursor: pointer; font-family: inherit;
}
.lista-acoes .acao .remover:hover { background: #fbe6e6; }
.adicionar-acao {
  border: 1px dashed #bcd3c9; background: transparent; color: #0e6b4f; border-radius: 9px;
  padding: 7px 12px; font-size: .74rem; cursor: pointer; font-family: inherit; width: 100%;
}
.adicionar-acao:hover { background: #f2f8f5; }

/* O travamento é um cartão mais curto que a ação: tem cota e direção, e nada
 * mais. Mantê-lo com a mesma moldura das ações é o que faz as duas listas se
 * lerem como listas, e não como dois controles diferentes. */
.lista-travamentos .acao .valores { grid-template-columns: 1fr 1fr; }

/*
 * AS LISTAS SEGUEM A MESMA ESCADA DA FOLHA-BASE.
 *
 * Aos 1100 px o painel passa a 275 px e a base já reduz o `field-grid` a um
 * campo por linha. Aqui, três colunas nessa largura dão 85 px por campo, e
 * "Permanente" sai elidido no seletor de natureza — que é o campo que decide se
 * a ação leva γ de permanente ou de variável. Duas colunas resolvem; abaixo de
 * 820 px, uma.
 */
@media (max-width: 1100px) {
  .lista-acoes .acao .valores.tres { grid-template-columns: 1fr 1fr; }
  .madeira-workspace .canvas-superficie { height: 420px; }
}

@media (max-width: 820px) {
  .lista-acoes .acao .valores,
  .lista-acoes .acao .valores.tres { grid-template-columns: minmax(0, 1fr); }
}
