/* UTILITY LAYER — layout semantics only. NO measurements live here.
   Every number comes from the geometry layer. Hand-written, stable, small. */

.flex{display:flex}
.flex-col{flex-direction:column}
.flex-row{flex-direction:row}
.inline-flex{display:inline-flex}
.grid{display:grid}
.block{display:block}
.inline-block{display:inline-block}
.hidden{display:none}

.absolute{position:absolute}
.relative{position:relative}
.fixed{position:fixed}
.sticky{position:sticky}
.inset-0{inset:0}

/* Figma auto-layout alignment. Physical values only — these must NOT flip
   under dir="rtl" (see references/rtl.md). */
.items-start{align-items:flex-start}
.items-center{align-items:center}
.items-end{align-items:flex-end}
.items-stretch{align-items:stretch}
.items-baseline{align-items:baseline}
.justify-start{justify-content:flex-start}
.justify-center{justify-content:center}
.justify-end{justify-content:flex-end}
.justify-between{justify-content:space-between}
.justify-around{justify-content:space-around}
.content-start{align-content:flex-start}
.content-center{align-content:center}
.content-end{align-content:flex-end}
.content-stretch{align-content:stretch}
.self-start{align-self:flex-start}
.self-center{align-self:center}
.self-end{align-self:flex-end}
.self-stretch{align-self:stretch}

.shrink-0{flex-shrink:0}
.grow{flex-grow:1}
.basis-0{flex-basis:0}
.min-w-0{min-width:0}
.min-h-0{min-height:0}
.max-w-none{max-width:none}
.w-full{width:100%}
.h-full{height:100%}
.size-full{width:100%;height:100%}

.overflow-clip{overflow:clip}
.overflow-hidden{overflow:hidden}
.object-cover{object-fit:cover}
.object-contain{object-fit:contain}
.pointer-events-none{pointer-events:none}
.whitespace-nowrap{white-space:nowrap}
.text-nowrap{text-wrap:nowrap}
.break-words{word-break:break-word}

.text-left{text-align:left}
.text-center{text-align:center}
.text-right{text-align:right}
.not-italic{font-style:normal}
.italic{font-style:italic}
.uppercase{text-transform:uppercase}
.capitalize{text-transform:capitalize}
.rounded-full{border-radius:9999px}
