*,*:before,*:after{box-sizing:border-box}body{margin:0;padding:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;transition:background-color .3s ease,color .3s ease}#root{min-height:100vh}:root{--mx-primary: #4dabf7;--mx-bg-base: #0d1b2a;--mx-bg-container: #1b2838;--mx-bg-elevated: #243447;--mx-border: #2d4a5e;--mx-text: #e0e8f0;--mx-text-secondary: #8899aa;--mx-success: #51cf66;--mx-warning: #ffa94d;--mx-error: #ff6b6b;--mx-theme-dark: 1}.ant-layout,.ant-layout-sider,.ant-menu,.ant-card,.ant-table,.ant-btn,.ant-input,.ant-select-selector,.ant-pagination-item,.ant-tag,.ant-tabs-tab,.ant-modal-content,.ant-drawer-content,.ant-dropdown-menu{transition:background-color .3s ease,border-color .3s ease,color .3s ease,box-shadow .3s ease!important}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--mx-border);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--mx-text-secondary)}.ant-pro-layout .ant-pro-sider-logo{border-bottom:1px solid var(--mx-border)!important}.ant-pro-layout .ant-pro-sider{border-right:1px solid var(--mx-border)!important}.ant-card{border-radius:8px!important;overflow:hidden}.ant-card-bordered{border-color:var(--mx-border)!important}.ant-card-hoverable:hover{box-shadow:0 4px 16px #00000026!important;transform:translateY(-2px);transition:all .3s ease}.ant-table-thead>tr>th{font-weight:600!important;text-transform:uppercase;font-size:12px!important;letter-spacing:.5px}.ant-table-tbody>tr:hover>td{background-color:var(--mx-bg-elevated)!important}.ant-btn-primary{box-shadow:0 2px 8px rgba(var(--mx-primary-rgb, 77, 171, 247),.3)}.ant-modal-content{border-radius:12px!important;overflow:hidden}.login-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden}.login-backdrop:before{content:"";position:absolute;width:600px;height:600px;border-radius:50%;filter:blur(120px);opacity:.3;animation:loginOrbFloat 8s ease-in-out infinite}.login-backdrop:before{background:var(--mx-primary);top:-200px;right:-100px}.login-backdrop:after{content:"";position:absolute;width:400px;height:400px;border-radius:50%;filter:blur(100px);opacity:.25;background:var(--mx-success);bottom:-150px;left:-80px;animation:loginOrbFloat 10s ease-in-out infinite reverse}@keyframes loginOrbFloat{0%,to{transform:translate(0) scale(1)}33%{transform:translate(30px,-30px) scale(1.05)}66%{transform:translate(-20px,20px) scale(.95)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.animate-fade-in-up{animation:fadeInUp .6s ease-out forwards}@keyframes pulseDot{0%,to{box-shadow:0 0 #ff4d4f66}50%{box-shadow:0 0 0 6px #ff4d4f00}}.notification-dot{animation:pulseDot 2s infinite}
