:root{--bg:#f8f3ec;--card:#fffdf9;--ink:#2e2520;--sub:#8a7d72;--brown:#8b5a2b;--brown2:#a8703a;--line:#eadfd2;--soft:#f1e7da}
*{box-sizing:border-box;margin:0;padding:0;-webkit-tap-highlight-color:transparent}
html,body{background:var(--bg);color:var(--ink);font:15px/1.6 -apple-system,"PingFang SC","Microsoft YaHei",sans-serif}
body{max-width:480px;margin:0 auto;min-height:100vh;padding-bottom:env(safe-area-inset-bottom)}
button,input,textarea{font:inherit;color:inherit}
.hidden{display:none!important}
.demo-bar{position:sticky;top:0;z-index:30;background:#5b4a3a;color:#fff;font-size:12px;text-align:center;padding:4px 8px}
.page{display:none}.page.active{display:block}
.hero{position:relative;height:300px;overflow:hidden}
.return-welcome{margin:16px;padding:16px;background:var(--card);border:1px solid var(--line);border-radius:16px;text-align:center}
.return-welcome h2{font-size:19px;line-height:1.6;margin-bottom:12px;overflow-wrap:anywhere}
.return-img{display:block;width:100%;height:220px;object-fit:contain;border-radius:12px;margin-bottom:12px;background:var(--soft)}
#returnGenerate{margin-top:10px;font-size:15px;padding:10px}
.return-contact{border-top:1px solid var(--line);margin-top:16px;padding-top:14px}
.hero-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hero-label{position:absolute;top:12px;right:12px;background:rgba(0,0,0,.6);color:#fff;font-size:12px;padding:3px 10px;border-radius:12px}
.hero-fade{position:absolute;inset:auto 0 0 0;height:120px;background:linear-gradient(transparent,var(--bg))}
.home-body{padding:0 20px 28px;text-align:center;margin-top:-30px;position:relative}
.brand{font-size:32px;letter-spacing:2px;font-weight:700}
.slogan{color:var(--sub);margin:4px 0 18px}
.cats{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;font-size:12px;color:var(--sub)}
.cats i{display:block;font-style:normal;font-size:20px;width:40px;height:40px;line-height:40px;margin:0 auto 4px;background:var(--soft);border-radius:50%}
.script{font-family:"Kaiti SC","STKaiti","KaiTi",serif;font-size:19px;color:#6b5847;text-align:left;margin:22px 10px}
.btn{display:block;width:100%;border:0;border-radius:28px;padding:14px;font-size:17px;font-weight:600;text-align:center;text-decoration:none;cursor:pointer}
.btn.primary{background:var(--brown);color:#fff;box-shadow:0 6px 16px rgba(139,90,43,.25)}
.btn.primary:active{background:var(--brown2)}
.btn.ghost{background:var(--card);color:var(--brown);border:1px solid var(--line)}
.btn:disabled,.btn.disabled{opacity:.45;pointer-events:none}
.tags{color:var(--brown);font-size:13px;margin:10px 0}
.steps3{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:18px 0 10px;font-size:12px;color:var(--sub)}
.steps3 b{display:block;color:var(--brown);font-size:18px}
.note{font-size:11px;color:var(--sub);margin-top:14px;text-align:left}
.bar{position:sticky;top:24px;z-index:20;display:flex;align-items:center;justify-content:space-between;background:var(--bg);padding:10px 14px;border-bottom:1px solid var(--line)}
.bar span{font-weight:600}.bar em{font-style:normal;color:var(--sub);font-size:13px;width:32px;text-align:right}
.back{border:0;background:none;font-size:24px;width:32px;line-height:1;cursor:pointer}
.wrap{padding:18px 18px 32px}
h2{font-size:22px}h3{font-size:16px;margin:20px 0 10px}h3 small{color:var(--sub);font-weight:400;font-size:12px}
.sub{color:var(--sub);font-size:13px;margin:4px 0 14px}.center{text-align:center}
.types{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.types button{text-align:left;background:var(--card);border:1.5px solid var(--line);border-radius:14px;padding:14px 12px;cursor:pointer}
.types button:last-child{grid-column:span 2}
.types b{display:block;font-size:15px}.types small{color:var(--sub);font-size:12px}
.types .on,.chips .on,.styles .on{border-color:var(--brown);background:#f6ebde}
.chips,.styles{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.chips button,.styles button{background:var(--card);border:1.5px solid var(--line);border-radius:10px;padding:10px 4px;cursor:pointer;font-size:14px}
.chips .on,.styles .on{background:var(--brown);color:#fff}
.row2{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:14px}
.fld{display:block;font-size:13px;color:var(--sub);margin-top:14px}
.row2 .fld{margin-top:0}
.fld input,.fld select,.fld textarea{display:block;width:100%;margin-top:6px;background:var(--card);border:1.5px solid var(--line);border-radius:10px;padding:10px 12px;font-size:16px;outline:0}
.fld textarea{height:86px;resize:none}
.fld select{appearance:none;-webkit-appearance:none;background:var(--card) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%238a7d72' stroke-width='1.5'/%3E%3C/svg%3E") no-repeat right 12px center;padding-right:30px}
.fld input:focus,.fld select:focus,.fld textarea:focus{border-color:var(--brown)}
.err{color:#c0392b;font-size:13px;min-height:20px;margin:12px 0 6px}
.ups{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.up{position:relative;aspect-ratio:1;border:1.5px dashed #cdbca8;border-radius:12px;background:var(--card) center/cover no-repeat;display:flex;align-items:center;justify-content:center;text-align:center;font-size:12px;color:var(--sub);cursor:pointer;overflow:hidden}
.up input{position:absolute;inset:0;opacity:0;cursor:pointer}
.up span{line-height:1.5}.up.has{border-style:solid;border-color:var(--brown)}.up.has span{display:none}
.hint{font-size:12px;color:#9a6b3c;background:#f6ebde;border-radius:8px;padding:8px 10px;margin-top:10px}
.gen{min-height:80vh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:20px}
.spinner{width:56px;height:56px;border:4px solid var(--line);border-top-color:var(--brown);border-radius:50%;animation:sp 1s linear infinite;margin-bottom:18px}
@keyframes sp{to{transform:rotate(360deg)}}
.live .demo-bar,.live .mock-tag,.live .ai-mark{display:none}
.mock-tag{font-size:12px;color:#fff;background:#5b4a3a;border-radius:12px;padding:3px 10px}
.res-img{position:relative;border-radius:14px;overflow:hidden;background:var(--soft)}
.res-img img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}
.ai-mark{position:absolute;right:8px;top:8px;background:rgba(0,0,0,.55);color:#fff;font-size:11px;padding:2px 8px;border-radius:10px}
.disc{font-size:12px;color:var(--sub);margin:8px 0 12px}
.act2{display:grid;grid-template-columns:1fr 1fr;gap:10px}.act2 .btn{font-size:15px;padding:12px}
.quota{font-size:12px;color:var(--sub);text-align:center;margin:6px 0}
#leadBox,#dislikeBox{margin-top:14px}
.mask{position:fixed;inset:0;z-index:50;background:rgba(0,0,0,.45);display:flex;align-items:flex-end;justify-content:center}
.sheet{position:relative;width:100%;max-width:480px;background:var(--card);border-radius:20px 20px 0 0;padding:22px 22px calc(22px + env(safe-area-inset-bottom));text-align:center}
.x{position:absolute;right:14px;top:10px;border:0;background:none;font-size:26px;color:var(--sub);cursor:pointer}
.qr{width:180px;height:180px;margin:8px auto 4px;border:1px solid var(--line);border-radius:12px;display:flex;align-items:center;justify-content:center;color:var(--sub);font-size:13px;overflow:hidden;background:#fff}
.qr img{width:100%;height:100%;object-fit:contain}
.sheet .note{text-align:center}
.toast{position:fixed;left:50%;bottom:90px;transform:translateX(-50%);z-index:60;background:rgba(40,30,22,.9);color:#fff;font-size:14px;padding:8px 16px;border-radius:20px;max-width:80%;text-align:center}
.guide{font-size:13px;color:var(--brown);background:#f6ebde;border-radius:10px;padding:8px 10px;text-align:center;margin:-4px 0 12px}
#p-result .wrap{padding-bottom:150px}
.dock{position:fixed;left:0;right:0;bottom:0;z-index:25;max-width:480px;margin:0 auto;background:var(--card);border-top:1px solid var(--line);box-shadow:0 -6px 18px rgba(60,40,20,.08);padding:8px max(16px,env(safe-area-inset-right)) calc(10px + env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left))}
.dock-tip{font-size:12px;color:var(--brown);text-align:center;margin-bottom:6px}
.pulse{animation:pl 1.8s ease-in-out 3}
@keyframes pl{50%{box-shadow:0 0 0 8px rgba(139,90,43,.18)}}
@media (prefers-reduced-motion:reduce){.pulse{animation:none}}
.fb{margin-top:14px}.fb .chips button.on{background:var(--brown);color:#fff;border-color:var(--brown)}
.hint.center{text-align:center}
.wxid{display:flex;align-items:center;justify-content:center;gap:8px;font-size:14px;margin:4px 0 12px}
.wxid b{user-select:all;-webkit-user-select:all}
.wxid button{border:1px solid var(--brown);color:var(--brown);background:none;border-radius:14px;padding:2px 12px;font-size:13px;cursor:pointer}
