.hidden { display: none !important; }
.flex, .d-flex { display: flex; }
.fw, .fw-wrap { flex-wrap: wrap; }
.ac { display: flex; justify-content: center; align-items: center; }
.fr, .frow { display: flex; flex-direction: row; }
.fc, .fcol { display: flex; flex-direction: column; }
.fr.center { justify-content: center; }
.fr.vertCenter { align-items: center; }
.fr.vend { align-items: flex-end; }
.fc.center { align-items: center; }
.fc.vertCenter { justify-content: center; }
.fc.vend { justify-content: flex-end; }
.fe { display: flex; justify-content: flex-end; align-items: flex-end; }
.fns { flex-shrink: 0; }
.g40 { gap: 40px; }
.g30 { gap: 30px; }
.g20 { gap: 20px; }
.g10, .gap10 { gap: 10px; }
.g5, .gap5 { gap: 5px; }
.fb100 { flex-basis: 100%; }
.fb50 { flex-basis: 50%; }
.fb50p10 { flex-basis: calc(50% - 10px); }
.fb50p20 { flex-basis: calc(50% - 20px); }
.p10box { padding: 10px; box-sizing: border-box; }
.p5box { padding: 5px; box-sizing: border-box; }
.p10left { padding-left: 10px; box-sizing: border-box; }
.p5left { padding-left: 5px; box-sizing: border-box; }
.p10right { padding-right: 10px; box-sizing: border-box; }
.p5right { padding-right: 5px; box-sizing: border-box; }
.disabled { cursor: not-allowed !important; }
.fullyDisabled { pointer-events: none !important; background-color: #efefef !important; }
.spaceBetween { display: flex; flex-direction: row; justify-content: space-between; gap: 10px; }
.spaceBetweenVert { display: flex; flex-direction: column; justify-content: space-between; gap: 10px; }
.spaceAround { display: flex; flex-direction: row; justify-content: space-around; }
.spaceEvenly { display: flex; flex-direction: row; justify-content: space-evenly; }
.pullRight { flex: 1; display: flex; justify-content: flex-end; }
.fstart { display: flex; justify-content: flex-start; }
.fend { display: flex; justify-content: flex-end; }
.w10 { width: 10%; }
.w20 { width: 20%; }
.w30 { width: 30%; }
.w40 { width: 40%; }
.w50 { width: 50%; }
.w60 { width: 60%; }
.w70 { width: 70%; }
.w80 { width: 80%; }
.w90 { width: 90%; }
.w100 { width: 100%; }
.h100 { height: 100%; }
.maxWH { width: 100%; height: 100%; }
.scroll { max-height: 100%; overflow: auto; }
.scrollHover { max-height: 100%; overflow: hidden; }
@media (orientation: portrait) { .scrollHover { max-height: 100%; overflow: auto; } }
.scrollHover:hover { overflow: auto; scrollbar-width: thin; }
.noscroll { overflow: hidden; }
.f1 { flex: 1; }
.f1ns { flex: 1; overflow: hidden; }
.f2 { flex: 2; }
.f3 { flex: 3; }
.f4 { flex: 4; }
.f5 { flex: 5; }
.f6 { flex: 6; }
.f7 { flex: 7; }
.f8 { flex: 8; }
.f9 { flex: 9; }
.f10 { flex: 10; }
.f12 { flex: 12; }
.fg1 { flex-grow: 1; }
.textOverflow { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.pointer { cursor: pointer; }

.p5 { padding: 5px; }
.p10 { padding: 10px; }
.p15 { padding: 15px; }
.p20 { padding: 20px; }
.m2 { margin: 2px; }
.m5 { margin: 5px; }
.m10 { margin: 10px; }
.m15 { margin: 15px; }
.m20 { margin: 20px; }
.nobm { margin-bottom: 0px !important; }
.wsnw { white-space: nowrap; }
.mt10 { margin-top: 10px; }
.mb10 { margin-bottom: 10px; }
.ml10 { margin-left: 10px; }
.mr10 { margin-right: 10px; }
.mr5 { margin-right: 5px; }
.my10 { margin: 10px 0px; }
.my5 { margin: 5px 0px; }
.mx10 { margin: 0px 10px; }
.br10 { border-radius: 10px; }
.mt20 { margin-top: 20px; }
.mb20 { margin-bottom: 20px; }
.ml20 { margin-left: 20px; }
.mr20 { margin-right: 20px; }
.my20 { margin: 20px 0px; }
.mx20 { margin: 0px 20px; }
.br20 { border-radius: 20px; }
.pt10 { padding-top: 10px; }
.pb10 { padding-bottom: 10px; }
.pl10 { padding-left: 10px; }
.pr10 { padding-right: 10px; }
.pr5 { padding-right: 5px; }
.py10 { padding: 10px 0px; }
.py5 { padding: 5px 0px; }
.px10 { padding: 0px 10px; }
.pt20 { padding-top: 20px; }
.pb20 { padding-bottom: 20px; }
.pl20 { padding-left: 20px; }
.pr20 { padding-right: 20px; }
.py20 { padding: 20px 0px; }
.px20 { padding: 0px 20px; }
.bold { font-weight: bold; }
