.nodes-opening{
  position:relative;
  overflow-x:clip;
  max-width:100%;
  padding-top:var(--space-8);
  padding-bottom:var(--space-8);
  background:
    radial-gradient(ellipse at 8% 12%,var(--glow-green),transparent 64%),
    radial-gradient(ellipse at 92% 88%,var(--glow-apricot),transparent 60%),
    linear-gradient(180deg,var(--bg-top),var(--bg-bottom));
  border-bottom:1px solid var(--line-soft);
}
.nodes-opening-inner{
  display:grid;
  grid-template-columns:minmax(0,8fr) minmax(0,4fr);
  align-items:center;
  gap:var(--space-8);
}
.nodes-heading,.nodes-summary{min-width:0}
.nodes-heading h1{
  margin-top:var(--space-3);
  font-size:clamp(52px,5vw,68px);
}
.nodes-intro{
  max-width:680px;
  margin-top:var(--space-3);
  color:var(--muted);
  font-size:18px;
}
.nodes-actions{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:var(--space-3);
  margin-top:var(--space-4);
}
.nodes-summary-label{
  font-size:14px;
  color:var(--muted);
}
.nodes-coverage{
  margin-top:var(--space-2);
  font-family:var(--font-display);
  font-size:30px;
  line-height:1.55;
  color:var(--accent);
}
.nodes-coverage .mono{
  font-size:.9em;
  font-variant-numeric:tabular-nums;
}
.nodes-summary-facts{
  margin-top:var(--space-3);
  margin-bottom:var(--space-2);
  padding-top:var(--space-2);
  border-top:1px solid var(--border);
}
.nodes-summary-facts p{
  margin-top:var(--space-1);
  font-size:15px;
}
.nodes-summary>.muted{font-size:13px}
.nodes-document{padding-top:var(--space-4)}
.nodes-chapter{
  padding-top:var(--space-8);
  padding-bottom:var(--space-4);
}
.nodes-chapter+.nodes-chapter{border-top:1px solid var(--line-soft)}
.nodes-reading{
  max-width:860px;
  margin-top:var(--space-3);
}
.nodes-reading p{color:var(--muted)}
.nodes-type-layout{
  display:grid;
  grid-template-columns:minmax(0,4fr) minmax(0,8fr);
  align-items:start;
  gap:var(--space-6);
}
.nodes-type-art{
  display:grid;
  justify-items:center;
  gap:var(--space-3);
  padding:var(--space-4);
  border:1px solid var(--hi-edge);
  border-radius:var(--r-card);
  background:linear-gradient(155deg,var(--accent),var(--accent-2));
  box-shadow:var(--shadow-panel);
  min-width:0;
}
.nodes-type-art>.tag{
  text-align:center;
  justify-content:center;
}
.nodes-type-art>p{
  color:var(--on-deep-muted);
  font-size:14px;
  text-align:center;
}
.nodes-path-card{
  width:100%;
  text-align:center;
}
.nodes-path-link{
  display:block;
  margin:var(--space-1) auto;
  color:var(--accent);
}
.nodes-type-copy h3:first-child{margin-top:0}
.nodes-type-copy p{color:var(--muted)}
.nodes-note{margin-top:var(--space-4)}
.nodes-note a{color:var(--accent-dark)}
.nodes-use-list{border-top:1px solid var(--border)}
.nodes-use-row{
  display:grid;
  grid-template-columns:minmax(0,3fr) minmax(0,9fr);
  gap:var(--space-5);
  padding-top:var(--space-4);
  padding-bottom:var(--space-4);
  border-bottom:1px solid var(--border);
}
.nodes-use-heading{
  min-width:0;
  padding-right:var(--space-3);
  border-right:1px solid var(--border);
}
.nodes-use-heading h3{
  margin-top:var(--space-2);
  font-size:26px;
}
.nodes-use-body{min-width:0}
.nodes-use-body p{color:var(--muted)}
.nodes-use-body p+p{margin-top:var(--space-2)}
.nodes-use-body a{color:var(--accent)}
.nodes-document .route-table tbody th[scope="row"]{
  background:var(--panel);
  font-weight:500;
}
.nodes-document .route-table td{color:var(--muted)}
.nodes-document .route-table tbody tr:last-child th{border-bottom:0}
.nodes-chapter .panel p{color:var(--muted)}
.nodes-chapter .panel p a{color:var(--accent)}
@media(max-width:1024px){
  .nodes-opening-inner{gap:var(--space-4)}
  .nodes-type-layout{gap:var(--space-4)}
  .nodes-type-art{padding:var(--space-3)}
}
@media(max-width:768px){
  .nodes-opening{
    padding-top:var(--space-5);
    padding-bottom:var(--space-5);
  }
  .nodes-opening-inner{
    grid-template-columns:minmax(0,1fr);
    gap:var(--space-4);
  }
  .nodes-heading h1{font-size:clamp(28px,7vw,40px)}
  .nodes-intro{font-size:var(--body-size)}
  .nodes-type-layout{grid-template-columns:minmax(0,1fr)}
  .nodes-type-art{max-width:480px;width:100%}
  .nodes-use-row{
    grid-template-columns:minmax(0,1fr);
    gap:var(--space-3);
  }
  .nodes-use-heading{
    padding-right:0;
    border-right:0;
  }
  .nodes-use-heading h3{font-size:25px}
  .nodes-chapter{
    padding-top:var(--space-6);
    padding-bottom:var(--space-4);
  }
}
@media(max-width:640px){
  .nodes-actions{
    align-items:flex-start;
    flex-direction:column;
    gap:var(--space-2);
  }
  .nodes-coverage{font-size:28px}
}