:root{--font-primary: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-heading: "Plus Jakarta Sans", "Inter", -apple-system, BlinkMacSystemFont, sans-serif;--font-mono: "JetBrains Mono", "SF Mono", "Fira Code", "Consolas", monospace;--bg-main: #fafafa;--bg-card: #ffffff;--bg-card-hover: #f4f4f5;--bg-card-elevated: #ffffff;--bg-sidebar: #ffffff;--bg-subtle: #f4f4f5;--bg-input: #ffffff;--border-color: #e4e4e7;--border-subtle: #f4f4f5;--border-hover: #d4d4d8;--border-focus: #18181b;--text-main: #09090b;--text-primary: #09090b;--text-secondary: #52525b;--text-muted: #71717a;--text-dim: #a1a1aa;--primary: #18181b;--primary-hover: #27272a;--primary-accent: #2563eb;--primary-glow: rgba(24, 24, 27, .08);--primary-subtle: rgba(24, 24, 27, .04);--accent-purple: #7c3aed;--accent-violet: #8b5cf6;--accent-emerald: #10b981;--accent-amber: #f59e0b;--accent-rose: #ef4444;--accent-cyan: #0284c7;--status-success-bg: #f0fdf4;--status-success-text: #166534;--status-warning-bg: #fffbeb;--status-warning-text: #92400e;--status-danger-bg: #fef2f2;--status-danger-text: #991b1b;--status-info-bg: #eff6ff;--status-info-text: #1e40af;--status-neutral-bg: #f4f4f5;--status-neutral-text: #3f3f46;--status-purple-bg: #faf5ff;--status-purple-text: #6b21a8;--status-cyan-bg: #f0f9ff;--status-cyan-text: #0369a1;--radius-xs: 4px;--radius-sm: 6px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 16px;--radius-full: 9999px;--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .04);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .05), 0 2px 4px -2px rgba(0, 0, 0, .03);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .06), 0 4px 6px -4px rgba(0, 0, 0, .03);--shadow-card: 0 1px 3px 0 rgba(0, 0, 0, .03);--shadow-glow: none;--transition: all .12s cubic-bezier(.16, 1, .3, 1);--surface: var(--bg-card);--surface-hover: var(--bg-card-hover);--border: var(--border-color);--background: var(--bg-main)}[data-theme=dark]{--bg-main: #09090b;--bg-card: #121214;--bg-card-hover: #18181b;--bg-card-elevated: #161618;--bg-sidebar: #0c0c0e;--bg-subtle: #18181b;--bg-input: #121214;--border-color: #27272a;--border-subtle: #1c1c1f;--border-hover: #3f3f46;--border-focus: #fafafa;--text-main: #fafafa;--text-primary: #fafafa;--text-secondary: #d4d4d8;--text-muted: #a1a1aa;--text-dim: #71717a;--primary: #fafafa;--primary-hover: #f4f4f5;--primary-accent: #3b82f6;--primary-glow: rgba(250, 250, 250, .1);--primary-subtle: rgba(250, 250, 250, .06);--accent-purple: #c084fc;--accent-violet: #a78bfa;--accent-emerald: #34d399;--surface: var(--bg-card);--surface-hover: var(--bg-card-hover);--border: var(--border-color);--background: var(--bg-main);--accent-amber: #fbbf24;--accent-rose: #f87171;--accent-cyan: #38bdf8;--status-success-bg: rgba(34, 197, 94, .12);--status-success-text: #4ade80;--status-warning-bg: rgba(234, 179, 8, .12);--status-warning-text: #facc15;--status-danger-bg: rgba(239, 68, 68, .12);--status-danger-text: #f87171;--status-info-bg: rgba(59, 130, 246, .12);--status-info-text: #60a5fa;--status-neutral-bg: #1c1c1f;--status-neutral-text: #a1a1aa;--status-purple-bg: rgba(168, 85, 247, .12);--status-purple-text: #c084fc;--status-cyan-bg: rgba(56, 189, 248, .12);--status-cyan-text: #38bdf8;--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .4);--shadow-md: 0 4px 12px 0 rgba(0, 0, 0, .5);--shadow-lg: 0 10px 24px 0 rgba(0, 0, 0, .6);--shadow-card: 0 1px 3px 0 rgba(0, 0, 0, .4);--shadow-glow: none}*{box-sizing:border-box;margin:0;padding:0}html,body,#root{height:100%}body{font-family:var(--font-primary);background-color:var(--bg-main);color:var(--text-main);line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow:hidden;transition:background-color .14s ease,color .14s ease}.data-table td,.data-table th,.glass-card,.minimal-card,.badge,.minimal-pill,.navbar-status-pill,[role=progressbar],code,pre{font-variant-numeric:tabular-nums lining-nums}:focus-visible{outline:2px solid var(--border-focus);outline-offset:2px}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);letter-spacing:-.02em;font-weight:600;color:var(--text-primary);line-height:1.25}::-webkit-scrollbar{width:5px;height:5px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#d4d4d8;border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:#a1a1aa}.app-layout{display:flex;height:100vh;width:100vw;overflow:hidden;background-color:var(--bg-main)}.app-main{flex:1;display:flex;flex-direction:column;height:100vh;min-width:0;overflow:hidden;background-color:var(--bg-main)}.app-page-content{flex:1;overflow-y:auto;overflow-x:hidden;min-height:0;background-color:var(--bg-main)}.content-container{padding:1.75rem 2rem;max-width:1440px;width:100%;margin:0 auto}@media(max-width:768px){.content-container{padding:1rem .85rem}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.45rem;padding:0 .85rem;height:34px;font-size:.8125rem;font-weight:500;font-family:var(--font-primary);border-radius:var(--radius-sm);border:1px solid transparent;cursor:pointer;transition:var(--transition);text-decoration:none;white-space:nowrap;letter-spacing:-.01em}.btn-primary{background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff!important;border:1px solid #1d4ed8;box-shadow:0 1px 3px #2563eb47;font-weight:600}[data-theme=dark] .btn-primary{background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff!important;border:1px solid #3b82f6;box-shadow:0 1px 3px #3b82f659}.btn-primary:hover{background:linear-gradient(135deg,#1d4ed8,#1e40af);border-color:#1e40af;transform:translateY(-.5px);box-shadow:0 3px 8px #2563eb59}[data-theme=dark] .btn-primary:hover{background:linear-gradient(135deg,#2563eb,#1d4ed8);border-color:#2563eb}.btn-primary:active{transform:translateY(0)}.btn-secondary{background:var(--bg-card);border:1px solid var(--border-color);color:var(--text-primary);box-shadow:0 1px 2px #00000005;font-weight:500}.btn-secondary:hover{background:var(--bg-card-hover);border-color:var(--border-hover);color:var(--text-primary)}.btn-ghost{background:transparent;color:var(--text-secondary);border:1px solid transparent}.btn-ghost:hover{background:var(--bg-card-hover);color:var(--text-primary)}.btn-danger{background:var(--status-danger-bg);color:var(--accent-rose);border:1px solid rgba(239,68,68,.25)}.btn-danger:hover{background:#fee2e2;color:#b91c1c}[data-theme=dark] .btn-danger:hover{background:#ef444438}.btn-accent{background:linear-gradient(135deg,#4f46e5,#3b82f6);color:#fff!important;border:1px solid #4338ca;font-weight:600;box-shadow:0 2px 8px #4f46e547}.btn-accent:hover{background:linear-gradient(135deg,#4338ca,#2563eb);transform:translateY(-.5px);box-shadow:0 4px 12px #4f46e559}.btn-security{background:#6366f114;color:#4f46e5;border:1px solid rgba(99,102,241,.28);font-weight:600}.btn-security:hover{background:#6366f129;border-color:#6366f1;color:#4338ca;transform:translateY(-.5px)}[data-theme=dark] .btn-security{background:#6366f129;color:#a5b4fc;border-color:#6366f166}.btn-success{background:#10b981;color:#fff!important;border:1px solid #059669;font-weight:600;box-shadow:0 1px 3px #10b98140}.btn-success:hover{background:#059669;transform:translateY(-.5px)}.btn-outline-danger{background:var(--status-danger-bg);color:#b91c1c;border:1px solid rgba(239,68,68,.3);font-weight:600}.btn-outline-danger:hover{background:#fee2e2;border-color:#ef4444}[data-theme=dark] .btn-outline-danger{color:#f87171;background:#ef44441f;border-color:#ef444459}.btn-outline-primary{background:var(--status-info-bg);color:#1d4ed8;border:1px solid rgba(37,99,235,.3);font-weight:600}.btn-outline-primary:hover{background:#dbeafe;border-color:#2563eb}[data-theme=dark] .btn-outline-primary{color:#60a5fa;background:#2563eb1f;border-color:#2563eb59}.btn-sm{height:28px;padding:0 .65rem;font-size:.75rem;border-radius:var(--radius-xs);min-height:unset}.badge{display:inline-flex;align-items:center;gap:.3rem;padding:.15rem .5rem;font-size:.7rem;font-weight:500;border-radius:var(--radius-xs);line-height:1.25;white-space:nowrap;letter-spacing:.02em;font-family:var(--font-primary);border:1px solid transparent}.badge-emerald,.badge-success{background:var(--status-success-bg);color:var(--status-success-text);border-color:#10b98140}.badge-blue,.badge-info{background:var(--status-info-bg);color:var(--status-info-text);border-color:#3b82f640}.badge-purple{background:var(--status-purple-bg);color:var(--status-purple-text);border-color:#8b5cf640}.badge-amber,.badge-warning{background:var(--status-warning-bg);color:var(--status-warning-text);border-color:#f59e0b40}.badge-rose,.badge-danger{background:var(--status-danger-bg);color:var(--status-danger-text);border-color:#ef444440}.badge-cyan{background:var(--status-cyan-bg);color:var(--status-cyan-text);border-color:#0284c740}.badge-neutral{background:var(--status-neutral-bg);color:var(--status-neutral-text);border-color:var(--border-color)}.minimal-pill{display:inline-flex;align-items:center;gap:.3rem;padding:.12rem .45rem;font-size:.68rem;font-weight:500;border-radius:var(--radius-xs)}.form-group{display:flex;flex-direction:column;gap:.35rem;margin-bottom:1rem}.form-label{font-size:.78rem;font-weight:500;font-family:var(--font-primary);color:var(--text-secondary);letter-spacing:-.01em}.form-input,.form-select,.form-textarea,.input-field{background:var(--bg-input);border:1px solid var(--border-color);border-radius:var(--radius-sm);padding:.5rem .75rem;font-size:.8125rem;color:var(--text-primary);outline:none;font-family:inherit;transition:var(--transition);width:100%;box-shadow:0 1px 2px #00000005}select.form-select,select.input-field{appearance:none;-webkit-appearance:none;-moz-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%2364748b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .75rem center;padding-right:2.25rem;cursor:pointer}select.form-select option,select.input-field option{background:var(--bg-card);color:var(--text-primary)}.form-input:focus,.form-select:focus,.form-textarea:focus,.input-field:focus{border-color:var(--border-focus);box-shadow:0 0 0 1px var(--border-focus)}.tab-category-bar{display:inline-flex;align-items:center;background:var(--bg-subtle);padding:4px;border-radius:var(--radius-md);border:1px solid var(--border-color);gap:4px;margin-bottom:.85rem}.cat-pill{padding:5px 12px;background:transparent;border:1px solid transparent;border-radius:var(--radius-sm);color:var(--text-muted);font-weight:500;font-size:.82rem;cursor:pointer;display:inline-flex;align-items:center;gap:6px;transition:var(--transition);font-family:inherit;outline:none}.cat-pill:hover{color:var(--text-primary);background:var(--bg-card-hover)}.cat-pill.active{background:var(--bg-card);border-color:var(--border-color);color:var(--text-primary);font-weight:700;box-shadow:var(--shadow-sm)}.tab-nav-container{display:flex;align-items:center;gap:6px;padding:6px;background:var(--bg-subtle);border:1px solid var(--border-color);border-radius:var(--radius-lg);margin-bottom:1.75rem;overflow-x:auto;white-space:nowrap;box-shadow:inset 0 1px 2px #00000005;scrollbar-width:thin}.tab-nav-container::-webkit-scrollbar{height:4px}.tab-nav-container::-webkit-scrollbar-track{background:transparent}.tab-nav-container::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:4px}.tab-btn{padding:.55rem 1rem;background:transparent;border:1px solid transparent;border-radius:var(--radius-md);color:var(--text-secondary);font-weight:500;font-size:.85rem;cursor:pointer;display:inline-flex;align-items:center;gap:.5rem;white-space:nowrap;transition:var(--transition);outline:none;font-family:inherit;-webkit-user-select:none;user-select:none}.tab-btn:hover{color:var(--text-primary);background:var(--bg-card-hover);border-color:var(--border-subtle)}.tab-btn.active{background:var(--bg-card)!important;border-color:var(--border-color)!important;color:var(--text-primary)!important;font-weight:700!important;box-shadow:0 2px 5px #0000000f}.tab-btn .tab-badge{background:var(--bg-card);color:var(--text-muted);border-radius:9999px;padding:1px 8px;font-size:.72rem;font-weight:600;font-family:var(--font-mono);margin-left:2px;border:1px solid var(--border-color)}.tab-btn.active .tab-badge{background:var(--status-info-bg);color:#1d4ed8;border-color:#2563eb40}[data-theme=dark] .tab-btn.active .tab-badge{background:#3b82f633;color:#93c5fd;border-color:#3b82f666}.table-container{overflow-x:auto;border-radius:var(--radius-md);border:1px solid var(--border-color);background:var(--bg-card);box-shadow:var(--shadow-sm)}.data-table{width:100%;border-collapse:collapse;text-align:left}.data-table th{background:var(--bg-subtle);padding:.65rem 1rem;font-size:.7rem;font-weight:600;font-family:var(--font-primary);color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--border-color)}.data-table td{padding:.75rem 1rem;font-size:.8125rem;color:var(--text-primary);border-bottom:1px solid var(--border-color);vertical-align:middle}.data-table tr:hover td{background:var(--bg-card-hover)}.data-table tr:last-child td{border-bottom:none}.data-table .sticky-col{position:sticky;left:0;z-index:2;background:var(--bg-card)}.data-table th.sticky-col{position:sticky;left:0;background:var(--bg-subtle);z-index:3}.data-table tr:hover td.sticky-col{background:var(--bg-card-hover)}.glass-panel{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);color:var(--text-primary);transition:var(--transition)}.minimal-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:1.25rem;transition:var(--transition);box-shadow:var(--shadow-sm);color:var(--text-primary)}.minimal-card:hover{border-color:var(--border-hover)}.glass-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:1.25rem;transition:var(--transition);box-shadow:var(--shadow-sm);color:var(--text-primary)}.glass-card:hover{border-color:var(--border-hover)}.minimal-list{display:flex;flex-direction:column;gap:0;border-radius:var(--radius-md);border:1px solid var(--border-color);background:var(--bg-card);overflow:hidden;box-shadow:var(--shadow-sm)}.minimal-list-item{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;border-bottom:1px solid var(--border-color);transition:var(--transition);text-decoration:none;color:var(--text-primary)}.minimal-list-item:last-child{border-bottom:none}.minimal-list-item:hover{background:var(--bg-card-hover)}.grid-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:1rem;margin-bottom:1.5rem}@media(max-width:640px){.grid-stats{grid-template-columns:repeat(2,1fr);gap:.75rem}}@media(max-width:380px){.grid-stats{grid-template-columns:1fr}}.grid-cols-2{display:grid;grid-template-columns:2fr 1fr;gap:1.25rem}@media(max-width:992px){.grid-cols-2{grid-template-columns:1fr}}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#09090b73;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:999;padding:1.25rem;animation:fadeIn .14s ease-out}.modal-content{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);width:100%;max-width:560px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 40px -10px #0003;padding:1.75rem;position:relative;color:var(--text-primary)}@media(max-width:640px){.modal-overlay{padding:.5rem;align-items:flex-end}.modal-content{max-height:85vh;padding:1.25rem;border-bottom-left-radius:0;border-bottom-right-radius:0}}.sidebar-container{width:250px;height:100vh;flex-shrink:0;background:var(--bg-sidebar);border-right:1px solid var(--border-color);display:flex;flex-direction:column;justify-content:space-between;padding:1.25rem .85rem;overflow-y:auto;overflow-x:hidden;transition:transform .2s cubic-bezier(.16,1,.3,1);z-index:100}.sidebar-nav-link{display:flex;align-items:center;gap:.55rem;padding:.42rem .65rem;border-radius:var(--radius-sm);color:var(--text-secondary);background:transparent;border:1px solid transparent;text-decoration:none;font-size:.8125rem;font-weight:500;transition:background-color .12s ease,color .12s ease,border-color .12s ease;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;will-change:background-color,border-color}.sidebar-nav-link:hover{color:var(--text-primary);background:var(--bg-subtle);border-color:var(--border-color)}.sidebar-nav-link:active{transform:scale(.985)}.sidebar-nav-link.active{color:var(--text-primary);background:var(--bg-subtle);border-color:var(--border-color);font-weight:600}@media(max-width:768px){.sidebar-container{position:fixed;top:0;left:0;bottom:0;width:270px;transform:translate(-100%);box-shadow:0 0 35px #00000040;z-index:1001}.sidebar-container.mobile-open{transform:translate(0)}}.mobile-overlay{display:none}@media(max-width:768px){.mobile-overlay.active{display:block;position:fixed;top:0;right:0;bottom:0;left:0;background:#09090b80;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;animation:fadeIn .2s ease}}.mobile-menu-btn{display:none;align-items:center;justify-content:center;width:32px;height:32px;border-radius:var(--radius-xs);background:var(--bg-subtle);border:1px solid var(--border-color);color:var(--text-primary);cursor:pointer;padding:0;transition:var(--transition)}.mobile-menu-btn:hover{background:var(--border-hover)}@media(max-width:768px){.mobile-menu-btn{display:inline-flex!important}}@media(max-width:640px){.navbar-subtitle,.navbar-status-pill{display:none!important}}@keyframes fadeIn{0%{opacity:0;transform:scale(.99)}to{opacity:1;transform:scale(1)}}input:-webkit-autofill,input:-webkit-autofill:hover,input:-webkit-autofill:focus,textarea:-webkit-autofill,select:-webkit-autofill{-webkit-box-shadow:0 0 0px 1000px #ffffff inset!important;-webkit-text-fill-color:var(--text-primary)!important;transition:background-color 5000s ease-in-out 0s}[data-theme=dark] input:-webkit-autofill,[data-theme=dark] input:-webkit-autofill:hover,[data-theme=dark] input:-webkit-autofill:focus,[data-theme=dark] textarea:-webkit-autofill,[data-theme=dark] select:-webkit-autofill{-webkit-box-shadow:0 0 0px 1000px #121214 inset!important;-webkit-text-fill-color:#fafafa!important}@keyframes modalSlideUp{0%{opacity:0;transform:translateY(14px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes biometricSweep{0%{top:5%;opacity:0}15%{opacity:1}85%{opacity:1}to{top:92%;opacity:0}}@keyframes reticleRotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes reticleRotateReverse{0%{transform:rotate(360deg)}to{transform:rotate(0)}}@keyframes pulseGlow{0%,to{opacity:.6;transform:scale(1)}50%{opacity:1;transform:scale(1.02)}}@keyframes successPop{0%{transform:scale(.94);opacity:0}to{transform:scale(1);opacity:1}}@keyframes shimmerWave{0%{background-position:-200% 0}to{background-position:200% 0}}.skeleton-shimmer{background:linear-gradient(90deg,var(--border-subtle) 25%,var(--bg-card-hover) 50%,var(--border-subtle) 75%);background-size:200% 100%;animation:shimmerWave 1.8s infinite ease-in-out;border-radius:var(--radius-xs)}.progress-bar-track{width:100%;height:6px;background:var(--border-subtle);border:1px solid var(--border-color);border-radius:var(--radius-full);overflow:hidden}.progress-bar-fill{height:100%;border-radius:var(--radius-full);transition:width .3s cubic-bezier(.16,1,.3,1)}.filter-pill{display:inline-flex;align-items:center;gap:.35rem;padding:.25rem .65rem;font-size:.75rem;font-weight:500;border-radius:var(--radius-xs);border:1px solid var(--border-color);background:var(--bg-card);color:var(--text-muted);cursor:pointer;transition:var(--transition)}.filter-pill:hover{border-color:var(--border-hover);color:var(--text-primary);background:var(--bg-card-hover)}.filter-pill.active{background:var(--primary);color:#fff;border-color:var(--primary)}[data-theme=dark] .filter-pill.active{background:#fafafa;color:#09090b;border-color:#fafafa}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}.mobile-bottom-nav{display:none!important}@media(max-width:768px){.mobile-bottom-nav{display:flex!important}.app-main,main,.layout-container,.main-content{padding-bottom:75px!important}}@media print{body{background:#fff!important;color:#0f172a!important;font-size:11pt!important}.navbar-container,.sidebar-container,.mobile-overlay,.mobile-bottom-nav,.no-print,button,.btn,header{display:none!important}main,.app-content,.layout-container{padding:0!important;margin:0!important;max-width:100%!important;width:100%!important;border:none!important;background:transparent!important}.printable-document{width:100%!important;max-width:100%!important;box-shadow:none!important;border:1px solid #cbd5e1!important;padding:1.5rem!important;page-break-inside:avoid;background:#fff!important;color:#0f172a!important}table{page-break-inside:auto}tr{page-break-inside:avoid;page-break-after:auto}}
