:root,:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--pv-bg:#07101a;--pv-bg-top:#183650;--pv-surface:#0d1926;--pv-surface-2:#0a1722;--pv-surface-3:#10202e;--pv-input:#091722;--pv-border:#1d3448;--pv-border-strong:#294155;--pv-text:#eaf1f7;--pv-text-soft:#c7d7e2;--pv-muted:#7f96a7;--pv-muted-2:#60798d;--pv-accent:#1aa0d9;--pv-accent-strong:#33bdfd;--pv-accent-soft:#102b40;--pv-on-accent:#fff;--pv-canvas:#040b10;--pv-canvas-grid:#0b1720;--pv-canvas-toolbar:#0a1823;--pv-canvas-paper:#fff;--pv-annotation:#1fa5db;--pv-annotation-active:#38dcff;--pv-annotation-draft:#58ee91;--pv-chart-measure:#48bcea;--pv-chart-tolerance:#aa5260;--pv-chart-control:#9a7e37;--pv-chart-point:#c7efff;--pv-type-dimension:#55d28a;--pv-type-diameter:#3ba9ff;--pv-type-radius:#ff9b42;--pv-type-chamfer:#b07cff;--pv-type-angle:#ffd166;--pv-type-thread:#ff6f91;--pv-type-attribute:#8fa7b8;--pv-success:#5ee99f;--pv-success-bg:#123126;--pv-warning:#ffd271;--pv-warning-bg:#3b2e14;--pv-danger:#ff858d;--pv-danger-bg:#3a171a;--pv-shadow:0 12px 35px #0005;--pv-shadow-float:0 18px 45px #0008;--pv-radius:12px;--pv-radius-sm:7px;--pv-page-gap:10px;--pv-font-sans:"Segoe UI Variable","Segoe UI",Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,sans-serif;--pv-font-xs:12px;--pv-font-sm:13px;--pv-font-md:14px;--pv-font-lg:16px;--pv-font-xl:20px;--pv-font-2xl:24px;--pv-line:1.4}:root[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--pv-bg:#edf3f7;--pv-bg-top:#dceaf3;--pv-surface:#fff;--pv-surface-2:#f6f9fb;--pv-surface-3:#eaf2f7;--pv-input:#fff;--pv-border:#cfdae2;--pv-border-strong:#b7c8d4;--pv-text:#142632;--pv-text-soft:#314b5b;--pv-muted:#647b8b;--pv-muted-2:#8296a3;--pv-accent:#087fae;--pv-accent-strong:#009bd8;--pv-accent-soft:#e3f4fb;--pv-on-accent:#fff;--pv-canvas:#dfe7ec;--pv-canvas-grid:#d1dbe1;--pv-canvas-toolbar:#eaf2f7;--pv-canvas-paper:#fff;--pv-annotation:#087fae;--pv-annotation-active:#009bd8;--pv-annotation-draft:#147a4a;--pv-chart-measure:#087fae;--pv-chart-tolerance:#b52f3b;--pv-chart-control:#8a6410;--pv-chart-point:#314b5b;--pv-type-dimension:#168a4a;--pv-type-diameter:#087fae;--pv-type-radius:#c66a12;--pv-type-chamfer:#7a55c7;--pv-type-angle:#9b7200;--pv-type-thread:#b83a5d;--pv-type-attribute:#647b8b;--pv-success:#147a4a;--pv-success-bg:#e5f7ed;--pv-warning:#8a6410;--pv-warning-bg:#fff5d8;--pv-danger:#b52f3b;--pv-danger-bg:#fdebed;--pv-shadow:0 10px 28px #28485b16;--pv-shadow-float:0 18px 45px #28485b24}:root{color:var(--pv-text);background:var(--pv-bg);font-synthesis:none;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{background:radial-gradient(circle at 58% -20%,var(--pv-bg-top) 0,var(--pv-bg) 35%,var(--pv-bg) 75%);min-width:980px;min-height:100vh;margin:0}button,input,select{font:inherit}.app-shell{flex-direction:column;gap:10px;height:100vh;padding:14px;display:flex}.topbar{justify-content:space-between;align-items:center;gap:28px;padding:2px 4px;display:flex}.eyebrow{letter-spacing:.16em;color:var(--pv-accent-strong);font-size:11px;font-weight:750}.topbar h1{margin:2px 0 0;font-size:25px}.topbar h1 span{color:var(--pv-muted);margin-left:8px;font-size:16px;font-weight:450}.top-fields{gap:9px;display:flex}.top-fields label{font-size:var(--pv-font-xs);text-transform:uppercase;letter-spacing:.08em;color:var(--pv-muted)}.top-fields input,.top-fields select{background:var(--pv-surface-3);border:1px solid var(--pv-border);color:var(--pv-text);border-radius:7px;outline:none;min-width:135px;margin-top:4px;padding:7px 9px;display:block}.progress{background:var(--pv-surface-3);border-radius:6px;height:3px;overflow:hidden}.progress i{background:linear-gradient(90deg,var(--pv-accent),var(--pv-accent-strong));height:100%;transition:width .25s;display:block}.workspace{flex:1;grid-template-columns:260px minmax(480px,1fr) 360px;gap:10px;min-height:0;display:grid}.panel{border:1px solid var(--pv-border);background:#0d1926f0;border-radius:12px;min-height:0;box-shadow:0 12px 35px #0005}.characteristics{flex-direction:column;padding:10px;display:flex}.panel-title{color:var(--pv-text-soft);text-transform:uppercase;letter-spacing:.1em;justify-content:space-between;align-items:center;padding:6px 5px 10px;font-size:11px;display:flex}.panel-title b{background:var(--pv-surface-3);border-radius:9px;padding:3px 7px}.char-list{flex-direction:column;flex:1;gap:5px;display:flex;overflow:auto}.char-list button{background:var(--pv-surface-2);color:var(--pv-text);text-align:left;cursor:pointer;border:1px solid #0000;border-radius:8px;align-items:center;gap:9px;padding:9px;display:flex}.char-list button:hover{background:var(--pv-surface-3)}.char-list button.active{background:var(--pv-accent-soft);border-color:var(--pv-accent);box-shadow:inset 3px 0 var(--pv-accent-strong)}.kind{background:var(--pv-accent-soft);min-width:27px;height:27px;color:var(--pv-accent-strong);border-radius:7px;justify-content:center;align-items:center;font-size:11px;font-weight:800;display:inline-flex}.char-main{flex:1;min-width:0}.char-main strong,.char-main small{white-space:nowrap;text-overflow:ellipsis;display:block;overflow:hidden}.char-main small{color:var(--pv-muted);margin-top:2px;font-size:11px}.order{color:var(--pv-muted-2);font-size:11px}.setup-box{border-top:1px solid var(--pv-border);gap:6px;padding-top:9px;display:grid}.setup-box button,.file-btn{background:var(--pv-surface-3);border:1px solid var(--pv-border-strong);color:var(--pv-text-soft);text-align:center;cursor:pointer;border-radius:7px;padding:8px}.setup-box .active{border-color:var(--pv-warning);color:var(--pv-warning)}.file-btn input{display:none}.viewer{position:relative;overflow:hidden}.viewer-wrap{position:absolute;inset:0}.viewer-wrap canvas{touch-action:none;width:100%;height:100%;display:block}.viewer-status{background:color-mix(in srgb,var(--pv-bg) 85%,transparent);border:1px solid var(--pv-border-strong);color:var(--pv-muted);border-radius:7px;padding:6px 9px;font-size:11px;position:absolute;bottom:12px;left:12px}.viewer-help{background:color-mix(in srgb,var(--pv-warning-bg) 91%,transparent);border:1px solid var(--pv-warning);color:var(--pv-warning);border-radius:8px;padding:8px 11px;font-size:12px;position:absolute;top:12px;left:50%;transform:translate(-50%)}.link-bar{background:color-mix(in srgb,var(--pv-surface-2) 91%,transparent);border:1px solid var(--pv-border-strong);border-radius:9px;align-items:center;gap:10px;padding:7px;font-size:11px;display:flex;position:absolute;bottom:12px;right:12px}.link-bar button{background:var(--pv-accent);color:#fff;border:0;border-radius:6px;padding:7px 10px}.measure{padding:17px;overflow:auto}.measure-head{align-items:flex-start;gap:11px;display:flex}.measure-head h2{margin:1px 0 2px;font-size:27px}.measure-head p{color:var(--pv-muted);margin:0}.spec-grid{grid-template-columns:1fr 1fr 1fr;gap:7px;margin:22px 0;display:grid}.spec-grid div{background:var(--pv-surface-2);border:1px solid var(--pv-border);text-align:center;border-radius:8px;padding:9px}.spec-grid span{color:var(--pv-muted);font-size:var(--pv-font-xs);display:block}.spec-grid b{font-size:15px}.measure-input label{color:var(--pv-muted);margin-bottom:5px;font-size:12px;display:block}.measure-input input{background:var(--pv-bg);border:2px solid var(--pv-border-strong);width:100%;color:var(--pv-text);text-align:center;border-radius:10px;outline:none;padding:12px 13px;font-size:34px;font-weight:650}.measure-input input:focus{border-color:var(--pv-accent-strong);box-shadow:0 0 0 4px color-mix(in srgb,var(--pv-accent) 11%,transparent)}.live-status{text-align:center;letter-spacing:.08em;background:var(--pv-surface-3);color:var(--pv-muted);border-radius:8px;margin:13px 0 8px;padding:11px;font-size:14px;font-weight:850}.live-status.ok{background:var(--pv-success-bg);color:var(--pv-success);border:1px solid var(--pv-success)}.live-status.warning{background:var(--pv-warning-bg);color:var(--pv-warning);border:1px solid var(--pv-warning)}.live-status.nok{background:var(--pv-danger-bg);color:var(--pv-danger);border:1px solid var(--pv-danger)}.limits{color:var(--pv-muted);text-align:center;gap:3px;font-size:11px;display:grid}.validate{background:var(--pv-accent);color:#fff;cursor:pointer;border:0;border-radius:8px;width:100%;margin-top:14px;padding:12px;font-weight:800}.validate:disabled{opacity:.35;cursor:default}.message{color:var(--pv-accent-strong);text-align:center;margin-top:8px;font-size:11px}.attribute-buttons{grid-template-columns:1fr 1fr;gap:8px;margin:30px 0 12px;display:grid}.attribute-buttons button{border:1px solid var(--pv-border-strong);background:var(--pv-surface-2);color:var(--pv-text-soft);border-radius:9px;padding:18px 8px;font-weight:700}.attribute-buttons .picked.ok{background:var(--pv-success-bg);border-color:var(--pv-success);color:var(--pv-success)}.attribute-buttons .picked.nok{background:var(--pv-danger-bg);border-color:var(--pv-danger);color:var(--pv-danger)}.history{border-top:1px solid var(--pv-border);margin-top:20px;padding-top:11px}.section-label{font-size:var(--pv-font-xs);letter-spacing:.1em;text-transform:uppercase;color:var(--pv-muted);margin-bottom:7px}.history-chart{background:var(--pv-surface-2);border-radius:7px;width:100%;height:135px}.limit{stroke-width:1px;stroke-dasharray:5 4}.limit.tol{stroke:var(--pv-chart-tolerance)}.limit.control{stroke:var(--pv-chart-control)}.measure-line{stroke:var(--pv-chart-measure);stroke-width:2px}.measure-dot{fill:var(--pv-chart-point)}.empty-chart{background:var(--pv-surface-2);height:90px;color:var(--pv-muted-2);border-radius:7px;place-items:center;font-size:11px;display:grid}@media (width<=1200px){.workspace{grid-template-columns:220px minmax(420px,1fr) 330px}.topbar h1 span{display:none}}.product-select{background:var(--pv-surface-3);border:1px solid var(--pv-border);color:var(--pv-text);border-radius:7px;min-width:310px;margin-top:4px;padding:7px 9px;font-weight:700}.product-row{align-items:center;display:flex}.row-status{border-radius:50%;place-items:center;width:22px;height:22px;font-size:12px;font-weight:900;display:grid}.row-status.ok{background:var(--pv-success-bg);color:var(--pv-success)}.row-status.warning{background:var(--pv-warning-bg);color:var(--pv-warning)}.row-status.nok{background:var(--pv-danger-bg);color:var(--pv-danger)}.viewer-tools{z-index:5;gap:6px;display:flex;position:absolute;top:12px;right:12px}.viewer-tools button{background:color-mix(in srgb,var(--pv-surface-2) 87%,transparent);border:1px solid var(--pv-border-strong);color:var(--pv-text-soft);cursor:pointer;border-radius:7px;padding:7px 9px}.viewer-status{flex-direction:column;gap:2px;display:flex}.viewer-status b{font-weight:650}.viewer-status span{opacity:.7;white-space:nowrap;text-overflow:ellipsis;max-width:340px;overflow:hidden}.measure-actions{grid-template-columns:1fr 1fr;gap:7px;margin-top:7px;display:grid}.measure-actions button{background:var(--pv-surface-2);border:1px solid var(--pv-border-strong);color:var(--pv-text-soft);cursor:pointer;border-radius:7px;padding:8px}.measure-actions button:disabled{opacity:.35;cursor:default}.link-bar button:disabled{opacity:.35}.viewer-help{text-align:center;max-width:min(760px,75%)}.message{min-height:16px}.char-list button{min-height:58px}@media (width<=1100px){.workspace{grid-template-columns:210px minmax(420px,1fr) 320px}.app-shell{padding:8px}}.brand-row{align-items:center;gap:10px;display:flex}.hamburger{border:1px solid var(--pv-border-strong);background:var(--pv-surface-2);width:38px;height:38px;color:var(--pv-text);cursor:pointer;border-radius:9px;font-size:20px}.menu-pop{z-index:50;background:var(--pv-surface);border:1px solid var(--pv-border-strong);border-radius:10px;gap:4px;width:260px;padding:7px;display:grid;position:fixed;top:68px;left:14px;box-shadow:0 18px 45px #0008}.menu-pop button{color:var(--pv-text-soft);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:7px;padding:10px 12px}.manage-view{flex:1;min-height:0}.manage-grid{grid-template-columns:310px 270px minmax(620px,1fr);gap:10px;height:100%;min-height:0;display:grid}.manage-col{flex-direction:column;min-height:0;padding:10px;display:flex}.manage-head{height:38px;color:var(--pv-text-soft);text-transform:uppercase;letter-spacing:.08em;justify-content:space-between;align-items:center;font-size:11px;display:flex}.manage-head button{background:var(--pv-surface-3);border:1px solid var(--pv-border-strong);color:var(--pv-text-soft);cursor:pointer;border-radius:6px;padding:5px 9px}.manage-head button:disabled{opacity:.35}.search,.edit-card input,.edit-card select{background:var(--pv-input);border:1px solid var(--pv-border-strong);width:100%;color:var(--pv-text);border-radius:7px;outline:none;padding:8px}.search{margin-bottom:7px}.manage-list{flex-direction:column;flex:1;gap:4px;min-height:100px;display:flex;overflow:auto}.manage-list button{background:var(--pv-surface-2);color:var(--pv-text);text-align:left;cursor:pointer;border:1px solid #0000;border-radius:7px;padding:8px 9px}.manage-list button.active{background:var(--pv-accent-soft);border-color:var(--pv-accent)}.manage-list strong,.manage-list small{display:block}.manage-list small{color:var(--pv-muted);margin-top:2px}.edit-card{border-top:1px solid var(--pv-border);gap:7px;margin-top:9px;padding-top:9px;display:grid}.edit-card label{font-size:var(--pv-font-xs);color:var(--pv-muted);text-transform:uppercase;letter-spacing:.06em}.edit-card label input,.edit-card label select{text-transform:none;letter-spacing:0;margin-top:4px;display:block}.two{grid-template-columns:1.5fr .7fr;gap:7px;display:grid}.three{grid-template-columns:.75fr 1.5fr .75fr;gap:7px;display:grid}.row-actions{align-items:center;gap:6px;display:flex}.row-actions button:not(.ui-button),.primary{border:1px solid var(--pv-border-strong);background:var(--pv-surface-3);color:var(--pv-text-soft);cursor:pointer;border-radius:7px;padding:8px 10px}.row-actions .primary,.primary{background:var(--pv-accent);border-color:var(--pv-accent);color:#fff;font-weight:700}.asset-row{color:var(--pv-muted);align-items:center;gap:6px;font-size:11px;display:flex}.file-btn.compact{padding:6px 9px}.char-table{border:1px solid var(--pv-border);border-radius:8px;flex:1;min-height:180px;overflow:auto}.char-table .tr{border:0;border-bottom:1px solid var(--pv-accent-soft);background:var(--pv-surface-2);width:100%;color:var(--pv-text);text-align:left;grid-template-columns:38px minmax(180px,1.5fr) 55px 90px 120px 80px;align-items:center;gap:7px;padding:7px 8px;display:grid}.char-table button.tr{cursor:pointer}.char-table .tr.active{background:var(--pv-accent-soft);box-shadow:inset 3px 0 var(--pv-accent-strong)}.char-table .th{z-index:2;background:var(--pv-surface-3);color:var(--pv-muted);text-transform:uppercase;font-size:var(--pv-font-xs);position:sticky;top:0}.char-table small{color:var(--pv-muted);margin-top:2px;display:block}.char-editor{flex:none}.advanced-grid{grid-template-columns:repeat(5,1fr);gap:6px;display:grid}.linklike{color:var(--pv-accent-strong);cursor:pointer;background:0 0;border:0;justify-self:start;padding:2px 0;font-size:11px}.source-line{color:var(--pv-muted);font-size:11px}.toast{background:var(--pv-accent-soft);border:1px solid var(--pv-accent);color:var(--pv-text);border-radius:8px;padding:9px 12px;position:fixed;bottom:18px;right:18px;box-shadow:0 10px 30px #0007}.import-view{gap:var(--pv-page-gap);flex:1;grid-template-columns:minmax(580px,1.3fr) minmax(350px,.7fr);min-height:0;display:grid}.import-card{padding:14px;overflow:auto}.drop-file{border:1px dashed var(--pv-border-strong);background:var(--pv-input);cursor:pointer;text-align:center;border-radius:10px;place-items:center;min-height:130px;display:grid}.drop-file strong,.drop-file small{display:block}.drop-file small{color:var(--pv-muted);margin-top:5px}.drop-file input{display:none}.import-metrics{grid-template-columns:repeat(3,1fr);gap:8px;margin:12px 0;display:grid}.import-metrics div{background:var(--pv-surface-2);border:1px solid var(--pv-border);text-align:center;border-radius:8px;padding:12px}.import-metrics b{font-size:24px;display:block}.import-metrics span{color:var(--pv-muted);font-size:11px}.preview-table{border:1px solid var(--pv-border);border-radius:8px;max-height:300px;margin-top:12px;overflow:auto}.preview-table .tr{border-bottom:1px solid var(--pv-accent-soft);grid-template-columns:1fr 1fr 1.4fr 60px 1fr;gap:8px;padding:7px 9px;font-size:12px;display:grid}.preview-table .th{background:var(--pv-surface-3);color:var(--pv-muted);text-transform:uppercase;font-size:var(--pv-font-xs)}.warnings{color:var(--pv-warning);margin-top:10px;font-size:11px}.warnings div{padding:3px 0}.import-btn{width:100%;margin-top:12px}.import-success{background:var(--pv-success-bg);border:1px solid var(--pv-success);color:var(--pv-success);border-radius:8px;margin-top:10px;padding:10px}.import-error{background:var(--pv-danger-bg);border:1px solid var(--pv-danger);color:var(--pv-danger);border-radius:8px;margin-top:10px;padding:10px}.import-status{color:var(--pv-accent-strong);margin-top:10px}.import-row{border-bottom:1px solid var(--pv-border);justify-content:space-between;gap:10px;padding:9px 2px;font-size:11px;display:flex}.import-row b,.import-row small{display:block}.import-row small{color:var(--pv-muted)}.import-row>span{color:var(--pv-muted);white-space:nowrap}.empty{color:var(--pv-muted-2);text-align:center;padding:20px 0}@media (width<=1300px){.manage-grid{grid-template-columns:250px 220px minmax(560px,1fr)}.advanced-grid{grid-template-columns:repeat(3,1fr)}}.view-cube-wrap{z-index:6;-webkit-user-select:none;user-select:none;width:84px;position:absolute;top:12px;left:12px}.view-cube-mini{filter:drop-shadow(0 6px 12px #0008);width:66px;height:62px;margin:0 auto 4px;position:relative}.view-cube-mini button{border:1px solid var(--pv-border-strong);color:var(--pv-text);background:var(--pv-surface-3);font-size:var(--pv-font-xs);cursor:pointer;padding:0;font-weight:800;position:absolute}.view-cube-mini button:hover{background:var(--pv-accent-soft);color:#fff}.cube-top{clip-path:polygon(50% 0,100% 50%,50% 100%,0 50%);width:60px;height:31px;top:0;left:3px}.cube-front{clip-path:polygon(0 0,100% 38%,100% 100%,0 62%);width:31px;height:44px;top:15px;left:3px}.cube-right{clip-path:polygon(0 38%,100% 0,100% 62%,0 100%);width:31px;height:44px;top:15px;left:33px}.view-cube-extra{grid-template-columns:repeat(4,1fr);gap:3px;display:grid}.view-cube-extra button{border:1px solid var(--pv-border-strong);background:color-mix(in srgb,var(--pv-surface-2) 87%,transparent);height:22px;color:var(--pv-text-soft);font-size:var(--pv-font-xs);cursor:pointer;border-radius:5px;padding:0;font-weight:750}.view-cube-extra button:hover{border-color:var(--pv-accent);color:var(--pv-text);background:var(--pv-accent-soft)}.demo-badge{background:var(--pv-accent-soft);color:var(--pv-accent-strong);font-size:var(--pv-font-xs);letter-spacing:.12em;vertical-align:1px;border-radius:999px;margin-left:7px;padding:2px 6px;display:inline-block}.drawing-workspace{background:var(--pv-bg);grid-template-columns:280px minmax(480px,1fr) 310px;gap:10px;height:calc(100vh - 74px);min-height:620px;padding:10px;display:grid}.drawing-sidebar,.drawing-inspector,.drawing-center{min-height:0;overflow:hidden}.drawing-sidebar{flex-direction:column;gap:12px;padding:14px;display:flex}.drawing-sidebar>label{color:var(--pv-muted);font-size:var(--pv-font-xs);text-transform:uppercase;letter-spacing:.08em;flex-direction:column;gap:5px;display:flex}.drawing-sidebar select{background:var(--pv-input);border:1px solid var(--pv-border-strong);width:100%;color:var(--pv-text);border-radius:7px;padding:9px;font-size:12px}.drawing-side-head{border-bottom:1px solid var(--pv-border);justify-content:space-between;align-items:center;padding-bottom:8px;display:flex}.drawing-side-head span,.drawing-char-title span,.drawing-next>span{color:var(--pv-accent-strong);font-size:var(--pv-font-xs);letter-spacing:.13em;font-weight:800;display:block}.drawing-side-head b{margin-top:3px;font-size:14px;display:block}.drawing-asset{border:1px solid var(--pv-border);background:var(--pv-surface-2);border-radius:8px;justify-content:space-between;align-items:center;gap:8px;padding:10px;display:flex}.drawing-asset>div{min-width:0}.drawing-asset span{color:var(--pv-muted);font-size:var(--pv-font-xs);text-transform:uppercase;display:block}.drawing-asset b{text-overflow:ellipsis;white-space:nowrap;max-width:145px;font-size:var(--pv-font-xs);margin-top:3px;display:block;overflow:hidden}.drawing-char-title{justify-content:space-between;align-items:center;margin-top:2px;display:flex}.drawing-char-title b{font-size:var(--pv-font-xs);color:var(--pv-accent-strong);background:var(--pv-accent-soft);border-radius:999px;padding:3px 7px}.drawing-char-list{flex-direction:column;gap:5px;min-height:0;display:flex;overflow:auto}.drawing-char-list button{text-align:left;width:100%;color:var(--pv-text);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:7px;grid-template-columns:27px minmax(0,1fr) auto;align-items:center;gap:8px;padding:8px;display:grid}.drawing-char-list button:hover{background:var(--pv-surface-3)}.drawing-char-list button.active{background:var(--pv-accent-soft);border-color:var(--pv-accent);box-shadow:inset 3px 0 var(--pv-accent-strong)}.drawing-char-list button>span:nth-child(2){min-width:0}.drawing-char-list strong,.drawing-char-list small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.drawing-char-list strong{font-size:12px}.drawing-char-list small{font-size:var(--pv-font-xs);color:var(--pv-muted);margin-top:2px}.drawing-char-list em{color:var(--pv-muted-2);font-style:normal;font-size:var(--pv-font-xs)}.drawing-char-list em.linked{color:var(--pv-success)}.drawing-center{background:var(--pv-canvas);flex-direction:column;display:flex}.drawing-toolbar{border-bottom:1px solid var(--pv-border);background:var(--pv-canvas-toolbar);justify-content:space-between;align-items:center;gap:10px;min-height:47px;padding:7px 9px;display:flex}.tool-group{align-items:center;gap:5px;display:flex}.tool-group button{background:var(--pv-surface-3);border:1px solid var(--pv-border-strong);color:var(--pv-text-soft);cursor:pointer;border-radius:6px;padding:6px 9px}.tool-group button:hover,.tool-group button.active{border-color:var(--pv-accent);color:var(--pv-text);background:var(--pv-accent-soft)}.tool-group button:disabled{opacity:.35;cursor:default}.tool-group span{text-align:center;min-width:48px;color:var(--pv-muted);font-size:var(--pv-font-xs)}.page-tools{margin-left:auto}.drawing-viewport{overscroll-behavior:contain;background:var(--pv-canvas);background-image:linear-gradient(var(--pv-canvas-grid) 1px,transparent 1px),linear-gradient(90deg,var(--pv-canvas-grid) 1px,transparent 1px);background-size:28px 28px;flex:1;min-height:0;position:relative;overflow:auto}.drawing-stage{background:var(--pv-canvas-paper);transform-origin:0 0;-webkit-user-select:none;user-select:none;touch-action:none;margin:24px;position:relative;box-shadow:0 12px 50px #000a}.drawing-stage.tool-pan{cursor:grab}.drawing-stage.tool-pan:active{cursor:grabbing}.drawing-document{pointer-events:none;object-fit:fill;width:100%;height:100%;display:block;position:absolute;inset:0}.drawing-box{border:2px solid var(--pv-annotation);background:color-mix(in srgb,var(--pv-annotation) 9%,transparent);cursor:pointer;z-index:3;min-width:3px;min-height:3px;padding:0;position:absolute}.drawing-box.active{border-color:var(--pv-annotation-active);background:color-mix(in srgb,var(--pv-annotation-active) 14%,transparent)}.drawing-box.draft{border-style:dashed;border-color:var(--pv-annotation-draft);background:color-mix(in srgb,var(--pv-annotation-draft) 12%,transparent);box-shadow:0 0 14px color-mix(in srgb,var(--pv-annotation-draft) 27%,transparent);pointer-events:none;z-index:4}.zone-bubble{border:2px solid var(--pv-on-accent);border-radius:50%;place-items:center;width:24px;height:24px;font-weight:850;top:-12px;left:-12px;box-shadow:0 3px 9px #0008;background:var(--pv-accent)!important;color:#fff!important;font-size:var(--pv-font-xs)!important;display:grid!important;position:absolute!important;overflow:visible!important}.drawing-box.active .zone-bubble,.drawing-box.draft .zone-bubble{background:var(--pv-accent-strong)!important}.ocr-zone-layer{position:static}.drawing-balloon{z-index:8;min-width:0;min-height:0;box-shadow:none;cursor:grab;touch-action:none;filter:drop-shadow(0 2px 2px #0006);background:0 0;border:0;border-radius:0;padding:0;line-height:0;position:absolute;transform:translate(-50%,-50%)}.drawing-balloon svg,.balloon-preview svg{width:100%;height:100%;display:block;overflow:visible}.drawing-balloon:hover,.drawing-balloon.active{filter:drop-shadow(0 0 2px white) drop-shadow(0 0 4px var(--pv-accent));z-index:9;background:0 0}.drawing-balloon:focus-visible{outline:2px solid var(--pv-accent);outline-offset:3px}.drawing-balloon.active{outline:2px solid var(--pv-accent);outline-offset:2px}.drawing-balloon:disabled{opacity:1;cursor:wait}.control-balloon{pointer-events:none;cursor:default}.balloon-leader{z-index:4;pointer-events:none;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.balloon-settings{border-bottom:1px solid var(--pv-border);background:var(--pv-surface);flex-shrink:0;max-height:50%;padding:12px;overflow:auto}.balloon-settings-head{align-items:center;gap:12px;margin-bottom:10px;display:flex}.balloon-settings-fields{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px;display:grid}.balloon-settings-fields label{min-width:0;font-size:var(--pv-font-xs);color:var(--pv-muted);flex-direction:column;gap:5px;display:flex}.balloon-settings-fields input,.balloon-settings-fields select{width:100%;min-width:0}.balloon-settings-fields input[type=color]{cursor:pointer;height:32px;padding:2px}.balloon-settings-fields input[type=range]{accent-color:var(--pv-accent);padding:0}.balloon-settings-fields .balloon-check{color:var(--pv-text);flex-direction:row;align-items:center}.balloon-check input{width:auto}.balloon-settings p{color:var(--pv-muted);font-size:var(--pv-font-xs);margin:10px 0}.balloon-settings p.balloon-error{color:var(--pv-danger)}.balloon-settings-actions{flex-wrap:wrap;gap:7px;display:flex}.balloon-settings-actions button:first-child{background:var(--pv-accent);color:var(--pv-on-accent)}.balloon-number-editor>div{align-items:center;gap:6px;display:flex}.balloon-number-editor label{min-width:0;color:var(--pv-muted);font-size:var(--pv-font-xs);flex:1;align-items:center;gap:7px;display:flex}.balloon-number-editor input{width:80px;min-width:0;padding:5px}.balloon-number-editor small{color:var(--pv-danger);margin-top:5px;display:block}.ocr-resize-handle{border:1px solid var(--pv-on-accent);background:var(--pv-annotation-active);z-index:12;border-radius:50%;width:9px;height:9px;position:absolute;box-shadow:0 1px 4px #0008}.drawing-empty{text-align:center;color:var(--pv-muted);flex-direction:column;justify-content:center;align-items:center;padding:30px;display:flex;position:absolute;inset:0}.drawing-empty h2{color:var(--pv-text);margin:12px 0 4px;font-size:18px}.drawing-empty p{max-width:390px;font-size:12px;line-height:1.5}.drawing-empty .file-btn{margin-top:13px}.empty-sheet{border:1px solid var(--pv-border-strong);width:82px;height:105px;color:var(--pv-accent-strong);background:var(--pv-surface-2);box-shadow:8px 8px 0 var(--pv-surface-3);border-radius:5px;place-items:center;font-weight:900;display:grid}.drawing-inspector{flex-direction:column;gap:13px;padding:15px;display:flex;overflow:auto}.drawing-inspector .measure-head h2{font-size:21px}.drawing-link-status{border:1px solid var(--pv-border);background:var(--pv-surface-2);border-radius:8px;justify-content:space-between;align-items:center;padding:10px;display:flex}.drawing-link-status span{color:var(--pv-muted);font-size:var(--pv-font-xs)}.drawing-link-status b{color:var(--pv-accent-strong);font-size:11px}.drawing-instructions{border-left:2px solid var(--pv-accent);background:var(--pv-surface-2);padding:12px}.drawing-instructions b{margin-bottom:3px;font-size:11px;display:block}.drawing-instructions p{font-size:var(--pv-font-xs);color:var(--pv-muted);margin:0 0 10px;line-height:1.45}.drawing-instructions p:last-child{margin-bottom:0}.bbox-readout{grid-template-columns:1fr 1fr;gap:5px;display:grid}.bbox-readout span{background:var(--pv-input);border:1px solid var(--pv-border);color:var(--pv-muted);font-size:var(--pv-font-xs);border-radius:6px;justify-content:space-between;padding:7px;display:flex}.bbox-readout b{color:var(--pv-text-soft)}.drawing-next{border-top:1px solid var(--pv-border);margin-top:auto;padding-top:13px}.drawing-next b{margin:4px 0 5px;font-size:13px;display:block}.drawing-next p{color:var(--pv-muted);font-size:var(--pv-font-xs);margin:0;line-height:1.5}.drawing-empty.compact{min-height:250px;position:static}@media (width<=1100px){.drawing-workspace{grid-template-columns:230px minmax(420px,1fr)}.drawing-inspector{z-index:8;width:300px;max-height:calc(100vh - 105px);position:absolute;top:88px;right:16px;box-shadow:0 15px 50px #000b}}@media (width<=760px){.drawing-workspace{grid-template-columns:1fr;height:auto;min-height:calc(100vh - 74px);padding:7px}.drawing-sidebar{max-height:330px}.drawing-center{height:65vh}.drawing-inspector{width:auto;max-height:none;position:static}.drawing-toolbar{flex-wrap:wrap}.page-tools{margin-left:0}.drawing-stage{margin:14px}}.manage-v2{gap:var(--pv-page-gap);flex:1;grid-template-columns:300px minmax(720px,1fr);min-height:0;display:grid}.product-master{flex-direction:column;min-height:0;padding:12px;display:flex}.manage-v2-head,.section-topline,.asset-preview-head,.admin-card-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.manage-v2-head>div span,.section-topline>div span,.asset-preview-head>div span,.char-editor-title span,.product-summary-title>div>span,.admin-card-head span,.admin-hero>div>span{color:var(--pv-accent-strong);font-size:var(--pv-font-xs);letter-spacing:.13em;font-weight:800;display:block}.manage-v2-head>div b,.section-topline>div b,.asset-preview-head>div b,.admin-card-head b{margin-top:3px;font-size:14px;display:block}.manage-v2-head>button:not(.ui-button),.section-topline button:not(.ui-button),.table-actions button:not(.ui-button),.admin-card-head>button:not(.ui-button){background:var(--pv-surface-3);border:1px solid var(--pv-border-strong);color:var(--pv-text-soft);cursor:pointer;border-radius:7px;padding:6px 9px}.product-master .search{margin:12px 0 8px}.product-master-list{flex-direction:column;flex:1;gap:6px;min-height:120px;display:flex;overflow:auto}.product-master-list>button{background:var(--pv-input);color:var(--pv-text);text-align:left;cursor:pointer;border:1px solid #0000;border-radius:9px;grid-template-columns:1fr auto auto;column-gap:5px;padding:10px;display:grid;position:relative}.product-master-list>button:hover{background:var(--pv-surface-3)}.product-master-list>button.active{background:var(--pv-accent-soft);border-color:var(--pv-accent);box-shadow:inset 3px 0 var(--pv-accent-strong)}.product-master-code{color:var(--pv-accent-strong);font-size:var(--pv-font-xs);letter-spacing:.05em;grid-column:1/-1;font-weight:850}.product-master-list strong{grid-column:1/-1;margin:3px 0 2px;font-size:13px}.product-master-list small{color:var(--pv-muted);white-space:nowrap;text-overflow:ellipsis;grid-column:1/2;overflow:hidden}.product-master-list i,.refs-cell i{font-style:normal;font-size:var(--pv-font-xs);color:var(--pv-muted-2);border:1px solid var(--pv-border);border-radius:999px;padding:2px 5px}.product-master-list i.ready,.refs-cell i.ready{color:var(--pv-success);border-color:var(--pv-success);background:var(--pv-success-bg)}.new-product-cta{border:1px dashed var(--pv-border-strong);background:var(--pv-canvas-toolbar);color:var(--pv-muted);cursor:pointer;border-radius:8px;margin-top:9px;padding:9px}.new-product-cta:hover{border-color:var(--pv-accent);color:var(--pv-text)}.product-detail{flex-direction:column;gap:10px;min-height:0;padding-right:2px;display:flex;overflow:auto}.product-summary{padding:14px}.product-summary-title{justify-content:space-between;align-items:flex-start;gap:15px;display:flex}.product-summary-title h2{margin:4px 0 0;font-size:23px}.product-summary-title h2 small{color:var(--pv-muted);margin-left:8px;font-size:14px;font-weight:500}.asset-pills{gap:6px;display:flex}.asset-pills span{border:1px solid var(--pv-border);color:var(--pv-muted-2);font-size:var(--pv-font-xs);border-radius:999px;padding:5px 8px;font-weight:800}.asset-pills span.ok{color:var(--pv-success);border-color:var(--pv-success);background:var(--pv-success-bg)}.product-form-row{grid-template-columns:1fr 1.6fr .55fr 1fr auto;align-items:end;gap:8px;margin-top:14px;display:grid}.product-form-row label,.operation-editor label,.char-form-grid label,.admin-card>label{font-size:var(--pv-font-xs);color:var(--pv-muted);text-transform:uppercase;letter-spacing:.06em}.product-form-row input,.product-form-row select,.operation-editor input,.char-form-grid input,.char-form-grid select,.admin-card input{background:var(--pv-input);border:1px solid var(--pv-border-strong);width:100%;color:var(--pv-text);text-transform:none;letter-spacing:0;border-radius:7px;outline:none;margin-top:4px;padding:8px;display:block}.product-actions{white-space:nowrap;padding-bottom:1px}.asset-preview-grid{grid-template-columns:1fr 1fr;gap:10px;min-height:315px;display:grid}.asset-preview-card{flex-direction:column;min-height:315px;padding:10px;display:flex}.asset-preview-head{height:40px}.asset-preview-body{border:1px solid var(--pv-border);background:var(--pv-canvas);border-radius:8px;flex:1;min-height:220px;position:relative;overflow:hidden}.cad-admin-preview .viewer-wrap{position:absolute;inset:0}.cad-admin-preview .viewer-status{font-size:var(--pv-font-xs);max-width:70%}.cad-admin-preview .viewer-tools,.cad-admin-preview .view-cube-wrap{transform-origin:100% 0;transform:scale(.82)}.cad-admin-preview .view-cube-wrap{transform-origin:0 0}.drawing-admin-preview iframe,.drawing-admin-preview img{object-fit:contain;background:#fff;border:0;width:100%;height:100%;display:block}.asset-empty{text-align:center;color:var(--pv-muted);flex-direction:column;justify-content:center;align-items:center;padding:25px;display:flex;position:absolute;inset:0}.asset-empty strong{color:var(--pv-text-soft);margin-bottom:5px}.asset-empty span{font-size:var(--pv-font-xs);max-width:270px;line-height:1.45}.asset-preview-foot{color:var(--pv-muted-2);font-size:var(--pv-font-xs);white-space:nowrap;text-overflow:ellipsis;justify-content:space-between;gap:10px;padding:7px 2px 0;display:flex;overflow:hidden}.asset-preview-foot a{color:var(--pv-accent-strong)}.operations-card,.characteristics-card{padding:12px}.section-topline{min-height:34px;margin-bottom:9px}.section-topline small{color:var(--pv-muted);font-weight:500}.section-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:7px;display:flex}.characteristics-topline{margin-bottom:7px}.operation-tabs{gap:7px;padding-bottom:5px;display:flex;overflow:auto}.operation-tabs>button{text-align:left;background:var(--pv-input);border:1px solid var(--pv-border);min-width:180px;color:var(--pv-text);cursor:pointer;border-radius:8px;grid-template-columns:28px 1fr;column-gap:7px;padding:8px;display:grid}.operation-tabs>button.active{background:var(--pv-accent-soft);border-color:var(--pv-accent)}.operation-tabs em{background:var(--pv-accent-soft);width:28px;height:28px;color:var(--pv-accent-strong);font-style:normal;font-size:var(--pv-font-xs);border-radius:7px;grid-row:1/3;place-items:center;font-weight:800;display:grid}.operation-tabs strong{font-size:var(--pv-font-sm)}.operation-tabs span{font-size:var(--pv-font-xs);color:var(--pv-muted);margin-top:2px}.operation-editor{border-top:1px solid var(--pv-border);grid-template-columns:160px 1fr auto;align-items:end;gap:8px;margin-top:7px;padding-top:9px;display:grid}.table-actions{gap:5px;display:flex}.char-table.v2{min-height:180px;max-height:280px}.refs-cell{gap:4px;display:flex}.char-editor-v2{border-top:1px solid var(--pv-border);margin-top:10px;padding-top:10px}.char-editor-title{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.char-editor-title b{margin-top:3px;display:block}.char-editor-title small{color:var(--pv-muted)}.char-form-grid{grid-template-columns:.7fr 1fr 1fr .65fr;gap:7px;display:grid}.char-form-grid .span2{grid-column:span 2}.char-form-grid .span4{grid-column:1/-1}.char-editor-v2 .advanced-grid label{font-size:var(--pv-font-xs);color:var(--pv-muted)}.char-editor-v2 .advanced-grid input{background:var(--pv-input);border:1px solid var(--pv-border-strong);width:100%;color:var(--pv-text);border-radius:6px;margin-top:3px;padding:7px}.char-editor-footer{justify-content:space-between;align-items:center;gap:10px;margin-top:9px;display:flex}.char-editor-footer>span{font-size:var(--pv-font-xs);color:var(--pv-muted)}@media (width<=1350px){.manage-v2{grid-template-columns:250px minmax(650px,1fr)}.product-form-row{grid-template-columns:1fr 1.4fr .5fr 1fr}.asset-preview-grid{grid-template-columns:1fr}.asset-preview-card{min-height:300px}}.admin-tools{gap:var(--pv-page-gap);flex-direction:column;flex:1;width:100%;min-width:0;max-width:100%;min-height:0;padding-right:2px;display:flex;overflow:hidden auto}.admin-tools>*{flex:none;min-width:0;max-width:100%}.admin-hero{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;min-width:0;padding:18px;display:flex}.admin-hero>div{min-width:0}.admin-hero h2{margin:4px 0 2px;font-size:25px}.admin-hero p{color:var(--pv-muted);margin:0}.server-health{border:1px solid var(--pv-border);background:var(--pv-surface-2);border-radius:var(--pv-radius-sm);align-items:center;gap:9px;padding:9px 12px;display:flex}.server-health>i{background:var(--pv-success);width:9px;height:9px;box-shadow:0 0 12px color-mix(in srgb,var(--pv-success) 65%,transparent);border-radius:50%}.server-health b,.server-health span{display:block}.server-health span{color:var(--pv-muted);font-size:var(--pv-font-xs);margin-top:2px}.admin-metrics{gap:var(--pv-page-gap);grid-template-columns:repeat(4,minmax(0,1fr));min-width:0;display:grid}.admin-metrics article{padding:15px}.admin-metrics span,.admin-metrics small{color:var(--pv-muted);font-size:var(--pv-font-xs);display:block}.admin-metrics b{margin:5px 0;font-size:25px;display:block}.admin-grid{gap:var(--pv-page-gap);grid-template-columns:repeat(2,minmax(0,1fr));min-width:0;display:grid}.admin-card{min-width:0;max-width:100%;padding:15px;overflow:visible}.admin-card>label{margin-top:10px;display:block}.admin-card .primary{margin-top:12px}.admin-help{color:var(--pv-muted);font-size:var(--pv-font-xs);line-height:1.55}.diag-list{margin-top:8px}.diag-list>div{border-bottom:1px solid var(--pv-border);font-size:var(--pv-font-xs);grid-template-columns:145px minmax(0,1fr);gap:10px;padding:8px 0;display:grid}.diag-list span{color:var(--pv-muted)}.diag-list b{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.admin-wide{grid-column:1/-1}.admin-card-head em{color:var(--pv-muted);border:1px solid var(--pv-border-strong);font-style:normal;font-size:var(--pv-font-xs);border-radius:999px;padding:4px 8px}.future-tools{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:12px;display:grid}.future-tools>div{border:1px solid var(--pv-border);background:var(--pv-surface-2);border-radius:var(--pv-radius-sm);min-width:0;padding:12px}.future-tools strong,.future-tools span{display:block}.future-tools span{color:var(--pv-muted);font-size:var(--pv-font-xs);margin-top:4px;line-height:1.45}.security-note{border:1px solid color-mix(in srgb,var(--pv-warning) 45%,var(--pv-border));background:var(--pv-warning-bg);color:var(--pv-warning);border-radius:var(--pv-radius-sm);font-size:var(--pv-font-xs);margin-top:10px;padding:9px}.admin-card-head{flex-wrap:wrap;align-items:flex-start;min-width:0}.admin-card-head>div{min-width:0}.admin-card-head b,.admin-card-head span,.admin-hero h2,.admin-hero p{overflow-wrap:anywhere}.admin-card input,.admin-card select,.admin-card button{max-width:100%}.admin-danger-zone{border-color:color-mix(in srgb,var(--pv-danger) 45%,var(--pv-border));background:color-mix(in srgb,var(--pv-danger) 4%,var(--pv-surface))}.admin-danger-zone .admin-card-head span{color:var(--pv-danger)}.admin-danger-actions{flex-wrap:wrap;align-items:end;gap:8px;margin-top:10px;display:flex}.admin-danger-actions label{min-width:240px;color:var(--pv-muted);font-size:var(--pv-font-xs);text-transform:uppercase;letter-spacing:.06em}.admin-danger-actions input{background:var(--pv-input);border:1px solid var(--pv-border-strong);width:100%;color:var(--pv-text);text-transform:none;border-radius:7px;outline:none;margin-top:4px;padding:8px;display:block}.admin-danger-actions button:not(.ui-button){min-height:34px}.factory-reset-box{border-top:1px solid color-mix(in srgb,var(--pv-danger) 35%,var(--pv-border));margin-top:14px;padding-top:12px}.factory-reset-box>div:first-child b,.factory-reset-box>div:first-child span{display:block}.factory-reset-box>div:first-child b{color:var(--pv-danger);font-size:var(--pv-font-xs)}.factory-reset-box>div:first-child span{color:var(--pv-muted);font-size:var(--pv-font-xs);margin-top:3px;line-height:1.45}@media (width<=1250px){.admin-metrics{grid-template-columns:1fr 1fr}.admin-grid{grid-template-columns:1fr}.admin-wide{grid-column:auto}.future-tools{grid-template-columns:1fr 1fr}}@media (width<=900px){.admin-metrics,.future-tools{grid-template-columns:1fr}.user-form-grid{grid-template-columns:1fr 1fr}.role-help{grid-template-columns:1fr}.server-health{width:100%}}.control-media-panel{position:relative}.control-media-switch{z-index:9;background:color-mix(in srgb,var(--pv-surface-2) 90%,transparent);border:1px solid var(--pv-border-strong);border-radius:9px;padding:3px;display:flex;position:absolute;top:11px;left:50%;transform:translate(-50%);box-shadow:0 6px 20px #0004}.control-media-switch button{color:var(--pv-muted);cursor:pointer;background:0 0;border:0;border-radius:6px;padding:6px 12px;font-size:11px;font-weight:800}.control-media-switch button.active{background:var(--pv-accent-soft);color:var(--pv-text)}.control-media-switch button:disabled{opacity:.3;cursor:default}.control-media-empty{text-align:center;color:var(--pv-muted);flex-direction:column;justify-content:center;align-items:center;gap:5px;display:flex;position:absolute;inset:0}.control-media-empty strong{color:var(--pv-text-soft);font-size:17px}.control-media-empty span{max-width:360px;font-size:11px}.control-plan{background:var(--pv-canvas);flex-direction:column;display:flex;position:absolute;inset:0}.control-plan-toolbar{background:var(--pv-canvas-toolbar);border-bottom:1px solid var(--pv-border-strong);height:49px;color:var(--pv-muted);font-size:var(--pv-font-xs);justify-content:space-between;align-items:center;gap:8px;padding:7px 10px;display:flex}.control-plan-toolbar>span{text-overflow:ellipsis;white-space:nowrap;max-width:40%;overflow:hidden}.control-plan-toolbar>div{align-items:center;gap:5px;display:flex}.control-plan-toolbar button{background:var(--pv-surface-3);border:1px solid var(--pv-border-strong);color:var(--pv-text-soft);cursor:pointer;border-radius:6px;padding:5px 8px}.control-plan-toolbar button:disabled{opacity:.3}.control-plan-toolbar b{text-align:center;min-width:38px}.control-plan-viewport{background:var(--pv-canvas);background-image:linear-gradient(var(--pv-canvas-grid) 1px,transparent 1px),linear-gradient(90deg,var(--pv-canvas-grid) 1px,transparent 1px);cursor:grab;-webkit-user-select:none;user-select:none;touch-action:none;background-size:28px 28px;flex:1;min-height:0;overflow:auto}.control-plan-viewport.is-panning{cursor:grabbing}.control-plan-viewport.is-panning .control-plan-stage{pointer-events:none}.control-plan-stage{background:#fff;margin:22px;position:relative;box-shadow:0 8px 28px #0005}.control-plan-document{object-fit:fill;width:100%;height:100%;display:block;position:absolute;inset:0}.control-plan-box{--control-type-color:var(--pv-type-attribute);border:3px solid var(--control-type-color);background:color-mix(in srgb,var(--control-type-color) 14%,transparent);box-shadow:0 0 0 2px #fff8,0 0 18px color-mix(in srgb,var(--control-type-color) 42%,transparent);pointer-events:none;position:absolute}.control-plan-box span{background:var(--control-type-color);color:var(--pv-on-accent);font-size:var(--pv-font-xs);white-space:nowrap;border-radius:5px;padding:4px 7px;font-weight:800;position:absolute;top:-27px;left:0}.control-plan-box.type-dimension{--control-type-color:var(--pv-type-dimension)}.control-plan-box.type-diameter{--control-type-color:var(--pv-type-diameter)}.control-plan-box.type-radius{--control-type-color:var(--pv-type-radius)}.control-plan-box.type-chamfer{--control-type-color:var(--pv-type-chamfer)}.control-plan-box.type-angle{--control-type-color:var(--pv-type-angle)}.control-plan-box.type-thread{--control-type-color:var(--pv-type-thread)}.asset-head-actions{align-items:center;gap:6px;display:flex}.asset-head-actions>button{background:var(--pv-surface-3);border:1px solid var(--pv-border-strong);color:var(--pv-text-soft);cursor:pointer;border-radius:6px;padding:6px 9px}.asset-head-actions>button.active{border-color:var(--pv-warning);color:var(--pv-warning);background:var(--pv-warning-bg)}.asset-head-actions>button:disabled{opacity:.35}.admin-link-bar{justify-content:flex-end;bottom:12px;left:12px;right:12px}.admin-link-bar span{margin-right:auto}.product-photos-card{padding:12px}.photo-strip{gap:8px;min-height:96px;display:flex;overflow:auto}.photo-strip figure{border:1px solid var(--pv-border);background:var(--pv-input);border-radius:8px;flex:0 0 150px;margin:0;overflow:hidden}.photo-strip img{object-fit:cover;width:100%;height:95px;display:block}.photo-strip figcaption{color:var(--pv-muted);font-size:var(--pv-font-xs);align-items:center;gap:5px;padding:5px 7px;display:flex}.photo-strip figcaption span{white-space:nowrap;text-overflow:ellipsis;flex:1;overflow:hidden}.photo-strip figcaption button{color:var(--pv-danger);cursor:pointer;background:0 0;border:0;font-size:17px}.photo-empty{border:1px dashed var(--pv-border-strong);width:100%;color:var(--pv-muted-2);font-size:var(--pv-font-xs);text-align:center;border-radius:8px;place-items:center;padding:18px;display:grid}.auth-screen{background:radial-gradient(circle at 50% 0,var(--pv-bg-top),var(--pv-bg) 55%);place-items:center;min-height:100vh;padding:24px;display:grid}.auth-card{flex-direction:column;gap:12px;width:min(430px,100%);padding:28px;display:flex}.auth-logo{color:var(--pv-accent-strong);letter-spacing:.15em;font-size:11px;font-weight:900}.auth-card h1{margin:2px 0;font-size:26px}.auth-card p{color:var(--pv-muted);margin:0 0 5px;font-size:12px;line-height:1.55}.auth-card label{font-size:var(--pv-font-xs);color:var(--pv-muted);text-transform:uppercase;letter-spacing:.07em}.auth-card input{border-radius:8px;width:100%;margin-top:5px;padding:11px;display:block}.auth-card .primary{border-radius:8px;margin-top:5px;padding:11px;font-weight:850}.auth-error{border:1px solid color-mix(in srgb,var(--pv-danger) 50%,var(--pv-border));background:var(--pv-danger-bg);color:var(--pv-danger);border-radius:8px;padding:9px;font-size:11px}.workspace-menu{overscroll-behavior:contain;max-height:calc(100dvh - 80px);overflow-y:auto}.workspace-menu button:not(.theme-toggle):not(.logout-button){flex-direction:column;align-items:flex-start;gap:2px;display:flex}.workspace-menu button span{font-size:13px}.workspace-menu button small{font-size:var(--pv-font-xs);color:var(--pv-muted);font-weight:500}.menu-section-label{color:var(--pv-muted-2);font-size:var(--pv-font-xs);letter-spacing:.11em;text-transform:uppercase;border-top:1px solid var(--pv-border);margin-top:3px;padding:8px 10px 3px;font-weight:900}.menu-user{padding:8px 10px}.menu-user b,.menu-user span{display:block}.menu-user b{font-size:12px}.menu-user span{font-size:var(--pv-font-xs);color:var(--pv-muted);margin-top:2px}.logout-button{color:var(--pv-danger)!important}.user-chip{border:1px solid var(--pv-border-strong);background:var(--pv-surface-2);border-radius:7px;flex-direction:column;justify-content:center;align-self:end;min-width:125px;height:35px;padding:4px 10px;display:flex}.user-chip span,.user-chip b{display:block}.user-chip span{font-size:var(--pv-font-xs);color:var(--pv-muted);text-transform:uppercase;letter-spacing:.06em}.user-chip b{font-size:var(--pv-font-xs);color:var(--pv-text);margin-top:1px}.methods-shell{flex-direction:column;flex:1;min-height:0;display:flex}.methods-content{flex:1;min-height:0;display:flex}.methods-content>.manage-v2,.methods-content>.drawing-workspace,.methods-content>.import-view{flex:1;min-height:0}.product-detail>section{flex:none}.product-summary{min-height:116px}.product-photos-card{min-height:118px}.admin-users{padding:15px}.user-admin-grid{grid-template-columns:minmax(210px,.75fr) minmax(0,1.55fr);gap:12px;min-width:0;margin-top:12px;display:grid}.user-admin-grid>*{min-width:0}.user-list{flex-direction:column;gap:5px;max-height:330px;display:flex;overflow:auto}.user-list>button{text-align:left;background:var(--pv-surface-2);border:1px solid var(--pv-border);color:var(--pv-text);cursor:pointer;border-radius:8px;grid-template-columns:34px 1fr auto;align-items:center;gap:8px;padding:7px;display:grid}.user-list>button.active{background:var(--pv-accent-soft);border-color:var(--pv-accent)}.user-avatar{background:var(--pv-surface-3);width:30px;height:30px;color:var(--pv-accent-strong);border-radius:50%;place-items:center;font-weight:900;display:grid}.user-list b,.user-list small{display:block}.user-list b{font-size:11px}.user-list small{font-size:var(--pv-font-xs);color:var(--pv-muted);margin-top:2px}.user-list i{font-style:normal;font-size:var(--pv-font-xs);border-radius:999px;padding:3px 6px}.user-list i.on{background:var(--pv-success-bg);color:var(--pv-success)}.user-list i.off{background:var(--pv-danger-bg);color:var(--pv-danger)}.user-editor{border:1px solid var(--pv-border);background:var(--pv-surface-2);border-radius:9px;padding:12px}.user-editor-title span{color:var(--pv-accent-strong);font-size:var(--pv-font-xs);letter-spacing:.1em;font-weight:850;display:block}.user-editor-title b{margin-top:3px;font-size:15px;display:block}.user-form-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:10px;display:grid}.user-form-grid>*{min-width:0}.user-form-grid label,.user-active{font-size:var(--pv-font-xs);color:var(--pv-muted);text-transform:uppercase;letter-spacing:.06em}.user-form-grid input,.user-form-grid select{border-radius:7px;width:100%;margin-top:4px;padding:8px;display:block}.user-active{text-transform:none;letter-spacing:0;align-items:center;gap:6px;margin-top:9px;display:flex}.user-active input{width:auto}.user-editor-actions{flex-wrap:wrap;gap:7px;margin-top:10px;display:flex}.user-editor-actions button:not(.ui-button){border:1px solid var(--pv-border-strong);background:var(--pv-surface);color:var(--pv-text-soft);cursor:pointer;border-radius:7px;padding:7px 10px}.badge-box{border:1px solid var(--pv-warning);background:var(--pv-warning-bg);border-radius:8px;margin-top:10px;padding:10px}.badge-box>span{font-size:var(--pv-font-xs);color:var(--pv-warning);letter-spacing:.08em;font-weight:900;display:block}.badge-box code{word-break:break-all;font-size:var(--pv-font-xs);color:var(--pv-text);margin:7px 0;display:block}.badge-box p{color:var(--pv-muted);font-size:var(--pv-font-xs);margin:6px 0 0;line-height:1.4}.role-help{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin-top:10px;display:grid}.role-help>div{border:1px solid var(--pv-border);background:var(--pv-surface-2);border-radius:7px;min-width:0;padding:8px}.role-help b,.role-help span{display:block}.role-help b{font-size:var(--pv-font-xs)}.role-help span{font-size:var(--pv-font-xs);color:var(--pv-muted);margin-top:2px}@media (width<=1000px){.user-admin-grid{grid-template-columns:1fr}.user-form-grid{grid-template-columns:1fr 1fr}.role-help{grid-template-columns:1fr}.methods-tabs{overflow:auto}.methods-tabs button{min-width:145px}}.spec-grid.spec-picks{grid-template-columns:repeat(3,1fr);gap:7px;display:grid}.spec-grid.spec-picks span,.spec-grid.spec-picks b{display:block}.spec-grid.spec-picks span{font-size:var(--pv-font-xs);color:var(--pv-muted);font-weight:500}.spec-grid.spec-picks b{margin-top:3px;font-size:13px}.ocr-workspace{grid-template-columns:235px minmax(520px,1fr) 400px}.ocr-workspace .drawing-sidebar{gap:9px}.ocr-scan-button{border:1px solid var(--pv-accent);background:var(--pv-accent-soft);width:100%;color:var(--pv-accent-strong);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;gap:8px;padding:9px;font-weight:850;display:flex}.ocr-scan-button:hover{background:color-mix(in srgb,var(--pv-accent-soft) 65%,var(--pv-accent))}.ocr-scan-button:disabled{opacity:.45;cursor:default}.ocr-batch-actions{grid-template-columns:1fr 1fr;gap:5px;display:grid}.ocr-batch-actions button{border:1px solid var(--pv-border);background:var(--pv-surface-2);color:var(--pv-text-soft);font-size:var(--pv-font-xs);cursor:pointer;border-radius:7px;justify-content:space-between;align-items:center;gap:4px;padding:7px;display:flex}.ocr-batch-actions button b{background:var(--pv-surface-3);min-width:18px;height:18px;color:var(--pv-accent-strong);font-size:var(--pv-font-xs);border-radius:999px;place-items:center;display:grid}.ocr-batch-actions button.ready{border-color:var(--pv-success);background:var(--pv-success-bg);color:var(--pv-success)}.ocr-batch-actions button:disabled{opacity:.35;cursor:default}.ocr-toolbar-note{text-align:center;color:var(--pv-muted);font-size:var(--pv-font-xs);white-space:nowrap;text-overflow:ellipsis;flex:1;overflow:hidden}.drawing-box.ocr-box{--ocr-type-color:var(--pv-type-attribute)}.drawing-box.ocr-box.type-dimension{--ocr-type-color:var(--pv-type-dimension)}.drawing-box.ocr-box.type-diameter{--ocr-type-color:var(--pv-type-diameter)}.drawing-box.ocr-box.type-radius{--ocr-type-color:var(--pv-type-radius)}.drawing-box.ocr-box.type-chamfer{--ocr-type-color:var(--pv-type-chamfer)}.drawing-box.ocr-box.type-angle{--ocr-type-color:var(--pv-type-angle)}.drawing-box.ocr-box.type-thread{--ocr-type-color:var(--pv-type-thread)}.drawing-box.legacy-linked{border-style:dotted;border-color:var(--pv-muted);background:color-mix(in srgb,var(--pv-muted) 6%,transparent)}.drawing-box.legacy-linked .zone-bubble{background:var(--pv-muted-2)!important}.drawing-stage.tool-box{cursor:crosshair}.ocr-workspace .ocr-inspector{width:auto;max-height:none;position:static}.ocr-draft-status{font-size:var(--pv-font-xs);color:var(--pv-warning)}.ocr-review-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.ocr-review-head>b{font-size:var(--pv-font-sm)}.ocr-review-head>b span{color:var(--pv-muted);margin-left:5px}.ocr-zone-review{border-bottom:1px solid var(--pv-border);flex-shrink:0;gap:8px;padding-bottom:10px;display:grid}.ocr-zone-row{align-items:center;gap:8px;min-width:0;display:flex}.ocr-zone-row>input{width:16px;height:16px;accent-color:var(--pv-accent);flex-shrink:0;margin:0}.ocr-zone-row>.ocr-zone-button{flex:1;min-width:0}.ocr-zone-delete{border:1px solid var(--pv-border);background:var(--pv-surface-2);min-width:32px;min-height:32px;color:var(--pv-muted);cursor:pointer;border-radius:6px;flex-shrink:0;place-items:center;padding:5px;display:grid}.ocr-zone-delete:hover,.ocr-zone-delete.confirm-danger{border-color:var(--pv-danger);background:var(--pv-danger-bg);color:var(--pv-danger)}.ocr-zone-delete.confirm-danger{font-size:var(--pv-font-xs);padding-inline:8px}.ocr-zone-delete:focus-visible{outline:2px solid var(--pv-danger);outline-offset:1px}.ocr-selection-actions{flex-wrap:wrap;gap:6px;display:flex}.ocr-selection-actions>button,.ocr-promotion-pending>button{border:1px solid var(--pv-border-strong);background:var(--pv-surface-2);color:var(--pv-text);font-size:var(--pv-font-xs);cursor:pointer;border-radius:6px;padding:6px 8px}.ocr-selection-actions>button.danger{border-color:var(--pv-danger);color:var(--pv-danger);background:var(--pv-danger-bg)}.ocr-review-head>button{border:1px solid var(--pv-border);background:var(--pv-surface-2);color:var(--pv-text);cursor:pointer;border-radius:6px;padding:6px 8px}.ocr-zone-nav{flex-shrink:0;gap:4px;max-height:144px;display:grid;overflow:auto}.ocr-zone-button{text-align:left;border:1px solid var(--pv-border);background:var(--pv-surface-2);min-height:32px;color:var(--pv-text);cursor:pointer;border-radius:6px;grid-template-columns:22px minmax(0,1fr) 16px;align-items:center;gap:6px;padding:5px 7px;display:grid}.ocr-zone-button>b{font-size:var(--pv-font-xs);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.ocr-zone-button>span{color:var(--pv-muted);font-size:var(--pv-font-xs)}.ocr-zone-button>i{color:var(--pv-success);font-style:normal}.ocr-zone-button.active{border-color:var(--pv-accent);background:var(--pv-accent-soft);box-shadow:inset 3px 0 var(--pv-accent)}.ocr-zone-button.validated>span{color:var(--pv-success)}.ocr-zone-button:focus-visible{outline:2px solid var(--pv-accent);outline-offset:1px}.ocr-scan-scope{text-align:center;color:var(--pv-muted);font-size:var(--pv-font-xs);display:block}.ocr-cleanup>summary{color:var(--pv-muted);font-size:var(--pv-font-xs);cursor:pointer;padding:5px 0}.ocr-cleanup .ocr-clear-actions{margin-top:6px}.drawing-sidebar>.message{font-size:var(--pv-font-xs);overflow-wrap:anywhere}.ocr-inspector-head{justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.ocr-inspector-head>div{min-width:0}.ocr-inspector-head span{font-size:var(--pv-font-xs);color:var(--pv-accent-strong);letter-spacing:.08em;font-weight:900}.ocr-inspector-head h2{overflow-wrap:anywhere;margin:4px 0 0;font-size:18px;line-height:1.15}.ocr-verdict{font-size:var(--pv-font-xs);white-space:nowrap;border:1px solid var(--pv-border);border-radius:999px;padding:5px 7px}.ocr-verdict.sure,.ocr-verdict.validated{color:var(--pv-success);background:var(--pv-success-bg);border-color:color-mix(in srgb,var(--pv-success) 42%,var(--pv-border))}.ocr-verdict.review{color:var(--pv-warning);background:var(--pv-warning-bg);border-color:color-mix(in srgb,var(--pv-warning) 42%,var(--pv-border))}.ocr-crop{border:1px solid var(--pv-border);background:#fff;border-radius:8px;place-items:center;height:160px;min-height:160px;padding:4px;display:grid;overflow:hidden}.ocr-crop canvas{object-fit:contain;width:100%;height:150px}.ocr-crop canvas[hidden]{display:none}.ocr-crop span{color:#526777;font-size:var(--pv-font-xs)}.ocr-parsed{border:1px solid var(--pv-border);background:var(--pv-surface-2);border-radius:8px;padding:8px}.ocr-parsed>span{font-size:var(--pv-font-xs);letter-spacing:.08em;color:var(--pv-accent-strong);font-weight:900}.ocr-parsed>div{grid-template-columns:1fr 1fr 1fr 1fr;gap:4px;margin-top:6px;display:grid}.ocr-parsed label{font-size:var(--pv-font-xs);color:var(--pv-muted)}.ocr-parsed b{color:var(--pv-text);font-size:var(--pv-font-xs);margin-top:2px;display:block}.ocr-value-editor>.ocr-value-title{grid-template-columns:none;justify-content:space-between;align-items:center;gap:8px;margin-top:0;display:flex}.ocr-value-title span{font-size:var(--pv-font-xs);letter-spacing:.08em;color:var(--pv-accent-strong);font-weight:900}.ocr-value-title b{border:1px solid color-mix(in srgb,var(--pv-warning) 40%,var(--pv-border));border-radius:999px;padding:2px 5px;font-size:var(--pv-font-xs)!important;color:var(--pv-warning)!important;margin:0!important;display:inline-block!important}.ocr-value-editor>.ocr-value-grid{grid-template-columns:1fr 1fr;gap:6px;margin-top:7px;display:grid}.ocr-value-grid label{font-size:var(--pv-font-xs);color:var(--pv-muted);flex-direction:column;gap:3px;display:flex}.ocr-value-grid input,.ocr-value-grid select{border:1px solid var(--pv-border);background:var(--pv-surface-3);width:100%;min-width:0;color:var(--pv-text);border-radius:6px;padding:7px 8px;font-size:11px;font-weight:800}.ocr-value-grid input:focus,.ocr-value-grid select:focus{border-color:var(--pv-accent);box-shadow:0 0 0 1px color-mix(in srgb,var(--pv-accent) 35%,transparent);outline:none}.ocr-value-editor>.ocr-value-foot{grid-template-columns:none;justify-content:space-between;align-items:center;gap:8px;margin-top:7px;display:flex}.ocr-value-foot span{font-size:var(--pv-font-xs);color:var(--pv-muted);line-height:1.3}.ocr-value-foot button{border:1px solid var(--pv-border-strong);background:var(--pv-surface-3);color:var(--pv-text-soft);font-size:var(--pv-font-xs);cursor:pointer;border-radius:6px;flex:none;padding:5px 8px}.ocr-value-foot button:disabled{opacity:.35;cursor:default}.ocr-issues{flex-wrap:wrap;gap:4px;display:flex}.ocr-issues span{font-size:var(--pv-font-xs);border:1px solid color-mix(in srgb,var(--pv-warning) 40%,var(--pv-border));background:var(--pv-warning-bg);color:var(--pv-warning);border-radius:999px;padding:3px 6px}.ocr-primary-actions{flex-wrap:wrap;align-items:stretch;gap:6px;display:flex}.ocr-primary-actions>button{flex:1;min-height:38px}.ocr-primary-actions>button,.ocr-reocr-group>button{border:1px solid var(--pv-border-strong);background:var(--pv-surface-2);color:var(--pv-text-soft);cursor:pointer;border-radius:7px;padding:8px}.ocr-primary-actions>button:first-child{background:var(--pv-accent);border-color:var(--pv-accent);color:var(--pv-on-accent);font-weight:850}.ocr-primary-actions button:disabled{opacity:.4;cursor:default}.ocr-reocr-group{flex:1;gap:6px;display:flex}.ocr-reocr-group>button{white-space:nowrap;flex:1;min-height:38px}.ocr-reocr-group>button.active{border-color:var(--pv-accent);background:var(--pv-accent-soft);color:var(--pv-accent-strong)}.ocr-created{border:1px solid color-mix(in srgb,var(--pv-success) 38%,var(--pv-border));background:var(--pv-success-bg);color:var(--pv-success);text-align:center;font-size:var(--pv-font-xs);border-radius:7px;padding:8px;font-weight:850}.ocr-thumbnail-tools{color:var(--pv-muted);font-size:var(--pv-font-xs);align-items:center;gap:6px;display:flex}.ocr-spinner{vertical-align:middle;flex:none;width:16px;height:16px;animation:.85s linear infinite ocr-spin}@keyframes ocr-spin{to{transform:rotate(360deg)}}.ocr-progress{color:var(--pv-accent-strong);font-size:var(--pv-font-sm);align-items:center;gap:8px;padding:8px 0;display:flex}.ocr-document-info{border-top:1px solid var(--pv-border);font-size:var(--pv-font-sm);padding-top:8px}.ocr-document-info>summary{cursor:pointer;color:var(--pv-text);font-weight:750}.ocr-document-form{gap:8px;margin-top:10px;display:grid}.ocr-document-form small{color:var(--pv-muted);line-height:1.5}.ocr-document-form label{color:var(--pv-muted);font-size:var(--pv-font-xs);gap:4px;display:grid}.ocr-document-form input,.ocr-document-form select{box-sizing:border-box;width:100%;min-width:0}.ocr-document-form>button{border:1px solid var(--pv-accent);background:var(--pv-accent);color:var(--pv-on-accent);cursor:pointer;border-radius:7px;padding:9px}.ocr-document-form>button:disabled{opacity:.4;cursor:default}.ocr-document-text{max-height:180px;color:var(--pv-text-soft);font-size:var(--pv-font-xs);overflow:auto}.ocr-document-text p{overflow-wrap:anywhere;margin:4px 0}.ocr-thumbnail-tools>span{flex:1}.ocr-thumbnail-tools>button{border:1px solid var(--pv-border-strong);background:var(--pv-surface-2);min-height:28px;color:var(--pv-text);cursor:pointer;border-radius:6px;padding:4px 10px}.ocr-thumbnail-tools>button:disabled{opacity:.4;cursor:default}.ocr-reference-toggle{width:100%;color:var(--pv-muted);font-size:var(--pv-font-xs);text-align:left;cursor:pointer;background:0 0;border:0;margin:6px 0;padding:4px}.ocr-reference-toggle[aria-pressed=true]{color:var(--pv-accent)}.ocr-sheet-reference-note{border:1px solid var(--pv-border);color:var(--pv-muted);font-size:var(--pv-font-xs);border-radius:7px;gap:8px;padding:8px;display:grid}.ocr-sheet-reference-note>button{border:1px solid var(--pv-border-strong);background:var(--pv-surface-2);color:var(--pv-text);cursor:pointer;border-radius:6px;padding:6px}.ocr-verdict.reference{background:var(--pv-surface-2);color:var(--pv-muted);border-color:var(--pv-border-strong)}.ocr-value-foot{justify-content:flex-start!important}@media (width<=1200px){.ocr-workspace{grid-template-columns:190px minmax(0,1fr) 300px}.ocr-workspace .drawing-toolbar{flex-wrap:wrap}}@media (width<=880px){.ocr-workspace{grid-template-columns:1fr}.ocr-workspace .drawing-sidebar{max-height:380px}.ocr-workspace .drawing-center{height:62vh}.ocr-inspector{width:auto!important;max-height:none!important;position:static!important}.ocr-toolbar-note{display:none}}.control-top-fields{align-items:flex-end}.part-chip{border:1px solid var(--pv-border-strong);background:var(--pv-surface-2);border-radius:7px;flex-direction:column;justify-content:center;min-width:150px;height:35px;padding:5px 10px;display:flex}.part-chip span{font-size:var(--pv-font-xs);color:var(--pv-muted);text-transform:uppercase;letter-spacing:.08em}.part-chip b{color:var(--pv-text);white-space:nowrap;text-overflow:ellipsis;font-size:11px;overflow:hidden}.control-panel-v2{padding:13px;overflow:auto}.control-panel-v2 .measure-head.compact{gap:9px}.control-panel-v2 .measure-head.compact h2{margin:0;font-size:23px;line-height:1.12}.control-panel-v2 .measure-head.compact p{font-size:11px}.control-panel-v2 .spec-grid{margin:13px 0 12px}.control-panel-v2 .spec-grid.spec-picks span{font-size:var(--pv-font-xs)}.control-panel-v2 .spec-grid.spec-picks b{font-size:12px}.control-panel-v2 .measure-input label{font-size:var(--pv-font-xs);margin-bottom:4px}.control-panel-v2 .measure-input input{border-radius:9px;padding:10px 11px;font-size:30px}.control-panel-v2 .live-status{margin:9px 0 7px;padding:9px;font-size:12px}.control-panel-v2 .limits.inline{font-size:var(--pv-font-xs);flex-wrap:wrap;justify-content:center;gap:5px;line-height:1.35;display:flex}.control-panel-v2 .limits.inline i{color:var(--pv-muted-2);font-style:normal}.control-panel-v2 .validate{margin-top:10px;padding:10px}.control-secondary-row{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:7px;margin-top:6px;display:grid}.control-secondary-row.armed{grid-template-columns:minmax(0,1fr) auto auto}.control-secondary-row button:not(.ui-button){border:1px solid var(--pv-border);background:var(--pv-surface-2);color:var(--pv-muted);font-size:var(--pv-font-xs);cursor:pointer;border-radius:6px;padding:6px 8px}.control-secondary-row button:not(.ui-button):disabled{opacity:.35}.control-secondary-row span{text-align:right;min-width:38px;color:var(--pv-muted);font-size:var(--pv-font-xs)}.control-panel-v2 .history.compact-history{margin-top:12px;padding-top:8px}.control-panel-v2 .history-chart{height:92px}.control-panel-v2 .empty-chart{height:72px}.control-panel-v2 .section-label{font-size:var(--pv-font-xs);margin-bottom:5px}.control-panel-v2 .message{font-size:var(--pv-font-xs);min-height:13px;margin-top:5px}.control-empty-state{text-align:center;flex-direction:column;justify-content:center;align-items:center;height:100%;padding:20px;display:flex}.control-empty-state>span{font-size:var(--pv-font-xs);color:var(--pv-accent-strong);letter-spacing:.12em;font-weight:900}.control-empty-state h2{margin:6px 0;font-size:21px}.control-empty-state p{max-width:260px;color:var(--pv-muted);font-size:var(--pv-font-xs);margin:0 0 12px;line-height:1.5}.control-empty-state .primary{border-radius:7px;padding:8px 11px}.next-serial-preview{color:var(--pv-text);border:1px solid var(--pv-border);background:var(--pv-surface-2);letter-spacing:.04em;border-radius:8px;margin:6px 0 2px;padding:10px 16px;font-size:21px;font-weight:900}.part-summary{flex-direction:column;gap:10px;min-height:100%;display:flex}.part-summary-head{border-bottom:1px solid var(--pv-border);justify-content:space-between;align-items:flex-start;gap:10px;padding-bottom:9px;display:flex}.part-summary-head>div>span{color:var(--pv-accent-strong);font-size:var(--pv-font-xs);letter-spacing:.1em;font-weight:900;display:block}.part-summary-head h2{margin:3px 0 1px;font-size:21px}.part-summary-head p{color:var(--pv-muted);font-size:var(--pv-font-xs);margin:0}.part-result{font-size:var(--pv-font-xs);letter-spacing:.07em;border:1px solid var(--pv-border);white-space:nowrap;border-radius:999px;padding:5px 7px}.part-result.ok{color:var(--pv-success);background:var(--pv-success-bg);border-color:color-mix(in srgb,var(--pv-success) 40%,var(--pv-border))}.part-result.warning{color:var(--pv-warning);background:var(--pv-warning-bg);border-color:color-mix(in srgb,var(--pv-warning) 40%,var(--pv-border))}.part-result.nok{color:var(--pv-danger);background:var(--pv-danger-bg);border-color:color-mix(in srgb,var(--pv-danger) 40%,var(--pv-border))}.part-summary-list{flex-direction:column;gap:4px;max-height:430px;display:flex;overflow:auto}.part-summary-list button{text-align:left;border:1px solid var(--pv-border);background:var(--pv-surface-2);width:100%;color:var(--pv-text);cursor:pointer;border-radius:7px;grid-template-columns:24px minmax(0,1fr) auto;align-items:center;gap:7px;padding:7px;display:grid}.part-summary-list button:hover{background:var(--pv-accent-soft);border-color:var(--pv-border-strong)}.part-summary-list button span:nth-child(2){min-width:0}.part-summary-list b,.part-summary-list small{white-space:nowrap;text-overflow:ellipsis;display:block;overflow:hidden}.part-summary-list b{font-size:var(--pv-font-xs)}.part-summary-list small{font-size:var(--pv-font-xs);color:var(--pv-muted);margin-top:1px}.part-summary-list strong{font-size:var(--pv-font-xs);font-variant-numeric:tabular-nums}.part-decision{gap:6px;margin-top:auto;display:grid}.part-decision>button,.part-finished button{border:1px solid var(--pv-border-strong);background:var(--pv-surface-2);color:var(--pv-text-soft);cursor:pointer;border-radius:7px;padding:9px}.part-decision .part-accept{background:var(--pv-success-bg);border-color:color-mix(in srgb,var(--pv-success) 50%,var(--pv-border));color:var(--pv-success);font-weight:900}.part-decision .part-reject{background:var(--pv-danger-bg);border-color:color-mix(in srgb,var(--pv-danger) 50%,var(--pv-border));color:var(--pv-danger);font-weight:900}.part-decision .summary-review{color:var(--pv-muted);font-size:var(--pv-font-xs);padding:6px}.part-finished{text-align:center;gap:7px;margin-top:auto;display:grid}.part-finished>span{font-size:var(--pv-font-xs);letter-spacing:.07em;color:var(--pv-text-soft);font-weight:900}.orders-view{gap:var(--pv-page-gap);flex:1;grid-template-columns:260px minmax(560px,1fr);min-height:0;display:grid}.orders-list,.order-editor{min-height:0;padding:12px}.orders-list{flex-direction:column;display:flex}.order-list-body{flex-direction:column;flex:1;gap:5px;min-height:0;margin-top:8px;display:flex;overflow:auto}.order-list-body>button{text-align:left;background:var(--pv-surface-2);color:var(--pv-text);cursor:pointer;border:1px solid #0000;border-radius:8px;grid-template-columns:minmax(0,1fr) auto;gap:4px 8px;padding:8px;display:grid}.order-list-body>button.active{background:var(--pv-accent-soft);border-color:var(--pv-accent)}.order-list-body b,.order-list-body small{display:block}.order-list-body b{font-size:11px}.order-list-body small{font-size:var(--pv-font-xs);color:var(--pv-muted);margin-top:2px}.order-list-body em{font-style:normal;font-size:var(--pv-font-xs);color:var(--pv-muted);grid-column:1/-1}.order-state{font-size:var(--pv-font-xs);border:1px solid var(--pv-border);border-radius:999px;height:max-content;padding:3px 5px}.order-state.open{color:var(--pv-success);background:var(--pv-success-bg)}.order-state.closed{color:var(--pv-muted);background:var(--pv-surface-3)}.order-editor{overflow:auto}.order-editor-head{border-bottom:1px solid var(--pv-border);justify-content:space-between;gap:16px;padding-bottom:10px;display:flex}.order-editor-head>div>span{font-size:var(--pv-font-xs);color:var(--pv-accent-strong);letter-spacing:.1em;font-weight:900}.order-editor-head h2{margin:3px 0;font-size:23px}.order-editor-head p{color:var(--pv-muted);font-size:var(--pv-font-xs);max-width:560px;margin:0;line-height:1.45}.order-progress{text-align:right}.order-progress b{font-size:21px;display:block}.order-progress span{font-size:var(--pv-font-xs);color:var(--pv-muted)}.order-form{grid-template-columns:1.5fr 1fr 1fr .7fr .7fr;gap:8px;margin-top:12px;display:grid}.order-form label,.serial-fields label{font-size:var(--pv-font-xs);color:var(--pv-muted);text-transform:uppercase;letter-spacing:.06em}.order-form input,.order-form select,.serial-fields input{border:1px solid var(--pv-border-strong);background:var(--pv-input);width:100%;color:var(--pv-text);border-radius:7px;margin-top:4px;padding:8px;display:block}.order-form .wide{min-width:0}.serial-card{border:1px solid var(--pv-border);background:var(--pv-surface-2);border-radius:9px;margin-top:10px;padding:0}.serial-card-collapsible>summary{cursor:pointer;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px 12px;list-style:none;display:grid}.serial-card-collapsible>summary::-webkit-details-marker{display:none}.serial-card-collapsible>summary span{font-size:var(--pv-font-xs);color:var(--pv-accent-strong);letter-spacing:.08em;text-transform:uppercase;font-weight:900}.serial-card-collapsible>summary b{font-size:var(--pv-font-sm);text-align:center;font-variant-numeric:tabular-nums}.serial-card-collapsible>summary em{color:var(--pv-muted);font-style:normal;font-size:var(--pv-font-xs)}.serial-card-collapsible[open]>summary{border-bottom:1px solid var(--pv-border)}.serial-fields{grid-template-columns:1.7fr .7fr .7fr;gap:8px;padding:10px 12px;display:grid}.order-actions{margin-top:12px}.order-actions button{border-radius:7px;padding:9px 12px}.order-help>span{font-size:var(--pv-font-xs);color:var(--pv-accent-strong);letter-spacing:.1em;font-weight:900}.order-help h3{margin:4px 0 12px;font-size:16px}.order-flow-step{grid-template-columns:24px 1fr;align-items:start;gap:8px;margin:7px 0;display:grid}.order-flow-step>b{background:var(--pv-accent-soft);width:22px;height:22px;color:var(--pv-accent-strong);font-size:var(--pv-font-xs);border-radius:50%;place-items:center;display:grid}.order-flow-step p{font-size:var(--pv-font-xs);color:var(--pv-muted);margin:2px 0;line-height:1.45}.order-flow-step strong{color:var(--pv-text-soft)}@media (width<=1250px){.orders-view{grid-template-columns:220px minmax(450px,1fr)}.order-form{grid-template-columns:1.4fr 1fr 1fr}.order-form label:nth-last-child(-n+2){grid-column:auto}.workspace{grid-template-columns:230px minmax(430px,1fr) 330px}}.admin-ocr-dataset{flex-direction:column;gap:10px;min-height:520px;display:flex}.dataset-head-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:6px;min-width:0;display:flex}.dataset-head-actions select,.dataset-head-actions button{border:1px solid var(--pv-border-strong);background:var(--pv-surface-2);color:var(--pv-text-soft);border-radius:var(--pv-radius-sm);font-size:var(--pv-font-xs);padding:6px 9px}.dataset-head-actions button{cursor:pointer}.dataset-head-actions button:disabled{opacity:.4;cursor:default}.dataset-stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;min-width:0;display:grid}.dataset-stats>button,.dataset-stats>div{border:1px solid var(--pv-border);background:var(--pv-surface-2);min-width:0;color:var(--pv-text);border-radius:var(--pv-radius-sm);text-align:left;padding:8px 10px}.dataset-stats>button{cursor:pointer}.dataset-stats>button.active{border-color:var(--pv-accent);background:var(--pv-accent-soft)}.dataset-stats span,.dataset-stats b{display:block}.dataset-stats span{font-size:var(--pv-font-xs);color:var(--pv-muted)}.dataset-stats b{margin-top:3px;font-size:18px}.dataset-browser{grid-template-columns:minmax(220px,.8fr) minmax(0,1.45fr);gap:10px;width:100%;min-width:0;min-height:360px;display:grid}.dataset-browser>*{min-width:0}.dataset-list{flex-direction:column;gap:4px;min-height:0;max-height:520px;padding-right:2px;display:flex;overflow:auto}.dataset-list>button{text-align:left;background:var(--pv-surface-2);color:var(--pv-text);border-radius:var(--pv-radius-sm);cursor:pointer;border:1px solid #0000;grid-template-columns:26px minmax(0,1fr) auto;align-items:center;gap:7px;padding:7px;display:grid}.dataset-list>button:hover{border-color:var(--pv-border-strong)}.dataset-list>button.active{background:var(--pv-accent-soft);border-color:var(--pv-accent)}.dataset-index{background:var(--pv-surface-3);width:23px;height:23px;color:var(--pv-accent-strong);font-size:var(--pv-font-xs);border-radius:50%;place-items:center;font-weight:900;display:grid}.dataset-list-text{min-width:0}.dataset-list-text b,.dataset-list-text small{white-space:nowrap;text-overflow:ellipsis;display:block;overflow:hidden}.dataset-list-text b{font-size:var(--pv-font-xs)}.dataset-list-text small{color:var(--pv-muted);font-size:var(--pv-font-xs);margin-top:2px}.dataset-list i{font-style:normal;font-size:var(--pv-font-xs);border:1px solid var(--pv-border);color:var(--pv-muted);border-radius:999px;padding:3px 5px;font-weight:900}.dataset-list i.approved{color:var(--pv-success);background:var(--pv-success-bg);border-color:color-mix(in srgb,var(--pv-success) 40%,var(--pv-border))}.dataset-list i.rejected{color:var(--pv-danger);background:var(--pv-danger-bg);border-color:color-mix(in srgb,var(--pv-danger) 40%,var(--pv-border))}.dataset-review{border:1px solid var(--pv-border);border-radius:var(--pv-radius-sm);background:var(--pv-surface-2);flex-direction:column;gap:9px;min-width:0;padding:10px;display:flex;overflow:hidden}.dataset-crop{border:1px solid var(--pv-border);border-radius:var(--pv-radius-sm);background:var(--pv-canvas-paper);place-items:center;min-height:105px;max-height:170px;display:grid;overflow:hidden}.dataset-crop img{object-fit:contain;max-width:100%;max-height:165px}.dataset-text-pair{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:8px;min-width:0;display:grid}.dataset-text-pair>*{min-width:0}.dataset-text-pair label{font-size:var(--pv-font-xs);color:var(--pv-muted);text-transform:uppercase;letter-spacing:.05em}.dataset-text-pair code,.dataset-text-pair input{border:1px solid var(--pv-border-strong);border-radius:var(--pv-radius-sm);background:var(--pv-input);width:100%;color:var(--pv-text);text-transform:none;letter-spacing:0;margin-top:4px;padding:8px;font:800 12px/1.3 inherit;display:block}.dataset-text-pair code{min-height:34px;color:var(--pv-text-soft)}.dataset-values{grid-template-columns:repeat(4,minmax(0,1fr));gap:5px;min-width:0;display:grid}.dataset-values>div{border:1px solid var(--pv-border);background:var(--pv-surface-3);border-radius:6px;padding:7px}.dataset-values span,.dataset-values b{display:block}.dataset-values span{font-size:var(--pv-font-xs);color:var(--pv-muted)}.dataset-values b{margin-top:2px;font-size:11px}.dataset-meta{flex-wrap:wrap;gap:4px;display:flex}.dataset-meta span{font-size:var(--pv-font-xs);color:var(--pv-muted);border:1px solid var(--pv-border);border-radius:999px;padding:3px 5px}.dataset-review-actions{grid-template-columns:.8fr .8fr 1.2fr;gap:6px;display:grid}.dataset-review-actions button,.dataset-nav button{border:1px solid var(--pv-border-strong);border-radius:var(--pv-radius-sm);background:var(--pv-surface);color:var(--pv-text-soft);cursor:pointer;padding:7px 9px}.dataset-review-actions button:first-child{color:var(--pv-danger);background:var(--pv-danger-bg);border-color:color-mix(in srgb,var(--pv-danger) 45%,var(--pv-border))}.dataset-review-actions button:disabled,.dataset-nav button:disabled{opacity:.35;cursor:default}.dataset-review-actions .primary{margin-top:0}.dataset-delete-sample{color:var(--pv-danger);font-size:var(--pv-font-xs);cursor:pointer;text-underline-offset:2px;background:0 0;border:0;align-self:flex-start;padding:3px 0;text-decoration:underline}.dataset-delete-sample:disabled{opacity:.35;cursor:default}.dataset-nav{justify-content:center;align-items:center;gap:8px;display:flex}.dataset-nav span{font-size:var(--pv-font-xs);color:var(--pv-muted);text-align:center;min-width:52px}.dataset-nav button{font-size:var(--pv-font-xs);padding:5px 8px}.dataset-shortcuts{text-align:center;color:var(--pv-muted-2);font-size:var(--pv-font-xs);letter-spacing:.03em}.dataset-empty{border:1px dashed var(--pv-border);border-radius:var(--pv-radius-sm);min-height:80px;color:var(--pv-muted);font-size:var(--pv-font-xs);text-align:center;place-items:center;padding:15px;display:grid}.dataset-empty.large{min-height:360px}.dataset-training-note{border-top:1px solid var(--pv-border);grid-template-columns:180px 1fr;align-items:center;gap:12px;padding-top:9px;display:grid}.dataset-training-note span,.dataset-training-note b{display:block}.dataset-training-note span{font-size:var(--pv-font-xs);color:var(--pv-accent-strong);letter-spacing:.08em;font-weight:900}.dataset-training-note b{margin-top:2px;font-size:11px}.dataset-training-note p{color:var(--pv-muted);font-size:var(--pv-font-xs);margin:0;line-height:1.45}@media (width<=1280px){.dataset-browser{grid-template-columns:1fr}.dataset-list{max-height:260px}.dataset-review{min-height:0}}@media (width<=900px){.dataset-stats{grid-template-columns:1fr 1fr}.dataset-text-pair{grid-template-columns:1fr}.dataset-values{grid-template-columns:1fr 1fr}.dataset-training-note,.dataset-review-actions{grid-template-columns:1fr}.dataset-head-actions{justify-content:flex-start;width:100%}}.ocr-admin-page{gap:var(--pv-page-gap);flex-direction:column;flex:1;min-height:0;display:flex;overflow:auto}.ocr-admin-page-head{align-items:center;gap:12px;padding:10px 14px;display:flex}.ocr-admin-page-head>button{border:1px solid var(--pv-border);background:var(--pv-surface-2);color:var(--pv-text-soft);cursor:pointer;border-radius:7px;padding:7px 10px}.ocr-admin-page-head span{font-size:var(--pv-font-xs);letter-spacing:.09em;color:var(--pv-accent-strong);font-weight:900}.ocr-admin-page-head h2{margin:2px 0 0;font-size:16px}.admin-ocr-link{min-height:0}.admin-ocr-link .primary{margin-top:0}.control-type-chip{--control-type-color:var(--pv-type-attribute);border:1px solid color-mix(in srgb,var(--control-type-color) 55%,var(--pv-border));background:color-mix(in srgb,var(--control-type-color) 12%,var(--pv-surface-2));color:var(--control-type-color);font-size:var(--pv-font-xs);border-radius:999px;align-items:center;gap:4px;margin-left:8px;padding:2px 6px;font-style:normal;font-weight:850;display:inline-flex}.control-type-chip.type-dimension{--control-type-color:var(--pv-type-dimension)}.control-type-chip.type-diameter{--control-type-color:var(--pv-type-diameter)}.control-type-chip.type-radius{--control-type-color:var(--pv-type-radius)}.control-type-chip.type-chamfer{--control-type-color:var(--pv-type-chamfer)}.control-type-chip.type-angle{--control-type-color:var(--pv-type-angle)}.control-type-chip.type-thread{--control-type-color:var(--pv-type-thread)}.manage-head-actions .archive-toggle.active{border-color:var(--pv-warning);background:var(--pv-warning-bg);color:var(--pv-warning)}.archive-badge{border:1px solid color-mix(in srgb,var(--pv-warning) 45%,var(--pv-border));background:var(--pv-warning-bg);color:var(--pv-warning);font-size:var(--pv-font-xs);letter-spacing:.05em;vertical-align:middle;border-radius:999px;align-items:center;margin-left:6px;padding:1px 4px;font-style:normal;font-weight:900;display:inline-flex}.product-master-list>button.archived,.operation-tabs>button.archived,.char-table .tr.archived{opacity:.68;border-style:dashed}.product-master-list>button.archived:hover,.operation-tabs>button.archived:hover,.char-table .tr.archived:hover{opacity:.88}.product-master-list>button.archived.active,.operation-tabs>button.archived.active,.char-table .tr.archived.active{opacity:1}.control-media-split{background:var(--pv-border-strong);grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:1px;display:grid;position:absolute;inset:0}.control-media-pane{background:var(--pv-canvas);min-width:0;min-height:0;position:relative;overflow:hidden}.control-media-pane-3d{background:var(--pv-bg)}.control-media-pane-plan{border-left:1px solid var(--pv-border)}.control-media-split .control-plan-toolbar{height:84px;padding-top:45px}.control-media-split .viewer-tools,.control-media-split .view-cube-wrap{top:50px}.control-plan-viewport{overscroll-behavior:contain}.control-plan-stage{transform-origin:0 0}.measure-title-block{flex:1;min-width:0}.measure-title-line{align-items:center;gap:7px;min-width:0;display:flex}.measure-title-line h2{min-width:0}.phase-spec-chip{border:1px solid var(--pv-border-strong);font-size:var(--pv-font-xs);letter-spacing:.05em;border-radius:999px;flex:none;align-items:center;padding:2px 6px;font-style:normal;font-weight:900;display:inline-flex}.phase-spec-chip.final{color:var(--pv-success);background:var(--pv-success-bg);border-color:color-mix(in srgb,var(--pv-success) 42%,var(--pv-border))}.phase-spec-chip.process{color:var(--pv-warning);background:var(--pv-warning-bg);border-color:color-mix(in srgb,var(--pv-warning) 42%,var(--pv-border))}.phase-spec-chip.allowance{color:var(--pv-type-chamfer);background:color-mix(in srgb,var(--pv-type-chamfer) 10%,var(--pv-surface-2));border-color:color-mix(in srgb,var(--pv-type-chamfer) 45%,var(--pv-border))}.master-spec-note{color:var(--pv-muted-2);font-size:var(--pv-font-xs);margin-top:4px;line-height:1.35;display:block}.characteristics .char-list button{min-height:46px;padding:7px 8px}.characteristics .char-main small{font-size:var(--pv-font-xs)}.characteristics .kind{width:24px;min-width:24px;height:24px;font-size:var(--pv-font-xs)}@media (width<=1450px){.control-media-split{grid-template-rows:minmax(0,1fr) minmax(0,1fr);grid-template-columns:1fr}.control-media-pane-plan{border-left:0;border-top:1px solid var(--pv-border)}.control-media-split .control-plan-toolbar{height:49px;padding-top:7px}.control-media-split .viewer-tools,.control-media-split .view-cube-wrap{top:12px}}.operation-editor{grid-template-columns:145px minmax(220px,1fr) 105px 90px auto}.operation-editor label:nth-child(3),.operation-editor label:nth-child(4){min-width:0}.char-table.v2 .tr{grid-template-columns:58px minmax(240px,1.45fr) 92px 92px 128px 105px}.char-table .control-no{color:var(--pv-accent-strong);font-variant-numeric:tabular-nums;font-weight:900}.phase-mode-badge{border:1px solid var(--pv-border);min-width:58px;font-size:var(--pv-font-xs);letter-spacing:.045em;border-radius:999px;justify-content:center;align-items:center;padding:3px 6px;font-style:normal;font-weight:900;display:inline-flex}.phase-mode-badge.final{color:var(--pv-success);background:var(--pv-success-bg);border-color:color-mix(in srgb,var(--pv-success) 42%,var(--pv-border))}.phase-mode-badge.process{color:var(--pv-warning);background:var(--pv-warning-bg);border-color:color-mix(in srgb,var(--pv-warning) 42%,var(--pv-border))}.phase-mode-badge.allowance{color:var(--pv-type-chamfer);background:color-mix(in srgb,var(--pv-type-chamfer) 10%,var(--pv-surface-2));border-color:color-mix(in srgb,var(--pv-type-chamfer) 45%,var(--pv-border))}.char-empty-phase{border:1px dashed var(--pv-border);color:var(--pv-muted);font-size:var(--pv-font-xs);text-align:center;border-radius:8px;padding:18px}.char-master-note{border-left:3px solid var(--pv-accent);background:var(--pv-accent-soft);color:var(--pv-muted);font-size:var(--pv-font-xs);margin:-2px 0 8px;padding:7px 9px;line-height:1.45}.phase-spec-editor{border:1px solid var(--pv-border);background:var(--pv-surface-2);border-radius:9px;margin-top:11px;padding:10px}.phase-spec-head{justify-content:space-between;align-items:end;gap:12px;display:flex}.phase-spec-head>div span,.phase-spec-head>div b{display:block}.phase-spec-head>div span{font-size:var(--pv-font-xs);color:var(--pv-warning);letter-spacing:.09em;font-weight:900}.phase-spec-head>div b{margin-top:2px;font-size:12px}.phase-spec-head>label{width:105px;font-size:var(--pv-font-xs);color:var(--pv-muted);text-transform:uppercase;letter-spacing:.05em}.phase-spec-head input,.phase-override-grid input,.phase-override-grid select{background:var(--pv-input);border:1px solid var(--pv-border-strong);width:100%;color:var(--pv-text);border-radius:6px;outline:none;margin-top:4px;padding:7px;display:block}.phase-mode-tabs{gap:5px;margin:9px 0;display:flex}.phase-mode-tabs button{border:1px solid var(--pv-border);background:var(--pv-surface-3);color:var(--pv-muted);font-size:var(--pv-font-xs);cursor:pointer;border-radius:7px;padding:6px 9px;font-weight:800}.phase-mode-tabs button.active{border-color:var(--pv-accent);background:var(--pv-accent-soft);color:var(--pv-text)}.phase-final-summary{border:1px dashed var(--pv-border-strong);border-radius:7px;justify-content:space-between;align-items:center;gap:12px;padding:8px;display:flex}.phase-final-summary strong{font-size:var(--pv-font-xs)}.phase-final-summary span{color:var(--pv-muted);font-size:var(--pv-font-xs)}.phase-override-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:7px;display:grid}.phase-override-grid label{min-width:0;color:var(--pv-muted);font-size:var(--pv-font-xs);text-transform:uppercase;letter-spacing:.04em}.phase-effective-preview{background:var(--pv-bg);border:1px solid var(--pv-border);border-radius:7px;align-items:center;gap:9px;margin-top:8px;padding:7px 9px;display:flex}.phase-effective-preview span{color:var(--pv-muted);font-size:var(--pv-font-xs)}.phase-effective-preview b{color:var(--pv-warning);font-size:12px}.phase-effective-preview small{color:var(--pv-muted);font-size:var(--pv-font-xs);margin-left:auto}.char-assign-backdrop{z-index:120;background:#0009;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.char-assign-dialog{flex-direction:column;width:min(760px,92vw);max-height:min(720px,88vh);padding:14px;display:flex;background:var(--pv-surface)!important}.char-assign-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.char-assign-head span{color:var(--pv-accent-strong);font-size:var(--pv-font-xs);letter-spacing:.09em;font-weight:900;display:block}.char-assign-head h3{margin:3px 0 0;font-size:17px}.char-assign-head>button{color:var(--pv-muted);cursor:pointer;background:0 0;border:0;font-size:25px}.char-assign-search{grid-template-columns:1fr auto;gap:7px;margin-top:12px;display:grid}.char-assign-search input{background:var(--pv-input);border:1px solid var(--pv-border-strong);color:var(--pv-text);border-radius:7px;outline:none;padding:9px}.char-assign-search button{border:1px solid var(--pv-accent);background:var(--pv-accent);color:var(--pv-on-accent);cursor:pointer;border-radius:7px;padding:8px 12px;font-weight:800}.char-assign-meta{color:var(--pv-muted);font-size:var(--pv-font-xs);padding:7px 1px}.char-assign-list{flex-direction:column;gap:4px;min-height:100px;display:flex;overflow:auto}.char-assign-list>button{border:1px solid var(--pv-border);background:var(--pv-surface-2);color:var(--pv-text);text-align:left;cursor:pointer;border-radius:7px;grid-template-columns:52px minmax(0,1fr) auto;align-items:center;gap:8px;padding:8px;display:grid}.char-assign-list>button:hover:not(:disabled){border-color:var(--pv-accent);background:var(--pv-accent-soft)}.char-assign-list>button:disabled{opacity:.45;cursor:default}.assign-master-no{color:var(--pv-accent-strong);font-weight:900;font-size:var(--pv-font-xs)}.char-assign-list b,.char-assign-list small{display:block}.char-assign-list b{font-size:var(--pv-font-xs)}.char-assign-list small{color:var(--pv-muted);font-size:var(--pv-font-xs);margin-top:2px}.char-assign-list em{color:var(--pv-accent-strong);font-style:normal;font-size:var(--pv-font-xs);font-weight:800}@media (width<=1200px){.operation-editor{grid-template-columns:120px minmax(190px,1fr) 90px 80px}.operation-editor .row-actions{grid-column:1/-1}.phase-override-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.product-list-limit{color:var(--pv-muted-2);font-size:var(--pv-font-xs);text-align:center;border-top:1px solid var(--pv-border);padding:8px 6px}.control-product-picker{min-width:320px;position:relative}.control-product-picker>.product-select{width:100%;margin-top:0}.control-product-results{z-index:80;background:var(--pv-surface);border:1px solid var(--pv-border-strong);border-radius:9px;flex-direction:column;gap:3px;width:min(520px,70vw);max-height:360px;padding:5px;display:flex;position:absolute;top:calc(100% + 5px);left:0;overflow:auto;box-shadow:0 18px 45px #0009}.control-product-results>button{background:var(--pv-surface-2);color:var(--pv-text);text-align:left;cursor:pointer;border:1px solid #0000;border-radius:6px;grid-template-columns:145px minmax(0,1fr);gap:8px;padding:7px 8px;display:grid}.control-product-results>button:hover,.control-product-results>button.active{border-color:var(--pv-accent);background:var(--pv-accent-soft)}.control-product-results b,.control-product-results span{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.control-product-results b{font-size:var(--pv-font-xs)}.control-product-results span{font-size:var(--pv-font-xs);color:var(--pv-muted)}.control-product-results>div,.control-product-results>small{color:var(--pv-muted);font-size:var(--pv-font-xs);padding:8px}.kind.type-dimension{background:color-mix(in srgb,var(--pv-type-dimension) 14%,var(--pv-surface-2));color:var(--pv-type-dimension)}.kind.type-diameter{background:color-mix(in srgb,var(--pv-type-diameter) 14%,var(--pv-surface-2));color:var(--pv-type-diameter)}.kind.type-radius{background:color-mix(in srgb,var(--pv-type-radius) 14%,var(--pv-surface-2));color:var(--pv-type-radius)}.kind.type-chamfer{background:color-mix(in srgb,var(--pv-type-chamfer) 14%,var(--pv-surface-2));color:var(--pv-type-chamfer)}.kind.type-angle{background:color-mix(in srgb,var(--pv-type-angle) 14%,var(--pv-surface-2));color:var(--pv-type-angle)}.kind.type-thread{background:color-mix(in srgb,var(--pv-type-thread) 14%,var(--pv-surface-2));color:var(--pv-type-thread)}.kind.type-attribute{background:color-mix(in srgb,var(--pv-type-attribute) 14%,var(--pv-surface-2));color:var(--pv-type-attribute)}.ocr-value-editor{--ocr-type-color:var(--pv-type-attribute)}.ocr-value-editor.type-dimension{--ocr-type-color:var(--pv-type-dimension)}.ocr-value-editor.type-diameter{--ocr-type-color:var(--pv-type-diameter)}.ocr-value-editor.type-radius{--ocr-type-color:var(--pv-type-radius)}.ocr-value-editor.type-chamfer{--ocr-type-color:var(--pv-type-chamfer)}.ocr-value-editor.type-angle{--ocr-type-color:var(--pv-type-angle)}.ocr-value-editor.type-thread{--ocr-type-color:var(--pv-type-thread)}.ocr-value-editor{border-left:3px solid var(--ocr-type-color);background:color-mix(in srgb,var(--ocr-type-color) 7%,var(--pv-surface-2))}.ocr-promotion-pending{border:1px solid color-mix(in srgb,var(--pv-warning) 42%,var(--pv-border));background:var(--pv-warning-bg);color:var(--pv-warning);font-size:var(--pv-font-xs);border-radius:7px;justify-content:space-between;align-items:center;gap:8px;padding:8px 9px;line-height:1.4;display:flex}.ocr-promotion-pending b{font-size:var(--pv-font-xs)}.ocr-promotion-pending span{color:color-mix(in srgb,var(--pv-warning) 82%,var(--pv-text))}.purge-product-btn{white-space:nowrap}.order-actions{flex-wrap:wrap;align-items:center;gap:7px;display:flex}.order-history-lock{color:var(--pv-muted);font-size:var(--pv-font-xs);border:1px solid var(--pv-border);background:var(--pv-surface-2);border-radius:999px;padding:5px 7px}.manage-section-tabs{z-index:20;background:var(--pv-surface);grid-template-columns:repeat(6,minmax(0,1fr));gap:5px;padding:5px;display:grid;position:sticky;top:0}.manage-section-tabs button{min-width:0;color:var(--pv-text-soft);cursor:pointer;text-align:left;background:0 0;border:1px solid #0000;border-radius:7px;flex-direction:column;align-items:flex-start;gap:1px;padding:7px 9px;display:flex}.manage-section-tabs button:hover{background:var(--pv-surface-2)}.manage-section-tabs button.active{border-color:var(--pv-accent);background:var(--pv-accent-soft);color:var(--pv-accent-strong)}.manage-section-tabs b{font-size:var(--pv-font-xs)}.manage-section-tabs span{font-size:var(--pv-font-xs);color:var(--pv-muted)}.product-summary{min-height:0;padding:10px 12px}.product-summary-title h2{font-size:18px}.product-form-row{gap:7px}.product-form-row input{padding:7px}.asset-preview-grid{min-height:0}.asset-preview-body{height:min(42vh,430px);min-height:260px}.cad-admin-preview,.drawing-admin-preview{min-height:260px}.methods-mapping-workspace{gap:var(--pv-page-gap);grid-template-columns:310px minmax(0,1fr);height:calc(100vh - 245px);min-height:620px;display:grid}.methods-mapping-workspace>*{min-width:0;min-height:0}.mapping-char-panel{flex-direction:column;padding:9px;display:flex;overflow:hidden}.mapping-panel-head{justify-content:space-between;align-items:center;gap:8px;padding:3px 3px 7px;display:flex}.mapping-panel-head.chars{border-top:1px solid var(--pv-border);margin-top:8px;padding-top:10px}.mapping-panel-head span{color:var(--pv-accent-strong);font-size:var(--pv-font-xs);letter-spacing:.09em;font-weight:900;display:block}.mapping-panel-head b{margin-top:2px;font-size:12px;display:block}.mapping-panel-head small{font-size:var(--pv-font-xs);color:var(--pv-muted)}.mapping-gammes{gap:4px;padding-bottom:4px;display:flex;overflow:auto}.mapping-gammes>button{border:1px solid var(--pv-border);background:var(--pv-surface-2);min-width:88px;color:var(--pv-text-soft);text-align:left;cursor:pointer;border-radius:6px;flex:none;padding:6px 7px}.mapping-gammes>button.active{border-color:var(--pv-accent);background:var(--pv-accent-soft)}.mapping-gammes b,.mapping-gammes span{display:block}.mapping-gammes b{font-size:var(--pv-font-xs)}.mapping-gammes span{white-space:nowrap;text-overflow:ellipsis;max-width:110px;color:var(--pv-muted);font-size:var(--pv-font-xs);margin-top:1px;overflow:hidden}.mapping-char-list{flex-direction:column;flex:1;gap:4px;min-height:0;padding-right:2px;display:flex;overflow:auto}.mapping-char-list>button{border:1px solid var(--pv-border);background:var(--pv-surface-2);color:var(--pv-text);text-align:left;cursor:pointer;border-radius:7px;grid-template-columns:24px minmax(0,1fr) auto;align-items:center;gap:6px;padding:7px;display:grid}.mapping-char-list>button:hover{border-color:var(--pv-accent)}.mapping-char-list>button.active{border-color:var(--pv-accent);background:var(--pv-accent-soft);box-shadow:inset 3px 0 var(--pv-accent)}.mapping-char-list>button>span{border:1px solid var(--pv-border-strong);width:22px;height:22px;color:var(--pv-muted);font-size:var(--pv-font-xs);border-radius:50%;place-items:center;display:grid}.mapping-char-list>button>span.mapped{border-color:var(--pv-success);background:var(--pv-success-bg);color:var(--pv-success)}.mapping-char-list b,.mapping-char-list small{display:block}.mapping-char-list b{font-size:var(--pv-font-xs)}.mapping-char-list small{font-size:var(--pv-font-xs);color:var(--pv-muted);white-space:nowrap;text-overflow:ellipsis;margin-top:2px;overflow:hidden}.mapping-char-list em{color:var(--pv-muted);font-style:normal;font-size:var(--pv-font-xs);white-space:nowrap}.mapping-viewer-card{flex-direction:column;padding:0;display:flex;overflow:hidden}.mapping-viewer-head{border-bottom:1px solid var(--pv-border);background:var(--pv-surface-2);flex:none;justify-content:space-between;align-items:center;gap:12px;padding:9px 11px;display:flex}.mapping-viewer-head span{color:var(--pv-accent-strong);font-size:var(--pv-font-xs);letter-spacing:.09em;font-weight:900;display:block}.mapping-viewer-head h3{margin:2px 0 1px;font-size:14px}.mapping-viewer-head small{color:var(--pv-muted);font-size:var(--pv-font-xs)}.mapping-viewer-actions{align-items:center;gap:5px;display:flex}.mapping-viewer-actions button{border:1px solid var(--pv-border-strong);background:var(--pv-surface);color:var(--pv-text-soft);font-size:var(--pv-font-xs);cursor:pointer;border-radius:6px;padding:6px 8px}.mapping-viewer-actions button.active{border-color:var(--pv-warning);background:var(--pv-warning-bg);color:var(--pv-warning)}.mapping-viewer-actions button.primary{background:var(--pv-accent);border-color:var(--pv-accent);color:var(--pv-on-accent)}.mapping-viewer-actions button:disabled{opacity:.4}.mapping-viewer-body{background:var(--pv-bg);flex:1;min-height:0;position:relative;overflow:hidden}.mapping-viewer-body>.part-viewer,.mapping-viewer-body>.viewer-canvas{position:absolute;inset:0}.mapping-live-bar{z-index:20;border:1px solid var(--pv-warning);background:color-mix(in srgb,var(--pv-warning-bg) 90%,transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:var(--pv-warning);border-radius:7px;align-items:center;gap:10px;padding:7px 9px;display:flex;position:absolute;bottom:12px;left:12px;right:12px}.mapping-live-bar span{font-size:var(--pv-font-xs)}.mapping-live-bar small{color:var(--pv-text-soft);font-size:var(--pv-font-xs)}.product-photos-card{min-height:0;padding:11px}.product-photos-card .section-topline>div>small{color:var(--pv-muted);font-size:var(--pv-font-xs);margin-top:3px;display:block}.photo-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:9px;margin-top:10px;display:grid}.photo-card{border:1px solid var(--pv-border);background:var(--pv-surface-2);border-radius:8px;min-width:0;margin:0;overflow:hidden}.photo-card>img{object-fit:contain;background:var(--pv-canvas-paper);width:100%;height:170px;display:block}.photo-card figcaption{border-top:1px solid var(--pv-border);font-size:var(--pv-font-xs);align-items:center;gap:6px;padding:6px 8px;display:flex}.photo-card figcaption span{white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;overflow:hidden}.photo-card figcaption button{width:24px;height:24px;color:var(--pv-danger);cursor:pointer;background:0 0;border:0;font-size:17px}.photo-operation-links{border-top:1px solid var(--pv-border);padding:7px 8px}.photo-operation-links>span{color:var(--pv-muted);font-size:var(--pv-font-xs);text-transform:uppercase;letter-spacing:.06em;margin-bottom:5px;font-weight:800;display:block}.photo-operation-links>div{flex-wrap:wrap;gap:4px;display:flex}.photo-operation-links button{border:1px solid var(--pv-border);background:var(--pv-surface);color:var(--pv-muted);font-size:var(--pv-font-xs);cursor:pointer;border-radius:999px;padding:3px 6px}.photo-operation-links button.active{border-color:var(--pv-success);background:var(--pv-success-bg);color:var(--pv-success)}.photo-operation-links small{color:var(--pv-muted-2);font-size:var(--pv-font-xs)}.product-photos-card .photo-empty{min-height:150px}.master-archive-btn{margin-left:auto}.char-assignment-board{grid-template-columns:minmax(300px,.85fr) minmax(430px,1.15fr);gap:9px;min-height:320px;display:grid}.assignment-library-pane,.assignment-phase-pane{border:1px solid var(--pv-border);background:var(--pv-surface-2);border-radius:8px;flex-direction:column;min-width:0;padding:9px;display:flex}.assignment-pane-head{justify-content:space-between;align-items:center;gap:8px;margin-bottom:7px;display:flex}.assignment-pane-head span,.assignment-pane-head b{display:block}.assignment-pane-head span{font-size:var(--pv-font-xs);letter-spacing:.08em;color:var(--pv-accent-strong);font-weight:900}.assignment-pane-head b{font-size:var(--pv-font-sm);margin-top:2px}.assignment-pane-head>small{font-size:var(--pv-font-xs);color:var(--pv-muted)}.assignment-search{background:var(--pv-input);border:1px solid var(--pv-border-strong);width:100%;color:var(--pv-text);border-radius:7px;outline:none;margin-bottom:7px;padding:8px}.assignment-list{flex-direction:column;gap:4px;min-height:170px;max-height:300px;display:flex;overflow:auto}.assignment-item{border:1px solid var(--pv-border);background:var(--pv-surface);cursor:grab;border-radius:6px;grid-template-columns:24px 42px minmax(0,1fr) auto;align-items:center;gap:6px;min-width:0;padding:7px;display:grid}.assignment-item:active{cursor:grabbing}.assignment-item.active{border-color:var(--pv-accent);background:var(--pv-accent-soft);box-shadow:inset 3px 0 var(--pv-accent)}.library-item{grid-template-columns:24px 42px minmax(0,1fr) 30px}.phase-item{grid-template-columns:24px 42px minmax(0,1fr) auto 28px}.drag-handle{color:var(--pv-muted-2);text-align:center;letter-spacing:-2px;font-weight:900}.assignment-master-no,.phase-item .control-no{color:var(--pv-accent-strong);font-size:var(--pv-font-xs);font-weight:850}.assignment-main{min-width:0}.assignment-main b,.assignment-main small{white-space:nowrap;text-overflow:ellipsis;display:block;overflow:hidden}.assignment-main small{font-size:var(--pv-font-xs);color:var(--pv-muted);margin-top:2px}.assignment-badges{gap:3px;display:flex}.assignment-badges i{font-style:normal;font-size:var(--pv-font-xs);color:var(--pv-muted-2);border:1px solid var(--pv-border);border-radius:999px;padding:2px 4px}.assignment-badges i.ready{color:var(--pv-success);border-color:var(--pv-success);background:var(--pv-success-bg)}.assignment-item>button{border:1px solid var(--pv-border-strong);background:var(--pv-surface-3);color:var(--pv-text-soft);cursor:pointer;border-radius:5px;min-width:26px;height:26px}.assignment-remove{color:var(--pv-danger)!important}.assignment-empty,.assignment-drop-end{border:1px dashed var(--pv-border-strong);min-height:54px;color:var(--pv-muted);font-size:var(--pv-font-xs);text-align:center;border-radius:6px;place-items:center;padding:8px;display:grid}.assignment-drop-end.ready{border-color:var(--pv-accent);background:var(--pv-accent-soft);color:var(--pv-accent-strong)}.assignment-hint{color:var(--pv-muted);font-size:var(--pv-font-xs);margin-top:6px}.phase-control-editor{border-top:1px solid var(--pv-border);margin-top:9px;padding-top:9px}.phase-control-summary{border:1px solid var(--pv-border);background:var(--pv-surface-2);border-radius:8px;grid-template-columns:minmax(0,1.3fr) minmax(180px,.7fr) auto;align-items:center;gap:10px;padding:9px;display:grid}.phase-control-summary span,.phase-control-summary b,.phase-control-summary small{display:block}.phase-control-summary span{font-size:var(--pv-font-xs);color:var(--pv-accent-strong);letter-spacing:.08em;font-weight:900}.phase-control-summary b{font-size:var(--pv-font-sm);margin-top:2px}.phase-control-summary small{font-size:var(--pv-font-xs);color:var(--pv-muted);margin-top:2px}.master-spec-inline{text-align:right}.compact-phase-editor{margin-top:8px}.phase-control-actions{flex-wrap:wrap;align-items:center;gap:6px;margin-top:8px;display:flex}.phase-editor-empty{border:1px dashed var(--pv-border-strong);color:var(--pv-muted);text-align:center;font-size:var(--pv-font-xs);border-radius:8px;margin-top:9px;padding:20px}@media (width<=1250px){.char-assignment-board{grid-template-columns:1fr}.assignment-list{max-height:240px}.phase-control-summary{grid-template-columns:1fr}.master-spec-inline{text-align:left}}.plan-manager-card{min-height:0;padding:12px}.plan-manager-card .section-topline>div>small{color:var(--pv-muted);font-size:var(--pv-font-xs);max-width:760px;margin-top:3px;display:block}.plan-manager-grid{grid-template-columns:minmax(300px,.8fr) minmax(430px,1.2fr);gap:10px;min-height:390px;display:grid}.plan-list{flex-direction:column;gap:5px;max-height:500px;padding-right:2px;display:flex;overflow:auto}.plan-list>button{text-align:left;border:1px solid var(--pv-border);background:var(--pv-surface-2);color:var(--pv-text);cursor:pointer;border-radius:7px;justify-content:space-between;align-items:center;gap:10px;padding:9px;display:flex}.plan-list>button.active{border-color:var(--pv-accent);background:var(--pv-accent-soft);box-shadow:inset 3px 0 var(--pv-accent)}.plan-list>button.archived{opacity:.72}.plan-list>button>span:first-child{min-width:0}.plan-list b,.plan-list small{display:block}.plan-list b{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.plan-list small{color:var(--pv-muted);font-size:var(--pv-font-xs);margin-top:2px}.plan-list-flags{flex:none;align-items:center;gap:4px;display:flex}.plan-list-flags i,.plan-list-flags em,.plan-editor-title>i{border:1px solid var(--pv-border-strong);font-style:normal;font-size:var(--pv-font-xs);border-radius:999px;padding:3px 6px;font-weight:900}.plan-list-flags i,.plan-editor-title>i{border-color:var(--pv-success);background:var(--pv-success-bg);color:var(--pv-success)}.plan-list-flags em{border-color:var(--pv-danger);color:var(--pv-danger)}.plan-editor{border:1px solid var(--pv-border);background:var(--pv-surface-2);border-radius:8px;align-self:start;padding:14px}.plan-editor-title{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.plan-editor-title span,.plan-editor-title b,.plan-editor-title small{display:block}.plan-editor-title span{color:var(--pv-accent-strong);font-size:var(--pv-font-xs);letter-spacing:.08em;font-weight:900}.plan-editor-title b{margin-top:3px;font-size:16px}.plan-editor-title small{color:var(--pv-muted);font-size:var(--pv-font-xs);margin-top:2px}.plan-form-grid{grid-template-columns:1fr 180px;gap:8px;margin-top:12px;display:grid}.plan-form-grid label{font-size:var(--pv-font-xs);color:var(--pv-muted);text-transform:uppercase;letter-spacing:.06em}.plan-form-grid input{background:var(--pv-input);border:1px solid var(--pv-border-strong);width:100%;color:var(--pv-text);text-transform:none;border-radius:7px;outline:none;margin-top:4px;padding:8px;display:block}.plan-operation-links{border-top:1px solid var(--pv-border);margin-top:14px;padding-top:10px}.plan-operation-links>span{color:var(--pv-muted);font-size:var(--pv-font-xs);letter-spacing:.07em;margin-bottom:6px;font-weight:900;display:block}.plan-operation-links>div{flex-wrap:wrap;gap:5px;display:flex}.plan-operation-links button{border:1px solid var(--pv-border);background:var(--pv-surface);min-width:105px;color:var(--pv-text-soft);cursor:pointer;border-radius:6px;flex-direction:column;align-items:flex-start;padding:6px 8px;display:flex}.plan-operation-links button.active{border-color:var(--pv-success);background:var(--pv-success-bg);color:var(--pv-success)}.plan-operation-links button small{color:var(--pv-muted);font-size:var(--pv-font-xs);white-space:nowrap;text-overflow:ellipsis;max-width:130px;margin-top:1px;overflow:hidden}.plan-operation-links button:disabled{opacity:.45;cursor:default}.plan-editor-actions{flex-wrap:wrap;align-items:center;gap:6px;margin-top:14px;display:flex}.plan-open-link{color:var(--pv-accent-strong);font-size:var(--pv-font-xs);margin-left:auto}.plan-archive-note{color:var(--pv-warning);font-size:var(--pv-font-xs);margin-top:9px;display:block}.family-manager-card{min-height:0;padding:12px}.family-manager-card .section-topline>div>small{color:var(--pv-muted);font-size:var(--pv-font-xs);max-width:760px;margin-top:3px;display:block}.family-manager-grid{grid-template-columns:minmax(260px,.7fr) minmax(360px,1.3fr);gap:10px;min-height:340px;display:grid}.family-list{flex-direction:column;gap:5px;max-height:440px;padding-right:2px;display:flex;overflow:auto}.family-list>button{text-align:left;border:1px solid var(--pv-border);background:var(--pv-surface-2);color:var(--pv-text);cursor:pointer;border-radius:7px;justify-content:space-between;align-items:center;gap:10px;padding:9px;display:flex}.family-list>button.active{border-color:var(--pv-accent);background:var(--pv-accent-soft);box-shadow:inset 3px 0 var(--pv-accent)}.family-list>button.archived{opacity:.72}.family-list>button span{align-items:center;gap:6px;min-width:0;display:flex}.family-list>button b{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.family-list>button small{color:var(--pv-muted);white-space:nowrap}.family-editor{border:1px solid var(--pv-border);background:var(--pv-surface-2);border-radius:8px;align-self:start;padding:14px}.family-editor>div:first-child span,.family-editor>div:first-child b{display:block}.family-editor>div:first-child span{color:var(--pv-accent-strong);font-size:var(--pv-font-xs);letter-spacing:.08em;font-weight:900}.family-editor>div:first-child b{margin-top:3px;font-size:17px}.family-editor>label{color:var(--pv-muted);font-size:var(--pv-font-xs);text-transform:uppercase;letter-spacing:.06em;margin-top:14px;display:block}.family-editor input{background:var(--pv-input);border:1px solid var(--pv-border-strong);width:100%;color:var(--pv-text);text-transform:none;border-radius:7px;outline:none;margin-top:4px;padding:8px;display:block}.family-editor .row-actions{flex-wrap:wrap;gap:6px;margin-top:12px;display:flex}.family-usage-note{color:var(--pv-warning);font-size:var(--pv-font-xs);margin-top:10px;line-height:1.45;display:block}.characteristic-scope-tabs{background:var(--pv-surface-2);border:1px solid var(--pv-border);border-radius:8px;grid-template-columns:1fr 1fr;gap:5px;margin-bottom:10px;padding:4px;display:grid}.characteristic-scope-tabs button{color:var(--pv-muted);cursor:pointer;text-align:left;background:0 0;border:1px solid #0000;border-radius:6px;flex-direction:column;align-items:flex-start;padding:7px 9px;display:flex}.characteristic-scope-tabs button b{color:var(--pv-text-soft);font-size:var(--pv-font-xs)}.characteristic-scope-tabs button span{font-size:var(--pv-font-xs);margin-top:2px}.characteristic-scope-tabs button.active{border-color:var(--pv-accent);background:var(--pv-accent-soft);color:var(--pv-accent-strong)}.characteristic-scope-tabs button.active b{color:var(--pv-text)}.characteristic-library-grid{grid-template-columns:minmax(300px,.8fr) minmax(480px,1.2fr);gap:10px;min-height:410px;display:grid}.characteristic-library-list,.characteristic-library-editor{border:1px solid var(--pv-border);background:var(--pv-surface-2);border-radius:8px;min-width:0}.characteristic-library-list{flex-direction:column;min-height:0;padding:9px;display:flex}.library-list-head{justify-content:space-between;align-items:center;gap:8px;margin-bottom:7px;display:flex}.library-list-head span,.library-list-head b{display:block}.library-list-head span{color:var(--pv-accent-strong);font-size:var(--pv-font-xs);letter-spacing:.08em;font-weight:900}.library-list-head b{font-size:var(--pv-font-sm);margin-top:2px}.library-search{background:var(--pv-input);border:1px solid var(--pv-border-strong);width:100%;color:var(--pv-text);border-radius:7px;outline:none;margin-bottom:7px;padding:8px}.library-rows{flex-direction:column;gap:4px;min-height:0;max-height:430px;display:flex;overflow:auto}.library-rows>button{text-align:left;background:var(--pv-surface);border:1px solid var(--pv-border);color:var(--pv-text);cursor:pointer;border-radius:6px;grid-template-columns:45px minmax(0,1fr) auto;align-items:center;gap:7px;padding:7px;display:grid}.library-rows>button.active{border-color:var(--pv-accent);background:var(--pv-accent-soft);box-shadow:inset 3px 0 var(--pv-accent)}.library-rows>button.archived{opacity:.7}.library-master-no{color:var(--pv-accent-strong);font-size:var(--pv-font-xs);font-weight:800}.library-rows b,.library-rows small{white-space:nowrap;text-overflow:ellipsis;min-width:0;display:block;overflow:hidden}.library-rows b{font-size:var(--pv-font-xs)}.library-rows small{font-size:var(--pv-font-xs);color:var(--pv-muted);margin-top:2px}.library-rows em{color:var(--pv-muted);font-style:normal;font-size:var(--pv-font-xs);border:1px solid var(--pv-border);border-radius:999px;padding:3px 5px}.characteristic-library-editor{padding:12px}.characteristic-library-editor .char-master-note.warning{color:var(--pv-warning);border-color:color-mix(in srgb,var(--pv-warning) 45%,var(--pv-border));background:var(--pv-warning-bg)}.characteristic-library-editor .advanced-grid label{font-size:var(--pv-font-xs);color:var(--pv-muted)}.characteristic-library-editor .advanced-grid input{background:var(--pv-input);border:1px solid var(--pv-border-strong);width:100%;color:var(--pv-text);border-radius:6px;margin-top:3px;padding:7px}.library-editor-actions{border-top:1px solid var(--pv-border);flex-wrap:wrap;align-items:center;gap:6px;margin-top:12px;padding-top:10px;display:flex}.library-archive-note{color:var(--pv-warning);font-size:var(--pv-font-xs);margin-top:8px;line-height:1.45;display:block}.characteristic-gamme-strip{border-bottom:1px solid var(--pv-border);align-items:center;gap:10px;margin-bottom:9px;padding-bottom:8px;display:flex}.characteristic-gamme-strip>span{color:var(--pv-muted);font-size:var(--pv-font-xs);letter-spacing:.08em;font-weight:900}.characteristic-gamme-strip>div{gap:5px;min-width:0;display:flex;overflow:auto}.characteristic-gamme-strip button{border:1px solid var(--pv-border);background:var(--pv-surface-2);min-width:105px;color:var(--pv-text-soft);cursor:pointer;border-radius:6px;flex-direction:column;align-items:flex-start;padding:6px 8px;display:flex}.characteristic-gamme-strip button.active{border-color:var(--pv-accent);background:var(--pv-accent-soft);color:var(--pv-accent-strong)}.characteristic-gamme-strip button small{color:var(--pv-muted);font-size:var(--pv-font-xs);white-space:nowrap;text-overflow:ellipsis;max-width:120px;margin-top:1px;display:block;overflow:hidden}@media (width<=1250px){.manage-section-tabs{grid-template-columns:repeat(3,minmax(0,1fr))}.methods-mapping-workspace{grid-template-columns:250px minmax(0,1fr)}.family-manager-grid,.plan-manager-grid,.characteristic-library-grid{grid-template-columns:1fr}}@media (width<=820px){.manage-section-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}}.control-phase-photos{background:var(--pv-bg);flex-direction:column;display:flex;position:absolute;inset:0;overflow:hidden}.control-phase-photo-head{border-bottom:1px solid var(--pv-border);background:var(--pv-surface-2);flex:none;justify-content:space-between;align-items:center;gap:12px;padding:48px 12px 9px;display:flex}.control-phase-photo-head span{color:var(--pv-accent-strong);font-size:var(--pv-font-xs);letter-spacing:.09em;font-weight:900;display:block}.control-phase-photo-head b{margin-top:2px;font-size:12px;display:block}.control-phase-photo-head small{color:var(--pv-muted);font-size:var(--pv-font-xs)}.control-phase-photo-grid{flex:1;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:9px;min-height:0;padding:10px;display:grid;overflow:auto}.control-phase-photo-grid figure{border:1px solid var(--pv-border);background:var(--pv-surface-2);border-radius:8px;flex-direction:column;min-width:0;margin:0;display:flex;overflow:hidden}.control-phase-photo-grid img{object-fit:contain;background:var(--pv-canvas-paper);width:100%;height:100%;min-height:260px;display:block}.control-phase-photo-grid figcaption{border-top:1px solid var(--pv-border);color:var(--pv-muted);font-size:var(--pv-font-xs);white-space:nowrap;text-overflow:ellipsis;flex:none;padding:6px 8px;overflow:hidden}.product-detail{flex-direction:column;gap:9px;min-width:0;min-height:0;padding-right:3px;display:flex;overflow:auto}.product-summary{flex:none;min-height:104px!important;padding:10px 12px!important;position:relative!important;top:auto!important;overflow:visible!important}.product-summary-title{margin-bottom:7px}.product-form-row{grid-template-columns:minmax(150px,.8fr) minmax(220px,1.25fr) 110px minmax(150px,.8fr) auto!important;align-items:end!important;gap:7px!important;display:grid!important}.product-form-row>*{min-width:0}.product-actions{flex-wrap:nowrap!important;align-items:end!important;display:flex!important}.manage-section-tabs{flex:none;z-index:2!important;margin:0!important;position:relative!important;top:auto!important}.operations-card,.characteristics-card,.product-photos-card,.methods-mapping-workspace,.asset-preview-grid{flex:none;position:relative;margin:0!important}.operations-card{min-height:0!important}.operation-tabs{max-height:112px;overflow:auto}.operation-editor{grid-template-columns:130px minmax(180px,1fr) 95px 85px auto!important;align-items:end!important;gap:7px!important;display:grid!important}.operation-editor>*{min-width:0}.characteristics-card{min-height:0!important}.char-table.v2{max-height:290px;overflow:auto}.char-editor-v2{margin-top:9px}@media (width<=1350px){.product-form-row{grid-template-columns:1fr 1.4fr 90px 1fr!important}.product-actions{grid-column:1/-1}.operation-editor{grid-template-columns:115px minmax(180px,1fr) 90px 80px!important}.operation-editor .row-actions{grid-column:1/-1}}.drawing-asset.multi-plan{align-items:flex-start;gap:7px}.drawing-asset.multi-plan>div:first-child{flex:1;min-width:0}.drawing-asset.multi-plan small{color:var(--pv-muted);font-size:var(--pv-font-xs);margin-top:2px;line-height:1.3;display:block}.drawing-plan-actions{flex:none;align-items:center;gap:4px;display:flex}.drawing-plan-actions>button{border:1px solid var(--pv-border-strong);background:var(--pv-surface-2);color:var(--pv-muted);font-size:var(--pv-font-xs);cursor:pointer;border-radius:6px;padding:6px 7px;font-weight:800}.drawing-plan-actions>button.linked{border-color:var(--pv-success);background:var(--pv-success-bg);color:var(--pv-success)}.drawing-plan-actions>button:disabled{opacity:.45;cursor:default}.phase-spec-routing{align-items:end;gap:7px;margin-left:auto;display:flex}.phase-spec-routing label{width:110px;font-size:var(--pv-font-xs);color:var(--pv-muted);text-transform:uppercase;letter-spacing:.05em}.phase-spec-routing label:first-child{width:220px}.phase-spec-routing input,.phase-spec-routing select{background:var(--pv-input);border:1px solid var(--pv-border-strong);width:100%;color:var(--pv-text);border-radius:6px;outline:none;margin-top:4px;padding:7px;display:block}.control-plan-select{border:1px solid var(--pv-border-strong);background:var(--pv-surface-2);min-width:130px;max-width:220px;color:var(--pv-text-soft);font-size:var(--pv-font-xs);border-radius:6px;outline:none;padding:5px 7px}@media (width<=1150px){.phase-spec-head{flex-direction:column;align-items:flex-start}.phase-spec-routing{width:100%;margin-left:0}.phase-spec-routing label:first-child{flex:1;width:auto}}.catalog-workspace-mode{grid-template-rows:auto minmax(0,1fr)}.catalog-workspace-mode>.manage-section-tabs{grid-area:1/1/auto/-1;align-self:start;width:100%}.catalog-workspace-mode>.product-master{grid-area:2/1;overflow:hidden}.catalog-workspace-mode>.product-detail{grid-area:2/2;min-height:0;overflow:auto}.manage-head-actions button:disabled{opacity:.35;cursor:default}.product-side-editor{border-top:1px solid var(--pv-border);flex:none;max-height:min(48vh,430px);margin-top:9px;padding-top:9px;overflow:auto}.product-side-editor-head{justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px;display:flex}.product-side-editor-head span,.product-side-editor-head b{display:block}.product-side-editor-head span{color:var(--pv-accent-strong);font-size:var(--pv-font-xs);letter-spacing:.09em;font-weight:900}.product-side-editor-head b{margin-top:2px;font-size:12px}.product-side-editor-head>button{border:1px solid var(--pv-border);background:var(--pv-surface-3);width:27px;height:27px;color:var(--pv-muted);cursor:pointer;border-radius:6px}.product-side-editor>label,.product-side-editor-two label{color:var(--pv-muted);font-size:var(--pv-font-xs);text-transform:uppercase;letter-spacing:.06em;margin-top:7px;display:block}.product-side-editor input,.product-side-editor select{background:var(--pv-input);border:1px solid var(--pv-border-strong);width:100%;color:var(--pv-text);text-transform:none;letter-spacing:0;border-radius:6px;outline:none;margin-top:4px;padding:7px;display:block}.product-side-editor-two{grid-template-columns:.65fr 1.35fr;gap:6px;display:grid}.product-side-editor-actions{grid-template-columns:1fr auto;gap:6px;margin-top:9px;display:grid}.product-side-editor-actions button:not(.ui-button),.product-side-danger button:not(.ui-button){border:1px solid var(--pv-border-strong);background:var(--pv-surface-3);color:var(--pv-text-soft);cursor:pointer;border-radius:6px;padding:7px 9px}.product-side-danger{border-top:1px solid var(--pv-border);flex-wrap:wrap;gap:5px;margin-top:8px;padding-top:8px;display:flex}.product-side-danger button:not(.ui-button){font-size:var(--pv-font-xs)}.catalog-workspace-mode .product-master-list{min-height:90px}.catalog-workspace-mode .product-detail>.plan-manager-card,.catalog-workspace-mode .product-detail>.family-manager-card,.catalog-workspace-mode .product-detail>.operations-card,.catalog-workspace-mode .product-detail>.characteristics-card,.catalog-workspace-mode .product-detail>.product-photos-card{flex:1 0 auto}@media (width<=1350px){.product-side-editor-two{grid-template-columns:1fr}}.ocr-plan-picker{flex-direction:column;gap:6px;min-height:0;display:flex}.ocr-plan-picker-head{justify-content:space-between;align-items:center;display:flex}.ocr-plan-picker-head span{font-size:var(--pv-font-xs);letter-spacing:.09em;color:var(--pv-accent-strong);font-weight:900}.ocr-plan-picker-head b{font-size:var(--pv-font-xs);color:var(--pv-muted)}.ocr-plan-picker>input{border:1px solid var(--pv-border-strong);background:var(--pv-input);width:100%;color:var(--pv-text);border-radius:6px;outline:none;padding:7px 8px}.ocr-plan-list{flex-direction:column;gap:4px;max-height:190px;display:flex;overflow:auto}.ocr-plan-list>button{text-align:left;border:1px solid var(--pv-border);background:var(--pv-surface-2);color:var(--pv-text);cursor:pointer;border-radius:6px;justify-content:space-between;align-items:center;gap:7px;padding:7px 8px;display:flex}.ocr-plan-list>button.active{border-color:var(--pv-accent);background:var(--pv-accent-soft);box-shadow:inset 3px 0 var(--pv-accent)}.ocr-plan-list>button>span{min-width:0}.ocr-plan-list b,.ocr-plan-list small{white-space:nowrap;text-overflow:ellipsis;display:block;overflow:hidden}.ocr-plan-list b{font-size:var(--pv-font-xs)}.ocr-plan-list small{font-size:var(--pv-font-xs);color:var(--pv-muted);margin-top:2px}.ocr-plan-list i{font-style:normal;font-size:var(--pv-font-xs);color:var(--pv-success);border:1px solid var(--pv-success);border-radius:999px;padding:2px 4px}.ocr-plan-empty{border:1px dashed var(--pv-border);text-align:center;color:var(--pv-muted);font-size:var(--pv-font-xs);border-radius:6px;padding:10px}.ocr-engine-line{color:var(--pv-muted);font-size:var(--pv-font-xs);align-items:center;gap:6px;display:flex}.ocr-engine-line i{background:var(--pv-danger);border-radius:50%;width:7px;height:7px}.ocr-engine-line.online i{background:var(--pv-success)}.ocr-engine-line.online{color:var(--pv-text-soft)}.ocr-clear-actions{grid-template-columns:1fr 1fr;gap:5px;display:grid}.ocr-clear-actions button{border:1px solid var(--pv-border);background:var(--pv-surface-2);color:var(--pv-muted);font-size:var(--pv-font-xs);cursor:pointer;border-radius:6px;padding:6px}.ocr-clear-actions button:disabled{opacity:.35;cursor:default}.confirm-danger{background:var(--pv-danger-bg)!important;border-color:var(--pv-danger)!important;color:var(--pv-danger)!important;font-weight:900!important}.report-admin{flex-direction:column;gap:14px;padding:16px;display:flex}.report-admin .admin-help{max-width:980px;font-size:11px;line-height:1.55}.report-branding-grid{grid-template-columns:minmax(0,1.65fr) minmax(230px,.55fr);gap:12px;display:grid}.report-branding-form{border:1px solid var(--pv-border);background:var(--pv-surface-2);border-radius:10px;grid-template-columns:1fr 1fr;gap:10px;padding:12px;display:grid}.report-branding-form label,.report-logo-card>span,.report-new-template>div span{font-size:var(--pv-font-xs);color:var(--pv-muted);letter-spacing:.06em;text-transform:uppercase;font-weight:800}.report-branding-form input,.report-branding-form textarea,.report-new-template input,.report-new-template select,.report-template-name,.report-template-meta select{border:1px solid var(--pv-border-strong);background:var(--pv-input);width:100%;color:var(--pv-text);border-radius:7px;outline:none;margin-top:5px;padding:9px 10px;font-size:12px;display:block}.report-branding-form input:focus,.report-branding-form textarea:focus,.report-template-name:focus,.report-new-template input:focus,.report-new-template select:focus,.report-template-meta select:focus{border-color:var(--pv-accent)}.report-branding-form textarea{resize:vertical;min-height:76px;line-height:1.45}.report-footer-field{grid-column:1/-1}.report-branding-form>.primary{justify-self:start;padding:9px 14px}.report-logo-card{border:1px solid var(--pv-border);background:var(--pv-surface-2);border-radius:10px;flex-direction:column;gap:9px;padding:12px;display:flex}.report-logo-preview{border:1px dashed var(--pv-border-strong);background:#fff;border-radius:8px;place-items:center;height:112px;padding:10px;display:grid;overflow:hidden}.report-logo-preview img{object-fit:contain;max-width:100%;max-height:90px}.report-logo-preview b{color:#718096;font-size:11px}.report-logo-card button,.report-file-button,.report-template-actions button,.report-template-actions a,.inline-file{border:1px solid var(--pv-border-strong);background:var(--pv-surface-3);color:var(--pv-text-soft);cursor:pointer;text-align:center;border-radius:7px;padding:8px 10px;font-size:11px;text-decoration:none}.report-file-button,.inline-file{justify-content:center;align-items:center;display:inline-flex}.report-file-button input,.inline-file input{display:none}.report-logo-card button:disabled{opacity:.38;cursor:default}.report-template-head{justify-content:space-between;align-items:flex-end;gap:14px;padding-top:2px;display:flex}.report-template-head>div span,.report-template-head>div b{display:block}.report-template-head>div span{font-size:var(--pv-font-xs);color:var(--pv-accent-strong);letter-spacing:.08em;font-weight:900}.report-template-head>div b{margin-top:3px;font-size:14px}.report-template-head small{font-size:var(--pv-font-xs);color:var(--pv-muted);text-align:right}.report-template-list{flex-direction:column;gap:7px;display:flex}.report-template-row{border:1px solid var(--pv-border);background:var(--pv-surface-2);border-radius:9px;grid-template-columns:minmax(0,1fr) auto;gap:12px;padding:11px;display:grid}.report-template-row.off{opacity:.72}.report-template-main{min-width:0}.report-template-status{min-height:20px;font-size:var(--pv-font-xs);color:var(--pv-muted);align-items:center;gap:7px;display:flex}.report-template-status i{background:var(--pv-danger);border-radius:50%;flex:none;width:8px;height:8px}.report-template-status i.ok{background:var(--pv-success)}.report-template-status b{background:var(--pv-accent-soft);color:var(--pv-accent-strong);font-size:var(--pv-font-xs);border-radius:999px;margin-left:auto;padding:3px 7px}.report-template-name{font-weight:800;margin-top:5px!important;font-size:13px!important}.report-template-meta{align-items:center;gap:10px;min-width:0;margin-top:7px;display:flex}.report-template-meta select{width:auto;min-width:175px;margin-top:0;padding:6px 8px}.report-template-meta label{color:var(--pv-text-soft);white-space:nowrap;align-items:center;gap:6px;font-size:11px;display:flex}.report-template-meta label input{width:auto}.report-template-meta>span{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--pv-muted);font-size:var(--pv-font-xs);overflow:hidden}.report-template-actions{grid-template-columns:repeat(2,minmax(94px,1fr));align-content:center;gap:5px;width:270px;display:grid}.report-template-actions .primary{background:var(--pv-accent);border-color:var(--pv-accent);color:#fff}.report-template-actions .selected{border-color:var(--pv-accent);color:var(--pv-accent-strong);background:var(--pv-accent-soft)}.report-template-actions .danger-lite{color:var(--pv-danger)}.report-template-actions .confirm-delete{background:var(--pv-danger-bg);border-color:var(--pv-danger);font-weight:850}.report-new-template{border:1px dashed var(--pv-border-strong);background:color-mix(in srgb,var(--pv-surface-2) 75%,transparent);border-radius:9px;grid-template-columns:minmax(170px,1.2fr) minmax(180px,1fr) 190px auto minmax(170px,.9fr) auto;align-items:end;gap:8px;padding:11px;display:grid}.report-new-template>div b{margin-top:3px;font-size:12px;display:block}.report-new-template input,.report-new-template select{margin:0}.report-new-template>label:not(.report-file-button){white-space:nowrap;align-items:center;gap:6px;padding:9px 4px;font-size:11px;display:flex}.report-new-template>label:not(.report-file-button) input{width:auto;margin:0}.report-new-template>.primary{height:36px}.report-token-help{border:1px solid var(--pv-border);background:var(--pv-surface-2);border-radius:9px;padding:10px 12px}.report-token-help summary{cursor:pointer;color:var(--pv-text-soft);font-size:11px;font-weight:800}.report-token-grid{grid-template-columns:minmax(220px,.55fr) 1fr;gap:5px 10px;margin-top:10px;display:grid}.report-token-grid code{background:var(--pv-surface-3);color:var(--pv-accent-strong);overflow-wrap:anywhere;border-radius:5px;padding:5px 7px;font-size:11px}.report-token-grid span{color:var(--pv-muted);align-self:center;font-size:11px}.report-token-help p{color:var(--pv-muted);margin:10px 0 0;font-size:11px;line-height:1.5}@media (width<=1200px){.report-branding-grid,.report-template-row{grid-template-columns:1fr}.report-template-actions{grid-template-columns:repeat(4,minmax(100px,1fr));width:auto}.report-new-template{grid-template-columns:1fr 1fr 1fr}}.part-finished-actions{grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:6px;display:grid}.report-export-control{gap:5px;display:grid}.report-export-control select{border:1px solid var(--pv-border-strong);background:var(--pv-surface-2);width:100%;min-width:0;color:var(--pv-text-soft);font-size:var(--pv-font-xs);border-radius:7px;padding:7px 8px}.part-finished-actions .report-download{border:1px solid var(--pv-border-strong);background:var(--pv-surface-2);color:var(--pv-accent-strong);border-radius:7px;place-items:center;padding:9px;font-size:11px;font-weight:800;text-decoration:none;display:grid}.part-finished-actions .report-download:hover{border-color:var(--pv-accent);background:var(--pv-accent-soft)}.report-unavailable{border:1px dashed var(--pv-border-strong);color:var(--pv-muted);font-size:var(--pv-font-xs);border-radius:7px;place-items:center;padding:8px;display:grid}.control-media-panel{flex-direction:column;min-width:0;min-height:0;display:flex;position:relative;overflow:hidden}.control-media-header{border-bottom:1px solid var(--pv-border);background:var(--pv-surface-2);z-index:30;flex:none;grid-template-columns:minmax(125px,.75fr) auto minmax(125px,.75fr);align-items:center;gap:10px;min-height:52px;padding:7px 10px;display:grid}.control-media-heading{min-width:0}.control-media-heading span,.control-media-heading b{white-space:nowrap;text-overflow:ellipsis;display:block;overflow:hidden}.control-media-heading span{font-size:var(--pv-font-xs);letter-spacing:.09em;color:var(--pv-accent-strong);font-weight:900}.control-media-heading b{font-size:var(--pv-font-xs);color:var(--pv-text-soft);margin-top:2px}.control-media-header .control-media-switch{z-index:auto;min-width:max-content;box-shadow:none;background:var(--pv-surface-3);justify-self:center;padding:3px;display:flex;position:static;top:auto;left:auto;transform:none}.control-media-header .control-media-switch button{min-width:60px;padding:6px 10px}.control-media-header .control-media-switch button:disabled{opacity:.42}.control-media-header-right{justify-content:flex-end;align-items:center;gap:5px;min-width:0;display:flex}.control-media-availability{border:1px solid var(--pv-border);min-height:24px;color:var(--pv-muted-2);background:var(--pv-surface-3);font-size:var(--pv-font-xs);white-space:nowrap;border-radius:999px;align-items:center;padding:4px 7px;font-weight:800;display:inline-flex}.control-media-availability.ready{color:var(--pv-success);border-color:color-mix(in srgb,var(--pv-success) 42%,var(--pv-border));background:var(--pv-success-bg)}.control-media-body{background:var(--pv-bg);flex:1;min-width:0;min-height:0;position:relative;overflow:hidden}.control-media-body>.viewer-wrap,.control-media-body>.control-plan,.control-media-body>.control-media-split,.control-media-body>.control-phase-photos,.control-media-body>.control-media-empty{position:absolute;inset:0}.control-media-body .control-media-empty{padding:24px}.control-media-body .control-phase-photo-head{padding:9px 12px}.control-media-body .control-media-split .control-plan-toolbar{height:49px;padding:7px 10px}.control-media-body .control-media-split .viewer-tools,.control-media-body .control-media-split .view-cube-wrap{top:12px}.control-media-body .control-media-split{grid-template-rows:minmax(0,1fr);grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.control-media-body .control-media-pane-plan{border-left:1px solid var(--pv-border);border-top:0}@media (width<=1180px){.control-media-header{grid-template-columns:1fr auto;grid-template-areas:"title status""switch switch";gap:6px;padding:6px 8px}.control-media-heading{grid-area:title}.control-media-header .control-media-switch{grid-area:switch;width:100%}.control-media-header .control-media-switch button{flex:1}.control-media-header-right{grid-area:status}.control-media-availability{display:none}.control-media-body .control-media-split{grid-template-rows:minmax(0,1fr) minmax(0,1fr);grid-template-columns:1fr}.control-media-body .control-media-pane-plan{border-left:0;border-top:1px solid var(--pv-border)}}.plan-version-box{border:1px solid color-mix(in srgb,var(--pv-accent) 35%,var(--pv-border));background:color-mix(in srgb,var(--pv-accent-soft) 55%,var(--pv-surface-2));border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px 12px;margin-top:9px;padding:10px;display:grid}.plan-version-box>div:first-child{min-width:0}.plan-version-box>div:first-child span,.plan-version-box>div:first-child b,.plan-version-box>div:first-child small{display:block}.plan-version-box>div:first-child span{font-size:var(--pv-font-xs);letter-spacing:.09em;color:var(--pv-accent-strong);font-weight:900}.plan-version-box>div:first-child b{margin-top:2px;font-size:11px}.plan-version-box>div:first-child small{max-width:760px;color:var(--pv-muted);font-size:var(--pv-font-xs);margin-top:3px;line-height:1.45}.plan-version-confirm{border-top:1px solid var(--pv-border);grid-column:1/-1;grid-template-columns:minmax(150px,220px) auto auto;align-items:end;gap:7px;padding-top:8px;display:grid}.plan-version-confirm label{font-size:var(--pv-font-xs);color:var(--pv-muted);text-transform:uppercase;letter-spacing:.05em}.plan-version-confirm input{border:1px solid var(--pv-border-strong);background:var(--pv-input);width:100%;color:var(--pv-text);border-radius:6px;outline:none;margin-top:4px;padding:7px 8px;display:block}.plan-version-confirm button:not(.ui-button){border:1px solid var(--pv-border-strong);background:var(--pv-surface-3);height:34px;color:var(--pv-text-soft);cursor:pointer;border-radius:6px;padding:0 10px}.plan-list-flags{align-items:center;gap:4px;display:flex}.control-run-actions{grid-template-columns:1fr auto;gap:6px;margin:-2px 0 9px;display:grid}.control-run-actions button:not(.ui-button){border:1px solid var(--pv-border);background:var(--pv-surface-2);color:var(--pv-muted);font-size:var(--pv-font-xs);cursor:pointer;border-radius:6px;padding:7px 9px}.control-run-actions .confirm-cancel{font-weight:850;border-color:var(--pv-danger)!important;background:var(--pv-danger-bg)!important;color:var(--pv-danger)!important}.control-top-fields select:disabled{opacity:.55;cursor:not-allowed}@media (width<=1050px){.plan-version-box,.plan-version-confirm{grid-template-columns:1fr}}.ui-button{white-space:nowrap;cursor:pointer;border:1px solid #0000;border-radius:7px;justify-content:center;align-items:center;gap:7px;font-family:inherit;font-weight:800;line-height:1;text-decoration:none;transition:background .14s,border-color .14s,color .14s,opacity .14s;display:inline-flex}.ui-button:disabled{opacity:.42;cursor:not-allowed}.ui-button--md{min-height:38px;font-size:var(--pv-font-sm);padding:0 13px}.ui-button--sm{min-height:32px;font-size:var(--pv-font-xs);padding:0 10px}.ui-button--lg{min-height:44px;font-size:var(--pv-font-md);padding:0 17px}.ui-button--icon{width:38px;height:38px;padding:0}.ui-button--default{background:var(--pv-accent);border-color:var(--pv-accent);color:var(--pv-on-accent)}.ui-button--default:hover:not(:disabled){filter:brightness(1.08)}.ui-button--secondary{background:var(--pv-surface-3);border-color:var(--pv-border);color:var(--pv-text-soft)}.ui-button--secondary:hover:not(:disabled){border-color:var(--pv-border-strong);background:var(--pv-surface-2)}.ui-button--outline{border-color:var(--pv-border-strong);color:var(--pv-text-soft);background:0 0}.ui-button--outline:hover:not(:disabled){border-color:var(--pv-accent);color:var(--pv-accent-strong);background:var(--pv-accent-soft)}.ui-button--ghost{color:var(--pv-muted);background:0 0;border-color:#0000}.ui-button--ghost:hover:not(:disabled){background:var(--pv-surface-2);color:var(--pv-text)}.ui-button--destructive{background:var(--pv-danger-bg);border-color:var(--pv-danger);color:var(--pv-danger)}.ui-button--destructive:hover:not(:disabled){filter:brightness(1.06)}.general-tolerance-editor,.plan-tolerance-editor{border:1px solid var(--pv-border);background:var(--pv-surface-2);border-radius:8px;grid-template-columns:minmax(190px,1.25fr) minmax(180px,.85fr) auto;align-items:end;gap:9px;margin-top:9px;padding:10px;display:grid}.general-tolerance-editor>div,.plan-tolerance-editor>div{align-self:center;min-width:0}.general-tolerance-editor>div span,.plan-tolerance-editor>div span{font-size:var(--pv-font-xs);letter-spacing:.07em;color:var(--pv-accent-strong);font-weight:900;display:block}.general-tolerance-editor>div small,.plan-tolerance-editor>div small{font-size:var(--pv-font-xs);color:var(--pv-muted);margin-top:4px;line-height:1.4;display:block}.general-tolerance-editor label,.plan-tolerance-editor label{font-size:var(--pv-font-xs);color:var(--pv-muted);display:block}.general-tolerance-editor select,.plan-tolerance-editor select{width:100%;min-height:34px;margin-top:4px}.general-tolerance-editor>b,.plan-tolerance-editor>b{border:1px solid var(--pv-border-strong);color:var(--pv-accent-strong);background:var(--pv-accent-soft);font-size:var(--pv-font-xs);white-space:nowrap;border-radius:999px;place-self:center end;padding:6px 9px}.product-side-editor .general-tolerance-editor{grid-template-columns:1fr;align-items:stretch}.product-side-editor .general-tolerance-editor>div{grid-column:1}.product-side-editor .general-tolerance-editor>b{justify-self:start}.product-master-list>button{position:relative}.general-tolerance-badge{font-style:normal;font-size:var(--pv-font-xs);border:1px solid var(--pv-border-strong);color:var(--pv-accent-strong);background:var(--pv-accent-soft);border-radius:999px;padding:3px 6px;font-weight:900;position:absolute;bottom:7px;right:7px}.control-tolerance-source{border:1px solid color-mix(in srgb,var(--pv-accent) 40%,var(--pv-border));background:var(--pv-accent-soft);border-radius:7px;gap:3px;margin-top:8px;padding:8px 9px;display:grid}.control-tolerance-source b{color:var(--pv-accent-strong);font-size:11px}.control-tolerance-source span{font-size:var(--pv-font-xs);color:var(--pv-muted);line-height:1.4}.control-tolerance-source.missing{border-color:color-mix(in srgb,var(--pv-warning) 50%,var(--pv-border));background:var(--pv-warning-bg)}.control-tolerance-source.missing b{color:var(--pv-warning)}.live-status.missing_tolerance{background:var(--pv-warning-bg);color:var(--pv-warning);border:1px solid var(--pv-warning)}@media (width<=1100px){.general-tolerance-editor,.plan-tolerance-editor{grid-template-columns:1fr 1fr}.general-tolerance-editor>div,.plan-tolerance-editor>div{grid-column:1/-1}.general-tolerance-editor>b,.plan-tolerance-editor>b{justify-self:start}}.setup-data-choice{grid-template-columns:1fr 1fr;gap:7px;margin-top:4px;display:grid}.setup-data-choice>button{text-align:left;border:1px solid var(--pv-border);background:var(--pv-surface-2);min-width:0;color:var(--pv-text);cursor:pointer;border-radius:9px;grid-template-columns:28px minmax(0,1fr);align-items:start;gap:8px;padding:10px;display:grid}.setup-data-choice>button.active{border-color:var(--pv-accent);background:var(--pv-accent-soft);box-shadow:inset 3px 0 var(--pv-accent)}.setup-data-choice>button>span{border:1px solid var(--pv-border-strong);width:26px;height:26px;color:var(--pv-accent-strong);border-radius:7px;place-items:center;display:grid}.setup-data-choice b,.setup-data-choice small{display:block}.setup-data-choice b{font-size:11px}.setup-data-choice small{font-size:var(--pv-font-xs);color:var(--pv-muted);margin-top:3px;line-height:1.4}.admin-section-launchers{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.admin-section-launchers .admin-card{margin:0}.admin-report-link{border-color:color-mix(in srgb,var(--pv-accent) 30%,var(--pv-border))}.admin-demo-catalog{border-color:color-mix(in srgb,var(--pv-accent) 35%,var(--pv-border))!important}.admin-demo-catalog .admin-card-head .ui-button{font-weight:850}.report-admin-page{max-width:1400px;margin:0 auto;padding-bottom:28px}.report-admin-hero{justify-content:space-between;align-items:center;gap:14px;display:flex}.report-admin-hero-actions{align-items:center;gap:8px;display:flex}.report-admin-hero-actions em{color:var(--pv-muted);font-style:normal;font-size:var(--pv-font-xs);border:1px solid var(--pv-border);border-radius:999px;padding:6px 9px}.report-admin-hero-actions button{border:1px solid var(--pv-border-strong);background:var(--pv-surface-2);color:var(--pv-text-soft);cursor:pointer;border-radius:6px;padding:7px 10px}@media (width<=760px){.setup-data-choice,.admin-section-launchers{grid-template-columns:1fr}.admin-demo-catalog .admin-card-head{flex-direction:column!important;align-items:stretch!important}.admin-demo-catalog .admin-card-head .ui-button{width:100%;min-height:44px}.report-admin-hero{flex-direction:column;align-items:flex-start}.report-admin-hero-actions{justify-content:space-between;width:100%}}.confirm-action.confirm-armed{border-color:var(--pv-danger)!important;background:var(--pv-danger-bg)!important;color:var(--pv-danger)!important;font-weight:900!important}.inspection-mode-card{border:1px solid var(--pv-border);background:var(--pv-surface-2);border-radius:9px;gap:9px;margin-top:10px;padding:10px;display:grid}.inspection-mode-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.inspection-mode-head b{font-size:var(--pv-font-xs);color:var(--pv-text)}.inspection-mode-head span{text-align:right;max-width:430px;font-size:var(--pv-font-xs);color:var(--pv-muted);line-height:1.4}.inspection-mode-fields{grid-template-columns:repeat(3,minmax(0,1fr));align-items:end;gap:7px;display:grid}.inspection-mode-fields label{font-size:var(--pv-font-xs);color:var(--pv-muted);flex-direction:column;gap:4px;display:flex}.inspection-mode-fields label.wide{grid-column:span 2}.inspection-mode-fields input,.inspection-mode-fields select{border:1px solid var(--pv-border-strong);background:var(--pv-input);width:100%;min-width:0;color:var(--pv-text);border-radius:6px;padding:7px 8px}.inspection-mode-fields>small{color:var(--pv-muted);font-size:var(--pv-font-xs);grid-column:span 2;line-height:1.35}.inspection-mode-card.mode-fai{border-left:3px solid var(--pv-accent)}.inspection-mode-card.mode-production{border-left:3px solid var(--pv-success)}.inspection-mode-card.mode-setup{border-left:3px solid var(--pv-warning)}.inspection-mode-card.mode-final{border-left:3px solid var(--pv-type-diameter)}.phase-control-plan{border:1px solid var(--pv-border);background:var(--pv-surface-2);border-radius:8px;gap:8px;padding:9px;display:grid}.phase-control-plan-head{justify-content:space-between;align-items:center;gap:10px;display:flex}.phase-control-plan-head span{font-size:var(--pv-font-xs);letter-spacing:.09em;color:var(--pv-accent-strong);font-weight:900;display:block}.phase-control-plan-head b{font-size:var(--pv-font-xs);margin-top:2px;display:block}.phase-control-plan-head button{border:1px solid var(--pv-border-strong);background:var(--pv-surface-3);color:var(--pv-muted);font-size:var(--pv-font-xs);cursor:pointer;border-radius:999px;padding:5px 8px;font-weight:850}.phase-control-plan-head button.active{border-color:var(--pv-success);background:var(--pv-success-bg);color:var(--pv-success)}.phase-control-plan-grid{grid-template-columns:.9fr 1fr 1fr .9fr;align-items:end;gap:6px;display:grid}.phase-control-plan-grid>label{font-size:var(--pv-font-xs);color:var(--pv-muted);flex-direction:column;gap:3px;display:flex}.phase-control-plan-grid label:not(.check-rule) input{border:1px solid var(--pv-border);background:var(--pv-input);width:100%;min-width:0;color:var(--pv-text);border-radius:6px;padding:7px}.phase-control-plan-grid .check-rule{border:1px solid var(--pv-border);background:var(--pv-surface-3);min-height:31px;color:var(--pv-text-soft);border-radius:6px;flex-direction:row;align-items:center;gap:6px;padding:6px 7px;display:flex}.phase-control-plan-grid .check-rule input{margin:0}.phase-control-plan>small,.phase-control-plan-off{font-size:var(--pv-font-xs);color:var(--pv-muted);line-height:1.4}.phase-control-plan-off{border:1px dashed var(--pv-border);border-radius:6px;padding:8px}.compact-control-plan{gap:7px}.control-preset-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;display:grid}.control-preset-grid button{border:1px solid var(--pv-border-strong);background:var(--pv-surface-3);min-height:36px;color:var(--pv-text-soft);font-size:var(--pv-font-xs);cursor:pointer;border-radius:7px;font-weight:850}.control-preset-grid button:hover{border-color:var(--pv-accent);color:var(--pv-text)}.control-preset-grid button.active{border-color:var(--pv-accent);background:var(--pv-accent-soft);color:var(--pv-accent-strong)}.control-preset-grid button.active.off{border-color:var(--pv-muted);background:var(--pv-surface-3);color:var(--pv-muted)}.control-preset-n{color:var(--pv-muted);font-size:var(--pv-font-xs);grid-template-columns:auto 88px;justify-content:start;align-items:center;gap:8px;display:grid}.control-preset-n input{border:1px solid var(--pv-border-strong);background:var(--pv-input);width:88px;color:var(--pv-text);border-radius:6px;padding:7px}.control-plan-advanced{border-top:1px solid var(--pv-border);padding-top:6px}.control-plan-advanced>summary{cursor:pointer;color:var(--pv-muted);font-size:var(--pv-font-xs);font-weight:800;list-style:none}.control-plan-advanced>summary::-webkit-details-marker{display:none}.control-plan-advanced[open]>summary{color:var(--pv-text-soft);margin-bottom:7px}.no-control-due{border:1px dashed var(--pv-border-strong);background:var(--pv-surface-2);text-align:center;border-radius:8px;padding:18px 12px}.no-control-due>span,.no-control-due h2,.no-control-due p{display:block}.no-control-due>span{font-size:var(--pv-font-xs);letter-spacing:.08em;color:var(--pv-accent-strong);font-weight:900}.no-control-due h2{color:var(--pv-text);margin:6px 0;font-size:16px}.no-control-due p{font-size:var(--pv-font-xs);color:var(--pv-muted);margin:0 0 12px;line-height:1.5}.no-control-due.compact{margin:7px;padding:9px}.no-control-due.compact b,.no-control-due.compact span{display:block}.no-control-due.compact b{font-size:var(--pv-font-xs)}.no-control-due.compact span{font-size:var(--pv-font-xs);color:var(--pv-muted);margin-top:3px}.assignment-toolbar{border:1px solid var(--pv-border);background:color-mix(in srgb,var(--pv-surface) 72%,var(--pv-surface-2));border-radius:7px;justify-content:space-between;align-items:center;gap:8px;min-height:36px;margin:0 0 7px;padding:6px 7px;display:flex}.assignment-select-all{min-width:0;color:var(--pv-muted);font-size:var(--pv-font-xs);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:7px;display:flex}.assignment-select-all span{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.assignment-checkbox,.assignment-select-all input{width:14px;height:14px;accent-color:var(--pv-accent);cursor:pointer;margin:0}.assignment-batch-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:5px;display:flex}.assignment-batch-actions button:not(.ui-button){border:1px solid var(--pv-border-strong);background:var(--pv-surface-3);min-height:27px;color:var(--pv-text-soft);font-size:var(--pv-font-xs);cursor:pointer;border-radius:6px;padding:5px 8px;font-weight:800}.assignment-batch-actions button.primary{background:var(--pv-accent);border-color:var(--pv-accent);color:var(--pv-on-accent)}.assignment-batch-actions button:disabled{opacity:.4;cursor:default}.assignment-item.library-item{grid-template-columns:18px 20px 42px minmax(0,1fr) 30px}.assignment-item.phase-item{grid-template-columns:18px 20px 42px minmax(0,1fr) auto 28px}.assignment-item.selected{border-color:color-mix(in srgb,var(--pv-accent) 58%,var(--pv-border));background:color-mix(in srgb,var(--pv-accent-soft) 65%,var(--pv-surface))}.assignment-item.active.selected{border-color:var(--pv-accent-strong);box-shadow:inset 3px 0 var(--pv-accent-strong)}.assignment-row-action{font-size:15px;line-height:1}.close-order-btn{border-color:var(--pv-success)!important;background:var(--pv-success-bg)!important;color:var(--pv-success)!important}.order-inspection-history{border-top:1px solid var(--pv-border);gap:8px;margin-top:12px;padding-top:12px;display:grid}.order-inspection-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.order-inspection-head span,.order-inspection-head b,.order-inspection-head small{display:block}.order-inspection-head span{font-size:var(--pv-font-xs);letter-spacing:.1em;color:var(--pv-accent-strong);font-weight:900}.order-inspection-head b{margin-top:2px;font-size:13px}.order-inspection-head small{color:var(--pv-muted);font-size:var(--pv-font-xs);margin-top:2px}.order-export-actions{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.export-order-link{border:1px solid var(--pv-accent);background:var(--pv-accent-soft);color:var(--pv-accent-strong);font-size:var(--pv-font-xs);white-space:nowrap;border-radius:6px;padding:7px 9px;font-weight:900;text-decoration:none}.export-order-link.secondary{border-color:var(--pv-border-strong);background:var(--pv-surface-3);color:var(--pv-text-soft)}.order-inspection-parts{flex-direction:column;gap:5px;max-height:360px;padding-right:2px;display:flex;overflow:auto}.inspection-part-card{border:1px solid var(--pv-border);background:var(--pv-surface-2);border-radius:7px;overflow:hidden}.inspection-part-card.open{border-color:var(--pv-border-strong)}.inspection-part-head{text-align:left;width:100%;color:var(--pv-text);cursor:pointer;background:0 0;border:0;grid-template-columns:minmax(0,1fr) auto 18px;align-items:center;gap:8px;padding:8px;display:grid}.inspection-part-head b,.inspection-part-head small{display:block}.inspection-part-head b{font-size:var(--pv-font-xs)}.inspection-part-head small{color:var(--pv-muted);font-size:var(--pv-font-xs);margin-top:2px}.inspection-part-head i{border:1px solid var(--pv-border);font-style:normal;font-size:var(--pv-font-xs);border-radius:999px;padding:3px 6px;font-weight:900}.inspection-part-head i.accepted{color:var(--pv-success);border-color:var(--pv-success)}.inspection-part-head i.rejected{color:var(--pv-danger);border-color:var(--pv-danger)}.inspection-part-head i.hold,.inspection-part-head i.rework{color:var(--pv-warning);border-color:var(--pv-warning)}.inspection-part-head em{color:var(--pv-muted);text-align:center;font-style:normal}.inspection-measure-list{border-top:1px solid var(--pv-border);flex-direction:column;display:flex}.inspection-measure-row{border-bottom:1px solid var(--pv-border);font-size:var(--pv-font-xs);grid-template-columns:20px minmax(0,1fr) auto 54px;align-items:center;gap:7px;padding:7px 8px;display:grid}.inspection-measure-row:last-child{border-bottom:0}.inspection-measure-row b,.inspection-measure-row small{display:block}.inspection-measure-row small{color:var(--pv-muted);margin-top:2px}.inspection-measure-row strong{text-align:right}.inspection-measure-row>em{text-align:right;color:var(--pv-muted);font-style:normal;font-size:var(--pv-font-xs)}@media (width<=1100px){.inspection-mode-fields{grid-template-columns:1fr 1fr}.inspection-mode-fields label.wide{grid-column:1/-1}.phase-control-plan-grid{grid-template-columns:1fr 1fr}}@media (width<=760px){.assignment-toolbar{flex-direction:column;align-items:flex-start}.assignment-batch-actions{justify-content:flex-start;width:100%}.order-inspection-head{flex-direction:column;align-items:flex-start}.order-export-actions{justify-content:flex-start}}.drawing-stage.tool-line{cursor:crosshair}.drawing-box.reorienting{pointer-events:none;box-shadow:none!important;background:0 0!important;border-color:#0000!important}.ocr-resize-handle.n,.ocr-resize-handle.s{border-radius:4px;width:28px;height:7px;margin-left:-14px;left:50%}.ocr-resize-handle.n{cursor:ns-resize;top:-4px}.ocr-resize-handle.s{cursor:ns-resize;bottom:-4px}.ocr-resize-handle.e,.ocr-resize-handle.w{border-radius:4px;width:7px;height:28px;margin-top:-14px;top:50%}.ocr-resize-handle.e{cursor:ew-resize;right:-4px}.ocr-resize-handle.w{cursor:ew-resize;left:-4px}.ocr-reading-line{border-top:2px solid var(--pv-accent-strong);transform-origin:0;z-index:11;pointer-events:none;filter:drop-shadow(0 1px 2px #0008);height:0;display:block;position:absolute}.ocr-reading-line span{color:var(--pv-accent-strong);font-size:14px;font-weight:900;position:absolute;top:-10px;right:-3px}.ocr-reading-line.drawing{border-top-style:dashed;border-top-color:var(--pv-warning);opacity:1}.ocr-reading-line.drawing span{color:var(--pv-warning)}.ocr-reading-line{--ocr-line-color:var(--pv-accent-strong);border-top-color:var(--ocr-line-color)}.ocr-reading-line span{color:var(--ocr-line-color)}.ocr-reading-line.type-dimension{--ocr-line-color:var(--pv-type-dimension)}.ocr-reading-line.type-diameter{--ocr-line-color:var(--pv-type-diameter)}.ocr-reading-line.type-radius{--ocr-line-color:var(--pv-type-radius)}.ocr-reading-line.type-chamfer{--ocr-line-color:var(--pv-type-chamfer)}.ocr-reading-line.type-angle{--ocr-line-color:var(--pv-type-angle)}.ocr-reading-line.type-thread{--ocr-line-color:var(--pv-type-thread)}.ocr-reading-line.auto{opacity:.52;border-top-style:dotted}.ocr-reading-line.saved{opacity:.9;border-top-style:solid}.ocr-reading-line.drawing{--ocr-line-color:var(--pv-warning);opacity:1;border-top-style:dashed}.ocr-draw-tools{gap:4px}.ocr-draw-tools .ocr-tool-pin{min-width:34px;color:var(--pv-muted);padding:5px 7px;border-left:1px solid var(--pv-border)!important}.ocr-draw-tools .ocr-tool-pin.active{background:var(--pv-warning-bg)!important;color:var(--pv-warning)!important;border-color:color-mix(in srgb,var(--pv-warning) 55%,var(--pv-border))!important}.drawing-box.ocr-box{border:2px solid color-mix(in srgb,var(--ocr-type-color) 70%,#000);background:color-mix(in srgb,var(--ocr-type-color) 16%,transparent);opacity:1;border-radius:3px;box-shadow:0 0 0 1px #fff}.drawing-box.ocr-box:hover,.drawing-box.ocr-box.sure,.drawing-box.ocr-box.pinned{background:color-mix(in srgb,var(--ocr-type-color) 23%,transparent)}.drawing-box.ocr-box.validated{outline:1px solid var(--pv-success);outline-offset:1px}.drawing-box.ocr-box.sheet-reference:not(.active){border-style:dashed}.drawing-box.ocr-box.active{border:3px solid var(--pv-annotation-active);background:color-mix(in srgb,var(--ocr-type-color) 24%,transparent);outline-offset:2px;box-shadow:0 0 0 2px #fff,0 0 18px color-mix(in srgb,var(--pv-annotation-active) 45%,transparent);cursor:move;z-index:8;outline:2px solid #173044}.drawing-box.ocr-box.pinned:not(.active){border-width:3px}.ocr-resize-handle,.ocr-resize-handle.n,.ocr-resize-handle.s,.ocr-resize-handle.e,.ocr-resize-handle.w,.ocr-resize-handle.nw,.ocr-resize-handle.ne,.ocr-resize-handle.sw,.ocr-resize-handle.se{z-index:8;background:var(--pv-accent-strong)!important;width:7px!important;min-width:7px!important;height:7px!important;min-height:7px!important;box-shadow:0 0 0 1px color-mix(in srgb,var(--pv-accent) 70%,#000),0 1px 3px #0006!important;border:1px solid #fff!important;border-radius:2px!important;margin:0!important;padding:0!important;position:absolute!important}.ocr-resize-handle.n{cursor:ns-resize;transform:translate(-50%);top:-4px!important;left:50%!important}.ocr-resize-handle.s{cursor:ns-resize;transform:translate(-50%);bottom:-4px!important;left:50%!important}.ocr-resize-handle.e{cursor:ew-resize;transform:translateY(-50%);top:50%!important;right:-4px!important}.ocr-resize-handle.w{cursor:ew-resize;transform:translateY(-50%);top:50%!important;left:-4px!important}.ocr-resize-handle.nw{cursor:nwse-resize;top:-4px!important;left:-4px!important}.ocr-resize-handle.ne{cursor:nesw-resize;top:-4px!important;right:-4px!important}.ocr-resize-handle.sw{cursor:nesw-resize;bottom:-4px!important;left:-4px!important}.ocr-resize-handle.se{cursor:nwse-resize;bottom:-4px!important;right:-4px!important}.ocr-reading-line{border-top-width:1.5px!important;height:0!important}.ocr-reading-line.saved{opacity:.72}.ocr-reading-line.pinned{opacity:1!important;border-top-width:2px!important}.ocr-reading-line span{font-size:11px!important;top:-8px!important}.ocr-reocr-group button.active{border-color:var(--pv-warning)!important;background:var(--pv-warning-bg)!important;color:var(--pv-warning)!important}.ocr-resize-handle.n,.ocr-resize-handle.s{width:calc(100% - 14px)!important;min-width:0!important;height:7px!important;min-height:7px!important;box-shadow:none!important;background:0 0!important;border:0!important;border-radius:0!important}.ocr-resize-handle.n{cursor:ns-resize!important;top:-4px!important;left:7px!important;transform:none!important}.ocr-resize-handle.s{cursor:ns-resize!important;bottom:-4px!important;left:7px!important;transform:none!important}.ocr-resize-handle.e,.ocr-resize-handle.w{width:7px!important;min-width:7px!important;height:calc(100% - 14px)!important;min-height:0!important;box-shadow:none!important;background:0 0!important;border:0!important;border-radius:0!important}.ocr-resize-handle.e{cursor:ew-resize!important;top:7px!important;right:-4px!important;transform:none!important}.ocr-resize-handle.w{cursor:ew-resize!important;top:7px!important;left:-4px!important;transform:none!important}.ocr-resize-handle.nw,.ocr-resize-handle.ne,.ocr-resize-handle.sw,.ocr-resize-handle.se{background:var(--pv-accent-strong)!important;width:7px!important;height:7px!important;box-shadow:0 0 0 1px color-mix(in srgb,var(--pv-accent) 70%,#000),0 1px 3px #0006!important;border:1px solid #fff!important;border-radius:2px!important}.ocr-resize-handle.n,.ocr-resize-handle.s,.ocr-resize-handle.e,.ocr-resize-handle.w{opacity:0!important}.ocr-reading-line{pointer-events:none}@media (width<=760px){:root{--pv-font-body:14px;--pv-font-small:11px;--pv-font-label:11px;--pv-touch-min:42px}button:not(.ui-button){font-size:12px}.plan-preview-card iframe{height:52svh;min-height:360px}.ocr-primary-actions>button{min-height:48px!important}}.product-active-assets{grid-template-columns:1fr 1fr;gap:10px;min-height:430px;display:grid}.product-active-preview{flex-direction:column;min-width:0;padding:10px;display:flex}.product-active-head{justify-content:space-between;align-items:center;gap:10px;min-height:44px;display:flex}.product-active-head>div{min-width:0}.product-active-head span,.product-active-head b,.product-active-head small{display:block}.product-active-head span{font-size:var(--pv-font-xs);letter-spacing:.1em;color:var(--pv-accent-strong);font-weight:900}.product-active-head b{font-size:var(--pv-font-sm);white-space:nowrap;text-overflow:ellipsis;margin-top:2px;overflow:hidden}.product-active-head small{font-size:var(--pv-font-xs);color:var(--pv-muted);margin-top:2px}.product-active-body{border:0;border-top:1px solid var(--pv-border);background:var(--pv-canvas);border-radius:0;flex:1;min-height:360px;margin-top:8px;position:relative;overflow:hidden}.product-active-body .viewer-wrap{position:absolute;inset:0}.product-active-body.plan iframe,.product-active-body.plan img{object-fit:contain;background:#fff;border:0;width:100%;height:100%;display:block}@media (width<=1100px){.product-active-assets{grid-template-columns:1fr}.product-active-body{min-height:300px}}@media (width<=900px){body{overflow-x:hidden;min-width:0!important}.app-shell{gap:7px;width:100%;height:100dvh;min-height:100dvh;padding:8px;overflow:hidden}.topbar{flex-wrap:wrap;flex:none;align-items:center;gap:7px;padding:0}.brand-row{flex:260px;min-width:0}.brand-row>div{min-width:0}.topbar h1{white-space:nowrap;text-overflow:ellipsis;max-width:72vw;font-size:17px;overflow:hidden}.topbar h1 span{font-size:12px}.hamburger{flex:0 0 42px;width:42px;height:42px}.control-top-fields{flex:100%;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;gap:6px;width:100%;display:grid}.top-fields label{min-width:0}.top-fields select,.top-fields input,.product-row,.control-product-picker,.product-select{width:100%;min-width:0}.control-product-results{max-height:45dvh;overflow:auto}.menu-pop.workspace-menu{z-index:150;width:auto;max-width:360px;max-height:calc(100dvh - 70px);top:58px;left:8px;right:8px;overflow:auto}.workspace{min-height:0;padding-bottom:calc(12px + env(safe-area-inset-bottom));overscroll-behavior:contain;flex-direction:column;flex:1;gap:7px;display:flex;overflow:hidden auto}.workspace>.characteristics{flex:none;max-height:230px}.workspace>.characteristics .char-list{max-height:180px}.workspace>.control-media-panel{flex:none;width:100%;height:52svh;min-height:360px}.workspace>.measure,.workspace>.control-panel-v2{flex:none;width:100%;overflow:visible}.methods-shell{-webkit-overflow-scrolling:touch;flex:1;min-height:0;overflow:hidden auto}.methods-content{min-height:0;display:block;overflow:visible}.methods-content>.manage-v2,.methods-content>.drawing-workspace,.methods-content>.import-view{height:auto;min-height:0;overflow:visible}.manage-v2{gap:7px;flex-direction:column!important;height:auto!important;min-height:0!important;display:flex!important;overflow:visible!important}.manage-section-tabs{white-space:nowrap;z-index:25;gap:4px;position:sticky;top:0;overflow:auto hidden;padding:4px!important;display:flex!important}.manage-section-tabs button{flex:none;min-height:38px;padding:7px 10px!important}.manage-section-tabs button span{display:none}.product-master{width:100%!important;height:auto!important;max-height:none!important;overflow:visible!important}.product-master-list{max-height:250px;overflow:auto;flex:none!important}.product-side-editor{height:auto!important;max-height:none!important;overflow:visible!important}.product-detail{width:100%;padding-right:0;height:auto!important;overflow:visible!important}.product-active-assets,.plan-manager-grid,.family-manager-grid,.characteristic-library-grid,.photo-grid,.admin-grid,.admin-metrics,.user-admin-grid{grid-template-columns:1fr!important}.product-active-body{height:46svh;min-height:300px}.section-topline{flex-wrap:wrap;align-items:flex-start}.section-topline>div:first-child{flex:220px;min-width:0}.operation-editor,.char-form-grid,.plan-form-grid,.plan-tolerance-editor,.inspection-mode-fields{grid-template-columns:1fr!important}.char-form-grid .span2,.char-form-grid .span4,.inspection-mode-fields label.wide{grid-column:auto!important}.assignment-toolbar{flex-direction:column;align-items:stretch!important}.assignment-batch-actions{grid-template-columns:1fr 1fr;width:100%;display:grid!important}.assignment-batch-actions button{width:100%}.orders-view{flex-direction:column!important;height:auto!important;min-height:0!important;display:flex!important;overflow:visible!important}.orders-list{flex:none;max-height:260px}.order-editor{width:100%;min-width:0}.admin-tools,.ocr-admin-page{padding-bottom:calc(12px + env(safe-area-inset-bottom));overflow:hidden auto!important}.admin-hero{align-items:flex-start}.report-admin{overflow-y:auto!important}}@media (width<=760px){html,body,#root{width:100%;max-width:100%;min-height:100%;overflow-x:hidden}.app-shell{height:100dvh;padding:6px}.topbar{z-index:80;background:var(--pv-bg);padding-top:env(safe-area-inset-top);position:sticky;top:0}.topbar h1{max-width:68vw;font-size:15px}.eyebrow{font-size:var(--pv-font-xs)}.control-top-fields{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.control-top-fields .part-chip{grid-column:1/-1;width:100%}.workspace>.control-media-panel{height:48svh;min-height:320px}.product-active-body{height:42svh;min-height:280px}.drawing-center{height:58svh!important;min-height:340px!important}.row-actions,.library-editor-actions,.product-side-danger,.product-side-editor-actions{flex-wrap:wrap}.row-actions button:not(.ui-button),.library-editor-actions button:not(.ui-button),.product-side-danger button:not(.ui-button){min-height:42px}.ocr-primary-actions{grid-template-columns:1fr!important}}.manage-v2,.admin-tools,.manage-v2 button:not(.ui-button),.manage-v2 input,.manage-v2 select,.manage-v2 textarea,.admin-tools button:not(.ui-button),.admin-tools input,.admin-tools select,.admin-tools textarea{font-size:var(--pv-font-sm)}.manage-v2 label,.admin-tools label{font-size:var(--pv-font-xs);color:var(--pv-muted);line-height:1.3}.manage-v2 label>input,.manage-v2 label>select,.manage-v2 label>textarea,.admin-tools label>input,.admin-tools label>select,.admin-tools label>textarea{color:var(--pv-text);margin-top:5px}.manage-v2 small,.admin-tools small{font-size:var(--pv-font-xs);color:var(--pv-muted)}.manage-section-tabs button{min-height:38px;font-size:var(--pv-font-sm);color:var(--pv-text-soft);font-weight:700}.manage-section-tabs button.active{color:var(--pv-text)}.manage-v2-head>div>b,.section-topline>div>b,.char-editor-title b,.phase-control-summary>div>b,.phase-spec-head b,.phase-control-plan-head b{font-size:var(--pv-font-md);line-height:1.25}.manage-v2-head>div>span,.section-topline>div>span,.phase-control-summary>div>span,.phase-spec-head span,.phase-control-plan-head span{color:var(--pv-muted);font-size:var(--pv-font-xs)}.product-master-list>button{min-height:70px}.product-master-code{font-size:var(--pv-font-sm)}.assignment-item{min-height:42px}.assignment-main b{font-size:var(--pv-font-sm)}.assignment-main small{font-size:var(--pv-font-xs)}.phase-control-editor{gap:10px}.phase-spec-editor,.phase-control-plan,.phase-treatment-editor{border:1px solid var(--pv-border);background:var(--pv-surface-2);border-radius:var(--pv-radius-sm);padding:10px}.treatment-manager-card{padding:10px;overflow:auto}.treatment-manager-grid{grid-template-columns:minmax(240px,.72fr) minmax(420px,1.6fr);gap:10px;min-height:0;display:grid}.treatment-list{flex-direction:column;gap:5px;min-height:0;max-height:68vh;display:flex;overflow:auto}.treatment-list>button{text-align:left;border:1px solid var(--pv-border);border-radius:var(--pv-radius-sm);background:var(--pv-surface-2);min-height:52px;color:var(--pv-text);cursor:pointer;justify-content:space-between;align-items:center;gap:10px;padding:9px 10px;display:flex}.treatment-list>button.active{border-color:var(--pv-accent);background:var(--pv-accent-soft)}.treatment-list>button.archived{opacity:.55}.treatment-list>button span{min-width:0}.treatment-list>button b,.treatment-list>button small{display:block}.treatment-list>button small{white-space:nowrap;text-overflow:ellipsis;margin-top:3px;overflow:hidden}.treatment-list>button em{color:var(--pv-muted);font-style:normal;font-size:var(--pv-font-xs);flex:none}.treatment-editor{flex-direction:column;gap:10px;min-width:0;display:flex}.treatment-editor-grid,.admin-treatment-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.treatment-editor-grid .span2,.admin-treatment-form .span2{grid-column:1/-1}.treatment-editor-grid input,.treatment-editor-grid select,.treatment-editor-grid textarea,.admin-treatment-form input,.admin-treatment-form select,.admin-treatment-form textarea{border:1px solid var(--pv-border-strong);border-radius:var(--pv-radius-sm);background:var(--pv-input);width:100%;color:var(--pv-text);padding:8px 9px}.treatment-profile-status{border:1px solid var(--pv-border);border-radius:var(--pv-radius-sm);background:var(--pv-surface-3);color:var(--pv-warning);flex-direction:column;gap:3px;padding:8px 10px;display:flex}.treatment-profile-status.ready{color:var(--pv-success);border-color:color-mix(in srgb,var(--pv-success) 40%,var(--pv-border))}.treatment-profile-status span{color:var(--pv-muted);font-size:var(--pv-font-xs)}.phase-treatment-editor{flex-direction:column;gap:8px;display:flex}.phase-treatment-list{flex-direction:column;gap:5px;display:flex}.phase-treatment-list>div{border:1px solid var(--pv-border);border-radius:var(--pv-radius-sm);background:var(--pv-surface);grid-template-columns:minmax(0,1fr) minmax(210px,.65fr);align-items:center;gap:8px;padding:7px 8px;display:grid}.phase-treatment-list>div.active{border-color:color-mix(in srgb,var(--pv-accent) 55%,var(--pv-border))}.treatment-check{align-items:center;gap:8px;flex-direction:row!important;margin:0!important;display:flex!important}.treatment-check input{margin:0!important}.treatment-check span{min-width:0}.treatment-check b,.treatment-check small{display:block}.phase-treatment-list select{border:1px solid var(--pv-border-strong);border-radius:var(--pv-radius-sm);background:var(--pv-input);width:100%;min-width:0;color:var(--pv-text);padding:7px 8px}.treatment-adjustment{border:1px solid var(--pv-border);border-radius:var(--pv-radius-sm);background:var(--pv-surface-3);color:var(--pv-warning);justify-content:space-between;align-items:center;gap:10px;padding:9px 10px;display:flex}.treatment-adjustment.ready{color:var(--pv-success);border-color:color-mix(in srgb,var(--pv-success) 40%,var(--pv-border))}.treatment-adjustment div span,.treatment-adjustment div b,.treatment-adjustment div small{display:block}.treatment-adjustment div b{color:var(--pv-text);font-size:var(--pv-font-md);margin-top:2px}.treatment-adjustment button{border:1px solid var(--pv-accent);background:var(--pv-accent);color:var(--pv-on-accent);border-radius:var(--pv-radius-sm);flex:none;padding:8px 10px}.admin-treatment-profiles{overflow:hidden}.admin-treatment-grid{grid-template-columns:minmax(220px,.7fr) minmax(460px,1.5fr);gap:10px;display:grid}.admin-treatment-list{flex-direction:column;gap:5px;max-height:420px;display:flex;overflow:auto}.admin-treatment-list>button{border:1px solid var(--pv-border);border-radius:var(--pv-radius-sm);background:var(--pv-surface-2);color:var(--pv-text);text-align:left;cursor:pointer;justify-content:space-between;align-items:center;gap:8px;padding:8px 9px;display:flex}.admin-treatment-list>button.active{border-color:var(--pv-accent);background:var(--pv-accent-soft)}.admin-treatment-list>button.archived{opacity:.55}.admin-treatment-list span b,.admin-treatment-list span small{display:block}.admin-treatment-list i{border:1px solid var(--pv-border);min-width:34px;color:var(--pv-muted);font-style:normal;font-size:var(--pv-font-xs);text-align:center;border-radius:999px;padding:3px 5px}.admin-treatment-list i.ready{color:var(--pv-success);border-color:color-mix(in srgb,var(--pv-success) 40%,var(--pv-border))}.admin-treatment-editor{flex-direction:column;gap:10px;display:flex}.admin-treatment-flags{flex-wrap:wrap;gap:14px;padding:7px 0;display:flex}.admin-treatment-flags label{color:var(--pv-text-soft);flex-direction:row;align-items:center;gap:6px;margin:0;display:flex}.admin-treatment-flags input{margin:0}@media (width<=1100px){.treatment-manager-grid,.admin-treatment-grid{grid-template-columns:1fr}.treatment-list,.admin-treatment-list{max-height:260px}}@media (width<=760px){.treatment-editor-grid,.admin-treatment-form{grid-template-columns:1fr}.treatment-editor-grid .span2,.admin-treatment-form .span2{grid-column:auto}.phase-treatment-list>div{grid-template-columns:1fr}.treatment-adjustment{flex-direction:column;align-items:stretch}}.ui-button svg{stroke-width:1.9px;flex:none}.manage-section-tabs{scrollbar-width:thin;align-items:stretch;gap:5px;overflow:auto hidden;flex-wrap:nowrap!important;display:flex!important}.manage-section-tabs>button{white-space:nowrap;flex:1 0 145px;justify-content:center;align-items:center;gap:7px;min-width:145px;min-height:42px;padding:8px 10px;line-height:1.1;display:inline-flex;font-size:var(--pv-font-sm)!important}.manage-section-tabs>button svg{color:var(--pv-muted);stroke-width:1.9px}.manage-section-tabs>button.active svg{color:var(--pv-accent-strong)}.manage-section-tabs>button:disabled svg{opacity:.35}.manage-head-actions{align-items:center;gap:6px;display:flex}.manage-head-actions .ui-button{margin:0}.new-product-cta{justify-content:center;align-items:center;gap:7px;min-height:40px!important;font-size:var(--pv-font-sm)!important;display:flex!important}.product-side-editor-head>.ui-button{width:32px;height:32px;min-height:32px}.product-side-editor-actions,.row-actions{flex-wrap:wrap;align-items:center;gap:7px;display:flex}.product-side-editor-actions>.ui-button,.row-actions>.ui-button{margin:0!important}.manage-v2 .row-actions>button:not(.ui-button),.manage-v2 .section-topline>button:not(.ui-button),.manage-v2 .char-editor-actions>button,.manage-v2 .phase-editor-actions>button,.admin-tools .admin-card-head>button:not(.ui-button),.admin-tools .user-editor-actions>button{border:1px solid var(--pv-border-strong);border-radius:var(--pv-radius-sm);background:var(--pv-surface-3);min-height:36px;color:var(--pv-text-soft);cursor:pointer;padding:7px 11px;font-weight:750;line-height:1.1;font-size:var(--pv-font-sm)!important}.manage-v2 .row-actions>button:not(.ui-button):hover,.manage-v2 .section-topline>button:not(.ui-button):hover,.admin-tools .admin-card-head>button:not(.ui-button):hover,.admin-tools .user-editor-actions>button:hover{border-color:var(--pv-accent);background:var(--pv-accent-soft);color:var(--pv-accent-strong)}.manage-v2 input,.manage-v2 select,.manage-v2 textarea,.admin-tools input,.admin-tools select,.admin-tools textarea{min-height:36px;line-height:1.25;font-size:var(--pv-font-sm)!important}.manage-v2 textarea,.admin-tools textarea{min-height:unset}.manage-v2 label,.admin-tools label,.manage-v2 small,.admin-tools small,.manage-v2 .section-topline>div>span,.admin-tools .admin-card-head>div>span{font-size:var(--pv-font-xs)!important}.manage-v2 .section-topline>div>b,.admin-tools .admin-card-head>div>b{font-size:var(--pv-font-md)!important}.iso-material-badge{--iso-group:#7f96a7;--iso-ink:#07101a;border:1px solid color-mix(in srgb,var(--iso-group) 78%,var(--pv-border));background:color-mix(in srgb,var(--iso-group) 18%,var(--pv-surface-2));width:max-content;max-width:100%;min-height:22px;color:var(--pv-text);font-size:var(--pv-font-xs);white-space:nowrap;border-radius:999px;align-items:center;gap:5px;padding:2px 7px 2px 4px;font-style:normal;font-weight:800;line-height:1;display:inline-flex}.iso-material-badge>b{background:var(--iso-group);width:18px;height:18px;color:var(--iso-ink);border-radius:50%;place-items:center;font-size:11px;font-weight:950;display:grid}.iso-material-badge>span{color:var(--pv-text-soft);font-size:var(--pv-font-xs)}.iso-material-p{--iso-group:#3b9cff;--iso-ink:#06101a}.iso-material-m{--iso-group:#ffd84a;--iso-ink:#171200}.iso-material-k{--iso-group:#f05c62;--iso-ink:#190507}.iso-material-n{--iso-group:#63d77a;--iso-ink:#051508}.iso-material-s{--iso-group:#e3a054;--iso-ink:#190d03}.iso-material-h{--iso-group:#a6adb5;--iso-ink:#111417}.product-master-list .iso-material-badge{padding:2px 4px;position:absolute;top:7px;right:7px}.product-master-list .iso-material-badge>span{display:none}.product-master-list .iso-material-badge>b{width:17px;height:17px;font-size:10px}.product-material-block{border:1px solid var(--pv-border);border-radius:var(--pv-radius-sm);background:var(--pv-surface-2);margin-top:9px;padding:9px}.product-material-block>label{display:block}.product-material-block select{width:100%}.product-material-meta{flex-wrap:wrap;align-items:center;gap:8px;min-height:28px;margin-top:7px;display:flex}.product-material-meta>span{color:var(--pv-muted);font-size:var(--pv-font-xs)}.product-side-editor-two>.span2{grid-column:1/-1}.iso-material-legend{flex-wrap:wrap;gap:6px;margin:10px 0 5px;display:flex}.admin-material-grid{grid-template-columns:minmax(260px,.78fr) minmax(480px,1.5fr);gap:10px;min-width:0;margin-top:10px;display:grid}.admin-material-list{flex-direction:column;gap:5px;min-width:0;max-height:430px;display:flex;overflow:auto}.admin-material-list>button{border:1px solid var(--pv-border);border-radius:var(--pv-radius-sm);background:var(--pv-surface-2);min-height:54px;color:var(--pv-text);text-align:left;cursor:pointer;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:8px;padding:8px 9px;display:grid}.admin-material-list>button:hover{border-color:var(--pv-border-strong);background:var(--pv-surface-3)}.admin-material-list>button.active{border-color:var(--pv-accent);background:var(--pv-accent-soft);box-shadow:inset 3px 0 var(--pv-accent)}.admin-material-list>button.archived{opacity:.52}.admin-material-list b,.admin-material-list small{display:block}.admin-material-list b{font-size:var(--pv-font-sm)}.admin-material-list small{color:var(--pv-muted);overflow-wrap:anywhere;margin-top:3px}.admin-material-editor{border:1px solid var(--pv-border);border-radius:var(--pv-radius-sm);background:var(--pv-surface-2);flex-direction:column;gap:9px;min-width:0;padding:10px;display:flex}.treatment-reference-head{justify-content:space-between;align-items:center;gap:10px;display:flex}.treatment-reference-head>b{color:var(--pv-text);font-size:var(--pv-font-sm)}.treatment-reference-head>em{border:1px solid var(--pv-border-strong);color:var(--pv-muted);background:var(--pv-surface-2);font-size:var(--pv-font-xs);letter-spacing:.04em;border-radius:999px;flex:none;padding:4px 7px;font-style:normal;font-weight:850}.treatment-profile-status>small{color:var(--pv-muted);line-height:1.4}.treatment-profile-status>strong{color:var(--pv-warning);font-size:var(--pv-font-xs);font-weight:850}.treatment-profile-status.ready>strong{color:var(--pv-success)}.treatment-class-presets{border:1px solid var(--pv-border);border-radius:var(--pv-radius-sm);background:var(--pv-surface);gap:5px;margin:3px 0;padding:8px;display:grid}.treatment-class-presets>span{color:var(--pv-muted);font-size:var(--pv-font-xs);text-transform:uppercase;letter-spacing:.05em;font-weight:800}.treatment-class-presets>div{flex-wrap:wrap;gap:5px;display:flex}.treatment-class-presets button{border:1px solid var(--pv-border-strong);background:var(--pv-surface-3);min-height:31px;color:var(--pv-text-soft);cursor:pointer;border-radius:999px;padding:5px 9px;font-weight:850;font-size:var(--pv-font-xs)!important}.treatment-class-presets button:hover{border-color:var(--pv-accent);background:var(--pv-accent-soft);color:var(--pv-accent-strong)}.treatment-class-presets>small{color:var(--pv-muted);line-height:1.35}.admin-treatment-list>button{min-height:54px;font-size:var(--pv-font-sm)!important}.admin-treatment-list span b{font-size:var(--pv-font-sm)}.admin-treatment-list i{font-size:var(--pv-font-xs)}.admin-treatment-form{gap:9px}.admin-treatment-form label{font-size:var(--pv-font-xs)!important}.admin-treatment-flags label{border:1px solid var(--pv-border);border-radius:var(--pv-radius-sm);background:var(--pv-surface-3);min-height:34px;padding:5px 7px;font-size:var(--pv-font-xs)!important}.admin-treatment-flags input{width:16px;height:16px;accent-color:var(--pv-accent)}.char-editor-actions,.product-side-editor-actions{border-top:1px solid var(--pv-border);min-height:48px;padding-top:10px}.char-editor-actions>button,.product-side-editor-actions>button{min-height:38px!important;font-size:var(--pv-font-sm)!important}@media (width<=1100px){.admin-material-grid{grid-template-columns:1fr}.admin-material-list{max-height:260px}}@media (width<=760px){.manage-section-tabs>button{flex-basis:132px;min-width:132px}.admin-material-grid{grid-template-columns:1fr}.iso-material-legend{grid-template-columns:1fr 1fr;display:grid}}.admin-audit-card{overflow:hidden}.admin-audit-list{flex-direction:column;gap:5px;max-height:340px;padding-right:2px;display:flex;overflow:auto}.admin-audit-list>article{border:1px solid var(--pv-border);border-radius:var(--pv-radius-sm);background:var(--pv-surface-2);grid-template-columns:155px minmax(180px,.7fr) minmax(260px,1.3fr);align-items:center;gap:10px;min-height:48px;padding:7px 9px;display:grid}.admin-audit-list time{color:var(--pv-muted);font-size:var(--pv-font-xs);font-variant-numeric:tabular-nums}.admin-audit-list b,.admin-audit-list span,.admin-audit-list strong,.admin-audit-list small{display:block}.admin-audit-list b,.admin-audit-list strong{font-size:var(--pv-font-sm)}.admin-audit-list span{color:var(--pv-accent-strong);font-size:var(--pv-font-xs);margin-top:2px;font-weight:800}.admin-audit-list small{color:var(--pv-muted);margin-top:2px;line-height:1.35}@media (width<=760px){.admin-audit-list>article{grid-template-columns:1fr;gap:4px}}.order-frozen-identity{border:1px solid color-mix(in srgb,var(--pv-success) 35%,var(--pv-border));border-radius:var(--pv-radius-sm);background:color-mix(in srgb,var(--pv-success-bg) 55%,var(--pv-surface-2));grid-template-columns:1fr 1fr;gap:7px;margin-top:9px;padding:9px;display:grid}.order-frozen-identity>div{min-width:0}.order-frozen-identity span,.order-frozen-identity b,.order-frozen-identity small{display:block}.order-frozen-identity span{color:var(--pv-success);font-size:var(--pv-font-xs);letter-spacing:.07em;font-weight:900}.order-frozen-identity b{color:var(--pv-text);font-size:var(--pv-font-sm);margin-top:3px}.order-frozen-identity small{color:var(--pv-muted);margin-top:2px}@media (width<=760px){.order-frozen-identity{grid-template-columns:1fr}}.nok-reaction-box{border:1px solid color-mix(in srgb,var(--pv-danger) 55%,var(--pv-border));border-radius:var(--pv-radius-sm);background:var(--pv-danger-bg);grid-column:1/-1;grid-template-columns:minmax(0,1fr);align-items:stretch;gap:8px;width:100%;min-width:0;padding:10px;display:grid}.nok-reaction-box>div span,.nok-reaction-box>div b{display:block}.nok-reaction-box>div span{color:var(--pv-danger);font-size:var(--pv-font-xs);letter-spacing:.07em;font-weight:900}.nok-reaction-box>div b{color:var(--pv-text);font-size:var(--pv-font-sm);margin-top:4px;line-height:1.35}.nok-reaction-box label{color:var(--pv-text-soft);font-size:var(--pv-font-xs);gap:4px;font-weight:750;display:grid}.nok-reaction-box label small{color:var(--pv-muted);font-weight:500;display:inline}.nok-reaction-box textarea,.nok-reaction-box input{border:1px solid var(--pv-border-strong);border-radius:var(--pv-radius-sm);background:var(--pv-input);width:100%;min-width:0;color:var(--pv-text);font:inherit;padding:8px 9px}.nok-reaction-box textarea{resize:vertical;min-height:72px}.inspection-part-reaction{border-bottom:1px solid var(--pv-border);background:color-mix(in srgb,var(--pv-warning-bg) 55%,var(--pv-surface-2));justify-content:space-between;align-items:center;gap:10px;padding:8px 9px;display:flex}.inspection-part-reaction span,.inspection-part-reaction b{display:block}.inspection-part-reaction span{color:var(--pv-warning);font-size:var(--pv-font-xs);text-transform:uppercase;letter-spacing:.05em;font-weight:900}.inspection-part-reaction b{font-size:var(--pv-font-xs);color:var(--pv-text-soft);margin-top:2px}.inspection-part-reaction em{border:1px solid var(--pv-warning);color:var(--pv-warning);font-style:normal;font-size:var(--pv-font-xs);border-radius:999px;flex:none;padding:4px 7px;font-weight:850}@media (width<=900px){.nok-reaction-box{grid-template-columns:1fr}.inspection-part-reaction{flex-direction:column;align-items:flex-start}}.admin-audit-diff{border-top:1px solid var(--pv-border);grid-column:1/-1;padding-top:6px}.admin-audit-diff>summary{width:max-content;max-width:100%;color:var(--pv-accent-strong);font-size:var(--pv-font-xs);cursor:pointer;font-weight:800}.admin-audit-diff>div{flex-direction:column;gap:4px;margin-top:7px;display:flex}.admin-audit-diff>div>div{border:1px solid var(--pv-border);background:var(--pv-surface);font-size:var(--pv-font-xs);border-radius:6px;grid-template-columns:minmax(120px,.65fr) minmax(160px,1fr) 18px minmax(160px,1fr);align-items:start;gap:6px;padding:5px 6px;display:grid}.admin-audit-diff>div>div>b{color:var(--pv-text-soft);overflow-wrap:anywhere}.admin-audit-diff>div>div>span{color:var(--pv-muted);overflow-wrap:anywhere}.admin-audit-diff>div>div>em{color:var(--pv-accent-strong);text-align:center;font-style:normal}.admin-audit-diff>div>div>strong{color:var(--pv-text);overflow-wrap:anywhere}@media (width<=760px){.admin-audit-diff>div>div{grid-template-columns:1fr}.admin-audit-diff>div>div>em{text-align:left}}.config-revision-badge{border:1px solid var(--pv-border-strong);background:var(--pv-surface-3);border-radius:999px;width:max-content;margin-top:3px;padding:2px 5px;font-weight:800;color:var(--pv-muted)!important;font-size:var(--pv-font-xs)!important;display:inline-flex!important}.operation-config-version{border:1px solid var(--pv-border);border-radius:var(--pv-radius-sm);background:var(--pv-surface-2);grid-column:1/-1;align-items:center;gap:8px;min-height:36px;padding:7px 9px;display:flex}.operation-config-version span{color:var(--pv-muted);font-size:var(--pv-font-xs);letter-spacing:.05em;font-weight:900}.operation-config-version b{color:var(--pv-accent-strong);font-size:var(--pv-font-sm);flex:none}.operation-config-version small{color:var(--pv-muted);text-align:right;margin-left:auto}@media (width<=760px){.operation-config-version{flex-direction:column;align-items:flex-start}.operation-config-version small{text-align:left;margin-left:0}}.revision-history-compact{border:1px solid var(--pv-border);border-radius:var(--pv-radius-sm);background:var(--pv-surface-2);margin-top:9px;overflow:hidden}.revision-history-compact>summary{cursor:pointer;min-height:36px;color:var(--pv-text-soft);font-size:var(--pv-font-xs);align-items:center;padding:7px 9px;font-weight:850;list-style:none;display:flex}.revision-history-compact>summary::-webkit-details-marker{display:none}.revision-history-compact>summary:after{content:"▾";color:var(--pv-muted);margin-left:auto;transition:transform .12s}.revision-history-compact[open]>summary:after{transform:rotate(180deg)}.revision-history-list{border-top:1px solid var(--pv-border);flex-direction:column;gap:5px;padding:0 8px 8px;display:flex}.revision-history-list>div{border:1px solid var(--pv-border);background:var(--pv-surface);border-radius:6px;gap:2px;padding:7px 8px;display:grid}.revision-history-list>div.current{border-color:color-mix(in srgb,var(--pv-success) 42%,var(--pv-border));background:color-mix(in srgb,var(--pv-success-bg) 58%,var(--pv-surface));margin-top:8px}.revision-history-list b{font-size:var(--pv-font-xs);color:var(--pv-text)}.revision-history-list small{font-size:var(--pv-font-xs);color:var(--pv-muted);line-height:1.4}.operation-history{margin:9px 0}.product-master-list>button{min-width:0;display:block}.product-master-code{align-items:center;gap:6px;min-width:0;display:flex}.product-master-list>button>strong{white-space:nowrap;text-overflow:ellipsis;min-width:0;display:block;overflow:hidden}.product-master-meta{justify-content:space-between;align-items:center;gap:8px;min-width:0;margin-top:5px;display:flex}.product-master-meta>small{white-space:nowrap;text-overflow:ellipsis;flex:auto;min-width:0;margin:0;display:block;overflow:hidden}.product-master-badges{flex-wrap:wrap;flex:0 auto;justify-content:flex-end;align-items:center;gap:4px;min-width:0;display:flex}.product-master-badges>i{flex:none}.product-master-badges .iso-material-badge{flex:none;min-height:20px;padding:1px 5px 1px 3px}.product-master-badges .general-tolerance-badge{flex:none;align-items:center;padding:2px 5px;display:inline-flex;position:static;bottom:auto;right:auto}.phase-inspection-guidance{border:1px solid var(--pv-border);background:var(--pv-surface-2);border-radius:8px;gap:9px;min-width:0;margin-top:8px;padding:10px;display:grid}.phase-inspection-guidance .phase-control-plan-head{flex-wrap:wrap;min-width:0}.phase-inspection-guidance .phase-control-plan-head>small{color:var(--pv-muted);font-size:var(--pv-font-xs)}.phase-guidance-grid{grid-template-columns:minmax(150px,.85fr) minmax(190px,1fr) minmax(260px,1.35fr);align-items:start;gap:8px;min-width:0;display:grid}.phase-guidance-grid>label{min-width:0;color:var(--pv-muted);font-size:var(--pv-font-xs);flex-direction:column;gap:4px;display:flex}.phase-guidance-grid>label.span2{grid-column:auto}.phase-guidance-grid input,.phase-guidance-grid textarea{box-sizing:border-box;border:1px solid var(--pv-border-strong);background:var(--pv-input);width:100%;min-width:0;color:var(--pv-text);font:inherit;border-radius:6px;padding:8px;line-height:1.35;display:block}.phase-guidance-grid textarea{resize:vertical;min-height:58px}.phase-inspection-guidance.compact-guidance{gap:7px;padding:9px}.phase-guidance-grid.compact{grid-template-columns:1fr 1fr}.phase-guidance-extra{border-top:1px solid var(--pv-border);padding-top:6px}.phase-guidance-extra>summary{cursor:pointer;color:var(--pv-muted);font-size:var(--pv-font-xs);font-weight:800;list-style:none}.phase-guidance-extra>summary::-webkit-details-marker{display:none}.phase-guidance-extra textarea{resize:vertical;border:1px solid var(--pv-border-strong);background:var(--pv-input);width:100%;min-height:58px;color:var(--pv-text);font:inherit;border-radius:6px;margin-top:7px;padding:8px}.phase-guidance-effective{border-top:1px solid var(--pv-border);grid-template-columns:auto minmax(150px,.7fr) minmax(0,1.3fr);align-items:center;gap:7px 10px;min-width:0;padding-top:8px;display:grid}.phase-guidance-effective span,.phase-guidance-effective b,.phase-guidance-effective small{min-width:0;font-size:var(--pv-font-xs)}.phase-guidance-effective span{color:var(--pv-muted);font-weight:800}.phase-guidance-effective b{color:var(--pv-text)}.phase-guidance-effective small{color:var(--pv-muted);overflow-wrap:anywhere}.plan-list>button{grid-template-columns:86px minmax(0,1fr) auto;align-items:center;gap:9px;min-width:0;display:grid}.plan-list-copy{min-width:0}.plan-preview{border:1px solid var(--pv-border);background:#fff;border-radius:7px;place-items:center;min-width:0;display:grid;position:relative;overflow:hidden}.plan-preview canvas,.plan-preview img{object-fit:contain;background:#fff;width:100%;height:100%;display:block;position:absolute;inset:0}.plan-preview--compact{width:86px;height:60px}.plan-preview--detail{width:100%;height:260px}.plan-preview-link{border-radius:8px;outline:none;margin-top:12px;text-decoration:none;display:block}.plan-preview-link:hover .plan-preview,.plan-preview-link:focus-visible .plan-preview{border-color:var(--pv-accent);box-shadow:0 0 0 1px var(--pv-accent)}.plan-preview-state{background:color-mix(in srgb,var(--pv-surface-2) 86%,transparent);color:var(--pv-muted);font-size:var(--pv-font-xs);text-align:center;place-items:center;padding:8px;display:grid;position:absolute;inset:0}.plan-preview-state.error{color:var(--pv-warning)}.plan-preview-pages{color:#fff;font-size:var(--pv-font-xs);background:#07111dcc;border-radius:999px;padding:2px 5px;line-height:1.2;position:absolute;bottom:5px;right:5px}@media (width<=1100px){.phase-guidance-grid{grid-template-columns:1fr 1fr}.phase-guidance-grid>label.span2{grid-column:1/-1}.phase-guidance-effective{grid-template-columns:1fr}}@media (width<=760px){.product-master-meta{flex-direction:column;align-items:flex-start}.product-master-badges{justify-content:flex-start}.phase-guidance-grid{grid-template-columns:1fr}.phase-guidance-grid>label.span2{grid-column:auto}.plan-manager-grid{grid-template-columns:1fr}.plan-preview--detail{height:220px}}.ocr-engine-line.warming{color:var(--pv-warning)}.ocr-engine-line.warming i{background:var(--pv-warning);box-shadow:0 0 10px color-mix(in srgb,var(--pv-warning) 45%,transparent)}.ocr-engine-line.failed{color:var(--pv-danger)}.ocr-startup-error{border:1px solid var(--pv-danger);border-radius:var(--pv-radius-sm);color:var(--pv-danger);font-size:var(--pv-font-xs);overflow-wrap:anywhere;gap:8px;padding:10px;display:grid}.ocr-startup-error button{color:var(--pv-text);justify-self:start}.ocr-type-key{flex-wrap:wrap;align-items:center;gap:5px;display:flex}.ocr-type-key span{--ocr-key-color:var(--pv-type-attribute);border:1px solid color-mix(in srgb,var(--ocr-key-color) 65%,var(--pv-border));background:color-mix(in srgb,var(--ocr-key-color) 12%,var(--pv-surface-2));min-width:24px;height:22px;color:var(--ocr-key-color);font-size:var(--pv-font-xs);border-radius:999px;place-items:center;padding:0 5px;font-weight:900;line-height:1;display:inline-grid}.ocr-type-key .type-dimension{--ocr-key-color:var(--pv-type-dimension)}.ocr-type-key .type-diameter{--ocr-key-color:var(--pv-type-diameter)}.ocr-type-key .type-radius{--ocr-key-color:var(--pv-type-radius)}.ocr-type-key .type-chamfer{--ocr-key-color:var(--pv-type-chamfer)}.ocr-type-key .type-angle{--ocr-key-color:var(--pv-type-angle)}.ocr-type-key .type-thread{--ocr-key-color:var(--pv-type-thread)}.ocr-reading-line.auto:not(.pinned){opacity:.46!important}.ocr-inspector{gap:8px!important}.ocr-inspector-head{min-height:34px}.ocr-inspector-head h2{margin-top:2px!important;font-size:17px!important}.ocr-caption-input{border:1px solid var(--pv-border-strong);background:var(--pv-input);width:100%;min-width:0;color:var(--pv-text);border-radius:7px;outline:none;padding:8px 9px;font-size:13px;font-weight:800}.ocr-caption-input:focus{border-color:var(--pv-accent);box-shadow:0 0 0 1px color-mix(in srgb,var(--pv-accent) 35%,transparent)}.ocr-value-editor{padding:8px!important}.ocr-value-editor>.ocr-value-grid{margin-top:5px!important}.ocr-value-editor>.ocr-value-grid:has(select[value=unknown]){grid-template-columns:1fr}.ocr-attribute-summary{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:3px 8px;display:grid;border-left:3px solid var(--pv-type-thread)!important}.ocr-attribute-summary>span{grid-row:1/3;color:var(--pv-type-thread)!important}.ocr-attribute-summary>b{margin:0!important;font-size:13px!important}.ocr-attribute-summary>small{color:var(--pv-muted);font-size:var(--pv-font-xs)}.ocr-thread-manual{border-left:3px solid var(--pv-type-thread);background:color-mix(in srgb,var(--pv-type-thread) 8%,var(--pv-surface-2));min-height:38px;color:var(--pv-type-thread);font-size:var(--pv-font-sm);border-radius:6px;grid-column:1/-1;align-items:center;padding:0 9px;font-weight:800;display:flex}.ocr-issues span{padding:2px 5px!important}.ocr-inspector>.message{font-size:var(--pv-font-xs);margin-top:0;padding:5px 7px}@media (width<=760px){.ocr-type-key{gap:4px}.ocr-type-key span{min-width:28px;height:26px}.ocr-crop{height:120px;min-height:120px}.ocr-crop canvas{height:110px}}.primary,.danger-lite,.restore-btn,.confirm-action{min-height:38px;font-size:var(--pv-font-sm);white-space:nowrap;cursor:pointer;border-radius:7px;justify-content:center;align-items:center;gap:7px;padding:0 12px;font-weight:800;line-height:1;text-decoration:none;display:inline-flex}.primary{border:1px solid var(--pv-accent);background:var(--pv-accent);color:var(--pv-on-accent)}.primary:hover:not(:disabled){filter:brightness(1.08)}.restore-btn{border:1px solid var(--pv-border-strong);background:var(--pv-surface-3);color:var(--pv-text-soft)}.restore-btn:hover:not(:disabled){border-color:var(--pv-accent);color:var(--pv-accent-strong);background:var(--pv-accent-soft)}.danger-lite{border:1px solid var(--pv-danger)!important;background:var(--pv-danger-bg)!important;color:var(--pv-danger)!important}.primary:disabled,.danger-lite:disabled,.restore-btn:disabled,.confirm-action:disabled{opacity:.42;cursor:not-allowed}.row-actions,.library-editor-actions,.phase-control-actions,.product-side-editor-actions{align-items:center;gap:8px}.row-actions>button,.library-editor-actions>button,.phase-control-actions>button,.product-side-editor-actions>button{margin:0}.manage-v2 .row-actions>button:not(.ui-button),.manage-v2 .library-editor-actions>button:not(.ui-button),.manage-v2 .phase-control-actions>button:not(.ui-button){min-height:38px;font-size:var(--pv-font-sm);border-radius:7px;padding:0 12px;font-weight:800;line-height:1}.control-panel-v2 .validate.ui-button{min-height:44px;font-size:var(--pv-font-md);border-radius:8px}.spec-grid.spec-picks.static>div{align-content:center;place-items:center;gap:2px;min-height:58px;display:grid}.spec-grid.spec-picks.static>div b{font-variant-numeric:tabular-nums}.control-inspection-guidance.compact{grid-template-columns:1fr 1fr;gap:6px;padding:8px;display:grid}.control-inspection-guidance.compact>div{min-width:0}.control-inspection-guidance.compact>p{border-top:1px solid var(--pv-border);font-size:var(--pv-font-sm);grid-column:1/-1;margin:0;padding-top:6px;line-height:1.4}.history.compact-history{border-top:1px solid var(--pv-border);margin-top:10px;padding-top:7px}.history.compact-history>summary{cursor:pointer;color:var(--pv-muted);font-size:var(--pv-font-xs);text-transform:uppercase;letter-spacing:.08em;font-weight:800;list-style:none}.history.compact-history>summary::-webkit-details-marker{display:none}.history.compact-history[open]>summary{color:var(--pv-text-soft);margin-bottom:7px}.order-form label small{font-size:var(--pv-font-xs);text-transform:none;letter-spacing:0;color:var(--pv-muted);font-weight:500}@media (width<=760px){.control-preset-grid{grid-template-columns:1fr 1fr}.phase-guidance-grid.compact,.serial-fields{grid-template-columns:1fr}}.control-panel-v2{min-width:0;overflow-x:hidden}.control-panel-v2 .part-summary,.control-panel-v2 .part-summary-list,.control-panel-v2 .part-decision,.control-panel-v2 .nok-reaction-box{min-width:0;max-width:100%}.control-panel-v2 .part-summary-list button{min-width:0}.control-panel-v2 .part-decision>button,.control-panel-v2 .part-decision>.ui-button{width:100%;min-width:0}.control-panel-v2 .nok-reaction-box label,.control-panel-v2 .nok-reaction-box textarea,.control-panel-v2 .nok-reaction-box input{min-width:0;max-width:100%}html,body,#root{background:var(--pv-bg);color:var(--pv-text)}body{font-family:var(--pv-font-sans);font-size:var(--pv-font-md);line-height:var(--pv-line);background:radial-gradient(circle at 58% -20%,var(--pv-bg-top) 0,var(--pv-bg) 48%,var(--pv-bg) 100%)}button,input,select,textarea{font-family:var(--pv-font-sans)}small{font-size:var(--pv-font-xs);line-height:1.35}.panel{background:var(--pv-surface);border-color:var(--pv-border);box-shadow:var(--pv-shadow);border-radius:var(--pv-radius)}.topbar h1,.measure-head h2,.product-summary-title h2,.admin-hero h2{color:var(--pv-text)}.topbar h1 span,.measure-head p,.char-main small,.product-master-list small,.asset-preview-foot,.admin-help{color:var(--pv-muted)}.eyebrow,.manage-v2-head>div span,.section-topline>div span,.asset-preview-head>div span,.char-editor-title span,.product-summary-title>div>span,.admin-card-head span,.admin-hero>div>span,.drawing-side-head span,.drawing-char-title span,.drawing-next>span{color:var(--pv-accent-strong)}input,select,textarea,.top-fields input,.top-fields select,.product-select,.search,.edit-card input,.edit-card select,.product-form-row input,.operation-editor input,.char-form-grid input,.char-form-grid select,.admin-card input,.drawing-sidebar select{background:var(--pv-input);border-color:var(--pv-border-strong);color:var(--pv-text)}input:focus,select:focus,textarea:focus{box-shadow:0 0 0 3px color-mix(in srgb,var(--pv-accent-strong) 14%,transparent);outline:none;border-color:var(--pv-accent-strong)!important}button{transition:background-color .12s,border-color .12s,color .12s,transform .12s}button:focus-visible,.file-btn:focus-within{outline:2px solid var(--pv-accent-strong);outline-offset:2px}.primary,.row-actions .primary,.validate{background:var(--pv-accent);border-color:var(--pv-accent);color:var(--pv-on-accent)}.danger-lite{border-color:color-mix(in srgb,var(--pv-danger) 48%,var(--pv-border))!important;color:var(--pv-danger)!important;background:var(--pv-danger-bg)!important}.hamburger,.menu-pop,.row-actions button:not(.ui-button),.setup-box button,.file-btn,.manage-head button:not(.ui-button),.section-topline button:not(.ui-button),.table-actions button:not(.ui-button),.admin-card-head>button:not(.ui-button),.tool-group button,.viewer-tools button,.measure-actions button:not(.ui-button){background:var(--pv-surface-2);border-color:var(--pv-border-strong);color:var(--pv-text-soft)}.menu-pop{box-shadow:var(--pv-shadow-float)}.menu-pop button{color:var(--pv-text-soft)}.menu-pop button:hover,.menu-pop button.active{background:var(--pv-accent-soft);color:var(--pv-accent-strong)}.menu-divider{background:var(--pv-border);height:1px;margin:4px 5px}.menu-pop .theme-toggle{grid-template-columns:22px 1fr auto;align-items:center;gap:7px;display:grid}.menu-pop .theme-toggle span:nth-child(2){text-align:left}.menu-pop .theme-toggle b{font-size:var(--pv-font-xs);color:var(--pv-accent-strong);font-weight:800}.char-list button,.manage-list button,.product-master-list>button,.operation-tabs>button,.char-table .tr,.spec-grid div,.drawing-asset,.drawing-link-status,.future-tools>div,.server-health,.import-metrics div,.import-row{background:var(--pv-surface-2);border-color:var(--pv-border);color:var(--pv-text)}.char-list button:hover,.manage-list button:hover,.product-master-list>button:hover{background:color-mix(in srgb,var(--pv-accent-soft) 55%,var(--pv-surface-2))}.char-list button.active,.manage-list button.active,.product-master-list>button.active,.operation-tabs>button.active,.char-table .tr.active,.drawing-char-list button.active{background:var(--pv-accent-soft);border-color:color-mix(in srgb,var(--pv-accent-strong) 65%,var(--pv-border))}.char-table .th,.preview-table .th{background:var(--pv-surface-3);color:var(--pv-muted)}.char-table .tr,.preview-table .tr,.import-row,.diag-list>div,.edit-card,.char-editor-v2,.operation-editor,.history,.setup-box{border-color:var(--pv-border)}.kind{background:var(--pv-accent-soft);color:var(--pv-accent-strong)}.kind.A{background:var(--pv-warning-bg);color:var(--pv-warning)}.live-status{background:var(--pv-surface-3);color:var(--pv-muted)}.live-status.ok,.row-status.ok{background:var(--pv-success-bg);color:var(--pv-success)}.live-status.warning,.row-status.warning{background:var(--pv-warning-bg);color:var(--pv-warning)}.live-status.nok,.row-status.nok{background:var(--pv-danger-bg);color:var(--pv-danger)}.manage-v2,.admin-tools,.import-view,.drawing-workspace{gap:var(--pv-page-gap)}.drawing-workspace{background:0 0;flex:1;height:auto;min-height:0;padding:0}.product-detail,.admin-tools,.import-view,*{scrollbar-color:var(--pv-border-strong) transparent}:root[data-theme=light] .viewer,:root[data-theme=light] .asset-preview-body{background-color:#e7edf1}:root[data-theme=light] .drawing-viewport{background-color:var(--pv-canvas);background-image:linear-gradient(var(--pv-canvas-grid) 1px,transparent 1px),linear-gradient(90deg,var(--pv-canvas-grid) 1px,transparent 1px)}:root[data-theme=light] .viewer-status,:root[data-theme=light] .viewer-tools button,:root[data-theme=light] .view-cube-extra button,:root[data-theme=light] .view-cube-mini button{color:#274353;background:#f7fbfddd;border-color:#b8cbd7}:root[data-theme=light] .control-media-switch{border-color:var(--pv-border-strong);box-shadow:var(--pv-shadow);background:#f7fbfdeb}:root[data-theme=light] .control-media-switch button{color:var(--pv-muted)}:root[data-theme=light] .control-media-switch button.active{background:var(--pv-accent-soft);color:var(--pv-accent)}:root[data-theme=light] .control-plan-toolbar{background:var(--pv-surface);border-color:var(--pv-border);color:var(--pv-muted)}:root[data-theme=light] .control-plan-toolbar button{background:var(--pv-surface-2);border-color:var(--pv-border-strong);color:var(--pv-text-soft)}:root[data-theme=light] .drawing-sidebar,:root[data-theme=light] .drawing-inspector,:root[data-theme=light] .drawing-center,:root[data-theme=light] .admin-card,:root[data-theme=light] .product-master,:root[data-theme=light] .product-summary,:root[data-theme=light] .operations-card,:root[data-theme=light] .characteristics-card,:root[data-theme=light] .asset-preview-card,:root[data-theme=light] .import-card{color:var(--pv-text)}:root[data-theme=light] .drawing-center{background:var(--pv-surface)}:root[data-theme=light] .drawing-toolbar{background:var(--pv-surface-3);border-color:var(--pv-border)}:root[data-theme=light] .drawing-char-list button{color:var(--pv-text)}:root[data-theme=light] .drawing-char-list button:hover{background:var(--pv-surface-3)}:root[data-theme=light] .drawing-instructions{background:var(--pv-surface-2)}:root[data-theme=light] .bbox-readout span{background:var(--pv-surface-2);border-color:var(--pv-border);color:var(--pv-muted)}:root[data-theme=light] .bbox-readout b{color:var(--pv-text)}:root[data-theme=light] .drop-file{background:var(--pv-surface-2);border-color:var(--pv-border-strong)}:root[data-theme=light] .toast{color:#20495c;box-shadow:var(--pv-shadow-float);background:#e8f5fb;border-color:#99cfe5}:root[data-theme=light] .security-note{color:#765514;background:#fff5dd;border-color:#d9b55d}:root[data-theme=light] .asset-pills span{border-color:var(--pv-border);color:var(--pv-muted)}:root[data-theme=light] .asset-pills span.ok{background:var(--pv-success-bg);color:var(--pv-success);border-color:#9bd0b4}.user-form-grid input,.user-form-grid select,.auth-card input{background:var(--pv-input);border:1px solid var(--pv-border-strong);color:var(--pv-text)}:root[data-theme=light] .user-editor,:root[data-theme=light] .user-list>button,:root[data-theme=light] .role-help>div,:root[data-theme=light] .user-chip{background:var(--pv-surface-2);color:var(--pv-text)}:root[data-theme=light] .ocr-crop{background:#fff}.control-panel-v2,.orders-list,.order-editor,.order-help{background:var(--pv-surface);color:var(--pv-text);border-color:var(--pv-border)}.control-panel-v2 button,.orders-view button{font-family:inherit}:root[data-theme=light] .control-panel-v2 .history-chart,:root[data-theme=light] .control-panel-v2 .empty-chart{background:var(--pv-surface-2)}.eyebrow,.panel-title,.section-label,.manage-v2-head>div span,.section-topline>div span,.asset-preview-head>div span,.char-editor-title span,.admin-card-head span,.drawing-side-head span,.drawing-char-title span,.product-active-head>div>span,.plan-editor-title>div>span,.family-editor>div:first-child>span,.mapping-panel-head span,.mapping-viewer-head>div>span{font-size:var(--pv-font-xs);letter-spacing:.09em;line-height:1.25}.topbar h1 span{font-size:var(--pv-font-md)}.measure-head h2,.control-panel-v2 .measure-head.compact h2{font-size:var(--pv-font-2xl)}.section-topline>div>b,.product-active-head b,.plan-editor-title b,.phase-control-summary b{font-size:var(--pv-font-md)}.manage-section-tabs button,.characteristic-scope-tabs button,.product-master-list>button strong,.assignment-main b,.library-rows b{font-size:var(--pv-font-sm)}.control-empty-state p,.asset-empty span,.phase-editor-empty,.assignment-empty{font-size:var(--pv-font-sm);line-height:1.45}.workspace-loading{color:var(--pv-muted);flex:1;place-items:center;display:grid}.workspace-menu button{min-height:38px}.workspace-menu button:not(.theme-toggle){align-items:center;display:flex}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}.confirm-action-error{color:var(--pv-danger);grid-column:1/-1;font-size:.85rem}.order-editor{min-width:0;margin:0}.report-admin-page{border:0;min-width:0;margin:0;padding:0}.drawing-stage.tool-select{cursor:crosshair}.drawing-stage.tool-select .drawing-box.ocr-box,.drawing-stage.tool-select .drawing-balloon{pointer-events:none}.drawing-stage .drawing-box.ocr-box.bulk-selected{outline:3px solid var(--pv-accent);outline-offset:2px;background:color-mix(in srgb,var(--pv-accent) 26%,transparent)}.drawing-box.draft.selection{border-color:var(--pv-accent);background:color-mix(in srgb,var(--pv-accent) 15%,transparent)}.ocr-canvas-selection{border-bottom:1px solid var(--pv-border);background:var(--pv-surface-2);flex-wrap:wrap;align-items:center;gap:8px;padding:8px 12px;display:flex}.ocr-canvas-selection b{font-size:var(--pv-font-sm);color:var(--pv-text)}.ocr-canvas-selection small{min-width:145px;color:var(--pv-muted);font-size:var(--pv-font-xs);flex:1}.ocr-canvas-selection button{border:1px solid var(--pv-border-strong);background:var(--pv-surface);min-height:34px;color:var(--pv-text);font-size:var(--pv-font-xs);cursor:pointer;border-radius:6px;padding:6px 9px}.ocr-canvas-selection button:disabled{opacity:.45;cursor:default}.ocr-canvas-selection button:not(:disabled):hover{border-color:var(--pv-accent)}.drawing-pdf-progress{z-index:10;border:1px solid var(--pv-border);background:var(--pv-surface);max-width:min(90%,460px);color:var(--pv-text);text-align:center;pointer-events:none;border-radius:8px;padding:12px 18px;position:absolute;top:40%;left:50%;transform:translate(-50%,-50%);box-shadow:0 4px 24px #0003}.drawing-pdf-progress.error{border-color:var(--pv-danger);color:var(--pv-danger);pointer-events:auto}.drawing-box.ocr-box.overlap-review{border-color:var(--pv-warning,#d89b32);border-style:dashed}.drawing-box.ocr-box.overlap-review.active{outline:2px solid var(--pv-warning,#d89b32);outline-offset:2px}.ocr-overlap-warning{border:1px solid var(--pv-warning,#d89b32);background:var(--pv-surface-2);color:var(--pv-text);font-size:var(--pv-font-sm);border-radius:6px;margin:8px 0;padding:9px 11px;line-height:1.45}.ocr-overlap-warning strong{color:var(--pv-warning,#d89b32)}.app-shell{gap:8px;min-height:0;padding:10px}.topbar{min-height:44px;padding:0 8px}.topbar h1{font-size:var(--pv-font-xl)}.workspace-primary-nav{border:1px solid var(--pv-border);background:var(--pv-surface);border-radius:10px;flex:none;align-items:center;gap:5px;min-width:0;padding:4px;display:flex}.workspace-primary-nav>button{min-height:38px;color:var(--pv-muted);font-size:var(--pv-font-sm);cursor:pointer;white-space:nowrap;background:0 0;border:1px solid #0000;border-radius:7px;justify-content:center;align-items:center;gap:8px;padding:8px 14px;font-weight:650;display:flex}.workspace-primary-nav>button:hover{background:var(--pv-surface-3);color:var(--pv-text)}.workspace-primary-nav>button.active{background:var(--pv-accent-soft);color:var(--pv-accent-strong);border-color:color-mix(in srgb,var(--pv-accent) 45%,var(--pv-border))}.workspace-primary-nav svg{flex-shrink:0}.workspace-primary-spacer{flex:1;min-width:0}.workspace-primary-nav>button.tools-active{color:var(--pv-text);background:var(--pv-surface-3)}.menu-pop.workspace-menu{z-index:150;top:105px}@media (width>=1101px){.catalog-workspace-mode.manage-v2{grid-template-rows:minmax(0,1fr);grid-template-columns:148px 248px minmax(0,1fr);gap:8px}.catalog-workspace-mode>.manage-section-tabs{grid-area:1/1;justify-content:flex-start;align-self:stretch;gap:3px;width:148px;min-width:0;overflow:auto;flex-direction:column!important;padding:7px!important}.catalog-workspace-mode .manage-section-tabs>button{text-align:left;white-space:normal;flex:none;justify-content:flex-start;min-height:43px;display:flex;min-width:0!important;padding:8px!important}.catalog-workspace-mode>.product-master{grid-area:1/2}.catalog-workspace-mode>.product-detail{grid-area:1/3}}@media (width>=1101px) and (width<=1380px){.catalog-workspace-mode.manage-v2{grid-template-columns:120px 218px minmax(0,1fr)}.catalog-workspace-mode>.manage-section-tabs{width:120px}}.plan-media-workspace{border:1px solid var(--pv-border);background:var(--pv-canvas-toolbar);border-radius:9px;margin-top:12px;overflow:hidden}.plan-media-toolbar{background:var(--pv-surface-2);border-bottom:1px solid var(--pv-border);justify-content:space-between;align-items:center;gap:10px;padding:8px 10px;display:flex}.plan-media-switch{background:var(--pv-surface-3);border:1px solid var(--pv-border);border-radius:7px;gap:3px;padding:3px;display:inline-flex}.plan-media-switch button{cursor:pointer;min-height:34px;color:var(--pv-muted);font-size:var(--pv-font-sm);background:0 0;border:0;border-radius:5px;padding:6px 13px;font-weight:700}.plan-media-switch button.active{background:var(--pv-accent-soft);color:var(--pv-accent-strong)}.plan-media-switch button:disabled{opacity:.35;cursor:not-allowed}.plan-media-open{color:var(--pv-accent-strong);white-space:nowrap;font-size:var(--pv-font-sm)}.plan-media-content{grid-template-columns:minmax(0,1fr);height:clamp(400px,53vh,750px);min-height:380px;display:grid;overflow:hidden}.plan-media-content.split{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.plan-media-pane{background:var(--pv-canvas-paper);align-items:stretch;min-width:0;min-height:0;display:flex;position:relative;overflow:hidden}.plan-media-pane+.plan-media-pane{border-left:1px solid var(--pv-border)}.plan-media-pane .plan-preview--detail{border:0;border-radius:0;width:100%;height:100%}.plan-media-pane .plan-preview--detail>canvas,.plan-media-pane .plan-preview--detail>img{object-fit:contain}.plan-media-pane.plan-media-3d{background:var(--pv-canvas)}@media (width<=1100px){.workspace-primary-nav{scrollbar-width:thin;overflow-x:auto}.workspace-primary-nav>button{padding:7px 11px}.menu-pop.workspace-menu{top:105px}.plan-media-content{height:clamp(350px,55vh,620px)}.plan-media-content.split{grid-template-rows:1fr 1fr;grid-template-columns:1fr}.plan-media-pane+.plan-media-pane{border-left:0;border-top:1px solid var(--pv-border)}}@media (width<=760px){.workspace-primary-nav{gap:3px;padding:3px}.workspace-primary-nav>button{min-height:40px;font-size:var(--pv-font-xs);gap:4px;padding:6px 8px}.workspace-primary-nav svg{width:14px;height:14px}.plan-media-toolbar{flex-wrap:wrap;gap:6px}.plan-media-content{height:clamp(360px,60vh,580px)}.menu-pop.workspace-menu{top:115px}}.product-editor-backdrop{z-index:250;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#01080eba;place-items:center;padding:clamp(10px,3vw,28px);display:grid;position:fixed;inset:0}.product-editor-dialog{background:var(--pv-surface);border:1px solid var(--pv-border-strong);width:min(760px,100%);max-width:100%;max-height:min(760px,100dvh - 32px);box-shadow:var(--pv-shadow-float);border-radius:12px;flex-direction:column;padding:0;display:flex;overflow:hidden}.product-editor-header{border-bottom:1px solid var(--pv-border);flex-shrink:0;justify-content:space-between;align-items:center;gap:12px;padding:20px 24px 16px;display:flex}.product-editor-header span{font-size:var(--pv-font-xs);letter-spacing:.08em;color:var(--pv-accent-strong);font-weight:750;display:block}.product-editor-header h2{font-size:var(--pv-font-xl);color:var(--pv-text);margin:4px 0 0;line-height:1.3}.product-editor-form{flex-direction:column;flex:1;min-height:0;display:flex}.product-editor-scroll{overscroll-behavior:contain;min-height:0;padding:18px 24px;overflow:auto}.product-editor-section{min-width:0}.product-editor-section h3{font-size:var(--pv-font-md);color:var(--pv-text);margin:0 0 12px;font-weight:750}.product-editor-grid{grid-template-columns:minmax(0,1fr) minmax(0,1.4fr);gap:14px 16px;display:grid}.product-editor-grid>.product-side-editor-two{display:contents}.product-editor-grid>label,.product-editor-grid>.product-side-editor-two>label,.product-editor-optional-content label{min-width:0;color:var(--pv-text-soft);font-size:var(--pv-font-sm);font-weight:600;line-height:1.4;display:block}.product-editor-grid input,.product-editor-grid select,.product-editor-optional-content input,.product-editor-optional-content select{border:1px solid var(--pv-border-strong);background:var(--pv-input);width:100%;min-height:42px;color:var(--pv-text);font-size:var(--pv-font-md);border-radius:7px;outline:0;margin-top:6px;padding:9px 11px;display:block}.product-editor-dialog input:focus-visible,.product-editor-dialog select:focus-visible{border-color:var(--pv-accent);box-shadow:0 0 0 3px var(--pv-accent-soft)}.product-editor-dialog .required-star{color:var(--pv-warning)}.product-editor-optional{border:1px solid var(--pv-border);background:var(--pv-surface-2);border-radius:9px;margin-top:22px}.product-editor-optional>summary{cursor:pointer;color:var(--pv-text);font-size:var(--pv-font-md);padding:14px 16px;font-weight:700}.product-editor-optional>summary small{font-size:var(--pv-font-xs);color:var(--pv-muted);margin-top:4px;font-weight:450;display:block}.product-editor-optional-content{gap:14px;padding:0 16px 18px;display:grid}.product-editor-optional-content .product-material-block{gap:10px;display:grid}.product-editor-optional-content .product-side-editor-two{grid-template-columns:1fr 1fr;gap:12px;display:grid}.product-editor-optional-content .product-material-meta{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.product-editor-optional-content .general-tolerance-editor{border:1px solid var(--pv-border);border-radius:8px;gap:8px;padding:12px;display:grid}.product-editor-optional-content .general-tolerance-editor>div{font-size:var(--pv-font-xs);color:var(--pv-muted)}.product-editor-scroll>.revision-history-compact{margin-top:16px}.product-editor-scroll>.product-side-danger{margin-top:16px;padding-top:16px}.product-editor-footer{border-top:1px solid var(--pv-border);background:var(--pv-surface);flex:none;justify-content:flex-end;align-items:center;gap:14px;padding:14px 24px;display:flex}.product-editor-footer .product-side-editor-actions{justify-content:flex-end;gap:8px;margin:0;display:flex}.product-editor-footer .product-side-editor-actions>.ui-button{min-height:42px;font-size:var(--pv-font-sm)}.product-editor-message{min-width:0;color:var(--pv-warning);font-size:var(--pv-font-sm);flex:1;margin:0}.product-editor-empty{text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:12px;min-height:260px;padding:28px;display:flex}.product-editor-empty>svg{color:var(--pv-accent-strong)}.product-editor-empty h2{font-size:var(--pv-font-xl);margin:0}.product-editor-empty p{max-width:340px;color:var(--pv-muted);font-size:var(--pv-font-md);margin:0 0 8px}.product-editor-empty .ui-button{min-height:42px}@media (width<=760px){.product-editor-backdrop{align-items:end;padding:6px}.product-editor-dialog{border-radius:12px 12px 5px 5px;width:100%;max-height:calc(100dvh - 12px)}.product-editor-header{padding:14px 16px 12px}.product-editor-scroll{padding:14px 16px}.product-editor-grid{grid-template-columns:minmax(0,1fr)}.product-editor-grid>.product-side-editor-two{grid-template-columns:1fr 1fr;gap:10px;display:grid}.product-editor-optional-content .product-side-editor-two{grid-template-columns:1fr}.product-editor-footer{flex-wrap:wrap;padding:12px 16px}.product-editor-footer .product-side-editor-actions{width:100%}.product-editor-footer .product-side-editor-actions>.ui-button{flex:1}}@media (width>=761px){.topbar .hamburger{display:none}}@media (width<=760px){.topbar .hamburger{place-items:center;display:grid}.workspace-primary-nav>button:last-child{display:none}.menu-pop.workspace-menu{top:112px}}:root{--pv-field-height:40px;--pv-action-height:38px;--pv-control-gap:8px}.panel{background:var(--pv-surface);color:var(--pv-text);border:1px solid var(--pv-border);border-radius:var(--pv-radius);box-shadow:var(--pv-shadow)}:is(.manage-v2,.drawing-workspace,.orders-view,.admin-tools,.control-panel-v2) :is(input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=color]),select,textarea){min-height:var(--pv-field-height);font-size:var(--pv-font-md);background:var(--pv-input);color:var(--pv-text);border-color:var(--pv-border-strong);border-radius:var(--pv-radius-sm);max-width:100%;line-height:1.35}:is(.manage-v2,.drawing-workspace,.orders-view,.admin-tools,.control-panel-v2) :is(input,select,textarea,button):focus-visible{outline:2px solid var(--pv-accent-strong);outline-offset:2px}:is(.manage-v2,.drawing-workspace,.orders-view,.admin-tools,.control-panel-v2) :is(.section-actions,.row-actions,.drawing-toolbar,.control-plan-toolbar,.ocr-selection-actions) button:not(.ui-button):not(.drawing-balloon){min-height:var(--pv-action-height);border-radius:var(--pv-radius-sm);font-family:var(--pv-font-sans);font-size:var(--pv-font-sm);font-weight:650;line-height:1.3}:is(.manage-v2,.drawing-workspace,.orders-view,.admin-tools,.control-panel-v2) button:disabled{cursor:not-allowed}:is(.manage-v2,.drawing-workspace,.orders-view,.admin-tools,.control-panel-v2) :is(.section-topline,.drawing-side-head,.drawing-toolbar,.control-plan-toolbar){color:var(--pv-text)}:is(.manage-v2,.drawing-workspace,.orders-view,.admin-tools,.control-panel-v2) :is(.section-topline,.drawing-side-head,.drawing-toolbar) :is(span,small):not(.kind):not(.row-status){line-height:1.35}.balloon-type-colors{border:1px solid var(--pv-border);background:var(--pv-surface-2);color:var(--pv-text);border-radius:9px;margin:12px 0;padding:0}.balloon-type-colors>summary{cursor:pointer;font-size:var(--pv-font-sm);justify-content:space-between;align-items:center;gap:10px;padding:12px;font-weight:750;display:flex}.balloon-type-colors>summary span{color:var(--pv-muted);font-size:var(--pv-font-xs);font-weight:500}.balloon-type-color-grid{grid-template-columns:repeat(auto-fit,minmax(145px,1fr));gap:8px;padding:4px 12px 12px;display:grid}.balloon-type-color-grid label{border:1px solid var(--pv-border);border-radius:var(--pv-radius-sm);background:var(--pv-surface);min-width:0;color:var(--pv-text-soft);font-size:var(--pv-font-sm);justify-content:space-between;align-items:center;gap:9px;padding:6px 8px;display:flex}.balloon-type-color-grid label span{overflow-wrap:anywhere}.balloon-type-color-grid input[type=color]{border:1px solid var(--pv-border-strong);background:var(--pv-input);cursor:pointer;border-radius:6px;flex:0 0 44px;width:44px;min-width:44px;height:35px;padding:3px}.balloon-type-colors>.ui-button{margin:0 12px 12px}.balloon-settings-actions{align-items:center;gap:8px}.balloon-settings-actions>.ui-button{min-height:var(--pv-action-height)}.balloon-settings-actions>.ui-button:not(:first-child){background:var(--pv-surface-2);color:var(--pv-text-soft);border-color:var(--pv-border-strong)}.balloon-settings-actions>.ui-button:last-child{background:0 0;border-color:#0000}@media (width<=860px){.balloon-type-color-grid{grid-template-columns:repeat(auto-fit,minmax(135px,1fr))}}@media (prefers-reduced-motion:reduce){.ui-button,:is(.manage-v2,.drawing-workspace,.orders-view,.admin-tools) button{transition:none}}.ocr-inspector .ocr-zone-row .ocr-zone-button:not(.validated)>span{color:var(--ocr-label-color,var(--pv-muted));font-weight:750}.ocr-inspector .ocr-zone-row .ocr-zone-button.active{border-color:var(--pv-accent);background:var(--pv-accent-soft)}:where(.report-admin-page,.import-view,.orders-view,.admin-tools) :is(input:not([type=checkbox]):not([type=radio]),select,textarea){font-size:var(--pv-font-md);min-height:var(--pv-field-height);color:var(--pv-text);background:var(--pv-input);border-color:var(--pv-border-strong);border-radius:var(--pv-radius-sm)}:where(.report-admin-page,.import-view,.orders-view,.admin-tools) :is(button:not(.ui-button),.file-btn):not(.danger-lite):not(.confirm-action){font-family:var(--pv-font-sans);font-size:var(--pv-font-sm);border-radius:var(--pv-radius-sm)}
