.passage-nav{border-bottom:1px solid var(--line);gap:32px;padding-block:12px}.passage-nav a{gap:10px;color:var(--muted)}.passage-nav a[aria-current=page]{color:var(--mint)}.passage-nav small{font-size:.75rem}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.flap-controls{display:flex;flex-wrap:wrap;gap:8px 20px;align-items:center;padding-block:12px;font-size:.75rem;color:var(--muted)}.flap-controls>span{margin-right:auto}.flap-controls button{font:inherit;color:var(--ink);border:0;border-bottom:1px solid var(--line);background:none;padding:8px 0;min-height:44px;cursor:pointer}.flap-controls button:hover{color:var(--mint)}.flap-controls [hidden]{display:none}
.passage-intro{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:end;padding-block:64px 48px}.passage-intro h1{margin:0}.passage-intro .lede{margin-bottom:0}.passage-meta{display:flex;flex-wrap:wrap;gap:16px 48px;font-size:.875rem;color:var(--muted);margin-bottom:32px}.passage-meta strong{display:block;color:var(--ink);font-family:var(--mono);font-weight:400;margin-top:4px}.passage-display{max-width:850px;margin-bottom:48px}.passage-display .cipher{font-size:clamp(.95rem,2.6vw,1.65rem);grid-template-columns:repeat(28,1fr)}.solution-text{font-size:clamp(1.15rem,2vw,1.5rem);line-height:1.75;max-width:62ch}.solution-text p{margin-bottom:1.5rem}.transcription-note{font-size:.875rem;color:var(--muted);max-width:74ch}.method{max-width:74ch}.method li{padding-left:8px;margin-bottom:12px}.raw-text{font:400 .85rem/1.8 var(--mono);overflow-wrap:anywhere;max-width:90ch}.source-links{display:flex;gap:24px;flex-wrap:wrap}.source-links a{min-height:44px;display:inline-flex;align-items:center;font-size:.875rem}.passage-next{display:flex;justify-content:space-between;gap:20px}.passage-next a{min-height:44px;display:flex;align-items:center}
@media(max-width:700px){.passage-nav{gap:22px}.passage-nav small{display:none}.passage-intro{grid-template-columns:1fr;gap:24px;padding-block:40px 32px}.passage-meta{gap:16px 28px}.passage-display .cipher{grid-template-columns:repeat(14,1fr);font-size:1.12rem}.passage-next{flex-wrap:wrap}}
