body { font-family: Arial, sans-serif; margin: 0; background: #f5f5f5; color: #222; } .page { max-width: 1100px; margin: 0 auto; padding: 20px; } h1 { margin-bottom: 8px; } .subtitle { margin-top: 0; color: #555; } .search-bar { display: flex; gap: 10px; margin: 20px 0; } .search-bar input { flex: 1; padding: 10px; font-size: 16px; } .search-bar button, .card button, .detail-card button { padding: 10px 14px; font-size: 14px; cursor: pointer; } .layout { display: grid; grid-template-columns: 1fr; gap: 20px; } .results { display: grid; gap: 16px; } .card { border: 1px solid #d8d8d8; background: white; padding: 16px; border-radius: 8px; } .card h3 { margin-top: 0; } .detail-card { border: 1px solid #d8d8d8; background: white; padding: 20px; border-radius: 8px; } .map-box { border: 1px solid #d8d8d8; background: white; border-radius: 8px; padding: 12px; } #map { height: 420px; width: 100%; border-radius: 6px; } .message { padding: 12px; background: white; border: 1px solid #d8d8d8; border-radius: 8px; } @media (min-width: 900px) { .layout { grid-template-columns: 1.2fr 1fr; align-items: start; } }