.novel-header{
  background:linear-gradient(180deg,rgba(10,13,16,.96),rgba(10,13,16,.8));
  border-bottom:1px solid var(--line);
}
.novel-home-link{
  font-family:var(--latin);font-size:.9rem;letter-spacing:.14em;
  color:var(--muted);text-decoration:none;transition:color .3s;
}
.novel-home-link:hover{color:var(--paper)}
.novel-page{
  min-height:100vh;padding:10rem clamp(1.4rem,6vw,6rem) 6rem;
  background:
    radial-gradient(ellipse 55% 25% at 50% 0,rgba(61,106,138,.18),transparent 72%),
    var(--bg);
}
.novel-article{max-width:760px;margin:0 auto}
.novel-heading{padding-bottom:2.5rem;border-bottom:1px solid var(--line)}
.novel-heading h1{
  margin:0;font-size:clamp(2rem,6vw,3.4rem);font-weight:400;
  line-height:1.45;letter-spacing:.06em;
}
.novel-byline{
  margin:1.2rem 0 0;font-family:var(--latin);font-size:.85rem;
  letter-spacing:.16em;color:var(--muted);
}
.novel-notice{
  margin:3rem 0 4.5rem;padding:1.6rem 1.8rem;
  background:var(--bg-soft);border:1px solid var(--line);
}
.novel-notice h2{
  margin:0 0 1rem;font-size:.95rem;font-weight:400;letter-spacing:.08em;color:var(--gold);
}
.novel-notice ul{margin:0;padding-left:1.4rem;color:#b9c4ca}
.novel-notice li{font-size:.86rem;line-height:1.9}
.novel-body{font-size:1rem;line-height:2.25;color:#d1d9dd}
.novel-body p{margin:0 0 2em;text-align:justify;text-justify:inter-ideograph}
.scene-break{
  margin:3.8rem 0;text-align:center;font-family:var(--latin);
  letter-spacing:.7em;color:var(--muted);
}
.novel-bottom-nav{
  display:flex;justify-content:space-between;gap:1.5rem;margin-top:5rem;
  padding-top:1.8rem;border-top:1px solid var(--line);
}
.novel-bottom-nav a{
  font-family:var(--latin);font-size:.85rem;letter-spacing:.12em;
  color:var(--gold);text-underline-offset:.3em;
}
@media (max-width:640px){
  .novel-page{padding:8.5rem 1.4rem 4rem}
  .novel-notice{margin:2.5rem 0 3.5rem;padding:1.3rem}
  .novel-body{font-size:.96rem;line-height:2.15}
  .novel-bottom-nav{align-items:flex-start;flex-direction:column}
}
