
/* === Основные свойства Flexbox === */
.flex { display: flex; }

/* === Flex Flow (Направление + Wrap) === */
.ffrn { flex-flow: row nowrap; }
.ffrw { flex-flow: row wrap; }
.ffcn { flex-flow: column nowrap; }
.ffcw { flex-flow: column wrap; }

/* === Justify Content (Выравнивание по главной оси) === */
.jcfs { justify-content: flex-start; }
.jcc  { justify-content: center; }
.jcfe { justify-content: flex-end; }
.jcsb { justify-content: space-between; }
.jcsa { justify-content: space-around; }
.jcse { justify-content: space-evenly; }

/* === Align Items (Выравнивание по поперечной оси) === */
.aifs { align-items: flex-start; }
.aic  { align-items: center; }
.aife { align-items: flex-end; }
.aist { align-items: stretch; }
.aib  { align-items: baseline; }

/* === Align Content (Выравнивание нескольких строк) === */
.acfs { align-content: flex-start; }
.acc  { align-content: center; }
.acfe { align-content: flex-end; }
.acsb { align-content: space-between; }
.acsa { align-content: space-around; }
.acse { align-content: space-evenly; }

/* === Align Self (Индивидуальное выравнивание элемента) === */
.asfs { align-self: flex-start; }
.asc  { align-self: center; }
.asfe { align-self: flex-end; }
.asst { align-self: stretch; }
.asb  { align-self: baseline; }

/* === Order (Порядок элементов) === */
.ord-1 { order: -1; }
.ord0  { order: 0; }
.ord1  { order: 1; }
.ord2  { order: 2; }

/* === Flex Grow (Рост элементов) === */
.fg0 { flex-grow: 0; }
.fg1 { flex-grow: 1; }
.fg2 { flex-grow: 2; }

/* === Flex Shrink (Сжатие элементов) === */
.fs0 { flex-shrink: 0; }
.fs1 { flex-shrink: 1; }
.fs2 { flex-shrink: 2; }

/* === Flex Basis (Базовый размер элементов) === */
.fb-auto { flex-basis: auto; }
.fb0 { flex-basis: 0; }
.fb50 { flex-basis: 50%; }
.fb100 { flex-basis: 100%; }

