body { font-family: sans-serif; margin:0; padding:0; }
.navbar { background:#333; padding:.5rem; display:flex; gap:1rem; }
.navbar a { color:#fff; text-decoration:none; }
.container { padding:1rem; }
.responsive-img { max-width:100%; height:auto; }
.gallery-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(150px,1fr)); gap:1rem; }
.thumb img { width:100%; display:block; }
.error { background:#fdd; padding:1rem; }
.login-container { max-width:300px; margin:5rem auto; }
/* Sterne Bewertung */
.star { cursor: pointer; font-size: 1.5rem; color: #ccc; margin-right:0.2rem; }
.star.filled { color: gold; }
.rating { margin-top:0.5rem; display:inline-block; }
.count { font-size:0.9rem; margin-left:0.5rem; }