/* ============================================================
 * 按钮组件 — 暗色系
 * ============================================================ */

.btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    padding: 12px 24px;
    font-size: 15px;
    font-weight: 600;
    border-radius: var(--radius);
    transition: all 0.25s var(--ease-snappy);
    cursor: pointer;
    border: none;
    font-family: var(--font-sans);
}

.btn:active { transform: scale(0.98); }
.btn:disabled { opacity: 0.5; cursor: not-allowed; }

/* 主按钮 — 翡翠绿 */
.btn-primary {
    background: var(--color-green);
    color: var(--color-bg);
}

.btn-primary:hover {
    background: var(--color-green-dark);
    color: var(--color-bg);
    transform: translateY(-2px);
    box-shadow: var(--shadow-glow-green);
}

/* 次按钮 — 描边 */
.btn-secondary {
    background: transparent;
    color: var(--color-text);
    border: 1px solid var(--color-border-2);
}

.btn-secondary:hover {
    background: var(--color-bg-3);
    border-color: var(--color-text-3);
}

/* 幽灵按钮 */
.btn-ghost {
    background: transparent;
    color: var(--color-text-2);
}

.btn-ghost:hover {
    background: var(--color-bg-3);
    color: var(--color-text);
}

/* 危险按钮 */
.btn-danger {
    background: var(--color-danger);
    color: #fff;
}

.btn-danger:hover { opacity: 0.9; color: #fff; }

/* 尺寸 */
.btn-sm { padding: 8px 16px; font-size: 14px; }
.btn-lg { padding: 16px 32px; font-size: 18px; }
.btn-block { width: 100%; }

/* 购买按钮 — 琥珀橙 */
.btn-buy {
    background: var(--color-orange);
    color: var(--color-bg);
    border: none;
    padding: 10px 24px;
    font-size: 14px;
    font-weight: 600;
    border-radius: var(--radius-sm);
    transition: all 0.3s var(--ease-snappy);
    display: inline-flex;
    align-items: center;
    gap: 6px;
    flex: 1;
    justify-content: center;
}

.btn-buy:hover {
    background: var(--color-orange-dark);
    color: var(--color-bg);
    transform: translateY(-2px);
    box-shadow: var(--shadow-glow-orange);
}

/* 购物车按钮 */
.btn-cart {
    background: transparent;
    color: var(--color-text);
    border: 1px solid var(--color-border-2);
    padding: 10px 20px;
    font-size: 14px;
    font-weight: 600;
    border-radius: var(--radius-sm);
    transition: all 0.3s var(--ease-snappy);
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

.btn-cart:hover {
    background: var(--color-bg-3);
    border-color: var(--color-text-3);
    transform: translateY(-2px);
}

/* 下载按钮 — 翡翠绿 */
.btn-download {
    background: var(--color-green);
    color: var(--color-bg);
    padding: 10px 24px;
    font-size: 14px;
    font-weight: 600;
    border-radius: var(--radius-sm);
    display: inline-flex;
    align-items: center;
    gap: 6px;
    transition: all 0.3s var(--ease-snappy);
    flex: 1;
    justify-content: center;
}

.btn-download:hover {
    background: var(--color-green-dark);
    color: var(--color-bg);
    transform: translateY(-2px);
    box-shadow: var(--shadow-glow-green);
}

/* 小按钮 */
.btn-sm-action {
    padding: 5px 14px;
    border-radius: var(--radius-sm);
    font-size: 13px;
    background: var(--color-bg-3);
    color: var(--color-text-2);
    display: inline-block;
    font-weight: 500;
    transition: all 0.2s var(--ease-smooth);
}

.btn-sm-action:hover {
    background: var(--color-bg-4);
    color: var(--color-text);
}

.btn-sm-buy {
    background: var(--color-orange);
    color: var(--color-bg);
}

.btn-sm-buy:hover {
    background: var(--color-orange-dark);
    color: var(--color-bg);
}

/* 注册按钮 */
.btn-register {
    background: var(--color-green);
    color: var(--color-bg) !important;
    padding: 7px 18px;
    font-weight: 600;
    border-radius: var(--radius-sm);
    font-size: 14px;
}

.btn-register:hover {
    background: var(--color-green-dark);
    color: var(--color-bg) !important;
}
