/* Reset and Base */
body { margin: 0; font-family: 'Segoe UI', sans-serif; background: #f4f7f6; display: block; }
.hidden { display: none; }

/* Header and Nav Fix */
.main-header { background: #2e7d32; color: white; padding: 10px 20px; position: sticky; top: 0; z-index: 1000; box-shadow: 0 2px 10px rgba(0,0,0,0.1); }
.header-container { display: flex; justify-content: space-between; align-items: center; max-width: 1200px; margin: 0 auto; }
.brand { display: flex; align-items: center; gap: 10px; }
.logo-img { height: 40px; width: 40px; border-radius: 5px; }
.brand-text h1 { margin: 0; font-size: 1.2rem; }
.brand-text span { font-size: 0.7rem; opacity: 0.8; }

/* Navigation Buttons */
.top-nav { display: flex; gap: 10px; }
.nav-btn { background: rgba(255,255,255,0.1); border: none; color: white; padding: 8px 15px; border-radius: 5px; cursor: pointer; font-size: 0.9rem; }
.nav-btn:hover { background: rgba(255,255,255,0.2); }

/* Layout Content */
.content-wrapper { max-width: 1200px; margin: 20px auto; padding: 0 20px; }
.stats-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 20px; }

/* Mobile Specific Fixes */
@media (max-width: 600px) {
    .header-container { flex-direction: column; gap: 10px; }
    .nav-btn { font-size: 0.8rem; padding: 6px 10px; }
    .stats-grid { grid-template-columns: 1fr; }
    .table-container { overflow-x: auto; } /* Allows horizontal scroll for the statement table on small screens */
}