:root {
  /* 基础颜色 */
  --color-primary: #735660;
  --color-warning: #f3f0eb;
  --color-dark: #333333;
  --color-offwhite: #f6f6f4;
}

/* 按钮样式 */
.btn-primary {
  background-color: var(--color-primary);
  border-color: var(--color-primary);
  color: #ffffff;
}

.btn-outline-primary {
  color: var(--color-primary);
  border-color: var(--color-primary);
  background-color: transparent;
}

.btn-primary:hover,
.btn-primary:focus,
.btn-primary:active,
.btn-outline-primary:hover,
.btn-outline-primary:focus,
.btn-outline-primary:active {
  background-color: var(--color-primary) !important;
  border-color: var(--color-primary) !important;
  color: #ffffff !important;
  box-shadow: none !important;
  transform: none !important;
}

.btn-warning {
  background-color: var(--color-warning);
  border-color: var(--color-warning);
  color: var(--color-primary);
}

.btn-outline-warning {
  color: var(--color-warning);
  border-color: var(--color-warning);
  background-color: transparent;
}

.btn-warning:hover,
.btn-warning:focus,
.btn-warning:active,
.btn-outline-warning:hover,
.btn-outline-warning:focus,
.btn-outline-warning:active {
  background-color: var(--color-warning) !important;
  border-color: var(--color-warning) !important;
  color: var(--color-primary) !important;
  box-shadow: none !important;
  transform: none !important;
}

/* 文字颜色 */
.text-primary { color: var(--color-primary) !important; }
.text-dark { color: var(--color-dark) !important; }

/* 背景颜色 */
.bg-primary { background-color: var(--color-primary) !important; }
.bg-warning { background-color: var(--color-warning) !important; }
.bg-offwhite { background-color: var(--color-offwhite) !important; }

/* 边框颜色 */
.border-primary {border-color: var(--color-primary) !important;}

/* 链接样式 */
a { color: inherit; }
a:hover { color: var(--color-primary);text-decoration: none;}

.banner { height: 400px; }
@media (min-width: 1200px) {
	.banner { height: 600px; }
}

/* 实用工具类 */
.d-webkit {display: -webkit-box !important;overflow: hidden;text-overflow: ellipsis;-webkit-box-orient: vertical;}	/* 配合-webkit-line-clamp: 3;使用，控制文本在第三行后省略文本  */

.article-body p, .article-body li { font-size: 1.25rem;font-weight: 400;line-height: 1.75;}

/* 表单控件焦点样式 */
.form-control:focus,
.form-select:focus {
  border-color: var(--color-primary);
  box-shadow: 0 0 0 0.2rem rgba(115, 86, 96, 0.25);
}

.form-control::placeholder {
	font-size: 0.9rem;
}

.custom-control-input:focus ~ .custom-control-label::before {
	box-shadow: none;
	border-color: #adb5bd !important;
}
.custom-control-input:checked ~ .custom-control-label::before {
  border-color: var(--color-primary) !important;
  background-color: var(--color-primary) !important;
  box-shadow: 0 0 0 0.2rem rgba(115, 86, 96, 0.25) !important;
}

.review-rating[type="range"]::-webkit-slider-runnable-track {
	width: 100%;height: 100%;background: var(--warning);
	-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='currentColor' viewBox='0 0 16 16'%3E%3Cpath d='M3.612 15.443c-.386.198-.824-.149-.746-.592l.83-4.73L.173 6.765c-.329-.314-.158-.888.283-.95l4.898-.696L7.538.792c.197-.39.73-.39.927 0l2.184 4.327 4.898.696c.441.062.612.636.283.95l-3.523 3.356.83 4.73c.078.443-.36.79-.746.592L8 13.187l-4.389 2.256z'/%3E%3C/svg%3E");
	-webkit-mask-size: 2rem 2rem;-webkit-mask-repeat: space;-webkit-mask-position: 0 center;
}
.review-rating[type="range"]::-moz-range-track {
	width: 100%;height: 100%;background: var(--warning);
}
.review-rating[type="range"]::-moz-range-progress {
	height: 100%;background: #e9ecef;
}
.review-rating[type="range"]::-webkit-slider-thumb {
	-webkit-appearance: none;width: 0;height: 100%;box-shadow: 1000px 0 0 1000px #e9ecef;
}
.review-rating[type="range"]::-moz-range-thumb {
	width: 0;height: 100%;border: none;background: transparent;
}

.comment-rating[type="range"]::-webkit-slider-runnable-track {
	width: 100%;height: 100%;background: var(--warning);
	-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='currentColor' viewBox='0 0 16 16'%3E%3Cpath d='M3.612 15.443c-.386.198-.824-.149-.746-.592l.83-4.73L.173 6.765c-.329-.314-.158-.888.283-.95l4.898-.696L7.538.792c.197-.39.73-.39.927 0l2.184 4.327 4.898.696c.441.062.612.636.283.95l-3.523 3.356.83 4.73c.078.443-.36.79-.746.592L8 13.187l-4.389 2.256z'/%3E%3C/svg%3E");
	-webkit-mask-size: 1.25rem 1.25rem;-webkit-mask-repeat: space;-webkit-mask-position: 0 center;
}
.comment-rating[type="range"]::-moz-range-track {
	width: 100%;height: 100%;background: var(--warning);
}
.comment-rating[type="range"]::-moz-range-progress {
	height: 100%;background: #e9ecef;
}
.comment-rating[type="range"]::-webkit-slider-thumb {
	-webkit-appearance: none;width: 0;height: 100%;box-shadow: 1000px 0 0 1000px #e9ecef;
}
.comment-rating[type="range"]::-moz-range-thumb {
	width: 0;height: 100%;border: none;background: transparent;
}