@import"https://fonts.googleapis.com/css2?family=IBM+Plex+Mono:wght@300;400;500;600&family=IBM+Plex+Sans:wght@300;400;500;600&display=swap";*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--bg: #0a0b0e;--bg2: #0f1115;--bg3: #15181f;--bg4: #1c2030;--border: #252a38;--border2: #2e3548;--text: #c8cdd8;--text-dim: #5a6278;--text-bright: #e8ecf5;--amber: #f0a030;--amber-dim: #7a5018;--green: #28c87a;--green-dim: #0f4a2d;--red: #e84040;--red-dim: #4a1010;--blue: #4898f0;--blue-dim: #0e2e58;--purple: #9868e8;--purple-dim: #2e1858;--mono: "IBM Plex Mono", monospace;--sans: "IBM Plex Sans", sans-serif}html,body,#root{height:100%;background:var(--bg);color:var(--text);font-family:var(--sans);font-size:13px}.loading-screen{height:100vh;display:flex;align-items:center;justify-content:center;font-family:var(--mono);color:var(--text-dim);letter-spacing:.1em}.login-root{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--bg);background-image:repeating-linear-gradient(0deg,transparent,transparent 39px,var(--border) 39px,var(--border) 40px),repeating-linear-gradient(90deg,transparent,transparent 39px,var(--border) 39px,var(--border) 40px)}.login-card{background:var(--bg2);border:1px solid var(--border2);width:380px;padding:40px}.login-brand{display:flex;align-items:baseline;gap:10px;margin-bottom:36px}.brand-icon{font-size:28px;color:var(--amber)}.brand-name{font-family:var(--mono);font-size:20px;font-weight:600;color:var(--text-bright);letter-spacing:.05em}.brand-sub{font-family:var(--mono);font-size:9px;color:var(--text-dim);letter-spacing:.15em}.login-form{display:flex;flex-direction:column;gap:18px}.mfa-notice{font-family:var(--mono);font-size:11px;color:var(--amber);letter-spacing:.05em;padding:10px 0;border-top:1px solid var(--amber-dim)}.otp-input{font-size:24px!important;letter-spacing:.3em;text-align:center}.field{display:flex;flex-direction:column;gap:6px}.field label{font-family:var(--mono);font-size:10px;letter-spacing:.12em;color:var(--text-dim)}.field input,.field select,.field textarea{background:var(--bg3);border:1px solid var(--border2);color:var(--text-bright);padding:9px 12px;font-family:var(--mono);font-size:13px;outline:none;transition:border-color .15s}.field input:focus,.field select:focus{border-color:var(--amber)}.checkbox-field{flex-direction:row;align-items:center;gap:10px}.checkbox-field label{font-size:11px}.btn-primary{background:var(--amber);color:#000;border:none;padding:10px 18px;font-family:var(--mono);font-size:12px;font-weight:600;letter-spacing:.08em;cursor:pointer;transition:opacity .15s}.btn-primary:hover{opacity:.85}.btn-primary:disabled{opacity:.4;cursor:not-allowed}.btn-ghost{background:transparent;color:var(--text);border:1px solid var(--border2);padding:9px 16px;font-family:var(--mono);font-size:12px;letter-spacing:.06em;cursor:pointer;transition:border-color .15s}.btn-ghost:hover{border-color:var(--text)}.btn-ghost:disabled{opacity:.4;cursor:not-allowed}.btn-xs{padding:3px 8px;font-family:var(--mono);font-size:10px;letter-spacing:.06em;border:1px solid var(--border2);background:transparent;color:var(--text);cursor:pointer;transition:all .12s}.btn-xs.green{border-color:var(--green-dim);color:var(--green)}.btn-xs.green:hover{background:var(--green-dim)}.btn-xs.red{border-color:var(--red-dim);color:var(--red)}.btn-xs.red:hover{background:var(--red-dim)}.btn-xs.ghost:hover{border-color:var(--text)}.error-banner{background:var(--red-dim);border-left:3px solid var(--red);padding:8px 12px;font-family:var(--mono);font-size:11px;color:var(--red)}.app-shell{display:flex;height:100vh;overflow:hidden}.sidebar{width:220px;min-width:220px;background:var(--bg2);border-right:1px solid var(--border);display:flex;flex-direction:column;padding:0}.sidebar-brand{display:flex;align-items:center;gap:12px;padding:22px 20px 18px;border-bottom:1px solid var(--border)}.sidebar-brand .brand-icon{font-size:22px;color:var(--amber)}.sidebar-brand .brand-name{font-family:var(--mono);font-size:14px;font-weight:600;color:var(--text-bright)}.sidebar-brand .brand-sub{font-family:var(--mono);font-size:8px;color:var(--text-dim);letter-spacing:.12em}.sidebar-nav{display:flex;flex-direction:column;padding:12px 0;flex:1}.nav-item{display:flex;align-items:center;gap:10px;padding:10px 20px;font-family:var(--mono);font-size:11px;letter-spacing:.08em;color:var(--text-dim);text-decoration:none;transition:all .12s;border-left:2px solid transparent}.nav-item:hover{color:var(--text);background:var(--bg3)}.nav-item.active{color:var(--amber);border-left-color:var(--amber);background:var(--bg3)}.nav-icon{font-size:14px}.sidebar-logout{margin:0;padding:14px 20px;background:transparent;border:none;border-top:1px solid var(--border);color:var(--text-dim);font-family:var(--mono);font-size:11px;letter-spacing:.08em;cursor:pointer;text-align:left;display:flex;align-items:center;gap:10px;transition:color .12s}.sidebar-logout:hover{color:var(--red)}.main-content{flex:1;overflow-y:auto;background:var(--bg)}.page{padding:32px 36px;max-width:1400px}.page-header{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:28px;padding-bottom:16px;border-bottom:1px solid var(--border)}.page-header h1{font-family:var(--mono);font-size:18px;font-weight:600;color:var(--text-bright);letter-spacing:.06em}.page-sub{font-family:var(--mono);font-size:11px;color:var(--text-dim)}.stat-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:16px}.stat-card{background:var(--bg2);border:1px solid var(--border);padding:20px 22px;position:relative;overflow:hidden}.stat-card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px}.stat-card.accent-green:before{background:var(--green)}.stat-card.accent-blue:before{background:var(--blue)}.stat-card.accent-amber:before{background:var(--amber)}.stat-card.accent-red:before{background:var(--red)}.stat-card.accent-purple:before{background:var(--purple)}.stat-label{font-family:var(--mono);font-size:9px;color:var(--text-dim);letter-spacing:.12em;margin-bottom:10px}.stat-value{font-family:var(--mono);font-size:32px;font-weight:300;color:var(--text-bright)}.stat-total{font-family:var(--mono);font-size:10px;color:var(--text-dim);margin-top:4px}.table-container{overflow-x:auto}.data-table{width:100%;border-collapse:collapse}.data-table th{font-family:var(--mono);font-size:9px;letter-spacing:.12em;color:var(--text-dim);text-align:left;padding:8px 14px;border-bottom:1px solid var(--border2);background:var(--bg2)}.data-table td{padding:10px 14px;border-bottom:1px solid var(--border)}.data-table tr:hover td{background:var(--bg3)}.loading-cell,.empty-cell{text-align:center;padding:40px;color:var(--text-dim);font-family:var(--mono);font-size:11px}.action-cell{display:flex;gap:6px;align-items:center}.mono{font-family:var(--mono)}.dim{color:var(--text-dim)}.warn{color:var(--amber)}.badge{display:inline-block;padding:2px 7px;font-family:var(--mono);font-size:9px;letter-spacing:.08em;border:1px solid var(--border2);color:var(--text-dim)}.badge.green{border-color:var(--green-dim);color:var(--green)}.badge.amber{border-color:var(--amber-dim);color:var(--amber)}.badge.red{border-color:var(--red-dim);color:var(--red)}.badge.blue{border-color:var(--blue-dim);color:var(--blue)}.dot{display:inline-block;width:8px;height:8px;border-radius:50%}.dot.green{background:var(--green);box-shadow:0 0 6px var(--green)}.dot.red{background:var(--red)}.dot.amber{background:var(--amber)}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:100}.modal{background:var(--bg2);border:1px solid var(--border2);padding:36px;min-width:400px;max-width:520px;width:100%;display:flex;flex-direction:column;gap:18px}.modal h2{font-family:var(--mono);font-size:14px;color:var(--text-bright);letter-spacing:.08em}.modal-actions{display:flex;gap:12px;padding-top:8px}.token-box{background:var(--bg3);border:1px solid var(--amber-dim);padding:16px}.token-label{font-family:var(--mono);font-size:9px;color:var(--amber);letter-spacing:.1em;margin-bottom:10px}.token-value{font-family:var(--mono);font-size:14px;color:var(--text-bright);word-break:break-all;margin-bottom:8px}.token-hint{font-family:var(--mono);font-size:10px;color:var(--text-dim)}.pagination{display:flex;align-items:center;gap:14px}
