:root{font-family:Avenir Next,Segoe UI,sans-serif;color:#273341;background:radial-gradient(circle at top left,rgba(122,132,142,.18),transparent 28%),radial-gradient(circle at right center,rgba(168,176,184,.22),transparent 34%),linear-gradient(180deg,#f3f4f6,#e8ebee);color-scheme:light;line-height:1.4;font-weight:400}*{box-sizing:border-box}html,body,#root{margin:0;min-height:100%;height:100%}body{min-width:320px;overflow:hidden}button,input,select{font:inherit}button{cursor:pointer}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0;padding:0}.app-shell{height:100%;display:flex;flex-direction:column;padding:.85rem;gap:.85rem;overflow:hidden;position:relative}.workspace{flex:1;min-height:0;display:grid;grid-template-columns:280px minmax(0,1fr) 320px;gap:.85rem;overflow:hidden;position:relative;z-index:1}.topbar,.panel-card,.viewport-panel,.loading-card{border:1px solid rgba(172,180,188,.38);background:linear-gradient(180deg,#fafbfcf5,#f1f3f5f5);box-shadow:0 16px 34px #626f7b24;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.topbar{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.7rem .9rem;border-radius:0;position:relative;z-index:20;overflow:visible}.topbar__cluster{display:flex;gap:.5rem;align-items:center;min-width:0}.topbar__brand{display:flex;flex-direction:column;min-width:0}.topbar__eyebrow,.panel-card__meta,.field-group__label small{color:#7b8791;font-size:.78rem;letter-spacing:.08em;text-transform:uppercase}.topbar__status,.topbar__hint{color:#65737f;font-size:.85rem}.topbar__project-name{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:transparent;color:#22303c;cursor:text;font-size:1.25rem;font-weight:700;padding:0;text-align:left}.topbar__project-input{border:1px solid rgba(174,182,190,.42);background:#fafbfcfa;color:#22303c;border-radius:0;padding:.3rem .55rem;font-size:1.05rem;font-weight:700;max-width:260px;width:100%}.menu-bar{display:flex;align-items:center;gap:.15rem;margin-left:.85rem;position:relative;z-index:21}.menu-bar__group{position:relative}.menu-bar__button{border:0;background:transparent;color:#5f6c76;border-radius:0;padding:.45rem .65rem}.menu-bar__button:hover,.menu-bar__button--active{background:#e2e7ece0;color:#22303c}.menu-dropdown{position:absolute;top:calc(100% + .35rem);left:0;z-index:30;display:flex;flex-direction:column;gap:.15rem;min-width:220px;padding:.45rem;border-radius:0;border:1px solid rgba(174,182,190,.42);background:#fafbfcfa;box-shadow:0 12px 28px #5f6c7824}.menu-dropdown--settings{min-width:340px;padding:.8rem}.menu-dropdown__submenu{position:relative}.menu-dropdown--submenu{display:none;left:calc(100% + .35rem);min-width:190px;top:-.45rem}.menu-dropdown__submenu:focus-within .menu-dropdown--submenu,.menu-dropdown__submenu:hover .menu-dropdown--submenu{display:flex}.menu-dropdown__item{display:flex;align-items:center;justify-content:space-between;gap:.6rem;width:100%;border:0;background:transparent;color:#22303c;border-radius:0;padding:.55rem .65rem;text-align:left}.menu-dropdown__item:hover{background:#e2e7ece6}.menu-dropdown__item--danger{color:#9a3e2f}.menu-dropdown__item--danger:hover{background:#ffe8e0e0}.menu-dropdown__item--stacked{align-items:flex-start;flex-direction:column}.menu-dropdown__item--submenu-trigger svg{flex:0 0 auto;margin-left:auto}.menu-dropdown__item--stacked small,.menu-dropdown__empty,.menu-dropdown__label,.menu-dropdown__note{color:#6d7983}.menu-dropdown__divider{height:1px;background:#aeb6be6b;margin:.2rem 0}.menu-dropdown__label{font-size:.76rem;letter-spacing:.08em;padding:.3rem .65rem .15rem;text-transform:uppercase}.menu-dropdown__empty,.menu-dropdown__note{padding:.45rem .65rem;font-size:.88rem}.topbar__icon-button,.viewport-rail__button,.browser-card__icon-button,.viewport-context-bar__button{border:1px solid rgba(174,182,190,.42);background:#f8f9faf0;color:#32404b;border-radius:0;padding:.62rem;transition:transform .12s ease,border-color .12s ease,background .12s ease}.topbar__icon-button:hover,.viewport-rail__button:hover,.browser-card__icon-button:hover,.viewport-context-bar__button:hover{transform:translateY(-1px);border-color:#707c888c;background:#f1f4f7fa}.topbar__icon-button--active,.viewport-rail__button--active,.browser-card__icon-button--active{background:linear-gradient(135deg,#5f6b76,#aeb6bf);color:#fff;border-color:#b9c2cbb8}.sidebar,.inspector{display:flex;flex-direction:column;gap:1rem;min-height:0;overflow:auto}.panel-card{border-radius:0;padding:1rem;min-width:0}.panel-card--compact{padding:.9rem}.panel-card__header{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:.8rem}.panel-card__title{font-family:Iowan Old Style,Palatino Linotype,serif;font-size:1.05rem}.panel-card__empty{margin:0;color:#73818c}.material-summary{display:flex;flex-direction:column;gap:.55rem}.material-summary__toolbar{display:flex;align-items:center;justify-content:space-between;gap:.7rem}.material-summary__intro{margin:0 0 .2rem;color:#65737f;font-size:.86rem}.material-summary__print{display:inline-flex;align-items:center;gap:.35rem;flex:0 0 auto;border:1px solid rgba(149,160,170,.55);background:#f8fafbe6;color:#31404d;padding:.32rem .5rem;font-size:.78rem}.material-summary__print:hover{background:#e4e9eee6}.print-report{display:none}.material-summary__row{display:flex;flex-direction:column;border-top:1px solid rgba(174,182,190,.34);padding-top:.6rem}.material-summary__row-header{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.75rem;align-items:start;width:100%;border:0;background:transparent;color:inherit;padding:0;text-align:left;cursor:pointer;border-radius:0}.material-summary__row-header:hover .material-summary__label strong{color:#1a2732}.material-summary__label,.material-summary__total{display:flex;flex-direction:column;gap:.15rem;min-width:0}.material-summary__label strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.material-summary__total{text-align:right}.material-summary__row small{color:#73818c;font-size:.78rem}.material-summary__part-list{display:flex;flex-direction:column;margin-top:.35rem;border-top:1px solid rgba(174,182,190,.22);padding-top:.2rem}.material-summary__part-row{display:flex;justify-content:space-between;align-items:center;gap:.6rem;width:100%;border:0;background:transparent;color:#22303c;border-radius:0;padding:.28rem .35rem;text-align:left;font-size:.84rem;cursor:pointer}.material-summary__part-row:hover{background:#e2e7ecc7}.material-summary__part-row span:first-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.material-summary__part-dim{color:#65737f;flex-shrink:0;font-variant-numeric:tabular-nums}.cut-plan{display:grid;gap:.55rem;padding:.2rem 0 .35rem}.cut-plan__meta{color:#65737f;font-size:.78rem;padding:0 .15rem}.cut-plan__stock,.cut-plan__oversize,.cut-plan__handled{border:1px solid rgba(140,151,162,.34);background:#f7f9fab8;padding:.45rem}.cut-plan__oversize{border-color:#b15c4e8c;background:#fcf0eec7}.cut-plan__handled{border-color:#5f8e696b;background:#eff8f1c7}.cut-plan__stock-header{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-bottom:.3rem;color:#2d3b48;font-size:.82rem}.cut-plan__stock-header span{color:#65737f}.cut-plan__cuts{display:grid;gap:.25rem}.cut-plan__cut{display:flex;justify-content:space-between;gap:.5rem;border:0;background:transparent;color:#2f3c48;padding:.18rem 0;text-align:left;cursor:pointer}.cut-plan__cut:hover{color:#0e5f8f}.cut-plan__cut--oversize{color:#9b3c32}.cut-plan__cut--handled{color:#446d4d}.sidebar-tabs{display:flex;gap:0;background:linear-gradient(180deg,#fafbfcf5,#f1f3f5f5);border:1px solid rgba(172,180,188,.38);box-shadow:0 16px 34px #626f7b24;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.sidebar-tabs__tab{flex:1;border:0;border-bottom:2px solid transparent;background:transparent;color:#65737f;padding:.62rem .8rem;font-size:.9rem;font-weight:500;transition:color .12s ease,border-color .12s ease,background .12s ease}.sidebar-tabs__tab:hover{color:#22303c;background:#e2e7ec80}.sidebar-tabs__tab--active{color:#22303c;border-bottom-color:#5f6b76;background:#e2e7ec4d}.material-panel__filter-bar{display:flex;align-items:center;justify-content:space-between;gap:.6rem;padding:.4rem .55rem;margin-bottom:.5rem;background:#e2e7ec99;border:1px solid rgba(174,182,190,.34);border-radius:0;font-size:.84rem;color:#42515d}.material-panel__filter-clear{border:1px solid rgba(174,182,190,.42);background:#f8f9faf5;color:#22303c;border-radius:0;padding:.22rem .55rem;font-size:.82rem;white-space:nowrap}.material-panel__filter-clear:hover{background:#f1f4f7fa;border-color:#707c888c}.browser-card{display:flex;flex-direction:column;flex:1 1 auto;min-height:0}.browser-card__header{display:flex;justify-content:space-between;gap:.75rem;align-items:flex-start;margin-bottom:.85rem}.browser-card__header-actions{display:flex;align-items:center;gap:.15rem}.browser-card__header-action{width:2.05rem;height:2.05rem;display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:0;background:transparent;color:#66737e;padding:0}.browser-card__header-action:hover{background:#e2e7ece6;color:#22303c}.browser-card__header-action--active{background:#d2dbe4f2;color:#22303c}.browser-card__subtitle{margin:.2rem 0 0;color:#73818c;font-size:.88rem}.material-create-strip{display:grid;grid-template-columns:auto repeat(7,minmax(0,1fr));align-items:center;gap:.25rem;border-top:1px solid rgba(174,182,190,.32);border-bottom:1px solid rgba(174,182,190,.32);padding:.45rem 0;margin:-.25rem 0 .55rem}.material-create-strip__label{color:#73818c;font-size:.75rem;text-transform:uppercase}.material-create-strip__button{position:relative;display:inline-flex;align-items:center;justify-content:center;min-width:0;height:1.85rem;border:1px solid rgba(163,174,184,.42);background:#f8fafbd1;color:#53616c;padding:0}.material-create-strip__button:hover{background:#e2e7ece6;color:#22303c}.material-create-strip__button svg:last-child{position:absolute;right:.25rem;bottom:.18rem;background:#f8fafbeb}.search-field{display:flex;align-items:center;gap:.6rem;border:1px solid rgba(174,182,190,.42);background:#fafbfcf5;color:#32404b;border-radius:0;padding:.75rem .9rem;margin-bottom:.9rem}.search-field__input{flex:1;border:0;outline:0;background:transparent;color:inherit}.browser-card__actions{display:flex;flex-wrap:wrap;gap:.55rem;margin-bottom:.9rem}.browser-card__action-button{display:inline-flex;align-items:center;gap:.45rem;border:1px solid rgba(174,182,190,.38);background:#f8f9faf5;color:#32404b;border-radius:0;padding:.62rem .8rem;flex:1 1 5.8rem;justify-content:center}.object-browser{display:flex;flex-direction:column;gap:.08rem;flex:1 1 auto;overflow:auto;min-height:0;border:1px dashed transparent;border-radius:0;padding-bottom:.75rem;transition:background .12s ease,border-color .12s ease}.object-browser--drop-target{background:#e2e7ec80;border-color:#707c8894}.browser-card__build-hint{color:#65737f;font-size:.78rem;line-height:1.25;padding:.15rem .1rem .45rem}.build-order-list{gap:.12rem}.variable-list{display:flex;flex-direction:column;gap:.35rem}.settings-section{border-top:1px solid rgba(174,182,190,.32);padding-top:.65rem;margin-top:.65rem}.settings-section__header{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-bottom:.45rem}.settings-section__title{color:#32404b;font-size:.82rem}.variable-row{display:grid;grid-template-columns:auto minmax(0,1fr) 4.8rem auto auto;align-items:center;gap:.35rem;min-height:2.1rem;color:#32404b}.variable-row--status{grid-template-columns:auto minmax(0,1fr) auto}.variable-row__input,.variable-row__value{min-width:0;border:1px solid rgba(174,182,190,.42);background:#fafbfcfa;color:#22303c;border-radius:0;padding:.35rem .45rem}.variable-row__value{text-align:right}.variable-row__unit{color:#65737f;font-size:.78rem}.object-tree__group{display:flex;flex-direction:column;gap:.08rem}.object-row,.recent-list__item{display:flex;gap:.32rem;align-items:center;width:100%;border:1px solid transparent;background:transparent;color:inherit;border-radius:0;padding:.22rem .4rem;text-align:left;cursor:grab;transition:background .12s ease,border-color .12s ease,opacity .12s ease,transform .12s ease;-webkit-user-select:none;user-select:none}.object-row:active{cursor:grabbing}.object-row--group{border-color:transparent;background:transparent}.object-row--selected{border-color:#707c8866;background:#e2e7ecc7}.object-row--dragging{opacity:.48}.object-row--hidden{opacity:.42}.object-row--hidden .object-row__name-button{color:#73818c}.object-row--drop-target{border-color:#5c6774b8;background:#d7dde3f0;box-shadow:inset 0 0 0 1px #5c677438;transform:translateY(-1px)}.object-row__icon{width:1.15rem;height:1.15rem;display:inline-flex;align-items:center;justify-content:center;border-radius:0;background:transparent;flex:0 0 auto}.build-order-row{padding-left:.35rem}.build-order-row__select{display:inline-flex;align-items:center;justify-content:center;width:1.1rem;height:1.1rem;flex:0 0 auto;cursor:pointer}.build-order-row__select input{width:.9rem;height:.9rem;margin:0}.build-order-row__number{min-width:2.1rem;color:#65737f;font-size:.76rem;font-variant-numeric:tabular-nums;text-align:right}.object-row__icon--group{background:transparent;color:#5f6b76}.object-row__disclosure{width:1rem;height:1rem;display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;border:0;border-radius:0;background:transparent;color:#66737e;padding:0}.object-row__disclosure:hover{background:#e2e7ece6;color:#22303c}.object-row__disclosure--placeholder{pointer-events:none}.object-row__eye{width:1rem;height:1rem;display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;border:0;border-radius:0;background:transparent;color:#66737e;padding:0;opacity:0;transition:opacity .1s ease;margin-left:auto}.object-row:hover .object-row__eye,.object-row__eye--hidden{opacity:1}.object-row__eye:hover{color:#22303c}.object-row__eye:disabled{opacity:.35;cursor:not-allowed}.object-row__content,.recent-list__item{display:flex;flex-direction:column;min-width:0;flex:1 1 auto}.object-row__name-button{align-self:flex-start;border:0;background:transparent;color:#22303c;cursor:text;padding:0;text-align:left;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.object-row__name-button strong{font-weight:500}.object-row__name-input{border:1px solid rgba(174,182,190,.42);background:#fafbfcfa;color:#22303c;border-radius:0;padding:.12rem .3rem;width:100%}.object-row__content small,.recent-list__item small{color:#73818c}.field-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.65rem}.recent-list{display:flex;flex-direction:column;gap:.55rem}.field,.field-group{display:flex;flex-direction:column;gap:.38rem;margin-bottom:.75rem}.field--checkbox{flex-direction:row;align-items:center}.field__input{border:1px solid rgba(174,182,190,.42);background:#fafbfcfa;color:#22303c;border-radius:0;padding:.7rem .85rem;width:100%;min-width:0}.field__input--readonly{display:flex;align-items:center;min-height:46px;color:#42515d}.inspector-field{display:grid;grid-template-columns:5.6rem minmax(0,1fr);gap:.6rem;align-items:center;margin-bottom:.45rem}.inspector-field>span{color:#42515d;line-height:1.2}.inspector-field .field__input{min-height:34px;padding:.42rem .55rem}.inspector-field .field__input--readonly{min-height:34px}.inspector-section-label{display:block;margin:.7rem 0 .4rem}.material-axis-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.55rem;align-items:end;margin-bottom:.45rem}.material-axis-row .inspector-field{margin-bottom:0}.material-axis-row__lock{min-height:34px;display:inline-flex;align-items:center;gap:.35rem;color:#42515d;font-size:.82rem;white-space:nowrap}.material-axis-row__lock input{margin:0}.field-group__grid{display:grid;gap:.65rem}.field-group__grid.inspector-vector-grid{gap:.3rem}.inspector-note{color:#65737f;font-size:.82rem;margin:-.1rem 0 .45rem}.inspector-action-button{width:100%;border:1px solid rgba(112,124,136,.55);background:#e2e7ece6;color:#22303c;padding:.48rem .65rem}.inspector-action-button:hover{background:#d7dde3fa}.inspector-action-button--compact{width:auto;min-width:6.5rem;justify-self:end}.inspector-action-button--danger{color:#8b2020;border-color:#8b202059;background:#f8ececb3}.inspector-action-button--danger:hover:not(:disabled){background:#f0dcdce6}.inspector-action-button--danger:disabled{opacity:.45;cursor:not-allowed}.inspector-action-row{display:flex;justify-content:flex-end;gap:.35rem;margin-top:.6rem}.inspector-action-icon-button{border:1px solid rgba(112,124,136,.55);background:#e2e7ece6;color:#22303c;border-radius:0;width:2rem;height:2rem;display:inline-flex;align-items:center;justify-content:center}.inspector-action-icon-button:hover{background:#d7dde3fa}.inspector-action-icon-button:disabled{opacity:.45;cursor:not-allowed}.inspector-match-panel{margin-top:.6rem;border:1px solid rgba(174,182,190,.45);padding:.55rem;background:#f4f7fad9}.inspector-match-panel__title{display:block;font-size:.82rem;color:#32404b;margin-bottom:.45rem}.inspector-match-panel__filters{display:flex;gap:.5rem;margin-bottom:.45rem}.inspector-match-panel__checkbox{display:inline-flex;align-items:center;gap:.2rem;font-size:.8rem;color:#42515d}.inspector-match-list{max-height:7.5rem;overflow:auto;border:1px solid rgba(174,182,190,.35);background:#f8fafc;padding:.35rem}.inspector-match-list__item{display:grid;grid-template-columns:auto 1fr auto;gap:.35rem;align-items:center;font-size:.8rem;color:#32404b;padding:.15rem 0}.inspector-match-list__item small{color:#65737f}.inspector-match-panel__actions{display:grid;grid-template-columns:1fr 1fr;gap:.35rem;margin-top:.45rem}.field-group__grid--1{grid-template-columns:1fr}.field-group__grid--2{grid-template-columns:repeat(2,minmax(0,1fr))}.field-group__grid--3{grid-template-columns:repeat(3,minmax(0,1fr))}.viewport-panel{border-radius:0;padding:0;display:flex;flex-direction:column;min-height:0;overflow:hidden}.viewport-canvas{flex:1;min-height:0;position:relative;border-radius:0;overflow:hidden;border:1px solid rgba(174,182,190,.34)}.viewport-help{position:absolute;top:1rem;right:4.8rem;z-index:2;display:flex;flex-direction:column;gap:.3rem;max-width:280px;padding:.75rem .9rem;border-radius:0;background:#fafbfcf5;border:1px solid rgba(174,182,190,.42);box-shadow:0 12px 28px #5f6c7829}.viewport-rail{position:absolute;z-index:2;display:flex;flex-direction:column;gap:.45rem;padding:.55rem;border-radius:0;background:#f8f9faf0;border:1px solid rgba(174,182,190,.42);box-shadow:0 12px 28px #5f6c7824;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.viewport-rail--left{left:1rem;top:6.4rem}.viewport-rail--right{right:1rem;top:1rem}.viewport-rail__divider{width:100%;height:1px;background:#aeb6be6b;margin:.15rem 0}.viewport-rail__menu-wrapper{position:relative}.viewport-add-menu{position:absolute;left:calc(100% + .5rem);top:0;z-index:3;min-width:128px;display:flex;flex-direction:column;gap:.18rem;padding:.35rem;border-radius:0;border:1px solid rgba(174,182,190,.42);background:#fafbfcfa;box-shadow:0 12px 28px #5f6c7824}.viewport-add-menu__item{display:inline-flex;align-items:center;gap:.5rem;border:0;background:transparent;color:#22303c;border-radius:0;padding:.5rem .6rem;text-align:left}.viewport-add-menu__item:hover{background:#e2e7ece6}.viewport-add-menu__group-header{display:flex;align-items:center;gap:.38rem;width:100%;border:0;background:transparent;color:#1a2733;padding:.42rem .6rem;font-weight:600;font-size:.75rem;text-transform:uppercase;letter-spacing:.045em;cursor:pointer;border-radius:0;text-align:left}.viewport-add-menu__group-header:hover{background:#e2e7ece6}.viewport-add-menu__group-header--open{color:#1a5fa8}.viewport-add-menu__group-icon{display:flex;align-items:center;opacity:.7}.viewport-add-menu__group-chevron{display:flex;align-items:center;margin-left:auto;opacity:.55}.viewport-add-menu__material-item{padding-left:1.6rem}.viewport-add-menu__material-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.viewport-add-menu__empty{display:block;padding:.5rem .6rem;color:#7a8896;font-size:.82rem}.viewport-context-bar{position:absolute;left:50%;bottom:1rem;transform:translate(-50%);z-index:2;display:flex;gap:.55rem;padding:.55rem;border-radius:0;background:#f8f9faf0;border:1px solid rgba(174,182,190,.42);box-shadow:0 12px 28px #5f6c7824}.viewport-context-bar__button{display:inline-flex;align-items:center;gap:.45rem;border-radius:0;padding:.62rem .9rem}.viewport-context-bar__button--danger{border-color:#c25a466b}.build-sequence-panel{position:absolute;left:1rem;bottom:1rem;z-index:2;width:min(360px,calc(100% - 2rem));display:grid;gap:.55rem;padding:.7rem;border:1px solid rgba(174,182,190,.42);background:#f8f9faf2;box-shadow:0 12px 28px #5f6c7824;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.build-sequence-panel__header,.build-sequence-panel__controls{display:flex;align-items:center;gap:.55rem}.build-sequence-panel__header{justify-content:space-between;color:#263541;font-size:.84rem}.build-sequence-panel__header span{color:#65737f;font-size:.78rem;white-space:nowrap}.build-sequence-panel__controls input[type=range]{min-width:0;flex:1}.build-sequence-panel__icon,.build-sequence-panel__play{display:inline-flex;align-items:center;justify-content:center;border:1px solid rgba(149,160,170,.55);background:#f8fafbe6;color:#31404d}.build-sequence-panel__icon{width:1.8rem;height:1.8rem;padding:0}.build-sequence-panel__play{gap:.35rem;min-width:5.2rem;padding:.36rem .55rem}.build-sequence-panel__icon:hover:not(:disabled),.build-sequence-panel__play:hover:not(:disabled){background:#e4e9eef0}.build-sequence-panel__icon:disabled,.build-sequence-panel__play:disabled{opacity:.45;cursor:not-allowed}.measurement-chip{min-width:96px;padding:.35rem .6rem;border-radius:0;background:#fafbfcf5;border:1px solid rgba(174,182,190,.38);color:#22303c;box-shadow:0 10px 28px #5f6c7824;font-size:.82rem;font-weight:600;text-align:center}.measurement-chip--selected{border-color:#5c67749e;background:#e8ecf0fa}.loading-card{margin:auto;padding:2rem 2.4rem;border-radius:0}@media(max-width:1180px){.workspace{grid-template-columns:1fr}.sidebar,.inspector{order:2}.viewport-panel{order:1;min-height:420px}.topbar{flex-wrap:wrap}.menu-bar{flex-wrap:wrap;margin-left:0}.viewport-help{right:1rem;left:1rem;max-width:none}.field-grid{grid-template-columns:1fr}}@media(max-width:767px){.app-shell{padding:.5rem;gap:.5rem}.topbar{padding:.55rem .7rem}.topbar__project-name{font-size:1.05rem}.menu-bar{gap:0}.menu-bar__button{padding:.4rem .5rem;font-size:.9rem}.sidebar,.inspector{max-height:50vh}}@media print{@page{size:A4 portrait;margin:7mm}html,body,#root{height:auto;min-height:0;overflow:visible;background:#fff}body *{visibility:hidden}.print-report,.print-report *{visibility:visible}.print-report{display:block;position:absolute;inset:0 auto auto 0;width:100%;color:#111;background:#fff;font-family:Avenir Next,Segoe UI,sans-serif;font-size:8.4pt;line-height:1.18}.print-report__header{display:flex;justify-content:space-between;gap:8mm;align-items:flex-start;border-bottom:1px solid #222;padding-bottom:2.5mm;margin-bottom:3mm}.print-report h1{margin:0;font-size:17pt;line-height:1.1}.print-report h2{margin:0;font-size:11pt;line-height:1.2}.print-report p{margin:.8mm 0 0}.print-report__meta{display:flex;flex-direction:column;gap:1mm;color:#444;text-align:right;white-space:nowrap}.print-report table{border-collapse:collapse;width:100%;margin:0 0 3mm;page-break-inside:avoid}.print-report th,.print-report td{border:1px solid #c8cdd2;padding:1mm 1.3mm;text-align:left;vertical-align:top}.print-report th{background:#eef1f3;font-weight:700}.print-report__summary td:nth-child(3),.print-report__summary td:nth-child(5),.print-report__summary td:nth-child(6),.print-report__summary th:nth-child(3),.print-report__summary th:nth-child(5),.print-report__summary th:nth-child(6),.print-report__cuts td:last-child,.print-report__cuts th:last-child{text-align:right;white-space:nowrap}.print-report__material{margin-top:3.6mm;page-break-inside:avoid}.print-report__material-header{display:flex;justify-content:space-between;gap:6mm;align-items:baseline;border-bottom:1px solid #7b858f;margin-bottom:1.5mm;padding-bottom:1mm}.print-report__material-header p,.print-report__note{color:#444}.print-report__material-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1.5mm;margin:0 0 2mm}.print-report__material-metrics span{border:1px solid #d1d6db;background:#f5f7f8;padding:1mm 1.4mm;white-space:nowrap}.print-report__stock-grid{column-count:3;column-gap:2.4mm}.print-report__stock-card{break-inside:avoid;page-break-inside:avoid;display:inline-block;width:100%;border:1px solid #bfc6cc;margin:0 0 2.4mm;background:#fff}.print-report__stock-title{display:flex;justify-content:space-between;gap:2mm;background:#eef1f3;border-bottom:1px solid #bfc6cc;padding:1mm 1.3mm}.print-report__stock-title span{white-space:nowrap}.print-report__cut-list{list-style:none;margin:0;padding:.8mm 1.3mm 1mm}.print-report__cut-list li{display:flex;justify-content:space-between;gap:1.5mm;border-bottom:1px solid #eceff1;padding:.55mm 0}.print-report__cut-list li:last-child{border-bottom:0}.print-report__cut-list span{overflow-wrap:anywhere}.print-report__cut-list strong{white-space:nowrap}.print-report__overview{margin-top:5mm;page-break-inside:avoid}.print-report__cuts--warning th{background:#f7e5e2}}
