/* BOQ ONE design standard — Azia geometry.
 * Shared, screen-only primitives; no Bootstrap runtime, remote assets or print rules.
 * Existing portal sizing, data attributes and diagram coordinates are not replaced.
 */
@media screen {
  @font-face {
    font-family:Roboto;
    font-style:normal;
    font-weight:100 900;
    font-display:swap;
    src:url('./fonts/Roboto.ttf') format('truetype');
  }
  html[data-theme] {
    --control-height:38px;
    --control-radius:0;
    --radius:0;
    --radius-sm:0;
    --border:var(--line);
    --bg:var(--paper);
    --surface:var(--white);
    --surface-alt:var(--table-head);
    --text:var(--ink);
    --text-muted:var(--muted);
    --primary:var(--teal);
    --danger:var(--red);
    --boq-ui-blue:#3366ff;
    --boq-ui-blue-hover:#2952cc;
    --boq-ui-focus-border:#97a3b9;
    --boq-control-toolbar:40px;
    --boq-control-dense:32px;
    --boq-icon-action:18px;
    --boq-dog-size:144px;
    --boq-dog-bottom:16px;
    --boq-space-1:4px;
    --boq-space-2:8px;
    --boq-space-3:12px;
    --boq-space-4:16px;
    --boq-space-5:20px;
    --boq-space-6:24px;
    --boq-page-gutter:30px;
    --boq-canvas:color-mix(in srgb,var(--table-head) 88%,var(--line));
    font-family:Roboto,Arial,sans-serif;
    font-size:14px;
  }
  html[data-theme] body {
    background:var(--boq-canvas);
    color:var(--ink);
    font-family:Roboto,Arial,sans-serif;
    font-size:14px;
    line-height:1.5;
  }
  html[data-theme] :is(button,input,select,textarea) {font-family:inherit;}
  html[data-theme] .main-shell {background:linear-gradient(180deg,color-mix(in srgb,var(--line) 18%,var(--boq-canvas)),var(--boq-canvas) 160px);}
  html[data-theme] :is(button,.button,.btn,.icon-btn,select,textarea) {border-radius:0;}
  html[data-theme] :where(input:not([type=radio]):not([type=checkbox]):not([type=range]):not([type=color]):not([type=hidden])) {border-radius:0;}
  html[data-theme] :is(
    .card,.panel,.stat-card,.estimate-summary,.fatal-error,dialog,.modal-head,.modal-foot,
    .search,.search kbd,.rate-request-card,.rate-request-comment,.permission-portal,
    .company-readonly,.company-monogram,.monogram,.company-identity img,
    .project-symbol,.stat-icon,.brand-mark,.empty-icon,.code-chip,.tab-count,.nav-count,.nav-link,.boq-nav-group>summary,
    .notice,.migration-alert,.modal-error,.errorlist,.toast,.status-pill,.list-filter[data-status],.import-summary,
    .image-preview,.image-thumb,.image-editor-preview,.image-paste-preview,.photo-empty,
    .line-photos img,.catalog-photo-reference,.p7-thumb,.boq-image-cell,.boq-image-cell .p7-thumb,
    .crm-card-portal,.crm-tree-card,.crm-hierarchy li,.crm-project-terms,.crm-apply-terms fieldset,
    .p7-node,.p7-link-tag,.p7-print-options,.p8-wire-box,.p9-pane-split,.p13-drag-ghost,
    .p8-rate-bindings,.p8-material-options,.p9-material-departments,.p101-bound-rate,
    .ms-node,.ms-changed,.ms-print-warning,.fc-estimate,.fc-curve-editor,.fc-budget-fields,
    .fc-placement,.fc-cash-ghost,.fc-lane-name,.fc-resize,.fc-drag-date,
    .fn-totals>div,.fn-placement,.fn-ghost,.fn-cash,.fn-curve,.fn-resize,.fn-drag-date,
    .cost-source-list,.boq-column-choices,.boq-column-ghost,.boq-history-scroll,.boq-history-banner,.xlsx-fields
  ) {border-radius:0;}
  html[data-theme] :is(.card,.panel,.stat-card,.estimate-summary,.rate-request-card,.crm-card-portal,.ms-node) {
    background:var(--white);
    border-color:var(--line);
    box-shadow:none;
  }
  html[data-theme] :is(h1,h2,h3) {color:var(--heading,var(--ink));letter-spacing:0;}
  html[data-theme] :is(h1,.page-title h1,.project-heading h1,.crm-workspace .page-title h1) {
    font-size:32px;
    font-weight:500;
    line-height:1.2;
  }
  html[data-theme] :is(h2,.section-head h2,.panel-heading h2,.modal-head h2) {font-weight:500;}
  html[data-theme] :is(.eyebrow,.nav-section,.summary-head,.stat-top,.boqux-section-label) {
    color:var(--heading,var(--ink));
    font-size:11px;
    font-weight:700;
    letter-spacing:.2px;
    text-transform:uppercase;
  }
  html[data-theme] :is(.field,.list-filter,.rates-panel label,.helptext,.help-text,.muted,.preview) {color:var(--muted);}
  html[data-theme] :is(.field,.list-filter,.rates-panel label) {font-size:12px;}
  html[data-theme] .field {min-width:0;}
  html[data-theme] .fc-options form>.field {min-width:0;max-width:100%;}
  html[data-theme] .field :is(input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=color]):not([type=hidden]):not([type=file]),select,textarea) {box-sizing:border-box;max-width:100%;min-width:0;}
  html[data-theme] :is(.field input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=color]):not([type=hidden]):not([type=file]),.field select,.field textarea,.filter-select,.list-filter input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=color]):not([type=hidden]):not([type=file]),.list-filter select,.theme-control select,.ui-language-control select) {
    min-height:var(--control-height);
    padding:8px 11px;
    border:1px solid var(--line);
    background:var(--field);
    color:var(--ink);
    font-size:14px;
    line-height:20px;
    box-shadow:none;
  }
  html[data-theme] :is(.field input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=color]):not([type=hidden]):not([type=file]),.field select,.filter-select,.list-filter input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=color]):not([type=hidden]):not([type=file]),.list-filter select,.theme-control select,.ui-language-control select) {height:38px;}
  html[data-theme] :is(.field textarea,textarea) {height:auto;min-height:90px;resize:vertical;}
  html[data-theme] .boqux-control-label :is(input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=color]):not([type=hidden]):not([type=file]),select,textarea) {min-height:38px;padding:8px 11px;border:1px solid var(--line);background:var(--field);color:var(--ink);font-size:14px;line-height:20px;}
  html[data-theme] .boqux-control-label :is(input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=color]):not([type=hidden]):not([type=file]),select) {height:38px;}
  html[data-theme] .boqux-control-label textarea {height:auto;min-height:90px;}
  html[data-theme] :is(input,select,textarea):focus {border-color:var(--boq-ui-focus-border);box-shadow:none;}
  html[data-theme] :is(button,a,input,select,textarea,summary):focus-visible {outline:2px solid var(--focus);outline-offset:2px;}
  /* Unavailable is not loading. Busy feedback is an explicit state. */
  html[data-theme] :is(button,input,select,textarea):disabled {cursor:not-allowed;}
  html[data-theme] :is(button,input,select,textarea)[aria-busy="true"] {cursor:progress;}
  html[data-theme] :is(.field,.portal-field,.boqux-control-label) :is(input,textarea)[readonly] {background:var(--table-head);color:var(--ink);cursor:default;}
  html[data-theme] :is(input,select,textarea)[aria-invalid="true"] {border-color:var(--red);}
  html[data-theme] :is(input,select,textarea)[aria-invalid="true"]:focus-visible {outline-color:var(--red);}
  html[data-theme] :is(.helptext,.help-text,.form-note,.modal-head p) {font-size:12px;line-height:1.5;overflow-wrap:anywhere;}
  /* Django forms share editor geometry without resizing native toggles/files. */
  html[data-theme] body>main form :is(input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=color]):not([type=hidden]):not([type=file]),select) {box-sizing:border-box;height:var(--control-height);min-height:var(--control-height);padding:8px 11px;border:1px solid var(--line);background:var(--field);color:var(--ink);font-size:14px;line-height:20px;}
  html[data-theme] body>main form select[multiple] {height:auto;min-height:90px;}
  html[data-theme] body>main form textarea {box-sizing:border-box;min-height:90px;padding:8px 11px;border:1px solid var(--line);background:var(--field);color:var(--ink);font-size:14px;line-height:20px;}
  html[data-theme] :is(input[type=checkbox],input[type=radio]) {accent-color:var(--teal);}
  html[data-theme] .search {background:var(--field);border-color:var(--line);min-height:38px;}
  html[data-theme] .search input {border:0;background:transparent;color:var(--ink);font-size:14px;padding:8px 0;min-height:36px;height:36px;}
  html[data-theme] .search input:focus {outline:none;}
  html[data-theme] .search:focus-within {border-color:var(--boq-ui-focus-border);box-shadow:none;outline:2px solid var(--focus);outline-offset:2px;}
  html[data-theme] :is(.btn,.button) {min-height:40px;padding:9px 20px;font-size:14px;font-weight:400;line-height:20px;box-shadow:none;}
  html[data-theme] .btn {background:var(--white);color:var(--ink);border-color:var(--line);}
  html[data-theme] .btn:hover {background:var(--table-hover);color:var(--ink);border-color:var(--boq-ui-focus-border);}
  html[data-theme] :is(.btn-primary,body>main button:not([class])) {background:var(--teal);color:var(--on-accent);border-color:var(--teal);}
  html[data-theme] .btn-primary:hover {background:var(--teal-hover);color:var(--on-accent);border-color:var(--teal-hover);}
  html[data-theme] .btn-secondary {background:var(--boq-ui-blue);color:#fff;border-color:var(--boq-ui-blue);}
  html[data-theme] .btn-secondary:hover {background:var(--boq-ui-blue-hover);color:#fff;border-color:var(--boq-ui-blue-hover);}
  html[data-theme] .btn-dark {background:var(--heading);color:var(--white);border-color:var(--heading);}
  html[data-theme] .btn-dark:hover {filter:brightness(.92);background:var(--heading);color:var(--white);}
  html[data-theme] .btn-danger {background:transparent;color:var(--red);border-color:var(--red);}
  html[data-theme] .btn-danger:hover {background:var(--red-bg);color:var(--red);border-color:var(--red);}
  html[data-theme] .btn-success {background:var(--success);color:var(--white);border-color:var(--success);}
  html[data-theme] .btn-warning {background:var(--warning-bg);color:var(--warning);border-color:var(--warning-line);}
  html[data-theme] .btn-quiet {background:transparent;border-color:transparent;color:var(--muted);}
  html[data-theme] :is(.btn-small,.ms-node .btn,.pagination .btn) {min-height:32px;padding:5px 10px;font-size:12px;line-height:20px;}
  html[data-theme] .boq-action-compact {box-sizing:border-box;width:var(--boq-control-toolbar);min-width:var(--boq-control-toolbar);height:var(--boq-control-toolbar);min-height:var(--boq-control-toolbar);padding:9px!important;flex:none;}
  html[data-theme] .icon-btn {color:var(--muted);}
  html[data-theme] .icon-btn:hover {background:var(--teal-light);color:var(--teal);}
  html[data-theme] .sidebar {background:#183ff5;color:#ffffff;border-right:0;padding-top:22px;}
  html[data-theme] .sidebar .brand {color:#ffffff;margin-bottom:28px;}
  html[data-theme] .sidebar .boq-logo .boq-one {fill:#ffffff;opacity:.24;}
  html[data-theme] .sidebar :is(.brand-sub,.sidebar-note,.local-title,.nav-section,.company-switch) {color:#ffffff;}
  html[data-theme] .sidebar-note {border-color:#ffffff40;}
  html[data-theme] .nav-section {font-size:10px;}
  html[data-theme] .sidebar .nav-link {color:#ffffff;font-size:14px;font-weight:400;padding:11px 13px;gap:10px;}
  html[data-theme] .sidebar .nav-link>.icon {color:#ffffff;width:20px;height:20px;transform:none;}
  html[data-theme] .sidebar .nav-link:hover {background:#ffffff1f;color:#ffffff;}
  html[data-theme] .sidebar .nav-link.active {background:#ffffff30;color:#ffffff;font-weight:500;box-shadow:inset 3px 0 #ffffff;}
  html[data-theme] .sidebar .nav-link.active>.icon {color:#ffffff;}
  html[data-theme] .sidebar .nav-count {color:#ffffff;background:#ffffff20;font-size:11px;}
  html[data-theme] .sidebar .boq-nav-children {border-left-color:#ffffff40;}
  html[data-theme] :is(.topbar,body>header) {background:var(--topbar);border-color:var(--line);box-shadow:0 3px 14px color-mix(in srgb,var(--heading) 5%,transparent);}
  html[data-theme] .topbar {height:64px;min-height:64px;}
  html[data-theme] body>header {height:64px;min-height:64px;}
  html[data-theme] body>header .brand {margin:0;padding:0;line-height:1;}
  html[data-theme] body>header .boq-logo {display:block;width:74px;height:46px;max-height:46px;flex:none;}
  html[data-theme] :is(.breadcrumb,.project-meta,.table-footer,.heading-stats,.location) {font-size:12px;}
  html[data-theme] .theme-control {font-size:12px;}
  html[data-theme] .theme-control select {max-width:190px;}
  html[data-theme] :is(.toolbar,.panel-heading,.table-footer) {border-color:var(--line);}
  /* One baseline across search, labelled filters, checkboxes and action tools. */
  html[data-theme] :is(.toolbar,.modal-toolbar) {align-items:flex-end;gap:12px;}
  html[data-theme] :is(.toolbar,.modal-toolbar) .search {min-width:min(220px,100%);max-width:100%;}
  html[data-theme] .toolbar :is(.field,.list-filter) {margin:0;flex:none;min-width:0;}
  html[data-theme] .toolbar .field {gap:6px;}
  html[data-theme] .toolbar .filter-toggle {box-sizing:border-box;height:40px;min-height:40px;padding:0;align-items:center;}
  html[data-theme] .toolbar .boq-table-columns {margin:0;align-self:flex-end;}
  html[data-theme] .toolbar :is(.filter-select,.search,.field select,.list-filter select,.list-filter input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=color]):not([type=hidden]):not([type=file])) {height:40px;min-height:40px;}
  html[data-theme] .fn-controls>.toolbar {border:0;padding:0;margin-bottom:0;align-self:flex-end;}
  html[data-theme] .fn-controls :is(.btn,select) {height:40px;min-height:40px;}
  html[data-theme] .cost-source-list>input[type=search] {height:40px;min-height:40px;padding:8px 11px;border:1px solid var(--line);background:var(--field);color:var(--ink);font-size:14px;line-height:20px;}
  html[data-theme] :is(.page-title,.section-head,.panel-heading) {min-width:0;}
  html[data-theme] .page-actions {min-width:0;max-width:100%;gap:12px;align-items:center;}
  html[data-theme] :is(.form-footer,.modal-form-footer,.modal-foot,.crm-form-actions) {flex-wrap:wrap;align-items:center;gap:var(--boq-space-3);}
  html[data-theme] .page-actions>:is(.btn,.button) {box-sizing:border-box;height:40px;min-height:40px;margin:0;}
  html[data-theme] :is(.data-table,.permission-matrix) {color:var(--ink);}
  html[data-theme] .data-table :is(th,td) {border-right:1px solid var(--line);}
  html[data-theme] .data-table tr>:is(th,td):last-child {border-right:0;}
  html[data-theme] .data-table th {font-size:12px;font-weight:500;letter-spacing:0;text-transform:none;background:var(--table-head);color:var(--heading);border-color:var(--line);}
  html[data-theme] .data-table td {font-size:13px;border-color:var(--line);}
  html[data-theme] .data-table :is(th,td).num {text-align:right;font-variant-numeric:tabular-nums;}
  html[data-theme] .data-table tbody tr:hover td {background:var(--table-hover);}
  html[data-theme] .data-table tr[data-row-color]:not([data-row-color="0"]):hover>td {background:color-mix(in srgb,var(--boq-row-mark) 22%,var(--white));}
  html[data-theme] .estimate-table tr[data-row-tint]:hover>td {background:color-mix(in srgb,var(--boq-row-mark,var(--row-mark)) 22%,var(--white));}
  html[data-theme] .data-table tr.p9-quantity-conflict:hover>td,
  html[data-theme] .data-table tr.p9-quantity-conflict[data-row-color]:hover>td {background:var(--red-bg);}
  html[data-theme] .cell-primary {color:var(--ink);font-weight:500;}
  html[data-theme] .cell-secondary {color:var(--muted);font-size:11px;}
  html[data-theme] .code-chip {background:var(--table-head);color:var(--muted);}
  html[data-theme] .boq-header-stack>:is(input,select) {height:var(--boq-control-dense);min-height:var(--boq-control-dense);font-size:12px;padding:5px 7px;}
  html[data-theme] .boq-table-filter-cell>:is(input,select) {height:var(--boq-control-dense);min-height:var(--boq-control-dense);}
  html[data-theme] .boq-header-stack>button:not(.boq-column-handle):not(.boq-column-drag) {font-size:12px;}
  html[data-theme] :is([data-p13-line-query],[data-p8-line-section],[data-p13-line-sort]) {box-sizing:border-box;height:32px;min-height:32px;min-width:0;border:1px solid var(--line);background:var(--field);color:var(--ink);padding:5px 7px;font-family:inherit;font-size:12px;line-height:20px;box-shadow:none;}
  html[data-theme] .estimate-table input {height:auto;min-height:0;font-size:12px;}
  html[data-theme] .estimate-table select {height:auto;min-height:0;font-size:11px;}
  html[data-theme] .boq-table-columns>summary {border-radius:0;min-height:40px;font-weight:400;font-size:14px;padding:9px 13px;}
  html[data-theme] .boq-column-choices {box-shadow:var(--shadow);}
  html[data-theme] .image-file-label input::file-selector-button {border-radius:0;border:1px solid var(--line);background:var(--white);color:var(--ink);padding:8px 12px;}
  html[data-theme] dialog {background:var(--white);border:1px solid var(--line);box-shadow:0 8px 36px #031b4e33;}
  html[data-theme] .modal-head {background:var(--white);border-color:var(--line);}
  html[data-theme] .modal-head h2 {font-size:24px;}
  html[data-theme] .modal-foot {background:var(--white);border-color:var(--line);}
  html[data-theme] .status-pill {font-size:11px;padding:4px 8px;border:1px solid transparent;}
  html[data-theme] .tab {font-size:14px;font-weight:400;}
  html[data-theme] .tab.active {color:var(--teal);font-weight:500;}
  html[data-theme] .p7-node {box-shadow:none;}
  html[data-theme] .p8-wire-box {box-shadow:var(--shadow);}
  html[data-theme] .p8-wire-box input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=color]):not([type=hidden]):not([type=file]) {height:30px;min-height:30px;}
  html[data-theme] :is(.p7-node h3,.ms-node header,.fc-detail h3,.fn-detail h3,.crm-card-heading h2) {font-weight:500;}
  html[data-theme] :is(.fc-placement,.fn-placement) {box-shadow:none;}
  html[data-theme] :is(.avatar,.boqux-avatar,.p7-port,.p9-conflict-icon,.local-dot,.saving-dot) {border-radius:50%;}
  html[data-theme] :is(.p7-day.has-estimates,.p7-day b) {border-radius:50%;}

  /* These are real, reusable UI components, not independent catalogue mockups. */
  .boqux-card {background:var(--white);color:var(--ink);border:1px solid var(--line);border-radius:0;min-width:0;}
  .boqux-card-head {padding:16px 20px;border-bottom:1px solid var(--line);color:var(--heading);font-size:14px;font-weight:500;display:flex;align-items:center;justify-content:space-between;gap:12px;}
  .boqux-card-body {padding:20px;}
  .boqux-control-label {display:block;font-size:14px;font-weight:400;color:var(--muted);margin-bottom:5px;}
  .boqux-alert {padding:15px 20px;border:1px solid var(--line);background:var(--table-head);color:var(--ink);font-size:14px;line-height:1.5;}
  .boqux-alert--success {background:var(--success-bg);color:var(--success);border-color:color-mix(in srgb,var(--success) 24%,var(--success-bg));}
  .boqux-alert--info {background:var(--info-bg);color:var(--info);border-color:color-mix(in srgb,var(--info) 24%,var(--info-bg));}
  .boqux-alert--warning {background:var(--warning-bg);color:var(--warning);border-color:var(--warning-line);}
  .boqux-alert--danger {background:var(--red-bg);color:var(--red);border-color:color-mix(in srgb,var(--red) 24%,var(--red-bg));}
  .boqux-badge {display:inline-flex;align-items:center;gap:5px;padding:4px 7px;background:var(--table-head);color:var(--muted);font-size:11px;font-weight:500;line-height:1;white-space:nowrap;}
  .boqux-badge--primary {background:var(--teal);color:var(--on-accent);}
  .boqux-badge--success {background:var(--success-bg);color:var(--success);}
  .boqux-badge--warning {background:var(--warning-bg);color:var(--warning);}
  .boqux-badge--danger {background:var(--red-bg);color:var(--red);}
  .boqux-badge--muted {background:var(--table-head);color:var(--muted);}
  .boqux-avatar {display:inline-grid;place-items:center;width:40px;height:40px;flex:none;border-radius:50%;background:var(--teal-light);color:var(--teal);font-size:14px;font-weight:500;overflow:hidden;}
  .boqux-avatar img {width:100%;height:100%;object-fit:cover;}
  .boqux-breadcrumbs {display:flex;align-items:center;gap:9px;flex-wrap:wrap;font-size:11px;font-weight:500;letter-spacing:.6px;line-height:1.5;text-transform:uppercase;color:var(--muted);}
  .boqux-breadcrumbs a {color:var(--muted);}
  .boqux-breadcrumbs a:hover {color:var(--teal);}
  .boqux-breadcrumbs [aria-current] {color:var(--heading);}
  .boqux-breadcrumbs :is(svg,.icon) {width:12px;height:12px;flex:none;}
  :is(.main,body>main)>.boqux-breadcrumbs {flex:none;margin-bottom:16px;}
  [data-erp-page-content] {min-width:0;}
  .boqux-tabs {display:flex;gap:0;border-bottom:1px solid var(--line);overflow-x:auto;}
  .boqux-tabs :is(button,a) {display:inline-flex;align-items:center;gap:8px;min-height:40px;border:1px solid transparent;border-bottom:0;padding:9px 20px;color:var(--muted);background:transparent;font-size:14px;white-space:nowrap;}
  .boqux-tabs :is([aria-selected=true],.active) {background:var(--white);color:var(--teal);border-color:var(--line);box-shadow:0 1px var(--white);}
  .boqux-dropdown {position:relative;display:inline-block;}
  .boqux-dropdown>summary {list-style:none;display:inline-flex;align-items:center;gap:8px;cursor:pointer;margin:0;}
  .boqux-dropdown>summary::-webkit-details-marker {display:none;}
  .boqux-dropdown>summary:after {content:"";width:6px;height:6px;border:1px solid currentColor;border-left:0;border-top:0;transform:rotate(45deg);margin-left:3px;}
  .boqux-dropdown-menu {position:absolute;top:calc(100% + 4px);left:0;z-index:45;min-width:190px;border:1px solid var(--line);background:var(--white);box-shadow:var(--shadow);padding:5px 0;}
  .boqux-dropdown:not([open])>.boqux-dropdown-menu {display:none;}
  .boqux-dropdown-menu :is(a,button) {display:block;min-height:0;width:100%;border:0;background:transparent;color:var(--ink);text-align:left;padding:8px 16px;font-size:14px;}
  .boqux-dropdown-menu :is(a,button):hover {background:var(--table-head);color:var(--teal);}
  .boqux-popover {width:300px;padding:16px 20px;}
  .boqux-popover h3 {margin:0 0 8px;font-size:14px;font-weight:500;}
  .boqux-popover p {margin:0;color:var(--muted);line-height:1.5;}
  .boqux-tooltip {position:relative;display:inline-block;}
  .boqux-tooltip [role=tooltip] {position:absolute;left:0;bottom:calc(100% + 8px);z-index:45;min-width:230px;max-width:300px;padding:10px 12px;background:var(--heading);color:var(--white);font-size:12px;line-height:1.5;visibility:hidden;opacity:0;pointer-events:none;}
  .boqux-tooltip [role=tooltip]:after {content:"";position:absolute;left:16px;top:100%;border:5px solid transparent;border-top-color:var(--heading);}
  .boqux-tooltip:hover [role=tooltip],.boqux-tooltip:focus-within [role=tooltip] {visibility:visible;opacity:1;}
  .boqux-progress {position:relative;height:10px;overflow:hidden;background:var(--table-head);border:0;border-radius:0;}
  .boqux-progress>span {display:block;height:100%;background:var(--teal);}
  progress.boqux-progress {display:block;width:100%;appearance:none;}
  progress.boqux-progress::-webkit-progress-bar {background:var(--table-head);}
  progress.boqux-progress::-webkit-progress-value {background:var(--teal);}
  progress.boqux-progress::-moz-progress-bar {background:var(--teal);}
  .boqux-spinner {display:inline-block;width:26px;height:26px;border:3px solid var(--line);border-top-color:var(--teal);border-radius:50%;animation:boqux-spin .8s linear infinite;}
  .boqux-toast {display:flex;align-items:flex-start;gap:12px;max-width:350px;padding:14px 18px;border:1px solid var(--line);background:var(--white);color:var(--ink);box-shadow:var(--shadow);font-size:14px;}
  .boqux-toast strong {font-weight:500;}
  .boqux-dialog {border:1px solid var(--line);background:var(--white);color:var(--ink);padding:0;max-width:min(560px,calc(100vw - 32px));max-height:calc(100dvh - 40px);width:560px;overflow:auto;overscroll-behavior:contain;}
  .boqux-dialog::backdrop {background:var(--overlay);}
  .boqux-list {margin:0;padding:0;list-style:none;border:1px solid var(--line);}
  .boqux-list>:is(li,a,button) {display:flex;align-items:center;gap:10px;padding:12px 16px;border-bottom:1px solid var(--line);background:var(--white);color:var(--ink);font-size:14px;}
  .boqux-list>:last-child {border-bottom:0;}
  .boqux-list>.active {background:var(--teal);color:var(--on-accent);}
  .boqux-media {display:flex;align-items:flex-start;gap:16px;font-size:14px;line-height:1.5;}
  .boqux-media>div {min-width:0;}
  .boqux-media h3 {font-size:16px;font-weight:500;margin:0 0 6px;}
  .boqux-media p {color:var(--muted);}
  .boqux-wizard {display:flex;gap:0;margin:0;padding:0;list-style:none;counter-reset:boqux-step;}
  .boqux-wizard>li {position:relative;display:flex;align-items:center;gap:10px;flex:1;padding:10px 16px;border-bottom:2px solid var(--line);color:var(--muted);counter-increment:boqux-step;font-size:14px;}
  .boqux-wizard>li:before {content:counter(boqux-step);display:grid;place-items:center;width:30px;height:30px;border:1px solid var(--line);color:var(--muted);font-size:14px;}
  .boqux-wizard>li.active {border-color:var(--teal);color:var(--teal);}
  .boqux-wizard>li.active:before {border-color:var(--teal);background:var(--teal);color:var(--on-accent);}
  .boqux-accordion {border:1px solid var(--line);background:var(--white);color:var(--ink);}
  .boqux-accordion+.boqux-accordion {border-top:0;}
  .boqux-accordion>summary {position:relative;list-style:none;padding:16px 42px 16px 20px;margin:0;cursor:pointer;font-size:14px;font-weight:500;background:var(--table-head);color:var(--heading);}
  .boqux-accordion>summary::-webkit-details-marker {display:none;}
  .boqux-accordion>summary:after {content:"+";position:absolute;right:20px;top:14px;color:var(--muted);font-size:20px;font-weight:400;}
  .boqux-accordion[open]>summary {background:var(--white);color:var(--teal);border-bottom:1px solid var(--line);}
  .boqux-accordion[open]>summary:after {content:"−";}
  .boqux-accordion>div {padding:20px;font-size:14px;line-height:1.6;}
  @keyframes boqux-spin {to{transform:rotate(360deg)}}
}
@media screen and (min-width:1200px) {
  html[data-theme] .sidebar {width:240px;}
  html[data-theme] .main-shell {margin-left:240px;}
  html[data-theme] .main {padding-left:var(--boq-page-gutter);padding-right:var(--boq-page-gutter);}
}
@media screen and (min-width:901px) and (max-width:1199px) {
  html[data-theme] .sidebar {width:220px;}
  html[data-theme] .main-shell {margin-left:220px;}
}
@media screen and (min-width:901px) {
  html[data-theme] :is(.topbar,.main) {padding-left:var(--boq-page-gutter);padding-right:var(--boq-page-gutter);}
  html[data-theme] .sidebar-collapsed .main-shell {margin-left:64px;}
}
@media screen and (max-width:720px) {
  html[data-theme] {--boq-page-gutter:16px;}
  html[data-theme] body>header .boq-logo {width:64px;height:40px;max-height:40px;}
  html[data-theme] :is(h1,.page-title h1,.project-heading h1,.crm-workspace .page-title h1) {font-size:24px;}
  html[data-theme] :is(.btn,.button) {padding-left:12px;padding-right:12px;}
  .boqux-card-body {padding:16px;}
  .boqux-wizard>li {padding:8px;gap:6px;font-size:12px;}
}
/* One header contract on ERP, account, company administration and showroom. */
@media screen {
  html[data-theme] :is(.boq-shell-header,.boq-shell-header.topbar,body>header.boq-shell-header) {overflow:visible;height:64px;min-height:64px;flex-wrap:nowrap;position:relative;z-index:35;}
  .boq-shell-controls {display:flex;align-items:center;gap:14px;margin-left:auto;flex-wrap:nowrap;flex-shrink:0;}
  .boq-shell-header [hidden] {display:none!important;}
  .boq-shell-dropdown {position:relative;flex:none;}
  .boq-shell-dropdown>summary {list-style:none;cursor:pointer;margin:0;}
  .boq-shell-dropdown>summary::-webkit-details-marker {display:none;}
  html[data-theme] .boq-shell-icon {display:grid;place-items:center;box-sizing:border-box;border:0;background:transparent;color:var(--ink);width:36px;height:36px;min-height:36px;padding:0;line-height:1;flex:none;border-radius:50%!important;}
  html[data-theme] .boq-shell-icon:hover,html[data-theme] .boq-shell-dropdown[open]>.boq-shell-icon {background:var(--table-head);color:var(--teal);}
  html[data-theme] .boq-theme-toggle {border:1px solid var(--line);}
  html[data-theme] .boq-theme-toggle[aria-pressed="true"] {background:var(--teal-light);color:var(--teal);}
  .boq-shell-avatar img {width:36px;height:36px;max-width:none;max-height:none;object-fit:cover;border-radius:50%!important;display:block;}
  html[data-theme] .boq-shell-avatar {font-size:11px;font-weight:500;background:var(--table-head);}
  .boq-shell-menu {position:absolute;top:calc(100% + 15px);right:0;min-width:210px;max-width:min(320px,calc(100vw - 24px));padding:8px 0;background:var(--white);color:var(--ink);border:1px solid var(--line);box-shadow:var(--shadow);z-index:70;}
  .boq-shell-menu:before {content:"";position:absolute;width:10px;height:10px;right:13px;top:-6px;background:var(--white);border-top:1px solid var(--line);border-left:1px solid var(--line);transform:rotate(45deg);}
  html[data-theme] .boq-shell-menu :is(a,button) {display:flex;align-items:center;text-align:left;justify-content:flex-start;gap:8px;width:100%;min-height:36px;height:auto;padding:8px 18px;font-size:13px;font-weight:400;line-height:20px;border:0;color:var(--ink);background:transparent;text-decoration:none;white-space:normal;}
  html[data-theme] .boq-shell-menu :is(a,button):hover,html[data-theme] .boq-shell-menu button[aria-pressed="true"] {background:var(--table-head);color:var(--teal);}
  .boq-shell-menu :is(nav,form) {display:block;margin:0;padding:0;}
  .boq-shell-menu .boq-shell-admin-links {border-top:1px solid var(--line);margin-top:6px;padding-top:6px;}
  .boq-shell-menu-heading {display:block;padding:6px 18px;color:var(--muted);font-size:11px;font-weight:500;line-height:18px;letter-spacing:.5px;text-transform:uppercase;}
  .boq-shell-user-name {display:block;font-size:14px;font-weight:500;color:var(--heading);padding:10px 18px 12px;overflow-wrap:anywhere;border-bottom:1px solid var(--line);margin-bottom:6px;}
  .boq-shell-user-identity {display:flex;flex-direction:column;align-items:center;gap:12px;padding:18px 18px 14px;border-bottom:1px solid var(--line);margin-bottom:6px;}
  .boq-shell-user-identity .boq-shell-user-name {border:0;margin:0;padding:0;text-align:center;}
  .boq-shell-user-portrait {display:grid;place-items:center;width:80px;height:80px;flex:none;border-radius:50%!important;background:var(--table-head);color:var(--teal);font-size:24px;font-weight:500;overflow:hidden;}
  .boq-shell-user-portrait img {display:block;width:80px;height:80px;max-width:none;max-height:none;object-fit:cover;border-radius:50%!important;}
  .boq-shell-header>.preview {margin:0;white-space:nowrap;color:var(--muted);font-size:12px;}
  .boq-shell-header>[data-shell-account] {margin-left:14px;order:3;}
  .boq-shell-header>[data-theme-control-host] {order:2;}
  /* A company name is centered independently of unequal left/right controls.
     Symmetric reserves keep long names out of the language/theme/avatar area. */
  .boq-shell-company-header {--boq-header-side-space:180px;}
  html[data-theme] .boq-shell-company-header>.boq-shell-company {position:absolute;left:50%;transform:translateX(-50%);display:block;width:max-content;max-width:calc(100% - var(--boq-header-side-space) * 2);min-width:0;margin:0;padding:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;text-align:center;text-transform:uppercase;letter-spacing:1px;color:var(--heading);text-decoration:none;font-size:14px;font-weight:600;line-height:24px;}
  html[data-theme] .boq-shell-company-header>.boq-shell-company strong {display:block;max-width:none!important;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font:inherit;color:inherit;}
  .boq-shell-company :is(img,.company-monogram) {display:none!important;}
  .boq-shell-company-header>.preview {display:none;}
  .boq-shell-company-header>.breadcrumb {flex:none;}
  .employee-avatar {width:48px;height:48px;object-fit:cover;border-radius:50%!important;border:1px solid var(--line);}
  .sidebar .nav-link:focus-visible {outline:2px solid #ffffff;outline-offset:2px;}
  .sidebar .boq-nav-section-icon {width:24px;height:24px;flex:none;}
  .sidebar .boq-nav-children .nav-link {padding-left:16px;}
  .sidebar .boq-nav-group-empty>summary {opacity:.5;cursor:default;}
}
/* Azia dashboard-six: a permanent 64px iconbar and ONE full-height 230px pane.
   A section click selects the pane; it is never a hover or floating flyout. */
@media screen {
  html[data-theme] .workspace.boq-sidebar-modern>.sidebar {display:flex!important;width:294px;height:100dvh;padding:0;overflow:visible;transform:none;background:#183ff5;color:#ffffff;z-index:70;box-shadow:none;}
  .boq-iconbar {position:absolute;inset:0 auto 0 0;width:64px;display:flex;flex-direction:column;align-items:center;padding:20px 0;background:#183ff5;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;}
  html[data-theme] .sidebar .boq-iconbar-home {display:flex;align-items:center;justify-content:center;width:44px;height:40px;min-height:40px;padding:0;margin:0 auto 20px;background:transparent;box-shadow:none;}
  .boq-iconbar-home .boq-logo {width:44px;height:34px;}
  .boq-iconbar-tabs {display:flex;flex-direction:column;gap:10px;align-items:center;width:64px;}
  html[data-theme] .boq-iconbar-tab {position:relative;display:flex;align-items:center;justify-content:center;width:40px;height:40px;min-height:40px;padding:0;flex:none;color:#ffffff;border:0;background:transparent;cursor:pointer;opacity:.7;}
  html[data-theme] .boq-iconbar-tab:hover,html[data-theme] .boq-iconbar-tab.active {opacity:1;background:#ffffff14;}
  .boq-iconbar-tab.active:after {content:"";position:absolute;bottom:1px;left:10px;right:10px;height:2px;background:#ffffff;}
  .boq-iconbar-tab:disabled {cursor:default;opacity:.3;}
  .boq-iconbar-tab:focus-visible {outline:2px solid #ffffff;outline-offset:2px;}
  .sidebar .boq-iconbar-tab .boq-nav-section-icon {width:26px;height:26px;transform:none;}
  .boq-sidebar-panel {position:absolute;top:0;bottom:0;left:64px;width:230px;display:flex;flex-direction:column;min-height:0;padding:20px 20px 16px 0;background:#183ff5;border-right:1px solid #ffffff30;overflow:hidden;}
  .boq-sidebar-panel-header {display:flex;align-items:center;justify-content:flex-end;gap:12px;flex:none;min-height:40px;margin-bottom:20px;}
  html[data-theme] .boq-sidebar-panel-close {display:flex;align-items:center;justify-content:center;width:28px;height:32px;min-height:32px;padding:0;flex:none;color:#ffffff;border:0;background:transparent;cursor:pointer;opacity:.65;}
  html[data-theme] .boq-sidebar-panel-close:hover,.boq-sidebar-panel-close:focus-visible {opacity:1;}
  .boq-sidebar-panel-close>.boq-sidebar-close-back {display:none;}
  .boq-sidebar-panel-close>.boq-sidebar-close-cross {display:block;}
  .boq-sidebar-panel>.boq-sidebar-nav-scroll {display:flex;flex-direction:column;flex:1 1 0;min-height:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;}
  .sidebar .boq-sidebar-section-title {font-size:20px;font-weight:700;line-height:1.2;color:#ffffff;margin:0 0 10px;}
  .sidebar .boq-sidebar-section-description {font-size:12px;line-height:1.5;color:#ffffffb8;margin:0 0 12px;}
  .boq-iconbar-shell .nav-section,.boq-iconbar-shell .sidebar-spacer,.boq-iconbar-shell .boq-nav-group>summary {display:none!important;}
  .boq-iconbar-shell .boq-sidebar-nav-scroll>.nav {gap:0;flex:none;}
  .sidebar .boq-sidebar-panel .boq-nav-children {display:flex;flex-direction:column;margin:0;padding:10px 0 0 20px;border-left:2px solid #ffffff30;}
  html[data-theme] .sidebar .boq-sidebar-panel .nav-link {position:relative;padding:0;min-height:38px;font-size:13px;font-weight:400;line-height:1.4;background:transparent;box-shadow:none;gap:0;}
  .sidebar .boq-sidebar-panel .nav-link+.nav-link {border-top:1px dotted #ffffff40;}
  html[data-theme] .sidebar .boq-sidebar-panel .nav-link:hover,html[data-theme] .sidebar .boq-sidebar-panel .nav-link.active {color:#ffffff;background:#ffffff14;}
  .boq-iconbar-shell .nav-count {display:none;}
  .boq-sidebar-nav-scroll>.nav:last-of-type:not(:first-of-type) {border-top:1px solid #ffffff30;margin-top:20px;padding-top:8px;}
  .boq-sidebar-panel>.sidebar-note.boq-sidebar-dog {flex:none;margin:12px 0 0;}
  .boq-sidebar-modern.sidebar-collapsed .boq-sidebar-panel {display:none!important;}
}
@media screen and (min-width:992px) {
  html[data-theme] .workspace.boq-sidebar-modern {grid-template-columns:64px minmax(0,1fr);}
  html[data-theme] .workspace.boq-sidebar-modern>.main-shell {margin-left:64px;}
  html[data-theme] .workspace.boq-sidebar-modern.sidebar-collapsed>.sidebar {width:64px;}
}
@media screen and (min-width:1200px) {
  .boq-sidebar-panel-close>.boq-sidebar-close-back {display:block;}
  .boq-sidebar-panel-close>.boq-sidebar-close-cross {display:none;}
  html[data-theme] .workspace.boq-sidebar-modern:not(.sidebar-collapsed) {grid-template-columns:294px minmax(0,1fr);}
  html[data-theme] .workspace.boq-sidebar-modern:not(.sidebar-collapsed)>.main-shell {margin-left:294px;}
}
@media screen and (max-width:991px) {
  /* The permanent section rail replaces the redundant header hamburger on
     small screens too. Sections remain reachable with pointer or keyboard. */
  html[data-theme] .workspace.boq-sidebar-modern>.sidebar {display:flex!important;width:64px;}
  html[data-theme] .workspace.boq-sidebar-modern>.sidebar.open {width:min(294px,100vw);transform:none;box-shadow:8px 0 24px #00143a26;}
  html[data-theme] .workspace.boq-sidebar-modern {grid-template-columns:64px minmax(0,1fr);}
  html[data-theme] .workspace.boq-sidebar-modern>.main-shell {margin-left:64px;}
  .boq-sidebar-panel-close svg {width:22px;height:22px;}
}
@media screen and (max-width:720px) {
  .boq-shell-controls {gap:8px;}
  .boq-shell-header>.preview {display:none;}
  .boq-shell-company-header {--boq-header-side-space:144px;}
  html[data-theme] .boq-shell-company-header>.boq-shell-company {font-size:12px;letter-spacing:.5px;}
  .boq-shell-header .breadcrumb {min-width:0;flex-shrink:1;overflow:hidden;}
  html[data-theme] .boq-shell-header {gap:8px;}
}
@media screen and (max-width:390px) {
  html[data-theme] .boq-shell-company-header>.boq-shell-company {font-size:11px;}
}
@media screen and (prefers-reduced-motion:reduce) {
  html[data-theme] :is(.btn,.button,.nav-link,input,select,textarea) {transition:none;}
  .boqux-spinner {animation:none;}
}
/* Package 24.4: one dense, shared table presentation. Printing and permission
   matrices deliberately retain their own geometry. Detailed row information is
   available in the existing cards; optional photo columns remain usable. */
@media screen {
  html[data-theme] .boq-compact-table>.boq-directory-taskbar {
    display:flex;flex-wrap:nowrap;align-items:center;gap:6px;min-height:48px;padding:8px 10px;position:relative;z-index:8;overflow:visible;
  }
  html[data-theme] .boq-compact-table .boq-directory-taskbar>.boq-directory-search {
    flex:1 1 220px;min-width:100px;max-width:none;height:32px;min-height:32px;margin:0;
  }
  html[data-theme] .boq-compact-table .boq-directory-search :is(input,.filter-select) {height:30px;min-height:30px;width:100%;font-size:12px;padding-top:4px;padding-bottom:4px;}
  html[data-theme] .boq-compact-table .boq-directory-taskbar>.search {height:32px;min-height:32px;}
  html[data-theme] .boq-compact-table .boq-directory-taskbar :is(.icon-btn,.boq-table-columns>summary) {width:32px;height:32px;min-width:32px;min-height:32px;padding:6px!important;flex:none;}
  html[data-theme] .boq-compact-table .boq-compact-popup {display:grid;gap:8px;width:300px;max-height:60vh;overflow:auto;}
  html[data-theme] .boq-compact-table .boq-directory-menu:not([open])>.boq-directory-popup {display:none;}
  html[data-theme] .page-actions:empty {display:none;}
  html[data-theme] .boq-compact-table .boq-compact-popup :is(.boq-filter-control,.list-filter,.field) {width:100%;min-width:0;max-width:100%;margin:0;}
  html[data-theme] .boq-compact-table .boq-compact-popup :is(input:not([type=checkbox]),select) {height:32px;min-height:32px;font-size:12px;}
  html[data-theme] .boq-compact-table .boq-directory-popup .btn {width:100%;min-height:30px;height:auto;padding:5px 8px!important;justify-content:flex-start;text-align:left;white-space:normal;}
  html[data-theme] .boq-compact-table .boq-directory-popup .boq-action-label {position:static;width:auto;height:auto;margin:0;clip-path:none;white-space:normal;overflow:visible;}
  html[data-theme] .boq-compact-table .boq-directory-popup .selection-toolbar {display:flex;flex-direction:column;align-items:stretch;gap:8px;border:0;padding:0;}
  html[data-theme] .boq-compact-table .boq-directory-popup .bulk-controls {display:flex;flex-direction:column;align-items:stretch;gap:6px;}
  html[data-theme] .boq-compact-table .boq-selection-count {position:absolute;top:-5px;right:-4px;min-width:13px;padding:0 2px;font-size:9px;line-height:13px;color:#fff;background:var(--teal);text-align:center;}
  html[data-theme] .boq-compact-table .data-table tbody tr {height:32px;}
  html[data-theme] .boq-compact-table .data-table tbody td {height:32px;padding:3px 7px;font-size:12px;line-height:22px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;vertical-align:middle;}
  html[data-theme] .boq-compact-table .data-table thead th {height:26px;min-height:26px;padding:3px 7px;font-size:11px;line-height:18px;white-space:nowrap;}
  html[data-theme] .boq-compact-table .data-table thead :is(input[type=search],.btn,.sort-heading) {height:26px;min-height:26px;padding:3px 6px;font-size:11px;line-height:18px;}
  html[data-theme] .boq-compact-table .data-table tbody :is(input:not([type=checkbox]),select) {height:26px;min-height:26px;padding:3px 5px;font-size:12px;}
  html[data-theme] .boq-compact-table .data-table tbody :is(.icon-btn,.row-tint-button,.boq-color-button,.p7-order-handle) {height:24px;min-height:24px;width:24px;min-width:24px;padding:3px!important;}
  html[data-theme] .boq-compact-table .estimate-table .row-number {min-width:80px;white-space:nowrap;}
  html[data-theme] .boq-compact-table .estimate-table .row-tint-button {display:inline-flex;margin:0 0 0 3px;vertical-align:middle;}
  html[data-theme] .boq-compact-table .data-table tbody .icon {width:16px;height:16px;}
  html[data-theme] .boq-compact-table .data-table tbody .btn {min-height:26px;height:26px;padding:3px 6px;font-size:12px;line-height:18px;}
  html[data-theme] .boq-compact-table .data-table tbody :is(.cell-primary,.cost-record-link) {display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:inherit;}
  html[data-theme] .boq-compact-table .data-table tbody .cell-secondary {display:none;}
  html[data-theme] .boq-compact-table .estimate-table :is(.line-note,.line-photos) {display:none;}
  html[data-theme] .boq-compact-table .boq-cell-details>summary {list-style:none;cursor:pointer;white-space:nowrap;}
  html[data-theme] .boq-compact-table .boq-cell-details>summary::-webkit-details-marker {display:none;}
  html[data-theme] .boq-compact-table .boq-cell-details>summary .cell-primary:after {content:' ▾';color:var(--muted);font-size:10px;}
  html[data-theme] .boq-compact-table .boq-cell-details[open]>summary .cell-primary {white-space:normal;}
  html[data-theme] .boq-compact-table .boq-cell-details[open] .boq-cell-details-body {white-space:normal;padding:5px 0;}
  html[data-theme] .boq-compact-table .boq-cell-details[open] .cell-secondary {display:block;}
  html[data-theme] .boq-compact-table .boq-cell-details[open] .line-note {display:block;}
  html[data-theme] .boq-compact-table .boq-cell-details[open] .line-photos {display:flex;}
  html[data-theme] .boq-compact-table .data-table .description-cell {min-width:240px;max-width:420px;}
  html[data-theme] .boq-compact-table .data-table .description {max-width:440px;}
  html[data-theme] .boq-compact-table .data-table :is(.p7-thumb,.boq-image-cell img) {height:28px;min-height:28px;max-height:28px;width:28px;max-width:28px;object-fit:contain;}
  html[data-theme] .boq-compact-table .data-table button.boq-image-cell {height:28px;min-height:28px;max-height:28px;width:28px;min-width:28px;max-width:28px;padding:0;line-height:26px;box-sizing:border-box;}
  html[data-theme] .boq-compact-table .data-table .boq-image-empty {font-size:16px;line-height:26px;}
  html[data-theme] .boq-compact-table .status-pill {padding:1px 5px;min-height:20px;line-height:18px;}
  html[data-theme] .boq-compact-table .cost-editor-scroll td:first-child {min-width:38px;white-space:nowrap;overflow-wrap:normal;}
  html[data-theme] .boq-compact-table .cost-editor-scroll th[data-column-key=name] {min-width:260px;}
  html[data-theme] .boq-compact-table .catalog-choice {display:flex;align-items:center;gap:3px;}
  html[data-theme] .boq-compact-table :is(.row-actions,.cost-row-actions,.boq-material-actions) {display:flex;align-items:center;flex-wrap:nowrap;gap:3px;}
  html[data-theme] .boq-compact-table .data-table .wbs-row td {height:28px;line-height:20px;padding:3px 7px;}
  html[data-theme] .boq-compact-table .table-footer {padding:7px 10px;min-height:34px;}
  /* The connection ports remain present and measured from live rectangles. */
  html[data-theme] .p13-workbench.boq-compact-workbench .data-table tbody td {padding:3px 6px;height:34px;font-size:12px;line-height:22px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
  html[data-theme] .p13-workbench.boq-compact-workbench .data-table th {padding:3px 6px;height:26px;font-size:11px;line-height:18px;}
  html[data-theme] .p13-workbench.boq-compact-workbench .p7-node {display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:3px 6px;margin-bottom:4px;padding-top:5px;padding-bottom:5px;min-height:40px;}
  html[data-theme] .p13-workbench.boq-compact-workbench .p7-node>strong {overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;line-height:20px;}
  html[data-theme] .p13-workbench.boq-compact-workbench .p7-node>span {font-size:12px;line-height:20px;white-space:nowrap;}
  html[data-theme] .p13-workbench.boq-compact-workbench .p11-node-actions {grid-column:3;display:flex;align-items:center;flex-wrap:nowrap;gap:3px;overflow:visible;margin:0;}
  html[data-theme] .p13-workbench.boq-compact-workbench .p7-link-tags:empty {display:none;}
  html[data-theme] .p13-workbench.boq-compact-workbench :is(.boq-workbench-port-controls,.boq-workbench-row-actions) {display:flex;align-items:center;flex-wrap:nowrap;gap:3px;}
  html[data-theme] .p13-workbench.boq-compact-workbench .p14-quantity-port-cell {min-width:88px;width:88px;}
  html[data-theme] .p13-workbench.boq-compact-workbench .boq-workbench-links {position:relative;}
  html[data-theme] .p13-workbench.boq-compact-workbench .boq-workbench-links>summary {width:24px;min-width:24px;height:24px;min-height:24px;padding:3px;list-style:none;cursor:pointer;}
  html[data-theme] .p13-workbench.boq-compact-workbench .boq-workbench-links>summary::-webkit-details-marker {display:none;}
  html[data-theme] .p13-workbench.boq-compact-workbench .boq-workbench-links>.p7-link-tags {position:absolute;right:0;top:28px;z-index:9;display:flex;flex-direction:column;align-items:stretch;gap:4px;width:240px;max-height:200px;overflow:auto;padding:7px;background:var(--white);border:1px solid var(--line);box-shadow:0 3px 12px #0002;}
  html[data-theme] .p13-workbench.boq-compact-workbench .boq-workbench-links:not([open])>.p7-link-tags {display:none;}
  html[data-theme] .p13-workbench.boq-compact-workbench :is(.p11-node-actions,.boq-workbench-row-actions) .boq-action-compact {width:24px;min-width:24px;height:24px;min-height:24px;padding:3px!important;}
  html[data-theme] .p13-workbench.boq-compact-workbench .p11-node-actions :is(.p7-order-handle,.boq-color-button) {width:24px;min-width:24px;height:24px;min-height:24px;padding:0 3px;}
  html[data-theme] .p13-workbench.boq-compact-workbench .p7-port {top:7px;}
  html[data-theme] .p13-workbench.boq-compact-workbench .p14-quantity-port-cell .p7-port {display:inline-flex;margin:0 3px 0 0;vertical-align:middle;}
  html[data-theme] .p13-workbench.boq-compact-workbench .data-table :is(.btn,.p7-order-handle,.boq-color-button) {height:26px;min-height:26px;padding:3px 5px;font-size:11px;}
  html[data-theme] .p13-workbench.boq-compact-workbench .p7-sandbox-panel>header {padding:8px 10px;gap:6px;}
  html[data-theme] .p13-workbench.boq-compact-workbench .p7-sandbox-panel>header h2 {font-size:14px;line-height:20px;margin:0;}
  html[data-theme] .p13-workbench.boq-compact-workbench .p8-estimate-group>.boq-directory-taskbar {padding:5px 7px;min-height:42px;}
  html[data-theme] .p13-workbench.boq-compact-workbench .p8-estimate-group>.boq-directory-taskbar>strong {flex:0 1 150px;min-width:65px;font-size:12px;line-height:20px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
}
@media screen and (max-width:600px) {
  html[data-theme] .boq-compact-table>.boq-directory-taskbar {flex-wrap:wrap;gap:5px;}
  html[data-theme] .boq-compact-table .boq-directory-taskbar>.boq-directory-search {flex-basis:100%;width:100%;}
  html[data-theme] :is(.boq-compact-table,.boq-directory) .boq-directory-menu>.boq-directory-popup,
  html[data-theme] :is(.boq-compact-table,.boq-directory) .boq-table-columns>.boq-column-choices {position:fixed;left:72px;right:12px;top:auto;bottom:auto;width:auto;min-width:0;max-width:none;max-height:60vh;overflow:auto;box-sizing:border-box;}
}
