/* =====================================================================
 * bimtabela.css — P5 (plano do BIM, fase P5): a TABELA numa aba de
 * vista (js/bimtabelaui.js), o editor "Propriedades da tabela" e os
 * IDENTIFICADORES na planta 2D (js/bimanot.js).
 * Só tokens: --rv-* (tema do BIM, claro e escuro) e --d2-* (papel do
 * desenho técnico, que já troca com o tema em css/bim-revit.css).
 * ===================================================================== */

/* ---------- a aba da tabela ---------- */
.bim-grade > .bim-tela.bim-tela-2d .p5t-tela { position: absolute; inset: 0; overflow: auto; background: var(--rv-tela-2); color: var(--rv-painel-tx); }
.p5t { padding: 16px 20px 24px; min-width: 0; }
.p5t .mod-cab { margin-bottom: 16px; }
.p5t .mod-sec { background: var(--rv-painel-bg); border: 1px solid var(--rv-linha); }
.p5t-rolagem { overflow: auto; max-width: 100%; }
.p5t-tbl { width: 100%; border-collapse: collapse; font-variant-numeric: tabular-nums; }
.p5t-tbl th, .p5t-tbl td { padding: 6px 12px; border-bottom: 1px solid var(--rv-linha); color: var(--rv-painel-tx); white-space: nowrap; }
.p5t-tbl th { position: sticky; top: 0; z-index: 1; background: var(--rv-painel-cab); font-size: var(--t-micro); text-transform: uppercase; letter-spacing: .5px; font-weight: var(--p-forte); }
.p5t-un { text-transform: none; font-weight: var(--p-normal); color: var(--rv-tx-fraco); }
.p5t-direita { text-align: right; }
.p5t-centro { text-align: center; }
.p5t-esquerda { text-align: left; }
.p5t-item { cursor: pointer; }
.p5t-item:hover td { background: var(--rv-hover); }
.p5t-item:focus { outline: 2px solid var(--rv-foco); outline-offset: -2px; }
.p5t-sel td { background: var(--rv-sel); }
.p5t-cab td { font-weight: var(--p-forte); background: var(--rv-painel-cab); }
.p5t-rod td, .p5t-total td { font-weight: var(--p-forte); border-top: 1px solid var(--rv-linha-forte, var(--rv-linha)); }
.p5t-total td { background: var(--rv-painel-cab); }
.p5t-tit { font-weight: var(--p-forte); }

/* ---------- o editor (Propriedades da tabela) ---------- */
.p5t-editor .p5t-painel { padding-top: 12px; min-height: 280px; }
.p5t-campos { display: grid; grid-template-columns: 1fr auto 1fr; gap: 12px; align-items: start; }
.p5t-campos select, .p5t-campos input[type="search"] { width: 100%; margin-top: 6px; }
.p5t-campos-bt { display: flex; flex-direction: column; gap: 6px; padding-top: 28px; }
.p5t-linha { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; margin: 8px 0; }
.p5t-ord { border: 1px solid var(--rv-linha); border-radius: 6px; padding: 8px 10px; margin: 0 0 8px; display: flex; flex-wrap: wrap; gap: 10px; align-items: center; }
.p5t-ord legend { font-weight: var(--p-forte); padding: 0 4px; }
.p5t-form { display: grid; gap: 10px; }
.p5t-form label { display: grid; gap: 4px; }
.p5t-calc { margin-top: 12px; }
@media (max-width: 640px) {
  .p5t { padding: 12px; }
  .p5t-campos { grid-template-columns: 1fr; }
  .p5t-campos-bt { flex-direction: row; flex-wrap: wrap; padding-top: 0; }
}

/* ---------- identificadores na planta (desenho técnico) ---------- */
.d2-ident-tx { fill: var(--d2-tinta); font-family: var(--fonte); font-weight: var(--p-forte); }
.d2-ident-moldura { fill: var(--d2-papel); stroke: var(--d2-tinta); }
.d2-ident-alvo { fill: transparent; stroke: none; cursor: pointer; }
.d2-ident:hover .d2-ident-alvo { fill: var(--d2-sel); fill-opacity: .1; }
.d2-ident:hover .d2-ident-tx { fill: var(--d2-sel); }
.d2-ident-vazio .d2-ident-tx { fill: var(--d2-amb-av, var(--d2-tinta)); }
