/*
 * 未払い請求アラート（template-parts/unpaid-alert.php）
 *  design-system.md 準拠（白黒のみ・font 400/500・余白4の倍数・min 12px）
 *  Figma 3565:41040 の赤背景はモノクロに丸めた（#1A1A1A 黒地 + 白文字）。
 */

.unpaid-alert {
  display: flex;
  align-items: center;
  gap: 16px;
  padding: 16px;
  background: #1A1A1A;
  color: #FFFFFF;
  text-decoration: none;
  transition: background-color 0.15s ease;
}
.unpaid-alert:hover,
.unpaid-alert:focus-visible {
  background: #000000;
  outline: none;
}

/* 通常設置時はマイページ系の section と同じく左右に余白を取る */
.mypage .unpaid-alert,
.mypage-payment .unpaid-alert {
  margin: 0 16px;
  border-radius: 8px;
}

/* ドロワー内では左右余白なし・角丸なしで edge-to-edge */
.unpaid-alert--drawer {
  margin: 0;
  border-radius: 0;
  border-top: 0.5px solid #4D4D4D;
  border-bottom: 0.5px solid #4D4D4D;
}

.unpaid-alert__body {
  flex: 1 1 0;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.unpaid-alert__head {
  display: flex;
  align-items: center;
  gap: 8px;
}
.unpaid-alert__icon {
  flex-shrink: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #FFFFFF;
}
.unpaid-alert__heading {
  margin: 0;
  font-family: 'Noto Sans JP', sans-serif;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.3;
  letter-spacing: 0.03em;
  color: #FFFFFF;
}

.unpaid-alert__pill {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 10px 16px;
  background: #FFFFFF;
  border-radius: 999px;
  color: #1A1A1A;
}
.unpaid-alert__pill-label {
  flex-shrink: 0;
  font-family: 'Noto Sans JP', sans-serif;
  font-size: 12px;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0.03em;
  color: #1A1A1A;
}
.unpaid-alert__pill-amount {
  flex: 1 1 0;
  min-width: 0;
  text-align: right;
  font-family: 'Noto Sans JP', sans-serif;
  font-size: 20px;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0.03em;
  color: #1A1A1A;
}
.unpaid-alert__pill-unit {
  flex-shrink: 0;
  font-family: 'Noto Sans JP', sans-serif;
  font-size: 12px;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0.03em;
  color: #1A1A1A;
}

.unpaid-alert__chevron {
  flex-shrink: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #FFFFFF;
}

/* ドロワー狭幅対応（280px 内側） */
.unpaid-alert--drawer .unpaid-alert__pill {
  padding: 8px 12px;
  gap: 8px;
}
.unpaid-alert--drawer .unpaid-alert__pill-amount {
  font-size: 18px;
}
.unpaid-alert--drawer .unpaid-alert__heading {
  font-size: 13px;
}
.unpaid-alert--drawer {
  gap: 12px;
  padding: 12px 16px;
}
