/* Archive issues. Uses the Calm tokens in assets/site.css. */

.desk-archive{
  container-type:inline-size;
  padding:12px 0 8px;
  color:var(--ink);
}
.desk-archive-mast{
  margin:0 0 28px;
  padding-bottom:22px;
  border-bottom:1px solid var(--line);
}
.desk-archive-mast h1{
  font-family:var(--display),Georgia,"Times New Roman",serif;
  font-weight:500;
  letter-spacing:-.03em;
  line-height:1.05;
  font-size:clamp(40px,5vw,64px);
  margin:0 0 12px;
}
.desk-archive-date,
.desk-archive time{
  font-family:var(--display),Georgia,"Times New Roman",serif;
  font-weight:500;
  letter-spacing:-.03em;
  line-height:1.08;
}
.desk-archive-mast .desk-archive-date{
  font-size:clamp(40px,6vw,72px);
  margin:0 0 12px;
}
.desk-archive-lede{
  max-width:62ch;
  margin:0;
  font-size:19px;
  line-height:1.55;
  color:var(--ink-2);
}
.desk-archive-kicker{
  margin:0 0 8px;
  font-family:var(--font);
  font-size:12.5px;
  font-weight:600;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:var(--accent);
}
.desk-archive-stack{display:grid;gap:18px}
.desk-archive-issue,
.desk-archive-sheet{
  display:grid;
  grid-template-columns:minmax(148px,34%) minmax(0,1fr);
  gap:18px 26px;
  align-items:start;
  background:var(--surface);
  border:1px solid var(--line);
  border-radius:var(--radius-lg);
  box-shadow:var(--shadow);
  padding:18px;
}
.desk-archive-sheet{padding:22px}
.desk-archive-body{min-width:0}
.desk-archive-issue .desk-archive-date{
  font-size:clamp(28px,3vw,40px);
  margin:0 0 4px;
}
.desk-archive-date a{color:inherit;text-decoration:none}
.desk-archive-date a:hover{color:var(--accent)}
.desk-archive-count{
  margin:0 0 16px;
  color:var(--muted);
  font-size:15px;
}
.desk-archive-cover{
  margin:0;
  min-width:0;
  background:var(--bg-3);
  border:1px solid var(--line);
  border-radius:20px;
  padding:12px;
}
.desk-archive-cover img{
  width:100%;
  aspect-ratio:4/5;
  object-fit:cover;
  border-radius:14px;
  background:var(--bg-2);
}
.desk-archive-sheet .desk-archive-cover img{aspect-ratio:4/3}
.desk-archive-cover.is-standin{background:var(--warm-soft)}
.desk-archive-credit{
  margin:10px 2px 0;
  font-size:13.5px;
  line-height:1.45;
  color:var(--muted);
}
.desk-archive-cover.is-standin .desk-archive-credit{color:var(--ink-2)}
.desk-archive-lead{
  margin:0 0 8px;
  font-family:var(--display);
  font-weight:500;
  font-size:clamp(26px,3vw,36px);
  letter-spacing:-.02em;
  line-height:1.15;
}
.desk-archive-hed{
  color:var(--ink);
  text-decoration:none;
  overflow-wrap:break-word;
}
.desk-archive-lead .desk-archive-hed{font:inherit;letter-spacing:inherit;color:inherit}
.desk-archive-list .desk-archive-hed{
  font-family:var(--font);
  font-weight:600;
  font-size:17.5px;
  letter-spacing:0;
  line-height:1.35;
}
.desk-archive-hed:hover{color:var(--accent)}
.desk-archive-src{
  display:block;
  margin-top:3px;
  font-family:var(--font);
  font-size:14px;
  font-weight:500;
  letter-spacing:0;
  text-transform:none;
  color:var(--muted);
}
.desk-archive-dek{
  max-width:62ch;
  margin:8px 0 0;
  color:var(--muted);
  font-size:17px;
  line-height:1.55;
}
.desk-archive-body > .desk-archive-kicker{margin-top:18px}
.desk-archive-body > .desk-archive-kicker:first-child{margin-top:0}
.desk-archive-list{
  list-style:none;
  margin:0;
  padding:0;
}
.desk-archive-list li{
  padding:11px 0;
  border-top:1px solid var(--line);
}
.desk-archive-open{margin:16px 0 0}
.desk-archive-open a,
.desk-archive-pager a{
  font-weight:600;
  color:var(--accent);
  text-decoration:none;
}
.desk-archive-open a::after{content:" →"}
.desk-archive-open a:hover,
.desk-archive-pager a:hover{text-decoration:underline;text-underline-offset:3px}
.desk-archive-more{margin:16px 0 0;color:var(--muted);font-size:16px}
.desk-archive-lede a,
.desk-archive-more a,
.desk-archive-empty a,
.desk-archive-credit a{
  color:var(--accent);
  text-decoration:underline;
  text-underline-offset:3px;
}
.desk-archive-empty{
  margin:0;
  padding:18px 20px;
  background:var(--surface);
  border:1px solid var(--line);
  border-radius:var(--radius);
  color:var(--ink-2);
}
.desk-archive-pager{
  display:grid;
  grid-template-columns:1fr auto 1fr;
  gap:12px;
  align-items:center;
  margin-top:22px;
}
.desk-archive-pager a:last-child{justify-self:end}
.desk-archive-pager a:nth-child(2){justify-self:center}

@container (max-width:560px){
  .desk-archive-issue,
  .desk-archive-sheet{grid-template-columns:1fr;padding:14px}
  .desk-archive-cover img,
  .desk-archive-sheet .desk-archive-cover img{aspect-ratio:16/10}
}
@media (max-width:640px){
  .desk-archive-issue,
  .desk-archive-sheet{grid-template-columns:1fr;padding:14px}
  .desk-archive-mast h1,
  .desk-archive-mast .desk-archive-date{font-size:clamp(34px,10vw,48px)}
  .desk-archive-pager{grid-template-columns:1fr;justify-items:start}
  .desk-archive-pager a:last-child,
  .desk-archive-pager a:nth-child(2){justify-self:start}
}
@media (prefers-reduced-motion:reduce){
  .desk-archive-issue,
  .desk-archive-sheet{transition:none}
}
