/**
 * 滑块人机验证弹层样式（配合 store/js/slider-captcha.js 使用）
 * 外壳沿用端内弹窗规范（.modal-mask / .modal / .modal-close，见 store/css/base.css），本文件只补滑块专属部分。
 * 挑战图由后端程序化生成（底图 320x160），这里固定按 280px 宽等比缩放；
 * 渲染宽度须与 slider-captcha.js 的 RENDER_WIDTH 保持一致。
 */
.modal.slider-captcha-panel { width: min(344px, 92vw); text-align: center; }

.slider-captcha-hint {
    font-size: var(--font-size-xs);
    color: var(--text-light);
    margin-bottom: 12px;
}

.slider-captcha-image {
    position: relative;
    width: 280px;
    height: 140px;
    margin: 0 auto;
    border-radius: var(--radius-xl);
    overflow: hidden;
    background: var(--bg);
}

.slider-captcha-bg { display: block; width: 280px; height: 140px; }
.slider-captcha-piece { position: absolute; }

.slider-captcha-track {
    position: relative;
    width: 280px;
    height: 44px;
    margin: 16px auto 0;
    border: 1px solid var(--border-strong);
    border-radius: var(--radius-xl);
    background: var(--bg);
    display: flex;
    align-items: center;
    justify-content: center;
    user-select: none;
    touch-action: none;
}

.slider-captcha-track-text { font-size: var(--font-size-xs); color: var(--text-muted); }

.slider-captcha-fill {
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    border-radius: var(--radius-xl);
    background: var(--primary-outline);
}

.slider-captcha-thumb {
    position: absolute;
    top: 0;
    bottom: 0;
    border-radius: var(--radius-xl);
    background: var(--primary);
    color: var(--on-primary);
    font-size: var(--font-size-lg);
    line-height: 44px;
    cursor: grab;
}
.slider-captcha-thumb:active { cursor: grabbing; }

.slider-captcha-foot { margin-top: var(--space-sm); }
.slider-captcha-refresh { font-size: var(--font-size-xs); color: var(--text-light); cursor: pointer; }
.slider-captcha-refresh:hover { color: var(--primary); }
