*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--font: -apple-system, BlinkMacSystemFont, "Inter", "Segoe UI", system-ui, sans-serif;--font-mono: "JetBrains Mono", "Fira Code", "Cascadia Code", monospace;--page: #F5F6F8;--surface: #FFFFFF;--surface-2: #F1F3F5;--surface-3: #E8EAED;--border: rgba(0, 0, 0, .07);--border-strong: rgba(0, 0, 0, .12);--text-1: #0D1117;--text-2: #4B5563;--text-3: #9CA3AF;--accent: #6366F1;--accent-soft: #EEF2FF;--accent-border: #C7D2FE;--c-electronics: #2563EB;--c-mechanical: #7C3AED;--c-firmware: #059669;--c-certification: #D97706;--c-logistics: #4B5563;--critical: #D97706;--critical-soft: #FFFBEB;--success: #059669;--success-soft: #ECFDF5;--danger: #DC2626;--danger-soft: #FEF2F2;--shadow-1: 0 1px 2px rgba(0,0,0,.04), 0 1px 4px rgba(0,0,0,.04);--shadow-2: 0 2px 8px rgba(0,0,0,.06), 0 1px 3px rgba(0,0,0,.05);--shadow-3: 0 8px 24px rgba(0,0,0,.08), 0 2px 6px rgba(0,0,0,.04);--shadow-4: 0 16px 40px rgba(0,0,0,.1), 0 4px 12px rgba(0,0,0,.04);--r-sm: 6px;--r-md: 10px;--r-lg: 14px;--r-xl: 20px;--t-fast: .12s ease;--t-base: .18s ease;--t-spring: .3s cubic-bezier(.32, .72, 0, 1);--color-border-tertiary: var(--border);--color-border-secondary: var(--border-strong);--color-border-primary: var(--border);--color-text-primary: var(--text-1);--color-text-secondary: var(--text-2);--color-text-tertiary: var(--text-3);--color-background-primary: var(--surface);--color-background-secondary: var(--surface-2);--color-background-danger: var(--danger-soft);--color-text-danger: var(--danger);--border-radius-md: var(--r-md)}html,body,#root{height:100%;font-family:var(--font);color:var(--text-1);background:var(--page);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}button{cursor:pointer;font-family:inherit}.react-flow__background pattern circle{fill:#cbd5e1}.react-flow__handle{width:10px!important;height:10px!important;border:2px solid white!important;border-radius:50%!important;transition:transform var(--t-fast)}.react-flow__handle:hover{transform:scale(1.3)}.react-flow__edge-path{transition:opacity .18s ease,stroke-width .18s ease}.react-flow__minimap,.react-flow__controls{border-radius:var(--r-md)!important;overflow:hidden;border:1px solid var(--border)!important;box-shadow:var(--shadow-1)}.react-flow__controls-button{background:var(--surface)!important;border:none!important;border-bottom:1px solid var(--border)!important;color:var(--text-2)!important}.react-flow__controls-button:hover{background:var(--surface-2)!important}.react-flow__controls-button:last-child{border-bottom:none!important}.react-flow__controls-button svg{fill:var(--text-2)!important}@keyframes slideInRight{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}@keyframes fadeUp{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes barGrow{0%{width:0}}::-webkit-scrollbar{width:5px;height:5px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--surface-3);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--text-3)}
