#geology-listen { scroll-margin-top: 8rem; }
.toast:empty { visibility: hidden; }
.geo-intro { margin-top: 1rem; }
.geo-player { margin-top: 2rem; padding: clamp(1.2rem, 4vw, 2rem); background: var(--ink-2); border: 1px solid var(--rule); }
.geo-player audio { width: 100%; margin-bottom: 1rem; }
.geo-player audio[hidden], .geo-controls[hidden] { display: none; }
.geo-control-row { display: flex; align-items: center; justify-content: space-between; gap: 1rem; flex-wrap: wrap; }
.geo-controls button { min-height: 44px; touch-action: manipulation; }
.geo-time { font-family: var(--mono); font-size: .75rem; color: var(--bone-dim); font-variant-numeric: tabular-nums; }
.geo-controls input[type=range] { width: 100%; min-height: 44px; accent-color: var(--gold); margin: .5rem 0; cursor: pointer; }
.geo-controls select { color: var(--bone); background: var(--ink); border: 1px solid var(--rule); padding: .5rem; min-height: 44px; }
.geo-chapters { display: grid; gap: .4rem; margin: 1.5rem 0; }
.geo-chapters button { display: grid; grid-template-columns: 2rem minmax(0, 1fr) auto; gap: .5rem; width: 100%; padding: .85rem; background: transparent; border: 1px solid var(--rule); color: var(--bone); text-align: left; font: inherit; font-size: .9rem; cursor: pointer; }
.geo-chapters button[aria-current=true] { border-color: var(--gold); background: var(--gold-wash); }
.geo-number { color: var(--gold); font-family: var(--mono); }
.geo-controls :focus-visible { outline: 2px solid var(--gold); outline-offset: 3px; }
.geo-disclosure { margin-top: 1rem; }
[data-geology-error]:empty { display: none; }
.geo-transcript { margin-top: 1.5rem; }
.geo-transcript summary { cursor: pointer; padding: 1rem 0; color: var(--gold); }
.geo-transcript-chapter { padding: 1.5rem 0; border-top: 1px solid var(--rule); }
.geo-transcript-chapter h3 { margin-bottom: 1rem; }
@media (max-width: 450px) { .geo-chapters button { grid-template-columns: 1.5rem minmax(0,1fr); } .geo-chapters .geo-time { grid-column: 2; } }
