*{margin:0;padding:0;box-sizing:border-box}:root{--primary: #3b82f6;--primary-hover: #2563eb;--primary-light: #93bbfd;--primary-bg: rgba(59, 130, 246, .08);--bg-primary: #f0f4ff;--bg-body: linear-gradient(135deg, #e0f2fe 0%, #ffffff 100%);--bg-card: rgba(255, 255, 255, .35);--bg-surface: rgba(255, 255, 255, .35);--bg-surface-hover: rgba(255, 255, 255, .48);--bg-modal: rgba(255, 255, 255, .46);--bg-modal-input: rgba(255, 255, 255, .58);--modal-overlay: rgba(15, 23, 42, .22);--bg-input: rgba(241, 245, 249, .7);--bg-input-focus: rgba(255, 255, 255, .85);--text-primary: #1e293b;--text-secondary: #64748b;--text-muted: #94a3b8;--border: #e2e8f0;--border-surface: rgba(255, 255, 255, .5);--border-focus: var(--primary);--success: #22c55e;--danger: #ef4444;--warning: #f59e0b;--shadow-sm: 0 1px 3px rgba(0, 0, 0, .06);--shadow-md: 0 4px 20px rgba(0, 0, 0, .08);--shadow-lg: 0 10px 40px rgba(0, 0, 0, .1);--shadow-card: 0 8px 32px rgba(59, 130, 246, .1);--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 20px;--terminal-bg: #0c0c0c;--terminal-green: #00ff41;--transition: .3s cubic-bezier(.4, 0, .2, 1);--orb-1: rgba(124, 171, 246, .5);--orb-2: rgba(198, 137, 251, .595);--orb-3: rgba(96, 165, 250, .45);--orb-4: rgba(191, 219, 254, .5)}[data-theme=dark]{--primary: #60a5fa;--primary-hover: #93bbfd;--primary-light: #3b82f6;--primary-bg: rgba(96, 165, 250, .1);--bg-primary: #0f172a;--bg-body: linear-gradient(135deg, #0f172a 0%, #1e293b 100%);--bg-card: rgba(15, 23, 42, .6);--bg-surface: rgba(15, 23, 42, .72);--bg-surface-hover: rgba(30, 41, 59, .78);--bg-modal: rgba(15, 23, 42, .86);--bg-modal-input: rgba(30, 41, 59, .82);--modal-overlay: rgba(2, 6, 23, .62);--bg-input: #334155;--bg-input-focus: #3b4a63;--text-primary: #f1f5f9;--text-secondary: #94a3b8;--text-muted: #64748b;--border: #334155;--border-surface: rgba(148, 163, 184, .16);--border-focus: var(--primary);--shadow-sm: 0 1px 3px rgba(0, 0, 0, .2);--shadow-md: 0 4px 20px rgba(0, 0, 0, .3);--shadow-lg: 0 10px 40px rgba(0, 0, 0, .4);--shadow-card: 0 8px 32px rgba(0, 0, 0, .3);--orb-1: rgba(59, 130, 246, .3);--orb-2: rgba(147, 197, 253, .25);--orb-3: rgba(96, 165, 250, .28);--orb-4: rgba(191, 219, 254, .22)}html{overflow-x:hidden!important;width:100%;scrollbar-width:none;-ms-overflow-style:none}html::-webkit-scrollbar{display:none}body{overflow-x:hidden;width:100%;font-family:Inter,PingFang SC,Microsoft YaHei,system-ui,sans-serif;background:var(--bg-body);color:var(--text-primary);min-height:100vh;transition:background var(--transition),color var(--transition);scrollbar-width:none;-ms-overflow-style:none;cursor:url(/cursors/cursor.svg) 12 12,auto}body::-webkit-scrollbar{display:none}#app{min-height:100vh}a{color:var(--primary);text-decoration:none;transition:color var(--transition)}a:hover{color:var(--primary-hover)}button{cursor:pointer;border:none;outline:none;font-family:inherit;transition:all var(--transition)}input{outline:none;border:none;font-family:inherit;transition:all var(--transition)}.bg-orbs{position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:0;overflow:hidden}.orb{position:absolute;border-radius:50%;filter:blur(70px);opacity:1;animation-timing-function:ease-in-out;animation-iteration-count:infinite;animation-direction:alternate}.orb-1{width:420px;height:420px;background:radial-gradient(circle,#63b3edb3,#3b82f659,#3b82f600);top:-140px;left:-140px;animation:orbFloat1 8s infinite alternate}.orb-2{width:380px;height:380px;background:radial-gradient(circle,#a78bfaa6,#8b5cf64d,#8b5cf600);top:30%;right:-120px;animation:orbFloat2 10s infinite alternate}.orb-3{width:340px;height:340px;background:radial-gradient(circle,#60a5fa99,#3b82f640,#3b82f600);bottom:-100px;left:15%;animation:orbFloat3 12s infinite alternate}.orb-4{width:320px;height:320px;background:radial-gradient(circle,#bfdbfe99,#93c5fd40,#93c5fd00);top:15%;left:48%;animation:orbFloat4 9s infinite alternate}@keyframes orbFloat1{0%{transform:translate(0) scale(1)}33%{transform:translate(100px,80px) scale(1.08)}66%{transform:translate(160px,140px) scale(1.12)}to{transform:translate(70px,180px) scale(.95)}}@keyframes orbFloat2{0%{transform:translate(0) scale(1)}33%{transform:translate(-80px,-50px) scale(1.1)}66%{transform:translate(-130px,-70px) scale(1.18)}to{transform:translate(-60px,100px) scale(.88)}}@keyframes orbFloat3{0%{transform:translate(0) scale(1)}33%{transform:translate(60px,-80px) scale(1.05)}66%{transform:translate(110px,-120px) scale(1.08)}to{transform:translate(-40px,-70px) scale(1.12)}}@keyframes orbFloat4{0%{transform:translate(0) scale(1)}33%{transform:translate(-70px,50px) scale(1.08)}66%{transform:translate(-100px,80px) scale(1.14)}to{transform:translate(40px,-90px) scale(.92)}}.page-enter-active,.page-leave-active{transition:opacity .4s ease,transform .4s ease}.page-enter-from{opacity:0;transform:translateY(20px)}.page-leave-to{opacity:0;transform:translateY(-20px)}.loading-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:var(--bg-body);display:flex;align-items:center;justify-content:center;z-index:9999;transition:opacity .5s ease}.loading-overlay.fade-out{opacity:0;pointer-events:none}.card{background:#ffffffa6;border-radius:var(--radius-lg);box-shadow:var(--shadow-card);border:1px solid rgba(255,255,255,.5);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);transition:all var(--transition)}[data-theme=dark] .card{background:#1e293bb3;border:1px solid rgba(255,255,255,.08)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 24px;border-radius:var(--radius-md);font-size:14px;font-weight:600;transition:all var(--transition)}.btn-primary{background:linear-gradient(135deg,#60a5fa,#2563eb);color:#fff;box-shadow:0 4px 14px #3b82f659}.btn-primary:hover:not(:disabled){background:linear-gradient(135deg,#3b82f6,#1e40af);box-shadow:0 6px 20px #3b82f673;transform:translateY(-1px)}.btn-primary:active:not(:disabled){transform:translateY(0)}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.input-field{width:100%;padding:12px 16px;background:var(--bg-input);border:1.5px solid var(--border);border-radius:var(--radius-md);color:var(--text-primary);font-size:14px;transition:all var(--transition)}.input-field:focus{background:var(--bg-input-focus);border-color:var(--border-focus);box-shadow:0 0 0 3px var(--primary-bg)}.input-field::placeholder{color:var(--text-muted)}@media(max-width:768px){.orb{filter:blur(60px)}.orb-1{width:250px;height:250px}.orb-2{width:200px;height:200px}.orb-3{width:180px;height:180px}.orb-4{width:150px;height:150px}}@media(max-width:480px){.orb{filter:blur(40px)}.orb-1{width:180px;height:180px}.orb-2{width:150px;height:150px}.orb-3{width:120px;height:120px}.orb-4{width:100px;height:100px}}[data-theme=dark] input[type=checkbox]{accent-color:#60a5fa;color-scheme:dark}.stat-card,.info-card,.announcement-card,.task-item,.file-item,.user-item,.code-item,.balance-card,.section,.modal-card{backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.route-loading[data-v-01c55944]{width:100%;min-height:260px;padding:24px;background:var(--bg-card);border:1px solid var(--border-surface);border-radius:8px;overflow:hidden}.loading-line[data-v-01c55944],.loading-block[data-v-01c55944]{position:relative;overflow:hidden;background:var(--bg-surface);border:1px solid var(--border-surface)}.loading-line[data-v-01c55944]:after,.loading-block[data-v-01c55944]:after{content:"";position:absolute;inset:0;transform:translate(-100%);background:linear-gradient(90deg,transparent,rgba(148,163,184,.16),transparent);animation:loading-sweep-01c55944 1.2s ease-in-out infinite}.loading-line-title[data-v-01c55944]{width:min(220px,45%);height:22px;margin-bottom:20px;border-radius:6px}.loading-grid[data-v-01c55944]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.loading-block[data-v-01c55944]{min-height:92px;border-radius:8px}.loading-block-wide[data-v-01c55944]{grid-column:1 / -1;min-height:120px}@keyframes loading-sweep-01c55944{to{transform:translate(100%)}}@media(max-width:640px){.route-loading[data-v-01c55944]{min-height:220px;padding:16px}.loading-grid[data-v-01c55944]{grid-template-columns:1fr}.loading-block-wide[data-v-01c55944]{grid-column:auto}}@media(prefers-reduced-motion:reduce){.loading-line[data-v-01c55944]:after,.loading-block[data-v-01c55944]:after{animation:none}}.toast-container[data-v-57806bd9]{position:fixed;bottom:80px;right:24px;z-index:9999;display:flex;flex-direction:column;gap:12px;pointer-events:none}.toast[data-v-57806bd9]{min-width:280px;max-width:400px;padding:16px 20px;background:#fff;border-radius:var(--radius-lg);box-shadow:0 8px 24px #00000026;border-left:4px solid var(--primary);animation:slideIn-57806bd9 .3s ease-out;pointer-events:auto;-webkit-user-select:text;user-select:text;cursor:text}[data-theme=dark] .toast[data-v-57806bd9]{background:#1e293b;box-shadow:0 8px 24px #0006}.toast.success[data-v-57806bd9]{border-left-color:#22c55e}.toast.error[data-v-57806bd9]{border-left-color:#ef4444}.toast.warning[data-v-57806bd9]{border-left-color:#f59e0b}.toast-content[data-v-57806bd9]{display:flex;align-items:center;gap:12px}.toast-message[data-v-57806bd9]{color:var(--text-primary);font-size:14px;line-height:1.5}@keyframes slideIn-57806bd9{0%{transform:translate(400px);opacity:0}to{transform:translate(0);opacity:1}}.dashboard[data-v-ef20b584]{display:flex;min-height:100vh;background-color:#d6e4f7;transition:background-image .3s ease-in}.dashboard.bg-loaded[data-v-ef20b584]{background:url(/mc-bg.png) center bottom / cover no-repeat;background-color:#d6e4f7}.sidebar[data-v-ef20b584]{width:240px;background:#ffffff40;border-right:1px solid rgba(0,0,0,.1);box-shadow:2px 0 12px #00000014;display:flex;flex-direction:column;color:#1f2937;position:fixed;top:0;left:0;height:100vh;overflow-y:auto}[data-theme=dark] .dashboard[data-v-ef20b584]{background-color:#0f172a}[data-theme=dark] .dashboard.bg-loaded[data-v-ef20b584]{background:url(/mc-bg-dark.png) center bottom / cover no-repeat;background-color:#0f172a}[data-theme=dark] .sidebar[data-v-ef20b584]{background:#00000040;border-right:1px solid rgba(255,255,255,.15);box-shadow:2px 0 12px #0003;color:#f1f5f9}[data-theme=dark] .top-bar[data-v-ef20b584]{background:#00000040;border-bottom:1px solid rgba(255,255,255,.15);box-shadow:0 2px 12px #0003}[data-theme=dark] .logo-img[data-v-ef20b584]{filter:invert(1) hue-rotate(180deg) brightness(.7)}.logo-section[data-v-ef20b584]{display:flex;align-items:center;gap:12px;padding:16px 20px;border-bottom:1px solid rgba(0,0,0,.1);height:72px;box-sizing:border-box}.logo-img[data-v-ef20b584]{width:40px;height:40px;border-radius:8px}.logo-text[data-v-ef20b584]{font-size:20px;font-weight:900;color:var(--primary);line-height:1.2}.logo-text span[data-v-ef20b584]{color:var(--text-primary);font-weight:400}.logo-info[data-v-ef20b584]{display:flex;flex-direction:column}.logo-subtitle[data-v-ef20b584]{font-size:11px;color:var(--text-secondary);margin:0;line-height:1}.nav-menu[data-v-ef20b584]{flex:1;padding:20px 12px;display:flex;flex-direction:column;gap:4px}.nav-item[data-v-ef20b584]{display:flex;align-items:center;gap:12px;padding:12px 16px;border-radius:var(--radius-md);color:#4b5563;text-decoration:none;transition:all .3s ease;position:relative;overflow:hidden}[data-theme=dark] .nav-item[data-v-ef20b584]{color:#94a3b8}.nav-item[data-v-ef20b584]:before{content:"";position:absolute;left:0;top:0;width:100%;height:100%;background:var(--primary-bg);transform:scaleX(0);transform-origin:left;transition:transform .3s ease;z-index:-1}.nav-item[data-v-ef20b584]:hover:before{transform:scaleX(1)}.nav-item[data-v-ef20b584]:hover{color:var(--primary);transform:translate(4px)}.nav-item.router-link-active[data-v-ef20b584]{background:var(--primary);color:#fff;transform:translate(4px);box-shadow:0 4px 12px #3b82f64d}.nav-item.router-link-active[data-v-ef20b584]:before{display:none}.nav-item.admin-item[data-v-ef20b584]{margin-top:auto;border-top:1px solid rgba(0,0,0,.1);padding-top:12px;color:#1f2937}[data-theme=dark] .nav-item.admin-item[data-v-ef20b584]{color:#f1f5f9;border-top-color:#ffffff26}.nav-icon[data-v-ef20b584]{width:20px;height:20px;transition:transform .3s ease}.nav-item.router-link-active .nav-icon[data-v-ef20b584]{transform:scale(1.1)}.main-content[data-v-ef20b584]{flex:1;display:flex;flex-direction:column;margin-left:240px;height:100vh;overflow:hidden}.top-bar[data-v-ef20b584]{display:flex;justify-content:space-between;align-items:center;padding:16px 24px;background:#ffffff40;border-bottom:1px solid rgba(255,255,255,.6);box-shadow:0 2px 12px #00000014;height:72px;box-sizing:border-box}[data-theme=dark] .logo-section[data-v-ef20b584]{border-bottom:1px solid rgba(255,255,255,.15)}.top-left[data-v-ef20b584]{display:flex;align-items:center;gap:16px}.btn-menu[data-v-ef20b584]{display:none;padding:8px;background:transparent;color:var(--text-primary);border:none;cursor:pointer}.btn-menu svg[data-v-ef20b584]{width:24px;height:24px}.sidebar-backdrop[data-v-ef20b584]{display:none;position:fixed;inset:0;background:#00000080;z-index:999}.page-title[data-v-ef20b584]{font-size:20px;font-weight:600;color:var(--text-primary)}.top-right[data-v-ef20b584]{display:flex;align-items:center;gap:16px}.user-info[data-v-ef20b584]{display:flex;align-items:center;gap:10px}.user-avatar[data-v-ef20b584]{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:600}.user-avatar[data-v-ef20b584]:not(img){background:var(--primary);color:#fff}.user-badge[data-v-ef20b584]{padding:6px 12px;background:var(--primary-bg);border-radius:var(--radius-sm);color:var(--text-secondary);font-size:14px}.btn-theme[data-v-ef20b584]{padding:8px;background:transparent;color:var(--text-secondary);border:1.5px solid var(--border);border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;transition:all var(--transition)}.btn-theme[data-v-ef20b584]:hover{color:var(--primary);border-color:var(--primary);background:var(--primary-bg)}.theme-icon[data-v-ef20b584]{width:16px;height:16px}.btn-logout[data-v-ef20b584]{display:flex;align-items:center;gap:6px;padding:8px 16px;background:transparent;color:var(--text-secondary);border:1.5px solid var(--border);border-radius:var(--radius-sm);font-size:13px;font-weight:500;transition:all var(--transition)}.btn-logout[data-v-ef20b584]:hover{color:var(--danger);border-color:var(--danger);background:#ef44440d}.logout-icon[data-v-ef20b584]{width:16px;height:16px}.content-area[data-v-ef20b584]{flex:1;overflow-y:auto;scrollbar-width:none;-ms-overflow-style:none}.content-area[data-v-ef20b584]::-webkit-scrollbar{display:none}@media(max-width:768px){.btn-menu[data-v-ef20b584]{display:flex;align-items:center;justify-content:center}.sidebar-backdrop[data-v-ef20b584]{display:block}.sidebar[data-v-ef20b584]{position:fixed;left:0;top:0;bottom:0;z-index:1000;transform:translate(-100%);transition:transform .35s cubic-bezier(.4,0,.2,1);width:220px}.sidebar.mobile-open[data-v-ef20b584]{transform:translate(0);background:#ffffffbf;-webkit-backdrop-filter:blur(20px) saturate(180%);backdrop-filter:blur(20px) saturate(180%)}[data-theme=dark] .sidebar.mobile-open[data-v-ef20b584]{background:#0f172abf}.main-content[data-v-ef20b584]{width:100%;margin-left:0;transition:transform .35s cubic-bezier(.4,0,.2,1)}.main-content.sidebar-open[data-v-ef20b584]{transform:translate(220px)}.top-bar[data-v-ef20b584]{padding:12px 16px;height:auto;min-height:60px}.page-title[data-v-ef20b584]{font-size:18px}.top-right[data-v-ef20b584]{gap:10px}.user-badge[data-v-ef20b584]{display:none}.user-avatar[data-v-ef20b584]{width:28px;height:28px;font-size:13px}.btn-logout span[data-v-ef20b584]{display:none}.btn-logout[data-v-ef20b584]{padding:8px}.logout-icon[data-v-ef20b584]{width:18px;height:18px}}@media(max-width:480px){.top-bar[data-v-ef20b584]{padding:10px 12px}.page-title[data-v-ef20b584]{font-size:16px}.top-right[data-v-ef20b584]{gap:8px}.btn-theme[data-v-ef20b584],.btn-logout[data-v-ef20b584]{padding:6px}}.fade-enter-active[data-v-ef20b584]{transition:opacity .3s ease}.fade-leave-active[data-v-ef20b584]{transition:opacity .15s ease}.fade-enter-from[data-v-ef20b584],.fade-leave-to[data-v-ef20b584]{opacity:0}
