

:root {
  --ink: #201A2B;
  --ink-soft: #675E73;
  --paper: #FBF7F0;
  --card: #FFFFFF;
  --line: #ECE3D6;
  --coral: #E15B45;
  --coral-soft: #FCE7E1;
  --amber: #D68A1E;
  --violet: #7258B8;
  --violet-soft: #EFEBFA;
  --teal: #157F73;
  --teal-soft: #DEF3EF;
  --navy: #2E4FA3;
  --navy-soft: #E7ECFA;
  --gold: #D69828;
  --gold-soft: #FBEBD3;
}

* { margin: 0; padding: 0; box-sizing: border-box; }

body {
  background: var(--paper);
  color: var(--ink);
  font-family: 'Inter', sans-serif;
  line-height: 1.5;
  -webkit-font-smoothing: antialiased;
}

header {
  padding: 24px 6vw;
  display: flex;
  justify-content: space-between;
  align-items: center;
  border-bottom: 1px solid var(--line);
}
.wordmark { font-family: 'Fraunces', serif; font-weight: 600; font-size: 19px; color: var(--ink); text-decoration: none; }
.wordmark span {
  background: linear-gradient(100deg, var(--coral), var(--amber));
  -webkit-background-clip: text; background-clip: text; color: transparent;
}
.breadcrumb { font-family: 'JetBrains Mono', monospace; font-size: 12px; color: var(--ink-soft); }
.breadcrumb a { color: var(--ink-soft); text-decoration: none; }
.breadcrumb a:hover { color: var(--coral); }


.country-hero {
  padding: 48px 0 12px;
  margin: 0 0;
  max-width: 900px;
}
.ch-top-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  flex-wrap: wrap;
}
.ch-title-group {
  display: flex;
  align-items: center;
  gap: 16px;
}
.ch-flag {
  font-size: 42px;
  line-height: 1;
}
.ch-text h1 {
  font-family: 'Fraunces', serif;
  font-weight: 600;
  font-size: clamp(24px, 2.8vw, 32px);
  letter-spacing: -0.01em;
}


.ch-sub {
  margin-top: 10px;
  font-family: 'JetBrains Mono', monospace;
  font-size: 12px;
  font-weight: 500;
  letter-spacing: 0.03em;
  text-transform: uppercase;
  color: #C4694F;
  display: flex;
  align-items: center;
  gap: 7px;
}
.ch-sub::before {
  content: "";
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: var(--coral);
  flex-shrink: 0;
}
.ch-time {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  background: var(--card);
  border: 1px solid var(--line);
  border-radius: 999px;
  padding: 9px 18px 9px 14px;
  white-space: nowrap;
  flex-shrink: 0;
}
.ch-time .ct-dot {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: var(--coral);
  box-shadow: 0 0 0 0 rgba(225, 91, 69, 0.5);
  animation: pulse 2s ease-in-out infinite;
  flex-shrink: 0;
}
@keyframes pulse {
  0%   { box-shadow: 0 0 0 0 rgba(225, 91, 69, 0.45); }
  70%  { box-shadow: 0 0 0 6px rgba(225, 91, 69, 0); }
  100% { box-shadow: 0 0 0 0 rgba(225, 91, 69, 0); }
}
.ch-time .ct-label {
  font-family: 'JetBrains Mono', monospace;
  font-size: 11px;
  color: var(--ink-soft);
}
.ch-time .ct-value {
  font-family: 'JetBrains Mono', monospace;
  font-weight: 500;
  font-size: 15px;
  background: linear-gradient(100deg, var(--coral), var(--amber));
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
  letter-spacing: 0.02em;
}

.intro {
  margin: 0 0 28px;
  max-width: 900px;
  font-size: 15.5px;
  color: var(--ink-soft);
}


.note {
  margin: 20px 0 50px;
  max-width: 900px;
  font-size: 12.5px;
  color: var(--ink-soft);
}


.faq-item {
  border-bottom: 1px solid var(--line);
  padding: 16px 0;
}
.faq-item:first-child { padding-top: 0; }
.faq-item:last-child { border-bottom: none; padding-bottom: 0; }
.faq-item h3 {
  font-family: 'Fraunces', serif;
  font-weight: 600;
  font-size: 15.5px;
  color: var(--ink);
  margin-bottom: 6px;
}
.faq-item p {
  font-size: 14px;
  color: var(--ink-soft);
  margin: 0;
}


.content-section {
  margin: 0 0 44px;
  max-width: 900px;
}
.content-section h2 {
  font-family: 'Fraunces', serif;
  font-weight: 600;
  font-size: 21px;
  color: var(--ink);
  margin-bottom: 12px;
}
.content-section p {
  font-size: 14.5px;
  color: var(--ink-soft);
  margin-bottom: 10px;
}
.content-section p:last-child { margin-bottom: 0; }
.content-section ul {
  margin: 10px 0 0 20px;
  font-size: 14.5px;
  color: var(--ink-soft);
}
.content-section li { margin-bottom: 6px; }


.related {
  margin: 0 0 60px;
  max-width: 900px;
}
.related h2 {
  font-family: 'Fraunces', serif;
  font-weight: 600;
  font-size: 17px;
  margin-bottom: 14px;
}
.related-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));
  gap: 10px;
}
.related-chip {
  background: var(--card);
  border: 1px solid var(--line);
  border-radius: 12px;
  padding: 13px 16px;
  font-size: 13px;
  color: var(--ink-soft);
  text-decoration: none;
  display: block;
  transition: border-color 0.15s ease, color 0.15s ease;
}
.related-chip:hover { border-color: var(--coral); color: var(--coral); }

.related-chip.disabled { cursor: default; opacity: 0.55; }
.related-chip.disabled:hover { border-color: var(--line); color: var(--ink-soft); }
.related-chip .rc-label { font-family: 'JetBrains Mono', monospace; font-size: 10px; text-transform: uppercase; letter-spacing: 0.04em; display: block; margin-bottom: 4px; }

footer {
  padding: 32px 6vw 44px;
  border-top: 1px solid var(--line);
  font-size: 12.5px;
  color: var(--ink-soft);
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 10px;
}

@media (max-width: 640px) {
  header { padding: 18px 5vw; flex-wrap: wrap; gap: 8px; }
  .country-hero { padding: 32px 0 10px; margin: 0 0; }
  .ch-top-row { flex-direction: column; align-items: flex-start; gap: 14px; }
  .ch-time { align-self: flex-start; }
  .ch-flag { font-size: 34px; }
  .ch-text h1 { font-size: 24px; }
  .intro { margin-left:0; margin-right:0; }
  .content-section { margin-left:0; margin-right:0; }
  .note, .related { margin-left:0; margin-right:0; }
  .related-grid { grid-template-columns: repeat(2, 1fr); }
  footer { padding: 24px 5vw 36px; flex-direction: column; }
}


.stat-card .stat-value{font-family:'Fraunces',serif;font-weight:600;font-size:32px;color:var(--ink);line-height:1.1}
.stat-card .stat-label{margin-top:6px;font-size:13.5px;color:var(--ink-soft)}
.data-table-wrap{margin:0 0 20px;max-width:900px;background:var(--card);border:1px solid var(--line);border-radius:16px;overflow-x:auto;-webkit-overflow-scrolling:touch}
.content-section .data-table-wrap{width:100%;margin-left:0;margin-right:0;max-width:none}
.source-item{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:14px 18px}
.source-item strong{display:block;font-size:14px;margin-bottom:3px}
.source-item p{font-size:12.5px;color:var(--ink-soft)}
.source-item a{color:var(--coral)}
.data-table td.hl{font-weight:600;color:var(--ink)}
.data-table td.num,.data-table th.num{text-align:right}
.data-table td.year{font-family:'JetBrains Mono',monospace;font-size:12px;color:var(--ink-soft);white-space:nowrap}
.methodology-summary{margin:0 0 16px;color:var(--ink-soft);font-size:13px;line-height:1.65}



body.dw-unified .dw-page-shell{min-width:0}
body.dw-unified .dw-page-shell > *,body.dw-unified .dw-page-shell section,body.dw-unified .dw-page-shell div{min-width:0}
body.dw-unified .dw-page-shell :is(.stat-grid,.glance-strip,.dashboard-stage,.stage,.quick-grid,.fx-grid,.money-grid,.index-grid,.component-grid,.ihdi-grid,.qol-dashboard,.principles-callout,.section-divider,.profile-divider,.explorer,.script-showcase,.note,.data-table-wrap,.table-wrap){max-width:100%;margin-left:0;margin-right:0}
body.dw-unified .dw-page-shell :is(.board,.electric-grid,.visual-triad,.dashboard-board,.component-grid,.index-grid,.ihdi-grid,.qol-dashboard,.script-showcase,.fx-grid,.money-grid,.quick-grid){min-width:0}
