.app-header[data-v-1cf27f18]{background:var(--bg-card,#fff);border-bottom:1px solid var(--border-light,#f0efeb);z-index:100;position:sticky;top:0}.header-inner[data-v-1cf27f18]{align-items:center;gap:20px;max-width:1200px;height:56px;margin:0 auto;padding:0 16px;display:flex}.header-logo[data-v-1cf27f18]{white-space:nowrap;align-items:center;gap:8px;font-size:1.125rem;font-weight:700;text-decoration:none;display:flex;color:var(--text-primary,#1e293b)!important}.header-logo[data-v-1cf27f18] svg{color:var(--accent,#8b0012)}.header-nav[data-v-1cf27f18]{gap:2px;display:flex}.nav-link[data-v-1cf27f18]{border-radius:var(--radius,6px);color:var(--text-secondary,#71717a);transition:all var(--fast,.15s) var(--ease,ease);align-items:center;gap:4px;padding:6px 12px;font-size:.875rem;text-decoration:none;display:flex}.nav-link[data-v-1cf27f18]:hover{background:var(--bg-hover,#f4f2ee);color:var(--text-primary,#1e293b)}.nav-link.active[data-v-1cf27f18],.nav-link.router-link-active[data-v-1cf27f18]{background:0 0;font-weight:600;color:var(--accent,#8b0012)!important}.nav-link[data-v-1cf27f18]:active{transform:scale(.96)}.header-search[data-v-1cf27f18]{background:var(--bg-hover,#f4f2ee);border-radius:var(--radius,6px);max-width:260px;transition:all var(--normal,.25s) var(--ease,ease);border:1px solid #0000;flex:1;align-items:center;display:flex;overflow:hidden}.header-search[data-v-1cf27f18]:focus-within{background:var(--bg-card,#fff);border-color:var(--accent,#8b0012);box-shadow:0 0 0 3px #8b00121a}.search-input[data-v-1cf27f18]{color:var(--text-primary,#1e293b);font-size:.875rem;font-family:var(--font-sans);background:0 0;border:none;outline:none;flex:1;padding:8px 12px}.search-input[data-v-1cf27f18]::placeholder{color:var(--text-muted,#a1a1aa)}.search-btn[data-v-1cf27f18]{color:var(--text-muted,#a1a1aa);cursor:pointer;transition:color var(--fast,.15s) var(--ease,ease);background:0 0;border:none;padding:6px 10px}.search-btn[data-v-1cf27f18]:hover{color:var(--accent,#8b0012)}.search-btn[data-v-1cf27f18]:active{transform:scale(.92)}.header-actions[data-v-1cf27f18]{white-space:nowrap;align-items:center;gap:8px;display:flex}.fanworks-link[data-v-1cf27f18]{background:var(--accent,#8b0012);border-radius:var(--radius,6px);padding:6px 14px;font-weight:600;color:#fff!important}.fanworks-link[data-v-1cf27f18]:hover,.fanworks-link.active[data-v-1cf27f18]{background:var(--accent-hover,#6e000e);color:#fff!important}.video-link[data-v-1cf27f18]{background:var(--bg-hover,#f4f2ee);border-radius:var(--radius,6px);padding:6px 14px;font-weight:600;color:var(--text-secondary,#71717a)!important}.video-link[data-v-1cf27f18]:hover,.video-link.active[data-v-1cf27f18]{background:var(--accent,#8b0012);color:#fff!important}.gallery-link[data-v-1cf27f18]{background:var(--bg-hover,#f4f2ee);border-radius:var(--radius,6px);padding:6px 14px;font-weight:600;color:var(--text-secondary,#71717a)!important}.gallery-link[data-v-1cf27f18]:hover,.gallery-link.active[data-v-1cf27f18]{background:var(--accent,#8b0012);color:#fff!important}.btn-text[data-v-1cf27f18]{color:var(--text-secondary,#71717a);border-radius:var(--radius,6px);background:0 0;border:none;padding:6px 10px;font-size:.875rem}.btn-text[data-v-1cf27f18]:hover{background:var(--bg-hover,#f4f2ee);color:var(--text-primary,#1e293b)}.btn-text[data-v-1cf27f18]:active{transform:scale(.96)}.btn-outline[data-v-1cf27f18]{background:var(--bg-card,#fff);border:1px solid var(--border,#e4e4e7);color:var(--text-primary,#1e293b);border-radius:var(--radius,6px);cursor:pointer;padding:6px 16px;font-size:.875rem}.btn-outline[data-v-1cf27f18]:hover{border-color:var(--accent,#8b0012);color:var(--accent,#8b0012)}.btn-outline[data-v-1cf27f18]:active{transform:scale(.96)}@media (width<=700px){.header-search[data-v-1cf27f18]{display:none}.header-nav[data-v-1cf27f18]{gap:0}.nav-link[data-v-1cf27f18]{padding:4px 8px;font-size:.8125rem}}.app-shell{background:var(--bg-page,#f9f8f6);flex-direction:column;min-height:100vh;display:flex}.app-main{flex:1;width:100%;max-width:1200px;margin:0 auto;padding:24px 16px}.app-main-gallery{max-width:none;margin:0;padding:0}.app-footer{text-align:center;color:var(--text-muted,#a1a1aa);border-top:1px solid var(--border-light,#f0efeb);margin-top:48px;padding:24px 16px;font-size:.8125rem}:root{--bg-page:#f9f8f6;--bg-card:#fff;--bg-hover:#f4f2ee;--bg-active:#edebe5;--text-primary:#1e293b;--text-secondary:#71717a;--text-muted:#a1a1aa;--accent:#8b0012;--accent-hover:#6e000e;--accent-light:#f5f0f0;--border:#e4e4e7;--border-light:#f0efeb;--font-serif:"Noto Serif SC", "Songti SC", "SimSun", Georgia, serif;--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Microsoft YaHei", sans-serif;--radius-sm:3px;--radius:6px;--shadow-sm:0 1px 3px #0000000a;--shadow-md:0 4px 16px #0000000f;--shadow-glow:0 0 0 3px #8b00121a;--ease:cubic-bezier(.4, 0, .2, 1);--fast:.15s;--normal:.25s}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:16px}body{font-family:var(--font-sans);color:var(--text-primary);background:var(--bg-page);margin:0;font-size:1rem;line-height:1.6}a{color:var(--accent);transition:color var(--fast) var(--ease);text-decoration:none}a:hover{color:var(--accent-hover)}h1,h2,h3,h4{color:var(--text-primary);font-weight:700;line-height:1.3}img{max-width:100%;height:auto}::-webkit-scrollbar{width:5px;height:5px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}::selection{background:var(--accent-light);color:var(--accent)}button,[role=button]{transition:all var(--fast) var(--ease)}button:active,.clickable:active{transform:scale(.96)}input:focus,textarea:focus,.n-input--focus{box-shadow:var(--shadow-glow)!important;border-color:var(--accent)!important}.container{max-width:1200px;margin:0 auto;padding:0 16px}.text-center{text-align:center}.mt-16{margin-top:16px}.mb-16{margin-bottom:16px}.serif{font-family:var(--font-serif)}.page-enter-active,.page-leave-active{transition:opacity .2s var(--ease), transform .2s var(--ease)}.page-enter-from{opacity:0;transform:translateY(8px)}.page-leave-to{opacity:0;transform:translateY(-8px)}
