/* Shore Pass — print / "Save as PDF" stylesheet (self-contained). */
/* Fonts load via <link> in partials/favicons.php (included by the print layout). */

:root{
  --red:#D32027; --red-soft:#f7d8da; --navy:#0b1f3a; --ink:#14171c; --slate:#5a6473;
  --line:#e6eaf0; --green:#16a34a; --amber:#e08c1b;
}
*{box-sizing:border-box}
.sp-printbody{margin:0; background:#eef1f5; color:var(--ink);
  font-family:'Manrope',system-ui,sans-serif; -webkit-font-smoothing:antialiased}

.doc{max-width:820px; margin:26px auto; background:#fff; border-radius:10px; overflow:hidden;
  box-shadow:0 6px 30px rgba(15,23,42,.12)}

/* Screen-only toolbar */
.doc__bar{display:flex; justify-content:space-between; align-items:center; gap:12px;
  padding:12px 18px; background:#f4f6fa; border-bottom:1px solid var(--line)}
.doc__bar a{color:var(--red); font-weight:700; text-decoration:none; font-size:14px}
.doc__bar a:hover{text-decoration:underline}
.doc__bar button{background:var(--red); color:#fff; border:none; border-radius:8px;
  padding:9px 16px; font-weight:700; font-size:14px; cursor:pointer; font-family:inherit}
.doc__bar button:hover{background:#a41820}

/* Header band */
.doc__head{background:linear-gradient(160deg,var(--navy),#13294a); color:#fff;
  padding:24px 30px; display:flex; align-items:center; justify-content:space-between; gap:18px}
.doc__brandrow{display:flex; align-items:center; gap:18px}
.doc__stamp{flex:0 0 auto; width:62px; height:78px; border:2.5px solid var(--red); border-radius:8px;
  background:#fff; color:var(--red); display:flex; flex-direction:column; align-items:center;
  justify-content:center; text-align:center; line-height:1; padding:5px;
  box-shadow:inset 0 0 0 2px #fff, inset 0 0 0 3.5px var(--red); font-family:'Oswald',sans-serif}
.doc__stamp-top{font-size:7px; letter-spacing:.16em}
.doc__stamp-main{font-size:17px; font-weight:700; margin:1px 0}
.doc__stamp-sub{font-size:5px; letter-spacing:.18em; border-top:1px solid var(--red);
  border-bottom:1px solid var(--red); padding:1px 0; margin-top:2px}
.doc__kicker{text-transform:uppercase; letter-spacing:.18em; font-size:11px; color:#9fb6d4; font-weight:700}
.doc__titles h1{margin:3px 0 2px; font-family:'Oswald',sans-serif; font-weight:700; font-size:30px; line-height:1.05}
.doc__sub{font-size:14px; color:#c7d4e6}
.doc__status{flex:0 0 auto; align-self:flex-start; padding:6px 14px; border-radius:999px;
  font-size:12px; font-weight:800; text-transform:uppercase; letter-spacing:.04em; color:#fff; white-space:nowrap}
.doc__status--ok{background:var(--green)}
.doc__status--cond{background:var(--amber)}
.doc__status--no{background:var(--red)}
.doc__status--muted{background:#6b7585}

/* Photos */
.doc__photos{display:flex; gap:10px; padding:16px 30px 0}
.doc__photos figure{margin:0; flex:1; min-width:0}
.doc__photos img{width:100%; height:128px; object-fit:cover; border-radius:8px; display:block}
.doc__photos figcaption{font-size:10px; color:var(--slate); margin-top:4px; white-space:nowrap;
  overflow:hidden; text-overflow:ellipsis}

/* Sections */
.doc__sec{padding:16px 30px 4px}
.doc__sec h2{font-family:'Oswald',sans-serif; text-transform:uppercase; color:var(--red);
  font-size:15px; letter-spacing:.06em; margin:0 0 8px; padding-bottom:6px; border-bottom:2px solid var(--red-soft)}
.doc__sec dl{margin:0}
.doc__sec dl > div{display:grid; grid-template-columns:200px 1fr; gap:14px; padding:9px 0;
  border-bottom:1px solid var(--line)}
.doc__sec dl > div:last-child{border-bottom:none}
.doc__sec dt{font-weight:700; font-size:13px; color:var(--slate)}
.doc__sec dd{margin:0; font-size:13.5px; color:var(--ink)}
.doc__meta{display:block; margin-top:3px; font-size:12px; color:var(--slate)}

/* Footer */
.doc__foot{padding:18px 30px 26px; margin-top:8px}
.doc__note{background:#fff7e6; border:1px solid #f5e2b8; color:#7a5a12; border-radius:8px;
  padding:10px 12px; font-size:12.5px; margin:0 0 10px}
.doc__src{font-size:11px; color:var(--slate-2,#8b95a4); text-align:center; margin:0}

/* ---------------- Print ---------------- */
@media print{
  @page{size:A4; margin:13mm}
  html,body,.sp-printbody{background:#fff !important}
  *{-webkit-print-color-adjust:exact !important; print-color-adjust:exact !important}
  .no-print{display:none !important}
  .doc{max-width:none; margin:0; border-radius:0; box-shadow:none}
  .doc__head{padding:18px 8px}
  .doc__sec, .doc__photos, .doc__foot{padding-left:8px; padding-right:8px}
  .doc__sec, .doc__photos, .doc__head, .doc__foot{page-break-inside:avoid}
  .doc__sec h2{break-after:avoid}
  a[href]{color:inherit; text-decoration:none}
}
