/* Печать: на бумагу уходит только чек.

   «Сохранить PDF» на чеке — это печать в файл: её умеют и телефоны,
   и настольные браузеры, и текст в таком PDF остаётся текстом —
   его можно найти поиском и скопировать. Свой сборщик PDF пришлось бы
   тащить со шрифтами и кириллицей ради того же результата.

   Всё, что не документ, с листа убираем: шапка, нижнее меню, вкладки,
   плашка дел, сами кнопки печати. Человек печатает чек, а не снимок
   экрана.

   Бумага белая, чернила чёрные — те же токены, что у QR: там они
   означают ровно это, «не оформление, а знак для машины и для глаза».
   Печатать тёмную тему значит залить лист тонером целиком. */

@media print {

  /* Колонка перестаёт быть колонкой: на листе нет ни высоты окна,
     ни скруглений, ни теней — есть поля страницы. */
  html, body {
    height: auto;
    background: var(--qr-paper);
    color: var(--qr-ink);
  }

  body { display: block; overflow: visible; }

  .app {
    width: auto;
    max-width: none;
    height: auto;
    border: 0;
    border-radius: 0;
    box-shadow: none;
    background: none;
    overflow: visible;
  }

  .layout, .screen {
    height: auto;
    overflow: visible;
    padding: 0;
    animation: none;
  }

  /* Всё, что не документ. Плашка дел, шапка, меню, вкладки, круглая
     кнопка, шторки и всплывающие полосы к чеку отношения не имеют. */
  .backdrop,
  .notice,
  .appbar,
  .tabbar,
  .tabs,
  .fab,
  .sheet,
  .toast,
  .undo,
  .receipt__acts { display: none !important; }

  /* Сам чек: без рамки и подложки — лист и есть его подложка. */
  .receipt {
    gap: 6mm;
    padding: 0;
    background: none;
    border: 0;
    color: var(--qr-ink);
  }

  .receipt__shop,
  .receipt__number,
  .receipt__what,
  .receipt__sum,
  .receipt__total-value,
  /* Код чека на экране золотой — на бумаге золото выцветает
     до неразличимого, а набирать его будут именно с листа. */
  .receipt__code { color: var(--qr-ink); }

  .receipt__kind,
  .receipt__marks,
  .receipt__count,
  .receipt__total-name,
  .receipt__note { color: var(--qr-ink); opacity: .72; }

  /* Линии на бумаге тоньше и темнее: светло-серая на экране на листе
     пропадает вовсе. */
  .receipt__marks,
  .receipt__line + .receipt__line,
  .receipt__total { border-color: var(--qr-ink); }

  /* Размеры на листе — в миллиметрах, а не в долях ширины окна:
     страница не резиновая, и cqw на ней означал бы случайное число. */
  .receipt__qr {
    width: 45mm;
    padding: 0;
    background: none;
  }

  /* Позицию не разрываем между страницами: чек из двадцати строк
     иначе кончается половиной наименования на сгибе. */
  .receipt__line,
  .receipt__total,
  .receipt__stamp { break-inside: avoid; }

  @page { margin: 12mm; }
}
