@font-face{font-family:Fraunces Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/fraunces-vietnamese-wght-normal-CnvboYUG.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Fraunces Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/fraunces-latin-ext-wght-normal-Ca2vKHc0.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fraunces Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/fraunces-latin-wght-normal-ukD16Tqj.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(data:font/woff2;base64,d09GMgABAAAAAAn4ABMAAAAAEwQAAAmOAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGjQbgnQcLj9IVkFSgQEGYD9TVEFUgQIAgQovahEICok0h0ULIAAwhzoBNgIkAzwEIAWHJgeBDgwHG6QQUdRKTmoBFD8K42bniObKrG3LZFcMWZzFmrjTFhQ6TVTqPJcInrfrvzq3b2PGn1wwMiNYGTy9ViREYARlL1zAGcPdPqBt3gNWrfKthv4xnM+b9caw+wmjgEUVRjHXhS6jgCK6zf5HiWQacJpGdAgdrbV6g/Rf1BfxRqZVQnrxRVWSJb6RLFnyu0elilmjeoSQCKnxsmwLaddUMjnksriSYuuPl06EAl7KfAiWQjCUETz0zNZ3EII94CDQtzkMfZ/9IkkY8tZRZTDky5ZVwBAM+GYpdd4ZVAWYImnLkiTg48l79gGx3D+VBtLeyg8u7bJAd4uo0pFuQBFysE9C95l0W4Fkiao6GfrDbu77lVU7wk9cV3uqOsXmQiMkhVKl1ugjzUAJBSIkkVWHijkpkVSyUFsgVBuJMA0N+ZnXtyUv5yMigGdfQRmwL1AAjQ3YXG6iIFNSUdPQo8+AISPGAltBMDQRAtyf4ZspLlZkpyOVoMZPvFGWzvk8p5SUC/NWPMj6T2/Yas2EdlON5GkfdkeFwVGjta825H89NIenlLWAPAp5h1KDtRhCaAQWMsFKtEvOKpIhgLHlXPARokkgEGEOAkqxJRQpKYq4ezahIiLHP6hZpqMbV0pUF2vdvEimLEQ/iIUYLgYWs0VXGVlLTOPdaPmFfCC/XrtzqVo1ez7vz6+Kd2+7o11ZJ+4MreLbB5BKVGxobAq4jZYalZ5aX2CKJiwUuc9GNJyi4M8bGyKcdjSRrG4JohdF8buJfmQefbYYREnMFsOoiNliFDVxmRgL0XUmUMLqzW0A4gCQAhWGYCQpFNukwXhIkPMsbRI19ewtw8Cp2Wj/Ro5cM2OTAbJAvZ/L4opBXb9+UHscYuOKM/W8isgwN26Exexjizmfnlp9dE3hOSqdZ/F5QqbckIlPb+oKfXxd6hftJ7Sm/uyPYpONza84CRlMNk/uhOrLpyf53982++zRkXNu3g3VF8qFbx1+7fbHZ9DrB3VXWNSmhnT2vrwS1+1Z+kHGBaZIhnnvuLBTNDeA340D1DWu5/jEa9pVfl6+Jij+yo3EELNixXCLjr173Q5eDP7Y7/L4iQFHbjpaJLFoP4cCsYP6sAPL7gMHNg53yYjqxqTDrYqLDl5DzW/eTLjYxCvucprjI3yl2ykKowKUC2Ox2FJLFo6Fa1HBWLC2jMCIIBEmklkYhmkpmBhTm/LCvJAH5oGcMKcgFEP1xUdho8ANPa6RFD99/PN60fjj9eXy2Eex4B5MpmRapXidzFk1p4uLk3+hn6jAP9ovJcXPPwk8o/0ltizbdbnTprvx4PSxT0VZ3Xc772aN7RflgbXRYwc3hLNO+k878nxGwfuVM8m8Gs7WEoVGWLHwSpx4vNSHBCMNqJ4m15Kp/TfHHVkQd++eY7PGN4W5byTs+6Ft8Ozvb/D60btv37de8ER0mS3P/0sLW84qGjEVkwztPzz06eGUWwKLwPb0D/WFd3vltl2aP276KpM0JNz6AfnAnZ5ADlF2zVyZ2OkxHSMxWPMnSZLbbDR3F1UjPVqp4d68da13F1YZujdWw7271iecO2l9+/4p47Oztjck355/75wFOI+VdGDqbNGs+ISgxg3iB2jb2r+b0CWsNLHIM4sdv8SDSFBP/Oromz6FNCWw2iMTxV0R8QLyBTkpe0j5+pSSJOOTB5Mck/gh3IopuNQnhKj02t3FL80gGbEh89SZcwTxcYt5cZT/nMnB3uXfPy8BSpVMBuRx+ZhACGzDBmwHsJRAjhotOnzuj2wDz3ug2wOUAY2NgZln9/TK/enG/oE4rO1wxvGUFMAxsZ0qNjRC7hl9d17e7imbgDt6uJXhUobDg7v3RX/yRCKxgMhfyiKcZfbpk0wmCcdQlIAOHeakXLvCNt++WfKiozNqSZxxJotn+c0a7DdPsx7DPYgKIDxwwYUZDg9aJbxocTjcwovr9WAsVV32mQoiiIOCHc60Oltst9qCQYuCqN1yHo0Kj60OgI2OqmiuBUWrNA0NDhYCDcdpmMrs1fZZ0xdTzMr1HdPtIHstYhqaPDDA5YxUDx7J4fJiisBSDI/L6G/bn34GNy8Q2g044ZTulAdFLb0tI6NNxfj3DzLjWiNGxje1pz7aXOcNV68lDPEd2SXl6VfBuwmHzdf1gxFy1HvA7pD8I2BnnmyGw852Cg5XbgIdEEGE5UCzen5jTlG6JCU5iajlxVcsXvbcS0SAcg1dcesWJLVK8+hYHOYQ+Pjy+EyVGXP0aPTFagrV9E03hCQvYx+g47KGq+1GsLj8uBIyihNw33YUe8PNC4BOJ3Lm1AglLV3nCuvUdIP+v15tVGbWIwgxLVpPkfpthCGpTKG+oA/DQfsKKvxhScqaN6FuElAUtTKv2UYgOmQegsN/n7njHUju8wM4VTcm+Q8xfX9SFwjTzdVqu95UOWSIGOabH8OGBEba//8Yxl3GcPdP/dMBOoSX/0z5SZmBoLbaPs+9asaMpb36yknKaw6FqWZa6A5vDa02mhkOba1q6KtLV208xrkwmW5C4VD6n2fvRjADy2qDYYnNy+H10Fq0LMbNzS863gkO7iQ8eC48/Ny5m59tOcEso3u7Qg3yrqDL6eKXwJAuWnhylfbWrRObe66rzX59+XDtzusnL66dI/86ArmtLlzED860Ef3bFPV78OX/zFTA11fcBn2Vntb7qiGBSgLBHyuv/uEaqqoTgSpOyjlzh86me1Vriv7i9rLPLvtghWmSnblRbAsBJL/4dScSQTBxOivHMO5QvBBY0iheJvfwWLxLOGzYKZyM4zVc2Cll46zEpeUV4MqGEWZj22SdOxhGAjgs9AEnfT+RoiMfcDb0GS5NncKVxju4Nt/mRk13O9Gz3FLct5oCD6wkwUNrCfHIUg6SMf8LwQGyVaBUqpLPW5BaMpRshEpl8nS1qw5dgnzlik8QBXmdy5UrIH74heTKZKMSilQso4hsRiGraQZRzxpNGqlEJMsXuAU7GlcR8mWSykUpVkWGyIf0a8v4qEQp5CtGsMiZa+4ESYQy+WilCiguHzxMXO54ogShooTV2bj2z1zL6DYSoImoQ8lFUWxMLBNQQgLkV2tHYgUoIbkuREz+fJHKxxWBcnvu3KQppFCxLkguB1NyVSp/TknRvNwYlCdbblWu3ze6owHdWluhE5tgQ6ej2SV65CijijoaRfSiH4Nqz1OpfEW+WeI/oU0ly60zkV9YzOQSYtZVEGYmrysTZAJkY4qZtIBD9/LYTIK7Nww3vMiYBwA=)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/manrope-cyrillic-wght-normal-Dvxsihut.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/manrope-greek-wght-normal-DL7QRZyv.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/manrope-vietnamese-wght-normal-usUDDRr7.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/manrope-latin-ext-wght-normal-Ch3YOpNY.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/manrope-latin-wght-normal-DHIcAJRg.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--font-display:"Fraunces Variable", "Fraunces", Georgia, serif;--font-body:"Manrope Variable", "Manrope", system-ui, sans-serif;--brand:#0f3d3e;--accent:#2f9e8a;--ink:#1a2a28;--muted:#5b6f6b;--paper:#e7eee9;font-family:var(--font-body);color:var(--ink);background:var(--paper);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased}*,:before,:after{box-sizing:border-box}html,body,#root{min-height:100%;margin:0}button,input{font:inherit}img{max-width:100%;display:block}.page{flex-direction:column;min-height:100svh;display:flex;position:relative}.atmosphere{z-index:-1;background:radial-gradient(70% 50% at 20% 0,#7fd1b947,#0000 55%),radial-gradient(50% 40% at 90% 20%,#f4b47829,#0000 50%),linear-gradient(165deg,#f4f7f2 0%,#e7eee9 50%,#dfe8e4 100%);position:fixed;inset:0}.topbar{justify-content:space-between;align-items:center;gap:1rem;padding:1.25rem clamp(1.25rem,4vw,2.5rem);display:flex}.topbar__right{align-items:center;gap:1rem;display:flex}.topbar__auth,.topbar__user{align-items:center;gap:.5rem;display:flex}.topbar__email{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;max-width:10rem;font-size:.85rem;overflow:hidden}.brand{align-items:center;gap:.6rem;display:inline-flex}.brand__mark{object-fit:contain;border-radius:.4rem;flex-shrink:0;width:1.5rem;height:1.5rem;display:block}.brand__name{font-family:var(--font-display);font-size:1.3rem;font-weight:700}.topbar__note{color:var(--muted);margin:0;font-size:.85rem}.main{flex:1;padding:0 clamp(1.25rem,4vw,2.5rem) 2rem}.hero{text-align:center;flex-direction:column;justify-content:center;align-items:center;max-width:42rem;min-height:min(78svh,44rem);margin:0 auto;animation:.6s both rise;display:flex}.demo-case{width:min(100%,16.5rem);margin-top:1.1rem}.demo-case__stage{isolation:isolate;background-color:#d8e0db;background-image:linear-gradient(45deg,#c5d0ca 25%,#0000 25%),linear-gradient(-45deg,#c5d0ca 25%,#0000 25%),linear-gradient(45deg,#0000 75%,#c5d0ca 75%),linear-gradient(-45deg,#0000 75%,#c5d0ca 75%);background-position:0 0,0 8px,8px -8px,-8px 0;background-size:16px 16px;border-radius:.85rem;width:100%;height:9rem;position:relative;overflow:hidden;box-shadow:0 16px 40px #0f3d3e24}.demo-case__layer{position:absolute;inset:0}.demo-case__layer img{object-fit:cover;object-position:center 28%;-webkit-user-select:none;user-select:none;pointer-events:none;width:100%;height:100%}.demo-case__layer--after{z-index:1}.demo-case__layer--before{z-index:2;clip-path:inset(0 50% 0 0);animation:6.4s ease-in-out infinite demo-wipe}.demo-case__divider{z-index:3;background:#f4f7f2eb;width:2px;margin-left:-1px;animation:6.4s ease-in-out infinite demo-divider;position:absolute;top:0;bottom:0;left:50%;box-shadow:0 0 0 1px #0f3d3e1f}.demo-case__divider:after{content:"";border:2px solid var(--brand);background:#f4f7f2;border-radius:50%;width:1.15rem;height:1.15rem;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 4px 12px #0f3d3e33}.demo-case__tag{z-index:4;letter-spacing:.02em;color:#f4f7f2;background:#0f3d3e8c;border-radius:.3rem;padding:.18rem .4rem;font-size:.65rem;font-weight:700;position:absolute;top:.45rem}.demo-case__tag--before{left:.45rem}.demo-case__tag--after{right:.45rem}@keyframes demo-wipe{0%,to{clip-path:inset(0 78% 0 0)}50%{clip-path:inset(0 18% 0 0)}}@keyframes demo-divider{0%,to{left:22%}50%{left:82%}}.hero__brand{font-family:var(--font-display);color:var(--brand);margin:0;font-size:clamp(3.4rem,11vw,5.8rem);line-height:.95}.hero__line{margin:1rem 0 0;font-size:1.25rem;font-weight:600}.hero__sub{color:var(--muted);max-width:26rem;margin:.55rem 0 0;line-height:1.5}.dropzone{border:1.5px dashed color-mix(in srgb, var(--brand) 35%, transparent);cursor:pointer;background:#ffffffbd;border-radius:1.15rem;flex-direction:column;gap:.4rem;width:100%;margin-top:1.5rem;padding:1.75rem 1.25rem;transition:border-color .2s,transform .2s,background .2s;display:flex}.dropzone:hover,.dropzone--active{border-color:var(--accent);background:#fff;transform:translateY(-2px)}.dropzone--busy{pointer-events:none;opacity:.7}.dropzone--locked{background:#ffffff8c;border-style:solid}.dropzone span{color:var(--muted);font-size:.88rem}.workspace{width:min(960px,100%);margin:.5rem auto 0;animation:.45s both rise}.workspace__head{flex-wrap:wrap;justify-content:space-between;gap:1rem;margin-bottom:1rem;display:flex}.workspace__eyebrow{font-family:var(--font-display);color:var(--brand);margin:0;font-weight:700}.workspace__title{margin:.15rem 0 0;font-size:1.7rem}.workspace__meta{color:var(--muted);margin:.35rem 0 0;font-size:.92rem}.workspace__actions{flex-wrap:wrap;gap:.6rem;display:flex}.btn{cursor:pointer;border:none;border-radius:.75rem;padding:.75rem 1.1rem;font-weight:600}.btn:disabled{opacity:.5;cursor:not-allowed}.btn--primary{background:var(--brand);color:#f4f7f2}.btn--ghost{border:1px solid color-mix(in srgb, var(--brand) 18%, transparent);color:var(--ink);background:#ffffffb3}.btn--sm{border-radius:.6rem;padding:.45rem .8rem;font-size:.88rem}.auth-overlay{z-index:40;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0f3d3e6b;place-items:center;padding:1.25rem;animation:.25s both rise;display:grid;position:fixed;inset:0}.auth-modal{border:1px solid color-mix(in srgb, var(--brand) 12%, transparent);background:#f7faf8;border-radius:1.15rem;width:min(420px,100%);padding:1.4rem 1.35rem 1.5rem;box-shadow:0 18px 48px #0f3d3e2e}.auth-modal__head{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.auth-modal__head h2{font-family:var(--font-display);color:var(--brand);margin:0;font-size:1.55rem}.auth-modal__close{color:var(--muted);cursor:pointer;background:0 0;border:none;padding:.1rem .35rem;font-size:1.5rem;line-height:1}.auth-modal__lead{color:var(--muted);margin:.45rem 0 0;font-size:.92rem}.auth-tabs{background:color-mix(in srgb, var(--brand) 6%, #fff);border-radius:.75rem;grid-template-columns:1fr 1fr;gap:.35rem;margin:1.1rem 0 1rem;padding:.25rem;display:grid}.auth-tabs__btn{color:var(--muted);cursor:pointer;background:0 0;border:none;border-radius:.6rem;padding:.55rem .75rem;font-weight:600}.auth-tabs__btn--on{color:var(--brand);background:#fff}.auth-form{flex-direction:column;gap:.85rem;display:flex}.auth-field{text-align:left;flex-direction:column;gap:.35rem;display:flex}.auth-field span{color:var(--ink);font-size:.85rem;font-weight:600}.auth-field input{border:1px solid color-mix(in srgb, var(--brand) 16%, transparent);width:100%;color:var(--ink);background:#fff;border-radius:.7rem;padding:.7rem .85rem}.auth-field input:focus{outline:2px solid color-mix(in srgb, var(--accent) 45%, transparent);outline-offset:1px}.auth-code-row{gap:.5rem;display:flex}.auth-code-row input{flex:1;min-width:0}.auth-code-btn{white-space:nowrap;flex-shrink:0}.auth-msg{margin:0;font-size:.88rem}.auth-msg--error{color:#a33b2b}.auth-msg--ok{color:var(--accent)}.auth-submit{width:100%;margin-top:.2rem}.preview{grid-template-columns:1fr 1fr;gap:.75rem;min-height:min(56svh,480px);display:grid}.preview__pane{border:1px solid color-mix(in srgb, var(--brand) 10%, transparent);background:#d8e0db;border-radius:1rem;place-items:center;min-height:280px;display:grid;position:relative;overflow:hidden}.preview__pane--result{background-color:#d8e0db;background-image:linear-gradient(45deg,#c5d0ca 25%,#0000 25%),linear-gradient(-45deg,#c5d0ca 25%,#0000 25%),linear-gradient(45deg,#0000 75%,#c5d0ca 75%),linear-gradient(-45deg,#0000 75%,#c5d0ca 75%);background-position:0 0,0 9px,9px -9px,-9px 0;background-size:18px 18px}.preview__pane span{z-index:1;color:#f4f7f2;background:#0f3d3e8c;border-radius:.35rem;padding:.25rem .5rem;font-size:.75rem;font-weight:600;position:absolute;top:.7rem;left:.7rem}.preview__pane img{object-fit:contain;width:100%;height:100%;max-height:min(56svh,480px)}.preview__placeholder{color:var(--muted);text-align:center;padding:1rem}.preview--busy .preview__pane--result{opacity:.85}.workspace__wechat-tip{color:var(--muted);margin:0 0 .85rem;font-size:.85rem}.save-sheet{z-index:50;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0f3d3e80;place-items:end center;padding:0;animation:.25s both rise;display:grid;position:fixed;inset:0}.save-sheet__panel{border:1px solid color-mix(in srgb, var(--brand) 12%, transparent);background:#f7faf8;border-radius:1.15rem 1.15rem 0 0;width:min(100%,28rem);max-height:min(92svh,40rem);padding:1.15rem 1.15rem 1.35rem;overflow:auto;box-shadow:0 -12px 40px #0f3d3e2e}.save-sheet__head{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.save-sheet__head h2{font-family:var(--font-display);color:var(--brand);margin:0;font-size:1.35rem}.save-sheet__close{color:var(--muted);cursor:pointer;background:0 0;border:none;padding:.1rem .35rem;font-size:1.5rem;line-height:1}.save-sheet__lead{color:var(--muted);margin:.45rem 0 0;font-size:.9rem;line-height:1.45}.save-sheet__frame{background:#fff;border-radius:.85rem;place-items:center;min-height:12rem;margin-top:.95rem;display:grid;overflow:hidden}.save-sheet__frame--checker{background-color:#d8e0db;background-image:linear-gradient(45deg,#c5d0ca 25%,#0000 25%),linear-gradient(-45deg,#c5d0ca 25%,#0000 25%),linear-gradient(45deg,#0000 75%,#c5d0ca 75%),linear-gradient(-45deg,#0000 75%,#c5d0ca 75%);background-position:0 0,0 8px,8px -8px,-8px 0;background-size:16px 16px}.save-sheet__frame--busy{opacity:.75}.save-sheet__loading{color:var(--muted);padding:2rem 1rem;font-size:.92rem}.save-sheet__frame img{object-fit:contain;-webkit-touch-callout:default;-webkit-user-select:none;user-select:none;pointer-events:auto;width:100%;max-height:min(52svh,26rem)}.save-sheet__actions{flex-direction:column;gap:.55rem;margin-top:1rem;display:flex}.save-sheet__actions .btn{width:100%}.footer{text-align:center;color:var(--muted);padding:1rem clamp(1.25rem,4vw,2.5rem) 1.4rem;font-size:.8rem}.footer p{margin:0}@keyframes rise{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@media (width<=720px){.topbar__note{display:none}.preview{grid-template-columns:1fr}.topbar__email{max-width:6.5rem}}
