@import url("https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=Montserrat:wght@500;700&family=JetBrains+Mono:wght@400;600&display=swap");:root{--blue-50:#eff6ff;--blue-100:#dbeafe;--blue-200:#bfdbfe;--blue-300:#93c5fd;--blue-400:#60a5fa;--blue-500:#3b82f6;--blue-600:#2563eb;--blue-700:#1d4ed8;--blue-800:#1e40af;--blue-900:#1e3a8a;--gold-50:#fffbeb;--gold-100:#fef3c7;--gold-200:#fde68a;--gold-300:#fcd34d;--gold-400:#fbbf24;--gold-500:#f59e0b;--gold-600:#d97706;--gold-700:#b45309;--gold-800:#92400e;--slate-50:#f8fafc;--slate-100:#f1f5f9;--slate-200:#e2e8f0;--slate-300:#cbd5e1;--slate-400:#94a3b8;--slate-500:#64748b;--slate-600:#475569;--slate-700:#334155;--slate-800:#1e293b;--slate-900:#0f172a;--green-100:#d1fae5;--green-500:#10b981;--green-700:#047857;--green-800:#065f46;--red-100:#fee2e2;--red-500:#ef4444;--white:#ffffff;--black:#000000;--color-bg-app:#f8fafc;--color-bg-surface:#ffffff;--color-bg-muted:#f1f5f9;--color-border-subtle:#e2e8f0;--color-border-strong:#cbd5e1;--color-text-primary:#0f172a;--color-text-secondary:#475569;--color-text-tertiary:#64748b;--color-text-inverse:#ffffff;--color-brand-primary:#2563eb;--color-brand-primary-hover:#1d4ed8;--color-brand-accent:#f59e0b;--color-success:#10b981;--color-warning:#f59e0b;--color-danger:#ef4444;--color-info:#2563eb;--color-focus-ring:rgba(37,99,235,0.4);--score-elite-bg:#d1fae5;--score-elite-fg:#065f46;--score-trusted-bg:#dbeafe;--score-trusted-fg:#1e40af;--score-standard-bg:#f1f5f9;--score-standard-fg:#334155;--score-watch-bg:#fef3c7;--score-watch-fg:#92400e;--score-risk-bg:#fee2e2;--score-risk-fg:#991b1b;--font-sans:"Inter","SF Pro Display",system-ui,-apple-system,sans-serif;--font-display:"Montserrat","Inter",system-ui,sans-serif;--font-mono:"JetBrains Mono","SF Mono",Menlo,Consolas,monospace;--space-0:0;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-7:32px;--space-8:40px;--space-9:48px;--space-10:64px;--space-11:80px;--space-12:96px;--radius-none:0;--radius-xs:4px;--radius-sm:6px;--radius-md:8px;--radius-lg:10px;--radius-xl:12px;--radius-2xl:16px;--radius-3xl:24px;--radius-pill:999px;--shadow-1:0 1px 2px 0 rgba(15,23,42,0.04),0 1px 1px 0 rgba(15,23,42,0.03);--shadow-2:0 2px 4px -1px rgba(15,23,42,0.06),0 4px 8px -2px rgba(15,23,42,0.05);--shadow-3:0 4px 8px -2px rgba(15,23,42,0.08),0 8px 16px -4px rgba(15,23,42,0.06);--shadow-4:0 8px 16px -4px rgba(15,23,42,0.1),0 16px 32px -8px rgba(15,23,42,0.08);--shadow-5:0 16px 32px -8px rgba(15,23,42,0.14),0 32px 64px -16px rgba(15,23,42,0.16);--shadow-focus:0 0 0 4px rgba(37,99,235,0.18);--shadow-focus-danger:0 0 0 4px rgba(239,68,68,0.16);--shadow-brand:0 0 0 1px rgba(37,99,235,0.2),0 8px 24px -4px rgba(37,99,235,0.25);--bp-xs:480px;--bp-sm:640px;--bp-md:768px;--bp-lg:960px;--bp-xl:1024px;--bp-xxl:1280px;--z-dropdown:100;--z-sticky:200;--z-fixed:300;--z-overlay:400;--z-modal:500;--z-popover:600;--z-toast:700;--z-tooltip:800}*,:after,:before{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%;-moz-tab-size:4;tab-size:4}body{font-family:var(--font-sans);font-size:16px;line-height:1.5;color:var(--color-text-primary);background-color:var(--color-bg-app);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);font-weight:700;line-height:1.2;letter-spacing:-.025em}code,kbd,pre,samp{font-family:var(--font-mono)}a{color:var(--color-brand-primary);text-decoration:none}a:hover{color:var(--color-brand-primary-hover)}:focus-visible{outline:none;box-shadow:var(--shadow-focus);border-radius:var(--radius-sm)}img,svg{display:block;max-width:100%}button{cursor:pointer;font-family:inherit}@keyframes cs-spin{to{transform:rotate(1turn)}}@keyframes cs-skeleton-pulse{0%,to{opacity:1}50%{opacity:.45}}.cs-visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.cs-loading{display:flex;flex-direction:column;align-items:center;gap:var(--space-4)}.cs-loading-fullpage{min-height:60vh;display:grid;place-items:center;padding:var(--space-8) var(--space-6)}.cs-loading-spinner{position:relative;display:grid;place-items:center}.cs-loading-ring{position:absolute;inset:0;border-radius:var(--radius-pill);border:3px solid var(--color-border-subtle);border-top-color:var(--color-brand-primary);animation:cs-spin .8s linear infinite}.cs-loading-label{color:var(--color-text-tertiary);font-size:14px}.cs-skeleton{display:block;border-radius:var(--radius-md);background:var(--color-bg-muted);animation:cs-skeleton-pulse 1.4s ease-in-out infinite}.cs-skeleton-text{display:grid;grid-gap:var(--space-3);gap:var(--space-3)}.cs-skeleton-card{display:grid;grid-gap:var(--space-4);gap:var(--space-4);padding:var(--space-6);border:1px solid var(--color-border-subtle);border-radius:var(--radius-xl);background:var(--color-bg-surface)}.cs-skeleton-contract{max-width:880px;margin:var(--space-8) auto;padding:0 var(--space-6);display:grid;grid-gap:var(--space-5);gap:var(--space-5)}.cs-error-state{max-width:480px;margin:var(--space-9) auto;padding:var(--space-8) var(--space-6);display:flex;flex-direction:column;align-items:center;text-align:center;gap:var(--space-4)}.cs-error-icon{color:var(--color-danger)}.cs-error-title{font-family:var(--font-display);font-size:20px;font-weight:700;color:var(--color-text-primary);margin:0}.cs-error-desc{color:var(--color-text-secondary);font-size:15px;line-height:1.6;margin:0}.cs-error-retry{display:inline-flex;align-items:center;justify-content:center;margin-top:var(--space-2);min-height:44px;padding:0 var(--space-6);border:none;border-radius:var(--radius-lg);background:var(--color-brand-primary);color:var(--color-text-inverse);font-weight:600;font-size:15px;text-decoration:none;transition:background .15s ease}.cs-error-retry:hover{background:var(--color-brand-primary-hover);color:var(--color-text-inverse)}@media (prefers-reduced-motion:reduce){.cs-loading-ring,.cs-skeleton{animation:none}}.skip-link{position:absolute;top:-100%;left:0;z-index:9999;padding:.75rem 1.5rem;background:var(--color-brand-primary,#2563eb);color:#fff;font-weight:600;text-decoration:none;border-radius:0 0 .5rem 0;transition:top .2s ease}.skip-link:focus{top:0}