@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,400;0,500;0,600;1,400&display=swap');
:root{--paper:#f4f0e6;--panel:#fbf8f1;--ink:#30332e;--red:#74333e;--gold:#ac8958;--line:#ded7c8;--muted:#7c7a70;--strong:#64816a;--moderate:#b18a4e;--early:#ae7277;--candidate:#a2789c}*{box-sizing:border-box}[hidden]{display:none!important}body{margin:0;background:var(--paper);color:var(--ink);font:12px Inter,Arial,sans-serif}button,input,select{font:inherit}button{cursor:pointer;touch-action:manipulation}button,a{color:inherit}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--gold);outline-offset:4px}header{height:90px;margin:0 4%;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:15px}.brand{display:flex;align-items:center;gap:14px;text-decoration:none}.monogram{font:48px 'Playfair Display',Georgia;color:var(--red);border-bottom:1px solid var(--gold);line-height:1}.brand strong{font-size:12px;letter-spacing:2.8px;font-weight:600}.brand small{display:block;font-size:7px;letter-spacing:1.6px;color:var(--muted);margin-top:7px}.header-right{display:flex;gap:20px;align-items:center}.edition{font-size:8px;letter-spacing:1.6px;color:var(--muted)}.private{font-size:8px;letter-spacing:.6px;border:1px solid #cfbfaa;padding:7px 11px;border-radius:30px;color:var(--red)}.quiet{border:0;background:transparent;font-size:9px;color:var(--red)}main{margin:0 4%}.intro{display:flex;justify-content:space-between;align-items:end;gap:30px;padding:35px 0 30px}.eyebrow{font-size:8px;letter-spacing:2px;font-weight:600;color:var(--red)}h1{font:clamp(37px,4.5vw,62px)/1.1 'Playfair Display',Georgia;font-weight:400;letter-spacing:-1.8px;margin:12px 0}h1 em{color:var(--red);font-weight:400}.intro p{font-size:11px;color:var(--muted);line-height:1.8;margin:0}.stats{display:flex;gap:30px;text-align:center;padding-bottom:3px}.stats b{font:32px Georgia;display:block;color:var(--red)}.stats span{font-size:7px;text-transform:uppercase;letter-spacing:1.4px;margin-top:8px;display:block;color:var(--muted)}.workspace{border:1px solid var(--line);border-radius:5px;overflow:hidden;box-shadow:0 12px 40px #49331d09;background:var(--panel)}.tabs{display:flex;gap:8px;padding:0 18px;background:#f8f4eb;border-bottom:1px solid var(--line);overflow-x:auto}.tabs button{white-space:nowrap;border:0;background:transparent;padding:18px 14px;color:var(--muted);font-size:10px;border-bottom:2px solid transparent}.tabs button.active{color:var(--red);border-bottom-color:var(--red)}.tabs span{font-size:7px;border:1px solid var(--line);padding:3px 4px;margin-left:5px;border-radius:3px;color:var(--gold)}.toolbar{display:flex;gap:10px;align-items:center;padding:14px 20px;border-bottom:1px solid var(--line)}input,select{border:1px solid var(--line);border-radius:3px;background:var(--panel);color:var(--ink);font-size:10px;padding:10px;min-width:0}select{max-width:220px}.searchwrap{position:relative;flex:1;min-width:150px}.searchwrap input{width:100%}.searchresults{position:absolute;top:40px;left:0;right:0;max-height:270px;overflow:auto;z-index:10;background:var(--panel);box-shadow:0 8px 25px #392b2222;border:1px solid var(--line)}.searchresults button{display:block;width:100%;padding:11px;text-align:left;border:0;border-bottom:1px solid var(--line);background:none;font-size:10px}.searchresults button:hover{background:#ece5d7}.searchresults small{display:block;color:var(--muted);font-size:8px;margin-top:5px}.toggle,.outline{background:transparent;border:1px solid var(--line);border-radius:3px;padding:9px 12px;font-size:9px;color:var(--red);white-space:nowrap}.toggle[aria-pressed=true]{border-color:var(--candidate);color:var(--candidate);background:#a2789c09}.layerstrip{padding:10px 22px;background:#eee8db8a;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:8px;font-size:9px;color:var(--muted);line-height:1.6}.status-dot{height:5px;width:5px;flex:0 0 5px;border-radius:50%;background:var(--gold)}.map-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px}.stage{position:relative;min-height:630px;background:radial-gradient(ellipse at 50% 45%,#fffdf6,#eee8db);overflow:hidden}.stage:after{content:'';position:absolute;inset:0;pointer-events:none;opacity:.08;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.7' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Cpath filter='url(%23n)' fill='%239c865c' d='M0 0h200v200H0z'/%3E%3C/svg%3E")}.stage-heading{position:absolute;left:24px;top:23px;z-index:2;pointer-events:none;max-width:85%}h2{font:29px/1.2 'Playfair Display',Georgia;font-weight:400;letter-spacing:-.5px;margin:10px 0}.stage-heading h2{font-size:23px}.stage-heading p{font-size:9px;color:var(--muted);line-height:1.6;max-width:520px;margin:0}.stage canvas,.stage>svg{display:block;width:100%;height:630px;touch-action:none}.stage-bottom{position:absolute;bottom:17px;left:24px;right:20px;display:flex;justify-content:space-between;align-items:center;gap:10px;z-index:2}.legend{display:flex;gap:12px;font-size:8px;color:var(--muted);align-items:center}.legend span{white-space:nowrap}.legend i{display:inline-block;width:6px;height:6px;border-radius:50%;margin-right:4px;background:var(--strong)}.legend i.moderate{background:var(--moderate)}.legend i.early{background:var(--early)}.legend i.candidate{background:none;border:1px solid var(--candidate)}.zoom{display:flex;gap:3px}.zoom button{width:29px;height:29px;border:1px solid var(--line);background:var(--panel);color:var(--red)}.panel{padding:24px 22px;border-left:1px solid var(--line);height:630px;overflow:auto;scrollbar-width:thin;scrollbar-color:#cdbfa7 transparent}.panel h2{font-size:27px}.panel p{font-size:10px;color:var(--muted);line-height:1.85}.tag,.badge{font-size:7px;padding:4px 6px;border:1px solid var(--line);border-radius:2px;display:inline-block;margin:4px 4px 3px 0;color:var(--muted)}.badge.Strong{color:var(--strong);background:#64816a09}.badge.Moderate{color:#98763e;background:#b18a4e0a}.badge.Early{color:var(--early);background:#ae727709}.badge.candidate,.badge.hypothesis{color:var(--candidate);border-color:#a2789c70}.notice{font-size:9px!important;padding:10px 12px;background:#eee7d8;border-left:2px solid var(--gold);line-height:1.8;color:var(--muted)}.sectionlabel{display:flex;justify-content:space-between;align-items:center;gap:8px;font-size:8px;letter-spacing:1.5px;text-transform:uppercase;border-top:1px solid var(--line);padding-top:19px;margin:21px 0 3px;color:var(--red)}.connection{padding:13px 0;border-bottom:1px solid var(--line)}.connection>button{font:15px/1.4 Georgia;text-align:left;border:0;padding:0;background:none;color:var(--ink)}.connection>button:hover{color:var(--red)}.connection p{margin:7px 0}.connection .inspect{font:9px Inter,Arial;color:var(--red);margin-top:7px}.source{display:inline-block;color:var(--red);font-size:9px;margin:7px 10px 0 0;text-decoration:none}.source:hover{text-decoration:underline}.small{font-size:9px;color:var(--muted);line-height:1.8}.empty{padding:20px 0;font-size:11px;line-height:1.8;color:var(--muted)}.journeys{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin:23px 0 40px}.journeys button{position:relative;text-align:left;background:transparent;border:1px solid var(--line);padding:20px 22px;color:var(--ink);transition:background .2s}.journeys button:hover{background:#eae2d2}.journeys span{font-size:7px;letter-spacing:1.6px;color:var(--red)}h3{font:22px/1.3 Georgia;font-weight:400;margin:12px 0 9px}.journeys p{font-size:10px;line-height:1.8;color:var(--muted);margin:0;max-width:87%}.journeys b{position:absolute;right:20px;bottom:20px;color:var(--red);font-size:21px;font-weight:400}.provenance{display:grid;grid-template-columns:1fr 1.5fr;gap:70px;border-top:1px solid var(--line);padding:26px 0 25px}.provenance p{font-size:10px;color:var(--muted);line-height:1.9;margin:0 0 10px}.provenance strong{font-weight:500;color:var(--red)}footer{margin:0 4%;padding:20px 0;border-top:1px solid var(--line);font-size:8px;letter-spacing:.6px;color:var(--muted);display:flex;justify-content:space-between;gap:20px}dialog{width:min(640px,92%);max-height:85vh;padding:30px;background:var(--panel);color:var(--ink);border:1px solid var(--gold);border-radius:5px;box-shadow:0 12px 90px #24171155}dialog::backdrop{background:#1c1c1a90;backdrop-filter:blur(4px)}dialog h2{font-size:27px}dialog p{font-size:12px;color:var(--muted);line-height:1.9}.close{position:absolute;right:10px;top:6px;border:0;background:none;font:25px Georgia;color:var(--muted)}#toast{position:fixed;bottom:22px;left:50%;transform:translateX(-50%);background:var(--red);color:#fff8ed;font-size:11px;padding:13px 22px;border-radius:5px;z-index:25;max-width:90%;text-align:center}svg .node{cursor:pointer}svg .node:focus{outline:none}svg .node:focus circle,svg .node:hover circle{stroke:var(--red);stroke-width:3}.intake-head,.game-head{padding:26px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:25px}.intake-head p,.game-head p{font-size:11px;color:var(--muted);line-height:1.85;max-width:670px;margin:8px 0 0}.desk-controls{padding:16px 25px;display:flex;gap:10px;flex-wrap:wrap;border-bottom:1px solid var(--line);align-items:center}.desk-controls input{flex:1;min-width:170px}.record-count{font-size:9px;color:var(--muted);white-space:nowrap}.record-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 25px;padding:0 25px;min-height:210px}.record{padding:21px 0;border-bottom:1px solid var(--line)}.record h3{font:18px/1.4 Georgia;margin:9px 0}.record h3 button{font:inherit;border:0;padding:0;background:none;text-align:left;color:inherit}.record h3 button:hover{color:var(--red)}.record p{font-size:10px;line-height:1.8;color:var(--muted);margin:8px 0}.record small{font-size:8px;color:var(--muted)}.desk-footer{padding:20px 25px;display:flex;align-items:center;justify-content:space-between;gap:15px}.game-grid{display:grid;grid-template-columns:minmax(0,1.6fr) 330px}.game-scene{position:relative;min-height:630px;background:#f0eadb;padding:26px 28px 28px;overflow:hidden}.game-scene[data-quest=eclipse-gathering-v1]{background:radial-gradient(ellipse at 50% 23%,#334b4e,#172f36 60%,#10252f);color:#f4eddc}.quest-illustration{width:100%;height:205px;margin:0 0 8px}.questbar{display:flex;gap:7px;flex-wrap:wrap;margin:15px 0}.questbar button{font-size:9px;padding:7px 11px;border-radius:25px;border:1px solid var(--line);background:var(--panel);color:var(--muted)}.questbar button.active{border-color:var(--gold);color:var(--red)}.game-scene .eyebrow{color:#baa171}.game-scene h2{font-size:30px;max-width:600px;line-height:1.2}.game-scene .scene-text{font-size:11px;line-height:1.8;opacity:.78;max-width:580px}.game-scene .game-meta{font-size:8px;letter-spacing:1.5px;opacity:.6}.choice-list{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-top:20px}.choice{background:#fffaf013;border:1px solid #d0c2a568;color:inherit;padding:16px;text-align:left;border-radius:4px;font-size:11px;line-height:1.7}.choice:hover{background:#d5c69d22;border-color:#b9a374}.game-scene:not([data-quest=eclipse-gathering-v1]) .choice{border-color:#b8a37c60;background:#fffcf188}.game-resources{display:flex;gap:25px;align-items:center;margin-top:18px}.game-resources span{font-size:9px;opacity:.8}.pips{display:flex;gap:4px;margin-top:8px}.pips i{width:9px;height:9px;border:1px solid #a99163;border-radius:50%}.pips i.on{background:#bda579}.last-outcome{margin:14px 0 0;border-left:2px solid #bda579;padding-left:10px;line-height:1.8;font-size:10px;opacity:.8}.setback{font-size:9px;display:inline-block;padding:5px 8px;border:1px solid #bda57966;border-radius:3px;margin-top:7px;color:#bda579}.game-panel{border-left:1px solid var(--line);padding:24px 22px;max-height:850px;overflow:auto}.game-panel p{font-size:10px;color:var(--muted);line-height:1.8}.game-panel .sectionlabel{margin-top:15px}.history-item{border-bottom:1px solid var(--line);padding:11px 0;font-size:10px;line-height:1.8;color:var(--muted)}.history-item strong{color:var(--ink);font-weight:500;display:block;font-size:11px}.game-panel a{font-size:9px}.completed{color:#bda579;font:13px Georgia;margin-top:18px}.globalgame-note{padding:14px 26px;border-top:1px solid var(--line);font-size:9px;color:var(--muted);line-height:1.8;background:#eee8dc}.actionrow{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:20px}.primary{border:1px solid var(--red);background:var(--red);color:#fff9ef;padding:10px 16px;border-radius:3px;font-size:10px}.game-scene[data-quest=eclipse-gathering-v1] .primary{background:#bd9c65;color:#10252f;border-color:#bd9c65}.game-scene .outline{color:inherit;border-color:#ac895866}
@media(max-width:1100px){.stats{gap:18px}.map-layout{grid-template-columns:minmax(0,1fr) 290px}.header-right .edition{display:none}.game-grid{grid-template-columns:minmax(0,1fr) 300px}.toolbar{flex-wrap:wrap}.provenance{gap:35px}.record-list{grid-template-columns:repeat(2,minmax(0,1fr))}.tabs{gap:0}.tabs button{padding:16px 12px}}
@media(max-width:760px){header{height:76px}.private{display:none}.brand strong{font-size:10px;letter-spacing:2px}.brand small{font-size:6px;letter-spacing:1px}.monogram{font-size:40px}.header-right{gap:0}.quiet{font-size:8px}.intro{display:block;padding:26px 0}.intro .eyebrow{font-size:7px}h1{font-size:41px;letter-spacing:-1px}.stats{text-align:left;margin-top:20px;gap:30px}.stats b{font-size:26px}.stats span{font-size:6px;letter-spacing:1px}.tabs{padding:0 8px}.tabs button{padding:15px 11px;font-size:9px}.toolbar{padding:12px;gap:7px}.toolbar .searchwrap{flex-basis:100%}.toolbar select{flex:1;max-width:none;font-size:9px;padding:9px}.toggle{font-size:8px;padding:9px}.layerstrip{font-size:8px;padding:9px 13px}.map-layout{display:block}.stage{min-height:480px}.stage canvas,.stage>svg{height:480px}.stage-heading{left:16px;top:18px}.stage-heading h2{font-size:22px}.stage-heading p{font-size:8px}.panel{height:auto;max-height:450px;border-left:0;border-top:1px solid var(--line);padding:21px}.stage-bottom{left:15px;right:13px;bottom:13px}.legend{gap:8px;font-size:7px}.zoom button{width:26px;height:26px}.journeys{grid-template-columns:1fr;margin-bottom:28px}.journeys h3{font-size:22px}.provenance{grid-template-columns:1fr;gap:18px;padding-top:23px}.provenance h2{font-size:27px}.intake-head,.game-head{padding:22px;display:block}.intake-head h2,.game-head h2{font-size:25px}.intake-head .outline,.game-head .outline{display:inline-block;margin-top:14px}.desk-controls{padding:14px;gap:8px}.desk-controls input{flex-basis:100%}.desk-controls select{flex:1;max-width:none}.record-list{grid-template-columns:1fr;padding:0 20px}.desk-footer{padding:18px;font-size:9px}.game-grid{display:block}.game-scene{min-height:630px;padding:22px}.game-panel{border-left:0;border-top:1px solid var(--line);max-height:550px}.game-scene h2{font-size:28px}.quest-illustration{height:180px}.choice-list{grid-template-columns:1fr}.globalgame-note{padding:15px 20px}footer{font-size:7px;line-height:1.8}dialog{padding:26px}.header-right{min-width:91px}.brand{gap:10px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
a.quiet{text-decoration:none}
/* The complete research catalogue shares the Atlas's parchment, oxblood and gold palette. */
.topic-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;padding:0 25px 26px}.topic-card{position:relative;text-align:left;background:linear-gradient(135deg,#fffdf7,#f0e8d8);border:1px solid var(--line);border-radius:4px;padding:20px 20px 34px;min-height:160px;color:var(--ink)}.topic-card:hover,.topic-card.selected{border-color:var(--red);background:#eee3d3}.topic-card>span{display:block;color:var(--red);font-size:10px;letter-spacing:.4px}.topic-card strong{display:block;font:23px/1.18 Georgia;margin:12px 0}.topic-card small{display:block;font-size:11px;line-height:1.6;color:#68685f;max-width:270px}.topic-card b{position:absolute;bottom:14px;right:18px;color:var(--gold);font-size:18px;font-weight:400}.intake-head p{font-size:13px!important;line-height:1.8!important;max-width:760px!important}.collection-links{display:flex;flex-direction:column;gap:12px;flex:0 0 auto}.collection-links a{color:var(--red);font-size:12px;line-height:1.6;text-decoration-thickness:1px;text-underline-offset:4px}.desk-controls{align-items:end;flex-wrap:wrap}.desk-controls label{display:flex;flex-direction:column;gap:7px;font-size:10px;color:var(--muted)}.desk-controls .desk-query{flex:1 1 300px}.desk-controls input,.desk-controls select{font-size:12px;min-height:43px;max-width:230px}.desk-controls .desk-query input{width:100%;max-width:none}.desk-controls .outline{min-height:43px}.catalogue-context{padding:14px 25px 5px;font-size:12px;color:var(--muted);line-height:1.8}.catalogue-context strong{color:var(--red)}.record p{font-size:12px;line-height:1.7}.record small{font-size:10px;line-height:1.6}.record h3{font-size:20px}.record-concepts{display:flex;flex-wrap:wrap;gap:7px;margin-top:12px}.concept-link{display:inline-block;border:1px solid var(--line);background:#f1eadc;color:var(--red);border-radius:18px;font-size:11px;line-height:1.4;padding:7px 10px;cursor:pointer}.concept-link:hover{border-color:var(--red)}.source-provenance{background:#eee8dc;border-left:2px solid var(--gold);padding:18px;margin:20px 0}.source-provenance>strong{font-size:12px;color:var(--red)}.source-provenance dl{display:grid;grid-template-columns:100px 1fr;gap:9px;font-size:12px;line-height:1.5;margin:15px 0 0}.source-provenance dt{color:var(--muted)}.source-provenance dd{margin:0;overflow-wrap:anywhere}.journey-link{position:relative;display:block;border-top:1px solid var(--gold);padding:20px 0;text-decoration:none}.journey-link span{font-size:8px;letter-spacing:1.5px;color:var(--gold)}.journey-link h3{font:23px/1.25 Georgia;font-weight:400;margin:12px 0}.journey-link p{font-size:11px;line-height:1.8;color:var(--muted);max-width:85%}.journey-link b{position:absolute;right:5px;bottom:30px;font-size:20px;font-weight:400;color:var(--red)}.integration-note{max-width:370px;font-size:12px;line-height:1.8;color:var(--muted)}.integration-note a{color:var(--red);white-space:nowrap}.load-error{padding:32px}.stats span{font-size:8px}.desk-footer button{min-height:40px}.tabs button{font-size:11px}.badge{font-size:9px!important}.provenance p{font-size:12px!important;line-height:1.8!important}
@media(max-width:1100px){.topic-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.intake-head{gap:20px}.collection-links{flex:0 0 165px}.stats{gap:18px}.stats span{font-size:7px;letter-spacing:.8px}}
@media(max-width:760px){.topic-grid{grid-template-columns:repeat(2,minmax(0,1fr));padding:0 16px 22px;gap:10px}.topic-card{padding:16px 14px 32px;min-height:155px}.topic-card strong{font-size:21px}.topic-card small{font-size:11px}.collection-links{flex-direction:row;flex-wrap:wrap;margin-top:18px;gap:12px 22px}.desk-controls label{flex:1 1 140px}.desk-controls .desk-query{flex:1 1 100%}.desk-controls select{max-width:none;width:100%}.catalogue-context{padding:14px 20px 0}.stats{gap:26px}.stats span{font-size:7px;max-width:110px;line-height:1.7}.stats b{font-size:29px}.source-provenance dl{grid-template-columns:80px 1fr}.record-list{min-height:160px}.journey-link h3{font-size:22px}.desk-footer{flex-wrap:wrap}}
@media(max-width:420px){.topic-card strong{font-size:19px}.topic-card small{font-size:10px}.topic-grid{gap:8px}.stats{gap:18px}.stats b{font-size:26px}.stats span{font-size:6px;max-width:85px}}
.record-list.topic-catalogue{gap:14px;padding-top:18px;padding-bottom:18px}.topic-catalogue .topic-card{min-height:250px}.topic-catalogue .topic-card strong{font-size:22px;line-height:1.35}.topic-catalogue .topic-card small{max-width:none;font-size:12px;line-height:1.7}.catalogue-context h3{font:28px/1.3 Georgia;font-weight:400;color:var(--ink);max-width:900px;margin:18px 0 12px}.catalogue-context p{margin:8px 0}.catalogue-context .outline{margin-top:8px}.topic-catalogue .topic-card span{font-size:10px;line-height:1.7}
@media(max-width:760px){.topic-catalogue .topic-card{min-height:210px}.topic-catalogue .topic-card strong{font-size:22px}.catalogue-context h3{font-size:24px}.record-list.topic-catalogue{gap:12px}}
/* Keep the map drawing below its explanatory heading at every viewport width. */
.stage{padding-top:116px}
@media(min-width:761px){.panel{height:746px}}
@media(max-width:760px){.stage{padding-top:132px}.header-right{display:grid;gap:6px;justify-items:end;min-width:118px}}

/* A visual first visit, with the reading guide beside the map. */
.intro-actions{display:flex;align-items:center;flex-wrap:wrap;gap:14px;margin-top:18px}
.map-entry{background:var(--red);color:#fff9ef;padding:11px 15px;border-radius:6px;text-decoration:none;font-size:12px}
.evidence-help{font-size:12px;line-height:1.5;color:var(--red);text-underline-offset:3px;white-space:normal}
.toolbar{flex-wrap:wrap}.toolbar .evidence-help{padding:5px 2px;margin-left:auto}
.guide-context{border-top:1px solid var(--line);padding-top:16px;margin-top:20px}
.guide-context span{display:block;font-size:11px;color:var(--muted);margin-top:6px;line-height:1.5}
@media(max-width:760px){.is-topic-map .stage{min-height:0;padding-top:116px;padding-bottom:44px}.is-topic-map .stage canvas{height:340px}.is-topic-map .stage-heading p{font-size:10px}.toolbar .evidence-help{margin-left:0;font-size:12px}.intro-actions{align-items:flex-start;flex-direction:column;gap:12px}}
