:root{--primary:#e8590c;--primary-light:#ff922b;--primary-dark:#d9480f;--primary-gradient:linear-gradient(135deg, #ff922b 0%, #e8590c 100%);--accent:#fab005;--success:#2f9e44;--danger:#e03131;--warning:#f08c00;--bg-base:#0a0a0f;--bg-surface:#16161e;--bg-card:#1c1c26;--bg-elevated:#25252f;--bg-input:#2a2a35;--border-color:#ffffff14;--border-hover:#ffffff26;--text-primary:#f4f4f5;--text-secondary:#a1a1aa;--text-tertiary:#71717a;--text-inverse:#0a0a0f;--shadow-sm:0 2px 8px #0000004d;--shadow-md:0 4px 20px #0006;--shadow-lg:0 8px 40px #00000080;--shadow-glow:0 0 30px #e8590c4d;--radius-sm:8px;--radius-md:12px;--radius-lg:20px;--radius-xl:28px;--transition:.3s cubic-bezier(.4, 0, .2, 1);--transition-spring:.5s cubic-bezier(.16, 1, .3, 1)}[data-theme=light]{--bg-base:#f5f5f7;--bg-surface:#fff;--bg-card:#fff;--bg-elevated:#f8f9fa;--bg-input:#f1f3f5;--border-color:#00000014;--border-hover:#00000026;--text-primary:#1a1a1f;--text-secondary:#6b7280;--text-tertiary:#9ca3af;--text-inverse:#fff;--shadow-sm:0 2px 8px #0000000f;--shadow-md:0 4px 20px #00000014;--shadow-lg:0 8px 40px #0000001f;--shadow-glow:0 0 30px #e8590c26}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent;margin:0;padding:0}html,body{background:var(--bg-base);color:var(--text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;transition:background var(--transition), color var(--transition);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Hiragino Sans GB,Microsoft YaHei,sans-serif}#app{min-height:100vh}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--border-hover);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--text-tertiary)}.glass{-webkit-backdrop-filter:blur(20px)saturate(180%);border:1px solid var(--border-color);background:#1c1c26b3}[data-theme=light] .glass{background:#ffffffb3}.gradient-text{background:var(--primary-gradient);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);transition:all var(--transition)}.card-hover:hover{border-color:var(--border-hover);box-shadow:var(--shadow-md);transform:translateY(-2px)}.btn{border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition);white-space:nowrap;-webkit-user-select:none;user-select:none;border:none;justify-content:center;align-items:center;gap:8px;padding:12px 24px;font-size:15px;font-weight:600;display:inline-flex}.btn-primary{background:var(--primary-gradient);color:#fff;box-shadow:0 4px 16px #e8590c4d}.btn-primary:hover{transform:translateY(-1px);box-shadow:0 6px 24px #e8590c66}.btn-primary:active{transform:translateY(0)}.btn-ghost{background:var(--bg-input);color:var(--text-primary)}.btn-ghost:hover{background:var(--bg-elevated)}.badge{border-radius:100px;align-items:center;gap:4px;padding:3px 10px;font-size:12px;font-weight:600;display:inline-flex}.badge-success{color:#51cf66;background:#2f9e4426}.badge-danger{color:#ff6b6b;background:#e0313126}.badge-warning{color:#fab005;background:#f08c0026}.badge-info{color:#74c0fc;background:#2f80ed26}.badge-neutral{background:var(--bg-input);color:var(--text-secondary)}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideInRight{0%{opacity:0;transform:translate(30px)}to{opacity:1;transform:translate(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes spin{to{transform:rotate(360deg)}}.animate-fade-in-up{animation:fadeInUp .5s var(--transition-spring) both}.animate-fade-in{animation:.4s both fadeIn}.animate-slide-in{animation:slideInRight .4s var(--transition-spring) both}.animate-pulse{animation:2s ease-in-out infinite pulse}.animate-spin{animation:1s linear infinite spin}.page-enter-active{transition:all .3s var(--transition-spring)}.page-leave-active{transition:all .2s}.page-enter-from{opacity:0;transform:translateY(10px)}.page-leave-to{opacity:0}.mobile-container{background:var(--bg-base);max-width:430px;min-height:100vh;margin:0 auto;position:relative;overflow-x:hidden}.admin-layout{min-height:100vh;display:flex}.admin-sidebar{background:var(--bg-surface);border-right:1px solid var(--border-color);flex-shrink:0;width:240px}.admin-main{background:var(--bg-base);flex:1;overflow-y:auto}.skeleton{background:linear-gradient(90deg, var(--bg-input) 25%, var(--bg-elevated) 50%, var(--bg-input) 75%);border-radius:var(--radius-sm);background-size:200% 100%;animation:1.5s infinite shimmer}.text-gradient{background:var(--primary-gradient);-webkit-text-fill-color:transparent;-webkit-background-clip:text}.no-scrollbar::-webkit-scrollbar{display:none}.no-scrollbar{-ms-overflow-style:none;scrollbar-width:none}.dot{border-radius:50%;width:8px;height:8px;display:inline-block}.dot-success{background:#51cf66}.dot-danger{background:#ff6b6b}.dot-warning{background:#fab005}.dot-neutral{background:var(--text-tertiary)}@media (width<=768px){.admin-page,.dashboard-page,.system-config-page{max-width:100%!important}.page-title{font-size:18px!important}.page-desc{font-size:13px!important}.modal-overlay{padding:12px!important}.modal-content{max-width:100%!important;max-height:88vh!important;padding:18px!important}.form-row{flex-direction:column!important}.table-card{-webkit-overflow-scrolling:touch;overflow-x:auto}.btn{padding:10px 18px;font-size:14px}}@media (width<=380px){.stat-cards,.finance-cards,.overview-grid,.level-cards{grid-template-columns:1fr!important}}
