* { box-sizing: border-box; }
body { margin: 0; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif; background: #f5f7fa; color: #222; }
header { display: flex; align-items: center; gap: 24px; padding: 12px 24px; background: #fff; border-bottom: 1px solid #e1e4e8; }
.brand { font-weight: 700; font-size: 20px; }
#tab-nav { display: flex; gap: 16px; flex: 1; }
#tab-nav a { color: #444; text-decoration: none; padding: 6px 10px; border-radius: 4px; }
#tab-nav a.active { background: #e6f0ff; color: #0066cc; font-weight: 600; }
.user { font-size: 14px; color: #666; display: flex; align-items: center; gap: 10px; }
.user img { width: 28px; height: 28px; border-radius: 50%; }
#banner { padding: 10px 24px; background: #fff3cd; color: #856404; border-bottom: 1px solid #ffeeba; display: none; }
#banner.visible { display: block; }
main { padding: 24px; }
.loading { color: #888; font-style: italic; }
.metric-card { background: #fff; border: 1px solid #e1e4e8; border-radius: 6px; padding: 16px; margin-bottom: 16px; }
.metric-card h3 { margin: 0 0 8px 0; font-size: 16px; }
.metric-card canvas { max-width: 100%; }
.overview-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); gap: 16px; }
.partnership-card { background: #fff; border: 1px solid #e1e4e8; border-radius: 6px; padding: 16px; cursor: pointer; }
.partnership-card:hover { border-color: #0066cc; }
.partnership-card h3 { margin: 0 0 8px 0; }
.partnership-card .meta { color: #666; font-size: 13px; }
