:root{--bg-canvas: #09090b;--bg-primary: #111113;--bg-secondary: #18181b;--bg-tertiary: #27272a;--bg-elevated: #1f1f23;--bg-card: #111113;--bg-card-hover: #18181b;--bg-glass: rgba(17, 17, 19, .88);--border-subtle: rgba(255, 255, 255, .08);--border-color: rgba(255, 255, 255, .12);--border-hover: rgba(255, 255, 255, .25);--border-focus: #ffffff;--text-primary: #f4f4f5;--text-secondary: #a1a1aa;--text-muted: #71717a;--text-inverse: #09090b;--accent-primary: #ffffff;--accent-primary-hover: #e4e4e7;--accent-primary-muted: rgba(255, 255, 255, .08);--accent-glow: rgba(255, 255, 255, .12);--accent-cyan: #e4e4e7;--accent-cyan-hover: #ffffff;--accent-cyan-muted: rgba(255, 255, 255, .06);--accent-violet: #d4d4d8;--accent-violet-hover: #e4e4e7;--accent-violet-muted: rgba(255, 255, 255, .06);--accent-amber: #a1a1aa;--accent-amber-hover: #d4d4d8;--accent-amber-muted: rgba(255, 255, 255, .06);--accent-rose: #ef4444;--accent-rose-hover: #dc2626;--accent-rose-muted: rgba(239, 68, 68, .12);--accent-emerald: #ffffff;--accent-emerald-hover: #e4e4e7;--accent-emerald-muted: rgba(255, 255, 255, .08);--radius-xs: 2px;--radius-sm: 4px;--radius-md: 6px;--radius-lg: 8px;--radius-xl: 10px;--radius-full: 9999px;--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .4);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .5), 0 2px 4px -2px rgba(0, 0, 0, .4);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .6), 0 4px 6px -4px rgba(0, 0, 0, .5);--shadow-elevated: 0 20px 25px -5px rgba(0, 0, 0, .7), 0 8px 10px -6px rgba(0, 0, 0, .6);--transition-fast: .12s cubic-bezier(.16, 1, .3, 1);--transition-normal: .18s cubic-bezier(.16, 1, .3, 1);--transition-smooth: .22s cubic-bezier(.16, 1, .3, 1)}*{box-sizing:border-box;margin:0;padding:0}body{font-family:-apple-system,BlinkMacSystemFont,Inter,Segoe UI,Roboto,Helvetica,Arial,sans-serif;background-color:var(--bg-canvas);color:var(--text-primary);min-height:100vh;line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg-canvas);border-left:1px solid var(--border-subtle)}::-webkit-scrollbar-thumb{background:var(--bg-tertiary);border-radius:var(--radius-xs)}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}button:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--border-focus);outline-offset:2px}input:focus-visible,select:focus-visible,textarea:focus-visible{outline:none}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes modalSlideIn{0%{opacity:0;transform:scale(.98) translateY(6px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes pageEnter{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.page-enter{animation:pageEnter .18s cubic-bezier(.16,1,.3,1) forwards;will-change:transform,opacity}.spin{animation:spin 1s linear infinite}.card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:1.5rem;box-shadow:var(--shadow-sm);transition:transform var(--transition-fast),box-shadow var(--transition-fast),border-color var(--transition-fast)}.card-hover:hover{border-color:var(--border-hover);box-shadow:var(--shadow-md);transform:translateY(-1px)}.input,.textarea{width:100%;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:.625rem .875rem;color:var(--text-primary);font-size:.875rem;font-weight:500;box-shadow:none;outline:none;transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.input:focus,.textarea:focus{border-color:var(--border-focus);box-shadow:0 0 0 1px var(--border-focus)}.input::placeholder,.textarea::placeholder{color:var(--text-muted)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.625rem 1.125rem;font-size:.875rem;font-weight:600;border-radius:var(--radius-md);border:1px solid var(--border-color);cursor:pointer;text-decoration:none;white-space:nowrap;box-shadow:var(--shadow-sm);transition:transform var(--transition-fast),box-shadow var(--transition-fast),background var(--transition-fast),border-color var(--transition-fast)}.btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:var(--shadow-md)}.btn:active:not(:disabled){transform:translateY(0);box-shadow:none}.btn:disabled{opacity:.4;cursor:not-allowed;box-shadow:none;transform:none}.btn-primary{background:var(--accent-primary);color:var(--text-inverse);border-color:var(--accent-primary)}.btn-primary:hover:not(:disabled){background:var(--accent-primary-hover);border-color:var(--accent-primary-hover)}.btn-secondary{background:var(--bg-secondary);color:var(--text-primary);border-color:var(--border-color)}.btn-secondary:hover:not(:disabled){background:var(--bg-tertiary);border-color:var(--border-hover)}.btn-ghost{background:transparent;color:var(--text-secondary);border-color:transparent;box-shadow:none}.btn-ghost:hover:not(:disabled){background:var(--bg-secondary);color:var(--text-primary);border-color:var(--border-subtle);box-shadow:none}.btn-ghost:active:not(:disabled){background:var(--bg-tertiary);box-shadow:none}.btn-danger{background:var(--accent-rose);color:#fff;border-color:var(--accent-rose)}.btn-danger:hover:not(:disabled){background:var(--accent-rose-hover);border-color:var(--accent-rose-hover);color:#fff}.btn-sm{padding:.375rem .75rem;font-size:.8rem;border-radius:var(--radius-sm);box-shadow:var(--shadow-sm)}.btn-sm:hover:not(:disabled){box-shadow:var(--shadow-md)}.btn-sm:active:not(:disabled){box-shadow:none}.badge{display:inline-flex;align-items:center;gap:.35rem;padding:.2rem .6rem;font-size:.7rem;font-weight:700;border-radius:var(--radius-xs);border:1px solid var(--border-color);box-shadow:none;text-transform:uppercase;letter-spacing:.06em;color:var(--text-primary)}.badge-success{background:#ffffff14;color:#f4f4f5;border-color:#fff3}.badge-warning{background:#d4d4d81a;color:#d4d4d8;border-color:#d4d4d833}.badge-danger{background:#ef444426;color:#f87171;border-color:#ef44444d}.badge-info{background:#a1a1aa1a;color:#a1a1aa;border-color:#a1a1aa33}.badge-neutral{background:#ffffff0a;color:#71717a;border-color:#ffffff14}.nav-btn{border:1px solid transparent;transition:all var(--transition-fast)}.nav-btn:hover{border-color:var(--border-subtle)!important;background:var(--bg-secondary)!important;color:var(--text-primary)!important;box-shadow:none}.nav-btn.active{border-color:var(--border-color)!important;background:var(--bg-tertiary)!important;color:var(--text-primary)!important;box-shadow:var(--shadow-sm);font-weight:700!important}.table-container{width:100%;overflow-x:auto;border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);background:var(--bg-card)}.table{width:100%;border-collapse:collapse;text-align:left;font-size:.875rem}.table th{background:var(--bg-secondary);color:var(--text-secondary);font-weight:700;text-transform:uppercase;font-size:.725rem;letter-spacing:.06em;padding:.75rem 1rem;border-bottom:1px solid var(--border-color)}.table td{padding:.875rem 1rem;border-bottom:1px solid var(--border-subtle);color:var(--text-primary)}.table tr:last-child td{border-bottom:none}.table tr:hover td{background:var(--bg-card-hover)}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000bf;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem;animation:fadeIn .15s ease-out}.modal-content{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--radius-lg);max-width:600px;width:100%;max-height:90vh;overflow-y:auto;padding:1.75rem;box-shadow:var(--shadow-elevated);animation:modalSlideIn .2s var(--transition-smooth)}@media (min-width: 769px){.mobile-header,.mobile-close-btn{display:none!important}}@media (max-width: 768px){.mobile-header{display:flex!important}.mobile-close-btn{display:block!important}.sidebar-nav{position:fixed!important;top:0;left:0;bottom:0;transform:translate(-100%);transition:transform var(--transition-smooth)}.sidebar-nav.open{transform:translate(0)}.content-main{padding:1.25rem 1rem!important;max-height:calc(100vh - 58px)!important}.modal-content{padding:1.25rem!important;max-height:95vh!important;border-radius:var(--radius-lg)!important}}
