/* Partner brief: one A4 sheet, shared tokens with main.css */
:root{
  --paper: oklch(96.5% 0.012 85); --paper-deep: oklch(93% 0.018 83);
  --ink: oklch(16% 0.016 250); --muted: oklch(41% 0.02 250);
  --rum: oklch(62% 0.13 55); --line: oklch(83% 0.018 85);
  --serif: "Erode", Georgia, serif; --sans: "Author", system-ui, sans-serif; --mono: "JetBrains Mono", ui-monospace, monospace;
}
*,*::before,*::after{ box-sizing:border-box; margin:0; padding:0; }
body{ background:var(--paper-deep); color:var(--ink); font-family:var(--sans); font-size:10pt; line-height:1.55; -webkit-font-smoothing:antialiased; }
.mono{ font-family:var(--mono); font-weight:500; text-transform:uppercase; letter-spacing:0.12em; font-size:7pt; }
a{ color:inherit; }

.controls{ max-width:210mm; margin:0 auto; display:flex; justify-content:space-between; align-items:center; padding:1.4rem 16px; }
.controls a{ text-decoration:none; color:var(--muted); }
.controls__actions{ display:flex; align-items:center; gap:1.4rem; }
.controls__print{ background:none; border:0; color:var(--muted); cursor:pointer; padding:0; }
.controls__print:hover{ color:var(--ink); }
.controls .controls__download{ background:var(--ink); color:var(--paper); padding:0.8rem 1.3rem; }
.controls .controls__download:hover{ background:var(--rum); }
.controls :focus-visible{ outline:2px solid var(--rum); outline-offset:3px; }

.sheet{
  width:210mm; min-height:297mm; margin:0 auto 3rem; background:var(--paper);
  padding:18mm 18mm 16mm; display:flex; flex-direction:column; gap:9mm;
}
.sheet__head{ display:flex; justify-content:space-between; align-items:center; padding-bottom:5mm; border-bottom:1px solid var(--line); }
.sheet__brand{ display:flex; align-items:center; gap:3mm; font-family:var(--serif); font-size:12pt; }
.sheet__brand svg{ width:4mm; fill:var(--ink); }
.sheet__head .mono{ color:var(--muted); }
h1{ font-family:var(--serif); font-weight:400; font-size:30pt; line-height:1.04; letter-spacing:-0.02em; max-width:15ch; text-wrap:balance; }
h2{ color:var(--rum); margin-bottom:2.5mm; }
p{ text-wrap:pretty; }
.sheet__grid{ display:grid; grid-template-columns:1fr 1fr; gap:10mm; }
.sheet__grid p{ color:var(--muted); }
.sheet__commit ol{ list-style:none; border-top:1px solid var(--line); }
.sheet__commit li{ display:grid; grid-template-columns:12mm 1fr; padding:3mm 0; border-bottom:1px solid var(--line); color:var(--muted); }
.sheet__commit strong{ font-family:var(--serif); font-weight:400; font-size:12.5pt; color:var(--ink); display:block; }
.n{ font-family:var(--serif); color:var(--rum); font-size:12pt; }
.steps{ display:grid; grid-template-columns:repeat(4,1fr); border-top:1px solid var(--line); }
.steps > div{ padding:3mm 4mm 0 0; }
.steps > div + div{ padding-left:4mm; border-left:1px solid var(--line); }
.steps--carry > div{ padding-bottom:2.5mm; }
.steps--carry > div:nth-child(5){ padding-left:0; border-left:0; }
.steps--carry > div:nth-child(n+5){ border-top:1px solid var(--line); padding-top:2.5mm; }
.steps p{ color:var(--muted); font-size:9pt; margin-top:1mm; }
.sheet__foot{ margin-top:auto; display:flex; justify-content:space-between; align-items:flex-end; padding-top:6mm; border-top:1px solid var(--line); }
.sheet__foot > div:first-child{ display:flex; flex-direction:column; gap:2mm; }
.sheet__foot .mono{ color:var(--muted); }
.sheet__foot a{ font-family:var(--serif); font-size:15pt; color:var(--rum); text-decoration:none; }
.sheet__sign{ display:flex; flex-direction:column; align-items:flex-end; gap:1mm; }
.sheet__sign img{ width:38mm; }

.sheet--text{ gap:7mm; }
.sheet--text section p{ color:var(--muted); max-width:68ch; }
.sheet--text section p + p{ margin-top:2.5mm; }
.sheet--text section a{ color:var(--ink); text-decoration-color:var(--rum); text-underline-offset:0.2em; }
.sheet__addr{ color:var(--muted); }
@media screen and (max-width:820px){
  .sheet{ width:auto; min-height:0; margin:0 16px 2rem; padding:28px 20px; gap:28px; }
  h1{ font-size:2rem; }
  .sheet__grid, .steps{ grid-template-columns:1fr; }
  .steps > div + div{ border-left:0; padding-left:0; border-top:1px solid var(--line); }
  .steps > div{ padding:12px 0; }
  .steps--carry{ grid-template-columns:1fr 1fr; }
  .steps--carry > div:nth-child(even){ padding-left:12px; border-left:1px solid var(--line); }
  .steps--carry > div:nth-child(2){ border-top:0; }
  .sheet__head{ flex-direction:column; align-items:flex-start; gap:10px; }
  .sheet__foot{ flex-direction:column; align-items:flex-start; gap:20px; }
  .sheet__sign{ align-items:flex-start; }
}
@page{ size:A4; margin:0; }
@media print{
  body{ background:var(--paper); -webkit-print-color-adjust:exact; print-color-adjust:exact; }
  .controls{ display:none; }
  .sheet{ margin:0; width:210mm; height:296.5mm; overflow:hidden; }
  .sheet{ padding:14mm 16mm 12mm; gap:5.5mm; }
  h1{ font-size:24pt; max-width:22ch; }
  .sheet__head{ padding-bottom:3.5mm; }
  .sheet__commit li{ padding:2mm 0; }
  .sheet__commit strong{ font-size:11.5pt; }
  .sheet__grid p, .sheet__commit li p{ font-size:9pt; line-height:1.45; }
  .steps--carry > div{ padding-top:1.8mm; padding-bottom:1.8mm; }
  .steps--carry .n{ font-size:10.5pt; }
  .steps p{ font-size:8.4pt; }
  .sheet__sign img{ width:32mm; }
  .sheet__foot{ padding-top:4mm; }
}
