.nq-workspace {
  --nq-border:#dce4ed;
  --nq-blue:#155da8;
  --nq-muted:#627187;
  color:#172f47;
  font-family:inherit;
  font-size:14px;
  line-height:1.5;
  max-width:1440px;
  margin:auto;
  padding:8px;
  position:relative;
}

.nq-workspace * {
  box-sizing:border-box;
}

.nq-workspace h3,.nq-workspace h4 {
  margin:0 0 12px;
}

.nq-tabs,.nq-toolbar,.nq-actions,.nq-line-head,.nq-totals {
  display:flex;
  align-items:center;
  gap:10px;
  flex-wrap:wrap;
}

.nq-tabs {
  border-bottom:1px solid var(--nq-border);
  padding-bottom:12px;
  margin-bottom:18px;
}

.nq-button {
  border:1px solid var(--nq-border);
  border-radius:7px;
  background:#fff;
  color:inherit;
  padding:8px 13px;
  font:inherit;
  cursor:pointer;
  text-decoration:none;
  white-space:nowrap;
}

.nq-button:hover {
  border-color:var(--nq-blue);
  background:#f1f6fc;
}

.nq-primary,.nq-active {
  background:var(--nq-blue);
  color:#fff;
  border-color:var(--nq-blue);
}

.nq-button:disabled {
  opacity:.5;
  cursor:default;
}

.nq-toolbar {
  margin:14px 0;
}

.nq-column-settings {position:relative;margin-left:auto;}
.nq-column-settings summary {list-style:none;cursor:pointer;}
.nq-column-settings summary::-webkit-details-marker {display:none;}
.nq-column-menu {position:absolute;right:0;top:calc(100% + 6px);z-index:8;width:280px;max-height:420px;overflow:auto;padding:12px;background:#fff;border:1px solid var(--nq-border);border-radius:9px;box-shadow:0 12px 30px #102a4328;}
.nq-column-control {display:flex;justify-content:space-between;align-items:center;gap:8px;padding:6px 0;border-bottom:1px solid #edf1f5;}
.nq-column-control label {display:flex;align-items:center;gap:6px;min-width:0;}
.nq-column-control .nq-button {padding:2px 7px;}
.nq-column-control input {width:auto;min-height:0;}
.nq-quote-list {min-width:880px;}
.nq-quote-list th,.nq-quote-list td {white-space:nowrap;}

.nq-card {
  background:#fff;
  border:1px solid var(--nq-border);
  border-radius:10px;
  padding:18px;
  margin:16px 0;
}

.nq-grid {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
}

.nq-header-columns {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:24px;
}

.nq-customer-panel {
  display:flex;
  flex-direction:column;
  gap:12px;
  min-width:0;
}

.nq-quote-panel {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  align-content:start;
  gap:12px 14px;
  min-width:0;
}

.nq-quote-panel h5 {grid-column:1/-1;}

.nq-quote-panel .nq-detail-row {
  grid-column:span 2;
  display:flex;
  flex-direction:column;
  gap:5px;
}

.nq-quote-panel .nq-detail-row span {font-size:12px;}
.nq-quote-panel .nq-detail-row strong {
  min-height:37px;
  padding:7px 9px;
  border-radius:6px;
  background:#f4f6f9;
}

.nq-header-columns h5 {
  margin:0;
  color:#173f67;
  font-size:15px;
}

.nq-detail-row {
  display:grid;
  grid-template-columns:90px minmax(0,1fr);
  gap:10px;
  margin:0;
  min-width:0;
  overflow-wrap:anywhere;
}

.nq-detail-row span {color:var(--nq-muted);}
.nq-detail-row strong {font-weight:500;}

.nq-terms-single-column {
  display:grid;
  grid-template-columns:minmax(0,1fr);
  gap:14px;
  max-width:900px;
}

.nq-terms-single-column .nq-wide {grid-column:auto;}

.nq-line-primary {
  grid-template-columns:minmax(0,1fr);
  max-width:900px;
  margin-bottom:14px;
}

.nq-line-primary .nq-wide {grid-column:auto;}

.nq-field {
  display:flex;
  flex-direction:column;
  gap:5px;
  min-width:0;
}

.nq-field>span {
  font-size:12px;
  color:var(--nq-muted);
}

.nq-field input,.nq-field select,.nq-field textarea,.nq-workspace select {
  border:1px solid #b8c7d8;
  border-radius:6px;
  min-height:37px;
  padding:7px 9px;
  background:#fff;
  color:inherit;
  font:inherit;
  max-width:100%;
  width:100%;
}

.nq-field textarea {
  resize:vertical;
}

.nq-field input:focus,.nq-field textarea:focus,.nq-field select:focus,.nq-button:focus-visible {
  outline:2px solid #78ade6;
  outline-offset:2px;
}

.nq-field input:disabled,.nq-field textarea:disabled,.nq-field select:disabled {
  background:#f4f6f9;
  color:#536477;
}

.nq-check {
  display:flex;
  align-items:center;
  gap:7px;
  white-space:nowrap;
}

.nq-wide {
  grid-column:span 3;
}

.nq-muted {
  color:var(--nq-muted);
  font-size:13px;
}

.nq-line {
  border-top:1px solid var(--nq-border);
  padding:16px 0;
}

.nq-line-head {
  margin-bottom:12px;
}

.nq-line-head>span {
  flex:1;
  min-width:100px;
}

.nq-line-numbers {
  grid-template-columns:repeat(3,minmax(0,180px));
  margin-bottom:12px;
}

.nq-field output {
  padding:8px 0;
  font-weight:600;
}

.nq-workspace summary {
  cursor:pointer;
  font-weight:600;
  padding:10px 0;
}

.nq-scroll {
  overflow-x:auto;
  max-width:100%;
  overscroll-behavior-x:contain;
}

.nq-table {
  width:100%;
  border-collapse:collapse;
  text-align:left;
  font-size:13px;
}

.nq-table th {
  background:#f1f5fa;
  color:#54667d;
  font-weight:500;
}

.nq-table td,.nq-table th {
  padding:10px;
  border-bottom:1px solid var(--nq-border);
  vertical-align:top;
}

.nq-pack-table {
  min-width:1000px;
}

.nq-pack-table .nq-field {
  min-width:128px;
}

.nq-pack-table .nq-field>span {
  position:absolute;
  width:1px;
  height:1px;
  overflow:hidden;
  clip-path:inset(50%);
}

.nq-totals {
  background:#eef5fc;
  border-radius:7px;
  padding:14px;
  margin-top:14px;
  font-weight:600;
}

.nq-save-bar {
  display:flex;
  gap:12px;
  align-items:center;
  flex-wrap:wrap;
  position:sticky;
  bottom:0;
  z-index:3;
  background:#fff;
  border:1px solid var(--nq-border);
  border-radius:8px;
  padding:12px;
  box-shadow:0 -3px 15px #15345310;
}

.nq-save-bar>span {
  font-size:12px;
  color:var(--nq-muted);
}

.nq-error {
  border:1px solid #e7a4a4;
  color:#982e2e;
  background:#fff2f2;
  padding:12px;
  border-radius:7px;
  white-space:pre-wrap;
  overflow-wrap:anywhere;
}

.nq-error[hidden] {
  display:none;
}

.nq-notice {
  border:1px solid #e6cf8e;
  background:#fff9e9;
  padding:12px;
  border-radius:7px;
  margin:12px 0;
}

.nq-version {
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:12px;
  flex-wrap:wrap;
  border-bottom:1px solid var(--nq-border);
  padding:14px 0;
}

.nq-preview {
  position:fixed;
  inset:4vh 4vw;
  z-index:1100;
  background:white;
  box-shadow:0 0 0 100vmax #13283dbb;
  border:1px solid var(--nq-border);
  border-radius:10px;
  display:flex;
  flex-direction:column;
  padding:12px;
}

.nq-preview iframe {
  flex:1;
  width:100%;
  border:0;
  min-height:150px;
}

.nq-preview .nq-toolbar {
  margin:0 0 10px;
}

.nq-preview .nq-toolbar strong {
  margin-right:auto;
}

@media(max-width:1180px) {
  .nq-quote-panel {grid-template-columns:repeat(2,minmax(0,1fr));}
  .nq-quote-panel .nq-detail-row {grid-column:auto;}
}

@media(max-width:720px) {
  .nq-workspace {
    padding:2px;
  }
  .nq-grid {
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:10px;
  }
  .nq-header-columns {grid-template-columns:minmax(0,1fr);}
  .nq-line-primary {grid-template-columns:minmax(0,1fr);}
  .nq-wide {
    grid-column:span 2;
  }
  .nq-card {
    padding:12px;
  }
  .nq-tabs {
    gap:6px;
  }
  .nq-tabs .nq-button {
    flex:1;
  }
  .nq-line-numbers {
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
  .nq-save-bar {
    padding:10px;
  }
  .nq-preview {
    inset:1vh 2vw;
  }
  .nq-toolbar>.nq-field {
    flex:1 1 150px;
  }
  .nq-table {
    min-width:650px;
  }
  .nq-pack-table {
    min-width:1000px;
  }
}

@media(max-width:420px) {
  .nq-quote-panel {grid-template-columns:minmax(0,1fr);}
  .nq-grid {
    grid-template-columns:1fr;
  }
  .nq-wide {
    grid-column:auto;
  }
  .nq-line-numbers {
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
}

/* Shared commercial catalog, settings and import preview rows. */
.nq-catalog-row {
  border-top: 1px solid var(--nq-border);
  padding: 16px 0;
  margin-top: 12px;
  overflow-wrap: anywhere;
}

.nq-catalog-row > .nq-button {
  margin-top: 10px;
}

.nq-catalog-row + h4,
.nq-card > .nq-grid + h4 {
  margin-top: 22px;
}

.nq-packing-cards{display:grid;gap:12px}.nq-packing-cards .nq-card{border:1px solid #d9e2ec;box-shadow:none}.nq-packing-cards fieldset{border:1px solid #d9e2ec;border-radius:8px;padding:12px;display:flex;flex-wrap:wrap;gap:16px}.nq-packing-cards legend{font-weight:600;padding:0 6px}

.nq-customization{margin:12px 0;padding:14px;border:1px solid #dce6f0;border-radius:8px;background:#f7faff}.nq-customization .nq-grid{margin-top:12px}.nq-customization .nq-check{font-weight:600}.nq-line input[readonly]{background:#edf3f8;color:#294661}

/* Product catalog editing: keep related fields on the same visual line. */
.nq-catalog-shared {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:18px;}
.nq-catalog-bilingual {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:18px 0 22px;}
.nq-lang-column {display:grid;grid-template-rows:auto auto 1fr;align-content:start;gap:10px;min-width:0;}
.nq-lang-column h4 {margin:0;}
.nq-lang-column .nq-wide {grid-column:auto;}
.nq-lang-column textarea {min-height:104px;}
.nq-catalog-price-row,.nq-catalog-packing-row {display:flex;align-items:end;gap:10px;overflow-x:auto;padding:10px 0;margin-top:0;}
.nq-catalog-price-row .nq-grid,.nq-catalog-packing-row .nq-grid {flex:1 0 auto;gap:10px;align-items:end;}
.nq-catalog-price-row .nq-grid {grid-template-columns:minmax(90px,.8fr) minmax(110px,1fr) minmax(145px,1fr) minmax(145px,1fr) minmax(68px,.55fr);min-width:650px;}
.nq-catalog-packing-row .nq-grid {grid-template-columns:minmax(110px,1fr) minmax(110px,1fr) minmax(74px,.55fr) minmax(165px,1.35fr) minmax(90px,.7fr) minmax(90px,.7fr) minmax(68px,.5fr);min-width:950px;}
.nq-catalog-price-row > .nq-button,.nq-catalog-packing-row > .nq-button {flex:0 0 auto;margin:0;}
.nq-catalog-price-row .nq-check {min-height:37px;}
@media(max-width:1180px) {.nq-catalog-shared {grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:720px) {.nq-catalog-bilingual {grid-template-columns:minmax(0,1fr);}}
@media(max-width:420px) {.nq-catalog-shared {grid-template-columns:minmax(0,1fr);}}
