
body { font-family: Arial; background:#ffffff; color:#000; margin:0; }
.container { max-width:1200px; margin:20px auto; background:#fff; padding:20px; box-sizing:border-box; }
.navbar { margin-bottom:15px; }
.navbar a { display:inline-block; background:#111; color:#fff; text-decoration:none; padding:10px 14px; margin-right:10px; }
.navbar a:hover { background:#222; }
.calendar-header { display:flex; justify-content:space-between; align-items:center; gap:15px; margin-bottom:15px; }
.calendar-header h2 { margin:0; }
.top-home-link { display:inline-block; background:#111; color:#fff; text-decoration:none; padding:10px 14px; font-weight:bold; }
.top-home-link:hover { background:#222; }
.calendar { width:100%; border-collapse:collapse; }
.calendar th { background:#111; color:#fff; padding:10px; }
.calendar td { width:14%; height:120px; vertical-align:top; background:#fff; color:#000; border:1px solid #ccc; padding:6px; }
.empty { background:#f5f5f5; }
.today { background:#fff6d8 !important; border:2px solid gold; }
.day { font-weight:bold; margin-bottom:6px; }
.event { font-size:12px; margin-top:6px; line-height:1.35; }
.event a { text-decoration:none; font-weight:bold; }
.event a:hover { text-decoration:underline; }
.time { display:block; color:#333; font-size:11px; margin-top:2px; }
.member-note { margin:0 0 15px 0; padding:10px 12px; background:#eef7ff; border:1px solid #b8d9ff; color:#134b7a; }
.footer-links { margin-top:18px; }
.footer-links a { display:inline-block; margin-right:10px; background:#111; color:#fff; text-decoration:none; padding:8px 12px; }
.footer-links a:hover { background:#222; }
.event-tooltip { position:fixed; display:none; max-width:320px; background:#fffbe8; color:#000; border:1px solid #c9b86b; box-shadow:0 6px 18px rgba(0,0,0,0.18); padding:10px 12px; border-radius:6px; font-size:12px; line-height:1.4; white-space:pre-line; z-index:9999; pointer-events:none; }

