/* High School pack page (rocket) — ported from the HS preview stylesheet; navy engineering-sheet language. */
.hs-status { display: inline-block; font-size: 0.68rem; font-weight: 700; letter-spacing: 0.08em; text-transform: uppercase; padding: 0.15rem 0.45rem; border: 1px solid var(--line); }
.hs-status-available { background: var(--navy); color: var(--white); border-color: var(--navy); }
.hs-status-review { background: var(--paper-dark); color: var(--navy-2); border-color: var(--navy-2); }
.hs-status-soon { background: transparent; color: var(--muted); }
.hs-cta-note { font-size: 0.82rem; color: var(--muted); font-style: italic; }
.hs-toc { display: flex; flex-wrap: wrap; gap: 0.25rem 1rem; margin-top: 1rem; padding-top: 0.75rem; border-top: 1px solid var(--line); font-size: 0.88rem; }
.hs-toc a { color: var(--accent); }
.hs-fine { font-size: 0.85rem; color: var(--muted); }
.hs-license { display: flex; flex-direction: column; }
.hs-license ul { margin: 0.25rem 0 0.75rem 1.1rem; list-style: disc; font-size: 0.9rem; }
.hs-license p { margin-bottom: 0.35rem; }
.hs-table-wrap { overflow-x: auto; border: 1px solid var(--line); background: var(--white); margin: 0.75rem 0; }
.hs-table { width: 100%; border-collapse: collapse; font-size: 0.86rem; }
.hs-table th, .hs-table td { text-align: left; padding: 0.45rem 0.6rem; border-bottom: 1px solid var(--line); vertical-align: top; }
.hs-table th { background: var(--navy); color: var(--white); font-weight: 600; white-space: nowrap; }
.hs-table tr.hs-bom-total td { font-weight: 700; background: var(--paper-dark); }
.hs-prose h2 { font-size: 1.25rem; margin: 1.25rem 0 0.5rem; }
.hs-prose h3 { font-size: 1.05rem; margin: 1rem 0 0.4rem; }
.hs-prose p { margin-bottom: 0.75rem; }
.hs-prose ul, .hs-prose ol { margin: 0 0 0.75rem 1.2rem; }
.hs-prose code { font-size: 0.9em; background: var(--paper-dark); padding: 0 0.2em; }
.hs-prose table { border-collapse: collapse; margin: 0.75rem 0; font-size: 0.88rem; }
.hs-prose th, .hs-prose td { border: 1px solid var(--line); padding: 0.35rem 0.5rem; text-align: left; }
.hs-bom-section { font-size: 1rem; margin: 1.5rem 0 0.25rem; }
.hs-adult { font-size: 0.82rem; color: var(--ink); background: #fff7e6; }
.hs-figure { margin: 1.25rem 0; background: var(--white); border: 1px solid var(--line); }
.hs-figure img { display: block; width: 100%; height: auto; }
.hs-figure figcaption { font-size: 0.82rem; color: var(--muted); padding: 0.5rem 0.75rem; border-top: 1px solid var(--line); }
.hs-buybox { margin: 1.25rem 0 0.5rem; padding: 1rem 1.1rem; background: var(--white); border: 1px solid var(--line); border-left: 3px solid var(--navy); }
.hs-buybox .price { font-size: 1.35rem; color: var(--ink); margin: 0 0 0.75rem; }
.hs-buybox .btn-row { flex-wrap: wrap; }
.hs-nft { margin: 0.75rem 0 0.4rem; padding: 0.5rem 0.75rem; background: #fff7e6; border-left: 3px solid #b7791f; color: var(--ink); font-size: 0.95rem; }
