:root{--color-primary: #4F46E5;--color-primary-hover: #4338CA;--color-primary-muted-bg: #EEF2FF;--color-secondary: #14B8A6;--color-accent: #F59E0B;--color-text-primary: #0F172A;--color-text-secondary: #64748B;--color-text-muted: #94A3B8;--color-surface: #FFFFFF;--color-background: #F8FAFC;--color-border: #E2E8F0;--color-danger: #EF4444;--color-danger-bg: #FEF2F2;--color-success: #10B981;--color-success-bg: #D1FAE5;--color-warning: #F59E0B;--color-card-shadow: 0 1px 3px rgba(0,0,0,.08), 0 1px 2px rgba(0,0,0,.04);--color-card-shadow-hover: 0 4px 12px rgba(0,0,0,.1), 0 2px 4px rgba(0,0,0,.06);--color-sidebar-bg: #0F172A;--color-sidebar-bg-flat: #0F172A;--color-sidebar-active-bg: #1E293B;--color-sidebar-text: #94A3B8;--color-sidebar-text-active: #FFFFFF;--color-sidebar-border: #1E293B;--color-header-bg: #FFFFFF;--color-input-bg: #FFFFFF;--color-focus-ring: rgba(79, 70, 229, .25);--color-selection-bg: rgba(79, 70, 229, .2);--color-selection-text: #0F172A;--stage-complete-bg: #f0fdf4;--stage-complete-border: #bbf7d0;--stage-complete-icon-bg: rgba(34, 197, 94, .12);--stage-requested-bg: #f5f3ff;--stage-requested-border: #ddd6fe;--stage-requested-icon-bg: rgba(124, 58, 237, .12)}*{box-sizing:border-box;margin:0;padding:0}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:var(--color-background);color:var(--color-text-primary);-webkit-font-smoothing:antialiased}::selection{background:var(--color-selection-bg);color:var(--color-selection-text)}a{color:var(--color-primary)}a:hover{color:var(--color-primary-hover)}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--color-background)}::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--color-text-muted)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}@viewport{width:device-width}.card-interactive{transition:box-shadow .2s ease,transform .2s ease}.card-interactive:hover{box-shadow:var(--color-card-shadow-hover);transform:translateY(-2px)}input:focus,textarea:focus,select:focus{border-color:var(--color-primary)!important;box-shadow:0 0 0 3px var(--color-focus-ring)!important;outline:none}button:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}a:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px;border-radius:2px}button:hover:not(:disabled){filter:brightness(.95)}button:active:not(:disabled){transform:scale(.98)}
