.sidebar[data-v-f2fa0f62]{width:220px;height:100vh;background:#fff;border-right:1px solid #eee;display:flex;flex-direction:column;position:fixed;left:0;top:0;z-index:100;box-shadow:2px 0 12px #0000000a}.sidebar-logo[data-v-f2fa0f62]{display:flex;align-items:center;justify-content:center;padding:20px 18px;border-bottom:1px solid #f0f0f0}.logo-img[data-v-f2fa0f62]{max-width:100%;height:auto;max-height:48px;object-fit:contain}.sidebar-nav[data-v-f2fa0f62]{flex:1;padding:12px 10px;overflow-y:auto;display:flex;flex-direction:column;gap:2px}.nav-divider[data-v-f2fa0f62]{margin:6px 14px;height:1px;background:#eee;border-radius:1px}.nav-item[data-v-f2fa0f62]{display:flex;align-items:center;gap:12px;padding:11px 14px;border-radius:10px;color:#555;text-decoration:none;font-size:14px;font-weight:500;transition:all .2s ease;position:relative}.nav-item[data-v-f2fa0f62]:hover{background:#fef0f0;color:#b22222}.nav-item.active[data-v-f2fa0f62]{background:linear-gradient(135deg,#b22222,#8b1a1a);color:#fff;box-shadow:0 4px 12px #b222224d}.nav-icon[data-v-f2fa0f62]{width:20px;height:20px;flex-shrink:0;display:flex;align-items:center;justify-content:center}.nav-icon svg[data-v-f2fa0f62]{width:19px;height:19px}.nav-label[data-v-f2fa0f62]{flex:1}.nav-indicator[data-v-f2fa0f62]{width:4px;height:4px;border-radius:50%;background:#fff}.sidebar-bottom-nav[data-v-f2fa0f62]{border-top:1px solid #f0f0f0;padding:6px 10px}.sidebar-footer[data-v-f2fa0f62]{padding:14px 18px;border-top:1px solid #f0f0f0}.version[data-v-f2fa0f62]{font-size:12px;color:#bbb}@media(max-width:767px){.sidebar[data-v-f2fa0f62]{transform:translate(-100%);transition:transform .3s cubic-bezier(.4,0,.2,1);box-shadow:4px 0 20px #00000026;z-index:100}.sidebar.mobile-open[data-v-f2fa0f62]{transform:translate(0)}}.header[data-v-ac8cb7b3]{height:60px;display:flex;align-items:center;justify-content:space-between;padding:0 28px;background:#fff;border-bottom:1px solid #eee;position:sticky;top:0;z-index:50}.header-left[data-v-ac8cb7b3]{display:flex;align-items:center;gap:10px}.hamburger-btn[data-v-ac8cb7b3]{width:36px;height:36px;border-radius:8px;border:none;background:transparent;cursor:pointer;display:flex;align-items:center;justify-content:center;color:#666;transition:all .15s}.hamburger-btn[data-v-ac8cb7b3]:hover{background:#f5f5f5;color:#b22222}.hamburger-btn svg[data-v-ac8cb7b3]{width:22px;height:22px}.search-box[data-v-ac8cb7b3]{display:flex;align-items:center;background:#f5f5f5;border-radius:10px;padding:8px 14px;gap:8px;width:320px;transition:all .25s;border:1px solid transparent}.search-box[data-v-ac8cb7b3]:focus-within{background:#fff;border-color:#b22222;box-shadow:0 0 0 3px #b2222214}.search-icon[data-v-ac8cb7b3]{width:18px;height:18px;color:#999;flex-shrink:0}.search-input[data-v-ac8cb7b3]{flex:1;border:none;outline:none;background:transparent;font-size:14px;color:#333}.search-input[data-v-ac8cb7b3]::placeholder{color:#bbb}.header-right[data-v-ac8cb7b3]{display:flex;align-items:center;gap:6px}.header-btn[data-v-ac8cb7b3]{width:40px;height:40px;border-radius:10px;border:none;background:transparent;cursor:pointer;display:flex;align-items:center;justify-content:center;color:#666;transition:all .2s ease;position:relative}.header-btn[data-v-ac8cb7b3]:hover{background:#f5f5f5;color:#b22222}.header-btn svg[data-v-ac8cb7b3]{width:20px;height:20px}.notif-wrapper[data-v-ac8cb7b3]{position:relative}.notif-btn.has-unread[data-v-ac8cb7b3]{color:#b22222}.notif-badge[data-v-ac8cb7b3]{position:absolute;top:4px;right:2px;min-width:18px;height:18px;padding:0 5px;background:#b22222;color:#fff;border-radius:9px;font-size:11px;font-weight:600;display:flex;align-items:center;justify-content:center;border:2px solid #fff;line-height:1}.notif-btn.has-unread svg[data-v-ac8cb7b3]{animation:bell-shake-ac8cb7b3 .5s ease-in-out infinite alternate}@keyframes bell-shake-ac8cb7b3{0%,to{transform:rotate(0)}25%{transform:rotate(8deg)}75%{transform:rotate(-8deg)}}.notif-panel[data-v-ac8cb7b3]{position:absolute;top:calc(100% + 8px);right:0;width:380px;max-height:480px;background:#fff;border-radius:14px;box-shadow:0 8px 36px #0000001f;z-index:100;display:flex;flex-direction:column;overflow:hidden}.notif-panel-header[data-v-ac8cb7b3]{display:flex;justify-content:space-between;align-items:center;padding:16px 18px 12px;border-bottom:1px solid #f0f0f0}.notif-panel-title[data-v-ac8cb7b3]{font-size:16px;font-weight:700;color:#1a1a2e}.mark-all-btn[data-v-ac8cb7b3]{font-size:12px;color:#b22222;background:none;border:none;cursor:pointer}.mark-all-btn[data-v-ac8cb7b3]:hover{text-decoration:underline}.notif-tabs[data-v-ac8cb7b3]{display:flex;padding:0 18px;gap:20px;border-bottom:1px solid #f0f0f0}.notif-tabs button[data-v-ac8cb7b3]{padding:10px 0;border:none;background:none;font-size:13px;color:#999;cursor:pointer;border-bottom:2px solid transparent;transition:all .15s;display:flex;align-items:center;gap:6px}.notif-tabs button.active[data-v-ac8cb7b3]{color:#b22222;border-bottom-color:#b22222;font-weight:600}.tab-badge[data-v-ac8cb7b3]{min-width:18px;height:18px;padding:0 5px;background:#b22222;color:#fff;border-radius:9px;font-size:11px;display:inline-flex;align-items:center;justify-content:center}.notif-list[data-v-ac8cb7b3]{flex:1;overflow-y:auto;padding:4px 0}.notif-empty[data-v-ac8cb7b3]{text-align:center;color:#bbb;padding:40px 0;font-size:13px}.notif-item[data-v-ac8cb7b3]{display:flex;gap:10px;padding:12px 18px;cursor:pointer;transition:background .15s;border-bottom:1px solid #fafafa}.notif-item[data-v-ac8cb7b3]:hover{background:#fafafa}.notif-item.unread[data-v-ac8cb7b3]{background:#fef9f9}.notif-item-dot[data-v-ac8cb7b3]{width:8px;height:8px;background:#b22222;border-radius:50%;margin-top:5px;flex-shrink:0}.notif-item-content[data-v-ac8cb7b3]{flex:1;min-width:0}.notif-item-title[data-v-ac8cb7b3]{font-size:14px;font-weight:600;color:#333;margin-bottom:3px}.notif-item-sub[data-v-ac8cb7b3]{font-size:12px;color:#999;margin-bottom:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.notif-item-meta[data-v-ac8cb7b3]{font-size:11px;color:#bbb;display:flex;gap:10px}.slide-enter-active[data-v-ac8cb7b3],.slide-leave-active[data-v-ac8cb7b3]{transition:all .2s ease}.slide-enter-from[data-v-ac8cb7b3],.slide-leave-to[data-v-ac8cb7b3]{opacity:0;transform:translateY(-6px)}.avatar-wrapper[data-v-ac8cb7b3]{position:relative}.avatar-btn[data-v-ac8cb7b3]{border:none;background:none;cursor:pointer;padding:2px;border-radius:10px;transition:all .2s;margin-left:4px}.avatar-btn[data-v-ac8cb7b3]:hover{box-shadow:0 0 0 3px #b2222226}.avatar[data-v-ac8cb7b3]{width:36px;height:36px;border-radius:10px;background:linear-gradient(135deg,#b22222,#8b1a1a);display:flex;align-items:center;justify-content:center;color:#fff;font-size:15px;font-weight:600;transition:transform .2s}.avatar-btn:hover .avatar[data-v-ac8cb7b3]{transform:scale(1.05)}.dropdown-menu[data-v-ac8cb7b3]{position:absolute;top:calc(100% + 8px);right:0;width:220px;background:#fff;border-radius:12px;box-shadow:0 8px 32px #0000001f;padding:8px;z-index:100}.dropdown-header[data-v-ac8cb7b3]{padding:10px 12px 6px}.dropdown-name[data-v-ac8cb7b3]{font-size:14px;font-weight:600;color:#333;display:block}.dropdown-role[data-v-ac8cb7b3]{font-size:12px;color:#999;margin-top:2px}.dropdown-divider[data-v-ac8cb7b3]{height:1px;background:#f0f0f0;margin:6px 0}.dropdown-item[data-v-ac8cb7b3]{width:100%;display:flex;align-items:center;gap:10px;padding:10px 12px;border:none;background:transparent;border-radius:8px;font-size:14px;color:#555;cursor:pointer;transition:all .15s}.dropdown-item[data-v-ac8cb7b3]:hover{background:#f5f5f5;color:#333}.dropdown-item svg[data-v-ac8cb7b3]{width:18px;height:18px;flex-shrink:0}.logout-item[data-v-ac8cb7b3]{color:#b22222}.logout-item[data-v-ac8cb7b3]:hover{background:#fff1f0}.dropdown-enter-active[data-v-ac8cb7b3]{transition:all .2s ease-out}.dropdown-leave-active[data-v-ac8cb7b3]{transition:all .15s ease-in}.dropdown-enter-from[data-v-ac8cb7b3]{opacity:0;transform:translateY(-8px) scale(.96)}.dropdown-leave-to[data-v-ac8cb7b3]{opacity:0;transform:translateY(-4px) scale(.98)}.modal-overlay[data-v-ac8cb7b3]{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:200}.modal-card[data-v-ac8cb7b3]{background:#fff;border-radius:16px;padding:28px 32px;width:520px;max-width:90vw;box-shadow:0 8px 32px #00000026}.modal-header[data-v-ac8cb7b3]{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:12px}.modal-header h3[data-v-ac8cb7b3]{font-size:18px;color:#1a1a2e;flex:1}.modal-close[data-v-ac8cb7b3]{width:32px;height:32px;border:none;background:transparent;border-radius:8px;cursor:pointer;display:flex;align-items:center;justify-content:center;color:#999;transition:all .15s}.modal-close[data-v-ac8cb7b3]:hover{background:#f5f5f5;color:#333}.modal-close svg[data-v-ac8cb7b3]{width:18px;height:18px}.detail-meta[data-v-ac8cb7b3]{font-size:12px;color:#bbb;margin-bottom:8px;display:flex;gap:12px}.detail-source[data-v-ac8cb7b3]{color:#b22222;font-weight:500}.detail-subtitle[data-v-ac8cb7b3]{font-size:15px;color:#555;margin-bottom:16px;padding-bottom:16px;border-bottom:1px solid #f0f0f0}.detail-content[data-v-ac8cb7b3]{font-size:14px;color:#333;line-height:1.8;white-space:pre-wrap}.detail-actions[data-v-ac8cb7b3]{margin-top:20px;padding-top:16px;border-top:1px solid #f0f0f0}.detail-cta[data-v-ac8cb7b3]{display:inline-flex;align-items:center;gap:6px;padding:10px 18px;background:linear-gradient(135deg,#b22222,#8b1a1a);color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.detail-cta[data-v-ac8cb7b3]:hover{opacity:.92;box-shadow:0 4px 14px #b222224d}.modal-enter-active[data-v-ac8cb7b3],.modal-leave-active[data-v-ac8cb7b3]{transition:all .2s ease}.modal-enter-from[data-v-ac8cb7b3],.modal-leave-to[data-v-ac8cb7b3]{opacity:0}@media(max-width:767px){.header[data-v-ac8cb7b3]{padding:0 12px}.search-box[data-v-ac8cb7b3]{width:180px;padding:6px 10px}.search-input[data-v-ac8cb7b3]{font-size:13px}.modal-card[data-v-ac8cb7b3]{padding:20px}.notif-panel[data-v-ac8cb7b3]{width:320px;max-width:calc(100vw - 20px);right:-10px}}.layout[data-v-16a6152f]{display:flex;min-height:100vh}.layout-main[data-v-16a6152f]{flex:1;margin-left:220px;display:flex;flex-direction:column;min-height:100vh;background:#f7f8fa}.layout-content[data-v-16a6152f]{flex:1;overflow:hidden;display:flex;flex-direction:column}.sidebar-overlay[data-v-16a6152f]{display:none}@media(max-width:767px){.layout-main[data-v-16a6152f]{margin-left:0}.sidebar-overlay[data-v-16a6152f]{display:block;position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;z-index:90}}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;background:#f7f8fa;min-height:100vh;color:#333;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#app{min-height:100vh}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#d0d0d0;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#aaa}.page-scroll{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;padding:24px 28px}@media(max-width:767px){.page-scroll{padding:16px 14px}}@media(max-width:480px){.page-scroll{padding:12px 10px}}.page-enter-active,.page-leave-active{transition:opacity .2s ease}.page-enter-from,.page-leave-to{opacity:0}
