.app{display:flex;min-height:100vh}.sidebar{width:240px;background:var(--color-surface);border-right:1px solid var(--color-border);padding:2rem 0;position:fixed;height:100vh;overflow-y:auto}.sidebar-header{padding:0 1.5rem 2rem;border-bottom:1px solid var(--color-border);margin-bottom:1rem}.sidebar-header h1{font-size:1.5rem;font-weight:700;color:var(--color-primary);margin-bottom:.25rem}.sidebar-header .subtitle{font-size:.875rem;color:var(--color-text-muted)}.nav-list{list-style:none;padding:0;margin:0}.nav-list li{margin:0}.nav-list a{display:flex;align-items:center;gap:.75rem;padding:.75rem 1.5rem;color:var(--color-text);text-decoration:none;transition:background .15s}.nav-list a:hover{background:var(--color-surface-hover);text-decoration:none}.nav-list a.active{background:var(--color-surface-hover);border-left:3px solid var(--color-primary);color:var(--color-primary)}.nav-list .icon{font-size:1.25rem}.nav-list .label{font-size:.9375rem;font-weight:500}.main-content{margin-left:240px;flex:1;padding:2rem;max-width:1400px}.page-header{margin-bottom:2rem}.page-header h2{font-size:2rem;font-weight:700;margin-bottom:.5rem}.page-header p{font-size:1rem;color:var(--color-text-muted)}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;padding:1.5rem;margin-bottom:1.5rem}.card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.card-title{font-size:1.25rem;font-weight:600}.btn{padding:.5rem 1rem;border:none;border-radius:6px;font-size:.875rem;font-weight:500;transition:all .15s}.btn-primary{background:var(--color-primary);color:var(--color-bg)}.btn-primary:hover{opacity:.9}.btn-secondary{background:var(--color-surface-hover);color:var(--color-text);border:1px solid var(--color-border)}.btn-secondary:hover{background:var(--color-border)}.table{width:100%;border-collapse:collapse}.table th{text-align:left;padding:.75rem;font-weight:600;font-size:.875rem;color:var(--color-text-muted);border-bottom:1px solid var(--color-border)}.table td{padding:.75rem;border-bottom:1px solid var(--color-border)}.table tr:last-child td{border-bottom:none}.table tr:hover{background:var(--color-surface-hover)}.badge{display:inline-block;padding:.25rem .5rem;border-radius:4px;font-size:.75rem;font-weight:600;text-transform:uppercase}.badge-success{background:#00ff881a;color:var(--color-success)}.badge-error{background:#ff44441a;color:var(--color-error)}.badge-warning{background:#ffaa001a;color:var(--color-warning)}.badge-info{background:#00d4ff1a;color:var(--color-primary)}.code{font-family:var(--font-mono);font-size:.875rem;background:var(--color-bg);padding:.125rem .375rem;border-radius:3px;color:var(--color-primary)}.loading{display:flex;justify-content:center;align-items:center;padding:3rem;color:var(--color-text-muted)}.error{padding:1rem;background:#ff44441a;border:1px solid var(--color-error);border-radius:6px;color:var(--color-error)}.empty-state{text-align:center;padding:3rem;color:var(--color-text-muted)}.empty-state h3{font-size:1.25rem;margin-bottom:.5rem}.empty-state p{font-size:.9375rem}*{box-sizing:border-box;margin:0;padding:0}:root{--color-bg: #0a0a0a;--color-surface: #1a1a1a;--color-surface-hover: #252525;--color-border: #333;--color-text: #e0e0e0;--color-text-muted: #999;--color-primary: #00d4ff;--color-success: #00ff88;--color-warning: #ffaa00;--color-error: #ff4444;--font-mono: "SF Mono", "Menlo", "Monaco", "Courier New", monospace}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:var(--color-bg);color:var(--color-text);line-height:1.6}code,pre{font-family:var(--font-mono)}a{color:var(--color-primary);text-decoration:none}a:hover{text-decoration:underline}button{font-family:inherit;cursor:pointer}#root{min-height:100vh}
