@font-face {
	font-family: '宋体';
	src: url('//oss.cnmeiwei.com/fonts/songti.ttf') format('truetype');
}
@font-face {
	font-family: '仿宋';
	src: url('//oss.cnmeiwei.com/fonts/fangsong.ttf') format('truetype');
}
@font-face {
	font-family: '楷体';
	src: url('//oss.cnmeiwei.com/fonts/kaiti.ttf') format('truetype');
}
@font-face {
	font-family: '黑体';
	src: url('//oss.cnmeiwei.com/fonts/heiti.ttf') format('truetype');
}
@font-face {
	font-family: '长宋体';
	src: url('//oss.cnmeiwei.com/fonts/hanyi.ttf') format('truetype');
}
        * { margin:0; padding:0; box-sizing:border-box; -webkit-tap-highlight-color:transparent; }
        body { background:#f5f7fb; font-family:system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif; color:#1f2d3d; touch-action: pan-y pan-x; }
        .mobile-container { max-width:100%; margin:0 auto; background:#fff; min-height:100vh; }
        .preview-area { position:sticky; top:0; z-index:20; background:#fff; display:flex; justify-content:center; align-items:center; padding:12px 16px; min-height:auto; box-shadow:0 2px 6px rgba(0,0,0,0.05); }
        #sealdiv { display:flex; justify-content:center; align-items:center; position:relative; }
        canvas { display:block; max-width:100%; height:auto; box-shadow:0 2px 8px rgba(0,0,0,0.08); border-radius:4px; background:#fff; }
        .watermark-wrap { position:absolute; top:50%; left:50%; transform:translate(-50%,-50%); text-align:center; white-space:nowrap; z-index:1; pointer-events:none; opacity:0.28; font-size:16px; line-height:1.6; }
        .watermark-text { font-size:16px; margin:4px 0; letter-spacing:1px; }
        .tab-nav { display:flex; background:#fff; border-bottom:1px solid #eee; overflow-x:auto; position:relative; z-index:15; flex-wrap: nowrap;}
        .tab-item { flex:1; min-width:70px; padding:14px 6px; text-align:center; font-size:15px; color:#666; cursor:pointer; white-space:nowrap; transition:all 0.2s; font-weight: 600;}
        .tab-item.active { color:#222; font-weight:500; border-bottom:2px solid #409eff; }
        .form-section { padding:20px 16px 10px; background:#fff; }
        .form-row { display:flex; align-items:center; margin-bottom:20px; flex-wrap:wrap; }
        .form-label { width:90px; font-size:15px; color:#222; font-weight:700; flex-shrink:0; text-align:left; line-height:1.4; }
        .form-input-wrap { flex:1; display:flex; align-items:center; min-width:0; }
        .form-input { width:100%; height:44px; line-height:44px; border:none; background:#f5f7fb; border-radius:6px; padding:0 12px; font-size:15px; color:#333; }
        .num-control-group { display:flex; align-items:center; height:44px; background:#f5f7fb; border-radius:6px; overflow:hidden; }
        .num-btn { width:44px; height:100%; border:none; background:#e9ecef; font-size:22px; font-weight:700; color:#333; cursor:pointer; display:flex; align-items:center; justify-content:center; transition:background 0.1s; touch-action:manipulation; }
        .num-btn:active { background:#dee2e6; }
        .num-input { width:70px; height:100%; border:none; background:#f5f7fb; font-size:15px; text-align:center; font-weight:500; pointer-events:none; }
        .inline-switch { display:flex; align-items:center; gap:12px; margin-left:12px; }
        .switch-text { font-size:14px; color:#555; white-space:nowrap; }
        .slider-wrap { width:100%; padding-right:8px; }
        .color-picker-wrap { display:flex; align-items:center; gap:12px; }
        .color-picker { width:48px; height:44px; border:1px solid #e0e0e0; border-radius:8px; cursor:pointer; background:#fff; }
        select.form-input {
            -webkit-appearance: auto;
            appearance: auto;
            background:#f5f7fb;
            padding:0 12px;
        }
        .el-switch { transform:scale(1.2); margin:0 4px; touch-action:manipulation; }
        .el-switch__core { width:46px !important; }
        /* 底部按钮区域 - 不再浮动，改为普通块级元素 */
        .bottom-btn-area {
            padding:12px 16px 20px;
            background:#fff;
            border-top:1px solid #eee;
            display: flex;
            align-items: center;
            gap: 12px;
            margin-top: 0px;
        }
        .btn-group-left {
            display: flex;
            gap: 8px;
        }
        .tutorial-btn {
            background: #409eff;
            color: #fff;
            border: none;
            border-radius: 20px;
            padding: 8px 16px;
            font-size: 14px;
            cursor: pointer;
            touch-action: manipulation;
            white-space: nowrap;
            text-decoration: none;
            display: inline-flex;
            align-items: center;
            gap: 4px;
        }
        .generate-btn {
            flex: 1;
            height: 50px;
            background:#52c41a;
            color:#fff;
            border:none;
            border-radius:8px;
            font-size:17px;
            font-weight:500;
            cursor:pointer;
            box-shadow:0 2px 6px rgba(0,0,0,0.1);
            transition:opacity 0.2s;
            touch-action:manipulation;
        }
        .generate-btn:active { opacity:0.9; }
        .footer-note { font-size:11px; color:#c00; text-align:center; padding:12px 0 10px; }
        [v-cloak] { display:none; }
        @media (max-width:420px) {
            .form-label { width:85px; font-size:14px; }
            .inline-switch .switch-text { font-size:12px; }
            .watermark-text { font-size:14px; }
            .tab-item { min-width:60px; padding:12px 4px; font-size:14px; }
            .tutorial-btn { padding: 6px 12px; font-size: 12px; }
        }
        .el-slider__runway { margin:0; }
        .el-slider { width:100%; }
        button, .el-switch, .num-btn, .tab-item, .generate-btn { touch-action:manipulation; }
        /* 隐藏元素，供下载逻辑使用 */
        .yzsize { display: none; }
        #canvasyz { display: none; }
        .btn-apply-color {
    background: #409eff;
    color: #fff;
    border: none;
    border-radius: 4px;
    padding: 2px 10px;
    font-size: 14px;
    margin-left: 6px;
    cursor: pointer;
}

/* 颜色选择器放大 + 颜色名称标签 */
.color-picker-wrap {
    display: flex;
    align-items: center;
    gap: 12px;
}
.color-picker-wrap .el-color-picker {
    width: 56px !important;
    height: 56px !important;
}
.color-picker-wrap .el-color-picker__trigger {
    width: 56px !important;
    height: 56px !important;
    border-radius: 12px !important;
    border: 2px solid #e0e0e0 !important;
    box-shadow: 0 2px 8px rgba(0,0,0,0.08);
    transition: all 0.2s;
}
.color-picker-wrap .el-color-picker__trigger:active {
    border-color: #409EFF;
    box-shadow: 0 2px 12px rgba(64,158,255,0.3);
}
.color-picker-wrap .el-color-picker__color {
    border-radius: 8px !important;
}
.color-label {
    font-size: 15px;
    font-weight: 500;
    color: #555;
    background: #f0f2f5;
    padding: 4px 14px;
    border-radius: 20px;
    min-width: 48px;
    text-align: center;
}
/* 加减按钮组已有，无需重复 */