/* ==========================================================================
   BCDF Enterprise — Bootstrap-compatible grid, utilities and form/table/button
   aliases.   (generated: tools/build_compat.py — edit the generator, not this)
   --------------------------------------------------------------------------
   Why this exists: the MIS/ERP master prompt asks for Bootstrap 5. BrooksCorp
   builds on BCDF core instead (Standard §17). This file mirrors the Bootstrap
   5.3 class API that developers reach for daily — container/row/col grid with
   responsive breakpoints and gutters, display/flex/spacing/text utilities,
   .form-control/.form-select/.form-check, .table, .btn-*, .badge — mapped onto
   BCDF tokens and components. ~22 KB (≈4 KB gzipped) instead of ~230 KB, and no template look.
   Breakpoints match Bootstrap: sm 576 · md 768 · lg 992 · xl 1200 · xxl 1400.
   Not included (use the BCDF component instead): modals (.bc-modal), offcanvas
   (.bce-drawer), dropdowns (.bce-menu), toasts (.bc-toast), tooltips (.bce-tip).
   ========================================================================== */
:root { --bs-gutter-x: 24px; --bs-gutter-y: 0; }
.container, .container-fluid { width: 100%; padding-inline: 24px; margin-inline: auto; }
.container { max-width: 1320px; }
.row { display: flex; flex-wrap: wrap; margin-inline: calc(-.5 * var(--bs-gutter-x)); margin-top: calc(-1 * var(--bs-gutter-y)); }
.row > * { flex: 0 0 auto; width: 100%; max-width: 100%; padding-inline: calc(.5 * var(--bs-gutter-x)); margin-top: var(--bs-gutter-y); box-sizing: border-box; }
.col { flex: 1 0 0%; }
.col-auto { width: auto; }
.col-1 { width: 8.3333%; }
.col-2 { width: 16.6667%; }
.col-3 { width: 25.0000%; }
.col-4 { width: 33.3333%; }
.col-5 { width: 41.6667%; }
.col-6 { width: 50.0000%; }
.col-7 { width: 58.3333%; }
.col-8 { width: 66.6667%; }
.col-9 { width: 75.0000%; }
.col-10 { width: 83.3333%; }
.col-11 { width: 91.6667%; }
.col-12 { width: 100.0000%; }
.g-0, .gx-0 { --bs-gutter-x: 0px; } .g-0, .gy-0 { --bs-gutter-y: 0px; }
.g-1, .gx-1 { --bs-gutter-x: 4px; } .g-1, .gy-1 { --bs-gutter-y: 4px; }
.g-2, .gx-2 { --bs-gutter-x: 8px; } .g-2, .gy-2 { --bs-gutter-y: 8px; }
.g-3, .gx-3 { --bs-gutter-x: 16px; } .g-3, .gy-3 { --bs-gutter-y: 16px; }
.g-4, .gx-4 { --bs-gutter-x: 24px; } .g-4, .gy-4 { --bs-gutter-y: 24px; }
.g-5, .gx-5 { --bs-gutter-x: 48px; } .g-5, .gy-5 { --bs-gutter-y: 48px; }
@media (min-width: 576px) {
  .col-sm { flex: 1 0 0%; } .col-sm-auto { width: auto; }
  .col-sm-1 { width: 8.3333%; }
  .col-sm-2 { width: 16.6667%; }
  .col-sm-3 { width: 25.0000%; }
  .col-sm-4 { width: 33.3333%; }
  .col-sm-5 { width: 41.6667%; }
  .col-sm-6 { width: 50.0000%; }
  .col-sm-7 { width: 58.3333%; }
  .col-sm-8 { width: 66.6667%; }
  .col-sm-9 { width: 75.0000%; }
  .col-sm-10 { width: 83.3333%; }
  .col-sm-11 { width: 91.6667%; }
  .col-sm-12 { width: 100.0000%; }
  .offset-sm-0 { margin-left: 0.0000%; }
  .offset-sm-1 { margin-left: 8.3333%; }
  .offset-sm-2 { margin-left: 16.6667%; }
  .offset-sm-3 { margin-left: 25.0000%; }
  .offset-sm-4 { margin-left: 33.3333%; }
  .offset-sm-5 { margin-left: 41.6667%; }
  .offset-sm-6 { margin-left: 50.0000%; }
  .offset-sm-7 { margin-left: 58.3333%; }
  .offset-sm-8 { margin-left: 66.6667%; }
  .offset-sm-9 { margin-left: 75.0000%; }
  .offset-sm-10 { margin-left: 83.3333%; }
  .offset-sm-11 { margin-left: 91.6667%; }
  .d-sm-none { display: none !important; }
  .d-sm-block { display: block !important; }
  .d-sm-flex { display: flex !important; }
  .d-sm-grid { display: grid !important; }
  .d-sm-inline-flex { display: inline-flex !important; }
  .d-sm-inline-block { display: inline-block !important; }
  .flex-sm-row { flex-direction: row !important; } .flex-sm-column { flex-direction: column !important; }
}
@media (min-width: 768px) {
  .col-md { flex: 1 0 0%; } .col-md-auto { width: auto; }
  .col-md-1 { width: 8.3333%; }
  .col-md-2 { width: 16.6667%; }
  .col-md-3 { width: 25.0000%; }
  .col-md-4 { width: 33.3333%; }
  .col-md-5 { width: 41.6667%; }
  .col-md-6 { width: 50.0000%; }
  .col-md-7 { width: 58.3333%; }
  .col-md-8 { width: 66.6667%; }
  .col-md-9 { width: 75.0000%; }
  .col-md-10 { width: 83.3333%; }
  .col-md-11 { width: 91.6667%; }
  .col-md-12 { width: 100.0000%; }
  .offset-md-0 { margin-left: 0.0000%; }
  .offset-md-1 { margin-left: 8.3333%; }
  .offset-md-2 { margin-left: 16.6667%; }
  .offset-md-3 { margin-left: 25.0000%; }
  .offset-md-4 { margin-left: 33.3333%; }
  .offset-md-5 { margin-left: 41.6667%; }
  .offset-md-6 { margin-left: 50.0000%; }
  .offset-md-7 { margin-left: 58.3333%; }
  .offset-md-8 { margin-left: 66.6667%; }
  .offset-md-9 { margin-left: 75.0000%; }
  .offset-md-10 { margin-left: 83.3333%; }
  .offset-md-11 { margin-left: 91.6667%; }
  .d-md-none { display: none !important; }
  .d-md-block { display: block !important; }
  .d-md-flex { display: flex !important; }
  .d-md-grid { display: grid !important; }
  .d-md-inline-flex { display: inline-flex !important; }
  .d-md-inline-block { display: inline-block !important; }
  .flex-md-row { flex-direction: row !important; } .flex-md-column { flex-direction: column !important; }
}
@media (min-width: 992px) {
  .col-lg { flex: 1 0 0%; } .col-lg-auto { width: auto; }
  .col-lg-1 { width: 8.3333%; }
  .col-lg-2 { width: 16.6667%; }
  .col-lg-3 { width: 25.0000%; }
  .col-lg-4 { width: 33.3333%; }
  .col-lg-5 { width: 41.6667%; }
  .col-lg-6 { width: 50.0000%; }
  .col-lg-7 { width: 58.3333%; }
  .col-lg-8 { width: 66.6667%; }
  .col-lg-9 { width: 75.0000%; }
  .col-lg-10 { width: 83.3333%; }
  .col-lg-11 { width: 91.6667%; }
  .col-lg-12 { width: 100.0000%; }
  .offset-lg-0 { margin-left: 0.0000%; }
  .offset-lg-1 { margin-left: 8.3333%; }
  .offset-lg-2 { margin-left: 16.6667%; }
  .offset-lg-3 { margin-left: 25.0000%; }
  .offset-lg-4 { margin-left: 33.3333%; }
  .offset-lg-5 { margin-left: 41.6667%; }
  .offset-lg-6 { margin-left: 50.0000%; }
  .offset-lg-7 { margin-left: 58.3333%; }
  .offset-lg-8 { margin-left: 66.6667%; }
  .offset-lg-9 { margin-left: 75.0000%; }
  .offset-lg-10 { margin-left: 83.3333%; }
  .offset-lg-11 { margin-left: 91.6667%; }
  .d-lg-none { display: none !important; }
  .d-lg-block { display: block !important; }
  .d-lg-flex { display: flex !important; }
  .d-lg-grid { display: grid !important; }
  .d-lg-inline-flex { display: inline-flex !important; }
  .d-lg-inline-block { display: inline-block !important; }
  .flex-lg-row { flex-direction: row !important; } .flex-lg-column { flex-direction: column !important; }
}
@media (min-width: 1200px) {
  .col-xl { flex: 1 0 0%; } .col-xl-auto { width: auto; }
  .col-xl-1 { width: 8.3333%; }
  .col-xl-2 { width: 16.6667%; }
  .col-xl-3 { width: 25.0000%; }
  .col-xl-4 { width: 33.3333%; }
  .col-xl-5 { width: 41.6667%; }
  .col-xl-6 { width: 50.0000%; }
  .col-xl-7 { width: 58.3333%; }
  .col-xl-8 { width: 66.6667%; }
  .col-xl-9 { width: 75.0000%; }
  .col-xl-10 { width: 83.3333%; }
  .col-xl-11 { width: 91.6667%; }
  .col-xl-12 { width: 100.0000%; }
  .offset-xl-0 { margin-left: 0.0000%; }
  .offset-xl-1 { margin-left: 8.3333%; }
  .offset-xl-2 { margin-left: 16.6667%; }
  .offset-xl-3 { margin-left: 25.0000%; }
  .offset-xl-4 { margin-left: 33.3333%; }
  .offset-xl-5 { margin-left: 41.6667%; }
  .offset-xl-6 { margin-left: 50.0000%; }
  .offset-xl-7 { margin-left: 58.3333%; }
  .offset-xl-8 { margin-left: 66.6667%; }
  .offset-xl-9 { margin-left: 75.0000%; }
  .offset-xl-10 { margin-left: 83.3333%; }
  .offset-xl-11 { margin-left: 91.6667%; }
  .d-xl-none { display: none !important; }
  .d-xl-block { display: block !important; }
  .d-xl-flex { display: flex !important; }
  .d-xl-grid { display: grid !important; }
  .d-xl-inline-flex { display: inline-flex !important; }
  .d-xl-inline-block { display: inline-block !important; }
  .flex-xl-row { flex-direction: row !important; } .flex-xl-column { flex-direction: column !important; }
}
@media (min-width: 1400px) {
  .col-xxl { flex: 1 0 0%; } .col-xxl-auto { width: auto; }
  .col-xxl-1 { width: 8.3333%; }
  .col-xxl-2 { width: 16.6667%; }
  .col-xxl-3 { width: 25.0000%; }
  .col-xxl-4 { width: 33.3333%; }
  .col-xxl-5 { width: 41.6667%; }
  .col-xxl-6 { width: 50.0000%; }
  .col-xxl-7 { width: 58.3333%; }
  .col-xxl-8 { width: 66.6667%; }
  .col-xxl-9 { width: 75.0000%; }
  .col-xxl-10 { width: 83.3333%; }
  .col-xxl-11 { width: 91.6667%; }
  .col-xxl-12 { width: 100.0000%; }
  .offset-xxl-0 { margin-left: 0.0000%; }
  .offset-xxl-1 { margin-left: 8.3333%; }
  .offset-xxl-2 { margin-left: 16.6667%; }
  .offset-xxl-3 { margin-left: 25.0000%; }
  .offset-xxl-4 { margin-left: 33.3333%; }
  .offset-xxl-5 { margin-left: 41.6667%; }
  .offset-xxl-6 { margin-left: 50.0000%; }
  .offset-xxl-7 { margin-left: 58.3333%; }
  .offset-xxl-8 { margin-left: 66.6667%; }
  .offset-xxl-9 { margin-left: 75.0000%; }
  .offset-xxl-10 { margin-left: 83.3333%; }
  .offset-xxl-11 { margin-left: 91.6667%; }
  .d-xxl-none { display: none !important; }
  .d-xxl-block { display: block !important; }
  .d-xxl-flex { display: flex !important; }
  .d-xxl-grid { display: grid !important; }
  .d-xxl-inline-flex { display: inline-flex !important; }
  .d-xxl-inline-block { display: inline-block !important; }
  .flex-xxl-row { flex-direction: row !important; } .flex-xxl-column { flex-direction: column !important; }
}
/* ---- display / flex ---------------------------------------------------- */
.d-none{display:none!important}.d-block{display:block!important}.d-flex{display:flex!important}.d-grid{display:grid!important}.d-inline-flex{display:inline-flex!important}.d-inline-block{display:inline-block!important}
.flex-row{flex-direction:row!important}.flex-column{flex-direction:column!important}.flex-wrap{flex-wrap:wrap!important}.flex-nowrap{flex-wrap:nowrap!important}
.flex-grow-1{flex-grow:1!important}.flex-shrink-0{flex-shrink:0!important}.flex-fill{flex:1 1 auto!important}
.justify-content-start{justify-content:flex-start!important}.justify-content-end{justify-content:flex-end!important}.justify-content-center{justify-content:center!important}.justify-content-between{justify-content:space-between!important}
.align-items-start{align-items:flex-start!important}.align-items-center{align-items:center!important}.align-items-end{align-items:flex-end!important}.align-items-stretch{align-items:stretch!important}.align-items-baseline{align-items:baseline!important}
.align-self-center{align-self:center!important}.align-self-start{align-self:flex-start!important}.ms-auto{margin-left:auto!important}.me-auto{margin-right:auto!important}.mx-auto{margin-inline:auto!important}
.gap-0{gap:0px!important}
.gap-1{gap:4px!important}
.gap-2{gap:8px!important}
.gap-3{gap:16px!important}
.gap-4{gap:24px!important}
.gap-5{gap:48px!important}
.m-0{margin:0px!important}.mt-0{margin-top:0px!important}.mb-0{margin-bottom:0px!important}.ms-0{margin-left:0px!important}.me-0{margin-right:0px!important}.mx-0{margin-inline:0px!important}.my-0{margin-block:0px!important}
.m-1{margin:4px!important}.mt-1{margin-top:4px!important}.mb-1{margin-bottom:4px!important}.ms-1{margin-left:4px!important}.me-1{margin-right:4px!important}.mx-1{margin-inline:4px!important}.my-1{margin-block:4px!important}
.m-2{margin:8px!important}.mt-2{margin-top:8px!important}.mb-2{margin-bottom:8px!important}.ms-2{margin-left:8px!important}.me-2{margin-right:8px!important}.mx-2{margin-inline:8px!important}.my-2{margin-block:8px!important}
.m-3{margin:16px!important}.mt-3{margin-top:16px!important}.mb-3{margin-bottom:16px!important}.ms-3{margin-left:16px!important}.me-3{margin-right:16px!important}.mx-3{margin-inline:16px!important}.my-3{margin-block:16px!important}
.m-4{margin:24px!important}.mt-4{margin-top:24px!important}.mb-4{margin-bottom:24px!important}.ms-4{margin-left:24px!important}.me-4{margin-right:24px!important}.mx-4{margin-inline:24px!important}.my-4{margin-block:24px!important}
.m-5{margin:48px!important}.mt-5{margin-top:48px!important}.mb-5{margin-bottom:48px!important}.ms-5{margin-left:48px!important}.me-5{margin-right:48px!important}.mx-5{margin-inline:48px!important}.my-5{margin-block:48px!important}
.p-0{padding:0px!important}.pt-0{padding-top:0px!important}.pb-0{padding-bottom:0px!important}.ps-0{padding-left:0px!important}.pe-0{padding-right:0px!important}.px-0{padding-inline:0px!important}.py-0{padding-block:0px!important}
.p-1{padding:4px!important}.pt-1{padding-top:4px!important}.pb-1{padding-bottom:4px!important}.ps-1{padding-left:4px!important}.pe-1{padding-right:4px!important}.px-1{padding-inline:4px!important}.py-1{padding-block:4px!important}
.p-2{padding:8px!important}.pt-2{padding-top:8px!important}.pb-2{padding-bottom:8px!important}.ps-2{padding-left:8px!important}.pe-2{padding-right:8px!important}.px-2{padding-inline:8px!important}.py-2{padding-block:8px!important}
.p-3{padding:16px!important}.pt-3{padding-top:16px!important}.pb-3{padding-bottom:16px!important}.ps-3{padding-left:16px!important}.pe-3{padding-right:16px!important}.px-3{padding-inline:16px!important}.py-3{padding-block:16px!important}
.p-4{padding:24px!important}.pt-4{padding-top:24px!important}.pb-4{padding-bottom:24px!important}.ps-4{padding-left:24px!important}.pe-4{padding-right:24px!important}.px-4{padding-inline:24px!important}.py-4{padding-block:24px!important}
.p-5{padding:48px!important}.pt-5{padding-top:48px!important}.pb-5{padding-bottom:48px!important}.ps-5{padding-left:48px!important}.pe-5{padding-right:48px!important}.px-5{padding-inline:48px!important}.py-5{padding-block:48px!important}
/* ---- text / sizing / misc --------------------------------------------- */
.text-start{text-align:left!important}.text-end{text-align:right!important}.text-center{text-align:center!important}
.text-muted{color:var(--bc-text-muted)!important}.text-body{color:var(--bc-text-body)!important}.text-strong{color:var(--bc-text-strong)!important}
.text-success{color:var(--bc-success-fg)!important}.text-warning{color:var(--bc-warning-fg)!important}.text-danger{color:var(--bc-danger-fg)!important}.text-info{color:var(--bc-info-fg)!important}.text-primary{color:var(--bc-text-accent)!important}
.text-truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.text-nowrap{white-space:nowrap!important}.text-uppercase{text-transform:uppercase!important}.text-break{word-wrap:break-word!important}
.fw-normal{font-weight:400!important}.fw-medium{font-weight:500!important}.fw-semibold{font-weight:600!important}.fw-bold{font-weight:700!important}
.fs-5{font-size:var(--bc-fs-lg)!important}.fs-6{font-size:var(--bc-fs-base)!important}.small{font-size:var(--bc-fs-sm)!important}.font-monospace{font-family:var(--bc-font-mono)!important;font-size:.92em}
.w-100{width:100%!important}.w-auto{width:auto!important}.h-100{height:100%!important}.mw-100{max-width:100%!important}.min-vh-100{min-height:100vh!important}
.position-relative{position:relative!important}.position-absolute{position:absolute!important}.position-sticky{position:sticky!important}.top-0{top:0!important}.overflow-auto{overflow:auto!important}.overflow-hidden{overflow:hidden!important}
.border{border:1px solid var(--bc-border)!important}.border-top{border-top:1px solid var(--bc-border)!important}.border-bottom{border-bottom:1px solid var(--bc-border)!important}.border-0{border:0!important}.rounded{border-radius:var(--bc-r-card)!important}.rounded-circle{border-radius:50%!important}
.bg-surface{background:var(--bc-bg-surface)!important}.bg-sunken{background:var(--bc-bg-sunken)!important}.bg-app{background:var(--bc-bg-app)!important}
.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.vstack{display:flex;flex-direction:column;align-self:stretch}.hstack{display:flex;flex-direction:row;align-items:center;align-self:stretch}.vr{width:1px;align-self:stretch;background:var(--bc-border)}

/* ---- forms (aliases onto BCDF inputs) --------------------------------- */
.form-label{display:block;font-size:var(--bc-fs-sm);font-weight:500;color:var(--bc-text-strong);margin-bottom:6px}
.form-control,.form-select{display:block;width:100%;height:36px;padding:0 10px;font:inherit;font-size:var(--bc-fs-base);color:var(--bc-text-strong);background:var(--bc-bg-surface);border:1px solid var(--bc-border-strong);border-radius:var(--bc-r-ctrl);transition:border-color var(--bce-motion-fast),box-shadow var(--bce-motion-fast)}
textarea.form-control{height:auto;padding:8px 10px;min-height:72px}
.form-control:focus,.form-select:focus{outline:0;border-color:var(--bc-accent-500);box-shadow:var(--bc-focus-ring)}
.form-control::placeholder{color:var(--bc-text-subtle)}.form-control[readonly],.form-control:disabled{background:var(--bc-bg-sunken);color:var(--bc-text-muted)}
.form-select{padding-right:32px;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='none' stroke='%235B6675' stroke-width='1.6' stroke-linecap='round' d='m4 6 4 4 4-4'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;background-size:14px}
.form-control-sm,.form-select-sm{height:30px;font-size:var(--bc-fs-sm)}.form-control-lg{height:44px;font-size:var(--bc-fs-lg)}
.form-text{font-size:var(--bc-fs-xs);color:var(--bc-text-muted);margin-top:4px}
.form-check{display:flex;align-items:center;gap:8px;min-height:24px}.form-check-input{width:16px;height:16px;margin:0;accent-color:var(--bc-accent-600);flex:none}.form-check-label{font-size:var(--bc-fs-sm);color:var(--bc-text-body)}
.form-switch .form-check-input{width:32px;height:18px;appearance:none;border-radius:999px;background:var(--bc-grey-300);position:relative;transition:background var(--bce-motion-base)}
.form-switch .form-check-input::after{content:"";position:absolute;top:2px;left:2px;width:14px;height:14px;border-radius:50%;background:#fff;transition:transform var(--bce-motion-base)}
.form-switch .form-check-input:checked{background:var(--bc-accent-600)}.form-switch .form-check-input:checked::after{transform:translateX(14px)}
.is-invalid,.form-control.is-invalid{border-color:var(--bc-danger)!important}.invalid-feedback{display:block;font-size:var(--bc-fs-xs);color:var(--bc-danger-fg);margin-top:4px}.is-valid{border-color:var(--bc-success)!important}
.input-group{display:flex;align-items:stretch}.input-group>.form-control{flex:1 1 auto;min-width:0}
.input-group>.form-control:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.input-group>.form-control:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}
.input-group-text{display:flex;align-items:center;padding:0 10px;font-size:var(--bc-fs-sm);color:var(--bc-text-muted);background:var(--bc-bg-sunken);border:1px solid var(--bc-border-strong);border-radius:var(--bc-r-ctrl)}
.input-group-text:first-child{border-right:0;border-top-right-radius:0;border-bottom-right-radius:0}.input-group-text:last-child{border-left:0;border-top-left-radius:0;border-bottom-left-radius:0}

/* ---- buttons (aliases onto .bc-btn) ----------------------------------- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:36px;padding:0 14px;font:inherit;font-size:var(--bc-fs-sm);font-weight:500;border-radius:var(--bc-r-btn);border:1px solid transparent;cursor:pointer;white-space:nowrap;transition:background var(--bce-motion-fast),border-color var(--bce-motion-fast),box-shadow var(--bce-motion-fast)}
.btn:focus-visible{outline:0;box-shadow:var(--bc-focus-ring)}.btn:disabled,.btn.disabled{opacity:.5;pointer-events:none}
.btn-primary{background:var(--bc-accent-600);color:#fff}.btn-primary:hover{background:var(--bc-accent-700)}
.btn-secondary,.btn-outline-secondary{background:var(--bc-bg-surface);color:var(--bc-text-strong);border-color:var(--bc-border-strong)}.btn-secondary:hover,.btn-outline-secondary:hover{background:var(--bc-bg-sunken)}
.btn-dark{background:var(--bc-brand-600);color:#fff}.btn-dark:hover{background:var(--bc-brand-500)}
.btn-success{background:var(--bc-success-fg);color:#fff}.btn-danger{background:var(--bc-danger-fg);color:#fff}.btn-outline-danger{background:transparent;color:var(--bc-danger-fg);border-color:var(--bc-danger)}.btn-outline-danger:hover{background:var(--bc-danger-bg)}
.btn-link{background:transparent;color:var(--bc-text-accent);padding-inline:6px}.btn-link:hover{text-decoration:underline}.btn-ghost{background:transparent;color:var(--bc-text-body)}.btn-ghost:hover{background:var(--bc-bg-sunken)}
.btn-sm{height:30px;padding:0 10px;font-size:var(--bc-fs-xs)}.btn-lg{height:44px;padding:0 20px;font-size:var(--bc-fs-base)}.btn-icon{width:32px;height:32px;padding:0}.btn-icon.btn-sm{width:28px;height:28px}
.btn .bc-i{width:16px;height:16px}.btn-group{display:inline-flex}.btn-group>.btn:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0;margin-left:-1px}.btn-group>.btn:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}

/* ---- tables (aliases onto .bce-table rules) --------------------------- */
.table{width:100%;border-collapse:collapse;font-size:var(--bc-fs-sm)}
.table th{font-size:var(--bc-fs-2xs);font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--bc-text-muted);background:var(--bc-bg-sunken);padding:0 var(--bce-cell-px);height:36px;text-align:left;border-bottom:1px solid var(--bc-border);white-space:nowrap}
.table td{padding:0 var(--bce-cell-px);height:var(--bce-row-h);border-bottom:1px solid var(--bc-border-subtle);color:var(--bc-text-body);vertical-align:middle}
.table-sm td{height:var(--bce-row-h-compact)}.table-hover tbody tr:hover td{background:var(--bc-accent-50)}
.table .num,.table .text-end{text-align:right;font-variant-numeric:tabular-nums}

/* ---- badges / alerts / misc aliases ----------------------------------- */
.badge{display:inline-flex;align-items:center;gap:5px;padding:2px 8px;border-radius:var(--bc-r-sm);font-size:var(--bc-fs-2xs);font-weight:600;line-height:1.5;white-space:nowrap}
.alert{display:flex;gap:10px;padding:10px 12px;border-radius:var(--bc-r-ctrl);border:1px solid transparent;font-size:var(--bc-fs-sm)}
.alert-info{background:var(--bc-info-bg);color:var(--bc-info-fg)}.alert-success{background:var(--bc-success-bg);color:var(--bc-success-fg)}.alert-warning{background:var(--bc-warning-bg);color:var(--bc-warning-fg)}.alert-danger{background:var(--bc-danger-bg);color:var(--bc-danger-fg)}
.card{background:var(--bc-bg-surface);border:1px solid var(--bc-border);border-radius:var(--bc-r-card)}.card-body{padding:16px}.card-header{padding:12px 16px;border-bottom:1px solid var(--bc-border)}.card-footer{padding:12px 16px;border-top:1px solid var(--bc-border)}
.list-unstyled{list-style:none;padding:0;margin:0}.lh-1{line-height:1}.lh-sm{line-height:1.3}
