* { box-sizing: border-box; }
body { margin: 0; font-family: Consolas, monospace; height: 100vh; display: flex; flex-direction: column; }
header { display: flex; gap: 1rem; align-items: center; padding: .5rem 1rem; background: #fff7f0; border-bottom: 1px solid #ddd; }
header h1 { font-size: 1.2rem; margin: 0; flex: 1; }
.dot { display: inline-block; width: .8em; height: .8em; border-radius: 50%; margin: 0 .2em 0 .8em; }
.dot.red { background: #ea4335; } .dot.green { background: #34a853; }
main { flex: 1; display: flex; min-height: 0; }
#map { flex: 1; }
#panel { width: 320px; padding: 1rem; overflow-y: auto; border-left: 1px solid #ddd; }
#panel h2 { margin-top: 0; font-size: 1.1rem; }
#panel button { margin: .25rem .25rem 0 0; }
.stars button { font-size: 1.3rem; background: none; border: none; cursor: pointer; padding: 0; color: #f5a623; }
@media (max-width: 700px) { main { flex-direction: column; } #panel { width: auto; max-height: 40%; border-left: 0; border-top: 1px solid #ddd; } }

.btn, button { padding: .4rem .8rem; border: 1px solid #c9b8a8; border-radius: 6px; background: #fff; color: inherit; text-decoration: none; font: inherit; cursor: pointer; }
.error { color: #b3261e; }
.review { border-top: 1px solid #eee; padding: .6rem 0; }
.review img { max-width: 100%; border-radius: 6px; margin-top: .4rem; }
.chip { display: inline-block; background: #fde8d8; border-radius: 999px; padding: .1rem .6rem; margin: .2rem .2rem 0 0; font-size: .85rem; }
body.page { height: auto; min-height: 100vh; }
form#form { max-width: 560px; width: 100%; margin: 1rem auto; padding: 0 1rem; display: flex; flex-direction: column; gap: 1rem; }
form#form label { display: flex; flex-direction: column; gap: .3rem; font-weight: 600; }
form#form input, form#form textarea { font: inherit; padding: .5rem; border: 1px solid #ccc; border-radius: 6px; font-weight: 400; }
.chosen { font-weight: 400; color: #555; }
.previews { display: flex; gap: .5rem; flex-wrap: wrap; }
.previews img { width: 90px; height: 90px; object-fit: cover; border-radius: 6px; }

button, input, textarea, select { font-family: Consolas, monospace; }
