Flexbox, Grid, selectors, and core properties.
:is() / :where():is(h1,h2,h3) { margin-top: 1.5rem; }:has().card:has(img) { padding: 0; } /* cards with images */:not(:last-child)li:not(:first-child):not(:last-child) { border-top: 1px solid; }:nth-child(An+B of S)li:nth-child(2n of .active) { color: red; }Specificity: 0-0-1-0#main .card span /* 0-1-1-1 */ beats .card span /* 0-0-1-1 */:focus-visiblebutton:focus-visible { outline: 3px solid blue; }Attribute selectorsa[href^="https"] { color: green; } a[href$=".pdf"]::after { content: " (PDF)"; }display: flex.container { display: flex; gap: 1rem; }flex-direction.sidebar { flex-direction: column; }justify-content.nav { justify-content: space-between; }align-items / align-self.card { align-items: center; } .card__badge { align-self: flex-start; }flex: grow shrink basis.col { flex: 1 1 0%; } .sidebar { flex: 0 0 250px; }flex-wrap / flex-flow.card-grid { flex-flow: row wrap; gap: 1rem; }order.featured { order: -1; } /* shows first visually */gap (flex-gap).toolbar { display:flex; gap: 0.5rem 1rem; /* row-gap col-gap */ }grid-template-columns.grid { grid-template-columns: repeat(auto-fill, minmax(250px, 1fr)); }grid-template-areasgrid-template-areas: "header header" "nav main" "footer footer";grid-column / grid-row.hero { grid-column: 1 / -1; grid-row: span 2; }subgrid.card { display: grid; grid-row: span 3; grid-template-rows: subgrid; }place-items / place-content.modal { display:grid; place-items: center; }minmax(min, max)grid-template-columns: minmax(200px, 1fr) minmax(0, 3fr);auto-fill vs auto-fitrepeat(auto-fit, minmax(250px,1fr)) /* collapses incomplete rows */oklch() / oklab()color: oklch(70% 0.15 145); /* lightness chroma hue */color-mix()background: color-mix(in oklch, blue 30%, white);CSS custom properties (--var):root { --primary: #6366f1; } .btn { color: var(--primary, blue); }linear-gradient / conic-gradientbackground: conic-gradient(red 40%, blue 40% 70%, green 70%);clamp(min, val, max)font-size: clamp(1rem, 2.5vw, 2rem);container queries @container.parent { container-type: inline-size; } @container (min-width: 400px) { .child { ... } }dvh / svh / lvh units.hero { min-height: 100svh; /* safe, excludes browser UI */ }@layer@layer base, components, utilities; @layer utilities { .mt-4 { margin-top: 1rem; } }@keyframes name@keyframes slide-in { from { transform: translateX(-100%); } to { transform: none; } }animation shorthandanimation: slide-in 0.3s ease-out both;transition shorthandtransition: transform 0.2s ease, opacity 0.2s ease;transform functionstransform: translateY(-4px) scale(1.02); /* card hover lift */will-change.modal { will-change: transform, opacity; } /* use sparingly! */@starting-style@starting-style { .drawer { transform: translateX(100%); } }animation-timeline: scroll().progress { animation: grow linear; animation-timeline: scroll(root); }position: sticky.nav { position: sticky; top: 0; z-index: 100; }aspect-ratio.video { aspect-ratio: 16/9; width: 100%; }object-fit / object-positionimg { object-fit: cover; object-position: top center; }margin: auto (centering).container { max-width: 1200px; margin-inline: auto; }logical properties.card { padding-inline: 1.5rem; margin-block: 1rem; }scroll-snap.slides { scroll-snap-type: x mandatory; } .slide { scroll-snap-align: start; }overscroll-behavior.modal { overscroll-behavior: contain; }CSS nesting.card { color: black; &:hover { color: blue; } & .title { font-size: 1.5rem; } }