@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=Outfit:wght@400;500;700;800&family=JetBrains+Mono:wght@400;700&display=swap";:root{--c-bg:#0a0c12;--c-bg-2:#0f1219;--c-bg-3:#161b27;--c-surface:#1c2235;--c-surface-2:#232b40;--c-border:#2a3350;--c-border-2:#3a4a6b;--c-primary:#3b82f6;--c-primary-h:#2563eb;--c-primary-glow:#3b82f633;--c-accent:#06b6d4;--c-accent-h:#0891b2;--c-success:#10b981;--c-warning:#f59e0b;--c-danger:#ef4444;--c-text:#e2e8f0;--c-text-2:#94a3b8;--c-text-3:#8494a7;--c-risk-low:#10b981;--c-risk-med:#f59e0b;--c-risk-high:#ef4444;--font-heading:"Outfit", system-ui, sans-serif;--font-sans:"Inter", system-ui, sans-serif;--font-mono:"JetBrains Mono", monospace;--font-xs:.7rem;--font-sm:.85rem;--font-md:1rem;--font-lg:1.2rem;--font-xl:1.4rem;--sp-1:4px;--sp-1_5:6px;--sp-2:8px;--sp-3:12px;--sp-4:16px;--sp-5:20px;--sp-6:24px;--sp-8:32px;--sp-10:40px;--layout-py:100px;--layout-px:24px;--hero-py:100px;--gap-md:24px;--gap-lg:32px;--gap-xl:64px;--form-pad:32px;--r-sm:6px;--r-md:10px;--r-lg:16px;--r-xl:24px;--shadow-sm:0 1px 3px #0006;--shadow-md:0 4px 16px #00000080;--shadow-lg:0 8px 32px #0009;--shadow-glow:0 0 24px var(--c-primary-glow);--t-fast:.12s ease;--t-med:.22s ease;--t-slow:.38s ease}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;font-size:16px}body{font-family:var(--font-sans);background:var(--c-bg);color:var(--c-text);-webkit-font-smoothing:antialiased;height:100dvh;line-height:1.6;overflow:hidden}#root{flex-direction:column;height:100dvh;display:flex}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:var(--c-bg-2)}::-webkit-scrollbar-thumb{background:var(--c-border-2);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--c-primary)}h1{letter-spacing:-.03em;font-size:1.75rem;font-weight:800}h2{letter-spacing:-.02em;font-size:1.25rem;font-weight:700}h3{font-size:1rem;font-weight:600}h4{font-size:.875rem;font-weight:600}.text-primary{color:var(--c-primary)}.text-accent{color:var(--c-accent)}.text-success{color:var(--c-success)}.text-warning{color:var(--c-warning)}.text-danger{color:var(--c-danger)}.text-muted{color:var(--c-text-2)}.text-xs{font-size:.75rem}.text-sm{font-size:.875rem}.text-mono{font-family:var(--font-mono)}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-1{gap:var(--sp-1)}.gap-2{gap:var(--sp-2)}.gap-3{gap:var(--sp-3)}.gap-4{gap:var(--sp-4)}.gap-5{gap:var(--sp-5)}.gap-6{gap:var(--sp-6)}.w-full{width:100%}.grow{flex-grow:1}.shrink-0{flex-shrink:0}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.relative{position:relative}.absolute{position:absolute}.inset-0{inset:0}.text-uppercase{text-transform:uppercase!important}.flex-wrap{flex-wrap:wrap!important}.grid-2-col{grid-template-columns:1fr 1fr!important;gap:16px!important;display:grid!important}.grid-3-col{grid-template-columns:1fr 1fr 1fr!important;gap:16px!important;display:grid!important}.grid-2-col-wide{grid-template-columns:1.4fr 1fr!important;gap:24px!important;display:grid!important}.grid-2-col-ratio{grid-template-columns:1.2fr 2fr!important;gap:0!important;display:grid!important}.grid-2-col-narrow{grid-template-columns:1fr 1.2fr!important;gap:10px!important;display:grid!important}.flex-row-center{align-items:center;display:flex}.space-between{justify-content:space-between;align-items:center;display:flex}.flex-col-4{gap:var(--sp-1);flex-direction:column;display:flex}.flex-col-6{gap:var(--sp-1_5);flex-direction:column;display:flex}.flex-col-8{gap:var(--sp-2);flex-direction:column;display:flex}.flex-col-12{gap:var(--sp-3);flex-direction:column;display:flex}.flex-col-16{gap:var(--sp-4);flex-direction:column;display:flex}.flex-col-20{gap:var(--sp-5);flex-direction:column;display:flex}.flex-col-24{gap:var(--sp-6);flex-direction:column;display:flex}.flex-row-8{align-items:center;gap:var(--sp-2);display:flex}.flex-row-12{align-items:center;gap:var(--sp-3);display:flex}.label-section{text-transform:uppercase;letter-spacing:.05em;color:var(--c-text-2);font-size:.85rem;font-weight:700}.label-subsection{color:var(--c-text-3);text-transform:uppercase;font-size:.72rem;font-weight:700}.label-xs{color:var(--c-text-3);text-transform:uppercase;font-size:.65rem;font-weight:600}.divider{border:none;border-top:1px solid var(--c-border)}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes slideIn{0%{opacity:0;transform:translate(-12px)}to{opacity:1;transform:translate(0)}}@keyframes pulse-dot{0%,to{opacity:1;transform:scale(1)}50%{opacity:.6;transform:scale(1.4)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes marquee{0%{transform:translate(0)}to{transform:translate(-50%)}}.animate-fade-in{animation:fadeIn var(--t-med) both}.animate-slide-in{animation:slideIn var(--t-med) both}.animate-spin{animation:1s linear infinite spin}.spinner{border:2px solid var(--c-border);border-top-color:var(--c-primary);border-radius:50%;width:32px;height:32px;animation:.8s linear infinite spin}.animate-pulse-dot{animation:1.4s ease-in-out infinite pulse-dot}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}input[type=range]::-webkit-slider-runnable-track{background:linear-gradient(90deg, var(--c-primary) 0%, var(--c-accent) 100%);border:none;border-radius:4px;height:8px}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;cursor:pointer;background:radial-gradient(circle at 35% 35%,#60a5fa,#2563eb);border:2px solid #3b82f699;border-radius:50%;width:22px;height:22px;margin-top:-7px;transition:box-shadow .2s;box-shadow:0 0 12px #3b82f666}input[type=range]::-webkit-slider-thumb:hover{box-shadow:0 0 20px #3b82f6b3}input[type=range]:focus-visible{outline:none}input[type=range]:focus-visible::-webkit-slider-thumb{box-shadow:0 0 0 4px #3b82f64d,0 0 12px #3b82f666}input[type=range]::-moz-range-track{background:linear-gradient(90deg, var(--c-primary), var(--c-accent));border:none;border-radius:4px;height:8px}input[type=range]::-moz-range-thumb{cursor:pointer;background:radial-gradient(circle at 35% 35%,#60a5fa,#2563eb);border:2px solid #3b82f699;border-radius:50%;width:22px;height:22px;box-shadow:0 0 12px #3b82f666}.btn:focus-visible,.input-premium:focus-visible,a:focus-visible{outline:2px solid var(--c-primary);outline-offset:2px;border-radius:8px}.skeleton{background:linear-gradient(90deg, var(--c-surface) 25%, var(--c-surface-2) 50%, var(--c-surface) 75%);border-radius:var(--r-md);background-size:200% 100%;animation:1.6s infinite shimmer}input,button,select,textarea,label,span,p,a,div,th,td{font-family:inherit}body,input,button,select,textarea,p,span,label,a,th,td{font-family:var(--font-sans)}h1,h2,h3,h4{font-family:var(--font-heading)!important}@media screen{.print-only{display:none!important}}.chain-builder-close-btn:hover{color:#fca5a5!important;background:#ef444414!important;border-color:#ef44444d!important}.chain-builder-alt-btn:hover{color:#f59e0b!important;border-color:#f59e0b99!important}.chain-builder-popover-item:hover{background:#ffffff0f!important}.roi-pdf-btn:hover{color:#fff!important;background:#ffffff1a!important}.roi-add-pkg-btn:hover{color:#fff!important;background:#f59e0b14!important;border-color:#f59e0b66!important}.pkg-delete-btn:hover{opacity:1!important}.island-add-pkg-btn:hover{color:#fff!important;background:#f59e0b14!important;border-color:#f59e0b66!important}.cat-clear-btn:hover{opacity:1!important}.wb-sidebar-toggle:hover{border-color:var(--c-primary)!important;box-shadow:0 0 10px #3b82f64d!important}.wb-next-btn:hover{box-shadow:0 0 24px #2563eb99, var(--shadow-lg)!important;transform:translate(-50%)scale(1.04)!important}.edit-chain-btn:hover{background:linear-gradient(135deg,#2563eb4d,#06b6d440)!important;border-color:#06b6d4cc!important;transform:translateY(-1px)!important;box-shadow:0 6px 20px #06b6d433!important}.module-delete-btn:hover{color:#ef4444!important}.add-module-type-btn:hover{color:#fff!important;background:#3b82f61f!important;border-color:#06b6d466!important;box-shadow:0 0 12px #06b6d426!important}.tablet-delete-btn:hover{opacity:1!important}.tablet-next-btn:hover{transform:scale(1.02)!important;box-shadow:0 0 24px #2563eb80!important}.topology-option-row:hover{background:#ffffff0d!important}.onboarding-generate-btn:hover{transform:translateY(-1px)!important;box-shadow:0 6px 24px #2563eb59!important}.question-option-btn:hover,.brand-option-btn:hover{background:#3b82f614!important;border-color:#06b6d499!important}.btn{align-items:center;gap:var(--sp-2);padding:var(--sp-2) var(--sp-4);border-radius:var(--r-md);font-family:var(--font-sans);cursor:pointer;transition:all var(--t-fast);white-space:nowrap;border:none;font-size:.875rem;font-weight:600;text-decoration:none;display:inline-flex}.btn:disabled{opacity:.45;cursor:not-allowed}.btn-primary{background:var(--c-primary);color:#fff;box-shadow:0 2px 8px #3b82f64d}.btn-primary:hover:not(:disabled){background:var(--c-primary-h);transform:translateY(-1px);box-shadow:0 4px 16px #3b82f673}.btn-ghost{color:var(--c-text-2);border:1px solid var(--c-border);background:0 0}.btn-ghost:hover:not(:disabled){background:var(--c-surface);color:var(--c-text);border-color:var(--c-border-2)}.btn-danger{color:var(--c-danger);background:#ef444426;border:1px solid #ef44444d}.btn-danger:hover:not(:disabled){background:#ef444440}.btn-secondary{background:var(--c-surface-2);color:var(--c-text-2);border:1px solid var(--c-border)}.btn-secondary:hover:not(:disabled){background:var(--c-surface);color:var(--c-text);border-color:var(--c-border-2)}.btn-sm{padding:var(--sp-1) var(--sp-3);font-size:.8rem}.btn-lg{padding:var(--sp-3) var(--sp-6);font-size:1rem}.btn-icon{padding:var(--sp-2);border-radius:var(--r-sm)}.btn-gradient{color:#fff;background:linear-gradient(135deg,#2563eb,#06b6d4)}.btn-gradient:hover:not(:disabled){opacity:.9;transform:translateY(-1px);box-shadow:0 4px 20px #06b6d459}.card{background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--r-lg);box-shadow:var(--shadow-md)}.input{background:var(--c-bg-2);border:1px solid var(--c-border);border-radius:var(--r-md);width:100%;color:var(--c-text);font-family:var(--font-sans);padding:var(--sp-2) var(--sp-3);transition:border-color var(--t-fast), box-shadow var(--t-fast);outline:none;font-size:.875rem}.input:focus{border-color:var(--c-primary);box-shadow:0 0 0 3px var(--c-primary-glow)}.input::placeholder{color:var(--c-text-3)}textarea.input{resize:vertical;min-height:80px;line-height:1.5}.select{appearance:none;background:var(--c-bg-2) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%2364748b' stroke-width='2'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") no-repeat right 10px center;border:1px solid var(--c-border);border-radius:var(--r-md);color:var(--c-text);font-family:var(--font-sans);padding:var(--sp-2) 32px var(--sp-2) var(--sp-3);cursor:pointer;transition:border-color var(--t-fast);outline:none;font-size:.875rem}.select:focus{border-color:var(--c-primary);box-shadow:0 0 0 3px var(--c-primary-glow)}.label{color:var(--c-text-2);letter-spacing:.05em;text-transform:uppercase;margin-bottom:var(--sp-1);font-size:.75rem;font-weight:600;display:block}.react-flow__background{background:var(--c-bg)!important}.react-flow__controls{background:var(--c-surface)!important;border:1px solid var(--c-border)!important;border-radius:var(--r-md)!important;box-shadow:var(--shadow-md)!important}.react-flow__controls-button{background:var(--c-surface)!important;border-color:var(--c-border)!important;color:var(--c-text-2)!important}.react-flow__controls-button:hover{background:var(--c-surface-2)!important;color:var(--c-text)!important}.react-flow__minimap{background:var(--c-surface)!important;border:1px solid var(--c-border)!important;border-radius:var(--r-md)!important}.react-flow__edge-path{stroke-width:2px;stroke:var(--c-border-2)!important}.react-flow__edge.selected .react-flow__edge-path{stroke:var(--c-primary)!important}.react-flow__handle{border:2px solid var(--c-primary)!important;background:var(--c-bg)!important;width:10px!important;height:10px!important}.module-node{background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--r-lg);min-width:240px;box-shadow:var(--shadow-md);transition:box-shadow var(--t-fast), border-color var(--t-fast);overflow:hidden}.module-node:hover{box-shadow:var(--shadow-lg);border-color:var(--c-border-2)}.module-node.selected{border-color:var(--c-primary);box-shadow:var(--shadow-glow)}.module-node-header{padding:var(--sp-3) var(--sp-4);align-items:center;gap:var(--sp-2);border-bottom:1px solid var(--c-border);display:flex}.module-node-icon{border-radius:var(--r-sm);flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:16px;display:flex}.module-node-body{padding:var(--sp-3) var(--sp-4)}.module-node-footer{padding:var(--sp-2) var(--sp-4);background:var(--c-bg-2);border-top:1px solid var(--c-border);justify-content:space-between;align-items:center;display:flex}.mod-conf-readonly{border:1px solid var(--c-border);background:#ffffff05;border-radius:12px;padding:16px}.mod-conf-card{background:#ffffff08;border:1px solid #ffffff14;border-radius:10px;padding:10px 14px;transition:all .2s}.mod-conf-card-header{align-items:center;gap:10px;display:flex}.mod-conf-icon-btn{color:var(--c-text-3);cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;padding:4px;transition:all .15s;display:flex}.mod-conf-edit-btn{color:var(--c-primary);cursor:pointer;background:0 0;border:none;border-radius:6px;align-items:center;gap:4px;padding:4px 8px;font-family:inherit;font-size:.78rem;font-weight:600;transition:background .15s;display:flex}.mod-conf-edit-btn:hover{background:#3b82f61a}.mod-conf-cat-chip{color:var(--c-text-2);background:#ffffff0a;border:1px solid #ffffff0f;border-radius:6px;align-items:center;gap:3px;padding:2px 8px;font-size:.72rem;font-weight:500;line-height:20px;display:inline-flex}.mod-conf-add-cat-btn{color:var(--c-primary);cursor:pointer;background:#6366f10f;border:1px dashed #6366f133;border-radius:6px;align-items:center;gap:3px;padding:2px 8px;font-family:inherit;font-size:.72rem;font-weight:600;line-height:20px;transition:all .15s;display:inline-flex}.mod-conf-menu{z-index:100;background:#0f172afa;border:1px solid #ffffff1f;border-radius:8px;flex-direction:column;gap:2px;max-height:220px;margin-bottom:4px;padding:6px;display:flex;position:absolute;bottom:100%;left:0;overflow-y:auto;box-shadow:0 12px 32px #00000080}.mod-conf-menu-wide{z-index:100;background:#0f172afa;border:1px solid #ffffff1f;border-radius:12px;max-height:320px;margin-bottom:6px;padding:8px;position:absolute;bottom:100%;left:0;right:0;overflow-y:auto;box-shadow:0 16px 48px #00000080}.mod-conf-menu-item{width:100%;color:var(--c-text-2);cursor:pointer;text-align:left;background:0 0;border:none;border-radius:4px;align-items:center;gap:6px;padding:4px 8px;font-family:inherit;font-size:.78rem;transition:background .1s;display:flex}.mod-conf-menu-item:hover{background:#ffffff0f}.mod-conf-add-mod-btn{width:100%;color:var(--c-primary);cursor:pointer;background:#6366f10f;border:1px dashed #6366f140;border-radius:10px;justify-content:center;align-items:center;gap:6px;padding:10px 16px;font-family:inherit;font-size:.85rem;font-weight:600;transition:all .2s;display:flex}.mod-conf-warning{color:#fbbf24;background:#f59e0b14;border:1px solid #f59e0b47;border-radius:10px;align-items:flex-start;gap:10px;padding:12px 14px;font-size:.82rem;line-height:1.5;animation:.25s both fadeIn;display:flex}.mod-conf-empty{color:#ef4444;text-align:center;background:#ef444414;border:1px solid #ef444433;border-radius:10px;padding:12px 16px;font-size:.82rem}.mod-conf-actions{gap:10px;display:flex}.mod-conf-cancel-btn{color:var(--c-text-2);cursor:pointer;background:#ffffff0a;border:1px solid #ffffff1a;border-radius:10px;flex:1;padding:12px 20px;font-family:inherit;font-size:.88rem;font-weight:600}.mod-conf-hint{color:var(--c-text-3);opacity:.8;font-size:.78rem;font-style:italic}@keyframes handle-shake{0%,to{transform:translate(0)translateY(-50%)}20%,60%{transform:translate(-4px)translateY(-50%)}40%,80%{transform:translate(4px)translateY(-50%)}}.handle-shake-error{background:var(--c-danger)!important;box-shadow:0 0 12px var(--c-danger)!important;border-color:#fecaca!important;animation:.3s ease-in-out handle-shake!important}.expert-mode-toggle-icon{z-index:50;border:1px solid var(--c-border);cursor:pointer;width:42px;height:42px;box-shadow:var(--shadow-lg), 0 4px 20px #0006;-webkit-user-select:none;user-select:none;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:50%;justify-content:center;align-items:center;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;position:absolute;top:16px;right:16px}.expert-mode-toggle-icon.inactive{color:var(--c-text-2);background:#161c2dcc}.expert-mode-toggle-icon.inactive:hover{color:var(--c-text);background:#161c2df2;border-color:#3b82f680}.expert-mode-toggle-icon.active{color:#fff;box-shadow:0 0 15px #2563eb66, var(--shadow-lg), 0 4px 20px #0006;background:linear-gradient(135deg,#2563eb,#1d4ed8);border-color:#3b82f699;transform:scale(1.05)}.expert-mode-toggle-icon.active:hover{box-shadow:0 0 20px #3b82f699, var(--shadow-lg), 0 4px 20px #0006;background:linear-gradient(135deg,#3b82f6,#2563eb)}.handle-label{color:var(--c-text-2);border:1px solid var(--c-border);white-space:nowrap;pointer-events:none;font-size:6.5px;font-weight:800;font-family:var(--font-mono);box-shadow:var(--shadow-sm);z-index:1000;text-transform:uppercase;letter-spacing:.02em;background:#0a0c12eb;border-radius:4px;padding:2px 5px;transition:opacity .15s,transform .15s;position:absolute}.handle-label-in{right:calc(100% + 6px);transform:translateY(-50%)}.handle-label-out{left:calc(100% + 6px);transform:translateY(-50%)}@keyframes pulse-badge{0%,to{border-color:#ef4444b3;box-shadow:0 0 #ef444466}50%{border-color:#ef4444;box-shadow:0 0 0 5px #ef444426}}.badge-missing-pulse{animation:2s infinite pulse-badge}.react-flow__edges{pointer-events:none;z-index:1000!important}.react-flow__edge{pointer-events:all;transition:opacity var(--t-med)!important}.react-flow__nodes{z-index:10!important}.wiring-mode-off .react-flow__edge:not(.process-chain-edge){opacity:0!important;pointer-events:none!important;visibility:hidden!important}.wiring-mode-off .react-flow__handle:not(.process-chain-handle){opacity:0!important;pointer-events:none!important}.wiring-mode-off .react-flow__edge.process-chain-edge,.wiring-mode-off .react-flow__handle.process-chain-handle,.wiring-mode-on .react-flow__edge,.wiring-mode-on .react-flow__handle{opacity:1!important}.wiring-mode-off .react-flow__edge.multi-edge-power:hover .react-flow__edge-path,.wiring-mode-off .react-flow__edge.multi-edge-pneumatics:hover .react-flow__edge-path,.wiring-mode-off .react-flow__edge.multi-edge-cooling_water:hover .react-flow__edge-path,.wiring-mode-off .react-flow__edge.multi-edge-hydraulics:hover .react-flow__edge-path,.wiring-mode-off .react-flow__edge.multi-edge-fieldbus:hover .react-flow__edge-path,.wiring-mode-off .react-flow__edge.multi-edge-safety:hover .react-flow__edge-path,.wiring-mode-off .react-flow__edge.multi-edge-process_signal:hover .react-flow__edge-path,.wiring-mode-off .react-flow__edge.multi-edge-digital_io:hover .react-flow__edge-path{filter:drop-shadow(0 0 6px);cursor:pointer;stroke-width:3.5px!important}.accordion-content{max-height:0;transition:max-height .3s cubic-bezier(.4,0,.2,1);overflow:hidden}.accordion-content.expanded{max-height:2000px}.dropdown-content{max-height:0;transition:max-height .3s cubic-bezier(.4,0,.2,1);overflow:hidden}.dropdown-content.expanded{max-height:80dvh;overflow-y:auto}.accordion-inner,.dropdown-inner{overflow:visible}.view-mode-pill{border:1px solid var(--c-border);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#0f172a99;border-radius:12px;padding:4px;display:flex}.view-mode-pill-seg{cursor:pointer;color:var(--c-text-3);font-size:.8rem;font-weight:600;font-family:var(--font-sans);background:0 0;border:none;border-radius:8px;align-items:center;gap:6px;padding:6px 12px;transition:all .25s cubic-bezier(.4,0,.2,1);display:flex}.view-mode-pill-seg:hover{color:var(--c-text-2)}.view-mode-pill-seg.active{background:var(--c-primary);color:#fff;box-shadow:0 0 10px #2563eb4d}.app-shell{flex-direction:column;height:100dvh;display:flex}.app-body{flex:1;display:flex;overflow:hidden}.main-area{flex-direction:column;flex:1;display:flex;position:relative;overflow:hidden}.main-area.scrollable{overflow-y:auto}.sidebar{background:var(--c-bg-2);border-left:1px solid var(--c-border);flex-shrink:0;width:340px;overflow-y:auto}.sidebar-section{padding:var(--sp-4);border-bottom:1px solid var(--c-border)}.roi-metric{padding:var(--sp-3);background:var(--c-bg-2);border:1px solid var(--c-border);border-radius:var(--r-md);flex-direction:column;gap:2px;min-width:0;display:flex;overflow:hidden}.roi-metric-value{background:linear-gradient(135deg, var(--c-primary), var(--c-accent));-webkit-text-fill-color:transparent;-webkit-background-clip:text;font-size:1.4rem;font-weight:800}.roi-metric-label{color:var(--c-text-3);text-transform:uppercase;letter-spacing:.05em;overflow-wrap:break-word;word-wrap:break-word;word-break:break-word;font-size:.72rem;font-weight:600}.roi-page-content{max-width:1400px;margin:0 auto;padding:48px 32px}.roi-page-title-row{justify-content:space-between;align-items:center;margin-bottom:32px;display:flex}.roi-page-title-actions{align-items:center;gap:16px;display:flex}.roi-page-grid{grid-template-columns:1.4fr 1fr;align-items:stretch;gap:24px;margin-bottom:40px;display:grid}.roi-section-header{justify-content:space-between;align-items:flex-end;display:flex}.roi-package-grid{grid-template-columns:repeat(auto-fit,minmax(360px,1fr));gap:20px;display:grid}.roi-params-grid{grid-template-columns:1fr 1fr;gap:20px;display:grid}.roi-metrics-grid{grid-template-columns:1fr 1fr;gap:16px;display:grid}.roi-cost-grid{grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;display:grid}.roi-island-card{grid-template-columns:1.2fr 2fr;gap:0;display:grid}.onboarding-container{max-width:960px;margin:48px auto 0;padding:0 20px}.whiteboard-title{flex-direction:column;gap:2px;display:flex}.whiteboard-toolbar{align-items:center;gap:12px;display:flex}.tablet-content{flex-direction:column;align-items:stretch;gap:0;max-width:680px;margin:0 auto;padding:16px 20px 100px;display:flex}.landing-scroll{-webkit-overflow-scrolling:touch;position:absolute;inset:0;overflow-y:auto}.landing-hero{padding:var(--hero-py) var(--layout-px);text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:85vh;display:flex;position:relative}.landing-hero-inner{z-index:10;width:100%;max-width:900px;position:relative}.landing-prompt-card{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);text-align:left;margin-bottom:var(--gap-xl);background:#1c223599;border:1px solid #3b82f666;border-radius:24px;padding:12px;position:relative;box-shadow:0 24px 48px #00000080,inset 0 0 0 1px #ffffff0d}.landing-section{padding:100px var(--layout-px);max-width:1250px;margin:0 auto}.landing-section-narrow{padding:0 var(--layout-px) 80px;max-width:1250px;margin:0 auto}.landing-logo-section{background:var(--c-bg-2);border-top:1px solid var(--c-border);border-bottom:1px solid var(--c-border);padding:36px 0;position:relative;overflow:hidden}.landing-timeline-section{padding:100px var(--layout-px);background:#3b82f605;border-top:1px solid #3b82f614;border-bottom:1px solid #3b82f614}.landing-cta{padding:100px var(--layout-px) 120px;text-align:center;background:linear-gradient(180deg, var(--c-bg) 0%, #0d1424 100%);position:relative;overflow:hidden}.landing-cta-inner{z-index:1;max-width:800px;margin:0 auto;position:relative}.landing-example-btn{border:1px solid var(--c-border);color:var(--c-text-2);cursor:pointer;white-space:nowrap;background:#ffffff08;border-radius:999px;margin-right:12px;padding:8px 16px;font-size:.85rem;transition:all .2s}.landing-example-btn:hover{border-color:var(--c-primary);color:#fff;background:#3b82f61a}.landing-logo-text{color:var(--c-text-2);white-space:nowrap;opacity:.4;cursor:default;margin-right:48px;font-size:1.1rem;font-weight:800;transition:opacity .25s,color .25s}.landing-logo-text:hover{opacity:.9;color:#fff}.marquee-outer{width:100%;position:relative;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,#0000,#000 10% 90%,#0000);mask-image:linear-gradient(90deg,#0000,#000 10% 90%,#0000)}.marquee-outer-logos{width:100%;position:relative;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,#0000,#000 15% 85%,#0000);mask-image:linear-gradient(90deg,#0000,#000 15% 85%,#0000)}.marquee-inner{will-change:transform;backface-visibility:hidden;width:max-content;animation:40s linear infinite marquee;display:flex}.marquee-inner-logos{will-change:transform;backface-visibility:hidden;width:max-content;animation:50s linear infinite reverse marquee;display:flex}.landing-pilot-btn{border:1px solid var(--c-border-2);color:#fff;cursor:pointer;background:0 0;border-radius:12px;min-height:48px;padding:14px 28px;font-size:1rem;transition:all .25s}.landing-pilot-btn:hover{background:#ffffff08;border-color:#fff}.landing-section-title{color:#fff;letter-spacing:-.04em;text-align:center;margin-top:24px 0;font-size:3.4rem;font-weight:800;line-height:1.15}.landing-section-subtitle{color:var(--c-text-2);text-align:center;max-width:750px;margin:0 auto 56px;font-size:1.25rem;font-weight:400;line-height:1.6}.roi-calculator-card{background:linear-gradient(135deg,#1c223599,#0f1219cc);border:1px solid #3b82f64d;border-radius:24px;margin-bottom:64px;padding:40px;position:relative;overflow:hidden;box-shadow:0 20px 40px #00000080,0 0 24px #3b82f626}.roi-calculator-grid{grid-template-columns:1fr;gap:32px;display:grid}.roi-calculator-inner{width:100%;max-width:700px;margin:0 auto}.roi-sliders-row{grid-template-columns:repeat(2,1fr);gap:24px;margin-bottom:32px;display:grid}.roi-cards-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.roi-metrics-value{color:#fff;text-shadow:0 0 10px #3b82f64d;white-space:nowrap;text-overflow:ellipsis;margin:8px 0;font-size:clamp(1rem,2.8vw,1.4rem);font-weight:800;overflow:hidden}.roi-metrics-card{text-align:center;border-radius:16px;min-width:0;padding:24px}.timeline-step-grid{grid-template-columns:repeat(3,1fr);gap:32px;display:grid;position:relative}.timeline-step-card{border:1px solid var(--c-border);background:#1c223566;border-radius:20px;padding:36px 32px;transition:transform .3s,border-color .3s;position:relative}.timeline-step-card:hover{border-color:#3b82f680;transform:translateY(-4px)}.timeline-step-number{color:#3b82f626;font-size:2.5rem;font-weight:800;font-family:var(--font-mono);position:absolute;top:24px;right:32px}.timeline-step-title{color:#fff;margin-bottom:12px;font-size:clamp(1.1rem,3vw,1.25rem);font-weight:700}.timeline-step-desc{color:var(--c-text-2);margin:0;font-size:clamp(.85rem,2.5vw,.92rem);line-height:1.6}.savings-dashboard{border:1px solid var(--c-border);box-shadow:var(--shadow-md);background:#1c22354d;border-radius:20px;padding:8px 24px 20px}.savings-dashboard-header{border-bottom:1px solid var(--c-border);grid-template-columns:1.4fr 1.6fr 1fr;align-items:center;gap:12px;margin-bottom:4px;padding:16px 0 12px;display:grid}.savings-row{border-bottom:1px solid #ffffff08;grid-template-columns:1.4fr 1.6fr 1fr;align-items:center;gap:12px;padding:10px 0;transition:background .2s;display:grid}.savings-row:hover{background:#3b82f605;border-radius:8px;margin:0 -8px;padding:10px 8px}.savings-row-last{border-bottom:none}.savings-phase-name{color:#fff;letter-spacing:-.01em;font-size:.88rem;font-weight:700}.savings-cell-times{justify-content:center;align-items:center;gap:8px;display:flex}.savings-time-manual{color:var(--c-text-2);white-space:nowrap;text-align:right;min-width:68px;font-size:.82rem;font-weight:600}.savings-arrow-wrap{opacity:.5;flex-shrink:0;align-items:center;display:flex}.savings-time-fast{color:var(--c-primary);white-space:nowrap;text-align:left;min-width:68px;font-size:.82rem;font-weight:700}.savings-cell-ratio{text-align:right;justify-content:flex-end;display:flex}.savings-ratio-badge{color:var(--c-primary);white-space:nowrap;letter-spacing:-.01em;background:#3b82f61a;border:1px solid #3b82f633;border-radius:999px;padding:2px 10px;font-size:1.15rem;font-weight:800;display:inline-block}.savings-total-row{border-top:1px solid var(--c-border);grid-template-columns:1.4fr 1.6fr 1fr;align-items:center;gap:12px;margin-top:8px;padding:14px 0 4px;display:grid}.report-page-wrap{-webkit-overflow-scrolling:touch;background:var(--c-bg);flex:1;width:100%;position:relative;overflow-y:auto}.report-body{max-width:1400px;margin:0 auto;padding:48px 32px}.report-pdf-header{border-bottom:2px solid var(--c-border);justify-content:space-between;align-items:flex-start;margin-bottom:40px;padding-bottom:24px;display:flex}.report-section{margin-bottom:32px}.report-section-title{align-items:center;gap:8px;margin-bottom:16px;display:flex}.report-section-accent{border-radius:2px;flex-shrink:0;width:4px;height:24px;display:inline-block}.report-content-box{background:var(--c-surface);border:1px solid var(--c-border);border-radius:12px;padding:20px}.report-island-card{background:var(--c-surface);border:1px solid var(--c-border);border-radius:12px;margin-bottom:24px;overflow:hidden}.report-comp-grid-header{color:var(--c-text-3);text-transform:uppercase;border-bottom:2px solid var(--c-border);grid-template-columns:1fr 1.5fr 100px 90px;gap:8px;margin-bottom:4px;padding:0 0 6px;font-size:.65rem;font-weight:700;display:grid}.report-comp-row{border-bottom:1px solid var(--c-border);grid-template-columns:1fr 1.5fr 100px 90px;align-items:center;gap:8px;padding:4px 0;font-size:.8rem;display:grid}.report-effort-row{justify-content:space-between;padding:3px 0;font-size:.8rem;display:flex}.report-footer{text-align:center;color:var(--c-text-3);border-top:1px solid var(--c-border);padding-top:20px;font-size:.78rem}.report-node-grid{grid-template-columns:1fr 1fr;gap:16px;display:grid}.table-scroll-wrapper{-webkit-overflow-scrolling:touch;width:100%;margin-top:8px;position:relative;overflow-x:auto}.report-page-break{display:none}.report-grid-2col{gap:var(--sp-6);margin-bottom:var(--sp-8);grid-template-columns:1fr 1.2fr;align-items:stretch;display:grid}@media (width<=768px){.utility-legend{min-width:110px!important;padding:6px 8px!important;font-size:.65rem!important;bottom:12px!important;left:12px!important}}@media (width<=480px){.utility-legend{display:none!important}}@media (width<=1024px){.roi-calculator-card{padding:32px!important}.roi-metrics-value{font-size:1.6rem!important}.roi-metrics-card{padding:16px 12px!important}.timeline-step-grid{grid-template-columns:1fr!important;gap:24px!important}}@media (width<=768px){.roi-sliders-row{grid-template-columns:1fr!important;gap:20px!important;margin-bottom:24px!important}.savings-dashboard{padding:8px 16px 16px!important}.savings-dashboard-header{grid-template-columns:1fr 1fr 1fr!important;gap:4px!important;margin-bottom:6px!important;padding:12px 0 8px!important;display:grid!important}.savings-dashboard-header span{text-transform:uppercase!important;letter-spacing:.05em!important;font-size:.68rem!important;font-weight:800!important}.savings-dashboard-header span:first-child{text-align:left!important;color:var(--c-text-3)!important}.savings-dashboard-header span:nth-child(2){text-align:center!important;color:var(--c-primary)!important}.savings-dashboard-header span:nth-child(3){text-align:right!important;color:var(--c-text-3)!important}.savings-row{border:1px solid var(--c-border)!important;background:#1c223580!important;border-radius:12px!important;grid-template-columns:1fr auto!important;align-items:center!important;gap:2px 8px!important;margin-bottom:8px!important;padding:12px!important;display:grid!important}.savings-row-last{border-bottom:1px solid var(--c-border)!important}.savings-cell-phase{grid-area:1/1!important}.savings-cell-ratio{grid-area:1/2!important;align-items:center!important}.savings-cell-times{grid-area:2/1/auto/-1!important;justify-content:flex-start!important;gap:6px!important;padding-top:6px!important}.savings-time-manual,.savings-time-fast{min-width:auto!important;font-size:.8rem!important}.savings-ratio-badge{padding:2px 10px!important;font-size:1rem!important}.savings-total-row{background:#3b82f614!important;border:1px solid #3b82f640!important;border-radius:12px!important;grid-template-columns:1fr auto!important;align-items:center!important;gap:2px 8px!important;margin-top:4px!important;padding:12px!important;display:grid!important}.roi-calculator-card{margin-bottom:40px!important;padding:24px 16px!important}.roi-cards-grid{gap:12px!important}.roi-metrics-value{font-size:1.25rem!important}.roi-metrics-card{padding:12px 8px!important}.timeline-step-card{padding:24px 20px!important}.timeline-step-number{font-size:2rem!important;top:16px!important;right:20px!important}}@media (width<=480px){.roi-cards-grid{grid-template-columns:1fr!important}.roi-metrics-value{font-size:1.4rem!important}.roi-calculator-card,.timeline-step-card{border-radius:16px!important}.roi-page-content{padding:24px 12px}.roi-package-grid{grid-template-columns:1fr}.roi-island-card{border-radius:12px}}@media (width<=768px){.hide-on-mobile{display:none!important}.show-on-mobile{display:flex!important}.flex-col-mobile{flex-direction:column!important}.sidebar{border-top:1px solid var(--c-border);border-left:none!important;width:100%!important}html{font-size:14px}h1{font-size:clamp(2rem,8vw,3.5rem)!important}:root{--layout-py:48px;--layout-px:16px;--hero-py:60px;--gap-md:16px;--gap-lg:20px;--gap-xl:32px;--form-pad:16px}.btn{min-height:44px;padding:10px 18px}.btn-sm{min-height:36px;padding:6px 12px}.input,.select{min-height:44px;padding:10px 14px;font-size:.95rem}.report-node-grid{grid-template-columns:1fr;gap:12px}.card{padding:20px!important}#main-navbar{gap:8px!important;padding:0 12px!important}.landing-hero{min-height:calc(100vh - 140px);padding-top:40px;padding-bottom:40px}.landing-logo-section{padding:24px 0}.landing-logo-section p{margin-bottom:12px;font-size:.72rem}.landing-logo-section .marquee-wrap{justify-content:center;gap:12px}.landing-logo-text{font-size:.9rem}.landing-section,.landing-section-narrow,.landing-timeline-section,.landing-cta{padding:var(--layout-py) var(--layout-px)}.landing-cta{padding-bottom:96px}.landing-cta a{width:100%}.landing-cta button{justify-content:center;width:100%}.landing-section-title{text-align:center;letter-spacing:-.03em;margin-bottom:20px;font-size:2rem;font-weight:800;line-height:1.2}.input-premium{min-height:90px;padding:10px;font-size:1rem;line-height:1.5}.roi-page-content{padding:32px 16px}.roi-page-title-row{flex-direction:column;align-items:flex-start;gap:16px}.roi-page-title-actions{flex-direction:column;gap:10px;width:100%}.roi-page-grid{grid-template-columns:1fr;gap:20px}.roi-section-header{flex-direction:column;align-items:flex-start;gap:6px}.roi-params-grid{grid-template-columns:1fr;gap:16px}.roi-metrics-grid,.roi-island-card{grid-template-columns:1fr}.onboarding-container{margin-top:24px;padding:0 12px}.whiteboard-title h1{font-size:1rem}.whiteboard-title p{display:none}.whiteboard-toolbar{flex-wrap:wrap;gap:8px}.roi-engineer-report .report-body{padding-top:0!important}.report-body{padding:24px 12px}.roi-engineer-report .card{margin-bottom:24px!important;padding:20px!important}.roi-engineer-report .card .report-section-title{font-size:.92rem!important}.roi-engineer-report .card p{font-size:.72rem!important}.roi-engineer-report .report-island-card>div{padding:10px 14px!important}.report-island-card{margin-bottom:12px!important}.report-pdf-header{flex-direction:column;gap:16px}.report-pdf-header>div:last-child{text-align:left;width:100%}.report-section-title{flex-wrap:wrap}.report-content-box{padding:16px}.report-comp-grid-header{grid-template-columns:1fr 1.5fr 80px 65px;gap:4px;font-size:.6rem}.report-comp-row{grid-template-columns:1fr 1.5fr 80px 65px;gap:4px;font-size:.75rem}.report-footer{padding-top:16px;font-size:.72rem}.tablet-content{padding:12px 12px 80px}.mod-conf-actions{flex-direction:column}.mod-conf-cancel-btn{flex:none;width:100%}.mod-conf-card{padding:8px 12px}.mod-conf-hint{display:none}}.settings-page{padding:24px}.settings-page-header{flex-wrap:wrap;gap:10px}.pdf-grid-2{grid-template-columns:1fr 1fr;gap:16px;display:grid}.pdf-grid-3{grid-template-columns:1fr 1fr 1fr;gap:16px;display:grid}.mfr-pricing-header,.mfr-pricing-row{grid-template-columns:1fr 120px 140px;align-items:center;gap:12px;display:grid}.settings-save-bar{justify-content:space-between;align-items:center;gap:12px;display:flex}.brand-group-header{flex-wrap:wrap;gap:6px}@media (width<=768px){.settings-page{padding:16px}.settings-page-header{gap:10px}.pdf-grid-2,.pdf-grid-3{grid-template-columns:1fr}.mfr-pricing-header,.mfr-pricing-row{grid-template-columns:1fr 80px 90px}.settings-save-bar{flex-direction:column}.settings-save-bar>div:first-child{text-align:center}.settings-save-bar button{justify-content:center;width:100%}.brand-group-header{gap:6px}}@media (width<=576px){:root{--layout-py:32px;--hero-py:40px;--gap-xl:24px}.card{padding:16px!important}.roi-engineer-report .card{margin-bottom:16px!important;padding:16px!important}.roi-engineer-report .report-body{padding-left:6px!important;padding-right:6px!important}#landing-page h1{font-size:1.7rem!important}}@media (width<=1024px){.report-grid-2col{grid-template-columns:1fr}}@media screen{.print-only{display:none!important}}@media print{:root{--c-bg:#fff!important;--c-bg-2:#fff!important;--c-bg-3:#f9fafb!important;--c-surface:#fff!important;--c-surface-2:#f3f4f6!important;--c-border:#e5e7eb!important;--c-border-2:#d1d5db!important;--c-text:#111827!important;--c-text-2:#374151!important;--c-text-3:#4b5563!important;--c-primary:#1d4ed8!important;--c-accent:#0891b2!important;--c-success:#16a34a!important;--c-warning:#d97706!important;--c-danger:#dc2626!important;--shadow-md:none!important;--shadow-lg:none!important;--shadow-glow:none!important}@page{size:A4;margin:12mm}.report-page-break{page-break-before:always!important;break-before:always!important;border:none!important;height:0!important;margin:0!important;padding:0!important;display:block!important}html,body,#root,.app-shell,.app-body,.main-area,#report-page,#roi-page{color:#111827!important;width:100%!important;height:auto!important;min-height:auto!important;box-shadow:none!important;filter:none!important;background:#fff!important;display:block!important;position:static!important;overflow:visible!important}.no-print,.steps-banner,#report-print,button,.expert-mode-toggle-icon,.react-flow__controls,.react-flow__minimap{display:none!important}#report-page,#roi-page{margin:0!important}#report-page.report-customer,#roi-page{padding:8mm!important}#report-page.report-engineer{padding:0!important}#report-page>div,#roi-page>div{max-width:100%!important;margin:0!important;padding:0!important}.roi-print-stack{flex-direction:column!important;gap:24px!important;display:flex!important}h1,h2,h3,h4,h5,h6{page-break-after:avoid;break-after:avoid;color:#111827!important;font-family:Outfit,sans-serif!important}p,span,div,td,th{color:#374151!important}section{margin-bottom:28px!important}.avoid-page-break{page-break-inside:avoid!important;break-inside:avoid!important}section>div,.report-node-grid{box-shadow:none!important;color:#111827!important;background:#fff!important;border:1px solid #e5e7eb!important;border-radius:8px!important}div[style*=borderLeft]{border-left-width:4px!important}section blockquote,section div p{color:#1f2937!important}.roi-metric{page-break-inside:avoid;break-inside:avoid;box-shadow:none!important;background:#f9fafb!important;border:1px solid #e5e7eb!important;border-radius:8px!important;padding:12px!important}.roi-metric-value{-webkit-text-fill-color:#1d4ed8!important;color:#1d4ed8!important;background:0 0!important;font-size:1.25rem!important;font-weight:800!important}.roi-metric-label{color:#475569!important}.report-grid-2col{display:block!important}div[style*="rgba(239, 68, 68, 0.04)"],div[style*="rgba(16, 185, 129, 0.04)"]{color:#111827!important;background:#f9fafb!important;border:1px solid #e5e7eb!important}div[style*="rgba(239, 68, 68, 0.04)"] p{color:#dc2626!important}div[style*="rgba(16, 185, 129, 0.04)"]{color:#16a34a!important}table{page-break-inside:avoid;break-inside:avoid;border-collapse:collapse!important;width:100%!important}th,td{border-bottom:1px solid #e5e7eb!important;padding:8px 10px!important;font-size:.8rem!important}th{color:#111827!important;background-color:#f9fafb!important;font-weight:700!important}span[style*="background:var(--c-bg-2)"],span[style*="background:var(--c-bg-3)"],span[style*="background:var(--c-surface)"]{color:#374151!important;background:#f3f4f6!important;border:1px solid #e5e7eb!important}tr,li,.roi-metric{page-break-inside:avoid;break-inside:avoid}.report-topology{background:#fff!important;border:1px solid #e5e7eb!important}.report-topology svg text{fill:#111827!important}.report-topology svg rect{fill:#fff!important}.report-topology svg line{stroke:#9ca3af!important}.report-topology svg marker path{fill:#6b7280!important}}
