/* Native constructor baseline, selector-scoped; no standalone theme skin or page chrome. */
main.nova-native-constructor{--ink:#202a31;--blue:#075bff;--muted:#71808b;--line:#dfe5e9}main.nova-native-constructor *{box-sizing:border-box}main.nova-native-constructor{margin:0;background:#fff;color:var(--ink);font:16px/1.5 Arial,Helvetica,sans-serif}main.nova-native-constructor button,main.nova-native-constructor a{-webkit-tap-highlight-color:transparent}main.nova-native-constructor button{font:inherit;cursor:pointer}main.nova-native-constructor button:focus-visible,main.nova-native-constructor a:focus-visible{outline:3px solid var(--blue);outline-offset:3px}main.nova-native-constructor .header{min-height:80px;display:flex;justify-content:space-between;align-items:center;padding:12px 5%;border-bottom:1px solid var(--line);gap:20px}main.nova-native-constructor .brand{text-decoration:none;font-size:43px;font-weight:900;letter-spacing:-3px;color:var(--ink);display:flex;gap:38px;align-items:center}main.nova-native-constructor .brand span{font-size:10px;font-weight:400;letter-spacing:2px}main.nova-native-constructor .draft,main.nova-native-constructor .eyebrow{font-size:10px;letter-spacing:1.8px}main.nova-native-constructor .draft{color:var(--muted)}main.nova-native-constructor{max-width:1680px;margin:auto}main.nova-native-constructor .intro{display:flex;justify-content:space-between;align-items:flex-end;padding:35px 5% 25px;gap:25px}main.nova-native-constructor .eyebrow{color:var(--blue);margin:0 0 12px}main.nova-native-constructor .intro h1{font-size:clamp(30px,3.6vw,54px);line-height:1.08;letter-spacing:-1.9px;margin:0;font-weight:700}main.nova-native-constructor .intro-text{color:#65727b;font-size:13px;line-height:1.8;margin:0}main.nova-native-constructor .toolbar{margin:0 5%;display:flex;justify-content:space-between;align-items:center;gap:20px;border-top:1px solid var(--line);padding:18px 0}main.nova-native-constructor .toolbar p{font-size:11px;color:var(--muted);margin:0}main.nova-native-constructor .mode{display:flex;gap:5px}main.nova-native-constructor .mode button{border:1px solid var(--line);background:#fff;padding:10px 15px;font-size:12px}main.nova-native-constructor .mode button[aria-pressed=true]{background:var(--ink);color:#fff;border-color:var(--ink)}main.nova-native-constructor .scene-section{margin:0 3%;border-top:1px solid #edf0f2}main.nova-native-constructor .scene{position:relative;background:linear-gradient(#fff 70%,#f5f7f8 100%);padding:14px 0 0}main.nova-native-constructor .machines{display:grid;grid-template-columns:1fr 1fr 1fr;gap:20px;align-items:end}main.nova-native-constructor .machines[data-mode=combined]{grid-template-columns:1.75fr 1.1fr}main.nova-native-constructor .machine{position:relative;min-width:0;display:flex;flex-direction:column;align-items:center;outline:0;border:0;background:none;color:var(--ink);padding:5px 0 18px}main.nova-native-constructor .stage-number{align-self:flex-start;color:#a1aab1;font-size:10px;letter-spacing:2px;margin:0 0 2px 14px}main.nova-native-constructor .drawing{position:relative;width:100%;height:clamp(180px,21vw,310px);display:flex;align-items:flex-end;justify-content:center;pointer-events:none}main.nova-native-constructor .drawing img{display:block;width:100%;height:100%;object-fit:contain;object-position:center bottom}main.nova-native-constructor .drawing-pending{display:flex;width:90%;height:70%;align-items:center;justify-content:center;text-align:center;color:#7a858d;border:1px dashed #c5cdd2;font-size:12px;padding:18px}main.nova-native-constructor .machine:hover .drawing img,main.nova-native-constructor .machine:focus-visible .drawing img{filter:drop-shadow(0 0 3px #075bff99) drop-shadow(0 0 6px #075bff44)}main.nova-native-constructor .machine:hover .drawing-pending,main.nova-native-constructor .machine:focus-visible .drawing-pending{border-color:var(--blue)}main.nova-native-constructor .model{display:block;max-width:100%;font-weight:700;font-size:12px;text-align:center;line-height:1.35;overflow-wrap:anywhere;margin-top:14px;padding:0 8px;min-height:34px}main.nova-native-constructor .operation{display:block;font-size:11px;color:#79858d;line-height:1.35;margin-top:4px;text-align:center;padding:0 5px}main.nova-native-constructor .replace{color:var(--blue);font-size:11px;display:block;margin-top:9px}main.nova-native-constructor .machine:not(:last-child):after{content:'→';position:absolute;right:-19px;top:42%;font-size:19px;color:#b2bcc4}main.nova-native-constructor .machine.active .model{color:var(--blue)}main.nova-native-constructor .branches{border-top:1px dashed #cad3da;padding-top:10px;display:flex;justify-content:center;gap:30px}main.nova-native-constructor .branches[hidden]{display:none}main.nova-native-constructor .branch-machine{width:32%;max-width:350px}main.nova-native-constructor .branch-machine .drawing{height:160px}main.nova-native-constructor .branch-machine:after{display:none}main.nova-native-constructor .scene-footer{padding:15px 10px;display:flex;justify-content:space-between;gap:20px;font-size:10px;color:#7a8791;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}main.nova-native-constructor .live{color:var(--blue)}main.nova-native-constructor .live:before{content:'';display:inline-block;width:5px;height:5px;border-radius:50%;margin-right:7px;background:var(--blue);vertical-align:middle}main.nova-native-constructor .reference-note{font-size:12px;color:#64727d;margin:16px 5% 28px;max-width:850px}main.nova-native-constructor .choice{margin:0 5%;border-top:2px solid var(--ink);padding:23px 0}main.nova-native-constructor .choice-top{display:flex;justify-content:space-between;gap:30px;align-items:center}main.nova-native-constructor .choice h2,main.nova-native-constructor .branch-controls h2{font-size:23px;line-height:1.15;letter-spacing:-.5px;margin:0}main.nova-native-constructor .choice-top p:not(.eyebrow){font-size:12px;color:var(--muted);max-width:380px}main.nova-native-constructor .choice .eyebrow{margin-bottom:8px}main.nova-native-constructor .filters{display:flex;flex-wrap:wrap;gap:8px;margin:21px 0 17px}main.nova-native-constructor .filters button{background:#fff;border:1px solid var(--line);color:#67747e;padding:8px 12px;font-size:12px}main.nova-native-constructor .filters button.active{border-color:var(--blue);color:var(--blue)}main.nova-native-constructor .products{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid var(--line);border-left:1px solid var(--line)}main.nova-native-constructor .product{position:relative;display:flex;align-items:center;gap:12px;padding:12px;border:0;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:#fff;text-align:left;min-height:105px;color:var(--ink);min-width:0}main.nova-native-constructor .product img{width:43%;height:79px;object-fit:contain}main.nova-native-constructor .product span{font-size:12px;font-weight:700;line-height:1.3;overflow-wrap:anywhere;min-width:0}main.nova-native-constructor .product small{display:block;color:var(--muted);font-weight:400;font-size:10px;margin-top:7px}main.nova-native-constructor .product:hover{background:#f5f8ff}main.nova-native-constructor .product[aria-pressed=true]{box-shadow:inset 0 -3px var(--blue)}main.nova-native-constructor .product[aria-pressed=true] small{color:var(--blue)}main.nova-native-constructor .no-models{font-size:14px;margin:22px 0;color:var(--muted)}main.nova-native-constructor .branch-controls{margin:0 5%;padding:25px 0 30px;display:flex;justify-content:space-between;align-items:center;gap:25px;border-bottom:1px solid var(--line)}main.nova-native-constructor .branch-controls .eyebrow{font-size:9px;margin-bottom:8px}main.nova-native-constructor .branch-controls h2{font-size:20px}main.nova-native-constructor .branch-add{border:0;background:#eff4fa;color:var(--blue);font-size:12px;padding:13px 16px;margin:0 0 5px 6px}main.nova-native-constructor .summary{margin:0 5%;display:flex;gap:25px;padding:25px 0;font-size:12px}main.nova-native-constructor .summary>span{font-size:9px;letter-spacing:1.5px;color:var(--muted);white-space:nowrap;margin-top:3px}main.nova-native-constructor .summary p{margin:0;overflow-wrap:anywhere;min-width:0}main.nova-native-constructor .endnote{font-size:11px;text-align:center;margin:12px 5% 35px;color:#8d989e}@media(max-width:900px){main.nova-native-constructor .brand span,main.nova-native-constructor .draft{display:none}main.nova-native-constructor .intro,main.nova-native-constructor .toolbar,main.nova-native-constructor .choice-top,main.nova-native-constructor .branch-controls{display:block}main.nova-native-constructor .intro-text{margin-top:18px}main.nova-native-constructor .toolbar p{margin:10px 0 0}main.nova-native-constructor .mode{flex-wrap:wrap}main.nova-native-constructor .products{grid-template-columns:repeat(2,minmax(0,1fr))}main.nova-native-constructor .branch-controls>div:last-child{margin-top:18px}main.nova-native-constructor .branch-add{margin:0 5px 6px 0}main.nova-native-constructor .scene-footer{display:block}main.nova-native-constructor .scene-footer>span{display:block;margin-bottom:5px}main.nova-native-constructor .choice h2{font-size:20px}main.nova-native-constructor .drawing{height:210px}main.nova-native-constructor .machines{gap:14px}main.nova-native-constructor .machine:not(:last-child):after{right:-13px;font-size:15px}}@media(max-width:500px){main.nova-native-constructor .header{min-height:65px}main.nova-native-constructor .brand{font-size:35px}main.nova-native-constructor .intro{padding-top:25px}main.nova-native-constructor .intro h1{letter-spacing:-1px}main.nova-native-constructor .intro-text{font-size:12px}main.nova-native-constructor .mode button{padding:9px 11px;font-size:11px}main.nova-native-constructor .scene-section{margin:0 3%}main.nova-native-constructor .scene{padding-top:10px}main.nova-native-constructor .machines{gap:9px}main.nova-native-constructor .drawing{height:125px}main.nova-native-constructor .machines[data-mode=combined] .drawing{height:150px}main.nova-native-constructor .model{font-size:9px;min-height:38px;padding:0 2px;margin-top:8px}main.nova-native-constructor .operation,main.nova-native-constructor .replace{font-size:9px}main.nova-native-constructor .stage-number{font-size:9px;margin-left:4px}main.nova-native-constructor .machine:not(:last-child):after{right:-10px;font-size:13px;top:32%}main.nova-native-constructor .branch-machine{width:45%}main.nova-native-constructor .branch-machine .drawing{height:125px}main.nova-native-constructor .products{grid-template-columns:1fr 1fr}main.nova-native-constructor .product{display:block;padding:9px}main.nova-native-constructor .product img{width:100%;height:70px}main.nova-native-constructor .product span{display:block;font-size:10px;margin-top:7px}main.nova-native-constructor .product small{font-size:9px}main.nova-native-constructor .filters button{font-size:11px;padding:7px 9px}main.nova-native-constructor .summary{display:block}main.nova-native-constructor .summary p{margin-top:8px}main.nova-native-constructor .reference-note{font-size:11px}}

@media(max-width:500px){main.nova-native-constructor .machine:not(:last-child):after{right:-8px;font-size:11px}}main.nova-native-constructor .scene-scroll{max-width:100%;overflow-x:auto;scrollbar-width:thin}main.nova-native-constructor .machines.with-extras{grid-template-columns:none!important;grid-auto-flow:column;grid-auto-columns:270px;justify-content:start;width:max-content;min-width:100%;gap:20px}main.nova-native-constructor .scene:has(.machines.with-extras){width:max-content;min-width:100%}main.nova-native-constructor .extra-slot{position:relative;align-self:stretch;display:flex;flex-direction:column;justify-content:flex-end;padding-bottom:30px}main.nova-native-constructor .extra-slot .machine{width:100%;padding-bottom:0}main.nova-native-constructor .extra-slot .machine:after{display:none}main.nova-native-constructor .remove-extra{position:absolute;bottom:4px;left:0;right:0;border:0;background:none;color:#7a8791;font-size:11px;text-decoration:underline}main.nova-native-constructor .remove-extra:hover{color:#ad3341}main.nova-native-constructor .extra-slot:after{content:'→';position:absolute;right:-18px;top:40%;font-size:18px;color:#b2bcc4}main.nova-native-constructor .add-line{margin:18px 5% 0;display:flex;gap:15px;align-items:center}main.nova-native-constructor .add-line button{border:0;background:var(--blue);color:white;padding:13px 18px;font-size:13px}main.nova-native-constructor .add-line span{font-size:11px;color:var(--muted)}main.nova-native-constructor .choice{scroll-margin-top:15px}@media(max-width:600px){main.nova-native-constructor .add-line{display:block}main.nova-native-constructor .add-line span{display:block;margin-top:8px}main.nova-native-constructor .machines.with-extras .drawing{height:210px}main.nova-native-constructor .machines.with-extras .model{font-size:12px}main.nova-native-constructor .machines.with-extras .operation,main.nova-native-constructor .machines.with-extras .replace{font-size:11px}main.nova-native-constructor .machines.with-extras .stage-number{font-size:9px}}main.nova-native-constructor .family-switch{display:flex;gap:7px;flex-wrap:wrap;margin:25px 5% 0}main.nova-native-constructor .family-switch button{background:#fff;color:#65727b;border:1px solid var(--line);padding:11px 18px;font-size:12px}main.nova-native-constructor .family-switch button[aria-pressed=true]{background:#edf3ff;border-color:var(--blue);color:var(--blue)}main.nova-native-constructor .family-switch button:disabled{opacity:.5;cursor:wait}main.nova-native-constructor .branch-controls[hidden]{display:none}main.nova-native-constructor .machines[data-family=pvc]{grid-template-columns:1fr 1fr;max-width:1180px;margin:auto}main.nova-native-constructor .machines[data-family=pvc][data-mode=combined]{grid-template-columns:minmax(0,1fr);max-width:1050px}main.nova-native-constructor .machines[data-family=pvc] .drawing{height:clamp(220px,26vw,370px)}main.nova-native-constructor .machines[data-family=pvc][data-mode=combined] .drawing{height:clamp(260px,29vw,410px)}main.nova-native-constructor .machines[data-family=pvc].with-extras{max-width:none}main.nova-native-constructor .machines[data-family=pvc] .machine{width:100%}@media(max-width:500px){main.nova-native-constructor .family-switch{margin-top:18px}main.nova-native-constructor .family-switch button{font-size:11px;padding:9px 12px}main.nova-native-constructor .machines[data-family=pvc] .drawing{height:175px}main.nova-native-constructor .machines[data-family=pvc][data-mode=combined] .drawing{height:210px}main.nova-native-constructor .machines[data-family=pvc].with-extras .drawing{height:220px}main.nova-native-constructor .machines[data-family=pvc] .model{font-size:11px}}main.nova-native-constructor .configuration-groups{display:flex;gap:20px;flex-wrap:wrap}main.nova-native-constructor .configuration-group[hidden]{display:none}main.nova-native-constructor .configuration-group .pair-label{font-size:10px;letter-spacing:1px;text-transform:uppercase;margin:0 0 7px;color:#687983}main.nova-native-constructor .machines[data-family=pvc][data-mode=combined][data-cut-mode=combined]{grid-template-columns:1.2fr 1fr;max-width:none}main.nova-native-constructor .machines[data-family=pvc][data-mode=combined][data-cut-mode=separate],main.nova-native-constructor .machines[data-family=pvc][data-mode=separate][data-cut-mode=combined]{grid-template-columns:repeat(3,minmax(0,1fr));max-width:none}main.nova-native-constructor .machines[data-family=pvc][data-mode=separate][data-cut-mode=separate]{grid-template-columns:repeat(4,minmax(0,1fr));max-width:none}main.nova-native-constructor .machines[data-family=pvc] .drawing,main.nova-native-constructor .machines[data-family=pvc][data-mode=combined] .drawing{height:clamp(160px,17vw,240px)}body[data-family=pvc] main.nova-native-constructor .toolbar{display:block}body[data-family=pvc] main.nova-native-constructor #line-route{margin-top:14px}@media(max-width:600px){main.nova-native-constructor .configuration-groups{gap:15px}main.nova-native-constructor .configuration-group{width:100%}main.nova-native-constructor .configuration-group .mode{gap:5px}main.nova-native-constructor .configuration-group .mode button{flex:1}main.nova-native-constructor .machines[data-family=pvc] .drawing,main.nova-native-constructor .machines[data-family=pvc][data-mode=combined] .drawing{height:155px}main.nova-native-constructor .machines[data-family=pvc][data-cut-mode=separate] .drawing{height:135px}main.nova-native-constructor .machines[data-family=pvc][data-mode=separate][data-cut-mode=separate] .model{font-size:9px}main.nova-native-constructor .machines[data-family=pvc].with-extras .drawing{height:220px}}/* Display scale only: preserve the aspect ratio of each processing-machine asset. */
main.nova-native-constructor .machines[data-family=aluminium] .machine[data-stage=machining] .drawing img{width:55%;height:100%;object-fit:contain;object-position:center bottom;margin-bottom:1.7%}/* The large demo is deliberately independent of the selected composition. */
main.nova-native-constructor .demo-machines{display:grid;grid-template-columns:31fr 27fr 42fr;gap:15px;align-items:end}main.nova-native-constructor .demo-machines[data-family=pvc]{grid-template-columns:1.2fr 1fr}main.nova-native-constructor .demo-machine{padding:0 0 10px}main.nova-native-constructor .demo-machine .drawing{height:clamp(100px,15vw,180px)}main.nova-native-constructor .demo-machines[data-family=pvc] .drawing{height:clamp(170px,17vw,230px)}main.nova-native-constructor .demo-machine:not(:last-child):after{right:-13px;top:55%}main.nova-native-constructor .demo-machines[data-family=aluminium] [data-demo-stage=machining] .drawing img{width:100%;margin-bottom:1.7%;object-fit:contain;object-position:center bottom}main.nova-native-constructor .demo-tooltip{position:absolute;z-index:5;top:5px;left:50%;transform:translateX(-50%);max-width:95%;width:max-content;background:#26343c;color:#fff;border-radius:3px;padding:7px 10px;font-size:11px;line-height:1.35;opacity:0;pointer-events:none;text-align:center}main.nova-native-constructor .demo-machine:hover .demo-tooltip,main.nova-native-constructor .demo-machine:focus .demo-tooltip,main.nova-native-constructor .demo-machine[data-revealed=true] .demo-tooltip{opacity:1}main.nova-native-constructor .demo-machine:hover .drawing img,main.nova-native-constructor .demo-machine:focus .drawing img,main.nova-native-constructor .demo-machine[data-revealed=true] .drawing img{filter:drop-shadow(0 0 3px #075bff99) drop-shadow(0 0 6px #075bff44)}main.nova-native-constructor .composition-section{margin:0 5%;padding:18px 0 12px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}main.nova-native-constructor .composition-heading{display:flex;justify-content:space-between;gap:15px;align-items:center;margin-bottom:8px}main.nova-native-constructor .composition-heading .eyebrow{margin:0}main.nova-native-constructor .composition-heading>p:last-child{font-size:11px;color:var(--muted);margin:0}main.nova-native-constructor .composition-scroll{max-width:100%;overflow-x:auto;scrollbar-width:thin}main.nova-native-constructor .composition-row,main.nova-native-constructor .composition-row.with-extras{display:flex!important;grid-template-columns:none!important;align-items:flex-start;justify-content:flex-start!important;gap:17px!important;min-width:100%;max-width:none!important;width:max-content!important;margin:0!important}main.nova-native-constructor .composition-row>.machine,main.nova-native-constructor .composition-row>.extra-slot{flex:0 0 160px;width:160px!important;min-width:160px}main.nova-native-constructor .composition-row .machine{width:100%}main.nova-native-constructor .composition-row .drawing{height:80px!important}main.nova-native-constructor .composition-row .machine[data-stage=machining] .drawing img{width:100%!important;margin-bottom:0!important}main.nova-native-constructor .composition-row .model{font-size:10px!important;min-height:28px;margin-top:8px}main.nova-native-constructor .composition-row .operation,main.nova-native-constructor .composition-row .replace{font-size:10px!important}main.nova-native-constructor .composition-row .stage-number{font-size:8px}main.nova-native-constructor .composition-row .extra-slot{padding-bottom:25px}main.nova-native-constructor .composition-row .remove-extra{font-size:10px}main.nova-native-constructor .composition-row .machine:not(:last-child):after,main.nova-native-constructor .composition-row .extra-slot:after{font-size:12px;right:-13px;top:30%}main.nova-native-constructor .composition-row .machine{padding-bottom:12px}main.nova-native-constructor .composition-row .extra-slot .machine{padding-bottom:0}main.nova-native-constructor .toolbar{margin-top:10px}@media(max-width:600px){main.nova-native-constructor .demo-machines{gap:9px}main.nova-native-constructor .demo-machine:not(:last-child):after{right:-9px;font-size:11px}main.nova-native-constructor .demo-tooltip{font-size:9px;padding:5px 6px}main.nova-native-constructor .composition-heading{display:block}main.nova-native-constructor .composition-heading>p:last-child{margin-top:7px}main.nova-native-constructor .composition-row>.machine,main.nova-native-constructor .composition-row>.extra-slot{flex-basis:140px;width:140px!important;min-width:140px}main.nova-native-constructor .composition-row .drawing{height:70px!important}}main.nova-native-constructor .demo-machines[data-family=aluminium] [data-demo-stage=crimping] .drawing img{position:relative;top:clamp(4px,1.1vw,14px)}main.nova-native-constructor .demo-machine[data-coverage=missing] .drawing img{opacity:.48;filter:drop-shadow(0 0 3px #bf8a34)}main.nova-native-constructor .demo-machine[data-coverage=partial] .drawing img{opacity:.76;filter:drop-shadow(0 0 3px #bf8a34)}main.nova-native-constructor .demo-machine[data-coverage=missing] .drawing,main.nova-native-constructor .demo-machine[data-coverage=partial] .drawing{box-shadow:inset 0 -2px #d6ab63}main.nova-native-constructor .demo-machine[data-coverage=missing]:hover .drawing img,main.nova-native-constructor .demo-machine[data-coverage=partial]:hover .drawing img{filter:drop-shadow(0 0 4px #075bff99)}main.nova-native-constructor .coverage-status{font-size:12px;color:#a16a1a;margin:8px 0 3px}main.nova-native-constructor .coverage-status[data-complete=true]{color:#53736b}main.nova-native-constructor .coverage-note{font-size:10px;color:var(--muted);margin:0 0 15px}main.nova-native-constructor .composition-row>.primary-slot{flex:0 0 160px;width:160px;min-width:160px}main.nova-native-constructor .primary-slot{position:relative;align-self:stretch;display:flex;flex-direction:column;justify-content:flex-end;padding-bottom:25px}main.nova-native-constructor .primary-slot .machine{padding-bottom:0}main.nova-native-constructor .primary-slot .machine:after{display:none}main.nova-native-constructor .primary-slot:after{content:'→';position:absolute;right:-13px;top:30%;font-size:12px;color:#b2bcc4}main.nova-native-constructor .primary-slot:last-child:after{display:none}main.nova-native-constructor .remove-primary{position:absolute;bottom:4px;left:0;right:0;border:0;background:none;color:#7a8791;font-size:10px;text-decoration:underline}main.nova-native-constructor .remove-primary:hover{color:#ad3341}main.nova-native-constructor .empty-drawing{display:flex;align-items:center;justify-content:center;width:100%;height:80px;border:1px dashed #c2cbd2;color:#8da0ae;font-size:27px}main.nova-native-constructor .empty-primary .model{color:#7a8791!important;font-weight:400}main.nova-native-constructor .empty-primary{padding-bottom:22px!important}@media(max-width:600px){main.nova-native-constructor .composition-row>.primary-slot{flex-basis:140px;width:140px;min-width:140px}main.nova-native-constructor .empty-drawing{height:70px}}main.nova-native-constructor .demo-machines[data-family=aluminium] [data-demo-stage=cutting] .drawing img{width:84%;height:100%;object-fit:contain;object-position:center bottom}/* Local model picker, anchored below a clicked machine in the fixed demo. */
main.nova-native-constructor .demo-picker{position:relative;max-width:100%;margin-top:12px;margin-bottom:18px;background:#fff;border:1px solid #c7d5df;border-radius:4px;box-shadow:0 8px 24px #25364518;z-index:8;text-align:left}main.nova-native-constructor .demo-picker[hidden]{display:none}main.nova-native-constructor .demo-picker:before{content:'';position:absolute;width:12px;height:12px;left:var(--anchor-x,30px);top:-7px;background:#fff;border-left:1px solid #c7d5df;border-top:1px solid #c7d5df;transform:translateX(-50%) rotate(45deg)}main.nova-native-constructor .demo-picker-bar{position:relative;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 15px;border-bottom:1px solid var(--line);background:#f5f8fb;font-size:11px;color:#597080}main.nova-native-constructor .demo-picker-bar button{flex:none;border:0;background:none;color:#567082;font-size:11px;padding:3px}main.nova-native-constructor .demo-picker-content{max-height:min(65vh,570px);overflow-y:auto;overscroll-behavior:contain}main.nova-native-constructor .demo-picker #choice{margin:0;padding:16px;border:0;scroll-margin:0}main.nova-native-constructor .demo-picker .choice-top{display:block}main.nova-native-constructor .demo-picker .choice h2{font-size:19px;line-height:1.2}main.nova-native-constructor .demo-picker .choice-top p:not(.eyebrow){font-size:11px;margin:9px 0 0}main.nova-native-constructor .demo-picker .filters{margin:14px 0 12px;gap:6px}main.nova-native-constructor .demo-picker .filters button{font-size:10px;padding:7px 9px}main.nova-native-constructor .demo-picker .products{grid-template-columns:repeat(2,minmax(0,1fr))}main.nova-native-constructor .demo-picker .product{padding:10px;min-height:95px}main.nova-native-constructor .demo-picker .product img{width:43%;height:68px}main.nova-native-constructor .demo-picker .product span{font-size:11px}main.nova-native-constructor .demo-picker .product small{font-size:9px}@media(max-width:600px){main.nova-native-constructor .demo-picker{width:100%!important;margin-left:0!important}main.nova-native-constructor .demo-picker #choice{padding:12px}main.nova-native-constructor .demo-picker .product{display:flex;padding:8px;gap:7px}main.nova-native-constructor .demo-picker .product img{width:42%;height:60px}main.nova-native-constructor .demo-picker .product span{font-size:10px}main.nova-native-constructor .demo-picker .demo-picker-bar{padding:10px}main.nova-native-constructor .demo-picker-content{max-height:65vh}}/* Additional machines are drawn as side branches; the main demonstration stays fixed. */
main.nova-native-constructor .demo-branches{display:grid;grid-template-columns:31fr 27fr 42fr;gap:18px;padding:22px 2% 14px}main.nova-native-constructor .demo-branches[data-family=pvc]{grid-template-columns:1.2fr 1fr}main.nova-native-constructor .demo-branches[hidden]{display:none}main.nova-native-constructor .demo-branch-group{position:relative;display:flex;flex-wrap:wrap;align-items:flex-start;gap:9px;padding-left:13px;border-left:1px dashed #afbdc7}main.nova-native-constructor .demo-branch-group:empty{display:none}main.nova-native-constructor .demo-branch-group:before{content:'';position:absolute;left:-1px;top:-22px;height:22px;border-left:1px dashed #afbdc7}main.nova-native-constructor .demo-branch{position:relative;max-width:170px;width:100%;padding:6px;border:1px solid #e3e8ec;border-radius:3px;background:#fff;color:#536b7c;cursor:pointer}main.nova-native-constructor .demo-branch:before{content:'';position:absolute;left:-14px;top:45px;width:13px;border-top:1px dashed #afbdc7}main.nova-native-constructor .demo-branch .drawing{height:82px}main.nova-native-constructor .demo-branch .drawing img{width:100%;height:100%;object-fit:contain;object-position:center bottom}main.nova-native-constructor .demo-branch:hover,main.nova-native-constructor .demo-branch:focus-visible{border-color:#8ab2e5}main.nova-native-constructor .demo-branch:hover .drawing img,main.nova-native-constructor .demo-branch:focus-visible .drawing img{filter:drop-shadow(0 0 3px #075bff88)}main.nova-native-constructor .branch-caption{display:block;font-size:9px;line-height:1.3;overflow-wrap:anywhere;text-align:center;margin-top:6px}@media(max-width:600px){main.nova-native-constructor .demo-branches{gap:8px;padding-left:0;padding-right:0}main.nova-native-constructor .demo-branch-group{padding-left:8px;gap:7px}main.nova-native-constructor .demo-branch{padding:3px}main.nova-native-constructor .demo-branch:before{left:-9px;width:8px;top:33px}main.nova-native-constructor .demo-branch .drawing{height:60px}main.nova-native-constructor .branch-caption{font-size:8px}main.nova-native-constructor .demo-branch-group:before{top:-20px;height:20px}}/* Coverage colours only the corresponding alpha-masked part of the fixed machine. */
main.nova-native-constructor .operation-fill{position:absolute;pointer-events:none;z-index:2;background:rgba(11,105,245,.42);mask-size:contain;-webkit-mask-size:contain;mask-position:center bottom;-webkit-mask-position:center bottom;mask-repeat:no-repeat;-webkit-mask-repeat:no-repeat;display:none}main.nova-native-constructor .operation-fill[data-covered=true]{display:block}main.nova-native-constructor .demo-machines .demo-machine[data-coverage] .drawing{box-shadow:none}main.nova-native-constructor .demo-machines .demo-machine[data-coverage] .drawing img{opacity:1;filter:none}main.nova-native-constructor .demo-machines .demo-machine:hover .drawing img,main.nova-native-constructor .demo-machines .demo-machine:focus-visible .drawing img{filter:drop-shadow(0 0 2px #075bff88)}main.nova-native-constructor .composition-heading .composition-description{font-size:11px;color:var(--muted);margin:0}main.nova-native-constructor .reset-selection{flex:none;background:#fff;border:1px solid #cbd5dd;border-radius:3px;padding:8px 12px;color:#526b7b;font-size:11px}main.nova-native-constructor .reset-selection:hover{border-color:#7799b4;color:#204b6b}@media(max-width:600px){main.nova-native-constructor .composition-heading .composition-description{margin-top:7px}main.nova-native-constructor .reset-selection{margin-top:10px}}/* Shared two-block geometry for both directions. Images and mask layers share one shifted wrapper. */
main.nova-native-constructor .demo-machines[data-family]{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:18px}main.nova-native-constructor .demo-machines[data-family] .drawing{height:clamp(170px,17vw,230px);margin-bottom:0}main.nova-native-constructor .demo-machines[data-family] .demo-machine[data-demo-stage] .drawing img{display:block;width:100%!important;height:100%!important;max-width:100%;object-fit:contain;object-position:center bottom;position:relative;top:0!important;transform:none!important;margin-bottom:0!important}main.nova-native-constructor .demo-branches[data-family]{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr)}@media(max-width:600px){main.nova-native-constructor .demo-machines[data-family]{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:9px}main.nova-native-constructor .demo-machines[data-family] .drawing{height:170px}main.nova-native-constructor .demo-branches[data-family]{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr)}}main.nova-native-constructor .scene-section .scene-scroll{overflow:visible}/* Operation legend and alpha-normalized silhouettes, shared across both families. */
main.nova-native-constructor .scene-legend{display:flex;justify-content:center;gap:20px;flex-wrap:wrap;font-size:11px;color:#687b89;margin:14px 0 8px}main.nova-native-constructor .scene-legend>span:before{content:'';display:inline-block;width:10px;height:10px;margin-right:7px;border-radius:2px;vertical-align:-1px}main.nova-native-constructor .legend-grey:before{background:#c2c7ca}main.nova-native-constructor .legend-blue:before{background:#71a9ef}main.nova-native-constructor .operation-chips{display:flex;justify-content:center;gap:6px;max-width:100%;min-height:22px;margin-top:8px;position:relative;z-index:3}main.nova-native-constructor .operation-chip{flex:1;max-width:170px;display:flex;align-items:center;justify-content:center;border-radius:3px;background:#eef0f2;color:#7a8790;font-size:10px;line-height:1.2;padding:4px 7px;min-height:22px;white-space:nowrap}main.nova-native-constructor .operation-chip[data-covered=true]{background:#d7e9ff;color:#205e9c}main.nova-native-constructor .demo-machines[data-family] .demo-machine[data-demo-stage] .drawing img{max-width:none!important}@media(max-width:600px){main.nova-native-constructor .scene-legend{gap:7px 14px;font-size:10px}main.nova-native-constructor .operation-chips{gap:3px}main.nova-native-constructor .operation-chip{font-size:9px;padding:4px 5px}}/* Separate supplementary-equipment rubric, never preselected into the main line. */
main.nova-native-constructor .optional-groups{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;width:min(650px,65%)}main.nova-native-constructor .optional-group{display:flex;flex-direction:column;justify-content:space-between;gap:10px;padding:14px;min-height:82px;text-align:left;background:#f4f7fa;border:1px solid #dde5ec;border-radius:3px;color:#34576e;font-size:12px}main.nova-native-constructor .optional-group small{font-size:10px;color:#6d8393}main.nova-native-constructor .optional-group:hover{border-color:#83add3;background:#edf4fc}main.nova-native-constructor .optional-note{font-size:11px;color:var(--muted);margin:10px 0 0}@media(max-width:900px){main.nova-native-constructor .optional-groups{width:100%}}@media(max-width:500px){main.nova-native-constructor .optional-groups{grid-template-columns:1fr}main.nova-native-constructor .optional-group{min-height:64px;flex-direction:row;align-items:center}main.nova-native-constructor .optional-group small{flex:none}}/* Real catalogue facts and a separate details link do not select a machine. */
main.nova-native-constructor .product-card{min-width:0;display:flex;flex-direction:column;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:#fff}main.nova-native-constructor .product-card .product{width:100%;border:0}main.nova-native-constructor .product-metadata{padding:0 12px 13px;color:#627785;font-size:11px;line-height:1.4}main.nova-native-constructor .product-purpose{margin:0 0 9px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}main.nova-native-constructor .product-specs{padding-left:14px;margin:0}main.nova-native-constructor .product-specs li+li{margin-top:5px}main.nova-native-constructor .product-pending{margin:0;color:#8898a2}main.nova-native-constructor .product-details{display:inline-block;margin-top:10px;color:var(--blue);text-decoration:none;font-size:11px}main.nova-native-constructor .product-details:hover{text-decoration:underline}main.nova-native-constructor .demo-picker .product-metadata{padding:0 10px 12px;font-size:10px}main.nova-native-constructor .demo-picker .product-details{font-size:10px}@media(max-width:500px){main.nova-native-constructor .product-metadata{padding:0 9px 11px;font-size:10px}}main.nova-native-constructor .constructor-entry{text-decoration:none;color:var(--blue);font-size:12px;letter-spacing:.3px;white-space:nowrap}main.nova-native-constructor .constructor-entry:hover{text-decoration:underline}/* A single horizontal model ribbon supports choosing several independent extras. */
main.nova-native-constructor .model-grid{display:grid;grid-template-columns:30px minmax(0,1fr) 30px;gap:7px;align-items:start}main.nova-native-constructor .model-grid .products{display:flex!important;grid-template-columns:none!important;flex-wrap:nowrap;gap:0;overflow-x:auto;overflow-y:hidden;scrollbar-width:thin;scroll-snap-type:x proximity;align-items:stretch;min-width:0;max-width:100%}main.nova-native-constructor .model-grid .product-card{flex:0 0 248px;scroll-snap-align:start;max-width:85vw}main.nova-native-constructor .ribbon-arrow{height:35px;align-self:start;margin-top:30px;border:1px solid #bdcddd;background:#fff;color:#326691;font-size:20px;border-radius:3px}main.nova-native-constructor .ribbon-arrow:disabled{opacity:.3;cursor:default}main.nova-native-constructor .ribbon-hint{font-size:10px;color:#7c8d99;margin:8px 0 0}main.nova-native-constructor .choice-feedback{font-size:11px;color:var(--blue);min-height:15px;margin:6px 0 0}main.nova-native-constructor .demo-picker .model-grid .products{grid-template-columns:none!important}main.nova-native-constructor .demo-picker-content{max-height:none;overflow:visible}main.nova-native-constructor .demo-picker .model-grid .product-card{flex-basis:238px}main.nova-native-constructor .demo-branch-card{position:relative;width:170px;max-width:100%;padding-top:5px}main.nova-native-constructor .demo-branch-card .demo-branch{width:100%;max-width:none}main.nova-native-constructor .remove-branch{position:absolute;top:0;right:-4px;z-index:10;width:25px;height:25px;border:1px solid #bdcbd5;border-radius:50%;background:#fff;color:#506f86;font-size:18px;line-height:1;padding:0}main.nova-native-constructor .remove-branch:hover{color:#a93a40;border-color:#be7377}main.nova-native-constructor .extra-slot .remove-extra{top:0;bottom:auto;left:auto;right:0;z-index:6;width:25px;height:25px;border:1px solid #bdcbd5;border-radius:50%;background:#fff;color:#506f86;font-size:18px;text-decoration:none;padding:0;line-height:1}main.nova-native-constructor .extra-slot .machine{padding-top:11px}main.nova-native-constructor .demo-branch .catalogue-photo img{filter:none}main.nova-native-constructor .demo-machines[data-family] .demo-machine .drawing>img[data-grey-image]{opacity:.62;filter:none}main.nova-native-constructor .demo-machines[data-family] .demo-machine[data-demo-stage] .drawing>img.operation-fill{position:absolute;opacity:1;filter:url(#constructor-blue-details);background:none;mask-image:none;-webkit-mask-image:none;mask-size:100% 100%;-webkit-mask-size:100% 100%;object-fit:contain;object-position:center bottom;max-width:none!important;transform:none!important;margin:0!important;display:none}main.nova-native-constructor .demo-machines[data-family] .demo-machine .drawing>img.operation-fill[data-covered=true][data-geometry-ready=true]{display:block}main.nova-native-constructor .demo-machines[data-family] .demo-machine .drawing>img.operation-fill[data-quality=partial]{opacity:.58;mask-image:none;-webkit-mask-image:none}main.nova-native-constructor .operation-chip[data-quality=partial]{background:repeating-linear-gradient(135deg,#e3effc 0 4px,#d0e3f9 4px 8px);color:#2c6197}main.nova-native-constructor .legend-partial:before{background:repeating-linear-gradient(135deg,#f1f7ff 0 2px,#71a9ef 2px 5px)}@media(max-width:600px){main.nova-native-constructor .model-grid{grid-template-columns:27px minmax(0,1fr) 27px;gap:4px}main.nova-native-constructor .demo-picker .model-grid .product-card{flex-basis:220px}main.nova-native-constructor .demo-branch-card{width:150px}main.nova-native-constructor .remove-branch{right:-1px}}main.nova-native-constructor .product-coverage-badge{display:inline-block;margin:0 0 9px;padding:3px 6px;border-radius:3px;font-size:10px;background:#e6f1ff;color:#346793}main.nova-native-constructor .product-coverage-badge[data-processing-quality=partial]{border:1px dashed #83a9ce}/* The specified crimping fraction is a visual selection marker, not a machine-capacity ratio. */
main.nova-native-constructor .demo-machines[data-family] .demo-machine .drawing>img.operation-fill[data-operation=crimping][data-quality=partial]{opacity:1}/* Cleaning replacement fractions apply only inside the AWCL right-hand operation segment. */
main.nova-native-constructor .demo-machines[data-family] .demo-machine .drawing>img.operation-fill[data-operation=cleaning][data-quality=partial]{opacity:1}/* Compact read-only ordinal indicators; no production quantities are claimed. */
main.nova-native-constructor .line-estimates{display:flex;justify-content:flex-end;align-items:center;gap:17px;padding:11px 2% 3px;flex-wrap:wrap;min-height:32px}main.nova-native-constructor .estimate-gauge{display:flex;align-items:center;gap:7px}main.nova-native-constructor .estimate-label{font-size:11px;color:#526a75;white-space:nowrap}main.nova-native-constructor .estimate-segments{display:block;position:relative;width:90px;height:9px;background:#e1e6e9;border-radius:5px;overflow:hidden}main.nova-native-constructor .estimate-fill{display:block;width:100%;height:100%;background:linear-gradient(90deg,#61a776 0%,#91b877 40%,#d7bd68 60%,#c87b73 100%)}main.nova-native-constructor .estimate-note{font-size:9px;color:#8897a0;cursor:help}main.nova-native-constructor .automation-control{position:absolute;left:3px;top:1px;z-index:6;width:24px;height:24px;border:1px solid #d1dbe3;border-radius:3px;background:#fff;color:#81919c;padding:0;font-size:17px;line-height:1}main.nova-native-constructor .automation-control[aria-pressed=true]{color:#286c9e;background:#e9f3ff;border-color:#90b5d7}main.nova-native-constructor .automation-control:disabled{opacity:1;cursor:default}main.nova-native-constructor .primary-slot:has(.automation-control)>.machine{padding-top:11px}@media(max-width:600px){main.nova-native-constructor .line-estimates{justify-content:flex-start;gap:8px 13px;padding:10px 0 2px}main.nova-native-constructor .estimate-gauge{gap:5px}main.nova-native-constructor .estimate-segments{width:74px}main.nova-native-constructor .estimate-label{font-size:10px}main.nova-native-constructor .estimate-note{font-size:8px}main.nova-native-constructor .automation-control{width:23px;height:23px}}/* The model ribbon shows short captions; full catalogue facts open only via Details. */
main.nova-native-constructor .model-grid .product-card .product{display:flex;flex-direction:column;align-items:stretch;gap:6px;padding:10px 12px;min-height:0}main.nova-native-constructor .model-grid .product-card .product>img{width:100%;height:94px;object-fit:contain}main.nova-native-constructor .model-grid .product-card .product>span{display:block;margin:0;font-size:11px;line-height:1.3;min-height:31px}main.nova-native-constructor .model-grid .product-card .product small{font-size:9px;margin-top:4px}main.nova-native-constructor .model-grid .product-metadata{padding:0 12px 10px;font-size:10px;line-height:1.35;display:flex;flex-direction:column;align-items:flex-start;flex:1}main.nova-native-constructor .model-grid .product-purpose{-webkit-line-clamp:2;margin:0 0 6px;max-height:27px}main.nova-native-constructor .model-grid .product-coverage-badge{font-size:9px;padding:2px 5px;margin-bottom:5px}main.nova-native-constructor .model-grid .product-details{font-size:10px;margin-top:auto;padding-top:5px}@media(max-width:600px){main.nova-native-constructor .model-grid .product-card .product{padding:9px 10px}main.nova-native-constructor .model-grid .product-card .product>img{height:85px}main.nova-native-constructor .model-grid .product-metadata{padding:0 10px 10px}}/* Removal controls remain visible siblings of each selected thumbnail. */
main.nova-native-constructor .composition-row .remove-primary,main.nova-native-constructor .composition-row .remove-extra{position:absolute;top:0;bottom:auto;left:auto;right:0;z-index:6;width:25px;height:25px;border:1px solid #bdcbd5;border-radius:50%;background:#fff;color:#506f86;font-size:18px;text-decoration:none;padding:0;line-height:1}main.nova-native-constructor .composition-row .remove-primary:hover,main.nova-native-constructor .composition-row .remove-extra:hover{color:#a93a40;border-color:#be7377}main.nova-native-constructor .composition-row .primary-slot>.machine{padding-top:11px}/* All models remain visible in a wrapping grid inside the full-width inline picker. */
main.nova-native-constructor .model-grid{display:block;min-width:0;width:100%}main.nova-native-constructor .model-grid .products,main.nova-native-constructor .demo-picker .model-grid .products{display:grid!important;grid-template-columns:repeat(auto-fill,minmax(190px,1fr))!important;overflow:visible;max-width:100%;width:100%;scroll-snap-type:none}main.nova-native-constructor .model-grid .product-card,main.nova-native-constructor .demo-picker .model-grid .product-card{max-width:none;min-width:0;flex:none;scroll-snap-align:none}main.nova-native-constructor .demo-picker{width:100%!important;margin-left:0!important}main.nova-native-constructor .demo-picker .choice-top{display:flex;align-items:flex-start;justify-content:space-between}main.nova-native-constructor .demo-picker .choice-top p:not(.eyebrow){max-width:420px;margin-top:0}main.nova-native-constructor .demo-picker .product-ribbon{display:block}@media(max-width:600px){main.nova-native-constructor .model-grid .products,main.nova-native-constructor .demo-picker .model-grid .products{grid-template-columns:repeat(2,minmax(0,1fr))!important}main.nova-native-constructor .demo-picker .choice-top{display:block}main.nova-native-constructor .demo-picker .choice-top p:not(.eyebrow){margin-top:8px}main.nova-native-constructor .model-grid .product-card .product{padding:8px}main.nova-native-constructor .model-grid .product-card .product>img{height:76px}main.nova-native-constructor .model-grid .product-card .product>span{font-size:10px}main.nova-native-constructor .model-grid .product-metadata{padding:0 8px 9px;font-size:9px}}/* Editing is spatially anchored and distinct from operation-coverage colour. */
main.nova-native-constructor .demo-picker{width:auto!important;margin-left:initial!important}main.nova-native-constructor .demo-machine[data-editing=true]{outline:2px solid #395d77;outline-offset:4px;border-radius:4px;background:#f2f7fb}main.nova-native-constructor .demo-branch[data-editing=true]{outline:2px solid #395d77;outline-offset:3px}main.nova-native-constructor .filters button[aria-pressed=true]{border-color:var(--blue);color:var(--blue);background:#edf4ff}main.nova-native-constructor .demo-picker-bar{color:#355d79;font-weight:600}main.nova-native-constructor .demo-picker .model-grid .products{grid-template-columns:repeat(auto-fill,minmax(165px,1fr))!important}@media(max-width:600px){main.nova-native-constructor .demo-picker{width:100%!important;margin-left:0!important}main.nova-native-constructor .demo-picker .model-grid .products{grid-template-columns:repeat(2,minmax(0,1fr))!important}}/* Click selects the editor; its highlight follows the silhouette rather than a large rectangle. */
main.nova-native-constructor .demo-machine[data-editing=true]{outline:none;outline-offset:0;background:none;border-radius:0}main.nova-native-constructor .demo-machines[data-family] .demo-machine[data-editing=true] .drawing>img[data-grey-image]{filter:drop-shadow(0 0 1.4px #185b93) drop-shadow(0 0 3px #3186c8b3)}main.nova-native-constructor .demo-branch[data-editing=true]{outline:none;outline-offset:0;border-color:#8ab2d4}main.nova-native-constructor .demo-machine:focus-visible{outline:1px dotted #395d77;outline-offset:3px}/* Explicit two-head welding duplicates are separate instances, each with its own removal key. */
main.nova-native-constructor .add-welding-instance{align-self:flex-start;margin:0 10px 10px;padding:4px 7px;font-size:10px;color:#376f97;background:#f1f7fc;border:1px solid #b9cfdf;border-radius:3px}main.nova-native-constructor .add-welding-instance:hover{background:#e4f0fb}main.nova-native-constructor .add-welding-instance.compact{position:absolute;left:3px;top:1px;z-index:6;margin:0;width:24px;height:24px;padding:0;font-size:18px;line-height:1}main.nova-native-constructor .demo-machines[data-family] .demo-machine .drawing>img.operation-fill[data-operation=welding][data-quality=partial]{opacity:1}main.nova-native-constructor .instance-caption{display:block;font-size:9px;line-height:1.25;color:#4c7792;margin-top:5px;text-align:center}main.nova-native-constructor .composition-row .instance-caption{margin-bottom:2px}/* A single compact reset belongs to the visual scene, independent of the selected family. */
main.nova-native-constructor .scene-top-tools{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:10px 0 0}main.nova-native-constructor .scene-top-tools>.reset-selection{margin:0;flex:none}main.nova-native-constructor .scene-top-tools>.line-estimates{flex:1;min-width:0;padding:0}main.nova-native-constructor .filters .additional-entry{border-style:dashed;color:#416f91}main.nova-native-constructor .demo-machines[data-family] .demo-machine .drawing>img.operation-fill[data-operation=crimping][data-quality=partial][data-visual-fraction=""]{opacity:.58}@media(max-width:600px){main.nova-native-constructor .scene-top-tools{gap:9px}main.nova-native-constructor .scene-top-tools>.line-estimates{flex-basis:100%}main.nova-native-constructor .scene-top-tools>.reset-selection{font-size:10px;padding:7px 10px}}/* Five peer tabs stay on one desktop row; the fifth shows the auxiliary union directly. */
main.nova-native-constructor .demo-picker .filters[data-profile-tabs=true]{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:4px;align-items:stretch}main.nova-native-constructor .demo-picker .filters[data-profile-tabs=true]>button{min-width:0;padding:7px 3px;font-size:9px;line-height:1.2;white-space:normal;overflow-wrap:anywhere;min-height:38px}@media(max-width:600px){main.nova-native-constructor .demo-picker .filters[data-profile-tabs=true]{display:flex;flex-wrap:wrap;gap:5px}main.nova-native-constructor .demo-picker .filters[data-profile-tabs=true]>button{flex:1 1 100px;padding:7px 6px}}/* Keep visible tab/add controls still while feedback and branches update below the panel. */
main.nova-native-constructor{overflow-anchor:none}main.nova-native-constructor .model-grid .product-card .product small{height:24px;min-height:24px;max-height:24px;overflow:hidden}/* Selection feedback is below the grid; its compact reserved area cannot resize the header. */
main.nova-native-constructor .choice-feedback{height:30px;min-height:30px;max-height:30px;overflow:hidden}/* Keep selected contours quiet; the sharp operation fill remains the strongest colour. */
main.nova-native-constructor .demo-machines[data-family] .demo-machine[data-editing=true] .drawing>img[data-grey-image]{filter:drop-shadow(0 0 .9px #456f8c66) drop-shadow(0 0 1.5px #4076a044)}main.nova-native-constructor .model-grid .product-purpose.model-distinct-name{-webkit-line-clamp:3;max-height:42px}/* Compact shared quantity controls: permitted repeatable models only. */
main.nova-native-constructor .product-card{position:relative}main.nova-native-constructor .quantity-control{display:flex;align-items:center;gap:5px;position:absolute;top:5px;right:6px;z-index:7;padding:2px 4px;background:#fff;border:1px solid #dce5ec;border-radius:4px;color:#526d80;font-size:10px;line-height:1;white-space:nowrap}main.nova-native-constructor .quantity-control .add-welding-instance,main.nova-native-constructor .quantity-control .quantity-minus{position:static;align-self:auto;margin:0;width:23px;height:23px;padding:0;font-size:19px;line-height:1;border-radius:3px}main.nova-native-constructor .quantity-control .add-welding-instance:disabled,main.nova-native-constructor .quantity-control .quantity-minus:disabled{opacity:.38;cursor:default;background:#eef2f5}main.nova-native-constructor .quantity-control.compact{left:3px;right:auto;top:1px}main.nova-native-constructor .quantity-count{min-width:31px;text-align:center;font-variant-numeric:tabular-nums}main.nova-native-constructor .product-card:has(>.quantity-control)>.product{padding-top:34px}main.nova-native-constructor .demo-picker[data-aluminium-additional=true] .filters[data-profile-tabs=true]>button{font-size:11px;padding:8px 7px}
@media(min-width:1180px){main.nova-native-constructor .demo-picker[data-aluminium-additional=true] .model-grid .products{grid-template-columns:repeat(7,minmax(0,1fr))!important}}
@media(max-width:600px){main.nova-native-constructor .quantity-control{font-size:9px;gap:3px}main.nova-native-constructor .quantity-control .add-welding-instance,main.nova-native-constructor .quantity-control .quantity-minus{width:22px;height:22px}main.nova-native-constructor .demo-picker[data-aluminium-additional=true] .filters[data-profile-tabs=true]>button{font-size:10px}}main.nova-native-constructor .demo-picker[data-aluminium-layout=saws] .filters[data-profile-tabs=true]>button,main.nova-native-constructor .demo-picker[data-aluminium-layout=centres] .filters[data-profile-tabs=true]>button{font-size:11px;padding:8px 7px}
@media(min-width:1180px){main.nova-native-constructor .demo-picker[data-aluminium-layout=saws] .model-grid .products{grid-template-columns:repeat(6,minmax(0,1fr))!important}main.nova-native-constructor .demo-picker[data-aluminium-layout=centres] .model-grid .products{grid-template-columns:repeat(5,minmax(0,1fr))!important}}main.nova-native-constructor .quantity-minus{color:#376f97;background:#f1f7fc;border:1px solid #b9cfdf}main.nova-native-constructor .quantity-minus:hover{background:#e4f0fb}/* Readable selection panels; use card height and wrapping instead of tiny text. */
main.nova-native-constructor #choice .product-metadata{font-size:14px;line-height:1.45;color:#475e6c;padding:0 12px 14px}main.nova-native-constructor #choice .product-purpose{display:block;-webkit-line-clamp:unset;-webkit-box-orient:initial;max-height:none;overflow:visible;font-size:14px;line-height:1.45;margin:0 0 10px;color:#475e6c}main.nova-native-constructor #choice .product>span{font-size:14px;line-height:1.4;min-height:0}main.nova-native-constructor #choice .product small{font-size:12px;line-height:1.4;height:auto;min-height:34px;max-height:none;overflow:visible;color:#657581}main.nova-native-constructor #choice .product-details{font-size:13px;line-height:1.4;padding-top:8px}main.nova-native-constructor #choice .product-coverage-badge{font-size:12px;line-height:1.4}main.nova-native-constructor #choice .filters button{font-size:13px;line-height:1.35;padding:9px 8px}main.nova-native-constructor #choice .choice-top p:not(.eyebrow){font-size:14px;line-height:1.45}main.nova-native-constructor #choice .eyebrow{font-size:12px}main.nova-native-constructor #choice h2{font-size:24px;line-height:1.2}main.nova-native-constructor #choice .choice-feedback{font-size:13px;line-height:1.4;height:38px;min-height:38px;max-height:38px}main.nova-native-constructor .demo-picker-bar,main.nova-native-constructor .demo-picker-bar button{font-size:13px;line-height:1.4}main.nova-native-constructor .quantity-control{font-size:12px;gap:4px}main.nova-native-constructor .quantity-count{min-width:40px}main.nova-native-constructor .quantity-control .add-welding-instance,main.nova-native-constructor .quantity-control .quantity-minus{width:26px;height:26px;font-size:20px}main.nova-native-constructor #choice .product-card:has(>.quantity-control)>.product{padding-top:40px}/* Pointer targets hug the visible equipment; the surrounding cell stays neutral. */
main.nova-native-constructor .demo-machines .demo-machine{pointer-events:none}main.nova-native-constructor .demo-machines .demo-machine .drawing,main.nova-native-constructor .demo-machines .demo-machine .drawing>img,main.nova-native-constructor .demo-machines .operation-chips,main.nova-native-constructor .demo-machines .demo-tooltip{pointer-events:none}main.nova-native-constructor .demo-machines .demo-machine .machine-hit-area{position:absolute;display:block;z-index:4;pointer-events:auto;cursor:pointer;background:transparent}main.nova-native-constructor .demo-machines .demo-machine:focus-visible{outline:none}main.nova-native-constructor .demo-machines .demo-machine:focus-visible .machine-hit-area{outline:1px dotted #597a91;outline-offset:3px}/* Moderate hierarchy for selection and composition miniatures. */
main.nova-native-constructor #choice .product-metadata{font-size:12.5px;line-height:1.4;padding:0 11px 12px}main.nova-native-constructor #choice .product-purpose{font-size:12.5px;line-height:1.4;margin-bottom:8px}main.nova-native-constructor #choice .product>span{font-size:13px;line-height:1.35}main.nova-native-constructor #choice .product small{font-size:11px;line-height:1.35;min-height:30px}main.nova-native-constructor #choice .product-details{font-size:11.5px;padding-top:6px}main.nova-native-constructor #choice .filters button{font-size:11.5px;line-height:1.3;padding:8px 6px;overflow-wrap:normal}main.nova-native-constructor #choice .choice-top p:not(.eyebrow){font-size:12px;line-height:1.4}main.nova-native-constructor #choice .eyebrow{font-size:10.5px}main.nova-native-constructor #choice h2{font-size:22px}main.nova-native-constructor #choice .choice-feedback{font-size:11.5px;line-height:1.4;height:34px;min-height:34px;max-height:34px}main.nova-native-constructor .demo-picker-bar,main.nova-native-constructor .demo-picker-bar button{font-size:11.5px;line-height:1.35}main.nova-native-constructor .quantity-control{font-size:11px;gap:3px;padding:2px 3px}main.nova-native-constructor .quantity-count{min-width:33px}main.nova-native-constructor .quantity-control .add-welding-instance,main.nova-native-constructor .quantity-control .quantity-minus{width:24px;height:24px;font-size:18px}main.nova-native-constructor #choice .product-card:has(>.quantity-control)>.product{padding-top:36px}main.nova-native-constructor #machines .model{font-size:12.5px;line-height:1.35}main.nova-native-constructor #machines .operation{font-size:11.5px;line-height:1.4}main.nova-native-constructor #machines .replace{font-size:11px;line-height:1.35}main.nova-native-constructor #machines .instance-caption{font-size:10.5px}
@media(min-width:900px){main.nova-native-constructor #choice .filters[data-profile-tabs=true]{grid-template-columns:1.35fr 1fr 1.15fr .9fr 1.25fr}main.nova-native-constructor .demo-picker:has(#filters [data-category=cutting-lines][aria-pressed=true]) .model-grid .products{grid-template-columns:repeat(3,minmax(0,1fr))!important}}/* NOVA component tokens: one compact geometry within this site. */
main.nova-native-constructor{--nova-picker-card-height:225px;--nova-picker-card-width:clamp(150px,calc((min(94vw,1579.2px) - 36px)/7),221px);--nova-picker-image-height:88px;--nova-model-font:12.5px;--nova-purpose-font:12px;--nova-tab-height:44px}main.nova-native-constructor #choice .model-grid .products,main.nova-native-constructor #demo-picker #choice .model-grid .products{grid-template-columns:repeat(auto-fill,var(--nova-picker-card-width))!important;grid-auto-rows:var(--nova-picker-card-height);justify-content:start}main.nova-native-constructor #choice .product-card{height:var(--nova-picker-card-height);min-height:var(--nova-picker-card-height);max-height:var(--nova-picker-card-height);display:flex;flex-direction:column}main.nova-native-constructor #choice .product-card>.product,main.nova-native-constructor #choice .product-card:has(>.quantity-control)>.product{display:grid;grid-template-rows:var(--nova-picker-image-height) 57px;gap:4px;align-items:start;flex:none;height:159px;min-height:159px;max-height:159px;padding:8px 10px 0}main.nova-native-constructor #choice .product>img{width:100%;height:var(--nova-picker-image-height);object-fit:contain}main.nova-native-constructor #choice .product>.product-caption{display:grid;grid-template-rows:32px 25px;min-height:57px;max-height:57px;margin:0;padding:0;font-size:var(--nova-model-font);line-height:16px;align-content:start}main.nova-native-constructor #choice .product-model-name{display:block;grid-row:1;font-size:var(--nova-model-font);line-height:16px;margin:0;padding:0;min-height:32px}main.nova-native-constructor #choice .product small{grid-row:2;font-size:10.5px;line-height:12.5px;margin:0;padding:0;height:25px;min-height:25px;max-height:25px;align-self:start}main.nova-native-constructor #choice .product-metadata{display:grid;grid-template-rows:48px 17px;gap:0;flex:none;height:65px;min-height:65px;max-height:65px;width:100%;padding:0 10px;font-size:var(--nova-purpose-font);line-height:16px}main.nova-native-constructor #choice .product-purpose{height:48px;min-height:48px;margin:0;padding:0;font-size:var(--nova-purpose-font);line-height:16px;overflow:visible;display:block}main.nova-native-constructor #choice .product-details{grid-row:2;font-size:11px;line-height:17px;height:17px;min-height:17px;margin:0;padding:0;align-self:end}main.nova-native-constructor #choice .product-card>.quantity-control{top:130px;left:10px;right:auto;bottom:auto}main.nova-native-constructor #choice .product-card:has(>.quantity-control) .product small{visibility:hidden}main.nova-native-constructor #choice .choice-top{min-height:62px;align-items:flex-start}main.nova-native-constructor #choice .filters button{height:var(--nova-tab-height);min-height:var(--nova-tab-height);max-height:var(--nova-tab-height);padding:6px;box-sizing:border-box}main.nova-native-constructor #machines .machine{height:220px;min-height:220px;max-height:220px;justify-content:flex-start}main.nova-native-constructor #machines .model{font-size:12px!important;line-height:16px;height:32px;min-height:32px;margin-top:8px}main.nova-native-constructor #machines .operation{font-size:11px!important;line-height:15px;height:30px;min-height:30px}main.nova-native-constructor #machines .replace{font-size:10.5px!important;line-height:14px;height:14px;min-height:14px}main.nova-native-constructor #machines .instance-caption{font-size:9.5px;line-height:14px;min-height:14px;height:14px}
@media(max-width:600px){main.nova-native-constructor #choice .model-grid .products,main.nova-native-constructor #demo-picker #choice .model-grid .products{grid-template-columns:repeat(2,minmax(0,1fr))!important}main.nova-native-constructor #choice .choice-top{min-height:82px}main.nova-native-constructor #choice .filters[data-profile-tabs=true]>button{flex-basis:130px}}/* Restore the approved compact NOVA typography; keep the stable component boxes. */
main.nova-native-constructor{--nova-model-font:11px;--nova-purpose-font:10px;--nova-picker-image-height:94px;--nova-tab-height:38px}main.nova-native-constructor #choice .product-card>.product,main.nova-native-constructor #choice .product-card:has(>.quantity-control)>.product{height:160px;min-height:160px;max-height:160px;grid-template-rows:94px 54px;padding:8px 10px 0;gap:4px}main.nova-native-constructor #choice .product>.product-caption{grid-template-rows:28px 26px;height:54px;min-height:54px;max-height:54px;font-size:11px;line-height:14px}main.nova-native-constructor #choice .product-model-name{font-size:11px;line-height:14px;min-height:28px;height:28px}main.nova-native-constructor #choice .product small{font-size:9px;line-height:11.5px;height:26px;min-height:26px;max-height:26px}main.nova-native-constructor #choice .product-metadata{height:64px;min-height:64px;max-height:64px;grid-template-rows:46px 18px;font-size:10px;line-height:13.5px}main.nova-native-constructor #choice .product-purpose{height:46px;min-height:46px;font-size:10px;line-height:13.5px}main.nova-native-constructor #choice .product-details{font-size:10px;line-height:18px;height:18px;min-height:18px}main.nova-native-constructor #choice .product-card>.quantity-control{top:132px}main.nova-native-constructor #choice .filters button{font-size:11px;line-height:1.2;padding:6px}main.nova-native-constructor #choice .choice-top p:not(.eyebrow){font-size:11px;line-height:1.5}main.nova-native-constructor #choice .eyebrow{font-size:9px}main.nova-native-constructor #choice h2{font-size:19px;line-height:1.2}main.nova-native-constructor #choice .choice-feedback{font-size:11px;line-height:1.35;height:30px;min-height:30px;max-height:30px}main.nova-native-constructor .demo-picker-bar,main.nova-native-constructor .demo-picker-bar button{font-size:11px;line-height:1.4}main.nova-native-constructor .quantity-control{font-size:10px;gap:3px;padding:2px 3px}main.nova-native-constructor .quantity-count{min-width:31px}main.nova-native-constructor .quantity-control .add-welding-instance,main.nova-native-constructor .quantity-control .quantity-minus{width:23px;height:23px;font-size:18px}main.nova-native-constructor #machines .model{font-size:10px!important;line-height:14px;height:28px;min-height:28px}main.nova-native-constructor #machines .operation,main.nova-native-constructor #machines .replace{font-size:10px!important;line-height:14px}main.nova-native-constructor #machines .instance-caption{font-size:9px;line-height:12px;min-height:12px;height:12px}main.nova-native-constructor{--nova-picker-header-height:72px}main.nova-native-constructor #choice .choice-top{height:var(--nova-picker-header-height);min-height:var(--nova-picker-header-height);max-height:var(--nova-picker-header-height)}
@media(max-width:600px){main.nova-native-constructor #choice .choice-top{height:auto;min-height:82px;max-height:none}}/* Content-sized profile panels and compact intrinsic-width category buttons. */
main.nova-native-constructor #choice .filters,main.nova-native-constructor #choice .filters[data-profile-tabs=true]{display:flex;flex-wrap:wrap;gap:5px;grid-template-columns:none;align-items:center}main.nova-native-constructor #choice .filters button,main.nova-native-constructor #choice .filters[data-profile-tabs=true]>button{flex:0 0 auto;width:auto;max-width:100%;min-width:0;padding:6px 10px;font-size:11px;line-height:1.2;white-space:normal}
@media(max-width:600px){main.nova-native-constructor #choice .filters button,main.nova-native-constructor #choice .filters[data-profile-tabs=true]>button{flex:0 1 auto}}/* Context navigation: keeps the current site and catalogue within reach. */
main.nova-native-constructor .header nav{display:flex;align-items:center;justify-content:flex-end;gap:20px;flex-wrap:wrap}main.nova-native-constructor .header nav a{font-size:12px;color:inherit;text-decoration:none}main.nova-native-constructor .header nav a:hover{text-decoration:underline}main.nova-native-constructor .header nav .constructor-entry{font-size:12px}@media(max-width:700px){main.nova-native-constructor .header{gap:14px;flex-wrap:wrap}main.nova-native-constructor .header nav{justify-content:flex-start;gap:14px}}/* Original NOVA site logo, transparent vector shape on each mast surface. */
main.nova-native-constructor .header .brand-logo{display:block;width:134px;height:33px;flex:0 0 auto;background:#075391;-webkit-mask:url("/constructor/assets/nova-logo.svg") center/contain no-repeat;mask:url("/constructor/assets/nova-logo.svg") center/contain no-repeat}body[data-site-variant="2"] main.nova-native-constructor .header .brand-logo{background:#1c252a}body:is([data-site-variant="3"],[data-site-variant="4"],[data-site-variant="5"]) main.nova-native-constructor .header .brand-logo{background:#fff}@media(max-width:700px){main.nova-native-constructor .header .brand-logo{width:112px;height:28px}}/* Persistent process descriptions are independent of the hover tooltip. */
body.wp-theme-nova-mech-blue main.nova-native-constructor .intro{align-items:flex-start;gap:32px}body.wp-theme-nova-mech-blue main.nova-native-constructor .intro>.intro-text{flex:0 1 510px;max-width:510px;font-size:13px;line-height:1.7;color:#65727b}body.wp-theme-nova-mech-blue main.nova-native-constructor .demo-stage-caption{display:flex;flex-direction:column;align-items:center;gap:6px;width:100%;max-width:94%;min-height:112px;padding:16px 14px 18px;text-align:center;pointer-events:none}body.wp-theme-nova-mech-blue main.nova-native-constructor .demo-stage-number{font-size:10px;line-height:1.4;font-weight:500;letter-spacing:.12em;color:#075bff}body.wp-theme-nova-mech-blue main.nova-native-constructor .demo-stage-title{font-size:19px;line-height:1.25;font-weight:600;letter-spacing:-.025em;color:#17212e}body.wp-theme-nova-mech-blue main.nova-native-constructor .demo-stage-description{font-size:12px;line-height:1.5;max-width:430px;color:#687b89;font-weight:400}body.wp-theme-nova-mech-blue main.nova-native-constructor .demo-tooltip{top:116px}body.wp-theme-nova-mech-blue main.nova-native-constructor .scene-legend{gap:9px 22px;line-height:1.5;margin-top:18px}
@media(max-width:760px){body.wp-theme-nova-mech-blue main.nova-native-constructor .intro{flex-direction:column;gap:18px}body.wp-theme-nova-mech-blue main.nova-native-constructor .intro>.intro-text{flex:auto;max-width:100%;font-size:12px}body.wp-theme-nova-mech-blue main.nova-native-constructor .demo-stage-caption{min-height:145px;padding:14px 3px 15px;max-width:100%}body.wp-theme-nova-mech-blue main.nova-native-constructor .demo-stage-title{font-size:14px;line-height:1.3}body.wp-theme-nova-mech-blue main.nova-native-constructor .demo-stage-description{font-size:10px;line-height:1.45}body.wp-theme-nova-mech-blue main.nova-native-constructor .demo-tooltip{top:148px}body.wp-theme-nova-mech-blue main.nova-native-constructor .scene-legend{justify-content:flex-start;padding:0 10px;gap:6px 14px}}

main.nova-native-constructor{width:100%;max-width:1680px;margin-inline:auto;background:#fff;padding-bottom:20px;}
