/* ==========================================================================
   ボタン共通スタイル（admin/shop共通）
   ========================================================================== */

/* プライマリボタン */
.btn-primary {
    background: var(--primary-color);
    color: var(--text-white);
    min-width: var(--button-min-width);
    border: none;
    font-weight: var(--font-weight-bold);
}

.card--search .btn-primary,
.card--register .btn-primary,
.card--register .btn-secondary,
.card--register .btn-success,
.card--register .btn-danger,
.card-search .btn-primary,
.card-register .btn-primary,
.card-register .btn-secondary,
.card-register .btn-success,
.card-register .btn-danger {
    min-width: var(--button-min-width-large);
    height: var(--form-height);
    line-height: 38px;
}

.btn-primary:active,
.btn-primary:focus {
    background: var(--link-color);
}

/* 登録・更新・確認ボタン（ダークレッド） */
.btn-action {
    --bs-btn-bg: #c62828;
    --bs-btn-border-color: #c62828;
    --bs-btn-color: #fff;
    --bs-btn-hover-bg: #b71c1c;
    --bs-btn-hover-border-color: #b71c1c;
    --bs-btn-hover-color: #fff;
    --bs-btn-active-bg: #a51b1b;
    --bs-btn-active-border-color: #a51b1b;
    --bs-btn-active-color: #fff;
    --bs-btn-disabled-bg: #e57373;
    --bs-btn-disabled-border-color: #e57373;
    --bs-btn-disabled-color: #fff;
    min-width: var(--button-min-width);
    font-weight: var(--font-weight-bold);
}

.card--search .btn-action,
.card--register .btn-action,
.card-search .btn-action,
.card-register .btn-action {
    min-width: var(--button-min-width-large);
    height: var(--form-height);
    line-height: 38px;
}

/* 検索ボタン */
.btn-search {
    font-size: var(--font-size-xl);
}

/* 戻るボタン */
.btn-back {
    background: var(--button-secondary);
    color: var(--text-white);
    border: none;
    min-width: 120px;
    font-weight: var(--font-weight-bold);
}

/* card-register内の戻るボタンのサイズを確認ボタンと揃える */
.card-register .btn-back {
    min-width: var(--button-min-width-large);
    height: var(--form-height);
    line-height: 38px;
}

/* 追加ボタン */
.btn-add {
    background: var(--warning-color);
    color: var(--text-white);
    border: none;
    padding: 6px 18px;
    border-radius: var(--border-radius-small);
    margin-left: 8px;
}

/* 削除ボタン */
.btn-remove {
    background: var(--border-color);
    color: var(--text-color);
    border: none;
    padding: var(--border-radius-small) 10px;
    border-radius: var(--border-radius-small);
    margin-left: var(--border-radius-small);
}

/* ==========================================================================
   ボタン配置
   ========================================================================== */
.center-btns {
    display: flex;
    justify-content: center;
    gap: 32px;
    margin-top: 32px;
}

.right-btn {
    display: flex;
    justify-content: flex-end;
    margin-top: 32px;
}

.left-btn {
    display: flex;
    justify-content: flex-start;
    margin-top: 32px;
}

/* ボタンコンテナ */
.button-container {
    display: flex;
    justify-content: space-between;
    margin-top: 3rem;
    max-width: 600px;
    margin-left: auto;
    margin-right: auto;
}

/* ==========================================================================
   モーダルボタン最小幅
   ========================================================================== */
.btn-modal-md {
    min-width: 100px;
}

.btn-modal-lg {
    min-width: 120px;
}

/* ==========================================================================
   認証画面ボタン
   ========================================================================== */
.btn-auth {
    min-width: 120px;
    padding: 0.5rem 1.5rem;
    line-height: 1.5;
}

/* ==========================================================================
   カスタムバッジ
   ========================================================================== */

/* 代理決済バッジ（プライマリカラー） */
.badge-proxy-payment {
    background-color: var(--primary-color);
    color: var(--text-white);
    vertical-align: middle;
    line-height: 1.2;
}
