.toast-container[data-v-add0bbf8]{position:fixed;top:20px;left:50%;transform:translate(-50%);z-index:99999;display:flex;flex-direction:column;gap:8px;pointer-events:none}.toast[data-v-add0bbf8]{padding:12px 24px;border-radius:12px;font-size:.9rem;font-weight:600;color:#fff;box-shadow:0 8px 24px #00000026;white-space:nowrap;pointer-events:auto;transition:all .3s ease}.toast--success[data-v-add0bbf8]{background:#059669}.toast--error[data-v-add0bbf8]{background:#dc2626}.toast--info[data-v-add0bbf8]{background:#2563eb}.toast-enter-active[data-v-add0bbf8]{animation:toastIn-add0bbf8 .3s ease}.toast-leave-active[data-v-add0bbf8]{animation:toastOut-add0bbf8 .3s ease}@keyframes toastIn-add0bbf8{0%{opacity:0;transform:translateY(-20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes toastOut-add0bbf8{0%{opacity:1;transform:translateY(0) scale(1)}to{opacity:0;transform:translateY(-20px) scale(.95)}}.auth-page[data-v-0cb94415]{position:relative;min-height:100vh;display:flex;flex-direction:column;overflow:hidden}.auth-page__glow[data-v-0cb94415]{position:absolute;inset:auto;border-radius:999px;filter:blur(40px);opacity:.7;pointer-events:none}.auth-page__glow--left[data-v-0cb94415]{top:80px;left:-120px;width:320px;height:320px;background:#10b98138}.auth-page__glow--right[data-v-0cb94415]{right:-80px;bottom:100px;width:300px;height:300px;background:#3b82f62e}.auth-inlinebar[data-v-0cb94415]{display:flex;justify-content:center;align-items:center;width:100%;margin-bottom:8px}.brand-mark[data-v-0cb94415]{display:inline-flex;align-items:center;gap:14px;border:none;background:transparent;cursor:pointer;color:var(--text-strong, #1e293b);transition:transform .2s ease}.brand-mark[data-v-0cb94415]:hover{transform:translateY(-1px)}.brand-mark__icon[data-v-0cb94415]{width:52px;height:52px;border-radius:18px;display:inline-flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#087f7824,#087f780a);box-shadow:0 12px 24px #087f7824,inset 0 0 0 1px #087f781a;flex-shrink:0}.brand-mark__icon img[data-v-0cb94415]{width:50px;height:50px;object-fit:contain;display:block}.brand-mark__text[data-v-0cb94415]{display:flex;flex-direction:column;align-items:flex-start;line-height:1.15}.brand-mark__text strong[data-v-0cb94415]{font-size:1rem;font-weight:700}.brand-mark__text small[data-v-0cb94415]{font-size:.76rem;color:var(--text-muted, #64748b)}.auth-stage[data-v-0cb94415]{position:relative;z-index:1;flex:1;display:flex;align-items:center;justify-content:center;padding:16px 16px 18px}.auth-shell[data-v-0cb94415]{width:min(1180px,100%);display:grid;grid-template-columns:1fr;gap:18px;align-items:stretch}.auth-shell--single[data-v-0cb94415]{width:min(620px,100%);margin:0 auto}.auth-panel[data-v-0cb94415]{border:1px solid rgba(255,255,255,.55);border-radius:28px;box-shadow:0 28px 70px #0f172a1a;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);padding:24px 24px 18px;background:#fffc;display:flex;flex-direction:column;justify-content:center}.auth-panel__title[data-v-0cb94415]{font-size:clamp(1.5rem,2.8vw,2rem);line-height:1.2;letter-spacing:-.03em;color:var(--text-strong, #0f172a);margin-bottom:8px;text-align:left}.auth-panel__footer[data-v-0cb94415]{margin-top:14px}@media (max-width: 640px){.auth-stage[data-v-0cb94415]{padding:20px 16px 28px}.auth-panel[data-v-0cb94415]{border-radius:26px;padding:26px 20px 22px}.auth-inlinebar[data-v-0cb94415]{margin-bottom:12px}.brand-mark__icon[data-v-0cb94415]{width:46px;height:46px;border-radius:15px}.brand-mark__icon img[data-v-0cb94415]{width:44px;height:44px}.brand-mark__text strong[data-v-0cb94415]{font-size:.95rem}.brand-mark__text small[data-v-0cb94415]{font-size:.7rem}}@media (min-width: 1025px) and (max-height: 900px){.auth-stage[data-v-0cb94415]{padding-top:12px;padding-bottom:12px}.auth-panel[data-v-0cb94415]{padding:22px 22px 16px}.auth-inlinebar[data-v-0cb94415]{margin-bottom:4px}}.navbar[data-v-3fd8e289]{position:sticky;top:0;z-index:100;background:#ffffffd9;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-bottom:1px solid rgba(148,163,184,.16);box-shadow:0 2px 16px #0f172a0a}.navbar__inner[data-v-3fd8e289]{max-width:1200px;margin:0 auto;height:60px;display:flex;align-items:center;padding:0 24px;gap:16px}.navbar__brand[data-v-3fd8e289]{display:inline-flex;align-items:center;gap:10px;color:var(--text-strong);flex-shrink:0;cursor:default;-webkit-user-select:none;user-select:none}.navbar__brand-icon[data-v-3fd8e289]{width:38px;height:38px;border-radius:12px;display:inline-flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#087f7821,#087f780a);box-shadow:inset 0 0 0 1px #087f781a;flex-shrink:0}.navbar__brand-icon img[data-v-3fd8e289]{width:36px;height:36px;object-fit:contain;display:block}.navbar__brand strong[data-v-3fd8e289]{font-size:1.05rem;font-weight:700;letter-spacing:-.01em}.navbar__links[data-v-3fd8e289]{display:flex;align-items:center;gap:4px;flex-shrink:0}.navbar__link[data-v-3fd8e289]{padding:6px 16px;border:none;border-radius:10px;background:transparent;font-size:.88rem;font-weight:600;color:var(--text-secondary);cursor:pointer;text-decoration:none;transition:background .2s ease,color .2s ease}.navbar__link[data-v-3fd8e289]:hover{background:#10b98114;color:var(--primary-700)}.navbar__link--active[data-v-3fd8e289]{background:#10b9811f;color:var(--primary-700)}.navbar__link--random[data-v-3fd8e289]:disabled{opacity:.6;cursor:not-allowed}.navbar__search-wrap[data-v-3fd8e289]{flex:1;display:flex;justify-content:center;min-width:0}.navbar__search[data-v-3fd8e289]{width:100%;max-width:400px;height:38px;padding:0 16px 0 38px;border:1px solid var(--border-strong);border-radius:12px;background:#ffffffb3 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='15' height='15' viewBox='0 0 24 24' fill='none' stroke='%2394a3b8' stroke-width='2'%3E%3Ccircle cx='11' cy='11' r='8'/%3E%3Cpath d='m21 21-4.3-4.3'/%3E%3C/svg%3E") 12px center no-repeat;font-size:.88rem;color:var(--text-strong);outline:none;transition:border-color .24s ease,box-shadow .24s ease}.navbar__search[data-v-3fd8e289]:focus{border-color:var(--primary-500);box-shadow:0 0 0 3px #10b9811f}.navbar__right[data-v-3fd8e289]{display:flex;align-items:center;gap:12px;flex-shrink:0}.navbar__user-area[data-v-3fd8e289]{display:flex;align-items:center;gap:8px;padding:4px 10px 4px 4px;border-radius:12px;cursor:pointer;position:relative;transition:background .2s ease}.navbar__user-area[data-v-3fd8e289]:hover{background:#94a3b80f}.navbar__avatar[data-v-3fd8e289]{width:34px;height:34px;border-radius:50%;object-fit:cover;border:2px solid rgba(16,185,129,.2);flex-shrink:0}.navbar__avatar--placeholder[data-v-3fd8e289]{display:inline-flex;align-items:center;justify-content:center;background:var(--primary-soft);color:var(--primary-700);font-size:.85rem;border:none}.navbar__nick[data-v-3fd8e289]{font-size:.9rem;font-weight:600;color:var(--text-strong);white-space:nowrap}.navbar__dropdown[data-v-3fd8e289]{position:absolute;top:calc(100% + 6px);right:0;min-width:160px;padding:6px;background:#fffffff5;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid var(--border);border-radius:14px;box-shadow:0 12px 32px #0f172a1f;z-index:110;display:flex;flex-direction:column}.navbar__dropdown-item[data-v-3fd8e289]{display:flex;align-items:center;gap:8px;padding:9px 14px;border:none;border-radius:10px;background:transparent;font-size:.87rem;font-weight:600;color:var(--text-secondary);cursor:pointer;transition:background .2s ease;text-align:left}.navbar__dropdown-item[data-v-3fd8e289]:hover{background:#10b9810f;color:var(--primary-700)}.navbar__dropdown-item--danger[data-v-3fd8e289]:hover{background:var(--danger-soft);color:var(--danger)}.navbar__dropdown-divider[data-v-3fd8e289]{height:1px;margin:4px 8px;background:var(--border)}.navbar__btn[data-v-3fd8e289]{height:36px;padding:0 20px;border:none;border-radius:12px;background:linear-gradient(135deg,var(--primary-600),var(--primary-500));color:#fff;font-size:.85rem;font-weight:700;box-shadow:0 8px 16px #10b98129;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}.navbar__btn[data-v-3fd8e289]:hover{transform:translateY(-1px);box-shadow:0 12px 20px #10b98138}@media (max-width: 768px){.navbar__inner[data-v-3fd8e289]{padding:0 14px;gap:10px}.navbar__search[data-v-3fd8e289]{max-width:180px}.navbar__nick[data-v-3fd8e289]{display:none}}.home-layout[data-v-69002c25]{display:grid;grid-template-columns:1fr 260px;gap:24px;align-items:start}.home-main[data-v-69002c25]{min-width:0}.home-bar[data-v-69002c25]{display:flex;align-items:flex-start;gap:10px;margin-bottom:10px}.home-bar__label[data-v-69002c25]{font-size:.82rem;font-weight:700;color:var(--text-muted);flex-shrink:0;min-width:50px;line-height:38px}.category-tag--hidden[data-v-69002c25]{display:none}.category-toggle[data-v-69002c25]{color:var(--primary-600)!important}.home-sort[data-v-69002c25]{display:flex;gap:6px}.article-card__like-btn[data-v-69002c25]{background:none;border:none;padding:0;cursor:pointer;transition:color .2s ease,transform .15s ease}.article-card__like-btn[data-v-69002c25]:hover{transform:scale(1.18);color:var(--danger)}.article-card__like-btn--liked[data-v-69002c25]{color:var(--danger)}.like-icon[data-v-69002c25]{font-size:.95rem;color:var(--text-faint);transition:color .2s ease}.like-icon--filled[data-v-69002c25]{color:var(--danger)}.article-load-more[data-v-69002c25]{display:flex;justify-content:center;padding:16px 0 8px}.comment-btn[data-v-69002c25]{padding:8px 24px;border:1px solid var(--border-strong);border-radius:10px;background:#fffc;font-size:.85rem;font-weight:600;color:var(--text-secondary);cursor:pointer;transition:all .2s ease}.comment-btn[data-v-69002c25]:hover{border-color:var(--primary-400);color:var(--primary-700);background:#10b9810f}.comment-btn[data-v-69002c25]:disabled{opacity:.5;cursor:not-allowed}.home-sidebar[data-v-69002c25]{position:sticky;top:76px}.sidebar-card[data-v-69002c25]{background:#ffffffd9;border:1px solid rgba(255,255,255,.55);border-radius:var(--radius-lg);padding:24px 20px;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 4px 18px #0f172a0a}.sidebar-avatar[data-v-69002c25]{width:80px;height:80px;margin:0 auto 16px;border-radius:50%;border:3px solid rgba(16,185,129,.3);overflow:hidden}.sidebar-avatar__img[data-v-69002c25]{width:100%;height:100%;object-fit:cover}.sidebar-avatar__placeholder[data-v-69002c25]{display:flex;align-items:center;justify-content:center;width:100%;height:100%;font-size:2rem;background:linear-gradient(135deg,var(--primary-100),var(--primary-200));color:var(--primary-600)}.sidebar-name[data-v-69002c25]{font-size:1.3rem;font-weight:700;color:var(--text-strong);margin:0 0 8px;text-align:center}.sidebar-title[data-v-69002c25]{font-size:.95rem;color:var(--text-secondary);margin:0 0 16px;text-align:center;font-weight:500}.sidebar-location[data-v-69002c25]{display:flex;align-items:center;justify-content:center;gap:6px;margin-bottom:16px}.sidebar-location__icon[data-v-69002c25]{font-size:1rem}.sidebar-location__text[data-v-69002c25]{font-size:.9rem;color:var(--text-secondary)}.sidebar-tags[data-v-69002c25]{display:flex;justify-content:center;gap:6px;margin-bottom:20px;flex-wrap:wrap}.sidebar-tag[data-v-69002c25]{padding:4px 10px;border-radius:12px;background:#10b9811a;color:var(--primary-700);font-size:.8rem;font-weight:600}.sidebar-stats[data-v-69002c25]{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:20px}.sidebar-stat[data-v-69002c25]{text-align:center;padding:12px 8px;background:#f8fafcb3;border-radius:10px}.sidebar-stat__value[data-v-69002c25]{display:block;font-size:1.1rem;font-weight:800;color:var(--primary-700);margin-bottom:2px}.sidebar-stat__label[data-v-69002c25]{font-size:.7rem;color:var(--text-faint);font-weight:600}.sidebar-section[data-v-69002c25]{margin-bottom:20px}.sidebar-section__title[data-v-69002c25]{font-size:.9rem;font-weight:700;color:var(--text-strong);margin:0 0 10px}.sidebar-articles[data-v-69002c25]{display:flex;flex-direction:column;gap:6px}.sidebar-article[data-v-69002c25]{padding:8px 12px;background:#f8fafc99;border-radius:8px;font-size:.85rem;color:var(--text-secondary);cursor:pointer;transition:all .2s ease}.sidebar-article[data-v-69002c25]:hover{background:#10b9811a;color:var(--primary-700)}.sidebar-update[data-v-69002c25]{font-size:.9rem;color:var(--text-secondary);font-weight:600}.sidebar-motto[data-v-69002c25]{text-align:center;padding-top:16px;border-top:1px solid var(--border)}.sidebar-motto__text[data-v-69002c25]{font-size:.9rem;font-weight:600;color:var(--text-secondary);margin:0 0 4px;font-style:italic}@media (max-width: 768px){.home-layout[data-v-69002c25]{grid-template-columns:1fr}.home-sidebar[data-v-69002c25]{position:static;order:-1}}.article-detail[data-v-ef77cb72]{display:grid;grid-template-columns:1fr 340px;gap:24px;align-items:start}.article-content[data-v-ef77cb72]{padding:28px 32px;border:1px solid rgba(255,255,255,.55);border-radius:var(--radius-lg);background:#ffffffd9;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 4px 18px #0f172a0a;overflow-wrap:break-word;min-width:0}.article-content__title[data-v-ef77cb72]{font-size:1.5rem;font-weight:800;color:var(--text-strong);line-height:1.35;margin-bottom:10px}.article-content__meta[data-v-ef77cb72]{display:flex;align-items:center;gap:16px;padding-bottom:16px;border-bottom:1px solid var(--border);margin-bottom:18px;font-size:.85rem;color:var(--text-muted)}.article-content__body[data-v-ef77cb72]{font-size:.95rem;line-height:1.8;color:var(--text-secondary);overflow-wrap:break-word;word-break:break-word}.article-content__body[data-v-ef77cb72] img{max-width:100%;height:auto;border-radius:6px;margin:12px 0;display:inline-block}.article-content__body[data-v-ef77cb72] table{width:100%;max-width:100%;border-collapse:collapse;margin:16px 0;font-size:.9rem;overflow-x:auto;display:block}.article-content__body[data-v-ef77cb72] th,.article-content__body[data-v-ef77cb72] td{border:1px solid #d0d5dd;padding:8px 12px;vertical-align:top;text-align:left}.article-content__body[data-v-ef77cb72] th{background:#f2f4f7;font-weight:700;color:#1d2939}.article-content__body[data-v-ef77cb72] td{color:#344054;background:#fff}.article-content__body[data-v-ef77cb72] tr:nth-child(2n) td{background:#f9fafb}.article-content__body[data-v-ef77cb72] pre{position:relative;margin:16px 0;padding:16px 20px;border-radius:8px;background:#1e293b;overflow-x:auto;-webkit-overflow-scrolling:touch}.article-content__body[data-v-ef77cb72] pre code{display:block;font-family:JetBrains Mono,Fira Code,Cascadia Code,Consolas,monospace;font-size:.85rem;line-height:1.65;color:#e2e8f0;white-space:pre;-moz-tab-size:2;tab-size:2}.article-content__body[data-v-ef77cb72] code:not(pre code){padding:2px 6px;border-radius:4px;background:#f1f5f9;color:#be123c;font-family:JetBrains Mono,Fira Code,Consolas,monospace;font-size:.85em;word-break:break-word}.article-content__body[data-v-ef77cb72] blockquote{margin:16px 0;padding:8px 16px;border-left:4px solid var(--primary-500);background:#10b9810f;color:#475569;font-style:italic}.article-content__body[data-v-ef77cb72] ul,.article-content__body[data-v-ef77cb72] ol{padding-left:24px;margin:8px 0}.article-content__body[data-v-ef77cb72] li{margin:4px 0}.article-content__body[data-v-ef77cb72] h1,.article-content__body[data-v-ef77cb72] h2,.article-content__body[data-v-ef77cb72] h3,.article-content__body[data-v-ef77cb72] h4,.article-content__body[data-v-ef77cb72] h5,.article-content__body[data-v-ef77cb72] h6{margin:20px 0 10px;font-weight:700;color:#0f172a;line-height:1.35}.article-content__body[data-v-ef77cb72] h1{font-size:1.5rem}.article-content__body[data-v-ef77cb72] h2{font-size:1.3rem}.article-content__body[data-v-ef77cb72] h3{font-size:1.15rem}.article-content__body[data-v-ef77cb72] h4{font-size:1.05rem}.article-content__body[data-v-ef77cb72] h5{font-size:1rem}.article-content__body[data-v-ef77cb72] h6{font-size:.9rem}.article-content__body[data-v-ef77cb72] hr{margin:20px 0;border:none;border-top:1px solid #e2e8f0}.article-content__like-btn[data-v-ef77cb72]{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border:1px solid var(--border);border-radius:8px;background:#ffffffb3;font-size:.85rem;font-weight:600;color:var(--text-muted);cursor:pointer;transition:all .2s ease}.article-content__like-btn[data-v-ef77cb72]:hover{border-color:var(--danger);color:var(--danger);transform:scale(1.05)}.article-content__like-btn--liked[data-v-ef77cb72]{border-color:var(--danger);color:var(--danger);background:#dc26260f}.article-comments[data-v-ef77cb72]{position:sticky;top:76px;border:1px solid rgba(255,255,255,.55);border-radius:var(--radius-lg);background:#ffffffd9;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 4px 18px #0f172a0a;overflow:hidden;display:flex;flex-direction:column;max-height:calc(100vh - 100px)}.comments-header[data-v-ef77cb72]{padding:14px 18px;font-size:.95rem;font-weight:700;color:var(--text-strong);border-bottom:1px solid var(--border);flex-shrink:0}.comments-list[data-v-ef77cb72]{flex:1;overflow-y:auto;padding:8px 18px}.comment-item[data-v-ef77cb72]{padding:10px 0;border-bottom:1px solid var(--border)}.comment-item[data-v-ef77cb72]:last-child{border-bottom:none}.comment-item__header[data-v-ef77cb72]{display:flex;align-items:center;gap:6px;margin-bottom:4px}.comment-item__avatar[data-v-ef77cb72]{width:24px;height:24px;border-radius:50%;object-fit:cover;background:var(--primary-soft);flex-shrink:0}.comment-item__name[data-v-ef77cb72]{font-size:.82rem;font-weight:700;color:var(--text-strong)}.comment-item__reply-to[data-v-ef77cb72]{font-size:.78rem;color:var(--text-muted)}.comment-item__time[data-v-ef77cb72]{margin-left:auto;font-size:.72rem;color:var(--text-faint);flex-shrink:0}.comment-item__content[data-v-ef77cb72]{font-size:.85rem;color:var(--text-secondary);line-height:1.55;margin:0;padding-left:30px}.comment-item__content--deleted[data-v-ef77cb72]{color:var(--text-faint);font-style:italic}.comment-item__actions[data-v-ef77cb72]{display:flex;gap:8px;padding-left:30px;margin-top:4px}.comment-btn[data-v-ef77cb72]{border:none;background:none;font-size:.76rem;color:var(--text-muted);cursor:pointer;padding:2px 6px;border-radius:4px;transition:color .2s,background .2s}.comment-btn[data-v-ef77cb72]:hover{color:var(--primary-600);background:#10b9810f}.comment-btn--primary[data-v-ef77cb72]{color:var(--primary-600);font-weight:600}.comment-btn--danger[data-v-ef77cb72]{color:var(--danger)}.comment-btn--danger[data-v-ef77cb72]:hover{color:var(--danger);background:#dc26260f}.comment-children[data-v-ef77cb72]{margin-top:6px;padding-left:30px;border-left:2px solid rgba(16,185,129,.15)}.comment-item--child[data-v-ef77cb72]{padding:8px 0 8px 8px;border-bottom:1px solid var(--border)}.comment-item--child[data-v-ef77cb72]:last-child{border-bottom:none}.comment-reply-form[data-v-ef77cb72]{margin-top:8px;padding-left:30px}.comment-reply-form textarea[data-v-ef77cb72]{width:100%;min-height:60px;padding:8px 12px;border:1px solid var(--border-strong);border-radius:10px;background:#ffffffb3;font-size:.82rem;color:var(--text-strong);resize:vertical;outline:none;transition:border-color .24s ease,box-shadow .24s ease}.comment-reply-form textarea[data-v-ef77cb72]:focus{border-color:var(--primary-500);box-shadow:0 0 0 3px #10b9811a}.comment-reply-form__actions[data-v-ef77cb72]{display:flex;justify-content:flex-end;gap:6px;margin-top:6px}.comment-load-more[data-v-ef77cb72]{padding:10px 0;text-align:center}.comments-form[data-v-ef77cb72]{padding:14px 18px;border-top:1px solid var(--border);flex-shrink:0}.comments-form textarea[data-v-ef77cb72]{width:100%;min-height:64px;padding:8px 12px;border:1px solid var(--border-strong);border-radius:10px;background:#ffffffb3;font-size:.85rem;color:var(--text-strong);resize:vertical;outline:none;transition:border-color .24s ease,box-shadow .24s ease}.comments-form textarea[data-v-ef77cb72]:focus{border-color:var(--primary-500);box-shadow:0 0 0 3px #10b9811f}.comments-form__actions[data-v-ef77cb72]{display:flex;justify-content:flex-end;margin-top:8px}@media (max-width: 768px){.article-detail[data-v-ef77cb72]{grid-template-columns:1fr}}.ai-panel[data-v-822f2302]{background:#fff;border-radius:var(--radius-md);padding:20px 24px 24px}.ai-panel__header[data-v-822f2302]{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.ai-panel__title[data-v-822f2302]{font-size:1rem;font-weight:700;color:var(--text-strong);margin:0}.ai-panel__tip[data-v-822f2302]{font-size:.78rem;color:#999;margin:0 0 14px;line-height:1.6}.ai-table[data-v-822f2302]{width:100%;border-collapse:collapse;font-size:.85rem}.ai-table th[data-v-822f2302],.ai-table td[data-v-822f2302]{padding:10px 12px;text-align:left;border-bottom:1px solid var(--border);vertical-align:middle}.ai-table th[data-v-822f2302]{font-weight:600;color:var(--text-strong);background:#fafafa;white-space:nowrap}.ai-table__url[data-v-822f2302]{max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-strong)}.ai-table__mono[data-v-822f2302]{font-family:JetBrains Mono,Consolas,monospace;font-size:.78rem;color:#666}.ai-actions[data-v-822f2302]{display:flex;gap:6px;flex-wrap:wrap}.ai-badge[data-v-822f2302]{display:inline-block;padding:2px 8px;border-radius:10px;font-size:.72rem;font-weight:600}.ai-badge--on[data-v-822f2302]{color:var(--primary-600);background:var(--primary-soft)}.ai-badge--off[data-v-822f2302]{color:#888;background:#94a3b82e}.ai-empty[data-v-822f2302]{padding:24px 0;text-align:center;color:#999;font-size:.85rem}.modal-overlay[data-v-822f2302]{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a73;display:flex;align-items:center;justify-content:center;padding:24px;box-sizing:border-box;z-index:1000}.modal[data-v-822f2302]{display:flex;flex-direction:column;width:600px;max-width:100%;max-height:100%;background:#fff;border-radius:var(--radius-md);overflow:hidden;box-shadow:0 12px 40px #0f172a38}.modal__title[data-v-822f2302]{flex-shrink:0;margin:0;padding:16px 24px;font-size:1rem;font-weight:700;color:var(--text-strong);border-bottom:1px solid var(--border)}.modal__body[data-v-822f2302]{flex:1;min-height:0;overflow-y:auto;padding:16px 24px}.modal__field[data-v-822f2302]{margin-bottom:12px;flex:1;min-width:0}.modal__row[data-v-822f2302]{display:flex;gap:12px}.modal__label[data-v-822f2302]{display:block;margin-bottom:6px;font-size:.8rem;color:#555}.required-mark[data-v-822f2302]{color:var(--danger);margin-right:2px}.modal__input[data-v-822f2302]{width:100%;padding:8px 12px;border:1px solid var(--border-strong);border-radius:8px;font-size:.85rem;color:var(--text-strong);outline:none;box-sizing:border-box}.modal__input[data-v-822f2302]:focus{border-color:var(--primary-500)}.modal--delete[data-v-822f2302]{width:380px}.delete-confirm-text[data-v-822f2302]{margin:8px 0;font-size:.88rem;color:#333;line-height:1.6}.btn--danger[data-v-822f2302]{background:#ff4d4f;color:#fff;border-color:#ff4d4f}.btn--danger[data-v-822f2302]:hover{background:#ff7875;border-color:#ff7875}.btn--primary[data-v-822f2302]:disabled{background:var(--primary-400);box-shadow:none;cursor:not-allowed;transform:none}.modal__input[data-v-822f2302]:disabled{background:#94a3b81f;color:#888;cursor:not-allowed}.modal__footer[data-v-822f2302]{flex-shrink:0;display:flex;justify-content:flex-end;gap:10px;padding:12px 24px;border-top:1px solid var(--border)}.admin-layout[data-v-61ebfce8]{display:flex;min-height:calc(100vh - 50px)}.admin-sidebar[data-v-61ebfce8]{width:200px;background:#f5f7fa;border-right:1px solid #e8e8e8;padding:16px 0;flex-shrink:0}.admin-sidebar__title[data-v-61ebfce8]{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:600;color:#666;padding:0 16px 12px;border-bottom:1px solid #e8e8e8;margin-bottom:8px}.admin-sidebar__logo[data-v-61ebfce8]{width:20px;height:20px;object-fit:contain;display:block;flex-shrink:0}.admin-sidebar__link[data-v-61ebfce8]{display:flex;align-items:center;gap:8px;width:100%;padding:10px 16px;border:none;background:transparent;color:#333;font-size:14px;cursor:pointer;transition:background .2s;text-align:left}.admin-sidebar__link[data-v-61ebfce8]:hover{background:#e8f4ff}.admin-sidebar__link--active[data-v-61ebfce8]{background:#e8f4ff;color:#1677ff;font-weight:500}.admin-main[data-v-61ebfce8]{flex:1;padding:20px;overflow-x:auto}.admin-panel__header[data-v-61ebfce8]{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.admin-panel__title[data-v-61ebfce8]{font-size:18px;font-weight:600}.admin-table[data-v-61ebfce8]{width:100%;border-collapse:collapse;background:#fff;border-radius:8px;overflow:hidden;box-shadow:0 1px 4px #0000000f}.admin-table th[data-v-61ebfce8],.admin-table td[data-v-61ebfce8]{padding:12px 14px;text-align:left;border-bottom:1px solid #f0f0f0;font-size:13px}.admin-table th[data-v-61ebfce8]{background:#fafafa;font-weight:500;color:#555}.admin-table tbody tr[data-v-61ebfce8]:hover{background:#fafafa}.table-avatar[data-v-61ebfce8]{width:36px;height:36px;border-radius:50%;object-fit:cover;display:inline-block}.table-avatar--placeholder[data-v-61ebfce8]{font-size:24px;line-height:36px;text-align:center;display:inline-block;width:36px}.role-badge[data-v-61ebfce8],.status-badge[data-v-61ebfce8],.cat-tag-badge[data-v-61ebfce8]{display:inline-block;padding:2px 8px;border-radius:4px;font-size:12px;font-weight:500}.role-badge--admin[data-v-61ebfce8]{background:#e6f0ff;color:#1677ff}.role-badge--user[data-v-61ebfce8]{background:#f0f0f0;color:#666}.status-badge--normal[data-v-61ebfce8]{background:#f6ffed;color:#52c41a}.status-badge--banned[data-v-61ebfce8]{background:#fff2f0;color:#ff4d4f}.status-badge--draft[data-v-61ebfce8]{background:#fffbe6;color:#faad14}.cat-tag-badge[data-v-61ebfce8]{background:#f0f5ff;color:#2f54eb;margin-right:4px}.cat-tag-badge--tag[data-v-61ebfce8]{background:#f0f0f0;color:#666}.table-actions[data-v-61ebfce8]{display:flex;gap:6px}.btn-sm[data-v-61ebfce8]{padding:4px 10px;border:1px solid #d9d9d9;border-radius:4px;background:#fff;font-size:12px;cursor:pointer;transition:all .2s}.btn-sm[data-v-61ebfce8]:hover{border-color:#1677ff;color:#1677ff}.btn-sm--primary[data-v-61ebfce8]{background:#1677ff;color:#fff;border-color:#1677ff}.btn-sm--primary[data-v-61ebfce8]:hover{background:#4096ff;border-color:#4096ff;color:#fff}.btn-sm--danger[data-v-61ebfce8]{color:#ff4d4f;border-color:#ff4d4f}.btn-sm--danger[data-v-61ebfce8]:hover{background:#ff4d4f;color:#fff}.admin-empty[data-v-61ebfce8]{text-align:center;padding:40px;color:#999;font-size:14px}.modal__input-wrapper[data-v-61ebfce8]{display:flex;align-items:center;border:1px solid #d9d9d9;border-radius:4px;transition:border-color .2s;overflow:hidden}.modal__input-wrapper[data-v-61ebfce8]:focus-within{border-color:#1677ff;box-shadow:0 0 0 2px #1677ff1a}.modal__input-wrapper--error[data-v-61ebfce8]{border-color:#ff4d4f}.modal__input-wrapper--error[data-v-61ebfce8]:focus-within{border-color:#ff4d4f;box-shadow:0 0 0 2px #ff4d4f1a}.modal__input-wrapper--ok[data-v-61ebfce8]{border-color:#52c41a}.modal__input-wrapper--ok[data-v-61ebfce8]:focus-within{border-color:#52c41a;box-shadow:0 0 0 2px #52c41a1a}.modal__input-wrapper .modal__input[data-v-61ebfce8]{flex:1;border:none;box-shadow:none}.modal__input-wrapper .modal__input[data-v-61ebfce8]:focus{box-shadow:none}.modal__input-wrapper .modal__input--error[data-v-61ebfce8]{color:#ff4d4f}.modal__input-suffix[data-v-61ebfce8]{flex-shrink:0;padding:0 11px;font-size:12px;color:#999;white-space:nowrap}.modal__input-suffix--error[data-v-61ebfce8]{color:#ff4d4f}.modal__input-suffix--ok[data-v-61ebfce8]{color:#52c41a}.modal__field-hint[data-v-61ebfce8]{margin:4px 0 0;font-size:12px;color:#999;line-height:1.4}.modal__field-hint--error[data-v-61ebfce8]{color:#ff4d4f}.btn--primary[data-v-61ebfce8]:disabled{background:#a0c4ff;border-color:#a0c4ff;cursor:not-allowed}.modal-overlay[data-v-61ebfce8]{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;display:flex;justify-content:center;align-items:center;z-index:1000}.modal[data-v-61ebfce8]{background:#fff;border-radius:8px;width:460px;max-height:80vh;overflow-y:auto;box-shadow:0 6px 16px #0000001f}.modal__title[data-v-61ebfce8]{font-size:16px;font-weight:600;padding:16px 20px;border-bottom:1px solid #f0f0f0}.modal__body[data-v-61ebfce8]{padding:16px 20px}.modal__field[data-v-61ebfce8]{margin-bottom:14px}.modal__label[data-v-61ebfce8]{display:block;margin-bottom:4px;font-size:13px;font-weight:500;color:#333}.modal__input[data-v-61ebfce8]{width:100%;padding:7px 11px;border:1px solid #d9d9d9;border-radius:4px;font-size:13px;transition:border-color .2s;box-sizing:border-box}.modal__input[data-v-61ebfce8]:focus{border-color:#1677ff;outline:none;box-shadow:0 0 0 2px #1677ff1a}select.modal__input[data-v-61ebfce8]{-webkit-appearance:auto;-moz-appearance:auto;appearance:auto}.modal__input--required-empty[data-v-61ebfce8]{border-color:#ff4d4f}.modal__input--required-empty[data-v-61ebfce8]:focus{border-color:#ff4d4f;box-shadow:0 0 0 2px #ff4d4f1a}.required-mark[data-v-61ebfce8]{color:#ff4d4f;margin-right:2px;font-size:14px}.modal__footer[data-v-61ebfce8]{display:flex;justify-content:flex-end;gap:10px;padding:12px 20px;border-top:1px solid #f0f0f0}.btn[data-v-61ebfce8]{padding:8px 20px;border-radius:4px;font-size:13px;cursor:pointer;border:1px solid #d9d9d9;transition:all .2s}.btn--primary[data-v-61ebfce8]{background:#1677ff;color:#fff;border-color:#1677ff}.btn--primary[data-v-61ebfce8]:hover{background:#4096ff}.btn--cancel[data-v-61ebfce8]{background:#fff}.btn--cancel[data-v-61ebfce8]:hover{border-color:#1677ff;color:#1677ff}.btn--danger[data-v-61ebfce8]{background:#ff4d4f;color:#fff;border-color:#ff4d4f}.btn--danger[data-v-61ebfce8]:hover{background:#ff7875;border-color:#ff7875}.modal--delete[data-v-61ebfce8]{width:380px}.delete-confirm-text[data-v-61ebfce8]{font-size:14px;color:#333;line-height:1.6;margin:8px 0}.transfer-hint[data-v-61ebfce8]{font-size:12px;color:#999;margin:8px 0 0}.pagination[data-v-61ebfce8]{display:flex;justify-content:center;align-items:center;gap:6px;padding:16px 0;flex-wrap:wrap}.pagination__btn[data-v-61ebfce8]{min-width:32px;height:32px;padding:0 8px;border:1px solid #d9d9d9;border-radius:4px;background:#fff;color:#333;font-size:13px;cursor:pointer;transition:all .2s}.pagination__btn[data-v-61ebfce8]:hover{border-color:#1677ff;color:#1677ff}.pagination__btn--active[data-v-61ebfce8]{background:#1677ff;color:#fff;border-color:#1677ff}.pagination__btn--active[data-v-61ebfce8]:hover{background:#4096ff;border-color:#4096ff;color:#fff}.pagination__btn[data-v-61ebfce8]:disabled{color:#d9d9d9;border-color:#d9d9d9;cursor:not-allowed;background:#fafafa}.pagination__ellipsis[data-v-61ebfce8]{display:inline-block;width:24px;text-align:center;color:#999;font-size:13px}.pagination__info[data-v-61ebfce8]{margin-left:8px;font-size:13px;color:#666}.pagination__size[data-v-61ebfce8]{margin-left:4px;padding:4px 6px;border:1px solid #d9d9d9;border-radius:4px;font-size:13px;color:#333;background:#fff;cursor:pointer}.filter-bar[data-v-61ebfce8]{display:flex;align-items:center;gap:8px;margin-bottom:12px;flex-wrap:wrap}.filter-input[data-v-61ebfce8]{width:160px;padding:6px 10px;border:1px solid #d9d9d9;border-radius:4px;font-size:13px;transition:border-color .2s;box-sizing:border-box}.filter-input[data-v-61ebfce8]:focus{border-color:#1677ff;outline:none;box-shadow:0 0 0 2px #1677ff1a}.filter-select[data-v-61ebfce8]{padding:6px 10px;border:1px solid #d9d9d9;border-radius:4px;font-size:13px;color:#333;background:#fff;cursor:pointer;box-sizing:border-box}.filter-date[data-v-61ebfce8]{padding:5px 8px;border:1px solid #d9d9d9;border-radius:4px;font-size:13px;color:#333;background:#fff;cursor:pointer;box-sizing:border-box}.filter-date-sep[data-v-61ebfce8]{color:#999;font-size:13px}.article-editor-page[data-v-4ea8799f]{min-height:100vh;background:#f5f7fa}.editor-layout[data-v-4ea8799f]{max-width:1200px;margin:0 auto;padding:20px}.editor-container[data-v-4ea8799f]{background:#fff;border-radius:8px;box-shadow:0 1px 4px #0000000f}.editor-topbar[data-v-4ea8799f]{display:flex;align-items:center;padding:16px 24px;border-bottom:1px solid #f0f0f0;gap:16px}.btn-back[data-v-4ea8799f]{padding:6px 14px;border:1px solid #d9d9d9;border-radius:4px;background:#fff;font-size:13px;cursor:pointer;transition:all .2s;white-space:nowrap}.btn-back[data-v-4ea8799f]:hover{border-color:#1677ff;color:#1677ff}.editor-title[data-v-4ea8799f]{flex:1;font-size:18px;font-weight:600;margin:0}.editor-topbar__right[data-v-4ea8799f]{flex-shrink:0}.editor-form[data-v-4ea8799f]{display:flex;gap:24px;padding:24px}.editor-form__main[data-v-4ea8799f]{flex:1;min-width:0}.editor-form__side[data-v-4ea8799f]{width:320px;flex-shrink:0}.form-group[data-v-4ea8799f]{margin-bottom:20px}.form-label[data-v-4ea8799f]{display:block;margin-bottom:6px;font-size:13px;font-weight:500;color:#333}.required[data-v-4ea8799f]{color:#ff4d4f;margin-right:2px}.form-input[data-v-4ea8799f]{width:100%;padding:8px 12px;border:1px solid #d9d9d9;border-radius:4px;font-size:13px;transition:border-color .2s;box-sizing:border-box;background:#fff}.form-input[data-v-4ea8799f]:focus{border-color:#1677ff;outline:none;box-shadow:0 0 0 2px #1677ff1a}select.form-input[data-v-4ea8799f]{-webkit-appearance:auto;-moz-appearance:auto;appearance:auto}.form-textarea[data-v-4ea8799f]{resize:vertical;min-height:70px;line-height:1.5}.input-error[data-v-4ea8799f]{border-color:#ff4d4f!important}.tag-selector[data-v-4ea8799f]{display:flex;flex-wrap:wrap;gap:6px}.tag-option[data-v-4ea8799f]{display:inline-block;padding:4px 10px;border:1px solid #d9d9d9;border-radius:4px;font-size:12px;cursor:pointer;transition:all .2s;-webkit-user-select:none;user-select:none}.tag-option[data-v-4ea8799f]:hover{border-color:#1677ff;color:#1677ff}.tag-option--selected[data-v-4ea8799f]{background:#1677ff;color:#fff;border-color:#1677ff}.tag-empty[data-v-4ea8799f]{font-size:12px;color:#999}.summary-model-select[data-v-4ea8799f]{margin-bottom:8px}.summary-hint[data-v-4ea8799f]{margin:0 0 8px;font-size:12px;color:#fa8c16;line-height:1.5}.summary-wrapper[data-v-4ea8799f]{display:flex;flex-direction:column;gap:8px}.btn-generate[data-v-4ea8799f]{align-self:flex-start;padding:6px 16px;font-size:12px;background:#fff;border:1px solid #1677ff;color:#1677ff;border-radius:4px;cursor:pointer;transition:all .2s;white-space:nowrap}.btn-generate[data-v-4ea8799f]:hover:not(:disabled){background:#1677ff;color:#fff}.btn-generate[data-v-4ea8799f]:disabled{border-color:#d9d9d9;color:#999;cursor:not-allowed;background:#f5f5f5}.cover-upload[data-v-4ea8799f]{display:flex;align-items:center;gap:10px}.cover-preview[data-v-4ea8799f]{width:80px;height:52px;object-fit:cover;border-radius:4px;border:1px solid #f0f0f0}.btn-sm[data-v-4ea8799f]{padding:4px 10px;border:1px solid #d9d9d9;border-radius:4px;background:#fff;font-size:12px;cursor:pointer;transition:all .2s}.btn-sm[data-v-4ea8799f]:hover{border-color:#1677ff;color:#1677ff}.toolbar-container[data-v-4ea8799f]{position:sticky;top:60px;z-index:10;background:#fff;border:1px solid #d9d9d9;border-bottom:none;border-radius:4px 4px 0 0}.editor-content[data-v-4ea8799f]{border:1px solid #d9d9d9;border-radius:0 0 4px 4px;min-height:400px}.editor-content[data-v-4ea8799f] .w-e-text-container{min-height:360px}.btn[data-v-4ea8799f]{padding:8px 20px;border-radius:4px;font-size:13px;cursor:pointer;border:1px solid #d9d9d9;transition:all .2s}.btn--primary[data-v-4ea8799f]{background:#1677ff;color:#fff;border-color:#1677ff}.btn--primary[data-v-4ea8799f]:hover{background:#4096ff}.btn--primary[data-v-4ea8799f]:disabled{background:#a0c4ff;border-color:#a0c4ff;cursor:not-allowed}@media (max-width: 900px){.editor-form[data-v-4ea8799f]{flex-direction:column}.editor-form__side[data-v-4ea8799f]{width:100%}.editor-layout[data-v-4ea8799f]{padding:12px}.editor-form[data-v-4ea8799f]{padding:16px}}.hero-banner[data-v-97fe4e21]{background:linear-gradient(135deg,#10b9811a,#3b82f61a);border-radius:24px;padding:48px 32px;margin-bottom:32px;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.3);box-shadow:0 8px 32px #0f172a1a;position:relative;overflow:hidden}.hero-banner[data-v-97fe4e21]:before{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:radial-gradient(circle,rgba(16,185,129,.1) 0%,transparent 70%);animation:rotate-97fe4e21 20s linear infinite}@keyframes rotate-97fe4e21{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.hero-content[data-v-97fe4e21]{position:relative;z-index:1;text-align:center;max-width:600px;margin:0 auto}.hero-avatar[data-v-97fe4e21]{width:120px;height:120px;margin:0 auto 20px;border-radius:50%;border:4px solid rgba(16,185,129,.3);overflow:hidden;box-shadow:0 8px 24px #10b98133}.hero-avatar__img[data-v-97fe4e21]{width:100%;height:100%;object-fit:cover}.hero-avatar__placeholder[data-v-97fe4e21]{display:flex;align-items:center;justify-content:center;width:100%;height:100%;font-size:3rem;background:linear-gradient(135deg,var(--primary-100),var(--primary-200));color:var(--primary-600)}.hero-name[data-v-97fe4e21]{font-size:2.5rem;font-weight:800;color:var(--text-strong);margin:0 0 12px;background:linear-gradient(135deg,var(--primary-600),var(--primary-500));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.hero-title[data-v-97fe4e21]{font-size:1.1rem;color:var(--text-secondary);margin:0 0 16px;font-weight:500}.hero-quote[data-v-97fe4e21]{font-size:1.2rem;color:var(--text-primary);margin:0 0 24px;font-style:italic;font-weight:500}.hero-tags[data-v-97fe4e21]{display:flex;justify-content:center;gap:8px;margin-bottom:24px;flex-wrap:wrap}.hero-tag[data-v-97fe4e21]{padding:8px 16px;border-radius:20px;background:#10b9811a;color:var(--primary-700);font-weight:600;font-size:.9rem;border:1px solid rgba(16,185,129,.2)}.hero-social[data-v-97fe4e21]{display:flex;justify-content:center;gap:12px}.hero-social-btn[data-v-97fe4e21]{display:inline-flex;align-items:center;gap:6px;padding:10px 20px;border-radius:12px;background:#fffc;color:var(--text-secondary);text-decoration:none;font-weight:600;font-size:.9rem;border:1px solid rgba(255,255,255,.5);transition:all .3s ease;box-shadow:0 2px 8px #0000000d}.hero-social-btn[data-v-97fe4e21]:hover{transform:translateY(-2px);box-shadow:0 4px 16px #10b98133;border-color:var(--primary-300);color:var(--primary-700)}.about-layout[data-v-97fe4e21],.about-main[data-v-97fe4e21]{width:100%}.about-section[data-v-97fe4e21]{background:#fffc;border:1px solid rgba(255,255,255,.55);border-radius:var(--radius-lg);padding:28px;margin-bottom:24px;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 4px 18px #0f172a0a;transition:transform .3s ease,box-shadow .3s ease}.about-section[data-v-97fe4e21]:hover{transform:translateY(-2px);box-shadow:0 8px 24px #0f172a14}.about-section__title[data-v-97fe4e21]{font-size:1.35rem;font-weight:700;color:var(--text-strong);margin:0 0 20px;padding-bottom:16px;border-bottom:2px solid var(--primary-100);display:flex;align-items:center;gap:10px}.section-icon[data-v-97fe4e21]{font-size:1.4rem}.about-section__content[data-v-97fe4e21]{color:var(--text-secondary);line-height:1.8}.about-text[data-v-97fe4e21]{margin:0 0 16px;font-size:1rem;line-height:1.9}.about-text[data-v-97fe4e21]:last-child{margin-bottom:0}.philosophy-content[data-v-97fe4e21]{text-align:center;padding:20px}.philosophy-text[data-v-97fe4e21]{font-size:1.1rem;line-height:2;color:var(--text-primary);margin:0 0 20px;font-weight:500}.philosophy-text[data-v-97fe4e21]:last-child{margin-bottom:0}.interest-tags[data-v-97fe4e21]{display:flex;flex-wrap:wrap;gap:10px}.interest-tag[data-v-97fe4e21]{padding:8px 16px;border-radius:20px;background:linear-gradient(135deg,#10b9811a,#3b82f61a);color:var(--primary-700);font-weight:600;font-size:.9rem;border:1px solid rgba(16,185,129,.2);transition:all .3s ease}.interest-tag[data-v-97fe4e21]:hover{transform:translateY(-2px);box-shadow:0 4px 12px #10b98133;background:linear-gradient(135deg,#10b98126,#3b82f626)}.stats-grid[data-v-97fe4e21]{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:16px}.stat-card[data-v-97fe4e21]{background:#f8fafccc;border-radius:16px;padding:20px 16px;text-align:center;transition:all .3s ease;border:1px solid rgba(255,255,255,.5)}.stat-card[data-v-97fe4e21]:hover{transform:translateY(-4px);box-shadow:0 8px 20px #10b98126}.stat-card__icon[data-v-97fe4e21]{font-size:1.8rem;margin-bottom:8px}.stat-card__value[data-v-97fe4e21]{font-size:1.8rem;font-weight:800;color:var(--primary-700);margin-bottom:4px}.stat-card__label[data-v-97fe4e21]{font-size:.85rem;color:var(--text-muted);font-weight:600}.contact-cards[data-v-97fe4e21]{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px}.contact-card[data-v-97fe4e21]{background:#f8fafccc;border-radius:16px;padding:24px 20px;text-align:center;transition:all .3s ease;border:1px solid rgba(255,255,255,.5)}.contact-card[data-v-97fe4e21]:hover{transform:translateY(-6px);box-shadow:0 12px 28px #10b98133;background:#10b98108}.contact-card__icon[data-v-97fe4e21]{font-size:2.2rem;margin-bottom:12px}.contact-card__title[data-v-97fe4e21]{font-size:1.1rem;font-weight:700;color:var(--text-strong);margin:0 0 8px}.contact-card__desc[data-v-97fe4e21]{font-size:.85rem;color:var(--text-muted);margin:0 0 16px}.contact-card__link[data-v-97fe4e21]{display:inline-block;color:var(--primary-600);text-decoration:none;font-weight:600;font-size:.9rem;transition:color .2s ease}.contact-card__link[data-v-97fe4e21]:hover{color:var(--primary-700);text-decoration:underline}.about-footer[data-v-97fe4e21]{background:linear-gradient(135deg,#10b98114,#3b82f614);border-radius:20px;padding:32px 24px;text-align:center;margin-top:32px;border:1px solid rgba(255,255,255,.3)}.footer-text[data-v-97fe4e21]{font-size:1.1rem;line-height:2;color:var(--text-secondary);margin:0 0 24px}.footer-motto[data-v-97fe4e21]{font-size:1.3rem;font-weight:700;color:var(--primary-700);margin:0;line-height:1.8}.footer-heart[data-v-97fe4e21]{color:var(--danger);font-size:1.5rem}.hero-edit-area[data-v-97fe4e21]{margin-top:20px}.hero-edit-btn[data-v-97fe4e21]{padding:10px 24px;border-radius:12px;border:1px solid var(--primary-300);background:#ffffffe6;color:var(--primary-700);font-weight:600;font-size:.95rem;cursor:pointer;transition:all .3s ease;box-shadow:0 2px 8px #0000000d}.hero-edit-btn[data-v-97fe4e21]:hover{background:var(--primary-600);color:#fff;border-color:var(--primary-600);transform:translateY(-2px);box-shadow:0 4px 16px #10b9814d}.hero-field[data-v-97fe4e21]{margin-bottom:20px;text-align:left}.edit-label[data-v-97fe4e21]{display:block;font-size:.85rem;font-weight:600;color:var(--text-secondary);margin-bottom:6px}.edit-input[data-v-97fe4e21]{width:100%;padding:10px 14px;border-radius:10px;border:1px solid var(--border);background:#ffffffe6;color:var(--text-strong);font-size:.95rem;transition:border-color .2s ease,box-shadow .2s ease;outline:none;box-sizing:border-box}.edit-input[data-v-97fe4e21]:focus{border-color:var(--primary-400);box-shadow:0 0 0 3px #10b98126}.edit-textarea[data-v-97fe4e21]{width:100%;padding:12px 14px;border-radius:10px;border:1px solid var(--border);background:#ffffffe6;color:var(--text-strong);font-size:.95rem;line-height:1.7;transition:border-color .2s ease,box-shadow .2s ease;outline:none;resize:vertical;font-family:inherit;box-sizing:border-box}.edit-textarea[data-v-97fe4e21]:focus{border-color:var(--primary-400);box-shadow:0 0 0 3px #10b98126}.edit-social[data-v-97fe4e21]{display:flex;flex-direction:column;gap:16px}.edit-actions[data-v-97fe4e21]{display:flex;gap:12px;justify-content:flex-end;margin-top:24px;padding:20px 0;border-top:1px solid var(--border)}.edit-btn[data-v-97fe4e21]{padding:10px 28px;border-radius:10px;font-weight:600;font-size:.95rem;cursor:pointer;transition:all .3s ease;border:1px solid transparent}.edit-btn--save[data-v-97fe4e21]{background:var(--primary-600);color:#fff;border-color:var(--primary-600)}.edit-btn--save[data-v-97fe4e21]:hover:not(:disabled){background:var(--primary-700);transform:translateY(-2px);box-shadow:0 4px 14px #10b9814d}.edit-btn--save[data-v-97fe4e21]:disabled{opacity:.6;cursor:not-allowed}.edit-btn--cancel[data-v-97fe4e21]{background:#fffc;color:var(--text-secondary);border-color:var(--border)}.edit-btn--cancel[data-v-97fe4e21]:hover{background:var(--bg-muted);color:var(--text-strong)}@media (max-width: 1024px){.about-layout[data-v-97fe4e21]{grid-template-columns:1fr}.about-sidebar[data-v-97fe4e21]{position:static;order:-1}}@media (max-width: 768px){.hero-banner[data-v-97fe4e21]{padding:32px 20px}.hero-name[data-v-97fe4e21]{font-size:2rem}.hero-social[data-v-97fe4e21]{flex-direction:column;align-items:center}.hero-social-btn[data-v-97fe4e21]{width:100%;justify-content:center}.about-section[data-v-97fe4e21]{padding:20px 16px}.stats-grid[data-v-97fe4e21]{grid-template-columns:repeat(2,1fr)}.contact-cards[data-v-97fe4e21]{grid-template-columns:1fr}}.page-shell[data-v-93e932bc]{max-width:600px;margin:32px auto;padding:0 24px}.profile-card[data-v-93e932bc]{background:#ffffffd9;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid rgba(255,255,255,.55);border-radius:var(--radius-xl);box-shadow:0 4px 18px #0f172a0a;padding:36px 32px 28px}.profile-card__avatar[data-v-93e932bc]{display:flex;justify-content:center;margin-bottom:28px;position:relative;cursor:pointer}.profile-card__avatar-img[data-v-93e932bc]{width:88px;height:88px;border-radius:50%;object-fit:cover;border:3px solid rgba(16,185,129,.18);box-shadow:0 4px 14px #10b9811a;transition:opacity .24s ease}.profile-card__avatar-placeholder[data-v-93e932bc]{width:88px;height:88px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:var(--primary-soft);color:var(--primary-700);font-size:2rem}.profile-card__avatar-overlay[data-v-93e932bc]{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-size:1.4rem;color:#fff;opacity:0;transition:opacity .24s ease}.profile-card__avatar-overlay[data-v-93e932bc]:before{content:"";position:absolute;width:88px;height:88px;border-radius:50%;background:#0f172a59}.profile-card__avatar-overlay span[data-v-93e932bc]{position:relative;z-index:1}.profile-card__avatar:hover .profile-card__avatar-overlay[data-v-93e932bc]{opacity:1}.profile-card__avatar:hover .profile-card__avatar-img[data-v-93e932bc]{opacity:.75}.profile-card__info-list[data-v-93e932bc]{display:flex;flex-direction:column}.info-item[data-v-93e932bc]{display:flex;align-items:center;padding:14px 0;gap:14px}.info-item--bio[data-v-93e932bc]{align-items:center}.info-item__label[data-v-93e932bc]{font-size:.88rem;font-weight:700;color:var(--text-muted);flex-shrink:0;min-width:56px}.info-item__value[data-v-93e932bc]{font-size:.95rem;color:var(--text-strong);flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.info-item__value--masked[data-v-93e932bc]{letter-spacing:.12em}.info-item__action[data-v-93e932bc]{flex-shrink:0;height:34px;padding:0 16px;border:none;border-radius:12px;background:linear-gradient(135deg,var(--primary-600),var(--primary-500));color:#fff;font-size:.8rem;font-weight:700;box-shadow:0 8px 18px #10b98129;transition:transform var(--transition-base),box-shadow var(--transition-base)}.info-item__action[data-v-93e932bc]:hover{transform:translateY(-1px);box-shadow:0 12px 22px #10b98138}.info-divider[data-v-93e932bc]{height:1px;background:#94a3b824}.plain-input[data-v-93e932bc]{flex:1;min-height:42px;padding:0 4px;font-size:.95rem;color:var(--text-strong);background:transparent;border:none;border-bottom:1px solid transparent;outline:none;transition:border-color .24s ease}.plain-input[data-v-93e932bc]:focus{border-bottom-color:var(--primary-500)}.plain-input[data-v-93e932bc]::placeholder{color:var(--text-muted)}.profile-card__save-row[data-v-93e932bc]{display:flex;justify-content:center;padding-top:10px}.save-btn[data-v-93e932bc]{min-height:48px;min-width:200px;padding:0 32px;border:none;border-radius:var(--radius-lg);background:linear-gradient(135deg,var(--primary-600),var(--primary-500));color:#fff;font-size:.95rem;font-weight:700;box-shadow:0 12px 28px #10b98133;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:10px;transition:transform var(--transition-base),box-shadow var(--transition-base),opacity var(--transition-base)}.save-btn[data-v-93e932bc]:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 18px 32px #10b98147}.save-btn[data-v-93e932bc]:disabled{opacity:.6;box-shadow:none;cursor:not-allowed}.modal-overlay[data-v-93e932bc]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;display:flex;align-items:center;justify-content:center;background:#0f172a52;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);padding:20px}.modal-panel[data-v-93e932bc]{width:100%;max-width:440px;background:var(--surface-strong);border-radius:var(--radius-xl);box-shadow:var(--shadow-md);overflow:hidden}.modal-panel__header[data-v-93e932bc]{display:flex;align-items:center;justify-content:space-between;padding:20px 24px 0}.modal-panel__title[data-v-93e932bc]{font-size:1.1rem;font-weight:700;color:var(--text-strong);margin:0}.modal-panel__close[data-v-93e932bc]{width:36px;height:36px;border:none;border-radius:12px;background:#94a3b81a;color:var(--text-muted);font-size:1.2rem;display:inline-flex;align-items:center;justify-content:center;transition:background var(--transition-base),color var(--transition-base)}.modal-panel__close[data-v-93e932bc]:hover{background:#dc26261a;color:var(--danger)}.modal-panel__body[data-v-93e932bc]{padding:20px 24px 28px;display:flex;flex-direction:column;gap:14px}.no-email-prompt[data-v-93e932bc]{display:flex;flex-direction:column;align-items:center;gap:20px;padding:32px 0}.no-email-prompt__text[data-v-93e932bc]{margin:0;color:var(--text-muted);font-size:.95rem;text-align:center}.no-email-prompt .submit-primary[data-v-93e932bc]{align-self:center}.input-shell--readonly[data-v-93e932bc]{opacity:.7}.input-shell--readonly .input-shell__control[data-v-93e932bc]{color:var(--text-muted);cursor:not-allowed}.submit-primary[data-v-93e932bc]{min-height:50px;width:100%;border:none;border-radius:var(--radius-lg);background:linear-gradient(135deg,var(--primary-600),var(--primary-500));color:#fff;font-size:.98rem;font-weight:700;box-shadow:0 12px 28px #10b98133;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:10px;transition:transform var(--transition-base),box-shadow var(--transition-base),opacity var(--transition-base);margin-top:6px}.submit-primary[data-v-93e932bc]:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 18px 32px #10b98147}.submit-primary[data-v-93e932bc]:disabled{opacity:.6;box-shadow:none;cursor:not-allowed}.spinner[data-v-93e932bc]{width:18px;height:18px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin-93e932bc .7s linear infinite}@keyframes spin-93e932bc{to{transform:rotate(360deg)}}.modal-enter-active[data-v-93e932bc],.modal-leave-active[data-v-93e932bc]{transition:opacity .24s ease}.modal-enter-active .modal-panel[data-v-93e932bc],.modal-leave-active .modal-panel[data-v-93e932bc]{transition:transform .24s ease,opacity .24s ease}.modal-enter-from[data-v-93e932bc],.modal-leave-to[data-v-93e932bc]{opacity:0}.modal-enter-from .modal-panel[data-v-93e932bc],.modal-leave-to .modal-panel[data-v-93e932bc]{transform:scale(.95) translateY(8px);opacity:0}:root{font-family:Inter,PingFang SC,Microsoft YaHei,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.5;font-weight:400;color:#0f172a;background:radial-gradient(circle at top left,rgba(16,185,129,.16),transparent 32%),radial-gradient(circle at right,rgba(59,130,246,.14),transparent 28%),linear-gradient(180deg,#f8fffd,#f3f7ff);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--primary-700: #047857;--primary-600: #059669;--primary-500: #10b981;--primary-400: #34d399;--primary-soft: rgba(16, 185, 129, .12);--accent-500: #3b82f6;--accent-soft: rgba(59, 130, 246, .12);--text-strong: #0f172a;--text-secondary: #334155;--text-muted: #64748b;--text-faint: #94a3b8;--surface: rgba(255, 255, 255, .88);--surface-strong: #ffffff;--surface-soft: #f8fafc;--border: rgba(148, 163, 184, .22);--border-strong: rgba(148, 163, 184, .34);--danger: #dc2626;--danger-soft: rgba(220, 38, 38, .08);--success: #059669;--warning: #d97706;--shadow-soft: 0 18px 40px rgba(15, 23, 42, .08);--shadow-md: 0 22px 55px rgba(15, 23, 42, .12);--shadow-inset: inset 0 1px 0 rgba(255, 255, 255, .72);--radius-xl: 24px;--radius-lg: 18px;--radius-md: 14px;--transition-base: .24s ease}*,*:before,*:after{box-sizing:border-box}html{font-size:16px}body{min-width:320px;min-height:100vh;margin:0;color:var(--text-strong)}body,input,button,textarea,select{font-family:inherit}img{display:inline-block;max-width:100%}button,input,textarea,select{margin:0}button{cursor:pointer}a{color:inherit;text-decoration:none}#app{min-height:100vh}.auth-form{display:flex;flex-direction:column;gap:12px}.form-stack{display:flex;flex-direction:column;gap:6px}.field-header{display:flex;align-items:center;justify-content:space-between;gap:12px}.field-label{font-size:.92rem;font-weight:700;color:var(--text-strong)}.field-tip{font-size:.78rem;color:var(--text-muted)}.input-shell{min-height:50px;display:flex;align-items:center;border-radius:var(--radius-lg);border:1px solid var(--border-strong);background:#ffffffd1;box-shadow:var(--shadow-inset);transition:border-color var(--transition-base),box-shadow var(--transition-base),background-color var(--transition-base),transform var(--transition-base)}.input-shell:focus-within{border-color:var(--primary-500);background:var(--surface-strong);box-shadow:var(--shadow-inset),0 0 0 4px #10b9811f;transform:translateY(-1px)}.input-shell--error{border-color:#dc262659;background:#fff7f7eb}.input-shell--valid{border-color:#05966952;background:#f0fdf4eb}.input-shell__icon{width:48px;display:inline-flex;align-items:center;justify-content:center;color:var(--text-faint);font-size:1rem;flex-shrink:0}.input-shell__control{width:100%;min-width:0;height:48px;padding:0 12px 0 0;border:none;outline:none;background:transparent;color:var(--text-strong);font-size:.95rem}.input-shell__control::placeholder{color:var(--text-faint)}.input-shell__addon{padding-right:6px;display:inline-flex;align-items:center;gap:8px;flex-shrink:0}.inline-action{min-width:108px;height:38px;padding:0 14px;border:none;border-radius:14px;background:linear-gradient(135deg,var(--primary-600),var(--primary-500));color:#fff;font-size:.82rem;font-weight:700;box-shadow:0 12px 24px #10b9812e;transition:transform var(--transition-base),box-shadow var(--transition-base),opacity var(--transition-base)}.inline-action:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 16px 26px #10b9813d}.inline-action:disabled{opacity:.6;box-shadow:none;cursor:not-allowed}.captcha-preview{width:108px;height:38px;border:1px solid rgba(148,163,184,.22);border-radius:14px;overflow:hidden;background:linear-gradient(180deg,#f8fafc,#eef2ff);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:transform var(--transition-base),box-shadow var(--transition-base),opacity var(--transition-base)}.captcha-preview:hover{transform:translateY(-1px);box-shadow:var(--shadow-soft)}.captcha-preview__image{width:100%;height:100%;object-fit:cover}.captcha-preview__placeholder{font-size:.8rem;color:var(--text-muted);font-weight:600}.helper-text{min-height:18px;padding:0 4px;font-size:.78rem;color:var(--text-muted);line-height:1.45}.helper-text--error{color:var(--danger)}.helper-text--success{color:var(--success)}.tab-switch{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:4px;border:1px solid var(--border);border-radius:20px;background:#f8fafce6;box-shadow:inset 0 1px #ffffffd9}.tab-option{min-height:42px;border:none;border-radius:16px;background:transparent;color:var(--text-muted);font-size:.95rem;font-weight:700;display:inline-flex;align-items:center;justify-content:center;gap:8px;transition:background-color var(--transition-base),color var(--transition-base),box-shadow var(--transition-base),transform var(--transition-base)}.tab-option:hover{color:var(--primary-700)}.tab-option.is-active{background:var(--surface-strong);color:var(--primary-700);box-shadow:var(--shadow-soft)}.submit-primary{width:100%;min-height:50px;border:none;border-radius:var(--radius-lg);background:linear-gradient(135deg,var(--primary-700),var(--primary-500) 58%,var(--accent-500));color:#fff;font-size:.95rem;font-weight:800;letter-spacing:.08em;box-shadow:0 18px 30px #10b98133;display:inline-flex;align-items:center;justify-content:center;gap:10px;transition:transform var(--transition-base),box-shadow var(--transition-base),opacity var(--transition-base)}.submit-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 22px 40px #10b98140}.submit-primary:disabled{opacity:.6;box-shadow:none;cursor:not-allowed}.form-links{display:flex;align-items:center;justify-content:space-between;gap:14px;padding-top:14px;border-top:1px solid rgba(148,163,184,.16)}.text-link{color:var(--primary-700);font-size:.92rem;font-weight:700;transition:color var(--transition-base),opacity var(--transition-base)}.text-link:hover{color:var(--primary-600)}.status-mark{width:24px;height:24px;margin-right:10px;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;font-size:.92rem;font-weight:800}.status-mark--valid{color:var(--success)}.status-mark--checking{color:var(--warning);animation:ui-spin .8s linear infinite}.spinner{width:18px;height:18px;border:2px solid rgba(255,255,255,.35);border-top-color:#fff;border-radius:50%;animation:ui-spin .7s linear infinite}@keyframes ui-spin{to{transform:rotate(360deg)}}@media (max-width: 640px){.form-links{flex-direction:column;align-items:flex-start}.field-header{flex-direction:column;align-items:flex-start;gap:4px}.inline-action,.captcha-preview{min-width:96px;width:96px}}.page-shell{max-width:1200px;margin:0 auto;padding:28px 24px 40px}.home-sort{display:flex;gap:6px}.sort-btn{height:38px;padding:0 16px;border:1px solid var(--border);border-radius:12px;background:#ffffffb3;font-size:.85rem;font-weight:600;color:var(--text-muted);cursor:pointer;transition:all .2s ease}.sort-btn:hover{border-color:var(--primary-400);color:var(--primary-700)}.sort-btn--active{background:linear-gradient(135deg,var(--primary-600),var(--primary-500));border-color:transparent;color:#fff;box-shadow:0 6px 14px #10b98129}.category-bar{display:flex;flex-wrap:wrap;gap:8px;padding-bottom:4px}.category-tag{padding:5px 16px;border:1px solid var(--border);border-radius:20px;background:#ffffffb3;font-size:.85rem;font-weight:600;color:var(--text-muted);cursor:pointer;white-space:nowrap;transition:all .2s ease}.category-tag:hover{border-color:var(--primary-400);color:var(--primary-700)}.category-tag--active{background:var(--primary-soft);border-color:var(--primary-500);color:var(--primary-700)}.article-list{display:flex;flex-direction:column;gap:14px}.article-card{display:flex;gap:20px;padding:22px 24px;border:1px solid rgba(255,255,255,.55);border-radius:var(--radius-lg);background:#fffc;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 4px 18px #0f172a0a;transition:transform .24s ease,box-shadow .24s ease;cursor:pointer}.article-card:hover{transform:translateY(-2px);box-shadow:0 12px 32px #0f172a14}.article-card__body{flex:1;min-width:0;display:flex;flex-direction:column;gap:8px}.article-card__title{font-size:1.12rem;font-weight:700;color:var(--text-strong);line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.article-card__summary{font-size:.88rem;color:var(--text-muted);line-height:1.55;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.article-card__meta{display:flex;align-items:center;gap:16px;margin-top:auto;font-size:.8rem;color:var(--text-faint)}.article-card__meta-item{display:inline-flex;align-items:center;gap:4px}.article-card__cover{width:160px;height:108px;border-radius:12px;object-fit:cover;flex-shrink:0;background:linear-gradient(135deg,#eef2ff,#f0fdf4)}.article-empty{text-align:center;padding:60px 20px;color:var(--text-faint);font-size:.95rem}.admin-layout{display:grid;grid-template-columns:220px 1fr;min-height:calc(100vh - 60px)}.admin-sidebar{background:#ffffffd9;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-right:1px solid rgba(148,163,184,.14);padding:16px 0;display:flex;flex-direction:column;gap:4px}.admin-sidebar__title{padding:8px 20px 16px;font-size:.78rem;font-weight:700;color:var(--text-faint);text-transform:uppercase;letter-spacing:.08em}.admin-sidebar__link{display:flex;align-items:center;gap:10px;padding:10px 20px;margin:0 8px;border-radius:12px;font-size:.88rem;font-weight:600;color:var(--text-secondary);cursor:pointer;border:none;background:transparent;transition:all .2s ease;text-align:left;width:calc(100% - 16px)}.admin-sidebar__link:hover{background:#10b9810f;color:var(--primary-700)}.admin-sidebar__link--active{background:var(--primary-soft);color:var(--primary-700)}.admin-main{padding:24px 28px;overflow-x:auto}.admin-panel{border:1px solid rgba(255,255,255,.55);border-radius:var(--radius-lg);background:#ffffffd9;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 4px 18px #0f172a0a;overflow:hidden}.admin-panel__header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--border)}.admin-panel__title{font-size:1.05rem;font-weight:700;color:var(--text-strong)}.admin-panel__actions{display:flex;gap:8px}.admin-table{width:100%;border-collapse:collapse}.admin-table th,.admin-table td{padding:12px 16px;text-align:left;font-size:.88rem;border-bottom:1px solid var(--border)}.admin-table th{font-weight:700;color:var(--text-muted);background:#f8fafcb3;white-space:nowrap}.admin-table td{color:var(--text-secondary)}.admin-table tr:last-child td{border-bottom:none}.admin-table tr:hover td{background:#10b98108}.table-avatar{width:32px;height:32px;border-radius:50%;object-fit:cover;vertical-align:middle}.table-avatar--placeholder{display:inline-flex;align-items:center;justify-content:center;background:var(--primary-soft);color:var(--primary-700);font-size:.75rem}.status-badge{display:inline-block;padding:3px 10px;border-radius:10px;font-size:.78rem;font-weight:700}.status-badge--normal{background:#10b9811a;color:var(--success)}.status-badge--banned{background:var(--danger-soft);color:var(--danger)}.role-badge{display:inline-block;padding:3px 10px;border-radius:10px;font-size:.78rem;font-weight:700}.role-badge--admin{background:#3b82f61a;color:var(--accent-500)}.role-badge--user{background:#94a3b81a;color:var(--text-muted)}.table-actions{display:flex;gap:6px}.btn-sm{height:30px;padding:0 12px;border:1px solid var(--border);border-radius:8px;background:#ffffffb3;font-size:.8rem;font-weight:600;color:var(--text-secondary);cursor:pointer;transition:all .2s ease}.btn-sm:hover{border-color:var(--primary-400);color:var(--primary-700)}.btn-sm--primary{background:linear-gradient(135deg,var(--primary-600),var(--primary-500));border-color:transparent;color:#fff;box-shadow:0 4px 10px #10b9811f}.btn-sm--primary:hover{box-shadow:0 6px 14px #10b9812e;color:#fff}.btn-sm--danger{border-color:#dc262633;color:var(--danger)}.btn-sm--danger:hover{background:var(--danger-soft)}.admin-empty{text-align:center;padding:40px 20px;color:var(--text-faint);font-size:.92rem}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;background:#0f172a66;display:flex;align-items:center;justify-content:center;padding:20px}.modal{width:min(480px,100%);border:1px solid rgba(255,255,255,.6);border-radius:var(--radius-xl);background:#fffffff2;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);box-shadow:0 28px 60px #0f172a26;padding:24px}.modal__title{font-size:1.1rem;font-weight:700;color:var(--text-strong);margin-bottom:16px}.modal__body{display:flex;flex-direction:column;gap:12px}.modal__field{display:flex;flex-direction:column;gap:4px}.modal__label{font-size:.85rem;font-weight:700;color:var(--text-secondary)}.modal__input{height:42px;padding:0 12px;border:1px solid var(--border-strong);border-radius:12px;background:#ffffffb3;font-size:.9rem;color:var(--text-strong);outline:none;transition:border-color .24s ease,box-shadow .24s ease}.modal__input:focus{border-color:var(--primary-500);box-shadow:0 0 0 3px #10b9811f}.modal__footer{display:flex;justify-content:flex-end;gap:10px;margin-top:18px}.btn{height:40px;padding:0 20px;border:none;border-radius:12px;font-size:.88rem;font-weight:700;cursor:pointer;transition:all .2s ease}.btn--primary{background:linear-gradient(135deg,var(--primary-600),var(--primary-500));color:#fff;box-shadow:0 8px 16px #10b98129}.btn--primary:hover{transform:translateY(-1px);box-shadow:0 12px 20px #10b98138}.btn--cancel{background:#94a3b81a;color:var(--text-secondary)}.btn--cancel:hover{background:#94a3b829}@media (max-width: 768px){.article-card{flex-direction:column}.article-card__cover{width:100%;height:140px;order:-1}.article-detail,.admin-layout{grid-template-columns:1fr}.admin-sidebar{display:none}}@media (min-width: 1025px) and (max-height: 900px){.auth-form{gap:10px}.form-stack{gap:4px}.field-label{font-size:.88rem}.field-tip{font-size:.74rem}.helper-text{min-height:16px;font-size:.74rem}.form-note{padding:8px 10px;font-size:.78rem}.submit-primary{min-height:46px}}:root,:host{--w-e-textarea-bg-color: #fff;--w-e-textarea-color: #333;--w-e-textarea-border-color: #ccc;--w-e-textarea-slight-border-color: #e8e8e8;--w-e-textarea-slight-color: #d4d4d4;--w-e-textarea-slight-bg-color: #f5f2f0;--w-e-textarea-selected-border-color: #B4D5FF;--w-e-textarea-handler-bg-color: #4290f7;--w-e-toolbar-color: #595959;--w-e-toolbar-bg-color: #fff;--w-e-toolbar-active-color: #333;--w-e-toolbar-active-bg-color: #f1f1f1;--w-e-toolbar-disabled-color: #999;--w-e-toolbar-border-color: #e8e8e8;--w-e-modal-button-bg-color: #fafafa;--w-e-modal-button-border-color: #d9d9d9}.w-e-text-container *,.w-e-toolbar *{box-sizing:border-box;margin:0;outline:none;padding:0}.w-e-text-container blockquote,.w-e-text-container li,.w-e-text-container p,.w-e-text-container td,.w-e-text-container th,.w-e-toolbar *{line-height:1.5}.w-e-text-container{background-color:var(--w-e-textarea-bg-color);color:var(--w-e-textarea-color);height:100%;position:relative}.w-e-text-container .w-e-scroll{-webkit-overflow-scrolling:touch;height:100%}.w-e-text-container [data-slate-editor]{word-wrap:break-word;border-top:1px solid transparent;min-height:100%;outline:0;padding:0 10px;white-space:pre-wrap}.w-e-text-container [data-slate-editor] p{margin:15px 0}.w-e-text-container [data-slate-editor] h1,.w-e-text-container [data-slate-editor] h2,.w-e-text-container [data-slate-editor] h3,.w-e-text-container [data-slate-editor] h4,.w-e-text-container [data-slate-editor] h5{margin:20px 0}.w-e-text-container [data-slate-editor] img{cursor:default;display:inline!important;max-width:100%;min-height:20px;min-width:20px}.w-e-text-container [data-slate-editor] span{text-indent:0}.w-e-text-container [data-slate-editor] [data-selected=true]{box-shadow:0 0 0 2px var(--w-e-textarea-selected-border-color)}.w-e-text-placeholder{font-style:italic;left:10px;top:17px;width:90%}.w-e-max-length-info,.w-e-text-placeholder{color:var(--w-e-textarea-slight-color);pointer-events:none;position:absolute;-webkit-user-select:none;-moz-user-select:none;user-select:none}.w-e-max-length-info{bottom:.5em;right:1em}.w-e-bar{background-color:var(--w-e-toolbar-bg-color);color:var(--w-e-toolbar-color);font-size:14px;padding:0 5px}.w-e-bar svg{fill:var(--w-e-toolbar-color);height:14px;width:14px}.w-e-bar-show{display:flex}.w-e-bar-hidden{display:none}.w-e-hover-bar{border:1px solid var(--w-e-toolbar-border-color);border-radius:3px;box-shadow:0 2px 5px #0000001f;position:absolute}.w-e-toolbar{flex-wrap:wrap;position:relative}.w-e-bar-divider{background-color:var(--w-e-toolbar-border-color);display:inline-flex;height:40px;margin:0 5px;width:1px}.w-e-bar-item{display:flex;height:40px;padding:4px;position:relative;text-align:center}.w-e-bar-item,.w-e-bar-item button{align-items:center;justify-content:center}.w-e-bar-item button{background:transparent;border:none;color:var(--w-e-toolbar-color);cursor:pointer;display:inline-flex;height:32px;overflow:hidden;padding:0 8px;white-space:nowrap}.w-e-bar-item button:hover{background-color:var(--w-e-toolbar-active-bg-color);color:var(--w-e-toolbar-active-color)}.w-e-bar-item button .title{margin-left:5px}.w-e-bar-item .active{background-color:var(--w-e-toolbar-active-bg-color);color:var(--w-e-toolbar-active-color)}.w-e-bar-item .disabled{color:var(--w-e-toolbar-disabled-color);cursor:not-allowed}.w-e-bar-item .disabled svg{fill:var(--w-e-toolbar-disabled-color)}.w-e-bar-item .disabled:hover{background-color:var(--w-e-toolbar-bg-color);color:var(--w-e-toolbar-disabled-color)}.w-e-bar-item .disabled:hover svg{fill:var(--w-e-toolbar-disabled-color)}.w-e-menu-tooltip-v5:before{background-color:var(--w-e-toolbar-active-color);border-radius:5px;color:var(--w-e-toolbar-bg-color);content:attr(data-tooltip);font-size:.75em;opacity:0;padding:5px 10px;position:absolute;text-align:center;top:40px;transition:opacity .6s;visibility:hidden;white-space:pre;z-index:1}.w-e-menu-tooltip-v5:after{border:5px solid transparent;border-bottom:5px solid var(--w-e-toolbar-active-color);content:"";opacity:0;position:absolute;top:30px;transition:opacity .6s;visibility:hidden}.w-e-menu-tooltip-v5:hover:after,.w-e-menu-tooltip-v5:hover:before{opacity:1;visibility:visible}.w-e-menu-tooltip-v5.tooltip-right:before{left:100%;top:10px}.w-e-menu-tooltip-v5.tooltip-right:after{border-bottom-color:transparent;border-left-color:transparent;border-right-color:var(--w-e-toolbar-active-color);border-top-color:transparent;left:100%;margin-left:-10px;top:16px}.w-e-bar-item-group .w-e-bar-item-menus-container{background-color:var(--w-e-toolbar-bg-color);border:1px solid var(--w-e-toolbar-border-color);border-radius:3px;box-shadow:0 2px 10px #0000001f;display:none;left:0;margin-top:40px;position:absolute;top:0;z-index:1}.w-e-bar-item-group:hover .w-e-bar-item-menus-container{display:block}.w-e-select-list{background-color:var(--w-e-toolbar-bg-color);border:1px solid var(--w-e-toolbar-border-color);border-radius:3px;box-shadow:0 2px 10px #0000001f;left:0;margin-top:40px;max-height:350px;min-width:100px;overflow-y:auto;position:absolute;top:0;z-index:1}.w-e-select-list ul{line-height:1;list-style:none}.w-e-select-list ul .selected{background-color:var(--w-e-toolbar-active-bg-color)}.w-e-select-list ul li{cursor:pointer;padding:7px 0 7px 25px;position:relative;text-align:left;white-space:nowrap}.w-e-select-list ul li:hover{background-color:var(--w-e-toolbar-active-bg-color)}.w-e-select-list ul li svg{left:0;margin-left:5px;margin-top:-7px;position:absolute;top:50%}.w-e-bar-bottom .w-e-select-list{bottom:0;margin-bottom:40px;margin-top:0;top:inherit}.w-e-drop-panel{background-color:var(--w-e-toolbar-bg-color);border:1px solid var(--w-e-toolbar-border-color);border-radius:3px;box-shadow:0 2px 10px #0000001f;margin-top:40px;min-width:200px;padding:10px;position:absolute;top:0;z-index:1}.w-e-bar-bottom .w-e-drop-panel{bottom:0;margin-bottom:40px;margin-top:0;top:inherit}.w-e-modal{background-color:var(--w-e-toolbar-bg-color);border:1px solid var(--w-e-toolbar-border-color);border-radius:3px;box-shadow:0 2px 10px #0000001f;color:var(--w-e-toolbar-color);font-size:14px;min-height:40px;min-width:100px;padding:20px 15px 0;position:absolute;text-align:left;z-index:1}.w-e-modal .btn-close{cursor:pointer;line-height:1;padding:5px;position:absolute;right:8px;top:7px}.w-e-modal .btn-close svg{fill:var(--w-e-toolbar-color);height:10px;width:10px}.w-e-modal .babel-container{display:block;margin-bottom:15px}.w-e-modal .babel-container span{display:block;margin-bottom:10px}.w-e-modal .button-container{margin-bottom:15px}.w-e-modal button{background-color:var(--w-e-modal-button-bg-color);border:1px solid var(--w-e-modal-button-border-color);border-radius:4px;color:var(--w-e-toolbar-color);cursor:pointer;font-weight:400;height:32px;padding:4.5px 15px;text-align:center;touch-action:manipulation;transition:all .3s cubic-bezier(.645,.045,.355,1);-webkit-user-select:none;-moz-user-select:none;user-select:none;white-space:nowrap}.w-e-modal input[type=number],.w-e-modal input[type=text],.w-e-modal textarea{font-feature-settings:"tnum";background-color:var(--w-e-toolbar-bg-color);border:1px solid var(--w-e-modal-button-border-color);border-radius:4px;color:var(--w-e-toolbar-color);font-variant:tabular-nums;padding:4.5px 11px;transition:all .3s;width:100%}.w-e-modal textarea{min-height:60px}body .w-e-modal,body .w-e-modal *{box-sizing:border-box}.w-e-progress-bar{background-color:var(--w-e-textarea-handler-bg-color);height:1px;position:absolute;transition:width .3s;width:0}.w-e-full-screen-container{bottom:0!important;display:flex!important;flex-direction:column!important;height:100%!important;left:0!important;margin:0!important;padding:0!important;position:fixed;right:0!important;top:0!important;width:100%!important}.w-e-full-screen-container [data-w-e-textarea=true]{flex:1!important}.w-e-text-container [data-slate-editor] code{background-color:var(--w-e-textarea-slight-bg-color);border-radius:3px;font-family:monospace;padding:3px}.w-e-panel-content-color{list-style:none;text-align:left;width:230px}.w-e-panel-content-color li{border:1px solid var(--w-e-toolbar-bg-color);border-radius:3px;cursor:pointer;display:inline-block;padding:2px}.w-e-panel-content-color li:hover{border-color:var(--w-e-toolbar-color)}.w-e-panel-content-color li .color-block{border:1px solid var(--w-e-toolbar-border-color);border-radius:3px;height:17px;width:17px}.w-e-panel-content-color .active{border-color:var(--w-e-toolbar-color)}.w-e-panel-content-color .clear{line-height:1.5;margin-bottom:5px;width:100%}.w-e-panel-content-color .clear svg{height:16px;margin-bottom:-4px;width:16px}.w-e-text-container [data-slate-editor] blockquote{background-color:var(--w-e-textarea-slight-bg-color);border-left:8px solid var(--w-e-textarea-selected-border-color);display:block;font-size:100%;line-height:1.5;margin:10px 0;padding:10px}.w-e-panel-content-emotion{font-size:20px;list-style:none;text-align:left;width:300px}.w-e-panel-content-emotion li{border-radius:3px;cursor:pointer;display:inline-block;padding:0 5px}.w-e-panel-content-emotion li:hover{background-color:var(--w-e-textarea-slight-bg-color)}.w-e-textarea-divider{border-radius:3px;margin:20px auto;padding:20px}.w-e-textarea-divider hr{background-color:var(--w-e-textarea-border-color);border:0;display:block;height:1px}.w-e-text-container [data-slate-editor] pre>code{background-color:var(--w-e-textarea-slight-bg-color);border:1px solid var(--w-e-textarea-slight-border-color);border-radius:4px;display:block;font-size:14px;padding:10px;text-indent:0}.w-e-text-container [data-slate-editor] .w-e-image-container{display:inline-block;margin:0 3px}.w-e-text-container [data-slate-editor] .w-e-image-container:hover{box-shadow:0 0 0 2px var(--w-e-textarea-selected-border-color)}.w-e-text-container [data-slate-editor] .w-e-selected-image-container{overflow:hidden;position:relative}.w-e-text-container [data-slate-editor] .w-e-selected-image-container .w-e-image-dragger{background-color:var(--w-e-textarea-handler-bg-color);height:7px;position:absolute;width:7px}.w-e-text-container [data-slate-editor] .w-e-selected-image-container .left-top{cursor:nwse-resize;left:0;top:0}.w-e-text-container [data-slate-editor] .w-e-selected-image-container .right-top{cursor:nesw-resize;right:0;top:0}.w-e-text-container [data-slate-editor] .w-e-selected-image-container .left-bottom{bottom:0;cursor:nesw-resize;left:0}.w-e-text-container [data-slate-editor] .w-e-selected-image-container .right-bottom{bottom:0;cursor:nwse-resize;right:0}.w-e-text-container [data-slate-editor] .w-e-selected-image-container:hover,.w-e-text-container [contenteditable=false] .w-e-image-container:hover{box-shadow:none}.w-e-text-container [data-slate-editor] .table-container{border:1px dashed var(--w-e-textarea-border-color);border-radius:5px;margin-top:10px;overflow-x:auto;padding:10px;width:100%}.w-e-text-container [data-slate-editor] table{border-collapse:collapse}.w-e-text-container [data-slate-editor] table td,.w-e-text-container [data-slate-editor] table th{border:1px solid var(--w-e-textarea-border-color);line-height:1.5;min-width:30px;padding:3px 5px;text-align:left}.w-e-text-container [data-slate-editor] table th{background-color:var(--w-e-textarea-slight-bg-color);font-weight:700;text-align:center}.w-e-panel-content-table{background-color:var(--w-e-toolbar-bg-color)}.w-e-panel-content-table table{border-collapse:collapse}.w-e-panel-content-table td{border:1px solid var(--w-e-toolbar-border-color);cursor:pointer;height:15px;padding:3px 5px;width:20px}.w-e-panel-content-table td.active{background-color:var(--w-e-toolbar-active-bg-color)}.w-e-textarea-video-container{background-image:linear-gradient(45deg,#eee 25%,transparent 0,transparent 75%,#eee 0,#eee),linear-gradient(45deg,#eee 25%,#fff 0,#fff 75%,#eee 0,#eee);background-position:0 0,10px 10px;background-size:20px 20px;border:1px dashed var(--w-e-textarea-border-color);border-radius:5px;margin:10px auto 0;padding:10px 0;text-align:center}.w-e-text-container [data-slate-editor] pre>code{word-wrap:normal;font-family:Consolas,Monaco,Andale Mono,Ubuntu Mono,monospace;-webkit-hyphens:none;hyphens:none;line-height:1.5;margin:.5em 0;overflow:auto;padding:1em;-moz-tab-size:4;-o-tab-size:4;tab-size:4;text-align:left;text-shadow:0 1px #fff;white-space:pre;word-break:normal;word-spacing:normal}.w-e-text-container [data-slate-editor] pre>code .token.cdata,.w-e-text-container [data-slate-editor] pre>code .token.comment,.w-e-text-container [data-slate-editor] pre>code .token.doctype,.w-e-text-container [data-slate-editor] pre>code .token.prolog{color:#708090}.w-e-text-container [data-slate-editor] pre>code .token.punctuation{color:#999}.w-e-text-container [data-slate-editor] pre>code .token.namespace{opacity:.7}.w-e-text-container [data-slate-editor] pre>code .token.boolean,.w-e-text-container [data-slate-editor] pre>code .token.constant,.w-e-text-container [data-slate-editor] pre>code .token.deleted,.w-e-text-container [data-slate-editor] pre>code .token.number,.w-e-text-container [data-slate-editor] pre>code .token.property,.w-e-text-container [data-slate-editor] pre>code .token.symbol,.w-e-text-container [data-slate-editor] pre>code .token.tag{color:#905}.w-e-text-container [data-slate-editor] pre>code .token.attr-name,.w-e-text-container [data-slate-editor] pre>code .token.builtin,.w-e-text-container [data-slate-editor] pre>code .token.char,.w-e-text-container [data-slate-editor] pre>code .token.inserted,.w-e-text-container [data-slate-editor] pre>code .token.selector,.w-e-text-container [data-slate-editor] pre>code .token.string{color:#690}.w-e-text-container [data-slate-editor] pre>code .language-css .token.string,.w-e-text-container [data-slate-editor] pre>code .style .token.string,.w-e-text-container [data-slate-editor] pre>code .token.entity,.w-e-text-container [data-slate-editor] pre>code .token.operator,.w-e-text-container [data-slate-editor] pre>code .token.url{color:#9a6e3a}.w-e-text-container [data-slate-editor] pre>code .token.atrule,.w-e-text-container [data-slate-editor] pre>code .token.attr-value,.w-e-text-container [data-slate-editor] pre>code .token.keyword{color:#07a}.w-e-text-container [data-slate-editor] pre>code .token.class-name,.w-e-text-container [data-slate-editor] pre>code .token.function{color:#dd4a68}.w-e-text-container [data-slate-editor] pre>code .token.important,.w-e-text-container [data-slate-editor] pre>code .token.regex,.w-e-text-container [data-slate-editor] pre>code .token.variable{color:#e90}.w-e-text-container [data-slate-editor] pre>code .token.bold,.w-e-text-container [data-slate-editor] pre>code .token.important{font-weight:700}.w-e-text-container [data-slate-editor] pre>code .token.italic{font-style:italic}.w-e-text-container [data-slate-editor] pre>code .token.entity{cursor:help}
