body { margin: 0; font: 16px/1.5 -apple-system, sans-serif; background: #0d1117; color: #e6edf3; }
main { max-width: 920px; margin: 0 auto; padding: 20px; }
h1 { color: #58a6ff; margin-top: 0; }
a { color: #58a6ff; }
.kpi { display: inline-block; background: #161b22; padding: 8px 14px; border-radius: 6px; margin: 4px; border: 1px solid #30363d; transition: transform 0.2s ease, border-color 0.2s ease; }
.kpi:hover { transform: translateY(-2px); border-color: #58a6ff; }
.breadcrumbs { font-size: 0.85em; color: #8b949e; margin-bottom: 16px; }
.breadcrumbs a { color: #8b949e; text-decoration: none; }
.breadcrumbs a:hover { text-decoration: underline; }
.section { background: #161b22; border: 1px solid #30363d; border-radius: 8px; padding: 16px; margin-bottom: 16px; animation: fadeIn 0.4s ease-out both; }
@keyframes fadeIn {
  from { opacity: 0; transform: translateY(8px); }
  to { opacity: 1; transform: translateY(0); }
}
@keyframes shimmer {
  0% { background-position: -400px 0; }
  100% { background-position: 400px 0; }
}
.section:nth-of-type(1) { animation-delay: 0.05s; }
.section:nth-of-type(2) { animation-delay: 0.1s; }
.section:nth-of-type(3) { animation-delay: 0.15s; }
.section:nth-of-type(4) { animation-delay: 0.2s; }
.section:nth-of-type(5) { animation-delay: 0.25s; }
.section:nth-of-type(6) { animation-delay: 0.3s; }
table { width: 100%; border-collapse: collapse; font-size: 0.9em; margin-top: 8px; }
th, td { padding: 6px 8px; text-align: left; border-bottom: 1px solid #30363d; }
th { color: #8b949e; font-weight: 600; }
.na { color: #8b949e; }
.bad { color: #f85149; } .warn { color: #d29922; } .ok { color: #3fb950; }
.meteo { color: #8b949e; font-size: 0.85em; }
.skeleton-row td { padding: 8px; }
.skeleton-bar {
  display: inline-block; height: 12px; width: 80%; border-radius: 4px;
  background: linear-gradient(90deg, #21262d 0%, #2d333b 50%, #21262d 100%);
  background-size: 800px 100%; animation: shimmer 1.4s infinite linear;
}
.skeleton-bar.short { width: 40%; }
.skeleton-bar.medium { width: 60%; }
footer { color: #8b949e; font-size: 0.85em; border-top: 1px solid #30363d; margin-top: 40px; padding: 16px 20px; }