/* Miguu guest app — the photo book.
   Screen: #book is inert and invisible. Print: it is the only thing on the page.
   A4 portrait, one page per day, nothing splits across a page break. */

#book { display: none; }

@media print {
  @page { size: A4 portrait; margin: 14mm 13mm 16mm; }

  html, body {
    background: #fff !important;
    color: #14110c !important;
    font-family: 'Inter', system-ui, sans-serif;
    font-size: 10pt;
    line-height: 1.55;
    height: auto !important;
    overflow: visible !important;
  }

  /* everything that is not the book goes away: chrome, tab bar, sheets, toasts */
  body > .stage,
  body > .sheet-wrap,
  body > .toast,
  body > .viewer,
  body > input,
  body > .m-celeb,
  body > .m-dust,
  .m-chip,
  .tabbar, .topbar, .demo-banner, .map-btns { display: none !important; }
  /* the shared turbulence filter must stay in the document — it is what the
     printed stamps are drawn through — but it has no size of its own */
  body > #miguuDefsWrap { display: block !important; }

  #book { display: block !important; }
  #book * { -webkit-print-color-adjust: exact; print-color-adjust: exact; }

  #book .bk-page { page-break-before: always; break-before: page; page-break-inside: auto; }
  #book .bk-page:first-child { page-break-before: auto; break-before: auto; }

  /* ------------------------------------------------------------------ cover */
  #book .bk-cover { text-align: center; padding-top: 8mm; }
  #book .bk-cover img {
    width: 100%; height: 108mm; object-fit: cover;
    border: 0.4pt solid #C9A84C; margin-bottom: 9mm;
  }
  #book .bk-cover .bk-eyebrow { color: #8a6f22; }
  #book .bk-cover h1 {
    font-family: 'Cormorant Garamond', Georgia, serif; font-weight: 400;
    font-size: 30pt; line-height: 1.12; margin: 4mm 0 3mm;
  }
  #book .bk-cover .bk-dates { font-size: 10pt; color: #4a463d; }
  #book .bk-cover .bk-guest {
    margin-top: 10mm; padding-top: 4mm; border-top: 0.4pt solid #C9A84C;
    font-family: 'Cormorant Garamond', Georgia, serif; font-size: 15pt;
  }
  #book .bk-cover .bk-route {
    margin-top: 3mm; font-size: 7.5pt; letter-spacing: .22em;
    text-transform: uppercase; color: #8a6f22;
  }

  /* ------------------------------------------------------------ page furniture */
  #book .bk-eyebrow {
    font-size: 7pt; letter-spacing: .3em; text-transform: uppercase;
    color: #8a6f22; margin-bottom: 2mm;
  }
  #book h2 {
    font-family: 'Cormorant Garamond', Georgia, serif; font-weight: 400;
    font-size: 19pt; line-height: 1.18; margin: 0 0 2mm;
  }
  #book .bk-place { font-size: 8.5pt; color: #6b6559; margin-bottom: 4mm; }
  #book .bk-rule { border: 0; border-top: 0.4pt solid #C9A84C; margin: 4mm 0; }
  #book .bk-notes { font-size: 10pt; line-height: 1.65; white-space: pre-wrap; }
  #book .bk-h3 {
    font-size: 7pt; letter-spacing: .26em; text-transform: uppercase;
    color: #8a6f22; margin: 6mm 0 2mm;
  }

  #book .bk-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 3mm; margin-top: 3mm; }
  #book .bk-grid figure { break-inside: avoid; page-break-inside: avoid; margin: 0; }
  #book .bk-grid img {
    width: 100%; height: 44mm; object-fit: cover;
    border: 0.4pt solid #d8cfb4; display: block;
  }
  #book .bk-grid figcaption { font-size: 7pt; color: #6b6559; margin-top: 1mm; line-height: 1.35; }

  #book .bk-list { list-style: none; margin: 0; padding: 0; }
  #book .bk-list li {
    font-size: 9pt; padding: 1mm 0; border-bottom: 0.3pt solid #eae3cf;
    break-inside: avoid; page-break-inside: avoid;
  }
  #book .bk-list li .sw { color: #8a6f22; font-style: italic;
    font-family: 'Cormorant Garamond', Georgia, serif; }

  #book .bk-check { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.5mm 4mm; }
  #book .bk-check div {
    font-size: 8.5pt; padding: 1mm 0 1mm 5mm; position: relative;
    color: #9a958a; break-inside: avoid;
  }
  #book .bk-check div::before {
    content: ''; position: absolute; left: 0; top: 2.4mm;
    width: 2.6mm; height: 2.6mm; border: 0.4pt solid #b9b1a0;
  }
  #book .bk-check div.on { color: #14110c; }
  #book .bk-check div.on::before { background: #C9A84C; border-color: #C9A84C; }

  #book .bk-ch { display: grid; grid-template-columns: repeat(3, 1fr); gap: 3mm; }
  #book .bk-ch figure { margin: 0; break-inside: avoid; page-break-inside: avoid; }
  #book .bk-ch img { width: 100%; height: 40mm; object-fit: cover; border: 0.4pt solid #d8cfb4; }
  #book .bk-ch figcaption { font-size: 7.5pt; margin-top: 1mm; line-height: 1.35; }
  #book .bk-ch .pts { color: #8a6f22; letter-spacing: .1em; }

  #book .bk-foot {
    margin-top: 8mm; padding-top: 3mm; border-top: 0.4pt solid #C9A84C;
    font-size: 7pt; letter-spacing: .22em; text-transform: uppercase; color: #8a6f22;
  }
  #book .bk-empty { font-size: 9pt; color: #6b6559; font-style: italic; }
}

/* ------------------------------------------------------------ passport page
   The stamps as they appear in the app, in ink on paper. An unearned day keeps
   its dotted circle so the book is honest about the days nobody wrote up. */
.bk-pass{display:grid;grid-template-columns:repeat(4,1fr);gap:4mm;margin-top:4mm}
.bk-pass figure{text-align:center;break-inside:avoid;page-break-inside:avoid}
.bk-pass svg{width:32mm;height:32mm;display:block;margin:0 auto}
.bk-nostamp{width:26mm;height:26mm;margin:3mm auto;border:0.4mm dashed rgba(120,100,50,.45);border-radius:50%}
.bk-pass figcaption{font-size:7pt;letter-spacing:.1em;text-transform:uppercase;color:#6b6b6b;margin-top:1mm}
.bk-pass .empty figcaption{color:#a5a5a5}
.bk-sticker{display:inline-block;vertical-align:-.5mm}
.bk-sticker svg{width:3.4mm;height:3.4mm;display:inline-block}

  /* gold ink at 85% is a highlighter on paper; the printed stamps use the same
     drawing in a darker, printable ink */
  #book .bk-pass svg g { stroke: rgba(122,96,32,.92) !important; }
  #book .bk-pass svg text { fill: rgba(110,86,28,.95) !important; }
  #book .bk-sticker svg { stroke: rgba(122,96,32,.92) !important; }
  #book .bk-sticker svg circle { fill: rgba(201,168,76,.22) !important; }
