
:root{--bg:#0b0d0d;--panel:#111515;--panel2:#171b1a;--ink:#e8e1d3;--muted:#8e918b;--line:#303532;--brass:#c4a46b;--danger:#b45f55;--good:#839b7a;--serif:Georgia,'Times New Roman',serif;--sans:Arial,Helvetica,sans-serif}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:var(--bg);color:var(--ink);font-family:var(--sans)}body{background:radial-gradient(circle at 50% -20%,#26302c 0,#0b0d0d 42%);font-size:15px}.eeg-hidden{display:none!important}button,input{font:inherit}.eeg-app{min-height:100vh;padding-bottom:78px}.eeg-stars{position:fixed;inset:0;pointer-events:none;opacity:.14;background-image:radial-gradient(#fff 1px,transparent 1px);background-size:37px 37px;mask-image:linear-gradient(#000,transparent 70%)}.eeg-topbar{height:66px;position:sticky;top:0;z-index:30;display:flex;align-items:center;gap:18px;padding:0 22px;background:rgba(11,13,13,.94);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}.eeg-logo{display:flex;align-items:center;gap:10px;margin-right:auto}.eeg-logo>span{color:var(--brass);font-size:22px}.eeg-logo small,.eeg-logo strong{display:block}.eeg-logo small{font-size:8px;letter-spacing:.2em;color:var(--muted)}.eeg-logo strong{font:16px var(--serif);font-weight:normal}.eeg-topstats,.eeg-vitals-hud{display:flex;gap:12px}.eeg-topstats span,.eeg-vitals-hud span{font-size:10px;letter-spacing:.1em;color:var(--muted)}.eeg-topstats b,.eeg-vitals-hud b{color:var(--ink)}.eeg-icon{border:0;background:none;color:var(--ink);font-size:20px}.eeg-main{width:min(1100px,100%);margin:auto;padding:26px 22px}.eeg-screen{animation:screenin .25s ease}@keyframes screenin{from{opacity:0;transform:translateY(5px)}}.eeg-title-art{min-height:60vh;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center}.eeg-title-art p,.eeg-title-art span{letter-spacing:.18em;color:var(--muted);font-size:10px}.eeg-title-art h1{font:clamp(48px,10vw,96px)/.86 var(--serif);font-weight:normal;letter-spacing:-.04em;margin:20px 0}.eeg-title-art h1 em{color:var(--brass);font-style:normal}.eeg-moon{width:110px;height:110px;border:1px solid #4c514e;border-radius:50%;box-shadow:0 0 80px rgba(196,164,107,.08)}.eeg-tentacles{display:none}.eeg-title-actions{display:grid;gap:10px;width:min(420px,100%);margin:auto}.eeg-version{text-align:center;color:#5f625e;font-size:9px;letter-spacing:.15em;margin-top:18px}
.eeg-primary,.eeg-secondary,.eeg-phase-button,.eeg-actionbar button,.investigation-list button,.travel-list button,.approach-list button,.choice-row button{border:1px solid var(--line);background:var(--panel2);color:var(--ink);padding:13px 16px;text-align:left;cursor:pointer}.eeg-primary{background:var(--brass);border-color:var(--brass);color:#12110e;font-weight:bold}.eeg-secondary:hover,.eeg-actionbar button:hover{border-color:#696e69}.eeg-big{width:100%;text-align:center;padding:16px}.eeg-pagehead,.eeg-world-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:20px}.eeg-pagehead>button{border:0;background:none;color:var(--ink);font-size:28px}.eeg-pagehead small,.eeg-world-head small,.eeg-setup-card>small,.casefile-hero>small,.case-thread-board>small,.facts>small{font-size:9px;letter-spacing:.2em;color:var(--brass)}h2,h3{font-family:var(--serif);font-weight:normal}.eeg-pagehead h2,.eeg-world-head h2{margin:3px 0 0;font-size:28px}
.eeg-setup-grid{display:grid;grid-template-columns:1.3fr .7fr;gap:14px}.eeg-setup-card{padding:20px;background:var(--panel);border:1px solid var(--line)}.eeg-setup-card:first-child{grid-row:span 3}.character-picker{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin:14px 0}.character-picker button,.loadout-editor button{padding:11px;border:1px solid var(--line);background:#0e1110;color:var(--ink);text-align:left}.character-picker button.active,.loadout-editor button.active{border-color:var(--brass);background:#1b1a16}.character-picker b,.character-picker span,.loadout-editor b,.loadout-editor span{display:block}.character-picker span,.loadout-editor span{font-size:10px;color:var(--muted);margin-top:3px}.character-intro{padding:16px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.character-intro small{color:var(--brass);letter-spacing:.12em}.character-intro h3{font-size:28px;margin:6px 0}.character-intro p{color:#bbb6aa}.character-intro em{font-size:12px;color:var(--muted)}.stat-editor{display:grid;gap:7px;margin:16px 0}.stat-editor label{display:grid;grid-template-columns:1fr 36px 38px 36px;align-items:center;border-bottom:1px solid #242826;padding:6px 0}.stat-editor button{height:32px;border:1px solid var(--line);background:#111;color:var(--ink)}.stat-editor b{text-align:center;font:22px var(--serif)}.stat-budget{font-size:10px;letter-spacing:.12em;color:var(--muted)}.loadout-editor{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:18px}.loadout-editor>small{grid-column:1/-1;color:var(--brass);letter-spacing:.12em}.eeg-choice-grid .case-mode{margin-top:14px;padding:16px;background:#0d100f;border:1px solid var(--line)}.case-mode b,.case-mode span{display:block}.case-mode span{margin-top:7px;color:var(--muted);line-height:1.5}.eeg-segment{display:flex;margin-top:14px}.eeg-segment button{flex:1;padding:10px;border:1px solid var(--line);background:#0d100f;color:var(--muted)}.eeg-segment button.is-active{color:#111;background:var(--brass)}.eeg-muted{color:var(--muted);font-size:12px;line-height:1.5}.seed-entry{display:flex;gap:8px}.seed-entry input{min-width:0;flex:1;background:#090b0b;color:var(--ink);border:1px solid var(--line);padding:12px}
.eeg-phase-track{display:flex;align-items:center;gap:8px;margin:0 0 18px}.eeg-phase-track div{display:flex;gap:6px;align-items:center;color:#666;font-size:10px;letter-spacing:.1em}.eeg-phase-track b{height:1px;flex:1;background:var(--line)}.eeg-phase-track div.is-current{color:var(--brass)}.eeg-phase-button{white-space:nowrap}.eeg-alert{padding:12px 14px;border-left:2px solid var(--danger);background:#1a1312;margin-bottom:14px;color:#c7b5ae}.eeg-map-wrap{overflow-x:auto;border:1px solid var(--line);background:#08100f}.eeg-map{display:block;width:100%;min-width:760px}.uk-outline,.uk-island{fill:#17211e;stroke:#38423e;stroke-width:1.2}.eeg-map [data-routes] line{stroke:#34403b;stroke-width:1}.map-node{cursor:pointer}.map-node circle{fill:#101614;stroke:#68716c;stroke-width:1.2}.map-node.current circle{fill:var(--brass);stroke:#e7cf9f}.map-node text{fill:#a6aaa5;font-size:9px;text-anchor:middle}.map-node.current text{fill:#f2e5ca}.token circle{stroke-width:1}.token text{text-anchor:middle;font-size:9px;fill:#111;font-weight:bold}.token.lead circle{fill:var(--brass)}.token.monster circle{fill:var(--danger)}.eeg-map-legend{display:flex;gap:18px;padding:10px 14px;font-size:10px;color:var(--muted)}.eeg-map-legend i{display:inline-block;width:7px;height:7px;border-radius:50%;margin-right:5px}.eeg-map-legend .clue{background:var(--brass)}.eeg-map-legend .monster{background:var(--danger)}
.eeg-location-card{margin-top:14px;padding:20px;background:var(--panel);border:1px solid var(--line)}.eeg-location-card>small{color:var(--muted);letter-spacing:.12em;font-size:9px}.eeg-location-card h3{font-size:30px;margin:6px 0}.eeg-location-card>p{color:#aaa99f;line-height:1.55}.case-presence,.danger-presence,.night-card{margin-top:14px;padding:13px;border:1px solid var(--line);display:grid;gap:4px}.case-presence{border-left:2px solid var(--brass)}.danger-presence{border-left:2px solid var(--danger)}.case-presence small,.danger-presence small,.night-card small{font-size:8px;letter-spacing:.16em;color:var(--muted)}.case-presence span,.danger-presence span,.night-card span{font-size:11px;color:var(--muted)}.night-card b{color:var(--brass)}.eeg-actionbar{display:flex;gap:8px;margin-top:12px;align-items:center}.eeg-actionbar span{margin-left:auto;color:var(--muted);font-size:10px}
.eeg-modal{position:fixed;z-index:100;inset:0;background:rgba(0,0,0,.76);display:grid;place-items:center;padding:18px}.eeg-modal-card{position:relative;width:min(560px,100%);max-height:88vh;overflow:auto;background:#111514;border:1px solid #414641;padding:24px;box-shadow:0 30px 100px #000}.eeg-modal-close{position:absolute;right:10px;top:8px;border:0;background:none;color:var(--muted);font-size:26px}.eeg-modal-card h2{font-size:30px;margin:6px 0 16px}.eeg-modal-card>small{color:var(--brass);letter-spacing:.15em;font-size:9px}.travel-list,.investigation-list,.approach-list{display:grid;gap:8px}.travel-list button b,.travel-list button span,.investigation-list b,.investigation-list em,.approach-list b,.approach-list span{display:block}.travel-list span,.investigation-list em,.approach-list span{font-size:11px;color:var(--muted);margin-top:4px;font-style:normal}.investigation-list button{display:flex;gap:12px}.investigation-list button i{color:var(--brass);font-style:normal}.investigation-list button.danger i{color:var(--danger)}.modal-lead{font:18px/1.5 var(--serif);color:#d1c8b7}.npc-card{padding:13px;margin:14px 0 18px;border-left:2px solid var(--brass);background:#0c0f0e}.npc-card b,.npc-card span{display:block}.npc-card span{color:var(--muted);font-size:11px;margin-top:4px}.choice-row{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.eeg-story-card,.eeg-dice-panel,.eeg-monster-card{padding:22px;background:var(--panel);border:1px solid var(--line);margin-bottom:12px}.eeg-story-card small{color:var(--brass);letter-spacing:.15em}.eeg-story-card h2{font-size:32px}.eeg-story-card p{font:18px/1.55 var(--serif)}.result-card{text-align:center;padding:14px}.result-card h3{font-size:30px}.result-card p{letter-spacing:.2em;color:var(--muted)}.result-card.good h3{color:var(--good)}.result-card.bad h3{color:var(--danger)}
.eeg-mythos-hero{text-align:center;padding:30px}.eeg-mythos-hero small{letter-spacing:.2em;color:var(--muted)}.eeg-mythos-hero h2{font-size:38px}.eeg-round-orb{width:70px;height:70px;border:1px solid var(--brass);border-radius:50%;display:grid;place-items:center;margin:auto;font:30px var(--serif)}.eeg-mythos-events{display:grid;gap:8px;margin-bottom:12px}.eeg-mythos-events article{display:flex;gap:12px;padding:14px;background:var(--panel);border:1px solid var(--line)}.eeg-mythos-events article b{color:var(--brass)}.eeg-mythos-events article span{color:#b8b4aa;line-height:1.45}
.investigator-hero,.casefile-hero,.ancient-sheet{padding:22px;background:var(--panel);border:1px solid var(--line)}.investigator-hero h2,.casefile-hero h2,.ancient-sheet h2{font-size:34px;margin:6px 0}.investigator-hero p,.casefile-hero p,.ancient-sheet p{color:#b1ada3;line-height:1.55}.sheet-vitals{display:flex;gap:8px;margin:10px 0}.sheet-vitals span{flex:1;padding:12px;background:var(--panel2)}.sheet-stats{display:grid;grid-template-columns:repeat(5,1fr);gap:7px}.sheet-stats article{text-align:center;padding:14px 6px;background:var(--panel);border:1px solid var(--line)}.sheet-stats small,.sheet-stats b{display:block}.sheet-stats small{font-size:8px;color:var(--muted)}.sheet-stats b{font:28px var(--serif);margin-top:5px}.sheet-items{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:8px}.sheet-items article{padding:14px;background:var(--panel);border:1px solid var(--line)}.sheet-items b,.sheet-items span{display:block}.sheet-items span{color:var(--muted);font-size:11px;margin-top:4px}
.case-meta{display:flex;gap:12px;flex-wrap:wrap;margin-top:14px}.case-meta span{font-size:10px;color:var(--muted)}.case-thread-board,.facts,.case-chronology{margin-top:12px;padding:18px;background:var(--panel);border:1px solid var(--line)}.case-thread-board article{padding:11px 0;border-top:1px solid var(--line)}.case-thread-board article span{display:block;color:var(--muted);font-size:11px;margin-top:4px}.facts article{display:flex;gap:10px;padding:11px 0;border-top:1px solid var(--line)}.facts article i{font-style:normal;color:var(--brass)}.facts article.uncertain i{color:var(--danger)}.facts p{margin:0;color:#b8b4aa;line-height:1.45}.case-chronology article{padding:12px 0;border-top:1px solid var(--line)}.case-chronology time,.case-chronology b{display:block}.case-chronology time{font-size:8px;color:var(--muted);letter-spacing:.12em}.case-chronology p{color:var(--muted);margin:5px 0 0}.final-warning{margin-top:16px;padding:14px;border-left:2px solid var(--danger);background:#181211}
.eeg-bottomnav{position:fixed;z-index:40;bottom:0;left:0;right:0;height:64px;background:rgba(10,12,12,.97);border-top:1px solid var(--line);display:flex;justify-content:center}.eeg-bottomnav button{width:min(150px,25%);border:0;background:none;color:#6f746f;font-size:18px}.eeg-bottomnav button span{display:block;font-size:8px;letter-spacing:.1em;margin-top:3px}.eeg-bottomnav button.is-active{color:var(--brass)}.eeg-toast{position:fixed;z-index:200;left:50%;bottom:80px;transform:translate(-50%,15px);opacity:0;background:#e5dac5;color:#171512;padding:10px 15px;font-size:11px;transition:.2s}.eeg-toast.show{opacity:1;transform:translate(-50%,0)}.eeg-phase-transition{display:none}.rules-help p{color:#b8b4aa;line-height:1.55;border-top:1px solid var(--line);padding-top:10px}
@media(max-width:720px){.eeg-main{padding:18px 12px}.eeg-logo small{display:none}.eeg-topbar{padding:0 12px;gap:10px}.eeg-topstats{display:none}.eeg-setup-grid{grid-template-columns:1fr}.eeg-setup-card:first-child{grid-row:auto}.character-picker,.loadout-editor{grid-template-columns:1fr}.sheet-stats{grid-template-columns:repeat(3,1fr)}.sheet-items{grid-template-columns:1fr}.eeg-world-head{align-items:flex-end}.eeg-world-head h2{font-size:24px}.eeg-phase-button{font-size:10px;padding:11px}.eeg-map{min-width:820px}.eeg-actionbar{position:sticky;bottom:68px;background:var(--bg);padding:8px 0}.eeg-actionbar button{flex:1;text-align:center}.eeg-actionbar span{display:none}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}

/* v10.1 danger & inventory */
.night-card.urgency{position:relative;overflow:hidden}.night-card.urgency.critical{border-color:rgba(180,95,85,.7);box-shadow:inset 0 0 28px rgba(180,95,85,.08)}.night-card.urgency.critical b{color:var(--danger)}
.clock-pips{display:flex;gap:5px;margin:7px 0}.clock-pips i{display:block;flex:1;height:4px;background:rgba(196,164,107,.55)}.clock-pips i.spent{background:rgba(180,95,85,.75)}
.combat-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin:15px 0}.combat-stats span{padding:10px;background:#0b0e0d;border:1px solid var(--line);font-size:9px;color:var(--muted);text-align:center}.combat-stats b{display:block;margin-top:4px;font:20px var(--serif);color:var(--ink)}
.sheet-items article{position:relative}.sheet-items article>small{display:block;color:var(--brass);font-size:8px;letter-spacing:.12em;margin-bottom:5px}.sheet-items article.used{opacity:.48}.sheet-items article button{margin-top:10px;border:1px solid var(--line);background:#0b0e0d;color:var(--brass);padding:7px 10px;font-size:9px;letter-spacing:.1em}
@media(max-width:600px){.combat-stats{grid-template-columns:1fr 1fr 1fr}.clock-pips{gap:3px}}

/* v10.2 Mythos */
.mythos-omen{border-color:rgba(196,164,107,.5)!important;background:linear-gradient(135deg,rgba(196,164,107,.07),var(--panel))!important}
.mythos-omen span{display:block!important}.mythos-omen strong{display:block;font:24px var(--serif);color:var(--ink);margin-bottom:7px}.mythos-omen em{display:block;margin-top:10px;color:var(--brass);font-style:normal;font-size:10px;letter-spacing:.12em}
.inventory-head{display:flex;justify-content:space-between;align-items:center;margin:18px 0 7px;color:var(--muted);font-size:9px;letter-spacing:.12em}.inventory-head b{color:var(--brass)}

/* v10.3 local investigation */
.local-atmosphere{margin:16px 0;padding:14px 15px;border-left:1px solid var(--brass);background:#0b0e0d;color:#999d96;font:italic 14px/1.55 var(--serif)}

/* v11 economy, Doom & world texture */
.money-card{margin-top:14px;padding:13px;border:1px solid var(--line);display:grid;grid-template-columns:auto 1fr;gap:3px 12px;align-items:center}.money-card small{grid-column:1/-1;font-size:8px;letter-spacing:.16em;color:var(--muted)}.money-card b{font:24px var(--serif);color:var(--brass)}.money-card span{font-size:11px;color:var(--muted)}
.market-money{padding:12px;margin:10px 0 16px;background:#0a0d0c;border:1px solid var(--line);font-size:10px;letter-spacing:.1em;color:var(--muted)}.market-money b{color:var(--brass)}
.market-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.market-grid section>small{display:block;color:var(--brass);font-size:8px;letter-spacing:.14em;margin-bottom:7px}.market-grid button{display:block;width:100%;margin-bottom:6px;padding:10px;border:1px solid var(--line);background:#0c0f0e;color:var(--ink);text-align:left}.market-grid button:disabled{opacity:.35}.market-grid button b,.market-grid button span,.market-grid button em{display:block}.market-grid button span{font-size:9px;color:var(--brass);margin-top:3px}.market-grid button em{font-size:10px;color:var(--muted);font-style:normal;margin-top:4px;line-height:1.35}
.night-card.critical{animation:doomPulse 1.8s ease-in-out infinite}@keyframes doomPulse{50%{box-shadow:inset 0 0 35px rgba(180,95,85,.14)}}
@media(max-width:600px){.market-grid{grid-template-columns:1fr}.eeg-actionbar{flex-wrap:wrap}.eeg-actionbar button{min-width:28%}}

/* v12 causal investigations & consequential arrivals */
.revelation{margin:12px 0;padding:13px 14px;border-left:2px solid var(--brass);background:#0b0e0d}
.revelation>b,.arrival-stakes>b{display:block;font-size:8px;letter-spacing:.15em;color:var(--brass);margin-bottom:6px}
.revelation p{margin:0;line-height:1.55}.revelation.onward{border-left-color:#718b82}.revelation.danger{border-left-color:var(--danger)}
.arrival-stakes{margin:14px 0;padding:12px;border:1px solid var(--line);background:rgba(196,164,107,.04)}
.arrival-stakes span{display:block;color:var(--muted);font-size:11px;line-height:1.45}
.threat-origin{padding:10px 12px;border-left:2px solid var(--danger);background:rgba(180,95,85,.06)}
.facts article>div{min-width:0}.facts article small{display:block;margin-top:8px;color:var(--brass);font-size:8px;letter-spacing:.13em}

/* v13 Living Europe */
.npc-character,.npc-resistance,.god-sign,.world-decay{margin:12px 0;padding:12px 14px;border:1px solid var(--line);background:rgba(255,255,255,.018)}
.npc-character em{font-family:Georgia,serif;font-size:14px;line-height:1.55}.npc-character span,.npc-resistance p{color:var(--muted);font-size:11px;line-height:1.5}
.npc-resistance small,.god-sign b,.world-decay small{display:block;color:var(--brass);font-size:8px;letter-spacing:.14em;margin-bottom:6px}
.god-sign{border-left:2px solid var(--danger)}.world-decay{border-left:2px solid #718b82}.world-decay.critical{border-left-color:var(--danger);animation:doomPulse 2.4s ease-in-out infinite}
.world-decay p,.god-sign p{margin:0;line-height:1.55}

/* v13.2 mechanics audit */
.crisis-presence{margin:12px 0;padding:12px 14px;border:1px solid rgba(193,143,71,.45);border-left:3px solid var(--brass);background:rgba(193,143,71,.06)}
.crisis-presence small{display:block;color:var(--brass);font-size:8px;letter-spacing:.13em}.crisis-presence b,.crisis-presence span{display:block;margin-top:5px}
.world-rules{display:block;margin-top:8px;padding-top:8px;border-top:1px solid var(--line);font-size:10px;color:var(--muted);line-height:1.5}
.token.crisis circle{fill:#1b1710;stroke:var(--brass);stroke-width:2}.token.crisis text{fill:var(--brass);font-size:10px;text-anchor:middle}
.crisis-choice{border-color:rgba(193,143,71,.45)!important}.crisis-choice i{color:var(--brass)}

.ability-state{display:inline-block;margin-top:8px;padding:5px 8px;border:1px solid var(--line);color:var(--brass);letter-spacing:.12em;font-size:8px}

/* ========================================================================== */
/* v14 — THE LAST CASE: EUROPE / noir identity                                */
/* ========================================================================== */
:root{
  --bg:#090807;--panel:#11100f;--panel2:#171412;--ink:#efe5d2;--muted:#92877a;
  --line:#3a3028;--line2:#574536;--brass:#c49a5a;--brass2:#e2c28a;--danger:#9d352f;
  --good:#7f9279;--paper:#d8c8aa;--serif:Georgia,'Times New Roman',serif;
  --sans:Arial,Helvetica,sans-serif;--shadow:0 28px 70px rgba(0,0,0,.48)
}
html{background:#090807}body{background:#090807;color:var(--ink)}
body::before{content:"";position:fixed;inset:0;pointer-events:none;z-index:500;background-image:url('noir-texture.webp');background-size:cover;background-position:center;opacity:.055;mix-blend-mode:screen;filter:grayscale(1) contrast(1.25)}
body::after{content:"";position:fixed;inset:-40%;pointer-events:none;z-index:501;opacity:.045;background-image:repeating-radial-gradient(circle at 30% 20%,rgba(255,255,255,.24) 0 1px,transparent 1px 3px);background-size:5px 5px;animation:filmGrain 1.4s steps(1,end) infinite;mix-blend-mode:soft-light}
.eeg-app{isolation:isolate;background:radial-gradient(circle at 50% -18%,rgba(95,66,42,.22),transparent 35%),linear-gradient(180deg,#0b0908,#080707 68%);min-height:100svh;overflow-x:hidden}
.eeg-stars{opacity:0;background:none}

/* top bar / identity */
.eeg-topbar{height:72px;background:linear-gradient(180deg,rgba(12,9,7,.985),rgba(10,8,7,.94));border-bottom:1px solid #4d3828;box-shadow:0 10px 30px rgba(0,0,0,.28);backdrop-filter:blur(18px) saturate(.7)}
.eeg-logo{gap:12px}.eeg-logo-mark{width:32px;height:32px;display:grid;place-items:center;border:1px solid var(--brass);font:700 10px var(--serif);letter-spacing:.08em;color:var(--brass2)!important;transform:rotate(-2deg);box-shadow:inset 0 0 0 3px #0d0a08,0 0 24px rgba(196,154,90,.08)}
.eeg-logo small{color:#756b61;letter-spacing:.22em}.eeg-logo strong{font-size:17px;letter-spacing:.04em;color:#eee1ca;text-transform:uppercase}
.eeg-topstats span,.eeg-vitals-hud span{border-left:1px solid #332820;padding-left:12px}.eeg-topstats b,.eeg-vitals-hud b{font-family:var(--serif);font-size:13px;color:var(--brass2)}
.eeg-icon{width:38px;height:38px;border:1px solid transparent;border-radius:1px;transition:.25s ease}.eeg-icon:hover{border-color:var(--line2);background:#17120f;transform:translateY(-1px)}

/* splash / title */
[data-screen="title"]{min-height:calc(100svh - 122px);display:flex;flex-direction:column;justify-content:center}
.eeg-title-art{position:relative;min-height:62svh;overflow:hidden;justify-content:flex-end;align-items:flex-start;text-align:left;border:1px solid #4a392b;background-image:linear-gradient(90deg,rgba(8,6,5,.94) 0%,rgba(8,6,5,.78) 34%,rgba(8,6,5,.22) 67%,rgba(8,6,5,.62) 100%),linear-gradient(180deg,rgba(0,0,0,.18),rgba(0,0,0,.82)),url('splash-noir.webp');background-size:cover;background-position:center;box-shadow:var(--shadow),inset 0 0 0 1px rgba(224,193,138,.06);padding:clamp(28px,6vw,68px);animation:titleReveal 1.1s cubic-bezier(.2,.7,.1,1) both}
.eeg-title-art::before{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 10%,rgba(231,206,165,.06) 41%,transparent 52%);transform:translateX(-130%);animation:projectorSweep 9s ease-in-out 1.6s infinite}
.eeg-title-art::after{content:"";position:absolute;inset:0;box-shadow:inset 0 0 130px 35px #050403;pointer-events:none}
.eeg-title-copy{position:relative;z-index:3;max-width:650px;text-shadow:0 4px 20px #000}.eeg-kicker{font:10px var(--sans)!important;letter-spacing:.3em!important;color:var(--brass2)!important;margin:0 0 12px}
.eeg-title-art h1{margin:0;font:normal clamp(54px,10vw,112px)/.78 var(--serif);letter-spacing:-.055em;color:#f0e5d0;text-transform:uppercase}.eeg-title-art h1 span{display:block;font:10px var(--sans);letter-spacing:.55em;color:#d4b47e;margin:0 0 12px 5px}.eeg-title-art h2{font:normal clamp(20px,4vw,36px)/1 var(--serif);letter-spacing:.48em;margin:14px 0;color:var(--brass2)}
.eeg-title-rule{display:flex;align-items:center;width:min(360px,70vw);gap:10px;margin:18px 0}.eeg-title-rule i{height:1px;flex:1;background:linear-gradient(90deg,var(--brass),transparent)}.eeg-title-rule i:last-child{background:linear-gradient(90deg,transparent,var(--brass))}.eeg-title-rule b{font-size:11px;color:var(--brass)}
.eeg-title-art blockquote{font:italic clamp(15px,2vw,19px)/1.5 var(--serif);color:#d6c8b4;margin:0;max-width:470px}.eeg-title-dossier{position:absolute;z-index:3;right:22px;bottom:22px;width:190px;padding:13px 14px;background:rgba(10,8,6,.84);border:1px solid rgba(196,154,90,.35);transform:rotate(-1deg);box-shadow:0 15px 30px rgba(0,0,0,.28)}.eeg-title-dossier small,.eeg-title-dossier b,.eeg-title-dossier span{display:block}.eeg-title-dossier small{font-size:7px!important;letter-spacing:.22em!important;color:#75695e!important}.eeg-title-dossier b{font:30px var(--serif);color:#a23c32;margin:3px 0}.eeg-title-dossier span{font:10px/1.4 var(--sans);letter-spacing:.04em;color:#aaa096}
.eeg-title-actions{width:min(580px,100%);grid-template-columns:1.3fr 1fr;margin:18px 0 0}.eeg-title-actions .eeg-primary{grid-row:span 2}.eeg-version{text-align:left;color:#66594f;margin:13px 0 0}

/* panels / dossier surfaces */
.eeg-main{width:min(1180px,100%);padding-top:28px}.eeg-setup-card,.eeg-location-card,.eeg-story-card,.eeg-dice-panel,.eeg-monster-card,.investigator-hero,.casefile-hero,.ancient-sheet,.case-thread-board,.facts,.case-chronology,.eeg-mythos-events article{background:linear-gradient(145deg,rgba(25,20,17,.97),rgba(14,12,10,.98));border-color:#433529;box-shadow:0 15px 40px rgba(0,0,0,.14),inset 0 1px rgba(255,255,255,.025);position:relative}
.eeg-setup-card::before,.eeg-location-card::before,.eeg-story-card::before,.casefile-hero::before,.ancient-sheet::before{content:"";position:absolute;left:-1px;top:16px;width:3px;height:38px;background:var(--brass);opacity:.75}
.eeg-location-card,.eeg-story-card,.eeg-setup-card,.case-thread-board,.facts,.case-chronology{transition:transform .35s ease,border-color .35s ease,box-shadow .35s ease}.eeg-location-card:hover,.eeg-setup-card:hover{border-color:#5a4635;box-shadow:0 20px 48px rgba(0,0,0,.22)}
.eeg-pagehead h2,.eeg-world-head h2,.eeg-modal-card h2,.eeg-story-card h2,.investigator-hero h2,.casefile-hero h2,.ancient-sheet h2{letter-spacing:-.025em;color:#f0e4cf}
.eeg-pagehead small,.eeg-world-head small,.eeg-setup-card>small,.casefile-hero>small,.case-thread-board>small,.facts>small{color:var(--brass2)}

/* buttons — noir metal plates */
.eeg-primary,.eeg-secondary,.eeg-phase-button,.eeg-actionbar button,.investigation-list button,.travel-list button,.approach-list button,.choice-row button,.character-picker button,.loadout-editor button,.market-grid button{position:relative;overflow:hidden;border-color:#4a3b30;background:linear-gradient(180deg,#1b1714,#100e0c);color:#e8dbc7;letter-spacing:.035em;transition:transform .18s ease,border-color .22s ease,background .22s ease,box-shadow .22s ease,color .22s ease}
.eeg-primary{background:linear-gradient(180deg,#d0a667,#b78547);border-color:#d5b074;color:#17100b;text-transform:uppercase;letter-spacing:.12em;box-shadow:0 8px 22px rgba(115,73,31,.19)}
.eeg-primary::after,.eeg-secondary::after,.eeg-actionbar button::after,.investigation-list button::after,.approach-list button::after{content:"";position:absolute;inset:0;background:linear-gradient(105deg,transparent 35%,rgba(255,255,255,.14),transparent 65%);transform:translateX(-120%);transition:transform .55s ease}
.eeg-primary:hover::after,.eeg-secondary:hover::after,.eeg-actionbar button:hover::after,.investigation-list button:hover::after,.approach-list button:hover::after{transform:translateX(120%)}
.eeg-primary:hover,.eeg-secondary:hover,.eeg-phase-button:hover,.eeg-actionbar button:hover,.investigation-list button:hover,.approach-list button:hover{transform:translateY(-2px);border-color:#87684e;box-shadow:0 10px 25px rgba(0,0,0,.25)}
.eeg-primary:active,.eeg-secondary:active,.eeg-actionbar button:active,.investigation-list button:active{transform:translateY(1px) scale(.995)}
button:focus-visible,input:focus-visible{outline:1px solid var(--brass2);outline-offset:3px}

/* map — smoked-paper Europe */
.eeg-map-wrap{border-color:#49392c;background:#0c0907;box-shadow:inset 0 0 80px rgba(0,0,0,.72),0 16px 40px rgba(0,0,0,.16);position:relative}.eeg-map-wrap::after{content:"EUROPE // ACTIVE FIELD MAP";position:absolute;right:12px;top:10px;font:7px var(--sans);letter-spacing:.25em;color:rgba(210,180,130,.35);pointer-events:none}.eeg-map{filter:saturate(.55) sepia(.17)}.uk-outline,.uk-island{fill:#211b16;stroke:#604b37}.eeg-map [data-routes] line{stroke:#6d5740;stroke-width:1;stroke-dasharray:4 4;opacity:.58;animation:routeFlow 6s linear infinite}.map-node circle{fill:#15110e;stroke:#997954}.map-node text{fill:#c8bba8;text-shadow:0 2px 2px #000}.map-node.current circle{fill:#a7372f;stroke:#f0c47d;filter:drop-shadow(0 0 8px rgba(189,57,49,.75));animation:currentPulse 2s ease-in-out infinite}.map-node.current text{fill:#f8ead2;font-weight:bold}.token.lead circle{fill:#d5a25c;animation:tokenBreath 2.7s ease-in-out infinite}.token.monster circle{fill:#8d2723;animation:dangerPulse 1.4s ease-in-out infinite}.token.crisis circle{animation:crisisTick 1.8s steps(2) infinite}
.eeg-map-legend{background:#0e0b09;border-top:1px solid #392d24}

/* phase track / world */
.eeg-phase-track{padding:11px 14px;border:1px solid #392d24;background:rgba(17,13,10,.7)}.eeg-phase-track div{transition:color .35s ease,transform .35s ease}.eeg-phase-track div.is-current{color:var(--brass2);transform:translateY(-1px)}.eeg-phase-track div.is-current i{animation:phaseMark 1.8s ease-in-out infinite}.eeg-alert{border:1px solid rgba(157,53,47,.42);border-left:3px solid var(--danger);background:linear-gradient(90deg,rgba(89,25,22,.28),rgba(28,17,14,.65));animation:alertIn .45s ease both}.case-presence,.danger-presence,.night-card,.money-card,.crisis-presence,.world-decay{background:rgba(7,6,5,.42);border-color:#3e3128}.danger-presence{animation:dangerEdge 2.5s ease-in-out infinite}.world-decay.critical{animation:doomPulse 2.2s ease-in-out infinite,dangerEdge 3s ease-in-out infinite}

/* modals */
.eeg-modal{background:rgba(2,2,2,.82);backdrop-filter:blur(7px);animation:veilIn .25s ease both}.eeg-modal-card{background:linear-gradient(145deg,#17120f,#0d0b09 75%);border:1px solid #65503d;box-shadow:0 40px 140px #000,inset 0 0 80px rgba(122,78,39,.035);animation:modalDevelop .42s cubic-bezier(.16,.8,.2,1) both}.eeg-modal-card::before{content:"CASE MATERIAL // CONFIDENTIAL";display:block;margin-bottom:17px;padding-bottom:7px;border-bottom:1px solid #3b2f26;font:7px var(--sans);letter-spacing:.25em;color:#756659}.eeg-modal-close{transition:transform .25s ease,color .25s ease}.eeg-modal-close:hover{color:var(--brass2);transform:rotate(90deg)}.modal-lead{font-size:19px;color:#ded0bb}.npc-card,.npc-character,.npc-resistance,.arrival-stakes,.revelation{background:#0c0908;border-color:#44352a}.revelation{animation:revealSlip .48s ease both}.revelation:nth-of-type(2){animation-delay:.08s}.revelation:nth-of-type(3){animation-delay:.16s}

/* result / dice */
.eeg-dice-panel{overflow:hidden}.result-card{animation:resultStamp .45s cubic-bezier(.2,.8,.25,1) both}.result-card h3{text-transform:uppercase;letter-spacing:.06em}.result-card p{font-family:var(--serif);font-size:18px}.result-card.good{box-shadow:inset 0 3px 0 rgba(127,146,121,.55)}.result-card.bad{box-shadow:inset 0 3px 0 rgba(157,53,47,.65)}
.eeg-story-card{animation:storyDevelop .55s ease both}.eeg-story-card p{color:#dfd3c1}.facts article,.case-thread-board article,.case-chronology article,.sheet-items article,.sheet-stats article{transition:background .25s ease,transform .25s ease,border-color .25s ease}.facts article:hover,.case-thread-board article:hover,.sheet-items article:hover,.sheet-stats article:hover{background:#1b1612;transform:translateX(2px);border-color:#5a4636}

/* mythos */
.eeg-mythos-hero{position:relative;padding:48px 30px 34px;background:radial-gradient(circle at 50% 10%,rgba(132,37,32,.24),transparent 45%)}.eeg-mythos-hero::before{content:"";position:absolute;width:190px;height:190px;border-radius:50%;left:50%;top:-68px;transform:translateX(-50%);background:radial-gradient(circle at 38% 38%,#af4038,#421510 54%,transparent 56%);opacity:.6;filter:blur(.2px);animation:bloodMoon 4s ease-in-out infinite}.eeg-mythos-hero>*{position:relative;z-index:1}.eeg-round-orb{background:#120d0b;border-color:#975a3c;box-shadow:0 0 38px rgba(157,53,47,.16);animation:orbPulse 2.4s ease-in-out infinite}.eeg-mythos-events article{animation:mythosLine .45s ease both}.eeg-mythos-events article:nth-child(2){animation-delay:.06s}.eeg-mythos-events article:nth-child(3){animation-delay:.12s}.eeg-mythos-events article:nth-child(4){animation-delay:.18s}

/* bottom nav */
.eeg-bottomnav{height:70px;background:rgba(8,6,5,.97);border-top:1px solid #4b392b;box-shadow:0 -16px 35px rgba(0,0,0,.3)}.eeg-bottomnav button{position:relative;color:#756a60;transition:.25s ease}.eeg-bottomnav button::before{content:"";position:absolute;top:0;left:25%;right:25%;height:1px;background:var(--brass);transform:scaleX(0);transition:transform .3s ease}.eeg-bottomnav button.is-active{color:var(--brass2);transform:translateY(-2px)}.eeg-bottomnav button.is-active::before{transform:scaleX(1)}
.eeg-toast{background:#d6b77f;color:#130e0a;border:1px solid #f0d29d;box-shadow:0 16px 40px #000;letter-spacing:.08em}

/* animated screen entry controlled by JS */
.eeg-screen.is-entering{animation:noirScreenIn .52s cubic-bezier(.2,.72,.18,1) both}.eeg-screen.is-entering .eeg-pagehead{animation:headerSlide .5s ease both}.eeg-screen.is-entering .eeg-location-card,.eeg-screen.is-entering .casefile-hero,.eeg-screen.is-entering .investigator-hero,.eeg-screen.is-entering .ancient-sheet{animation:cardRise .55s .08s ease both}

/* animations */
@keyframes filmGrain{0%,100%{transform:translate3d(0,0,0)}50%{transform:translate3d(.12%,-.1%,0)}}
@keyframes titleReveal{from{opacity:0;transform:translate3d(0,8px,0)}to{opacity:1;transform:none}}
@keyframes projectorSweep{0%,72%{transform:translateX(-130%)}86%,100%{transform:translateX(130%)}}
@keyframes routeFlow{to{stroke-dashoffset:-32}}
@keyframes currentPulse{50%{r:15}}
@keyframes tokenBreath{50%{opacity:.68}}
@keyframes dangerPulse{50%{opacity:.58}}
@keyframes crisisTick{50%{opacity:.55}}
@keyframes phaseMark{50%{opacity:.7}}
@keyframes alertIn{from{opacity:0;transform:translate3d(-7px,0,0)}}
@keyframes dangerEdge{50%{box-shadow:inset 4px 0 16px rgba(157,53,47,.1)}}
@keyframes veilIn{from{opacity:0}}
@keyframes modalDevelop{from{opacity:0;transform:translate3d(0,8px,0) scale(.995)}to{opacity:1;transform:none}}
@keyframes revealSlip{from{opacity:0;transform:translate3d(-7px,0,0)}}
@keyframes resultStamp{from{opacity:0;transform:scale(1.035)}to{opacity:1;transform:none}}
@keyframes storyDevelop{from{opacity:0;transform:translate3d(0,6px,0)}to{opacity:1;transform:none}}
@keyframes bloodMoon{50%{opacity:.78}}
@keyframes orbPulse{50%{opacity:.75}}
@keyframes mythosLine{from{opacity:0;transform:translate3d(0,6px,0)}}
@keyframes noirScreenIn{from{opacity:0;transform:translate3d(0,5px,0)}to{opacity:1;transform:none}}
@keyframes headerSlide{from{opacity:0;transform:translate3d(-10px,0,0)}}
@keyframes cardRise{from{opacity:0;transform:translate3d(0,10px,0)}}
@keyframes noirCut{from{opacity:0}to{opacity:0}}

@media(max-width:720px){
  .eeg-main{padding:16px 11px 24px}.eeg-topbar{height:62px}.eeg-logo strong{font-size:14px}.eeg-logo-mark{width:28px;height:28px}.eeg-title-art{min-height:64svh;padding:28px 22px;background-position:54% center}.eeg-title-copy{max-width:88%}.eeg-title-art h1{font-size:clamp(50px,17vw,78px)}.eeg-title-art h2{font-size:19px;letter-spacing:.35em}.eeg-title-dossier{right:12px;bottom:12px;width:155px;padding:10px}.eeg-title-dossier span{display:none}.eeg-title-actions{grid-template-columns:1fr;margin-top:12px}.eeg-title-actions .eeg-primary{grid-row:auto}.eeg-version{text-align:center}.eeg-map-wrap{margin-left:-11px;margin-right:-11px;border-left:0;border-right:0}.eeg-actionbar{background:linear-gradient(180deg,rgba(9,8,7,.15),#090807 24%);padding:10px 0}.modal-lead{font-size:17px}.eeg-modal{padding:9px}.eeg-modal-card{padding:21px 17px 24px;max-height:91svh}.eeg-bottomnav{height:66px}.eeg-bottomnav button{font-size:17px}
}
@media(max-width:430px){.eeg-title-dossier{display:none}.eeg-title-copy{max-width:100%}.eeg-title-art{justify-content:flex-end}.eeg-title-art blockquote{font-size:14px}.eeg-topbar{gap:8px}.eeg-vitals-hud{gap:6px}.eeg-vitals-hud span{padding-left:7px}.eeg-logo small{display:none}}
@media(prefers-reduced-motion:reduce){body::after,.eeg-map [data-routes] line,.map-node.current circle,.token.lead circle,.token.monster circle,.token.crisis circle,.eeg-mythos-hero::before,.eeg-round-orb,.world-decay.critical,.danger-presence{animation:none!important}.eeg-primary,.eeg-secondary,.eeg-actionbar button,.eeg-bottomnav button{transition:none!important}}
.eeg-phase-transition{display:grid!important;position:fixed;inset:0;z-index:180;place-items:center;background:rgba(6,4,3,.92);backdrop-filter:blur(8px);opacity:0;pointer-events:none;transition:opacity .24s ease}.eeg-phase-transition.is-showing{opacity:1}.eeg-phase-transition>div{text-align:center;padding:30px;transform:scale(.96);transition:transform .45s cubic-bezier(.2,.8,.2,1)}.eeg-phase-transition.is-showing>div{transform:scale(1)}.eeg-phase-transition small{display:block;font:8px var(--sans);letter-spacing:.34em;color:var(--brass);margin-bottom:15px}.eeg-phase-transition span{display:grid;width:64px;height:64px;margin:0 auto 12px;place-items:center;border:1px solid #6b5139;border-radius:50%;font-size:23px;color:var(--brass2);animation:orbPulse 1.5s ease-in-out infinite}.eeg-phase-transition h2{font:normal clamp(36px,8vw,64px)/1 var(--serif);letter-spacing:.06em;margin:0;color:#f0e2cb}.eeg-phase-transition p{max-width:420px;margin:12px auto 0;color:#9c8d7e;font:italic 15px/1.5 var(--serif)}
@media(prefers-reduced-motion:reduce){.eeg-phase-transition,.eeg-phase-transition>div{transition:none!important}.eeg-phase-transition span{animation:none!important}}

/* v14.1 animation stability pass */

@media(max-width:720px){
  body::after{animation:none!important;opacity:.035}
  .eeg-modal,.eeg-phase-transition{backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
  .eeg-modal-card,.eeg-story-card,.eeg-screen.is-entering,.eeg-title-art{will-change:transform,opacity}
}

/* v14.2 navigation stability */
html{scroll-behavior:auto!important}
[data-screen]{overflow-anchor:none}
body{overflow-anchor:none}

/* v14.3 flicker elimination */
.noir-cut{animation:none!important}
[data-screen].is-entering{
  animation:none!important;
  opacity:0;
  transform:translate3d(0,4px,0);
}
[data-screen]{
  transition:opacity .18s ease-out,transform .18s ease-out;
  backface-visibility:hidden;
  -webkit-backface-visibility:hidden;
  transform:translateZ(0);
}
[data-screen]:not(.is-entering):not(.eeg-hidden){
  opacity:1;
  transform:translate3d(0,0,0);
}
[data-eeg].screen-switching{
  contain:paint;
}
@media(max-width:720px){
  [data-screen]{transition-duration:.14s}
}

/* v14.4 interaction + performance audit */
button,[role="button"],[data-map-node]{
  touch-action:manipulation;
  -webkit-tap-highlight-color:transparent;
}
button{min-height:42px}
button:disabled{pointer-events:none}
.eeg-phase-transition.is-showing{pointer-events:auto!important}
.elder-active-effect{
  display:block;margin-top:9px;padding:8px 10px;border-left:2px solid var(--danger);
  background:rgba(108,31,28,.13);color:#d8b8ad;font-size:10px;line-height:1.45;letter-spacing:.04em
}
@media(max-width:720px){
  .eeg-topbar{backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
  body::after,
  .eeg-map [data-routes] line,
  .map-node.current circle,
  .token.lead circle,.token.monster circle,.token.crisis circle,
  .eeg-mythos-hero::before,.eeg-round-orb,
  .world-decay.critical,.danger-presence,
  .eeg-phase-track div.is-current i{animation:none!important}
  .eeg-location-card,.eeg-story-card,.eeg-setup-card,.facts article,.case-thread-board article,.sheet-items article{
    transition-duration:.14s!important
  }
}

/* v14.5 item identity */
.sheet-items article:has(small:first-child){position:relative}
.sheet-items article button[data-use-item]{border-color:rgba(188,148,87,.5)}
.market-grid button:disabled em{opacity:.72}

/* v14.6 — forbidden tomes & learned spells */
.tome-item{border-color:rgba(143,54,48,.58)!important;background:linear-gradient(135deg,rgba(93,28,25,.12),rgba(17,13,11,.92))!important}
.tome-item>small:first-child{color:#c47b6f!important}
.learn-tome{border-color:#7d3732!important;color:#e2b6a8!important}
.spellbook{margin-top:26px;padding-top:18px;border-top:1px solid rgba(202,164,105,.24)}
.spell-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.spell-grid article{position:relative;overflow:hidden;padding:18px;border:1px solid rgba(128,91,57,.52);background:linear-gradient(145deg,rgba(28,20,16,.98),rgba(10,8,7,.98));box-shadow:inset 0 0 30px rgba(0,0,0,.28)}
.spell-grid article::after{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at 84% 12%,rgba(132,45,39,.12),transparent 34%)}
.spell-grid article>small{display:block;color:#9b6d55;letter-spacing:.18em;font-size:8px}
.spell-grid article>b{display:block;margin:5px 0 8px;font:normal 20px/1.05 var(--serif);letter-spacing:.05em;color:#ead9bf}
.spell-grid article p{margin:0 0 12px;color:#8f8174;font:italic 13px/1.5 var(--serif)}
.spell-sigil{float:right;display:grid;place-items:center;width:38px;height:38px;margin-left:10px;border:1px solid #6f3b34;border-radius:50%;color:#c47b6f;font-size:18px}
.spell-effect,.spell-cost{display:block;padding:8px 0;border-top:1px solid rgba(255,255,255,.06);font-size:11px;line-height:1.45}
.spell-effect{color:#c8b89e}.spell-cost{color:#d28b80}
.spell-grid button{width:100%;margin-top:12px;border-color:#713b35;color:#e4b2a4}
.spell-empty{padding:16px;border:1px dashed rgba(128,91,57,.4);color:#8d7e70;font:italic 14px/1.55 var(--serif)}
@media(max-width:620px){.spell-grid{grid-template-columns:1fr}}

/* v14.7 — transparent test odds */
.dice-preview{margin:10px 0;border:1px solid rgba(174,132,79,.38);background:rgba(10,8,7,.62);text-align:left}
.dice-preview summary{display:grid;grid-template-columns:1fr auto;gap:2px 12px;align-items:center;padding:10px 12px;cursor:pointer;list-style:none;user-select:none}
.dice-preview summary::-webkit-details-marker{display:none}
.dice-preview summary span{font-size:9px;letter-spacing:.14em;color:#9d8972}
.dice-preview summary b{grid-row:1/3;grid-column:2;font:normal 19px/1 var(--serif);color:#e4d0ad}
.dice-preview summary i{font-style:normal;font-size:8px;letter-spacing:.12em;color:#776858}
.dice-preview[open] summary{border-bottom:1px solid rgba(174,132,79,.22)}
.dice-preview>div{padding:7px 12px 9px}
.dice-preview>div>span{display:flex;justify-content:space-between;gap:16px;padding:4px 0;font-size:10px;color:#978a7d}
.dice-preview>div em{font-style:normal}.dice-preview>div strong{color:#cdbb9e}
.dice-preview .dice-total{margin-top:4px;padding-top:7px;border-top:1px solid rgba(255,255,255,.07);color:#d7c5a7}
.test-choice{margin-bottom:12px;border:1px solid rgba(174,132,79,.2);background:rgba(10,8,7,.28)}
.test-choice>button{width:100%;margin:0;border:0;border-bottom:1px solid rgba(174,132,79,.14)}
.test-choice>.dice-preview{margin:0;border:0;background:transparent}
.approach-list .test-choice,.approach-grid .test-choice{width:100%}
@media(max-width:720px){.dice-preview summary{padding:9px 10px}.dice-preview summary b{font-size:17px}}

/* ==========================================================================
   v14.8 — GRAPHICS OVERHAUL / OCCULT NOIR DOSSIER
   ========================================================================== */
:root{
  --bg:#080a0a;--panel:#121311;--panel2:#181813;--ink:#e9dfc8;--muted:#918b7d;
  --line:#37352d;--brass:#c5a15e;--paper:#d4c39d;--paper-ink:#28231c;
  --danger:#a94f45;--good:#7d9571;--blood:#7c302b;--sea:#081415;
  --serif:Georgia,'Times New Roman',serif;--sans:Arial,Helvetica,sans-serif
}
html,body{background:#060808}
body{
  background:
    linear-gradient(rgba(5,7,7,.80),rgba(5,7,7,.92)),
    url("noir-texture.webp") center/520px repeat,
    radial-gradient(circle at 50% -10%,#2d3028 0,#090b0b 45%,#050707 100%);
  letter-spacing:.005em
}
.eeg-app{position:relative;isolation:isolate}
.eeg-app::before{
  content:"";position:fixed;inset:0;pointer-events:none;z-index:-1;
  background:repeating-linear-gradient(90deg,rgba(255,255,255,.012) 0 1px,transparent 1px 6px);
  opacity:.28
}
.eeg-stars{opacity:.07;background-size:51px 51px}
.eeg-topbar{
  background:linear-gradient(180deg,rgba(12,13,12,.97),rgba(8,10,10,.94));
  border-bottom:1px solid #403b30;box-shadow:0 12px 35px rgba(0,0,0,.28)
}
.eeg-logo-mark{
  width:35px;height:35px;display:grid;place-items:center;border:1px solid #665a42;
  font:12px/1 var(--serif);letter-spacing:.08em;transform:rotate(-3deg);color:var(--brass)!important
}
.eeg-logo strong{letter-spacing:.04em}.eeg-main{width:min(1180px,100%)}

/* Title becomes a cinematic dossier cover. */
.eeg-title-art{
  position:relative;overflow:hidden;min-height:64vh;border:1px solid #3b382f;
  background-image:linear-gradient(90deg,rgba(5,7,7,.98) 0%,rgba(5,7,7,.78) 44%,rgba(5,7,7,.22) 100%),var(--scene);
  background-size:cover;background-position:center;
  padding:50px 30px;box-shadow:0 28px 70px rgba(0,0,0,.38)
}
.eeg-title-art::after{
  content:"CASE FILE // EUROPE";position:absolute;right:-29px;top:46px;transform:rotate(90deg);
  color:rgba(210,185,133,.35);font-size:8px;letter-spacing:.34em
}
.eeg-title-copy{position:relative;z-index:2;max-width:760px}
.eeg-title-art h1{text-shadow:0 3px 30px #000;letter-spacing:-.055em}
.eeg-title-art h1 em{color:#d1ae68}
.eeg-moon{border-color:#9a7f4f;background:radial-gradient(circle,#bba26d14 0,#0000 68%)}

/* Dossier-card system */
.eeg-setup-card,.eeg-location-card,.eeg-story-card,.eeg-dice-panel,.eeg-monster-card,
.case-thread-board,.facts,.case-chronology,.sheet-items article,.sheet-stats article,
.eeg-mythos-events article,.ancient-sheet,.casefile-hero,.investigator-hero{
  position:relative;background:
    linear-gradient(135deg,rgba(255,255,255,.018),transparent 33%),
    linear-gradient(180deg,#151612,#101210);
  border:1px solid #3c392f;box-shadow:0 16px 42px rgba(0,0,0,.20)
}
.eeg-setup-card::after,.sheet-items article::after,.case-thread-board::after,.facts::after,.case-chronology::after{
  content:"";position:absolute;inset:4px;pointer-events:none;border:1px solid rgba(196,161,94,.045)
}
.eeg-setup-card>small,.casefile-hero>small,.case-thread-board>small,.facts>small,
.eeg-pagehead small,.eeg-world-head small{
  color:#c09a5e;font-weight:700
}

/* Reusable image plate */
.scene-art,.mini-art,.spellbook-art{
  position:relative;background-image:linear-gradient(180deg,rgba(7,8,7,.02),rgba(7,8,7,.78)),var(--scene);
  background-size:cover;background-position:center;overflow:hidden
}
.scene-art{height:188px;margin:-22px -22px 20px;border-bottom:1px solid #4b4131}
.eeg-modal-card .scene-art{height:155px;margin:-24px -24px 22px}
.scene-art::before,.mini-art::before,.spellbook-art::before{
  content:"";position:absolute;inset:0;pointer-events:none;
  background:repeating-linear-gradient(0deg,rgba(255,255,255,.028) 0 1px,transparent 1px 4px),
             linear-gradient(90deg,rgba(60,20,15,.20),transparent 20%,transparent 80%,rgba(60,20,15,.18))
}
.scene-art span,.spellbook-art span{
  position:absolute;left:14px;bottom:11px;padding:5px 8px;background:rgba(6,7,7,.80);
  color:#d0b174;font-size:8px;letter-spacing:.22em;border-left:2px solid var(--brass)
}
.mini-art{height:82px;margin:-14px -14px 12px}
.spellbook-art{height:150px;margin:0 0 13px;border:1px solid #49362d}

/* Geographic Europe map */
.eeg-map-wrap{
  position:relative;overflow-x:auto;border:1px solid #454033;border-radius:3px;
  background:#071011;box-shadow:0 24px 55px rgba(0,0,0,.30)
}
.eeg-map-wrap::before{
  content:"EUROPE // FIELD OPERATIONS";position:absolute;z-index:4;left:14px;top:12px;
  color:#ae986c;font-size:8px;letter-spacing:.25em;pointer-events:none
}
.eeg-map{min-width:900px;filter:sepia(.07) saturate(.88)}
.europe-shape,.europe-island{
  fill:#18201c;stroke:#6b6657;stroke-width:1.25;vector-effect:non-scaling-stroke
}
.europe-shape.scandinavia{fill:#151e1b}.europe-shape.italy,.europe-shape.greece{fill:#1b211b}
.map-sea-labels text{fill:#89908a;opacity:.20;font:italic 12px var(--serif);letter-spacing:.32em;text-anchor:middle}
.eeg-map [data-routes] line{
  stroke:#a18a5c;stroke-opacity:.28;stroke-width:1.2;stroke-dasharray:3 4;vector-effect:non-scaling-stroke
}
.map-node circle{
  fill:#0b1110;stroke:#8d826a;stroke-width:1.2;vector-effect:non-scaling-stroke;
  transition:fill .14s,border .14s
}
.map-node text{
  fill:#b6b09f;font:8px var(--sans);font-weight:700;letter-spacing:.035em;
  paint-order:stroke;stroke:#071011;stroke-width:3px;stroke-linejoin:round
}
.map-node.current circle{fill:#c39e5d;stroke:#f1dba8}
.map-node.current text{fill:#f4e4c0}
.token circle{stroke:#0a0d0c;stroke-width:2}.token.crisis circle{fill:#c28c4f}
.eeg-map-legend{background:#0b100f;border-top:1px solid #292d29;text-transform:uppercase;letter-spacing:.08em}

/* Location dossier */
.eeg-location-card{padding:0;overflow:hidden}
.eeg-location-card .scene-art{margin:0;height:205px}
.location-card-body{padding:20px}
.eeg-location-card h3{font-size:38px;letter-spacing:-.025em}
.case-presence,.danger-presence,.crisis-presence,.world-decay,.money-card,.night-card{
  background:rgba(8,10,9,.56);border-color:#37352e
}
.case-presence{box-shadow:inset 3px 0 #a88d59}.danger-presence{box-shadow:inset 3px 0 #843c37}
.crisis-presence{box-shadow:inset 3px 0 #9b6b3e}
.world-decay{border:1px solid #37352e}.world-decay.critical{background:linear-gradient(90deg,#211412,#11100d)}

/* Buttons: stamped field controls */
button{
  border-radius:2px;letter-spacing:.055em;transition:border-color .14s,background-color .14s,transform .14s
}
.eeg-primary{
  background:linear-gradient(180deg,#d0ae6c,#a8874e);border-color:#dfc082;color:#17130c;
  box-shadow:inset 0 1px rgba(255,255,255,.18),0 8px 25px rgba(0,0,0,.18)
}
.eeg-secondary,.eeg-phase-button,.eeg-actionbar button,.investigation-list button,.travel-list button,.approach-list button,.choice-row button{
  background:linear-gradient(180deg,#181914,#11120f);border-color:#403c32
}
@media(hover:hover){
  button:not(:disabled):hover{border-color:#9b8255;background-color:#1b1a14}
  .sheet-items article:hover,.case-thread-board article:hover{border-color:#615842}
}

/* Modal as evidence folder */
.eeg-modal{background:rgba(1,2,2,.84)}
.eeg-modal-card{
  background:
    linear-gradient(rgba(17,18,14,.94),rgba(12,14,12,.98)),
    url("noir-texture.webp") center/430px repeat;
  border:1px solid #514b3d;box-shadow:0 35px 120px #000,0 0 0 1px rgba(196,161,94,.05) inset
}
.eeg-modal-card::before{
  content:"EVIDENCE";position:absolute;right:36px;top:8px;color:#a94f4545;
  font:700 9px var(--sans);letter-spacing:.28em;transform:rotate(-2deg)
}

/* Story/results */
.eeg-story-card{padding:0;overflow:hidden}
.eeg-story-card .scene-art{margin:0;height:245px}
.story-card-body{padding:24px}
.eeg-story-card h2{font-size:38px;line-height:1.02}
.revelation{position:relative;padding:14px 15px;margin:10px 0;background:#0c0e0c;border-left:2px solid #807253}
.revelation b{font-size:8px;letter-spacing:.17em;color:#bca16c}
.revelation.onward{border-left-color:#68836c}.revelation.danger{border-left-color:#964a43}
.result-card{position:relative}
.result-card h3{font-size:36px}
.result-card.good::before,.result-card.bad::before{
  content:"";position:absolute;width:90px;height:90px;border:3px double currentColor;border-radius:50%;
  opacity:.12;left:50%;top:50%;transform:translate(-50%,-50%) rotate(-12deg)
}

/* Hero images */
.investigator-hero,.casefile-hero,.ancient-sheet,.eeg-mythos-hero{
  position:relative;overflow:hidden;min-height:220px;padding:28px;
  background-image:linear-gradient(90deg,rgba(8,10,9,.96) 0%,rgba(8,10,9,.78) 54%,rgba(8,10,9,.22)),var(--scene);
  background-size:cover;background-position:center
}
.investigator-hero>* ,.casefile-hero>* ,.ancient-sheet>* ,.eeg-mythos-hero>*{position:relative;z-index:2}
.investigator-hero h2,.casefile-hero h2,.ancient-sheet h2{font-size:40px;max-width:680px;text-shadow:0 2px 20px #000}
.casefile-hero p,.ancient-sheet p,.investigator-hero p{max-width:700px}
.eeg-mythos-hero{margin-bottom:14px;display:grid;place-items:center;text-shadow:0 2px 25px #000;border:1px solid #40382f}
.eeg-mythos-hero::after{
  content:"";position:absolute;inset:0;background:radial-gradient(circle at center,transparent 0 28%,rgba(60,18,15,.12) 29% 30%,transparent 31% 100%)
}
.eeg-round-orb{background:rgba(7,8,7,.72);border-color:#bd9659;box-shadow:0 0 0 7px rgba(189,150,89,.05)}

/* Investigator/items */
.sheet-vitals span{
  border:1px solid #3c392f;background:linear-gradient(180deg,#171711,#11120f);
  font-family:var(--serif);font-size:16px
}
.sheet-stats article{overflow:hidden}
.sheet-stats article::before{
  content:"";position:absolute;inset:auto 12px 0;height:2px;background:#8c754b;opacity:.45
}
.inventory-head{margin-top:18px;padding-bottom:8px;border-bottom:1px solid #36332b;letter-spacing:.10em}
.sheet-items article{overflow:hidden;min-height:132px}
.item-card>small:first-of-type{color:#ac986e;letter-spacing:.12em;font-size:8px}
.item-relic{box-shadow:inset 0 0 36px rgba(111,46,38,.09)}
.item-tome{border-color:#573c31!important}
.item-weapon{border-left:2px solid #70594a!important}
.item-supply{border-left:2px solid #6d765d!important}
.item-gear{border-left:2px solid #6c6e69!important}
.item-curio{border-left:2px solid #95794c!important}

/* Spellbook */
.spellbook{border-top:0;margin-top:28px}
.spellbook-art{height:180px}
.spell-grid article{
  border-color:#47372e;background:
    linear-gradient(180deg,rgba(29,20,16,.96),rgba(12,10,9,.98)),
    url("noir-texture.webp") center/360px repeat
}
.spell-sigil{border-color:#824d43;box-shadow:0 0 28px rgba(135,55,47,.12)}

/* Case journal */
.case-thread-board article{position:relative;padding:14px 12px 14px 18px}
.case-thread-board article::before{
  content:"";position:absolute;left:0;top:12px;bottom:12px;width:2px;background:#8a734a
}
.facts article{padding:14px 8px}.facts article.verified{background:linear-gradient(90deg,rgba(92,111,78,.07),transparent)}
.facts article.uncertain{background:linear-gradient(90deg,rgba(129,64,54,.06),transparent)}
.case-chronology time{color:#a68b59}

/* Phase and nav */
.eeg-phase-track{padding:10px 12px;border:1px solid #302e27;background:rgba(11,12,10,.54)}
.eeg-phase-track div.is-current i{
  background:#b99556;color:#14100b;border-radius:50%;width:24px;height:24px;display:grid;place-items:center
}
.eeg-bottomnav{
  background:linear-gradient(180deg,rgba(10,11,10,.97),rgba(6,8,8,.99));border-color:#3b372e;
  box-shadow:0 -16px 35px rgba(0,0,0,.26)
}
.eeg-bottomnav button.is-active{background:linear-gradient(180deg,rgba(197,161,94,.08),transparent)}

/* Dice preview gains tactile 'case maths' appearance */
.dice-preview,.dice-breakdown{border-color:#454034!important;background:#0d0f0d!important}
.dice-preview summary{color:#c3a15e!important}
.dice-breakdown li,.dice-preview li{font-family:var(--sans)}

/* responsive */
@media(max-width:720px){
  .eeg-main{padding:13px 10px 18px}
  .eeg-topbar{backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
  .eeg-title-art{min-height:58vh;padding:34px 17px;background-position:62% center}
  .eeg-title-art::after{display:none}
  .eeg-map{min-width:900px}
  .eeg-location-card .scene-art{height:145px}
  .scene-art{height:145px}
  .eeg-story-card .scene-art{height:175px}
  .eeg-modal-card .scene-art{height:126px}
  .investigator-hero,.casefile-hero,.ancient-sheet,.eeg-mythos-hero{min-height:185px;padding:20px;background-position:62% center}
  .investigator-hero h2,.casefile-hero h2,.ancient-sheet h2{font-size:32px}
  .eeg-location-card h3,.eeg-story-card h2{font-size:31px}
  .story-card-body,.location-card-body{padding:17px}
  .spellbook-art{height:125px}
  .sheet-items article{min-height:0}
}
@media(max-width:420px){
  .eeg-logo strong{font-size:14px}.eeg-vitals-hud{gap:6px}.eeg-vitals-hud span{font-size:9px}
  .eeg-world-head{gap:8px}.eeg-phase-button{max-width:45%}
}

/* v14.9 generated art pack 01 */
.location-art{background-position:center 42%}
.investigation-art{background-position:center 38%}
.item-art{
  height:150px;background-position:center;
  border-bottom:1px solid #4a4032;
  filter:saturate(.82) contrast(1.03)
}
.item-card:has(.item-art){padding-top:14px}
.market-item{position:relative;overflow:hidden;padding-left:92px!important;min-height:108px!important}
.market-art{
  position:absolute;display:block;left:0;top:0;bottom:0;width:78px;
  background-image:linear-gradient(90deg,transparent 65%,rgba(12,13,11,.96)),var(--scene);
  background-size:cover;background-position:center;border-right:1px solid #40392f
}
.casefile-hero{background-position:center}
@media(max-width:720px){
  .item-art{height:132px}
  .market-item{padding-left:80px!important;min-height:100px!important}
  .market-art{width:68px}
  .location-art{height:180px!important}
}

/* ==========================================================================
   v15.0 — FULL ART CARD SYSTEM
   ========================================================================== */
.full-art-card{
  position:relative;overflow:hidden;
  background-image:linear-gradient(180deg,rgba(2,3,3,0) 0%,rgba(2,3,3,.04) 54%,rgba(2,3,3,.90) 100%),var(--scene);
  background-size:cover;background-position:center;
  border:1px solid #564a36;border-radius:4px;
  box-shadow:0 22px 55px rgba(0,0,0,.38),inset 0 0 0 1px rgba(233,210,161,.035);
  isolation:isolate
}
.full-art-card::before{
  content:"";position:absolute;inset:0;pointer-events:none;z-index:1;
  background:linear-gradient(90deg,rgba(0,0,0,.20),transparent 15%,transparent 85%,rgba(0,0,0,.20)),
             repeating-linear-gradient(0deg,rgba(255,255,255,.022) 0 1px,transparent 1px 4px)
}
.full-art-card::after{
  content:"";position:absolute;inset:7px;pointer-events:none;z-index:2;
  border:1px solid rgba(215,187,130,.18)
}
.art-card-overlay{
  position:absolute;z-index:3;left:0;right:0;bottom:0;padding:36px 20px 16px;
  background:linear-gradient(180deg,transparent,rgba(6,7,6,.90) 50%,rgba(6,7,6,.98))
}
.art-card-overlay small,.art-card-overlay strong{display:block;text-shadow:0 2px 10px #000}
.art-card-overlay small{font-size:8px;letter-spacing:.22em;color:#d3b678;text-transform:uppercase}
.art-card-overlay strong{margin-top:4px;font:26px/1.02 var(--serif);font-weight:normal;color:#f1e5cc}

.eeg-location-card .location-art{
  height:clamp(350px,50vw,560px);margin:0;border:0;border-bottom:1px solid #4f4535;border-radius:0;
  background-position:center 45%
}
.eeg-location-card .location-art + .location-card-body{padding-top:24px}
.eeg-location-card .location-card-body>h3{display:none}

.investigation-art{height:clamp(330px,46vw,520px);margin-bottom:22px;background-position:center}
.eeg-modal-card .investigation-art{margin:-24px -24px 22px;width:calc(100% + 48px);border-radius:0;border-width:0 0 1px}
.eeg-story-card>.investigation-art{margin:0;border:0;border-bottom:1px solid #4f4535;border-radius:0}
.local-investigation-art{background-position:center}

.sheet-items{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}
.sheet-items .item-card.has-full-art{padding:0 16px 16px;overflow:hidden}
.item-full-art{
  height:clamp(250px,32vw,390px);margin:0 -16px 15px;border:0;border-bottom:1px solid #4c4132;border-radius:0;
  background-position:center
}
.item-card.has-full-art>b{font:21px/1.1 var(--serif);margin-top:5px}
.item-card.has-full-art>span{font-size:12px;line-height:1.55}

.market-item{padding-left:138px!important;min-height:154px!important}
.market-art.hq-market-art{
  width:124px;background-image:linear-gradient(90deg,transparent 72%,rgba(12,13,11,.96)),var(--scene);
  background-position:center;background-size:cover
}
.casefile-hero{min-height:360px;background-position:center 38%;box-shadow:0 24px 60px rgba(0,0,0,.34)}
.full-art-card,.casefile-hero{outline:1px solid rgba(0,0,0,.35);outline-offset:-2px}

@media(min-width:900px){
  .eeg-location-card{display:grid;grid-template-columns:minmax(390px,48%) 1fr;align-items:stretch}
  .eeg-location-card .location-art{height:auto;min-height:560px;border-right:1px solid #4f4535;border-bottom:0}
  .eeg-location-card .location-card-body{padding:32px}
  .sheet-items{grid-template-columns:repeat(3,minmax(0,1fr))}
  .item-full-art{height:330px}
}
@media(max-width:720px){
  .eeg-location-card .location-art{height:430px!important}
  .investigation-art{height:390px}
  .eeg-modal-card .investigation-art{height:310px;margin:-24px -24px 20px}
  .sheet-items{grid-template-columns:1fr}
  .item-full-art{height:380px}
  .market-item{padding-left:105px!important;min-height:126px!important}
  .market-art.hq-market-art{width:92px}
  .casefile-hero{min-height:330px}
  .art-card-overlay{padding:32px 16px 14px}
  .art-card-overlay strong{font-size:24px}
}
@media(max-width:420px){
  .eeg-location-card .location-art{height:390px!important}
  .investigation-art{height:350px}
  .item-full-art{height:350px}
}

/* ==========================================================================
   v15.1 — ART-ONLY CARDS + ILLUSTRATED EUROPE MAP
   ========================================================================== */

/* Artwork never carries game text. It is a clean image surface inside a card. */
.art-only .art-card-overlay{display:none!important}
.full-art-card.art-only::before{
  background:
    linear-gradient(90deg,rgba(0,0,0,.08),transparent 12%,transparent 88%,rgba(0,0,0,.08)),
    repeating-linear-gradient(0deg,rgba(255,255,255,.014) 0 1px,transparent 1px 5px)
}
.full-art-card.art-only::after{inset:6px;border-color:rgba(215,187,130,.15)}

/* Square image cards. contain = show the whole supplied artwork, never crop it. */
.item-full-art{
  aspect-ratio:1/1!important;height:auto!important;
  background-size:contain!important;background-repeat:no-repeat!important;
  background-position:center!important;background-color:#080a09
}
.sheet-items .item-card.has-full-art{
  display:flex;flex-direction:column;padding:0 15px 15px
}
.sheet-items .item-card.has-full-art .item-full-art{flex:none}

/* Location/investigation art also fits in full. Dark letterboxing is intentional. */
.eeg-location-card .location-art,
.investigation-art,
.local-investigation-art{
  aspect-ratio:1/1!important;height:auto!important;min-height:0!important;
  background-size:contain!important;background-repeat:no-repeat!important;
  background-position:center!important;background-color:#070a09
}

/* Live titles now belong to the game card beneath/above the image, not the bitmap. */
.eeg-location-card .location-card-body>h3{display:block!important}
.eeg-location-card .location-card-body{position:relative}
.eeg-location-card .location-card-body::before{
  content:"FIELD LOCATION";display:block;margin-bottom:7px;color:#c09a5e;
  font:700 8px var(--sans);letter-spacing:.22em
}
.eeg-story-card .story-card-body{border-top:1px solid #41392d}

/* Actual illustrated Europe map with live routes/nodes on top. */
.europe-map-art{opacity:.96}
.europe-map-wash{fill:rgba(4,9,9,.14)}
.europe-coastline{opacity:0;pointer-events:none}
.map-sea-labels{display:none}
.eeg-map [data-routes] line{
  stroke:#d6b66e;stroke-opacity:.58;stroke-width:1.35;
  stroke-dasharray:4 4;filter:drop-shadow(0 0 2px rgba(0,0,0,.85))
}
.map-node circle{
  fill:#0b0c09;stroke:#e0b864;stroke-width:1.8;
  filter:drop-shadow(0 1px 2px #000)
}
.map-node text{
  fill:#f0ddae;stroke:#090a08;stroke-width:3.5px;font-size:8px
}
.map-node.current circle{fill:#e2b35e;stroke:#fff0bd;stroke-width:2.2}
.token circle{filter:drop-shadow(0 1px 2px #000)}

/* The map artwork itself should be visible edge-to-edge. */
.eeg-map-wrap{background:#07100f}
.eeg-map{filter:none}

/* Desktop keeps square art rather than stretching it to column height. */
@media(min-width:900px){
  .eeg-location-card{
    grid-template-columns:minmax(390px,48%) 1fr;
    align-items:start
  }
  .eeg-location-card .location-art{
    width:100%;aspect-ratio:1/1!important;height:auto!important;min-height:0!important
  }
  .item-full-art{height:auto!important}
}
@media(max-width:720px){
  .eeg-location-card .location-art,
  .investigation-art,
  .eeg-modal-card .investigation-art,
  .item-full-art{
    width:100%;aspect-ratio:1/1!important;height:auto!important;min-height:0!important
  }
  .eeg-modal-card .investigation-art{
    width:calc(100% + 48px);margin:-24px -24px 20px
  }
}
