/* Landcare Design System PrintView layer.
   General website and document printing. Import after brand tokens. */

@page {
  @bottom-left {
    border-top: 0.35pt solid var(--lds-colour-dark-grey, #444642);
    color: var(--lds-colour-dark-grey, #444642);
    content: "LANDCARE DESIGN SYSTEM";
    font-family: var(--lds-font-body, "Open Sans", Arial, sans-serif);
    font-size: 8pt;
    font-weight: 800;
    letter-spacing: 0.08em;
    padding-top: 1.4mm;
    vertical-align: top;
  }

  @bottom-right {
    border-top: 0.35pt solid var(--lds-colour-dark-grey, #444642);
    color: var(--lds-colour-dark-grey, #444642);
    content: counter(page) " OF " counter(pages);
    font-family: var(--lds-font-body, "Open Sans", Arial, sans-serif);
    font-size: 8pt;
    font-weight: 800;
    letter-spacing: 0.08em;
    padding-top: 1.4mm;
    vertical-align: top;
  }

  margin: 28mm 18mm 15mm 24mm;
  size: A4 landscape;
}

@page :right {
  margin: 28mm 15mm 15mm 24mm;
}

@page :left {
  @bottom-left {
    border-top: 0.35pt solid var(--lds-colour-dark-grey, #444642);
    color: var(--lds-colour-dark-grey, #444642);
    content: counter(page) " OF " counter(pages);
    font-family: var(--lds-font-body, "Open Sans", Arial, sans-serif);
    font-size: 8pt;
    font-weight: 800;
    letter-spacing: 0.08em;
    padding-top: 1.4mm;
    vertical-align: top;
  }

  @bottom-right {
    border-top: 0.35pt solid var(--lds-colour-dark-grey, #444642);
    color: var(--lds-colour-dark-grey, #444642);
    content: "LANDCARE DESIGN SYSTEM";
    font-family: var(--lds-font-body, "Open Sans", Arial, sans-serif);
    font-size: 8pt;
    font-weight: 800;
    letter-spacing: 0.08em;
    padding-top: 1.4mm;
    vertical-align: top;
  }

  margin: 28mm 24mm 15mm 15mm;
}

.lds-print-document {
  --lds-print-document-label: "Landcare";
  background: #ffffff;
  color: var(--lds-colour-dark-grey, #444642);
  font-family: var(--lds-font-body, "Open Sans", Arial, sans-serif);
}

.lds-print-document-header,
.lds-print-document-footer {
  color: var(--lds-colour-dark-grey, #444642);
  display: grid;
  font-size: 8.5pt;
  font-weight: 800;
  gap: 3mm;
  grid-template-columns: 1fr auto;
  letter-spacing: 0.04em;
}

.lds-print-document-header {
  border-bottom: 0.5pt solid var(--lds-colour-dark-grey, #444642);
  margin-bottom: 8mm;
  padding-bottom: 2.5mm;
}

.lds-print-document-footer {
  border-top: 0.5pt solid var(--lds-colour-dark-grey, #444642);
  margin-top: 8mm;
  padding-top: 2.5mm;
}

.lds-print-only {
  display: none;
}

.lds-print-page-header {
  display: none;
}

@media print {
  :root,
  [data-landcare-brand],
  [class*="lds-brand-"] {
    color-scheme: light;
  }

  * {
    box-shadow: none !important;
    text-shadow: none !important;
  }

  html,
  body {
    background: #ffffff !important;
    color: var(--lds-colour-dark-grey, #444642) !important;
    font-family: var(--lds-font-body, "Open Sans", Arial, sans-serif);
    font-size: 10.5pt;
    line-height: 1.38;
  }

  body {
    -webkit-print-color-adjust: exact;
    print-color-adjust: exact;
  }

  .site-sidebar,
  .theme-toggle,
  .screen-only,
  .lds-screen-only,
  nav[aria-label="Primary"] {
    display: none !important;
  }

  .site-shell,
  main,
  .doc-page,
  .lds-print-document {
    display: block !important;
    margin: 0 !important;
    max-width: none !important;
    padding: 0 !important;
    width: auto !important;
  }

  .lds-print-only {
    display: block !important;
  }

  .lds-print-page-header {
    display: none !important;
  }

  .lds-print-document-header,
  .lds-print-document-footer {
    font-size: 8pt;
    page-break-inside: avoid;
  }

  .breadcrumb {
    display: none !important;
  }

  h1 {
    font-size: 26pt;
    line-height: 1.05;
    margin: 0 0 5mm;
    max-width: none;
  }

  .lead,
  .description {
    color: var(--lds-colour-dark-grey, #444642);
    font-size: 12pt;
    line-height: 1.34;
    margin: 0 0 6mm;
    max-width: none;
  }

  h2 {
    border-top: 0.5pt solid var(--lds-colour-light-grey, #d8d9d6);
    break-after: avoid;
    break-inside: avoid;
    font-size: 16pt;
    line-height: 1.16;
    margin: 7mm 0 3mm;
    padding-top: 4.5mm;
    page-break-after: avoid;
  }

  h3 {
    border-left: 2.5pt solid var(--lds-colour-landcare-green, #82a523);
    break-after: avoid;
    break-inside: avoid;
    font-size: 12.5pt;
    line-height: 1.2;
    margin: 5.5mm 0 2.5mm;
    padding-left: 2.5mm;
    page-break-after: avoid;
  }

  p,
  li {
    font-size: 10.5pt;
    line-height: 1.38;
    orphans: 3;
    widows: 3;
  }

  p {
    margin: 0 0 3.2mm;
  }

  ul,
  ol {
    margin: 0 0 4mm;
    padding-left: 5mm;
  }

  strong {
    color: var(--lds-colour-forest, #2f523f);
  }

  a {
    color: var(--lds-colour-dark-grey, #444642);
    text-decoration: underline;
    text-decoration-thickness: 0.5pt;
    text-underline-offset: 1.5pt;
  }

  a[href^="http"]::after {
    content: " (" attr(href) ")";
    font-size: 8pt;
    overflow-wrap: anywhere;
  }

  code {
    background: #ffffff;
    border: 0.45pt solid var(--lds-colour-light-grey, #d8d9d6);
    border-radius: 2pt;
    font-size: 0.9em;
    padding: 0 1.5pt;
  }

  pre {
    background: #ffffff !important;
    border: 0.45pt solid var(--lds-colour-light-grey, #d8d9d6);
    color: var(--lds-colour-dark-grey, #444642) !important;
    font-size: 8pt;
    overflow: visible;
    padding: 3mm;
    white-space: pre-wrap;
  }

  blockquote {
    border-left: 2.5pt solid var(--lds-colour-landcare-green, #82a523);
    break-inside: avoid;
    font-size: 11pt;
    margin: 4mm 0;
    padding: 1mm 0 1mm 4mm;
    page-break-inside: avoid;
  }

  table {
    border-collapse: collapse;
    display: table;
    font-size: 8.5pt;
    margin: 4mm 0 5.5mm;
    overflow: visible;
    page-break-inside: auto;
    width: 100%;
  }

  thead {
    display: table-header-group;
  }

  tr {
    break-inside: avoid;
    page-break-inside: avoid;
  }

  th,
  td {
    border-top: 0.45pt solid var(--lds-colour-light-grey, #d8d9d6);
    padding: 2mm 2.4mm;
    text-align: left;
    vertical-align: top;
  }

  tbody tr:last-child td {
    border-bottom: 0.45pt solid var(--lds-colour-light-grey, #d8d9d6);
  }

  figure,
  img,
  svg,
  .callout,
  .lds-callout {
    break-inside: avoid;
    page-break-inside: avoid;
  }

  figcaption,
  caption,
  .caption {
    font-size: 9pt;
    line-height: 1.3;
  }

  .print-break {
    break-after: page;
    border: 0 !important;
    display: block;
    height: 0;
    margin: 0;
    page-break-after: always;
  }

  .type-display {
    gap: 4mm;
  }

  .type-display strong {
    color: var(--lds-colour-forest, #325040);
    display: block;
    margin-bottom: 2.8mm;
    padding-bottom: 1.2mm;
  }

  .type-token-table {
    margin-left: -2mm;
    margin-right: -2mm;
    overflow: visible;
  }

  .type-token-table table {
    font-size: 7.2pt;
    table-layout: fixed;
  }

  .type-token-table th,
  .type-token-table td {
    padding: 1.6mm 1.4mm;
    word-break: normal;
  }

  .type-token-table code {
    display: inline-block;
    font-size: 6.8pt;
    line-height: 1.15;
    max-width: 100%;
    white-space: normal;
    word-break: keep-all;
  }

  .type-token-table th:nth-child(1),
  .type-token-table td:nth-child(1) {
    width: 11%;
  }

  .type-token-table th:nth-child(2),
  .type-token-table td:nth-child(2) {
    width: 10%;
  }

  .type-token-table th:nth-child(3),
  .type-token-table td:nth-child(3),
  .type-token-table th:nth-child(4),
  .type-token-table td:nth-child(4),
  .type-token-table th:nth-child(5),
  .type-token-table td:nth-child(5),
  .type-token-table th:nth-child(6),
  .type-token-table td:nth-child(6),
  .type-token-table th:nth-child(7),
  .type-token-table td:nth-child(7) {
    width: 8%;
  }

  .type-token-table th:nth-child(8),
  .type-token-table td:nth-child(8),
  .type-token-table th:nth-child(9),
  .type-token-table td:nth-child(9) {
    width: 19%;
  }
}
