.bib-tabs { display:flex; gap:.5rem; margin-bottom:1.5rem; border-bottom:2px solid #e2e8f0; padding-bottom:0; }
.bib-tab  { padding:.5rem 1.1rem; font-size:.875rem; font-weight:600; color:#64748b; cursor:pointer;
            border:none; background:none; border-bottom:2px solid transparent; margin-bottom:-2px; }
.bib-tab.active { color:#0f766e; border-bottom-color:#0f766e; }
.bib-pane { display:none; }
.bib-pane.active { display:block; }

.bib-regl-table { width:100%; border-collapse:collapse; font-size:.85rem; }
.bib-regl-table th { text-align:left; padding:.5rem .75rem; background:#f8fafc;
                     color:#64748b; font-weight:600; border-bottom:1px solid #e2e8f0; }
.bib-regl-table td { padding:.6rem .75rem; border-bottom:1px solid #f1f5f9; vertical-align:middle; }
.bib-regl-table tr:last-child td { border-bottom:none; }
.bib-bloc-cb { display:flex; gap:.5rem; flex-wrap:wrap; }
.bib-bloc-cb label { display:flex; align-items:center; gap:.25rem; font-size:.8rem;
                     background:#f1f5f9; border:1px solid #e2e8f0; padding:.2rem .55rem;
                     border-radius:20px; cursor:pointer; user-select:none; }
.bib-bloc-cb label:has(input:checked) { background:#ccfbf1; border-color:#5eead4; color:#0f766e; font-weight:600; }
.bib-bloc-cb input { display:none; }

.bib-add-form { background:#f8fafc; border:1px solid #e2e8f0; border-radius:10px;
                padding:1rem 1.25rem; margin-top:1.25rem; }
.bib-add-form h4 { font-size:.875rem; font-weight:700; color:#1e293b; margin:0 0 .75rem; }
.bib-add-row { display:flex; gap:.75rem; flex-wrap:wrap; align-items:flex-end; margin-bottom:.75rem; }
.bib-add-row > div { display:flex; flex-direction:column; gap:.25rem; }
.bib-add-row label { font-size:.78rem; font-weight:600; color:#374151; }
.bib-add-row input[type=text] { padding:.4rem .65rem; border:1px solid #d1d5db; border-radius:6px;
                                 font-size:.85rem; width:180px; }
.bib-add-row input[type=text].icon-input { width:60px; text-align:center; font-size:1.2rem; }

.drag-handle { cursor:grab; color:#94a3b8; font-size:1rem; padding:0 .25rem; }
.drag-handle:active { cursor:grabbing; }

.bib-bloc-tabs { display:flex; gap:.5rem; margin-bottom:1.25rem; flex-wrap:wrap; }
.bib-bloc-tab  {
  padding:.5rem 1.4rem; font-size:.875rem; font-weight:600; color:#64748b; cursor:pointer;
  border:1.5px solid #e2e8f0; border-radius:8px; background:#fff;
  transition:all .15s;
}
.bib-bloc-tab:hover  { border-color:#5eead4; color:#0f766e; background:#f0fdfa; }
.bib-bloc-tab.active { background:#0f766e; color:#fff; border-color:#0f766e; }
.bib-bloc-pane  { display:none; }
.bib-bloc-pane.active { display:block; }
