.sidebar{width:calc(200px * var(--font-scale));min-width:calc(200px * var(--font-scale));background:var(--brand-gradient);height:100vh;box-shadow:0 4px 14px var(--brand-glow);color:#ffffffd9;z-index:10;flex-direction:column;flex-shrink:0;display:flex;position:relative;overflow:hidden}.sidebar-logo{height:var(--header-height);border-bottom:1px solid #ffffff1f;align-items:center;gap:10px;padding:16px 20px;display:flex}.sidebar-logo-img{object-fit:cover;border-radius:50%;flex-shrink:0;width:40px;height:40px;box-shadow:0 2px 8px #0003}.sidebar-brand{flex-direction:column;gap:2px;display:flex;overflow:hidden}.sidebar-brand-name{font-size:calc(15px * var(--font-scale));white-space:nowrap;text-overflow:ellipsis;color:#fff;font-weight:600;overflow:hidden}.sidebar-brand-en{font-size:calc(10px * var(--font-scale));color:#ffffffb3;letter-spacing:1px;white-space:nowrap}.sidebar-nav{padding:calc(12px * var(--font-scale)) 0;gap:calc(4px * var(--font-scale));flex-direction:column;flex:1;display:flex}.sidebar-item{align-items:center;gap:calc(12px * var(--font-scale));padding:calc(12px * var(--font-scale)) calc(18px * var(--font-scale));margin:0 calc(12px * var(--font-scale));cursor:pointer;color:#ffffffd9;font-size:calc(14px * var(--font-scale));border-radius:10px;transition:all .2s;display:flex}.sidebar-item:hover{color:#fff;background:#ffffff26}.sidebar-item.active{color:#fff;background:#ffffff38;font-weight:500;box-shadow:inset 0 0 0 1px #ffffff59,0 4px 12px #0000001f}.sidebar-item.active:hover{color:#fff;background:#ffffff4d}.sidebar-icon{font-size:calc(18px * var(--font-scale));width:calc(20px * var(--font-scale));flex-shrink:0;justify-content:center;align-items:center;display:flex}.sidebar-label{font-size:calc(14px * var(--font-scale));white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.sidebar{transition:width .25s}.sidebar.collapsed{width:calc(72px * var(--font-scale));min-width:calc(72px * var(--font-scale))}.sidebar.collapsed .sidebar-logo{padding:calc(16px * var(--font-scale));justify-content:center}.sidebar.collapsed .sidebar-brand{display:none}.sidebar.collapsed .sidebar-item{padding:calc(12px * var(--font-scale));margin:0 calc(8px * var(--font-scale));justify-content:center;gap:0}.sidebar.collapsed .sidebar-label{display:none}.sidebar.collapsed .sidebar-icon{width:auto}.sidebar-footer{padding:calc(12px * var(--font-scale));border-top:1px solid #ffffff1f;flex-shrink:0}.sidebar-toggle{justify-content:center;align-items:center;gap:calc(10px * var(--font-scale));width:100%;padding:calc(10px * var(--font-scale));color:#fff;font-size:calc(15px * var(--font-scale));cursor:pointer;background:#ffffff1a;border:none;border-radius:10px;transition:background .2s;display:flex}.sidebar-toggle:hover{background:#fff3}.sidebar-toggle-label{white-space:nowrap}:root{--brand-blue:#4a9eff;--brand-purple:#8b5cf6;--brand-gradient:linear-gradient(135deg, #4a9eff 0%, #8b5cf6 100%);--brand-gradient-hover:linear-gradient(135deg, #5cadff 0%, #9a6cff 100%);--brand-gradient-active:linear-gradient(135deg, #3d8eef 0%, #7b4df6 100%);--brand-glow:#6366f152;--secondary-gradient:linear-gradient(135deg, #22d3ee 0%, #0ea5e9 100%);--secondary-gradient-hover:linear-gradient(135deg, #38dcef 0%, #1bb4f0 100%);--danger-gradient:linear-gradient(135deg, #ff8a7a 0%, #ff5a4d 100%);--danger-gradient-hover:linear-gradient(135deg, #ff9a8a 0%, #ff6b5d 100%);--accent-success:#52c41a;--bg-primary:#f5f9ff;--bg-card:#fff;--bg-card-hover:#fbfcfe;--border-color:#e8eef6;--border-color-soft:#1128500f;--header-height:calc(72px * var(--font-scale));--font-scale:1.5;--text-primary:#1f2733;--text-secondary:#595959;--text-muted:#a3adba;--accent-blue:#4a9eff;--accent-purple:#8b5cf6;--accent-cyan:#22d3ee;--accent-orange:#faad14;--accent-pink:#f472b6;--accent-green:#52c41a;--accent-red:#ff4d4f;--accent-yellow:#facc15;--card-radius:14px;--card-shadow:0 1px 2px #1128500a, 0 6px 18px #1128500d;--card-shadow-hover:0 4px 10px #1128500f, 0 14px 32px #11285014;--shadow-sm:0 1px 2px 0 #1128500d;--shadow-md:0 4px 12px 0 #11285014;--shadow-lg:0 8px 24px 0 #1128501f}*{box-sizing:border-box;margin:0;padding:0}html,body{width:100%;height:100%;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-size:calc(16px * var(--font-scale));color:var(--text-primary);background-color:var(--bg-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#root{width:100%;height:100%}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:#6e96c873 padding-box padding-box;border:2px solid #0000;border-radius:6px}::-webkit-scrollbar-thumb:hover{background:#6e96c8a6 padding-box padding-box}::-webkit-scrollbar-track{background:#6e96c814;border-radius:6px}*{scrollbar-width:thin;scrollbar-color:#6e96c873 #6e96c814}::selection{background:#4a9eff2e}@keyframes pageEnter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.page-container{animation:.3s ease-out pageEnter}.ant-btn-primary:not(:disabled):not(.ant-btn-background-ghost){box-shadow:0 2px 8px var(--brand-glow);background:var(--brand-gradient)!important;border:none!important}.ant-btn-primary:not(:disabled):not(.ant-btn-background-ghost):hover{box-shadow:0 4px 14px var(--brand-glow);background:var(--brand-gradient-hover)!important}.ant-btn-primary:not(:disabled):not(.ant-btn-background-ghost):active{background:var(--brand-gradient-active)!important}.pos-btn-secondary:not(:disabled){box-shadow:0 2px 8px #0ea5e938;background:var(--secondary-gradient)!important;color:#fff!important;border:none!important}.pos-btn-secondary:not(:disabled):hover{background:var(--secondary-gradient-hover)!important;color:#fff!important}.pos-btn-danger:not(:disabled){box-shadow:0 2px 8px #ff5a4d3d;background:var(--danger-gradient)!important;color:#fff!important;border:none!important}.pos-btn-danger:not(:disabled):hover{background:var(--danger-gradient-hover)!important;color:#fff!important}.ant-btn-default:not(:disabled){border-color:var(--border-color);color:var(--text-secondary)}.ant-btn-default:not(:disabled):hover{border-color:var(--brand-blue);color:var(--brand-blue);background:#4a9eff0f}
