/**
 * Go CSS · print
 * 
 * Purpose:
 *   Styles for this dashboard piece.
 * 
 * Dashboard:
 *   Go · App Store / data-view · print
 * 
 * This file:
 *   business/dashboard/print-app/print-app.css
 * 
 * Depends on:
 *   - business/dashboard/shell/shell.html
 *   - scripts/assemble-dashboards.js
 * 
 * Used by:
 *   - scripts/assemble-dashboards.js → business/dashboard/styles.css
 */

.print-shell {
  display: grid;
  gap: 18px;
  width: 100%;
  max-width: 760px;
  min-width: 0;
  margin-inline: auto;
}

.print-shell.print-shell--wide {
  max-width: min(100%, 1240px);
}

.print-shell .settings-card {
  max-width: none;
}

.print-board-card {
  width: 100%;
}

.print-board-table {
  width: 100%;
}

.print-board-table table {
  width: 100%;
  min-width: 58rem;
}

.print-panel {
  min-width: 0;
  display: grid;
  gap: 18px;
}

.print-doc-preview-modal {
  display: grid;
  gap: 0.75rem;
}

.print-doc-preview-frame {
  width: 100%;
  min-height: min(70vh, 560px);
  border: 1px solid var(--border, rgba(18, 18, 18, 0.12));
  border-radius: 14px;
  overflow: hidden;
  background: var(--mist, #f3f3f4);
}

.print-doc-preview-frame img,
.print-doc-preview-frame iframe {
  width: 100%;
  height: min(70vh, 560px);
  display: block;
  border: 0;
  background: #fff;
}

.print-doc-preview-frame img {
  object-fit: contain;
}

.print-choice-tabs {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.print-choice {
  position: relative;
  margin: 0;
  font-weight: 600;
  cursor: pointer;
}

.print-choice input {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}

.print-location-field {
  display: grid;
  gap: 0.45rem;
  margin: 0;
}

.print-location-field select,
#print-settings-form select {
  width: 100%;
  max-width: 100%;
  margin: 0 0 16px;
  padding: 12px 14px;
  border: 1px solid var(--border, #d7e0ec);
  border-radius: 10px;
  background: #fff;
  color: var(--text, #342820);
  font: inherit;
  box-sizing: border-box;
}

.print-location-field select {
  margin-bottom: 0;
}

.print-code-chip {
  display: inline-block;
  padding: 0.15rem 0.45rem;
  border-radius: 8px;
  background: var(--mist, #fafafa);
  border: 1px solid var(--border, rgba(18, 18, 18, 0.08));
  font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  font-size: 0.86rem;
  letter-spacing: 0.08em;
}

.print-quote-card {
  display: grid;
  gap: 0.45rem;
  margin: 0;
  padding: 1.05rem 1.1rem;
  border: 1px solid rgba(18, 18, 18, 0.14);
  border-radius: 14px;
  background: var(--panel, #fff);
}

.print-quote-row {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 1rem;
  font-size: 0.92rem;
}

.print-quote-row span {
  color: var(--muted, #6a6a6e);
}

.print-quote-total {
  margin-top: 0.15rem;
  padding-top: 0.55rem;
  border-top: 1px solid var(--border, rgba(18, 18, 18, 0.08));
  font-size: 1.05rem;
}

.print-quote-detail {
  margin: 0.15rem 0 0;
  font-size: 0.84rem;
}
