/* Shared Bootstrap controls: compact selection controls, comfortable text fields. */
:root{--bs-border-radius:.625rem;--bs-body-font-family:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;--muted:#526174}
body{font-family:var(--bs-body-font-family);font-size:16px;line-height:1.6;color:#202e40;background:#f5f7fb}
h1{font-size:clamp(1.5rem,2.4vw,1.875rem);line-height:1.25;letter-spacing:-.025em}
h2{font-size:1.25rem;line-height:1.35;letter-spacing:-.015em}
label{font-size:.9375rem;font-weight:600;line-height:1.5;color:#36465b}
.form-control,.form-select{font-family:inherit;font-size:1rem;line-height:1.5;min-height:44px;border:1px solid #aebccb;border-radius:.625rem;color:#243449;background-color:#fff;padding:.625rem .75rem;box-shadow:none}
.form-select{padding-right:2.5rem}
.form-control:focus,.form-select:focus{border-color:#4c78ac;box-shadow:0 0 0 .2rem #3269ac22}
.form-control::placeholder{color:#667587;opacity:1}
.form-control:disabled,.form-select:disabled{background-color:#edf1f5;color:#5a687a}
textarea.form-control{min-height:104px}
.btn{border-radius:.625rem;font-size:.9375rem;line-height:1.5;min-height:44px;padding:.625rem 1rem}
.btn-sm{font-size:.875rem;padding:.5rem .75rem}
input[type="checkbox"],input[type="radio"],.action-row input[type="checkbox"],.action-row input[type="radio"],.selection-list input[type="checkbox"],.check-label input[type="checkbox"],.check-label input[type="radio"]{display:inline-block;width:18px;height:18px;min-width:18px;max-width:18px;min-height:18px;max-height:18px;padding:0;margin:0;flex:0 0 18px;vertical-align:middle;cursor:pointer;border:1px solid #7c8ea3;accent-color:var(--qbotix-primary-dark)}
input[type="checkbox"]{border-radius:5px}
input[type="radio"]{border-radius:50%}
.form-check-input:checked{background-color:var(--qbotix-primary-dark);border-color:var(--qbotix-primary-dark)}
.form-check-input:focus{border-color:#4c78ac;box-shadow:0 0 0 .2rem #3269ac22}
.form-check-input:disabled{cursor:not-allowed;opacity:.55}
.check-label,.selection-list label,label:has(>input[type="checkbox"]),label:has(>input[type="radio"]){display:flex;align-items:flex-start;gap:10px;min-height:44px;font-size:.9375rem;line-height:1.6;font-weight:400;padding-top:8px;padding-bottom:8px}
label>input[type="checkbox"],label>input[type="radio"]{margin-top:3px!important}
.bulk-options label:has(>input[type="checkbox"]),.bulk-options label:has(>input[type="radio"]){min-width:0}
.page-heading{gap:16px}.page-heading>div{min-width:0;flex:1 1 280px}
th{font-size:.875rem;letter-spacing:0;color:#42546a}
td{font-size:.9375rem;line-height:1.6}
th:has(input[data-select-all]),th.selection-column{width:76px}
.selection-control{display:flex;justify-content:center;align-items:center!important;width:44px;min-height:44px;margin:0;padding:0!important;cursor:pointer}
.selection-control>input[type="checkbox"]{margin:0!important}
.table-responsive td:has(>input[type="checkbox"]){vertical-align:top}
.eyebrow{font-size:.75rem;letter-spacing:.065em}.back-link,.tabs a,.topbar,.safety-bar,footer{font-size:.875rem}
.trial-card p,.trial-card-footer,.trial-counts,.trace p,.evidence,.quality-row,.integration-status{font-size:.9375rem}
.trial-meta>span,.rule-row summary,.trace summary,.history-row summary,.timeline-event p{font-size:.875rem}
.trial-meta strong,.task-item h3,.rule-row strong{font-size:1rem}
.small-text,small,.tag,.status-badge{line-height:1.5}
.panel,.metric,.case-card{border-radius:.75rem}
.dashboard-filters label{min-width:0}.dashboard-filters{gap:16px}
@media(max-width:1100px){.table-responsive td::before{font-size:.8125rem;letter-spacing:0;color:#526174}.table-responsive tbody tr{gap:12px 20px}.table-responsive td:has(>input[type="checkbox"]){grid-column:1/-1}.table-responsive td:has(>input[type="checkbox"])::before{display:inline-block;margin:0 10px 0 0}}
@media(max-width:680px){
  .content{padding:20px 16px}.page-heading>div{flex-basis:auto}.page-heading{align-items:stretch}
  .dashboard-filters label{flex:1 1 100%}.dashboard-filters .btn{width:100%}
  .bulk-options{gap:12px}.bulk-options>label,.bulk-options>.btn{flex:1 1 100%;min-width:0}
  .action-row>label{width:100%;min-width:0}.action-row>label>select{width:100%}
  .selection-list label{overflow-wrap:anywhere}.panel.p-4{padding:18px!important}
  .sidebar .brand>span{font-size:21px}.brand-sub{font-size:11px}.nav-item{line-height:1.4}
  .panel table:not(.table-responsive table){font-size:.875rem}
  .table-responsive tbody tr{padding:14px}.table-responsive td{padding:4px 0}
  .metric>div{font-size:.875rem}.metric strong{font-size:2rem}
}
@media(max-width:360px){.metrics-grid{grid-template-columns:minmax(0,1fr)}.sidebar nav{grid-template-columns:minmax(0,1fr)}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
