*{box-sizing:border-box;margin:0;padding:0}html,body{width:100%;margin:0;padding:0;overflow-x:hidden}#app{width:100%;font-family:Helvetica Neue,Helvetica,Arial,sans-serif}#nprogress .bar{background:#2563eb;height:3px}#nprogress .peg{box-shadow:0 0 10px #2563eb,0 0 5px #2563eb}.page-fade-enter-active{transition:opacity .2s,transform .2s}.page-fade-leave-active{transition:opacity .15s}.page-fade-enter-from{opacity:0;transform:translateY(8px)}.page-fade-leave-to{opacity:0}#nprogress{pointer-events:none}#nprogress .bar{z-index:1031;background:#29d;width:100%;height:2px;position:fixed;top:0;left:0}#nprogress .peg{opacity:1;width:100px;height:100%;display:block;position:absolute;right:0;transform:rotate(3deg)translateY(-4px);box-shadow:0 0 10px #29d,0 0 5px #29d}#nprogress .spinner{z-index:1031;display:block;position:fixed;top:15px;right:15px}#nprogress .spinner-icon{box-sizing:border-box;border:2px solid #0000;border-color:#29d #0000 #0000 #29d;border-radius:50%;width:18px;height:18px;animation:.4s linear infinite nprogress-spinner}.nprogress-custom-parent{position:relative;overflow:hidden}.nprogress-custom-parent #nprogress .spinner,.nprogress-custom-parent #nprogress .bar{position:absolute}@-webkit-keyframes nprogress-spinner{0%{-webkit-transform:rotate(0)}to{-webkit-transform:rotate(360deg)}}@keyframes nprogress-spinner{0%{transform:rotate(0)}to{transform:rotate(360deg)}}:root{--bb-primary:#2563eb;--bb-primary-hover:#1d4ed8;--bb-bg-body:#f8fafc;--bb-bg-surface:#fff;--bb-text-main:#1e293b;--bb-text-muted:#64748b;--bb-border-color:#e2e8f0;--bb-radius-sm:8px;--bb-radius-md:12px;--bb-shadow-sm:0 1px 2px 0 #0000000d;--bb-shadow-md:0 4px 6px -1px #0000001a, 0 2px 4px -2px #0000001a}.app-layout{background-color:var(--bb-bg-body);width:100%;min-height:100vh;color:var(--bb-text-main);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.top-navbar{background-color:var(--bb-bg-surface);border-bottom:1px solid var(--bb-border-color);box-shadow:var(--bb-shadow-sm);z-index:1030;height:76px;padding:1rem 0;position:fixed;top:0;left:0;right:0}.brand-logo{color:var(--bb-primary);align-items:center;gap:.5rem;padding-left:1.5rem;font-size:1.25rem;font-weight:700;text-decoration:none;display:flex}.brand-logo:hover{color:var(--bb-primary-hover)}.user-menu{align-items:center;gap:1.5rem;display:flex}.username-display{color:var(--bb-text-main);font-size:.95rem;font-weight:600}.logout-link,.top-nav-link{color:var(--bb-text-muted);cursor:pointer;font-size:.95rem;font-weight:500;text-decoration:none;transition:color .2s}.logout-link:hover{color:#ef4444}.top-nav-link:hover{color:var(--bb-primary)}.admin-link{background:linear-gradient(135deg,#3b82f6 0%,#2563eb 100%);border-radius:6px;padding:6px 12px;font-weight:600;color:#fff!important}.admin-link:hover{background:linear-gradient(135deg,#2563eb 0%,#1d4ed8 100%);color:#fff!important}.content-wrapper{z-index:1;width:100%;max-width:100%;padding-top:76px;position:relative}.main-content{flex-direction:column;width:100%;max-width:1400px;min-height:calc(100vh - 76px);margin:0 auto;padding:2rem 1.5rem 3rem;display:flex}.footer{margin-top:auto;font-size:12px;border-top:1px solid var(--bb-border-color)!important}.footer-nav-link{font-size:12px}.footer-nav-link:hover{color:var(--bb-primary)!important}.nav-text-hide-sm{display:inline}@media (width<=576px){.nav-text-hide-sm{display:none}}.tags-view[data-v-6bb845c7]{background:#fff;border-bottom:1px solid #e2e8f0;align-items:center;gap:8px;padding:12px 16px;display:flex;overflow:hidden}.tags-list[data-v-6bb845c7]{scroll-behavior:smooth;-ms-overflow-style:none;scrollbar-width:none;flex:1;align-items:center;gap:8px;display:flex;overflow-x:auto}.tags-list[data-v-6bb845c7]::-webkit-scrollbar{display:none}.tag-item[data-v-6bb845c7]{cursor:pointer;white-space:nowrap;background:#f1f5f9;border:1px solid #0000;border-radius:8px;align-items:center;gap:8px;padding:8px 16px;transition:all .2s;display:flex}.tag-item[data-v-6bb845c7]:hover{background:#e2e8f0}.tag-item.active[data-v-6bb845c7]{color:#667eea;background:linear-gradient(135deg,#667eea1a 0%,#764ba21a 100%);border-color:#667eea;font-weight:600}.tag-title[data-v-6bb845c7]{align-items:center;gap:6px;font-size:13px;display:flex}.tag-title i[data-v-6bb845c7]{font-size:14px}.tag-close[data-v-6bb845c7]{cursor:pointer;color:#94a3b8;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;width:18px;height:18px;padding:0;transition:all .2s;display:flex}.tag-close[data-v-6bb845c7]:hover{color:#ef4444;background:#0000001a}.tag-item.active .tag-close[data-v-6bb845c7]:hover{background:#ef44441a}.tags-actions[data-v-6bb845c7]{flex-shrink:0;align-items:center;gap:4px;display:flex}.action-btn[data-v-6bb845c7]{cursor:pointer;color:#64748b;background:#fff;border:1px solid #e2e8f0;border-radius:6px;justify-content:center;align-items:center;width:32px;height:32px;padding:0;transition:all .2s;display:flex}.action-btn[data-v-6bb845c7]:hover{color:#667eea;background:#f8fafc;border-color:#667eea}.action-btn i[data-v-6bb845c7]{font-size:16px}.admin-layout[data-v-9881898e]{background:linear-gradient(135deg,#f5f7fa 0%,#e8ecf1 100%);height:100vh;display:flex}.admin-sidebar[data-v-9881898e]{z-index:100;background:#fff;flex-direction:column;width:280px;display:flex;box-shadow:2px 0 12px #0000000a}.sidebar-header[data-v-9881898e]{border-bottom:1px solid #f1f5f9;align-items:center;gap:16px;padding:28px 24px;display:flex}.logo-icon[data-v-9881898e]{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border-radius:14px;justify-content:center;align-items:center;width:48px;height:48px;display:flex;box-shadow:0 4px 12px #667eea4d}.logo-icon i[data-v-9881898e]{color:#fff;font-size:26px}.logo-content h2[data-v-9881898e]{color:#1e293b;margin:0;font-size:18px;font-weight:700}.logo-content p[data-v-9881898e]{color:#94a3b8;margin:4px 0 0;font-size:12px}.sidebar-nav[data-v-9881898e]{flex:1;padding:20px 16px;overflow-y:auto}.nav-section[data-v-9881898e]{margin-bottom:28px}.nav-section-title[data-v-9881898e]{color:#64748b;text-transform:uppercase;letter-spacing:.5px;align-items:center;gap:8px;margin-bottom:8px;padding:8px 12px;font-size:12px;font-weight:600;display:flex}.nav-section-title i[data-v-9881898e]{font-size:14px}.nav-item[data-v-9881898e]{color:#64748b;border-radius:12px;align-items:center;gap:12px;margin-bottom:4px;padding:12px 16px;font-size:14px;font-weight:500;text-decoration:none;transition:all .2s;display:flex}.nav-item[data-v-9881898e]:hover{color:#667eea;background:#f8fafc}.nav-item.router-link-active[data-v-9881898e]{color:#667eea;background:linear-gradient(135deg,#667eea1a 0%,#764ba21a 100%);font-weight:600}.nav-item i[data-v-9881898e]{width:20px;font-size:18px}.sidebar-footer[data-v-9881898e]{border-top:1px solid #f1f5f9;padding:20px}.footer-info[data-v-9881898e]{background:#f8fafc;border-radius:12px;align-items:center;gap:12px;margin-bottom:16px;padding:12px;display:flex}.footer-avatar[data-v-9881898e]{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border-radius:10px;justify-content:center;align-items:center;width:40px;height:40px;display:flex}.footer-avatar i[data-v-9881898e]{color:#fff;font-size:22px}.footer-text[data-v-9881898e]{flex:1}.footer-name[data-v-9881898e]{color:#1e293b;font-size:14px;font-weight:600}.footer-role[data-v-9881898e]{color:#94a3b8;margin-top:2px;font-size:12px}.logout-btn[data-v-9881898e]{color:#dc2626;cursor:pointer;background:#fee2e2;border:none;border-radius:12px;justify-content:center;align-items:center;gap:8px;width:100%;margin-bottom:8px;padding:12px 16px;font-size:14px;font-weight:500;transition:all .2s;display:flex}.logout-btn[data-v-9881898e]:hover{background:#fecaca}.change-pwd-btn[data-v-9881898e]{color:#2563eb;background:#dbeafe;border-radius:12px;justify-content:center;align-items:center;gap:8px;width:100%;margin-bottom:8px;padding:12px 16px;font-size:14px;font-weight:500;text-decoration:none;transition:all .2s;display:flex}.change-pwd-btn[data-v-9881898e]:hover{background:#bfdbfe}.back-btn[data-v-9881898e]{color:#64748b;border:1px solid #e2e8f0;border-radius:12px;justify-content:center;align-items:center;gap:8px;padding:12px 16px;font-size:14px;font-weight:500;text-decoration:none;transition:all .2s;display:flex}.back-btn[data-v-9881898e]:hover{color:#667eea;background:#f8fafc;border-color:#667eea}.admin-main[data-v-9881898e]{flex-direction:column;flex:1;display:flex;overflow:hidden}.main-content[data-v-9881898e]{flex:1;padding:24px;overflow-y:auto}
