/* Hallmark: custom scientific atlas continuation; one cutaway, one event record. */
.compact-method{font-size:var(--atlas-small);color:var(--atlas-muted);border-top:1px solid var(--atlas-rule);padding-top:12px;margin:var(--space-sm) 0 0;max-width:100%;overflow-wrap:anywhere}
.compact-method summary{cursor:pointer;min-height:36px;width:fit-content;color:var(--atlas-ink);font-weight:400}
.compact-method p{line-height:1.75;margin:12px 0;font-size:var(--atlas-small)}
.compact-method:not([open])>:not(summary){display:none!important}
.compact-method[open]>:last-child{margin-bottom:12px}
.compact-method a{color:var(--atlas-a);text-underline-offset:4px}
.geology{background:var(--atlas-ground);padding-bottom:var(--atlas-section)}
.geology-heading,.current-heading{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.6fr);gap:48px;align-items:end;margin-bottom:36px}
.geology-heading h2,.current-heading h2{font-family:var(--font-display);font-size:var(--atlas-title);letter-spacing:-.025em;font-weight:600;line-height:1.25;margin:0;min-width:0;overflow-wrap:break-word}
.geology-heading p,.current-heading p{font-size:var(--atlas-lead);line-height:1.6;margin:0;max-width:28ch;color:var(--atlas-muted)}
.geology-stage{margin:0;position:relative}
.geology-stage img{width:100%;height:auto;display:block;aspect-ratio:1817/866;object-fit:cover;background:var(--geo-studio)}
.geology-stage canvas{display:block;width:100%;height:auto;aspect-ratio:1817/866;touch-action:pan-y;cursor:grab;background:var(--atlas-ground)}
.geology-stage canvas:active{cursor:grabbing}
.geology-stage [hidden],.geology-desk [hidden]{display:none}
.geology-stage-label{position:absolute;left:24px;right:24px;top:24px;display:flex;justify-content:space-between;align-items:center;gap:12px;pointer-events:none}
.geology-stage-label span,.geology-stage-label button{pointer-events:auto;background:var(--atlas-paper);color:var(--atlas-ink);font-size:var(--atlas-small);padding:10px var(--space-sm);border:0;border-radius:var(--atlas-radius)}
.geology-stage-label button{font-size:var(--atlas-body);min-height:48px;box-shadow:var(--atlas-shadow);cursor:pointer}
.geology-stage-label button:hover{background:var(--atlas-ink);color:var(--atlas-paper)}
.geology-stage figcaption{margin:12px 0 0;font-size:var(--atlas-small);color:var(--atlas-muted);line-height:1.6}
.geology-desk{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);column-gap:48px;margin-top:32px}
.geology-steps{display:flex;flex-direction:column;align-self:start}
.geology-steps button{display:flex;align-items:center;gap:28px;min-height:66px;padding:var(--space-sm) var(--space-xs);border:0;border-top:1px solid var(--atlas-rule);background:var(--atlas-transparent);color:var(--atlas-ink);font-family:var(--font);font-size:22px;text-align:left;cursor:pointer}
.geology-steps button span{font-size:var(--atlas-small);color:var(--atlas-muted);font-variant-numeric:tabular-nums}
.geology-steps button[aria-pressed=true]{color:var(--atlas-b);background:var(--atlas-b-wash)}
.geology-steps button:hover{background:var(--atlas-panel)}
.geology-readout{display:flex;justify-content:space-between;gap:var(--space-md);align-items:center;margin-bottom:20px}
.geology-readout strong{font-size:24px;font-weight:600}
.geology-readout>span{font-size:32px;font-variant-numeric:tabular-nums}
.geology-live label{font-size:var(--atlas-small);color:var(--atlas-muted)}
.geology-live input{display:block;width:100%;accent-color:var(--atlas-a);min-height:32px}
.geology-actions{display:flex;gap:20px;align-items:center;margin:12px 0}
.geology-actions button{white-space:nowrap;min-height:48px}
.geology-actions #geology-reset{border:0;border-bottom:1px solid var(--atlas-muted);background:var(--atlas-transparent);font-family:var(--font);font-size:var(--atlas-small);color:var(--atlas-ink);cursor:pointer}
#arrival-state{font-size:var(--atlas-small);line-height:1.6;margin:12px 0;color:var(--atlas-muted)}
.geology-bottom{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);gap:var(--space-md) 48px;border-top:1px solid var(--atlas-rule);margin-top:36px;padding-top:28px}
.geology-bottom h3{font-size:28px;line-height:1.4;font-weight:600;margin:0 0 12px}
.geology-bottom p{font-size:var(--atlas-small);line-height:1.75;color:var(--atlas-muted);max-width:50ch;margin:0}
.arrival-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px;margin:0}
.arrival-pair dt{font-size:var(--atlas-small);color:var(--atlas-muted)}
.arrival-pair dd{font-size:clamp(30px,3.5vw,50px);font-variant-numeric:tabular-nums;margin:var(--space-xs) 0 0;color:var(--atlas-a)}
.arrival-pair>div:last-child dd{color:var(--atlas-b)}
.geology-bottom>.compact-method{grid-column:1/-1}
.current-events{background:var(--atlas-paper)}
.current-layout{display:grid;grid-template-columns:minmax(0,.75fr) minmax(0,1.4fr);gap:clamp(28px,5vw,80px)}
.event-ledger{display:flex;flex-direction:column}
.event-ledger button{display:grid;grid-template-columns:60px minmax(0,1fr) 56px;align-items:center;gap:var(--space-sm);min-height:90px;padding:20px var(--space-xs);border:0;border-top:1px solid var(--atlas-rule);background:var(--atlas-transparent);color:var(--atlas-ink);text-align:left;font-family:var(--font);cursor:pointer}
.event-ledger button strong{font-weight:400;font-size:20px;line-height:1.5}
.event-ledger button span{font-size:var(--atlas-small);font-variant-numeric:tabular-nums}
.event-ledger button[aria-pressed=true]{border-top-color:var(--atlas-a);background:var(--atlas-a-wash)}
.event-ledger button:hover{background:var(--atlas-panel)}
.current-record{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:var(--space-md);align-content:start;min-width:0}
.record-identity>span{font-size:var(--atlas-small);color:var(--atlas-muted);font-variant-numeric:tabular-nums}
.record-identity h3{font-family:var(--font-display);font-size:32px;line-height:1.4;font-weight:600;margin:var(--space-xs) 0;min-width:0;overflow-wrap:break-word}
.record-identity p{font-size:var(--atlas-small);margin:0;color:var(--atlas-muted)}
.current-magnitude{display:flex;flex-direction:column;align-items:end;gap:var(--space-xs);line-height:1}
.current-magnitude strong{font-size:80px;font-weight:400;font-variant-numeric:tabular-nums;letter-spacing:-.05em}
.current-magnitude span{font-size:var(--atlas-small);color:var(--atlas-muted)}
.current-fields{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-md);margin:28px 0 0;padding-top:20px;border-top:1px solid var(--atlas-rule)}
.current-fields dt{font-size:var(--atlas-small);color:var(--atlas-muted)}
.current-fields dd{margin:var(--space-xs) 0 0;font-size:24px;font-variant-numeric:tabular-nums}
.current-cross-section{grid-column:1/-1;margin-top:var(--space-md);background:var(--atlas-ground)}
.current-cross-section svg{display:block;width:100%;height:180px}
.current-cross-section text{font-family:var(--font);font-size:16px;fill:var(--atlas-muted)}
.earth-line{stroke:var(--atlas-ink);stroke-width:1}
.depth-tick{stroke:var(--atlas-muted);stroke-width:1;stroke-dasharray:3 4}
.depth-dot{stroke:var(--atlas-b);stroke-width:3}
.current-context{grid-column:1/-1;margin-top:var(--space-md)}
.current-context h4{font-size:22px;font-weight:600;margin:0 0 10px}
.current-context p{font-size:var(--atlas-body);line-height:1.75;max-width:52ch;margin:0 0 12px;color:var(--atlas-muted)}
.current-context a,.current-footer>a{font-size:var(--atlas-small);color:var(--atlas-a);text-underline-offset:5px}
.current-record>.compact-method{grid-column:1/-1}
.current-footer{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:20px;margin-top:var(--space-lg);padding-top:var(--space-md);border-top:1px solid var(--atlas-rule);align-items:center}
.current-footer>p{font-size:22px;margin:0;line-height:1.5}
.current-footer>.compact-method{grid-column:1/-1;margin:0}
.geology :is(button,canvas,input,a,summary):focus-visible,.current-events :is(button,a,summary):focus-visible,.compact-method summary:focus-visible{outline:3px solid var(--atlas-focus);outline-offset:4px;transition:none}
.geology button:disabled{opacity:.6;cursor:not-allowed;filter:grayscale(1)}
@media(max-width:1000px){.geology-heading,.current-heading{gap:var(--space-md)}.current-layout{grid-template-columns:minmax(0,1fr)}.event-ledger{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 20px}.current-record{max-width:920px;width:100%}}
@media(max-width:767px){.geology-heading,.current-heading{grid-template-columns:minmax(0,1fr);gap:18px;margin-bottom:var(--space-md)}.geology-heading p,.current-heading p{font-size:18px;max-width:34ch}.geology-stage{margin-inline:-20px}.geology-stage-label{left:20px;right:20px;top:16px}.geology-stage-label span{font-size:14px;padding:var(--space-xs) 10px}.geology-stage-label button{font-size:16px;min-height:44px;padding:var(--space-xs) 12px}.geology-stage img{aspect-ratio:1.4;object-fit:cover}.geology-stage canvas{aspect-ratio:1.2}.geology-stage figcaption{padding-inline:20px;font-size:14px}.geology-desk,.geology-bottom{grid-template-columns:minmax(0,1fr);gap:var(--space-md)}.geology-steps{flex-direction:row;gap:12px}.geology-steps button{flex:1;display:flex;flex-direction:column;gap:var(--space-xs);font-size:16px;padding:12px 4px;text-align:center;min-height:80px}.geology-bottom h3{font-size:26px}.arrival-pair dd{font-size:38px}.event-ledger{display:flex;gap:0}.event-ledger button{min-height:70px;grid-template-columns:60px minmax(0,1fr) 50px;gap:10px}.event-ledger button strong{font-size:18px}.record-identity h3{font-size:26px}.current-magnitude strong{font-size:62px}.current-fields{gap:12px}.current-fields dd{font-size:20px}.current-fields dt,.current-magnitude span{font-size:14px}.current-footer{grid-template-columns:minmax(0,1fr)}.current-footer>p{font-size:20px}.current-record{margin-top:var(--space-xs)}.geology-readout strong{font-size:22px}}
@media(prefers-reduced-motion:reduce){.geology *,.current-events *{scroll-behavior:auto;animation:none;transition:none}}
.terrain-cinema{background:var(--atlas-paper)}
.terrain-view{position:relative;margin:0;background:var(--terrain-night);color:var(--atlas-light)}
.terrain-view>img,.terrain-view>canvas{display:block;width:100%;height:clamp(480px,48vw,800px);object-fit:cover;cursor:grab;touch-action:pan-y}
.terrain-view [hidden]{display:none!important}
.terrain-top{position:absolute;inset:24px 24px auto;display:flex;justify-content:space-between;align-items:start;gap:var(--space-md);pointer-events:none}
.terrain-top>div{display:flex;flex-direction:column;gap:var(--space-xs)}
.terrain-top strong{font-size:22px;font-weight:400}
.terrain-top span{font-size:var(--atlas-small)}
.terrain-top button{pointer-events:auto;background:var(--atlas-light);color:var(--atlas-ink);min-height:48px;white-space:nowrap}
#terrain-controls{position:absolute;left:24px;right:24px;bottom:24px;display:flex;justify-content:space-between;align-items:end;gap:20px;flex-wrap:wrap}
.terrain-case,.terrain-operations{display:flex;gap:var(--space-xs);align-items:center;flex-wrap:wrap}
.terrain-view button,.terrain-operations label{border:1px solid var(--atlas-soft-light);background:var(--terrain-night);color:var(--atlas-light);padding:10px 14px;font-size:var(--atlas-small);line-height:1.5;border-radius:var(--atlas-radius);white-space:nowrap}
.terrain-view button:hover{background:var(--atlas-light);color:var(--atlas-ink)}
.terrain-case button[aria-pressed=true]{background:var(--atlas-light);color:var(--atlas-ink)}
.terrain-operations label{display:flex;align-items:center;padding:0 10px;gap:var(--space-xs);min-height:46px}
.terrain-operations select{background:var(--terrain-night);color:var(--atlas-light);border:0;min-height:42px;font-size:var(--atlas-small);padding:0 2px}
.terrain-view :is(button,canvas,select):focus-visible{outline:3px solid var(--terrain-marker);outline-offset:4px;transition:none}
#terrain-status{font-size:var(--atlas-small);color:var(--atlas-muted);margin:12px 0 0;line-height:1.6}
.mechanism-film-link{grid-column:1/-1}.mechanism-film-link a{color:var(--atlas-a);text-underline-offset:4px;font-size:var(--atlas-small)}
#geology-wave-legend{margin-left:auto}.wave-p{color:var(--atlas-a);font-weight:400}.wave-s{color:var(--atlas-b);font-weight:400}
@media(max-width:767px){.terrain-view{margin-inline:-20px}.terrain-view>img,.terrain-view>canvas{height:560px}.terrain-top{inset:20px 20px auto;gap:12px}.terrain-top strong{font-size:18px}.terrain-top button{font-size:16px;padding:10px 12px}.terrain-top span{font-size:14px}#terrain-controls{left:20px;right:20px;bottom:20px;gap:12px;display:grid;grid-template-columns:minmax(0,1fr)}.terrain-view button,.terrain-operations label{font-size:14px;padding:10px 12px}.terrain-operations{gap:var(--space-xs)}.terrain-operations label{padding:0 10px}.terrain-operations select{font-size:14px}.terrain-case button{min-width:90px}}
@media(prefers-reduced-motion:reduce){.terrain-cinema *{scroll-behavior:auto;transition:none;animation:none}}

/* Review: an anchored screen label keeps the epicentre readable at every terrain scale. */
#terrain-marker-label{position:absolute;z-index:1;transform:translate(-50%,-160%);padding:3px 10px;background:var(--terrain-night);color:var(--atlas-light);border:1px solid var(--terrain-marker);font-size:16px;pointer-events:none;line-height:1.5}
#terrain-marker-label::after{content:"";position:absolute;left:50%;top:100%;width:1px;height:22px;background:var(--terrain-marker)}
.terrain-north{position:absolute;top:100px;right:28px;display:flex;flex-direction:column;align-items:center;gap:3px;font-size:16px;pointer-events:none}
#terrain-north-arrow{display:block;font-size:30px;line-height:1}
@media(max-width:767px){.terrain-view>img,.terrain-view>canvas{height:400px}#terrain-controls{position:static;padding:18px 20px 20px;display:grid;gap:12px}.terrain-north{top:90px;right:24px}.terrain-view button,.terrain-operations label,.terrain-operations select{font-size:16px}}
