/* MB42 R3 uses the established dossier palette and 92% reading frame. */
.h42-section,.h42-guide{--map-paper:#fffdf8;--map-ink:#302721;--map-muted:#715c49;--map-line:#ddcdb5;--map-accent:#7d1828;box-sizing:border-box;color:var(--map-ink)}
.h42-section{width:92%;max-width:none;margin:0 auto;padding:38px 0 30px;scroll-margin-top:30px}
.h42-section *,.h42-guide *{box-sizing:border-box}.h42-section h2{font:700 clamp(1.9rem,3vw,2.8rem)/1.15 Georgia,serif;margin:.3em 0 .6em}.h42-section h3{font:700 1.55rem/1.3 Georgia,serif}.h42-section .eyebrow,.h42-guide .eyebrow{color:var(--map-accent)}
.h42-guide{width:92%;margin:24px auto 0;padding:22px 24px;border:1px solid var(--map-line);border-radius:12px;background:var(--map-paper)}
.h42-guide-links{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.h42-guide-links a{padding:10px 14px;border:1px solid var(--map-line);border-radius:8px;text-decoration:none;color:var(--map-accent);line-height:1.4}.h42-guide-links a:first-child{background:var(--map-accent);color:#fff7e5;border-color:var(--map-accent)}
.h42-guide>details{margin-top:18px;border-top:1px solid var(--map-line);padding-top:16px}.h42-guide summary{cursor:pointer;font-weight:700;min-height:30px}.h42-guide-fields{display:grid;grid-template-columns:1.5fr 1fr auto;gap:14px;margin-top:18px;align-items:end}.h42-guide label,.h42-filters label{display:grid;gap:7px;min-width:0;font-size:.85rem;font-weight:700}
.h42-guide input,.h42-guide select,.h42-guide button,.h42-section input[type=search],.h42-section select,.h42-section button,.h42-section .h42-action{font:inherit;color:var(--map-ink);background:var(--map-paper);border:1px solid var(--map-line);border-radius:8px;min-height:44px;padding:10px 13px;max-width:100%;cursor:pointer}
.h42-guide input,.h42-section input[type=search]{cursor:text}.h42-guide select,.h42-filters select{width:100%}.h42-search-results{display:grid;grid-template-columns:1fr 1fr;gap:12px 28px;max-height:350px;overflow:auto;padding:8px 22px;margin-bottom:0}.h42-search-results:empty{display:none}.h42-search-results a{line-height:1.6;color:var(--map-accent)}
.h42-guide-status{font-size:.84rem;line-height:1.6;margin:12px 0 0!important;color:var(--map-muted)}
.h42-map-panel{border:1px solid var(--map-line);border-radius:16px;background:var(--map-paper);overflow:hidden;box-shadow:0 9px 28px rgba(79,43,19,.045)}
.h42-map-intro{max-width:1100px;line-height:1.8}.h42-filters{display:grid;grid-template-columns:minmax(180px,1.2fr) minmax(220px,1.5fr) minmax(120px,.8fr) auto;gap:13px;padding:20px;border-bottom:1px solid var(--map-line);align-items:end}
.h42-map-grid{display:grid;grid-template-columns:minmax(0,2.25fr) minmax(285px,1fr);gap:0;align-items:start}
.h42-map-visual{min-width:0;border-right:1px solid var(--map-line)}.h42-map-toolbar{display:flex;flex-wrap:wrap;gap:8px;align-items:center;padding:12px 16px}.h42-map-toolbar .h42-zoom{font-size:1.1rem;min-width:44px;padding:7px 12px}.h42-map-toolbar button[aria-pressed=true]{background:#f4e6c8;border-color:#a17c39}
.h42-map-stage{position:relative;background:#cbdede;overflow:hidden;border-top:1px solid var(--map-line);border-bottom:1px solid var(--map-line)}
.h42-map-stage svg{display:block;width:100%;height:clamp(380px,40vw,600px);touch-action:pan-y;cursor:grab;user-select:none}.h42-map-stage svg:active{cursor:grabbing}.h42-map-stage svg [role=button]{cursor:pointer;outline:none}.h42-map-stage svg [role=button]:focus-visible>rect{stroke:#d2961e;stroke-width:3}.h42-map-stage svg:focus-visible{outline:3px solid #a17c39;outline-offset:-3px}
.h42-north{position:absolute;right:16px;top:14px;display:grid;place-items:center;pointer-events:none;background:#fff8e6e8;color:#4b3825;border:1px solid #b09055;width:38px;height:49px;line-height:1;font:700 14px Georgia,serif;border-radius:6px}.h42-north span{font-size:21px}
.h42-legend{display:flex;flex-wrap:wrap;gap:9px 17px;padding:12px 18px;font-size:.78rem;line-height:1.6}.h42-legend span{display:inline-flex;gap:6px;align-items:center}.h42-legend svg{display:block;width:23px;height:23px;flex-shrink:0;color:var(--map-accent)}
.h42-visibility{display:flex;flex-wrap:wrap;gap:16px;padding:0 18px 14px;font-size:.85rem}.h42-visibility label{display:flex;gap:7px;align-items:center;cursor:pointer}.h42-visibility input{width:18px;height:18px;accent-color:var(--map-accent)}
.h42-timeline-controls{display:grid;grid-template-columns:44px minmax(0,1fr) 44px;gap:10px;padding:0;align-items:center}.h42-timeline-controls>div{min-width:0;text-align:center}.h42-timeline-controls strong{font-size:.88rem;display:block;margin-bottom:6px}.h42-timeline-controls input{display:block;width:100%;height:26px;accent-color:var(--map-accent)}.h42-timeline-controls button{padding:9px}
.h42-map-aside{min-width:0;display:grid;grid-template-rows:minmax(0,1fr) 220px;height:calc(clamp(380px,40vw,600px) + 210px)}.h42-map-detail{overflow:auto;min-height:0;padding:23px 24px;line-height:1.75}.h42-map-detail h3{margin:10px 0 8px}.h42-map-detail p{line-height:1.75;margin:0 0 15px}.h42-date{font-weight:700;color:var(--map-accent)}.h42-note{font-size:.8rem;color:var(--map-muted)}
.h42-reading-links{display:flex;flex-direction:column;gap:10px;margin:18px 0}.h42-reading-links a{color:var(--map-accent);font-size:.88rem;text-decoration:none;line-height:1.6}.h42-reading-links a:first-child{font-weight:700}.h42-reading-links a:hover{text-decoration:underline}
.h42-evidence{margin-top:20px;padding-top:16px;border-top:1px solid var(--map-line);font-size:.83rem}.h42-evidence summary{cursor:pointer;font-weight:700}.h42-evidence ol{padding-left:20px}.h42-evidence li{margin:14px 0}.h42-evidence p{margin:7px 0}.h42-bibliography{display:block;overflow-wrap:anywhere;font-size:.74rem;color:var(--map-muted)}
.h42-related{border-top:1px solid var(--map-line);margin-top:18px;padding-top:14px}.h42-related h4{font-size:.85rem;margin:0 0 10px}.h42-related button{display:block;width:100%;text-align:left;margin:7px 0;font-size:.8rem;line-height:1.5}.h42-related button[aria-pressed=true]{border-color:var(--map-accent);font-weight:700}
.h42-map-list{max-height:310px;overflow:auto;border-top:1px solid var(--map-line);padding:10px 12px;scrollbar-width:thin}.h42-map-list>button{display:flex;align-items:center;gap:10px;width:100%;text-align:left;border:1px solid transparent;background:transparent;padding:10px 8px;margin:2px 0;line-height:1.4}.h42-map-list>button[aria-pressed=true]{border-color:var(--map-accent);background:#f8efdc}.h42-map-list small{display:block;font-size:.77rem;margin-top:3px;color:var(--map-muted)}.h42-map-list strong{font-size:.9rem}.h42-record-symbol{display:grid;place-items:center;color:var(--mark);background:#fff7e4;min-width:35px;height:35px;border:1px solid currentColor;border-radius:7px}.h42-record-symbol svg{width:24px;height:24px}
.h42-map-foot{padding:16px 20px;border-top:1px solid var(--map-line)}.h42-map-status{font-size:.84rem;font-weight:700;color:var(--map-accent);margin:0 0 9px!important}.h42-map-period-note{font-size:.9rem;line-height:1.7;margin:0 0 12px!important}.h42-map-foot-actions{display:flex;flex-wrap:wrap;gap:9px;align-items:center}.h42-map-foot-actions a{padding:10px 13px;color:var(--map-accent);font-size:.86rem}.h42-map-foot-actions button{font-size:.86rem}.h42-map-instructions{font-size:.78rem;color:var(--map-muted);line-height:1.6;margin:12px 0 0!important}
.h42-map-notes{margin-top:18px;border:1px solid var(--map-line);border-radius:10px;padding:18px 22px;background:var(--map-paper)}.h42-map-notes>summary{font-weight:700;cursor:pointer;line-height:1.5}.h42-map-notes p,.h42-map-notes li{font-size:.88rem;line-height:1.8}.h42-map-notes li{margin:12px 0}.h42-records{display:grid;grid-template-columns:1fr 1fr;gap:8px 30px;padding-left:22px}.h42-records a{color:var(--map-accent)}
.h42-map-questions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:22px}.h42-map-questions article{padding:23px;border:1px solid var(--map-line);border-radius:12px;background:var(--map-paper)}.h42-map-questions h3{font-size:1.3rem}.h42-map-questions p{font-size:.95rem;line-height:1.8;margin-bottom:0}
.h42-map-expanded .h42-map-grid{grid-template-columns:1fr}.h42-map-expanded .h42-map-visual{border-right:0}.h42-map-expanded .h42-map-stage svg{height:min(75vh,850px);min-height:480px}.h42-map-expanded .h42-map-aside{height:auto;grid-template-rows:auto;display:grid;grid-template-columns:2fr 1fr;border-top:1px solid var(--map-line)}.h42-map-expanded .h42-map-list{max-height:450px;border-top:0;border-left:1px solid var(--map-line)}
.h42-section button:disabled{opacity:.48;cursor:default}.h42-section button:focus-visible,.h42-section a:focus-visible,.h42-section summary:focus-visible,.h42-guide a:focus-visible,.h42-guide button:focus-visible{outline:3px solid #a78039;outline-offset:3px}.h42-section [hidden]{display:none!important}
body.dark .h42-section,body.dark .h42-guide{--map-paper:#25262b;--map-ink:#ede4d8;--map-muted:#c8b89f;--map-line:#514838;--map-accent:#e5bc77}body.dark .h42-map-list>button[aria-pressed=true],body.dark .h42-map-toolbar button[aria-pressed=true]{background:#3f3729}body.dark .h42-guide-links a:first-child{color:#281d12}body.dark .h42-map-stage{color:#302721}
@media(max-width:1100px){.h42-map-grid{grid-template-columns:1fr}.h42-map-visual{border-right:0}.h42-map-aside{height:auto;grid-template-rows:auto;display:grid;grid-template-columns:1.6fr 1fr;border-top:1px solid var(--map-line)}.h42-map-list{border-top:0;border-left:1px solid var(--map-line);max-height:470px}.h42-filters{grid-template-columns:1fr 1fr}.h42-map-questions{grid-template-columns:1fr}.h42-guide-fields{grid-template-columns:1fr 1fr}.h42-guide-fields>button{justify-self:start}.h42-map-stage svg{height:480px}}
@media(max-width:600px){.h42-guide{padding:18px}.h42-guide-fields,.h42-search-results,.h42-map-aside,.h42-map-expanded .h42-map-aside,.h42-records{grid-template-columns:1fr}.h42-filters{grid-template-columns:1fr;padding:16px}.h42-map-stage svg{height:420px}.h42-map-list{border-left:0;border-top:1px solid var(--map-line);max-height:260px}.h42-map-detail{padding:20px}.h42-map-expanded .h42-map-stage svg{height:65vh;min-height:420px}.h42-map-expanded .h42-map-list{border-left:0;max-height:260px}.h42-map-toolbar{gap:6px;padding:10px}.h42-section h2{font-size:2rem}.h42-map-notes{padding:17px}.h42-guide-links a{font-size:.88rem}.h42-map-toolbar button{font-size:.84rem}}

.h42-playback{display:grid;grid-template-columns:170px minmax(0,1fr);gap:24px;padding:20px 24px;border-bottom:1px solid var(--map-line);background:linear-gradient(105deg,#f3e6cc,#fffaf0)}
.h42-year{display:flex;flex-direction:column;justify-content:center;gap:4px}.h42-year .eyebrow{font-size:.7rem}.h42-year strong{font:700 2.9rem/1 Georgia,serif;color:#7d1828}.h42-year>span:last-child{font-size:.75rem;color:#6e5843}
.h42-playback-actions{display:flex;gap:9px;align-items:center;flex-wrap:wrap;margin-top:10px}.h42-playback-actions button{font-size:.82rem;min-height:39px;padding:8px 12px}.h42-playback-actions>span{font-size:.76rem;color:var(--map-muted);line-height:1.5}.h42-playback-actions [aria-pressed=true]{background:#7d1828;color:#fff7e4;border-color:#7d1828}
.h42-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
body.dark .h42-playback{background:#332c23}body.dark .h42-year strong{color:#e5bc77}body.dark .h42-year>span:last-child{color:#c8b89f}
@media(max-width:600px){.h42-playback{grid-template-columns:1fr;gap:14px;padding:17px}.h42-year{display:grid;grid-template-columns:1fr auto;align-items:center}.h42-year>span:last-child{grid-column:1 / -1}.h42-year strong{grid-column:2;grid-row:1 / 3;font-size:2.5rem}.h42-playback-actions>span{width:100%}.h42-legend{font-size:.72rem;gap:9px 12px}.h42-legend svg{width:21px;height:21px}}

@media print{.h42-guide,.h42-filters,.h42-map-toolbar,.h42-map-foot-actions,.h42-playback-controls,.h42-timeline-controls,.h42-visibility{display:none!important}.h42-section{width:92%;break-before:page}.h42-map-grid{display:block}.h42-map-stage svg{height:480px}.h42-map-list{display:none}.h42-map-panel{box-shadow:none}.h42-map-questions{display:block}.h42-map-questions article{break-inside:avoid;margin-top:15px}}

/* Normalize retained Crusades sections without altering its full-width hero. */
main[data-history-mb42="crusades"]>section.kh3810-crusades-shell{width:92%!important;max-width:none!important;margin-left:auto!important;margin-right:auto!important}
.h42-records>li>strong,.h42-records>li>a{display:block}.h42-timeline-controls label{min-width:0;text-align:center;font-size:.86rem;line-height:1.4}.h42-timeline-controls [data-map-current]{display:block;margin-bottom:7px}
