:root{--color-primary: #105968;--color-primary-dark: #0d4753;--color-primary-light: rgba(16, 89, 104, .1);--color-disabled-bg: #cad2d4;--color-disabled-text: #636565;--color-text-primary: #2d3436;--color-text-secondary: #636e72;--color-bg-primary: #ffffff;--color-bg-secondary: #f4f6f8;--color-border: #dfe6e9;--color-error: #e74c3c;--color-success: #27ae60;--color-warning: #f39c12;--shadow-sm: 0 2px 4px rgba(0, 0, 0, .08);--shadow-md: 0 4px 12px rgba(0, 0, 0, .1);--shadow-lg: 0 8px 24px rgba(0, 0, 0, .12);--gradient-primary: linear-gradient(135deg, #105968 0%, #0d4753 100%);--gradient-card: linear-gradient(135deg, #ffffff 0%, #f8f9fa 100%)}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;background:linear-gradient(135deg,#f0f4f8,#e8edf2,#f0f4f8);background-size:200% 200%;background-attachment:fixed;color:var(--color-text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1.6;animation:subtleGradient 20s ease infinite}@keyframes subtleGradient{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}#root{min-height:100vh}.ant-card{border-radius:12px!important;box-shadow:var(--shadow-sm)!important;transition:all .3s ease!important}.ant-card:hover{box-shadow:var(--shadow-md)!important;transform:translateY(-2px)}.ant-btn-primary{box-shadow:0 4px 12px #1059684d!important;transition:all .3s ease!important;color:#fff!important}.ant-btn-primary:hover{box-shadow:0 6px 16px #10596866!important;transform:translateY(-1px);color:#fff!important}.ant-btn-primary:focus,.ant-btn-primary:active{color:#fff!important}.ant-btn[style*="background: linear-gradient"],.ant-btn[style*="background:#105968"],.ant-btn[style*="background: #105968"],.ant-btn[style*="background:linear-gradient"],.ant-btn[style*="backgroundColor: #105968"],.ant-btn[style*="backgroundColor:#105968"],.ant-btn[style*="background: linear-gradient"]:hover,.ant-btn[style*="background:#105968"]:hover,.ant-btn[style*="background: #105968"]:hover{color:#fff!important}.ant-table{border-radius:8px;overflow:hidden}.ant-table-thead>tr>th{background:var(--color-primary-light)!important;font-weight:600!important;color:var(--color-primary)!important}.ant-table-tbody>tr{transition:all .2s ease}.ant-table-tbody>tr:hover{background-color:#1059680a!important}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes slideIn{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.fade-in{animation:fadeIn .4s ease-out}.slide-in{animation:slideIn .4s ease-out}.scale-in{animation:scaleIn .3s ease-out}.ant-btn{transition:all .2s cubic-bezier(.4,0,.2,1)!important}.ant-btn:hover{transform:translateY(-1px)}.ant-btn:active{transform:translateY(0)}.ant-input{transition:all .2s cubic-bezier(.4,0,.2,1)!important}html{scroll-behavior:smooth}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#00000026;border-radius:4px;transition:background .2s}::-webkit-scrollbar-thumb:hover{background:#00000040}.ant-layout-sider.main-sider .ant-menu-sub,.ant-layout-sider.main-sider .ant-menu-submenu .ant-menu{background:#ffffff24!important;border-radius:8px;margin:4px 8px 8px;border:1px solid rgba(255,255,255,.12)}.ant-layout-sider.main-sider .ant-menu-sub .ant-menu-item,.ant-layout-sider.main-sider .ant-menu-submenu .ant-menu .ant-menu-item{color:#ffffffeb}.ant-layout-sider.main-sider .ant-menu-sub .ant-menu-item:hover,.ant-layout-sider.main-sider .ant-menu-submenu .ant-menu .ant-menu-item:hover{background:#fff3!important;color:#fff}.ant-layout-sider.main-sider .ant-menu-sub .ant-menu-item-selected,.ant-layout-sider.main-sider .ant-menu-submenu .ant-menu .ant-menu-item-selected{background:#ffffff38!important;color:#fff}@media(max-width:768px){.ant-layout-header{padding:0 16px!important}.ant-layout-content{margin:16px!important}.ant-layout-content>div{padding:16px!important}}@media(max-width:576px){.ant-card{margin-bottom:16px}.ant-space{gap:8px!important}}
