:root{font-family:Noto Sans SC,sans-serif;color:#303a32;background:#f6f7f3;font-synthesis:none;font-weight:400}*{box-sizing:border-box}body{margin:0}button,input,textarea,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.43}button{transition:background .2s,transform .2s}button:focus-visible,a:focus-visible{outline:3px solid #95ae80;outline-offset:3px}header{height:83px;border-bottom:1px solid #e5e8e0;background:#fff;display:flex;align-items:center;justify-content:space-between;padding:0 4.5%}.logo{display:flex;align-items:center;gap:13px;font-size:25px;font-weight:600;color:#2d4130;text-decoration:none;letter-spacing:3px}.logo-mark{width:38px;height:38px;background:#344b36;color:#fff;border-radius:10px;display:grid;place-items:center}.logo-divider{height:20px;width:1px;background:#dfe3dc;margin:0 3px}.logo-sub{font-size:13px;letter-spacing:1px;font-weight:400;color:#72796e}.header-right{display:flex;gap:25px;align-items:center;font-size:11px;color:#7e847a}.local{display:flex;align-items:center;gap:7px}.local>span,.preview-badge>span{width:6px;height:6px;background:#859b6d;border-radius:50%}.version{border:1px solid #e5e7df;border-radius:5px;padding:5px 10px}main{max-width:1440px;margin:0 auto;padding:45px 5% 0}.intro{display:flex;align-items:center;justify-content:space-between;margin-bottom:40px}.eyebrow{font-size:10px;font-weight:500;letter-spacing:2.5px;color:#8b967f}h1{font-size:30px;font-weight:500;letter-spacing:1px;margin:12px 0}h1 span{color:#8e9f7d}.intro p{font-size:12px;color:#8a8e83;margin:12px 0 0}.intro-note{display:flex;align-items:center;gap:13px;padding:17px 23px;background:#eef0e7;border:1px solid #e3e7d9;border-radius:8px;color:#718061;font-size:11px;line-height:2}.intro-note b{font-weight:400;color:#929b86}.workspace{display:grid;grid-template-columns:minmax(350px,.92fr) minmax(460px,1.2fr);gap:32px;align-items:start}.section-heading{display:flex;align-items:center;gap:10px;margin-bottom:17px;height:28px}.step{font-size:10px;color:#6a795d;background:#e7ecdf;padding:5px 7px;border-radius:4px;font-weight:600}h2{font-size:16px;font-weight:500;margin:0}.section-hint{margin-left:auto;font-size:11px;color:#a0a597}.panel{background:#fff;border:1px solid #e5e8df;border-radius:9px;padding:23px;margin-bottom:17px}.label-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:17px}h3{font-size:13px;font-weight:500;margin:0}.label-row>span{color:#959b8e;font-size:10px}em{color:#9b765b;font-style:normal;font-size:12px}.upload{width:100%;border:1px dashed #cbd4bf;border-radius:7px;background:#fafbf7;display:flex;flex-direction:column;align-items:center;padding:25px 12px;color:#56624e;gap:10px}.upload:hover,.upload.drag{background:#edf2e6;border-color:#7e936e}.upload-icon{background:#eef1e7;border-radius:10px;width:45px;height:45px;display:grid;place-items:center;color:#7d8e6d;margin-bottom:2px}.upload b{font-size:12px;font-weight:500}.upload small{font-size:10px;color:#a0a596}.upload-link{display:flex;align-items:center;gap:4px;background:#fff;border:1px solid #dce3d2;padding:7px 14px;border-radius:5px;font-size:11px;margin-top:5px}.tip{display:flex;gap:6px;align-items:center;font-size:10px;color:#9aa28e;margin-top:13px}.photo-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;margin-top:14px}.photo{position:relative;aspect-ratio:1;background:#f3f3ed;border-radius:5px;overflow:hidden}.photo img{width:100%;height:100%;object-fit:contain}.photo-number{position:absolute;left:4px;top:4px;font-size:9px;background:#fffd;border-radius:3px;padding:2px 5px}.photo-delete{position:absolute;right:3px;top:3px;border:0;border-radius:50%;display:grid;place-items:center;padding:3px;background:#fffd}.photo-actions{position:absolute;bottom:0;right:0;display:flex}.photo-actions button{border:0;background:#fffd;padding:3px}.information h3{margin-bottom:20px}label{display:block;font-size:11px;color:#626a5e;margin-top:16px}input,textarea,select{display:block;width:100%;border:1px solid #e2e6dc;background:#fff;border-radius:5px;padding:10px 11px;color:#3f483b;font-size:11px;margin-top:8px;outline:none}input:focus,textarea:focus,select:focus{border-color:#879b72;box-shadow:0 0 0 2px #edf1e7}input::placeholder,textarea::placeholder{color:#b1b6aa}textarea{resize:vertical;line-height:1.8}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 15px}.form-grid label:last-child{grid-column:1/-1}.field-hint{float:right;color:#a7ad9e;font-size:10px}.optional{color:#a3a998;font-size:9px;margin-left:5px}.templates{display:grid;grid-template-columns:repeat(3,1fr);gap:11px}.template{padding:4px 4px 10px;background:#fff;border:1px solid #e6e9e0;border-radius:6px;text-align:left;min-width:0}.template.chosen{border-color:#82946d;background:#f8faf4;box-shadow:0 0 0 1px #82946d}.template-art{height:95px;background:#eeeee7;position:relative;overflow:hidden;border-radius:3px;margin-bottom:10px}.template-art:after{content:"";position:absolute;background:#d3d7cb;width:35px;height:50px;bottom:8px;left:50%;transform:translate(-50%);border-radius:6px 6px 14px 14px;box-shadow:8px 4px 10px #0001}.template-art>span:first-child{position:absolute;width:38px;height:3px;left:12px;top:14px;background:#73796a}.template-art>i{position:absolute;width:25px;height:2px;left:12px;top:23px;background:#a9b09e}.template-art>b{position:absolute;width:80%;height:1px;left:10%;bottom:7px;background:#d7daca}.template-art.home{background:#f2e4d4}.home.template-art:after{background:#caaa8d;border-radius:20px 20px 10px 10px}.template-art.luxe{background:#303b37}.luxe.template-art:after{background:#aaa58c}.luxe.template-art>span:first-child{background:#c7b98e}.template strong{display:block;padding:0 5px;font-weight:500;font-size:10px;white-space:nowrap}.template small{display:block;padding:4px 5px 0;font-size:7px;color:#a1a793;letter-spacing:.4px}.template-check{position:absolute;right:5px;top:5px;color:#fff;background:#70835f;border-radius:50%;height:17px;width:17px;display:grid;place-items:center;z-index:1}.generate{border:0;border-radius:6px;background:#435c3c;width:100%;color:#fff;display:flex;align-items:center;justify-content:center;gap:10px;padding:15px;font-size:13px;box-shadow:0 5px 12px #34462d15}.generate:hover{background:#344c2c}.generate svg:last-child{margin-left:auto}.generate svg:first-child{margin-left:auto}.generate-note{text-align:center;font-size:10px;color:#9ba391;margin:11px 0}.preview-badge{margin-left:auto;display:flex;align-items:center;gap:6px;font-size:10px;color:#829275;border:1px solid #dfe6d6;padding:5px 9px;border-radius:15px}.preview-panel{border:1px solid #e1e5da;border-radius:9px;overflow:hidden;background:#fff}.preview-toolbar{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid #e7e9e1;font-size:10px;color:#a1a798}.preview-toolbar>div{display:flex;align-items:center;gap:8px;color:#65715d}.preview-toolbar b{font-weight:400;font-size:11px}.canvas-area{padding:25px 55px;background:#e9ece4;background-image:radial-gradient(#cfd5c6 .65px,transparent .65px);background-size:9px 9px;display:flex;justify-content:center}.canvas-wrap{position:relative;max-width:410px;width:100%;box-shadow:0 6px 20px #3b483316;background:#f3f2ee}.canvas-wrap canvas{width:100%;display:block;aspect-ratio:3/4}.empty-art{position:absolute;top:32%;left:6.1%;width:87.8%;height:44%;display:flex;flex-direction:column;align-items:center;justify-content:center;background:radial-gradient(ellipse at 40% 35%,#efeee6,#d9ddcf)}.empty-art>span{font-size:7px;letter-spacing:2px;color:#8d947e;margin-top:23px}.vase{width:80px;height:130px;background:linear-gradient(90deg,#a0aa90,#d8ddc8 40%,#b7c0a4 75%,#89967b);border-radius:24% 24% 32% 32%;box-shadow:18px 15px 22px #727d5733;position:relative}.vase:before{content:"";position:absolute;left:15px;top:-12px;width:50px;height:25px;border-radius:50%;background:radial-gradient(ellipse,#899275 30%,#b2bc9d 33%,#d6ddc6 65%,#b1bba0 68%)}.vase:after{content:"";position:absolute;bottom:0;left:10%;width:80%;height:4px;background:#77846a44;border-radius:50%}.vase div{position:absolute;width:70px;height:120px;bottom:115px;left:32px;border-left:2px solid #748466;transform:rotate(12deg)}.vase div:before,.vase div:after{content:"";position:absolute;width:35px;height:15px;left:0;top:24px;background:#8b9b79;border-radius:100% 0;transform:rotate(-24deg)}.vase div:after{top:58px;left:-35px;transform:rotate(45deg)}.preview-footer{display:flex;justify-content:space-between;padding:13px 20px;color:#a0a797;font-size:9px}.workflow{padding:24px 5px;text-align:center}.workflow>div{display:flex;align-items:center;justify-content:center;gap:10px;font-size:10px;color:#8b9580}.workflow>div>span{font-size:9px;width:18px;height:18px;border:1px solid #dce2d3;border-radius:50%;display:grid;place-items:center}.workflow p{font-size:10px;color:#acb29f;margin-top:15px}.export-bar{padding:20px;background:#fff;border:1px solid #e5e8df;border-radius:8px;display:flex;align-items:center;justify-content:space-between;gap:14px}.export-bar>div:first-child{display:flex;gap:10px;align-items:center;color:#78876a}.export-bar b{display:block;font-size:11px;font-weight:500;color:#56604e}.export-bar small{display:block;font-size:8px;color:#a3ab96;margin-top:5px}.export-buttons{display:flex;gap:8px}.export-buttons button{background:#fff;border:1px solid #dfe4d7;border-radius:5px;padding:10px;font-size:10px;color:#727f66;white-space:nowrap}.export-buttons .primary{display:flex;align-items:center;gap:6px;background:#435c3c;color:#fff;border-color:#435c3c}.privacy-note{font-size:9px;display:flex;align-items:center;justify-content:center;gap:6px;color:#a0a992;margin-top:14px}.page-strip{display:flex;gap:10px;margin:18px 0;overflow-x:auto}.page-thumb{min-width:75px;flex:1;border:1px solid #e0e4d9;border-radius:5px;background:#fff;overflow:hidden}.page-thumb.selected{border-color:#647c50;box-shadow:0 0 0 1px #647c50}.page-thumb>button{padding:4px;border:0;background:transparent;width:100%}.page-thumb canvas{width:100%;display:block}.page-thumb span{font-size:8px;display:block;white-space:nowrap;margin-top:6px}.page-move{display:flex;justify-content:center;gap:5px}.page-move button{border:0;background:transparent;color:#7d896d}.editor{padding:20px}.editor label{margin-top:10px}.editor>small{display:block;font-size:10px;color:#999f91;margin-top:12px;line-height:1.8}.text-button{display:flex;align-items:center;gap:5px;border:0;background:#f0f3eb;color:#6f815e;padding:7px 9px;font-size:10px;border-radius:4px}footer{display:flex;justify-content:space-between;border-top:1px solid #e3e7db;margin-top:44px;padding:24px 0 30px;color:#9ca58f;font-size:10px}footer i{font-style:normal;margin:0 7px}footer>span:last-child{font-size:8px;letter-spacing:1.2px}.toast{position:fixed;bottom:25px;left:50%;transform:translate(-50%);z-index:10;background:#30482e;color:#fff;border-radius:8px;box-shadow:0 8px 40px #0002;display:flex;align-items:center;gap:10px;padding:15px 20px;font-size:12px;max-width:90vw}.toast button{background:transparent;border:0;color:#fff;display:flex}.spin{animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media(min-width:1500px){main{padding-left:60px;padding-right:60px}.canvas-area{padding:30px 65px}.canvas-wrap{max-width:450px}}@media(max-width:1050px){main{padding:30px 3% 0}.workspace{gap:20px;grid-template-columns:minmax(310px,1fr) minmax(360px,1.1fr)}.intro-note{display:none}.canvas-area{padding:25px 30px}.export-bar{flex-wrap:wrap}.export-buttons{width:100%}.export-buttons button{flex:1;justify-content:center}.panel{padding:18px}}@media(max-width:740px){header{padding:0 5%;height:70px}.logo{font-size:23px}.logo-sub,.logo-divider,.version{display:none}.header-right{font-size:10px}.intro{margin-bottom:28px}h1{font-size:23px;line-height:1.6}.intro p{font-size:11px;line-height:1.8}.eyebrow{font-size:8px}main{padding:28px 5% 0}.workspace{grid-template-columns:1fr;gap:30px}.canvas-area{padding:22px 28px}.panel{padding:20px}footer{line-height:1.8}footer>span:last-child{display:none}.export-bar{flex-wrap:nowrap}.export-buttons{width:auto}.export-bar>div:first-child{display:none}.export-buttons{width:100%}.templates{gap:12px}.template-art{height:110px}.photo-grid{grid-template-columns:repeat(4,1fr)}}[hidden]{display:none!important}.settings,.results{min-width:0}.page-strip{max-width:100%}.editor-actions{display:flex;gap:6px}
