/* Dette Publique block */
.dette-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 0.75rem;
}
@media(min-width: 640px) {
  .dette-grid { grid-template-columns: repeat(2, 1fr); }
}
@media(min-width: 1024px) {
  .dette-grid { grid-template-columns: repeat(4, 1fr); }
}

.dette-tile {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 0.375rem;
  background: rgba(255,255,255,0.04);
  border: 1px solid rgba(255,255,255,0.08);
  border-radius: 0.75rem;
  padding: 0.75rem 0.5rem;
  text-align: center;
  transition: background 0.2s, transform 0.2s, border-color 0.2s;
}
.dette-tile:hover {
  background: rgba(255,255,255,0.07);
  transform: translateY(-1px);
  border-color: rgba(255,255,255,0.12);
}

.dette-tile-icon {
  font-size: 1.25rem;
  color: #f43f5e;
  margin-bottom: 0.125rem;
}
.dette-tile-label {
  font-size: 0.625rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: rgba(255,255,255,0.5);
  line-height: 1.3;
}
.dette-tile-value {
  font-size: 1.125rem;
  font-weight: 800;
  color: #fff;
  font-variant-numeric: tabular-nums;
  line-height: 1.2;
  white-space: nowrap;
}
@media(min-width: 640px) {
  .dette-tile-value { font-size: 1.25rem; }
}
.dette-tile-value.dette-tile-integral {
  font-size: 0.95rem;
  letter-spacing: 0.01em;
}
@media(min-width: 640px) {
  .dette-tile-value.dette-tile-integral { font-size: 1.05rem; }
}
.dette-tile-time {
  font-size: 0.625rem;
  font-weight: 500;
  color: rgba(255,255,255,0.35);
  letter-spacing: 0.04em;
  margin-top: -0.125rem;
}
.dette-tile-unit {
  font-size: 0.75rem;
  font-weight: 600;
  color: rgba(255,255,255,0.45);
}

.dette-footer {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.625rem;
  margin-top: 0.75rem;
  padding: 0.625rem 0.75rem;
  background: rgba(244,63,94,0.08);
  border: 1px solid rgba(244,63,94,0.16);
  border-radius: 0.75rem;
  text-align: center;
}
.dette-footer-icon {
  font-size: 1.125rem;
  color: #f43f5e;
  flex-shrink: 0;
}
.dette-footer-body {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.125rem;
  line-height: 1.2;
}
.dette-footer-label {
  font-size: 0.55rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: rgba(255,255,255,0.5);
}
.dette-footer-value {
  font-size: 0.95rem;
  font-weight: 800;
  color: #fff;
}

body.theme-light .dette-tile {
  background: rgba(0,0,0,0.03);
  border-color: rgba(0,0,0,0.06);
}
body.theme-light .dette-tile:hover {
  background: rgba(0,0,0,0.05);
  border-color: rgba(0,0,0,0.1);
}
body.theme-light .dette-tile-label { color: rgba(0,0,0,0.55); }
body.theme-light .dette-tile-value { color: #0f172a; }
body.theme-light .dette-tile-time { color: rgba(0,0,0,0.4); }
body.theme-light .dette-tile-unit { color: rgba(0,0,0,0.5); }
body.theme-light .dette-tile-icon { color: #e11d48; }
body.theme-light .dette-footer { background: rgba(225,29,72,0.06); border-color: rgba(225,29,72,0.12); }
body.theme-light .dette-footer-label { color: rgba(0,0,0,0.55); }
body.theme-light .dette-footer-value { color: #0f172a; }
body.theme-light .dette-footer-icon { color: #e11d48; }

/* Libération fiscale passée : fond vert */
.dette-footer.dette-footer-passed {
  background: rgba(16,185,129,0.12);
  border-color: rgba(16,185,129,0.25);
}
.dette-footer.dette-footer-passed .dette-footer-icon { color: #10b981; }
body.theme-light .dette-footer.dette-footer-passed {
  background: rgba(16,185,129,0.08);
  border-color: rgba(16,185,129,0.2);
}
body.theme-light .dette-footer.dette-footer-passed .dette-footer-icon { color: #059669; }
