.pwa-install-wrapper[data-v-cbda53b0]{display:contents}.pwa-debug-panel[data-v-cbda53b0]{position:fixed;bottom:20px;left:50%;transform:translate(-50%);z-index:10000;width:90%;max-width:420px;background:#1a1a2e;border-radius:16px;padding:16px;box-shadow:0 8px 32px #0006;font-size:13px;max-height:70vh;overflow-y:auto}.debug-header[data-v-cbda53b0]{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;padding-bottom:8px;border-bottom:1px solid #333}.debug-header h3[data-v-cbda53b0]{margin:0;color:#fff;font-size:16px}.debug-content[data-v-cbda53b0]{display:flex;flex-direction:column;gap:8px}.debug-item[data-v-cbda53b0]{display:flex;justify-content:space-between;align-items:flex-start;gap:8px;padding:6px 8px;background:#ffffff0d;border-radius:6px}.debug-label[data-v-cbda53b0]{color:#aaa;flex-shrink:0;min-width:100px}.debug-value[data-v-cbda53b0]{color:#fff;text-align:right;word-break:break-all}.debug-value.ok[data-v-cbda53b0]{color:#4ade80}.debug-value.fail[data-v-cbda53b0]{color:#f87171}.debug-actions[data-v-cbda53b0]{display:flex;gap:8px;margin-top:12px;padding-top:8px;border-top:1px solid #333}.btn-debug-refresh[data-v-cbda53b0],.btn-debug-reset[data-v-cbda53b0]{flex:1;background:#9c2c1f;color:#fff;border:none;border-radius:8px;padding:8px;font-size:13px;cursor:pointer}.pwa-install-prompt[data-v-cbda53b0]{position:fixed;bottom:20px;left:50%;transform:translate(-50%);z-index:9999;width:90%;max-width:400px}.prompt-content[data-v-cbda53b0]{display:flex;align-items:center;background:linear-gradient(135deg,#9c2c1f,#c54634);border-radius:16px;padding:16px 20px;box-shadow:0 8px 32px #9c2c1f4d}.prompt-icon[data-v-cbda53b0]{width:48px;height:48px;background:#fff3;border-radius:12px;display:flex;align-items:center;justify-content:center;color:#fff;margin-right:16px;flex-shrink:0}.prompt-icon svg[data-v-cbda53b0]{width:24px;height:24px}.prompt-text[data-v-cbda53b0]{flex:1;min-width:0}.prompt-text h3[data-v-cbda53b0]{margin:0 0 4px;color:#fff;font-size:16px;font-weight:600}.prompt-text p[data-v-cbda53b0]{margin:0;color:#fffc;font-size:13px}.prompt-buttons[data-v-cbda53b0]{display:flex;flex-direction:column;gap:8px;margin-left:16px}.btn-install[data-v-cbda53b0]{background:#fff;color:#9c2c1f;border:none;border-radius:8px;padding:8px 16px;font-size:13px;font-weight:600;cursor:pointer;transition:all .2s}.btn-install[data-v-cbda53b0]:active{transform:scale(.96)}.btn-install[data-v-cbda53b0]:disabled{opacity:.6;cursor:not-allowed}.btn-close[data-v-cbda53b0]{background:#fff3;color:#fff;border:none;border-radius:8px;padding:6px 16px;font-size:12px;cursor:pointer;transition:all .2s}.btn-close[data-v-cbda53b0]:active{background:#ffffff4d}.manual-guide[data-v-cbda53b0]{bottom:20px}.manual-content[data-v-cbda53b0]{flex-direction:column;align-items:stretch;padding:20px}.manual-header[data-v-cbda53b0]{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.manual-header h3[data-v-cbda53b0]{margin:0;color:#fff;font-size:18px;font-weight:600}.btn-close-circle[data-v-cbda53b0]{background:#fff3;color:#fff;border:none;border-radius:50%;width:28px;height:28px;font-size:18px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s}.btn-close-circle[data-v-cbda53b0]:active{background:#ffffff4d}.manual-steps[data-v-cbda53b0]{display:flex;flex-direction:column;gap:12px}.step-item[data-v-cbda53b0]{display:flex;align-items:flex-start;gap:12px}.step-num[data-v-cbda53b0]{background:#ffffff40;color:#fff;border-radius:50%;width:24px;height:24px;font-size:13px;font-weight:600;display:flex;align-items:center;justify-content:center;flex-shrink:0}.step-text[data-v-cbda53b0]{color:#fffffff2;font-size:14px;line-height:1.5}.slide-up-enter-active[data-v-cbda53b0],.slide-up-leave-active[data-v-cbda53b0]{transition:all .3s ease}.slide-up-enter-from[data-v-cbda53b0],.slide-up-leave-to[data-v-cbda53b0]{opacity:0;transform:translate(-50%,20px)}.app-shell[data-v-70155878]{min-height:100vh;display:flex;flex-direction:column;background:var(--color-bg)}.main[data-v-70155878]{flex:1;padding-bottom:60px}.tab-bar[data-v-70155878]{position:fixed;bottom:0;left:0;right:0;display:flex;background:var(--color-surface);border-top:1px solid var(--color-border);box-shadow:0 -2px 10px #0000000d;z-index:100;padding-bottom:env(safe-area-inset-bottom)}.tab-item[data-v-70155878]{flex:1;display:flex;flex-direction:column;align-items:center;padding:10px 0;color:var(--color-text-light);transition:all .2s}.tab-item[data-v-70155878]:hover,.tab-item.active[data-v-70155878]{color:var(--color-primary)}.tab-icon[data-v-70155878]{font-size:22px;margin-bottom:4px}.tab-text[data-v-70155878]{font-size:12px}.fade-enter-active[data-v-70155878],.fade-leave-active[data-v-70155878]{transition:opacity .25s ease}.fade-enter-from[data-v-70155878],.fade-leave-to[data-v-70155878]{opacity:0}.share-overlay[data-v-bb7b530b]{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:flex-end;justify-content:center;z-index:1000;padding:0 16px 24px}.share-modal[data-v-bb7b530b]{width:100%;max-width:420px;background:var(--color-surface, #fff);border-radius:16px 16px 12px 12px;overflow:hidden}.share-header[data-v-bb7b530b]{display:flex;align-items:center;justify-content:center;position:relative;padding:16px;font-size:15px;font-weight:600;color:var(--color-text, #3d2b1f);border-bottom:1px solid var(--color-border, rgba(156, 44, 31, .1))}.share-close[data-v-bb7b530b]{position:absolute;right:16px;top:50%;transform:translateY(-50%);width:28px;height:28px;border:none;background:#9c2c1f14;border-radius:50%;font-size:14px;color:var(--color-text-light, #8a7b6b);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s}.share-close[data-v-bb7b530b]:hover{background:#9c2c1f2e;color:var(--color-primary, #9c2c1f)}.share-options[data-v-bb7b530b]{display:grid;grid-template-columns:repeat(2,1fr);padding:24px 16px;gap:12px}.share-option[data-v-bb7b530b]{display:flex;flex-direction:column;align-items:center;gap:8px;cursor:pointer}.share-option[data-v-bb7b530b]:active{transform:scale(.95)}.share-icon[data-v-bb7b530b]{width:52px;height:52px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:transform .2s}.share-icon svg[data-v-bb7b530b]{width:24px;height:24px}.copy-icon[data-v-bb7b530b]{background:#9c2c1f1a;color:var(--color-primary, #9c2c1f)}.qr-icon[data-v-bb7b530b]{background:#8a6d3b1a;color:var(--color-accent, #8a6d3b)}.share-label[data-v-bb7b530b]{font-size:12px;color:var(--color-text-light, #8a7b6b)}.share-cancel[data-v-bb7b530b]{margin:0 16px 16px;padding:14px;text-align:center;border-radius:10px;background:var(--color-bg, #fdf8f0);font-size:14px;color:var(--color-text-light, #8a7b6b);cursor:pointer;transition:background .2s}.share-cancel[data-v-bb7b530b]:hover{background:#9c2c1f0f}.qr-modal[data-v-bb7b530b]{width:100%;max-width:320px;background:var(--color-surface, #fff);border-radius:16px;overflow:hidden}.qr-header[data-v-bb7b530b]{display:flex;align-items:center;justify-content:center;position:relative;padding:16px;font-size:15px;font-weight:600;color:var(--color-text, #3d2b1f);border-bottom:1px solid var(--color-border, rgba(156, 44, 31, .1))}.qr-body[data-v-bb7b530b]{display:flex;flex-direction:column;align-items:center;padding:20px;gap:12px}.qr-card[data-v-bb7b530b]{position:relative;display:flex;flex-direction:column;align-items:center;width:100%;padding:18px 14px 14px;background:linear-gradient(180deg,#9c2c1f0a,#fdf8f0);border:1px solid var(--color-border, rgba(156, 44, 31, .12));border-radius:12px}.qr-tagline[data-v-bb7b530b]{margin:0 0 8px;color:var(--color-primary, #9c2c1f);text-align:center;letter-spacing:3px;font-weight:600;font-size:15px;line-height:1.3}.qr-image[data-v-bb7b530b]{width:220px;height:220px;border-radius:8px;background:#fff;padding:8px;border:1px solid var(--color-border, rgba(156, 44, 31, .1))}.qr-tip[data-v-bb7b530b]{font-size:13px;color:var(--color-text-light, #8a7b6b)}.qr-download-btn[data-v-bb7b530b]{width:100%;padding:12px 24px;background:var(--color-primary, #9c2c1f);color:#fff;border:none;border-radius:10px;font-size:14px;font-weight:500;cursor:pointer;transition:background .2s;display:flex;align-items:center;justify-content:center;gap:6px}.download-icon[data-v-bb7b530b]{width:18px;height:18px}.qr-download-btn[data-v-bb7b530b]:hover{background:#8a251a}.qr-download-btn[data-v-bb7b530b]:active{transform:scale(.98)}.qr-download-btn[data-v-bb7b530b]:disabled{opacity:.7;cursor:not-allowed}.loading-dots[data-v-bb7b530b]{animation:dots-bb7b530b 1.5s infinite}@keyframes dots-bb7b530b{0%,20%{content:"保存中"}40%{content:"保存中."}60%{content:"保存中.."}80%,to{content:"保存中..."}}.preview-overlay[data-v-bb7b530b]{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000d9;display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:3000;padding:20px}.preview-container[data-v-bb7b530b]{display:flex;flex-direction:column;align-items:center;gap:16px;max-width:340px;width:100%}.preview-image[data-v-bb7b530b]{width:100%;max-width:300px;border-radius:12px;box-shadow:0 4px 20px #0000004d;-webkit-touch-callout:default;-webkit-user-select:none;user-select:none}.preview-tip[data-v-bb7b530b]{color:#ffffffe6;font-size:15px;letter-spacing:1px}.preview-close-btn[data-v-bb7b530b]{padding:10px 32px;background:#ffffff26;color:#fff;border:1px solid rgba(255,255,255,.3);border-radius:999px;font-size:14px;cursor:pointer}.preview-close-btn[data-v-bb7b530b]:active{background:#ffffff40}.toast[data-v-bb7b530b]{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);background:#000000bf;color:#fff;padding:10px 24px;border-radius:999px;font-size:14px;z-index:2000;letter-spacing:1px}.fade-enter-active[data-v-bb7b530b],.fade-leave-active[data-v-bb7b530b]{transition:opacity .25s ease}.fade-enter-from[data-v-bb7b530b],.fade-leave-to[data-v-bb7b530b]{opacity:0}.toast-enter-active[data-v-bb7b530b],.toast-leave-active[data-v-bb7b530b]{transition:all .3s ease}.toast-enter-from[data-v-bb7b530b],.toast-leave-to[data-v-bb7b530b]{opacity:0;transform:translate(-50%,-50%) scale(.9)}.home[data-v-e4eeadd5]{max-width:1100px;margin:0 auto}.hero[data-v-e4eeadd5]{text-align:center;padding:48px 20px 56px;background:radial-gradient(circle at 20% 30%,rgba(156,44,31,.06),transparent 40%),radial-gradient(circle at 80% 70%,rgba(138,109,59,.08),transparent 40%),repeating-linear-gradient(45deg,transparent,transparent 14px,rgba(156,44,31,.02) 14px,rgba(156,44,31,.02) 15px),linear-gradient(135deg,#fdf8f0,#f5ebe0);border-bottom:1px solid rgba(156,44,31,.08);position:relative;overflow:hidden}.share-btn[data-v-e4eeadd5]{position:absolute;top:16px;right:16px;width:40px;height:40px;border-radius:50%;background:#9c2c1f14;border:1px solid rgba(156,44,31,.15);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .25s;z-index:2}.share-btn svg[data-v-e4eeadd5]{width:20px;height:20px;color:var(--color-primary, #9c2c1f)}.share-btn[data-v-e4eeadd5]:hover{background:#9c2c1f26;transform:scale(1.05)}.share-btn[data-v-e4eeadd5]:active{transform:scale(.95)}.hero[data-v-e4eeadd5]:before{content:"问";position:absolute;top:20%;left:8%;font-size:140px;font-family:var(--font-heading);color:#9c2c1f0f;letter-spacing:4px;pointer-events:none}.hero[data-v-e4eeadd5]:after{content:"道";position:absolute;bottom:10%;right:8%;font-size:140px;font-family:var(--font-heading);color:#8a6d3b0f;letter-spacing:4px;pointer-events:none}.hero-title[data-v-e4eeadd5]{font-family:var(--font-heading);font-size:56px;color:var(--color-primary);letter-spacing:12px;text-shadow:2px 2px 4px rgba(156,44,31,.15);margin-bottom:16px}.hero-subtitle[data-v-e4eeadd5]{font-size:20px;color:var(--color-accent);margin-bottom:18px;letter-spacing:2px;position:relative;z-index:1;text-shadow:0 1px 2px rgba(253,248,240,.8)}.hero-desc[data-v-e4eeadd5]{font-size:16px;color:var(--color-text);max-width:680px;margin:0 auto;opacity:.85}.characters-section[data-v-e4eeadd5]{padding:28px 10px 40px;background:radial-gradient(circle at 10% 80%,rgba(138,109,59,.04),transparent 50%),var(--color-bg)}.section-title[data-v-e4eeadd5]{font-family:var(--font-heading);text-align:center;font-size:24px;color:var(--color-text);margin-bottom:32px;letter-spacing:4px;position:relative}.section-title[data-v-e4eeadd5]:after{content:"";display:block;width:50px;height:2px;background:linear-gradient(90deg,transparent,var(--color-primary),transparent);margin:12px auto 0}.search-toolbar[data-v-e4eeadd5]{max-width:680px;margin:0 auto 24px;display:flex;flex-direction:column;align-items:center;gap:10px}.search-box[data-v-e4eeadd5]{width:100%;position:relative;display:flex;align-items:center;background:var(--color-surface);border:1px solid var(--color-border);border-radius:28px;padding:0 16px;box-shadow:0 2px 10px var(--color-shadow);transition:all .25s}.search-box[data-v-e4eeadd5]:focus-within{border-color:var(--color-primary);box-shadow:0 4px 16px #9c2c1f1f;transform:translateY(-1px)}.search-icon[data-v-e4eeadd5]{width:18px;height:18px;color:var(--color-accent);flex-shrink:0}.search-input[data-v-e4eeadd5]{flex:1;border:none;outline:none;background:transparent;padding:12px 10px;font-size:14px;color:var(--color-text);font-family:inherit}.search-input[data-v-e4eeadd5]::placeholder{color:var(--color-text-light);opacity:.7}.search-clear[data-v-e4eeadd5]{width:22px;height:22px;border-radius:50%;border:none;background:#9c2c1f1a;color:var(--color-text-light);font-size:11px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s;flex-shrink:0;margin-right:6px}.search-clear[data-v-e4eeadd5]:hover{background:#9c2c1f33;color:var(--color-primary)}.search-btn[data-v-e4eeadd5]{border:none;background:linear-gradient(135deg,var(--color-primary),#b8392d);color:#fff;font-size:13px;padding:7px 18px;border-radius:20px;cursor:pointer;transition:all .2s;flex-shrink:0;letter-spacing:1px;font-family:inherit}.search-btn[data-v-e4eeadd5]:hover{transform:translateY(-1px);box-shadow:0 3px 10px #9c2c1f4d}.search-btn[data-v-e4eeadd5]:active{transform:scale(.96)}.sort-tabs[data-v-e4eeadd5]{display:flex;gap:8px;flex-wrap:wrap;justify-content:center}.sort-tab[data-v-e4eeadd5]{border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text-light);font-size:12px;padding:5px 14px;border-radius:16px;cursor:pointer;transition:all .2s;letter-spacing:1px;font-family:inherit}.sort-tab[data-v-e4eeadd5]:hover{border-color:var(--color-accent);color:var(--color-accent)}.sort-tab.active[data-v-e4eeadd5]{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.empty-state[data-v-e4eeadd5]{text-align:center;padding:50px 20px}.empty-icon[data-v-e4eeadd5]{font-size:48px;margin-bottom:14px;opacity:.6}.empty-text[data-v-e4eeadd5]{font-size:15px;color:var(--color-text-light);margin-bottom:18px}.empty-btn[data-v-e4eeadd5]{padding:8px 22px;border-radius:20px;border:1px solid var(--color-primary);background:transparent;color:var(--color-primary);font-size:13px;cursor:pointer;transition:all .2s;font-family:inherit}.empty-btn[data-v-e4eeadd5]:hover{background:var(--color-primary);color:#fff}.loading[data-v-e4eeadd5],.error[data-v-e4eeadd5]{text-align:center;padding:30px;color:var(--color-text-light);font-size:16px}.error[data-v-e4eeadd5]{color:var(--color-primary)}.characters-grid[data-v-e4eeadd5]{display:flex;flex-direction:column;gap:12px}.character-card[data-v-e4eeadd5]{background:var(--color-surface);border:1px solid var(--color-border);border-radius:14px;padding:18px 20px;display:flex;align-items:center;gap:18px;cursor:pointer;transition:all .25s;position:relative;overflow:hidden;box-shadow:0 2px 8px var(--color-shadow)}.character-card[data-v-e4eeadd5]:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:linear-gradient(180deg,var(--color-primary),var(--color-accent));opacity:.9}.character-card[data-v-e4eeadd5]:hover{transform:translate(4px);box-shadow:0 4px 20px var(--color-shadow);border-color:var(--color-accent);background:linear-gradient(135deg,var(--color-surface) 0%,#fdf8f0 100%)}.character-left[data-v-e4eeadd5]{display:flex;flex-direction:column;align-items:center;gap:4px;min-width:72px;padding:4px 0}.character-avatar[data-v-e4eeadd5]{width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:20px;border:2px solid;overflow:hidden;flex-shrink:0}.character-avatar img[data-v-e4eeadd5]{width:100%;height:100%;object-fit:cover}.character-card.bg-1 .character-avatar[data-v-e4eeadd5]{background:#fbe6c8;border-color:#c77b38}.character-card.bg-2 .character-avatar[data-v-e4eeadd5]{background:#f5d5cc;border-color:#a6593a}.character-card.bg-3 .character-avatar[data-v-e4eeadd5]{background:#e8d9b5;border-color:#8a6d3b}.character-card.bg-4 .character-avatar[data-v-e4eeadd5]{background:#d9e4d5;border-color:#5a7a5a}.character-card.bg-5 .character-avatar[data-v-e4eeadd5]{background:#e2c8d4;border-color:#9c4462}.character-card.bg-6 .character-avatar[data-v-e4eeadd5]{background:#cfd5d9;border-color:#5c6b78}.character-name[data-v-e4eeadd5]{font-family:var(--font-heading);font-size:15px;color:var(--color-text);letter-spacing:2px;line-height:1.2}.character-era[data-v-e4eeadd5]{font-size:10px;color:var(--color-accent);letter-spacing:1px;line-height:1.2}.character-right[data-v-e4eeadd5]{flex:1;display:flex;flex-direction:column;gap:8px;padding-left:4px}.character-desc[data-v-e4eeadd5]{font-size:13px;color:var(--color-text-light);line-height:1.5}.character-start[data-v-e4eeadd5]{font-size:12px;color:var(--color-primary);letter-spacing:1px;font-weight:500}.character-card:hover .character-start[data-v-e4eeadd5]{color:var(--color-primary-dark)}.character-actions[data-v-e4eeadd5]{display:flex;align-items:center;justify-content:space-between;gap:8px}.action-intro[data-v-e4eeadd5]{font-size:12px;color:var(--color-accent);cursor:pointer;padding:2px 8px;border-radius:10px;background:#8a6d3b14;transition:all .2s;letter-spacing:1px}.action-intro[data-v-e4eeadd5]:hover{background:#8a6d3b2e;color:var(--color-primary)}.modal-overlay[data-v-e4eeadd5]{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px;animation:fadeIn-e4eeadd5 .2s ease}@keyframes fadeIn-e4eeadd5{0%{opacity:0}to{opacity:1}}.modal-card[data-v-e4eeadd5]{background:linear-gradient(135deg,#fdf8f0,#f5ebe0);border-radius:16px;width:100%;max-width:420px;max-height:80vh;overflow-y:auto;position:relative;box-shadow:0 12px 40px #0003;animation:slideUp-e4eeadd5 .25s ease;border:1px solid rgba(156,44,31,.1)}@keyframes slideUp-e4eeadd5{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.modal-card[data-v-e4eeadd5]:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--color-primary),var(--color-accent));border-radius:16px 16px 0 0}.modal-close[data-v-e4eeadd5]{position:absolute;top:12px;right:12px;width:28px;height:28px;border:none;background:#9c2c1f14;border-radius:50%;font-size:14px;color:var(--color-text-light);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s;z-index:2}.modal-close[data-v-e4eeadd5]:hover{background:#9c2c1f33;color:var(--color-primary)}.modal-header[data-v-e4eeadd5]{display:flex;align-items:center;gap:16px;padding:28px 24px 16px;border-bottom:1px solid rgba(156,44,31,.08)}.modal-avatar[data-v-e4eeadd5]{width:56px;height:56px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:24px;border:2px solid var(--color-accent);background:#fbe6c8;color:var(--color-primary);flex-shrink:0;overflow:hidden}.modal-avatar img[data-v-e4eeadd5]{width:100%;height:100%;object-fit:cover}.modal-title-group[data-v-e4eeadd5]{flex:1;min-width:0}.modal-name[data-v-e4eeadd5]{font-family:var(--font-heading);font-size:20px;color:var(--color-text);letter-spacing:3px;margin-bottom:4px}.modal-subtitle[data-v-e4eeadd5]{font-size:13px;color:var(--color-accent);letter-spacing:1px}.modal-body[data-v-e4eeadd5]{padding:20px 24px;display:flex;flex-direction:column;gap:20px}.info-section[data-v-e4eeadd5]{display:flex;flex-direction:column;gap:8px}.section-label[data-v-e4eeadd5]{font-size:13px;color:var(--color-primary);font-weight:600;letter-spacing:2px;display:flex;align-items:center;gap:6px}.section-label[data-v-e4eeadd5]:before{content:"";display:inline-block;width:3px;height:14px;background:linear-gradient(180deg,var(--color-primary),var(--color-accent));border-radius:2px}.info-text[data-v-e4eeadd5]{font-size:14px;color:var(--color-text);line-height:1.7;padding-left:9px;opacity:.9}.modal-footer[data-v-e4eeadd5]{padding:0 24px 24px;display:flex;justify-content:center}.btn-start-chat[data-v-e4eeadd5]{width:100%;padding:12px 24px;border:none;border-radius:10px;background:linear-gradient(135deg,var(--color-primary),#b83a2a);color:#fff;font-size:15px;letter-spacing:3px;cursor:pointer;transition:all .25s;box-shadow:0 2px 8px #9c2c1f40}.btn-start-chat[data-v-e4eeadd5]:hover{transform:translateY(-1px);box-shadow:0 4px 14px #9c2c1f59}.btn-start-chat[data-v-e4eeadd5]:active{transform:translateY(0)}.chat-page[data-v-24f3a6fa]{display:flex;flex-direction:column;height:100vh;min-height:500px;position:relative}.chat-header-card[data-v-24f3a6fa]{position:sticky;top:0;z-index:50;display:flex;align-items:center;gap:12px;padding:12px 16px;background:var(--color-surface);border-bottom:1px solid var(--color-border);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffcf7eb}.back-btn[data-v-24f3a6fa]{padding:6px 12px;color:var(--color-primary);border:1px solid var(--color-border);border-radius:8px;background:var(--color-surface);font-size:13px;transition:all .2s;cursor:pointer;flex-shrink:0}.back-btn[data-v-24f3a6fa]:hover{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.header-title[data-v-24f3a6fa]{flex:1;font-size:16px;font-weight:600;color:var(--color-text);text-align:center;letter-spacing:.5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.header-tools[data-v-24f3a6fa]{display:flex;align-items:center;gap:8px;flex-shrink:0}.lang-btn[data-v-24f3a6fa]{padding:7px 14px;font-size:13px;border:1px solid var(--color-border);border-radius:20px;background:var(--color-surface);color:var(--color-text);cursor:pointer;transition:all .2s;white-space:nowrap}.lang-btn[data-v-24f3a6fa]:hover{background:var(--color-bg);border-color:var(--color-accent)}.lang-btn.active[data-v-24f3a6fa]{background:var(--color-accent);color:#fff;border-color:var(--color-accent)}.history-btn[data-v-24f3a6fa]{padding:7px 14px;font-size:13px;border:1px solid var(--color-border);border-radius:20px;background:var(--color-surface);color:var(--color-text-light);cursor:pointer;transition:all .2s;white-space:nowrap}.history-btn[data-v-24f3a6fa]:hover:not(:disabled){border-color:var(--color-primary);background:var(--color-primary);color:#fff}.history-btn[data-v-24f3a6fa]:disabled{opacity:.4;cursor:not-allowed}.chat-main[data-v-24f3a6fa]{background:var(--color-surface);border:1px solid var(--color-border);border-radius:14px;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 2px 10px var(--color-shadow);flex:1;min-height:0;margin-bottom:10px}.chat-messages[data-v-24f3a6fa]{flex:1;overflow-y:auto;padding:20px 24px;background:radial-gradient(circle at 20% 20%,rgba(156,44,31,.035),transparent 45%),radial-gradient(circle at 80% 80%,rgba(44,107,156,.03),transparent 40%),linear-gradient(to bottom,#fdf8f0,#faf3e4);background-color:#faf5eb}.msg-row[data-v-24f3a6fa]{display:flex;margin-bottom:18px;gap:12px;align-items:flex-start}.msg-user[data-v-24f3a6fa]{flex-direction:row-reverse}.msg-avatar[data-v-24f3a6fa]{width:36px;height:36px;border-radius:50%;background:linear-gradient(135deg,var(--color-primary),var(--color-accent));color:#fff;display:flex;align-items:center;justify-content:center;font-size:17px;flex-shrink:0;margin-top:2px;box-shadow:0 1px 4px #9c2c1f33;overflow:hidden}.msg-avatar img[data-v-24f3a6fa]{width:100%;height:100%;object-fit:cover}.msg-body[data-v-24f3a6fa]{max-width:78%;display:flex;flex-direction:column}.msg-user .msg-body[data-v-24f3a6fa]{align-items:flex-end}.msg-time[data-v-24f3a6fa]{font-size:11px;color:var(--color-text-light);margin-bottom:5px;opacity:.7;padding:0 4px}.msg-bubble[data-v-24f3a6fa]{padding:12px 16px;border-radius:12px;font-size:14.5px;line-height:1.85;box-shadow:0 1px 3px var(--color-shadow)}.msg-ai .msg-bubble[data-v-24f3a6fa]{background:#f5ead2;color:#3a2e1f;border:1px solid rgba(156,44,31,.1);border-top-left-radius:4px;position:relative;letter-spacing:.01em}.msg-user .msg-bubble[data-v-24f3a6fa]{background:linear-gradient(135deg,var(--color-primary),#a53c2a);color:#fff8e6;border-top-right-radius:4px;letter-spacing:.01em}.msg-bubble.thinking[data-v-24f3a6fa]{font-style:italic;opacity:.75;color:#6b5845}.msg-bubble.error[data-v-24f3a6fa]{background:#fbe6e2;color:#8b2e1f;border-color:#e8bfb3}.style-hint[data-v-24f3a6fa]{display:flex;align-items:center;gap:6px;margin-bottom:6px;font-size:11px;opacity:.7}.hint-classic[data-v-24f3a6fa]{color:#9c2c1f;font-weight:600}.hint-modern[data-v-24f3a6fa]{color:#2c6b9c;font-weight:600}.hint-switch[data-v-24f3a6fa]{color:var(--color-text-light);text-decoration:underline dotted;cursor:pointer;margin-left:2px}.hint-switch[data-v-24f3a6fa]:hover{color:var(--color-primary)}.thinking-dots[data-v-24f3a6fa]{font-style:italic}.thinking-dots span[data-v-24f3a6fa]{display:inline-block;animation:blink-24f3a6fa 1.2s infinite;margin-left:2px}@keyframes blink-24f3a6fa{0%,to{opacity:.25}50%{opacity:1}}.generating-overlay[data-v-24f3a6fa]{position:absolute;top:0;left:0;right:0;bottom:0;background:#ffffffd9;display:flex;align-items:center;justify-content:center;border-radius:18px;z-index:1}.generating-dots[data-v-24f3a6fa]{font-size:.85em;color:var(--color-text-light);background:var(--color-bg);padding:4px 12px;border-radius:12px}.generating-dots span[data-v-24f3a6fa]{display:inline-block;animation:blink-24f3a6fa 1.2s infinite}.generating-dots span[data-v-24f3a6fa]:nth-child(2){animation-delay:.2s}.generating-dots span[data-v-24f3a6fa]:nth-child(3){animation-delay:.4s}.msg-bubble[data-v-24f3a6fa]{position:relative}.chat-input-section[data-v-24f3a6fa]{position:fixed;bottom:0;left:0;right:0;z-index:100;padding:10px 16px;background:linear-gradient(to bottom,#fff8e6f2,#fff8e6);border-top:1px solid var(--color-border);box-shadow:0 -2px 10px #0000000d}.chat-input-wrap[data-v-24f3a6fa]{display:flex;flex-direction:column;gap:8px;padding:10px 14px;background:var(--color-surface);border-radius:12px;border:1px solid var(--color-border)}.chat-input[data-v-24f3a6fa]{width:100%;box-sizing:border-box;padding:10px 14px;border:1px solid var(--color-border);border-radius:8px;background:var(--color-surface);font-size:14.5px;color:var(--color-text);resize:none;outline:none;transition:border-color .2s,box-shadow .2s;line-height:1.7;font-family:inherit}.chat-input[data-v-24f3a6fa]:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px #9c2c1f1a}.chat-input-over-limit[data-v-24f3a6fa]{border-color:#e74c3c!important;background:#fdf0ed;box-shadow:0 0 0 3px #e74c3c1a}.chat-input-footer[data-v-24f3a6fa]{display:flex;align-items:center;justify-content:space-between;gap:10px}.chat-counter[data-v-24f3a6fa]{font-size:12px;color:var(--color-text-light);-webkit-user-select:none;user-select:none}.chat-counter-over[data-v-24f3a6fa]{color:#e74c3c;font-weight:600}.send-btn[data-v-24f3a6fa]{padding:7px 24px;background:var(--color-primary);color:#fff;border-radius:20px;font-size:14px;transition:all .2s;cursor:pointer;border:none;letter-spacing:.05em}.send-btn[data-v-24f3a6fa]:hover:not(:disabled){background:var(--color-primary-dark);transform:translateY(-1px);box-shadow:0 2px 6px #9c2c1f40}.send-btn[data-v-24f3a6fa]:disabled{opacity:.5;cursor:not-allowed;transform:none;box-shadow:none}.history-overlay[data-v-24f3a6fa]{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.history-modal[data-v-24f3a6fa]{background:var(--color-surface);border:1px solid var(--color-border);border-radius:14px;width:100%;max-width:640px;max-height:80vh;display:flex;flex-direction:column;box-shadow:0 10px 40px #0003;overflow:hidden}.history-header[data-v-24f3a6fa]{display:flex;justify-content:space-between;align-items:center;padding:14px 20px;border-bottom:1px solid var(--color-border);background:linear-gradient(135deg,#fdf8f0,#f5ebe0)}.history-header h3[data-v-24f3a6fa]{font-size:16px;color:var(--color-text);margin:0;letter-spacing:1px}.history-close[data-v-24f3a6fa]{background:none;border:none;font-size:24px;color:var(--color-text-light);cursor:pointer;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:6px;transition:all .2s}.history-close[data-v-24f3a6fa]:hover{background:var(--color-border);color:var(--color-primary)}.history-search[data-v-24f3a6fa]{padding:12px 20px;display:flex;align-items:center;gap:12px;border-bottom:1px solid var(--color-border);background:#fdf8f0}.history-search-input[data-v-24f3a6fa]{flex:1;padding:8px 12px;font-size:13px;border:1px solid var(--color-border);border-radius:8px;background:var(--color-surface);color:var(--color-text);outline:none;transition:border-color .2s;font-family:inherit}.history-search-input[data-v-24f3a6fa]:focus{border-color:var(--color-primary)}.history-search-count[data-v-24f3a6fa]{font-size:12px;color:var(--color-text-light);white-space:nowrap}.history-list[data-v-24f3a6fa]{flex:1;overflow-y:auto;padding:16px 20px;background:#faf5eb;display:flex;flex-direction:column;gap:12px}.history-row[data-v-24f3a6fa]{display:flex;width:100%}.history-row-ai[data-v-24f3a6fa]{justify-content:flex-start}.history-row-user[data-v-24f3a6fa]{justify-content:flex-end}.history-bubble[data-v-24f3a6fa]{max-width:75%;padding:10px 14px;border-radius:10px;box-shadow:0 1px 2px #0000000d;border:1px solid transparent}.history-row-ai .history-bubble[data-v-24f3a6fa]{background:#f5ead2;border-color:#9c2c1f1a;border-top-left-radius:4px}.history-row-user .history-bubble[data-v-24f3a6fa]{background:var(--color-primary);color:#fff8e6;border-top-right-radius:4px}.history-bubble-meta[data-v-24f3a6fa]{display:flex;justify-content:space-between;font-size:11px;margin-bottom:6px;opacity:.8}.history-row-ai .history-bubble-meta[data-v-24f3a6fa]{color:var(--color-text-light)}.history-row-user .history-bubble-meta[data-v-24f3a6fa]{color:#fff8e6d9}.history-bubble-role[data-v-24f3a6fa]{font-weight:500}.history-bubble-content[data-v-24f3a6fa]{font-size:13px;line-height:1.65;white-space:pre-wrap}.history-empty[data-v-24f3a6fa]{text-align:center;padding:40px 20px;color:var(--color-text-light);font-size:13px;width:100%}@media (max-width: 900px){.chat-page[data-v-24f3a6fa]{height:100vh;min-height:auto}.chat-header-card[data-v-24f3a6fa]{flex-wrap:wrap;gap:10px;padding:12px}.character-title[data-v-24f3a6fa]{-webkit-line-clamp:2}.header-tools[data-v-24f3a6fa]{width:100%;justify-content:flex-end}.chat-main[data-v-24f3a6fa]{margin-bottom:110px}.chat-messages[data-v-24f3a6fa]{padding:14px}.msg-bubble[data-v-24f3a6fa]{padding:10px 13px;font-size:14px}.chat-input-section[data-v-24f3a6fa]{padding:8px 12px}}.login-prompt-overlay[data-v-24f3a6fa]{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:2000;padding:20px}.login-prompt-modal[data-v-24f3a6fa]{background:var(--color-surface, #fff);border-radius:16px;padding:36px 32px 28px;text-align:center;max-width:340px;width:100%;box-shadow:0 10px 40px #00000026;border:1px solid var(--color-border, rgba(156, 44, 31, .1))}.login-prompt-icon[data-v-24f3a6fa]{font-size:36px;color:var(--color-primary, #9c2c1f);margin-bottom:12px;line-height:1}.login-prompt-title[data-v-24f3a6fa]{font-size:22px;font-weight:600;color:var(--color-text, #3d2b1f);margin:0 0 12px;letter-spacing:4px}.login-prompt-desc[data-v-24f3a6fa]{font-size:14px;color:var(--color-text-light, #8a7b6b);line-height:1.8;margin:0 0 24px;letter-spacing:1px}.login-prompt-actions[data-v-24f3a6fa]{display:flex;flex-direction:column;gap:10px;margin-bottom:16px}.login-prompt-btn[data-v-24f3a6fa]{padding:12px 24px;border-radius:10px;font-size:15px;font-weight:500;cursor:pointer;border:none;transition:all .2s;letter-spacing:2px}.login-prompt-btn.primary[data-v-24f3a6fa]{background:var(--color-primary, #9c2c1f);color:#fff}.login-prompt-btn.primary[data-v-24f3a6fa]:hover{background:#8a251a}.login-prompt-btn.primary[data-v-24f3a6fa]:active{transform:scale(.98)}.login-prompt-btn.secondary[data-v-24f3a6fa]{background:#9c2c1f14;color:var(--color-primary, #9c2c1f);border:1px solid rgba(156,44,31,.2)}.login-prompt-btn.secondary[data-v-24f3a6fa]:hover{background:#9c2c1f1f}.login-prompt-btn.secondary[data-v-24f3a6fa]:active{transform:scale(.98)}.login-prompt-close[data-v-24f3a6fa]{background:none;border:none;color:var(--color-text-light, #8a7b6b);font-size:13px;cursor:pointer;padding:6px 12px;letter-spacing:1px}.login-prompt-close[data-v-24f3a6fa]:hover{color:var(--color-primary, #9c2c1f)}.auth-page[data-v-c5f3a932]{display:flex;justify-content:center;padding:40px 20px}.auth-card[data-v-c5f3a932]{width:100%;max-width:440px;padding:36px 32px}.auth-title[data-v-c5f3a932]{font-family:var(--font-heading);text-align:center;font-size:32px;color:var(--color-primary);letter-spacing:8px;margin-bottom:8px}.auth-sub[data-v-c5f3a932]{text-align:center;color:var(--color-text-light);font-size:14px;margin-bottom:24px;letter-spacing:2px}.auth-form[data-v-c5f3a932]{display:flex;flex-direction:column;gap:16px}.form-group[data-v-c5f3a932]{display:flex;flex-direction:column;gap:8px}.form-group label[data-v-c5f3a932]{font-size:14px;color:var(--color-text);font-weight:500}.form-group input[data-v-c5f3a932]{padding:12px 14px;border:1px solid var(--color-border);border-radius:6px;font-size:15px;background:var(--color-bg);color:var(--color-text);outline:none;transition:border-color .2s,box-shadow .2s;width:100%;box-sizing:border-box}.form-group input[data-v-c5f3a932]:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px #9c2c1f1f}.pwd-input[data-v-c5f3a932]{position:relative;display:flex;align-items:center}.pwd-eye[data-v-c5f3a932]{position:absolute;right:8px;top:50%;transform:translateY(-50%);background:transparent;border:none;font-size:16px;cursor:pointer;padding:6px 8px;color:var(--color-text-light);line-height:1}.form-row[data-v-c5f3a932]{display:flex;align-items:center;justify-content:space-between}.remember[data-v-c5f3a932]{display:inline-flex;align-items:center;gap:8px;font-size:13px;color:var(--color-text);cursor:pointer;-webkit-user-select:none;user-select:none}.remember input[data-v-c5f3a932]{margin:0;cursor:pointer}.form-error[data-v-c5f3a932]{padding:10px 14px;background:#fbe6e2;color:var(--color-primary);border-radius:6px;font-size:14px;border:1px solid #e8bfb3}.btn-block[data-v-c5f3a932]{width:100%;padding:12px;letter-spacing:2px}.btn-wechat[data-v-c5f3a932]{background:#07c160;border-color:#07c160;color:#fff;display:inline-flex;align-items:center;justify-content:center;gap:8px;letter-spacing:1px}.btn-wechat[data-v-c5f3a932]:hover{background:#06ad56;border-color:#06ad56;color:#fff}.wechat-icon[data-v-c5f3a932]{font-size:18px}.auth-footer[data-v-c5f3a932]{text-align:center;margin-top:20px;font-size:14px;color:var(--color-text-light)}.footer-links[data-v-c5f3a932]{display:flex;align-items:center;justify-content:center;gap:8px;flex-wrap:wrap}.footer-links .divider[data-v-c5f3a932]{color:var(--color-border)}.wechat-modal-mask[data-v-c5f3a932]{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;z-index:9999;display:flex;align-items:center;justify-content:center;padding:20px}.wechat-modal[data-v-c5f3a932]{width:100%;max-width:360px;padding:24px 22px 18px;position:relative}.wechat-close[data-v-c5f3a932]{position:absolute;top:6px;right:10px;background:transparent;border:none;font-size:24px;line-height:1;cursor:pointer;color:var(--color-text-light)}.wechat-title[data-v-c5f3a932]{margin:0 0 4px;text-align:center;font-size:20px;color:var(--color-primary);letter-spacing:4px}.wechat-sub[data-v-c5f3a932]{margin:0 0 16px;text-align:center;color:var(--color-text-light);font-size:13px}.wechat-loading[data-v-c5f3a932]{padding:60px 0;text-align:center;color:var(--color-text-light);font-size:14px}.wechat-qr[data-v-c5f3a932]{display:block;width:220px;height:220px;margin:0 auto 14px;background:#fff;border:1px solid var(--color-border);border-radius:8px;padding:8px;box-sizing:border-box;object-fit:contain}.wechat-tip[data-v-c5f3a932]{margin:0 auto 12px;font-size:13px;color:var(--color-text);text-align:center;line-height:1.6}.btn-wechat-inline[data-v-c5f3a932]{display:block;width:100%;padding:10px;background:var(--color-bg);border:1px dashed var(--color-border);color:var(--color-primary);border-radius:6px;cursor:pointer;font-size:14px;margin-top:4px}.btn-wechat-inline[data-v-c5f3a932]:hover{background:#f8f1ee}.wechat-footer[data-v-c5f3a932]{margin-top:16px;text-align:center}.link-btn[data-v-c5f3a932]{background:none;border:none;color:var(--color-primary);cursor:pointer;font-size:14px;padding:0}.link-btn[data-v-c5f3a932]:hover{text-decoration:underline}.auth-page[data-v-b0313907]{display:flex;justify-content:center;padding:40px 20px}.auth-card[data-v-b0313907]{width:100%;max-width:480px;padding:36px 32px}.auth-title[data-v-b0313907]{font-family:var(--font-heading);text-align:center;font-size:32px;color:var(--color-primary);letter-spacing:8px;margin-bottom:8px}.auth-sub[data-v-b0313907]{text-align:center;color:var(--color-text-light);font-size:14px;margin-bottom:28px;letter-spacing:2px}.auth-form[data-v-b0313907]{display:flex;flex-direction:column;gap:14px}.form-group[data-v-b0313907]{display:flex;flex-direction:column;gap:8px}.form-group label[data-v-b0313907]{font-size:14px;color:var(--color-text);font-weight:500}.form-group input[data-v-b0313907]{padding:12px 14px;border:1px solid var(--color-border);border-radius:6px;font-size:15px;background:var(--color-bg);color:var(--color-text);outline:none;transition:border-color .2s,box-shadow .2s;width:100%;box-sizing:border-box}.form-group input[data-v-b0313907]:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px #9c2c1f1f}.pwd-input[data-v-b0313907]{position:relative;display:flex;align-items:center}.pwd-eye[data-v-b0313907]{position:absolute;right:8px;top:50%;transform:translateY(-50%);background:transparent;border:none;font-size:16px;cursor:pointer;padding:6px 8px;color:var(--color-text-light);line-height:1}.strength-bar[data-v-b0313907]{display:flex;flex-direction:column;gap:6px;margin-top:4px}.strength-track[data-v-b0313907]{height:6px;width:100%;background:#eef0f3;border-radius:999px;overflow:hidden}.strength-fill[data-v-b0313907]{height:100%;border-radius:999px;transition:width .25s ease,background .25s ease;background:#cbd5e1;width:0}.strength-fill.level-weak[data-v-b0313907]{background:#ef4444}.strength-fill.level-medium[data-v-b0313907]{background:#f59e0b}.strength-fill.level-strong[data-v-b0313907]{background:#10b981}.strength-hint[data-v-b0313907]{font-size:12px;line-height:1.5}.hint-weak[data-v-b0313907]{color:#b91c1c}.hint-medium[data-v-b0313907]{color:#b45309}.hint-strong[data-v-b0313907]{color:#047857}.captcha-row[data-v-b0313907]{display:flex;gap:10px;align-items:center}.captcha-row input[data-v-b0313907]{flex:1}.captcha-img-btn[data-v-b0313907]{padding:0;border:1px solid var(--color-border);background:#fff;border-radius:6px;cursor:pointer;min-width:130px;height:48px;display:inline-flex;align-items:center;justify-content:center;overflow:hidden;transition:border-color .2s}.captcha-img-btn[data-v-b0313907]:hover{border-color:var(--color-primary)}.captcha-img-btn[data-v-b0313907]:disabled{opacity:.6;cursor:not-allowed}.captcha-img[data-v-b0313907]{width:130px;height:48px;display:block}.captcha-loading-txt[data-v-b0313907],.captcha-hint[data-v-b0313907]{font-size:12px;color:var(--color-text-light)}.form-error[data-v-b0313907]{padding:10px 14px;background:#fbe6e2;color:var(--color-primary);border-radius:6px;font-size:14px;border:1px solid #e8bfb3}.btn-block[data-v-b0313907]{width:100%;padding:12px;letter-spacing:4px;margin-top:4px}.auth-footer[data-v-b0313907]{text-align:center;margin-top:22px;font-size:14px;color:var(--color-text-light)}.community[data-v-4b89714a]{max-width:880px;margin:0 auto}.community-header[data-v-4b89714a]{display:flex;justify-content:space-between;align-items:center;padding:10px 4px 28px;border-bottom:1px solid var(--color-border);margin-bottom:28px}.community-title[data-v-4b89714a]{font-family:var(--font-heading);font-size:32px;color:var(--color-primary);letter-spacing:6px;margin-bottom:6px}.community-sub[data-v-4b89714a]{color:var(--color-text-light);font-size:14px;letter-spacing:1px}.btn-new[data-v-4b89714a]{padding:10px 20px;letter-spacing:2px}.loading[data-v-4b89714a],.empty[data-v-4b89714a]{text-align:center;padding:60px 20px;color:var(--color-text-light);font-size:15px}.error-msg[data-v-4b89714a]{text-align:center;padding:40px;color:var(--color-primary)}.posts[data-v-4b89714a]{display:flex;flex-direction:column;gap:18px}.post-card[data-v-4b89714a]{padding:22px 24px;cursor:pointer;transition:all .2s}.post-card[data-v-4b89714a]:hover{transform:translateY(-2px);border-color:var(--color-accent);box-shadow:0 4px 14px var(--color-shadow)}.post-title[data-v-4b89714a]{font-family:var(--font-heading);font-size:20px;color:var(--color-text);margin-bottom:10px;letter-spacing:1px}.post-summary[data-v-4b89714a]{color:var(--color-text-light);font-size:14px;line-height:1.8;margin-bottom:14px;white-space:pre-wrap}.post-meta[data-v-4b89714a]{display:flex;align-items:center;gap:16px;flex-wrap:wrap;font-size:13px;color:var(--color-text-light);border-top:1px dashed var(--color-border);padding-top:12px}.post-author[data-v-4b89714a]{display:inline-flex;align-items:center;gap:6px;color:var(--color-text);font-weight:500}.avatar-sm[data-v-4b89714a]{width:22px;height:22px;border-radius:50%;background:var(--color-primary);color:#fff;display:inline-flex;align-items:center;justify-content:center;font-size:12px}.post-char[data-v-4b89714a]{background:#fbe6c8;color:var(--color-accent);padding:2px 10px;border-radius:12px;font-size:12px}.post-stats[data-v-4b89714a]{color:var(--color-text-light)}.modal-mask[data-v-4b89714a]{position:fixed;top:0;right:0;bottom:0;left:0;background:#2b1a108c;display:flex;align-items:center;justify-content:center;z-index:100;padding:20px}.modal[data-v-4b89714a]{width:100%;max-width:540px;padding:28px 30px;max-height:90vh;overflow-y:auto}.modal-title[data-v-4b89714a]{font-family:var(--font-heading);text-align:center;font-size:24px;color:var(--color-primary);margin-bottom:22px;letter-spacing:4px}.form-group[data-v-4b89714a]{display:flex;flex-direction:column;gap:8px;margin-bottom:16px}.form-group label[data-v-4b89714a]{font-size:14px;color:var(--color-text);font-weight:500}.form-group input[data-v-4b89714a],.form-group textarea[data-v-4b89714a],.form-group select[data-v-4b89714a]{padding:10px 12px;border:1px solid var(--color-border);border-radius:6px;font-size:14px;background:var(--color-bg);color:var(--color-text);outline:none;font-family:inherit;transition:border-color .2s}.form-group input[data-v-4b89714a]:focus,.form-group textarea[data-v-4b89714a]:focus,.form-group select[data-v-4b89714a]:focus{border-color:var(--color-primary)}.form-group textarea[data-v-4b89714a]{resize:vertical;min-height:120px;line-height:1.7}.form-error[data-v-4b89714a]{padding:10px 14px;background:#fbe6e2;color:var(--color-primary);border-radius:6px;font-size:14px;border:1px solid #e8bfb3;margin-bottom:14px}.modal-actions[data-v-4b89714a]{display:flex;justify-content:flex-end;gap:12px;margin-top:6px}.notes-page[data-v-4acba269]{max-width:880px;margin:0 auto}.notes-header[data-v-4acba269]{display:flex;justify-content:space-between;align-items:center;padding:10px 4px 28px;border-bottom:1px solid var(--color-border);margin-bottom:28px}.notes-title[data-v-4acba269]{font-family:var(--font-heading);font-size:32px;color:var(--color-primary);letter-spacing:6px;margin-bottom:6px}.notes-sub[data-v-4acba269]{color:var(--color-text-light);font-size:14px;letter-spacing:1px}.btn-new[data-v-4acba269]{padding:10px 20px;letter-spacing:2px}.login-prompt[data-v-4acba269]{display:flex;justify-content:center;padding:60px 20px}.prompt-card[data-v-4acba269]{text-align:center;padding:48px 36px;max-width:320px}.prompt-icon[data-v-4acba269]{font-size:64px;margin-bottom:16px}.prompt-card h2[data-v-4acba269]{font-size:20px;margin-bottom:8px;color:var(--color-text)}.prompt-card p[data-v-4acba269]{font-size:14px;color:var(--color-text-light);margin-bottom:24px}.loading[data-v-4acba269],.empty[data-v-4acba269]{text-align:center;padding:60px 20px;color:var(--color-text-light);font-size:15px}.error-msg[data-v-4acba269]{text-align:center;padding:40px;color:var(--color-primary)}.notes[data-v-4acba269]{display:flex;flex-direction:column;gap:18px}.note-card[data-v-4acba269]{padding:22px 24px;transition:all .2s}.note-card[data-v-4acba269]:hover{border-color:var(--color-accent)}.note-header[data-v-4acba269]{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:10px;cursor:pointer}.note-title[data-v-4acba269]{font-family:var(--font-heading);font-size:20px;color:var(--color-text);letter-spacing:1px;flex:1}.note-char[data-v-4acba269]{background:#fbe6c8;color:var(--color-accent);padding:2px 10px;border-radius:12px;font-size:12px;white-space:nowrap}.note-summary[data-v-4acba269]{color:var(--color-text-light);font-size:14px;line-height:1.8;margin-bottom:14px;white-space:pre-wrap}.note-footer[data-v-4acba269]{display:flex;justify-content:space-between;align-items:center;border-top:1px dashed var(--color-border);padding-top:12px}.note-time[data-v-4acba269]{font-size:13px;color:var(--color-text-light)}.note-actions[data-v-4acba269]{display:flex;gap:8px}.action-btn[data-v-4acba269]{padding:4px 8px;background:transparent;border:none;cursor:pointer;font-size:16px;opacity:.6;transition:opacity .2s}.action-btn[data-v-4acba269]:hover{opacity:1}.action-btn.delete[data-v-4acba269]:hover{color:var(--color-primary)}.modal-mask[data-v-4acba269]{position:fixed;top:0;right:0;bottom:0;left:0;background:#2b1a108c;display:flex;align-items:center;justify-content:center;z-index:100;padding:20px}.modal[data-v-4acba269]{width:100%;max-width:540px;padding:28px 30px;max-height:90vh;overflow-y:auto}.modal-title[data-v-4acba269]{font-family:var(--font-heading);text-align:center;font-size:24px;color:var(--color-primary);margin-bottom:22px;letter-spacing:4px}.form-group[data-v-4acba269]{display:flex;flex-direction:column;gap:8px;margin-bottom:16px}.form-group label[data-v-4acba269]{font-size:14px;color:var(--color-text);font-weight:500}.form-group input[data-v-4acba269],.form-group textarea[data-v-4acba269],.form-group select[data-v-4acba269]{padding:10px 12px;border:1px solid var(--color-border);border-radius:6px;font-size:14px;background:var(--color-bg);color:var(--color-text);outline:none;font-family:inherit;transition:border-color .2s}.form-group input[data-v-4acba269]:focus,.form-group textarea[data-v-4acba269]:focus,.form-group select[data-v-4acba269]:focus{border-color:var(--color-primary)}.form-group textarea[data-v-4acba269]{resize:vertical;min-height:120px;line-height:1.7}.form-error[data-v-4acba269]{padding:10px 14px;background:#fbe6e2;color:var(--color-primary);border-radius:6px;font-size:14px;border:1px solid #e8bfb3;margin-bottom:14px}.modal-actions[data-v-4acba269]{display:flex;justify-content:flex-end;gap:12px;margin-top:6px}.post-detail[data-v-011ad181]{max-width:820px;margin:0 auto}.back-btn[data-v-011ad181]{padding:8px 16px;color:var(--color-primary);border:1px solid var(--color-border);border-radius:6px;background:var(--color-surface);font-size:14px;margin-bottom:20px;transition:all .2s}.back-btn[data-v-011ad181]:hover{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.loading[data-v-011ad181],.comments-empty[data-v-011ad181]{text-align:center;padding:60px 20px;color:var(--color-text-light)}.error-msg[data-v-011ad181]{text-align:center;padding:40px;color:var(--color-primary)}.post[data-v-011ad181]{padding:32px 36px;margin-bottom:24px}.post-title[data-v-011ad181]{font-family:var(--font-heading);font-size:28px;color:var(--color-text);margin-bottom:14px;letter-spacing:2px;line-height:1.5}.post-meta[data-v-011ad181]{display:flex;align-items:center;gap:16px;flex-wrap:wrap;padding-bottom:18px;border-bottom:1px dashed var(--color-border);margin-bottom:22px;font-size:13px;color:var(--color-text-light)}.author[data-v-011ad181]{display:inline-flex;align-items:center;gap:6px;color:var(--color-text);font-weight:500;font-size:14px}.avatar-sm[data-v-011ad181]{width:26px;height:26px;border-radius:50%;background:var(--color-primary);color:#fff;display:inline-flex;align-items:center;justify-content:center;font-size:13px}.char-tag[data-v-011ad181]{background:#fbe6c8;color:var(--color-accent);padding:2px 10px;border-radius:12px;font-size:12px}.post-content[data-v-011ad181]{font-size:16px;line-height:2;color:var(--color-text);white-space:pre-wrap}.post-actions[data-v-011ad181]{margin-top:24px;padding-top:18px;border-top:1px dashed var(--color-border);display:flex;justify-content:flex-end}.like-btn[data-v-011ad181]{display:inline-flex;align-items:center;gap:8px;padding:8px 18px;border:1px solid var(--color-border);border-radius:24px;background:var(--color-surface);color:var(--color-text-light);font-size:14px;transition:all .2s}.like-btn[data-v-011ad181]:hover:not(:disabled){border-color:var(--color-primary);color:var(--color-primary)}.like-btn.liked[data-v-011ad181]{background:#fbe6e2;border-color:var(--color-primary);color:var(--color-primary)}.like-btn .heart[data-v-011ad181]{font-size:16px}.comments[data-v-011ad181]{padding:28px 32px}.comments-title[data-v-011ad181]{font-family:var(--font-heading);font-size:20px;color:var(--color-text);margin-bottom:20px;letter-spacing:2px}.comment-form textarea[data-v-011ad181]{width:100%;padding:12px 14px;border:1px solid var(--color-border);border-radius:8px;font-size:14px;background:var(--color-bg);color:var(--color-text);outline:none;resize:vertical;font-family:inherit;line-height:1.7;transition:border-color .2s}.comment-form textarea[data-v-011ad181]:focus{border-color:var(--color-primary)}.comment-form textarea[data-v-011ad181]:disabled{opacity:.55;cursor:not-allowed}.form-error[data-v-011ad181]{margin-top:10px;padding:8px 12px;background:#fbe6e2;color:var(--color-primary);border-radius:6px;font-size:13px;border:1px solid #e8bfb3}.form-actions[data-v-011ad181]{margin-top:12px;display:flex;justify-content:flex-end;padding-bottom:20px;border-bottom:1px dashed var(--color-border)}.comments-list[data-v-011ad181]{margin-top:18px;display:flex;flex-direction:column;gap:18px}.comment-item[data-v-011ad181]{display:flex;gap:12px}.comment-avatar-sm[data-v-011ad181]{width:36px;height:36px;border-radius:50%;background:var(--color-accent);color:#fff;display:flex;align-items:center;justify-content:center;font-size:14px;flex-shrink:0}.comment-body[data-v-011ad181]{flex:1}.comment-meta[data-v-011ad181]{display:flex;gap:12px;font-size:12px;color:var(--color-text-light);margin-bottom:6px}.comment-author[data-v-011ad181]{color:var(--color-text);font-weight:500;font-size:13px}.comment-content[data-v-011ad181]{font-size:14px;color:var(--color-text);line-height:1.8;white-space:pre-wrap;background:var(--color-bg);padding:10px 14px;border-radius:6px;border:1px solid var(--color-border)}.conversations-page[data-v-62eddd9f]{min-height:100vh;background:var(--color-bg);display:flex;flex-direction:column}.page-header[data-v-62eddd9f]{padding:20px 24px;background:var(--color-surface);border-bottom:1px solid var(--color-border)}.page-header h1[data-v-62eddd9f]{font-size:24px;font-weight:600;color:var(--color-text);margin:0}.page-content[data-v-62eddd9f]{flex:1;padding:16px}.loading[data-v-62eddd9f]{text-align:center;padding:40px;color:var(--color-text-light)}.error[data-v-62eddd9f]{text-align:center;padding:40px;color:#e57373}.empty-state[data-v-62eddd9f]{text-align:center;padding:60px 20px}.empty-icon[data-v-62eddd9f]{font-size:64px;margin-bottom:20px}.empty-state h2[data-v-62eddd9f]{font-size:20px;color:var(--color-text);margin-bottom:8px}.empty-state p[data-v-62eddd9f]{font-size:14px;color:var(--color-text-light);margin-bottom:24px}.action-btn[data-v-62eddd9f]{padding:12px 32px;background:var(--color-primary);color:#fff;border:none;border-radius:8px;font-size:16px;cursor:pointer;transition:background .2s}.action-btn[data-v-62eddd9f]:hover{background:var(--color-primary-dark)}.conversation-list[data-v-62eddd9f]{display:flex;flex-direction:column;gap:12px}.conversation-item[data-v-62eddd9f]{display:flex;align-items:center;gap:16px;padding:16px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:12px;cursor:pointer;transition:all .2s}.conversation-item[data-v-62eddd9f]:hover{border-color:var(--color-primary);box-shadow:0 2px 8px #00000014}.conv-avatar[data-v-62eddd9f]{width:56px;height:56px;border-radius:50%;background:#fbe6c8;border:2px solid var(--color-accent);display:flex;align-items:center;justify-content:center;font-size:28px;flex-shrink:0;overflow:hidden}.conv-avatar img[data-v-62eddd9f]{width:100%;height:100%;object-fit:cover}.conv-info[data-v-62eddd9f]{flex:1;min-width:0}.conv-name[data-v-62eddd9f]{font-size:16px;font-weight:600;color:var(--color-text);margin-bottom:4px}.conv-last-message[data-v-62eddd9f]{font-size:14px;color:var(--color-text-light);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.conv-time[data-v-62eddd9f]{font-size:12px;color:var(--color-text-light);flex-shrink:0}.profile-page[data-v-7b3b0ee9]{min-height:100vh;background:var(--color-bg);display:flex;flex-direction:column}.page-header[data-v-7b3b0ee9]{padding:20px 24px;background:var(--color-surface);border-bottom:1px solid var(--color-border)}.page-header h1[data-v-7b3b0ee9]{font-size:24px;font-weight:600;color:var(--color-text);margin:0}.page-content[data-v-7b3b0ee9]{flex:1;padding:16px}.loading[data-v-7b3b0ee9]{text-align:center;padding:40px;color:var(--color-text-light)}.login-section[data-v-7b3b0ee9]{display:flex;justify-content:center;padding:40px 20px}.login-card[data-v-7b3b0ee9]{width:100%;max-width:320px;text-align:center;padding:40px 24px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:16px}.login-icon[data-v-7b3b0ee9]{font-size:64px;margin-bottom:16px}.login-card h2[data-v-7b3b0ee9]{font-size:20px;color:var(--color-text);margin-bottom:8px}.login-card p[data-v-7b3b0ee9]{font-size:14px;color:var(--color-text-light);margin-bottom:24px}.login-actions[data-v-7b3b0ee9]{display:flex;gap:12px}.btn-secondary[data-v-7b3b0ee9]{flex:1;padding:12px;background:var(--color-surface);color:var(--color-text);border:1px solid var(--color-border);border-radius:8px;font-size:16px;cursor:pointer;transition:all .2s}.btn-secondary[data-v-7b3b0ee9]:hover{border-color:var(--color-primary)}.btn-primary[data-v-7b3b0ee9]{flex:1;padding:12px;background:var(--color-primary);color:#fff;border:none;border-radius:8px;font-size:16px;cursor:pointer;transition:background .2s}.btn-primary[data-v-7b3b0ee9]:hover{background:var(--color-primary-dark)}.btn-primary[data-v-7b3b0ee9]:disabled{opacity:.6;cursor:not-allowed}.profile-content[data-v-7b3b0ee9]{display:flex;flex-direction:column;gap:16px}.user-card[data-v-7b3b0ee9]{display:flex;align-items:flex-start;gap:16px;padding:20px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:12px;position:relative;flex-wrap:wrap}.user-avatar-wrap[data-v-7b3b0ee9]{position:relative;width:84px;height:84px;flex-shrink:0}.user-avatar-wrap.clickable[data-v-7b3b0ee9]{cursor:pointer}.user-avatar-img[data-v-7b3b0ee9]{width:84px;height:84px;border-radius:50%;object-fit:cover;background:#fff;border:2px solid var(--color-border);box-sizing:border-box;display:block}.user-avatar-fallback[data-v-7b3b0ee9]{width:84px;height:84px;border-radius:50%;background:var(--color-primary);color:#fff;display:flex;align-items:center;justify-content:center;font-size:32px;font-weight:600;border:2px solid rgba(255,255,255,.2);box-sizing:border-box}.avatar-mask[data-v-7b3b0ee9]{position:absolute;top:0;right:0;bottom:0;left:0;width:84px;height:84px;border-radius:50%;background:#00000080;color:#fff;display:flex;align-items:center;justify-content:center;font-size:12px;line-height:1.4;text-align:center;padding:0 10px;box-sizing:border-box;opacity:0;transition:opacity .2s}.user-avatar-wrap:hover .avatar-mask[data-v-7b3b0ee9]{opacity:1}.avatar-file-input[data-v-7b3b0ee9]{display:none}.user-info[data-v-7b3b0ee9]{flex:1;min-width:220px}.user-info h2[data-v-7b3b0ee9]{font-size:20px;font-weight:600;color:var(--color-text);margin:0 0 4px}.user-email[data-v-7b3b0ee9]{font-size:14px;color:var(--color-text-light);margin:0 0 8px}.user-intro[data-v-7b3b0ee9]{font-size:14px;color:var(--color-text);line-height:1.6;margin:0}.user-intro.placeholder[data-v-7b3b0ee9]{color:var(--color-text-light);font-style:italic}.form-row[data-v-7b3b0ee9]{display:flex;flex-direction:column;gap:6px;margin-bottom:12px}.form-row label[data-v-7b3b0ee9]{font-size:13px;color:var(--color-text);font-weight:500}.form-row input[data-v-7b3b0ee9],.form-row textarea[data-v-7b3b0ee9]{padding:10px 12px;border:1px solid var(--color-border);border-radius:6px;background:var(--color-bg);color:var(--color-text);font-size:14px;outline:none;transition:border-color .2s,box-shadow .2s;resize:vertical;font-family:inherit}.form-row input[data-v-7b3b0ee9]:focus,.form-row textarea[data-v-7b3b0ee9]:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px #9c2c1f1f}.profile-error[data-v-7b3b0ee9]{margin-bottom:12px}.edit-actions[data-v-7b3b0ee9]{display:flex;gap:10px;justify-content:flex-end}.btn-edit[data-v-7b3b0ee9]{padding:8px 14px;background:var(--color-bg);border:1px solid var(--color-border);color:var(--color-primary);border-radius:6px;cursor:pointer;font-size:13px;transition:all .2s}.btn-edit[data-v-7b3b0ee9]:hover{border-color:var(--color-primary);background:#fff5f3}.edit-entry[data-v-7b3b0ee9]{margin-left:auto}.stats-card[data-v-7b3b0ee9]{display:flex;align-items:center;justify-content:center;padding:24px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:12px}.stat-item[data-v-7b3b0ee9]{flex:1;text-align:center}.stat-value[data-v-7b3b0ee9]{font-size:32px;font-weight:700;color:var(--color-primary)}.stat-label[data-v-7b3b0ee9]{font-size:14px;color:var(--color-text-light);margin-top:4px}.stat-divider[data-v-7b3b0ee9]{width:1px;height:40px;background:var(--color-border)}.menu-card[data-v-7b3b0ee9]{background:var(--color-surface);border:1px solid var(--color-border);border-radius:12px;overflow:hidden}.menu-item[data-v-7b3b0ee9]{display:flex;align-items:center;padding:16px 20px;cursor:pointer;transition:background .2s;border-bottom:1px solid var(--color-border)}.menu-item[data-v-7b3b0ee9]:last-child{border-bottom:none}.menu-item[data-v-7b3b0ee9]:hover{background:#00000008}.menu-icon[data-v-7b3b0ee9]{font-size:20px;margin-right:12px}.menu-text[data-v-7b3b0ee9]{flex:1;font-size:16px;color:var(--color-text)}.menu-arrow[data-v-7b3b0ee9]{font-size:20px;color:var(--color-text-light)}.logout-btn[data-v-7b3b0ee9]{width:100%;padding:14px;background:#f5f5f5;color:#e57373;border:none;border-radius:8px;font-size:15px;cursor:pointer;transition:background .2s}.logout-btn[data-v-7b3b0ee9]:hover{background:#ffebee}.modal-mask[data-v-7b3b0ee9]{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:100;padding:20px}.modal[data-v-7b3b0ee9]{background:var(--color-surface);border-radius:12px;padding:24px;width:100%;max-width:420px}.modal-title[data-v-7b3b0ee9]{font-size:20px;text-align:center;margin:0 0 20px;color:var(--color-text)}.form-group[data-v-7b3b0ee9]{display:flex;flex-direction:column;gap:6px;margin-bottom:16px}.form-group label[data-v-7b3b0ee9]{font-size:13px;font-weight:500;color:var(--color-text)}.form-group input[data-v-7b3b0ee9]{padding:10px 12px;border:1px solid var(--color-border);border-radius:6px;font-size:14px;background:var(--color-bg);color:var(--color-text);width:100%;box-sizing:border-box}.form-group input[data-v-7b3b0ee9]:focus{outline:none;border-color:var(--color-primary)}.pwd-input[data-v-7b3b0ee9]{position:relative;display:flex;align-items:center}.pwd-eye[data-v-7b3b0ee9]{position:absolute;right:8px;top:50%;transform:translateY(-50%);background:transparent;border:none;font-size:16px;cursor:pointer;padding:4px 8px;color:var(--color-text-light);line-height:1}.strength-bar[data-v-7b3b0ee9]{display:flex;flex-direction:column;gap:4px;margin-top:4px}.strength-track[data-v-7b3b0ee9]{height:6px;width:100%;background:#eef0f3;border-radius:999px;overflow:hidden}.strength-fill[data-v-7b3b0ee9]{height:100%;border-radius:999px;transition:width .25s ease,background .25s ease;background:#cbd5e1;width:0}.strength-fill.level-weak[data-v-7b3b0ee9]{background:#ef4444}.strength-fill.level-medium[data-v-7b3b0ee9]{background:#f59e0b}.strength-fill.level-strong[data-v-7b3b0ee9]{background:#10b981}.strength-hint[data-v-7b3b0ee9]{font-size:12px;line-height:1.5}.hint-weak[data-v-7b3b0ee9]{color:#b91c1c}.hint-medium[data-v-7b3b0ee9]{color:#b45309}.hint-strong[data-v-7b3b0ee9]{color:#047857}.form-error[data-v-7b3b0ee9]{padding:10px 14px;background:#fbe6e2;color:var(--color-primary);border-radius:6px;font-size:14px;margin-bottom:16px;border:1px solid #e8bfb3}.modal-actions[data-v-7b3b0ee9]{display:flex;justify-content:flex-end;gap:12px}.btn-outline[data-v-7b3b0ee9]{padding:8px 16px;background:var(--color-surface);color:var(--color-text);border:1px solid var(--color-border);border-radius:6px;cursor:pointer;font-size:14px}.btn-outline[data-v-7b3b0ee9]:hover{border-color:var(--color-primary);color:var(--color-primary)}.modal .btn-primary[data-v-7b3b0ee9]{padding:8px 16px;flex:0 0 auto}.auth-page[data-v-e0f73f56]{display:flex;justify-content:center;padding:40px 20px}.auth-card[data-v-e0f73f56]{width:100%;max-width:460px;padding:36px 32px}.auth-title[data-v-e0f73f56]{font-family:var(--font-heading);text-align:center;font-size:32px;color:var(--color-primary);letter-spacing:8px;margin-bottom:8px}.auth-sub[data-v-e0f73f56]{text-align:center;color:var(--color-text-light);font-size:14px;margin-bottom:28px;letter-spacing:2px}.auth-form[data-v-e0f73f56]{display:flex;flex-direction:column;gap:16px}.form-group[data-v-e0f73f56]{display:flex;flex-direction:column;gap:8px}.form-group label[data-v-e0f73f56]{font-size:14px;color:var(--color-text);font-weight:500}.form-group input[data-v-e0f73f56]{padding:12px 14px;border:1px solid var(--color-border);border-radius:6px;font-size:15px;background:var(--color-bg);color:var(--color-text);outline:none;transition:border-color .2s,box-shadow .2s;width:100%;box-sizing:border-box}.form-group input[data-v-e0f73f56]:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px #9c2c1f1f}.disabled-input[data-v-e0f73f56]{background:#f5f5f5;color:var(--color-text-light);cursor:not-allowed}.pwd-input[data-v-e0f73f56]{position:relative;display:flex;align-items:center}.pwd-eye[data-v-e0f73f56]{position:absolute;right:8px;top:50%;transform:translateY(-50%);background:transparent;border:none;font-size:16px;cursor:pointer;padding:6px 8px;color:var(--color-text-light);line-height:1}.strength-bar[data-v-e0f73f56]{display:flex;flex-direction:column;gap:6px;margin-top:4px}.strength-track[data-v-e0f73f56]{height:6px;width:100%;background:#eef0f3;border-radius:999px;overflow:hidden}.strength-fill[data-v-e0f73f56]{height:100%;border-radius:999px;transition:width .25s ease,background .25s ease;background:#cbd5e1;width:0}.strength-fill.level-weak[data-v-e0f73f56]{background:#ef4444}.strength-fill.level-medium[data-v-e0f73f56]{background:#f59e0b}.strength-fill.level-strong[data-v-e0f73f56]{background:#10b981}.strength-hint[data-v-e0f73f56]{font-size:12px;line-height:1.5}.hint-weak[data-v-e0f73f56]{color:#b91c1c}.hint-medium[data-v-e0f73f56]{color:#b45309}.hint-strong[data-v-e0f73f56]{color:#047857}.code-input-wrapper[data-v-e0f73f56]{display:flex;gap:10px}.code-input-wrapper input[data-v-e0f73f56]{flex:1}.resend-btn[data-v-e0f73f56]{padding:12px 16px;background:var(--color-bg);border:1px solid var(--color-border);border-radius:6px;font-size:14px;color:var(--color-text);cursor:pointer;transition:all .2s;white-space:nowrap}.resend-btn[data-v-e0f73f56]:hover:not(:disabled){border-color:var(--color-primary);color:var(--color-primary)}.resend-btn[data-v-e0f73f56]:disabled{opacity:.6;cursor:not-allowed}.captcha-row[data-v-e0f73f56]{display:flex;gap:10px;align-items:center}.captcha-row input[data-v-e0f73f56]{flex:1}.captcha-img-btn[data-v-e0f73f56]{padding:0;border:1px solid var(--color-border);background:#fff;border-radius:6px;cursor:pointer;min-width:130px;height:48px;display:inline-flex;align-items:center;justify-content:center;overflow:hidden;transition:border-color .2s}.captcha-img-btn[data-v-e0f73f56]:hover{border-color:var(--color-primary)}.captcha-img-btn[data-v-e0f73f56]:disabled{opacity:.6;cursor:not-allowed}.captcha-img[data-v-e0f73f56]{width:130px;height:48px;display:block}.captcha-loading-txt[data-v-e0f73f56]{font-size:12px;color:var(--color-text-light)}.form-tip[data-v-e0f73f56]{padding:10px 12px;font-size:12px;line-height:1.6;color:#374151;background:#f3f4f6;border-radius:6px}.form-error[data-v-e0f73f56]{padding:10px 14px;background:#fbe6e2;color:var(--color-primary);border-radius:6px;font-size:14px;border:1px solid #e8bfb3}.btn-block[data-v-e0f73f56]{width:100%;padding:12px;letter-spacing:4px;margin-top:6px}.auth-footer[data-v-e0f73f56]{text-align:center;margin-top:22px;font-size:14px;color:var(--color-text-light)}.link-btn[data-v-e0f73f56]{background:none;border:none;color:var(--color-primary);cursor:pointer;font-size:14px;padding:0}.link-btn[data-v-e0f73f56]:hover{text-decoration:underline}*{box-sizing:border-box;margin:0;padding:0}:root{--color-bg: #faf5eb;--color-bg-2: #f2ead8;--color-surface: #fffdf7;--color-primary: #9c2c1f;--color-primary-dark: #7a1e15;--color-accent: #c77b38;--color-text: #3a2a1a;--color-text-light: #8a7460;--color-border: #d9c9a8;--color-shadow: rgba(95, 55, 30, .12);--color-nav-bg: #2b1a10;--color-nav-text: #f5e6c8;--font-serif: "Noto Serif SC", "ZCOOL XiaoWei", "SimSun", serif;--font-heading: "ZCOOL XiaoWei", "Noto Serif SC", "SimSun", serif}html,body,#app{height:100%}body{font-family:var(--font-serif);color:var(--color-text);background-color:var(--color-bg);background-image:radial-gradient(circle at 20% 10%,rgba(156,44,31,.05) 0%,transparent 40%),radial-gradient(circle at 80% 80%,rgba(199,123,56,.06) 0%,transparent 40%);line-height:1.7;-webkit-font-smoothing:antialiased}a{color:var(--color-primary);text-decoration:none;transition:color .2s}a:hover{color:var(--color-primary-dark)}button{font-family:inherit;cursor:pointer;border:none;background:none}input,textarea{font-family:inherit}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:10px;box-shadow:0 2px 8px var(--color-shadow)}.btn{display:inline-flex;align-items:center;justify-content:center;padding:10px 22px;background:var(--color-primary);color:#fff;border-radius:6px;font-size:15px;font-weight:500;transition:background .2s,transform .1s}.btn:hover{background:var(--color-primary-dark);color:#fff}.btn:active{transform:translateY(1px)}.btn-outline{background:transparent;color:var(--color-primary);border:1px solid var(--color-primary)}.btn-outline:hover{background:var(--color-primary);color:#fff}.btn-secondary{background:var(--color-accent)}.btn-secondary:hover{background:#a65f22}.btn:disabled{opacity:.6;cursor:not-allowed}
