.viewing-intro{
  position:relative;
  isolation:isolate;
  overflow-x:clip;
  max-width:100%;
  background:linear-gradient(180deg,var(--bg-top),var(--bg-bottom));
}
.viewing-intro::before{
  content:"";
  position:absolute;
  z-index:-1;
  inset:0;
  background-image:radial-gradient(circle,var(--dot) 1px,var(--transparent) 1.4px);
  background-size:20px 20px;
  pointer-events:none;
}
.viewing-intro::after{
  content:"";
  position:absolute;
  z-index:-1;
  inset:12% 0 8% 65%;
  background:linear-gradient(135deg,var(--accent),var(--teal));
  opacity:.07;
  filter:blur(64px);
  border-radius:var(--radius-round);
  pointer-events:none;
}
.viewing-heading{
  max-width:900px;
}
.viewing-heading h1{
  margin:24px 0;
  letter-spacing:-.02em;
}
.viewing-lead{
  max-width:38em;
  font-size:18px;
  color:var(--muted);
}
.viewing-facts{
  display:flex;
  flex-wrap:wrap;
  gap:12px 24px;
  margin-top:28px;
  padding-top:20px;
  border-top:1px solid var(--border);
  font-size:14px;
  font-weight:700;
}
.viewing-guide section{
  padding-bottom:16px;
}
.viewing-guide .data-table{
  min-width:820px;
}
.viewing-guide caption{
  padding:14px 18px;
  text-align:left;
  color:var(--muted);
  background:var(--panel);
  font-size:13px;
}
.viewing-guide .data-table tbody th{
  background:var(--groove-soft);
}
.viewing-guide .data-table td{
  white-space:normal;
}
.viewing-guide .data-table tr:last-child th{
  border-bottom:0;
}
.viewing-guide .plan-note{
  line-height:1.7;
}
.viewing-next{
  margin-top:32px;
  padding:24px;
  border:1px solid var(--border);
  border-radius:var(--radius-l);
  background:var(--panel);
  box-shadow:inset 0 1px 0 var(--hi-line),0 24px 48px -28px var(--shadow-tint-strong);
}
.viewing-next h3{
  margin-top:0;
}
.viewing-next p{
  color:var(--muted);
}
.viewing-links{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  margin-top:20px;
}
.viewing-guide .viewing-links a{
  text-decoration:none;
  color:var(--text);
}
@media(max-width:640px){
  .viewing-lead{
    font-size:16px;
  }
  .viewing-facts{
    gap:12px;
    flex-direction:column;
  }
  .viewing-next{
    padding:20px;
  }
  .viewing-links .btn{
    flex:1 1 140px;
    padding-inline:16px;
  }
}