@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid}}}.fixed{position:fixed}.z-50{z-index:50}.mt-auto{margin-top:auto}.flex{display:flex}.h-\[200px\]{height:200px}.w-\[200px\]{width:200px}.w-full{width:100%}.max-w-\[1200px\]{max-width:1200px}.max-w-\[1300px\]{max-width:1300px}.flex-1{flex:1}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-start{justify-content:flex-start}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.text-center{text-align:center}.text-left{text-align:left}.whitespace-nowrap{white-space:nowrap}.underline{text-decoration-line:underline}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,ease);transition-duration:var(--tw-duration,0s)}body{background:linear-gradient(135deg,#fdf9f4 0%,#f5ede0 100%);min-height:100vh;font-family:LXGW WenKai,KaiTi,STKaiti,serif}a{color:inherit;text-decoration:none}a:hover{color:#c0392b}.navbar{-webkit-backdrop-filter:blur(12px);background:#ffffffb3;border-radius:20px;justify-content:space-between;align-items:center;width:100%;max-width:1200px;margin-bottom:1.5rem;padding:1rem 2rem;display:flex;box-shadow:0 8px 20px #0000000a}.navbar a{color:#4b3f35;border-radius:12px;padding:.5rem 1rem;font-weight:500;text-decoration:none;transition:background .2s}.navbar a:hover{color:#c0392b;background:#e5535314}.brand{font-size:1.3rem;font-weight:700;color:#c0392b!important}.lang-select{color:#4b3f35;cursor:pointer;background:#fff;border:1.5px solid #d48b8b;border-radius:12px;outline:none;max-width:160px;margin-left:.5rem;padding:.4rem .75rem;font-family:inherit;font-size:.875rem;font-weight:500;transition:all .2s;box-shadow:0 2px 6px #0000000d}.lang-select:hover{background:#fef3f2;border-color:#c0392b;box-shadow:0 4px 10px #00000014}.lang-select:focus{border-color:#c0392b;box-shadow:0 0 0 2px #c0392b26}.app-shell{background-color:#fff6ed;border-radius:3rem;max-width:1300px;min-height:75vh;display:flex;overflow:hidden;box-shadow:0 25px 50px #0000000f,0 8px 20px #0000000a}.control-panel{-webkit-backdrop-filter:blur(10px);background-color:#fff8f0b3;border-right:1px solid #ead9c6;flex-direction:column;gap:1.5rem;width:360px;padding:2.5rem 2rem;display:flex}.input-area{resize:vertical;background:#ffffffb3;border:1px solid #e2d3c1;border-radius:16px;outline:none;width:calc(100% - 2rem);min-height:140px;margin:0 auto;padding:1rem 1.2rem;font-family:inherit;font-size:1.1rem;line-height:1.8}.input-area:focus{background:#fff;border-color:#d48b8b;box-shadow:0 0 0 3px #e553531a}.btn-primary{color:#fff;cursor:pointer;text-align:center;background:linear-gradient(135deg,#e55353 0%,#c0392b 100%);border:none;border-radius:16px;width:100%;padding:.85rem 1.8rem;font-family:inherit;font-size:1rem;font-weight:600;transition:all .2s;box-shadow:0 6px 14px #e5535340}.btn-primary:hover{transform:translateY(-1px);box-shadow:0 10px 20px #e553534d}.btn-secondary{color:#4b3f35;cursor:pointer;text-align:center;background:#fff;border:1px solid #d1c7bd;border-radius:16px;width:100%;padding:.85rem 1.8rem;font-family:inherit;font-size:1rem;font-weight:600;transition:all .2s;box-shadow:0 4px 10px #00000008}.btn-secondary:hover{background:#f9f6f2;border-color:#b8a99a}.option-row{color:#5c4b3e;align-items:center;gap:.5rem;font-size:.95rem;display:flex}.toggle-switch{appearance:none;cursor:pointer;background:#d1c7bd;border-radius:11px;flex-shrink:0;width:40px;height:22px;transition:background .2s;position:relative}.toggle-switch:checked{background:#e55353}.toggle-switch:after{content:"";background:#fff;border-radius:50%;width:18px;height:18px;transition:transform .2s;position:absolute;top:2px;left:2px;box-shadow:0 1px 3px #0003}.toggle-switch:checked:after{transform:translate(18px)}.slider-row{color:#5c4b3e;align-items:center;gap:.8rem;font-size:.95rem;display:flex}.slider-row input[type=range]{accent-color:#e55353;flex:1}.donate-btn{color:#003087;text-align:center;background:#ffc439;border-radius:12px;justify-content:center;align-items:center;gap:.5rem;padding:.7rem 1.2rem;font-size:.9rem;font-weight:700;text-decoration:none;transition:filter .2s;display:flex}.donate-btn:hover{filter:brightness(1.05)}.preview-panel{flex-direction:column;flex:1;justify-content:center;align-items:center;padding:2rem 2.5rem;display:flex;position:relative;overflow:hidden}.page-viewport{width:100%;max-width:700px;position:relative;overflow:hidden}.page-slider{transition:transform .35s;display:flex}.paper-stack{box-sizing:border-box;min-width:100%;padding:0 2.5rem 1.5rem 0;position:relative}.paper{z-index:3;background-color:#fffff8e7;border:1px solid #d9cbb8;border-radius:20px;flex-direction:column;justify-content:flex-start;gap:.2rem;padding:32px 24px;display:flex;position:relative;box-shadow:0 8px 24px #0000000f}.paper .flex.justify-center{gap:.2rem}.paper-stack .paper:before,.paper-stack .paper:after{display:none}.paper-stack.two-pages .paper:before,.paper-stack.three-pages .paper:before{content:"";z-index:-1;background:#fffff8e7;border:1px solid #e0d2bd;border-radius:20px;display:block;position:absolute;inset:12px -20px -12px 20px}.paper-stack.three-pages .paper:after{content:"";z-index:-2;background:#fffff8e7;border:1px solid #e0d2bd;border-radius:20px;display:block;position:absolute;inset:24px -40px -24px 40px}.arrow-btn{color:#4b3f35;cursor:pointer;z-index:20;-webkit-backdrop-filter:blur(8px);background:#ffffffd9;border:1px solid #d9cbb8;border-radius:50%;justify-content:center;align-items:center;width:2.8rem;height:2.8rem;font-size:2rem;transition:all .25s cubic-bezier(.2,.8,.2,1);display:flex;position:absolute;top:50%;transform:translateY(-50%);box-shadow:0 6px 16px #00000014}.arrow-btn:hover:not(:disabled){background:#fff;border-color:#b8a080;transform:translateY(-50%)scale(1.06);box-shadow:0 8px 20px #0000001f}.arrow-btn:disabled{opacity:.3;cursor:not-allowed;box-shadow:none}.arrow-btn.prev{left:-.5rem}.arrow-btn.next{right:-.5rem}.tian-cell{background-color:#fff;border:1.6px solid #8b7355;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;width:3.4rem;height:3.4rem;display:flex;position:relative}.tian-cell:before{content:"";border-left:1px dashed #cfc1b3;position:absolute;top:0;bottom:0;left:50%;transform:translate(-50%)}.tian-cell:after{content:"";border-top:1px dashed #cfc1b3;position:absolute;top:50%;left:0;right:0;transform:translateY(-50%)}.char-example{color:#e55353;z-index:10;font-size:1.75rem;font-weight:600}.char-trace{color:#f2b6c0;z-index:10;font-size:1.75rem;font-weight:400}.char-trace-hidden{color:#0000;z-index:10;font-size:1.75rem;font-weight:400}@media (max-width:768px){.navbar{text-align:center;flex-direction:column;gap:.5rem}.app-shell{border-radius:2rem;flex-direction:column}.control-panel{border-bottom:1px solid #ead9c6;border-right:none;width:100%;padding:1.8rem 1.5rem}.preview-panel{padding:1.5rem}.arrow-btn{width:2.5rem;height:2.5rem;font-size:1.4rem}.arrow-btn.prev{left:0}.arrow-btn.next{right:0}}@media print{html{font-size:16px}.paper{box-shadow:none!important;background-color:#fff!important;border:none!important}.paper .text-stone-400.text-xs.mb-2{display:none!important}.print-footer{text-align:center;color:#999;background:#fff;border-top:1px solid #eee;width:100%;padding:8px 0;font-size:10px;position:fixed;bottom:0;left:0}body{-webkit-print-color-adjust:exact;print-color-adjust:exact;background:#fff}.control-panel,.navbar,.arrow-btn{display:none!important}.app-shell{box-shadow:none;background:#fff;border-radius:0}.preview-panel{padding:0;overflow:visible}.page-viewport{max-width:100%;overflow:visible}.page-slider{display:block;transform:none!important}.paper-stack{page-break-after:always;margin-bottom:2rem}.paper:before,.paper:after{display:none!important}.paper{border:1px solid #aaa}.tian-cell{border-color:#666!important}.tian-cell:before,.tian-cell:after{border-color:#999!important}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}
