@tailwind base;@tailwind components;@tailwind utilities;body{margin:0;padding:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;background-color:#f0f2f5}::-webkit-scrollbar-track{background:#f1f1f1;border-radius:4px}::-webkit-scrollbar-thumb{background:#888;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#555}.stat-card{transition:all .3s ease}.stat-card:hover{transform:translateY(-4px);box-shadow:0 12px 24px #0000001a}:root{--bg-primary: #0a0e27;--bg-secondary: #111638;--bg-tertiary: #1a1f4e;--bg-card: rgba(17, 22, 56, .8);--bg-card-hover: rgba(26, 31, 78, .9);--color-primary: #00d4ff;--color-primary-light: #4de8ff;--color-primary-dark: #00a8cc;--color-secondary: #7b2ff7;--color-secondary-light: #a66bff;--color-accent: #00ff88;--color-accent-light: #4dffaa;--color-warning: #ffb800;--color-danger: #ff4757;--color-success: #00ff88;--text-primary: #ffffff;--text-secondary: rgba(255, 255, 255, .85);--text-muted: rgba(255, 255, 255, .65);--text-highlight: #00d4ff;--border-color: rgba(0, 212, 255, .15);--border-hover: rgba(0, 212, 255, .4);--border-active: rgba(0, 212, 255, .6);--glow-primary: 0 0 20px rgba(0, 212, 255, .3);--glow-primary-strong: 0 0 40px rgba(0, 212, 255, .5);--glow-secondary: 0 0 20px rgba(123, 47, 247, .3);--glow-accent: 0 0 20px rgba(0, 255, 136, .3);--shadow-card: 0 8px 32px rgba(0, 0, 0, .3);--shadow-card-hover: 0 12px 48px rgba(0, 212, 255, .2);--border-radius: 12px;--border-radius-small: 8px;--border-radius-large: 16px}[data-theme=light]{--bg-primary: #f0f5ff;--bg-secondary: #ffffff;--bg-tertiary: #e8edf5;--bg-card: rgba(255, 255, 255, .9);--bg-card-hover: rgba(255, 255, 255, 1);--color-primary: #1677ff;--color-primary-light: #4096ff;--color-primary-dark: #0958d9;--color-secondary: #722ed1;--color-accent: #52c41a;--text-primary: #1f1f1f;--text-secondary: rgba(0, 0, 0, .65);--text-muted: rgba(0, 0, 0, .35);--border-color: rgba(0, 0, 0, .1);--border-hover: rgba(22, 119, 255, .4);--glow-primary: 0 2px 8px rgba(22, 119, 255, .15);--glow-primary-strong: 0 4px 16px rgba(22, 119, 255, .25);--shadow-card: 0 2px 8px rgba(0, 0, 0, .08);--shadow-card-hover: 0 6px 16px rgba(22, 119, 255, .12)}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;background:var(--bg-primary);color:var(--text-primary);min-height:100vh;overflow-x:hidden}#root{min-height:100vh}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg-secondary);border-radius:4px}::-webkit-scrollbar-thumb{background:var(--color-primary);border-radius:4px;opacity:.5}::-webkit-scrollbar-thumb:hover{background:var(--color-primary-light)}.glow-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--border-radius);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:all .3s ease}.glow-card:hover{border-color:var(--border-hover);box-shadow:var(--glow-primary);transform:translateY(-2px)}.glow-card-strong:hover{border-color:var(--border-active);box-shadow:var(--glow-primary-strong)}.glow-border{position:relative;border-radius:var(--border-radius)}.glow-border:before{content:"";position:absolute;top:-2px;right:-2px;bottom:-2px;left:-2px;border-radius:inherit;background:linear-gradient(135deg,var(--color-primary),var(--color-secondary),var(--color-accent));opacity:0;transition:opacity .3s ease;z-index:-1}.glow-border:hover:before{opacity:.5}.glass{background:var(--bg-card);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid var(--border-color)}.tech-btn{position:relative;background:transparent;border:1px solid var(--color-primary);color:var(--color-primary);border-radius:var(--border-radius-small);padding:8px 16px;cursor:pointer;overflow:hidden;transition:all .3s ease}.tech-btn:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:var(--color-primary);opacity:0;transition:opacity .3s ease}.tech-btn:hover{color:var(--text-primary);box-shadow:var(--glow-primary)}.tech-btn:hover:before{opacity:1}.tech-btn span{position:relative;z-index:1}.tech-btn-primary{background:var(--color-primary);color:var(--bg-primary);font-weight:500}.tech-btn-primary:hover{background:var(--color-primary-light);color:var(--bg-primary)}.tech-input{background:var(--bg-card)!important;border:1px solid var(--border-color)!important;border-radius:var(--border-radius-small)!important;color:var(--text-primary)!important;transition:all .3s ease!important}.tech-input:focus,.tech-input-focused{border-color:var(--color-primary)!important;box-shadow:0 0 0 2px #00d4ff33!important}.tech-input::placeholder{color:var(--text-muted)!important}.tech-tag{display:inline-flex;align-items:center;padding:2px 8px;border-radius:4px;font-size:12px;font-weight:500;border:1px solid transparent}.tech-tag-primary{background:#00d4ff26;color:var(--color-primary);border-color:#00d4ff4d}.tech-tag-secondary{background:#7b2ff726;color:var(--color-secondary);border-color:#7b2ff74d}.tech-tag-accent{background:#00ff8826;color:var(--color-accent);border-color:#00ff884d}.tech-tag-warning{background:#ffb80026;color:var(--color-warning);border-color:#ffb8004d}.tech-tag-danger{background:#ff475726;color:var(--color-danger);border-color:#ff47574d}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes glow{0%,to{box-shadow:0 0 5px var(--color-primary)}50%{box-shadow:0 0 20px var(--color-primary),0 0 30px var(--color-primary)}}@keyframes scan{0%{transform:translateY(-100%)}to{transform:translateY(100%)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes borderGlow{0%,to{border-color:var(--border-color)}50%{border-color:var(--color-primary)}}.animate-pulse{animation:pulse 2s ease-in-out infinite}.animate-glow{animation:glow 2s ease-in-out infinite}.animate-float{animation:float 3s ease-in-out infinite}.animate-shimmer{background:linear-gradient(90deg,transparent,rgba(0,212,255,.1),transparent);background-size:200% 100%;animation:shimmer 2s infinite}.animate-border-glow{animation:borderGlow 2s ease-in-out infinite}.status-indicator{width:8px;height:8px;border-radius:50%;display:inline-block}.status-online{background:var(--color-success);box-shadow:0 0 8px var(--color-success);animation:pulse 2s ease-in-out infinite}.status-offline{background:var(--text-muted)}.status-warning{background:var(--color-warning);box-shadow:0 0 8px var(--color-warning);animation:pulse 1s ease-in-out infinite}.status-error{background:var(--color-danger);box-shadow:0 0 8px var(--color-danger);animation:pulse .5s ease-in-out infinite}.tech-table .ant-table{background:transparent!important}.tech-table .ant-table-thead>tr>th{background:#00d4ff1a!important;border-bottom:1px solid var(--border-color)!important;color:var(--text-primary)!important}.tech-table .ant-table-tbody>tr>td{border-bottom:1px solid var(--border-color)!important}.tech-table .ant-table-tbody>tr:hover>td{background:#00d4ff0d!important}.tech-table .ant-table-tbody>tr.ant-table-row-selected>td{background:#00d4ff1a!important}.stat-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--border-radius);padding:20px;transition:all .3s ease;position:relative;overflow:hidden}.stat-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--color-primary),var(--color-secondary));opacity:0;transition:opacity .3s ease}.stat-card:hover{border-color:var(--border-hover);box-shadow:var(--shadow-card-hover);transform:translateY(-4px)}.stat-card:hover:before{opacity:1}.text-gradient{background:linear-gradient(135deg,var(--color-primary),var(--color-secondary));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.text-glow{text-shadow:0 0 10px var(--color-primary)}.bg-grid{background-image:linear-gradient(rgba(0,212,255,.03) 1px,transparent 1px),linear-gradient(90deg,rgba(0,212,255,.03) 1px,transparent 1px);background-size:50px 50px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
