/* ============================================================
   RUNDECK · print — BOL, POD, rate confirmation, invoice
   activated by media query + .print-doc class
   ============================================================ */

.print-doc {
  max-width: 800px;
  margin: 0 auto;
  padding: var(--sp-10);
  background: #fff;
  color: #000;
  border: 1px solid var(--line);
  font-family: var(--font-sans);
  font-size: 13px;
  line-height: 1.5;
}
.print-doc__head {
  display: grid;
  grid-template-columns: 2fr 1fr;
  gap: var(--sp-8);
  padding-bottom: var(--sp-6);
  border-bottom: 2px solid #000;
  margin-bottom: var(--sp-6);
}
.print-doc__brand {
  font-family: var(--font-sans);
  font-weight: 700; font-size: 22px;
  font-variation-settings: "wdth" 108;
  letter-spacing: -0.02em;
  color: #000;
}
.print-doc__brand .accent { border-bottom: 3px solid var(--v-500); padding-bottom: 2px; }
.print-doc__meta { font-size: 11px; text-align: right; }
.print-doc__meta dt { color: #666; font-weight: 500; margin-top: 4px; }
.print-doc__meta dd { margin: 0; font-family: var(--font-mono); font-weight: 500; }

.print-doc__title {
  font-size: 24px; font-weight: 700; letter-spacing: -0.02em;
  text-align: center;
  margin: var(--sp-4) 0 var(--sp-6);
  padding: var(--sp-3);
  background: #000; color: #fff;
}
.print-doc__grid {
  display: grid; grid-template-columns: 1fr 1fr; gap: 1px;
  background: #000; border: 1px solid #000;
  margin-bottom: var(--sp-5);
}
.print-doc__cell {
  padding: var(--sp-3) var(--sp-4);
  background: #fff;
}
.print-doc__cell dt {
  font-size: 10px; text-transform: uppercase;
  letter-spacing: 0.05em; color: #666; font-weight: 600;
  margin-bottom: 3px;
}
.print-doc__cell dd { margin: 0; font-weight: 500; }

.print-doc__table { width: 100%; border-collapse: collapse; margin: var(--sp-5) 0; }
.print-doc__table th, .print-doc__table td {
  padding: var(--sp-3);
  border: 1px solid #000;
  text-align: left;
  font-size: 12px;
}
.print-doc__table th { background: #000; color: #fff; font-size: 10px;
                       text-transform: uppercase; letter-spacing: 0.05em; }
.print-doc__table td.num { text-align: right; font-variant-numeric: tabular-nums; }

.print-doc__sig {
  display: grid; grid-template-columns: 1fr 1fr; gap: var(--sp-6);
  margin-top: var(--sp-8); padding-top: var(--sp-5);
}
.print-doc__sig-box {
  border-top: 1px solid #000;
  padding-top: var(--sp-3);
  min-height: 60px;
}
.print-doc__sig-label {
  font-size: 10px; text-transform: uppercase;
  letter-spacing: 0.05em; color: #666; font-weight: 600;
}

.print-doc__foot {
  margin-top: var(--sp-8);
  padding-top: var(--sp-5);
  border-top: 1px solid #ccc;
  font-size: 10px; color: #666; line-height: 1.5;
}

@media print {
  body { background: #fff; }
  .top, .side, .subbar, .demobar, .toast-stack,
  .app__side, .app__top, .no-print { display: none !important; }
  .app { display: block; }
  .app__main { grid-column: 1; }
  .page { padding: 0; max-width: none; }
  .print-doc { border: 0; margin: 0; max-width: none; padding: 0; }
  @page { size: letter portrait; margin: 12mm; }
}
