:root{--bg: #faf6f0;--card: #ffffff;--ink: #2b2620;--sub: #8a7f70;--brand: #b08954;--brand-deep: #8a6d3b;--grad: linear-gradient(135deg, #b08954, #8a6d3b);--line: rgba(90, 70, 40, .12);--sh: 0 8px 28px rgba(96, 74, 40, .12);--ease: cubic-bezier(.22, .61, .36, 1)}*{margin:0;padding:0;box-sizing:border-box}html,body{background:var(--bg);color:var(--ink)}body{font-family:PingFang SC,HarmonyOS Sans SC,Microsoft YaHei,sans-serif;-webkit-font-smoothing:antialiased;padding-bottom:env(safe-area-inset-bottom)}a{color:inherit;text-decoration:none}img,video{display:block;max-width:100%}button{font-family:inherit}.container{max-width:640px;margin:0 auto;padding:0 16px}.navbar{position:sticky;top:0;z-index:100;background:#faf6f0e0;backdrop-filter:saturate(180%) blur(14px);-webkit-backdrop-filter:saturate(180%) blur(14px);border-bottom:1px solid var(--line);padding-top:env(safe-area-inset-top)}.navbar .container{display:flex;align-items:center;height:54px}.logo{font-size:19px;font-weight:800;letter-spacing:1px;color:var(--brand-deep)}.logo em{font-style:normal;font-size:11px;color:var(--sub);margin-left:6px;letter-spacing:2px}.nav-links{margin-left:auto;display:flex;gap:14px;font-size:14px}.nav-links a{color:var(--sub);padding:6px 2px}.nav-links a.active,.nav-links a:hover{color:var(--brand-deep);font-weight:600}.card{background:var(--card);border-radius:16px;box-shadow:var(--sh);border:1px solid var(--line);padding:16px;margin-top:14px}.section-title{font-size:17px;font-weight:800;margin:22px 0 2px;display:flex;align-items:baseline;gap:8px}.section-title small{color:var(--sub);font-size:12px;font-weight:400}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;border:none;cursor:pointer;border-radius:999px;font-weight:700;background:var(--grad);color:#fff;font-size:15px;padding:12px 26px;transition:transform .15s var(--ease),box-shadow .15s var(--ease);box-shadow:0 6px 18px #8a6d3b59}.btn:active{transform:scale(.97)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn.plain{background:#fff;color:var(--brand-deep);border:1px solid var(--brand);box-shadow:none}.btn.sm{padding:7px 16px;font-size:13px}.btn.gray{background:#f0ece4;color:var(--ink);box-shadow:none}.field{margin-top:14px}.field label{display:block;font-size:13px;color:var(--sub);margin-bottom:6px;font-weight:600}.field input[type=text],.field input[type=password],.field textarea{width:100%;border:1px solid var(--line);border-radius:12px;background:#fff;padding:12px 14px;font-size:15px;color:var(--ink);outline:none;font-family:inherit}.field textarea{min-height:180px;line-height:1.7;resize:vertical}.field input:focus,.field textarea:focus{border-color:var(--brand);box-shadow:0 0 0 3px #b0895426}.tag{display:inline-block;font-size:11px;font-weight:700;border-radius:999px;padding:2px 10px}.tag.ok{background:#e7f4ea;color:#2f7d46}.tag.warn{background:#fdf1dc;color:#a2711a}.tag.err{background:#fdeaea;color:#b34040}.tag.info{background:#e9f0fb;color:#3a66a8}.toast{position:fixed;left:50%;top:42%;transform:translate(-50%,-50%);background:#2b2620eb;color:#fff;padding:12px 22px;border-radius:12px;font-size:14px;z-index:9999;max-width:78vw;text-align:center;box-shadow:0 8px 30px #00000040;animation:popIn .22s var(--ease)}.toast-success{background:#2f7d46f2}.toast-error{background:#b34040f2}@keyframes popIn{0%{opacity:0;transform:translate(-50%,-46%) scale(.94)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}.submit-bar{position:sticky;bottom:0;z-index:50;padding:12px 16px calc(12px + env(safe-area-inset-bottom));background:linear-gradient(transparent,var(--bg) 40%)}.empty{text-align:center;color:var(--sub);padding:60px 0;font-size:14px;line-height:2}.empty .big{font-size:44px}.tpl-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.tpl-card{background:var(--card);border-radius:14px;overflow:hidden;border:1px solid var(--line);box-shadow:var(--sh);cursor:pointer;transition:transform .2s var(--ease)}.tpl-card:active{transform:scale(.98)}.tpl-cover{position:relative;aspect-ratio:4/3;background:var(--grad);display:flex;align-items:center;justify-content:center;color:#fff;font-size:30px}.tpl-cover img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover}.tpl-name{font-weight:800;padding:10px 12px 2px;font-size:14px}.tpl-desc{color:var(--sub);font-size:12px;padding:0 12px 10px;line-height:1.5}.tpl-price{padding:0 12px 12px;color:var(--brand-deep);font-weight:800;font-size:15px}.tpl-price small{color:var(--sub);font-weight:400;font-size:11px;margin-left:6px}.photo-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.photo-item{position:relative;aspect-ratio:1;border-radius:12px;overflow:hidden;border:1px solid var(--line)}.photo-item img{width:100%;height:100%;object-fit:cover}.photo-del{position:absolute;top:4px;right:4px;width:22px;height:22px;border-radius:50%;background:#0000008c;color:#fff;border:none;cursor:pointer;font-size:12px;line-height:22px;text-align:center}.photo-add{aspect-ratio:1;border:1.5px dashed var(--brand);border-radius:12px;background:#b089540f;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;color:var(--brand-deep);font-size:12px;cursor:pointer}.photo-add .plus{font-size:24px}.voice-item{display:flex;align-items:center;gap:12px;padding:12px;border:1px solid var(--line);border-radius:12px;margin-top:10px;cursor:pointer;background:#fff}.voice-item.selected{border-color:var(--brand);box-shadow:0 0 0 3px #b0895426}.voice-avatar{width:42px;height:42px;border-radius:50%;background:var(--grad);color:#fff;display:flex;align-items:center;justify-content:center;font-size:18px;flex-shrink:0}.voice-meta{flex:1;min-width:0}.voice-meta .name{font-weight:700;font-size:14px}.voice-meta .desc{color:var(--sub);font-size:12px;margin-top:2px}.tier-item{border:1.5px solid var(--line);border-radius:14px;padding:14px;margin-top:10px;cursor:pointer;background:#fff;display:flex;gap:12px;align-items:flex-start}.tier-item.selected{border-color:var(--brand);box-shadow:0 0 0 3px #b0895426}.tier-radio{width:18px;height:18px;border-radius:50%;border:2px solid var(--brand);margin-top:2px;flex-shrink:0}.tier-item.selected .tier-radio{background:radial-gradient(circle,var(--brand) 45%,#fff 50%)}.tier-name{font-weight:800}.tier-desc{color:var(--sub);font-size:12px;margin-top:3px;line-height:1.6}.tier-price{margin-left:auto;text-align:right;color:var(--brand-deep);font-weight:800}.chat-box{display:flex;flex-direction:column;gap:10px;padding:14px 0}.bubble{max-width:78%;padding:10px 14px;border-radius:14px;font-size:14px;line-height:1.6;word-break:break-all}.bubble .meta{font-size:10px;opacity:.65;margin-top:4px}.bubble.me{align-self:flex-end;background:var(--grad);color:#fff;border-bottom-right-radius:4px}.bubble.them{align-self:flex-start;background:#fff;border:1px solid var(--line);border-bottom-left-radius:4px}.bubble .attach{display:block;margin-top:6px;border-radius:8px;max-width:220px}.progress-track{height:8px;background:#efe9df;border-radius:999px;overflow:hidden}.progress-fill{height:100%;background:var(--grad);border-radius:999px;transition:width .5s var(--ease)}@media(max-width:768px){input,textarea,select{font-size:16px}}@supports (padding: env(safe-area-inset-bottom)){.bottom-bar,.footer-bar,.pay-bar,.fixed-bottom{padding-bottom:calc(12px + env(safe-area-inset-bottom))}}
