Grid system, utilities, and component classes.
.container / .container-fluid<div class="container-xl px-4">.row / .col-*<div class="row g-3"><div class="col-12 col-md-6 col-xl-4">.offset-md-3<div class="col-md-6 offset-md-3"> <!-- centered -->.order-* / .order-md-*<div class="col order-last order-md-first">Breakpoints: sm md lg xl xxld-none d-md-block // hidden on mobile, visible on desktop.row-cols-* / .row-cols-md-*<div class="row row-cols-1 row-cols-md-3 g-4">d-{value} / d-{bp}-{value}<span class="d-block d-lg-inline">p-* / m-* / px-* / py-*<div class="p-3 px-lg-5 mt-auto mb-2">gap-* / row-gap-* / column-gap-*<div class="d-flex gap-2 flex-wrap">text-{color} / bg-{color}<div class="bg-primary bg-opacity-10 text-primary">fw-bold / fst-italic / text-*<p class="fw-semibold fs-5 text-end text-truncate">border / border-{color} / rounded-*<div class="border border-2 border-primary rounded-3">shadow / shadow-sm / shadow-lg<div class="card shadow-lg">position-{relative|absolute|fixed|sticky}<span class="position-absolute top-0 start-100 translate-middle badge">.btn / .btn-{variant}<button class="btn btn-outline-primary btn-lg d-grid">Full width</button>.card / .card-body<div class="card h-100"><img class="card-img-top"><div class="card-body"><h5 class="card-title">.navbar / data-bs-toggle<nav class="navbar navbar-expand-lg navbar-dark bg-dark sticky-top">.modal / data-bs-target<button data-bs-toggle="modal" data-bs-target="#myModal">.accordion / .collapse<div class="accordion-item"><h2 class="accordion-header"><button class="accordion-button collapsed">.toast / .offcanvas<div class="offcanvas offcanvas-start" data-bs-scroll="true">.badge / .alert / .progress<div class="progress"><div class="progress-bar bg-success" style="width:75%" role="progressbar">.spinner-border / .spinner-grow<div class="spinner-border text-primary" role="status"><span class="visually-hidden">Loading...</span></div>.form-control / .form-select<input class="form-control form-control-lg" type="email" placeholder="Email">.form-check / .form-switch<div class="form-check form-switch"><input class="form-check-input" type="checkbox" role="switch">.input-group<div class="input-group"><span class="input-group-text">@</span><input class="form-control"><button class="btn btn-primary">.was-validated / .is-invalid<input class="form-control is-invalid"><div class="invalid-feedback">Required.</div>.floating-label<div class="form-floating"><input class="form-control" id="e" placeholder=" "><label for="e">Email</label></div>d-flex / flex-{direction}<div class="d-flex flex-column flex-md-row align-items-center">justify-content-* / align-items-*<div class="d-flex justify-content-between align-items-center">flex-fill / flex-grow-1<div class="d-flex"><div class="flex-grow-1">Main content</div><div>Sidebar</div></div>.visually-hidden / .sr-only<button><i class="fas fa-close"></i><span class="visually-hidden">Close modal</span></button>.ratio / .img-fluid<div class="ratio ratio-16x9"><iframe src="youtube..."></iframe></div>Bootstrap JS: bootstrap.Modalconst modal = new bootstrap.Modal('#myModal'); modal.show(); modal.hide();CSS Variables override.btn-primary { --bs-btn-padding-x: 2rem; --bs-btn-border-radius: 50px; }