/* SANP Transcript Archive — styles are scoped to .sanp so they sit inside any theme. */
.sanp{
  --sanp-sheet:#f8f9f6; --sanp-paper:#eef0ec; --sanp-ink:#000000; --sanp-muted:#000000; --sanp-rule:#cfd5ce;
  --sanp-bronze:#8f5f26; --sanp-bronze-soft:#efe3d1; --sanp-verdigris:#2d6a5d; --sanp-verd-soft:#dbe9e4; --sanp-gold:#b8860b;
  --sanp-display:"Marcellus","Trajan Pro",Georgia,serif;
  --sanp-serif:"Source Serif 4",Georgia,"Times New Roman",serif;
  --sanp-sans:"IBM Plex Sans",system-ui,-apple-system,"Segoe UI",sans-serif;
  --sanp-mono:"IBM Plex Mono",ui-monospace,Menlo,Consolas,monospace;
  color:var(--sanp-ink); font-family:var(--sanp-sans); font-size:15px; line-height:1.5;
}
.sanp *,.sanp *::before,.sanp *::after{box-sizing:border-box}
.sanp :focus-visible{outline:2px solid var(--sanp-bronze);outline-offset:2px}
.sanp a{color:var(--sanp-ink)}
.sanp-label{font-family:var(--sanp-mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--sanp-muted)}
.sanp-hint{font-size:13px;color:var(--sanp-muted)}

/* seal + masthead */
.sanp-seal{width:132px;height:132px;flex:none;color:var(--sanp-gold)}
.sanp-seal text{font-family:var(--sanp-display);fill:var(--sanp-ink)}
.sanp-seal-only{display:inline-block;line-height:0}
.sanp-mast{margin:0 0 24px}
.sanp-mast-inner{display:flex;gap:28px;align-items:center;flex-wrap:wrap}
.sanp-mast-text{flex:1 1 300px;min-width:0}
.sanp .sanp-title{font-family:var(--sanp-display);font-weight:400;font-size:clamp(28px,4.4vw,44px);line-height:1.05;margin:4px 0 0;letter-spacing:.02em;text-wrap:balance;color:var(--sanp-ink)}
.sanp-mast p{margin:10px 0 0;color:var(--sanp-muted);max-width:56ch;font-family:var(--sanp-serif);font-size:17px}
.sanp-reeding{height:7px;margin-top:24px;background:repeating-linear-gradient(90deg,var(--sanp-bronze) 0 1.5px,transparent 1.5px 5px);opacity:.55}

/* buttons + inputs */
.sanp .sanp-btn{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--sanp-rule);background:var(--sanp-sheet);color:var(--sanp-ink);padding:9px 16px;border-radius:3px;cursor:pointer;font:500 14px/1.2 var(--sanp-sans);text-decoration:none}
.sanp .sanp-btn:hover{border-color:var(--sanp-bronze)}
.sanp .sanp-primary{background:var(--sanp-gold);border-color:var(--sanp-gold);color:var(--sanp-ink)}
.sanp input[type=search],.sanp select{border:1px solid var(--sanp-rule);background:var(--sanp-sheet);color:var(--sanp-ink);border-radius:3px;padding:9px 11px;width:100%;font:15px var(--sanp-sans);margin:0}

/* catalogue */
.sanp-tools{display:grid;grid-template-columns:minmax(0,1fr) 200px 190px auto;gap:10px;align-items:end;margin:0}
@media (max-width:760px){.sanp-tools{grid-template-columns:1fr 1fr}.sanp-tools .sanp-search{grid-column:1/-1}}
.sanp-field{display:flex;flex-direction:column;gap:4px;min-width:0;margin:0}
.sanp-chips,.sanp-pager{display:flex;gap:6px;flex-wrap:wrap;margin-top:14px}
.sanp .sanp-chip{border:1px solid var(--sanp-rule);border-radius:999px;padding:4px 12px;font-size:13px;color:var(--sanp-muted);text-decoration:none}
.sanp .sanp-chip[aria-current="true"],.sanp .sanp-chip[aria-current="page"]{background:var(--sanp-verd-soft);border-color:var(--sanp-verdigris);color:var(--sanp-ink)}
.sanp-summary{display:flex;gap:24px;flex-wrap:wrap;margin-top:22px;padding:10px 0;border-top:1px solid var(--sanp-rule);border-bottom:1px solid var(--sanp-rule)}
.sanp-summary b{font-family:var(--sanp-display);font-weight:400;font-size:22px;display:block;line-height:1.1}
.sanp-ledger{list-style:none;margin:0;padding:0}
.sanp-ledger li{border-bottom:1px solid var(--sanp-rule);margin:0}
.sanp .sanp-entry{display:grid;grid-template-columns:150px minmax(0,1fr) 60px 150px;gap:16px;align-items:baseline;padding:16px 4px;text-decoration:none;color:inherit}
.sanp .sanp-entry:hover{background:var(--sanp-sheet)}
.sanp-acc{font-family:var(--sanp-mono);font-size:12px;color:var(--sanp-ink)}
.sanp-body{display:flex;flex-direction:column;min-width:0}
.sanp-entry-title{font-family:var(--sanp-serif);font-weight:600;font-size:18px;line-height:1.3}
.sanp-meta{color:var(--sanp-muted);font-size:13px;margin-top:3px}
.sanp-snip{font-family:var(--sanp-serif);font-size:14px;color:var(--sanp-muted);margin-top:6px}
.sanp-yr{font-family:var(--sanp-mono);font-size:14px;font-variant-numeric:tabular-nums}
.sanp-period{display:inline-block;font-size:11px;letter-spacing:.06em;text-transform:uppercase;padding:2px 8px;border-radius:2px;background:var(--sanp-bronze-soft);color:var(--sanp-ink);font-weight:600;justify-self:start}
@media (max-width:720px){.sanp .sanp-entry{grid-template-columns:1fr auto;gap:4px 12px}.sanp-entry .sanp-yr{grid-column:2;grid-row:1;text-align:right}.sanp-entry .sanp-body,.sanp-entry .sanp-period{grid-column:1/-1}}
.sanp mark{background:var(--sanp-bronze-soft);color:var(--sanp-ink);padding:0 1px}
.sanp-empty{padding:32px 0;max-width:60ch}
.sanp-empty h3{font-family:var(--sanp-display);font-weight:400;font-size:26px;margin:0 0 10px}
.sanp-empty p{font-family:var(--sanp-serif);font-size:17px;color:var(--sanp-muted)}

/* reading room */
.sanp-room{display:grid;grid-template-columns:280px minmax(0,1fr);gap:40px;align-items:start}
@media (max-width:860px){.sanp-room{grid-template-columns:minmax(0,1fr)}}
.sanp-card{background:var(--sanp-sheet);border:1px solid var(--sanp-rule);border-radius:3px;padding:18px;position:sticky;top:24px}
@media (max-width:860px){.sanp-card{position:static}}
.sanp-card dl{display:grid;gap:10px;margin:14px 0}
.sanp-card dt{font-family:var(--sanp-mono);font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--sanp-muted)}
.sanp-card dd{margin:1px 0 0;font-size:14px;overflow-wrap:anywhere}
.sanp-cite{font-family:var(--sanp-serif);font-size:13.5px;background:var(--sanp-paper);border:1px solid var(--sanp-rule);padding:10px;border-radius:3px;margin-top:6px;user-select:all}
.sanp-reader{min-width:0}
.sanp-by{font-family:var(--sanp-serif);font-style:italic;color:var(--sanp-muted);font-size:17px}
.sanp-summary-line{font-family:var(--sanp-serif);font-size:17px;color:var(--sanp-muted);max-width:66ch}
.sanp-findbar{display:flex;gap:10px;align-items:center;margin:18px 0 6px;flex-wrap:wrap}
.sanp-findbar input{max-width:280px}
.sanp-transcript{font-family:var(--sanp-serif);font-size:18px;line-height:1.72;max-width:66ch;margin-top:18px}
.sanp-transcript p{margin:0 0 1em}
.sanp-transcript h2,.sanp-transcript h3,.sanp-transcript h4{font-family:var(--sanp-display);font-weight:400;margin:1.6em 0 .5em}
.sanp-pg{display:flex;align-items:center;gap:10px;margin:1.6em 0 1em;font-family:var(--sanp-mono);font-size:11px;letter-spacing:.14em;color:var(--sanp-ink);text-transform:uppercase}
.sanp-pg::before,.sanp-pg::after{content:"";height:1px;background:var(--sanp-rule);flex:1}
.sanp-notes{border-left:2px solid var(--sanp-verdigris);padding:6px 0 6px 14px;margin-top:22px;color:var(--sanp-muted);font-size:14px;max-width:66ch}
