/* Printable Cabane sheet: US Letter, French front, English back. */
@page { size: letter; margin: 0; }
body.fiche-page { background: #D9D4CB; -webkit-print-color-adjust: exact; print-color-adjust: exact; }
body.fiche-page::after { display: none; }
.sheet .awning { height: 48px; }
.fiche-bar { display: flex; justify-content: center; gap: 12px; margin: 20px 0 0; }
.sheet {
  position: relative; box-sizing: border-box; width: 8.5in; height: 11in; margin: 20px auto; overflow: hidden;
  padding: .95in .65in .45in; background: var(--foam); color: var(--navy); box-shadow: 0 10px 40px rgba(29, 43, 79, .25);
  display: flex; flex-direction: column;
}
.sheet-brand { display: flex; align-items: center; gap: 10px; }
.sheet-brand img { width: .7in; height: auto; }
.sheet-brand .brand-name { font-size: 26pt; }
.sheet-tag { margin-left: 6px; padding: 3pt 10pt; border-radius: 999px; background: var(--navy); color: var(--foam); font-weight: 800; font-size: 11pt; letter-spacing: .08em; text-transform: uppercase; }
.sheet h1 { font-size: 31pt; margin: .16in 0 .2in; }
.sheet-lede { font-size: 12pt; line-height: 1.4; margin: 0 0 .18in; color: var(--ink-2); }
.sheet-steps { list-style: none; margin: 0; padding: 0; display: grid; gap: .08in; }
.sheet-steps li { display: grid; grid-template-columns: .5in 1fr; gap: .12in; align-items: center; }
/* print pages are 816px wide, so the site's narrow-screen rules apply: pin the sheet's own layout */
.sheet-steps .loop-n { position: static; width: .46in; height: .46in; font-size: 15pt; margin: 0; grid-column: 1; }
.sheet-steps li > div { grid-column: 2; }
.sheet-steps b { display: block; font-family: var(--display); font-weight: 400; font-size: 13.5pt; }
.sheet-steps span { font-size: 10.5pt; line-height: 1.3; color: var(--ink-2); }
.sheet-h2 { font-family: var(--display); font-weight: 400; font-size: 16pt; margin: .2in 0 .08in; }
.sheet-gets { display: grid; grid-template-columns: 1fr 1fr; gap: .1in; }
.fiche-get { padding: .08in .14in; border: 2px solid var(--navy); border-radius: .14in; background: var(--sand); }
.fiche-get b { display: block; font-size: 11pt; }
.fiche-get span { font-size: 9.5pt; line-height: 1.3; color: var(--ink-2); }
.sheet-needs { margin: .12in 0 .14in; padding: .08in .14in; border: 2px dashed var(--navy); border-radius: .14in; font-size: 10pt; }
.sheet-foot { margin-top: auto; display: grid; grid-template-columns: 1.55in 1fr; gap: .25in; align-items: center; }
.qr { width: 1.55in; height: 1.55in; display: grid; place-items: center; border: 2px dashed var(--navy); border-radius: .12in; }
.qr.has-qr { border: 0; }
.qr img { width: 100%; height: auto; display: block; }
.qr-missing { padding: .12in; font-size: 9pt; font-weight: 700; text-align: center; color: var(--muted); }
.sheet-scan { font-family: var(--display); font-size: 17pt; margin: 0 0 4pt; }
.sheet-free { margin: 0; font-weight: 800; font-size: 11.5pt; color: var(--coral-dk); }
@media print {
  body.fiche-page { background: none; }
  .no-print { display: none; }
  .sheet { margin: 0; box-shadow: none; page-break-after: always; break-after: page; }
}
@media screen and (max-width: 860px) {
  .sheet { transform: scale(.45); transform-origin: top left; margin: 0 0 calc(-11in * .55) 16px; }
}
