:root{--color-primary:#2b9b9b;--color-primary-dark:#1e5f5f;--color-primary-light:#7dd3d3;--color-primary-pale:#e6f7f7;--color-gray-50:#fafbfc;--color-gray-100:#f4f6f8;--color-gray-200:#e8ecf0;--color-gray-300:#d1d9e0;--color-gray-400:#9ba7b4;--color-gray-500:#68768a;--color-gray-600:#4a5568;--color-gray-700:#2d3748;--color-gray-800:#1a202c;--color-gray-900:#0f1419;--color-success:#10b981;--color-success-dark:#059669;--color-success-light:#d1fae5;--color-error:#ef4444;--color-error-dark:#dc2626;--color-error-light:#fee2e2;--color-warning:#f59e0b;--color-warning-dark:#d97706;--color-warning-light:#fef3c7;--color-info:#3b82f6;--color-info-dark:#2563eb;--color-info-light:#dbeafe;--color-text-primary:#1a202c;--color-text-secondary:#68768a;--color-text-tertiary:#9ba7b4;--color-text-inverse:#fff;--color-text-link:#2b9b9b;--color-text-link-hover:#1e5f5f;--color-bg-primary:#fff;--color-bg-secondary:#fafbfc;--color-bg-tertiary:#f4f6f8;--color-bg-elevated:#fff;--color-bg-overlay:#00000080;--color-bg-page:#f9fafb;--color-border-primary:#e8ecf0;--color-border-secondary:#d1d9e0;--color-border-focus:#2b9b9b;--color-border-error:#ef4444;--color-border-success:#10b981;--space-1:0.25rem;--space-2:0.5rem;--space-3:0.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--space-16:4rem;--space-20:5rem;--radius-xs:4px;--radius-sm:6px;--radius-md:8px;--radius-lg:12px;--radius-xl:16px;--radius-2xl:20px;--radius-full:9999px;--shadow-xs:0 1px 2px #0000000d;--shadow-sm:0 1px 3px #00000014;--shadow-md:0 4px 6px #00000012,0 2px 4px #0000000d;--shadow-lg:0 10px 15px #0000001a,0 4px 6px #0000000d;--shadow-xl:0 20px 25px #0000001a,0 10px 10px #0000000a;--shadow-2xl:0 25px 50px #00000026;--shadow-brand:0 4px 20px #2b9b9b33;--shadow-brand-lg:0 10px 40px #2b9b9b4d;--shadow-inner:inset 0 2px 4px #0000000f;--text-xs:0.75rem;--text-sm:0.875rem;--text-base:1rem;--text-lg:1.125rem;--text-xl:1.25rem;--text-2xl:1.5rem;--text-3xl:1.875rem;--text-4xl:2.25rem;--text-5xl:3rem;--font-normal:400;--font-medium:500;--font-semibold:600;--font-bold:700;--font-extrabold:800;--leading-none:1;--leading-tight:1.25;--leading-snug:1.375;--leading-normal:1.5;--leading-relaxed:1.625;--leading-loose:2;--tracking-tighter:-0.05em;--tracking-tight:-0.025em;--tracking-normal:0;--tracking-wide:0.025em;--tracking-wider:0.05em;--transition-fast:150ms cubic-bezier(0.4,0,0.2,1);--transition-base:200ms cubic-bezier(0.4,0,0.2,1);--transition-slow:300ms cubic-bezier(0.4,0,0.2,1);--transition-slowest:500ms cubic-bezier(0.4,0,0.2,1);--ease-in:cubic-bezier(0.4,0,1,1);--ease-out:cubic-bezier(0,0,0.2,1);--ease-in-out:cubic-bezier(0.4,0,0.2,1);--ease-spring:cubic-bezier(0.16,1,0.3,1);--z-base:0;--z-dropdown:1000;--z-sticky:1100;--z-fixed:1200;--z-modal-backdrop:1300;--z-modal:1400;--z-popover:1500;--z-toast:1600;--z-tooltip:1700;--breakpoint-sm:640px;--breakpoint-md:768px;--breakpoint-lg:1024px;--breakpoint-xl:1280px;--breakpoint-2xl:1536px}*,:after,:before{box-sizing:border-box;margin:0;padding:0}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}body{background-color:#f9fafb;background-color:var(--color-bg-page);color:#1a202c;color:var(--color-text-primary);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;font-size:1rem;font-size:var(--text-base);line-height:1.5;line-height:var(--leading-normal);margin:0;min-height:100vh}code{background:#f4f6f8;background:var(--color-gray-100);border-radius:4px;border-radius:var(--radius-xs);font-family:SF Mono,Monaco,Inconsolata,Roboto Mono,Source Code Pro,monospace;font-size:.9em;padding:.125rem .25rem}::-webkit-scrollbar{height:12px;width:12px}::-webkit-scrollbar-track{background:#f4f6f8;background:var(--color-gray-100);border-radius:8px;border-radius:var(--radius-md)}::-webkit-scrollbar-thumb{background:#d1d9e0;background:var(--color-gray-300);border:3px solid #f4f6f8;border:3px solid var(--color-gray-100);border-radius:8px;border-radius:var(--radius-md)}::-webkit-scrollbar-thumb:hover{background:#9ba7b4;background:var(--color-gray-400)}:focus-visible{outline:2px solid #2b9b9b;outline:2px solid var(--color-border-focus);outline-offset:2px}::selection{background-color:#e6f7f7;background-color:var(--color-primary-pale);color:#1a202c;color:var(--color-text-primary)}::-moz-selection{background-color:#e6f7f7;background-color:var(--color-primary-pale);color:#1a202c;color:var(--color-text-primary)}.container{margin:0 auto;max-width:1400px;min-height:100vh;padding:var(--space-6)}@media (max-width:768px){.container{padding:var(--space-4)}}.dashboard{display:flex;flex-direction:column;gap:var(--space-8)}.dashboard-hero{background:linear-gradient(135deg,var(--color-primary) 0,var(--color-primary-dark) 100%);border-radius:var(--radius-xl);box-shadow:var(--shadow-brand-lg);color:#fff;overflow:hidden;padding:var(--space-10) var(--space-8);position:relative}.dashboard-hero:before{background:radial-gradient(circle at top right,#ffffff1a 0,#0000 70%);content:"";height:100%;pointer-events:none;position:absolute;right:0;top:0;width:50%}.dashboard-hero h1{font-size:var(--text-4xl);font-weight:var(--font-extrabold);letter-spacing:var(--tracking-tight);margin:0 0 var(--space-3) 0}.dashboard-hero p{font-size:var(--text-lg);margin:0;opacity:.95}.dashboard-content{grid-gap:var(--space-6);align-items:start;display:grid;gap:var(--space-6);grid-template-columns:320px 1fr}@media (max-width:1200px){.dashboard-content{gap:var(--space-5);grid-template-columns:1fr}}.sidebar{display:flex;flex-direction:column;gap:var(--space-5)}.sidebar .card{margin-bottom:0}.main-content{display:flex;flex-direction:column;gap:var(--space-5);min-width:0}.main-content .card{margin-bottom:0}.card{background:var(--color-bg-elevated);border:1px solid var(--color-border-primary);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);margin-bottom:var(--space-5);padding:var(--space-6);transition:all var(--transition-base)}.card:hover{border-color:var(--color-border-secondary);box-shadow:var(--shadow-md);transform:translateY(-2px)}.card .header{margin-bottom:var(--space-6);text-align:left}.card .header h2{color:var(--color-text-primary);font-size:var(--text-2xl);font-weight:var(--font-bold);letter-spacing:var(--tracking-tight);margin:0 0 var(--space-2) 0}.card .header p{color:var(--color-text-secondary);font-size:var(--text-base);margin:0}.stats-grid{grid-gap:var(--space-5);display:grid;gap:var(--space-5);grid-template-columns:repeat(auto-fit,minmax(240px,1fr));margin-bottom:var(--space-8)}.stat-card{background:var(--color-bg-elevated);border:1px solid var(--color-border-primary);border-radius:var(--radius-lg);cursor:pointer;overflow:hidden;padding:var(--space-6);position:relative;transition:all var(--transition-base)}.stat-card:before{background:linear-gradient(90deg,var(--color-primary) 0,var(--color-primary-light) 100%);content:"";height:3px;left:0;position:absolute;right:0;top:0;transform:scaleX(0);transform-origin:left;transition:transform var(--transition-slow)}.stat-card:hover{border-color:var(--color-primary);box-shadow:var(--shadow-brand);transform:translateY(-4px)}.stat-card:hover:before{transform:scaleX(1)}.stat-card-value{-webkit-text-fill-color:#0000;animation:countUp .8s cubic-bezier(.16,1,.3,1);background:linear-gradient(135deg,var(--color-primary) 0,var(--color-primary-dark) 100%);-webkit-background-clip:text;background-clip:text;color:var(--color-text-primary);font-size:var(--text-4xl);font-weight:var(--font-extrabold);line-height:1;margin:0 0 var(--space-2) 0}@keyframes countUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.stat-card-label{color:var(--color-text-secondary);font-size:var(--text-sm);font-weight:var(--font-semibold);letter-spacing:var(--tracking-wide);margin:0;text-transform:uppercase}.stat-card-trend{align-items:center;display:inline-flex;font-size:var(--text-sm);font-weight:var(--font-medium);gap:var(--space-1);margin-top:var(--space-3)}.stat-card-trend.up{color:var(--color-success)}.stat-card-trend.down{color:var(--color-error)}.stat-card-trend:before{content:"↑";font-size:var(--text-lg)}.stat-card-trend.down:before{content:"↓"}.query-results{background:var(--color-bg-elevated);border:1px solid var(--color-border-primary);border-radius:var(--radius-lg);margin-top:var(--space-4);overflow-x:auto}.query-results table{border-collapse:collapse;font-size:var(--text-sm);min-width:600px;width:100%}.query-results td,.query-results th{border-bottom:1px solid var(--color-border-primary);max-width:300px;padding:var(--space-4);text-align:left;word-break:break-word}.query-results th{background:var(--color-bg-tertiary);color:var(--color-text-primary);font-size:var(--text-xs);font-weight:var(--font-semibold);letter-spacing:var(--tracking-wide);position:-webkit-sticky;position:sticky;text-transform:uppercase;top:0;z-index:1}.query-results tbody tr{transition:all var(--transition-fast)}.query-results tbody tr:hover{background:var(--color-gray-50)}.query-results tbody tr:last-child td{border-bottom:none}.query-results tbody tr:nth-child(2n){background:var(--color-bg-secondary)}.query-results tbody tr:nth-child(2n):hover{background:var(--color-gray-50)}.form-group{margin-bottom:var(--space-5)}.form-group label{color:var(--color-text-primary);display:block;font-size:var(--text-sm);font-weight:var(--font-semibold);letter-spacing:var(--tracking-wide);margin-bottom:var(--space-2)}.form-group input,.form-group select,.form-group textarea{background:var(--color-bg-primary);border:2px solid var(--color-border-primary);border-radius:var(--radius-md);color:var(--color-text-primary);font-family:inherit;font-size:var(--text-base);padding:var(--space-3) var(--space-4);transition:all var(--transition-base);width:100%}.form-group input:hover,.form-group select:hover,.form-group textarea:hover{border-color:var(--color-border-secondary)}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--color-border-focus);box-shadow:0 0 0 3px #2b9b9b1a;outline:none;transform:translateY(-1px)}.form-group textarea{min-height:100px;resize:vertical}.btn{align-items:center;border:none;border-radius:var(--radius-md);cursor:pointer;display:inline-flex;font-size:var(--text-base);font-weight:var(--font-semibold);gap:var(--space-2);justify-content:center;line-height:1;padding:var(--space-3) var(--space-6);text-decoration:none;transition:all var(--transition-base);white-space:nowrap}.btn,.btn-primary{background:var(--color-primary);box-shadow:var(--shadow-sm);color:#fff}.btn-primary:hover,.btn:hover:not(:disabled){background:var(--color-primary-dark);box-shadow:var(--shadow-brand);transform:translateY(-2px)}.btn-primary:active,.btn:active:not(:disabled){box-shadow:var(--shadow-xs);transform:translateY(0)}.btn-secondary{background:var(--color-bg-secondary);border:1px solid var(--color-border-primary);color:var(--color-text-primary)}.btn-secondary:hover{background:var(--color-bg-tertiary);border-color:var(--color-border-secondary);box-shadow:var(--shadow-sm);transform:translateY(-2px)}.btn-ghost{background:#0000;border:1px solid #0000;color:var(--color-text-primary)}.btn-ghost:hover{background:var(--color-bg-secondary);border-color:var(--color-border-primary)}.btn-primary:disabled,.btn-secondary:disabled,.btn:disabled{box-shadow:none;cursor:not-allowed;opacity:.5;transform:none}.btn-block{width:100%}.badge{align-items:center;border-radius:var(--radius-full);display:inline-flex;font-size:var(--text-xs);font-weight:var(--font-semibold);gap:var(--space-1);letter-spacing:var(--tracking-wide);padding:var(--space-1) var(--space-3)}.permission-badge{background:var(--color-primary-pale);border:1px solid var(--color-primary-light);color:var(--color-primary-dark)}.pii-badge{background:var(--color-error-light);border:1px solid var(--color-error);color:var(--color-error-dark)}.provider-badge{border-radius:var(--radius-md);display:inline-block;font-size:var(--text-xs);font-weight:var(--font-semibold);padding:var(--space-1) var(--space-2);transition:all var(--transition-base)}.provider-badge.openai{background-color:#e6f3ff;border:1px solid #b3d9ff;color:#06c}.provider-badge.anthropic{background-color:#fff3cd;border:1px solid #ffeaa7;color:#856404}.provider-badge.local{background-color:var(--color-success-light);border:1px solid var(--color-success);color:var(--color-success-dark)}.user-info{background:var(--color-info-light);border:1px solid var(--color-info);border-radius:var(--radius-lg);padding:var(--space-5)}.user-info h3{color:var(--color-info-dark);font-size:var(--text-xl);font-weight:var(--font-bold);margin:0 0 var(--space-4) 0}.user-info p{color:var(--color-text-primary);font-size:var(--text-sm);margin:var(--space-2) 0}.permissions{gap:var(--space-2);margin-top:var(--space-3)}.security-log{background:var(--color-success-light);border:1px solid var(--color-success);border-radius:var(--radius-lg);margin-top:var(--space-5);padding:var(--space-5)}.security-log h4{color:var(--color-success-dark);font-size:var(--text-base);font-weight:var(--font-semibold);margin:0 0 var(--space-3) 0}.security-log p{color:var(--color-text-primary);font-size:var(--text-sm);margin:var(--space-2) 0}.audit-log{max-height:400px;overflow-y:auto}.audit-entry{background:var(--color-bg-secondary);border:1px solid var(--color-border-primary);border-radius:var(--radius-md);margin-bottom:var(--space-3);padding:var(--space-4);transition:all var(--transition-fast)}.audit-entry:hover{border-color:var(--color-border-secondary);box-shadow:var(--shadow-xs);transform:translateX(4px)}.audit-entry h4{color:var(--color-text-primary);font-size:var(--text-sm);font-weight:var(--font-semibold);margin:0 0 var(--space-2) 0}.audit-entry p{color:var(--color-text-secondary);font-size:var(--text-xs);margin:var(--space-1) 0}.audit-entry:last-child{margin-bottom:0}.error{background:var(--color-error-light);border:1px solid var(--color-error);border-radius:var(--radius-md);color:var(--color-error-dark)}.error,.success{animation:slideDown .3s var(--ease-spring);font-size:var(--text-sm);font-weight:var(--font-medium);margin:var(--space-4) 0;padding:var(--space-4) var(--space-5)}.success{background:var(--color-success-light);border:1px solid var(--color-success);border-radius:var(--radius-md);color:var(--color-success-dark)}@keyframes slideDown{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.loading-overlay{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:var(--color-bg-overlay);bottom:0;display:flex;justify-content:center;left:0;position:absolute;right:0;top:0;z-index:var(--z-modal)}.loading-spinner{animation:spin .8s linear infinite;border:3px solid var(--color-gray-200);border-radius:50%;border-top-color:var(--color-primary);height:48px;width:48px}@keyframes spin{to{transform:rotate(1turn)}}.skeleton{animation:shimmer 1.5s infinite;background:linear-gradient(90deg,var(--color-gray-100) 25%,var(--color-gray-200) 50%,var(--color-gray-100) 75%);background-size:200% 100%;border-radius:var(--radius-md)}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.llm-provider-box{background:var(--color-bg-secondary);border:1px solid var(--color-border-primary);border-radius:var(--radius-md);margin:var(--space-3) 0;overflow:hidden;padding:var(--space-4);position:relative;transition:all var(--transition-base)}.llm-provider-box.provider-changing{animation:providerPulse .6s var(--ease-spring);border-color:var(--color-info);box-shadow:0 0 0 3px #3b82f626}@keyframes providerPulse{0%{box-shadow:0 0 0 0 #3b82f666;transform:scale(1)}50%{box-shadow:0 0 0 8px #3b82f600;transform:scale(1.02)}to{box-shadow:0 0 0 0 #3b82f600;transform:scale(1)}}.routing-reason{animation:fadeIn .5s var(--ease-out) .3s forwards;color:var(--color-text-secondary);font-size:var(--text-sm);font-style:italic;margin-top:var(--space-2);opacity:0}.provider-change-indicator{animation:providerChangeSlide .6s var(--ease-out) forwards;background:linear-gradient(90deg,var(--color-info) 0,var(--color-primary) 100%);height:3px;left:0;position:absolute;top:0;transform:scaleX(0);transform-origin:left;width:100%}@keyframes providerChangeSlide{to{transform:scaleX(1)}}.container:has(.login-form){align-items:center;background:linear-gradient(135deg,#2b9b9b08,#1e5f5f0f),linear-gradient(135deg,#f5f7fa,#e8ecf1);background-attachment:fixed;display:flex;justify-content:center;min-height:100vh;overflow:hidden;padding:var(--space-10) var(--space-5);position:relative}.container:has(.login-form):before{animation:subtleMove 20s ease-in-out infinite;background:radial-gradient(circle at 20% 50%,#2b9b9b14 0,#0000 50%),radial-gradient(circle at 80% 80%,#1e5f5f0f 0,#0000 50%);content:"";height:200%;left:-50%;pointer-events:none;position:absolute;top:-50%;width:200%}@keyframes subtleMove{0%,to{transform:translate(0)}50%{transform:translate(-5%,-5%)}}.card:has(.login-form){animation:cardFadeIn .8s var(--ease-spring);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);background:#fffffffa;border:1px solid #fffc;border-radius:var(--radius-2xl);box-shadow:0 0 0 1px #00000005,0 2px 4px #00000005,0 8px 16px #0000000a,0 16px 32px #0000000a,0 32px 64px #00000014;max-width:800px;padding:var(--space-12) var(--space-10);position:relative;width:100%;z-index:1}@keyframes cardFadeIn{0%{opacity:0;transform:translateY(32px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}.card:has(.login-form):before{background:linear-gradient(90deg,#0000 0,var(--color-primary) 50%,#0000 100%);border-radius:0 0 4px 4px;content:"";height:4px;left:50%;opacity:.6;position:absolute;top:0;transform:translateX(-50%);width:60%}.card:has(.login-form) .header{margin-bottom:var(--space-10);text-align:center}.card:has(.login-form) .header h1{color:var(--color-text-primary);font-size:var(--text-4xl);font-weight:var(--font-extrabold);letter-spacing:var(--tracking-tight);line-height:var(--leading-tight);margin-bottom:var(--space-3)}.card:has(.login-form) .header p{color:var(--color-text-secondary);font-size:var(--text-lg);font-weight:var(--font-normal);line-height:var(--leading-relaxed)}.login-form{width:100%}.login-form .form-group{margin-bottom:var(--space-6)}.login-form .form-group label{color:var(--color-text-primary);display:block;font-size:var(--text-sm);font-weight:var(--font-semibold);letter-spacing:var(--tracking-wide);margin-bottom:var(--space-2)}.login-form .form-group input{background:var(--color-gray-50);border:2px solid var(--color-gray-200);border-radius:var(--radius-lg);color:var(--color-text-primary);font-family:inherit;font-size:var(--text-base);font-weight:var(--font-normal);line-height:var(--leading-normal);padding:var(--space-4) var(--space-5);transition:all var(--transition-base);width:100%}.login-form .form-group input:hover{background:var(--color-bg-primary);border-color:var(--color-gray-300);transform:translateY(-1px)}.login-form .form-group input:focus{background:var(--color-bg-primary);border-color:var(--color-primary);box-shadow:0 0 0 4px #2b9b9b1a,0 1px 3px 0 #00000014,0 4px 8px 0 #0000000a;outline:none;transform:translateY(-2px)}.login-form .form-group input::placeholder{color:var(--color-text-tertiary);font-weight:var(--font-normal)}.login-form .form-group input:not(:placeholder-shown){background:var(--color-bg-primary);border-color:var(--color-gray-300)}.login-form .btn{background:linear-gradient(135deg,var(--color-primary) 0,var(--color-primary-dark) 100%);border:none;border-radius:var(--radius-lg);box-shadow:0 0 0 0 #2b9b9b66,0 2px 4px #0000001a,0 8px 16px #2b9b9b33;color:#fff;cursor:pointer;font-size:var(--text-base);font-weight:var(--font-semibold);letter-spacing:var(--tracking-normal);overflow:hidden;padding:var(--space-4) var(--space-6);position:relative;transition:all var(--transition-slow);width:100%}.login-form .btn:before{background:linear-gradient(90deg,#0000,#ffffff4d 50%,#0000);left:-100%;top:0;transition:left .5s ease}.login-form .btn:after,.login-form .btn:before{content:"";height:100%;position:absolute;width:100%}.login-form .btn:after{border:2px solid var(--color-primary);border-radius:var(--radius-lg);left:50%;opacity:0;top:50%;transform:translate(-50%,-50%);transition:all .4s var(--ease-spring)}.login-form .btn:hover:not(:disabled):before{left:100%}.login-form .btn:hover:not(:disabled):after{height:calc(100% + 8px);opacity:.3;width:calc(100% + 8px)}.login-form .btn:hover:not(:disabled){box-shadow:0 0 0 4px #2b9b9b1a,0 4px 12px #00000026,0 12px 28px #2b9b9b4d;transform:translateY(-3px) scale(1.01)}.login-form .btn:active:not(:disabled){box-shadow:0 0 0 4px #2b9b9b26,0 2px 8px #0000001f,0 6px 16px #2b9b9b33;transform:translateY(-1px) scale(.99)}.login-form .btn:disabled{background:linear-gradient(135deg,#2b9b9bb3,#1e5f5fb3);cursor:not-allowed;opacity:.5;transform:none}.login-form .btn:disabled:before{display:none}.login-form .btn:disabled:after{animation:buttonSpin .7s linear infinite;border:2px solid #ffffff40;border-radius:50%;border-top-color:#fff;content:"";height:18px;left:50%;margin-left:-9px;margin-top:-9px;position:absolute;top:50%;width:18px}@keyframes buttonSpin{to{transform:rotate(1turn)}}.login-form .error{animation:errorSlideIn .4s var(--ease-spring),shake .5s ease-in-out;background:linear-gradient(135deg,#fef5f5,#fee);border:2px solid #feb2b2;border-radius:var(--radius-lg);box-shadow:0 0 0 3px #fc81811a,0 2px 8px #c530301a;color:var(--color-error);font-size:var(--text-sm);font-weight:var(--font-medium);line-height:var(--leading-relaxed);margin-top:var(--space-6);padding:var(--space-4) var(--space-5)}@keyframes errorSlideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@keyframes shake{0%,to{transform:translateX(0)}10%,30%,50%,70%,90%{transform:translateX(-6px)}20%,40%,60%,80%{transform:translateX(6px)}}@media (max-width:480px){.card:has(.login-form){border-radius:var(--radius-xl);padding:var(--space-8) var(--space-6)}.card:has(.login-form) .header h1{font-size:var(--text-3xl)}}.blocked-query-btn{background:var(--color-gray-50);border:1px solid var(--color-border-primary);border-radius:var(--radius-md);color:var(--color-text-primary);cursor:pointer;display:block;font-family:Monaco,Courier New,monospace;font-size:var(--text-sm);overflow:hidden;padding:var(--space-3);text-align:left;text-overflow:ellipsis;transition:all var(--transition-base);white-space:nowrap;width:100%}.blocked-query-btn:hover{background:var(--color-error-light);border-color:var(--color-error);box-shadow:var(--shadow-sm);color:var(--color-error-dark);transform:translateY(-2px)}@media (max-width:768px){.stats-grid{gap:var(--space-4);grid-template-columns:1fr}.dashboard-hero h1{font-size:var(--text-3xl)}.dashboard-hero{padding:var(--space-8) var(--space-6)}.card{padding:var(--space-5)}.query-results{font-size:var(--text-xs)}.query-results td,.query-results th{max-width:150px;padding:var(--space-2) var(--space-3)}}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.mt-auto{margin-top:auto}.mb-0{margin-bottom:0}.hidden{display:none}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-between{justify-content:space-between}.gap-2{gap:var(--space-2)}.gap-4{gap:var(--space-4)}.policy-config-page{background:linear-gradient(180deg,#faf9f7,#f5f3f0);margin:0 auto;max-width:1200px;min-height:100vh;padding:20px}.policy-header{background:linear-gradient(135deg,var(--color-primary) 0,var(--color-primary-dark) 100%);border-radius:16px;box-shadow:0 4px 20px #2b9b9b26;color:#fff;margin-bottom:30px;padding:36px;text-align:left}.policy-header h1{color:#fff!important;font-weight:700;margin:0 0 12px}.policy-header p{color:#fffffff2!important;font-size:1.05rem}.back-button{background:#fff;border:none;border-radius:8px;box-shadow:0 2px 8px #00000014;color:var(--color-primary);cursor:pointer;display:inline-block;font-size:14px;font-weight:600;margin-bottom:20px;padding:10px 20px;transition:all .25s ease}.back-button:hover{box-shadow:0 4px 12px #2b9b9b40;transform:translateY(-2px)}.policy-header h1{color:var(--color-text-primary);font-size:2rem;margin:0 0 8px}.policy-header p{color:var(--color-text-secondary);font-size:1rem;margin:0}.policy-grid{grid-gap:20px;align-items:start;display:grid;gap:20px;grid-template-columns:1fr 1fr}.policy-section{background:#fff;border:1.5px solid #2b9b9b26;border-radius:12px;box-shadow:0 2px 12px #0000000a;padding:24px;transition:all .25s ease}.policy-section:hover{border-color:var(--color-primary);box-shadow:0 4px 20px #2b9b9b1f}.policy-section.full-width{grid-column:1/-1}.policy-section h2{color:var(--color-primary);font-size:1.25rem;font-weight:700;letter-spacing:-.01em;margin:0 0 18px}.role-list{display:flex;flex-direction:column;gap:12px}.role-card{background:#fff;border:1px solid var(--color-border-primary);border-radius:6px;padding:15px}.role-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:10px}.role-header h3{color:var(--color-text-primary);font-size:1rem;margin:0}.user-count{color:var(--color-text-secondary);font-size:.85rem}.permissions{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:12px}.permission-tag{background:var(--color-background-subtle);border-radius:12px;color:var(--color-text-secondary);font-family:Courier New,monospace;font-size:.75rem;padding:2px 8px}.edit-role-btn{background:var(--color-info);border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:.85rem;padding:6px 12px}.add-role-btn{background:var(--color-primary-light);border:2px dashed var(--color-info);border-radius:6px;color:var(--color-info);cursor:pointer;font-size:.9rem;margin-top:15px;padding:12px;width:100%}.provider-list{display:flex;flex-direction:column;gap:12px}.provider-card{align-items:center;background:#fff;border:1px solid var(--color-border-primary);border-radius:6px;display:flex;justify-content:space-between;padding:15px}.provider-info h3{color:var(--color-text-primary);font-size:1rem;margin:0 0 4px}.provider-type{background:var(--color-background-page);border-radius:3px;color:var(--color-text-secondary);font-size:.75rem;font-weight:500;padding:2px 6px}.provider-stats{align-items:end;display:flex;flex-direction:column;gap:4px}.status.connected{color:var(--color-success);font-size:.85rem}.status.pending{color:var(--color-warning);font-size:.85rem}.configure-btn{background:var(--color-primary);border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:.85rem;padding:6px 12px}.add-provider-btn{background:var(--color-primary-light);border:2px dashed var(--color-info);border-radius:6px;color:var(--color-info);cursor:pointer;font-size:.9rem;margin-top:15px;padding:12px;width:100%}.policy-rules{display:flex;flex-direction:column;gap:15px}.policy-rule{background:#fff;border:1px solid var(--color-border-primary);border-radius:8px;padding:20px}.rule-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.rule-header h3{color:var(--color-text-primary);font-size:1.1rem;margin:0}.switch{display:inline-block;height:24px;position:relative;width:50px}.switch input{height:0;opacity:0;width:0}.slider{background-color:var(--color-border-strong);border-radius:24px;bottom:0;cursor:pointer;left:0;right:0;top:0}.slider,.slider:before{position:absolute;transition:.4s}.slider:before{background-color:#fff;border-radius:50%;bottom:3px;content:"";height:18px;left:3px;width:18px}input:checked+.slider{background-color:var(--color-success)}input:checked+.slider:before{transform:translateX(26px)}.rule-action,.rule-condition{color:var(--color-text-secondary);font-size:.9rem;margin:8px 0}.rule-action code,.rule-condition code{background:var(--color-background-page);border-radius:3px;color:var(--color-text-primary);font-family:Courier New,monospace;font-size:.85rem;padding:2px 6px}.edit-policy-btn{background:var(--color-info);border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:.85rem;margin-top:10px;padding:6px 12px}.add-policy-btn{background:var(--color-primary-light);border:2px dashed var(--color-info);border-radius:6px;color:var(--color-info);cursor:pointer;display:block;font-size:.9rem;margin:20px auto 0;padding:12px 20px}.template-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(2,1fr)}.template-card{background:#fff;border:1px solid var(--color-border-primary);border-radius:6px;padding:16px;text-align:center}.template-card.active{background:var(--color-success);border-color:var(--color-success)}.template-card.available{background:var(--color-warning)}.template-card h3{color:var(--color-text-primary);font-size:1rem;margin:0 0 6px}.template-card p{color:var(--color-text-secondary);font-size:.85rem;margin:0 0 8px}.template-status{display:block;font-size:.8rem;margin-bottom:10px}.configure-template-btn{background:var(--color-primary);margin-top:10px}.activate-btn,.configure-template-btn{border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:.85rem;padding:6px 12px}.activate-btn{background:var(--color-warning)}@media (max-width:768px){.policy-grid,.template-grid{grid-template-columns:1fr}.provider-card{align-items:flex-start;flex-direction:column;gap:10px}}.performance-page{background:#f5f7fa;min-height:100vh;padding:20px}.performance-header{background:#fff;border-radius:12px;box-shadow:0 2px 4px #0000001a;margin-bottom:30px;padding:30px;text-align:left}.performance-header .back-button{background:var(--color-background-page);border:1px solid var(--color-border-primary);border-radius:6px;color:var(--color-text-primary);cursor:pointer;display:inline-block;font-size:14px;margin-bottom:20px;padding:8px 16px}.performance-header .back-button:hover{background:#edf2f7}.performance-header h1{color:var(--color-text-primary);font-size:2rem;margin:15px 0 10px}.performance-header p{color:#718096;font-size:1.1rem}.metrics-grid{display:flex;flex-direction:column;gap:20px}@media (min-width:768px){.metrics-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:1fr 1fr}}@media (min-width:1200px){.metrics-grid{gap:30px}}.metric-section{background:#fff;border-radius:12px;box-shadow:0 2px 4px #0000001a;min-width:0;overflow:hidden;padding:20px}@media (min-width:768px){.metric-section{padding:30px}}.metric-section.full-width{grid-column:1/-1}.metric-section h2{color:var(--color-text-primary);font-size:1.4rem;margin:0 0 20px}.response-time-cards{display:flex;flex-direction:column;gap:10px}@media (min-width:480px){.response-time-cards{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(3,1fr)}}@media (min-width:768px){.response-time-cards{gap:20px}}.metric-card{background:var(--color-background-page);border:1px solid var(--color-border-primary);border-radius:8px;padding:20px;text-align:center}.metric-card.average{background:#f0fff4;border-color:#9ae6b4}.metric-card.p95{background:#fffaf0;border-color:#fed7b2}.metric-card.p99{background:#fed7d7;border-color:#fc8181}.metric-label{font-size:.9rem;margin-bottom:5px}.metric-trend{color:var(--color-text-secondary);font-size:.8rem}.metric-indicator{border-radius:4px;display:inline-block;font-size:.85rem;margin-top:10px;padding:4px 12px}.metric-indicator.good{background:#f0fff4;color:#2f855a}.metric-description{color:#718096;font-size:.8rem;margin-top:5px}.throughput-cards{display:flex;flex-direction:column;gap:10px}@media (min-width:480px){.throughput-cards{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(3,1fr)}}@media (min-width:768px){.throughput-cards{gap:20px}}.latency-breakdown{display:flex;flex-direction:column;gap:25px}.service-latency{background:var(--color-background-page);border:1px solid var(--color-border-primary);border-radius:8px;padding:20px}.service-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:15px}.service-header h3{color:var(--color-text-primary);font-size:1.1rem;margin:0}.latency-value{color:var(--color-text-secondary);font-size:1.4rem;font-weight:700}.latency-bar{background:var(--color-border-primary);border-radius:6px;height:12px;margin-bottom:10px;overflow:hidden}.latency-fill{height:100%;transition:width .3s ease}.latency-fill.agent{background:#805ad5}.latency-fill.orchestrator{background:var(--color-success)}.service-description{color:#718096;font-size:.9rem;margin:0}.trend-chart{background:var(--color-background-page);border:1px solid var(--color-border-primary);border-radius:8px;height:200px;justify-content:center;padding:20px}.chart-bars,.trend-chart{align-items:flex-end;display:flex}.chart-bars{gap:3px;height:100%;width:100%}.chart-bar{background:#805ad5;border-radius:4px 4px 0 0;cursor:pointer;flex:1 1;transition:height .3s ease}.chart-bar:hover{background:#744aa1}.chart-label{margin-top:10px}.chart-label,.no-data{color:#718096;font-size:.9rem;text-align:center}.policy-cards{display:flex;flex-direction:column;gap:15px;margin-bottom:30px}@media (min-width:768px){.policy-cards{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(3,1fr)}}.service-health{margin-top:20px}.service-health h3{color:var(--color-text-primary);font-size:1.1rem;margin:0 0 15px}.health-status{display:flex;flex-direction:column;gap:10px}.health-item{align-items:center;background:var(--color-background-page);border:1px solid var(--color-border-primary);border-radius:6px;display:flex;justify-content:space-between;padding:10px 15px}.service-name{color:var(--color-text-secondary);font-weight:500}.health-indicator.healthy{color:#2f855a}.health-indicator.unhealthy{color:#c53030}.activity-list{gap:15px;max-height:400px}.activity-item{border-radius:8px;padding:15px}.activity-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:10px}.activity-type{color:var(--color-text-secondary);font-weight:500}.activity-time{color:#718096;font-size:.85rem}.activity-query{background:#edf2f7;border-radius:4px;font-size:.9rem;margin-bottom:8px;padding:8px}.activity-routing{color:#718096;font-size:.85rem}.provider-name{color:#805ad5;font-weight:500}.live-monitor{animation:slideIn .3s ease-out;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffffa;border:2px solid #2b6cb0;border-radius:12px;box-shadow:0 10px 25px #00000026;position:fixed;-webkit-user-select:none;user-select:none;width:320px;z-index:1000}@keyframes slideIn{0%{opacity:0;transform:translateX(100%)}to{opacity:1;transform:translateX(0)}}.monitor-header{align-items:center;background:#2b6cb0;border-radius:10px 10px 0 0;color:#fff;cursor:grab;display:flex;justify-content:space-between;padding:12px 15px}.monitor-header h3{font-size:1rem;font-weight:600;margin:0}.close-btn{align-items:center;background:none;border:none;color:#fff;cursor:pointer;display:flex;font-size:1.2rem;height:24px;justify-content:center;opacity:.8;padding:0;transition:opacity .2s;width:24px}.close-btn:hover{opacity:1}.monitor-content{padding:15px}.metric-grid{grid-gap:10px;display:grid;gap:10px;grid-template-columns:1fr 1fr;margin-bottom:15px}.metric-box{background:var(--color-background-page);border:1px solid var(--color-border-primary);border-radius:8px;padding:15px;text-align:center;transition:all .3s ease}.metric-box.queries{background:#f0fff4;border-color:#9ae6b4}.metric-box.violations{background:#fed7d7;border-color:#fc8181}.metric-value{animation:pulse 2s infinite;color:var(--color-text-primary);font-size:2rem;font-weight:700;margin-bottom:5px}@keyframes pulse{0%{transform:scale(1)}50%{transform:scale(1.05)}to{transform:scale(1)}}.metric-label{color:#718096;font-size:.75rem;text-transform:uppercase}.service-status{margin-bottom:15px}.service-status h4{color:var(--color-text-secondary);font-size:.85rem;margin:0 0 8px}.status-grid{display:flex;gap:20px}.status-item{align-items:center;color:var(--color-text-secondary);display:flex;font-size:.85rem;gap:6px}.status-dot{animation:blink 2s infinite;border-radius:50%;height:10px;width:10px}.status-dot.healthy{background:#48bb78}.status-dot.unhealthy{background:var(--color-error)}@keyframes blink{0%,to{opacity:1}50%{opacity:.5}}.activity-feed{margin-bottom:10px}.activity-feed h4{color:var(--color-text-secondary);font-size:.85rem;margin:0 0 8px}.activity-list{display:flex;flex-direction:column;gap:8px;max-height:120px;overflow-y:auto}.activity-item{animation:fadeIn .3s ease-out;background:var(--color-background-page);border:1px solid var(--color-border-primary);border-radius:6px;display:flex;font-size:.75rem;gap:8px;padding:8px}@keyframes fadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.activity-icon{font-size:1rem}.activity-details{flex:1 1;min-width:0}.activity-query{color:var(--color-text-primary);font-family:Courier New,monospace;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.activity-meta{align-items:center;display:flex;justify-content:space-between;margin-top:2px}.provider{color:#805ad5;font-weight:500}.time{color:#a0aec0;font-size:.7rem}.no-activity{color:#a0aec0;font-size:.8rem;padding:20px 0;text-align:center}.monitor-footer{align-items:center;border-top:1px solid var(--color-border-primary);color:#718096;display:flex;font-size:.75rem;gap:8px;padding-top:10px}.pulse-indicator{animation:pulse-glow 2s infinite;background:#48bb78;border-radius:50%;height:8px;width:8px}@keyframes pulse-glow{0%{box-shadow:0 0 0 0 #48bb78b3}70%{box-shadow:0 0 0 10px #48bb7800}to{box-shadow:0 0 0 0 #48bb7800}}.activity-list::-webkit-scrollbar{width:4px}.activity-list::-webkit-scrollbar-track{background:#f1f1f1;border-radius:2px}.activity-list::-webkit-scrollbar-thumb{background:#cbd5e0;border-radius:2px}.activity-list::-webkit-scrollbar-thumb:hover{background:#a0aec0}
/*# sourceMappingURL=main.49a7587c.css.map*/