:root{--font-heading:"sofia",sans-serif;--font-body:"neue-haas-unica",sans-serif;--color-accent:#1a1f36;--color-accent-hover:#0d1117;--color-accent-light:#f0f1f4;--color-accent-subtle:#f6f7f9;--color-text-primary:#1a1f36;--color-text-secondary:#4f566b;--color-text-tertiary:#697386;--color-text-muted:#8792a2;--color-text-placeholder:#a3acb9;--color-bg:#ffffff;--color-bg-secondary:#f6f9fc;--color-bg-tertiary:#f1f5f9;--color-bg-hover:#f9fafb;--color-bg-active:#f0f1f4;--color-border:#e3e8ee;--color-border-light:#edf0f4;--color-border-focus:#1a1f36;--color-success:#0cbc87;--color-success-bg:#ecfdf5;--color-warning:#f5a623;--color-warning-bg:#fffbeb;--color-error:#e25950;--color-error-bg:#fef2f2;--color-info:#5469d4;--color-info-bg:#eff1fc;--shadow-xs:0 1px 2px rgba(0,0,0,0.04);--shadow-sm:0 1px 3px rgba(0,0,0,0.08);--shadow-md:0 4px 12px rgba(0,0,0,0.08);--shadow-lg:0 8px 24px rgba(0,0,0,0.1);--shadow-focus:0 0 0 3px rgba(26,31,54,0.15);--radius-sm:4px;--radius-md:6px;--radius-lg:8px;--radius-xl:12px;--radius-full:9999px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--space-12:48px;--space-16:64px;--sidebar-width:240px;--header-height:56px;--content-max-width:1200px;--transition-fast:120ms ease;--transition-base:200ms ease;--transition-slow:300ms ease}*,:after,:before{box-sizing:border-box;margin:0;padding:0}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}body{font-family:var(--font-body);font-weight:400;font-size:14px;line-height:1.6;letter-spacing:-.01em;color:var(--color-text-secondary);background:var(--color-bg)}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);font-weight:700;letter-spacing:-.03em;color:var(--color-text-primary);line-height:1.2}h1{font-size:28px}h2{font-size:22px}h3{font-size:17px}h4{font-size:15px}a{color:var(--color-accent);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--color-accent-hover)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;font-family:var(--font-body);font-size:14px;font-weight:500;letter-spacing:-.01em;line-height:1;padding:8px 16px;border-radius:var(--radius-md);border:1px solid transparent;cursor:pointer;transition:all var(--transition-fast);white-space:nowrap}.btn-primary{background:var(--color-accent);color:#ffffff;border-color:var(--color-accent)}.btn-primary:hover{background:var(--color-accent-hover);border-color:var(--color-accent-hover);box-shadow:var(--shadow-sm)}.btn-secondary{background:var(--color-bg);color:var(--color-text-secondary);border-color:var(--color-border)}.btn-secondary:hover{background:var(--color-bg-hover);box-shadow:var(--shadow-xs)}.btn-ghost{background:transparent;color:var(--color-text-tertiary);border-color:transparent}.btn-ghost:hover{color:var(--color-text-secondary);background:var(--color-bg-hover)}.btn-sm{font-size:13px;padding:6px 12px}.btn-lg{font-size:15px;padding:10px 20px}.card{box-shadow:var(--shadow-sm)}.card,.card-flat{background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-lg)}input[type=date],input[type=email],input[type=number],input[type=search],input[type=tel],input[type=text],select,textarea{font-family:var(--font-body);font-size:14px;letter-spacing:-.01em;color:var(--color-text-primary);background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:8px 12px;outline:none;transition:border-color var(--transition-fast),box-shadow var(--transition-fast);width:100%}input:focus,select:focus,textarea:focus{border-color:var(--color-border-focus);box-shadow:var(--shadow-focus)}input::placeholder,textarea::placeholder{color:var(--color-text-placeholder)}table{width:100%;border-collapse:collapse}th{font-family:var(--font-body);font-size:12px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--color-text-muted);text-align:left;padding:10px 16px;border-bottom:1px solid var(--color-border)}td{font-size:14px;color:var(--color-text-secondary);padding:12px 16px;border-bottom:1px solid var(--color-border-light)}tr:hover td{background:var(--color-bg-hover)}.tabs{display:flex;gap:0;border-bottom:1px solid var(--color-border)}.tab{font-family:var(--font-body);font-size:14px;font-weight:500;color:var(--color-text-tertiary);padding:12px 16px;border:none;background:none;cursor:pointer;position:relative;transition:color var(--transition-fast)}.tab:hover{color:var(--color-text-primary)}.tab.active{color:var(--color-accent)}.tab.active:after{content:"";position:absolute;bottom:-1px;left:0;right:0;height:2px;background:var(--color-accent);border-radius:2px 2px 0 0}.badge{display:inline-flex;align-items:center;font-size:12px;font-weight:500;padding:2px 8px;border-radius:var(--radius-full);letter-spacing:0}.badge-success{background:#f0f1f4;color:#1a1f36}.badge-warning{background:#f0f1f4;color:#697386}.badge-error{background:var(--color-error-bg);color:var(--color-error)}.badge-info{background:#f0f1f4;color:#4f566b}.badge-neutral{background:var(--color-bg-tertiary);color:var(--color-text-tertiary)}.metric-card{background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-5)}.metric-label{font-size:13px;font-weight:500;color:var(--color-text-tertiary);margin-bottom:var(--space-1)}.metric-value{font-family:var(--font-heading);font-size:24px;font-weight:700;letter-spacing:-.03em;color:var(--color-text-primary)}.metric-change{font-size:12px;margin-top:var(--space-1)}.empty-state,.metric-change{color:var(--color-text-muted)}.empty-state{border:2px dashed var(--color-border);border-radius:var(--radius-lg);padding:var(--space-12) var(--space-8);text-align:center}.empty-state h3{color:var(--color-text-primary);margin-bottom:var(--space-2)}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--color-text-muted)}::selection{background:var(--color-accent-light);color:var(--color-text-primary)}.section-divider{height:1px;background:var(--color-border);margin:var(--space-6) 0}