:root{--bg-main: #0d0d0d;--bg-card: #1a1a1a;--bg-card-hover: #222222;--bg-input: #1f1f1f;--bg-sidebar: #111111;--bg-topnav: #141414;--border: #2a2a2a;--border-light: #333333;--text: #ffffff;--text-muted: #9ca3af;--text-dim: #6b7280;--green: #a3e635;--green-dark: #65a30d;--green-bg: rgba(163, 230, 53, .1);--red: #ef4444;--red-dark: #dc2626;--red-bg: rgba(239, 68, 68, .1);--orange: #f5a623;--orange-dark: #d97706;--orange-bg: rgba(245, 166, 35, .1);--blue: #3b82f6;--blue-dark: #2563eb;--blue-bg: rgba(59, 130, 246, .1);--purple: #a855f7;--sidebar-width: 56px;--topnav-height: 52px;--radius: 16px;--radius-sm: 10px;--radius-xs: 6px;--transition: .2s ease}[data-theme=dark]{--bg-main: #0d0d0d;--bg-card: #1a1a1a;--bg-card-hover: #222222;--bg-input: #1f1f1f;--bg-sidebar: #111111;--bg-topnav: #141414;--border: #2a2a2a;--border-light: #333333;--text: #ffffff;--text-muted: #9ca3af;--text-dim: #6b7280}[data-theme=light]{--bg-main: #f5f5f5;--bg-card: #ffffff;--bg-card-hover: #f9fafb;--bg-input: #f3f4f6;--bg-sidebar: #ffffff;--bg-topnav: #ffffff;--border: #e5e7eb;--border-light: #d1d5db;--text: #111827;--text-muted: #6b7280;--text-dim: #9ca3af}*{box-sizing:border-box;margin:0;padding:0}html,body{font-family:FiraGO,system-ui,-apple-system,sans-serif;background:var(--bg-main);color:var(--text);margin:0;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#app{width:100%;margin:0;padding:0}a{color:var(--green);text-decoration:none}a:hover{color:var(--green-dark)}button{font-family:inherit;cursor:pointer;border:none;outline:none}input,select,textarea{font-family:inherit;outline:none;background:var(--bg-input);color:var(--text);border:1px solid var(--border);border-radius:var(--radius-xs);padding:8px 12px;font-size:14px;transition:border-color var(--transition)}input:focus,select:focus,textarea:focus{border-color:var(--green)}:focus-visible{outline:2px solid var(--green);outline-offset:2px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-between{justify-content:space-between}.gap-1{gap:4px}.gap-2{gap:8px}.gap-3{gap:12px}.gap-4{gap:16px}.card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:20px}.card:hover{border-color:var(--border-light)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:8px 16px;border-radius:var(--radius-xs);font-size:14px;font-weight:500;transition:all var(--transition)}.btn-primary{background:var(--green);color:#000}.btn-primary:hover{background:var(--green-dark)}.btn-secondary{background:var(--bg-card);color:var(--text);border:1px solid var(--border)}.btn-secondary:hover{border-color:var(--green)}.btn-danger{background:var(--red-bg);color:var(--red);border:1px solid transparent}.btn-danger:hover{border-color:var(--red)}.text-muted{color:var(--text-muted)}.text-green{color:var(--green)}.text-red{color:var(--red)}.text-sm{font-size:13px}.text-xs{font-size:11px}.font-medium{font-weight:500}.font-bold{font-weight:700}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--text-dim)}.notification-panel[data-v-966cb34b]{position:absolute;top:calc(100% + 8px);right:0;width:360px;max-height:480px;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:0 8px 24px #00000040;display:flex;flex-direction:column;z-index:200;overflow:hidden}.panel-header[data-v-966cb34b]{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;border-bottom:1px solid var(--border)}.panel-title[data-v-966cb34b]{font-size:14px;font-weight:600;color:var(--text);margin:0}.mark-all-btn[data-v-966cb34b]{background:none;border:none;color:var(--green);font-size:12px;font-weight:500;cursor:pointer;padding:2px 6px;border-radius:var(--radius-xs);transition:background var(--transition)}.mark-all-btn[data-v-966cb34b]:hover{background:var(--green-bg)}.panel-body[data-v-966cb34b]{overflow-y:auto;flex:1}.panel-empty[data-v-966cb34b]{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 20px;gap:8px;color:var(--text-muted);font-size:13px}.notification-item[data-v-966cb34b]{display:flex;align-items:flex-start;gap:10px;padding:12px 16px;cursor:pointer;transition:background var(--transition);border-bottom:1px solid var(--border)}.notification-item[data-v-966cb34b]:last-child{border-bottom:none}.notification-item[data-v-966cb34b]:hover{background:var(--bg-card-hover)}.notification-item.unread[data-v-966cb34b]{background:var(--green-bg)}.notification-item.unread[data-v-966cb34b]:hover{background:var(--bg-card-hover)}.notification-dot[data-v-966cb34b]{width:8px;height:8px;min-width:8px;border-radius:50%;background:var(--green);margin-top:5px}.notification-content[data-v-966cb34b]{flex:1;min-width:0}.notification-title[data-v-966cb34b]{font-size:13px;font-weight:600;color:var(--text);line-height:1.4}.notification-message[data-v-966cb34b]{font-size:12px;color:var(--text-muted);line-height:1.4;margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.notification-time[data-v-966cb34b]{font-size:11px;color:var(--text-muted);margin-top:4px}.spinner[data-v-966cb34b]{width:24px;height:24px;border:2px solid var(--border);border-top-color:var(--green);border-radius:50%;animation:spin-966cb34b .8s linear infinite}@keyframes spin-966cb34b{to{transform:rotate(360deg)}}.panel-enter-active[data-v-966cb34b],.panel-leave-active[data-v-966cb34b]{transition:opacity .15s ease,transform .15s ease}.panel-enter-from[data-v-966cb34b],.panel-leave-to[data-v-966cb34b]{opacity:0;transform:translateY(-8px)}@media(max-width:480px){.notification-panel[data-v-966cb34b]{width:calc(100vw - 32px);right:-60px}}.notification-bell[data-v-faaa4626]{position:relative}.bell-btn[data-v-faaa4626]{position:relative;background:none;border:none;color:var(--text-muted);padding:6px;border-radius:var(--radius-xs);cursor:pointer;transition:color var(--transition);display:flex;align-items:center;justify-content:center}.bell-btn[data-v-faaa4626]:hover{color:var(--text)}.badge[data-v-faaa4626]{position:absolute;top:0;right:0;min-width:16px;height:16px;padding:0 4px;background:var(--red);color:#fff;font-size:10px;font-weight:700;line-height:16px;text-align:center;border-radius:8px;transform:translate(4px,-4px);pointer-events:none}.topnav[data-v-3e8f518e]{position:fixed;top:0;left:0;right:0;height:var(--topnav-height);background:var(--bg-topnav);border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;padding:0 16px;z-index:100}.topnav-left[data-v-3e8f518e],.topnav-right[data-v-3e8f518e]{display:flex;align-items:center;gap:12px}.logo[data-v-3e8f518e]{display:flex;align-items:center;text-decoration:none}.logo-text[data-v-3e8f518e]{font-size:18px;font-weight:700;color:var(--green)}.nav-icon[data-v-3e8f518e]{color:var(--text-muted);padding:6px;border-radius:var(--radius-xs);transition:color var(--transition)}.nav-icon[data-v-3e8f518e]:hover{color:var(--text)}.user-avatar[data-v-3e8f518e]{width:32px;height:32px;border-radius:50%;overflow:hidden;display:flex;align-items:center;justify-content:center}.user-avatar img[data-v-3e8f518e]{width:100%;height:100%;object-fit:cover}.avatar-placeholder[data-v-3e8f518e]{width:32px;height:32px;background:var(--green-bg);color:var(--green);border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:14px}.sidebar[data-v-657a48c1]{position:fixed;top:var(--topnav-height);left:0;bottom:0;width:var(--sidebar-width);background:var(--bg-sidebar);border-right:1px solid var(--border);z-index:90;overflow-y:auto;overflow-x:visible}@media(max-width:768px){.sidebar[data-v-657a48c1]{display:none}}.sidebar-nav[data-v-657a48c1]{display:flex;flex-direction:column;align-items:center;padding:8px 0;gap:2px}.sidebar-section[data-v-657a48c1]{position:relative;width:100%;display:flex;flex-direction:column;align-items:center}.sidebar-item[data-v-657a48c1]{width:44px;height:44px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;border-radius:var(--radius-xs);color:var(--text-muted);background:none;border:none;cursor:pointer;transition:all var(--transition);position:relative}.sidebar-item[data-v-657a48c1]:hover{background:var(--bg-card);color:var(--text)}.sidebar-item.active[data-v-657a48c1]{background:var(--green-bg);color:var(--green)}.sidebar-svg[data-v-657a48c1]{width:18px;height:18px;flex-shrink:0}.sidebar-label[data-v-657a48c1]{font-size:8px;font-weight:600;letter-spacing:.2px;text-transform:uppercase;line-height:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:42px;text-align:center}.flyout-panel[data-v-657a48c1]{position:absolute;left:100%;top:0;width:160px;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:0 4px 16px #0000004d;padding:6px 0;z-index:95;margin-left:4px}.flyout-header[data-v-657a48c1]{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:var(--text-dim);padding:6px 14px 4px}.flyout-item[data-v-657a48c1]{display:block;padding:7px 14px;font-size:13px;font-weight:500;color:var(--text-muted);text-decoration:none;transition:all var(--transition)}.flyout-item[data-v-657a48c1]:hover{color:var(--text);background:var(--bg-card-hover)}.flyout-item.active[data-v-657a48c1]{color:var(--green);background:var(--green-bg)}.flyout-enter-active[data-v-657a48c1],.flyout-leave-active[data-v-657a48c1]{transition:opacity .15s ease,transform .15s ease}.flyout-enter-from[data-v-657a48c1],.flyout-leave-to[data-v-657a48c1]{opacity:0;transform:translate(-4px)}.mobile-nav[data-v-1bea8fdd]{display:none;position:fixed;bottom:0;left:0;right:0;height:56px;background:var(--bg-topnav);border-top:1px solid var(--border);z-index:100}@media(max-width:768px){.mobile-nav[data-v-1bea8fdd]{display:flex;align-items:center;justify-content:space-around}}.mobile-tab[data-v-1bea8fdd]{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:6px 12px;color:var(--text-muted);text-decoration:none;font-size:12px;transition:color var(--transition)}.mobile-tab.active[data-v-1bea8fdd]{color:var(--green)}.mobile-tab-label[data-v-1bea8fdd]{font-size:11px;margin-top:2px}.toast-container[data-v-ccd45c00]{position:fixed;bottom:20px;right:20px;z-index:2000;display:flex;flex-direction:column;gap:8px;pointer-events:none;max-width:360px}.toast-item[data-v-ccd45c00]{display:flex;align-items:center;gap:10px;padding:10px 16px;border-radius:var(--radius-sm);font-size:13px;font-weight:500;cursor:pointer;pointer-events:auto;box-shadow:0 4px 12px #0000004d;border:1px solid}.toast--success[data-v-ccd45c00]{background:var(--green-bg);color:var(--green);border-color:var(--green)}.toast--error[data-v-ccd45c00]{background:#ef44441f;color:var(--red);border-color:var(--red)}.toast--warning[data-v-ccd45c00]{background:#e6a8171f;color:#e6a817;border-color:#e6a817}.toast--info[data-v-ccd45c00]{background:#3b82f61f;color:#3b82f6;border-color:#3b82f6}.toast-icon[data-v-ccd45c00]{display:flex;flex-shrink:0}.toast-message[data-v-ccd45c00]{line-height:1.4}.toast-enter-active[data-v-ccd45c00]{transition:all .3s ease}.toast-leave-active[data-v-ccd45c00]{transition:all .25s ease}.toast-enter-from[data-v-ccd45c00],.toast-leave-to[data-v-ccd45c00]{opacity:0;transform:translate(40px)}.toast-move[data-v-ccd45c00]{transition:transform .3s ease}@media(max-width:480px){.toast-container[data-v-ccd45c00]{bottom:80px;right:12px;left:12px;max-width:none}}.overlay-backdrop[data-v-9674d22b]{position:fixed;inset:0;z-index:9999;background:#000000b3;display:flex;align-items:center;justify-content:center;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.overlay-content[data-v-9674d22b]{background:var(--bg-card, #1a1a1a);border:1px solid var(--border, #333);border-radius:var(--radius-sm, 8px);padding:24px;min-width:340px;max-width:450px}.overlay-header[data-v-9674d22b]{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.overlay-title[data-v-9674d22b]{font-size:16px;font-weight:600;color:var(--text, #fff);margin:0}.overlay-close[data-v-9674d22b]{background:none;border:none;color:var(--text-muted, #888);font-size:22px;cursor:pointer;padding:0 4px;line-height:1}.overlay-close[data-v-9674d22b]:hover{color:var(--text, #fff)}.shortcuts-grid[data-v-9674d22b]{display:flex;flex-direction:column;gap:10px}.shortcut-item[data-v-9674d22b]{display:flex;align-items:center;gap:14px}.key-badge[data-v-9674d22b]{display:inline-flex;align-items:center;justify-content:center;min-width:32px;height:28px;padding:0 8px;background:var(--bg, #0a0a0a);border:1px solid var(--border, #333);border-radius:5px;color:var(--text, #fff);font-size:12px;font-weight:600;font-family:inherit;box-shadow:0 1px 2px #0000004d,inset 0 1px #ffffff0d}.key-label[data-v-9674d22b]{font-size:13px;color:var(--text-muted, #888)}.maintenance-banner[data-v-633e3f1c]{position:fixed;top:0;left:0;right:0;z-index:1000;display:flex;align-items:center;justify-content:center;gap:10px;padding:10px 20px;background:linear-gradient(135deg,#f97316,#ea580c);color:#fff;font-size:13px;font-weight:500}.maintenance-icon[data-v-633e3f1c]{font-size:16px}.maintenance-msg[data-v-633e3f1c]{flex:1;text-align:center}.maintenance-eta[data-v-633e3f1c]{font-size:11px;opacity:.85}.rate-limit-bar[data-v-e2a9f07e]{position:fixed;bottom:80px;left:50%;transform:translate(-50%);z-index:500;display:flex;align-items:center;gap:10px;padding:10px 20px;background:var(--bg-card);border:1px solid #f97316;border-radius:var(--radius);box-shadow:0 4px 20px #0000004d;font-size:13px;color:var(--text);min-width:320px}.rl-icon[data-v-e2a9f07e]{font-size:16px;color:#f97316}.rl-msg[data-v-e2a9f07e]{flex:1}.rl-progress[data-v-e2a9f07e]{width:60px;height:4px;background:var(--border);border-radius:2px;overflow:hidden}.rl-fill[data-v-e2a9f07e]{height:100%;background:#f97316;transition:width 1s linear}.slide-enter-active[data-v-e2a9f07e],.slide-leave-active[data-v-e2a9f07e]{transition:all .3s ease}.slide-enter-from[data-v-e2a9f07e],.slide-leave-to[data-v-e2a9f07e]{opacity:0;transform:translate(-50%) translateY(20px)}.offline-banner[data-v-a7308821]{position:fixed;bottom:72px;left:50%;transform:translate(-50%);background:var(--yellow, #f59e0b);color:#000;padding:8px 20px;border-radius:8px;font-size:13px;font-weight:600;display:flex;align-items:center;gap:8px;z-index:9999;box-shadow:0 4px 20px #0000004d}.offline-icon[data-v-a7308821]{font-size:16px}@media(min-width:769px){.offline-banner[data-v-a7308821]{bottom:20px}}.offline-slide-enter-active[data-v-a7308821],.offline-slide-leave-active[data-v-a7308821]{transition:all .3s ease}.offline-slide-enter-from[data-v-a7308821],.offline-slide-leave-to[data-v-a7308821]{opacity:0;transform:translate(-50%) translateY(20px)}.update-prompt[data-v-fe6de900]{position:fixed;bottom:20px;right:20px;background:var(--surface, #1a1b26);border:1px solid var(--green, #10b981);color:var(--text-primary, #e5e5e5);padding:12px 20px;border-radius:10px;font-size:13px;display:flex;align-items:center;gap:12px;z-index:9999;box-shadow:0 4px 20px #0006}.update-btn[data-v-fe6de900]{background:var(--green, #10b981);color:#fff;border:none;padding:6px 14px;border-radius:6px;font-size:12px;font-weight:600;cursor:pointer;transition:opacity .15s}.update-btn[data-v-fe6de900]:hover{opacity:.85}@media(max-width:768px){.update-prompt[data-v-fe6de900]{bottom:80px;right:16px;left:16px;justify-content:space-between}}.update-slide-enter-active[data-v-fe6de900],.update-slide-leave-active[data-v-fe6de900]{transition:all .3s ease}.update-slide-enter-from[data-v-fe6de900],.update-slide-leave-to[data-v-fe6de900]{opacity:0;transform:translateY(20px)}.app-root[data-v-08c8e8ca]{min-height:100vh}.dashboard-layout[data-v-08c8e8ca]{display:flex;padding-top:var(--topnav-height)}.dashboard-content[data-v-08c8e8ca]{flex:1;margin-left:var(--sidebar-width);padding:20px;min-height:calc(100vh - var(--topnav-height))}@media(max-width:768px){.dashboard-content[data-v-08c8e8ca]{margin-left:0;padding:16px 16px 72px}}.loading-screen[data-v-08c8e8ca]{display:flex;align-items:center;justify-content:center;height:100vh}.loading-spinner[data-v-08c8e8ca]{width:40px;height:40px;border:3px solid var(--border);border-top-color:var(--green);border-radius:50%;animation:spin-08c8e8ca .8s linear infinite}@keyframes spin-08c8e8ca{to{transform:rotate(360deg)}}
