:root{font-family:Gilroy,Arial,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#002d26;background:#f7f8f1;line-height:1.5;font-synthesis:none;text-rendering:optimizeLegibility;--brand-green: #002d26;--brand-green-logo: #002b24;--brand-orange: #f28e00;--brand-orange-logo: #f7901e;--brand-sage: #7c8a85;--brand-mist: #e3e5d6;--color-ink: var(--brand-green);--color-muted: #53655f;--color-line: #d7dccd;--color-surface: #f8faf2;--color-surface-strong: #ffffff;--color-accent: var(--brand-orange);--color-accent-dark: #965a00;--color-green: var(--brand-green);--color-charcoal: var(--brand-green);--shadow-soft: 0 18px 45px rgba(0, 45, 38, .12)}*{box-sizing:border-box}body{margin:0;min-width:320px;background:linear-gradient(180deg,#fbfcf7,#f7f8f1 48%,#eef1e4)}a{color:inherit}html[dir=rtl]{direction:rtl}.app-shell{min-height:100vh}.nav{position:sticky;top:0;z-index:10;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.8rem clamp(1rem,4vw,3rem);background:#fbfcf7f0;color:var(--color-ink);border-bottom:1px solid rgba(215,220,205,.92);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.nav__brand,.nav__actions,.nav__main{display:flex;align-items:center}.nav__main{flex-wrap:wrap;justify-content:center;gap:.35rem}.nav__brand{gap:.8rem;min-width:fit-content;text-decoration:none}.nav__logoLink,.nav__productHome,.nav__powered{text-decoration:none}.nav__logo{display:block;width:clamp(8.7rem,14vw,11.2rem);height:auto}.nav__product{display:block;padding-left:.8rem;border-left:1px solid var(--color-line);color:var(--color-muted);font-size:.78rem;font-weight:800;line-height:1;white-space:nowrap}.nav__powered{display:block;margin-top:.18rem;color:var(--color-accent-dark);font-size:.64rem;font-weight:800;line-height:1.05;white-space:nowrap}.nav__link,.nav__settingsButton,.nav__settingsLink{display:inline-flex;align-items:center;justify-content:center;gap:.42rem;border-radius:999px;padding:.45rem .72rem;text-decoration:none;color:var(--color-muted);font-weight:700;white-space:nowrap}.nav__settingsButton{border:0;background:transparent}.nav__link.router-link-active,.nav__link:hover,.nav__settingsButton.router-link-active,.nav__settingsButton:hover,.nav__settingsButton--open,.nav__settingsLink.router-link-active,.nav__settingsLink:hover{color:var(--color-ink);background:#f28e001f}.nav__link:focus-visible,.nav__settingsButton:focus-visible,.nav__settingsLink:focus-visible{outline:3px solid rgba(242,142,0,.34);outline-offset:2px}.nav__settings{position:relative}.nav__settingsChevron{transition:transform .16s ease}.nav__settingsButton--open .nav__settingsChevron{transform:rotate(180deg)}.nav__settingsPanel{position:absolute;top:calc(100% + .55rem);right:0;z-index:20;display:grid;gap:.25rem;min-width:14rem;border:1px solid var(--color-line);border-radius:8px;padding:.45rem;background:#fffffffa;box-shadow:0 18px 45px #002d2629}.nav__settingsLink{justify-content:flex-start;width:100%;border-radius:8px}.nav__language{display:inline-flex;align-items:center;gap:.4rem;min-width:7.6rem;margin:0;border:1px solid var(--color-line);border-radius:999px;padding:.25rem .35rem .25rem .65rem;background:#fff;color:var(--color-muted)}.nav__language select{width:auto;min-width:0;border:0;padding:.2rem 1.45rem .2rem .2rem;background:transparent;color:var(--color-ink);font-weight:800}.nav__language select:focus{box-shadow:none}.nav__language:focus-within{border-color:var(--color-accent);box-shadow:0 0 0 3px #f28e003d}.nav__actions{gap:.55rem;min-width:fit-content}.nav__cta{background:var(--color-charcoal);color:#f8faf2!important}.nav__cta:hover{background:var(--color-accent)!important;color:var(--color-charcoal)!important}.nav__billing{border:1px solid var(--color-line);background:#fff;box-shadow:0 8px 18px #39271314}.nav__billing--blocked{background:#7f1d1d!important;border-color:#fecaca!important;color:#fff!important}html[dir=rtl] .nav__product{padding-right:.8rem;padding-left:0;border-right:1px solid var(--color-line);border-left:0}html[dir=rtl] .nav__settingsPanel{right:auto;left:0}html[dir=rtl] .nav__language{padding:.25rem .65rem .25rem .35rem}html[dir=rtl] .login__language{padding:.28rem .68rem .28rem .38rem}.page{max-width:1220px;margin:0 auto;padding:1.4rem clamp(1rem,4vw,2rem) 3rem}.page-full{min-height:100vh}.page--wide{max-width:1500px}.login{display:grid;min-height:100vh;place-items:center;padding:clamp(1rem,5vw,3rem);background:linear-gradient(135deg,#002d26eb,#002d26b3),url(/brand/fixchip-hero-chips.jpg) center / cover}.login__panel{display:grid;justify-items:stretch;gap:1.15rem;width:min(100%,27rem);border:1px solid rgba(215,220,205,.82);border-radius:8px;padding:clamp(1.4rem,5vw,2.2rem);background:#fffffff5;box-shadow:0 22px 55px #002d2642}.login__header{display:grid;justify-items:center;gap:.75rem}.login__logo{display:block;width:min(12.5rem,64vw);height:auto}.login h1{margin:0;font-size:1.8rem;line-height:1.12;text-align:center}.login__language{display:inline-flex;align-items:center;gap:.42rem;width:fit-content;min-width:9rem;margin:0;border:1px solid var(--color-line);border-radius:999px;padding:.28rem .38rem .28rem .68rem;background:#fff;color:var(--color-muted);box-shadow:0 8px 18px #3927130f}.login__language select{width:auto;min-width:0;border:0;padding:.22rem 1.45rem .22rem .2rem;background:transparent;color:var(--color-ink);font-weight:800}.login__language select:focus{box-shadow:none}.login__language:focus-within{border-color:var(--color-accent);box-shadow:0 0 0 3px #f28e003d}.login__form{display:grid;gap:.9rem;width:100%}.login__form label{display:grid;gap:.38rem;margin:0;color:var(--color-ink);font-size:.92rem;font-weight:800}.login__form label span{color:var(--color-muted)}.login__form input{display:block;width:100%;min-height:2.85rem;padding:.72rem .82rem}.login__error{width:100%;margin:0;border:1px solid #fecaca;border-radius:8px;padding:.65rem .75rem;background:#fef2f2;color:#991b1b;font-size:.92rem;overflow-wrap:anywhere}.login__form button{display:inline-flex;align-items:center;justify-content:center;gap:.45rem;width:100%;min-height:2.9rem;margin-top:.15rem;transition:background-color .16s ease,color .16s ease,box-shadow .16s ease}.login__form button:not(:disabled):hover{background:var(--color-accent);color:var(--color-charcoal)}.login__form button:focus-visible{outline:3px solid rgba(242,142,0,.34);outline-offset:2px}.page-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin:1.75rem 0 1rem}.page-header--compact{margin-top:1.25rem}.page-header h1,.page-header h2{margin:0;line-height:1.08}.page-header p{margin:.35rem 0 0}.card{background:#ffffffdb;border:1px solid var(--color-line);border-radius:8px;padding:1.25rem;margin-bottom:1rem;box-shadow:0 12px 26px #002d260f}.card h2{margin-top:0;line-height:1.16}.grid{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}label,.form-label{display:block;font-weight:600;margin:.75rem 0 .35rem}input,select,textarea,button{font:inherit}input,select,textarea{width:100%;border:1px solid #cfd6c7;border-radius:8px;padding:.65rem .75rem;background:#fff;color:var(--color-ink)}input:focus,select:focus,textarea:focus{border-color:var(--color-accent);box-shadow:0 0 0 3px #f28e002e;outline:none}textarea{min-height:180px;font-family:SFMono-Regular,Consolas,Liberation Mono,monospace}button{border:0;border-radius:8px;padding:.7rem 1rem;background:var(--color-charcoal);color:#fff;cursor:pointer;font-weight:800}button.secondary{background:#fff7ea;color:var(--color-accent-dark);border:1px solid #ffd194}button svg,.button-link svg{flex:0 0 auto;vertical-align:-.15rem}.icon-toolbar{display:flex;align-items:center;gap:.5rem}button.icon-button{display:inline-flex;align-items:center;justify-content:center;width:2.4rem;height:2.4rem;padding:0;border:1px solid var(--color-line);background:#fff;color:var(--color-ink)}button.icon-button--danger{border-color:#fecaca;color:#991b1b}.button-link{display:inline-flex;align-items:center;justify-content:center;min-height:2.5rem;border-radius:8px;padding:.58rem .95rem;background:var(--color-charcoal);color:#fff;font-weight:800;text-decoration:none;width:fit-content}.button-link--secondary{background:#fff7ea;color:var(--color-accent-dark);border:1px solid #ffd194}.button-link--accent{background:var(--color-accent);color:var(--color-charcoal)}.button-link--ghost{background:transparent;color:#f8faf2;border:1px solid rgba(248,250,242,.48)}button:disabled{cursor:not-allowed;opacity:.55}.table{width:100%;border-collapse:collapse}.table th,.table td{text-align:left;padding:.7rem;border-bottom:1px solid var(--color-line);vertical-align:top}.table th{color:var(--color-muted);font-size:.82rem;letter-spacing:0}.table--compact th,.table--compact td{padding:.5rem}.muted{color:var(--color-muted)}.error{color:#b91c1c}.success{color:#047857}.status{display:inline-flex;align-items:center;border-radius:999px;padding:.2rem .55rem;background:#edf0e3;color:var(--color-ink);font-size:.85rem;font-weight:700;white-space:nowrap}.status--info{background:#e7efed;color:#005447}.status--warning{background:#fff1c2;color:#855400}.status--success{background:#dff5e8;color:#17633f}.status--error{background:#ffe3df;color:#9d2419}.status--blocked{background:#e5e7eb;color:#374151}.alert{border:1px solid var(--color-line);border-radius:8px;padding:.85rem 1rem;margin-bottom:1rem;background:#fff}.alert p{margin:.35rem 0 0}.alert ul{margin:.5rem 0 0;padding-left:1.25rem}.alert--success{background:#effaf2;border-color:#b8e7c2;color:#145c34}.alert--warning{background:#fff8df;border-color:#f3d16d;color:#7a4f00}.alert--error,.alert--blocked{background:#fef2f2;border-color:#fecaca;color:#991b1b}.form-grid{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.field-note,.field-error{margin:.35rem 0 0;font-size:.9rem}.field-note{color:var(--color-muted)}.field-error{color:#b91c1c}.machine-picker{display:grid;gap:.65rem;grid-template-columns:repeat(auto-fit,minmax(10rem,1fr))}.machine-picker--single{grid-template-columns:minmax(0,18rem)}.machine-picker__option{display:grid;grid-template-columns:minmax(0,1fr);gap:.35rem;align-items:center;min-height:7rem;padding:.75rem;border:1px solid var(--color-line);background:#fff;color:var(--color-ink);text-align:left}button.machine-picker__option{cursor:pointer}.machine-picker__option--readonly{cursor:default}.machine-picker__option .machine-logo{height:2.25rem}.machine-picker__option span,.machine-picker__option small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.machine-picker__option small{color:var(--color-muted);font-size:.78rem;font-weight:700}.machine-picker__option--active{border-color:var(--brand-sage);background:var(--brand-mist);color:var(--brand-green)}.upload-summary{display:grid;gap:.75rem;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));margin:1rem 0}.metric{border:1px solid var(--color-line);border-radius:8px;padding:.8rem;background:#f8faf2}.metric__value,.metric-card__value{display:block;font-size:1.8rem;line-height:1.2;font-weight:800;color:var(--color-ink)}.metric__label{display:block;color:var(--color-muted);font-size:.9rem}.metric-card{min-height:120px}.actions{display:flex;flex-wrap:wrap;gap:.75rem;margin:1rem 0}.actions--compact{margin:0}.label-import-button{cursor:pointer}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.section-heading,.status-row{display:flex;align-items:center;justify-content:space-between;gap:1rem}.details{margin:0}.details div{display:grid;grid-template-columns:minmax(120px,.4fr) 1fr;gap:.75rem;padding:.4rem 0;border-bottom:1px solid var(--color-line)}.details dt{color:var(--color-muted)}.details dd{margin:0;font-weight:600;overflow-wrap:anywhere}.details--compact div{grid-template-columns:minmax(7rem,.24fr) 1fr}.subtle,.subtle-list{display:block;color:var(--color-muted);font-size:.85rem;margin-top:.25rem}.subtle-list{display:flex;flex-direction:column;gap:.2rem}.download-actions{display:flex;flex-direction:column;align-items:flex-start;gap:.45rem}.warning-list{margin:.4rem 0 0;padding-left:1rem}.warning-details{max-width:22rem}.warning-details summary{cursor:pointer;color:var(--color-muted);font-weight:700}.warning-details[open] summary{margin-bottom:.35rem}.warning-details .warning-list{margin-top:.35rem}.depth-cell{min-width:15rem}.inline-inputs{display:grid;gap:.35rem;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:.35rem}.dxf-preview{display:block;width:100%;height:min(58vh,34rem);min-height:20rem;border:1px solid var(--color-line);border-radius:8px;background:linear-gradient(#e8ece0 1px,transparent 1px),linear-gradient(90deg,#e8ece0 1px,transparent 1px),#fff;background-size:40px 40px}.preview-entity{fill:none;stroke-width:2;vector-effect:non-scaling-stroke}.preview-entity--contour{stroke:#111827}.preview-entity--drill{stroke:#047857}.preview-entity--fixchip-horizontal{stroke:#2563eb}.preview-entity--fixchip-vertical{stroke:#c2410c}.preview-entity--operation{stroke:#0e6470}.preview-entity--helper{stroke:#9ca3af;stroke-dasharray:5 5}.preview-entity--unknown{stroke:#dc2626;stroke-dasharray:4 4}.preview-fixchip-symbol{vector-effect:non-scaling-stroke}.preview-fixchip-symbol--horizontal{fill:#2563eb29;stroke:#1d4ed8;stroke-linecap:round;stroke-linejoin:round;stroke-width:3}.preview-fixchip-symbol--vertical{fill:#c2410c24}.table input,.table select{min-width:7rem}.mapping-switch{display:flex;flex-wrap:wrap;gap:.6rem;margin:1rem 0}button.mapping-switch__button{background:#fff7ea;color:var(--color-accent-dark);border:1px solid #ffd194}button.mapping-switch__button--active{background:var(--color-charcoal);border-color:var(--color-charcoal);color:#f8faf2}.mapping-workspace{display:block}.mapping-card{padding:1.35rem}.mapping-table-wrap{width:100%;overflow-x:auto;border-radius:8px}.mapping-table-wrap .table{min-width:56rem}.mapping-table-wrap th,.mapping-table-wrap td{overflow-wrap:anywhere}.mapping-table-wrap .mapping-analysis-table{min-width:74rem}.mapping-analysis-row--unknown{background:#fff1f2}.mapping-analysis-row--unknown td:first-child{border-left:4px solid #dc2626}.mapping-analysis-row--conflict{background:#fff7ea}.mapping-analysis-row--conflict td:first-child{border-left:4px solid var(--color-accent-dark)}.mapping-table-wrap .mapping-rules-table{min-width:86rem}.mapping-table-wrap .mapping-summary-table{min-width:64rem}.mapping-table-wrap .mapping-columns-table{min-width:52rem}.mapping-table-wrap .mapping-columns-summary-table{min-width:36rem}.materials-workbench{display:grid;gap:1rem}.materials-create-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(12rem,1fr));gap:.9rem;align-items:end;border-top:1px solid var(--color-line);border-bottom:1px solid var(--color-line);padding:1rem 0}.materials-create-form label{min-width:0}.materials-create-form input,.materials-create-form select{width:100%;min-width:0}.materials-create-form__actions{display:flex;justify-content:flex-end}.materials-create-form__actions button{width:100%;justify-content:center}.materials-table-wrap{width:100%;overflow-x:auto;border-radius:8px}.materials-table{min-width:106rem}.materials-table input,.materials-table select{min-width:8rem}.mapping-rules-table input,.mapping-rules-table select,.mapping-columns-table input{min-width:0}.mapping-rules-table .depth-cell{min-width:13rem}.blocked-download{display:inline-flex;align-items:center;border-radius:8px;padding:.45rem .7rem;background:#f3f4f6;color:#6b7280;font-weight:700}.brand-hero{position:relative;display:flex;min-height:clamp(460px,62vh,620px);align-items:flex-end;overflow:hidden;border-radius:8px;padding:clamp(1.5rem,5vw,4.5rem);background:var(--brand-green);color:#f8faf2;box-shadow:var(--shadow-soft)}.brand-hero:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;background:#002d26b8}.brand-hero__content,.brand-hero__visual{position:relative}.brand-hero__content{max-width:660px;z-index:2}.brand-hero__logo{display:block;width:min(18rem,62vw);height:auto;margin-bottom:1.5rem}.brand-hero h1{margin:0;max-width:13ch;font-size:4.8rem;line-height:.96;letter-spacing:0}.brand-hero p{max-width:46rem;margin:1.35rem 0 0;color:#f8faf2db;font-size:1.08rem}.eyebrow{display:inline-flex;align-items:center;gap:.5rem;margin-bottom:1rem;color:#ffc56f;font-size:.82rem;font-weight:900;letter-spacing:0;text-transform:uppercase}.eyebrow:before{content:"";width:.7rem;height:.7rem;border-radius:999px;background:var(--color-accent)}.hero-actions,.hero-proof{display:flex;flex-wrap:wrap;gap:.75rem}.hero-actions{margin-top:1.6rem}.hero-proof{margin-top:1.5rem;color:#f8faf2bf;font-size:.9rem;font-weight:800}.hero-proof span{display:inline-flex;align-items:center;gap:.45rem}.hero-proof span:before{content:"";width:.42rem;height:.42rem;border-radius:999px;background:var(--brand-orange)}.brand-hero__visual{position:absolute;top:0;right:0;bottom:0;left:0}.brand-hero__image{display:block;width:100%;height:100%;object-fit:cover}.hero-panel{position:absolute;right:clamp(1rem,3vw,2.25rem);bottom:clamp(1rem,3vw,2.25rem);z-index:3;width:min(15rem,58vw);border:1px solid rgba(248,250,242,.28);border-radius:8px;padding:1rem;background:#f8faf2f0;color:var(--brand-green);box-shadow:0 24px 50px #002d2647}.hero-panel strong{display:block;color:var(--color-accent-dark);font-size:2.35rem;line-height:1}.hero-panel__label{display:block;color:var(--color-muted);font-size:.78rem;font-weight:900;text-transform:uppercase}.metric-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.feature-grid{align-items:stretch}.feature-card{position:relative;display:flex;flex-direction:column;overflow:hidden;min-height:210px;border-top:3px solid var(--brand-orange)}.feature-card .button-link{margin-top:auto}.feature-card__index{display:block;margin-bottom:.85rem;color:var(--color-accent-dark);font-weight:900}.machine-settings-grid{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));align-items:start}.machine-settings-card{min-height:15rem}.machine-settings-card__header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1rem}.machine-settings-card__header h2{margin:0}.machine-brand-title{min-height:2rem}.machine-logo,.machine-brand-title__logo{display:block;width:min(10rem,100%);height:2rem;object-fit:contain;object-position:left center}.machine-logo--text{color:var(--brand-green);font-size:1.15rem;font-weight:900;line-height:2rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.machine-settings-card__header p{margin:.25rem 0 0}.machine-settings-card .status{gap:.35rem}.unit-control{display:grid;gap:.45rem;margin-bottom:1rem}.unit-control__label{color:var(--color-text);font-size:.88rem;font-weight:700}.segmented-control{display:inline-grid;width:fit-content;grid-template-columns:repeat(2,minmax(4.5rem,1fr));border:1px solid var(--color-border);border-radius:8px;overflow:hidden}.segmented-control__button{min-height:2.25rem;justify-content:center;border:0;border-radius:0;background:var(--color-surface);color:var(--color-text)}.segmented-control__button+.segmented-control__button{border-left:1px solid var(--color-border)}.segmented-control__button--active{background:var(--brand-green);color:#fff}.segmented-control__button:disabled{color:var(--color-muted);cursor:not-allowed}.machine-settings-card button{display:inline-flex;align-items:center;gap:.45rem}.machine-tool-table__header{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-top:1rem}.machine-tool-table__header h3{margin:0}.machine-tool-table{display:grid;gap:.65rem}.machine-tool-table__row{display:grid;grid-template-columns:minmax(7rem,.8fr) repeat(2,minmax(7rem,1fr)) minmax(9rem,1.2fr) auto;gap:.65rem;align-items:end}.machine-tool-table__row label{min-width:0}.machine-tool-table__row label span{display:block}@media(max-width:820px){.machine-tool-table__row{grid-template-columns:minmax(0,1fr)}}.machine-wizard{display:grid;grid-template-columns:minmax(13rem,16rem) minmax(0,1.15fr) minmax(24rem,.85fr);gap:1rem;align-items:start}.machine-stepper,.machine-workbench,.machine-preview{border:1px solid var(--color-line);border-radius:8px;background:#ffffffe6;box-shadow:0 12px 26px #002d260d}.machine-stepper{position:sticky;top:5.4rem;display:grid;gap:.35rem;padding:.65rem}button.machine-stepper__button{display:grid;grid-template-columns:1.25rem minmax(0,1fr) 1rem;align-items:center;gap:.55rem;width:100%;min-height:2.7rem;padding:.55rem .65rem;border:1px solid transparent;background:transparent;color:var(--color-muted);text-align:left}.machine-stepper__button span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}button.machine-stepper__button--active{border-color:var(--brand-sage);background:var(--brand-mist);color:var(--brand-green)}button.machine-stepper__button--valid{color:#17633f}button.machine-stepper__button--warning,button.machine-stepper__button--changed{color:#855400}button.machine-stepper__button--error{color:#9d2419}.machine-workbench,.machine-preview{padding:1rem}.machine-workbench__header,.machine-preview__header,.machine-workbench__nav,.machine-filter-row{display:flex;align-items:center;justify-content:space-between;gap:1rem}.machine-workbench__header{margin-bottom:1rem}.machine-workbench__header h2,.machine-preview__header h2{margin:0}.machine-workbench__header p,.machine-preview__header p{margin:.25rem 0 0}.machine-step-content{display:grid;gap:1rem}.machine-metrics{grid-template-columns:repeat(4,minmax(0,1fr))}.machine-actions-grid{display:grid;gap:.8rem;grid-template-columns:repeat(2,minmax(0,1fr))}.machine-starter-panel{display:grid;gap:.75rem;border:1px solid var(--color-line);border-radius:8px;padding:.9rem;background:#fff}.machine-starter-panel__header,.machine-starter-panel__title,.machine-starter-panel__controls,.machine-save-panel__controls{display:flex;align-items:center;gap:.75rem}.machine-starter-panel__header{justify-content:space-between}.machine-starter-panel__title{min-width:0}.machine-starter-panel__title p{margin:.15rem 0 0}.machine-starter-panel__controls{display:grid;grid-template-columns:minmax(5rem,auto) minmax(0,1fr) auto}.machine-starter-panel__controls label,.machine-save-panel label{margin:0}.machine-starter-panel__controls button{display:inline-flex;align-items:center;gap:.45rem;white-space:nowrap}.machine-starter-list{display:grid;gap:.45rem;grid-template-columns:repeat(auto-fit,minmax(12rem,1fr))}button.machine-starter-chip{display:grid;grid-template-columns:1rem minmax(0,1fr);gap:.25rem .45rem;align-items:center;min-height:3.2rem;padding:.55rem .65rem;border:1px solid var(--color-line);background:#fff;color:var(--color-ink);text-align:left}.machine-starter-chip span,.machine-starter-chip small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.machine-starter-chip small{grid-column:2;color:var(--color-muted);font-size:.76rem;font-weight:700}button.machine-starter-chip--active{border-color:var(--brand-sage);background:var(--brand-mist);color:var(--brand-green)}.machine-action{display:grid;grid-template-columns:2rem minmax(0,1fr);gap:.75rem;align-items:start;border:1px solid var(--color-line);border-radius:8px;padding:.9rem;background:#fff}.machine-action strong{display:block;margin-bottom:.5rem}.machine-action button,.actions button{display:inline-flex;align-items:center;justify-content:center;gap:.45rem}.machine-editor-grid{display:grid;grid-template-columns:minmax(13rem,.8fr) minmax(0,1.2fr);gap:.85rem;align-items:start}.machine-panel{display:grid;gap:.75rem;border:1px solid var(--color-line);border-radius:8px;padding:.9rem;background:#fff}.machine-panel__header,.machine-selected-strip{display:flex;align-items:center;gap:.65rem}.machine-panel__header{justify-content:space-between}.machine-panel__header strong,.machine-selected-strip strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.machine-selected-strip{justify-content:flex-start;border:1px solid var(--color-line);border-radius:8px;padding:.65rem .8rem;background:var(--brand-mist);color:var(--brand-green)}.machine-selected-strip button{display:inline-flex;align-items:center;gap:.4rem;margin-left:auto;padding:.5rem .7rem}.machine-machine-list{display:grid;gap:.45rem}button.machine-select-button{display:grid;grid-template-columns:1.1rem minmax(0,1fr);gap:.2rem .5rem;align-items:center;width:100%;min-height:2.7rem;padding:.55rem .65rem;border:1px solid var(--color-line);background:#fff;color:var(--color-ink);text-align:left}.machine-select-button span,.machine-select-button small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.machine-select-button small{grid-column:2;color:var(--color-muted);font-size:.76rem;font-weight:700}button.machine-select-button--active{border-color:var(--brand-sage);background:var(--brand-mist);color:var(--brand-green)}.machine-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem}.machine-form-grid label{margin:0;min-width:0}.machine-form-grid input,.machine-form-grid select{min-width:0}.machine-form-grid input[readonly],.machine-preview textarea[readonly]{background:#f8fafc;color:var(--color-muted)}.machine-filter-row{justify-content:flex-start}.machine-filter-row label{margin:0;min-width:4rem}.machine-filter-row input{max-width:24rem}.attribute-pill{display:inline-flex;max-width:18rem;margin:.1rem .25rem .1rem 0;border-radius:999px;padding:.15rem .45rem;background:#eef2f7;color:#344256;font-size:.78rem;font-weight:700;overflow-wrap:anywhere}.machine-preview{position:sticky;top:5.4rem}.machine-preview textarea{min-height:min(58vh,34rem);resize:vertical}.machine-save-panel{display:grid;gap:.35rem;margin-top:.75rem}.machine-save-panel__controls{align-items:stretch}.machine-save-panel__controls input{min-width:0}.machine-file-list{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.8rem}button.machine-file-chip{width:auto;min-height:2rem;padding:.35rem .55rem;border:1px solid var(--color-line);background:#fff;color:var(--color-muted);font-size:.82rem;font-weight:800}button.machine-file-chip--active{border-color:var(--brand-sage);background:var(--brand-mist);color:var(--brand-green)}button.machine-file-chip--error{border-color:#fecaca;background:#fef2f2;color:#991b1b}.ledge-sketch{border:1px solid var(--color-line);border-radius:8px;padding:.85rem;background:#f8fafc}.ledge-sketch__table{position:relative;min-height:9rem;border:2px solid #334155;border-radius:8px;background:linear-gradient(#e2e8f0 1px,transparent 1px),linear-gradient(90deg,#e2e8f0 1px,transparent 1px),#fff;background-size:1.5rem 1.5rem}.ledge-sketch__stop{position:relative;display:inline-block;width:1rem;height:2.4rem;margin:.8rem .35rem;border-radius:4px;background:var(--brand-green)}.validation-summary{display:flex;flex-wrap:wrap;gap:.5rem}.label-editor-workspace{display:grid;grid-template-columns:minmax(30rem,1fr) minmax(28rem,.9fr);gap:1rem;align-items:start}.label-editor-panel{min-width:0}.label-editor-panel:nth-child(2){grid-column:1}.label-editor-preview-panel{position:sticky;top:5.4rem;grid-column:2;grid-row:1 / span 2;min-width:0}.label-editor-form-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;margin-top:1rem}.label-editor-form-grid label,.label-editor-selected-grid label{min-width:0;margin:0}.label-editor-form-grid input,.label-editor-selected-grid input,.label-editor-selected-grid select,.label-editor-selected-grid textarea{min-width:0}.label-editor-metrics{margin-top:1rem}.label-editor-fields{display:grid;gap:.85rem;margin-top:1rem}.label-editor-field{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.75rem;align-items:center;border:1px solid var(--color-line);border-radius:8px;padding:.85rem;background:#fff}.label-editor-field--selected{border-color:var(--brand-sage);background:#f8faf2}button.label-editor-field__select{display:grid;gap:.2rem;width:100%;min-height:3.2rem;padding:.6rem .7rem;border:1px solid var(--color-line);background:#fff;color:var(--color-ink);text-align:left}.label-editor-field__select strong,.label-editor-field__select span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.label-editor-field__select span{color:var(--color-muted);font-size:.82rem}.label-editor-selected-field{display:grid;gap:.85rem;margin-top:1rem;border:1px solid var(--color-line);border-radius:8px;padding:1rem;background:#fff}.label-editor-selected-field__header h3{margin:0}.label-editor-selected-field__header p{margin:.25rem 0 0}.label-editor-sample{display:flex;align-items:flex-start;justify-content:space-between;gap:.85rem;border:1px solid var(--color-line);border-radius:8px;padding:.75rem;background:#f8faf2}.label-editor-sample p{margin:.2rem 0 0}.label-editor-sample button{flex:0 0 auto}.label-editor-selected-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem}.label-editor-selected-grid input,.label-editor-selected-grid select{min-height:2.75rem;font-size:1rem}.label-editor-selected-grid textarea{min-height:7rem;resize:vertical;font:inherit;font-size:1rem}.label-editor-selected-grid__wide{grid-column:1 / -1}.label-editor-variable-values{display:flex;flex-wrap:wrap;gap:.45rem}.label-editor-variable-value{display:inline-grid;gap:.1rem;max-width:12rem;border:1px solid var(--color-line);border-radius:8px;padding:.35rem .5rem;background:#fff}.label-editor-variable-value strong,.label-editor-variable-value small{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.label-editor-variable-value small{color:var(--color-muted);font-size:.72rem;font-weight:800}.label-editor-field__actions{display:flex;align-items:center;gap:.5rem}.label-editor-check{display:inline-flex;align-items:center;gap:.35rem;margin:0;white-space:nowrap}.label-editor-check input{width:auto}.label-editor-preview{display:block;width:100%;aspect-ratio:1.55 / 1;min-height:22rem;margin:1rem 0;border:1px solid var(--color-line);border-radius:8px;background:linear-gradient(#e8ece0 1px,transparent 1px),linear-gradient(90deg,#e8ece0 1px,transparent 1px),#fff;background-size:28px 28px}.label-editor-preview__paper{fill:#fff;stroke:#7c8a85;stroke-width:.35}.label-editor-preview__field{cursor:pointer}.label-editor-preview__field rect{fill:#f28e001f;stroke:#965a00;stroke-width:.35;vector-effect:non-scaling-stroke}.label-editor-preview__field text{fill:var(--color-ink);pointer-events:none}.label-editor-preview__barcode-bar,.label-editor-preview__barcode-cell{fill:var(--color-ink);stroke:none}.label-editor-preview__geometry{overflow:visible;pointer-events:none}.label-editor-preview__geometry-outline{fill:#ffffffbd;stroke:#15352f;stroke-width:.45;vector-effect:non-scaling-stroke}.label-editor-preview__geometry-path{fill:none;stroke:#f28e00;stroke-width:.45;vector-effect:non-scaling-stroke}.label-editor-preview__geometry-banding line{stroke-linecap:round;vector-effect:non-scaling-stroke}.label-editor-preview__geometry-banding-halo{stroke:#fff;stroke-width:1.4}.label-editor-preview__geometry-banding-core{stroke:#197278;stroke-width:.65}.label-editor-preview__field--selected rect:first-child{fill:#002d2624;stroke:var(--brand-green);stroke-width:.65}.composition-workspace{display:grid;grid-template-columns:minmax(14rem,.65fr) minmax(28rem,1.45fr) minmax(20rem,.9fr);gap:1rem;align-items:start}.composition-list,.label-preview-panel{position:sticky;top:5.4rem}.label-preview-panel{overflow-x:auto}.composition-chip{display:grid;width:100%;min-height:4.2rem;margin-top:.6rem;border:1px solid var(--color-line);background:#fff;color:var(--color-ink);text-align:left}.composition-chip strong,.composition-chip span,.composition-chip small{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.composition-chip span,.composition-chip small{color:var(--color-muted)}.composition-chip--active{border-color:var(--brand-sage);background:var(--brand-mist)}.composition-sheet-panel{min-width:0}.composition-sheet{display:block;width:100%;height:min(64vh,44rem);min-height:28rem;margin-top:1rem;border:1px solid var(--color-line);border-radius:8px;background:linear-gradient(#e8ece0 1px,transparent 1px),linear-gradient(90deg,#e8ece0 1px,transparent 1px),#fff;background-size:60px 60px}.composition-sheet__stock{fill:#f8faf2e0;stroke:#7c8a85;stroke-width:4;vector-effect:non-scaling-stroke}.composition-part{cursor:pointer}.composition-region path{fill:#7c8a851a;stroke:#7c8a85;stroke-dasharray:12 8;stroke-width:2;vector-effect:non-scaling-stroke}.composition-region text{fill:var(--color-muted);font-size:24px;pointer-events:none;text-anchor:middle;dominant-baseline:middle}.composition-part__outline{fill:#f28e0038;stroke:#965a00;stroke-width:2;vector-effect:non-scaling-stroke}.composition-part__geometry{fill:none;stroke:#005447;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.5;vector-effect:non-scaling-stroke;pointer-events:none}.composition-part__edge-banding line{stroke-linecap:butt;vector-effect:non-scaling-stroke}.composition-part__edge-banding-halo{stroke:#f28e0066;stroke-width:6}.composition-part__edge-banding-core{stroke:#005447;stroke-dasharray:10 5;stroke-width:2.4}.composition-part__label{fill:var(--color-ink);font-weight:900;pointer-events:none;text-anchor:middle;dominant-baseline:middle}.composition-part--selected .composition-part__outline{fill:#002d262e;stroke:var(--brand-green);stroke-width:4}.composition-part--selected .composition-part__geometry{fill:none;stroke:#002d26;stroke-width:2.5}.label-print-preview{position:relative;display:block;width:var(--label-print-width, 70mm);height:var(--label-print-height, 37mm);min-height:var(--label-print-height, 37mm);margin:1rem 0;border:1px solid var(--color-line);border-radius:8px;padding:0;background:#fff;overflow:hidden}.label-print-preview strong,.label-print-preview span,.label-print-preview__field{overflow-wrap:anywhere}.label-print-preview__field{position:absolute;display:flex;align-items:flex-start;justify-content:flex-start;overflow:hidden;color:#111827;font-weight:700;line-height:1.08;white-space:pre-wrap}.label-print-preview__field--barcode{align-items:stretch}.label-print-preview__barcode{display:grid;grid-template-rows:minmax(0,1fr) auto;gap:.8mm;width:100%;height:100%;min-height:0}.label-print-preview__barcode--matrix{grid-template-rows:minmax(0,1fr)}.barcode-image,.label-print-preview__barcode-image{display:block;width:100%;height:100%;min-height:0;object-fit:contain}.barcode-image--fallback{display:grid;place-items:center;border:1px dashed #9ca3af;color:#6b7280;font-size:.72em;text-align:center}.label-print-preview__barcode-value{display:block;font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:.82em;line-height:1;text-align:center;white-space:nowrap}.label-print-preview__barcode--matrix .label-print-preview__barcode-value{display:none}.label-print-preview__geometry{display:block;width:100%;height:100%}.label-print-preview__geometry-outline{fill:#f28e001f;stroke:#111827;stroke-width:1.4;vector-effect:non-scaling-stroke}.label-print-preview__geometry-path{fill:none;stroke:#005447;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.2;vector-effect:non-scaling-stroke}.label-print-preview__geometry-banding line{stroke-linecap:butt;vector-effect:non-scaling-stroke}.label-print-preview__geometry-banding-halo{stroke:#f28e005c;stroke-width:3}.label-print-preview__geometry-banding-core{stroke:#002d26;stroke-dasharray:5 2.5;stroke-width:1.2}.label-print-preview__missing{color:#b91c1c}.compact-input{width:100%;margin-bottom:.6rem}@media print{@page{margin:0}body.printing-label{background:#fff}body.printing-label *{visibility:hidden!important}body.printing-label .label-print-preview,body.printing-label .label-print-preview *{visibility:visible!important}body.printing-label .label-print-preview{position:fixed;inset:0 auto auto 0;width:var(--label-print-width, 70mm);height:var(--label-print-height, 37mm);min-height:var(--label-print-height, 37mm);margin:0;border:0;border-radius:0;padding:0;background:#fff;box-shadow:none}}@media(max-width:1120px){.brand-hero h1{font-size:4.4rem}}@media(max-width:760px){.page-header,.section-heading,.status-row{align-items:flex-start;flex-direction:column}.nav__main{gap:.75rem}.page{padding:1rem}.brand-hero{min-height:560px;padding-bottom:8.5rem}.brand-hero h1{font-size:2.6rem}.brand-hero__logo{width:min(14rem,72vw)}.hero-panel{right:1rem;bottom:1rem;left:1rem;width:auto}.metric-grid{grid-template-columns:1fr}.table{display:block;overflow-x:auto;white-space:nowrap}.machine-metrics,.machine-actions-grid,.machine-editor-grid,.machine-form-grid,.machine-starter-panel__controls{grid-template-columns:1fr}.machine-workbench__header,.machine-preview__header,.machine-filter-row{align-items:flex-start;flex-direction:column}.label-editor-workspace,.composition-workspace{grid-template-columns:1fr}.label-editor-preview-panel{position:static;grid-column:auto;grid-row:auto}.label-editor-form-grid,.label-editor-field,.label-editor-selected-grid{grid-template-columns:1fr}.composition-list,.label-preview-panel{position:static}}@media(max-width:940px){.nav{align-items:flex-start;flex-direction:column}.nav__main,.nav__actions{width:100%;justify-content:flex-start}.nav__settingsPanel{right:auto;left:0;max-width:calc(100vw - 2rem)}.machine-wizard{grid-template-columns:1fr}.machine-stepper,.machine-preview{position:static}.machine-stepper{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:420px){.brand-hero h1{font-size:2.2rem}}
