35b5290
672417f
386c6e3
ae44616
672417f
ae44616
672417f
ae44616
672417f
ae44616
672417f
ae44616
672417f
ae44616
672417f
ae44616
35b5290
7a8fa46
672417f
35b5290
672417f
7a8fa46
672417f
35b5290
d7889ed
672417f
386c6e3
dfb47c5
4278b32
672417f
b0928aa
672417f
b0928aa
672417f
dfb47c5
b0928aa
672417f
b0928aa
672417f
4278b32
ae44616
672417f
dfb47c5
672417f
ae44616
b0928aa
dfb47c5
b0928aa
672417f
dfb47c5
9325282
dfb47c5
9325282
dfb47c5
9325282
b0928aa
9325282
b0928aa
dfb47c5
9325282
ae44616
dfb47c5
9325282
672417f
b0928aa
672417f
386c6e3
b0928aa
386c6e3
672417f
386c6e3
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 | <!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>The Master Global Atlas</title>
<link rel="stylesheet" href="style.css">
<style>
.atlas-layout {
display: flex;
gap: 25px;
align-items: flex-start;
flex-wrap: wrap;
}
.flag-box {
width: 160px;
height: 100px;
background-color: #0b0f19;
border-radius: 6px;
border: 1px solid #1e293b;
display: flex;
align-items: center;
justify-content: center;
overflow: hidden;
box-shadow: 0 4px 10px rgba(0,0,0,0.3);
}
.flag-box img {
width: 100%;
height: 100%;
object-fit: cover;
}
.atlas-desc {
flex: 1;
min-width: 300px;
}
</style>
</head>
<body>
<div class="container">
<h1>π The Master Global Atlas</h1>
<div class="subtitle">An uncompromised deep dive into the history, geopolitical anomalies, and cultural realities of Earth.</div>
<div class="nav-bar">
<button class="nav-btn active" onclick="filterContinent('all', event)">All Continents</button>
<button class="nav-btn" onclick="filterContinent('europe', event)">Europe</button>
</div>
<div class="pokedex-grid" id="atlas-grid">
</div>
</div>
<script>
function getFlagEmoji(countryCode) {
const codePoints = countryCode
.toUpperCase()
.split('')
.map(char => 127397 + char.charCodeAt(0));
return String.fromCodePoint(...codePoints);
}
fetch('atlas.json')
.then(response => response.json())
.then(data => {
const grid = document.getElementById('atlas-grid');
grid.innerHTML = data.map(country => `
<div class="pokemon-card" data-region="${country.region}" style="grid-column: 1 / -1; max-width: 100%;">
<div class="pkmn-header">
<h2 class="pkmn-name">${country.name}</h2>
<span style="color: #38bdf8; font-weight: bold; font-family: monospace; font-size: 1.1rem;">CAPITAL: ${country.capital} (${country.capital_coordinates})</span>
</div>
<div class="type-container">
<span class="type-badge">${country.category}</span>
</div>
<div class="atlas-layout">
<div style="font-size: 5rem; line-height: 1; padding-right: 25px; user-select: none;">
${getFlagEmoji(country.id)}
</div>
<div class="atlas-desc">
<p style="color: #e2e8f0; font-size: 1.1rem; margin: 0; line-height: 1.6; font-style: italic;">
<strong>Native Designation:</strong> ${country.native_name}
</p>
<p style="color: #cbd5e1; font-size: 1.05rem; margin-top: 10px; line-height: 1.6;">
${country.description}
</p>
</div>
</div>
<button class="nav-btn" style="padding: 12px 26px; margin-top: 25px; margin-bottom: 10px;" onclick="togglePanel('view-${country.id}', event)">Access Ultimate Master Data Panel β</button>
<div id="view-${country.id}" class="deep-data hidden">
<h3 style="color: #38bdf8; margin-top: 0; border-bottom: 2px solid #1e293b; padding-bottom: 8px;">π Geographic & Cartographic Data</h3>
<div style="margin-bottom: 30px;">
<div class="stat-line"><span class="stat-name">Total Surface Area:</span> <span class="stat-val">${country.area_total}</span></div>
<div class="stat-line"><span class="stat-name">Land Mass Area:</span> <span class="stat-val">${country.area_land}</span></div>
<div class="stat-line"><span class="stat-name">Inland Water Area:</span> <span class="stat-val">${country.area_water}</span></div>
<div class="stat-line"><span class="stat-name">Sovereign Coastline:</span> <span class="stat-val">${country.coastline}</span></div>
<div class="stat-line"><span class="stat-name">Highest Elevation:</span> <span class="stat-val">${country.highest_point_name} (${country.highest_point_elevation})</span></div>
<div class="stat-line"><span class="stat-name">Lowest Elevation:</span> <span class="stat-val">${country.lowest_point_name} (${country.lowest_point_elevation})</span></div>
<div class="stat-line"><span class="stat-name">Hydrological Systems:</span> <span class="stat-val">${country.major_rivers}</span></div>
<div class="stat-line"><span class="stat-name">Topographical Matrix:</span> <span class="stat-val">${country.topography}</span></div>
<div class="stat-line"><span class="stat-name">Macro Climate:</span> <span class="stat-val">${country.climate}</span></div>
</div>
<h3 style="color: #38bdf8; border-bottom: 2px solid #1e293b; padding-bottom: 8px;">ποΈ Geopolitical & Constitutional Infrastructure</h3>
<div style="margin-bottom: 30px;">
<div class="stat-line"><span class="stat-name">Government Model:</span> <span class="stat-val">${country.government_type}</span></div>
<div class="stat-line"><span class="stat-name">Executive Framework:</span> <span class="stat-val">${country.presidency_structure}</span></div>
<div class="stat-line"><span class="stat-name">Legislative Assembly:</span> <span class="stat-val">${country.legislature}</span></div>
<div class="stat-line"><span class="stat-name">Internal Divisions:</span> <span class="stat-val">${country.administrative_divisions}</span></div>
<div class="stat-line"><span class="stat-name">Sovereign Declaration:</span> <span class="stat-val">${country.independence}</span></div>
<div class="stat-line"><span class="stat-name">Constitutional Basis:</span> <span class="stat-val">${country.constitution}</span></div>
<div class="stat-line"><span class="stat-name">UN Admission Date:</span> <span class="stat-val">${country.un_member_date}</span></div>
<div class="stat-line"><span class="stat-name">Subregion Index:</span> <span class="stat-val">${country.subregion}</span></div>
</div>
<h3 style="color: #38bdf8; border-bottom: 2px solid #1e293b; padding-bottom: 8px;">π Macroeconomics & Demographics</h3>
<div style="margin-bottom: 30px;">
<div class="stat-line"><span class="stat-name">Nominal GDP:</span> <span class="stat-val">${country.gdp_nominal}</span></div>
<div class="stat-line"><span class="stat-name">GDP Per Capita:</span> <span class="stat-val">${country.gdp_per_capita}</span></div>
<div class="stat-line"><span class="stat-name">Currency Blueprint:</span> <span class="stat-val">${country.currency_name} (${country.currency_code})</span></div>
<div class="stat-line"><span class="stat-name">Exchange Fixed Peg:</span> <span class="stat-val">${country.currency_peg}</span></div>
<div class="stat-line"><span class="stat-name">Central Bank Entity:</span> <span class="stat-val">${country.central_bank}</span></div>
<div class="stat-line"><span class="stat-name">Unemployment Rate:</span> <span class="stat-val">${country.unemployment_rate}</span></div>
<div class="stat-line"><span class="stat-name">Employment Density:</span> <span class="stat-val">${country.employment_rate}</span></div>
<div class="stat-line"><span class="stat-name">Primary Commodities:</span> <span class="stat-val">${country.major_exports}</span></div>
<div class="stat-line"><span class="stat-name">Total Vital Census:</span> <span class="stat-val">${country.population_total}</span></div>
<div class="stat-line"><span class="stat-name">Population Density:</span> <span class="stat-val">${country.population_density}</span></div>
<div class="stat-line"><span class="stat-name">Human Development Index:</span> <span class="stat-val">${country.hdi}</span></div>
<div class="stat-line"><span class="stat-name">National Literacy:</span> <span class="stat-val">${country.literacy_rate}</span></div>
<div class="stat-line"><span class="stat-name">Linguistic Infrastructure:</span> <span class="stat-val">${country.languages}</span></div>
<div class="stat-line"><span class="stat-name">Ethnic Stratification:</span> <span class="stat-val">${country.demographics_ethnic}</span></div>
<div class="stat-line"><span class="stat-name">Religious Stratification:</span> <span class="stat-val">${country.demographics_religious}</span></div>
<div class="stat-line"><span class="stat-name">Actuarial Life Expectancy:</span> <span class="stat-val">${country.life_expectancy}</span></div>
</div>
<h3 style="color: #38bdf8; margin-top: 30px;">πΊοΈ Territorial & Border Anomalies</h3>
<p style="color: #cbd5e1; font-size: 1.05rem; margin-bottom: 25px; line-height: 1.7;">${country.border_anomalies}</p>
<h3 style="color: #38bdf8;">π Comprehensive Historical Dossier</h3>
<p style="color: #cbd5e1; font-size: 1.05rem; margin-bottom: 25px; line-height: 1.7;">${country.history_summary}</p>
<h3 style="color: #38bdf8;">π Ethnographic Account & Field Observations</h3>
<p style="font-size: 1.05rem; line-height: 1.7; color: #94a3b8; border-top: 1px solid #1e293b; padding-top: 15px; font-style: italic; margin: 0;">
${country.story}
</p>
</div>
</div>
`).join('');
});
function togglePanel(id, event) {
event.stopPropagation();
document.getElementById(id).classList.toggle('hidden');
}
function filterContinent(region, event) {
const buttons = document.querySelectorAll('.nav-bar .nav-btn');
buttons.forEach(btn => btn.classList.remove('active'));
event.target.classList.add('active');
const cards = document.querySelectorAll('.pokemon-card');
cards.forEach(card => {
if (region === 'all' || card.getAttribute('data-region') === region) {
card.classList.remove('hidden');
} else {
card.classList.add('hidden');
}
});
}
</script>
</body>
</html>
|