html[data-interface="dock"] body{ background:#efefef; color:#000; font:11px/13px Tahoma, "Segoe UI", sans-serif; }
html[data-interface="dock"] .app-main{ width:100%; max-width:none; margin:0; }
html[data-interface="dock"] .content{ padding:0; }
html[data-interface="dock"] .content > h1, html[data-interface="dock"] .content > p,
html[data-interface="dock"] .content > .settings-card{ margin:12px; }
html[data-interface="dock"] .settings-card, html[data-interface="dock"] .quote-card{ border-radius:0; box-shadow:none; background:#efefef; }
.dock-workspace{ display:flex; flex-direction:column; height:100vh; height:100dvh; min-height:480px; overflow:hidden; background:#efefef; color:#000; font:11px/13px Tahoma, "Segoe UI", sans-serif; }
.dock-editor-fieldset{ margin:0; padding:0; border:0; min-width:0; }
.dock-title{ display:flex; align-items:center; gap:4px; height:22px; padding:1px 3px; background:#fff; color:#000; flex:none; font-size:12px; }
.dock-data-identity{ display:flex; gap:10px; flex-shrink:0; }
.dock-title-document{ min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.dock-app-icon{ color:#0079af; font-size:18px; line-height:18px; }
.dock-menubar{ display:flex; align-items:center; flex:none; height:22px; padding-inline:3px; border-bottom:1px solid #aaa; position:relative; z-index:120; background:#efefef; font:11px/13px Tahoma, "Segoe UI", sans-serif; }
.dock-menubar details{ position:relative; }
.dock-menubar summary{ padding:2px 12px; cursor:pointer; list-style:none; font-weight:normal; }
.dock-menubar summary::-webkit-details-marker{ display:none; }
.dock-menubar summary::marker{ content:""; }
.dock-menubar details[open] > summary, .dock-menubar summary:hover{ background:#c6d9f2; outline:1px solid #7f9db9; }
.dock-menu-popup{ position:absolute; top:100%; left:0; display:flex; flex-direction:column; min-width:220px; padding:3px; border:1px solid #888; background:#f5f5f5; box-shadow:2px 2px 3px #0004; }
.dock-menu-popup a, .dock-menu-popup button, .dock-menu-popup label{ display:block; padding:5px 12px; text-align:left; text-decoration:none; border:0; background:transparent; color:#000; font:inherit; margin:0; white-space:nowrap; }
.dock-menu-popup a:hover, .dock-menu-popup button:hover, .dock-menu-popup label:hover{ background:#c6d9f2; }
.dock-menu-popup label input{ margin-right:5px; }
.dock-menu-popup input[type="file"]{ max-width:220px; display:block; }
.dock-menu-popup hr{ margin:4px 0; }
.dock-menu-submenu > summary{ display:flex; align-items:center; justify-content:space-between; gap:18px; padding:5px 12px; white-space:nowrap; }
.dock-menu-submenu > .dock-menu-popup{ top:-4px; left:100%; max-height:calc(100dvh - 60px); overflow-y:auto; z-index:1; }
.dock-menu-submenu.opens-left > .dock-menu-popup{ left:auto; right:100%; }
.dock-toolbar{ display:flex; flex:none; align-items:stretch; gap:2px; height:44px; min-width:0; border-bottom:1px solid #999; padding:2px 4px; overflow:visible; background:#efefef; }
.dock-toolbar button, .dock-toolbar a{ display:flex; flex-direction:column; align-items:center; justify-content:center; flex:none; gap:1px; min-width:28px; margin:0; padding:0 2px; border:1px solid transparent; border-radius:0; background:transparent; color:#000; text-decoration:none; font-size:10px; }
.dock-toolbar button:hover, .dock-toolbar a:hover{ border-color:#7f9db9; background:#dce9f9; }
.dock-toolbar button:disabled{ opacity:.5; cursor:default; }
.dock-toolbar button:disabled:hover{ background:transparent; border-color:transparent; }
.dock-toolbar span[aria-hidden]{ font-size:18px; line-height:20px; color:#32759d; }
.dock-toolbar-separator{ border-left:1px solid #888; margin:1px 5px; }
.dock-module-button{ display:flex; flex-direction:column; align-items:center; justify-content:center; gap:1px; padding:0 10px; font-size:10px; }
.dock-surface-scroll{ flex:1; min-height:0; overflow:auto; }
.dock-surface{ display:flex; height:100%; min-width:800px; min-height:360px; gap:4px; padding:0 2px; }
.dock-native-layout{ display:flex; flex-direction:column; height:100%; min-width:800px; min-height:360px; gap:4px; padding:0 2px; }
.dock-native-layout .dock-manufacturer-surface{ flex:1; height:auto; min-height:0; padding:0; }
.dock-native-comment{ flex:0 0 var(--dock-bottom); min-height:50px; }
.dock-native-layout [hidden]{ display:none !important; }
.dock-left, .dock-right{ display:flex; flex-direction:column; gap:6px; min-height:0; flex:none; }
.dock-left{ width:var(--dock-left, 23.3%); }
.dock-right{ width:var(--dock-right, 28.6%); }
.dock-document{ flex:1; min-width:180px; display:flex; flex-direction:column; border:1px solid #a0a0a0; background:#efefef; overflow:hidden; }
.dock-panel{ display:flex; flex-direction:column; min-height:0; border:1px solid #aaa; background:#efefef; }
.dock-caption{ flex:none; height:18px; padding:0 4px; line-height:16px; border-bottom:1px solid #999; font-weight:normal; }
.dock-caption::after{ content:"⌖"; float:right; color:#333; }
.dock-panel-body{ flex:1; min-height:0; padding:5px; overflow:auto; }
.dock-white{ background:#fff; margin:5px; padding:0; border:1px solid #999; }
.dock-explorer{ flex:44 1 0; }
.dock-output{ flex:54 1 0; }
.dock-picture{ flex:36 1 0; }
.dock-errors{ flex:21 1 0; }
.dock-prices{ flex:42 1 0; }
.dock-picture .dock-panel-body{ display:flex; flex-direction:column; overflow:hidden; }
.dock-tree, .dock-tree ul{ list-style:none; margin:0; padding-left:16px; }
.dock-tree{ padding-left:2px; }
.dock-tree button{ font:inherit; border:0; background:transparent; color:#000; padding:1px 3px; text-align:left; }
.dock-tree button.selected{ background:#c7dcf4; }
.dock-tree .dock-icon{ vertical-align:middle; }
.dock-tabs{ display:flex; flex:none; align-items:stretch; overflow-x:auto; gap:1px; }
.dock-tabs button{ flex:none; padding:2px 7px; border:1px solid #aaa; border-radius:0; font:inherit; color:#333; background:#eee; line-height:16px; white-space:nowrap; }
.dock-tabs button[aria-selected="true"]{ background:#fff; color:#000; border-color:#333; }
.dock-document-tabs{ height:24px; border-bottom:1px solid #888; padding-top:3px; }
.dock-document-tabs button[aria-selected="true"]{ border-bottom-color:#efefef; background:#efefef; font-weight:bold; }
.dock-bottom-tabs{ height:21px; border-top:1px solid #333; padding-top:0; }
.dock-bottom-tabs button{ border-top:0; }
.dock-document-body{ flex:1; min-height:0; overflow:auto; padding:10px; }
.dock-categories{ display:flex; flex-wrap:wrap; gap:10px; margin-bottom:26px; padding:0 0 2px; }
.dock-categories button{ flex:none; min-width:min(110px, 100%); max-width:100%; min-height:28px; padding:1px 8px; display:flex; gap:8px; align-items:center; justify-content:center; border:1px solid #999; border-radius:2px; background:linear-gradient(#fff, #dedede); color:#000; font:inherit; overflow-wrap:anywhere; }
.dock-categories button[aria-selected="true"]{ background:#fff; border-color:#3a7375; }
.dock-categories button span{ font-size:22px; color:#338357; }
.dock-information{ width:440px; max-width:100%; }
.dock-information > .quote-customer-picker{ display:grid; gap:6px; margin-bottom:14px; }
.dock-information > .quote-customer-picker select{ width:100%; min-width:0; }
.dock-section-label{ color:#0000d0; display:flex; align-items:center; gap:6px; margin:12px 0 10px; }
.dock-section-label::after{ content:""; height:1px; flex:1; background:#a0a0a0; box-shadow:0 1px #fff; }
.dock-property-fields{ display:grid; grid-template-columns:128px minmax(0, 256px); grid-auto-rows:minmax(20px, auto); align-items:start; gap:6px 6px; padding-left:5px; }
.dock-property-fields > label{ text-align:right; padding-top:2px; }
.dock-property-fields input, .dock-property-fields textarea{ width:100%; }
.dock-workspace input:not([type="checkbox"]):not([type="radio"]):not([type="file"]), .dock-workspace textarea, .dock-workspace select{ font:inherit; color:#000; padding:1px 3px; border:1px solid #888; border-radius:0; background:#fff; min-height:20px; box-shadow:none; }
.dock-workspace input:not([type="checkbox"]):not([type="radio"]):not([type="file"]){ height:20px; }
.dock-workspace select{ height:21px; }
.dock-workspace input[type="checkbox"], .dock-workspace input[type="radio"]{ width:13px; height:13px; margin:0 3px 0 0; vertical-align:middle; flex:none; }
#dock-number, #dock-tag, #dock-po{ width:128px; }
#dock-validity, #dock-status, #dock-expiration{ width:208px; }
#dock-status{ height:21px; }
#dock-sent{ border:0; background:transparent; padding-left:0; }
.dock-workspace input[readonly]{ background:#efefef; }
.dock-workspace textarea{ resize:vertical; }
.dock-workspace button{ cursor:pointer; }
.dock-workspace label{ margin:0; }
.dock-workspace .dock-inline{ display:flex; align-items:center; gap:4px; margin-block:4px; }
#dock-quote-comments{ width:438px; max-width:100%; height:104px; resize:none; }
.dock-additional{ margin-top:16px; }
.dock-workspace .principal-panel, .dock-workspace .item-editor, .dock-workspace .product-editor, .dock-workspace .option-editor, .dock-workspace .quote-card{ border-radius:0; padding:8px; margin-block:8px; border:1px solid #aaa; background:#efefef; box-shadow:none; }
.dock-workspace .fields, .dock-workspace .principal-fields{ gap:8px; }
.dock-workspace .form-control, .dock-workspace .form-select{ min-height:20px; padding:1px 3px; font-size:11px; line-height:13px; }
.dock-workspace select{ appearance:auto; }
.dock-workspace h2, .dock-workspace h3, .dock-workspace h4, .dock-workspace h5, .dock-workspace legend{ font-size:11px; margin:8px 0; }
.dock-workspace :where(.btn, button:not(.dock-tabs button):not(.dock-toolbar button):not(.dock-tree button):not(.dock-categories button):not(.dock-menu-popup button)){ font:inherit; border-radius:0; padding:2px 8px; }
.dock-workspace .quote-actions{ margin-block:8px; padding:0; gap:6px; }
.dock-workspace .validation-message, .dock-error{ color:#a00000; }
.dock-workspace .validation-errors{ margin:0; padding-left:20px; }
.dock-picture .dock-panel-body{ padding:3px; }
.dock-picture-options{ flex:none; height:42px; padding:0 5px; }
.dock-picture-options > label{ display:flex; align-items:center; height:18px; }
.dock-picture-options > div{ margin:3px 0 0; height:18px; line-height:18px; }
.dock-picture-canvas{ background:#fff; border:1px solid #999; flex:1; min-height:0; overflow:auto; }
.dock-picture-canvas.fit{ display:flex; align-items:center; justify-content:center; }
.dock-picture-canvas.fit svg{ width:100%; height:100%; }
.dock-price-inspector{ width:223px; max-width:100%; margin:3px auto 12px; }
.dock-price-inspector > label{ display:block; text-align:left; height:16px; margin:0 0 12px 6px; }
.dock-price-inspector dl{ display:grid; grid-template-columns:96px 96px; gap:2px 0; align-items:center; margin:0; }
.dock-price-inspector dt{ font:bold 8.25pt/16px Arial, sans-serif; padding-left:3px; }
.dock-price-inspector .dock-tax-label{ font-weight:normal; }
.dock-price-inspector dd{ margin:0; padding:1px 3px; border:1px solid #888; text-align:right; height:20px; background:#efefef; white-space:nowrap; }
.dock-text-options{ display:flex; align-items:start; justify-content:space-between; gap:4px; height:33px; padding-top:5px; border-bottom:1px solid #aaa; }
.dock-text-options label{ padding:3px 0 0 3px; }
.dock-workspace .dock-text-options select{ width:88px; }
.dock-text-options select{ max-width:50%; }
.dock-text-output{ white-space:pre; overflow:auto; padding-top:5px; }
.dock-text-output.wrap{ white-space:pre-wrap; overflow-wrap:anywhere; }
.dock-text-output p{ margin:0 0 4px; }
.dock-comment-editor{ width:100%; height:100%; min-height:0; resize:none; }
.dock-document-body:has(> .dock-start-page), .dock-document-body:has(> .dock-native-item){ padding:0; }
.dock-start-page{ min-height:100%; min-width:398px; padding:8px; background:linear-gradient(#e8ecf1, #6d87a7); }
.dock-start-block{ width:382px; border:1px solid #234b99; border-radius:15px; overflow:hidden; margin-bottom:6px; background:linear-gradient(#dbeafb, #bad0f1); }
.dock-start-quotes{ height:104px; }
.dock-start-management{ height:132px; }
.dock-workspace .dock-start-block > h2{ display:flex; align-items:center; height:25px; margin:0; padding:0 14px; font:inherit; border-bottom:1px solid #234b99; background:linear-gradient(90deg, #c2daf8, #6690e0); }
.dock-start-block > a{ display:block; height:16px; line-height:16px; margin:8px 7px 0; color:#0000ff; text-decoration:none; }
.dock-start-block > a:first-of-type{ margin-top:6px; }
.dock-start-block > a:hover{ text-decoration:underline; }
.dock-start-warning{ height:181px; border-color:#8f5700; background:linear-gradient(#ffe3df, #ffd089); }
.dock-workspace .dock-start-warning > h2{ border-color:#8f5700; background:linear-gradient(90deg, #ffd799, #ff9700); }
.dock-start-warning > p{ margin:6px 2px 0; height:133px; white-space:pre-wrap; line-height:13px; overflow:auto; }
.dock-home-tab{ flex:none; padding:2px 7px; border:1px solid #aaa; color:#000; text-decoration:none; }
.dock-status{ display:flex; justify-content:flex-end; gap:24px; height:23px; flex:none; border-top:1px solid #aaa; padding:3px 8px; overflow:hidden; }
.dock-icon{ flex:none; object-fit:contain; }
.dock-detail{ height:160px; flex:none; }
.dock-status > span{ border-left:1px solid #ccc; padding-left:16px; white-space:nowrap; }
.dock-workspace [hidden]{ display:none !important; }
.dock-workspace button:focus-visible, .dock-workspace a:focus-visible, .dock-menubar summary:focus-visible{ outline:2px solid #316ac5; outline-offset:-2px; }
@media (max-width: 800px){ .dock-workspace{ min-height:600px; } .dock-menubar summary{ padding-inline:8px; } }
.dock-native-item{ min-width:450px; height:100%; display:flex; flex-direction:column; }
.dock-native-item-header{ display:flex; gap:16px; height:56px; flex:none; padding:8px 16px 0 8px; }
.dock-native-item-name{ flex:1; min-width:160px; }
.dock-native-item-name label{ display:block; height:16px; }
.dock-native-item-name input{ width:100%; }
.dock-native-item-actions{ display:grid; gap:5px; align-content:start; width:120px; flex:none; }
.dock-workspace .dock-native-item-actions button{ height:21px; padding:1px 3px; white-space:nowrap; }
.dock-native-item-actions button, .dock-native-product-actions button{ display:flex; align-items:center; gap:5px; justify-content:flex-start; background:#fafafa; border:1px solid #888; }
.dock-native-family{ display:flex; flex:1; min-height:260px; padding:8px; gap:8px; }
.dock-native-category-list{ width:132px; flex:none; display:flex; flex-direction:column; gap:5px; overflow:hidden; align-items:flex-start; }
.dock-workspace .dock-native-category-list button{ display:flex; align-items:center; gap:7px; width:120px; min-height:35px; flex:none; padding:2px 4px; border:1px solid #aaa; background:linear-gradient(#fff,#dedede); text-align:left; line-height:14px; }
.dock-workspace .dock-native-category-list button[aria-selected="true"]{ background:#fff; border-color:#447577; }
.dock-native-category-list button[hidden], .dock-category-more[hidden]{ display:none !important; }
.dock-native-category-list > button{ box-sizing:border-box; }
.dock-category-more{ width:120px; flex:none; }
.dock-category-more > summary{ height:28px; box-sizing:border-box; display:flex; align-items:center; justify-content:space-between; gap:4px; padding:2px 4px; list-style:none; border:1px solid #aaa; background:#fafafa; cursor:pointer; }
.dock-category-more > summary::-webkit-details-marker{ display:none; }
.dock-category-popup{ position:fixed; z-index:1300; display:grid; gap:5px; padding:5px; border:1px solid #999; background:#f5f5f5; box-shadow:2px 3px 6px #0004; }
.dock-category-more:not([open]) > .dock-category-popup{ display:none; }
.offline-menu{ position:relative; font:11px/15px Tahoma, sans-serif; z-index:121; }
.offline-menu > summary{ cursor:pointer; list-style:none; padding:3px 10px; white-space:nowrap; }
.offline-menu > summary::-webkit-details-marker{ display:none; }
.offline-menu-popup{ width:300px; min-width:0; box-sizing:border-box; max-width:calc(100vw - 16px); }
.offline-menu:not([open]) > .offline-menu-popup{ display:none; }
.offline-menu-status{ display:grid; gap:5px; padding:8px 12px; background:#e8f1fa; white-space:normal; overflow-wrap:anywhere; }
.offline-menu-status small{ color:#555; font-size:inherit; }
.offline-menu-popup :is(a, button){ white-space:normal; overflow-wrap:anywhere; }
.dock-menu-popup > .quote-actions{ display:flex; flex-direction:column; gap:0; margin:0; }
.dock-menu-notice{ display:block; max-width:300px; padding:6px 12px; white-space:normal; line-height:16px; }
.dock-menu-popup .dock-transfer-target{ display:flex; gap:6px; align-items:center; max-width:min(360px, calc(100vw - 24px)); white-space:normal; overflow-wrap:anywhere; }
.dock-menu-popup .dock-item-copy{ display:flex; gap:6px; align-items:center; }
.dock-menu-popup button:disabled{ color:#777; cursor:default; }
.dock-menu-popup button:disabled:hover{ background:transparent; }
.nav-actions .offline-menu-popup{ left:auto; right:0; }
html[data-control-style="rounded"] .dock-category-more > summary{ border-radius:7px; }
html[data-control-style="rounded"] .dock-category-popup{ border-radius:8px; }
.dock-native-category-body{ flex:1; min-width:0; overflow:auto; }
.dock-native-group{ border:1px solid #aaa; padding:8px 12px 12px; margin:0 0 10px; min-width:0; }
.dock-workspace .dock-native-group > legend{ float:none; width:auto; padding-inline:4px; margin:0; font:inherit; }
.dock-current-product-row{ display:flex; align-items:center; gap:8px; margin-bottom:10px; min-height:24px; }
.dock-current-product-row strong{ flex:1; font-weight:normal; }
.dock-current-product-row button{ padding:1px !important; border:1px solid #888; height:22px; width:24px; }
.dock-native-selection{ max-width:430px; }
.dock-selection-row{ margin-bottom:6px; }
.dock-selection-row label{ font-weight:bold; display:block; min-height:18px; overflow-wrap:anywhere; }
.dock-selection-row select, .dock-selection-row input{ width:100%; height:21px; }
.dock-native-fields{ display:grid; grid-template-columns:minmax(95px, 145px) minmax(90px, 220px); gap:5px 8px; align-items:center; margin-block:6px; max-width:400px; }
.dock-native-fields > label{ text-align:right; }
.dock-native-fields input, .dock-native-fields textarea, .dock-native-fields select{ min-width:0; width:100%; }
.dock-native-dimension-summary{ margin:0 0 10px; }
.dock-native-dimensions{ display:grid; grid-template-columns:70px 90px 70px 90px; align-items:center; gap:6px; max-width:360px; margin-block:10px; }
.dock-native-dimensions input{ width:90px; }
.dock-native-dimension-table{ width:100%; border-collapse:collapse; font-size:11px; margin-block:12px; }
.dock-native-dimension-table th, .dock-native-dimension-table td{ padding:3px; border:1px solid #bbb; text-align:left; }
.dock-native-dimension-table td input:not([type="checkbox"]){ width:100%; min-width:60px; }
.dock-dimension-limits{ display:grid; grid-template-columns:140px 160px; gap:2px; margin:0 0 8px; }
.dock-dimension-limits dd{ margin:0; }
.dock-native-operator{ display:grid; grid-template-columns:155px 101px; width:256px; margin-block:12px; align-items:center; }
.dock-native-operator label{ font-weight:normal; }
.dock-native-operator select{ grid-column:1 / -1; margin-top:2px; width:256px; }
.dock-native-inline{ display:flex; align-items:center; gap:5px; margin-block:8px !important; }
.dock-native-product-actions{ margin-top:10px; }
.dock-native-advanced, .dock-item-properties{ margin-top:12px; }
.dock-item-properties{ flex:none; padding:6px 8px; border-top:1px solid #aaa; }
.dock-item-properties[open]{ overflow:auto; max-height:220px; }
.dock-native-options{ padding:0 !important; margin:0 !important; border:0 !important; }
.dock-native-options > summary, .dock-native-options .catalogue-control > legend{ display:none; }
.dock-native-options .catalogue-control{ padding:5px 0; border:0; margin:0; }
.dock-native-options .catalogue-control > label{ display:block; font-weight:bold; margin-bottom:3px; }
.dock-native-options select{ max-width:320px; }
.dock-native-options .catalogue-checks{ display:flex; flex-direction:column; gap:5px; }
.dock-native-options .catalogue-checks label{ display:flex; align-items:center; gap:5px; }
.dock-native-option-value{ margin-block:8px; }
.dock-native-note{ color:#555; margin-top:12px; }
.dock-empty-product{ margin:8px; }
.dock-steel-slab{ max-width:330px; }
.dock-slab-modules{ display:flex; gap:3px; margin-bottom:12px; }
.dock-slab-modules button{ width:48px; height:28px; }
.dock-slab-modules button[aria-selected="true"]{ background:white; border-color:#447577; }
.dock-slab-selection label{ display:block; margin-top:7px; margin-bottom:3px; }
.dock-slab-selection > div{ display:flex; gap:5px; }
.dock-slab-selection select{ flex:1; min-width:0; }
.dock-slab-selection button{ width:24px; height:21px; padding:1px !important; }
.dock-slab-copy{ display:block; width:226px; margin:8px 0 16px auto; }
.dock-steel-slab .dock-native-operator{ width:100%; grid-template-columns:1fr auto; }
.dock-steel-slab .dock-native-operator select{ width:100%; }
.dock-glass-selection{ margin-block:10px; }
.dock-glass-selection > label{ display:block; margin-bottom:4px; }
.dock-glass-selection > div{ display:flex; align-items:center; gap:8px; }
.dock-glass-select{ min-height:37px; flex:1; text-align:left; }
.dock-glass-filters{ display:grid; grid-template-columns:90px 1fr; gap:6px; padding:8px; }
.dock-gallery-backdrop{ position:fixed; inset:0; background:#0003; display:grid; place-items:center; z-index:1000; }
.dock-gallery{ width:min(760px, calc(100vw - 32px)); max-height:calc(100vh - 32px); border:1px solid #777; background:#efefef; box-shadow:2px 2px 5px #555; display:flex; flex-direction:column; }
.dock-gallery header{ padding:4px 8px; color:#fff; background:linear-gradient(90deg, #0a246a, #a6caf0); display:flex; justify-content:space-between; align-items:center; }
.dock-gallery header button{ color:#000; }
.dock-gallery-grid{ display:grid; grid-template-columns:repeat(auto-fill, minmax(120px, 1fr)); gap:4px; padding:8px; overflow-y:auto; min-height:180px; max-height:65vh; background:white; margin:8px; border:1px solid #999; }
.dock-gallery-grid button{ display:flex; flex-direction:column; align-items:center; justify-content:flex-end; gap:5px; min-height:100px; background:white; border:1px solid transparent; }
.dock-gallery-grid button[aria-selected="true"]{ background:#d6e8ff; border-color:#3a7375; }
.dock-gallery-grid img{ max-width:110px; max-height:160px; object-fit:contain; }
.dock-gallery footer{ display:flex; justify-content:flex-end; gap:8px; padding:8px; }
.dock-gallery footer button{ min-width:80px; }
.dock-temporary-picture{ max-width:100%; max-height:100%; object-fit:contain; display:block; margin:auto; }
.dock-unit-editor{ max-width:430px; min-height:530px; display:flex; flex-direction:column; }
.dock-inventory-filters{ display:grid; grid-template-columns:88px minmax(100px, 1fr) 24px; align-items:center; gap:8px 4px; margin-block:8px 12px; }
.dock-inventory-filters button, .dock-inventory-title button{ padding:1px !important; height:21px; width:24px; }
.dock-inventory-title{ display:flex; justify-content:space-between; align-items:center; margin-block:6px; }
.dock-inventory-list, .dock-basket-list{ background:white; border:1px solid #888; overflow:auto; flex:1; min-height:230px; max-height:400px; }
.dock-workspace .dock-inventory-list button, .dock-workspace .dock-basket-list button{ display:block; width:100%; background:white; border:0; text-align:left; min-height:22px; padding:3px 5px; }
.dock-workspace .dock-inventory-list button[aria-selected="true"], .dock-workspace .dock-basket-list button[aria-selected="true"]{ background:#c7dcf4; }
.dock-inventory-description{ min-height:80px; margin-top:8px; resize:vertical; }
.dock-inventory-action{ display:flex; justify-content:flex-end; align-items:start; gap:12px; margin-top:10px; min-height:38px; }
.dock-inventory-action span{ text-align:right; }
.dock-inventory-action button{ min-width:64px; }
.dock-piece-name{ min-height:16px; }
.dock-piece-description{ min-height:48px; }
.dock-piece-inputs{ display:flex; gap:30px; }
.dock-piece-inputs label{ display:block; margin-bottom:3px; }
.dock-piece-inputs input{ width:100px; }
.dock-piece-inputs input[type="number"]{ width:70px; height:32px !important; line-height:26px; font-size:20px !important; }
.dock-basket-actions{ display:flex; justify-content:flex-end; margin-block:8px; }
.dock-basket-actions button{ display:flex; gap:5px; align-items:center; }
.dock-basket-columns, .dock-workspace .dock-basket-list button{ display:grid; grid-template-columns:1fr 75px; }
.dock-basket-columns{ background:#efefef; border-bottom:1px solid #aaa; padding:4px 5px; position:sticky; top:0; }
.dock-toolbar-group{ flex:none; border-right:1px solid #aaa; padding-right:4px; }
.dock-toolbar-group-toggle{ display:none; }
.dock-toolbar-group-items{ display:flex; height:100%; width:max-content; gap:0; }
.dock-toolbar-group.collapsed .dock-toolbar-group-toggle{ display:flex; height:100%; cursor:pointer; align-items:center; justify-content:center; flex-direction:column; padding:0 6px; font-size:10px; }
.dock-toolbar-group-toggle::-webkit-details-marker{ display:none; }
.dock-toolbar-group-toggle small{ position:absolute; margin-left:34px; }
.dock-toolbar-group.collapsed:not([open]) .dock-toolbar-group-items{ display:none; }
.dock-toolbar-group.collapsed[open] .dock-toolbar-group-items{ position:fixed; z-index:1200; height:auto; max-height:70vh; max-width:calc(100vw - 16px); overflow-y:auto; display:grid; grid-template-columns:repeat(auto-fit, minmax(90px, 1fr)); width:340px; padding:8px; background:#f4f4f4; border:1px solid #888; box-shadow:2px 3px 6px #0004; }
.dock-toolbar-group.collapsed .dock-toolbar-group-items button, .dock-toolbar-group.collapsed .dock-toolbar-group-items a{ min-height:48px; white-space:normal; }
.dock-toolbar .dock-module-button{ display:flex; align-items:center; justify-content:center; flex-direction:column; padding:0 2px; font-size:10px; }
.dock-catalogue-toolbar, .dock-catalogue-inline{ display:flex; align-items:stretch; flex:none; height:100%; gap:0; }
.dock-toolbar [hidden]{ display:none !important; }
.dock-toolbar button, .dock-toolbar a, .dock-toolbar .dock-module-button,
.dock-toolbar-group.collapsed .dock-toolbar-group-toggle{ display:grid; grid-template-rows:24px 13px; align-content:center; justify-items:center; align-items:center; row-gap:0; line-height:13px; }
.dock-toolbar img{ display:block; margin:0; align-self:center; }
.dock-toolbar-group.collapsed[open] .dock-toolbar-group-items button,
.dock-toolbar-group.collapsed[open] .dock-toolbar-group-items a{ display:flex; }
.quote-tree-row{ display:flex; align-items:baseline; white-space:nowrap; }
.quote-explorer ul{ border-left:1px dotted #b8c1ce; padding-left:15px; }
.quote-tree-price{ font-variant-numeric:tabular-nums; }
.quote-tree-row > button:last-child{ display:inline-block; min-width:0; }
.quote-tree-toggle, .quote-tree-spacer{ display:inline-block; width:14px; flex:none; }
.dock-tree .quote-tree-toggle{ padding:0; text-align:center; border:1px solid #aaa; font-size:10px; height:12px; line-height:10px; margin:2px; width:12px; }
.quote-workspace-errors{ list-style:none; padding:0; margin:4px; }
.quote-workspace-errors button{ background:transparent; border:0; text-align:left; color:#a00000; font:inherit; cursor:pointer; }
.dock-errors .quote-workspace-errors{ margin:0; }
.dock-workspace .dock-errors .quote-workspace-errors button{ display:flex; align-items:start; gap:3px; padding:0; min-height:16px; line-height:16px; white-space:pre; }
.quote-text-node{ padding-left:10px; }
.quote-text-node p{ margin:2px 0; }
.dock-price-inspector{ padding-right:24px; }
.dock-price-inspector dd{ position:relative; }
.dock-price-inspector .quote-price-modify{ position:absolute; left:calc(100% + 1px); top:-2px; padding:1px !important; border:1px solid #888; background:#efefef; height:22px; width:24px; }
.quote-price-dialog{ width:390px; max-width:calc(100vw - 24px); }
.quote-price-dialog-fields{ padding:20px; display:grid; gap:10px; }
.cloud-quote-workspace{ display:grid; grid-template-columns:minmax(260px, 320px) minmax(0, 1fr); gap:16px; align-items:start; }
.cloud-quote-workspace > fieldset{ min-width:0; }
.cloud-quote-inspector-guard{ position:sticky; top:12px; margin:0; padding:0; border:0; }
.cloud-quote-inspector-guard > .cloud-quote-inspector{ position:static; }
.cloud-quote-inspector{ position:sticky; top:12px; min-width:0; }
.cloud-quote-inspector .quote-explorer{ max-height:350px; overflow:auto; }
.cloud-quote-inspector details{ margin:12px 0; }
.cloud-quote-inspector .dock-text-output{ max-height:300px; overflow:auto; font-size:12px; }
.cloud-quote-inspector .dock-text-options{ font-size:12px; }
.cloud-quote-inspector .dock-text-options select{ max-width:150px; }
.cloud-quote-inspector .dock-price-inspector{ width:auto; max-width:245px; margin:4px auto 12px; padding-right:26px; }
.cloud-quote-inspector .dock-price-inspector > label{ height:auto; text-align:center; margin:0 0 12px; }
.cloud-quote-inspector .dock-price-inspector dl{ grid-template-columns:minmax(80px, 1fr) 100px; gap:4px 10px; }
.cloud-quote-inspector .dock-price-inspector dt{ font:inherit; font-weight:bold; padding-left:0; }
.cloud-quote-inspector .dock-price-inspector .dock-tax-label{ font-weight:normal; }
.cloud-quote-inspector .dock-price-inspector dd{ height:21px; }
.cloud-quote-inspector .dock-price-inspector .quote-price-modify{ left:calc(100% + 2px); top:-1px; height:21px; width:22px; }
.cloud-quote-inspector .dock-text-options{ height:auto; align-items:center; padding-top:0; padding-bottom:5px; }
.cloud-quote-inspector .dock-text-options label{ padding:0; }
@media (max-width: 1000px){ .cloud-quote-workspace{ grid-template-columns:1fr; } .cloud-quote-inspector, .cloud-quote-inspector-guard{ position:static; } }
.dock-native-price-dialog, .dock-native-factor-dialog{ background:#efefef; color:#000; font:11px/13px Tahoma, sans-serif; border:1px solid #777; box-shadow:3px 4px 8px #0005; max-height:calc(100dvh - 32px); overflow:auto; }
.dock-native-price-dialog{ width:292px; }
.dock-native-price-dialog > header, .dock-native-factor-dialog > header{ background:linear-gradient(90deg, #0a246a, #a6caf0); color:white; padding:4px 7px; display:flex; gap:5px; align-items:center; }
.dock-price-dialog-body{ padding:5px 6px; }
.dock-price-channel{ border:1px solid #aaa; padding:5px 7px 8px; margin:5px 0; min-width:0; }
.dock-price-channel legend{ float:none; width:auto; font:inherit; margin:0; padding:0 3px; }
.dock-price-channel[disabled]{ color:#777; }
.dock-price-mode-row{ display:grid; grid-template-columns:minmax(0, 1fr) 103px; align-items:center; gap:3px; min-height:28px; }
.dock-price-mode-row label{ margin:0; white-space:nowrap; }
.dock-price-mode-row input[type=radio]{ margin:0 3px 0 0; vertical-align:middle; }
.dock-price-mode-row input[type=number]{ min-width:0; width:103px; height:21px; text-align:right; padding:0 2px; border:1px solid #888; font:inherit; }
.dock-price-mode-row output{ text-align:right; }
.dock-price-result{ display:block; margin-top:4px; padding-top:4px; text-align:right; font-weight:bold; }
.dock-native-price-dialog > footer, .dock-native-factor-dialog > footer{ display:flex; justify-content:center; gap:12px; padding:7px 8px; }
.dock-native-price-dialog > footer button, .dock-native-factor-dialog > footer button{ min-width:75px; font:inherit; height:23px; border-radius:0; padding:2px 6px; }
.dock-base-price-dialog{ width:372px; }
.dock-base-price-body{ position:relative; height:55px; }
.dock-base-price-body > label{ position:absolute; left:12px; top:18px; width:127px; height:16px; }
.dock-workspace .dock-base-price-body > select{ position:absolute; left:145px; top:17px; width:88px; height:21px; }
.dock-workspace .dock-base-price-body > input{ position:absolute; left:255px; top:17px; width:103px; height:20px; text-align:right; }
.dock-base-price-dialog > footer{ height:37px; padding:8px 11px 6px; gap:13px; justify-content:flex-end; }
.dock-native-factor-dialog{ width:543px; }
.dock-factor-backdrop{ z-index:1100; }
.dock-factor-body{ border:0; margin:0; padding:10px 8px; }
.dock-factor-row{ display:grid; grid-template-columns:minmax(170px, 1fr) repeat(5, 48px); gap:4px; align-items:center; min-height:36px; border-bottom:1px solid #aaa; }
.dock-factor-row > span, .dock-factor-row > strong{ overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.dock-factor-row label{ margin:0; white-space:nowrap; }
.dock-factor-items{ max-height:320px; overflow-y:auto; }
.dock-price-mode-row input[type=number]:disabled{ background:#e3e3e3; color:#777; }
