/*
 * UniApp 通用基础样式类 (基于 rpx)
 * 命名规则:
 * [u][p|m]-[t|r|b|l|a|h|v]-[size] => padding/margin - top/right/bottom/left/all/horizontal/vertical - size(rpx)
 * 示例: p-t-5 => padding-top: 5rpx;
 */

/* === Padding Classes === */
.u-p-a-0 {
  padding: 0;
}
.u-p-a-5 {
  padding: 5rpx;
}
.u-p-a-10 {
  padding: 10rpx;
}
.u-p-a-15 {
  padding: 15rpx;
}
.u-p-a-20 {
  padding: 20rpx;
}
.u-p-a-30 {
  padding: 30rpx;
}
.p-a-40 {
  padding: 40rpx;
}
.p-a-50 {
  padding: 50rpx;
}

.p-t-0 {
  padding-top: 0;
}
.p-t-5 {
  padding-top: 5rpx;
}
.p-t-10 {
  padding-top: 10rpx;
}
.p-t-15 {
  padding-top: 15rpx;
}
.p-t-20 {
  padding-top: 20rpx;
}
.p-t-30 {
  padding-top: 30rpx;
}
.p-t-40 {
  padding-top: 40rpx;
}
.p-t-50 {
  padding-top: 50rpx;
}

.p-r-0 {
  padding-right: 0;
}
.p-r-5 {
  padding-right: 5rpx;
}
.p-r-10 {
  padding-right: 10rpx;
}
.p-r-15 {
  padding-right: 15rpx;
}
.p-r-20 {
  padding-right: 20rpx;
}
.p-r-30 {
  padding-right: 30rpx;
}
.p-r-40 {
  padding-right: 40rpx;
}
.p-r-50 {
  padding-right: 50rpx;
}

.p-b-0 {
  padding-bottom: 0;
}
.p-b-5 {
  padding-bottom: 5rpx;
}
.p-b-10 {
  padding-bottom: 10rpx;
}
.p-b-15 {
  padding-bottom: 15rpx;
}
.p-b-20 {
  padding-bottom: 20rpx;
}
.p-b-30 {
  padding-bottom: 30rpx;
}
.p-b-40 {
  padding-bottom: 40rpx;
}
.p-b-50 {
  padding-bottom: 50rpx;
}

.p-l-0 {
  padding-left: 0;
}
.p-l-5 {
  padding-left: 5rpx;
}
.p-l-10 {
  padding-left: 10rpx;
}
.p-l-15 {
  padding-left: 15rpx;
}
.p-l-20 {
  padding-left: 20rpx;
}
.p-l-30 {
  padding-left: 30rpx;
}
.p-l-40 {
  padding-left: 40rpx;
}
.p-l-50 {
  padding-left: 50rpx;
}

.p-h-0 {
  padding-left: 0;
  padding-right: 0;
}
.p-h-5 {
  padding-left: 5rpx;
  padding-right: 5rpx;
}
.p-h-10 {
  padding-left: 10rpx;
  padding-right: 10rpx;
}
.p-h-15 {
  padding-left: 15rpx;
  padding-right: 15rpx;
}
.p-h-20 {
  padding-left: 20rpx;
  padding-right: 20rpx;
}
.p-h-30 {
  padding-left: 30rpx;
  padding-right: 30rpx;
}
.p-h-40 {
  padding-left: 40rpx;
  padding-right: 40rpx;
}
.p-h-50 {
  padding-left: 50rpx;
  padding-right: 50rpx;
}

.p-v-0 {
  padding-top: 0;
  padding-bottom: 0;
}
.p-v-5 {
  padding-top: 5rpx;
  padding-bottom: 5rpx;
}
.p-v-10 {
  padding-top: 10rpx;
  padding-bottom: 10rpx;
}
.p-v-15 {
  padding-top: 15rpx;
  padding-bottom: 15rpx;
}
.p-v-20 {
  padding-top: 20rpx;
  padding-bottom: 20rpx;
}
.p-v-30 {
  padding-top: 30rpx;
  padding-bottom: 30rpx;
}
.p-v-40 {
  padding-top: 40rpx;
  padding-bottom: 40rpx;
}
.p-v-50 {
  padding-top: 50rpx;
  padding-bottom: 50rpx;
}

/* === Margin Classes === */
.m-a-0 {
  margin: 0;
}
.m-a-5 {
  margin: 5rpx;
}
.m-a-10 {
  margin: 10rpx;
}
.m-a-15 {
  margin: 15rpx;
}
.u-m-a-20 {
  margin: 20rpx;
}
.m-a-30 {
  margin: 30rpx;
}
.m-a-40 {
  margin: 40rpx;
}
.m-a-50 {
  margin: 50rpx;
}

.m-t-0 {
  margin-top: 0;
}
.m-t-5 {
  margin-top: 5rpx;
}
.m-t-10 {
  margin-top: 10rpx;
}
.m-t-15 {
  margin-top: 15rpx;
}
.u-m-t-20 {
  margin-top: 20rpx;
}
.u-m-t-30 {
  margin-top: 30rpx;
}
.m-t-40 {
  margin-top: 40rpx;
}
.m-t-50 {
  margin-top: 50rpx;
}

.m-r-0 {
  margin-right: 0;
}
.m-r-5 {
  margin-right: 5rpx;
}
.m-r-10 {
  margin-right: 10rpx;
}
.m-r-15 {
  margin-right: 15rpx;
}
.m-r-20 {
  margin-right: 20rpx;
}
.m-r-30 {
  margin-right: 30rpx;
}
.m-r-40 {
  margin-right: 40rpx;
}
.m-r-50 {
  margin-right: 50rpx;
}

.m-b-0 {
  margin-bottom: 0;
}

.m-b-5 {
  margin-bottom: 5rpx;
}
.m-b_10 {
  margin-bottom: 10rpx;
}
.u-m-b-15 {
  margin-bottom: 15rpx;
}
.m-b-20 {
  margin-bottom: 20rpx;
}
.m-b-30 {
  margin-bottom: 30rpx;
}
.m-b-40 {
  margin-bottom: 40rpx;
}
.m-b-50 {
  margin-bottom: 50rpx;
}

.m-l-0 {
  margin-left: 0;
}
.m-l-5 {
  margin-left: 5rpx;
}
.m-l-10 {
  margin-left: 10rpx;
}
.m-l-15 {
  margin-left: 15rpx;
}
.m-l-20 {
  margin-left: 20rpx;
}
.m-l-30 {
  margin-left: 30rpx;
}
.m-l-40 {
  margin-left: 40rpx;
}
.m-l-50 {
  margin-left: 50rpx;
}

.m-h-0 {
  margin-left: 0;
  margin-right: 0;
}
.m-h-5 {
  margin-left: 5rpx;
  margin-right: 5rpx;
}
.m-h-10 {
  margin-left: 10rpx;
  margin-right: 10rpx;
}
.m-h-15 {
  margin-left: 15rpx;
  margin-right: 15rpx;
}
.m-h-20 {
  margin-left: 20rpx;
  margin-right: 20rpx;
}
.m-h-30 {
  margin-left: 30rpx;
  margin-right: 30rpx;
}
.m-h-40 {
  margin-left: 40rpx;
  margin-right: 40rpx;
}
.m-h-50 {
  margin-left: 50rpx;
  margin-right: 50rpx;
}

.m-v-0 {
  margin-top: 0;
  margin-bottom: 0;
}
.m-v-5 {
  margin-top: 5rpx;
  margin-bottom: 5rpx;
}
.m-v-10 {
  margin-top: 10rpx;
  margin-bottom: 10rpx;
}
.m-v-15 {
  margin-top: 15rpx;
  margin-bottom: 15rpx;
}
.m-v-20 {
  margin-top: 20rpx;
  margin-bottom: 20rpx;
}
.m-v-30 {
  margin-top: 30rpx;
  margin-bottom: 30rpx;
}
.m-v-40 {
  margin-top: 40rpx;
  margin-bottom: 40rpx;
}
.m-v-50 {
  margin-top: 50rpx;
  margin-bottom: 50rpx;
}

/* === 辅助类：清除默认边距 === */
.no-margin {
  margin: 0 !important;
}
.no-padding {
  padding: 0 !important;
}

/* === 可选：文本对齐 === */
.text-left {
  text-align: left;
}
.text-center {
  text-align: center;
}
.text-right {
  text-align: right;
}

/* === 可选：显示方式 === */
.d-block {
  display: block;
}
.d-inline {
  display: inline;
}
.d-inline-block {
  display: inline-block;
}
.d-flex {
  display: flex;
}
.d-none {
  display: none;
}

/* === 可选：Flex 布局辅助 === */
.flex-row {
  display: flex;
  flex-direction: row;
}
.flex-column {
  display: flex;
  flex-direction: column;
}
.justify-start {
  justify-content: flex-start;
}
.justify-end {
  justify-content: flex-end;
}
.justify-center {
  justify-content: center;
}
.justify-between {
  justify-content: space-between;
}
.align-center {
  align-items: center;
}
.align-stretch {
  align-items: stretch;
}
.gap-5 {
  gap: 5;
}
.gap-10 {
  gap: 10;
}
.gap-20 {
  gap: 20;
}
.gap-30 {
  gap: 30;
}
.gap-40 {
  gap: 40;
}
.gap-50 {
  gap: 50;
}

/* === 可选：字体大小 (根据项目需求调整) === */
.fz-12 {
  font-size: 12rpx;
}
.fz-14 {
  font-size: 14rpx;
}
.fz-16 {
  font-size: 16rpx;
}
.fz-18 {
  font-size: 18rpx;
}
.fz-20 {
  font-size: 20rpx;
}
.fz-24 {
  font-size: 24rpx;
}
.fz-26 {
  font-size: 26rpx;
}
.fz-28 {
  font-size: 28rpx;
}
.fz-30 {
  font-size: 30rpx;
}
.fz-32 {
  font-size: 32rpx;
}
.fz-36 {
  font-size: 36rpx;
}

/* === 可选：字体粗细 === */
.fw-400 {
  font-weight: 400;
}
.fw-500 {
  font-weight: 500;
}
.fw-600 {
  font-weight: 600;
}
.fw-700 {
  font-weight: 700;
}
.fw-800 {
  font-weight: 800;
}
.fw-900 {
  font-weight: 900;
}

/* === 可选：颜色类 (可结合项目主题色扩展) === */
.text-primary {
  color: #007aff;
} /* 示例：uni-app 默认主色 */
.text-success {
  color: #4cd964;
}
.text-warning {
  color: #f0ad4e;
}
.text-danger {
  color: #dd524d;
}
.text-gray {
  color: #808080;
}
.text-black {
  color: #000000;
}
.text-white {
  color: #ffffff;
}

.bg-primary {
  background-color: #007aff;
}
.bg-success {
  background-color: #4cd964;
}
.bg-warning {
  background-color: #f0ad4e;
}
.bg-danger {
  background-color: #dd524d;
}
.bg-gray {
  background-color: #f8f8f8;
}
.bg-white {
  background-color: #ffffff;
}

/* === 底部线条 === */
.border-bottom {
  border-bottom: 1rpx solid #e0e0e0;
}
