.image-modal-overlay[data-v-432c4211]{position:fixed;top:0;right:0;bottom:0;left:0;background:rgba(0,0,0,.5);display:flex;align-items:center;justify-content:center;z-index:var(--z-lightbox);padding:20px;box-sizing:border-box}.image-modal-dialog[data-v-432c4211]{width:100%;max-width:560px;max-height:100%;background:#fff;border-radius:10px;overflow:hidden;box-shadow:0 16px 48px rgba(0,0,0,.22);display:flex;flex-direction:column}.image-modal-header[data-v-432c4211]{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid #ebeef5;flex-shrink:0}.image-modal-header h3[data-v-432c4211]{margin:0;font-size:17px;color:#2c3e50;display:flex;align-items:center;gap:8px;min-width:0}.image-modal-header i[data-v-432c4211]{color:#409eff;flex-shrink:0}.image-modal-close[data-v-432c4211]{background:none;border:none;cursor:pointer;color:#909399;font-size:18px;width:36px;height:36px;flex-shrink:0;display:flex;align-items:center;justify-content:center;padding:0;border-radius:50%;transition:color .2s,background .2s}.image-modal-close[data-v-432c4211]:hover{color:#f56c6c;background:#f5f7fa}.image-modal-body[data-v-432c4211]{padding:18px 20px;flex:1;min-height:0;overflow-y:auto;-webkit-overflow-scrolling:touch;text-align:center}.image-modal-body img[data-v-432c4211]{display:block;max-width:100%;margin:0 auto;border-radius:6px}.image-modal-desc[data-v-432c4211]{margin:14px 0 0;text-align:left;font-size:13px;line-height:1.8;color:var(--text-2,#4a5568)}.image-modal-tip[data-v-432c4211]{margin:12px 0 0;font-size:13px;line-height:1.6;color:#909399}.image-modal-fade-enter-active[data-v-432c4211],.image-modal-fade-leave-active[data-v-432c4211]{transition:opacity .25s}.image-modal-fade-enter[data-v-432c4211],.image-modal-fade-leave-to[data-v-432c4211]{opacity:0}.image-modal-fade-enter-active .image-modal-dialog[data-v-432c4211],.image-modal-fade-leave-active .image-modal-dialog[data-v-432c4211]{transition:transform .25s}.image-modal-fade-enter .image-modal-dialog[data-v-432c4211],.image-modal-fade-leave-to .image-modal-dialog[data-v-432c4211]{transform:translateY(-14px) scale(.96)}@media (max-width:640px){.image-modal-overlay[data-v-432c4211]{padding:12px 12px calc(12px + env(safe-area-inset-bottom))}.image-modal-dialog[data-v-432c4211]{max-width:100%}.image-modal-header[data-v-432c4211]{padding:14px 14px 14px 16px}.image-modal-header h3[data-v-432c4211]{font-size:16px}.image-modal-body[data-v-432c4211]{padding:14px 16px}}.entry-wrap[data-v-32182758]{margin-bottom:16px}.entry-bar[data-v-32182758]{display:flex;align-items:center;gap:14px;width:100%;padding:16px 18px;text-align:left;font:inherit;color:#fff;background:var(--brand-gradient,var(--brand-600));border:none;border-radius:var(--radius-lg);box-shadow:var(--shadow-2);cursor:pointer;text-decoration:none;transition:var(--transition)}.entry-bar[data-v-32182758]:hover{color:#fff;transform:translateY(-2px);box-shadow:0 10px 24px rgba(22,104,220,.28)}.entry-bar[data-v-32182758]:active{transform:translateY(0)}.entry-icon[data-v-32182758]{flex:none;width:40px;height:40px;display:flex;align-items:center;justify-content:center;font-size:18px;color:#fff;background:hsla(0,0%,100%,.22);border-radius:50%;animation:entry-icon-ring-32182758 2.6s ease-in-out infinite}@keyframes entry-icon-ring-32182758{0%,60%,to{transform:rotate(0)}65%{transform:rotate(-12deg)}72%{transform:rotate(10deg)}79%{transform:rotate(-6deg)}86%{transform:rotate(4deg)}}@media (prefers-reduced-motion:reduce){.entry-icon[data-v-32182758]{animation:none}.entry-bar[data-v-32182758]:hover{transform:none}}.entry-text[data-v-32182758]{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}.entry-text strong[data-v-32182758]{display:flex;align-items:center;gap:6px;font-size:15px;font-weight:600}.entry-badge[data-v-32182758]{padding:1px 6px;font-size:11px;font-weight:400;color:var(--brand-600);background:#fff;border-radius:999px}.entry-sub[data-v-32182758]{font-size:12.5px;color:hsla(0,0%,100%,.86)}.entry-action[data-v-32182758]{flex:none;display:inline-flex;align-items:center;gap:6px;padding:8px 14px;font-size:13px;font-weight:600;color:var(--brand-600);background:#fff;border-radius:999px;white-space:nowrap}.entry-bar:hover .entry-action[data-v-32182758]{box-shadow:0 0 0 3px hsla(0,0%,100%,.35)}@media (max-width:480px){.entry-bar[data-v-32182758]{padding:12px 14px;gap:10px}.entry-text strong[data-v-32182758]{font-size:14px}.entry-action[data-v-32182758]{padding:8px 10px;font-size:0;gap:0}.entry-action i[data-v-32182758]{font-size:16px}}.hanzi-worksheet-generator[data-v-220cc436]{width:100%;margin:0 auto;padding:20px}.input-section[data-v-220cc436]{background:var(--surface-2);padding:25px;border-radius:var(--radius-md);box-shadow:var(--shadow-1)}.input-group[data-v-220cc436]{margin-bottom:20px}.input-group label[data-v-220cc436]{display:block;margin-bottom:8px;font-weight:700;color:var(--text-1)}.input-group textarea[data-v-220cc436]{width:100%;padding:12px;border:1px solid var(--border-1);border-radius:var(--radius-sm);font-size:16px;resize:vertical}.char-count[data-v-220cc436]{display:block;text-align:right;font-size:12px;color:var(--text-2);margin-top:4px}.options-grid[data-v-220cc436]{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin-bottom:20px}.option-item label[data-v-220cc436]{display:block;margin-bottom:5px;font-weight:700;font-size:14px}.option-item input[data-v-220cc436],.option-item select[data-v-220cc436]{width:100%;padding:8px;border:1px solid var(--border-1);border-radius:var(--radius-sm)}.action-buttons[data-v-220cc436]{display:flex;gap:10px}.action-buttons button[data-v-220cc436]{flex:1;padding:12px 20px;border:none;border-radius:var(--radius-sm);font-size:16px;cursor:pointer;transition:all var(--transition)}.btn-generate[data-v-220cc436]{background:var(--brand-500);color:var(--text-inverse)}.btn-generate[data-v-220cc436]:hover:not(:disabled){background:var(--brand-600)}.btn-download[data-v-220cc436]{background:var(--success);color:var(--text-inverse)}.btn-download[data-v-220cc436]:hover:not(:disabled){background:#12833c}.btn-clear[data-v-220cc436]{background:var(--danger);color:var(--text-inverse)}.btn-clear[data-v-220cc436]:hover{background:#c33d31}.action-buttons button[data-v-220cc436]:disabled{opacity:.5;cursor:not-allowed}.preview-section[data-v-220cc436]{background:var(--surface);border-radius:var(--radius-md);box-shadow:var(--shadow-1);overflow:hidden}.preview-header[data-v-220cc436]{display:flex;justify-content:space-between;align-items:center;padding:20px;background:var(--surface-2);border-bottom:1px solid var(--border-1)}.preview-controls button[data-v-220cc436]{padding:8px 16px;background:var(--brand-500);color:var(--text-inverse);border:none;border-radius:var(--radius-sm);cursor:pointer}.worksheet-preview[data-v-220cc436]{padding:20px;max-height:600px;overflow-y:auto}.character-block[data-v-220cc436]{margin-bottom:20px;padding:0 20px;border-radius:var(--radius-md)}.character-info[data-v-220cc436]{text-align:center;margin-bottom:15px}.char-text[data-v-220cc436]{font-size:24px;font-weight:700;margin-right:10px}.char-pinyin[data-v-220cc436]{color:var(--text-2);font-size:14px}.character-grid[data-v-220cc436]{display:flex;flex-direction:column;gap:2px}.character-row[data-v-220cc436]{display:flex;gap:2px;justify-content:center}.character-cell[data-v-220cc436]{position:relative;border:1px solid var(--text-1);cursor:pointer;transition:all .2s ease}.character-cell[data-v-220cc436]:hover{background:var(--surface-3)}.cell-small[data-v-220cc436]{width:60px;height:60px}.cell-medium[data-v-220cc436]{width:80px;height:80px}.cell-large[data-v-220cc436]{width:100px;height:100px}.character-cell[data-v-220cc436]:after,.character-cell[data-v-220cc436]:before{content:"";position:absolute;background-color:#ddd;z-index:1}.character-cell[data-v-220cc436]:before{left:50%;top:0;bottom:0;width:1px;transform:translateX(-50%)}.character-cell[data-v-220cc436]:after{top:50%;left:0;right:0;height:1px;transform:translateY(-50%)}.stroke-overlay[data-v-220cc436],.trace-overlay[data-v-220cc436]{position:absolute;top:0;left:0;right:0;bottom:0;z-index:2}.stroke-modal[data-v-220cc436]{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.5);display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content[data-v-220cc436]{background:var(--surface);padding:30px;border-radius:var(--radius-md);max-width:400px;width:90%}.modal-header[data-v-220cc436]{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.close-btn[data-v-220cc436]{background:none;border:none;font-size:24px;cursor:pointer;color:var(--text-2)}.stroke-container[data-v-220cc436]{text-align:center;margin-bottom:20px}.modal-actions[data-v-220cc436]{display:flex;gap:10px;justify-content:center}.modal-actions button[data-v-220cc436]{padding:10px 20px;border:none;border-radius:var(--radius-sm);cursor:pointer}.modal-actions button[data-v-220cc436]:first-child{background:var(--brand-500);color:var(--text-inverse)}.modal-actions button[data-v-220cc436]:last-child{background:var(--surface-3);color:var(--text-1)}@media (max-width:768px){.hanzi-worksheet-generator[data-v-220cc436]{padding:12px}.generator-container[data-v-220cc436]{grid-template-columns:1fr;gap:20px}.input-section[data-v-220cc436]{padding:14px}.options-grid[data-v-220cc436]{grid-template-columns:1fr}.input-group textarea[data-v-220cc436],.option-item input[data-v-220cc436],.option-item select[data-v-220cc436]{font-size:16px}.action-buttons[data-v-220cc436]{flex-direction:column}.preview-header[data-v-220cc436]{flex-direction:column;align-items:flex-start;gap:10px;padding:14px}.worksheet-preview[data-v-220cc436]{padding:14px 12px;overflow-x:auto;-webkit-overflow-scrolling:touch}.character-row[data-v-220cc436]{justify-content:flex-start}.character-block[data-v-220cc436]{padding:0}.cell-large[data-v-220cc436]{width:80px;height:80px}}@media (max-width:480px){.hanzi-worksheet-generator[data-v-220cc436]{padding:10px}.input-section[data-v-220cc436]{padding:12px}.worksheet-preview[data-v-220cc436]{padding:12px 10px;max-height:70vh}.cell-medium[data-v-220cc436]{width:60px;height:60px}.cell-large[data-v-220cc436]{width:68px;height:68px}.char-text[data-v-220cc436]{font-size:20px}.modal-content[data-v-220cc436]{padding:18px}}