:root{--ink: #102a43;--ink-2: #173c5b;--ink-3: #244a6f;--ink-dark: #0c2235;--red: #c41330;--red-hover: #a80f28;--red-pale: #fdf2f4;--red-light: #fae6ea;--paper: #f6f8fa;--paper-alt: #edf2f5;--line: #dbe3ea;--line-dark: #c8d4dc;--line-light: #edf1f4;--muted: #60758a;--slate-subtle: #829ab1;--color-bg: #ffffff;--color-bg-alt: #f6f8fa;--color-bg-warm: #edf2f5;--color-bg-card: #ffffff;--color-text: #102a43;--color-text-secondary:#526b7d;--color-text-muted: #60758a;--color-accent: #c41330;--color-accent-light: #e02848;--color-accent-hover: #a80f28;--color-accent-pale: #fdf2f4;--color-gold: #c41330;--color-gold-light: #e04d66;--color-border: #dbe3ea;--color-border-light: #edf1f4;--color-white: #ffffff;--color-overlay: rgba(16, 42, 67, .04);--bg: #ffffff;--bg-subtle: #f6f8fa;--bg-muted: #edf2f5;--bg-inset: #e4eaee;--bg-overlay: rgba(255, 255, 255, .97);--border-faint: #edf1f4;--border: #dbe3ea;--border-mid: #c8d4dc;--border-strong:#102a43;--text-heading: #102a43;--text-body: #243b53;--text-muted: #60758a;--text-faint: #829ab1;--text-inverse: #ffffff;--accent: #c41330;--accent-hover: #a80f28;--accent-light: #fdf2f4;--accent-border:#f9c6ce;--accent-text: #c41330;--success: #102a43;--success-light: #f0f4f8;--success-border: #bcccdc;--warning: #d97706;--warning-light: #fef3c7;--warning-border: #fde68a;--danger: #c41330;--danger-light: #fdf2f4;--danger-border: #fca5a5;--info: #173c5b;--info-light: #e0f2fe;--info-border: #bae6fd;--font-heading: "Plus Jakarta Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-body: "Plus Jakarta Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-accent: "Plus Jakarta Sans", "Space Grotesk", sans-serif;--font-mono: "DM Mono", "SF Mono", "Roboto Mono", Menlo, monospace;--r-xs: 4px;--r-sm: 6px;--r-md: 8px;--r-lg: 12px;--r-xl: 16px;--r-2xl: 24px;--r-full: 9999px;--shadow-xs: 0 1px 2px rgba(16, 42, 67, .04);--shadow-sm: 0 2px 6px rgba(16, 42, 67, .05);--shadow-md: 0 10px 25px rgba(16, 42, 67, .06);--shadow-lg: 0 18px 45px rgba(16, 42, 67, .08);--shadow-xl: 0 28px 80px rgba(16, 42, 67, .12);--shadow-accent: 0 10px 25px rgba(196, 19, 48, .22);--sp-1: .25rem;--sp-2: .5rem;--sp-3: .75rem;--sp-4: 1rem;--sp-5: 1.25rem;--sp-6: 1.5rem;--sp-8: 2rem;--sp-10: 2.5rem;--sp-12: 3rem;--sp-16: 4rem;--ease-out-expo: cubic-bezier(.16, 1, .3, 1);--dur-fast: .15s;--dur-mid: .25s}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{background-color:var(--color-bg);color:var(--color-text);font-family:var(--font-body);font-size:15px;line-height:1.7;min-height:100vh;display:flex;flex-direction:column;position:relative;overflow-x:hidden}::-webkit-scrollbar{width:7px;height:7px}::-webkit-scrollbar-track{background:var(--paper)}::-webkit-scrollbar-thumb{background:var(--line);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--muted)}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);color:var(--ink);font-weight:750;line-height:1.15;letter-spacing:-.04em;margin-bottom:.5rem}h1{font-size:clamp(2.4rem,5vw,4.5rem);letter-spacing:-.055em;line-height:1.02}h2{font-size:clamp(1.8rem,3.5vw,3rem);letter-spacing:-.045em;line-height:1.1}h3{font-size:clamp(1.2rem,2vw,1.65rem);letter-spacing:-.03em}h4{font-size:clamp(1.02rem,1.3vw,1.22rem);font-weight:650}h5{font-size:.8rem;font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.1em;color:var(--red)}p{color:var(--color-text-secondary);line-height:1.7}p.subtitle{color:var(--muted);font-size:clamp(.95rem,1.15vw,1.1rem);line-height:1.7;margin-bottom:var(--sp-6);max-width:68ch}.italic{font-style:italic}.text-accent,.text-red{color:var(--red)}.text-ink{color:var(--ink)}.text-center{text-align:center}.section-label,.kicker,.hero-label,.eyebrow,.section-tag{font-family:var(--font-heading);letter-spacing:.13em;text-transform:uppercase;color:var(--red);display:inline-flex;align-items:center;gap:10px;margin-bottom:1rem;font-size:.74rem;font-weight:800}.section-label:before,.kicker:before,.hero-label:before{content:"";background:var(--red);width:24px;height:2px;display:inline-block;flex-shrink:0}.container{width:100%;max-width:1360px;margin:0 auto;padding:0 clamp(20px,4vw,64px)}.view{width:100%}.hidden{display:none!important}.grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--sp-6)}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--sp-6)}.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--sp-6)}.flex-between{display:flex;justify-content:space-between;align-items:center}.flex-gap{display:flex;gap:var(--sp-4);align-items:center;flex-wrap:wrap}.topline{height:4px;background:var(--red);width:100%;position:relative;z-index:1010}.enterprise-navbar{position:sticky;top:0;z-index:1000;background:#fffffffa;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-bottom:1px solid var(--line-light);height:76px;padding:0 clamp(20px,4vw,64px);display:flex;align-items:center;justify-content:space-between;gap:1.5rem;transition:all .3s ease}.nav-brand-section{display:flex;align-items:center;gap:12px;text-decoration:none;cursor:pointer;-webkit-user-select:none;user-select:none}.brand-mark-hex{width:36px;height:36px;background:var(--ink);color:#fff;border-radius:var(--r-xs);display:flex;align-items:center;justify-content:center;border:1px solid var(--ink-2);box-shadow:0 4px 12px #102a431f;transition:transform .25s ease,background-color .25s ease}.nav-brand-section:hover .brand-mark-hex{transform:scale(1.05);background:var(--red);border-color:var(--red)}.nav-brand-meta{display:flex;flex-direction:column}.nav-brand-title,.gate-brand-title,.foot-brand,.brand-name{font-family:var(--font-heading);font-size:1.6rem;font-weight:800;letter-spacing:-.05em;color:var(--ink)!important;line-height:1}.brand-o,.brand-accent-o,.nav-brand-title .brand-o,.nav-brand-title .brand-accent-o,.gate-brand-title .brand-accent-o,.foot-brand .brand-o{color:var(--red)!important;display:inline;letter-spacing:-.035em;margin:0 -.02em}.brand-word,.brand-inline{display:inline-block;letter-spacing:-.04em;white-space:nowrap}.section-tag .brand-word,.section-tag .brand-inline{letter-spacing:-.03em;margin:0 .18em}.nav-brand-sub{font-family:var(--font-mono);font-size:.62rem;font-weight:700;letter-spacing:.12em;color:var(--muted);text-transform:uppercase;margin-top:3px}.nav-center-menu{display:flex;align-items:center;gap:clamp(16px,2.2vw,32px)}.nav-item-link{font-family:var(--font-heading);font-size:.88rem;font-weight:650;letter-spacing:-.01em;color:#3e5569;background:none;border:none;cursor:pointer;padding:6px 0;position:relative;transition:color .2s}.nav-item-link:after{content:"";position:absolute;bottom:-2px;left:0;width:0;height:2px;background:var(--red);transition:width .25s var(--ease-out-expo)}.nav-item-link:hover,.nav-item-link.active{color:var(--red)}.nav-item-link:hover:after,.nav-item-link.active:after{width:100%}.nav-actions{display:flex;align-items:center;gap:12px}.status-indicator-pill{display:inline-flex;align-items:center;gap:8px;font-size:.72rem;font-family:var(--font-mono);font-weight:600;letter-spacing:.04em;color:var(--ink);background:var(--paper);border:1px solid var(--line);padding:.35rem .85rem;border-radius:var(--r-xs)}.status-live-dot{width:6px;height:6px;border-radius:50%;background:var(--red);box-shadow:0 0 0 2px #c4133033}.nav-portal-badge{display:inline-flex;align-items:center;gap:8px;background:var(--paper);border:1px solid var(--line);padding:.4rem .9rem;border-radius:var(--r-xs);font-size:.8rem;font-weight:700;font-family:var(--font-heading);color:var(--ink)}.nav-user-chip{display:inline-flex;align-items:center;gap:7px;font-size:.82rem;font-weight:600;color:var(--ink);background:var(--paper);border:1px solid var(--line);padding:.4rem .9rem;border-radius:var(--r-xs)}.nav-portal-dropdown{position:absolute;top:calc(100% + 10px);left:0;min-width:330px;max-width:360px;background:#fff;border:1px solid var(--line);border-radius:var(--r-md);box-shadow:0 16px 40px #102a431f,0 2px 8px #102a430a;padding:10px;z-index:1000;display:flex;flex-direction:column;animation:navDropdownFade .16s var(--ease-out-expo)}@keyframes navDropdownFade{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.nav-portal-dropdown-arrow{position:absolute;top:-6px;left:20px;width:10px;height:10px;background:#fff;border-left:1px solid var(--line);border-top:1px solid var(--line);transform:rotate(45deg)}.nav-portal-dropdown-header{display:flex;align-items:center;justify-content:space-between;padding:4px 6px 8px;border-bottom:1px solid var(--line-light);margin-bottom:6px}.nav-portal-dropdown-title{font-family:var(--font-mono);font-size:.68rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.nav-portal-dropdown-chip{font-family:var(--font-mono);font-size:.65rem;font-weight:700;color:var(--red);background:var(--red-pale);border:1px solid var(--red-light);padding:1px 6px;border-radius:var(--r-xs)}.nav-portal-list{display:flex;flex-direction:column;gap:3px}.nav-portal-option{display:flex;align-items:flex-start;gap:12px;padding:9px 10px;border-radius:var(--r-sm);border:1px solid transparent;background:transparent;text-align:left;cursor:pointer;width:100%;transition:all .18s ease;font-family:var(--font-heading)}.nav-portal-option:hover{background:var(--paper);border-color:var(--line);transform:translate(2px)}.nav-portal-icon-box{width:34px;height:34px;border-radius:var(--r-xs);background:var(--paper);border:1px solid var(--line);display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--ink);transition:all .18s ease;margin-top:1px}.nav-portal-option:hover .nav-portal-icon-box{background:var(--red-pale);border-color:var(--red-light);color:var(--red)}.nav-portal-text{flex:1;min-width:0}.nav-portal-row{display:flex;align-items:center;justify-content:space-between;gap:8px}.nav-portal-name{font-weight:750;font-size:.86rem;color:var(--ink);letter-spacing:-.01em;transition:color .18s ease}.nav-portal-option:hover .nav-portal-name{color:var(--red)}.nav-portal-badge-tag{font-family:var(--font-mono);font-size:.64rem;font-weight:600;color:var(--muted);background:var(--paper-alt);border:1px solid var(--line);padding:1px 6px;border-radius:var(--r-xs);letter-spacing:.02em;white-space:nowrap}.nav-portal-active-pill{font-family:var(--font-mono);font-size:.62rem;font-weight:800;letter-spacing:.06em;color:var(--red);background:#c413301a;border:1px solid var(--red-light);padding:1px 5px;border-radius:var(--r-xs)}.nav-portal-desc{font-size:.73rem;color:var(--muted);margin-top:2px;line-height:1.35}.nav-portal-option.active{background:#fdf2f4;border-color:#f9c6ce}.nav-portal-option.active .nav-portal-icon-box{background:var(--red);border-color:var(--red);color:#fff}.nav-portal-option.active .nav-portal-name{color:var(--red)}.nav-portal-dropdown-footer{margin-top:6px;padding:6px 6px 2px;border-top:1px solid var(--line-light);display:flex;align-items:center;justify-content:space-between}.nav-portal-footer-note{font-family:var(--font-mono);font-size:.68rem;color:var(--slate-subtle);letter-spacing:.02em}.nav-profile-menu{position:relative;display:flex;align-items:center}.nav-user-chip-btn{display:inline-flex;align-items:center;gap:9px;min-width:0;padding:4px 8px 4px 4px;color:var(--ink);background:transparent;border:1px solid transparent;border-radius:var(--r-full);cursor:pointer;font-family:var(--font-heading);text-align:left;transition:background .18s ease,border-color .18s ease}.nav-user-chip-btn:hover,.nav-user-chip-btn.is-open{background:var(--paper);border-color:var(--line-light)}.nav-user-avatar{display:flex;align-items:center;justify-content:center;flex:0 0 34px;width:34px;height:34px;color:#fff;background:linear-gradient(145deg,var(--ink-2),var(--ink-dark));border:1px solid rgba(16,42,67,.12);border-radius:50%;font-size:.78rem;font-weight:750}.nav-user-chip-copy{display:flex;flex-direction:column;gap:2px;min-width:0;max-width:150px}.nav-user-chip-name,.nav-user-chip-role{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.nav-user-chip-name{color:var(--ink);font-size:.76rem;font-weight:750;line-height:1.2}.nav-user-chip-role{color:var(--muted);font-size:.62rem;line-height:1.2}.nav-user-chevron{flex:0 0 auto;color:var(--muted);transition:transform .18s ease,color .18s ease}.nav-user-chevron.is-open{transform:rotate(180deg);color:var(--ink)}.nav-profile-dropdown{position:absolute;top:calc(100% + 9px);right:0;z-index:1100;width:310px;max-width:calc(100vw - 24px);overflow:hidden;color:var(--ink);background:#fffffffa;border:1px solid var(--red);border-radius:14px;box-shadow:0 16px 42px #102a4321;animation:profile-menu-enter .16s ease-out}@keyframes profile-menu-enter{0%{opacity:0;transform:translateY(-3px)}to{opacity:1;transform:translateY(0)}}.nav-profile-header{display:flex;align-items:center;gap:12px;padding:18px 18px 14px}.nav-profile-avatar{display:flex;align-items:center;justify-content:center;flex:0 0 44px;width:44px;height:44px;color:#fff;background:linear-gradient(145deg,var(--ink-2),var(--ink-dark));border:2px solid #fff;border-radius:50%;box-shadow:0 0 0 1px var(--line);font-size:1rem;font-weight:750}.nav-profile-identity{display:flex;flex-direction:column;min-width:0;gap:3px}.nav-profile-identity strong,.nav-profile-identity>span:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.nav-profile-identity strong{color:var(--ink);font-size:.88rem;font-weight:750}.nav-profile-identity>span:last-child{color:var(--muted);font-size:.72rem}.nav-profile-roleline{display:flex;align-items:center;gap:8px;padding:10px 18px 13px;color:var(--muted);border-bottom:1px solid var(--line-light);font-size:.74rem;font-weight:650}.nav-profile-role-icon{display:flex;align-items:center;color:var(--red)}.nav-profile-role-action{display:flex;align-items:center;width:calc(100% - 16px);min-height:58px;gap:10px;margin:8px;padding:9px 10px;color:var(--ink);text-align:left;background:transparent;border:0;border-radius:10px;cursor:pointer;transition:background .18s ease}.nav-profile-role-action:hover{background:var(--paper)}.nav-profile-action-mark{display:flex;align-items:center;justify-content:center;flex:0 0 34px;width:34px;height:34px;color:var(--ink-2);background:var(--paper-alt);border-radius:50%}.nav-profile-action-copy{display:flex;flex:1;flex-direction:column;min-width:0;gap:3px}.nav-profile-action-copy strong{font-size:.76rem;font-weight:750}.nav-profile-action-copy small{color:var(--muted);font-size:.62rem}.nav-profile-action-arrow{flex:0 0 auto;color:var(--slate-subtle);transition:color .18s ease,transform .18s ease}.nav-profile-role-action:hover .nav-profile-action-arrow{color:var(--red);transform:translate(2px)}.nav-profile-footer{padding:4px 16px 12px;border-top:1px solid var(--line-light)}.nav-profile-signout{display:inline-flex;align-items:center;gap:8px;width:100%;min-height:38px;padding:0 4px;color:var(--muted);text-align:left;background:transparent;border:0;border-radius:8px;cursor:pointer;font-family:var(--font-heading);font-size:.74rem;font-weight:650;transition:color .18s ease,background .18s ease}.nav-profile-signout:hover{color:var(--red);background:var(--red-pale)}.nav-profile-confirm-signout{display:flex;flex-direction:column;gap:10px;padding:8px 0 2px;color:var(--muted);font-size:.74rem}.nav-profile-footer-actions{display:flex;justify-content:flex-end;gap:8px}.nav-profile-signout-confirm,.nav-profile-cancel{min-height:32px;padding:0 11px;border-radius:7px;cursor:pointer;font-family:var(--font-heading);font-size:.7rem;font-weight:700}.nav-profile-signout-confirm{color:#fff;background:var(--red);border:1px solid var(--red)}.nav-profile-cancel{color:var(--ink);background:#fff;border:1px solid var(--line)}.nav-profile-signout-confirm:hover{background:var(--red-hover);border-color:var(--red-hover)}.nav-profile-cancel:hover{background:var(--paper)}@media (max-width: 480px){.nav-user-chip-copy{max-width:112px}.nav-profile-dropdown{right:0}}.btn{display:inline-flex;min-height:44px;align-items:center;justify-content:center;gap:10px;background:var(--ink);color:#fff;border:1px solid var(--ink);padding:0 22px;border-radius:var(--r-xs);font-family:var(--font-heading);font-size:.88rem;font-weight:750;letter-spacing:-.01em;cursor:pointer;text-decoration:none;white-space:nowrap;box-shadow:0 2px 8px #102a4314;transition:all .2s ease;position:relative}.btn:hover{background:var(--red);border-color:var(--red);color:#fff;transform:translateY(-1px);box-shadow:0 6px 20px #c413303d}.btn:active{transform:translateY(0)}.btn-dark{background:var(--ink);color:#fff;border:1px solid var(--ink)}.btn-dark:hover{background:var(--red);border-color:var(--red);color:#fff}.btn-secondary,.btn-outline{background:transparent;color:var(--ink);border:1px solid #9aacba;box-shadow:none}.btn-secondary:hover,.btn-outline:hover{border-color:var(--ink);background:#f0f4f7;color:var(--ink);transform:translateY(-1px)}.btn-red,.btn-accent{background:var(--red);color:#fff;border:1px solid var(--red)}.btn-red:hover,.btn-accent:hover{background:var(--red-hover);border-color:var(--red-hover);color:#fff}.btn-gold{background:var(--ink);color:#fff;border:1px solid var(--ink)}.btn-gold:hover{background:var(--red);border-color:var(--red)}.btn-white{background:#fff;color:var(--ink);border:1px solid var(--line)}.btn-white:hover{background:var(--paper);color:var(--red);border-color:var(--red)}.btn-white-outline{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.4)}.btn-white-outline:hover{border-color:#fff;background:#ffffff1a;color:#fff}.btn-sm{min-height:38px;padding:0 16px;font-size:.82rem}.btn-lg{min-height:50px;padding:0 32px;font-size:.95rem}.btn-link{font-family:var(--font-heading);letter-spacing:-.01em;font-size:.85rem;font-weight:650;color:var(--ink);background:none;border:none;padding:0;cursor:pointer;text-decoration:underline;text-decoration-color:var(--line-dark);text-underline-offset:4px;transition:all .2s}.btn-link:hover{color:var(--red);text-decoration-color:var(--red)}.btn-reset-link{background:none;border:none;color:var(--muted);font-family:var(--font-heading);font-size:.8rem;text-decoration:underline;text-decoration-color:var(--line);cursor:pointer;padding:8px 12px;transition:color .2s}.btn-reset-link:hover{color:var(--red)}.hero-industrial{background:linear-gradient(120deg,#f8fafb,#fff 52%,#edf2f5);border-bottom:1px solid var(--line);overflow:hidden;padding:30px 0 0}.hero-grid{min-height:540px;display:grid;grid-template-columns:1.08fr .92fr;align-items:center;gap:48px}.hero-content{padding-bottom:36px}.hero-title-industrial{font-size:clamp(2.5rem,4.8vw,4.4rem);line-height:1.02;letter-spacing:-.055em;margin:0;color:var(--ink);max-width:720px;font-family:var(--font-heading)}.hero-title-industrial span{color:var(--red)}.hero-lead-industrial{font-size:1.12rem;line-height:1.65;color:#526b7d;max-width:620px;margin:22px 0 30px}.hero-actions-industrial{display:flex;flex-wrap:wrap;gap:14px;align-items:center}.control-container{position:relative;height:440px;width:100%;display:flex;align-items:center;justify-content:center}.control-hexagon-container{max-width:520px;margin:0 auto}.control-hex-svg{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;pointer-events:none;overflow:visible}.hex-poly-outer{stroke:#94a3b8;stroke-width:1.75;stroke-dasharray:6 3;fill:#f8fafcb3;filter:drop-shadow(0 4px 16px rgba(15,23,42,.05));transition:stroke .3s ease}.hex-poly-inner{stroke:#cbd5e1;stroke-width:1.2;fill:#ffffff80;stroke-dasharray:3 3}.hex-laser-beam{stroke:#94a3b8;stroke-width:1.25;stroke-dasharray:5 4;opacity:.8;animation:hexBeamPulse 3.5s linear infinite}@keyframes hexBeamPulse{0%{stroke-dashoffset:0}to{stroke-dashoffset:-36}}.hex-vertex-dot{fill:var(--ink);stroke:var(--red);stroke-width:2}.hex-corner-node{position:absolute;width:138px;padding:10px 14px;background:#fff;border:1.5px solid #cbd5e1;border-radius:var(--r-sm);box-shadow:0 8px 24px #102a4317;cursor:pointer;transition:transform .25s cubic-bezier(.16,1,.3,1),border-color .25s ease,box-shadow .25s ease;display:flex;flex-direction:column;justify-content:center;z-index:2;-webkit-user-select:none;user-select:none}.hex-corner-node:hover{transform:translateY(-3px) scale(1.02);border-color:var(--red);box-shadow:0 12px 28px #c4133029}.hex-corner-node:focus-visible{outline:2px solid var(--red);outline-offset:2px}.hex-node-sub{font-size:.68rem;font-weight:700;color:#64748b;letter-spacing:.06em;margin-bottom:2px}.hex-node-title{font-size:.94rem;font-weight:800;letter-spacing:.04em;color:var(--ink);font-family:var(--font-heading)}.corner-customer{left:0%;top:18%}.corner-quality{right:0%;top:18%}.corner-material{left:0%;bottom:18%}.corner-logistics{right:0%;bottom:18%}.corner-finance{left:50%;top:0;transform:translate(-50%)}.corner-finance:hover{transform:translate(-50%) translateY(-3px) scale(1.02)}.corner-vendor{left:50%;bottom:0;transform:translate(-50%)}.corner-vendor:hover{transform:translate(-50%) translateY(-3px) scale(1.02)}.hex-core-center{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:220px;height:220px;display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:3;transition:transform .3s cubic-bezier(.16,1,.3,1);-webkit-user-select:none;user-select:none}.hex-core-center:hover{transform:translate(-50%,-50%) scale(1.07)}.hex-core-glow{position:absolute;top:-6px;right:-6px;bottom:-6px;left:-6px;background:radial-gradient(circle,#c4133047,#c4133000 70%);border-radius:50%;pointer-events:none;animation:hexGlowPulse 3s ease-in-out infinite alternate}@keyframes hexGlowPulse{0%{opacity:.6;transform:scale(.95)}to{opacity:1;transform:scale(1.08)}}.hex-core-badge{width:100%;height:100%;clip-path:polygon(50% 0%,100% 25%,100% 75%,50% 100%,0% 75%,0% 25%);background:linear-gradient(145deg,#0d1a26,#172c3d);display:flex;flex-direction:column;align-items:center;justify-content:center;color:#fff;box-shadow:0 16px 36px #0d1a2666}.hex-core-title{font-size:1.75rem;font-weight:900;letter-spacing:.1em;color:#fff;font-family:var(--font-heading)}.hex-core-sub{font-size:.9rem;font-weight:700;letter-spacing:.09em;color:var(--red);margin-top:3px}.portal-grid-two-up{grid-template-columns:repeat(2,1fr)!important;max-width:860px;margin:0 auto;gap:28px}.trust-strip{display:grid;grid-template-columns:repeat(4,1fr);border-bottom:1px solid var(--line);background:#fff}.trust-cell{padding:26px 24px;border-right:1px solid var(--line)}.trust-cell:last-child{border-right:none}.trust-cell b{display:block;font-size:.98rem;font-weight:750;color:var(--ink);font-family:var(--font-heading);margin-bottom:4px}.trust-cell span{font-size:.82rem;color:var(--muted);line-height:1.4}.section-industrial{padding:80px 0}.steps-grid{margin-top:40px;display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line);background:#fff}.step-card{padding:32px 28px;min-height:205px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);transition:background-color .2s ease}.step-card:hover{background:#fbfcfd}.step-no{color:var(--red);font-weight:800;font-size:.74rem;letter-spacing:.1em;font-family:var(--font-mono)}.step-card h3{margin:22px 0 8px;font-size:1.15rem;font-weight:700;color:var(--ink)}.step-card p{font-size:.9rem;line-height:1.55;color:var(--muted);margin:0}.dark-network-section{background:var(--ink);color:#fff;padding:88px 0}.dark-network-section .section-tag{color:#fca5a5}.dark-network-section h2{color:#fff;margin:12px 0 16px;max-width:620px}.dark-network-section .dark-sub{color:#bdcbd5;font-size:1.05rem;line-height:1.65;max-width:680px}.network-roles-grid{margin-top:44px;display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:#244a6f;border:1px solid #244a6f}.network-role-card{padding:28px;background:#173950;display:flex;flex-direction:column;justify-content:space-between;min-height:155px;transition:background .2s ease}.network-role-card:hover{background:#1b4360}.network-role-card h3{font-size:1.08rem;margin:0 0 28px;color:#fff;font-weight:700}.network-role-card button,.network-role-card a{font-size:.85rem;font-weight:650;color:#fff;background:none;border:none;border-bottom:1px solid var(--red);padding:0 0 5px;cursor:pointer;text-align:left;display:inline-flex;align-items:center;gap:6px;width:fit-content;transition:color .2s,border-color .2s}.network-role-card button:hover,.network-role-card a:hover{color:#fca5a5;border-color:#fca5a5}.cta-banner-industrial{padding:76px 0;background:var(--paper);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.cta-inner-industrial{border-left:5px solid var(--red);padding:12px 0 12px 30px;display:flex;align-items:center;justify-content:space-between;gap:28px}.cta-inner-industrial h2{margin:0;font-size:clamp(1.8rem,3.2vw,2.7rem);color:var(--ink)}footer.industrial-footer{background:var(--paper-alt);color:var(--ink);border-top:1px solid var(--line);padding:56px 0 30px}.foot-grid{display:flex;justify-content:space-between;gap:36px;flex-wrap:wrap}.foot-brand-col{max-width:440px}.foot-brand{font-size:1.85rem;font-weight:800;letter-spacing:-.06em;color:var(--ink);display:flex;align-items:center}.foot-brand .brand-o{color:var(--red)}.foot-p{font-size:.88rem;line-height:1.65;color:var(--muted);margin-top:12px}.foot-links-col{display:flex;flex-direction:column;gap:8px}.foot-links-col b{color:var(--ink);font-size:.95rem;margin-bottom:4px}.foot-links-col button{background:none;border:none;color:var(--ink-2);font-size:.84rem;cursor:pointer;text-align:left;padding:2px 0;transition:color .2s}.foot-links-col button:hover{color:var(--red)}.fine-print{border-top:1px solid var(--line-dark);margin-top:40px;padding-top:22px;font-size:.76rem;color:var(--muted);display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap}.portal-gateway-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.portal-gateway-card{background:#fff;border:1px solid var(--line);border-radius:var(--r-xs);padding:clamp(24px,3vw,32px);display:flex;flex-direction:column;box-shadow:var(--shadow-sm);transition:all .25s ease;position:relative;overflow:hidden}.portal-gateway-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-md);border-color:var(--ink)}.portal-gateway-top{margin-bottom:1.25rem}.portal-gateway-badge{display:inline-block;font-family:var(--font-mono);font-size:.7rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--red);background:var(--red-pale);padding:3px 10px;border-radius:var(--r-xs);margin-bottom:10px;border:1px solid rgba(196,19,48,.15)}.portal-gateway-title{font-size:1.35rem;font-weight:750;color:var(--ink);margin:0 0 6px;letter-spacing:-.02em}.portal-gateway-desc{font-size:.88rem;color:var(--muted);line-height:1.55;margin:0}.portal-gateway-features{display:flex;flex-direction:column;gap:10px;margin-bottom:1.75rem;padding:1rem 0;border-top:1px solid var(--line-light);border-bottom:1px solid var(--line-light)}.gateway-feature-item{display:flex;align-items:center;gap:10px;font-size:.84rem;color:var(--ink);line-height:1.4}.gateway-feature-item svg{color:var(--red);flex-shrink:0}@media (max-width: 880px){.hero-grid{grid-template-columns:1fr;gap:32px}.control-hexagon-container{height:400px;transform:scale(.92);transform-origin:center center;margin:10px auto 0}.trust-strip{grid-template-columns:repeat(2,1fr)}.trust-cell:nth-child(2){border-right:none}.steps-grid{grid-template-columns:1fr}.network-roles-grid{grid-template-columns:repeat(2,1fr)}.cta-inner-industrial{flex-direction:column;align-items:flex-start}.portal-gateway-grid{grid-template-columns:1fr}}@media (max-width: 520px){.network-roles-grid,.trust-strip{grid-template-columns:1fr}.trust-cell{border-right:none}.control-hexagon-container{transform:scale(.72);transform-origin:center center;margin:-30px auto -20px}}.hero-wrapper{padding:clamp(60px,8vw,100px) 0 clamp(40px,6vw,80px);position:relative}.hero-inner-grid{display:grid;grid-template-columns:1.15fr .85fr;align-items:center;gap:clamp(40px,6vw,80px)}.hero-title{font-size:clamp(2.8rem,5.5vw,4.8rem);font-weight:600;color:var(--color-text);letter-spacing:-.025em;line-height:1.08;margin-bottom:1.5rem}.hero-title .italic{color:var(--color-accent)}.hero-subtitle{max-width:580px;font-size:clamp(1rem,1.2vw,1.18rem);color:var(--color-text-secondary);line-height:1.8;margin-bottom:2.5rem}.hero-cta-row{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.hero-visual-card{background:var(--color-white);border:1px solid var(--color-border);border-radius:var(--r-xl);padding:24px;box-shadow:var(--shadow-lg);position:relative;overflow:hidden}.hero-visual-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--color-gold),var(--color-accent))}.hero-cad-preview{background:linear-gradient(135deg,#f2ede6,#fafaf7);border:1px solid var(--color-border-light);border-radius:var(--r-lg);padding:36px 24px;display:flex;flex-direction:column;align-items:center;text-align:center;position:relative;overflow:hidden}.hero-cad-grid-pattern{position:absolute;top:0;right:0;bottom:0;left:0;background-image:radial-gradient(var(--color-border) 1.2px,transparent 1.2px);background-size:24px 24px;opacity:.6}.hero-cad-model-icon{width:90px;height:90px;border-radius:50%;background:var(--color-accent-pale);color:var(--color-accent);display:flex;align-items:center;justify-content:center;margin-bottom:16px;position:relative;z-index:1;box-shadow:0 10px 24px #1b433226}.hero-cad-title{font-family:var(--font-heading);font-size:1.25rem;font-weight:600;color:var(--color-text);margin-bottom:6px;position:relative;z-index:1}.hero-cad-meta{font-family:var(--font-accent);font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;color:var(--color-gold);font-weight:700;position:relative;z-index:1}.hero-floating-badge{background:var(--color-white);border:1px solid var(--color-border);border-radius:var(--r-lg);padding:16px 22px;display:flex;align-items:center;gap:14px;box-shadow:var(--shadow-md);margin-top:18px}.hero-floating-badge .badge-icon{width:44px;height:44px;border-radius:12px;background:var(--color-accent-pale);color:var(--color-accent);display:flex;align-items:center;justify-content:center;flex-shrink:0}.hero-floating-badge .badge-number{font-family:var(--font-heading);font-size:1.35rem;font-weight:700;color:var(--color-accent);line-height:1.1}.hero-floating-badge .badge-label{font-family:var(--font-accent);font-size:.72rem;letter-spacing:.06em;text-transform:uppercase;color:var(--color-text-muted);font-weight:600}.marquee-section{border-top:1px solid var(--color-border);border-bottom:1px solid var(--color-border);background:var(--color-bg);padding:24px 0;overflow:hidden;position:relative}.marquee-track{width:max-content;display:flex;animation:marqueeScroll 35s linear infinite}.marquee-track:hover{animation-play-state:paused}.marquee-item{white-space:nowrap;display:flex;align-items:center;gap:36px;padding:0 36px}.marquee-text{font-family:var(--font-accent);letter-spacing:.16em;text-transform:uppercase;color:var(--color-text);font-size:clamp(.85rem,1.1vw,1.05rem);font-weight:600}.marquee-dot{width:6px;height:6px;border-radius:50%;background:var(--color-gold);flex-shrink:0}@keyframes marqueeScroll{0%{transform:translate(0)}to{transform:translate(-50%)}}.quote-engine{background:var(--color-white);border:1px solid var(--color-border);border-radius:var(--r-xl);box-shadow:var(--shadow-md);padding:clamp(28px,4vw,48px);margin:var(--sp-12) 0;position:relative;overflow:hidden}.quote-engine:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--color-accent)}.quote-engine-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:var(--sp-6);gap:var(--sp-4);flex-wrap:wrap}.file-upload-mock{background:var(--color-bg);border:2px dashed var(--color-border);border-radius:var(--r-lg);padding:36px 24px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;cursor:pointer;transition:all .35s var(--ease-out-expo);gap:10px}.file-upload-mock:hover{border-color:var(--color-accent);background:var(--color-accent-pale);transform:translateY(-2px)}.file-upload-mock strong{font-family:var(--font-accent);font-size:.95rem;letter-spacing:.02em;color:var(--color-text)}.workflow-grid{display:grid;grid-template-columns:repeat(4,1fr);background:var(--color-white);border:1px solid var(--color-border);border-radius:var(--r-lg);box-shadow:var(--shadow-sm);overflow:hidden;margin:var(--sp-6) 0 var(--sp-12)}.workflow-step{padding:clamp(28px,3vw,40px);border-right:1px solid var(--color-border);position:relative;transition:background .35s var(--ease-out-expo)}.workflow-step:last-child{border-right:none}.workflow-step:hover{background:var(--color-bg-alt)}.workflow-step-num{font-family:var(--font-heading);font-size:2.2rem;font-weight:700;color:var(--color-gold);line-height:1;margin-bottom:1rem;display:block}.workflow-step h4{font-size:1.15rem;margin-bottom:.75rem}.workflow-step p{font-size:.9rem;line-height:1.65;color:var(--color-text-secondary)}.products-header{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:clamp(32px,4vw,56px);flex-wrap:wrap}.products-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;margin-bottom:var(--sp-12)}.product-card{background:var(--color-white);border:1px solid var(--color-border);border-radius:var(--r-lg);aspect-ratio:4 / 4.8;position:relative;overflow:hidden;cursor:pointer;display:block;box-shadow:var(--shadow-sm);transition:transform .4s var(--ease-out-expo),box-shadow .4s var(--ease-out-expo)}.product-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-lg)}.product-card .card-visual{position:absolute;top:0;right:0;bottom:0;left:0;background-size:cover;background-position:center;transition:transform .8s var(--ease-out-expo)}.product-card:hover .card-visual{transform:scale(1.06)}.product-card .card-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to top,#14241df0,#14241d66 55%,#0000000d);transition:background .4s}.product-card:hover .card-overlay{background:linear-gradient(to top,#1b4332f5,#1b433280 60%,#0000001a)}.product-card .card-content{position:absolute;bottom:0;left:0;right:0;padding:32px;z-index:2;transition:transform .4s var(--ease-out-expo)}.product-card .card-number{font-family:var(--font-accent);font-size:.78rem;letter-spacing:.14em;color:var(--color-gold-light);font-weight:700;margin-bottom:8px;text-transform:uppercase}.product-card .card-title{font-family:var(--font-heading);font-size:clamp(1.25rem,1.6vw,1.55rem);color:var(--color-white);margin-bottom:8px;font-weight:600}.product-card .card-excerpt{color:#ffffffd1;font-size:.88rem;line-height:1.6;opacity:0;max-height:0;overflow:hidden;transition:all .4s var(--ease-out-expo)}.product-card:hover .card-excerpt{opacity:1;max-height:80px;margin-bottom:14px}.product-card .card-arrow{width:44px;height:44px;border-radius:50%;background:var(--color-white);color:var(--color-accent);display:flex;align-items:center;justify-content:center;opacity:0;transform:translateY(10px);transition:all .4s var(--ease-out-expo)}.product-card:hover .card-arrow{opacity:1;transform:translateY(0)}.stats-section{background:var(--color-bg-alt);border-top:1px solid var(--color-border);border-bottom:1px solid var(--color-border);padding:clamp(60px,8vw,90px) 0;margin:var(--sp-12) 0}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.stat-item{text-align:center;padding:20px 24px;position:relative}.stat-item:not(:last-child):after{content:"";position:absolute;top:20%;right:0;width:1px;height:60%;background:var(--color-border)}.stat-number{font-family:var(--font-heading);font-size:clamp(2.6rem,4.2vw,4rem);font-weight:700;color:var(--color-accent);line-height:1;margin-bottom:8px}.stat-suffix{font-family:var(--font-accent);color:var(--color-gold);font-size:clamp(1.4rem,2.2vw,2rem);font-weight:500;margin-left:2px}.stat-label{font-family:var(--font-accent);letter-spacing:.12em;text-transform:uppercase;color:var(--color-text-muted);font-size:.82rem;font-weight:600}.why-section{margin:var(--sp-12) 0}.why-grid{display:grid;grid-template-columns:repeat(2,1fr);background:var(--color-white);border:1px solid var(--color-border);border-radius:var(--r-lg);overflow:hidden;box-shadow:var(--shadow-sm)}.why-item{padding:clamp(36px,4vw,56px);border-bottom:1px solid var(--color-border);border-right:1px solid var(--color-border);position:relative;transition:background .4s var(--ease-out-expo)}.why-item:nth-child(2n){border-right:none}.why-item:nth-last-child(-n+2){border-bottom:none}.why-item:hover{background:var(--color-bg-alt)}.why-icon{width:54px;height:54px;border-radius:14px;background:var(--color-accent-pale);color:var(--color-accent);display:flex;align-items:center;justify-content:center;margin-bottom:22px;transition:background .35s ease,transform .35s var(--ease-out-expo),color .35s}.why-item:hover .why-icon{background:var(--color-accent);color:var(--color-white);transform:scale(1.06)}.why-title{font-family:var(--font-heading);font-size:1.35rem;font-weight:600;color:var(--color-text);margin-bottom:10px}.why-text{color:var(--color-text-secondary);font-size:.94rem;line-height:1.75}.module-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--sp-5);margin:var(--sp-6) 0 var(--sp-12)}.module-card{background:var(--color-white);border:1px solid var(--color-border);border-radius:var(--r-md);padding:var(--sp-6);box-shadow:var(--shadow-xs);transition:all .35s var(--ease-out-expo)}.module-card:hover{border-color:var(--color-accent-pale);box-shadow:var(--shadow-md);transform:translateY(-4px);background:#fff}.module-icon{width:44px;height:44px;border-radius:12px;background:var(--color-accent-pale);color:var(--color-accent);display:flex;align-items:center;justify-content:center;margin-bottom:var(--sp-4);font-size:1.1rem;transition:all .3s}.module-card:hover .module-icon{background:var(--color-accent);color:var(--color-white)}.module-card h4{font-size:1.05rem;margin-bottom:.5rem;color:var(--color-text);font-weight:600}.module-card p{font-size:.85rem;color:var(--color-text-secondary);line-height:1.6;margin:0}.cta-section{background:var(--color-accent);color:var(--color-white);border-radius:var(--r-xl);padding:clamp(60px,8vw,96px) clamp(28px,5vw,72px);text-align:center;position:relative;overflow:hidden;margin:var(--sp-12) 0;box-shadow:var(--shadow-xl)}.cta-section:before{content:"";pointer-events:none;position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:radial-gradient(circle at 30% 70%,rgba(45,106,79,.4),transparent 50%),radial-gradient(circle at 70% 30%,rgba(184,134,11,.25),transparent 50%)}.cta-content{position:relative;z-index:1;max-width:720px;margin:0 auto}.cta-heading{font-size:clamp(2rem,4vw,3.4rem);color:var(--color-white);margin-bottom:1.25rem}.cta-text{color:#ffffffd9;font-size:clamp(1rem,1.2vw,1.18rem);line-height:1.8;margin-bottom:2.5rem}.cta-buttons{display:flex;align-items:center;justify-content:center;gap:18px;flex-wrap:wrap}.footer{background:#14241d;color:#ffffffbf;padding:clamp(60px,8vw,96px) 0 0;margin-top:auto;position:relative}.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1.2fr;gap:clamp(32px,4vw,64px);padding-bottom:clamp(40px,6vw,64px);border-bottom:1px solid rgba(255,255,255,.12)}.footer-brand .nav-brand-title{color:var(--color-white)}.footer-brand p{color:#ffffffa6;font-size:.9rem;line-height:1.7;margin:18px 0 24px}.footer-cert-badges{display:flex;gap:8px;flex-wrap:wrap}.footer-cert-pill{font-family:var(--font-accent);font-size:.7rem;font-weight:700;letter-spacing:.06em;color:var(--color-gold-light);background:#ffffff0f;border:1px solid rgba(212,168,75,.3);padding:4px 10px;border-radius:var(--r-full)}.footer-column h4{font-family:var(--font-accent);letter-spacing:.14em;text-transform:uppercase;color:var(--color-white);font-size:.85rem;font-weight:700;margin-bottom:22px}.footer-column ul{list-style:none}.footer-column ul li{margin-bottom:12px}.footer-column ul li a,.footer-column ul li button{background:none;border:none;color:#ffffffa6;font-size:.9rem;cursor:pointer;transition:color .25s;padding:0;text-align:left}.footer-column ul li a:hover,.footer-column ul li button:hover{color:var(--color-white)}.footer-contact-item{display:flex;align-items:flex-start;gap:12px;margin-bottom:14px}.footer-contact-item svg{width:18px;height:18px;stroke:var(--color-gold);flex-shrink:0;margin-top:3px}.footer-contact-item span{font-size:.88rem;line-height:1.6}.footer-bottom{display:flex;justify-content:space-between;align-items:center;padding:24px 0;gap:16px;flex-wrap:wrap}.footer-bottom p{color:#ffffff73;font-size:.82rem}.enterprise-auth-wrapper{min-height:100vh;display:flex;flex-direction:column;background-color:var(--color-bg);color:var(--color-text);position:relative}.auth-top-bar{display:flex;align-items:center;justify-content:space-between;padding:1.25rem clamp(20px,4vw,64px);background:#fafaf7e6;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-bottom:1px solid var(--color-border);gap:1.5rem;flex-wrap:wrap}.auth-brand{display:flex;align-items:center;gap:12px}.brand-titles{display:flex;flex-direction:column}.brand-name{font-family:var(--font-accent);font-size:1.2rem;font-weight:800;letter-spacing:.15em;color:var(--color-accent);line-height:1}.brand-tag{font-family:var(--font-accent);font-size:.65rem;font-weight:700;letter-spacing:.1em;color:var(--color-gold);text-transform:uppercase;margin-top:3px}.auth-security-badges{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.auth-sec-pill{display:inline-flex;align-items:center;gap:6px;font-size:.72rem;font-weight:700;font-family:var(--font-accent);letter-spacing:.05em;color:var(--color-accent);background:var(--color-accent-pale);border:1px solid rgba(27,67,50,.18);padding:.3rem .75rem;border-radius:var(--r-full)}.sec-dot{width:5px;height:5px;border-radius:50%;background:var(--color-accent)}.auth-main-container{flex:1;max-width:1320px;width:100%;margin:0 auto;padding:clamp(32px,5vw,64px) clamp(20px,4vw,48px);display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(36px,5vw,72px);align-items:start}.auth-context-pane{padding-top:.5rem}.context-kicker{display:inline-flex;align-items:center;gap:10px;font-family:var(--font-accent);font-size:.78rem;font-weight:700;letter-spacing:.14em;color:var(--color-accent);text-transform:uppercase;margin-bottom:1.25rem}.pulse-indicator{width:8px;height:8px;border-radius:50%;background:var(--color-accent);box-shadow:0 0 0 3px var(--color-accent-pale)}.context-headline{font-size:clamp(2.2rem,3.6vw,3.2rem);font-weight:600;line-height:1.12;color:var(--color-text);letter-spacing:-.025em;margin-bottom:1.25rem}.context-description{font-size:1.05rem;color:var(--color-text-secondary);line-height:1.75;margin-bottom:2.25rem;max-width:540px}.auth-metric-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-bottom:2.5rem}.metric-tile{background:var(--color-white);border:1px solid var(--color-border);border-radius:var(--r-md);padding:1.2rem 1.4rem;box-shadow:var(--shadow-sm);transition:all .3s var(--ease-out-expo)}.metric-tile:hover{border-color:var(--color-accent-pale);transform:translateY(-2px);box-shadow:var(--shadow-md)}.metric-value{font-family:var(--font-heading);font-size:1.75rem;font-weight:700;color:var(--color-accent);line-height:1.1;margin-bottom:.35rem}.metric-label{font-family:var(--font-accent);font-size:.82rem;font-weight:700;color:var(--color-text);margin-bottom:.2rem}.metric-sub{font-size:.75rem;color:var(--color-gold);font-weight:600}.auth-feature-list{display:flex;flex-direction:column;gap:1rem;border-top:1px solid var(--color-border);padding-top:1.75rem}.feature-item{display:flex;align-items:flex-start;gap:12px;font-size:.9rem;line-height:1.6;color:var(--color-text-secondary)}.feature-icon{width:24px;height:24px;border-radius:6px;background:var(--color-accent-pale);color:var(--color-accent);display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:2px}.auth-terminal-card{width:100%;max-width:540px;background:var(--color-white);border:1px solid var(--line);border-radius:var(--r-xs);box-shadow:var(--shadow-lg);overflow:hidden}.terminal-header{padding:1.75rem 2rem 1.5rem;border-bottom:1px solid var(--line);background:var(--paper)}.terminal-title-row{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:.4rem}.terminal-title-row h2{font-size:1.45rem;font-weight:750;color:var(--ink);margin:0;letter-spacing:-.02em}.terminal-badge{font-family:var(--font-mono);font-size:.68rem;font-weight:700;letter-spacing:.08em;background:var(--red-pale);color:var(--red);padding:.3rem .7rem;border-radius:var(--r-xs);border:1px solid rgba(196,19,48,.18)}.terminal-sub{font-size:.88rem;color:var(--muted);line-height:1.5;margin:0}.role-tabs-bar{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));background:var(--paper-alt);border-bottom:1px solid var(--line);padding:6px;gap:6px}.admin-subrole-switch{display:flex;background:var(--paper);border:1px solid var(--line);border-radius:var(--r-xs);padding:4px;gap:4px;margin-bottom:1.25rem}.admin-subrole-btn{flex:1;padding:.6rem .8rem;border:none;background:transparent;border-radius:var(--r-xs);font-family:var(--font-heading);font-size:.78rem;font-weight:700;color:var(--muted);cursor:pointer;transition:all .2s ease;text-align:center}.admin-subrole-btn.active{background:var(--color-white);color:var(--ink);font-weight:800;box-shadow:var(--shadow-sm);border:1px solid var(--line)}.role-tab-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;padding:.75rem .4rem;background:transparent;border:none;border-radius:var(--r-xs);color:var(--muted);font-family:var(--font-heading);font-size:.8rem;font-weight:700;cursor:pointer;transition:all .2s ease}.role-tab-btn:hover{color:var(--ink);background:#ffffffb3}.role-tab-btn.active{background:var(--color-white);color:var(--red);font-weight:800;box-shadow:var(--shadow-sm);border:1px solid var(--line)}.role-tab-icon{display:flex;align-items:center;justify-content:center}.role-tab-text{line-height:1.1;white-space:nowrap}.tab-context-banner{padding:1rem 2rem;background:var(--color-bg);border-bottom:1px solid var(--color-border-light)}.tab-context-info{display:flex;align-items:center;gap:8px;margin-bottom:4px}.tab-context-info strong{font-family:var(--font-accent);font-size:.88rem;color:var(--color-text)}.tab-context-badge{font-family:var(--font-accent);font-size:.68rem;font-weight:700;color:var(--color-gold)}.tab-context-desc{font-size:.82rem;color:var(--color-text-secondary);line-height:1.5}.terminal-form-body{padding:2rem}.form-group-block{margin-bottom:1.5rem}.auth-input-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.field-hint{font-size:.78rem;color:var(--color-text-muted);margin-top:6px;line-height:1.5}.auth-alt-action{margin-top:1.25rem;padding-top:1.25rem;border-top:1px solid var(--color-border-light);display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.alt-text{font-size:.82rem;color:var(--color-text-secondary)}.btn-auth-primary{width:100%;display:flex;align-items:center;justify-content:center;gap:10px;background:var(--color-accent);color:var(--color-white);border:none;padding:14px 28px;border-radius:var(--r-full);font-family:var(--font-accent);font-size:.88rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;cursor:pointer;box-shadow:var(--shadow-accent);transition:all .35s var(--ease-out-expo);margin-top:1rem}.btn-auth-primary:hover{background:var(--color-accent-hover);transform:translateY(-2px);box-shadow:0 12px 30px #1b433247}.terminal-footer-audit{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:1.5rem;font-family:var(--font-accent);font-size:.72rem;color:var(--color-text-muted);text-align:center}.auth-global-footer{border-top:1px solid var(--color-border);background:var(--color-bg);padding:1.5rem clamp(20px,4vw,64px)}.footer-content{display:flex;align-items:center;justify-content:space-between;font-size:.82rem;color:var(--color-text-muted);gap:16px;flex-wrap:wrap;max-width:1320px;margin:0 auto}.footer-links{display:flex;align-items:center;gap:8px}.card{background:var(--color-white);border:1px solid var(--line);border-radius:var(--r-xs);padding:clamp(20px,3vw,32px);margin-bottom:var(--sp-6);box-shadow:var(--shadow-sm);transition:all .2s ease}.card:hover{box-shadow:var(--shadow-md)}.card-inset{background:var(--paper);border:1px solid var(--line);border-radius:var(--r-xs);padding:var(--sp-5);margin-bottom:var(--sp-4)}.card-accent{position:relative}.card-accent:before{content:"";position:absolute;left:0;top:12px;bottom:12px;width:4px;background:var(--red);border-radius:0 2px 2px 0}.portal-header{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:1.25rem;flex-wrap:wrap}.portal-header-label{font-family:var(--font-mono);font-size:.72rem;font-weight:750;letter-spacing:.1em;color:var(--red);text-transform:uppercase;margin-bottom:3px}.inner-panel{background:var(--paper);border:1px solid var(--line);border-radius:var(--r-xs);padding:14px 18px}label{display:block;font-family:var(--font-heading);font-size:.78rem;font-weight:700;letter-spacing:.02em;text-transform:uppercase;color:var(--ink);margin:.8rem 0 .35rem}input[type=text],input[type=email],input[type=number],input[type=password],input[type=tel],select,textarea{width:100%;padding:.75rem 1rem;background:var(--color-white);border:1px solid var(--line);border-radius:var(--r-xs);font-family:var(--font-body);font-size:.92rem;color:var(--ink);outline:none;-moz-appearance:none;appearance:none;-webkit-appearance:none;transition:all .2s ease}select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%23102a43' stroke-width='2' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;padding-right:2.4rem;cursor:pointer}input:focus,select:focus,textarea:focus{border-color:var(--ink);box-shadow:0 0 0 3px #102a431f}input::placeholder,textarea::placeholder{color:var(--muted)}.badge{display:inline-flex;align-items:center;gap:6px;font-family:var(--font-mono);font-size:.72rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;padding:.3rem .75rem;border-radius:var(--r-xs)}.badge-approved,.badge-success{background:#f0fdf4;color:#166534;border:1px solid #bbf7d0}.badge-process,.badge-info{background:var(--paper);color:var(--ink);border:1px solid var(--line)}.badge-pending,.badge-warning{background:#fffbeb;color:#b45309;border:1px solid #fde68a}.badge-danger,.badge-red{background:var(--red-pale);color:var(--red);border:1px solid rgba(196,19,48,.25)}.badge-audit{background:var(--paper);color:var(--ink);border:1px solid var(--line)}table{width:100%;border-collapse:separate;border-spacing:0;margin:var(--sp-4) 0}th{background:var(--paper);font-family:var(--font-heading);font-size:.76rem;font-weight:750;letter-spacing:.04em;text-transform:uppercase;color:var(--ink);padding:12px 16px;text-align:left;border-bottom:1.5px solid var(--line)}th:first-child{border-top-left-radius:var(--r-xs)}th:last-child{border-top-right-radius:var(--r-xs)}td{padding:14px 16px;border-bottom:1px solid var(--line-light);font-size:.88rem;color:var(--ink)}tr:hover td{background:var(--paper)}.stepper-container{display:flex;align-items:center;justify-content:space-between;margin:var(--sp-6) 0;position:relative}.stepper-container:before{content:"";position:absolute;top:18px;left:30px;right:30px;height:2px;background:var(--line);z-index:0}.step-node{display:flex;flex-direction:column;align-items:center;gap:8px;position:relative;z-index:1}.step-icon{width:38px;height:38px;border-radius:50%;background:#fff;border:2px solid var(--line);color:var(--muted);font-family:var(--font-mono);font-size:.85rem;font-weight:700;display:flex;align-items:center;justify-content:center;transition:all .25s}.step-node.active .step-icon{border-color:var(--red);background:var(--red);color:#fff;box-shadow:0 0 0 4px var(--red-pale)}.step-node.completed .step-icon{border-color:var(--ink);background:var(--ink);color:#fff}.step-label{font-family:var(--font-heading);font-size:.76rem;font-weight:750;letter-spacing:.02em;color:var(--muted);text-transform:uppercase}.step-node.active .step-label{color:var(--red);font-weight:800}.step-node.completed .step-label{color:var(--ink);font-weight:800}.toast-container{position:fixed;bottom:30px;right:30px;z-index:9999;display:flex;flex-direction:column;gap:10px}.toast{background:var(--ink);color:#fff;padding:14px 22px;border-radius:var(--r-xs);box-shadow:var(--shadow-xl);font-family:var(--font-body);font-size:.9rem;font-weight:600;border-left:4px solid var(--red);display:flex;align-items:center;gap:10px;animation:toastSlideUp .35s var(--ease-out-expo) forwards}@keyframes toastSlideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#14241d99;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);z-index:9999;display:flex;align-items:center;justify-content:center;padding:24px}.modal-content{background:var(--color-white);border:1px solid var(--color-border);border-radius:var(--r-xl);max-width:780px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:var(--shadow-xl);padding:clamp(24px,4vw,40px);position:relative}@media (max-width: 1100px){.hero-inner-grid{grid-template-columns:1fr;text-align:center}.hero-subtitle{margin-left:auto;margin-right:auto}.hero-cta-row,.hero-label{justify-content:center}.products-grid{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:1fr 1fr;gap:40px}.footer-brand{grid-column:1 / -1}}@media (max-width: 900px){.auth-main-container,.why-grid{grid-template-columns:1fr}.why-item{border-right:none!important}.workflow-grid{grid-template-columns:1fr 1fr}.workflow-step:nth-child(2){border-right:none}.stats-grid{grid-template-columns:repeat(2,1fr)}.stat-item:nth-child(2):after{display:none}.module-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 768px){.nav-center-menu{display:none}.grid-2,.grid-3,.grid-4,.workflow-grid{grid-template-columns:1fr}.workflow-step{border-right:none;border-bottom:1px solid var(--color-border)}.products-grid,.stats-grid{grid-template-columns:1fr}.stat-item:after{display:none!important}.module-grid,.footer-grid{grid-template-columns:1fr}}.btn-ghost{background:transparent;color:var(--ink);border:1px solid transparent}.btn-ghost:hover{background:var(--paper);color:var(--red);border-color:var(--line)}.wizard-steps{display:flex;align-items:center;justify-content:space-between;margin:var(--sp-6) 0 var(--sp-8);padding:16px 20px;background:var(--paper);border:1px solid var(--line);border-radius:var(--r-xs);gap:12px;flex-wrap:wrap}.wizard-step-item{display:flex;align-items:center;gap:10px;transition:all .2s ease;-webkit-user-select:none;user-select:none}.wiz-step-num{width:30px;height:30px;border-radius:var(--r-xs);background:#fff;border:1.5px solid var(--line);color:var(--muted);font-family:var(--font-mono);font-size:.8rem;font-weight:750;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.wiz-step-label{font-family:var(--font-heading);font-size:.82rem;font-weight:700;color:var(--muted);transition:color .2s ease;white-space:nowrap}.wizard-step-item.active .wiz-step-num{background:var(--red);border-color:var(--red);color:#fff;box-shadow:0 0 0 3px var(--red-pale)}.wizard-step-item.active .wiz-step-label{color:var(--red);font-weight:800}.wizard-step-item.completed .wiz-step-num{background:var(--ink);border-color:var(--ink);color:#fff}.wizard-step-item.completed .wiz-step-label{color:var(--ink);font-weight:750}.wiz-connector{flex:1;height:2px;background:var(--line);min-width:14px;transition:background-color .2s ease}.wizard-panel{padding:var(--sp-4) 0;animation:fadeIn .25s ease-out}.wizard-nav{margin-top:var(--sp-8);padding-top:var(--sp-5);border-top:1px solid var(--line)}#viewerModal{position:fixed;top:0;right:0;bottom:0;left:0;background:#102a43b3;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:9990;display:flex;align-items:center;justify-content:center;padding:20px}.viewer-box{background:#fff;border:1px solid var(--line);border-radius:var(--r-xs);box-shadow:var(--shadow-xl);max-width:820px;width:100%;padding:28px}.canvas-container{height:280px;background:var(--paper);border:1px solid var(--line);border-radius:var(--r-xs);display:flex;align-items:center;justify-content:center;margin-top:16px;position:relative}.starting-gate-wrapper{min-height:100vh;display:flex;flex-direction:column;background:#fff}.gate-header{height:54px;border-bottom:1px solid var(--line-light);background:#fffffffa;display:flex;align-items:center}.gate-header-inner{display:flex;align-items:center;justify-content:space-between;width:100%}.gate-brand{display:flex;align-items:center;gap:12px}.gate-brand-meta{display:flex;flex-direction:column}.gate-brand-title{font-family:var(--font-heading);font-size:1.55rem;font-weight:800;letter-spacing:-.06em;color:var(--ink);line-height:1}.gate-brand-sub{font-family:var(--font-mono);font-size:.6rem;font-weight:700;letter-spacing:.12em;color:var(--muted);text-transform:uppercase;margin-top:3px}.gate-secure-badge{display:inline-flex;align-items:center;gap:8px;background:var(--paper);border:1px solid var(--line);padding:.35rem .85rem;border-radius:var(--r-xs);font-family:var(--font-mono);font-size:.72rem;font-weight:700;color:var(--ink);letter-spacing:.04em;text-transform:uppercase}.gate-main-container{flex:1;display:flex;align-items:flex-start;padding:20px 0 36px;background:linear-gradient(135deg,#f8fafc,#fff,#edf2f6)}.gate-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:48px;align-items:flex-start}.gate-intro-col{padding-right:20px;padding-top:4px}.gate-title{font-size:clamp(2rem,3.8vw,3.2rem);line-height:1.05;letter-spacing:-.05em;color:var(--ink);margin:0 0 16px;font-family:var(--font-heading)}.gate-title .brand-accent-o{color:var(--red)}.gate-description{font-size:1.08rem;line-height:1.65;color:var(--color-text-secondary);max-width:580px;margin-bottom:32px}.gate-features-grid{display:flex;flex-direction:column;gap:16px;margin-bottom:32px}.gate-feature-card{display:flex;align-items:flex-start;gap:14px;padding:14px 18px;background:#fff;border:1px solid var(--line);border-radius:var(--r-xs);box-shadow:0 2px 8px #102a430a}.gate-feature-icon{width:36px;height:36px;background:var(--red-pale);color:var(--red);border:1px solid rgba(196,19,48,.2);border-radius:var(--r-xs);display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:2px}.gate-feature-card h4{margin:0 0 3px;font-size:.94rem;color:var(--ink);font-weight:750}.gate-feature-card p{margin:0;font-size:.82rem;line-height:1.45;color:var(--muted)}.gate-metrics-strip{display:flex;gap:28px;padding-top:20px;border-top:1px solid var(--line)}.gate-metrics-strip div b{display:block;font-size:1.15rem;font-weight:800;color:var(--ink);font-family:var(--font-heading)}.gate-metrics-strip div span{font-size:.76rem;color:var(--muted);font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.05em}.gate-form-card{background:#fff;border:1px solid var(--line);border-radius:var(--r-xs);box-shadow:var(--shadow-xl);overflow:hidden}.gate-form-header{padding:22px 26px 18px;background:var(--paper);border-bottom:1px solid var(--line)}.gate-form-body{padding:26px}.form-group-block{margin-bottom:14px}.input-error{border-color:var(--red)!important;background:var(--red-pale)!important}.field-error-msg{display:block;color:var(--red);font-size:.72rem;font-weight:700;margin-top:4px;font-family:var(--font-mono)}.phone-input-group{display:flex;gap:6px;align-items:stretch}.phone-country-select{flex:0 0 72px;width:72px;max-width:76px;cursor:pointer;font-weight:600;font-size:.88rem;padding:.75rem 1.15rem .75rem .55rem!important;background-position:right 5px center!important}.phone-input-group input{flex:1;min-width:0}.gate-privacy-note{display:flex;align-items:flex-start;gap:8px;margin-top:16px;font-size:.74rem;color:var(--muted);line-height:1.45}.gate-privacy-note svg{color:var(--ink);flex-shrink:0;margin-top:2px}.gate-footer{background:#0c2235;padding:20px 0;border-top:1px solid #1f3d53}.visitor-badge-pill{display:inline-flex;align-items:center;gap:8px;background:var(--paper);border:1px solid var(--line);padding:.35rem .85rem;border-radius:var(--r-xs);font-size:.8rem;font-weight:700;font-family:var(--font-heading);color:var(--ink)}.visitor-switch-btn{background:none;border:none;color:var(--red);font-family:var(--font-mono);font-size:.7rem;font-weight:700;cursor:pointer;padding:0;margin-left:4px;text-decoration:underline}.visitor-switch-btn:hover{color:var(--red-hover)}.visitor-welcome-ribbon{background:var(--ink);color:#fff;padding:10px 0;font-size:.82rem;border-bottom:1px solid var(--ink-2)}.visitor-welcome-inner{display:flex;align-items:center;justify-content:space-between;gap:12px}.vendor-tabs-bar{display:flex;background:var(--paper-alt);border:1px solid var(--line);border-radius:var(--r-sm);padding:5px;gap:6px;margin-bottom:1.5rem;overflow-x:auto}.vendor-tab-btn{display:inline-flex;align-items:center;gap:8px;padding:.65rem 1.15rem;border:none;background:transparent;border-radius:var(--r-xs);font-family:var(--font-heading);font-size:.85rem;font-weight:600;color:var(--muted);cursor:pointer;transition:all .2s ease;white-space:nowrap}.vendor-tab-btn:hover{color:var(--ink);background:#00000008}.vendor-tab-btn.active{background:#fff;color:var(--ink);font-weight:700;box-shadow:0 2px 6px #0000000f;border:1px solid var(--line)}.vendor-tab-badge{background:var(--line);color:var(--ink);padding:2px 8px;border-radius:12px;font-size:.72rem;font-weight:700}.vendor-tab-btn.active .vendor-tab-badge{background:var(--red-pale);color:var(--red)}.vendor-flow-card{background:#fff;border:1px solid var(--line);border-radius:var(--r-sm);padding:1.25rem 1.5rem;margin-bottom:1.5rem;box-shadow:var(--shadow-sm)}.vendor-flow-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:1rem}.vendor-flow-step{padding:12px;background:var(--paper);border-radius:var(--r-xs);border-left:3px solid var(--line);transition:all .2s ease}.vendor-flow-step.active{border-left-color:var(--red);background:snow}.vendor-flow-step-num{font-family:var(--font-mono);font-size:.7rem;font-weight:700;color:var(--muted);text-transform:uppercase;margin-bottom:4px}.vendor-flow-step-title{font-weight:700;font-size:.86rem;color:var(--ink);margin-bottom:3px}.vendor-flow-step-desc{font-size:.76rem;color:var(--color-text-secondary);line-height:1.4}@media (max-width: 960px){.vendor-flow-steps{grid-template-columns:repeat(2,1fr)}}@media (max-width: 960px){.gate-grid{grid-template-columns:1fr;gap:36px}.gate-intro-col{padding-right:0}}:focus-visible:not(.hex-corner-node):not(.hex-core-center){outline:3px solid var(--red);outline-offset:3px}button:disabled{opacity:.6;cursor:wait}button.nav-brand-section{background:transparent;border:0;text-align:left}.auth-page{padding:2rem 1rem 4rem}.auth-page .auth-terminal-card{max-width:540px;margin:2rem auto}.auth-page .terminal-header,.auth-page .terminal-form-body{padding:1.5rem}.auth-page h1{font-size:1.6rem}.auth-fields{border:0;padding:0;margin:0;min-width:0}.auth-fields .btn-auth-primary{width:100%;margin-top:1rem}#toast-container{max-width:calc(100vw - 48px);overflow-wrap:anywhere}.viewer-box{max-height:90dvh;overflow-y:auto}@media (max-width: 768px){.enterprise-navbar{flex-wrap:wrap;gap:12px;padding:12px 16px}.nav-center-menu{display:flex;order:3;width:100%;overflow-x:auto;justify-content:flex-start}.nav-item-link{flex-shrink:0}.nav-actions{flex-wrap:wrap;min-width:0}.visitor-badge-pill{max-width:100%;flex-wrap:wrap}.portal-header,.flex-between{flex-wrap:wrap;gap:12px}}@media (prefers-reduced-motion: reduce){.auth-page *,.cad-dialog *{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}.cad-dialog{border:1px solid var(--line);width:min(900px,calc(100vw - 32px));margin:auto;color:var(--ink)}.cad-dialog::backdrop{background:#102a43a6}.gate-otp-block{margin-top:18px;padding-top:16px;border-top:1px solid var(--line)}.gate-otp-subheading{font-family:var(--font-heading);font-size:.88rem;font-weight:750;color:var(--ink);margin-bottom:3px;display:block}.gate-otp-hint{font-size:.76rem;color:var(--muted);margin:0 0 10px;line-height:1.4}.gate-otp-row{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin-top:8px}.gate-otp-boxes{display:flex;gap:6px}.gate-otp-boxes input{width:clamp(30px,7vw,40px);min-width:0;height:44px;padding:0;text-align:center;font-size:1.1rem;font-weight:700}.gate-otp-row .btn{white-space:nowrap}.account-page{display:grid;gap:20px;padding-top:clamp(28px,5vw,56px);padding-bottom:64px}.account-hero,.account-section-heading{display:flex;align-items:center;justify-content:space-between;gap:16px}.account-hero h1,.account-section-heading h2{margin:0}.account-hero p{color:var(--muted);margin:6px 0 0}.account-id-card{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px 24px;color:#fff;background:linear-gradient(135deg,var(--ink-dark),var(--ink-2));border-radius:var(--r-lg);box-shadow:var(--shadow-md)}.account-id-card>div{display:grid;gap:6px}.account-eyebrow{color:#cbd5e1;font-size:.72rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.account-id-card strong{font-family:var(--font-mono);font-size:clamp(1rem,3vw,1.45rem);letter-spacing:.04em;overflow-wrap:anywhere}.account-code-hint{color:#cbd5e1;font-family:var(--font-mono);font-size:.8rem;white-space:nowrap}.account-onboarding{display:flex;align-items:center;justify-content:space-between;gap:20px;border-left:4px solid var(--red)}.account-onboarding h2{margin:0 0 6px}.account-onboarding .subtitle{margin:0}.account-section-heading{margin-bottom:18px}.account-count{display:inline-flex;align-items:center;justify-content:center;min-width:26px;height:26px;margin-left:4px;padding:0 7px;color:var(--ink);background:var(--paper-alt);border-radius:var(--r-full);font-size:.78rem;vertical-align:middle}.account-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 24px}.account-detail-grid>div{display:grid;gap:4px;min-width:0}.account-detail-grid span{color:var(--muted);font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.account-detail-grid strong{overflow-wrap:anywhere}.account-table-wrap{overflow-x:auto}.account-table{width:100%;min-width:650px;border-collapse:collapse}.account-table th,.account-table td{padding:12px 10px;border-bottom:1px solid var(--line);text-align:left;vertical-align:middle}.account-table th{color:var(--muted);font-size:.7rem;letter-spacing:.06em;text-transform:uppercase}.account-table td{font-size:.84rem}.account-empty{margin:0;padding:24px;color:var(--muted);text-align:center;background:var(--paper);border-radius:var(--r-md)}@media (max-width: 640px){.account-hero,.account-id-card,.account-onboarding{align-items:flex-start;flex-direction:column}.account-detail-grid{grid-template-columns:1fr}}.cad-analyzer-container{display:flex;flex-direction:column;height:100%;background:#0d1b2a;color:#f0f4f8}.cad-analyzer-header{padding:14px 20px;background:#0c121e;border-bottom:1px solid rgba(148,163,184,.12);display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}.cad-title-badge{display:flex;align-items:center;gap:12px}.cad-engine-pill{font-family:DM Mono,monospace;font-size:.65rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;background:#38bdf814;color:#38bdf8;border:1px solid rgba(56,189,248,.25);padding:3px 8px;border-radius:4px}.cad-title-badge h1{font-size:1.15rem;font-weight:600;color:#f8fafc;margin:0;letter-spacing:-.015em}.cad-header-sub{margin:4px 0 0;font-size:.78rem;color:#94a3b8}.cad-header-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.cad-preset-selector-group{display:flex;align-items:center;gap:8px;font-size:.78rem;color:#94a3b8}.cad-select-input{background:#111a2d;color:#f1f5f9;border:1px solid rgba(148,163,184,.16);border-radius:6px;padding:6px 12px;font-size:.8rem;font-family:inherit;outline:none;cursor:pointer;transition:border-color .15s ease}.cad-select-input:focus{border-color:#38bdf8}.btn-reanalyze{background:#0284c7!important;border-color:#0284c7!important;color:#fff!important;font-weight:600!important;border-radius:6px!important;transition:all .15s ease}.btn-reanalyze:hover:not(:disabled){background:#0369a1!important;transform:translateY(-1px)}.cad-close-btn{background:none;border:1px solid rgba(148,163,184,.16);color:#94a3b8;font-size:.9rem;width:32px;height:32px;border-radius:6px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s ease}.cad-close-btn:hover{background:#94a3b81a;color:#f8fafc}.cad-workstation-grid{display:grid;grid-template-columns:1.05fr 1fr;flex:1;overflow:hidden;height:calc(100% - 75px)}.cad-drawing-viewport-card{display:flex;flex-direction:column;background:#090e17;border-right:1px solid rgba(148,163,184,.1);position:relative;overflow:hidden}.cad-viewport-toolbar{padding:10px 16px;background:#0b111e;border-bottom:1px solid rgba(148,163,184,.1);display:flex;align-items:center;justify-content:space-between;gap:12px}.cad-drawing-meta{display:flex;align-items:center;gap:10px}.cad-drawing-id{font-family:DM Mono,monospace;font-size:.72rem;font-weight:600;color:#38bdf8;background:#38bdf814;padding:2px 7px;border-radius:4px;border:1px solid rgba(56,189,248,.2);letter-spacing:.02em}.cad-part-name{font-size:.84rem;font-weight:600;color:#f8fafc}.cad-viewport-controls{display:flex;align-items:center;gap:3px;background:#111a2d;border-radius:6px;padding:2px 4px;border:1px solid rgba(148,163,184,.14)}.cad-viewport-controls button{background:none;border:none;color:#94a3b8;font-size:.82rem;font-weight:600;padding:3px 8px;cursor:pointer;border-radius:4px;transition:all .15s ease}.cad-viewport-controls button:hover{background:#94a3b81f;color:#f8fafc}.cad-zoom-label{font-size:.72rem;color:#94a3b8;min-width:38px;text-align:center;font-family:DM Mono,monospace;font-weight:500}.cad-canvas-container{flex:1;position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center;background:radial-gradient(circle at center,#0f192b,#080d16);-webkit-user-select:none;user-select:none}.cad-drawing-pan-layer{position:relative;width:95%;height:90%;display:flex;align-items:center;justify-content:center;transition:transform .05s ease-out}.cad-svg-wrapper,.cad-uploaded-image-wrapper{width:100%;height:100%;display:flex;align-items:center;justify-content:center}.cad-custom-img{max-width:100%;max-height:100%;object-fit:contain;border:1px solid rgba(148,163,184,.15);box-shadow:0 8px 24px #00000080;border-radius:4px}.cad-custom-pdf{width:100%;height:100%;min-height:0;border:1px solid rgba(148,163,184,.15);background:#fff}.cad-analyzer-notice,.cad-analyzer-error{display:flex;align-items:center;gap:10px;padding:8px 18px;border-bottom:1px solid rgba(148,163,184,.1);background:#0f172a;color:#cbd5e1;font-size:.76rem;line-height:1.4}.cad-analyzer-notice.sample{background:#f59e0b0d;border-color:#f59e0b2e;color:#fde68a}.cad-analyzer-notice strong,.cad-analyzer-error strong{color:#f8fafc;white-space:nowrap;font-weight:600}.cad-model-label{margin-left:auto;color:#64748b;white-space:nowrap;font-family:DM Mono,monospace;font-size:.7rem}.cad-analyzer-error{background:#ef444414;border-color:#ef444440;color:#fca5a5}.cad-details-panel-card.empty>.cad-panel-tabs,.cad-details-panel-card.empty>.cad-tab-content-scroll{display:none}.cad-analyzer-empty{display:flex;flex:1;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:28px;text-align:center;color:#9fb3c8;font-size:.84rem}.cad-analyzer-empty strong{color:#fff;font-size:1rem}.cad-balloon-pin{position:absolute;width:24px;height:24px;border-radius:50%;background:#0284c7;color:#fff;display:flex;align-items:center;justify-content:center;font-family:DM Mono,monospace;font-size:.72rem;font-weight:700;border:2px solid #ffffff;box-shadow:0 2px 8px #00000080;cursor:pointer;transform:translate(-50%,-50%);transition:all .18s ease;z-index:20}.cad-balloon-pin:hover,.cad-balloon-pin.hovered{transform:translate(-50%,-50%) scale(1.25);background:#0ea5e9;box-shadow:0 0 0 4px #0ea5e959,0 4px 12px #0009;z-index:40}.cad-balloon-pin.selected{transform:translate(-50%,-50%) scale(1.3);background:#f43f5e;border-color:#fff;box-shadow:0 0 0 5px #f43f5e59,0 6px 16px #000000b3;z-index:50}.cad-balloon-tooltip{position:absolute;bottom:calc(100% + 10px);left:50%;transform:translate(-50%);background:#0f172a;border:1px solid rgba(148,163,184,.2);border-radius:6px;padding:8px 12px;font-size:.75rem;color:#f1f5f9;white-space:nowrap;pointer-events:none;box-shadow:0 10px 25px -5px #000000b3;z-index:60;line-height:1.45}.cad-balloon-tooltip:after{content:"";position:absolute;top:100%;left:50%;transform:translate(-50%);border-width:5px;border-style:solid;border-color:#0f172a transparent transparent transparent}.tooltip-op-tag{font-family:DM Mono,monospace;font-weight:600;color:#38bdf8;margin-bottom:2px}.cad-analysis-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:#090e17e0;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:90;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px}.cad-scan-line{position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent,#38bdf8,transparent);box-shadow:0 0 14px #38bdf8cc;animation:cadScanAnim 2s infinite ease-in-out}@keyframes cadScanAnim{0%{top:5%;opacity:.3}50%{top:92%;opacity:1}to{top:5%;opacity:.3}}.cad-loading-spinner{width:40px;height:40px;border:3px solid rgba(56,189,248,.15);border-top-color:#38bdf8;border-radius:50%;animation:spin .8s linear infinite}.cad-loading-text{font-size:.84rem;font-weight:500;color:#94a3b8;letter-spacing:.01em}.cad-canvas-footer-legend{padding:8px 16px;background:#0b111e;border-top:1px solid rgba(148,163,184,.1);display:flex;align-items:center;gap:16px;font-size:.72rem;color:#94a3b8;flex-wrap:wrap}.legend-dot{width:8px;height:8px;border-radius:50%}.legend-badge{background:#94a3b81f;color:#cbd5e1;padding:1px 6px;border-radius:3px;font-weight:600;text-transform:uppercase;font-size:.65rem;letter-spacing:.04em}.cad-details-panel-card{display:flex;flex-direction:column;background:#0c121e;overflow:hidden;border-left:1px solid rgba(148,163,184,.1)}.cad-panel-tabs{display:flex;background:#090e17;border-bottom:1px solid rgba(148,163,184,.12);overflow-x:auto}.cad-tab-btn{padding:12px 16px;background:transparent;border:none;border-bottom:2px solid transparent;color:#94a3b8;font-family:inherit;font-size:.8rem;font-weight:500;cursor:pointer;white-space:nowrap;transition:all .15s ease;margin-bottom:-1px}.cad-tab-btn:hover{color:#f1f5f9;background:#ffffff05}.cad-tab-btn.active{color:#f8fafc;border-bottom-color:#38bdf8;background:#38bdf80a;font-weight:600}.cad-tab-content-scroll{flex:1;overflow-y:auto;padding:18px 20px}.cad-op-summary-bar{display:flex;align-items:center;gap:20px;background:#111a2c;border:1px solid rgba(148,163,184,.12);border-radius:6px;padding:10px 16px;margin-bottom:14px}.op-summary-stat{display:flex;align-items:baseline;gap:8px}.stat-label{font-size:.72rem;text-transform:uppercase;letter-spacing:.04em;color:#64748b;font-weight:500}.stat-value{font-size:.88rem;color:#f8fafc;font-weight:600;font-family:DM Mono,monospace}.op-summary-divider{width:1px;height:18px;background:#94a3b826}.cad-process-flow-strip{display:flex;align-items:center;gap:6px;overflow-x:auto;padding-bottom:12px;margin-bottom:14px}.flow-node{display:inline-flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;padding:6px 12px;background:#111a2c;border:1px solid rgba(148,163,184,.12);border-radius:6px;color:#94a3b8;cursor:pointer;transition:all .15s ease;white-space:nowrap}.flow-node:hover{background:#162238;border-color:#94a3b840;color:#f1f5f9}.flow-node.active{background:#152540;border-color:#38bdf8;color:#38bdf8;box-shadow:0 0 0 1px #38bdf859}.flow-node-cat{font-size:.62rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:#64748b}.flow-node.active .flow-node-cat{color:#38bdf8}.flow-node-label{font-family:DM Mono,monospace;font-size:.75rem;font-weight:600}.flow-connector{color:#475569;font-size:.85rem;-webkit-user-select:none;user-select:none}.cad-operations-timeline{display:flex;flex-direction:column;gap:12px}.cad-operation-card{background:#111b2d;border:1px solid rgba(148,163,184,.12);border-radius:8px;padding:16px 18px;cursor:pointer;transition:all .18s ease;position:relative}.cad-operation-card:hover{background:#142238;border-color:#94a3b83d;transform:translateY(-1px)}.cad-operation-card.active{border-color:#38bdf8;border-left:3px solid #38bdf8;background:#14243e;box-shadow:0 4px 20px -2px #38bdf81f}.op-card-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}.op-card-header-left{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.op-seq-badge{font-family:DM Mono,monospace;font-weight:600;font-size:.72rem;background:#38bdf81a;color:#38bdf8;border:1px solid rgba(56,189,248,.25);padding:2px 7px;border-radius:4px;letter-spacing:.02em}.op-category-pill{font-size:.7rem;color:#94a3b8;background:#94a3b81a;padding:2px 7px;border-radius:4px;font-weight:500}.op-stage-pill{font-size:.68rem;color:#64748b;text-transform:uppercase;letter-spacing:.04em;font-weight:500}.op-time-badge{display:inline-flex;align-items:center;gap:5px;color:#94a3b8;font-size:.72rem;font-family:DM Mono,monospace;background:#94a3b814;padding:3px 8px;border-radius:4px}.op-balloon-link-badge{display:inline-flex;align-items:center;gap:5px;background:#38bdf814;border:1px solid rgba(56,189,248,.25);color:#38bdf8;font-size:.72rem;font-weight:500;padding:3px 9px;border-radius:4px;cursor:pointer;white-space:nowrap;transition:all .15s ease}.op-balloon-link-badge:hover{background:#38bdf8;color:#0c121e;border-color:#38bdf8}.op-title-text{font-size:.95rem;font-weight:600;color:#f8fafc;margin:0 0 10px;letter-spacing:-.01em;line-height:1.35}.op-subordinated-feature-box{background:#0f172a99;border:1px solid rgba(148,163,184,.1);border-left:2px solid #38bdf8;border-radius:4px;padding:7px 12px;font-size:.78rem;color:#e2e8f0;margin-bottom:12px;display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.feature-prefix{font-size:.68rem;color:#64748b;text-transform:uppercase;letter-spacing:.05em;font-weight:600}.feature-desc{color:#f1f5f9;font-weight:500}.op-tolerance-tag{background:#38bdf814;color:#38bdf8;font-family:DM Mono,monospace;font-size:.7rem;padding:2px 7px;border-radius:3px;border:1px solid rgba(56,189,248,.2)}.op-specs-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px 16px;margin-bottom:10px}.op-spec-item{display:flex;flex-direction:column;gap:3px}.spec-label-row{display:flex;align-items:center;gap:5px;color:#64748b}.spec-label{color:#64748b;font-size:.68rem;text-transform:uppercase;letter-spacing:.04em;font-weight:600}.spec-value{color:#cbd5e1;font-size:.8rem;line-height:1.35}.op-cutting-params-strip{display:flex;align-items:center;gap:12px;background:#090e17a6;border:1px solid rgba(148,163,184,.08);border-radius:4px;padding:6px 12px;font-size:.72rem;flex-wrap:wrap;margin-top:4px}.param-label{color:#64748b;font-weight:600;font-size:.68rem;text-transform:uppercase;letter-spacing:.04em}.param-chips-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.param-item{color:#e2e8f0;font-family:DM Mono,monospace;font-size:.72rem}.param-key{color:#64748b;font-weight:600;margin-right:2px}.cad-tab-intro{margin-bottom:16px}.cad-tab-intro h3{font-size:1rem;font-weight:600;color:#f8fafc;margin:0 0 4px}.cad-tab-intro p{font-size:.8rem;color:#94a3b8;margin:0;line-height:1.45}.cad-machines-grid{display:grid;grid-template-columns:1fr;gap:12px}.cad-machine-card{background:#111b2d;border:1px solid rgba(148,163,184,.12);border-radius:8px;padding:16px 18px}.machine-card-header{display:flex;align-items:center;gap:12px;margin-bottom:12px}.machine-icon-box{width:34px;height:34px;background:#38bdf814;border:1px solid rgba(56,189,248,.2);color:#38bdf8;border-radius:6px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.machine-title-group h4{font-size:.92rem;font-weight:600;color:#f8fafc;margin:0}.vendor-suitability-pill{font-size:.68rem;color:#10b981;background:#10b9811a;border:1px solid rgba(16,185,129,.25);padding:2px 7px;border-radius:4px;font-weight:600}.specs-subheading{font-size:.68rem;color:#64748b;text-transform:uppercase;letter-spacing:.04em;font-weight:600;display:block;margin-bottom:4px}.specs-text{font-size:.8rem;color:#cbd5e1;margin:0 0 12px;line-height:1.45}.op-chip{background:#172439;color:#94a3b8;font-family:DM Mono,monospace;font-size:.72rem;padding:3px 8px;border-radius:4px;border:1px solid rgba(148,163,184,.14)}.cad-tooling-table-wrap{overflow-x:auto;border:1px solid rgba(148,163,184,.12);border-radius:6px}.cad-tooling-table th{background:#090e17;color:#64748b;font-size:.68rem;text-transform:uppercase;letter-spacing:.05em;font-weight:600;padding:10px 14px;border-bottom:1px solid rgba(148,163,184,.12)}.cad-tooling-table td{padding:10px 14px;border-bottom:1px solid rgba(148,163,184,.08);color:#cbd5e1}.cad-tooling-table tr:hover{background:#ffffff05}.tool-category-badge{background:#94a3b81a;color:#94a3b8;font-size:.68rem;padding:2px 6px;border-radius:3px;font-weight:500}.tool-code-mono{font-family:DM Mono,monospace;color:#f1f5f9;font-weight:600}.tool-coating-text{color:#94a3b8;font-size:.75rem}.cad-dfm-section{background:#111b2d;border:1px solid rgba(148,163,184,.12);border-radius:8px;padding:16px 18px;margin-bottom:14px}.dfm-section-header{display:flex;align-items:center;gap:8px;color:#38bdf8;margin-bottom:12px}.dfm-section-header h4{font-size:.88rem;font-weight:600;color:#f8fafc;margin:0}.tol-badge-card{display:flex;align-items:center;gap:8px;background:#0f172a99;border:1px solid rgba(148,163,184,.1);border-radius:4px;padding:7px 12px;font-size:.78rem;color:#e2e8f0;font-family:DM Mono,monospace}.tol-check{color:#10b981;display:flex;align-items:center}.tol-text{color:#e2e8f0}.dfm-rec-item{display:flex;align-items:flex-start;gap:10px;background:#0f172a99;border:1px solid rgba(148,163,184,.1);border-radius:4px;padding:10px 14px}.dfm-bullet{color:#38bdf8;font-size:1rem;line-height:1}.dfm-rec-item p{margin:0;font-size:.8rem;color:#cbd5e1;line-height:1.5}.cad-flow-diagram{display:flex;flex-direction:column;gap:14px;margin-bottom:16px}.flow-swimlane{background:#111b2d;border:1px solid rgba(148,163,184,.12);border-radius:8px;padding:14px 16px}.swimlane-header{display:flex;align-items:center;gap:8px;margin-bottom:10px}.swimlane-cat-code{font-family:DM Mono,monospace;font-size:.68rem;font-weight:600;background:#38bdf81a;color:#38bdf8;padding:2px 6px;border-radius:3px;letter-spacing:.04em}.swimlane-title{font-size:.86rem;font-weight:600;color:#f8fafc}.swimlane-count{font-size:.72rem;color:#64748b;margin-left:auto}.swimlane-op-card{background:#152238;border:1px solid rgba(148,163,184,.12);border-radius:6px;padding:10px 12px;cursor:pointer;transition:all .15s ease}.swimlane-op-card:hover{background:#192b47;border-color:#94a3b840}.swimlane-op-card.active{border-color:#38bdf8;background:#172a4c;box-shadow:0 0 0 1px #38bdf84d}.swim-op-badge{font-family:DM Mono,monospace;font-size:.7rem;font-weight:600;color:#38bdf8}.swim-op-time{display:inline-flex;align-items:center;gap:4px;font-family:DM Mono,monospace;font-size:.68rem;color:#94a3b8}.swim-op-name{font-size:.8rem;font-weight:600;color:#f8fafc;margin:0 0 4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.swim-op-machine{font-size:.72rem;color:#94a3b8;margin:0 0 2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.swim-op-tool{font-size:.7rem;color:#64748b;margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cad-flow-summary-bar{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;background:#111a2c;border:1px solid rgba(148,163,184,.12);border-radius:6px;padding:12px 16px}.flow-summary-item{display:flex;flex-direction:column;gap:2px}.flow-summary-label{font-size:.68rem;color:#64748b;text-transform:uppercase;letter-spacing:.04em;font-weight:500}.flow-summary-value{font-family:DM Mono,monospace;font-size:.95rem;font-weight:600;color:#f8fafc}@media (max-width: 980px){.cad-workstation-grid{grid-template-columns:1fr;height:auto;overflow-y:auto}.cad-drawing-viewport-card{height:420px}.cad-dialog-full{height:96vh}}@media (max-width: 640px){.cad-analyzer-notice,.cad-analyzer-error{align-items:flex-start;flex-direction:column;gap:4px;padding:10px 14px}.cad-model-label{margin-left:0;white-space:normal}}@keyframes cadFadeInUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes cadShimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes cadPulseGlow{0%,to{box-shadow:0 0 #c4133040}50%{box-shadow:0 0 0 6px #c4133000}}@keyframes cadStatusPulse{0%,to{opacity:1}50%{opacity:.5}}.cad-analyzer-page{min-height:calc(100vh - 65px);padding:1.25rem clamp(16px,3.5vw,48px) 3rem;background-color:#edf2f7;background-image:radial-gradient(rgba(16,42,67,.035) 1px,transparent 1px);background-size:20px 20px}.cad-page-container{width:min(100%,1560px);margin-inline:auto}.cad-page-subnav{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px;flex-wrap:wrap}.cad-page-back-link{display:inline-flex;align-items:center;gap:7px;color:var(--ink);font-family:var(--font-heading);font-size:.84rem;font-weight:700;text-decoration:none;transition:all .25s var(--ease-out-expo);padding:5px 10px;border-radius:var(--r-sm);margin-left:-10px}.cad-page-back-link:hover{color:var(--red);background:#c413300d}.cad-page-back-link svg{color:var(--red);transition:transform .25s var(--ease-out-expo)}.cad-page-back-link:hover svg{transform:translate(-4px)}.cad-page-context{display:inline-flex;align-items:center;gap:8px;font-family:var(--font-heading);font-size:.7rem;font-weight:800;letter-spacing:.1em;color:var(--muted);text-transform:uppercase}.cad-page-kicker{color:var(--ink)}.cad-page-sep{color:var(--line-dark);opacity:.5}.cad-page-sublabel{color:var(--slate-subtle)}.cad-page-status{display:inline-flex;align-items:center;gap:7px;font-family:var(--font-heading);font-size:.68rem;font-weight:800;letter-spacing:.06em;color:#065f46;background:linear-gradient(135deg,#ecfdf5,#d1fae5);border:1px solid #a7f3d0;padding:5px 12px;border-radius:999px;box-shadow:0 2px 8px #10b9811f}.cad-status-dot{width:7px;height:7px;border-radius:50%;background:#10b981;box-shadow:0 0 0 3px #10b98140;animation:cadStatusPulse 2s ease-in-out infinite}.cad-analyzer-shell{height:min(940px,calc(100vh - 140px));min-height:700px;background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:0 1px 3px #102a430a,0 8px 24px #102a430f,0 24px 48px #102a430a;overflow:hidden;display:flex;flex-direction:column}.cad-analyzer-container{display:flex;flex-direction:column;height:100%;min-height:0;background:#fff;color:var(--ink)}.cad-analyzer-header{flex:0 0 auto;display:flex;align-items:flex-end;justify-content:space-between;gap:24px;padding:22px 28px 20px;background:linear-gradient(180deg,#fff,#fafbfc);border-bottom:1px solid var(--line);flex-wrap:wrap;position:relative}.cad-analyzer-header:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--red),var(--ink),var(--red));background-size:200% 100%;opacity:.85}.cad-header-left{flex:1 1 380px;min-width:0}.cad-title-badge{display:flex;flex-direction:column;align-items:flex-start;gap:8px}.cad-engine-pill{display:inline-flex;align-items:center;gap:5px;font-family:var(--font-heading);font-size:.62rem;font-weight:800;text-transform:uppercase;letter-spacing:.1em;background:linear-gradient(135deg,var(--red-pale),#fce7eb);color:var(--red);border:1px solid var(--red-light);padding:4px 10px;border-radius:4px}.cad-title-badge h1{font-family:var(--font-heading);font-size:clamp(1.4rem,2vw,1.75rem);font-weight:850;color:var(--ink);letter-spacing:-.035em;line-height:1.1;margin:0}.cad-header-sub{margin:5px 0 0;color:var(--color-text-secondary);font-size:.84rem;line-height:1.55;max-width:560px}.cad-header-actions{flex:1 1 500px;display:flex;align-items:flex-end;justify-content:flex-end;gap:10px;flex-wrap:wrap}.cad-preset-selector-group{display:flex;flex-direction:column;gap:5px;min-width:240px;font-family:var(--font-heading);font-size:.66rem;font-weight:800;text-transform:uppercase;letter-spacing:.07em;color:var(--muted)}.cad-select-input{width:100%;min-height:42px;padding:9px 14px;border:1.5px solid var(--line);border-radius:var(--r-sm);background:#fff;color:var(--ink);font-family:var(--font-heading);font-size:.82rem;font-weight:650;outline:none;cursor:pointer;transition:all .2s ease;box-shadow:0 1px 3px #102a430a}.cad-select-input:hover{border-color:var(--ink-3);box-shadow:0 2px 6px #102a4314}.cad-select-input:focus{border-color:var(--ink);box-shadow:0 0 0 3px #102a431a}.cad-select-input:disabled{color:var(--muted);cursor:not-allowed;opacity:.6}.cad-header-actions>.btn{min-height:42px;padding:0 18px;font-size:.82rem;font-weight:750;border-radius:var(--r-sm)}.cad-upload-btn{border:1.5px solid var(--line)!important;color:var(--ink)!important;background:#fff!important;box-shadow:0 1px 3px #102a430a!important;transition:all .25s var(--ease-out-expo)!important}.cad-upload-btn:hover:not(:disabled){border-color:var(--ink)!important;background:var(--paper)!important;box-shadow:0 2px 8px #102a4314!important;transform:translateY(-1px)}.btn-reanalyze{background:linear-gradient(135deg,var(--ink) 0%,var(--ink-dark) 100%)!important;border:1.5px solid var(--ink)!important;color:#fff!important;box-shadow:0 2px 8px #102a432e!important;transition:all .25s var(--ease-out-expo)!important}.btn-reanalyze:hover:not(:disabled){background:linear-gradient(135deg,var(--red) 0%,#a80f28 100%)!important;border-color:var(--red)!important;box-shadow:0 6px 20px #c413304d!important;transform:translateY(-1px)}.cad-close-btn{width:38px;height:38px;border-radius:var(--r-sm);border:1.5px solid var(--line);background:#fff;color:var(--muted);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;font-size:.95rem;transition:all .25s var(--ease-out-expo)}.cad-close-btn:hover{border-color:var(--red);color:var(--red);background:var(--red-pale);transform:rotate(90deg)}.cad-analyzer-notice,.cad-analyzer-error{flex:0 0 auto;display:flex;align-items:center;gap:12px;padding:10px 28px;border-bottom:1px solid var(--line);background:linear-gradient(90deg,#f8fafc,#f1f5f9);color:var(--ink-2);font-size:.78rem;line-height:1.45}.cad-analyzer-notice strong,.cad-analyzer-error strong{color:var(--ink);font-weight:750}.cad-analyzer-notice.sample{background:linear-gradient(90deg,#fffbeb,#fef3c7,#fffbeb);border-bottom:1px solid #fde68a;color:#92400e}.cad-analyzer-notice.sample strong{color:#b45309}.cad-model-label{margin-left:auto;font-family:var(--font-mono);font-size:.68rem;font-weight:650;color:var(--muted);background:#fff;border:1px solid var(--line);padding:3px 10px;border-radius:4px;box-shadow:0 1px 2px #102a430a}.cad-analyzer-error{border-color:#fca5a5;background:linear-gradient(90deg,var(--red-pale) 0%,#fef2f2 100%);color:#991b1b}.cad-analyzer-error strong{color:var(--red)}.cad-workstation-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);flex:1;min-height:0;background:var(--line);gap:1px;overflow:hidden}.cad-drawing-viewport-card{display:flex;flex-direction:column;background:#081628;min-width:0;height:100%;position:relative}.cad-viewport-toolbar{flex:0 0 auto;display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:52px;padding:10px 18px;background:linear-gradient(180deg,#0a1829,#06111f);border-bottom:1px solid rgba(255,255,255,.08)}.cad-drawing-meta{display:flex;align-items:center;gap:10px;min-width:0}.cad-drawing-id{font-family:var(--font-mono);font-size:.72rem;font-weight:700;color:#38bdf8;background:#38bdf81a;border:1px solid rgba(56,189,248,.28);border-radius:4px;padding:3px 9px;letter-spacing:.03em;white-space:nowrap}.cad-part-name{color:#f8fafc;font-family:var(--font-heading);font-size:.84rem;font-weight:700;letter-spacing:-.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cad-viewport-controls{display:inline-flex;align-items:center;background:#ffffff0a;border:1px solid rgba(255,255,255,.1);border-radius:6px;overflow:hidden}.cad-viewport-controls button{background:transparent;border:none;color:#cbd5e1;font-family:var(--font-heading);font-size:.78rem;font-weight:750;padding:6px 11px;cursor:pointer;transition:all .15s ease}.cad-viewport-controls button:hover{background:#ffffff1f;color:#fff}.cad-zoom-label{font-family:var(--font-mono);font-size:.72rem;font-weight:700;color:#94a3b8;padding:0 6px;-webkit-user-select:none;user-select:none}.cad-canvas-container{flex:1;min-height:0;position:relative;overflow:hidden;background-color:#06101d;background-image:linear-gradient(rgba(56,189,248,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(56,189,248,.05) 1px,transparent 1px);background-position:center center;background-size:28px 28px;cursor:grab}.cad-canvas-container:active{cursor:grabbing}.cad-svg-wrapper{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;transition:transform .05s ease-out;transform-origin:center center;pointer-events:none}.cad-svg-wrapper svg{max-width:90%;max-height:90%;filter:drop-shadow(0 0 3px rgba(56,189,248,.2))}.cad-uploaded-image-wrapper{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center}.cad-custom-img{max-width:90%;max-height:90%;object-fit:contain;border-radius:6px;box-shadow:0 10px 40px #00000080}.cad-custom-pdf{width:92%;height:92%;border:1px solid rgba(255,255,255,.15);border-radius:6px}.cad-drawing-placeholder{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;gap:14px;width:min(380px,calc(100% - 32px));padding:32px 24px;border:1px dashed rgba(255,255,255,.15);border-radius:16px;background:#0c1c30e6;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);color:#94a3b8;text-align:center;pointer-events:none}.cad-placeholder-icon{display:grid;width:56px;height:56px;place-items:center;border-radius:14px;background:#38bdf81a;color:#38bdf8;border:1px solid rgba(56,189,248,.2)}.cad-placeholder-icon svg{width:28px;height:28px;stroke:currentColor;stroke-width:1.8}.cad-drawing-placeholder strong{color:#fff;font-family:var(--font-heading);font-size:.96rem;font-weight:750}.cad-drawing-placeholder>span:last-child{font-size:.78rem;line-height:1.6;color:#94a3b8}.cad-balloon-pin{position:absolute;width:26px;height:26px;border-radius:50%;background:var(--red);color:#fff;font-family:var(--font-heading);font-size:.72rem;font-weight:850;display:flex;align-items:center;justify-content:center;cursor:pointer;border:2.5px solid #ffffff;box-shadow:0 2px 12px #c413308c;z-index:20;transform:translate(-50%,-50%);transition:all .25s var(--ease-out-expo);-webkit-user-select:none;user-select:none}.cad-balloon-pin:hover{transform:translate(-50%,-50%) scale(1.2);box-shadow:0 0 0 4px #c413304d,0 4px 18px #c41330a6;z-index:45}.cad-balloon-pin.selected{transform:translate(-50%,-50%) scale(1.25);box-shadow:0 0 0 5px #c4133059,0 6px 20px #c41330b3;z-index:50;animation:cadPulseGlow 2s ease-in-out infinite}.cad-balloon-number{line-height:1}.cad-balloon-tooltip{position:absolute;bottom:calc(100% + 14px);width:max-content;max-width:min(340px,calc(100vw - 40px));background:linear-gradient(135deg,#0c2235,#0f2940);border:1px solid rgba(255,255,255,.15);border-radius:10px;padding:12px 16px;font-size:.76rem;color:#f1f5f9;box-shadow:0 20px 40px #00000080;pointer-events:none;z-index:100;line-height:1.5}.cad-balloon-tooltip:after{content:"";position:absolute;top:100%;border-width:7px;border-style:solid;border-color:#0c2235 transparent transparent transparent}.cad-balloon-tooltip.align-center:after{left:50%;transform:translate(-50%)}.cad-balloon-tooltip.align-left:after{left:16px}.cad-balloon-tooltip.align-right:after{right:16px}.tooltip-op-tag{font-family:var(--font-heading);font-weight:800;color:#38bdf8;margin-bottom:6px;border-bottom:1px solid rgba(255,255,255,.1);padding-bottom:5px;font-size:.78rem}.tooltip-feature,.tooltip-machine,.tooltip-tool,.tooltip-tol{margin-top:3px;color:#cbd5e1}.tooltip-tol{color:#f87171;font-family:var(--font-mono);font-weight:700}.cad-canvas-footer-legend{flex:0 0 auto;display:flex;align-items:center;gap:16px;padding:10px 18px;background:linear-gradient(180deg,#081426,#06111f);border-top:1px solid rgba(255,255,255,.06);font-size:.72rem;color:#94a3b8;flex-wrap:wrap}.legend-item{display:inline-flex;align-items:center;gap:6px}.legend-dot{width:8px;height:8px;border-radius:50%;display:inline-block}.legend-badge{font-family:var(--font-mono);font-size:.66rem;font-weight:700;color:#e2e8f0;background:#ffffff12;border:1px solid rgba(255,255,255,.12);padding:2px 7px;border-radius:3px;text-transform:uppercase;letter-spacing:.04em}.cad-supported-files{color:#94a3b8;font-size:.72rem}.cad-supported-files span{padding-inline:4px;color:#ffffff40}.cad-details-panel-card{display:flex;flex-direction:column;background:#fff;min-width:0;height:100%}.cad-panel-tabs{flex:0 0 auto;display:flex;align-items:stretch;background:linear-gradient(180deg,#f8fafb,#f1f4f8);border-bottom:1px solid var(--line);overflow-x:auto;padding-inline:8px;gap:0}.cad-tab-btn{padding:14px 16px;border:none;border-bottom:2.5px solid transparent;background:transparent;color:var(--muted);font-family:var(--font-heading);font-size:.76rem;font-weight:700;cursor:pointer;white-space:nowrap;transition:all .2s ease;position:relative}.cad-tab-btn:hover{color:var(--ink);background:#102a4308}.cad-tab-btn.active{border-bottom-color:var(--red);color:var(--ink);font-weight:800;background:#fff}.cad-tab-content-scroll{flex:1;overflow-y:auto;padding:20px 22px}.cad-tab-intro{margin-bottom:18px;animation:cadFadeInUp .4s ease-out}.cad-tab-intro h3{font-family:var(--font-heading);font-size:1.05rem;font-weight:800;color:var(--ink);margin:0 0 6px;letter-spacing:-.02em}.cad-tab-intro p{font-size:.82rem;color:var(--color-text-secondary);margin:0;line-height:1.5}.cad-op-summary-bar{display:flex;align-items:center;justify-content:space-around;background:linear-gradient(135deg,var(--ink) 0%,var(--ink-dark) 100%);border-radius:10px;padding:16px 22px;margin-bottom:18px;border-left:4px solid var(--red);box-shadow:0 4px 12px #102a4326,inset 0 1px #ffffff0d;animation:cadFadeInUp .35s ease-out}.op-summary-stat{display:flex;flex-direction:column;gap:2px}.stat-label{font-family:var(--font-heading);font-size:.65rem;font-weight:750;text-transform:uppercase;letter-spacing:.08em;color:#829ab1}.stat-value{color:#fff;font-family:var(--font-heading);font-size:1.22rem;font-weight:850;letter-spacing:-.02em}.op-summary-divider{width:1px;height:38px;background:linear-gradient(180deg,transparent,rgba(255,255,255,.15),transparent)}.cad-process-flow-strip{display:flex;align-items:center;gap:5px;overflow-x:auto;padding:4px 2px 16px;margin-bottom:16px;animation:cadFadeInUp .4s ease-out .1s both}.flow-node{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:56px;padding:7px 10px;border-radius:8px;border:1.5px solid var(--line);background:#fff;cursor:pointer;transition:all .25s var(--ease-out-expo);font-family:var(--font-heading);box-shadow:0 1px 3px #102a430a}.flow-node:hover{border-color:var(--ink);background:var(--paper);transform:translateY(-2px);box-shadow:0 4px 12px #102a4314}.flow-node.active{background:linear-gradient(135deg,var(--red) 0%,#a80f28 100%);border-color:var(--red);box-shadow:0 4px 14px #c413304d;transform:translateY(-1px)}.flow-node-cat{font-size:.56rem;font-weight:800;letter-spacing:.07em;color:var(--muted)}.flow-node.active .flow-node-cat{color:#fffc}.flow-node-label{font-size:.74rem;font-weight:800;color:var(--ink)}.flow-node.active .flow-node-label{color:#fff}.flow-connector{color:var(--line-dark);font-size:.75rem;font-weight:700;-webkit-user-select:none;user-select:none;opacity:.6}.cad-operations-timeline{display:flex;flex-direction:column;gap:10px;animation:cadFadeInUp .45s ease-out .15s both}.cad-operation-card{border:1.5px solid var(--line);border-radius:10px;background:#fff;padding:16px 18px;cursor:pointer;transition:all .25s var(--ease-out-expo);position:relative}.cad-operation-card:before{content:"";position:absolute;left:0;top:12px;bottom:12px;width:3px;background:transparent;border-radius:0 3px 3px 0;transition:all .25s var(--ease-out-expo)}.cad-operation-card:hover{border-color:var(--line-dark);transform:translateY(-1px);box-shadow:0 6px 20px #102a430f}.cad-operation-card:hover:before{background:var(--ink-3)}.cad-operation-card.active{border-color:var(--red);box-shadow:0 6px 24px #c413301f;background:#fffbfc}.cad-operation-card.active:before{background:var(--red);top:8px;bottom:8px;width:3.5px}.op-card-header{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:10px}.op-card-header-left{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.op-seq-badge{background:linear-gradient(135deg,var(--ink) 0%,var(--ink-dark) 100%);color:#fff;font-family:var(--font-mono);font-size:.72rem;font-weight:750;padding:3px 9px;border-radius:5px;box-shadow:0 1px 3px #102a4326}.op-category-pill{font-family:var(--font-heading);font-size:.66rem;font-weight:800;padding:3px 9px;border-radius:5px;background:linear-gradient(135deg,#eff6ff,#dbeafe);color:#1d4ed8;border:1px solid #bfdbfe}.op-stage-pill{font-family:var(--font-heading);font-size:.66rem;font-weight:700;padding:3px 9px;border-radius:5px;background:var(--paper);color:var(--muted);border:1px solid var(--line)}.op-card-header-right{display:flex;align-items:center;gap:8px}.op-time-badge{display:inline-flex;align-items:center;gap:4px;font-family:var(--font-mono);font-size:.72rem;font-weight:650;color:var(--muted);background:var(--paper);padding:3px 8px;border-radius:4px}.op-balloon-link-badge{display:inline-flex;align-items:center;gap:4px;background:linear-gradient(135deg,var(--red-pale),#fce7eb);border:1px solid var(--red-light);color:var(--red);font-family:var(--font-heading);font-size:.7rem;font-weight:750;padding:3px 9px;border-radius:5px;cursor:pointer;transition:all .2s var(--ease-out-expo)}.op-balloon-link-badge:hover{background:var(--red);color:#fff;border-color:var(--red);box-shadow:0 2px 8px #c4133040}.op-title-text{font-family:var(--font-heading);font-size:.95rem;font-weight:750;color:var(--ink);margin:0 0 10px;letter-spacing:-.01em;line-height:1.35}.op-card-name{font-family:var(--font-heading);font-size:.94rem;font-weight:750;color:var(--ink);margin:0 0 6px}.op-instruction{font-size:.8rem;line-height:1.5;color:var(--color-text-secondary);margin:0 0 10px}.op-subordinated-feature-box{background:linear-gradient(135deg,#f0f7ff,#f8fafc);border:1px solid #dbeafe;border-left:3px solid #3b82f6;border-radius:6px;padding:8px 14px;font-size:.78rem;color:var(--ink-2);margin-bottom:12px;display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.feature-info-row{display:flex;align-items:baseline;gap:6px}.feature-prefix{font-family:var(--font-heading);font-size:.66rem;color:#3b82f6;text-transform:uppercase;letter-spacing:.06em;font-weight:800}.feature-desc{color:var(--ink);font-weight:600}.op-tolerance-tag{background:linear-gradient(135deg,var(--red-pale),#fce7eb);color:var(--red);font-family:var(--font-mono);font-size:.7rem;font-weight:700;padding:3px 8px;border-radius:4px;border:1px solid var(--red-light)}.op-specs-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px 16px;margin-bottom:12px}.op-spec-item{display:flex;flex-direction:column;gap:3px;padding:6px 0;border-bottom:1px solid var(--line-light)}.spec-label-row{display:flex;align-items:center;gap:5px;color:var(--muted)}.spec-label{color:var(--muted);font-family:var(--font-heading);font-size:.66rem;text-transform:uppercase;letter-spacing:.05em;font-weight:800}.spec-value{color:var(--ink-2);font-size:.8rem;line-height:1.35;font-weight:500}.op-cutting-params-strip{display:flex;align-items:center;gap:12px;background:linear-gradient(135deg,var(--paper) 0%,#edf2f7 100%);border:1px solid var(--line);border-radius:6px;padding:8px 14px;font-size:.72rem;flex-wrap:wrap;margin-top:4px}.param-label{color:var(--muted);font-family:var(--font-heading);font-weight:800;font-size:.66rem;text-transform:uppercase;letter-spacing:.05em}.param-chips-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.param-item{color:var(--ink-2);font-family:var(--font-mono);font-size:.72rem;font-weight:600;background:#fff;padding:2px 8px;border-radius:4px;border:1px solid var(--line)}.param-key{color:var(--red);font-weight:750;margin-right:3px}.cad-machines-grid{display:flex;flex-direction:column;gap:12px;animation:cadFadeInUp .4s ease-out}.cad-machine-card{border:1.5px solid var(--line);border-radius:10px;background:#fff;padding:18px 20px;transition:all .2s ease}.cad-machine-card:hover{border-color:var(--line-dark);box-shadow:0 4px 16px #102a430f}.machine-card-header{display:flex;align-items:center;gap:14px;margin-bottom:14px}.machine-icon-box{width:40px;height:40px;background:linear-gradient(135deg,var(--ink),var(--ink-dark));color:#fff;border-radius:8px;display:flex;align-items:center;justify-content:center;flex-shrink:0;box-shadow:0 2px 6px #102a4326}.machine-title-group{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.machine-title-group h4{font-family:var(--font-heading);font-size:.94rem;font-weight:750;color:var(--ink);margin:0}.vendor-suitability-pill{font-family:var(--font-heading);font-size:.66rem;font-weight:800;color:#065f46;background:linear-gradient(135deg,#ecfdf5,#d1fae5);border:1px solid #a7f3d0;padding:3px 9px;border-radius:5px}.machine-specs-section{margin-bottom:14px;padding:10px 14px;background:var(--paper);border:1px solid var(--line-light);border-radius:6px}.specs-subheading{font-family:var(--font-heading);font-size:.66rem;color:var(--muted);text-transform:uppercase;letter-spacing:.06em;font-weight:800;display:block;margin-bottom:5px}.specs-text{font-size:.8rem;color:var(--ink-2);margin:0;line-height:1.5}.machine-ops-tags .specs-subheading{margin-bottom:8px}.ops-chips-wrap{display:flex;flex-wrap:wrap;gap:6px}.op-chip{background:linear-gradient(135deg,var(--paper),#edf2f7);color:var(--ink-2);font-family:var(--font-mono);font-size:.72rem;font-weight:600;padding:4px 10px;border-radius:5px;border:1px solid var(--line)}.cad-machine-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px}.cad-machine-name{font-family:var(--font-heading);font-size:.95rem;font-weight:750;color:var(--ink);display:flex;align-items:center;gap:8px}.cad-machine-spec-badge{display:inline-flex;align-items:center;gap:5px;background:var(--paper);border:1px solid var(--line);color:var(--muted);font-size:.72rem;font-weight:650;padding:3px 8px;border-radius:4px}.cad-tooling-table-wrap{overflow-x:auto;border:1.5px solid var(--line);border-radius:10px;animation:cadFadeInUp .4s ease-out;box-shadow:0 2px 8px #102a430a}.cad-tooling-table{width:100%;border-collapse:collapse;font-size:.78rem;text-align:left}.cad-tooling-table th{background:linear-gradient(180deg,#f8fafb,#f1f4f8);color:var(--ink);font-family:var(--font-heading);font-size:.68rem;text-transform:uppercase;letter-spacing:.06em;font-weight:800;padding:12px 16px;border-bottom:1.5px solid var(--line)}.cad-tooling-table td{padding:11px 16px;border-bottom:1px solid var(--line-light);color:var(--ink-2)}.cad-tooling-table tr{transition:background .15s ease}.cad-tooling-table tbody tr:hover{background:#102a4304}.cad-tooling-table tbody tr:last-child td{border-bottom:none}.tool-category-badge{display:inline-block;background:linear-gradient(135deg,var(--paper),#edf2f7);color:var(--ink);font-family:var(--font-heading);font-size:.66rem;font-weight:750;padding:3px 8px;border-radius:4px;border:1px solid var(--line)}.tool-code-mono{font-family:var(--font-mono);color:var(--ink);font-weight:700;font-size:.78rem}.tool-coating-text{color:var(--muted);font-size:.76rem}.cad-dfm-section{background:#fff;border:1.5px solid var(--line);border-radius:10px;padding:18px 20px;margin-bottom:14px;transition:all .2s ease;animation:cadFadeInUp .4s ease-out}.cad-dfm-section:hover{box-shadow:0 4px 16px #102a430f}.dfm-section-header{display:flex;align-items:center;gap:10px;color:var(--red);margin-bottom:14px;padding-bottom:10px;border-bottom:1px solid var(--line-light)}.dfm-section-header h4{font-family:var(--font-heading);font-size:.92rem;font-weight:800;color:var(--ink);margin:0}.critical-tols-list{display:flex;flex-direction:column;gap:6px}.tol-badge-card{display:flex;align-items:center;gap:10px;background:linear-gradient(135deg,var(--paper) 0%,#edf2f7 100%);border:1px solid var(--line);border-radius:6px;padding:9px 14px;font-size:.78rem;color:var(--ink-2);font-family:var(--font-mono);transition:all .15s ease}.tol-badge-card:hover{background:#fff;border-color:var(--line-dark)}.tol-check{color:#10b981;display:flex;align-items:center;flex-shrink:0}.tol-text{color:var(--ink-2);font-weight:500}.dfm-recommendations-list{display:flex;flex-direction:column;gap:8px}.dfm-rec-item{display:flex;align-items:flex-start;gap:12px;background:linear-gradient(135deg,var(--paper) 0%,#f1f5f9 100%);border:1px solid var(--line);border-left:3px solid var(--ink-3);border-radius:6px;padding:12px 16px;transition:all .15s ease}.dfm-rec-item:hover{background:#fff;border-left-color:var(--red)}.dfm-bullet{color:var(--red);font-size:1.1rem;line-height:1;flex-shrink:0;margin-top:1px}.dfm-rec-item p{margin:0;font-size:.82rem;color:var(--ink-2);line-height:1.55}.cad-dfm-grid{display:flex;flex-direction:column;gap:10px}.cad-dfm-card{border-radius:10px;padding:14px 18px;font-size:.82rem;line-height:1.55}.cad-dfm-card.passed{background:linear-gradient(135deg,#f0fdf4,#ecfdf5);border:1px solid #bbf7d0;border-left:4px solid #16a34a;color:#166534}.cad-dfm-card.warning{background:linear-gradient(135deg,#fffbeb,#fef3c7);border:1px solid #fde68a;border-left:4px solid #f59e0b;color:#92400e}.cad-dfm-card.critical{background:linear-gradient(135deg,var(--red-pale) 0%,#fef2f2 100%);border:1px solid var(--red-light);border-left:4px solid var(--red);color:#991b1b}.cad-flow-diagram{display:flex;flex-direction:column;gap:14px;margin-bottom:18px;animation:cadFadeInUp .4s ease-out}.flow-swimlane{background:#fff;border:1.5px solid var(--line);border-radius:10px;padding:16px 18px;transition:all .2s ease}.flow-swimlane:hover{box-shadow:0 4px 16px #102a430d}.swimlane-header{display:flex;align-items:center;gap:10px;margin-bottom:12px;padding-bottom:10px;border-bottom:1px solid var(--line-light)}.swimlane-cat-code{font-family:var(--font-mono);font-size:.66rem;font-weight:700;background:linear-gradient(135deg,var(--ink),var(--ink-dark));color:#fff;padding:3px 8px;border-radius:4px;letter-spacing:.05em}.swimlane-title{font-family:var(--font-heading);font-size:.88rem;font-weight:750;color:var(--ink)}.swimlane-count{font-family:var(--font-heading);font-size:.72rem;font-weight:700;color:var(--muted);margin-left:auto;background:var(--paper);padding:2px 8px;border-radius:4px;border:1px solid var(--line)}.swimlane-ops{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:10px}.swimlane-op-card{background:linear-gradient(135deg,var(--paper) 0%,#f1f5f9 100%);border:1px solid var(--line);border-radius:8px;padding:12px 14px;cursor:pointer;transition:all .2s var(--ease-out-expo)}.swimlane-op-card:hover{background:#fff;border-color:var(--line-dark);transform:translateY(-1px);box-shadow:0 4px 12px #102a430f}.swimlane-op-card.active{border-color:var(--red);background:#fffbfc;box-shadow:0 4px 14px #c413301a;border-left:3px solid var(--red)}.swim-op-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px}.swim-op-badge{font-family:var(--font-mono);font-size:.7rem;font-weight:700;color:var(--red)}.swim-op-time{display:inline-flex;align-items:center;gap:4px;font-family:var(--font-mono);font-size:.68rem;color:var(--muted)}.swim-op-name{font-family:var(--font-heading);font-size:.82rem;font-weight:700;color:var(--ink);margin:0 0 4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.swim-op-machine{font-size:.72rem;color:var(--color-text-secondary);margin:0 0 2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.swim-op-tool{font-size:.7rem;color:var(--muted);margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cad-flow-summary-bar{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;background:linear-gradient(135deg,var(--ink) 0%,var(--ink-dark) 100%);border:1px solid var(--ink);border-radius:10px;padding:16px 20px;box-shadow:0 4px 12px #102a4326;animation:cadFadeInUp .45s ease-out .1s both}.flow-summary-item{display:flex;flex-direction:column;gap:3px}.flow-summary-label{font-family:var(--font-heading);font-size:.64rem;color:#829ab1;text-transform:uppercase;letter-spacing:.06em;font-weight:750}.flow-summary-value{font-family:var(--font-heading);font-size:1rem;font-weight:850;color:#fff;letter-spacing:-.01em}.op-params-table{width:100%;border-collapse:collapse;border:1px solid var(--line);border-radius:8px;overflow:hidden;font-size:.76rem;margin-top:8px}.op-params-table th{background:linear-gradient(180deg,var(--paper),#edf2f7);color:var(--ink);font-family:var(--font-heading);font-weight:800;font-size:.68rem;padding:8px 12px;text-align:left;border-bottom:1px solid var(--line);text-transform:uppercase;letter-spacing:.05em}.op-params-table td{padding:7px 12px;border-bottom:1px solid var(--line-light);color:var(--ink-2)}.op-params-table tr:last-child td{border-bottom:none}.cad-analyzer-empty{min-height:280px;padding:40px 28px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:var(--muted);gap:8px}.cad-analyzer-empty strong{color:var(--ink);font-family:var(--font-heading);font-size:1.08rem;font-weight:800;margin-bottom:4px}.cad-analyzer-empty>span{max-width:400px;font-size:.84rem;line-height:1.6;color:var(--color-text-secondary)}.cad-dialog-full{width:min(95vw,1560px);height:min(93vh,940px);border:1px solid var(--line);border-radius:var(--r-lg);padding:0;background:#fff;box-shadow:0 24px 48px #102a4326,0 48px 80px #102a431f;overflow:hidden}.cad-dialog-full::backdrop{background:#0c2235a6;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}@media (max-width: 980px){.cad-analyzer-shell{height:auto;min-height:0}.cad-analyzer-container{height:auto}.cad-workstation-grid{grid-template-columns:minmax(0,1fr);height:auto}.cad-drawing-viewport-card{height:440px;min-height:440px;border-bottom:1px solid var(--line)}.cad-details-panel-card{min-height:520px}.cad-flow-summary-bar{grid-template-columns:repeat(2,1fr)}}@media (max-width: 640px){.cad-analyzer-page{padding:12px 14px 24px}.cad-page-subnav{flex-direction:column;align-items:flex-start;gap:8px}.cad-page-context{display:none}.cad-analyzer-header{padding:16px}.cad-header-actions{justify-content:stretch}.cad-preset-selector-group{min-width:100%}.cad-drawing-viewport-card{height:380px;min-height:380px}.cad-flow-summary-bar{grid-template-columns:repeat(2,1fr)}.op-specs-grid{grid-template-columns:1fr}}.cad-analyzer-page{min-height:calc(100vh - 80px);padding:20px clamp(18px,3vw,44px) 36px;background:var(--paper)}.cad-analyzer-page .cad-page-container{width:min(100%,1480px)}.cad-analyzer-page .cad-page-subnav{justify-content:flex-start;min-height:30px;margin-bottom:12px}.cad-analyzer-page .cad-page-back-link{margin-left:-8px;color:var(--muted);font-size:.82rem;font-weight:650}.cad-analyzer-page .cad-page-back-link svg{color:var(--ink-2)}.cad-analyzer-page .cad-page-back-link:hover{color:var(--red);background:var(--red-pale)}.cad-analyzer-page .cad-page-back-link:hover svg{color:var(--red)}.cad-analyzer-page .cad-analyzer-shell{height:min(860px,calc(100vh - 156px));min-height:650px;border-color:var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-md)}.cad-analyzer-page .cad-analyzer-container{color:var(--ink);font-family:var(--font-body)}.cad-analyzer-page .cad-analyzer-header{align-items:center;gap:22px;padding:22px 26px;background:#fff;border-bottom-color:var(--line)}.cad-analyzer-page .cad-analyzer-header:before{display:none}.cad-analyzer-page .cad-title-badge{gap:5px}.cad-analyzer-page .cad-engine-pill{padding:0;border:0;background:transparent;color:var(--red);font-size:.68rem;font-weight:750;letter-spacing:.08em}.cad-analyzer-page .cad-title-badge h1{margin:0;color:var(--ink);font-size:clamp(1.35rem,1.8vw,1.65rem);font-weight:700;letter-spacing:-.035em;line-height:1.2}.cad-analyzer-page .cad-header-sub{margin-top:7px;color:var(--color-text-secondary);font-size:.86rem;line-height:1.55}.cad-analyzer-page .cad-header-actions{flex-basis:auto;align-items:flex-end;gap:10px}.cad-analyzer-page .cad-preset-selector-group{min-width:230px;gap:5px;color:var(--color-text-secondary);font-size:.74rem;font-weight:650;letter-spacing:0;text-transform:none}.cad-analyzer-page .cad-select-input{min-height:40px;padding:8px 12px;border:1px solid var(--line-dark);border-radius:var(--r-sm);color:var(--ink);font-family:var(--font-body);font-size:.82rem;font-weight:550;box-shadow:none}.cad-analyzer-page .cad-select-input:hover{border-color:var(--red);box-shadow:none}.cad-analyzer-page :is(.cad-select-input,.cad-header-actions .btn,.cad-tab-btn,.flow-node,.cad-page-back-link):focus-visible{outline:3px solid rgba(196,19,48,.24);outline-offset:2px}.cad-analyzer-page .cad-header-actions>.btn{min-height:40px;padding-inline:15px;border-radius:var(--r-sm);font-size:.82rem;font-weight:650}.cad-analyzer-page .cad-upload-btn{border:1px solid var(--line-dark)!important;border-radius:var(--r-sm)!important;color:var(--ink)!important;background:#fff!important;box-shadow:none!important}.cad-analyzer-page .cad-upload-btn:hover:not(:disabled){border-color:var(--red)!important;color:var(--red)!important;background:var(--red-pale)!important;box-shadow:none!important;transform:none}.cad-analyzer-page .btn-reanalyze{border:1px solid var(--ink)!important;border-radius:var(--r-sm)!important;background:var(--ink)!important;box-shadow:none!important;transition:background-color var(--dur-fast) ease,border-color var(--dur-fast) ease!important}.cad-analyzer-page .btn-reanalyze:hover:not(:disabled){border-color:var(--red-hover)!important;background:var(--red-hover)!important;box-shadow:none!important;transform:none}.cad-analyzer-page :is(.cad-analyzer-notice,.cad-analyzer-error){gap:10px;padding:10px 26px;border-bottom-color:var(--line);background:var(--paper);color:var(--color-text-secondary);font-size:.8rem}.cad-analyzer-page :is(.cad-analyzer-notice,.cad-analyzer-error) strong{color:var(--ink);font-weight:700}.cad-analyzer-page .cad-analyzer-notice.sample{border-bottom-color:var(--line);background:var(--paper);color:var(--color-text-secondary)}.cad-analyzer-page .cad-analyzer-error{border-bottom-color:var(--accent-border);background:var(--red-pale);color:var(--red-hover)}.cad-analyzer-page .cad-analyzer-error strong{color:var(--red)}.cad-analyzer-page .cad-workstation-grid{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);background:var(--line);gap:1px}.cad-analyzer-page .cad-drawing-viewport-card{background:#f3f6f8}.cad-analyzer-page .cad-viewport-toolbar{min-height:56px;padding:10px 16px;background:#fff;border-bottom:1px solid var(--line)}.cad-analyzer-page .cad-drawing-meta{gap:9px}.cad-analyzer-page .cad-drawing-id{padding:3px 8px;border:1px solid var(--line);border-radius:var(--r-xs);background:var(--paper);color:var(--ink-2);font-size:.68rem;font-weight:600}.cad-analyzer-page .cad-part-name{color:var(--ink);font-size:.84rem;font-weight:650}.cad-analyzer-page .cad-viewport-controls{background:var(--paper);border:1px solid var(--line);border-radius:var(--r-sm)}.cad-analyzer-page .cad-viewport-controls button{color:var(--ink-2);font-size:.78rem;font-weight:650}.cad-analyzer-page .cad-viewport-controls button:hover{background:var(--red-pale);color:var(--red)}.cad-analyzer-page .cad-zoom-label{color:var(--muted);font-size:.68rem}.cad-analyzer-page .cad-canvas-container{background-color:#f3f6f8;background-image:linear-gradient(rgba(16,42,67,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(16,42,67,.035) 1px,transparent 1px);background-size:24px 24px}.cad-analyzer-page .cad-svg-wrapper svg{filter:none}.cad-analyzer-page :is(.cad-custom-img,.cad-custom-pdf){border:1px solid var(--line);border-radius:var(--r-sm);box-shadow:0 4px 16px #102a431a}.cad-analyzer-page .cad-canvas-footer-legend{gap:12px;padding:10px 16px;border-top:1px solid var(--line);background:#fff;color:var(--color-text-secondary);font-size:.74rem}.cad-analyzer-page .legend-badge{border-color:var(--line);background:var(--paper);color:var(--ink-2)}.cad-analyzer-page .cad-supported-files{color:var(--muted)}.cad-analyzer-page .cad-panel-tabs{background:#fff;border-bottom-color:var(--line);padding-inline:10px}.cad-analyzer-page .cad-tab-btn{min-height:48px;padding:12px 14px;border-bottom-width:2px;color:var(--muted);font-size:.78rem;font-weight:600}.cad-analyzer-page .cad-tab-btn:hover{color:var(--red);background:var(--red-pale)}.cad-analyzer-page .cad-tab-btn.active{border-bottom-color:var(--red);color:var(--ink);font-weight:700}.cad-analyzer-page .cad-tab-content-scroll{padding:20px}.cad-analyzer-page .cad-tab-intro{margin-bottom:16px;animation:none}.cad-analyzer-page .cad-tab-intro h3{color:var(--ink);font-size:1.05rem;font-weight:700;letter-spacing:-.025em}.cad-analyzer-page .cad-tab-intro p{color:var(--color-text-secondary);font-size:.84rem;line-height:1.55}.cad-analyzer-page .cad-op-summary-bar{gap:24px;padding:14px 18px;border:1px solid var(--line);border-left:3px solid var(--red);border-radius:var(--r-md);background:var(--paper);box-shadow:none;animation:none}.cad-analyzer-page .stat-label{color:var(--muted);font-size:.7rem;font-weight:650;letter-spacing:.01em;text-transform:none}.cad-analyzer-page .stat-value{color:var(--ink);font-size:1rem;font-weight:700}.cad-analyzer-page :is(.cad-process-flow-strip,.cad-operations-timeline,.cad-flow-diagram){animation:none}.cad-analyzer-page .flow-node{min-width:64px;border:1px solid var(--line);border-radius:var(--r-sm);box-shadow:none}.cad-analyzer-page .flow-node:hover{border-color:var(--accent-border);background:var(--red-pale);color:var(--red);box-shadow:none;transform:none}.cad-analyzer-page .flow-node.active{border-color:var(--red);background:var(--red);box-shadow:none;transform:none}.cad-analyzer-page .flow-node-cat{max-width:100%;overflow:hidden;color:var(--muted);font-size:.58rem;font-weight:650;letter-spacing:0;text-overflow:ellipsis;white-space:nowrap}.cad-analyzer-page .cad-operation-card{border:1px solid var(--line);border-radius:var(--r-md);padding:15px 16px;box-shadow:none;transition:border-color var(--dur-fast) ease,background-color var(--dur-fast) ease}.cad-analyzer-page .cad-operation-card:hover{border-color:var(--accent-border);background:#fffafb;box-shadow:none;transform:none}.cad-analyzer-page .cad-operation-card:hover:before{background:var(--red)}.cad-analyzer-page .cad-operation-card.active{border-color:var(--accent-border);background:#fffafb;box-shadow:none}.cad-analyzer-page .op-seq-badge{border-radius:var(--r-xs);background:var(--ink);box-shadow:none}.cad-analyzer-page .op-title-text{color:var(--ink);font-size:1rem;font-weight:700}.cad-analyzer-page .feature-prefix{color:var(--ink-2);font-size:.68rem}.cad-analyzer-page .op-tolerance-tag{background:var(--red-pale)}.cad-analyzer-page :is(.cad-machine-card,.flow-swimlane){border:1px solid var(--line);border-radius:var(--r-md);box-shadow:none;animation:none}.cad-analyzer-page .swimlane-cat-code{border-radius:var(--r-xs);background:var(--paper-alt);color:var(--ink-2);font-family:var(--font-body);font-weight:650;letter-spacing:0}.cad-analyzer-page .cad-analyzer-empty{min-height:340px;padding:36px 26px;gap:9px}.cad-analyzer-page .cad-analyzer-empty strong{color:var(--ink);font-size:1.02rem;font-weight:700}.cad-analyzer-page .cad-analyzer-empty>span{max-width:360px;color:var(--color-text-secondary);font-size:.84rem;line-height:1.6}@media (max-width: 980px){.cad-analyzer-page .cad-analyzer-shell{height:auto;min-height:0}.cad-analyzer-page .cad-workstation-grid{height:auto;overflow:visible}}@media (max-width: 640px){.cad-analyzer-page{padding:12px 14px 24px}.cad-analyzer-page .cad-analyzer-header{gap:18px;padding:18px}.cad-analyzer-page .cad-header-actions{align-items:stretch;justify-content:flex-start}.cad-analyzer-page .cad-preset-selector-group{min-width:100%}.cad-analyzer-page .cad-header-actions>.btn{flex:1 1 auto}.cad-analyzer-page .cad-tab-content-scroll{padding:16px}.cad-analyzer-page .cad-op-summary-bar{align-items:flex-start;flex-wrap:wrap;gap:12px 20px}}
