body{font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;margin:0;padding:0;background-color:#f4f6f8;color:#333}table{width:100%;border-collapse:collapse}th,td{padding:10px 12px;text-align:left;border-bottom:1px solid #eee}th{background:#f8f9fa;color:#555;font-weight:600}tr:hover{background:#f5faff}td{color:#333}nav{background-color:#2c3e50;display:flex;justify-content:center;flex-wrap:wrap}nav a{color:#fff;margin:.7rem 1rem;text-decoration:none;font-weight:700;transition:color .2s}nav a:hover{color:#1abc9c}.container{max-width:1200px;margin:2rem auto;padding:1.5rem;background-color:#fff;border-radius:12px;box-shadow:0 4px 12px #0000000d}h2{margin-top:0;color:#2c3e50}.card{display:flex;flex-direction:column;background-color:#fff;border-radius:12px;box-shadow:0 4px 6px #0000000d;margin:1rem 0;overflow:hidden;transition:transform .2s,box-shadow .2s}.card:hover{transform:translateY(-5px);box-shadow:0 8px 20px #0000001a}.card img{width:100%;object-fit:cover;max-height:200px}.card-body{padding:1rem}.card-body h3{margin:0 0 .5rem;font-size:1.2rem}.card-body p{margin:.3rem 0}button{padding:.6rem 1.2rem;background-color:#1abc9c;color:#fff;border:none;border-radius:6px;cursor:pointer;font-weight:700;transition:background-color .2s}button:hover{background-color:#16a085}input,select,textarea{padding:.5rem;margin:.3rem 0;width:100%;border:1px solid #ccc;border-radius:6px;box-sizing:border-box}form button{margin-top:.5rem}.progress-bar{background-color:#e0e0e0;border-radius:8px;overflow:hidden;margin-top:.5rem}.progress-fill{height:22px;background-color:#1abc9c;text-align:center;color:#fff;font-size:.85rem;line-height:22px;font-weight:700}.events-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:20px;margin:0 auto}.message{background-color:#ffa099;padding:10px 20px;border-radius:5px;text-align:center;margin-top:20px}.modal{position:fixed;left:0;top:0;z-index:999;background-color:#0000004d;width:100vw;height:100vh;display:flex;justify-content:center;align-items:center}.modal-content{background-color:#fff;padding:20px}.required-symbol{color:red;font-weight:700}@media (max-width: 768px){.container{margin:1rem;padding:1rem}nav{flex-direction:column;align-items:center}nav a{margin:.3rem 0}}
