/* 紙頁專屬樣式；作品總覽與北桃 Go 不受影響。 */
:root { --accent: #41678e; }
html { scroll-behavior: smooth; }
header nav, .footer-links { display: flex; flex-wrap: wrap; gap: 20px; }
.brand span { font-size: 13px; font-weight: 500; color: var(--muted); }
.paper-hero { display: grid; grid-template-columns: 1.3fr .7fr; align-items: center; gap: 64px; padding-block: 64px; }
.hero-icon { width: 96px; height: 96px; border-radius: 22px; }
.paper-hero h1 { font-size: clamp(34px, 4.6vw, 52px); line-height: 1.4; }
.hero-note, .availability, .small, figcaption { color: var(--muted); }
.availability, .small, figcaption { font-size: 14px; }
.availability { margin-top: 20px; }
.actions { display: flex; align-items: center; flex-wrap: wrap; gap: 20px; margin-top: 28px; }
.button { display: inline-block; padding: 12px 20px; background: #41678e; color: #fff; text-decoration: none; border-radius: 12px; font-weight: 600; }
figure { margin: 0; min-width: 0; }
figure img { display: block; width: 100%; height: auto; border-radius: 20px; border: 1px solid var(--line); }
figcaption { margin-top: 12px; text-align: center; }
.section { padding-block: 64px; }
.band { background: var(--surface); border-block: 1px solid var(--line); }
.section h2 { font-size: clamp(26px, 3.2vw, 36px); line-height: 1.5; margin-bottom: 24px; }
.steps { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 36px; margin-top: 36px; }
.number { font-size: 14px; color: var(--accent); font-weight: 700; }
h3 { font-size: 20px; margin-block: 12px; }
.steps p { color: var(--muted); }
.showcase { display: grid; grid-template-columns: .8fr 1.2fr; gap: 80px; align-items: center; }
.export-showcase { grid-template-columns: 1.2fr .8fr; }
.reading, .policy { max-width: 720px; }
.feature-list { padding-left: 1.3em; }
.feature-list li { margin-block: 14px; }
.formats { margin: 24px 0; }
.formats > div { padding-block: 14px; border-bottom: 1px solid var(--line); }
.formats dt { font-weight: 700; }
.formats dd { margin: 4px 0 0; color: var(--muted); }
.policy { padding-block: 52px 72px; overflow-wrap: anywhere; }
.policy h1 { font-size: clamp(32px, 5vw, 44px); }
.policy h2 { font-size: 23px; margin-bottom: 16px; }
.policy section { margin-top: 44px; }
.policy li { margin-block: 8px; }
.policy .notice p { margin-bottom: 0; }
.toc { display: flex; flex-wrap: wrap; gap: 12px 22px; padding-block: 16px; border-block: 1px solid var(--line); font-size: 14px; }
.back { display: inline-block; margin-top: 36px; }
#support a { overflow-wrap: anywhere; }
@media (max-width: 700px) {
  .paper-hero, .showcase, .export-showcase, .steps { grid-template-columns: 1fr; gap: 32px; }
  .paper-hero, .section { padding-block: 40px; }
  .showcase figure { order: 2; }
  figure { width: min(100%, 340px); margin-inline: auto; }
  .hero-figure { width: min(100%, 290px); }
  header nav { gap: 12px; }
  .brand span { display: none; }
}
@media (prefers-color-scheme: dark) { :root { --accent: #9dc2e8; } }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }
