/**
 * ButtonGroup 组件样式 - 100% 一比一复刻 MUI
 * 对应 MUI: packages/mui-material/src/ButtonGroup/ButtonGroup.js
 */

/* =============================================
   Root 基础样式
   ============================================= */
.MuiButtonGroup-root {
  display: inline-flex;
  border-radius: 4px;
}

/* =============================================
   变体
   ============================================= */
.MuiButtonGroup-contained {
  box-shadow: 0px 3px 1px -2px rgba(0,0,0,0.2), 0px 2px 2px 0px rgba(0,0,0,0.14), 0px 1px 5px 0px rgba(0,0,0,0.12);
}

.MuiButtonGroup-disableElevation {
  box-shadow: none;
}

/* =============================================
   布局
   ============================================= */
.MuiButtonGroup-fullWidth {
  width: 100%;
  display: flex;
}

.MuiButtonGroup-vertical {
  flex-direction: column;
}

/* =============================================
   按钮分组样式
   ============================================= */
.MuiButtonGroup-grouped {
  min-width: 64px;
}

.MuiButtonGroup-groupedHorizontal:not(:last-child) {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
  border-right: 1px solid transparent;
}

.MuiButtonGroup-groupedHorizontal:not(:first-child) {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
  border-left: 1px solid transparent;
}

.MuiButtonGroup-groupedVertical:not(:last-child) {
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
  border-bottom: 1px solid transparent;
}

.MuiButtonGroup-groupedVertical:not(:first-child) {
  border-top-left-radius: 0;
  border-top-right-radius: 0;
  border-top: 1px solid transparent;
}

/* =============================================
   Text 变体
   ============================================= */
.MuiButtonGroup-groupedText {
  border: 1px solid transparent;
}

.MuiButtonGroup-groupedTextHorizontal:not(:last-child) {
  border-right: 1px solid rgba(0, 0, 0, 0.23);
}

.MuiButtonGroup-groupedTextHorizontal:not(:first-child) {
  border-left: 1px solid rgba(0, 0, 0, 0.23);
}

.MuiButtonGroup-groupedTextVertical:not(:last-child) {
  border-bottom: 1px solid rgba(0, 0, 0, 0.23);
}

.MuiButtonGroup-groupedTextVertical:not(:first-child) {
  border-top: 1px solid rgba(0, 0, 0, 0.23);
}

/* =============================================
   Outlined 变体
   ============================================= */
.MuiButtonGroup-groupedOutlined {
  border: 1px solid rgba(0, 0, 0, 0.23);
}

.MuiButtonGroup-groupedOutlinedHorizontal:not(:last-child) {
  border-right: 1px solid transparent;
}

.MuiButtonGroup-groupedOutlinedHorizontal:not(:first-child) {
  border-left: 1px solid transparent;
}

.MuiButtonGroup-groupedOutlinedVertical:not(:last-child) {
  border-bottom: 1px solid transparent;
}

.MuiButtonGroup-groupedOutlinedVertical:not(:first-child) {
  border-top: 1px solid transparent;
}

/* =============================================
   Contained 变体
   ============================================= */
.MuiButtonGroup-groupedContained {
  border: 1px solid transparent;
  color: rgba(0, 0, 0, 0.87);
  box-shadow: none;
  background-color: #e0e0e0;
}

.MuiButtonGroup-groupedContainedHorizontal:not(:last-child) {
  border-right: 1px solid rgba(0, 0, 0, 0.23);
}

.MuiButtonGroup-groupedContainedHorizontal:not(:first-child) {
  border-left: 1px solid rgba(0, 0, 0, 0.23);
}

.MuiButtonGroup-groupedContainedVertical:not(:last-child) {
  border-bottom: 1px solid rgba(0, 0, 0, 0.23);
}

.MuiButtonGroup-groupedContainedVertical:not(:first-child) {
  border-top: 1px solid rgba(0, 0, 0, 0.23);
}

/* =============================================
   Contained 颜色变体
   ============================================= */
.MuiButtonGroup-groupedContainedPrimary {
  color: #fff;
  background-color: #1976d2;
}

.MuiButtonGroup-groupedContainedSecondary {
  color: #fff;
  background-color: #9c27b0;
}

.MuiButtonGroup-groupedContainedError {
  color: #fff;
  background-color: #d32f2f;
}

.MuiButtonGroup-groupedContainedInfo {
  color: #fff;
  background-color: #0288d1;
}

.MuiButtonGroup-groupedContainedSuccess {
  color: #fff;
  background-color: #2e7d32;
}

.MuiButtonGroup-groupedContainedWarning {
  color: #fff;
  background-color: #ed6c02;
}

/* =============================================
   首尾中间按钮
   ============================================= */
.MuiButtonGroup-firstButton {
  border-top-left-radius: 4px;
  border-bottom-left-radius: 4px;
}

.MuiButtonGroup-lastButton {
  border-top-right-radius: 4px;
  border-bottom-right-radius: 4px;
}

.MuiButtonGroup-middleButton {
  border-radius: 0;
}

/* =============================================
   禁用状态
   ============================================= */
.MuiButtonGroup-grouped.Mui-disabled {
  color: rgba(0, 0, 0, 0.26);
  background-color: rgba(0, 0, 0, 0.12);
  border-color: rgba(0, 0, 0, 0.12);
}
