:root{--paper: #f8fafc;--paper-2: #eef2f7;--bg: #eef2f7;--card: #ffffff;--ink: #0f172a;--ink-soft: #64748b;--ink-faint: #94a3b8;--sub: #64748b;--line: #e2e8f0;--brand: #e8a040;--brand-deep: #c9822a;--brand-grad: linear-gradient(135deg, var(--brand), var(--brand-deep));--brand-bg: #fdf6ec;--brand-soft: rgba(232, 160, 64, .2);--sage: #10b981;--danger: #e54d42;--radius: 12px}*{margin:0;padding:0;box-sizing:border-box;-webkit-tap-highlight-color:transparent}body{font-family:-apple-system,BlinkMacSystemFont,PingFang SC,Hiragino Sans GB,Microsoft YaHei,Segoe UI,Roboto,Noto Sans CJK SC,sans-serif;background:var(--paper-2);color:var(--ink);line-height:1.5}input,button{font-family:inherit;font-size:inherit;border:none;outline:none;background:none}button{cursor:pointer}:focus-visible{outline:2px solid var(--brand);outline-offset:2px}@keyframes likePop{0%{transform:scale(1)}35%{transform:scale(1.35)}62%{transform:scale(.9)}to{transform:scale(1)}}a{color:inherit;text-decoration:none}.page-wrap{max-width:420px;margin:0 auto;min-height:100vh;background:var(--paper-2);position:relative}.topbar{display:flex;align-items:center;justify-content:center;background:#f8fafccc;backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border-bottom:1px solid rgba(226,232,240,.6);position:sticky;top:0;z-index:10;min-height:52px;padding:8px 18px;font-size:16px;font-weight:700}.topbar .back{position:absolute;left:14px;top:50%;transform:translateY(-50%);width:38px;height:38px;border-radius:50%;border:1px solid var(--line);background:var(--card);display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--ink);transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.topbar .back:hover{box-shadow:0 4px 12px -6px #0000004d}@media(hover:hover){.topbar .back:hover{transform:translateY(-50%) translateY(-1px)}}.topbar .back svg{width:18px;height:18px;stroke:currentColor;fill:none;stroke-width:1.8}.page-wrap.with-tab{padding-bottom:calc(76px + env(safe-area-inset-bottom))}.tabbar{position:fixed;bottom:0;left:50%;transform:translate(-50%);width:100%;max-width:420px;background:#ffffffd1;backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border-top:1px solid var(--line);display:flex;z-index:50;padding-bottom:env(safe-area-inset-bottom)}.tab{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;padding:7px 0 6px;color:var(--ink-faint);cursor:pointer;-webkit-user-select:none;user-select:none;transition:.18s}.tab:hover{color:var(--ink-soft)}.tab.active{color:var(--brand-deep)}.tab-icon{position:relative;line-height:1.15;filter:grayscale(.5) opacity(.85);transition:.18s}.tab.active .tab-icon{filter:none;transform:translateY(-1px)}.tab-glyph{font-size:20px}.tab-label{font-size:10.5px;letter-spacing:1.5px}.tab.active .tab-label{font-weight:600}.tab-badge{position:absolute;top:-4px;right:-12px;min-width:15px;height:15px;padding:0 4px;border-radius:8px;background:var(--danger);color:#fff;font-size:9.5px;font-style:normal;line-height:15px;text-align:center;white-space:nowrap;box-shadow:0 2px 5px #e54d4252}.tabbar.sidebar-only,.tabbar-brand,.tabbar-publish{display:none}.avatar{border-radius:50%;background:linear-gradient(135deg,#f5d9ae,#f0b768);flex:none;overflow:hidden;position:relative;display:flex;align-items:center;justify-content:center;font-weight:600;color:#fffffff2}.avatar>span{position:relative;z-index:1}.avatar img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;z-index:2;border-radius:50%}.avatar:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at 35% 30%,rgba(255,255,255,.5),transparent 50%)}.avatar.sm{width:36px;height:36px;font-size:14px}.avatar.md{width:44px;height:44px;font-size:16px}.avatar.lg{width:72px;height:72px;font-size:26px}.avatar.av-vip{background:linear-gradient(135deg,#f3dd9a,#c79a3a)}.avatar.av-admin{background:linear-gradient(135deg,#475569,#1e293b)}.avatar.av-banned{background:linear-gradient(135deg,#cbd5e1,#94a3b8)}.role-badge{font-size:10px;font-weight:700;letter-spacing:1px;padding:2px 7px;border-radius:20px;line-height:1.6;display:inline-block;vertical-align:middle;white-space:nowrap;flex-shrink:0}.role-badge.vip{background:linear-gradient(135deg,#f0d98a,#c79a3a);color:#5a4115}.role-badge.admin{background:var(--ink);color:var(--paper)}.role-badge.normal{background:var(--paper-2);color:var(--ink-soft)}.role-badge.banned{background:#fee2e2;color:var(--danger)}.mp-status{font-size:10.5px;padding:2px 8px;border-radius:10px;font-weight:500;display:inline-block;vertical-align:middle;flex:none;white-space:nowrap}.mp-status.pending{background:#fef3c7;color:#b45309}.mp-status.approved{background:#d1fae5;color:#047857}.mp-status.rejected{background:#fee2e2;color:var(--danger)}.mp-status.taken_down{background:#ffedd5;color:#b45309}.iconbtn{width:38px;height:38px;border-radius:50%;overflow:hidden;border:1px solid var(--line);background:var(--card);display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--ink);position:relative;transition:.18s}.iconbtn:hover{box-shadow:0 4px 12px -6px #0000004d;border-color:#e8a04080;color:var(--brand-deep)}@media(hover:hover){.iconbtn:hover{transform:translateY(-1px)}}.iconbtn svg{width:18px;height:18px;stroke:currentColor;fill:none;stroke-width:1.8}.card{background:var(--card);border:1px solid rgba(226,232,240,.7);box-shadow:0 1px 2px #0f172a0a,0 10px 28px -18px #0f172a24;border-radius:var(--radius);transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease}.op.liked{color:var(--danger)}.login-pill{border:none;background:var(--brand-grad);color:#fff;font-size:13px;font-weight:600;letter-spacing:2px;padding:0 18px;height:38px;line-height:38px;border-radius:19px;cursor:pointer;box-shadow:0 8px 16px -8px #c9822a52;transition:.18s;display:inline-block}@media(hover:hover){.login-pill:hover{transform:translateY(-1px)}}@media(min-width:1024px){body{padding-left:224px;background:radial-gradient(1100px 480px at 78% -8%,rgba(232,160,64,.1),transparent 62%),radial-gradient(900px 420px at -8% 108%,rgba(232,160,64,.05),transparent 55%),#eef2f7}.page-wrap{max-width:640px;min-height:100vh;border-left:1px solid var(--line);border-right:1px solid var(--line)}.page-wrap.with-tab{padding-bottom:48px}.tabbar{top:0;bottom:0;left:0;transform:none;width:224px;max-width:none;height:auto;flex-direction:column;align-items:stretch;gap:4px;border-top:none;border-right:1px solid var(--line);padding:20px 12px 24px;overflow-y:auto}.tabbar.sidebar-only{display:flex}.tab{flex:0 0 auto;flex-direction:row;justify-content:flex-start;gap:12px;padding:12px 14px;border-radius:12px;transition:background .15s ease,color .15s ease}.tab:hover{background:#e8a0401a;color:var(--ink-soft)}.tab.active{background:var(--brand-bg);color:var(--brand-deep)}.tab-glyph{font-size:19px}.tab-label{font-size:15px;font-weight:500;letter-spacing:0}.tab-badge{top:-4px;right:-10px}.tabbar-brand{display:flex;align-items:center;gap:8px;padding:4px 14px 18px;font-size:23px;font-weight:700;font-style:italic;letter-spacing:.5px}.tabbar-brand:after{content:"";width:8px;height:8px;border-radius:50%;background:var(--brand)}.tabbar-publish{display:flex;align-items:center;justify-content:center;gap:6px;margin:0 2px 14px;padding:12px;border-radius:999px;background:var(--brand-grad);color:#fff;font-size:15px;font-weight:600;transition:transform .15s ease,box-shadow .15s ease}.tabbar-publish:hover{transform:translateY(-1px);box-shadow:0 6px 16px #e8a04059}.tabbar-publish:active{transform:translateY(0)}.toast{left:calc(224px + (100vw - 224px)/2)!important}}
